From 34c0b85f1e30b9a9e0a2ccbfb902a26eb1f3befc Mon Sep 17 00:00:00 2001 From: Iori ONDA Date: Mon, 14 Dec 2015 11:03:33 +0900 Subject: [PATCH 001/976] Fix typo connecton => connection --- app/templates/server/config/environment/development.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/templates/server/config/environment/development.js b/app/templates/server/config/environment/development.js index b97297e36..472ad5050 100644 --- a/app/templates/server/config/environment/development.js +++ b/app/templates/server/config/environment/development.js @@ -9,7 +9,7 @@ module.exports = {<% if (filters.mongoose) { %> uri: 'mongodb://localhost/<%= lodash.slugify(appname) %>-dev' },<% } if (filters.sequelize) { %> - // Sequelize connecton opions + // Sequelize connection opions sequelize: { uri: 'sqlite://', options: { From 22d46d59651acf23dc3c8ac473d011c008114821 Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Sat, 19 Dec 2015 06:23:19 -0500 Subject: [PATCH 002/976] feat(client): Add initial TypeScript support --- app/generator.js | 27 +++- app/templates/Gruntfile(grunt).js | 121 ++++++++++++++---- app/templates/_package.json | 14 +- .../client/{.jshintrc => .jshintrc(babel)} | 0 .../account(auth)/login/login.controller.js | 10 +- .../settings/settings.controller.js | 8 +- app/templates/client/tslint.json(ts) | 62 +++++++++ app/templates/gulpfile.babel(gulp).js | 86 +++++++++---- app/templates/karma.conf.js | 12 +- app/templates/tsconfig.client(ts).json | 45 +++++++ app/templates/tsconfig.client.test(ts).json | 27 ++++ app/templates/tsd(ts).json | 21 +++ app/templates/tsd_test(ts).json | 33 +++++ readme.md | 2 +- test/test-file-creation.js | 46 +++++-- util.js | 11 +- 16 files changed, 434 insertions(+), 91 deletions(-) rename app/templates/client/{.jshintrc => .jshintrc(babel)} (100%) create mode 100644 app/templates/client/tslint.json(ts) create mode 100644 app/templates/tsconfig.client(ts).json create mode 100644 app/templates/tsconfig.client.test(ts).json create mode 100644 app/templates/tsd(ts).json create mode 100644 app/templates/tsd_test(ts).json diff --git a/app/generator.js b/app/generator.js index e32d97a2b..1d0f2a793 100644 --- a/app/generator.js +++ b/app/generator.js @@ -96,13 +96,18 @@ export default class Generator extends Base { this.log('# Client\n'); - this.prompt([/*{ + this.prompt([{ type: 'list', - name: 'script', + name: 'transpiler', message: 'What would you like to write scripts with?', choices: ['Babel', 'TypeScript'], - filter: function(val) { return val.toLowerCase(); } - }, */{ + filter: val => { + return { + 'Babel': 'babel', + 'TypeScript': 'ts' + }[val]; + } + }, { type: 'list', name: 'markup', message: 'What would you like to write markup with?', @@ -136,14 +141,14 @@ export default class Generator extends Base { }], function (answers) { this.filters.js = true; - this.filters.babel = true; + this.filters[answers.transpiler] = true; this.filters[answers.markup] = true; this.filters[answers.stylesheet] = true; this.filters[answers.router] = true; this.filters.bootstrap = !!answers.bootstrap; this.filters.uibootstrap = !!answers.uibootstrap; - this.scriptExt = answers.script === 'coffee' ? 'coffee' : 'js'; + this.scriptExt = answers.transpiler === 'ts' ? 'ts' : 'js'; this.templateExt = answers.markup; this.styleExt = answers.stylesheet === 'sass' ? 'scss' : answers.stylesheet; @@ -359,6 +364,7 @@ export default class Generator extends Base { if(this.filters.ngroute) filters.push('ngroute'); if(this.filters.uirouter) filters.push('uirouter'); if(this.filters.babel) extensions.push('babel'); + if(this.filters.ts) extensions.push('ts'); if(this.filters.js) extensions.push('js'); if(this.filters.html) extensions.push('html'); if(this.filters.jade) extensions.push('jade'); @@ -412,8 +418,15 @@ export default class Generator extends Base { return { generateProject: function() { + let self = this; this.sourceRoot(path.join(__dirname, './templates')); - this.processDirectory('.', '.'); + this.processDirectory('.', '.', function(dest) { + if(self.filters.ts && dest.indexOf('client') > -1 && dest.indexOf('.json') === -1) { + dest = dest.replace('.js', '.ts'); + } + + return dest; + }); }, generateEndpoint: function() { diff --git a/app/templates/Gruntfile(grunt).js b/app/templates/Gruntfile(grunt).js index aa62e5c13..2ab668936 100644 --- a/app/templates/Gruntfile(grunt).js +++ b/app/templates/Gruntfile(grunt).js @@ -60,6 +60,10 @@ module.exports = function (grunt) { babel: { files: ['<%%= yeoman.client %>/{app,components}/**/!(*.spec|*.mock).js'], tasks: ['newer:babel:client'] + },<% } %><% if(filters.ts) { %> + ts: { + files: ['<%%= yeoman.client %>/{app,components}/**/!(*.spec|*.mock).ts'], + tasks: ['ts:client'] },<% } %> ngconstant: { files: ['<%%= yeoman.server %>/config/environment/shared.js'], @@ -67,7 +71,7 @@ module.exports = function (grunt) { }, injectJS: { files: [ - '<%%= yeoman.client %>/{app,components}/**/!(*.spec|*.mock).js', + '<%%= yeoman.client %>/{app,components}/**/!(*.spec|*.mock).<%= scriptExt %>', '!<%%= yeoman.client %>/app/app.js' ], tasks: ['injector:scripts'] @@ -77,12 +81,12 @@ module.exports = function (grunt) { tasks: ['injector:css'] }, mochaTest: { - files: ['<%%= yeoman.server %>/**/*.{spec,integration}.js'], + files: ['<%%= yeoman.server %>/**/*.{spec,integration}.<%= scriptExt %>'], tasks: ['env:test', 'mochaTest'] }, jsTest: { - files: ['<%%= yeoman.client %>/{app,components}/**/*.{spec,mock}.js'], - tasks: ['newer:jshint:all', 'wiredep:test', 'karma'] + files: ['<%%= yeoman.client %>/{app,components}/**/*.{spec,mock}.<%= scriptExt %>'], + tasks: [<% if(filters.babel) { %>'newer:jshint:all'<% } if(filters.ts) { %>'newer:tslint:all', 'newer:ts:client_test',<% } %>, 'wiredep:test', 'karma'] },<% if (filters.stylus) { %> injectStylus: { files: ['<%%= yeoman.client %>/{app,components}/**/*.styl'], @@ -118,7 +122,7 @@ module.exports = function (grunt) { livereload: { files: [ '{.tmp,<%%= yeoman.client %>}/{app,components}/**/*.{css,html}', - '{.tmp,<%%= yeoman.client %>}/{app,components}/**/!(*.spec|*.mock).js', + '{.tmp,<%%= yeoman.client %>}/{app,components}/**/!(*.spec|*.mock).<%= scriptExt %>', '<%%= yeoman.client %>/assets/images/{,*//*}*.{png,jpg,jpeg,gif,webp,svg}' ], options: { @@ -161,7 +165,16 @@ module.exports = function (grunt) { test: { src: ['<%%= yeoman.client %>/{app,components}/**/*.{spec,mock}.js'] } - }, + },<% if(filters.ts) { %> + + tslint: { + options: { + configuration: '<%%= yeoman.client %>/tslint.json' + }, + all: { + src: ['<%%= yeoman.client %>/{app,components}/**/!(*.spec|*.mock).ts'] + } + },<% } %> jscs: { options: { @@ -420,7 +433,13 @@ module.exports = function (grunt) { cwd: '<%%= yeoman.client %>', dest: '.tmp/', src: ['{app,components}/**/*.css'] - } + }<% if(filters.ts) { %>, + constant: { + expand: true, + cwd: '<%%= yeoman.client %>', + dest: '.tmp/', + src: ['app/app.constant.js'] + }<% } %> }, buildcontrol: { @@ -451,17 +470,23 @@ module.exports = function (grunt) { 'injector:stylus',<% } if (filters.less) { %> 'injector:less',<% } if (filters.sass) { %> 'injector:sass',<% } %> - 'ngconstant' + 'ngconstant'<% if(filters.ts) { %>, + 'copy:constant'<% } %> ], server: [<% if(filters.babel) { %> - 'newer:babel:client',<% } if(filters.jade) { %> + 'newer:babel:client',<% } if(filters.ts) { %> + 'ts:client', + 'copy:constant',<% } if(filters.jade) { %> 'jade',<% } if(filters.stylus) { %> 'stylus',<% } if(filters.sass) { %> 'sass',<% } if(filters.less) { %> 'less',<% } %> ], test: [<% if(filters.babel) { %> - 'newer:babel:client',<% } if(filters.jade) { %> + 'newer:babel:client',<% } if(filters.ts) { %> + 'ts:client', + 'copy:constant',<% } if(filters.ts) { %> + 'ts:client_test',<% } if(filters.jade) { %> 'jade',<% } if(filters.stylus) { %> 'stylus',<% } if(filters.sass) { %> 'sass',<% } if(filters.less) { %> @@ -477,7 +502,9 @@ module.exports = function (grunt) { } }, dist: [<% if(filters.babel) { %> - 'newer:babel:client',<% } if(filters.jade) { %> + 'newer:babel:client',<% } if(filters.ts) { %> + 'ts:client', + 'copy:constant',<% } if(filters.jade) { %> 'jade',<% } if(filters.stylus) { %> 'stylus',<% } if(filters.sass) { %> 'sass',<% } if(filters.less) { %> @@ -613,7 +640,37 @@ module.exports = function (grunt) { dest: '<%%= yeoman.dist %>/<%%= yeoman.server %>' }] } - },<% if(filters.stylus) { %> + },<% if(filters.ts) { %> + + ts: { + options: { + sourceMap: true, + failOnTypeErrors: false + }, + client: { + tsconfig: './tsconfig.client.json', + outDir: '.tmp' + }, + client_test: { + tsconfig: './tsconfig.client.test.json', + outDir: '.tmp/test' + } + }, + + tsd: { + install: { + options: { + command: 'reinstall', + config: './tsd.json' + } + }, + install_test: { + options: { + command: 'reinstall', + config: './tsd_test.json' + } + } + },<% } %><% if(filters.stylus) { %> // Compiles Stylus to CSS stylus: { @@ -649,16 +706,15 @@ module.exports = function (grunt) { },<% } %> injector: { - options: { - - }, + options: {}, // Inject application script files into index.html (doesn't include bower) scripts: { options: { transform: function(filePath) { var yoClient = grunt.config.get('yeoman.client'); filePath = filePath.replace('/' + yoClient + '/', ''); - filePath = filePath.replace('/.tmp/', ''); + filePath = filePath.replace('/.tmp/', '');<% if(filters.ts) { %> + filePath = filePath.replace('.ts', '.js');<% } %> return ''; }, sort: function(a, b) { @@ -673,10 +729,10 @@ module.exports = function (grunt) { }, files: { '<%%= yeoman.client %>/index.html': [ - [<% if(filters.babel) { %> - '.tmp/{app,components}/**/!(*.spec|*.mock).js',<% } else { %> - '{.tmp,<%%= yeoman.client %>}/{app,components}/**/!(*.spec|*.mock).js',<% } %> - '!{.tmp,<%%= yeoman.client %>}/app/app.js' + [ + '<%%= yeoman.client %>/{app,components}/**/!(*.spec|*.mock).<%= scriptExt %>',<% if(filters.ts) { %> + '<%%= yeoman.client %>/app/app.constant.js',<% } %> + '!{.tmp,<%%= yeoman.client %>}/app/app.{js,ts}' ] ] } @@ -788,7 +844,8 @@ module.exports = function (grunt) { return grunt.task.run([ 'clean:server', 'env:all', - 'concurrent:pre', + 'concurrent:pre',<% if(filters.ts) { %> + 'tsd',<% } %> 'concurrent:server', 'injector', 'wiredep:client', @@ -800,7 +857,8 @@ module.exports = function (grunt) { grunt.task.run([ 'clean:server', 'env:all', - 'concurrent:pre', + 'concurrent:pre',<% if(filters.ts) { %> + 'tsd',<% } %> 'concurrent:server', 'injector', 'wiredep:client', @@ -831,7 +889,10 @@ module.exports = function (grunt) { return grunt.task.run([ 'clean:server', 'env:all', - 'concurrent:pre', + 'concurrent:pre',<% if(filters.ts) { %> + 'ts:client', + 'ts:client_test', + 'tsd',<% } %> 'concurrent:test', 'injector', 'postcss', @@ -857,7 +918,11 @@ module.exports = function (grunt) { 'clean:server', 'env:all', 'env:test', - 'concurrent:pre', + 'concurrent:pre',<% if(filters.ts) { %> + 'tsd:install', + 'tsd:install_test', + 'ts:client', + 'ts:client_test',<% } %> 'concurrent:test', 'injector', 'wiredep:client', @@ -911,7 +976,8 @@ module.exports = function (grunt) { grunt.registerTask('build', [ 'clean:dist', - 'concurrent:pre', + 'concurrent:pre',<% if(filters.ts) { %> + 'tsd',<% } %> 'concurrent:dist', 'injector', 'wiredep:client', @@ -929,8 +995,9 @@ module.exports = function (grunt) { 'usemin' ]); - grunt.registerTask('default', [ - 'newer:jshint', + grunt.registerTask('default', [<% if(filters.babel) { %> + 'newer:tslint',<% } %><% if(filters.ts) { %> + 'newer:jshint',<% } %> 'test', 'build' ]); diff --git a/app/templates/_package.json b/app/templates/_package.json index 9ed3a8aa9..f72d5b765 100644 --- a/app/templates/_package.json +++ b/app/templates/_package.json @@ -42,9 +42,12 @@ "gulp": "^3.9.0", "gulp-add-src": "^0.2.0", "gulp-angular-templatecache": "^1.7.0", - "gulp-autoprefixer": "2.3.1",<% if(filters.babel) { %> - "gulp-babel": "^5.1.0",<% } %> - "gulp-babel-istanbul": "^0.11.0", + "gulp-autoprefixer": "2.3.1", + "gulp-babel": "^5.1.0", + "gulp-babel-istanbul": "^0.11.0",<% if(filters.ts) { %> + "gulp-typescript": "~2.10.0", + "gulp-tsd": "~0.0.4", + "gulp-tslint": "~4.2.1",<% } %> "gulp-cache": "^0.2.10", "gulp-concat": "^2.6.0", "gulp-env": "^0.2.0", @@ -97,7 +100,10 @@ "grunt-contrib-watch": "~0.6.1",<% if (filters.jade) { %> "grunt-contrib-jade": "^0.15.0",<% } %><% if (filters.less) { %> "grunt-contrib-less": "^1.0.0",<% } %><% if(filters.babel) { %> - "grunt-babel": "~5.0.0",<% } %> + "grunt-babel": "~5.0.0",<% } %><% if(filters.ts) { %> + "grunt-ts": "~5.2.0", + "grunt-tsd": "~0.1.0", + "grunt-tslint": "~3.0.1",<% } %> "grunt-google-cdn": "~0.4.0", "grunt-jscs": "^2.1.0", "grunt-newer": "^1.1.1", diff --git a/app/templates/client/.jshintrc b/app/templates/client/.jshintrc(babel) similarity index 100% rename from app/templates/client/.jshintrc rename to app/templates/client/.jshintrc(babel) diff --git a/app/templates/client/app/account(auth)/login/login.controller.js b/app/templates/client/app/account(auth)/login/login.controller.js index 2363aab8f..d53fcbe20 100644 --- a/app/templates/client/app/account(auth)/login/login.controller.js +++ b/app/templates/client/app/account(auth)/login/login.controller.js @@ -1,13 +1,11 @@ 'use strict'; class LoginController { - //start-non-standard - user = {}; - errors = {}; - submitted = false; - //end-non-standard - constructor(Auth<% if (filters.ngroute) { %>, $location<% } %><% if (filters.uirouter) { %>, $state<% } %>) { + this.user = {}; + this.errors = {}; + this.submitted = false; + this.Auth = Auth;<% if (filters.ngroute) { %> this.$location = $location;<% } if (filters.uirouter) { %> this.$state = $state;<% } %> diff --git a/app/templates/client/app/account(auth)/settings/settings.controller.js b/app/templates/client/app/account(auth)/settings/settings.controller.js index 379ccc506..cbaed8885 100644 --- a/app/templates/client/app/account(auth)/settings/settings.controller.js +++ b/app/templates/client/app/account(auth)/settings/settings.controller.js @@ -1,12 +1,10 @@ 'use strict'; class SettingsController { - //start-non-standard - errors = {}; - submitted = false; - //end-non-standard - constructor(Auth) { + this.errors = {}; + this.submitted = false; + this.Auth = Auth; } diff --git a/app/templates/client/tslint.json(ts) b/app/templates/client/tslint.json(ts) new file mode 100644 index 000000000..e0e318d21 --- /dev/null +++ b/app/templates/client/tslint.json(ts) @@ -0,0 +1,62 @@ +{ + "rules": { + "class-name": true, + "curly": true, + "eofline": true, + "forin": true, + "indent": [true, "spaces"], + "label-position": true, + "label-undefined": true, + "max-line-length": [true, 140], + "no-arg": true, + "no-bitwise": true, + "no-console": [true, + "debug", + "info", + "time", + "timeEnd", + "trace" + ], + "no-construct": true, + "no-debugger": true, + "no-duplicate-key": true, + "no-duplicate-variable": true, + "no-empty": true, + "no-eval": true, + "no-inferrable-types": true, + "no-shadowed-variable": true, + "no-string-literal": true, + "no-switch-case-fall-through": true, + "no-trailing-comma": true, + "no-trailing-whitespace": true, + "no-unused-expression": true, + "no-unused-variable": true, + "no-unreachable": true, + "no-use-before-declare": true, + "one-line": [true, + "check-open-brace", + "check-catch", + "check-else", + "check-whitespace" + ], + "quotemark": [true, "single"], + "radix": true, + "semicolon": true, + "triple-equals": [true, "allow-null-check"], + "typedef-whitespace": [true, { + "call-signature": "nospace", + "index-signature": "nospace", + "parameter": "nospace", + "property-declaration": "nospace", + "variable-declaration": "nospace" + }], + "variable-name": false, + "whitespace": [true, + "check-branch", + "check-decl", + "check-operator", + "check-separator", + "check-type" + ] + } +} \ No newline at end of file diff --git a/app/templates/gulpfile.babel(gulp).js b/app/templates/gulpfile.babel(gulp).js index 1d9d2d3b6..5b6e9d547 100644 --- a/app/templates/gulpfile.babel(gulp).js +++ b/app/templates/gulpfile.babel(gulp).js @@ -27,7 +27,8 @@ const paths = { images: `${clientPath}/assets/images/**/*`, scripts: [ `${clientPath}/**/!(*.spec|*.mock).<%= scriptExt %>`, - `!${clientPath}/bower_components/**/*.js` + `!${clientPath}/bower_components/**/*`<% if(filters.ts) { %>, + `!${clientPath}/typings/**/*`<% } %> ], styles: [`${clientPath}/{app,components}/**/*.<%= styleExt %>`], mainStyle: `${clientPath}/app/app.<%= styleExt %>`, @@ -38,7 +39,7 @@ const paths = { bower: `${clientPath}/bower_components/` }, server: { - scripts: [`${serverPath}/**/!(*.spec|*.integration).<%= scriptExt %>`], + scripts: [`${serverPath}/**/!(*.spec|*.integration).js`], json: [`${serverPath}/**/*.json`], test: { integration: `${serverPath}/**/*.integration.js`, @@ -86,7 +87,7 @@ function whenServerReady(cb) { } function sortModulesFirst(a, b) { - var module = /\.module\.js$/; + var module = /\.module\.<%= scriptExt %>$/; var aMod = module.test(a.path); var bMod = module.test(b.path); // inject *.module.js first @@ -108,9 +109,11 @@ function sortModulesFirst(a, b) { * Reusable pipelines ********************/ -let lintClientScripts = lazypipe() +let lintClientScripts = lazypipe()<% if(filters.babel) { %> .pipe(plugins.jshint, `${clientPath}/.jshintrc`) - .pipe(plugins.jshint.reporter, 'jshint-stylish'); + .pipe(plugins.jshint.reporter, 'jshint-stylish');<% } %><% if(filters.ts) { %> + .pipe(plugins.tslint, require(`./${clientPath}/tslint.json`)) + .pipe(plugins.tslint.report, 'verbose');<% } %> let lintServerScripts = lazypipe() .pipe(plugins.jshint, `${serverPath}/.jshintrc`) @@ -129,20 +132,20 @@ let styles = lazypipe() .pipe(plugins.sass)<% } if(filters.less) { %> .pipe(plugins.less)<% } %> .pipe(plugins.autoprefixer, {browsers: ['last 1 version']}) - .pipe(plugins.sourcemaps.write, '.'); - -let transpileServer = lazypipe() - .pipe(plugins.sourcemaps.init)<% if(filters.babel) { %> - .pipe(plugins.babel, { - optional: ['runtime'] - })<% } %> - .pipe(plugins.sourcemaps.write, '.'); + .pipe(plugins.sourcemaps.write, '.');<% if(filters.babel) { %> let transpileClient = lazypipe() - .pipe(plugins.sourcemaps.init)<% if(filters.babel) { %> + .pipe(plugins.sourcemaps.init) .pipe(plugins.babel, { optional: ['es7.classProperties'] - })<% } %> + }) + .pipe(plugins.sourcemaps.write, '.');<% } %> + +let transpileServer = lazypipe() + .pipe(plugins.sourcemaps.init) + .pipe(plugins.babel, { + optional: ['runtime'] + }) .pipe(plugins.sourcemaps.write, '.'); let mocha = lazypipe() @@ -204,12 +207,12 @@ gulp.task('inject', cb => { gulp.task('inject:js', () => { return gulp.src(paths.client.mainView) .pipe(plugins.inject( - gulp.src(_.union(paths.client.scripts, [`!${clientPath}/**/*.{spec,mock}.js`, `!${clientPath}/app/app.js`]), {read: false}) + gulp.src(_.union(paths.client.scripts, [<% if(filters.ts) { %>'client/app/app.constant.js', <% } %>`!${clientPath}/**/*.{spec,mock}.<%= scriptExt %>`, `!${clientPath}/app/app.<%= scriptExt %>`]), {read: false}) .pipe(plugins.sort(sortModulesFirst)), { starttag: '', endtag: '', - transform: (filepath) => '' + transform: (filepath) => '' })) .pipe(gulp.dest(clientPath)); }); @@ -245,19 +248,57 @@ gulp.task('inject:<%= styleExt %>', () => { } })) .pipe(gulp.dest(`${clientPath}/app`)); +});<% } %><% if(filters.ts) { %> + +// Install DefinitelyTyped TypeScript definition files +gulp.task('tsd', cb => { + plugins.tsd({ + command: 'reinstall', + config: './tsd.json' + }, cb); +}); + +gulp.task('tsd:test', cb => { + plugins.tsd({ + command: 'reinstall', + config: './tsd_test.json' + }, cb); });<% } %> gulp.task('styles', () => { return gulp.src(paths.client.mainStyle) .pipe(styles()) .pipe(gulp.dest('.tmp/app')); +});<% if(filters.ts) { %> + +gulp.task('copy:constant', () => { + return gulp.src(`${clientPath}/app/app.constant.js`, { dot: true }) + .pipe(gulp.dest('.tmp')); +}) + +let tsProject = plugins.typescript.createProject('./tsconfig.client.json'); +gulp.task('transpile:client', ['constant', 'copy:constant'], () => { + return tsProject.src() + .pipe(plugins.sourcemaps.init()) + .pipe(plugins.typescript(tsProject)).js + .pipe(plugins.sourcemaps.write('.')) + .pipe(gulp.dest('.tmp')); }); +let tsTestProject = plugins.typescript.createProject('./tsconfig.client.json'); +gulp.task('transpile:client:test', ['tsd:test'], () => { + return tsTestProject.src() + .pipe(plugins.sourcemaps.init()) + .pipe(plugins.typescript(tsTestProject)).js + .pipe(plugins.sourcemaps.write('.')) + .pipe(gulp.dest('.tmp/test')); +});<% } %><% if(filters.babel) { %> + gulp.task('transpile:client', () => { return gulp.src(paths.client.scripts) .pipe(transpileClient()) .pipe(gulp.dest('.tmp')); -}); +});<% } %> gulp.task('transpile:server', () => { return gulp.src(_.union(paths.server.scripts, paths.server.json)) @@ -348,7 +389,7 @@ gulp.task('watch', () => { }); gulp.task('serve', cb => { - runSequence(['clean:tmp', 'constant'], + runSequence(['clean:tmp', 'constant'<% if(filters.ts) { %>, 'tsd'<% } %>], ['lint:scripts', 'inject'<% if(filters.jade) { %>, 'jade'<% } %>], ['wiredep:client'], ['transpile:client', 'styles'], @@ -390,7 +431,7 @@ gulp.task('mocha:integration', () => { .pipe(mocha()); }); -gulp.task('test:client', (done) => { +gulp.task('test:client', ['wiredep:test'<% if(filters.ts) { %>, 'tsd:test', 'transpile:client', 'transpile:client:test'<% } %>], (done) => { new KarmaServer({ configFile: `${__dirname}/${paths.karma}`, singleRun: true @@ -440,7 +481,8 @@ gulp.task('build', cb => { 'clean:dist', 'clean:tmp', 'inject', - 'wiredep:client', + 'wiredep:client',<% if(filters.ts) { %> + 'tsd',<% } %> [ 'build:images', 'copy:extras', @@ -454,7 +496,7 @@ gulp.task('build', cb => { gulp.task('clean:dist', () => del([`${paths.dist}/!(.git*|.openshift|Procfile)**`], {dot: true})); -gulp.task('build:client', ['transpile:client', 'styles', 'html'], () => { +gulp.task('build:client', ['transpile:client', 'styles', 'html', 'constant'], () => { var manifest = gulp.src(`${paths.dist}/${clientPath}/assets/rev-manifest.json`); var appFilter = plugins.filter('**/app.js'); diff --git a/app/templates/karma.conf.js b/app/templates/karma.conf.js index 9f3b82ab8..e6005f372 100644 --- a/app/templates/karma.conf.js +++ b/app/templates/karma.conf.js @@ -20,16 +20,20 @@ module.exports = function(config) { files: [ // bower:js // endbower<% if (filters.socketio) { %> - 'node_modules/socket.io-client/socket.io.js',<% } %> + 'node_modules/socket.io-client/socket.io.js',<% } %><% if(filters.ts) { %> + '.tmp/app/app.js', + '.tmp/{app,components}/**/*.module.js', + '.tmp/{app,components}/**/*.js', + '.tmp/test/**/*.js',<% } %><% if(filters.babel) { %> 'client/app/app.js', 'client/{app,components}/**/*.module.js', - 'client/{app,components}/**/*.js', + 'client/{app,components}/**/*.js',<% } %> 'client/{app,components}/**/*.<%= filters.jade ? '{jade,html}' : 'html' %>' ], preprocessors: { - '**/*.html': 'ng-html2js'<% if (filters.jade) { %>, - '**/*.jade': 'ng-jade2js'<% } if (filters.babel) { %>, + '**/*.html': 'ng-html2js',<% if (filters.jade) { %> + '**/*.jade': 'ng-jade2js',<% } if (filters.babel) { %> 'client/{app,components}/**/*.js': 'babel'<% } %> }, diff --git a/app/templates/tsconfig.client(ts).json b/app/templates/tsconfig.client(ts).json new file mode 100644 index 000000000..edbfbd011 --- /dev/null +++ b/app/templates/tsconfig.client(ts).json @@ -0,0 +1,45 @@ +{ + "compilerOptions": { + "sourceMap": true, + "rootDir": "./client", + "outDir": ".tmp" + }, + "filesGlob": [ + "client/{app,components}/**/!(*.spec).ts", + "client/typings/**/*.d.ts" + ], + "files": [ + "client/app/account/account.ts", + "client/app/account/login/login.controller.ts", + "client/app/account/settings/settings.controller.ts", + "client/app/account/signup/signup.controller.ts", + "client/app/admin/admin.controller.ts", + "client/app/admin/admin.module.ts", + "client/app/admin/admin.router.ts", + "client/app/app.ts", + "client/app/main/main.controller.ts", + "client/app/main/main.ts", + "client/components/auth/auth.module.ts", + "client/components/auth/auth.service.ts", + "client/components/auth/interceptor.service.ts", + "client/components/auth/router.decorator.ts", + "client/components/auth/user.service.ts", + "client/components/footer/footer.directive.ts", + "client/components/modal/modal.service.ts", + "client/components/mongoose-error/mongoose-error.directive.ts", + "client/components/navbar/navbar.controller.ts", + "client/components/navbar/navbar.directive.ts", + "client/components/oauth-buttons/oauth-buttons.controller.ts", + "client/components/oauth-buttons/oauth-buttons.directive.ts", + "client/components/socket/socket.mock.ts", + "client/components/socket/socket.service.ts", + "client/components/ui-router/ui-router.mock.ts", + "client/components/util/util.module.ts", + "client/components/util/util.service.ts", + "client/typings/angularjs/angular.d.ts", + "client/typings/jquery/jquery.d.ts", + "client/typings/lodash/lodash.d.ts", + "client/typings/socket.io-client/socket.io-client.d.ts", + "client/typings/tsd.d.ts" + ] +} diff --git a/app/templates/tsconfig.client.test(ts).json b/app/templates/tsconfig.client.test(ts).json new file mode 100644 index 000000000..9ec77ddb5 --- /dev/null +++ b/app/templates/tsconfig.client.test(ts).json @@ -0,0 +1,27 @@ +{ + "compilerOptions": { + "sourceMap": true, + "rootDir": "./client", + "outDir": ".tmp/test" + }, + "filesGlob": [ + "client/{app,components}/**/*.{spec,mock}.ts", + "client/test_typings/**/*.d.ts" + ], + "files": [ + "client/app/main/main.controller.spec.ts", + "client/components/oauth-buttons/oauth-buttons.controller.spec.ts", + "client/components/oauth-buttons/oauth-buttons.directive.spec.ts", + "client/components/socket/socket.mock.ts", + "client/components/ui-router/ui-router.mock.ts", + "client/test_typings/angular-protractor/angular-protractor.d.ts", + "client/test_typings/selenium-webdriver/selenium-webdriver.d.ts",<% if(filters.mocha) { %> + "client/test_typings/mocha/mocha.d.ts", + "client/test_typings/chai/chai.d.ts", + "client/test_typings/assertion-error/assertion-error.d.ts", + "client/test_typings/sinon/sinon.d.ts", + "client/test_typings/sinon-chai/sinon-chai.d.ts",<% } %><% if(filters.jasmine) { %> + "client/test_typings/jasmine/jasmine.d.ts",<% } %> + "client/test_typings/tsd.d.ts" + ] +} diff --git a/app/templates/tsd(ts).json b/app/templates/tsd(ts).json new file mode 100644 index 000000000..9f475e502 --- /dev/null +++ b/app/templates/tsd(ts).json @@ -0,0 +1,21 @@ +{ + "version": "v4", + "repo": "borisyankov/DefinitelyTyped", + "ref": "master", + "path": "client/typings", + "bundle": "client/typings/tsd.d.ts", + "installed": { + "angularjs/angular.d.ts": { + "commit": "40c60850ad6c8175a62d5ab48c4e016ea5b3dffe" + }, + "jquery/jquery.d.ts": { + "commit": "40c60850ad6c8175a62d5ab48c4e016ea5b3dffe" + }, + "lodash/lodash.d.ts": { + "commit": "40c60850ad6c8175a62d5ab48c4e016ea5b3dffe" + }, + "socket.io-client/socket.io-client.d.ts": { + "commit": "40c60850ad6c8175a62d5ab48c4e016ea5b3dffe" + } + } +} diff --git a/app/templates/tsd_test(ts).json b/app/templates/tsd_test(ts).json new file mode 100644 index 000000000..0a60c8103 --- /dev/null +++ b/app/templates/tsd_test(ts).json @@ -0,0 +1,33 @@ +{ + "version": "v4", + "repo": "borisyankov/DefinitelyTyped", + "ref": "master", + "path": "client/test_typings", + "bundle": "client/test_typings/tsd.d.ts", + "installed": { + "angular-protractor/angular-protractor.d.ts": { + "commit": "40c60850ad6c8175a62d5ab48c4e016ea5b3dffe" + }, + "selenium-webdriver/selenium-webdriver.d.ts": { + "commit": "40c60850ad6c8175a62d5ab48c4e016ea5b3dffe" + },<% if(filters.mocha) { %> + "mocha/mocha.d.ts": { + "commit": "40c60850ad6c8175a62d5ab48c4e016ea5b3dffe" + }, + "chai/chai.d.ts": { + "commit": "40c60850ad6c8175a62d5ab48c4e016ea5b3dffe" + }, + "assertion-error/assertion-error.d.ts": { + "commit": "40c60850ad6c8175a62d5ab48c4e016ea5b3dffe" + }, + "sinon/sinon.d.ts": { + "commit": "40c60850ad6c8175a62d5ab48c4e016ea5b3dffe" + }, + "sinon-chai/sinon-chai.d.ts": { + "commit": "40c60850ad6c8175a62d5ab48c4e016ea5b3dffe" + }<% } %><% if(filters.jasmine) { %> + "jasmine/jasmine.d.ts": { + "commit": "40c60850ad6c8175a62d5ab48c4e016ea5b3dffe" + }<% } %> + } +} diff --git a/readme.md b/readme.md index e2737ebfd..3dfad8576 100644 --- a/readme.md +++ b/readme.md @@ -51,7 +51,7 @@ Run `grunt` for building, `grunt serve` for preview, and `grunt serve:dist` for **Client** -* Scripts: `Babel`, `TypeScript` (Coming Soon) +* Scripts: `Babel`, `TypeScript` * Markup: `HTML`, `Jade` * Stylesheets: `CSS`, `Stylus`, `Sass`, `Less` * Angular Routers: `ngRoute`, `ui-router` diff --git a/test/test-file-creation.js b/test/test-file-creation.js index b7bbe9b70..66e832c61 100644 --- a/test/test-file-creation.js +++ b/test/test-file-creation.js @@ -13,7 +13,7 @@ describe('angular-fullstack generator', function () { var gen, defaultOptions = { buildtool: 'grunt', script: 'js', - babel: true, + transpiler: 'babel', markup: 'html', stylesheet: 'sass', router: 'uirouter', @@ -137,7 +137,8 @@ describe('angular-fullstack generator', function () { html: 'html' }, script: { - js: 'js' + js: 'js', + ts: 'ts' } }, files = []; @@ -157,7 +158,7 @@ describe('angular-fullstack generator', function () { }; - var script = mapping.script[ops.script], + var script = mapping.script[ops.transpiler === 'ts' ? 'ts' : 'js'], markup = mapping.markup[ops.markup], stylesheet = mapping.stylesheet[ops.stylesheet], models = ops.models ? ops.models : ops.odms[0]; @@ -165,7 +166,6 @@ describe('angular-fullstack generator', function () { /* Core Files */ files = files.concat([ 'client/.htaccess', - 'client/.jshintrc', 'client/favicon.ico', 'client/robots.txt', 'client/index.html', @@ -224,6 +224,21 @@ describe('angular-fullstack generator', function () { 'README.md' ]); + /* TypeScript */ + if (ops.transpiler === 'ts') { + files = files.concat([ + 'tsconfig.client.test.json', + 'tsconfig.client.json', + 'tsd.json', + 'tsd_test.json', + 'client/tslint.json' + ]); + } else { + files = files.concat([ + 'client/.jshintrc' + ]); + } + /* Ui-Router */ if (ops.router === 'uirouter') { files = files.concat([ @@ -515,7 +530,7 @@ describe('angular-fullstack generator', function () { describe('with other preprocessors and oauth', function() { var testOptions = { script: 'js', - babel: true, + transpiler: 'ts', markup: 'jade', stylesheet: 'less', router: 'uirouter', @@ -541,7 +556,7 @@ describe('angular-fullstack generator', function () { }); it('should pass lint', function(done) { - runTest('grunt jshint', this, done); + runTest('grunt tslint', this, done); }); it('should run server tests successfully', function(done) { @@ -552,9 +567,10 @@ describe('angular-fullstack generator', function () { runTest('grunt jscs', this, done, 'foo'); }); - it('should pass lint with generated snake-case endpoint', function(done) { - runTest('grunt jshint', this, done, 'foo-bar'); - }); + // TODO: generator-ng-component needs TS support + // it('should pass lint with generated snake-case endpoint', function(done) { + // runTest('grunt jshint', this, done, 'foo-bar'); + // }); it('should run server tests successfully with generated snake-case endpoint', function(done) { runTest('grunt test:server', this, done, 'foo-bar'); @@ -588,6 +604,7 @@ describe('angular-fullstack generator', function () { describe('with sequelize models, auth', function() { var testOptions = { script: 'js', + transpiler: 'babel', markup: 'jade', stylesheet: 'stylus', router: 'uirouter', @@ -660,7 +677,7 @@ describe('angular-fullstack generator', function () { describe('with other preprocessors and no server options', function() { var testOptions = { script: 'js', - babel: true, + transpiler: 'ts', markup: 'jade', stylesheet: 'stylus', router: 'ngroute', @@ -688,7 +705,7 @@ describe('angular-fullstack generator', function () { }); it('should pass lint', function(done) { - runTest('grunt jshint', this, done); + runTest('grunt tslint', this, done); }); it('should run server tests successfully', function(done) { @@ -699,9 +716,10 @@ describe('angular-fullstack generator', function () { runTest('grunt jscs', this, done, 'foo'); }); - it('should pass lint with generated endpoint', function(done) { - runTest('grunt jshint', this, done, 'foo'); - }); + // TODO: generator-ng-component needs TS support + // it('should pass lint with generated endpoint', function(done) { + // runTest('grunt jshint', this, done, 'foo'); + // }); it('should run server tests successfully with generated endpoint', function(done) { runTest('grunt test:server', this, done, 'foo'); diff --git a/util.js b/util.js index 529920364..6b8c65e73 100644 --- a/util.js +++ b/util.js @@ -105,7 +105,14 @@ function templateIsUsable(self, filteredFile) { return true; } -export function processDirectory(source, destination) { +function defaultIteratee(dest) { + return dest; +} + +/** + * + */ +export function processDirectory(source, destination, iteratee = defaultIteratee) { var self = this; var root = path.isAbsolute(source) ? source : path.join(self.sourceRoot(), source); var files = expandFiles('**', { dot: true, cwd: root }); @@ -125,6 +132,8 @@ export function processDirectory(source, destination) { src = path.join(root, f); dest = path.join(destination, name); + dest = iteratee(dest); + if(path.basename(dest).indexOf('_') === 0) { stripped = path.basename(dest).replace(/^_/, ''); dest = path.join(path.dirname(dest), stripped); From cfa47bc51a138c8309adabe570d0cf787cc3bc31 Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Wed, 23 Dec 2015 19:15:09 -0500 Subject: [PATCH 003/976] style(app): fix some issues TSLint was complaining about --- .../client/components/auth(auth)/auth.service.js | 6 +++--- .../components/auth(auth)/router.decorator.js | 14 +++++++------- .../client/components/auth(auth)/user.service.js | 4 ++-- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/app/templates/client/components/auth(auth)/auth.service.js b/app/templates/client/components/auth(auth)/auth.service.js index a5c4a7d0a..dbb13603a 100644 --- a/app/templates/client/components/auth(auth)/auth.service.js +++ b/app/templates/client/components/auth(auth)/auth.service.js @@ -20,10 +20,10 @@ function AuthService($location, $http, $cookies, $q, appConfig, Util, User) { * @param {Function} callback - optional, function(error, user) * @return {Promise} */ - login(user, callback) { + login({email, password}, callback) { return $http.post('/auth/local', { - email: user.email, - password: user.password + email: email, + password: password }) .then(res => { $cookies.put('token', res.data.token); diff --git a/app/templates/client/components/auth(auth)/router.decorator.js b/app/templates/client/components/auth(auth)/router.decorator.js index 500db2741..5b8fb0e6a 100644 --- a/app/templates/client/components/auth(auth)/router.decorator.js +++ b/app/templates/client/components/auth(auth)/router.decorator.js @@ -3,16 +3,16 @@ (function() { angular.module('<%= scriptAppName %>.auth') - .run(function($rootScope<% if (filters.ngroute) { %>, $location<% } if (filters.uirouter) { %>, $state<% } %>, Auth) { + .run(function($rootScope<% if (filters.ngroute) { %>, $location<% } if (filters.uirouter) { %>, $state<% } %>, Auth) { // Redirect to login if route requires auth and the user is not logged in, or doesn't have required role - $rootScope.$on(<% if (filters.ngroute) { %>'$routeChangeStart'<% } %><% if (filters.uirouter) { %>'$stateChangeStart'<% } %>, function(event, next) { - if(!next.authenticate) { + $rootScope.$on(<% if (filters.ngroute) { %>'$routeChangeStart'<% } %><% if (filters.uirouter) { %>'$stateChangeStart'<% } %>, function(event, next) { + if (!next.authenticate) { return; } - if(typeof next.authenticate === 'string') { + if (typeof next.authenticate === 'string') { Auth.hasRole(next.authenticate, _.noop).then(has => { - if(has) { + if (has) { return; } @@ -24,7 +24,7 @@ angular.module('<%= scriptAppName %>.auth') }); } else { Auth.isLoggedIn(_.noop).then(is => { - if(is) { + if (is) { return; } @@ -33,7 +33,7 @@ angular.module('<%= scriptAppName %>.auth') $state.go('main');<% } %> }); } - }); + }); }); })(); diff --git a/app/templates/client/components/auth(auth)/user.service.js b/app/templates/client/components/auth(auth)/user.service.js index ff00c6b20..63f4040d0 100644 --- a/app/templates/client/components/auth(auth)/user.service.js +++ b/app/templates/client/components/auth(auth)/user.service.js @@ -9,13 +9,13 @@ function UserResource($resource) { changePassword: { method: 'PUT', params: { - controller:'password' + controller: 'password' } }, get: { method: 'GET', params: { - id:'me' + id: 'me' } } }); From 869b45b6be032b18bb317065aaad477e4b248fa6 Mon Sep 17 00:00:00 2001 From: Peter Fu Date: Wed, 30 Dec 2015 10:51:43 +0800 Subject: [PATCH 004/976] fix(client:util.urlParse): special treatment for IE --- app/templates/client/components/util/util.service.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/app/templates/client/components/util/util.service.js b/app/templates/client/components/util/util.service.js index 8f221fa32..49d487396 100644 --- a/app/templates/client/components/util/util.service.js +++ b/app/templates/client/components/util/util.service.js @@ -26,6 +26,12 @@ function UtilService($window) { urlParse(url) { var a = document.createElement('a'); a.href = url; + + // Special treatment for IE, see http://stackoverflow.com/a/13405933 for details + if (a.host === '') { + a.href = a.href; + } + return a; }, From 446be5a0d2b9ab85919c6d17af7f235ebef70d4c Mon Sep 17 00:00:00 2001 From: kingcody Date: Fri, 1 Jan 2016 19:07:07 -0500 Subject: [PATCH 005/976] refactor(api-controller): use import statements and remove/rename promise helpers --- .../server/api/user(auth)/user.controller.js | 7 --- endpoint/templates/basename.controller.js | 49 +++++++++---------- 2 files changed, 24 insertions(+), 32 deletions(-) diff --git a/app/templates/server/api/user(auth)/user.controller.js b/app/templates/server/api/user(auth)/user.controller.js index 81010d7d5..16e732dfb 100644 --- a/app/templates/server/api/user(auth)/user.controller.js +++ b/app/templates/server/api/user(auth)/user.controller.js @@ -20,13 +20,6 @@ function handleError(res, statusCode) { }; } -function respondWith(res, statusCode) { - statusCode = statusCode || 200; - return function() { - res.status(statusCode).end(); - }; -} - /** * Get list of users * restriction: 'admin' diff --git a/endpoint/templates/basename.controller.js b/endpoint/templates/basename.controller.js index 5afdf9bce..fb8efaccd 100644 --- a/endpoint/templates/basename.controller.js +++ b/endpoint/templates/basename.controller.js @@ -10,18 +10,10 @@ 'use strict';<% if (filters.models) { %> import _ from 'lodash';<% if (filters.mongooseModels) { %> -var <%= classedName %> = require('./<%= basename %>.model');<% } if (filters.sequelizeModels) { %> -var sqldb = require('<%= relativeRequire(config.get('registerModelsFile')) %>'); -var <%= classedName %> = sqldb.<%= classedName %>;<% } %> +import <%= classedName %> from './<%= basename %>.model';<% } if (filters.sequelizeModels) { %> +import {<%= classedName %>} from '<%= relativeRequire(config.get('registerModelsFile')) %>';<% } %> -function handleError(res, statusCode) { - statusCode = statusCode || 500; - return function(err) { - res.status(statusCode).send(err); - }; -} - -function responseWithResult(res, statusCode) { +function respondWithResult(res, statusCode) { statusCode = statusCode || 200; return function(entity) { if (entity) { @@ -30,16 +22,6 @@ function responseWithResult(res, statusCode) { }; } -function handleEntityNotFound(res) { - return function(entity) { - if (!entity) { - res.status(404).end(); - return null; - } - return entity; - }; -} - function saveUpdates(updates) { return function(entity) { <% if (filters.mongooseModels) { %>var updated = _.merge(entity, updates); @@ -62,6 +44,23 @@ function removeEntity(res) { }); } }; +} + +function handleEntityNotFound(res) { + return function(entity) { + if (!entity) { + res.status(404).end(); + return null; + } + return entity; + }; +} + +function handleError(res, statusCode) { + statusCode = statusCode || 500; + return function(err) { + res.status(statusCode).send(err); + }; }<% } %> // Gets a list of <%= classedName %>s @@ -69,7 +68,7 @@ export function index(req, res) {<% if (!filters.models) { %> res.json([]);<% } else { %> <% if (filters.mongooseModels) { %><%= classedName %>.findAsync()<% } if (filters.sequelizeModels) { %><%= classedName %>.findAll()<% } %> - .then(responseWithResult(res)) + .then(respondWithResult(res)) .catch(handleError(res));<% } %> }<% if (filters.models) { %> @@ -82,7 +81,7 @@ export function show(req, res) { } })<% } %> .then(handleEntityNotFound(res)) - .then(responseWithResult(res)) + .then(respondWithResult(res)) .catch(handleError(res)); } @@ -90,7 +89,7 @@ export function show(req, res) { export function create(req, res) { <% if (filters.mongooseModels) { %><%= classedName %>.createAsync(req.body)<% } if (filters.sequelizeModels) { %><%= classedName %>.create(req.body)<% } %> - .then(responseWithResult(res, 201)) + .then(respondWithResult(res, 201)) .catch(handleError(res)); } @@ -107,7 +106,7 @@ export function update(req, res) { })<% } %> .then(handleEntityNotFound(res)) .then(saveUpdates(req.body)) - .then(responseWithResult(res)) + .then(respondWithResult(res)) .catch(handleError(res)); } From ef76710afba863a5620a9f968964414f49244426 Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Sun, 3 Jan 2016 01:25:28 -0500 Subject: [PATCH 006/976] 3.2.0 --- CHANGELOG.md | 30 +++++++++++++++++++++++++++++- angular-fullstack-deps | 2 +- package.json | 2 +- 3 files changed, 31 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index cf91d6415..beaa253d1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,10 +1,38 @@ + +# [3.2.0](https://github.com/DaftMonk/generator-angular-fullstack/compare/3.1.1...v3.2.0) (2016-01-03) + + +### Features + +* **app**: fix .gitattributes (6b17ef7](https://github.com/angular-fullstack/generator-angular-fullstack/commit/6b17ef719424cbe4025a7abb3bdc7466853f700c)) +* **gulp** + * add missing tasks ([4d0e2ba](https://github.com/angular-fullstack/generator-angular-fullstack/commit/4d0e2ba32ddaa8c0f4a9a78cbce362843b522894)) + * update useref to latest version ([f21a388](https://github.com/angular-fullstack/generator-angular-fullstack/commit/f21a388f9e724b34cdd92f5a704782c2035e677d)) + * add file revisioning for images ([3bf29b2](https://github.com/angular-fullstack/generator-angular-fullstack/commit/3bf29b27e4a3c61bc932af11dd3ea9a27c8fd48c)) + +### Bug Fixes + +* **e2e**: force e2e tests to wait for angular ([842ab55](https://github.com/angular-fullstack/generator-angular-fullstack/commit/842ab558c721f114b27d9dae8d3b6e436db71af8)) +* **gen**: fix styleExt being `sass` instead of `scss` ([8f99a8f](https://github.com/angular-fullstack/generator-angular-fullstack/commit/8f99a8ffb89e2c98b06b025bcdeb2374c839e81f)) +* **gen**: set scriptExt, templateExt, & styleExt when re-using a .yo-rc.json ([6e59229](https://github.com/angular-fullstack/generator-angular-fullstack/commit/6e59229afde8c3590da9d8f83bdd96c556fadfd6)) +* **gulp:** + * inject angular modules before other scripts ([c0d5a14](https://github.com/angular-fullstack/generator-angular-fullstack/commit/c0d5a146fd18e9953ece8e180cfd4c33f8fac63f)) + * clean .tmp folder in build task ([9596ba4](https://github.com/angular-fullstack/generator-angular-fullstack/commit/9596ba47a1e817605eb9ccdb600f4aa62d718e3f)) + * add missing gulp-env package ([cf017de](https://github.com/angular-fullstack/generator-angular-fullstack/commit/cf017debb7f2715896bf93003b576a0242a270b5)) + * get client tests working ([0cb4a4b](https://github.com/angular-fullstack/generator-angular-fullstack/commit/0cb4a4b9494a564508d6f2ec256374224465808b)) + * use different transpile options for server and client ([bb67961](https://github.com/angular-fullstack/generator-angular-fullstack/commit/bb679618d6bca2d84b7bc8adf1886f0171a5d005)) + * make sure tests and main app file are not injected ([0171112](https://github.com/angular-fullstack/generator-angular-fullstack/commit/017111297968f3fcfb604273fa37d162ad01a714)) + * make sure `.htaccess` is copied on build ([3602406](https://github.com/angular-fullstack/generator-angular-fullstack/commit/3602406631d4f5e73d51bab6d11c1d975b25bd00)) + * call `wiredep:test` before running tests ([103adb2](https://github.com/angular-fullstack/generator-angular-fullstack/commit/103adb2e19feda6bdb3487b3cde69afd12feb48d)) + * **inject:css**: fix string that should be template string ([bb92502](https://github.com/angular-fullstack/generator-angular-fullstack/commit/bb92502593a27045a05d6d8789f54f05fa9125f5)) + ## [3.1.1](https://github.com/DaftMonk/generator-angular-fullstack/compare/3.1.0...v3.1.1) (2015-12-15) ### Bug Fixes -* client:auth.decorator: fix Auth.isLoggedIn not having a noop arg ([0e9f302](https://github.com/angular-fullstack/generator-angular-fullstack/commit/0e9f3025fbe69c8613435e59d028cf6ce9b0e9e4)) +* **client:auth.decorator**: fix Auth.isLoggedIn not having a noop arg ([0e9f302](https://github.com/angular-fullstack/generator-angular-fullstack/commit/0e9f3025fbe69c8613435e59d028cf6ce9b0e9e4)) diff --git a/angular-fullstack-deps b/angular-fullstack-deps index b4a15f56b..0bfe1af33 160000 --- a/angular-fullstack-deps +++ b/angular-fullstack-deps @@ -1 +1 @@ -Subproject commit b4a15f56b93e528ab7b2eae748cd1be1ae26a61f +Subproject commit 0bfe1af3377fe2049cc7a6f5dea8a1bc366cd39d diff --git a/package.json b/package.json index 2a04fdcb2..450308af2 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "generator-angular-fullstack", - "version": "3.1.1", + "version": "3.2.0", "description": "Yeoman generator for creating MEAN stack applications, using MongoDB, Express, AngularJS, and Node", "keywords": [ "yeoman-generator", From e52497b419d711f0637dc15b6d20f0d3a3e8239c Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Mon, 4 Jan 2016 13:13:58 -0500 Subject: [PATCH 007/976] fix(changelog): add missing left-bracket --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index beaa253d1..c08f6a273 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,7 +4,7 @@ ### Features -* **app**: fix .gitattributes (6b17ef7](https://github.com/angular-fullstack/generator-angular-fullstack/commit/6b17ef719424cbe4025a7abb3bdc7466853f700c)) +* **app**: fix .gitattributes ([6b17ef7](https://github.com/angular-fullstack/generator-angular-fullstack/commit/6b17ef719424cbe4025a7abb3bdc7466853f700c)) * **gulp** * add missing tasks ([4d0e2ba](https://github.com/angular-fullstack/generator-angular-fullstack/commit/4d0e2ba32ddaa8c0f4a9a78cbce362843b522894)) * update useref to latest version ([f21a388](https://github.com/angular-fullstack/generator-angular-fullstack/commit/f21a388f9e724b34cdd92f5a704782c2035e677d)) From 93dec1248def09821d7a46567b450dc1c5331bdb Mon Sep 17 00:00:00 2001 From: David Mohr Date: Wed, 6 Jan 2016 18:57:27 +1100 Subject: [PATCH 008/976] fix(gulp:mocha): have tests clean up once complete mocha unit and integration tests will hang unless express (and optionally mongoose) are closed once the tests are complete --- app/templates/gulpfile.babel(gulp).js | 4 ++-- app/templates/mocha.global(gulp).js | 8 ++++++++ app/templates/server/app.js | 2 +- 3 files changed, 11 insertions(+), 3 deletions(-) create mode 100644 app/templates/mocha.global(gulp).js diff --git a/app/templates/gulpfile.babel(gulp).js b/app/templates/gulpfile.babel(gulp).js index 5b6e9d547..7d6ef7f59 100644 --- a/app/templates/gulpfile.babel(gulp).js +++ b/app/templates/gulpfile.babel(gulp).js @@ -42,8 +42,8 @@ const paths = { scripts: [`${serverPath}/**/!(*.spec|*.integration).js`], json: [`${serverPath}/**/*.json`], test: { - integration: `${serverPath}/**/*.integration.js`, - unit: `${serverPath}/**/*.spec.js` + integration: [`${serverPath}/**/*.integration.js`, 'mocha.global.js'], + unit: [`${serverPath}/**/*.spec.js`, 'mocha.global.js'] } }, karma: 'karma.conf.js', diff --git a/app/templates/mocha.global(gulp).js b/app/templates/mocha.global(gulp).js new file mode 100644 index 000000000..c34b2da8c --- /dev/null +++ b/app/templates/mocha.global(gulp).js @@ -0,0 +1,8 @@ +import app from './';<% if (filters.mongoose) { %> +import mongoose from 'mongoose';<% } %> + +after(function(done) { + app.angularFullstack.on('close', () => done());<% if (filters.mongoose) { %> + mongoose.connection.close();<% } %> + app.angularFullstack.close(); +}); diff --git a/app/templates/server/app.js b/app/templates/server/app.js index 20d4aefe8..c3e2eaefe 100644 --- a/app/templates/server/app.js +++ b/app/templates/server/app.js @@ -34,7 +34,7 @@ require('./routes')(app); // Start server function startServer() { - server.listen(config.port, config.ip, function() { + app.angularFullstack = server.listen(config.port, config.ip, function() { console.log('Express server listening on %d, in %s mode', config.port, app.get('env')); }); } From 7bc99fb53a4b1ffd924395918abdd8a683ebd1cd Mon Sep 17 00:00:00 2001 From: David Mohr Date: Wed, 6 Jan 2016 19:17:18 +1100 Subject: [PATCH 009/976] fix(gulp:test): fix gulp test dependencies update `test:client` dependencies and ensure correct async run hints --- app/templates/gulpfile.babel(gulp).js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app/templates/gulpfile.babel(gulp).js b/app/templates/gulpfile.babel(gulp).js index 5b6e9d547..837d85040 100644 --- a/app/templates/gulpfile.babel(gulp).js +++ b/app/templates/gulpfile.babel(gulp).js @@ -407,7 +407,7 @@ gulp.task('serve:dist', cb => { cb); }); -gulp.task('test', ['wiredep:test'], cb => { +gulp.task('test', cb => { return runSequence('test:server', 'test:client', cb); }); @@ -431,7 +431,7 @@ gulp.task('mocha:integration', () => { .pipe(mocha()); }); -gulp.task('test:client', ['wiredep:test'<% if(filters.ts) { %>, 'tsd:test', 'transpile:client', 'transpile:client:test'<% } %>], (done) => { +gulp.task('test:client', ['wiredep:test', 'constant'<% if(filters.ts) { %>, 'tsd:test', 'transpile:client', 'transpile:client:test'<% } %>], (done) => { new KarmaServer({ configFile: `${__dirname}/${paths.karma}`, singleRun: true @@ -456,7 +456,7 @@ gulp.task('wiredep:client', () => { }); gulp.task('wiredep:test', () => { - gulp.src(paths.karma) + return gulp.src(paths.karma) .pipe(wiredep({ exclude: [ /bootstrap-sass-official/, @@ -545,7 +545,7 @@ gulp.task('jade', function() { gulp.task('constant', function() { let sharedConfig = require(`./${serverPath}/config/environment/shared`); - plugins.ngConstant({ + return plugins.ngConstant({ name: '<%= scriptAppName %>.constants', deps: [], wrap: true, From 661ec3a354a238065b401017322621bb9855fbd7 Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Wed, 6 Jan 2016 13:25:14 -0500 Subject: [PATCH 010/976] 3.3.0-beta.0 --- CHANGELOG.md | 16 ++++++++++++++++ angular-fullstack-deps | 2 +- package.json | 2 +- 3 files changed, 18 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c08f6a273..3043324ef 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,19 @@ + +# [3.3.0-beta.0](https://github.com/DaftMonk/generator-angular-fullstack/compare/3.2.0...v3.3.0-beta.0) (2016-01-06) + + +### Bug Fixes + +* **client:util.urlParse:** special treatment for IE ([869b45b](https://github.com/DaftMonk/generator-angular-fullstack/commit/869b45b)) +* **gulp:** + * **mocha:** have tests clean up once complete ([93dec12](https://github.com/DaftMonk/generator-angular-fullstack/commit/93dec12)) + * **test:** fix gulp test dependencies ([7bc99fb](https://github.com/DaftMonk/generator-angular-fullstack/commit/7bc99fb)) + +### Features + +* **client:** Add initial TypeScript support ([22d46d5](https://github.com/DaftMonk/generator-angular-fullstack/commit/22d46d5)) + + # [3.2.0](https://github.com/DaftMonk/generator-angular-fullstack/compare/3.1.1...v3.2.0) (2016-01-03) diff --git a/angular-fullstack-deps b/angular-fullstack-deps index 0bfe1af33..29cd1a011 160000 --- a/angular-fullstack-deps +++ b/angular-fullstack-deps @@ -1 +1 @@ -Subproject commit 0bfe1af3377fe2049cc7a6f5dea8a1bc366cd39d +Subproject commit 29cd1a01184213b1c4a278d0f98b9a46ef000c7d diff --git a/package.json b/package.json index 450308af2..d2cd698aa 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "generator-angular-fullstack", - "version": "3.2.0", + "version": "3.3.0-beta.0", "description": "Yeoman generator for creating MEAN stack applications, using MongoDB, Express, AngularJS, and Node", "keywords": [ "yeoman-generator", From 70bf985a6635b5f10df9b8806632723926431f08 Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Wed, 6 Jan 2016 14:56:09 -0500 Subject: [PATCH 011/976] feat(gen): remove gulp flag, add build tool project prompt --- app/generator.js | 17 ++++------------- readme.md | 3 +-- 2 files changed, 5 insertions(+), 15 deletions(-) diff --git a/app/generator.js b/app/generator.js index 1d0f2a793..5bb5bc92d 100644 --- a/app/generator.js +++ b/app/generator.js @@ -19,12 +19,6 @@ export default class Generator extends Base { defaults: false }); - this.option('gulp', { - desc: 'Use experimental Gulp configuration', - type: Boolean, - defaults: false - }); - this.option('app-suffix', { desc: 'Allow a custom suffix to be added to the module name', type: String, @@ -266,14 +260,14 @@ export default class Generator extends Base { this.log('\n# Project\n'); - this.prompt([/*{ + this.prompt([{ type: 'list', name: 'buildtool', - message: 'Would you like to use Gulp (experimental) instead of Grunt?', + message: 'Would you like to use Gulp or Grunt?', choices: ['Grunt', 'Gulp'], default: 0, filter: val => val.toLowerCase() - }, */{ + }, { type: 'list', name: 'testing', message: 'What would you like to write tests with?', @@ -298,10 +292,7 @@ export default class Generator extends Base { return answers.testing === 'mocha'; } }], function (answers) { - this.filters.grunt = !this.options['gulp']; - this.filters.gulp = !!this.options['gulp']; - // this.filters.grunt = answers.buildtool === 'grunt'; - // this.filters.gulp = answers.buildtool === 'gulp'; + this.filters[answers.buildtool] = true; this.filters[answers.testing] = true; if (answers.testing === 'mocha') { diff --git a/readme.md b/readme.md index 3dfad8576..670d9394f 100644 --- a/readme.md +++ b/readme.md @@ -41,7 +41,7 @@ Run `grunt` for building, `grunt serve` for preview, and `grunt serve:dist` for **General** -* Build Systems: `Grunt`, `Gulp` (experimental) +* Build Systems: `Grunt`, `Gulp` * Testing: * `Jasmine` * `Mocha + Chai + Sinon` @@ -113,7 +113,6 @@ Options: --skip-cache # Do not remember prompt answers Default: false --skip-install # Do not install dependencies Default: false --app-suffix # Allow a custom suffix to be added to the module name Default: App - --gulp # Use the experimental Gulp config instead of Grunt Default: false Arguments: name Type: String Required: false From d3fd0c00cae8489e3ce59cd879e20a2bf9248a84 Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Thu, 7 Jan 2016 23:13:17 -0500 Subject: [PATCH 012/976] fix(gulp): make coverage tests work add `coverage` to .gitignore --- app/templates/_.gitignore | 1 + app/templates/_package.json | 6 ++++-- app/templates/gulpfile.babel(gulp).js | 20 +++++++++++++------- 3 files changed, 18 insertions(+), 9 deletions(-) diff --git a/app/templates/_.gitignore b/app/templates/_.gitignore index d5ae65fb7..9fbd89aa0 100644 --- a/app/templates/_.gitignore +++ b/app/templates/_.gitignore @@ -7,3 +7,4 @@ client/bower_components dist /server/config/local.env.js npm-debug.log +coverage diff --git a/app/templates/_package.json b/app/templates/_package.json index f72d5b765..13c47e4e3 100644 --- a/app/templates/_package.json +++ b/app/templates/_package.json @@ -43,8 +43,7 @@ "gulp-add-src": "^0.2.0", "gulp-angular-templatecache": "^1.7.0", "gulp-autoprefixer": "2.3.1", - "gulp-babel": "^5.1.0", - "gulp-babel-istanbul": "^0.11.0",<% if(filters.ts) { %> + "gulp-babel": "^5.1.0",<% if(filters.ts) { %> "gulp-typescript": "~2.10.0", "gulp-tsd": "~0.0.4", "gulp-tslint": "~4.2.1",<% } %> @@ -54,6 +53,8 @@ "gulp-filter": "^2.0.2", "gulp-imagemin": "^2.2.1", "gulp-inject": "^1.3.1", + "gulp-istanbul": "~0.10.3", + "gulp-istanbul-enforcer": "^1.0.3", "gulp-jscs": "^3.0.2", "gulp-jshint": "^1.11.0", "gulp-livereload": "^3.8.0", @@ -82,6 +83,7 @@ "gulp-scss-lint": "^0.2.1",<% } if(filters.less) { %> "gulp-less": "^3.0.3", "gulp-recess": "^1.1.2",<% } %> + "isparta": "^3.5.3", "utile": "~0.3.0", "nodemon": "^1.3.7", "run-sequence": "^1.1.0", diff --git a/app/templates/gulpfile.babel(gulp).js b/app/templates/gulpfile.babel(gulp).js index 5182ba25a..9aecb6ca6 100644 --- a/app/templates/gulpfile.babel(gulp).js +++ b/app/templates/gulpfile.babel(gulp).js @@ -13,7 +13,8 @@ import {stream as wiredep} from 'wiredep'; import nodemon from 'nodemon'; import {Server as KarmaServer} from 'karma'; import runSequence from 'run-sequence'; -import {protractor, webdriver_update} from 'gulp-protractor';<% if(filters.stylus) { %> +import {protractor, webdriver_update} from 'gulp-protractor'; +import {Instrumenter} from 'isparta';<% if(filters.stylus) { %> import nib from 'nib';<% } %> var plugins = gulpLoadPlugins(); @@ -158,8 +159,8 @@ let mocha = lazypipe() }); let istanbul = lazypipe() - .pipe(plugins.babelIstanbul.writeReports) - .pipe(plugins.babelIstanbul.enforceThresholds, { + .pipe(plugins.istanbul.writeReports) + .pipe(plugins.istanbulEnforcer, { thresholds: { global: { lines: 80, @@ -167,7 +168,9 @@ let istanbul = lazypipe() branches: 80, functions: 80 } - } + }, + coverageDirectory: './coverage', + rootDirectory : '' }); /******************** @@ -417,7 +420,7 @@ gulp.task('test:server', cb => { 'env:test', 'mocha:unit', 'mocha:integration', - //'mocha:coverage', + 'mocha:coverage', cb); }); @@ -600,9 +603,12 @@ gulp.task('copy:server', () => { gulp.task('coverage:pre', () => { return gulp.src(paths.server.scripts) // Covering files - .pipe(plugins.babelIstanbul()) + .pipe(plugins.istanbul({ + instrumenter: Instrumenter, // Use the isparta instrumenter (code coverage for ES6) + includeUntested: true + })) // Force `require` to return covered files - .pipe(plugins.babelIstanbul.hookRequire()); + .pipe(plugins.istanbul.hookRequire()); }); gulp.task('coverage:unit', () => { From c429adb64c336f38a1730f322debe70514ec3aca Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Sat, 9 Jan 2016 15:42:58 -0500 Subject: [PATCH 013/976] feat(client): move navbar and footer directive usage to around the router view directive in index.html --- app/templates/client/app/account(auth)/login/login(html).html | 2 -- app/templates/client/app/account(auth)/login/login(jade).jade | 1 - .../client/app/account(auth)/settings/settings(html).html | 2 -- .../client/app/account(auth)/settings/settings(jade).jade | 1 - .../client/app/account(auth)/signup/signup(html).html | 2 -- .../client/app/account(auth)/signup/signup(jade).jade | 1 - app/templates/client/app/admin(auth)/admin(html).html | 2 -- app/templates/client/app/admin(auth)/admin(jade).jade | 1 - app/templates/client/app/main/main(html).html | 4 ---- app/templates/client/app/main/main(jade).jade | 4 ---- app/templates/client/index.html | 2 ++ 11 files changed, 2 insertions(+), 20 deletions(-) diff --git a/app/templates/client/app/account(auth)/login/login(html).html b/app/templates/client/app/account(auth)/login/login(html).html index a01d29342..76382615f 100644 --- a/app/templates/client/app/account(auth)/login/login(html).html +++ b/app/templates/client/app/account(auth)/login/login(html).html @@ -1,5 +1,3 @@ - -
diff --git a/app/templates/client/app/account(auth)/login/login(jade).jade b/app/templates/client/app/account(auth)/login/login(jade).jade index 04936ec48..c46f0e5eb 100644 --- a/app/templates/client/app/account(auth)/login/login(jade).jade +++ b/app/templates/client/app/account(auth)/login/login(jade).jade @@ -1,4 +1,3 @@ -navbar .container .row .col-sm-12 diff --git a/app/templates/client/app/account(auth)/settings/settings(html).html b/app/templates/client/app/account(auth)/settings/settings(html).html index d1d979a3c..690b0cf3f 100644 --- a/app/templates/client/app/account(auth)/settings/settings(html).html +++ b/app/templates/client/app/account(auth)/settings/settings(html).html @@ -1,5 +1,3 @@ - -
diff --git a/app/templates/client/app/account(auth)/settings/settings(jade).jade b/app/templates/client/app/account(auth)/settings/settings(jade).jade index 8fe47801e..fc4bee87f 100644 --- a/app/templates/client/app/account(auth)/settings/settings(jade).jade +++ b/app/templates/client/app/account(auth)/settings/settings(jade).jade @@ -1,4 +1,3 @@ -navbar .container .row .col-sm-12 diff --git a/app/templates/client/app/account(auth)/signup/signup(html).html b/app/templates/client/app/account(auth)/signup/signup(html).html index a23fe43a6..6b6cad4b7 100644 --- a/app/templates/client/app/account(auth)/signup/signup(html).html +++ b/app/templates/client/app/account(auth)/signup/signup(html).html @@ -1,5 +1,3 @@ - -
diff --git a/app/templates/client/app/account(auth)/signup/signup(jade).jade b/app/templates/client/app/account(auth)/signup/signup(jade).jade index 1d9d547ff..51480eefb 100644 --- a/app/templates/client/app/account(auth)/signup/signup(jade).jade +++ b/app/templates/client/app/account(auth)/signup/signup(jade).jade @@ -1,4 +1,3 @@ -navbar .container .row .col-sm-12 diff --git a/app/templates/client/app/admin(auth)/admin(html).html b/app/templates/client/app/admin(auth)/admin(html).html index 3502135b9..cbbe68a40 100644 --- a/app/templates/client/app/admin(auth)/admin(html).html +++ b/app/templates/client/app/admin(auth)/admin(html).html @@ -1,5 +1,3 @@ - -

The delete user and user index api routes are restricted to users with the 'admin' role.

    diff --git a/app/templates/client/app/admin(auth)/admin(jade).jade b/app/templates/client/app/admin(auth)/admin(jade).jade index 822e747d8..7da628335 100644 --- a/app/templates/client/app/admin(auth)/admin(jade).jade +++ b/app/templates/client/app/admin(auth)/admin(jade).jade @@ -1,4 +1,3 @@ -navbar .container p | The delete user and user index api routes are restricted to users with the 'admin' role. diff --git a/app/templates/client/app/main/main(html).html b/app/templates/client/app/main/main(html).html index 4f85aa54e..0ee458852 100644 --- a/app/templates/client/app/main/main(html).html +++ b/app/templates/client/app/main/main(html).html @@ -1,5 +1,3 @@ - -
<% if (filters.socketio) { %> diff --git a/app/templates/client/app/main/main(jade).jade b/app/templates/client/app/main/main(jade).jade index 3191ca2d2..5a732f9dc 100644 --- a/app/templates/client/app/main/main(jade).jade +++ b/app/templates/client/app/main/main(jade).jade @@ -10,7 +10,7 @@ header#banner.hero-unit h1.page-header Features: ul.nav.nav-tabs.nav-stacked.col-md-4.col-lg-4.col-sm-6(ng-repeat='thing in main.awesomeThings') li - a(href='#', tooltip='{{thing.info}}') + a(href='#', uib-tooltip='{{thing.info}}') | {{thing.name}}<% if (filters.socketio) { %> button.close(type='button', ng-click='main.deleteThing(thing)') ×<% } %><% if (filters.socketio) { %> diff --git a/app/templates/client/components/modal(uibootstrap)/modal.service.js b/app/templates/client/components/modal(uibootstrap)/modal.service.js index d878f69dd..d7807e6b5 100644 --- a/app/templates/client/components/modal(uibootstrap)/modal.service.js +++ b/app/templates/client/components/modal(uibootstrap)/modal.service.js @@ -1,19 +1,19 @@ 'use strict'; angular.module('<%= scriptAppName %>') - .factory('Modal', function($rootScope, $modal) { + .factory('Modal', function($rootScope, $uibModal) { /** * Opens a modal * @param {Object} scope - an object to be merged with modal's scope * @param {String} modalClass - (optional) class(es) to be applied to the modal - * @return {Object} - the instance $modal.open() returns + * @return {Object} - the instance $uibModal.open() returns */ function openModal(scope = {}, modalClass = 'modal-default') { var modalScope = $rootScope.$new(); angular.extend(modalScope, scope); - return $modal.open({ + return $uibModal.open({ templateUrl: 'components/modal/modal.html', windowClass: modalClass, scope: modalScope diff --git a/app/templates/client/components/navbar/navbar(html).html b/app/templates/client/components/navbar/navbar(html).html index 8337fb6c2..4b6692d36 100644 --- a/app/templates/client/components/navbar/navbar(html).html +++ b/app/templates/client/components/navbar/navbar(html).html @@ -9,7 +9,7 @@ <%= lodash.slugify(lodash.humanize(appname)) %>
- diff --git a/templates/app/client/components/navbar/navbar.component.js b/templates/app/client/components/navbar/navbar.component.js index 8cf2ab0b1..129f1cb72 100644 --- a/templates/app/client/components/navbar/navbar.component.js +++ b/templates/app/client/components/navbar/navbar.component.js @@ -1,44 +1,54 @@ -'use strict'; -/* eslint no-sync: 0 */ -import angular from 'angular'; +import { Component } from '@angular/core'; +<%_ if (filters.auth) { -%> + <%_ if (filters.uirouter) { -%> +import { StateService } from 'ui-router-ng2';<% } %> +import { AuthService } from '../auth/auth.service';<% } %> -export class NavbarComponent { +export let NavbarComponent = @Component({ + selector: 'navbar', + template: require('./navbar.html') +}) +class NavbarComponent { + isCollapsed = true; + isLoggedIn; + isAdmin; + currentUser = {}; menu = [{ - 'title': 'Home', - <% if (filters.uirouter) { %>'state': 'main'<% } else { %>'link': '/'<% } %> + title: 'Home', + <% if(filters.uirouter) { %>'state': 'main'<% } else { %>'link': '/'<% } %>, }]; - <%_ if(!filters.uirouter) { -%> - $location; - <%_ } -%> - <%_ if (filters.auth) { -%> - isLoggedIn: Function; - isAdmin: Function; - getCurrentUser: Function; - <%_ } -%> - isCollapsed = true; - <%_ if(filters.ngroute || filters.auth) { _%> + <%_ if(filters.auth) { -%> - constructor(<% if(!filters.uirouter) { %>$location<% } if(!filters.uirouter && filters.auth) { %>, <% } if (filters.auth) { %>Auth<% } %>) { - 'ngInject'; - <%_ if(!filters.uirouter) { _%> - this.$location = $location; - <%_ } _%> - <%_ if (filters.auth) { _%> - this.isLoggedIn = Auth.isLoggedInSync; - this.isAdmin = Auth.isAdminSync; - this.getCurrentUser = Auth.getCurrentUserSync; - <%_ } _%> - }<% } %> - <%_ if(!filters.uirouter) { _%> + static parameters = [AuthService<% if(filters.uirouter) { %>, StateService<% } %>]; + constructor(authService: AuthService<% if(filters.uirouter) { %>, stateService: StateService<% } %>) { + this.AuthService = authService; + this.StateService = stateService; - isActive(route) { - return route === this.$location.path(); - }<% } %> -} + this.reset(); -export default angular.module('directives.navbar', []) - .component('navbar', { - template: require('./navbar.<%= templateExt %>'), - controller: NavbarComponent - }) - .name; + this.AuthService.currentUserChanged.subscribe(user => { + this.currentuser = user; + this.reset(); + }) + } + + reset() { + this.AuthService.isLoggedIn().then(is => { + this.isLoggedIn = is; + }); + this.AuthService.isAdmin().then(is => { + this.isAdmin = is; + }); + this.AuthService.getCurrentUser().then(user => { + this.currentUser = user; + }); + } + + logout() { + let promise = this.AuthService.logout(); + <%_ if (filters.uirouter) { -%> + this.StateService.go('login');<% } -%> + <%_ if (filters.ngroute) { -%><% } -%> + return promise; + }<% } -%> +} diff --git a/templates/app/client/components/oauth-buttons(oauth)/index.js b/templates/app/client/components/oauth-buttons(oauth)/index.js deleted file mode 100644 index 5b328d684..000000000 --- a/templates/app/client/components/oauth-buttons(oauth)/index.js +++ /dev/null @@ -1,23 +0,0 @@ -'use strict'; -import angular from 'angular'; - -export function OauthButtonsController($window) { - 'ngInject'; - this.loginOauth = function(provider) { - $window.location.href = '/auth/' + provider; - }; -} - -export default angular.module('<%= scriptAppName %>.oauthButtons', []) - .directive('oauthButtons', function() { - return { - template: require('./oauth-buttons.<%= templateExt %>'), - restrict: 'EA', - controller: OauthButtonsController, - controllerAs: 'OauthButtons', - scope: { - classes: '@' - } - }; - }) - .name; diff --git a/templates/app/client/components/oauth-buttons(oauth)/oauth-buttons(html).html b/templates/app/client/components/oauth-buttons(oauth)/oauth-buttons(html).html index 5ea19425f..7b9b0623a 100644 --- a/templates/app/client/components/oauth-buttons(oauth)/oauth-buttons(html).html +++ b/templates/app/client/components/oauth-buttons(oauth)/oauth-buttons(html).html @@ -1,12 +1,12 @@ -<% if(filters.facebookAuth) { %> +<% if(filters.facebookAuth) { %> Connect with Facebook -<% } if (filters.googleAuth) { %> +<% } if (filters.googleAuth) { %> Connect with Google+ -<% } if (filters.twitterAuth) { %> +<% } if (filters.twitterAuth) { %> Connect with Twitter <% } %> diff --git a/templates/app/client/components/oauth-buttons(oauth)/oauth-buttons.component.js b/templates/app/client/components/oauth-buttons(oauth)/oauth-buttons.component.js new file mode 100644 index 000000000..c29bbff2c --- /dev/null +++ b/templates/app/client/components/oauth-buttons(oauth)/oauth-buttons.component.js @@ -0,0 +1,12 @@ +import { Component } from '@angular/core'; + +export let OauthButtonsComponent = @Component({ + selector: 'oauth-buttons', + template: require('./oauth-buttons.<%=templateExt%>'), + styles: [require('./oauth-buttons.<%=styleExt%>')], +}) +class OauthButtonsComponent { + loginOauth(provider) { + window.location.href = `/auth/${provider}`; + }; +} diff --git a/templates/app/client/components/socket(socketio)/socket.mock.js b/templates/app/client/components/socket(socketio)/socket.mock.js index fdf9e5a57..eb7ff0125 100644 --- a/templates/app/client/components/socket(socketio)/socket.mock.js +++ b/templates/app/client/components/socket(socketio)/socket.mock.js @@ -1,17 +1,13 @@ 'use strict'; -const angular = require('angular'); +import { noop } from 'lodash-es'; -angular.module('socketMock', []) - .factory('socket', function() { - return { - socket: { - connect: function() {}, - on: function() {}, - emit: function() {}, - receive: function() {} - }, - - syncUpdates: function() {}, - unsyncUpdates: function() {} +export class SocketServiceMock { + socket = { + connect: noop, + on: noop, + emit: noop, + receive: noop }; - }); + syncUpdates = noop; + unsyncUpdates = noop; +} diff --git a/templates/app/client/components/socket(socketio)/socket.service.js b/templates/app/client/components/socket(socketio)/socket.service.js index a41af682a..efc3473de 100644 --- a/templates/app/client/components/socket(socketio)/socket.service.js +++ b/templates/app/client/components/socket(socketio)/socket.service.js @@ -1,77 +1,68 @@ 'use strict'; -import * as _ from 'lodash'; -import angular from 'angular'; +import { Injectable } from '@angular/core'; +import { noop, find, remove } from 'lodash'; import io from 'socket.io-client'; +import constants from '../../app/app.constants'; -function Socket(socketFactory) { - 'ngInject'; - // socket.io now auto-configures its connection when we ommit a connection url - var ioSocket = io('', { +export let SocketService = @Injectable() +class SocketService { + socket; + + constructor() { + this.socket = io(constants.env === 'development' ? `localhost:${constants.port}` : '', { // Send auth token on connection, you will need to DI the Auth service above // 'query': 'token=' + Auth.getToken() - path: '/socket.io-client' }); + } - var socket = socketFactory({ ioSocket }); - - return { - socket, - - /** - * Register listeners to sync an array with updates on a model - * - * Takes the array we want to sync, the model name that socket updates are sent from, - * and an optional callback function after new items are updated. - * - * @param {String} modelName - * @param {Array} array - * @param {Function} cb - */ - syncUpdates(modelName, array, cb) { - cb = cb || angular.noop; - - /** - * Syncs item creation/updates on 'model:save' - */ - socket.on(modelName + ':save', function (item) { - var oldItem = _.find(array, {_id: item._id}); - var index = array.indexOf(oldItem); - var event = 'created'; - - // replace oldItem if it exists - // otherwise just add item to the collection - if (oldItem) { - array.splice(index, 1, item); - event = 'updated'; - } else { - array.push(item); - } + /** + * Register listeners to sync an array with updates on a model + * + * Takes the array we want to sync, the model name that socket updates are sent from, + * and an optional callback function after new items are updated. + * + * @param {String} modelName + * @param {Array} array + * @param {Function} cb + */ + syncUpdates(modelName, array, cb = noop) { + /** + * Syncs item creation/updates on 'model:save' + */ + this.socket.on(`${modelName}:save`, function(item) { + var oldItem = find(array, {_id: item._id}); + var index = array.indexOf(oldItem); + var event = 'created'; - cb(event, item, array); - }); + // replace oldItem if it exists + // otherwise just add item to the collection + if(oldItem) { + array.splice(index, 1, item); + event = 'updated'; + } else { + array.push(item); + } - /** - * Syncs removed items on 'model:remove' - */ - socket.on(modelName + ':remove', function (item) { - var event = 'deleted'; - _.remove(array, {_id: item._id}); - cb(event, item, array); - }); - }, + cb(event, item, array); + }); - /** - * Removes listeners for a models updates on the socket - * - * @param modelName - */ - unsyncUpdates(modelName) { - socket.removeAllListeners(modelName + ':save'); - socket.removeAllListeners(modelName + ':remove'); - } - }; + /** + * Syncs removed items on 'model:remove' + */ + this.socket.on(`${modelName}:remove`, function(item) { + var event = 'deleted'; + remove(array, {_id: item._id}); + cb(event, item, array); + }); } -export default angular.module('<%= scriptAppName %>.socket', []) - .factory('socket', Socket) - .name; + /** + * Removes listeners for a models updates on the socket + * + * @param modelName + */ + unsyncUpdates(modelName) { + this.socket.removeAllListeners(`${modelName}:save`); + this.socket.removeAllListeners(`${modelName}:remove`); + } +} diff --git a/templates/app/client/components/util.js b/templates/app/client/components/util.js new file mode 100644 index 000000000..11255b391 --- /dev/null +++ b/templates/app/client/components/util.js @@ -0,0 +1,67 @@ +/** + * The Util service is for thin, globally reusable, utility functions + */ + +import { + isFunction, + noop, +} from 'lodash'; +import { Response } from '@angular/http'; + +/** + * Return a callback or noop function + * + * @param {Function|*} cb - a 'potential' function + * @return {Function} + */ +export function safeCb(cb) { + return isFunction(cb) ? cb : noop; +} + +/** + * Parse a given url with the use of an anchor element + * + * @param {String} url - the url to parse + * @return {Object} - the parsed url, anchor element + */ +export function urlParse(url) { + var a = document.createElement('a'); + a.href = url; + + // Special treatment for IE, see http://stackoverflow.com/a/13405933 for details + if (a.host === '') { + a.href = a.href; + } + + return a; +} + +/** + * Test whether or not a given url is same origin + * + * @param {String} url - url to test + * @param {String|String[]} [origins] - additional origins to test against + * @return {Boolean} - true if url is same origin + */ +export function isSameOrigin(url, origins) { + url = Util.urlParse(url); + origins = (origins && [].concat(origins)) || []; + origins = origins.map(Util.urlParse); + origins.push(window.location); + origins = origins.filter(function(o) { + let hostnameCheck = url.hostname === o.hostname; + let protocolCheck = url.protocol === o.protocol; + // 2nd part of the special treatment for IE fix (see above): + // This part is when using well-known ports 80 or 443 with IE, + // when window.location.port==='' instead of the real port number. + // Probably the same cause as this IE bug: https://goo.gl/J9hRta + let portCheck = url.port === o.port || (o.port === '' && (url.port === '80' || url.port === '443')); + return hostnameCheck && protocolCheck && portCheck; + }); + return origins.length >= 1; +} + +export function extractData(res: Response) { + if(!res.text()) return {}; + return res.json() || { }; +} diff --git a/templates/app/client/components/util/util.module.js b/templates/app/client/components/util/util.module.js deleted file mode 100644 index b627e4486..000000000 --- a/templates/app/client/components/util/util.module.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; -import angular from 'angular'; -import {UtilService} from './util.service'; - -export default angular.module('<%= scriptAppName %>.util', []) - .factory('Util', UtilService) - .name; diff --git a/templates/app/client/components/util/util.service.js b/templates/app/client/components/util/util.service.js deleted file mode 100644 index 7101c92f8..000000000 --- a/templates/app/client/components/util/util.service.js +++ /dev/null @@ -1,65 +0,0 @@ -'use strict'; -import angular from 'angular'; - -/** - * The Util service is for thin, globally reusable, utility functions - */ -export function UtilService($window) { - 'ngInject'; - var Util = { - /** - * Return a callback or noop function - * - * @param {Function|*} cb - a 'potential' function - * @return {Function} - */ - safeCb(cb) { - return (angular.isFunction(cb)) ? cb : angular.noop; - }, - - /** - * Parse a given url with the use of an anchor element - * - * @param {String} url - the url to parse - * @return {Object} - the parsed url, anchor element - */ - urlParse(url) { - var a = document.createElement('a'); - a.href = url; - - // Special treatment for IE, see http://stackoverflow.com/a/13405933 for details - if (a.host === '') { - a.href = a.href; - } - - return a; - }, - - /** - * Test whether or not a given url is same origin - * - * @param {String} url - url to test - * @param {String|String[]} [origins] - additional origins to test against - * @return {Boolean} - true if url is same origin - */ - isSameOrigin(url, origins) { - url = Util.urlParse(url); - origins = (origins && [].concat(origins)) || []; - origins = origins.map(Util.urlParse); - origins.push($window.location); - origins = origins.filter(function(o) { - let hostnameCheck = url.hostname === o.hostname; - let protocolCheck = url.protocol === o.protocol; - // 2nd part of the special treatment for IE fix (see above): - // This part is when using well-known ports 80 or 443 with IE, - // when $window.location.port==='' instead of the real port number. - // Probably the same cause as this IE bug: https://goo.gl/J9hRta - let portCheck = url.port === o.port || (o.port === '' && (url.port === '80' || url.port === '443')); - return hostnameCheck && protocolCheck && portCheck; - }); - return origins.length >= 1; - } - }; - - return Util; -} diff --git a/templates/app/client/polyfills.js b/templates/app/client/polyfills.js index 92650a052..768b85092 100644 --- a/templates/app/client/polyfills.js +++ b/templates/app/client/polyfills.js @@ -9,7 +9,7 @@ // Prefer CoreJS over the polyfills above import 'core-js/es6'; import 'core-js/es7/reflect'; -// require('zone.js/dist/zone'); +import 'zone.js/dist/zone'; <%_ if(filters.ts) { _%> // Typescript emit helpers polyfill @@ -33,4 +33,4 @@ if(ENV === 'production') { Error.stackTraceLimit = Infinity; <% } %> // require('zone.js/dist/long-stack-trace-zone'); -} \ No newline at end of file +} diff --git a/templates/app/server/app.js b/templates/app/server/app.js index 7dbbcba9f..6f3a9dcf6 100644 --- a/templates/app/server/app.js +++ b/templates/app/server/app.js @@ -27,8 +27,7 @@ if(config.seedDB) { var app = express(); var server = http.createServer(app);<% if (filters.socketio) { %> var socketio = require('socket.io')(server, { - serveClient: config.env !== 'production', - path: '/socket.io-client' + serveClient: false }); require('./config/socketio').default(socketio);<% } %> require('./config/express').default(app); diff --git a/templates/app/server/config/environment/development.js b/templates/app/server/config/environment/development.js index fde4920c9..64c7bcd65 100644 --- a/templates/app/server/config/environment/development.js +++ b/templates/app/server/config/environment/development.js @@ -4,7 +4,6 @@ // Development specific configuration // ================================== module.exports = {<% if (filters.mongoose) { %> - // MongoDB connection options mongo: { uri: 'mongodb://localhost/<%= lodash.slugify(appname) %>-dev' @@ -24,5 +23,4 @@ module.exports = {<% if (filters.mongoose) { %> // Seed database on startup seedDB: true - }; diff --git a/templates/app/server/config/environment/shared.js b/templates/app/server/config/environment/shared.js index 64a5eab99..c1e3e1032 100644 --- a/templates/app/server/config/environment/shared.js +++ b/templates/app/server/config/environment/shared.js @@ -1,6 +1,8 @@ 'use strict'; exports = module.exports = { + env: process.env.NODE_ENV, + port: process.env.PORT || <%= devPort %>, // List of user roles userRoles: ['guest', 'user', 'admin'] }; diff --git a/templates/app/server/config/express.js b/templates/app/server/config/express.js index 172d4f06d..94d1709b1 100644 --- a/templates/app/server/config/express.js +++ b/templates/app/server/config/express.js @@ -11,6 +11,7 @@ import shrinkRay from 'shrink-ray'; import bodyParser from 'body-parser'; import methodOverride from 'method-override'; import cookieParser from 'cookie-parser'; +import cors from 'cors'; import errorHandler from 'errorhandler'; import path from 'path'; <%_ if(!filters.noModels) { -%> @@ -72,11 +73,9 @@ export default function(app) { * Lusca - express server security * https://github.com/krakenjs/lusca */ - if(env !== 'test' && !process.env.SAUCE_USERNAME) { + if(env !== 'test' && env !== 'development' && !process.env.SAUCE_USERNAME) { app.use(lusca({ - csrf: { - angular: true - }, + csrf: true, xframe: 'SAMEORIGIN', hsts: { maxAge: 31536000, //1 year, in seconds @@ -94,7 +93,17 @@ export default function(app) { const makeWebpackConfig = require('../../webpack.make'); const webpackConfig = makeWebpackConfig({ DEV: true }); const compiler = webpack(webpackConfig); - const browserSync = require('browser-sync').create(); + const browserSync = require('browser-sync').create(); + + app.use(cors({ + origin: true, + credentials: true, + })); + + app.use(function(req, res, next) { + res.setHeader('Access-Control-Allow-Origin', `http://localhost:${config.browserSyncPort}`); + next(); + }); /** * Run Browsersync and use middleware for Hot Module Replacement @@ -122,16 +131,16 @@ export default function(app) { * Reload all devices when bundle is complete * or send a fullscreen error message to the browser instead */ - compiler.plugin('done', function (stats) { + compiler.plugin('done', function(stats) { console.log('webpack done hook'); - if(stats.hasErrors() || stats.hasWarnings()) { - return browserSync.sockets.emit('fullscreen:message', { - title: "Webpack Error:", - body: stripAnsi(stats.toString()), - timeout: 100000 - }); - } - browserSync.reload(); + if(stats.hasErrors() || stats.hasWarnings()) { + return browserSync.sockets.emit('fullscreen:message', { + title: "Webpack Error:", + body: stripAnsi(stats.toString()), + timeout: 100000 + }); + } + browserSync.reload(); }); } diff --git a/templates/app/webpack.make.js b/templates/app/webpack.make.js index 6c04a7449..14ac2caed 100644 --- a/templates/app/webpack.make.js +++ b/templates/app/webpack.make.js @@ -41,20 +41,6 @@ module.exports = function makeWebpackConfig(options) { app: './client/app/app.<%= scriptExt %>', polyfills: './client/polyfills.<%= scriptExt %>', vendor: [ - 'angular', - 'angular-animate', - 'angular-aria', - 'angular-cookies', - 'angular-resource', - <%_ if(filters.ngroute) { _%> - 'angular-route',<% } %> - 'angular-sanitize', - <%_ if(filters.socketio) { _%> - 'angular-socket-io',<% } %> - <%_ if(filters.uibootstrap) { -%> - 'angular-ui-bootstrap',<% } %> - <%_ if(filters.uirouter) { _%> - 'angular-ui-router',<% } %> 'lodash' ] }; @@ -220,10 +206,10 @@ module.exports = function makeWebpackConfig(options) { // SASS LOADER // Reference: https://github.com/jtangelder/sass-loader test: /\.(scss|sass)$/, - loaders: ['style', 'css', 'sass'], + loaders: ['raw', 'sass'], include: [ path.resolve(__dirname, 'node_modules/bootstrap-sass/assets/stylesheets/*.scss'), - path.resolve(__dirname, 'client/app/app.scss') + path.resolve(__dirname, 'client') ]<% } %> <%_ if(filters.less) { _%> // LESS LOADER @@ -246,11 +232,6 @@ module.exports = function makeWebpackConfig(options) { }<% } %>] }; - config.module.postLoaders = [{ - test: /\.<%= scriptExt %>$/, - loader: 'ng-annotate?single_quotes' - }]; - <%_ if(filters.babel) { _%> // ISPARTA INSTRUMENTER LOADER // Reference: https://github.com/ColCh/isparta-instrumenter-loader @@ -372,7 +353,9 @@ module.exports = function makeWebpackConfig(options) { 'process.env': { NODE_ENV: '"development"' } - }) + }), + + new webpack.HotModuleReplacementPlugin() ); } From 579e773b3324fb22b12c749b0632e294e2269be3 Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Thu, 8 Dec 2016 14:24:04 -0500 Subject: [PATCH 594/976] 5.0.0-alpha.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 824132c32..da3ea884e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "generator-angular-fullstack", - "version": "4.1.0", + "version": "5.0.0-alpha.0", "description": "Yeoman generator for creating MEAN stack applications, using MongoDB, Express, AngularJS, and Node", "keywords": [ "yeoman-generator", From 4466013a192f05d6f8dc67b6b666341d4137474a Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Thu, 8 Dec 2016 14:50:42 -0500 Subject: [PATCH 595/976] 4.1.1 --- CHANGELOG.md | 15 +++++++++++++++ angular-fullstack-deps | 2 +- package.json | 2 +- 3 files changed, 17 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2148fe38b..85dfe133c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,18 @@ + +## [4.1.1](https://github.com/angular-fullstack/generator-angular-fullstack/compare/4.1.0...v4.1.1) (2016-12-08) + + +## Notable Changes + +* Upgraded to Angular 1.6 + + +### Bug Fixes + +* **gen:factory:** fix factory subgen location ([b09cfe5](https://github.com/angular-fullstack/generator-angular-fullstack/commit/b09cfe5)), closes [#2381](https://github.com/angular-fullstack/generator-angular-fullstack/issues/2381) + + + # [4.1.0](https://github.com/angular-fullstack/generator-angular-fullstack/compare/4.0.5...v4.1.0) (2016-09-30) diff --git a/angular-fullstack-deps b/angular-fullstack-deps index 55f9cb543..8c8cf4c56 160000 --- a/angular-fullstack-deps +++ b/angular-fullstack-deps @@ -1 +1 @@ -Subproject commit 55f9cb54340c1b53183a2e848452603f3d7e1337 +Subproject commit 8c8cf4c5611c6ef01b224dbb0c5f1acbd510a4de diff --git a/package.json b/package.json index 1de5e58e6..f293198ef 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "generator-angular-fullstack", - "version": "4.1.0", + "version": "4.1.1", "description": "Yeoman generator for creating MEAN stack applications, using MongoDB, Express, AngularJS, and Node", "keywords": [ "yeoman-generator", From 66ea123165f6cc3dd2a516de17e6111e2971348a Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Thu, 8 Dec 2016 15:34:44 -0500 Subject: [PATCH 596/976] chore(package): update angular versions --- templates/app/_package.json | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/templates/app/_package.json b/templates/app/_package.json index db363ade0..7d119f9c0 100644 --- a/templates/app/_package.json +++ b/templates/app/_package.json @@ -53,17 +53,16 @@ "reflect-metadata": "^0.1.3", "rxjs": "5.0.0-beta.12", "zone.js": "^0.6.25", - "@angular/common": "^2.0.1", - "@angular/compiler": "^2.0.1", - "@angular/core": "^2.0.1", - "@angular/forms": "^2.0.1", - "@angular/http": "^2.0.1", + "@angular/common": "^2.3.0", + "@angular/compiler": "^2.3.0", + "@angular/core": "^2.3.0", + "@angular/forms": "^2.3.0", + "@angular/http": "^2.3.0", <%#"@angular/material": "^2.0.0-alpha.10",%> - "@angular/platform-browser": "^2.0.1", - "@angular/platform-browser-dynamic": "^2.0.1", + "@angular/platform-browser": "^2.3.0", + "@angular/platform-browser-dynamic": "^2.3.0", <% if(filters.ngroute) { %> - "@angular/router": "^2.0.1",<% } %> - "@angular/upgrade": "^2.0.1", + "@angular/router": "^3.3.0",<% } %> "@angularclass/hmr": "^1.2.1", "angular2-universal": "2.1.0-rc.1", "angular2-jwt": "^0.1.24", From 8cd5f7b074f32bf556ee160dd981be65f63ca0aa Mon Sep 17 00:00:00 2001 From: greenkeeperio-bot Date: Thu, 8 Dec 2016 18:50:38 -0500 Subject: [PATCH 597/976] chore(package): update babel-core to version 6.20.0 https://greenkeeper.io/ --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index e9010315e..abc1488a9 100644 --- a/package.json +++ b/package.json @@ -35,7 +35,7 @@ "prepublish": "gulp build" }, "dependencies": { - "babel-core": "^6.18.2", + "babel-core": "^6.20.0", "babel-eslint": "^7.1.0", "babel-register": "^6.18.0", "babel-plugin-syntax-class-properties": "^6.13.0", From a14b423a2482f3167745ae95411bb6b15459019b Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Fri, 9 Dec 2016 14:55:48 -0500 Subject: [PATCH 598/976] docs(gettingStarted:installation): add section about git [skip ci] --- docs/01_Getting_Started/02_Installation.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/docs/01_Getting_Started/02_Installation.md b/docs/01_Getting_Started/02_Installation.md index caf517734..8edfb3acd 100644 --- a/docs/01_Getting_Started/02_Installation.md +++ b/docs/01_Getting_Started/02_Installation.md @@ -12,3 +12,20 @@ hitting `ENTER` will use the default options for that question, and move on to t Once you've answered all the questions, a project will be scaffolded for you according to the options you entered. Then, npm dependencies will automatically be installed. Once that's all complete, you're ready to get started with your app! +## Git + +Run the following: +```bash +git init && git add . && git commit -m 'Initial Commit' +``` + +Go to https://github.com/new and enter a repository name. Click 'Create repository'. Then push to your remote repository with these commands: + +```bash +git remote add origin git@github.com:/.git +git push -u origin master +``` + +> Note: replace `` & `` with your GitHub username and repository name. + +Commit early and commit often. Branches are cheap; use them often. From f6deb25aaada4e6693455269b7a5f948170cfe39 Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Thu, 8 Dec 2016 17:12:22 -0500 Subject: [PATCH 599/976] feat(gen): consolidate templates, convert html to pug during write --- package.json | 4 +- src/generators/app/index.js | 20 +++ .../app/account(auth)/login/login(pug).pug | 45 ------ .../login/{login(html).html => login.html} | 0 .../account(auth)/settings/settings(pug).pug | 35 ----- .../{settings(html).html => settings.html} | 0 .../app/account(auth)/signup/signup(pug).pug | 63 --------- .../signup/{signup(html).html => signup.html} | 0 .../app/client/app/admin(auth)/admin(pug).pug | 10 -- .../{admin(html).html => admin.html} | 0 templates/app/client/app/main/main(pug).pug | 22 --- .../app/main/{main(html).html => main.html} | 0 .../client/components/footer/footer(pug).pug | 11 -- .../footer/{footer(html).html => footer.html} | 0 .../client/components/navbar/navbar(pug).pug | 34 ----- .../navbar/{navbar(html).html => navbar.html} | 0 .../oauth-buttons(pug).pug | 14 -- ...-buttons(html).html => oauth-buttons.html} | 0 templates/app/server/views/404(pug).pug | 133 ------------------ .../server/views/{404(html).html => 404.html} | 0 20 files changed, 23 insertions(+), 368 deletions(-) delete mode 100644 templates/app/client/app/account(auth)/login/login(pug).pug rename templates/app/client/app/account(auth)/login/{login(html).html => login.html} (100%) delete mode 100644 templates/app/client/app/account(auth)/settings/settings(pug).pug rename templates/app/client/app/account(auth)/settings/{settings(html).html => settings.html} (100%) delete mode 100644 templates/app/client/app/account(auth)/signup/signup(pug).pug rename templates/app/client/app/account(auth)/signup/{signup(html).html => signup.html} (100%) delete mode 100644 templates/app/client/app/admin(auth)/admin(pug).pug rename templates/app/client/app/admin(auth)/{admin(html).html => admin.html} (100%) delete mode 100644 templates/app/client/app/main/main(pug).pug rename templates/app/client/app/main/{main(html).html => main.html} (100%) delete mode 100644 templates/app/client/components/footer/footer(pug).pug rename templates/app/client/components/footer/{footer(html).html => footer.html} (100%) delete mode 100644 templates/app/client/components/navbar/navbar(pug).pug rename templates/app/client/components/navbar/{navbar(html).html => navbar.html} (100%) delete mode 100644 templates/app/client/components/oauth-buttons(oauth)/oauth-buttons(pug).pug rename templates/app/client/components/oauth-buttons(oauth)/{oauth-buttons(html).html => oauth-buttons.html} (100%) delete mode 100644 templates/app/server/views/404(pug).pug rename templates/app/server/views/{404(html).html => 404.html} (100%) diff --git a/package.json b/package.json index da3ea884e..901d7d246 100644 --- a/package.json +++ b/package.json @@ -37,10 +37,10 @@ "dependencies": { "babel-core": "^6.18.2", "babel-eslint": "^7.1.0", - "babel-register": "^6.18.0", "babel-plugin-syntax-class-properties": "^6.13.0", "babel-plugin-syntax-flow": "^6.18.0", "babel-plugin-transform-flow-strip-types": "^6.18.0", + "babel-register": "^6.18.0", "bluebird": "^3.4.5", "chalk": "^1.1.0", "glob": "^7.0.5", @@ -48,6 +48,8 @@ "gulp-beautify": "^2.0.0", "gulp-eslint": "^3.0.1", "gulp-filter": "^4.0.0", + "gulp-html2jade": "^1.1.2", + "gulp-rename": "^1.2.2", "gulp-tap": "^0.1.3", "insight": "~0.8.3", "lodash": "^4.17.0", diff --git a/src/generators/app/index.js b/src/generators/app/index.js index a28f5336c..979e66b70 100644 --- a/src/generators/app/index.js +++ b/src/generators/app/index.js @@ -14,6 +14,8 @@ import beaufityStream from 'gulp-beautify'; import tap from 'gulp-tap'; import filter from 'gulp-filter'; import eslint from 'gulp-eslint'; +import html2jade from 'gulp-html2jade'; +import rename from 'gulp-rename'; import semver from 'semver'; export class Generator extends Base { @@ -543,6 +545,24 @@ export class Generator extends Base { ]); } + // Convert HTML into Pug + if(this.filters.pug) { + let pugFilter = filter(['**/*.html'], {restore: true}); + this.registerTransformStream([ + pugFilter, + html2jade({ + nspaces: 2, + noemptypipe: true, + bodyless: true, + }), + rename(path => { + path.extname = '.pug'; + }), + pugFilter.restore + ]); + } + + // ESLint fix server files let serverJsFilter = filter(['server/**/*.js'], {restore: true}); this.registerTransformStream([ serverJsFilter, diff --git a/templates/app/client/app/account(auth)/login/login(pug).pug b/templates/app/client/app/account(auth)/login/login(pug).pug deleted file mode 100644 index a463419d4..000000000 --- a/templates/app/client/app/account(auth)/login/login(pug).pug +++ /dev/null @@ -1,45 +0,0 @@ -.container - .row - .col-sm-12 - h1 Login - p - | Accounts are reset on server restart from - code server/config/seed.js - | . Default account is - code test@example.com - | / - code test - p - | Admin account is - code admin@example.com - | / - code admin - - .col-sm-12 - form.form(name='form', ng-submit='vm.login(form)', novalidate='') - .form-group - label Email - input.form-control(type='email', name='email', ng-model='vm.user.email') - .form-group - label Password - input.form-control(type='password', name='password', ng-model='vm.user.password') - - .form-group.has-error - p.help-block(ng-show='form.email.$error.required && form.password.$error.required && vm.submitted') - | Please enter your email and password. - p.help-block {{ vm.errors.login }} - - div - button.btn.btn-inverse.btn-lg.btn-login(type='submit') - | Login - = ' ' - a.btn.btn-default.btn-lg.btn-register(<% if (filters.uirouter) { %>ui-sref='signup'<% } else { %>href='http://github.com/signup'<% } %>) - | Register -<% if (filters.oauth) {%> - hr - - .row - .col-sm-4.col-md-3 - oauth-buttons(classes='btn-block') -<% } %> - hr diff --git a/templates/app/client/app/account(auth)/login/login(html).html b/templates/app/client/app/account(auth)/login/login.html similarity index 100% rename from templates/app/client/app/account(auth)/login/login(html).html rename to templates/app/client/app/account(auth)/login/login.html diff --git a/templates/app/client/app/account(auth)/settings/settings(pug).pug b/templates/app/client/app/account(auth)/settings/settings(pug).pug deleted file mode 100644 index fc4bee87f..000000000 --- a/templates/app/client/app/account(auth)/settings/settings(pug).pug +++ /dev/null @@ -1,35 +0,0 @@ -.container - .row - .col-sm-12 - h1 Change Password - .col-sm-12 - form.form(name='form', ng-submit='vm.changePassword(form)', novalidate='') - .form-group - label Current Password - input.form-control(type='password' - name='password' - ng-model='vm.user.oldPassword' - mongoose-error='') - p.help-block(ng-show='form.password.$error.mongoose') - | {{ vm.errors.other }} - .form-group - label New Password - input.form-control(type='password' - name='newPassword' - ng-model='vm.user.newPassword' - ng-minlength='3', required='') - p.help-block(ng-show='(form.newPassword.$error.minlength || form.newPassword.$error.required) && (form.newPassword.$dirty || vm.submitted)') - | Password must be at least 3 characters. - .form-group - label Confirm New Password - input.form-control(type='password' - name='confirmPassword' - ng-model='vm.user.confirmPassword' - match="vm.user.newPassword" - ng-minlength='3', required='') - p.help-block(ng-show='fvm.orm.confirmPassword.$error.match && vm.submitted') - | Passwords must match. - - p.help-block {{ vm.message }} - - button.btn.btn-lg.btn-primary(type='submit') Save changes diff --git a/templates/app/client/app/account(auth)/settings/settings(html).html b/templates/app/client/app/account(auth)/settings/settings.html similarity index 100% rename from templates/app/client/app/account(auth)/settings/settings(html).html rename to templates/app/client/app/account(auth)/settings/settings.html diff --git a/templates/app/client/app/account(auth)/signup/signup(pug).pug b/templates/app/client/app/account(auth)/signup/signup(pug).pug deleted file mode 100644 index 51480eefb..000000000 --- a/templates/app/client/app/account(auth)/signup/signup(pug).pug +++ /dev/null @@ -1,63 +0,0 @@ -.container - .row - .col-sm-12 - h1 Sign up - .col-sm-12 - form.form(name='form', ng-submit='vm.register(form)', novalidate='') - .form-group(ng-class='{ "has-success": form.name.$valid && vm.submitted,\ - "has-error": form.name.$invalid && vm.submitted }') - label Name - input.form-control(type='text', name='name', ng-model='vm.user.name', required='') - p.help-block(ng-show='form.name.$error.required && vm.submitted') - | A name is required - - .form-group(ng-class='{ "has-success": form.email.$valid && vm.submitted,\ - "has-error": form.email.$invalid && vm.submitted }') - label Email - input.form-control(type='email', name='email', ng-model='vm.user.email', required='', mongoose-error='') - p.help-block(ng-show='form.email.$error.email && vm.submitted') - | Doesn't look like a valid email. - p.help-block(ng-show='form.email.$error.required && vm.submitted') - | What's your email address? - p.help-block(ng-show='form.email.$error.mongoose') - | {{ vm.errors.email }} - - .form-group(ng-class='{ "has-success": form.password.$valid && vm.submitted,\ - "has-error": form.password.$invalid && vm.submitted }') - label Password - input.form-control(type='password' - name='password' - ng-model='vm.user.password' - mongoose-error='' - ng-minlength='3', required='') - - p.help-block(ng-show='(form.password.$error.minlength || form.password.$error.required) && vm.submitted') - | Password must be at least 3 characters. - p.help-block(ng-show='form.password.$error.mongoose') - | {{ vm.errors.password }} - - .form-group(ng-class='{ "has-success": form.confirmPassword.$valid && vm.submitted,\ - "has-error": form.confirmPassword.$invalid && vm.submitted }') - label Confirm Password - input.form-control(type='password' - name='confirmPassword' - ng-model='vm.user.confirmPassword' - match="vm.user.password" - ng-minlength='3', required='') - p.help-block(ng-show='form.confirmPassword.$error.match && vm.submitted') - | Passwords must match. - - div - button.btn.btn-inverse.btn-lg.btn-register(type='submit') - | Sign up - = ' ' - a.btn.btn-default.btn-lg.btn-login(<% if (filters.uirouter) { %>ui-sref='login'<% } else { %>href='http://github.com/login'<% } %>) - | Login -<% if (filters.oauth) {%> - hr - - .row - .col-sm-4.col-md-3 - oauth-buttons(classes='btn-block') -<% } %> - hr diff --git a/templates/app/client/app/account(auth)/signup/signup(html).html b/templates/app/client/app/account(auth)/signup/signup.html similarity index 100% rename from templates/app/client/app/account(auth)/signup/signup(html).html rename to templates/app/client/app/account(auth)/signup/signup.html diff --git a/templates/app/client/app/admin(auth)/admin(pug).pug b/templates/app/client/app/admin(auth)/admin(pug).pug deleted file mode 100644 index 7da628335..000000000 --- a/templates/app/client/app/admin(auth)/admin(pug).pug +++ /dev/null @@ -1,10 +0,0 @@ -.container - p - | The delete user and user index api routes are restricted to users with the 'admin' role. - ul.list-group - li.list-group-item(ng-repeat='user in admin.users') - strong {{user.name}} - br - span.text-muted {{user.email}} - a.trash(ng-click='admin.delete(user)') - span.glyphicon.glyphicon-trash.pull-right diff --git a/templates/app/client/app/admin(auth)/admin(html).html b/templates/app/client/app/admin(auth)/admin.html similarity index 100% rename from templates/app/client/app/admin(auth)/admin(html).html rename to templates/app/client/app/admin(auth)/admin.html diff --git a/templates/app/client/app/main/main(pug).pug b/templates/app/client/app/main/main(pug).pug deleted file mode 100644 index 9ad5d0ac9..000000000 --- a/templates/app/client/app/main/main(pug).pug +++ /dev/null @@ -1,22 +0,0 @@ -header#banner.hero-unit - .container - h1 'Allo, 'Allo! - p.lead Kick-start your next web app with Angular Fullstack - img(src='http://github.com/assets/images/yeoman.png', alt='I\'m Yeoman') - -.container - .row - .col-lg-12 - h1.page-header Features: - ul.nav.nav-tabs.nav-stacked.col-md-4.col-lg-4.col-sm-6(ng-repeat='thing in awesomeThings') - li - a(href='#', [tooltip]='{{thing.info}}') - | {{thing.name}}<% if (filters.models) { %> - button.close(type='button', (click)='deleteThing(thing)') ×<% } %><% if (filters.socketio) { %> - - form.thing-form - label Syncs in realtime across clients - p.input-group - input.form-control(type='text', placeholder='Add a new thing here.', ng-model='newThing') - span.input-group-btn - button.btn.btn-primary(type='submit', (click)='addThing()') Add New<% } %> diff --git a/templates/app/client/app/main/main(html).html b/templates/app/client/app/main/main.html similarity index 100% rename from templates/app/client/app/main/main(html).html rename to templates/app/client/app/main/main.html diff --git a/templates/app/client/components/footer/footer(pug).pug b/templates/app/client/components/footer/footer(pug).pug deleted file mode 100644 index a4069ea9a..000000000 --- a/templates/app/client/components/footer/footer(pug).pug +++ /dev/null @@ -1,11 +0,0 @@ -.container - p - | Angular Fullstack v<%= rootGeneratorVersion() %> - = ' | ' - a(href='http://angular-fullstack.github.io/generator-angular-fullstack') Documentation - = ' | ' - a(href='https://gitter.im/DaftMonk/generator-angular-fullstack') Chat on Gitter - = ' | ' - a(href='https://github.com/angular-fullstack/generator-angular-fullstack/issues?state=open') Issues - = ' | ' - a(href='https://opencollective.com/angular-fullstack') Donate to our Open Collective diff --git a/templates/app/client/components/footer/footer(html).html b/templates/app/client/components/footer/footer.html similarity index 100% rename from templates/app/client/components/footer/footer(html).html rename to templates/app/client/components/footer/footer.html diff --git a/templates/app/client/components/navbar/navbar(pug).pug b/templates/app/client/components/navbar/navbar(pug).pug deleted file mode 100644 index cd32fb74f..000000000 --- a/templates/app/client/components/navbar/navbar(pug).pug +++ /dev/null @@ -1,34 +0,0 @@ -div.navbar.navbar-default.navbar-static-top - div.container - div.navbar-header - button.navbar-toggle(type='button', ng-click='$ctrl.isCollapsed = !$ctrl.isCollapsed') - span.sr-only Toggle navigation - span.icon-bar - span.icon-bar - span.icon-bar - a.navbar-brand(href='http://github.com/') <%= lodash.slugify(lodash.humanize(appname)) %> - - div#navbar-main.navbar-collapse.collapse(uib-collapse='$ctrl.isCollapsed') - ul.nav.navbar-nav - li(ng-repeat='item in $ctrl.menu', <% if (filters.uirouter) { %>ui-sref-active='active'<% } else { %>ng-class='{active: $ctrl.isActive(item.link)}'<% } %>) - a(<% if (filters.uirouter) { %>ui-sref='{{item.state}}'<% } else { %>ng-href='http://github.com/%7B%7Bitem.link%7D%7D'<% } %>) {{item.title}}<% if (filters.auth) { %> - - li(ng-show='$ctrl.isAdmin()', <% if (filters.uirouter) { %>ui-sref-active='active'<% } else { %>ng-class='{active: $ctrl.isActive("/admin")}'<% } %>) - a(<% if (filters.uirouter) { %>ui-sref='admin'<% } else { %>href='http://github.com/admin'<% } %>) Admin - - ul.nav.navbar-nav.navbar-right - li(ng-hide='$ctrl.isLoggedIn()', <% if (filters.uirouter) { %>ui-sref-active='active'<% } else { %>ng-class='{active: $ctrl.isActive("/signup")}'<% } %>) - a(<% if (filters.uirouter) { %>ui-sref='signup'<% } else { %>href='http://github.com/signup'<% } %>) Sign up - - li(ng-hide='$ctrl.isLoggedIn()', <% if (filters.uirouter) { %>ui-sref-active='active'<% } else { %>ng-class='{active: $ctrl.isActive("/login")}'<% } %>) - a(<% if (filters.uirouter) { %>ui-sref='login'<% } else { %>href='http://github.com/login'<% } %>) Login - - li(ng-show='$ctrl.isLoggedIn()') - p.navbar-text Hello {{ $ctrl.getCurrentUser().name }} - - li(ng-show='$ctrl.isLoggedIn()', <% if (filters.uirouter) { %>ui-sref-active='active'<% } else { %>ng-class='{active: $ctrl.isActive("/settings")}'<% } %>) - a(<% if (filters.uirouter) { %>ui-sref='settings'<% } else { %>href='http://github.com/settings'<% } %>) - span.glyphicon.glyphicon-cog - - li(ng-show='$ctrl.isLoggedIn()') - a(<% if (filters.uirouter) { %>ui-sref='logout'<% } else { %>href='http://github.com/logout'<% } %>) Logout<% } %> diff --git a/templates/app/client/components/navbar/navbar(html).html b/templates/app/client/components/navbar/navbar.html similarity index 100% rename from templates/app/client/components/navbar/navbar(html).html rename to templates/app/client/components/navbar/navbar.html diff --git a/templates/app/client/components/oauth-buttons(oauth)/oauth-buttons(pug).pug b/templates/app/client/components/oauth-buttons(oauth)/oauth-buttons(pug).pug deleted file mode 100644 index fd5030bd7..000000000 --- a/templates/app/client/components/oauth-buttons(oauth)/oauth-buttons(pug).pug +++ /dev/null @@ -1,14 +0,0 @@ -<% if(filters.facebookAuth) { %>a.btn<% if (filters.bootstrap) { %>.btn-social<% } %>.btn-facebook(ng-class='classes' - ng-click='OauthButtons.loginOauth("facebook")') - i.fa.fa-facebook - | Connect with Facebook - -<% } if(filters.googleAuth) { %>a.btn<% if (filters.bootstrap) { %>.btn-social<% } %>.btn-google(ng-class='classes' - ng-click='OauthButtons.loginOauth("google")') - i.fa.fa-google-plus - | Connect with Google+ - -<% } if(filters.twitterAuth) { %>a.btn<% if (filters.bootstrap) { %>.btn-social<% } %>.btn-twitter(ng-class='classes' - ng-click='OauthButtons.loginOauth("twitter")') - i.fa.fa-twitter - | Connect with Twitter<% } %> diff --git a/templates/app/client/components/oauth-buttons(oauth)/oauth-buttons(html).html b/templates/app/client/components/oauth-buttons(oauth)/oauth-buttons.html similarity index 100% rename from templates/app/client/components/oauth-buttons(oauth)/oauth-buttons(html).html rename to templates/app/client/components/oauth-buttons(oauth)/oauth-buttons.html diff --git a/templates/app/server/views/404(pug).pug b/templates/app/server/views/404(pug).pug deleted file mode 100644 index b5735b4f6..000000000 --- a/templates/app/server/views/404(pug).pug +++ /dev/null @@ -1,133 +0,0 @@ -doctype html -html(lang='en') -head - meta(charset='utf-8') - title Page Not Found :( - style. - ::-moz-selection { - background: #b3d4fc; - text-shadow: none; - } - ::selection { - background: #b3d4fc; - text-shadow: none; - } - html { - padding: 30px 10px; - font-size: 20px; - line-height: 1.4; - color: #737373; - background: #f0f0f0; - -webkit-text-size-adjust: 100%; - -ms-text-size-adjust: 100%; - } - html, - input { - font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; - } - body { - max-width: 500px; - _width: 500px; - padding: 30px 20px 50px; - border: 1px solid #b3b3b3; - border-radius: 4px; - margin: 0 auto; - box-shadow: 0 1px 10px #a7a7a7, inset 0 1px 0 #fff; - background: #fcfcfc; - } - h1 { - margin: 0 10px; - font-size: 50px; - text-align: center; - } - h1 span { - color: #bbb; - } - h3 { - margin: 1.5em 0 0.5em; - } - p { - margin: 1em 0; - } - ul { - padding: 0 0 0 40px; - margin: 1em 0; - } - .container { - max-width: 380px; - _width: 380px; - margin: 0 auto; - } - /* google search */ - #goog-fixurl ul { - list-style: none; - padding: 0; - margin: 0; - } - #goog-fixurl form { - margin: 0; - } - #goog-wm-qt, - #goog-wm-sb { - border: 1px solid #bbb; - font-size: 16px; - line-height: normal; - vertical-align: top; - color: #444; - border-radius: 2px; - } - #goog-wm-qt { - width: 220px; - height: 20px; - padding: 5px; - margin: 5px 10px 0 0; - box-shadow: inset 0 1px 1px #ccc; - } - #goog-wm-sb { - display: inline-block; - height: 32px; - padding: 0 10px; - margin: 5px 0 0; - white-space: nowrap; - cursor: pointer; - background-color: #f5f5f5; - background-image: -webkit-linear-gradient(rgba(255,255,255,0), #f1f1f1); - background-image: -moz-linear-gradient(rgba(255,255,255,0), #f1f1f1); - background-image: -ms-linear-gradient(rgba(255,255,255,0), #f1f1f1); - background-image: -o-linear-gradient(rgba(255,255,255,0), #f1f1f1); - -webkit-appearance: none; - -moz-appearance: none; - appearance: none; - *overflow: visible; - *display: inline; - *zoom: 1; - } - #goog-wm-sb:hover, - #goog-wm-sb:focus { - border-color: #aaa; - box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); - background-color: #f8f8f8; - } - #goog-wm-qt:hover, - #goog-wm-qt:focus { - border-color: #105cb6; - outline: 0; - color: #222; - } - input::-moz-focus-inner { - padding: 0; - border: 0; - } - body - .container - h1 - | Not found - span :( - p Sorry, but the page you were trying to view does not exist. - p It looks like this was the result of either: - ul - li a mistyped address - li an out-of-date link - script. - var GOOG_FIXURL_LANG = (navigator.language || '').slice(0,2),GOOG_FIXURL_SITE = location.host; - script(src='http://linkhelp.clients.google.com/tbproxy/lh/wm/fixurl.js') diff --git a/templates/app/server/views/404(html).html b/templates/app/server/views/404.html similarity index 100% rename from templates/app/server/views/404(html).html rename to templates/app/server/views/404.html From 67f3c2bf65f7f60a06d46ccebf8e16dde151e159 Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Fri, 9 Dec 2016 16:40:41 -0500 Subject: [PATCH 600/976] ci(circle): change build order to cache deps --- circle.yml | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/circle.yml b/circle.yml index d244dfe1e..b6d85f753 100644 --- a/circle.yml +++ b/circle.yml @@ -22,9 +22,15 @@ dependencies: # builds. If you need to, you can add custom paths to cache: cache_directories: - "test/fixtures/node_modules" -# post: -# - wget https://saucelabs.com/downloads/sc-latest-linux.tar.gz -# - tar -xzf sc-latest-linux.tar.gz + override: + - gulp updateFixtures:test + - gulp installFixtures + post: + - gulp build + +test: + override: + - gulp test ## Custom notifications #notify: From 913c5b5aee2cd2335c7d8679d5c4c76d08329f61 Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Sat, 10 Dec 2016 16:18:40 -0500 Subject: [PATCH 601/976] docs(readme): add angular 2 note [skip ci] --- readme.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/readme.md b/readme.md index a399166da..96e927725 100644 --- a/readme.md +++ b/readme.md @@ -25,6 +25,8 @@ npm install -g yo gulp-cli generator-angular-fullstack ``` __Please note__: If you run into trouble compiling native add-ons during the installation, follow [`node-gyp`](https://github.com/nodejs/node-gyp)'s short guide on [required compilation tools](https://github.com/nodejs/node-gyp#installation). +> If you're looking for Angular 2, you can try the latest alpha (`npm install -g generator-angular-fullstack@alpha`), or if you'd like a more complete solution, you can give [angular2-webpack-starter](https://github.com/AngularClass/angular2-webpack-starter) a shot. + --- Run `yo angular-fullstack` From ab1bf13efa2443df9f1b9a072d31aff564d29f7f Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Wed, 14 Dec 2016 12:01:53 -0500 Subject: [PATCH 602/976] fix(gen): comment out ngCompnent stuff fixes #2403 --- src/generators/app/index.js | 122 ++++++++++++++++++------------------ 1 file changed, 61 insertions(+), 61 deletions(-) diff --git a/src/generators/app/index.js b/src/generators/app/index.js index a28f5336c..8c3b55b2f 100644 --- a/src/generators/app/index.js +++ b/src/generators/app/index.js @@ -390,67 +390,67 @@ export class Generator extends Base { this.config.set('filters', this.filters); this.config.forceSave(); }, - ngComponent: function() { - if(this.skipConfig) return; - var appPath = 'client/app/'; - var extensions = []; - var filters = [ - 'ngroute', - 'uirouter', - 'jasmine', - 'mocha', - 'expect', - 'should' - ].filter(v => this.filters[v]); - - if(this.filters.ngroute) filters.push('ngroute'); - if(this.filters.uirouter) filters.push('uirouter'); - if(this.filters.babel) extensions.push('babel'); - if(this.filters.ts) extensions.push('ts'); - if(this.filters.js) extensions.push('js'); - if(this.filters.html) extensions.push('html'); - if(this.filters.pug) extensions.push('pug'); - if(this.filters.css) extensions.push('css'); - if(this.filters.stylus) extensions.push('styl'); - if(this.filters.sass) extensions.push('scss'); - if(this.filters.less) extensions.push('less'); - - filters.push('es6'); // Generate ES6 syntax code - filters.push('webpack'); // Generate ES6 Module imports/exports - - this.composeWith('ng-component', { - options: { - 'routeDirectory': appPath, - 'directiveDirectory': appPath, - 'filterDirectory': appPath, - 'serviceDirectory': appPath, - 'componentDirectory': `${appPath}components/`, - 'filters': filters, - 'extensions': extensions, - 'basePath': 'client', - 'forceConfig': this.forceConfig - } - }, { local: require.resolve('generator-ng-component/generators/app/index.js') }); - }, - ngModules: function() { - var angModules = [ - `'${this.scriptAppName}.constants'`, - "'ngCookies'", - "'ngResource'", - "'ngSanitize'" - ]; - if(this.filters.ngroute) angModules.push("'ngRoute'"); - if(this.filters.socketio) angModules.push("'btford.socket-io'"); - if(this.filters.uirouter) angModules.push("'ui.router'"); - if(this.filters.uibootstrap) angModules.push("'ui.bootstrap'"); - if(this.filters.auth) { - angModules.unshift(`'${this.scriptAppName}.admin'`); - angModules.unshift(`'${this.scriptAppName}.auth'`); - angModules.push("'validation.match'"); - } - - this.angularModules = '\n ' + angModules.join(',\n ') +'\n'; - } + // ngComponent: function() { + // if(this.skipConfig) return; + // var appPath = 'client/app/'; + // var extensions = []; + // var filters = [ + // 'ngroute', + // 'uirouter', + // 'jasmine', + // 'mocha', + // 'expect', + // 'should' + // ].filter(v => this.filters[v]); + + // if(this.filters.ngroute) filters.push('ngroute'); + // if(this.filters.uirouter) filters.push('uirouter'); + // if(this.filters.babel) extensions.push('babel'); + // if(this.filters.ts) extensions.push('ts'); + // if(this.filters.js) extensions.push('js'); + // if(this.filters.html) extensions.push('html'); + // if(this.filters.pug) extensions.push('pug'); + // if(this.filters.css) extensions.push('css'); + // if(this.filters.stylus) extensions.push('styl'); + // if(this.filters.sass) extensions.push('scss'); + // if(this.filters.less) extensions.push('less'); + + // filters.push('es6'); // Generate ES6 syntax code + // filters.push('webpack'); // Generate ES6 Module imports/exports + + // this.composeWith('ng-component', { + // options: { + // 'routeDirectory': appPath, + // 'directiveDirectory': appPath, + // 'filterDirectory': appPath, + // 'serviceDirectory': appPath, + // 'componentDirectory': `${appPath}components/`, + // 'filters': filters, + // 'extensions': extensions, + // 'basePath': 'client', + // 'forceConfig': this.forceConfig + // } + // }, { local: require.resolve('generator-ng-component/generators/app/index.js') }); + // }, + // ngModules: function() { + // var angModules = [ + // `'${this.scriptAppName}.constants'`, + // "'ngCookies'", + // "'ngResource'", + // "'ngSanitize'" + // ]; + // if(this.filters.ngroute) angModules.push("'ngRoute'"); + // if(this.filters.socketio) angModules.push("'btford.socket-io'"); + // if(this.filters.uirouter) angModules.push("'ui.router'"); + // if(this.filters.uibootstrap) angModules.push("'ui.bootstrap'"); + // if(this.filters.auth) { + // angModules.unshift(`'${this.scriptAppName}.admin'`); + // angModules.unshift(`'${this.scriptAppName}.auth'`); + // angModules.push("'validation.match'"); + // } + + // this.angularModules = '\n ' + angModules.join(',\n ') +'\n'; + // } }; } From c01697912213978277353664da2e0a41ceee7e3f Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Thu, 15 Dec 2016 14:42:55 -0500 Subject: [PATCH 603/976] fix(package): move syntax plugins to deps fixes #2405 --- package.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index da3ea884e..7234a3f26 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "generator-angular-fullstack", - "version": "5.0.0-alpha.0", + "version": "5.0.0-alpha.2", "description": "Yeoman generator for creating MEAN stack applications, using MongoDB, Express, AngularJS, and Node", "keywords": [ "yeoman-generator", @@ -40,6 +40,8 @@ "babel-register": "^6.18.0", "babel-plugin-syntax-class-properties": "^6.13.0", "babel-plugin-syntax-flow": "^6.18.0", + "babel-plugin-syntax-decorators": "^6.13.0", + "babel-plugin-syntax-export-extensions": "^6.13.0", "babel-plugin-transform-flow-strip-types": "^6.18.0", "bluebird": "^3.4.5", "chalk": "^1.1.0", @@ -57,8 +59,6 @@ "yeoman-welcome": "^1.0.1" }, "devDependencies": { - "babel-plugin-syntax-decorators": "^6.13.0", - "babel-plugin-syntax-export-extensions": "^6.13.0", "babel-plugin-transform-class-properties": "^6.19.0", "babel-preset-es2015": "^6.18.0", "chai": "^3.5.0", From d2cc15a6e27874c24328b30ae9256de74adfcbe3 Mon Sep 17 00:00:00 2001 From: stherrienaspnet Date: Thu, 15 Dec 2016 22:45:07 -0500 Subject: [PATCH 604/976] fix(sql): Fix form field not displaying sequalize error Display form field error when using sequelize as database fixes #2400 --- .../app/client/app/account(auth)/signup/signup.controller.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/app/client/app/account(auth)/signup/signup.controller.js b/templates/app/client/app/account(auth)/signup/signup.controller.js index 85e71d28f..da67bedf7 100644 --- a/templates/app/client/app/account(auth)/signup/signup.controller.js +++ b/templates/app/client/app/account(auth)/signup/signup.controller.js @@ -66,7 +66,7 @@ export default class SignupController { <%_ if(filters.sequelizeModels) { -%> // Update validity of form fields that match the sequelize errors if(err.name) { - angular.forEach(err.fields, field => { + angular.forEach(err.fields, (error, field) => { form[field].$setValidity('mongoose', false); this.errors[field] = err.message; }); From bf8f9fcd13744f44aa93de35dc6136e1ae7a8a58 Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Fri, 23 Dec 2016 16:49:29 -0500 Subject: [PATCH 605/976] feat(gen): generate js with jscodeshift instead of babel this is a proper codemod tool, instead of a general transpiler like babel --- package.json | 1 + src/generators/app/index.js | 74 +++++++++---------- .../app/account(auth)/account.module.js | 4 +- .../account(auth)/login/login.component.js | 4 +- .../settings/settings.component.js | 4 +- .../account(auth)/signup/signup.component.js | 4 +- templates/app/client/app/app.component.js | 4 +- templates/app/client/app/app.module.js | 4 +- .../app/client/app/main/main.component.js | 4 +- templates/app/client/app/main/main.module.js | 4 +- .../components/auth(auth)/auth.module.js | 4 +- .../components/auth(auth)/auth.service.js | 4 +- .../components/auth(auth)/user.service.js | 4 +- .../client/components/directives.module.js | 4 +- .../components/footer/footer.component.js | 4 +- .../components/navbar/navbar.component.js | 4 +- .../oauth-buttons.component.js | 4 +- .../socket(socketio)/socket.service.js | 4 +- 18 files changed, 68 insertions(+), 71 deletions(-) diff --git a/package.json b/package.json index 7234a3f26..166d3f5cb 100644 --- a/package.json +++ b/package.json @@ -52,6 +52,7 @@ "gulp-filter": "^4.0.0", "gulp-tap": "^0.1.3", "insight": "~0.8.3", + "jscodeshift": "^0.3.30", "lodash": "^4.17.0", "semver": "^5.1.0", "underscore.string": "^3.1.1", diff --git a/src/generators/app/index.js b/src/generators/app/index.js index 8c3b55b2f..bebdace10 100644 --- a/src/generators/app/index.js +++ b/src/generators/app/index.js @@ -15,6 +15,7 @@ import tap from 'gulp-tap'; import filter from 'gulp-filter'; import eslint from 'gulp-eslint'; import semver from 'semver'; +import jscodeshift from 'jscodeshift'; export class Generator extends Base { constructor(...args) { @@ -461,52 +462,47 @@ export class Generator extends Base { get writing() { return { generateProject: function() { - /** - * var tap = require('gulp-tap'); - this.registerTransformStream([ - extensionFilter, - tap(function(file, t) { - var contents = file.contents.toString(); - contents = beautify_js(contents, config); - file.contents = new Buffer(contents); - }), - //prettifyJs(config), - extensionFilter.restore - ]); - */ - const flow = this.filters.flow; - let babelPlugins = [ - 'babel-plugin-syntax-flow', - 'babel-plugin-syntax-class-properties', - 'babel-plugin-syntax-decorators', - 'babel-plugin-syntax-export-extensions', - ]; - - if(this.filters.babel && !flow) { - babelPlugins.push('babel-plugin-transform-flow-strip-types'); - } - const genDir = path.join(__dirname, '../../'); + // TODO: remove babel stuff from dependencies + const codeshiftStream = tap(function(file, t) { + var contents = file.contents.toString(); + + // remove `implements Foo` from class declarations + contents = jscodeshift(contents) + .find(jscodeshift.ClassDeclaration) + .forEach(path => { + path.value.implements = null; + }) + .toSource(); + + // remove any type annotations + contents = jscodeshift(contents) + .find(jscodeshift.TypeAnnotation) + .remove() + .toSource(); + + // remove any `type Foo = { .. }` declarations + contents = jscodeshift(contents) + .find(jscodeshift.TypeAlias) + .remove() + .toSource(); + + // remove any flow directive comments + contents = jscodeshift(contents) + .find(jscodeshift.Comment, path => path.type === 'CommentLine' && path.value.includes('@flow')) + .forEach(path => path.prune()) + .toSource(); + + file.contents = new Buffer(contents); + }); + let clientJsFilter = filter(['client/**/*.js'], {restore: true}); this.registerTransformStream([ clientJsFilter, - babelStream({ - plugins: babelPlugins.map(require.resolve), - /* Babel get's confused about these if you're using an `npm link`ed - generator-angular-fullstack, thus the `require.resolve` */ - shouldPrintComment(commentContents) { - if(flow) { - return true; - } else { - // strip `// @flow` comments if not using flow - return !(/@flow/.test(commentContents)); - } - }, - babelrc: false // don't grab the generator's `.babelrc` - }), + codeshiftStream, eslint({ fix: true, configFile: path.join(genDir, 'templates/app/client/.eslintrc(babel)') diff --git a/templates/app/client/app/account(auth)/account.module.js b/templates/app/client/app/account(auth)/account.module.js index 9ae1ed74d..eb2a55471 100644 --- a/templates/app/client/app/account(auth)/account.module.js +++ b/templates/app/client/app/account(auth)/account.module.js @@ -12,7 +12,7 @@ import { LoginComponent } from './login/login.component'; import { SignupComponent } from './signup/signup.component'; import { SettingsComponent } from './settings/settings.component'; -export let AccountModule = @NgModule({ +@NgModule({ imports: [ FormsModule, <%_ if (filters.uirouter) { -%> @@ -28,4 +28,4 @@ export let AccountModule = @NgModule({ SettingsComponent, ], }) -class AccountModule {} +export class AccountModule {} diff --git a/templates/app/client/app/account(auth)/login/login.component.js b/templates/app/client/app/account(auth)/login/login.component.js index 203e412ca..4bc1d847e 100644 --- a/templates/app/client/app/account(auth)/login/login.component.js +++ b/templates/app/client/app/account(auth)/login/login.component.js @@ -20,11 +20,11 @@ interface User { } <%_ } -%> -export let LoginComponent = @Component({ +@Component({ selector: 'login', template: require('./login.<%=templateExt%>'), }) -class LoginComponent { +export class LoginComponent { user: User = { name: '', email: '', diff --git a/templates/app/client/app/account(auth)/settings/settings.component.js b/templates/app/client/app/account(auth)/settings/settings.component.js index 9e0a436b9..7e1da1743 100644 --- a/templates/app/client/app/account(auth)/settings/settings.component.js +++ b/templates/app/client/app/account(auth)/settings/settings.component.js @@ -17,11 +17,11 @@ interface User { } <%_ } -%> -export let SettingsComponent = @Component({ +@Component({ selector: 'settings', template: require('./settings.<%=templateExt%>'), }) -class SettingsComponent { +export class SettingsComponent { user: User = { oldPassword: '', newPassword: '', diff --git a/templates/app/client/app/account(auth)/signup/signup.component.js b/templates/app/client/app/account(auth)/signup/signup.component.js index c8138cab2..96f051bc6 100644 --- a/templates/app/client/app/account(auth)/signup/signup.component.js +++ b/templates/app/client/app/account(auth)/signup/signup.component.js @@ -19,12 +19,12 @@ interface User { password: string; }<% } %> -export let SignupComponent = @Component({ +@Component({ selector: 'signup', template: require('./signup.<%=templateExt%>'), directives: [...ANGULARCLASS_MATCH_CONTROL_DIRECTIVES] }) -class SignupComponent { +export class SignupComponent { user: User = { name: '', email: '', diff --git a/templates/app/client/app/app.component.js b/templates/app/client/app/app.component.js index 7f0859ba3..0a4f290ce 100644 --- a/templates/app/client/app/app.component.js +++ b/templates/app/client/app/app.component.js @@ -1,9 +1,9 @@ import { Component } from '@angular/core'; -export let AppComponent = @Component({ +@Component({ selector: 'app', template: `
` }) -class AppComponent {} +export class AppComponent {} diff --git a/templates/app/client/app/app.module.js b/templates/app/client/app/app.module.js index cb9aed6f4..319662d77 100644 --- a/templates/app/client/app/app.module.js +++ b/templates/app/client/app/app.module.js @@ -83,7 +83,7 @@ if(constants.env === 'development') { providers.push({ provide: RequestOptions, useClass: HttpOptions }); } -export let AppModule = @NgModule({ +@NgModule({ providers, imports: [ BrowserModule, @@ -99,4 +99,4 @@ export let AppModule = @NgModule({ ], bootstrap: [AppComponent] }) -class AppModule {} +export class AppModule {} diff --git a/templates/app/client/app/main/main.component.js b/templates/app/client/app/main/main.component.js index ed2927b76..a8f75fa25 100644 --- a/templates/app/client/app/main/main.component.js +++ b/templates/app/client/app/main/main.component.js @@ -2,12 +2,12 @@ import { Component, OnInit<% if(filters.socketio) { %>, OnDestroy<% } %> } from import { Http } from '@angular/http'; import { SocketService } from '../../components/socket/socket.service'; -export let MainComponent = @Component({ +@Component({ selector: 'main', template: require('./main.<%=templateExt%>'), styles: [require('./main.<%=styleExt%>')], }) -class MainComponent implements OnInit<% if(filters.socketio) { %>, OnDestroy<% } %> { +export class MainComponent implements OnInit<% if(filters.socketio) { %>, OnDestroy<% } %> { Http; <%_ if(filters.socketio) { -%> SocketService;<% } %> diff --git a/templates/app/client/app/main/main.module.js b/templates/app/client/app/main/main.module.js index cad630bfa..46e10de14 100644 --- a/templates/app/client/app/main/main.module.js +++ b/templates/app/client/app/main/main.module.js @@ -21,7 +21,7 @@ export const STATES = [ { name: 'main', url: '/', component: MainComponent }, ];<% } %> -export let MainModule = @NgModule({ +@NgModule({ imports: [ BrowserModule, FormsModule, @@ -45,4 +45,4 @@ export let MainModule = @NgModule({ MainComponent, ], }) -class MainModule {} +export class MainModule {} diff --git a/templates/app/client/components/auth(auth)/auth.module.js b/templates/app/client/components/auth(auth)/auth.module.js index 82f92e6df..e097d977f 100644 --- a/templates/app/client/components/auth(auth)/auth.module.js +++ b/templates/app/client/components/auth(auth)/auth.module.js @@ -10,10 +10,10 @@ import { NgModule } from '@angular/core'; import { AuthService } from './auth.service'; import { UserService } from './user.service'; -export let AuthModule = @NgModule({ +@NgModule({ providers: [ AuthService, UserService ] }) -class AuthModule {} +export class AuthModule {} diff --git a/templates/app/client/components/auth(auth)/auth.service.js b/templates/app/client/components/auth(auth)/auth.service.js index d2753b0de..a99cf9366 100644 --- a/templates/app/client/components/auth(auth)/auth.service.js +++ b/templates/app/client/components/auth(auth)/auth.service.js @@ -17,8 +17,8 @@ class User { $promise = undefined; } -export let AuthService = @Injectable() -class AuthService { +@Injectable() +export class AuthService { _currentUser: User = {}; @Output() currentUserChanged = new EventEmitter(true); userRoles = userRoles || []; diff --git a/templates/app/client/components/auth(auth)/user.service.js b/templates/app/client/components/auth(auth)/user.service.js index 561284b53..0a0a329bc 100644 --- a/templates/app/client/components/auth(auth)/user.service.js +++ b/templates/app/client/components/auth(auth)/user.service.js @@ -14,8 +14,8 @@ type UserType = { email: string; } -export let UserService = @Injectable() -class UserService { +@Injectable() +export class UserService { static parameters = [AuthHttp]; constructor(authHttp: AuthHttp) { this.AuthHttp = authHttp; diff --git a/templates/app/client/components/directives.module.js b/templates/app/client/components/directives.module.js index def4d52bc..6d6391d66 100644 --- a/templates/app/client/components/directives.module.js +++ b/templates/app/client/components/directives.module.js @@ -10,7 +10,7 @@ import { FooterComponent } from './footer/footer.component'; <%_ if(filters.oauth) { -%> import { OauthButtonsComponent } from './oauth-buttons/oauth-buttons.component';<% } %> -export let DirectivesModule = @NgModule({ +@NgModule({ imports: [ CommonModule, UIRouterModule.forChild(), @@ -30,4 +30,4 @@ export let DirectivesModule = @NgModule({ OauthButtonsComponent,<% } %> ] }) -class DirectivesModule {} +export class DirectivesModule {} diff --git a/templates/app/client/components/footer/footer.component.js b/templates/app/client/components/footer/footer.component.js index 87914ad78..d5ca83148 100644 --- a/templates/app/client/components/footer/footer.component.js +++ b/templates/app/client/components/footer/footer.component.js @@ -1,8 +1,8 @@ import { Component } from '@angular/core'; -export let FooterComponent = @Component({ +@Component({ selector: 'footer', template: require('./footer.html'), styles: [require('./footer.scss')] }) -class FooterComponent {} +export class FooterComponent {} diff --git a/templates/app/client/components/navbar/navbar.component.js b/templates/app/client/components/navbar/navbar.component.js index 129f1cb72..dbd0979fe 100644 --- a/templates/app/client/components/navbar/navbar.component.js +++ b/templates/app/client/components/navbar/navbar.component.js @@ -4,11 +4,11 @@ import { Component } from '@angular/core'; import { StateService } from 'ui-router-ng2';<% } %> import { AuthService } from '../auth/auth.service';<% } %> -export let NavbarComponent = @Component({ +@Component({ selector: 'navbar', template: require('./navbar.html') }) -class NavbarComponent { +export class NavbarComponent { isCollapsed = true; isLoggedIn; isAdmin; diff --git a/templates/app/client/components/oauth-buttons(oauth)/oauth-buttons.component.js b/templates/app/client/components/oauth-buttons(oauth)/oauth-buttons.component.js index c29bbff2c..da3696719 100644 --- a/templates/app/client/components/oauth-buttons(oauth)/oauth-buttons.component.js +++ b/templates/app/client/components/oauth-buttons(oauth)/oauth-buttons.component.js @@ -1,11 +1,11 @@ import { Component } from '@angular/core'; -export let OauthButtonsComponent = @Component({ +@Component({ selector: 'oauth-buttons', template: require('./oauth-buttons.<%=templateExt%>'), styles: [require('./oauth-buttons.<%=styleExt%>')], }) -class OauthButtonsComponent { +export class OauthButtonsComponent { loginOauth(provider) { window.location.href = `/auth/${provider}`; }; diff --git a/templates/app/client/components/socket(socketio)/socket.service.js b/templates/app/client/components/socket(socketio)/socket.service.js index efc3473de..978221287 100644 --- a/templates/app/client/components/socket(socketio)/socket.service.js +++ b/templates/app/client/components/socket(socketio)/socket.service.js @@ -4,8 +4,8 @@ import { noop, find, remove } from 'lodash'; import io from 'socket.io-client'; import constants from '../../app/app.constants'; -export let SocketService = @Injectable() -class SocketService { +@Injectable() +export class SocketService { socket; constructor() { From a55691a09caa94361d81eaf76a957c33db7b6a60 Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Sat, 24 Dec 2016 18:54:06 -0500 Subject: [PATCH 606/976] fix(gen): fix another type stripping; also TS doesn't like default exports --- src/generators/app/index.js | 4 ++++ templates/app/client/app/app.constants.js | 7 ++++++- templates/app/server/config/environment/shared.js | 2 +- 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/generators/app/index.js b/src/generators/app/index.js index bebdace10..b9409bab5 100644 --- a/src/generators/app/index.js +++ b/src/generators/app/index.js @@ -483,6 +483,10 @@ export class Generator extends Base { .find(jscodeshift.TypeAnnotation) .remove() .toSource(); + contents = jscodeshift(contents) + .find(jscodeshift.GenericTypeAnnotation) + .remove() + .toSource(); // remove any `type Foo = { .. }` declarations contents = jscodeshift(contents) diff --git a/templates/app/client/app/app.constants.js b/templates/app/client/app/app.constants.js index 730aed801..eed259ffc 100644 --- a/templates/app/client/app/app.constants.js +++ b/templates/app/client/app/app.constants.js @@ -1 +1,6 @@ -export default from '../../server/config/environment/shared'; +<%_ if(filters.babel) { -%> +export default from '../../server/config/environment/shared';<% } %> +<%_ if(filters.ts) { -%> +import shared from '../../server/config/environment/shared'; + +module.exports.default = shared;<% } %> diff --git a/templates/app/server/config/environment/shared.js b/templates/app/server/config/environment/shared.js index c1e3e1032..1f000515d 100644 --- a/templates/app/server/config/environment/shared.js +++ b/templates/app/server/config/environment/shared.js @@ -1,6 +1,6 @@ 'use strict'; -exports = module.exports = { +module.exports.default = { env: process.env.NODE_ENV, port: process.env.PORT || <%= devPort %>, // List of user roles From 77bf967947a0e7097a95fadd56a89a6cf1d0412a Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Sat, 24 Dec 2016 18:55:34 -0500 Subject: [PATCH 607/976] chore(package): set minimum yo peer --- package.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/package.json b/package.json index 7234a3f26..0dacd2205 100644 --- a/package.json +++ b/package.json @@ -87,6 +87,9 @@ "yeoman-assert": "^2.0.0", "yeoman-test": "~1.5.0" }, + "peerDependencies": { + "yo": ">= 1.7.1" + }, "engines": { "node": "^6.2.2", "npm": "^3.9.5" From 3debe1c2659a1b224caa72f22d8db5b2401e8eeb Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Sat, 24 Dec 2016 21:57:30 -0500 Subject: [PATCH 608/976] feat(gen): use new base classes --- src/generators/app/index.js | 23 ++++----- src/generators/endpoint/index.js | 12 +---- src/generators/generator-base.js | 89 ++++++++++++++++++++++++-------- 3 files changed, 79 insertions(+), 45 deletions(-) diff --git a/src/generators/app/index.js b/src/generators/app/index.js index 8c3b55b2f..96439c536 100644 --- a/src/generators/app/index.js +++ b/src/generators/app/index.js @@ -1,12 +1,9 @@ -'use strict'; - import fs from 'fs'; import path from 'path'; import Promise from 'bluebird'; import { runCmd } from '../util'; import chalk from 'chalk'; -import { Base } from 'yeoman-generator'; -import { genBase } from '../generator-base'; +import { Base } from '../generator-base'; import insight from '../insight-init'; import { exec } from 'child_process'; import babelStream from 'gulp-babel'; @@ -28,17 +25,18 @@ export class Generator extends Base { defaults: false }); + // This is mainly for development purposes this.option('skip-config', { desc: 'Always use existing .yo-rc.json', type: Boolean, defaults: false }); - this.option('app-suffix', { - desc: 'Allow a custom suffix to be added to the module name', - type: String, - defaults: 'App' - }); + // this.option('app-suffix', { + // desc: 'Allow a custom suffix to be added to the module name', + // type: String, + // defaults: 'App' + // }); this.option('dev-port', { desc: 'Port to use for the development HTTP server', @@ -65,9 +63,7 @@ export class Generator extends Base { this.config.set('generatorVersion', this.rootGeneratorVersion()); this.filters = {}; - // init shared generator properies and methods - const genBasePromise = genBase(this); - let promises = [genBasePromise]; + let promises = []; if(process.env.CI) { insight.optOut = true; @@ -96,7 +92,7 @@ export class Generator extends Base { }, info: function () { this.log(this.yoWelcome); - this.log('Out of the box I create an AngularJS app with an Express server.\n'); + this.log('Out of the box I create an Angular app with an Express server.\n'); }, checkForConfig: function() { var existingFilters = this.config.get('filters'); @@ -390,6 +386,7 @@ export class Generator extends Base { this.config.set('filters', this.filters); this.config.forceSave(); }, + // TODO: switch to ng2 component generator // ngComponent: function() { // if(this.skipConfig) return; // var appPath = 'client/app/'; diff --git a/src/generators/endpoint/index.js b/src/generators/endpoint/index.js index 04fcd2be5..7075d172c 100644 --- a/src/generators/endpoint/index.js +++ b/src/generators/endpoint/index.js @@ -1,15 +1,12 @@ 'use strict'; import path from 'path'; -import {Base} from 'yeoman-generator'; -import {genNamedBase} from '../generator-base'; +import { NamedBase } from '../generator-base'; -export class Generator extends Base { +export class Generator extends NamedBase { constructor(...args) { super(...args); - this.argument('name', { type: String, required: true }); - this.option('route', { desc: 'URL for the endpoint', type: String @@ -26,11 +23,6 @@ export class Generator extends Base { }); } - initializing() { - // init shared generator properies and methods - return genNamedBase(this); - } - prompting() { let promptCb = props => { if(props.route.charAt(0) !== '/') { diff --git a/src/generators/generator-base.js b/src/generators/generator-base.js index 0d398a88b..d4a13c314 100644 --- a/src/generators/generator-base.js +++ b/src/generators/generator-base.js @@ -2,32 +2,77 @@ import util from 'util'; import path from 'path'; -import lodash from 'lodash'; +import _ from 'lodash'; import s from 'underscore.string'; -import semver from 'semver'; +import { Base as YoBase } from 'yeoman-generator'; import yoWelcome from 'yeoman-welcome'; import * as genUtils from './util'; // extend lodash with underscore.string -lodash.mixin(s.exports()); +_.mixin(s.exports()); -export function genBase(self) { - self = self || this; +export class Base extends YoBase { + constructor(...args) { + super(...args); + + this.lodash = _; + this.yoWelcome = yoWelcome; + + this.appname = _.camelize(_.slugify(_.humanize(this.determineAppname()))); + + this.scriptAppName = this.appname + this.appSuffix(); + + this.filters = this.filters || this.config.get('filters'); + + // dynamic relative require path + this.relativeRequire = genUtils.relativeRequire.bind(this); + // process template directory + this.processDirectory = genUtils.processDirectory.bind(this); + // rewrite a file in place + this.rewriteFile = genUtils.rewriteFile; + } + + appSuffix() { + var suffix = this.options['app-suffix']; + return (typeof suffix === 'string') ? this.lodash.classify(suffix) : ''; + } + + determineAppname() { + if(this.name) return this.name; + else return super.determineAppname(); + } - let yoCheckPromise; - if(!process.env.CI) { - yoCheckPromise = genUtils.runCmd('yo --version').then(stdout => { - if(!semver.satisfies(semver.clean(stdout), '>= 1.7.1')) { - throw new Error(`ERROR: You need to update yo to at least 1.7.1 (npm i -g yo) -'yo --version' output: ${stdout}`); - } - }); - } else { - // CI won't have yo installed - yoCheckPromise = Promise.resolve(); + // dynamic assertion statements + expect() { + return this.filters.expect ? 'expect(' : ''; + } + to() { + return this.filters.expect ? ').to' : '.should'; + } +} + +export class NamedBase extends Base { + constructor(...args) { + super(...args); + + this.argument('name', { type: String, required: true }); + + var name = this.name.replace(/\//g, '-'); + + this.cameledName = _.camelize(name); + this.classedName = _.classify(name); + + this.basename = path.basename(this.name); + this.dirname = this.name.includes('/') + ? path.dirname(this.name) + : this.name; } +} + +export function genBase(self) { + self = self || this; - self.lodash = lodash; + self.lodash = _; self.yoWelcome = yoWelcome; let baseDetermineAppname = self.determineAppname.bind(self); @@ -39,8 +84,8 @@ export function genBase(self) { } } - self.appname = lodash.camelize(lodash.slugify( - lodash.humanize(self.determineAppname()) + self.appname = _.camelize(_.slugify( + _.humanize(self.determineAppname()) )); self.scriptAppName = self.appname + genUtils.appSuffix(self); @@ -61,7 +106,7 @@ export function genBase(self) { // rewrite a file in place self.rewriteFile = genUtils.rewriteFile; - return yoCheckPromise; + return Promise.resolve(); } export function genNamedBase(self) { @@ -71,8 +116,8 @@ export function genNamedBase(self) { return genBase(self).then(() => { var name = self.name.replace(/\//g, '-'); - self.cameledName = lodash.camelize(name); - self.classedName = lodash.classify(name); + self.cameledName = _.camelize(name); + self.classedName = _.classify(name); self.basename = path.basename(self.name); self.dirname = (self.name.indexOf('/') >= 0) ? path.dirname(self.name) : self.name; From e9b0f9c62f3d504e6779ce3199e16edc7c47a2da Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Sun, 25 Dec 2016 16:19:34 -0500 Subject: [PATCH 609/976] 5.0.0-alpha.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 68b098119..e95deedc8 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "generator-angular-fullstack", - "version": "5.0.0-alpha.2", + "version": "5.0.0-alpha.3", "description": "Yeoman generator for creating MEAN stack applications, using MongoDB, Express, AngularJS, and Node", "keywords": [ "yeoman-generator", From c638fb6780257071d7612d3290e89d26d395b7ac Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Mon, 26 Dec 2016 17:04:36 -0500 Subject: [PATCH 610/976] fix(client:footer): fix hardcoded template & style extentions fixes #2421 --- templates/app/client/components/footer/footer.component.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/templates/app/client/components/footer/footer.component.js b/templates/app/client/components/footer/footer.component.js index d5ca83148..6163100cf 100644 --- a/templates/app/client/components/footer/footer.component.js +++ b/templates/app/client/components/footer/footer.component.js @@ -2,7 +2,7 @@ import { Component } from '@angular/core'; @Component({ selector: 'footer', - template: require('./footer.html'), - styles: [require('./footer.scss')] + template: require('./footer.<%=templateExt%>'), + styles: [require('./footer.<%=styleExt%>')] }) export class FooterComponent {} From a84ff90150b007334b9c1d4ff52016af356d9b79 Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Mon, 26 Dec 2016 17:11:43 -0500 Subject: [PATCH 611/976] fix(server): fix some bluebird warnings fixes #2412, #2363 --- templates/app/server/api/user(auth)/user.controller.js | 2 +- templates/app/server/auth(auth)/auth.service.js | 1 + templates/endpoint/basename.controller.js | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/templates/app/server/api/user(auth)/user.controller.js b/templates/app/server/api/user(auth)/user.controller.js index d8a1f5fe3..ae0e960fa 100644 --- a/templates/app/server/api/user(auth)/user.controller.js +++ b/templates/app/server/api/user(auth)/user.controller.js @@ -146,7 +146,7 @@ export function me(req, res, next) { if (!user) { return res.status(401).end(); } - res.json(user); + return res.json(user); }) .catch(err => next(err)); } diff --git a/templates/app/server/auth(auth)/auth.service.js b/templates/app/server/auth(auth)/auth.service.js index 13b345c3b..eaa7f9a3b 100644 --- a/templates/app/server/auth(auth)/auth.service.js +++ b/templates/app/server/auth(auth)/auth.service.js @@ -42,6 +42,7 @@ export function isAuthenticated() { } req.user = user; next(); + return null; }) .catch(err => next(err)); }); diff --git a/templates/endpoint/basename.controller.js b/templates/endpoint/basename.controller.js index a9b5fa74c..df262e1f5 100644 --- a/templates/endpoint/basename.controller.js +++ b/templates/endpoint/basename.controller.js @@ -42,7 +42,7 @@ function removeEntity(res) { <% if(filters.mongooseModels) { %>return entity.remove()<% } if(filters.sequelizeModels) { %>return entity.destroy()<% } %> .then(() => { - res.status(204).end(); + return res.status(204).end(); }); } }; From d4e4a7a2aa69dc900aedc7024d25dedaab4ff99c Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Mon, 26 Dec 2016 17:12:07 -0500 Subject: [PATCH 612/976] fix(server): fix new shared default export --- templates/app/server/config/environment/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/app/server/config/environment/index.js b/templates/app/server/config/environment/index.js index b82e4ae4f..8696e8998 100644 --- a/templates/app/server/config/environment/index.js +++ b/templates/app/server/config/environment/index.js @@ -68,5 +68,5 @@ var all = { // ============================================== module.exports = _.merge( all, - require('./shared'), + require('./shared').default, require(`./${process.env.NODE_ENV}.js`) || {}); From af482488c30c97f7eb063c718424e53ce2fcd22a Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Mon, 26 Dec 2016 17:12:35 -0500 Subject: [PATCH 613/976] style(server:auth): if space --- .../app/server/auth(auth)/auth.service.js | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/templates/app/server/auth(auth)/auth.service.js b/templates/app/server/auth(auth)/auth.service.js index eaa7f9a3b..cc0dcdb8a 100644 --- a/templates/app/server/auth(auth)/auth.service.js +++ b/templates/app/server/auth(auth)/auth.service.js @@ -2,8 +2,8 @@ import config from '../config/environment'; import jwt from 'jsonwebtoken'; import expressJwt from 'express-jwt'; -import compose from 'composable-middleware';<% if (filters.mongooseModels) { %> -import User from '../api/user/user.model';<% } %><% if (filters.sequelizeModels) { %> +import compose from 'composable-middleware';<% if(filters.mongooseModels) { %> +import User from '../api/user/user.model';<% } %><% if(filters.sequelizeModels) { %> import {User} from'../sqldb';<% } %> var validateJwt = expressJwt({ @@ -19,25 +19,25 @@ export function isAuthenticated() { // Validate jwt .use(function(req, res, next) { // allow access_token to be passed through query parameter as well - if (req.query && req.query.hasOwnProperty('access_token')) { + if(req.query && req.query.hasOwnProperty('access_token')) { req.headers.authorization = 'Bearer ' + req.query.access_token; } // IE11 forgets to set Authorization header sometimes. Pull from cookie instead. - if (req.query && typeof req.headers.authorization === 'undefined') { + if(req.query && typeof req.headers.authorization === 'undefined') { req.headers.authorization = 'Bearer ' + req.cookies.token; } validateJwt(req, res, next); }) // Attach user to request .use(function(req, res, next) { - <% if (filters.mongooseModels) { %>User.findById(req.user._id).exec()<% } - if (filters.sequelizeModels) { %>User.find({ + <% if(filters.mongooseModels) { %>User.findById(req.user._id).exec()<% } + if(filters.sequelizeModels) { %>User.find({ where: { _id: req.user._id } })<% } %> .then(user => { - if (!user) { + if(!user) { return res.status(401).end(); } req.user = user; @@ -52,14 +52,14 @@ export function isAuthenticated() { * Checks if the user role meets the minimum requirements of the route */ export function hasRole(roleRequired) { - if (!roleRequired) { + if(!roleRequired) { throw new Error('Required role needs to be set'); } return compose() .use(isAuthenticated()) .use(function meetsRequirements(req, res, next) { - if (config.userRoles.indexOf(req.user.role) >= config.userRoles.indexOf(roleRequired)) { + if(config.userRoles.indexOf(req.user.role) >= config.userRoles.indexOf(roleRequired)) { return next(); } else { return res.status(403).send('Forbidden'); @@ -80,7 +80,7 @@ export function signToken(id, role) { * Set token cookie directly for oAuth strategies */ export function setTokenCookie(req, res) { - if (!req.user) { + if(!req.user) { return res.status(404).send('It looks like you aren\'t logged in, please try again.'); } var token = signToken(req.user._id, req.user.role); From 5ca8a56eb5dcbc5ca4e1e8dcac3b173b3871eb7e Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Mon, 26 Dec 2016 17:13:38 -0500 Subject: [PATCH 614/976] refactor(client:admin): Angular 2 --- .../client/app/admin(auth)/admin.component.js | 28 ++++++++++++++++ .../app/admin(auth)/admin.controller.js | 18 ----------- .../app/client/app/admin(auth)/admin.html | 12 +++---- .../client/app/admin(auth)/admin.module.js | 32 +++++++++++++++++++ .../client/app/admin(auth)/admin.routes.js | 32 +++++-------------- templates/app/client/app/admin(auth)/index.js | 13 -------- templates/app/client/app/app.module.js | 4 +-- 7 files changed, 76 insertions(+), 63 deletions(-) create mode 100644 templates/app/client/app/admin(auth)/admin.component.js delete mode 100644 templates/app/client/app/admin(auth)/admin.controller.js create mode 100644 templates/app/client/app/admin(auth)/admin.module.js delete mode 100644 templates/app/client/app/admin(auth)/index.js diff --git a/templates/app/client/app/admin(auth)/admin.component.js b/templates/app/client/app/admin(auth)/admin.component.js new file mode 100644 index 000000000..738dccbf8 --- /dev/null +++ b/templates/app/client/app/admin(auth)/admin.component.js @@ -0,0 +1,28 @@ +import { Component } from '@angular/core'; +import { UserService } from '../../components/auth/user.service'; + +@Component({ + selector: 'admin', + template: require('./admin.<%=templateExt%>'), + styles: [require('./admin.<%=styleExt%>')], +}) +export class AdminComponent { + <%_ if(filters.ts || filters.flow) { -%> + users: Object[]; + + <%_ } _%> + static parameters = [UserService]; + constructor(userService: UserService) { + this.userService = userService; + // Use the user service to fetch all users + this.userService.query().subscribe(users => { + this.users = users; + }); + } + + delete(user) { + this.userService.remove(user).subscribe(deletedUser => { + this.users.splice(this.users.indexOf(deletedUser), 1); + }); + } +} diff --git a/templates/app/client/app/admin(auth)/admin.controller.js b/templates/app/client/app/admin(auth)/admin.controller.js deleted file mode 100644 index afb2e557b..000000000 --- a/templates/app/client/app/admin(auth)/admin.controller.js +++ /dev/null @@ -1,18 +0,0 @@ -'use strict'; - -export default class AdminController { - <%_ if(filters.ts || filters.flow) { _%> - users: Object[]; - - <%_ } _%> - /*@ngInject*/ - constructor(User) { - // Use the User $resource to fetch all users - this.users = User.query(); - } - - delete(user) { - user.$remove(); - this.users.splice(this.users.indexOf(user), 1); - } -} diff --git a/templates/app/client/app/admin(auth)/admin.html b/templates/app/client/app/admin(auth)/admin.html index cbbe68a40..4604f0284 100644 --- a/templates/app/client/app/admin(auth)/admin.html +++ b/templates/app/client/app/admin(auth)/admin.html @@ -1,12 +1,12 @@

The delete user and user index api routes are restricted to users with the 'admin' role.

    -
  • - - +
  • + +
diff --git a/templates/app/client/app/admin(auth)/admin.module.js b/templates/app/client/app/admin(auth)/admin.module.js new file mode 100644 index 000000000..15a7336f5 --- /dev/null +++ b/templates/app/client/app/admin(auth)/admin.module.js @@ -0,0 +1,32 @@ +import { NgModule } from '@angular/core'; +import { BrowserModule } from '@angular/platform-browser'; +<%_ if(filters.uirouter) { %> +import { UIRouterModule } from 'ui-router-ng2';<% } %> +<%_ if(filters.ngroute) { %> +import { RouterModule, Routes } from '@angular/router';<% } %> + +import { AdminComponent } from './admin.component'; + +<%_ if(filters.ngroute) { -%> +import { ROUTES } from './admin.routes';<% } %> +<%_ if(filters.uirouter) { -%> +import { STATES } from './admin.routes';<% } %> + +@NgModule({ + imports: [ + BrowserModule, + <%_ if(filters.ngroute) { _%> + RouterModule.forChild(ROUTES),<% } %> + <%_ if(filters.uirouter) { _%> + UIRouterModule.forChild({ + states: STATES, + }),<% } %> + ], + declarations: [ + AdminComponent, + ], + exports: [ + AdminComponent, + ], +}) +export class AdminModule {} diff --git a/templates/app/client/app/admin(auth)/admin.routes.js b/templates/app/client/app/admin(auth)/admin.routes.js index 24114892e..d87f23563 100644 --- a/templates/app/client/app/admin(auth)/admin.routes.js +++ b/templates/app/client/app/admin(auth)/admin.routes.js @@ -1,25 +1,9 @@ -'use strict'; +import { AdminComponent } from './admin.component'; -<%_ if (filters.ngroute) { _%> -export default function routes($routeProvider) { - 'ngInject'; - $routeProvider - .when('/admin', { - template: require('./admin.<%= templateExt %>'), - controller: 'AdminController', - controllerAs: 'admin', - authenticate: 'admin' - }); -};<% } %> -<%_ if (filters.uirouter) { _%> -export default function routes($stateProvider) { - 'ngInject'; - $stateProvider - .state('admin', { - url: '/admin', - template: require('./admin.<%= templateExt %>'), - controller: 'AdminController', - controllerAs: 'admin', - authenticate: 'admin' - }); -};<% } %> +<%_ if(filters.uirouter) { -%> +export const STATES = [{ + name: 'admin', + url: '/admin', + component: AdminComponent, +}];<% } %> +<%_ if(filters.ngroute) { -%><% } %> diff --git a/templates/app/client/app/admin(auth)/index.js b/templates/app/client/app/admin(auth)/index.js deleted file mode 100644 index 72422ea8f..000000000 --- a/templates/app/client/app/admin(auth)/index.js +++ /dev/null @@ -1,13 +0,0 @@ -'use strict'; -import angular from 'angular'; -import routes from './admin.routes'; -import AdminController from './admin.controller'; - -export default angular.module('<%= scriptAppName %>.admin', [ - '<%= scriptAppName %>.auth'<% if (filters.ngroute) { %>, - 'ngRoute'<% } if (filters.uirouter) { %>, - 'ui.router'<% } %> -]) - .config(routes) - .controller('AdminController', AdminController) - .name; diff --git a/templates/app/client/app/app.module.js b/templates/app/client/app/app.module.js index 319662d77..d96e227e7 100644 --- a/templates/app/client/app/app.module.js +++ b/templates/app/client/app/app.module.js @@ -60,7 +60,7 @@ import { AppComponent } from './app.component'; import { MainModule } from './main/main.module'; import { DirectivesModule } from '../components/directives.module'; import { AccountModule } from './account/account.module'; -// import { AdminModule } from './admin/admin.module'; +import { AdminModule } from './admin/admin.module'; import constants from './app.constants'; @@ -92,7 +92,7 @@ if(constants.env === 'development') { MainModule, DirectivesModule, AccountModule, - // AdminModule, + AdminModule, ], declarations: [ AppComponent, From 4be319129ee578bedd73e99cc5aa6907d040e42e Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Mon, 26 Dec 2016 17:14:10 -0500 Subject: [PATCH 615/976] fix(client:userService): use `id` or `_id` property --- .../app/client/components/auth(auth)/user.service.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/templates/app/client/components/auth(auth)/user.service.js b/templates/app/client/components/auth(auth)/user.service.js index 0a0a329bc..543df3c5a 100644 --- a/templates/app/client/components/auth(auth)/user.service.js +++ b/templates/app/client/components/auth(auth)/user.service.js @@ -31,7 +31,7 @@ export class UserService { .catch(this.handleError); } get(user = {id: 'me'}): Observable { - return this.AuthHttp.get(`/api/users/${user.id}`) + return this.AuthHttp.get(`/api/users/${user.id || user._id}`) .map((res:Response) => res.json()) .catch(this.handleError); } @@ -41,13 +41,13 @@ export class UserService { .catch(this.handleError); } changePassword(user, oldPassword, newPassword) { - return this.AuthHttp.put(`/api/users/${user.id}/password`, {oldPassword, newPassword}) + return this.AuthHttp.put(`/api/users/${user.id || user._id}/password`, {oldPassword, newPassword}) .map((res:Response) => res.json()) .catch(this.handleError); } remove(user) { - return this.AuthHttp.delete(`/api/users/${user.id}`) - .map((res:Response) => res.json()) + return this.AuthHttp.delete(`/api/users/${user.id || user._id}`) + .map(() => user) .catch(this.handleError); } } From 1f6aab9b4a407121b240871791e0dff6a8ecb3c7 Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Mon, 26 Dec 2016 17:58:42 -0500 Subject: [PATCH 616/976] chore(package): remove unused deps, move some to devDeps --- package.json | 15 +++++---------- src/generators/app/index.js | 2 -- 2 files changed, 5 insertions(+), 12 deletions(-) diff --git a/package.json b/package.json index 07cd165ae..b037ee7bb 100644 --- a/package.json +++ b/package.json @@ -35,19 +35,10 @@ "prepublish": "gulp build" }, "dependencies": { - "babel-core": "^6.18.2", "babel-eslint": "^7.1.0", - "babel-plugin-syntax-class-properties": "^6.13.0", - "babel-plugin-syntax-flow": "^6.18.0", - "babel-plugin-syntax-decorators": "^6.13.0", - "babel-plugin-syntax-export-extensions": "^6.13.0", - "babel-plugin-transform-flow-strip-types": "^6.18.0", - "babel-register": "^6.18.0", "bluebird": "^3.4.5", "chalk": "^1.1.0", "glob": "^7.0.5", - "gulp-babel": "^6.1.2", - "gulp-beautify": "^2.0.0", "gulp-eslint": "^3.0.1", "gulp-filter": "^4.0.0", "gulp-html2jade": "^1.1.2", @@ -62,8 +53,11 @@ "yeoman-welcome": "^1.0.1" }, "devDependencies": { - "babel-plugin-transform-class-properties": "^6.19.0", + "babel-core": "^6.18.2", "babel-preset-es2015": "^6.18.0", + "babel-plugin-transform-class-properties": "^6.19.0", + "babel-plugin-transform-flow-strip-types": "^6.18.0", + "babel-register": "^6.18.0", "chai": "^3.5.0", "del": "^2.2.0", "grunt": "^1.0.1", @@ -71,6 +65,7 @@ "grunt-david": "~0.7.0", "grunt-release": "^0.14.0", "gulp": "^3.9.1", + "gulp-babel": "^6.1.2", "gulp-conventional-changelog": "^1.1.0", "gulp-gh-pages": "^0.5.4", "gulp-if": "^2.0.1", diff --git a/src/generators/app/index.js b/src/generators/app/index.js index 2ee37202f..f930d6b11 100644 --- a/src/generators/app/index.js +++ b/src/generators/app/index.js @@ -6,8 +6,6 @@ import chalk from 'chalk'; import { Base } from '../generator-base'; import insight from '../insight-init'; import { exec } from 'child_process'; -import babelStream from 'gulp-babel'; -import beaufityStream from 'gulp-beautify'; import tap from 'gulp-tap'; import filter from 'gulp-filter'; import eslint from 'gulp-eslint'; From d48f0b04aae946c1ef0039c0ad5d52aa662663e0 Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Wed, 28 Dec 2016 17:20:21 -0500 Subject: [PATCH 617/976] fix(webpack:css): disable css-loader sourceMap option fixes #2188 --- templates/app/webpack.make.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/app/webpack.make.js b/templates/app/webpack.make.js index 6c04a7449..9990862e0 100644 --- a/templates/app/webpack.make.js +++ b/templates/app/webpack.make.js @@ -211,7 +211,7 @@ module.exports = function makeWebpackConfig(options) { // // Reference: https://github.com/webpack/style-loader // Use style-loader in development for hot-loading - ? ExtractTextPlugin.extract('style', 'css?sourceMap!postcss') + ? ExtractTextPlugin.extract('style', 'css!postcss') // Reference: https://github.com/webpack/null-loader // Skip loading css in test mode : 'null' From 641646c5f552f139003eeb4a0e6085d48537c8e6 Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Wed, 28 Dec 2016 17:49:29 -0500 Subject: [PATCH 618/976] fix(css): fix stylus-loader options --- templates/app/webpack.make.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/app/webpack.make.js b/templates/app/webpack.make.js index 6c04a7449..77907fff0 100644 --- a/templates/app/webpack.make.js +++ b/templates/app/webpack.make.js @@ -238,7 +238,7 @@ module.exports = function makeWebpackConfig(options) { // Stylus LOADER // Reference: https://github.com/ test: /\.styl$/, - loaders: ['style', 'css', 'stylus'], + loaders: ['style', 'css', 'stylus?paths=node_modules/bootstrap-styl'], include: [ path.resolve(__dirname, 'node_modules/bootstrap-styl/bootstrap/*.styl'), path.resolve(__dirname, 'client/app/app.styl') From 89a463f4e741ce0781d755a9a53b5b5e84a68c52 Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Thu, 29 Dec 2016 16:19:24 -0500 Subject: [PATCH 619/976] docs(readme): remove SystemJS plan [skip ci] --- readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/readme.md b/readme.md index 96e927725..2c882bacb 100644 --- a/readme.md +++ b/readme.md @@ -56,7 +56,7 @@ yo angular-fullstack **Client** * Scripts: `JavaScript (Babel)`, `TypeScript` -* Module Systems: `Webpack`, ~~`SystemJS + JSPM`~~ (maybe) +* Module Systems: `Webpack` * Markup: `HTML`, `Pug` * Stylesheets: `CSS`, `Stylus`, `Sass`, `Less` * Angular Routers: `ngRoute`, `ui-router` From e2cbae46ddebc86b5cf59af006d10e0eb4b6c2b8 Mon Sep 17 00:00:00 2001 From: Josh Lavely Date: Thu, 29 Dec 2016 20:06:23 -0500 Subject: [PATCH 620/976] Updated IIS.md There is no reason to run ```gulp serve:dist``` after you build the first time. This will clear your web.config from your `client` folder. --- docs/Examples/IIS.md | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/docs/Examples/IIS.md b/docs/Examples/IIS.md index 2bc3d9975..245121b0f 100644 --- a/docs/Examples/IIS.md +++ b/docs/Examples/IIS.md @@ -118,7 +118,7 @@ The below steps assume you have purchased a domain and have pointed your DNS to ``` -**Setup IIS** +**Setup IIS (if new build in IIS)** - Open IIS Manager (*Start > Type 'IIS Manager'*) - Create your new site (*Expand Server > Right click sites > 'Add Websites'*) - Enter your site's name @@ -126,7 +126,4 @@ The below steps assume you have purchased a domain and have pointed your DNS to - Enter your hostname (*Your a-record*) - Leave all other defaults and click 'Ok' -**Start your server** - - Run `gulp serve:dist` - # Congratulations, you did it! Now go code something awesome! From 55f852f3402896c61191dbbc07dcf3609eeb266b Mon Sep 17 00:00:00 2001 From: Sebastian Dieguez Date: Fri, 30 Dec 2016 00:35:45 -0300 Subject: [PATCH 621/976] ci(travis): Updated generated travis.yml - It wasn't compiling right away (got rid of bower) - Also the tooling was needed from node-gyp - And some caching between builds --- templates/app/.travis.yml | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/templates/app/.travis.yml b/templates/app/.travis.yml index 2f15c52e1..5f2c453d3 100644 --- a/templates/app/.travis.yml +++ b/templates/app/.travis.yml @@ -1,12 +1,22 @@ language: node_js node_js: - - 4.4.6 + - 6 matrix: fast_finish: true allow_failures: - node_js: 5.12.0 before_script: - - npm install -g gulp-cli<% if (filters.sass) { %> + - npm install -g gulp-cli node-gyp<% if (filters.sass) { %> - gem install sass<% } %> - - bower install services: mongodb +cache: + directories: + - node_modules +env: + - CXX=g++-4.8 +addons: + apt: + sources: + - ubuntu-toolchain-r-test + packages: + - g++-4.8 From 501f1118d0485c21be5a5dfa6e753b2f6b174e60 Mon Sep 17 00:00:00 2001 From: Robert Wikman Date: Sat, 31 Dec 2016 21:01:38 +0100 Subject: [PATCH 622/976] docs(): fix 'boostrap' typos --- CHANGELOG.md | 2 +- templates/app/gulpfile.babel.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 85dfe133c..cb7fdc7cf 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -72,7 +72,7 @@ * **gen:** fix doc img generation\n\nAdd gulp task to copy images to gh-pages ([5bb43be](https://github.com/angular-fullstack/generator-angular-fullstack/commit/5bb43be)) * **gen:heroku:** fix module export, gen base ([8e50326](https://github.com/angular-fullstack/generator-angular-fullstack/commit/8e50326)), closes [#2148](https://github.com/angular-fullstack/generator-angular-fullstack/issues/2148) -* **webpack:** fix boostrap-sass import path ([bae1c86](https://github.com/angular-fullstack/generator-angular-fullstack/commit/bae1c86)) +* **webpack:** fix bootstrap-sass import path ([bae1c86](https://github.com/angular-fullstack/generator-angular-fullstack/commit/bae1c86)) diff --git a/templates/app/gulpfile.babel.js b/templates/app/gulpfile.babel.js index dc7db2ed3..4e6db6421 100644 --- a/templates/app/gulpfile.babel.js +++ b/templates/app/gulpfile.babel.js @@ -542,7 +542,7 @@ gulp.task('copy:extras', () => { }); /** - * turns 'boostrap/fonts/font.woff' into 'boostrap/font.woff' + * turns 'bootstrap/fonts/font.woff' into 'bootstrap/font.woff' */ function flatten() { return through2.obj(function(file, enc, next) { From 6aae4f5ed4d4c52578d81c80479e5430cd4026bf Mon Sep 17 00:00:00 2001 From: Gints Date: Sun, 8 Jan 2017 21:15:47 +0200 Subject: [PATCH 623/976] fix(eslint): hides global variable warnings (#2448) [skip ci] --- templates/app/server/api/user(auth)/index.spec.js | 2 ++ templates/app/server/api/user(auth)/user.integration.js | 2 ++ templates/endpoint/basename.integration.js | 2 ++ templates/endpoint/index.spec.js | 2 ++ 4 files changed, 8 insertions(+) diff --git a/templates/app/server/api/user(auth)/index.spec.js b/templates/app/server/api/user(auth)/index.spec.js index 07d2aecf0..e5d56d6a2 100644 --- a/templates/app/server/api/user(auth)/index.spec.js +++ b/templates/app/server/api/user(auth)/index.spec.js @@ -1,5 +1,7 @@ 'use strict'; +/* globals sinon, describe, expect, it */ + var proxyquire = require('proxyquire').noPreserveCache(); var userCtrlStub = { diff --git a/templates/app/server/api/user(auth)/user.integration.js b/templates/app/server/api/user(auth)/user.integration.js index 3e6db4ebd..957de6539 100644 --- a/templates/app/server/api/user(auth)/user.integration.js +++ b/templates/app/server/api/user(auth)/user.integration.js @@ -1,5 +1,7 @@ 'use strict'; +/* globals describe, expect, it, before, after, beforeEach, afterEach */ + import app from '../..';<% if (filters.mongooseModels) { %> import User from './user.model';<% } %><% if (filters.sequelizeModels) { %> import {User} from '../../sqldb';<% } %> diff --git a/templates/endpoint/basename.integration.js b/templates/endpoint/basename.integration.js index fafd3f483..0b134ab44 100644 --- a/templates/endpoint/basename.integration.js +++ b/templates/endpoint/basename.integration.js @@ -1,5 +1,7 @@ 'use strict'; +/* globals describe, expect, it, beforeEach, afterEach */ + var app = require('<%= relativeRequire('server') %>'); import request from 'supertest';<% if(filters.models) { %> diff --git a/templates/endpoint/index.spec.js b/templates/endpoint/index.spec.js index 07b343b6a..0f58271c0 100644 --- a/templates/endpoint/index.spec.js +++ b/templates/endpoint/index.spec.js @@ -1,5 +1,7 @@ 'use strict'; +/* globals sinon, describe, expect, it */ + var proxyquire = require('proxyquire').noPreserveCache(); var <%= cameledName %>CtrlStub = { From fdbb222717cade93a43f403dcb5f5abcb1e32c59 Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Mon, 9 Jan 2017 14:42:41 -0500 Subject: [PATCH 624/976] 4.1.2 --- CHANGELOG.md | 13 +++++++++++++ angular-fullstack-deps | 2 +- package.json | 2 +- 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index cb7fdc7cf..56cab6d92 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,16 @@ + +## [4.1.2](https://github.com/angular-fullstack/generator-angular-fullstack/compare/4.1.1...v4.1.2) (2017-01-09) + + +### Bug Fixes + +* **css:** fix stylus-loader options ([641646c](https://github.com/angular-fullstack/generator-angular-fullstack/commit/641646c)) +* **eslint:** hides global variable warnings ([#2448](https://github.com/angular-fullstack/generator-angular-fullstack/issues/2448)) ([6aae4f5](https://github.com/angular-fullstack/generator-angular-fullstack/commit/6aae4f5)) +* **sql:** Fix form field not displaying sequalize error ([d2cc15a](https://github.com/angular-fullstack/generator-angular-fullstack/commit/d2cc15a)), closes [#2400](https://github.com/angular-fullstack/generator-angular-fullstack/issues/2400) +* **webpack:css:** disable css-loader sourceMap option ([d48f0b0](https://github.com/angular-fullstack/generator-angular-fullstack/commit/d48f0b0)), closes [#2188](https://github.com/angular-fullstack/generator-angular-fullstack/issues/2188) + + + ## [4.1.1](https://github.com/angular-fullstack/generator-angular-fullstack/compare/4.1.0...v4.1.1) (2016-12-08) diff --git a/angular-fullstack-deps b/angular-fullstack-deps index 8c8cf4c56..7f972005c 160000 --- a/angular-fullstack-deps +++ b/angular-fullstack-deps @@ -1 +1 @@ -Subproject commit 8c8cf4c5611c6ef01b224dbb0c5f1acbd510a4de +Subproject commit 7f972005c7060bbf54023a70351bedf204b7b957 diff --git a/package.json b/package.json index abc1488a9..469d29df2 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "generator-angular-fullstack", - "version": "4.1.1", + "version": "4.1.2", "description": "Yeoman generator for creating MEAN stack applications, using MongoDB, Express, AngularJS, and Node", "keywords": [ "yeoman-generator", From a84672657057942d74614ca77b9c7dadd9e5fadf Mon Sep 17 00:00:00 2001 From: Greenkeeper Date: Tue, 10 Jan 2017 15:58:56 +0100 Subject: [PATCH 625/976] chore(package): update gulp-filter to version 5.0.0 (#2452) https://greenkeeper.io/ --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 469d29df2..b2e68f435 100644 --- a/package.json +++ b/package.json @@ -48,7 +48,7 @@ "gulp-babel": "^6.1.2", "gulp-beautify": "^2.0.0", "gulp-eslint": "^3.0.1", - "gulp-filter": "^4.0.0", + "gulp-filter": "^5.0.0", "gulp-tap": "^0.1.3", "insight": "~0.8.3", "lodash": "^4.17.0", From 0526d3c6feb0f9815e5c305439f2160753512652 Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Thu, 12 Jan 2017 11:37:06 -0500 Subject: [PATCH 626/976] 5.0.0-alpha.4 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index b037ee7bb..ef41b0b0b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "generator-angular-fullstack", - "version": "5.0.0-alpha.3", + "version": "5.0.0-alpha.4", "description": "Yeoman generator for creating MEAN stack applications, using MongoDB, Express, AngularJS, and Node", "keywords": [ "yeoman-generator", From 5b5952b04f20e0f8c7b8142496efbfe4d297f1bc Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Thu, 19 Jan 2017 14:12:38 -0500 Subject: [PATCH 627/976] chore(package): update lodash, add lodash-es [skip ci] --- templates/app/_package.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/templates/app/_package.json b/templates/app/_package.json index 7d119f9c0..6fd39f019 100644 --- a/templates/app/_package.json +++ b/templates/app/_package.json @@ -14,7 +14,8 @@ "errorhandler": "^1.4.2", "composable-middleware": "^0.3.0", "fast-json-patch": "^1.0.0", - "lodash": "^4.6.1", + "lodash": "^4.17.4", + "lodash-es": "^4.17.4", "lusca": "^1.4.1", "babel-core": "^6.18.2", "babel-plugin-angular2-annotations": "^5.1.0", From e6e0837272c27090f3e793369347a191a73c2817 Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Thu, 19 Jan 2017 14:14:12 -0500 Subject: [PATCH 628/976] docs(deployment): add quick manual deploy instructions --- docs/03_Deployment/00_title.md | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/docs/03_Deployment/00_title.md b/docs/03_Deployment/00_title.md index 18bc89112..d9954cef7 100644 --- a/docs/03_Deployment/00_title.md +++ b/docs/03_Deployment/00_title.md @@ -1 +1,19 @@ [STUB] + +# Deployment + +## Manual (Linux server) + +1. Run `gulp build`. This will build your project into the `dist` folder by default. + +2. Zip up the contents of your `dist` folder and send it off to your server. + +3. On your server, unzip your built files somewhere on the disk. Ex: in a `myproj` folder. + +4. ```bash +$ cd myproj +``` + +5. ``` +$ NODE_ENV=production node ./server +``` From f6043fd57676f7b60f2a3a752d97805fb7e7e6b2 Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Thu, 19 Jan 2017 14:21:09 -0500 Subject: [PATCH 629/976] docs(deployment): fix formatting, add npm install step --- docs/03_Deployment/00_title.md | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/docs/03_Deployment/00_title.md b/docs/03_Deployment/00_title.md index d9954cef7..c5cd532e2 100644 --- a/docs/03_Deployment/00_title.md +++ b/docs/03_Deployment/00_title.md @@ -10,10 +10,8 @@ 3. On your server, unzip your built files somewhere on the disk. Ex: in a `myproj` folder. -4. ```bash -$ cd myproj -``` +4. `$ cd myproj` -5. ``` -$ NODE_ENV=production node ./server -``` +5. `$ npm install --production` + +6. `$ NODE_ENV=production node ./server` From 77819102352ca87974b8225c37b7fa33ea9b61bb Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Thu, 19 Jan 2017 14:43:17 -0500 Subject: [PATCH 630/976] chore(package): update awesome typescript loader (#2465) --- templates/app/_package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/app/_package.json b/templates/app/_package.json index 0b068729d..7cb086235 100644 --- a/templates/app/_package.json +++ b/templates/app/_package.json @@ -117,7 +117,7 @@ "html-webpack-harddisk-plugin": "~0.0.2", <%_ if(filters.pug) { _%> "pug-html-loader": "^1.0.8",<% } %> - "awesome-typescript-loader": "0.17.0", + "awesome-typescript-loader": "^1.1.1", "ng-annotate-loader": "~0.1.0", "babel-loader": "^6.2.4", "css-loader": "^0.24.0", From 959c31c3ca013daceaa05188f81a64eb7955335f Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Tue, 24 Jan 2017 16:28:07 -0500 Subject: [PATCH 631/976] fix(webpack): don't use html-plugin in test fixes #2374 --- templates/app/webpack.make.js | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/templates/app/webpack.make.js b/templates/app/webpack.make.js index 9ff9216b3..35137b455 100644 --- a/templates/app/webpack.make.js +++ b/templates/app/webpack.make.js @@ -321,15 +321,17 @@ module.exports = function makeWebpackConfig(options) { // Skip rendering index.html in test mode // Reference: https://github.com/ampedandwired/html-webpack-plugin // Render index.html - let htmlConfig = { - template: 'client/_index.html', - filename: '../client/index.html', - alwaysWriteToDisk: true + if(!TEST) { + let htmlConfig = { + template: 'client/_index.html', + filename: '../client/index.html', + alwaysWriteToDisk: true + } + config.plugins.push( + new HtmlWebpackPlugin(htmlConfig), + new HtmlWebpackHarddiskPlugin() + ); } - config.plugins.push( - new HtmlWebpackPlugin(htmlConfig), - new HtmlWebpackHarddiskPlugin() - ); // Add build specific plugins if(BUILD) { From 474cc61b8a2f148356871bd6d5712a3f90c36547 Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Tue, 24 Jan 2017 17:16:24 -0500 Subject: [PATCH 632/976] chore(package): update awesome typescript loader (#2466) --- templates/app/_package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/app/_package.json b/templates/app/_package.json index 6fd39f019..bfc6f8fed 100644 --- a/templates/app/_package.json +++ b/templates/app/_package.json @@ -145,7 +145,7 @@ "html-webpack-harddisk-plugin": "~0.0.2", <%_ if(filters.pug) { _%> "pug-html-loader": "^1.0.8",<% } %> - "awesome-typescript-loader": "0.17.0", + "awesome-typescript-loader": "^2.2.4", "ng-annotate-loader": "~0.1.0", "babel-loader": "^6.2.4", "css-loader": "^0.24.0", From 4ac11f0ff314af21c9363cad57ad1a62c11a506e Mon Sep 17 00:00:00 2001 From: Andrew Koroluk Date: Tue, 24 Jan 2017 21:14:16 -0500 Subject: [PATCH 633/976] docs(): new docs! no php! --- circle.yml | 18 +- daux/templates/content.php | 41 - daux/templates/error.php | 11 - daux/templates/home.php | 85 - daux/templates/layout/00_layout.php | 86 - daux/templates/layout/05_page.php | 108 - daux/templates/partials/google_analytics.php | 9 - daux/templates/partials/navbar_content.php | 11 - daux/templates/partials/piwik_analytics.php | 15 - docs/.alexrc | 3 + docs/.babelrc | 9 + docs/.editorconfig | 16 + docs/.eslintignore | 2 + docs/.eslintrc | 29 + docs/.gitignore | 6 + docs/.markdownlintrc | 13 + docs/.proselintrc | 84 + docs/.travis.yml | 13 + docs/CONTRIBUTING.md | 67 + docs/Examples/00_title.md | 1 - docs/Examples/Modal.md | 1 - docs/README.md | 25 + docs/antwar.config.js | 181 + docs/assets/afs-screenshot-cropped.png | Bin 0 -> 111988 bytes docs/assets/afs-screenshot.png | Bin 0 -> 176320 bytes docs/assets/angular-fullstack-boxes.svg | 8883 ++++++++++++++++ docs/assets/angular-fullstack-logo.svg | 9045 +++++++++++++++++ docs/assets/favicon.ico | Bin 0 -> 4286 bytes docs/assets/foo-route-navbar.jpg | Bin 0 -> 60976 bytes docs/assets/foo-route.jpg | Bin 0 -> 61800 bytes docs/assets/geomanist-medium.woff | Bin 0 -> 19236 bytes docs/assets/geomanist-medium.woff2 | Bin 0 -> 14807 bytes docs/assets/github-logo.svg | 38 + docs/assets/homepage-modules.svg | 326 + docs/assets/icon-square-big.svg | 1 + docs/assets/icon-square-small.svg | 1 + docs/assets/logged-in.jpg | Bin 0 -> 233276 bytes docs/assets/logo-on-dark-bg.svg | 1 + docs/assets/logo-on-white-bg.svg | 1 + docs/assets/logo-small.svg | 57 + docs/assets/site-logo.svg | 1 + docs/assets/socket.io-demo.gif | Bin 0 -> 59827 bytes docs/bootstrap.js | 14 + docs/components/cc/cc-style.scss | 11 + docs/components/cc/cc.jsx | 16 + .../components/container/container-style.scss | 8 + docs/components/container/container.jsx | 11 + .../contributors/contributors-style.scss | 37 + docs/components/contributors/contributors.jsx | 25 + docs/components/cube/cube-style.scss | 39 + docs/components/cube/cube.jsx | 231 + docs/components/footer/footer-style.scss | 79 + docs/components/footer/footer.jsx | 31 + docs/components/link/link.jsx | 21 + docs/components/logo/logo-style.scss | 11 + docs/components/logo/logo.jsx | 8 + .../navigation/navigation-style.scss | 203 + docs/components/navigation/navigation.jsx | 193 + docs/components/navigation/search-style.scss | 102 + .../organization/organization-style.scss | 34 + docs/components/organization/organization.jsx | 74 + docs/components/organization/projects.json | 292 + docs/components/page/page-style.scss | 49 + docs/components/page/page.jsx | 47 + .../sidebar-item/sidebar-item-style.scss | 79 + docs/components/sidebar-item/sidebar-item.jsx | 43 + .../sidebar-mobile/sidebar-mobile-style.scss | 112 + .../sidebar-mobile/sidebar-mobile.jsx | 193 + docs/components/sidebar/sidebar-style.scss | 19 + docs/components/sidebar/sidebar.jsx | 31 + docs/components/sidecar/sidecar-style.scss | 103 + docs/components/sidecar/sidecar.jsx | 69 + docs/components/site/site-style.scss | 10 + docs/components/site/site.jsx | 56 + .../splash-viz/splash-viz-style.scss | 59 + docs/components/splash-viz/splash-viz.jsx | 28 + docs/components/splash/splash-style.scss | 35 + docs/components/splash/splash.jsx | 41 + docs/components/support/support-style.scss | 31 + docs/components/support/support.jsx | 19 + .../text-rotater/text-rotater-style.scss | 46 + docs/components/text-rotater/text-rotater.jsx | 91 + docs/components/vote/api.dev.js | 153 + docs/components/vote/api.js | 112 + docs/components/vote/app-style.scss | 218 + docs/components/vote/app.jsx | 332 + docs/components/vote/button/button-style.scss | 57 + docs/components/vote/button/button.jsx | 132 + docs/components/vote/influence-style.scss | 19 + docs/components/vote/influence.jsx | 21 + docs/components/vote/list-style.scss | 4 + docs/components/vote/list.jsx | 27 + docs/{ => content}/Contributing/00_title.md | 0 .../Contributing/01_Commit_Style.md | 0 docs/content/contribute.md | 16 + .../deployment/index.md} | 15 +- .../developing}/01_Adding_a_Route.md | 0 .../developing/index.md} | 5 + .../examples}/Heroku_Deployment.md | 4 + docs/{Examples => content/examples}/IIS.md | 4 + docs/content/examples/index.md | 6 + docs/{ => content}/generators/app.md | 5 + docs/{ => content}/generators/component.md | 4 + docs/{ => content}/generators/controller.md | 4 + docs/{ => content}/generators/decorator.md | 4 + docs/{ => content}/generators/directive.md | 4 + docs/{ => content}/generators/endpoint.md | 4 + docs/{ => content}/generators/filter.md | 4 + docs/{ => content}/generators/heroku.md | 4 + docs/content/generators/index.md | 6 + docs/{ => content}/generators/openshift.md | 6 +- docs/{ => content}/generators/route.md | 5 + docs/{ => content}/generators/service.md | 5 + .../get-started/index.md} | 5 + .../get-started/installation.md} | 5 + .../get-started/overview.md} | 5 + .../get-started/running.md} | 5 + docs/content/guides/asdf.md | 3 + docs/content/guides/index.md | 8 + docs/content/index.md | 48 + docs/package.json | 107 + docs/scripts/deploy.sh | 44 + docs/scripts/deploy_key.enc | Bin 0 -> 3248 bytes docs/scripts/deploy_key.pub | 1 + docs/scripts/fetch.sh | 14 + docs/scripts/fetch_package_files.js | 115 + docs/scripts/fetch_package_names.js | 47 + docs/styles/fonts.scss | 7 + docs/styles/homepage.scss | 30 + docs/styles/icon.font.js | 9 + docs/styles/icon.template.hbs | 20 + docs/styles/icons/chevron-down.svg | 9 + docs/styles/icons/chevron-left.svg | 9 + docs/styles/icons/chevron-right.svg | 9 + docs/styles/icons/chevron-up.svg | 9 + docs/styles/icons/cross.svg | 10 + docs/styles/icons/edit.svg | 10 + docs/styles/icons/github.svg | 3 + docs/styles/icons/gitter.svg | 27 + docs/styles/icons/link.svg | 1 + docs/styles/icons/magnifying-glass.svg | 11 + docs/styles/icons/medium.svg | 3 + docs/styles/icons/menu.svg | 9 + docs/styles/icons/stack-overflow.svg | 3 + docs/styles/index.scss | 89 + docs/styles/markdown.scss | 234 + docs/styles/partials/_functions.scss | 12 + docs/styles/partials/_mixins.scss | 5 + docs/styles/partials/_vars.scss | 25 + docs/styles/prism-theme.scss | 109 + docs/styles/reset.css | 4 + docs/template.ejs | 35 + docs/utilities/highlight.js | 32 + docs/utilities/markdown.js | 228 + docs/webpack.config.js | 162 + 155 files changed, 24109 insertions(+), 381 deletions(-) delete mode 100644 daux/templates/content.php delete mode 100644 daux/templates/error.php delete mode 100644 daux/templates/home.php delete mode 100644 daux/templates/layout/00_layout.php delete mode 100644 daux/templates/layout/05_page.php delete mode 100644 daux/templates/partials/google_analytics.php delete mode 100644 daux/templates/partials/navbar_content.php delete mode 100644 daux/templates/partials/piwik_analytics.php create mode 100644 docs/.alexrc create mode 100644 docs/.babelrc create mode 100644 docs/.editorconfig create mode 100644 docs/.eslintignore create mode 100644 docs/.eslintrc create mode 100644 docs/.gitignore create mode 100644 docs/.markdownlintrc create mode 100644 docs/.proselintrc create mode 100644 docs/.travis.yml create mode 100644 docs/CONTRIBUTING.md delete mode 100644 docs/Examples/00_title.md delete mode 100644 docs/Examples/Modal.md create mode 100644 docs/README.md create mode 100644 docs/antwar.config.js create mode 100644 docs/assets/afs-screenshot-cropped.png create mode 100644 docs/assets/afs-screenshot.png create mode 100644 docs/assets/angular-fullstack-boxes.svg create mode 100644 docs/assets/angular-fullstack-logo.svg create mode 100644 docs/assets/favicon.ico create mode 100644 docs/assets/foo-route-navbar.jpg create mode 100644 docs/assets/foo-route.jpg create mode 100644 docs/assets/geomanist-medium.woff create mode 100644 docs/assets/geomanist-medium.woff2 create mode 100644 docs/assets/github-logo.svg create mode 100644 docs/assets/homepage-modules.svg create mode 100644 docs/assets/icon-square-big.svg create mode 100644 docs/assets/icon-square-small.svg create mode 100644 docs/assets/logged-in.jpg create mode 100644 docs/assets/logo-on-dark-bg.svg create mode 100644 docs/assets/logo-on-white-bg.svg create mode 100644 docs/assets/logo-small.svg create mode 100644 docs/assets/site-logo.svg create mode 100644 docs/assets/socket.io-demo.gif create mode 100644 docs/bootstrap.js create mode 100644 docs/components/cc/cc-style.scss create mode 100644 docs/components/cc/cc.jsx create mode 100644 docs/components/container/container-style.scss create mode 100644 docs/components/container/container.jsx create mode 100644 docs/components/contributors/contributors-style.scss create mode 100644 docs/components/contributors/contributors.jsx create mode 100644 docs/components/cube/cube-style.scss create mode 100644 docs/components/cube/cube.jsx create mode 100644 docs/components/footer/footer-style.scss create mode 100644 docs/components/footer/footer.jsx create mode 100644 docs/components/link/link.jsx create mode 100644 docs/components/logo/logo-style.scss create mode 100644 docs/components/logo/logo.jsx create mode 100644 docs/components/navigation/navigation-style.scss create mode 100644 docs/components/navigation/navigation.jsx create mode 100644 docs/components/navigation/search-style.scss create mode 100644 docs/components/organization/organization-style.scss create mode 100644 docs/components/organization/organization.jsx create mode 100644 docs/components/organization/projects.json create mode 100644 docs/components/page/page-style.scss create mode 100644 docs/components/page/page.jsx create mode 100644 docs/components/sidebar-item/sidebar-item-style.scss create mode 100644 docs/components/sidebar-item/sidebar-item.jsx create mode 100644 docs/components/sidebar-mobile/sidebar-mobile-style.scss create mode 100644 docs/components/sidebar-mobile/sidebar-mobile.jsx create mode 100644 docs/components/sidebar/sidebar-style.scss create mode 100644 docs/components/sidebar/sidebar.jsx create mode 100644 docs/components/sidecar/sidecar-style.scss create mode 100644 docs/components/sidecar/sidecar.jsx create mode 100644 docs/components/site/site-style.scss create mode 100644 docs/components/site/site.jsx create mode 100644 docs/components/splash-viz/splash-viz-style.scss create mode 100644 docs/components/splash-viz/splash-viz.jsx create mode 100644 docs/components/splash/splash-style.scss create mode 100644 docs/components/splash/splash.jsx create mode 100644 docs/components/support/support-style.scss create mode 100644 docs/components/support/support.jsx create mode 100644 docs/components/text-rotater/text-rotater-style.scss create mode 100644 docs/components/text-rotater/text-rotater.jsx create mode 100644 docs/components/vote/api.dev.js create mode 100644 docs/components/vote/api.js create mode 100644 docs/components/vote/app-style.scss create mode 100644 docs/components/vote/app.jsx create mode 100644 docs/components/vote/button/button-style.scss create mode 100644 docs/components/vote/button/button.jsx create mode 100644 docs/components/vote/influence-style.scss create mode 100644 docs/components/vote/influence.jsx create mode 100644 docs/components/vote/list-style.scss create mode 100644 docs/components/vote/list.jsx rename docs/{ => content}/Contributing/00_title.md (100%) rename docs/{ => content}/Contributing/01_Commit_Style.md (100%) create mode 100644 docs/content/contribute.md rename docs/{03_Deployment/00_title.md => content/deployment/index.md} (73%) rename docs/{02_Developing => content/developing}/01_Adding_a_Route.md (100%) rename docs/{02_Developing/00_Starting_Up.md => content/developing/index.md} (99%) rename docs/{Examples => content/examples}/Heroku_Deployment.md (94%) rename docs/{Examples => content/examples}/IIS.md (99%) create mode 100644 docs/content/examples/index.md rename docs/{ => content}/generators/app.md (97%) rename docs/{ => content}/generators/component.md (92%) rename docs/{ => content}/generators/controller.md (92%) rename docs/{ => content}/generators/decorator.md (92%) rename docs/{ => content}/generators/directive.md (97%) rename docs/{ => content}/generators/endpoint.md (97%) rename docs/{ => content}/generators/filter.md (93%) rename docs/{ => content}/generators/heroku.md (98%) create mode 100644 docs/content/generators/index.md rename docs/{ => content}/generators/openshift.md (96%) rename docs/{ => content}/generators/route.md (96%) rename docs/{ => content}/generators/service.md (93%) rename docs/{01_Getting_Started/01_Prerequisites.md => content/get-started/index.md} (98%) rename docs/{01_Getting_Started/02_Installation.md => content/get-started/installation.md} (97%) rename docs/{01_Getting_Started/04_Project_Overview.md => content/get-started/overview.md} (99%) rename docs/{01_Getting_Started/03_Running_Your_New_App.md => content/get-started/running.md} (95%) create mode 100644 docs/content/guides/asdf.md create mode 100644 docs/content/guides/index.md create mode 100644 docs/content/index.md create mode 100644 docs/package.json create mode 100644 docs/scripts/deploy.sh create mode 100644 docs/scripts/deploy_key.enc create mode 100644 docs/scripts/deploy_key.pub create mode 100644 docs/scripts/fetch.sh create mode 100644 docs/scripts/fetch_package_files.js create mode 100644 docs/scripts/fetch_package_names.js create mode 100644 docs/styles/fonts.scss create mode 100644 docs/styles/homepage.scss create mode 100644 docs/styles/icon.font.js create mode 100644 docs/styles/icon.template.hbs create mode 100644 docs/styles/icons/chevron-down.svg create mode 100644 docs/styles/icons/chevron-left.svg create mode 100644 docs/styles/icons/chevron-right.svg create mode 100644 docs/styles/icons/chevron-up.svg create mode 100644 docs/styles/icons/cross.svg create mode 100644 docs/styles/icons/edit.svg create mode 100644 docs/styles/icons/github.svg create mode 100644 docs/styles/icons/gitter.svg create mode 100644 docs/styles/icons/link.svg create mode 100644 docs/styles/icons/magnifying-glass.svg create mode 100644 docs/styles/icons/medium.svg create mode 100644 docs/styles/icons/menu.svg create mode 100644 docs/styles/icons/stack-overflow.svg create mode 100644 docs/styles/index.scss create mode 100644 docs/styles/markdown.scss create mode 100644 docs/styles/partials/_functions.scss create mode 100644 docs/styles/partials/_mixins.scss create mode 100644 docs/styles/partials/_vars.scss create mode 100644 docs/styles/prism-theme.scss create mode 100644 docs/styles/reset.css create mode 100644 docs/template.ejs create mode 100644 docs/utilities/highlight.js create mode 100644 docs/utilities/markdown.js create mode 100644 docs/webpack.config.js diff --git a/circle.yml b/circle.yml index b6d85f753..ea698ae72 100644 --- a/circle.yml +++ b/circle.yml @@ -6,7 +6,7 @@ general: ## Customize the test machine machine: node: - version: 5.11.1 + version: 6.9.4 post: - npm install -g gulp-cli @@ -22,7 +22,10 @@ dependencies: # builds. If you need to, you can add custom paths to cache: cache_directories: - "test/fixtures/node_modules" + - "docs/node_modules" override: + - npm i + - cd docs && npm i - gulp updateFixtures:test - gulp installFixtures post: @@ -39,13 +42,12 @@ notify: # A list of hook hashes, containing the url field # gitter hook - url: https://webhooks.gitter.im/e/ac3980c61cb722b9e789 - -# deployment: - # docs: - # branch: master - # commands: - # - composer global require justinwalsh/daux.io - # - gulp docs + +deployment: + docs: + branch: master + commands: + - cd docs && npm run build && npm run deploy #test: # pre: diff --git a/daux/templates/content.php b/daux/templates/content.php deleted file mode 100644 index 4a892507f..000000000 --- a/daux/templates/content.php +++ /dev/null @@ -1,41 +0,0 @@ -layout('theme::layout/05_page') ?> -
- - - - - - -
- -
- - - - -
- diff --git a/daux/templates/error.php b/daux/templates/error.php deleted file mode 100644 index c3ae7a5b2..000000000 --- a/daux/templates/error.php +++ /dev/null @@ -1,11 +0,0 @@ -layout('theme::layout/05_page') ?> - -
- - -
- -
-
diff --git a/daux/templates/home.php b/daux/templates/home.php deleted file mode 100644 index 873d2eabe..000000000 --- a/daux/templates/home.php +++ /dev/null @@ -1,85 +0,0 @@ -layout('theme::layout/00_layout') ?> - - - - Fork me on GitHub - - -
-
- ' . $params['tagline'] . ''; -} ?> -
- -
- '; -} ?> -
- -
-
- View On GitHub'; - } - foreach ($page['entry_page'] as $key => $node) { - echo '' . $key . ''; - } - ?> -
-
-
-
- -
-
-
-
- -
-
-
-
- -
-
-
- - - - - - - -
-
-
-
diff --git a/daux/templates/layout/00_layout.php b/daux/templates/layout/00_layout.php deleted file mode 100644 index 43c453ba4..000000000 --- a/daux/templates/layout/00_layout.php +++ /dev/null @@ -1,86 +0,0 @@ - - - - - - - <?= $page['title']; ?> <?php if ($page['title'] != $params['title']) { - echo '- ' . $params['title']; -} ?> - - - - - - - - - - "; -} ?> - - - "; -} ?> - - - - - - - - - - - - section('content'); ?> - - insert('theme::partials/google_analytics', ['analytics' => $params['html']['google_analytics'], 'host' => array_key_exists('host', $params) ? $params['host'] : '']); - } - if ($params['html']['piwik_analytics']) { - $this->insert('theme::partials/piwik_analytics', ['url' => $params['html']['piwik_analytics'], 'id' => $params['html']['piwik_analytics_id']]); - } - ?> - - - - - - - - - - '; - } ?> - - - - - - - - - - - - diff --git a/daux/templates/layout/05_page.php b/daux/templates/layout/05_page.php deleted file mode 100644 index 0f6f70e74..000000000 --- a/daux/templates/layout/05_page.php +++ /dev/null @@ -1,108 +0,0 @@ -layout('theme::layout/00_layout') ?> - - - Fork me on GitHub - - - -
-
-
- -
- -
- - value[$page['language']]; - $path = $page['language']; - } - - echo $this->get_navigation($rendertree, $path, isset($params['request']) ? $params['request'] : '', $base_page, $params['mode']); - ?> - - - -
- - - -
-
- -
-
- section('content'); ?> -
-
-
-
diff --git a/daux/templates/partials/google_analytics.php b/daux/templates/partials/google_analytics.php deleted file mode 100644 index 2f6328b71..000000000 --- a/daux/templates/partials/google_analytics.php +++ /dev/null @@ -1,9 +0,0 @@ - diff --git a/daux/templates/partials/navbar_content.php b/daux/templates/partials/navbar_content.php deleted file mode 100644 index 92991af09..000000000 --- a/daux/templates/partials/navbar_content.php +++ /dev/null @@ -1,11 +0,0 @@ - - - - - diff --git a/daux/templates/partials/piwik_analytics.php b/daux/templates/partials/piwik_analytics.php deleted file mode 100644 index 32ddcacb3..000000000 --- a/daux/templates/partials/piwik_analytics.php +++ /dev/null @@ -1,15 +0,0 @@ - - diff --git a/docs/.alexrc b/docs/.alexrc new file mode 100644 index 000000000..206e6efd2 --- /dev/null +++ b/docs/.alexrc @@ -0,0 +1,3 @@ +{ + "allow": ["boogeyman-boogeywoman"] +} \ No newline at end of file diff --git a/docs/.babelrc b/docs/.babelrc new file mode 100644 index 000000000..43995fccf --- /dev/null +++ b/docs/.babelrc @@ -0,0 +1,9 @@ +{ + "presets": [ + "env", + "react" + ], + "plugins": [ + "transform-object-rest-spread" + ] +} diff --git a/docs/.editorconfig b/docs/.editorconfig new file mode 100644 index 000000000..edeb3a492 --- /dev/null +++ b/docs/.editorconfig @@ -0,0 +1,16 @@ +# Top-most EditorConfig file +root = true + +# Set default charset +[*.{js}] +charset = utf-8 + +# 4 space indentation +[*.{md,js,jsx,scss,hbs}] +indent_style = space +indent_size = 2 + +# Format Config +[{package.json}] +indent_style = space +indent_size = 2 diff --git a/docs/.eslintignore b/docs/.eslintignore new file mode 100644 index 000000000..f3268c4f0 --- /dev/null +++ b/docs/.eslintignore @@ -0,0 +1,2 @@ +build/ +antwar.config.js diff --git a/docs/.eslintrc b/docs/.eslintrc new file mode 100644 index 000000000..459d0cbb8 --- /dev/null +++ b/docs/.eslintrc @@ -0,0 +1,29 @@ +{ + "root": true, + + "extends": "eslint:recommended", + + "parser": "babel-eslint", + + "env": { + "browser": true, + "es6": true, + "node": true + }, + + "plugins": [ + "markdown" + ], + + "globals": { + "__DEV__": true + }, + + "rules": { + "no-undef": 2, + "no-unreachable": 2, + "no-unused-vars": 0, + "no-console": 0, + "semi": ["error", "always"] + } +} diff --git a/docs/.gitignore b/docs/.gitignore new file mode 100644 index 000000000..a9820fba7 --- /dev/null +++ b/docs/.gitignore @@ -0,0 +1,6 @@ +node_modules +npm-debug.log +build +generated +.antwar + diff --git a/docs/.markdownlintrc b/docs/.markdownlintrc new file mode 100644 index 000000000..4d3437ad3 --- /dev/null +++ b/docs/.markdownlintrc @@ -0,0 +1,13 @@ +{ + "default": true, + "MD002": false, + "MD007": { "indent": 4 }, + "MD013": { "line_length": 500 }, + "MD029": { "style": "ordered"}, + "MD033": false, + "MD034": false, + "MD036": false, + "MD041": false, + "no-hard-tabs": false, + "whitespace": false +} \ No newline at end of file diff --git a/docs/.proselintrc b/docs/.proselintrc new file mode 100644 index 000000000..0cce7fb60 --- /dev/null +++ b/docs/.proselintrc @@ -0,0 +1,84 @@ +{ + "max_errors": 1000, + "checks": { + "phrasal_adjectives.ly" : false, + "preferred_forms" : false, + "airlinese.misc" : true, + "annotations.misc" : false, + "archaism.misc" : true, + "cliches.hell" : true, + "cliches.misc" : true, + "consistency.spacing" : true, + "consistency.spelling" : true, + "corporate_speak.misc" : true, + "cursing.filth" : true, + "cursing.nfl" : false, + "cursing.nword" : true, + "dates_times.am_pm" : true, + "dates_times.dates" : true, + "hedging.misc" : true, + "hyperbole.misc" : false, + "jargon.misc" : true, + "lexical_illusions.misc" : true, + "links.broken" : false, + "malapropisms.misc" : true, + "misc.apologizing" : true, + "misc.back_formations" : true, + "misc.bureaucratese" : true, + "misc.but" : false, + "misc.capitalization" : true, + "misc.chatspeak" : true, + "misc.commercialese" : true, + "misc.composition" : true, + "misc.currency" : true, + "misc.debased" : true, + "misc.false_plurals" : true, + "misc.illogic" : true, + "misc.inferior_superior" : true, + "misc.latin" : true, + "misc.many_a" : true, + "misc.metaconcepts" : true, + "misc.metadiscourse" : true, + "misc.narcissism" : true, + "misc.not_guilty" : true, + "misc.phrasal_adjectives" : false, + "misc.preferred_forms" : false, + "misc.pretension" : true, + "misc.professions" : true, + "misc.punctuation" : true, + "misc.scare_quotes" : true, + "misc.suddenly" : true, + "misc.tense_present" : true, + "misc.waxed" : true, + "misc.whence" : true, + "mixed_metaphors.misc" : true, + "mondegreens.misc" : true, + "needless_variants.misc" : true, + "nonwords.misc" : true, + "oxymorons.misc" : true, + "psychology.misc" : true, + "redundancy.misc" : true, + "redundancy.ras_syndrome" : true, + "skunked_terms.misc" : true, + "spelling.able_atable" : true, + "spelling.able_ible" : true, + "spelling.athletes" : true, + "spelling.em_im_en_in" : true, + "spelling.er_or" : true, + "spelling.in_un" : true, + "spelling.misc" : true, + "security.credit_card" : true, + "security.password" : true, + "sexism.misc" : true, + "terms.animal_adjectives" : true, + "terms.denizen_labels" : true, + "terms.eponymous_adjectives" : true, + "terms.venery" : true, + "typography.diacritical_marks" : true, + "typography.exclamation" : false, + "typography.symbols" : false, + "uncomparables.misc" : true, + "weasel_words.misc" : true, + "weasel_words.very" : true + } +} diff --git a/docs/.travis.yml b/docs/.travis.yml new file mode 100644 index 000000000..5bec1cccf --- /dev/null +++ b/docs/.travis.yml @@ -0,0 +1,13 @@ +branches: + only: + - master + - develop +language: node_js +node_js: + - "6" +script: + - bash ./scripts/deploy.sh +sudo: required +install: + - npm install + - sudo pip install proselint diff --git a/docs/CONTRIBUTING.md b/docs/CONTRIBUTING.md new file mode 100644 index 000000000..4311f5e04 --- /dev/null +++ b/docs/CONTRIBUTING.md @@ -0,0 +1,67 @@ +# Contributing + +From adding an issue for a documentation suggestion to creating a pull request: every contribution is appreciated and welcome. If you're planning to implement a new section or page please create an issue first. + +## Setup + +* Install [Node.js](https://nodejs.org/) if you have not already. + *Note: Node 6.9.* is required for "best results".*. Node 7 may have issues! +* Fork the **webpack.js.org** repo at [https://github.com/webpack/webpack.js.org](https://github.com/webpack/webpack.js.org). +* `git clone && cd webpack.js.org` +* `npm install` +* `npm run build` +* `npm start` +* Visit [http://localhost:3000](http://localhost:3000) to preview your changes before making a pull request. + +## Contributor License Agreement + +When submitting your contribution, a CLA (Contributor License Agreement) bot will come by to verify that you signed the CLA. If it is your first time, it will link you to the right place to sign it. However, if you have committed your contributions using an email that is not the same as your email used on GitHub, the CLA bot can't accept your contribution. + +Run `git config user.email` to see your Git email, and verify it with [your GitHub email](https://github.com/settings/emails). + +## Editor Config + +The [.editorconfig](https://github.com/webpack/webpack.js.org/blob/master/.editorconfig) in the root should ensure consistent formatting. Please make sure you've [installed the plugin](http://editorconfig.org/#download) if your text editor needs one. + +## Branching Your Changes + +Making a branch in your fork for your contribution is helpful in the following ways: + +* It allows you to have multiple contributions in as PRs at once. +* It allows us to identify what your contribution is about from the branch name. + +## Submitting Changes + +After getting some feedback, push to your fork branch and submit a pull request. We may suggest some changes or improvements or alternatives, but for small changes your pull request should be accepted quickly. + +Issue the PR to the [master](https://github.com/webpack/webpack.js.org/tree/master) branch. + +> See [GitHub documentation](https://help.github.com/articles/proposing-changes-to-your-work-with-pull-requests/) for more help. + +## Contribution Recognition + +Any document that you edit, you can choose to add your GitHub username at the top of the document for recognition: + +**example.md** + +```markdown +=== +title: Some Example Page +contributors: + - TheLarkInn + - Sokra + - bebraw + - Jhnns + - SpaceK33z +=== + +## Some Documentation + +``` + +This will add your name and GitHub profile photo to the document in production. This is a great way to own the awesome work that you do and encourage that you remember to do this in your PR's. + + +## Thank you + +webpack is insanely feature rich and documentation is a huge time sink. We greatly appreciate any time spent fixing typos or clarifying sections in the documentation. diff --git a/docs/Examples/00_title.md b/docs/Examples/00_title.md deleted file mode 100644 index 18bc89112..000000000 --- a/docs/Examples/00_title.md +++ /dev/null @@ -1 +0,0 @@ -[STUB] diff --git a/docs/Examples/Modal.md b/docs/Examples/Modal.md deleted file mode 100644 index 7f7b37f8d..000000000 --- a/docs/Examples/Modal.md +++ /dev/null @@ -1 +0,0 @@ -[stub] diff --git a/docs/README.md b/docs/README.md new file mode 100644 index 000000000..308558020 --- /dev/null +++ b/docs/README.md @@ -0,0 +1,25 @@ +[![build status](https://secure.travis-ci.org/webpack/webpack.js.org.svg)](http://travis-ci.org/webpack/webpack.js.org) + +# webpack.js.org + +Guides, documentation, and all things Webpack. + +## Contributing + +To develop, please pull the project, `cd` into the directory and run: + +- `npm install` to pull all dependencies. +- `npm run build` to create a production version of the site. +- `npm start` to develop on a local webpack-dev-server (should be [here](http://localhost:3000/)). + +If you want to fetch the documentation on additional loaders/plugins hosted in [separate repositories](https://github.com/webpack), run `npm run fetch`. + +For more information see the [contributors page](https://github.com/webpack/webpack.js.org/blob/master/CONTRIBUTING.md) + +## Content Progress + +Check out the [MVP Milestone](https://github.com/webpack/webpack.js.org/milestones) for the current status. + +## License + +The content is available under [Creative Commons BY 4.0](https://creativecommons.org/licenses/by/4.0/) license. diff --git a/docs/antwar.config.js b/docs/antwar.config.js new file mode 100644 index 000000000..101519938 --- /dev/null +++ b/docs/antwar.config.js @@ -0,0 +1,181 @@ +var _ = require('lodash'); +var path = require('path'); +var prevnextPlugin = require('antwar-prevnext-plugin'); +var markdown = require('./utilities/markdown'); +var highlight = require('./utilities/highlight'); + +module.exports = { + template: { + title: 'geneartor-angular-fullstack', + file: path.join(__dirname, 'template.ejs') + }, + output: 'build', + title: 'geneartor-angular-fullstack', + keywords: ['geneartor-angular-fullstack', 'javascript', 'web development', 'yeoman', 'mean', 'angular', 'node'], + pageTitle: function(config, pageTitle) { + var siteName = config.name; + + if (pageTitle === 'index') { + return siteName; + } + + return siteName + ' - ' + pageTitle; + }, + plugins: [ + prevnextPlugin() + ], + layout: function() { + return require('./components/site/site.jsx').default + }, + paths: { + '/': root( + function() { + return require.context( + 'json-loader!yaml-frontmatter-loader!./content', + false, + /^\.\/.*\.md$/ + ); + } + ), + + 'get-started': section( + 'Get-Started', + function() { + return require.context( + 'json-loader!yaml-frontmatter-loader!./content/get-started', + false, + /^\.\/.*\.md$/ + ) + } + ), + + 'guides': section( + 'Guides', + function() { + return require.context( + 'json-loader!yaml-frontmatter-loader!./content/guides', + false, + /^\.\/.*\.md$/ + ) + } + ), + + developing: section( + 'Developing', + function() { + return require.context( + 'json-loader!yaml-frontmatter-loader!./content/developing', + false, + /^\.\/.*\.md$/ + ); + } + ), + + deployment: section( + 'Deployment', + function() { + return require.context( + 'json-loader!yaml-frontmatter-loader!./content/deployment', + false, + /^\.\/.*\.md$/ + ); + } + ), + + examples: section( + 'Examples', + function() { + return require.context( + 'json-loader!yaml-frontmatter-loader!./content/examples', + false, + /^\.\/.*\.md$/ + ); + } + ), + + generators: section( + 'Generators', + function() { + return require.context( + 'json-loader!yaml-frontmatter-loader!./content/generators', + false, + /^\.\/.*\.md$/ + ); + } + ), + } +}; + +function root(contentCb) { + return { + title: 'Webpack', + path: function() { // Load path content + return contentCb(); + }, + processPage: processPage(), // Process individual page (url, content) + layouts: { // Layouts (page/section) + index: function() { + return require('./components/splash/splash.jsx').default + }, + page: function() { + return require('./components/page/page.jsx').default + } + }, + redirects: {} // Redirects : + }; +} + +function section(title, contentCb) { + return { + title: title, + path: function() { + return contentCb(); + }, + sort(pages) { + return _.sortBy(pages, (page) => page.file.sort) + }, + processPage: processPage(), + layouts: { + index: function() { + return require('./components/page/page.jsx').default + }, + page: function() { + return require('./components/page/page.jsx').default + } + }, + redirects: {} // : + }; +} + +function processPage() { + return { + url: function(o) { + return o.sectionName + '/' + o.fileName.split('.')[0] + }, + content: function(o) { + return markdown().process(o.file.__content, highlight); + }, + anchors: function(o) { + return markdown().getAnchors(o.file.__content); + }, + contributors: function(o) { + return Array.isArray(o.file.contributors) && o.file.contributors.length && o.file.contributors.slice().sort(); + } + }; +} + +function combineContexts(context1, context2) { + function webpackContext(req) { + try { + return context1(req); + } catch (e) { + return context2(req); + } + } + webpackContext.keys = () => { + let keys1 = context1.keys(); + let keys2 = context2.keys(); + return _.chain(keys1).concat(keys2).uniq().value(); + }; + return webpackContext; +} diff --git a/docs/assets/afs-screenshot-cropped.png b/docs/assets/afs-screenshot-cropped.png new file mode 100644 index 0000000000000000000000000000000000000000..9745ea111d70cdafc7696dbb04163059c682a62e GIT binary patch literal 111988 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 G`2PS5m0fTE literal 0 HcmV?d00001 diff --git a/docs/assets/afs-screenshot.png b/docs/assets/afs-screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..dda0f606db5354796fd90e6ed62f40d4560f6003 GIT binary patch literal 176320 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 X2{ATqZ=gj0;D0Y)$ch#U>-hc`fy7 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/assets/angular-fullstack-logo.svg b/docs/assets/angular-fullstack-logo.svg new file mode 100644 index 000000000..bf40810ac --- /dev/null +++ b/docs/assets/angular-fullstack-logo.svg @@ -0,0 +1,9045 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/assets/favicon.ico b/docs/assets/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..450113bc5eda26ef595a8ce74d6437a080b49d1c GIT binary patch literal 4286 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

J8s zo_&gOkzUB1A9IBR3$Ip)+bAGnNaPW;HK+fJ>Oij|a~AnG^Y$Dfr7skUgq|kcGM8iR zQwtyOl*Jlx%XE{38OB?Zw6&NBQP$iDQ6?f~MS^8*2GEt;=2|B^F#cOx(O@1zD`{C!o^ z@o2$;%;N($dR9KfsOPKC+s`X`CAHN5T0REWb8H)#1!H z{b4s8gA-8@*f|P#7Y!AG4WYyQA;5_@) z3OT_?L^X%ALKziM5fJoYSI4P31?Bg9gRY@&}dXir3~KJqsxjzbk04q8Zlo>}s0Dv9JpXD$Ny%l|)8J zN7vsYAE~eET23#a@VQYcaYfdKLo|(L_t-lfMszP?R#OqX<0w75@$tKF3D3rKj#w+X z$tm2-7+jLRAN;*e%j>&7KF@i>Pq(w~LR>P*IVEz8H?dZkP;ByYNH@0m z*|-4x)9#agSQ)kO%(79J`i!c1XTtGwWGG3t;)-Vnt+bW1Bebq9TQpO9%i zStfuCu}s|MywGX%5LAkDGU@#(Y|HP)`IMjn6RS1O+eg&bx8o?<1+K~5ixx*+3HiHdu*q?>g`)~Tdhpz^Tp;O_V#`pn`RVdBbH#(Uz-eX1?2r^9k-+H-~sXhYS(reGf?NlZ!d-%H@<10=z zIjE_`sjw{=BizS^b9sv*qRfdYpv= zzqbtMX45fy%%Vx3$_T*Eyxvmr*=_eW!Jk4;XnLW}K8iYH^AhgDL6HB8y!VP~D*xYq zbr?lzM5LFDBGN+d7?bbF7Z^c^NN+)ifHdhEG{7j*OGbszVGtqGdle}uFhBt5MT8XT zC}2n}KhOJlUXP6k!66r;;*kD!y3)off$c0S zEOYv=b;&}D0|PaMdXn*hCf~S~)Nw-L=b4TWIQ8z&n3@e%SvD&yifw1v@|MXmf1P3R zYx&RB(vuNn3qCVeDt2^P9W*?rdGg^Nady8nGj|s;2PIQ2P;tP{&ND&UFs0{LTqt15 zu#ypayyE5t5$`33@NPkQyU&QQvu7J4Vjf{M>ivQiagTmHtcDLaWdD1rsR>5ZqQXkR zLtm=#mFA#;2#Qw+o>B*83QoyZ*_PQPxVAJbc~OlM9iCR+NNO(2zN_=yNn}UGLQFjz zH!fubp)6GRJWp@FWrJZv!Qa8KIiMt}#@?nNg|tN@tM%a;o>s;~9Tp}mcgM5Zr8g4& zi+!;Hda7&AIaU`+nxH!|HQZ~x$31VAfXL7_cq(DASF~JD%0_lg- z1VRoQ&uEd?2Ow-wyW`ifivRqGRh{@={T_ilgZmwjVn>()ag2IVAaU@Y%8sFKSfK4QB?Dj-r>< z?}n#a-y#(2%A~qj6o4Z~)wAJ-`Nhs6$u;cb=?FowJy*#>VUL2TvGDE(AqnJenbJaA zidXoKPf-2oc$!X9;q98uHBb9;Q!&rcNYs4%!RslUcG#Kr#FqD(loM&7Qex)?L&$q& zP+EEBDyS!h;Q4`%jI|P$m9@FrkCS2WS+9PgXwBh=@QthjiTjRh;i9|h7q$+@n3|gE z>0$Pu-&yx$zLsJHzlXCXgxD0TSoR3;F(|r0*YA6E`ma03iB;XMx8Z|JYSs!UR=AsQ=_R35CV=u1)qRrFp4 zzmb#Kc=amgqIbcon3p%(mQ$`SCrABXuIN*@c^*}8e! zp2-q@sqDJ%hDM_UV~S&AZ5}M0jN#gWPNl%TcXHjkAqemvk5<<*zO?Iwbjkf6>vA5C zNiBh{zkTiR>|E4+cjmvpz92ljm;+Ox?Zua^`O*3k{JOT5uz&!8=pTx$IAyS^nXVHo~)Z=^_^YJ+vyw z{)TJLQuJ$HEmY!j^B=H%Onnm-Sk*e`fUQ)k%SkU&TvpdFGkyEN1?`@$+mt->>9($_ z%0qssPtRWe^2f-v^HpU8?^D0#i`Obv<7TZMjY!!zy7f5Uu*+^s_ffi6U_R8|)Vg98 ztz6w}eADdFtD6BIwoV0hnV)`SFF2g)@htJt-M4?f)ET3wzFp1z^Yqn(>YD*8`Y%82 z4cKLaZ}@!HYH*p<&4sHIO~E_0k0#KTs=H%%Y&||ty0)17pHAKXyTv!qMD22ORm=05 z02F1nnpR*Hbw;^=sP4s`!po~oS#S1n~8tqMKD~!_?`}Jxz*L#1o4|Ma3VL}Xq=;-vi8D+C zIUskxo6xcxLXw)5QO*b=i(21R386@WOkS~$Cy*rPLUN*xJM{c#JuR#so>q-b$f$hI zlpRzl6MQG-CSJAPeI{ubha@rfWv`0e``Iq)_cKwAH-%(J!k}V-QO=J8e8Wr}{cleR zxY*H+09OkzRs_0N#kkN}gcMF~5`LPEw`0dqAP{Uk-LM~@0xp!+DM+!v;&Zdy=(pGq zij%z3>=pL+A5Xb<^f*!A@ekLY_a&5`OB1g@bQ`~p`rJ^$#UK~4{wRrDUfw#<&}xR6y9SR)Vpf9t7jq<^X>$2! zDs@l~KdWCCa1>8%7vF4w#I_hx; z;ea9Qy$w?J$L}5O9FcC$qtx%8Y*DGqIkfon*^&V7soI*F+P$HCsuy5hp;$Sh$Jtk* z7e?ybuN$WwTvQ#)=~M=I z^TTS;2h5=BD5)}2otCLa~=UM^=}ih02I7DygP_d?$S%?&|w6L^l<-rfQ|G_EW z-(9Q+XG*pq`P#py(vTu>A!hY1pyHX_d+*qd2}$pfKN*K`T6-WvN4mfib2J`XV9rjA zXZHR{Sh*1S$$8Vs)hQXS%TSI~KQu^QR%Clj>i|TOYfjly`~912n5v1h9|f+?tT5Ck z*co?Bj>4}q>oodScOfwH(T$5$Of9ZL(r`y=x=%*mG?u$pVc{uc`?<5ib6^W53%_-| z)EKw51J@u}!KwPHkc{RK{)W6F3&CH(&n6_vzT=%?v4fzyqZ%ZsI^N}Z0848|jb2E-UV)qS4PbLwxU=PtNGHzzieJVU7P;UvFJ>jd%t?wJSE;l+zc=pZnW^*O zR!_OR=RvUwJ^Eh5RAq`wLY!B$gL75kFwq9R{&c9Lat6Gurb$>oraQ4CXZ;o-X72$u*D_s(PFdhry?z ze?87asBa^MV=u=J{cwfg;a1UcrGOGeUQN75IXL0~aa?@2Z6b2~JT`=sKiZQLi3@v; zO+6TmYl|%SCT)VyoXW13H;X{PSJ6 z2QhDL6Wn#z{ME$#3*PYMiSkH^+Exf+gqLj?hfeg*mF3RPStBY_~QY%1e5)qplZTlE#K$lE)(g3OoJ) z`G2+H4(SY2A!&puLmhRHG}(_pKx`{)BIv z{n&mwR&=Ac1t!tU7Zr@wlo_N0TrMpeyr7h-*eRb>qB3)70?sf3NfU#!l-uQYd?!8F&f|&(2j%I~-`6dZln#P)-5o`hL$SlT zRWsTb8=PUDH2{>_RYKjxuQaSvT8}FbR|44pvOlgZBncNL-pr2Zhn}em(Z?snf{=b< zU>ENIBnfQ*Jc(hUc!4p}WQ?vEkbWXD%jGNEI!sDX2UDj)5`A3~$r_PIE5*eM0)H}P zS=StzT636iA=garGlQ^A^%vK`fyw&Amjh}w6zvC3V;)_lB5>v+Wb z7fY8H1))f~vu3Eal)2$hW7W*-tcD)F&=Zl{MXK6k#=4pi-0$N$>57kAHmp=>s^eEe zNj?h|E;(N8Xo58rON+ekKyx(9U6ouuef;*saGo1_T=2aBmD($hFu+LxM?|i7=S&nN z8F?yJ2!tKz)@vppAlO&T`sb~h3-3(ZCPDV)6Z3|iSL8JD0wwCG6SE?|4(oJBA{6L} zx!F?v$>Ns7;{|b^429fPprn?)p0Kbk?bVP+{lk_Sy$-)dDHO@_Zs@4d@URki1{xkL zQo=$9S6v7We~#%aIk=ZWq~_`q#}s7hK>LGc5-}SSI=$g1f5oRzWjtpH)8r~;9{iNW z-%@nzq2hFLa7HQom1bqqSQDIlB%x!k3v*Wn0UO+AAq%U)5_T^_A+FybRv!eT8y~;c z;ChteKt=mm49*L{Gf~ebxh6me@1Jn7Xx7S~`5@NnIuR$!iAw+(hB&jSZ~vYWx>|ZQ zr}`7lo?|#5#dUj-_Q)F!4aJfvw<_EX8Pps-fra@h8TEyob+Qo4 zwJlGoh4m23G7{he&O!NDxVcZ_!B6{DN(XpVHvG`LiSr;UzQ>U6KF60-`*NakP%5%C z%Mm?m--KPuZUBOW0~-0UT{zo>YQeT>f}v0vdG!V5!&vC;e=f=To^3;Y^W=*DVE&+# zWE4X=^~s3KO964hU%A3?DfT4!z-uP5p0BQx-TucET;UB6Pwu(S=}nC+t69Mksh(1B z!+QT%jixvV_O)jcLZ01{k4(_}D6lKFfzacK6A!vghn&O;)^rNN9*em&Y?Jc>$wrI8 zec)8gYFctS_e5Da0u#zFi5t-!U@j{h*%%jl#U#EqEb~XTke!+!+b?`{t2&<7r$8T6_#fcV}-1CGfErAMkD}b zN0vBmHlB)1LpB}fq^p1F(Z>FJiq*UGBlyT*+v0Z+0kw%d9jmkXY732=VNPj8T4hLh zf=?9}oak{ytH6_@5Sy8NXT4osYQ0s2;x}{8f`2Z-hF#9ezX=?!upYpntTMD!vjV56 zp@R^HQ;Lg^N$DwH#rfzzVt$jV=Ec5*Ci?zu92e;w|S#~@s8QzckD9b!us_Nt6_ z_@!*x8&$k%Fg|OjTGjKm39U}=T4>>DWeA!p$t2bnI*o-1O}|~0#V3Z2^E@S}&ELJK zTgA1o6NAOx>4=bzo#Q&OZJIfv{U#;PTRf9{bO6`G>W^2;nd3=cN^cau6p}&XQL~`qr;vHhFpE_+T<%~Y5I+d^ zn^ZbfCOIEQHgVmE@wKVsVS*tfiJ3{X!-Zl zzcOGNmusbsa_ND?txDhL=^Xp*yN%gzCmkI4r4peMIbHiiJE>;_ABb?p5JE3K7q8dL zMwKk^TcxEHbbbb8=)~f$2WwA8Mk**NL`CQlUOp*ExmO(RvP!Uck%yo4 zwS9i+1u0wA-hVJ2E3CKiq1+~c|2F>2J^qVtKa@+}DYGoRlVM_CDjiABx+F=x(y8Xf zcs_2lB4Fu2Lo6sOu$iseO|1v5W18)tJlDoiqUGTp8k{T{^ZS`U}IjD=^F zkPVjQ*c*U_|B?5gSA~1*>>Y54Z}yQv>6Jh>;_xXK0C`V9S>a^N3Hr;M*(JG9oNg1K zDnr%=!~+TJ;v)ynbCVl^dsiE@7>l6)vi=+!xNn&)uS(z1@S}Y5pDno>lgUK!b)=;m zGy8A#I=!;onm;w}_hkFawAp+3W3Qp<+fQGfVf6njTqg!C9h^ z@$iKcN{+x?ohq)VopPm%jieJ($Q^NK-zNuVGM*#9Hmz1Qu3!Hp&a^iW`ct|WgF1pk z&i#98>oqWgR)qdk$10t?2QvOWRR{XcGXFjG(kkse4xG5>Mj54;1MpFnhzo@5a2TFa z*oYgPkVO6ZMZ12-E|BAA{l@?BAimlae-1eD3a;EZtbM;+5_c+Jx%~Vmw-HH#(Px3q zi}-Fj&PIW^#8g6^Gu_StrPHhr}Q8itfT8hB*jf;-7D}N~mPItq5AuVo6INiCQ@8*0YC3kB)Qw6hE`0pvh0q=5+ zE9`ZR5nbA3>n*ZeHWPT4tetn(kT-DvLv*YSkgRDFYj$;U-#WfSQ2WhcbFzYiU6|Qx z7L>Olo$vEqFt;;3^Bt!t$qHK#x3GW^>J)~tPvV==%GBPf+ppg`4$^gD)mMhK^0MJ@ zj*;f~`gx}OfDK930}SGWE3eGtGQstED;2B$vRlfU>rY^ z!N=cq1qp#88H87i*e+aHUgWN*71LA9-_$%QBxCnvDk8VfCmJd4t>)7q+Zak?7rONs zpMk~5nj6YE_P7n?Eh8`2!p4jVN+OAs#jAULgEEQLIUh!JxTcjUWln18DwBl~Cm(1{ zw}d@Q)+7(}j%9tVsCffO#ZrqiiA1;sB(&&(Mp+`mBsWNPFvh$kocq8oIWstQtTD?c z|DI7Y%kPd+Dt39Cxzr0qoW)(9S$i_WSjO?rWu+f%Ibx`SDtLh1&*La0H$UxwaLS2Z!196rQltE*M4deraCTVicyZ zKf%t5iWRdOW?~Zk@GTe`n<2O3s-V4M(%81&_r?#E z&k7r}5Y;J}m_b||u*-=j#VQ}a{pR^AFg9m~gnaXyAL8;q0D(lu0aN5faI{T}z07XU z_^PS?6~=f!dw2Gmn>AuFQ0@5E^(<|v7J;G*hYx#+q)uU{{E?@XEcSOl*&leLDFs@9 zZT+2$fCaQuU$l70pXE1Di?(G>e0i)e=PGRShpa05{IWFX8bu=pp%7KLCWXG1!iWbA z-+SY{8yvK7wyRdHO)+kNSES+PfIXl#^PIgPY-f(OKpQ=9S1U4!+;*ZkR1f1UIQTD$ z?5|S??bGVW`}OCyT_5d?GfH^5mhA9AB%}u-WH<0~J68N1$Do%UlKev&MgF8piaT>d zPr;vYRKhclRTwzv{h0qezdbD~g1Fhb>2uL2P%DSWgsb~J1Fgc6#!2K(mF2F7k{F@c z%?LTt#8}h(^r)J*|9Vx9sABTrnv%@RX@Zk^WOxA7y;d5B`(5MGh)P&~DaAR{J%PLrHpb(KlMe|&q&Hf3`tCN^v(l;NAw}yQHQV~bO*rvr z$PT<(u`o>PI^rVbHg#Rrj4UaCg={~j#kI;`?dV#tIpffmzmVM{y}c|BxbZ$m$ZU08eRo{O?(GLn$sq~2 zD5km<*`z+D{+q{*y&tz*8@kw;?-?->mYvi30xg`g#JgRHoN`ZLA2`xUsPCe-OR(%R z&S$`7MF68~nOif(cPH_e94QUx$UdxED3QWYxji^R#%#<6>XhP1j*0vUs`KZZD$^*l z-ACHv*}^K6iGk@MRrX-QBrEx@^6e2$Rar;I? zEz84o-hDVN-|9gO#sLW9NE|G3ipB?4Bmkc%O-Y;}`{cPI@Q8s=-t&JvnBJ{MKe{e+ zi)|5)(`2YCQBD-WBBO&hu|jNzy7IRG-X@i~Ht5LFOyW9(1;+m9&JBpSBUM20 zbs0SG)MuCR*ls9%rgaC(z=%)x3GY)%Issl8Vze2fXzW2bPh681)Cw&p(@Y3rOxOTye7*nRiV0|JIqJdCz z!zwTqI2C!X@2@n4b8Y9o-@M|<_xs=2l0mdW0cpJKem*`!&r{_7iFE6uz3TStauZ~xVCA-Jzct_w$kiqD)isZHuHfTlGGJuyFS z#3`~(j+l!8vhPuk3Wt|mB85BG160|$eCTD!#`ir$AU=GJl6i9Odklnhh)(|T81dpQ z8gONjV*Gxe@lzhrxiwkGV^o_3Lx{@s;i8LYhm^fJ-`HAXSi_Y2K9V?d0nua%v)L?r z?c#lFClXV8zKTsyf?8%8=!4xilGeJg2f-jpWrLt`X%`|cpgYKD2&XACjNTcK zgm=e6bx5nn{;hJR2B0i?>GMJ>>?MF9Dfkk_j>i2h%UQj`K4}Q=g4z9A6kX zoV(ThF2+D+=s~e(2~!rqyM@y%xErb$KK^9~FP1^2Yqd6JH`r_E#fgSNgr|#zT{6|= zG7|(H;4cZ<6BJfhM46|EYoXe3DpB%rv^vfQzLKT`Lthig8%)}lP0bY58nEk|9GC-@ zG*J>4WrFQk?SP*>8$n`4bfe`nTqWU11L0z6uw~`j7E^5>+L**m?Ue&_d2D1r$gx|` zZ}rKHm7kY8kSFgs<0tQXMNmZAzo$OeGIu>8z29lTy-*|{sJUnzzm5z^jlBl!)8F$B z_MUfRISqvH3e=0eF&V36m;9Fv#p{pr0ZQgT#FMbDZAR7vfV5=)NJqB76|bgLuWXxa zV_$C_F!#0=SCOVP-Sol4@M7umzt%cvX?z)UZajjf{WHd&uId|I;rA@lr*LjmwT+cK zF}xp;yYrF&(RQxs6^I`uxU+i(BvYdhcL<)($0NoRT~6$tjbdJfUB^{l9cebv+lR?Z zD3g7DMhrLR!o_?{oM9-DRUjRCo~3>95(?^A7i?3=5hjT8poBg@az!QU<1<}BR%`#t zqTzt}W6y-%ySu*xm^e|ktsqIr^EfMxNQ)+vd)u1lHb=e{oVU&e_CRM~Ay=9@Iys7C zuNcRgZk#ie36vjGPHJ*>_dWj0xmB*>fK+A}Y2it&rf9=_RrfVl;|eMI9BJ4 zzgMWyl04@5tG}1D>*05Ly*jhT< zg%D;V`9P6g(*u&QyGMlZeNM&lEod20PnjH6W7Mp~GSx!VWWMU1yz+4=LIL!r&Vh#3 z^T0JGlB&)#xJcX~(^2V%yWop|_MSVD!Mu8(QuQiMMg8uZkw13(^O<$p79i$BRcC|qtV++Z(?rZV1jxxPb ztz2pQaQ{2io@Y#X$gQCZUy+7~6}o&W18b2gti2^gK^y+GVbJrz>2^0P#27Uz(0T2& zX*%5XWNd``c-XwWRNrbx`ik6fDcpcxY{OxE1ET{Y!m2ZfdAIxT(8>~vkus*D{8E(r zt44=`Z;p%f@e*7s;0K!pek94<;JUPNxmeQ58SpQxA!@2yE||XZ#Zzo6zjmxN#IKjs z4D>9Mgj}tP9t&TPB0MjFR|rKD&U82-o9BHf%DTm~WbBSCJxa za`1jHb_ZVZ~$85;`p}tb-Nf`%vpz?rcBsMAkt=US@F3-OPgY;L4z{Sf#hF z{26BYgKInqrB8`D-eFOSeY%v{u-fPKnQu5zx`O(aEgP84I~99DZASOK7l{TOmeu0*qsI zMRUCxoZU4nUfz?M)d2nRX?+;Qyfsv^LL$kg?rMbquLY0lR3CqM^ zfx9aQ%Q~|}CfpZ8xZUSOYYc>ztmO$ysE(B8)Awb6$rQTRLG!)0`m8dw-cE1G-)oz$ z0(P2_*E0lIhJ*OboX2Kg6F33;^tF<(qYGFb*6~;oJ&u=);7E^i6x?TVkNhG&2S7z| z>dehJ27fo+yiFqCC^=xxpsmZzAEEHUPx}2p>vxw5yBF*VNP1&yc&^{xKe*oszdtQ4 zVD1aT#I5ZT8>FU6(=$=2BLO42rTUK9pwMMkZrP?J3NwdDSW3DhWd0cnTwA)C%SKzk znNmT`>4q03NB7;6AkXUIHoBLX2>E~fG2tn`)4FguL1A@PV{XS}{j&iZ=f~6jgCcxW z&M7h13wn{QX(ni#XH#nA zOhQXqi57Aht7MYM+jUE^EQgzx@ZGhzv^e4aN#4bSj_F8b+CjixAsj=G z;|Qch=Z5FtJtiHT+$jYF=c zT`ehFiUHH5>+@eVN+5%VBSwLO9eBQ%K3tK)DG)0?bL)YEE^X`HbQ6D`!A$~-{USlN zsr2~(3*=7%h|E8YjO-J=vaZ zm~2(c(2-qqzJK!#LNpV~^OujVm0JafnRnh>GKI_eI*Kcj&x(<(h7$57SXsNLn&~ zeo5GiZ-Q)J4ACVsCbMM`K7SH-mKr3NSiJeZ8_R}3ExXKonkz*wxqx%z>?WV+pL~py z?Y`KRm{AcsKFSIa@<)hGaf4ab;p=@buq+$EpWWYW$5igtd*%}R8#>U{peP_edpUtI z@-FR(_1SNw@x%MW?usy98Rg*yV~GT{w|XXc3QR1Xgd7SL1KlSsuN;`E(fWexzl}Bxt(G`a z{N{st;aFL+YBj%0CO@{u!Bv;)t4;C+OQ_yS#Lv1Ui7=XQqjSW3y4#o$Qe(JT_8>>d zVU%HdeM~1k$1vN~{aOa)^L#$wnp=q0RHsh&gEyX0%~escELL1I=r^95?G1jXR%>`* z_kL=(^$Ga1i=GFz4+5Lt%|$s!zKcP*cD5b=-6Lv>sD9gDy19r*6FMkWz5Z#*)%;cY z=8JK?6ffe!Vsb5uTd!4Z(|aLQJ-|7@$ixBX%APETUzK-G`9LD!p1c^Ae5^~IqcF=Y z(_M)+&V@FY-#xdhcCEEg8TndiTbaa&)hl(9NFH=3V_2lxS7E}!NMy0JLbw4FJ0g;t z$t(1%f1uU3aLYpAIoWIa^Ni}n(vdUok0RrS>T&=5_f!L(TypG+5U6jVYyQ;4YMu=9 zLl4u^;14uF)l&_R+IrhMzE&i#0hLG9|z%pc_w^RoMeFO!HYM*fQKi!M1YGF1w3uvC!sU1 zd!l;30gp6>b#E0wo{_=e@JLGF;Pt~b9=W_VWAo@QrFOc6n;K#@TXu|YQUbgy(IaDE zHMh$pGbWQl)+c%0zq{$s@7=I$A&QB>^+HnyWBi~wp=)58nb`nv-)Z)(8!30$k!P3| z)CJt;NU}01T_HEdPU^4ezE!DM)OXmN4y}q6`jgYA|)<*sVut3Ak34aU6 zlcFgLg!CT@{SQt!Y56i}TaIG(aqZ}m)%A}~yvJr^8_^`3ZxN3##` z;q{F9mI}fjcV-#o&7B=>C9}++G}RGZ)CHBh>@Z>y<126fy0HUTjOJeH6`|VMe%fmt zUGCzT?b-G?q#diG2omWm8Q41{97z+ZH&}h^ff;zwg^+#^pn+5b0N@uqs$Lcm4Ni8}D zyc&3TqSt<$tv4PY3;6)IrXQP95a(xl#5}lg03XLWuy34mBj@YSv{S6FQ6DFEmTpPc zl}D8Wh7QkU)NJZB7$?&I_=g#onri=3Uhvt--B(nN($7g_!pO;?l2sQKO^r*FhrLKv zXENS2^Oa}M_QQI*wX_p41zyXS--ie!0I%Rolf0|3O?8*ZpMQ>Fp4X@J6Z^mGxJw8* zVN)F(g_}qH!z{rfxFhimak^U@W+U=(6e!VD`2>R-z)y+3|yqlZOc$=guarz zn3EcNb;-Z|F`_jZk#wA0L$2ib{d{2RraHjt@Dw7jbe7(UcQ=D&!D>55~ z!XB9AkG!lX{q%5IgleXekYyXfh-Nr*UAA4On6aO(D14dX&BhiEiWV>k zXN!6G(i!d!0rs>}n*lCN|5bLQ6fh?;Q$%U0A5t*XMq!(msi|DIaG{qgUq`r-@V?nN`rZy9XYQAQHz=)U{v)b*t8s#My z`r*oPp#+PV!R4dNXkK&;M9U<8i3--S3gP$9|C(KUA0g1nNubvDCO!D}MfBDL<{Nw3 z-!Iz6fs*%45kE*b!lXq6`ACgLYQs^c3ar92$-BzZ`WTqB~oKO;8E9k!yPX0_>bVL`utESU?xiDJP_H}# zS7Gk*;x4n3GI|WSs1LP0G8@o~r4!#g1vk-B@r;K_%uh(0xe)J}?vP5HaY?_UyaaoO z`nCFR|Mnk)E-iycx;$z1WS2J4OJKv97DM(Uax^?DpUE~BKU?QO?IiMc4~pjc8g2c2 z6CUkIq6bb7zg?RcZFDKdB#~BsrV*i)Olg|75r4PGOH2gKl;BjtF1E@7C30a=(E`U3 zQFe$>n9nUC!CuuqP+g!c3qT9WJZNJNcMXVYzdfxP-Yx}lEWDLiT_LF_>Rh*Wws;lo5gbp5{W!X8Y2xy7OCi3H9X13r7 zq-8>HyGZp1ZRXq4dQ-uCzX^ucf`L>1U2Onfe}y^-XIG~;%Q^^ZD5a?0`xe$2>r=cc znN6^g$sqZ%%Q8x{ZOb!>=@eE>cF2RhZtvF{%q=Xos&n9)It%woG=ClIxg)Q`?#UE@ zrjkRKBD&_`D-w)>pt6iiQBBI{<}#G__;N78GSl<r&hK1PL2Sccrw|*{m)cO zjHnYwYFd2ux>&b$hSxMRmucq4JlZZMS-yYkw2r5W+$hnR>u1?oEdreFzd zJm3!Ft0Jw#kJnV_2^E%Fck6Xa{#~N`!Rlj7>i4(b zmRu5C3JZ-TpWm_x&$v=7?i?`Y;5orbly6f@Y}9*;;Y0_`KIz-T7GBiSSF_YN+D>FQ z5S7=AV6o7b88~af;a3^wrm;)!ctLh~XXL)%*=zs22FRTJxO4SiE+ekA$jc#H%5cAV z{@DypQZE2FAdOu7^<*4>rT8*JJ|qRtxxRW69wJ-{O=qy1-1TCialelGi*AV?O3F4X zW9y_DsSEeQB3GQcv1;?6kC6HIsWzVpJV@ZO3_Thyiq6JR%3AK3> zgJF=S!CA(p&-{+OsL*jKxkZh>uVNwPsdZ?2@Qg!D|5ocqk0YaafCR2cB`y%iiKBlp z9Xwb>XVeB1U;Mzm&i*kFC!%k`UMpf+2|1DP03~i|B!NGyERDp0o!u5EXGuOT1iswg~;3GdHLq z`@VP8o&FftOeKD>CVuh6&`-tIN#+u>SpGX`xcPp|nE}ZT| z$n!6)y>d7cj$fa(1(PD}m%0;~!HZ%q=P)xg?WSRRU#uM1=nTgFuk?u>Vtd0B;^W(o zOUG9|vVEkw$iBS`fAvk!aMw8kh6D%mp6m36ymdamZ+o{iymB0<-W;j4ekbr0lMp|M zX`Dz@t<%W1>`1lWFwaTA53EHa4~pH6iFQ!CGkHJ=+`ucf?9a@54YCd;KGCs0f6_MY zvaz?`eH_-N1%T6WkhnNXiPkh+Rj8e{nqHsA)XYFi>z9ZE@%@KT%DZ|2#TD?R62ksv z#BB<$Ne{NN`+$)2I2k)Y=ygv<=6)X++RC@@8YQMwyqnc~AAz1~9VrOD<@Rx_VH*K` z76;_ix)0=7+(FF|KbMJGn{qg8uSQI^SiHRt?wd${y+-nCv`i0QR$!B_4zIDlsg7unL8b&Y+R3o;ri}r` zTV6N0`PM^e>~8HOnHew{U+TnjLsDU*WD)Pgv3Lp++WLcuK)a_^^~wbhgu$DRxFS%i z^gG8O8`L=@xaRCf&%lQHpY`9YubEG@sQb>5rQ4dTd&*z?KQ_xu!LHw)-1#;i^mitN zCn*$wt)%M|A{2NM6M3c5M>)5LRcbtfqPUz^gvAY9*Rl z?@smD>+ghaOl`tL1rFZ`xxwo3jWU% zWBItEu(MHCN@I;3peuFIr_i#|8ScL7bo%9o5g^cbOzUTz-E*t0PQ_dGayj&MsnwQ- z$Stqvy{alK+`VCMuetk`^01EViqS~JbodhMG^|~Vyq?8eFTm^@7SOevZ#5gx0*u#; zziTK{Fka-`^s7Fp)NXS%L-N|imt$ZaQ5QlUBK3t#waBSVSPD+-2MPEjG}3it9wYKe@1Zs92wj(_{)P zeE0CP-56=w!Ha7A@=ukINTyo4ktSb0CgN~@DN>EzoWiaPEVPh`FXtaocQK``-i~gA ziaw>xqCaY3WzoN63tpFYS(~RV$FtHW6a98JLNk>hPCQu?B!()3GjC}O74rR=DWF&B zn#GwMz<6cQv=(4&N!oia?GBnykPmzgBK9=0TZBVAr~?X^+8o|~d4AyCTfk8>v*!vM zR(#Q5r75GNj|%wE$5S7dknv&xPLJzqIZ)Jbxfk%1c>nNfJyZ9sdd*`sZ2q!3{}kh( zytKu&_J=j>RYHR?+B#`;AC_3GpvSoN4oPJNB6M)32{hfWvc%%m$nZs}SleWVYo~)O zTJ!YNB0>9VmbMXZDs_6a!DvoUUM60qC`?|{nEA)OpT1A-poSMr&i(yecBeJW(Z$1uYbGcc?Wf|;dBmb-P2z6%0Po)h zJU&DGvhd`{n98mN1O9tcBqvXy){^u|oNh~j?d%sW4E{tZt^4}fYM~Q+t^YD?O0SbX z@oih~33+j5X|b-c(ws-_pY6LHD2>XjJH?vGTrFxCTFscCtL?m_5tYL(epF)a47(2Z zfY%wxdIZHUutIZd&T5oJCtk+F9M2ZP^!YucW_=16o)T*Z|Q@9Ykl z(FWudXgK4M2<0{BbaSX^uH}0p&O@){k?p(MF1XO|n_jHcvdl8R$&$&ERypcg>60TQ z?)tm;(|Y5lz(W%Q13o5F9_2r%k19nyVQhPz0)9}tkk2b-V7{$A@irXLGoa7t6$ogX z&2gOE2Fvau7zZ!tGi!;SxeQCa0AJ&t%jMGG5N=B{UXIFQRDW>J7i$hOFuc-d-s&oP zr_^IL+QzTY53Em9nJGt!X4?*QAS*w`C|&T@#s(Fq^;_1eV6gba@bp26BnpZ*Wh6Xk zL@P_%nP#AxRXJDcCV?-{4qa~{PZLuU5WiJA2{~qhOR*O2F0(D3?RH@DA@&l^4fwqj zh+wRww}8&4l?&fLA?f4sbAPbo$SWxkz>SYLXL=bL9LQ5W50gciQA~gP1?P|Mz&nc* z+RW<@+~4CWw&or`*WIkdZ1@0QFR@^bqDjp#vPAxE8unE@TP&h*%whkQp8%-+Vg4eu z@kk|Ct9WVsOqv7J+D#lWr5ud5iw}Q`)^y+m)u}`-s5uGn%~VL%iuREGwW)@fswtgG1^)Pdgdo9^K2%bko89<1LTc2a5&6pJCx=ERf!0wClbxm46C?6Z}@ z@WDVLwgDhgx*V2Y`Meu&&3FH#5b4Euwbpvl_;g6&r30hbm^~)>IIGbmQPm}r_Zl-5 z@V6aZz9xpwIp~qDvqp&sn!8x2_0JMLrL0%~IMltR|CcZM#Df6(Ha_PE6iExlfqj zsfnvU1^0NwM5f1y#`%r&4!y$b+I!%g}AtgnoYY$oCEp%K5GSDcOmNX^!P* zV-mH}guWv~5{mtva@6!{GfQO$MdL@RyeqwQ1Z^aEthA`M{l{@q3H4~njSnZoG(_gq zi9+o3c`AFGfz0S-7yy3NxH|x+1}j7A732Dsb9ttFKs|$0`{4w#4eEg*`ZC8n3_>Gl z_$Y*)*N6gnr`z%ZQ>{uLm>)iWpdfxL=u^0zK`;5NNMMiRd~mTB>YVV2D3UQDuHast zqK#rA%2S8TF}ETwJdn>+O4iDiJuG%|0}J=yb2{L#`#Wc5zs~;Pqwgl1$i+mMwzRN= zKh-9sziwnl&AdNpeH8Mz3;nJZFoB--|MAe|LC)1A&_)t~{3vlao+mq{p2G)}I|-2U z9*Ea;TvN_=21jjg_H>x%N8$KlPgBuco5%*+lEy*1{@@$Hl`hmHp1?wdQ=} z8c%aCRrsSNKD1c>MrB$DGEpQC$B{pdMBQ8mgPF$vtGzc1YBF8le(hx|GKq+Q43ch< zIZQG`gr&C7GDR7}Oau%VW&|Wagq9)9uv$r&p=pE|LI|^n0VD}YOBiGxw1FfdGHHT< z5d!_aYu8u%U{~#U`Y?vu@&j}ei$^QHMBV+Cc8 zeHO%ncu~92vlp^~@s{FFw@o$*ej=Y(4kHwia~=b7OPlFFFp!pMVQF7z1g1`x<0Y<~ z=iT|TcGrK&f;myBe=*ZWHWUagX7dEU&W?3!j0|F;K0_)!-n&j_J^Y+K76ltR_MeJyDA835Z>YAUht$md7o(y)r5w1DX-<=lGbX1 zB}YNbGFg6OAI}Kjn=z|J1y%T~oGphzvDWLnl(7MCk1S&aQq&Hs=FGZO?9(;jd2oA% zoVeD=7ty=s5>m3kUZa41VoZkdg!vwAk--^W%32HPzTanu3-(l;6RJyTlX6gnm#Ra+ zusiHbVj4Bzr`GO%8|hNMA0${K3)%GbLK&~`Ds3v}Ti@-h<+V4X<`q_K$V(fXjoCm* zw-6VlSqC?wju-mT-n?GT_6&c`gwUqwx2f;{IYxMJ{~a_W?8@In&%d1_etd4~1a|GL zqW`Wl5<2;6OkyPJ=X?1r?KghD#&5kQD(s_ZO_IH<6j{=?vZ2?o@uHLNYm7*PCc@Nh z!U-2Gr)x-OZQnNgn{_+ky7s$(A-1~_sr0V)5C@0RfU0tTg7*uTzinP)l4w?0=4_N17T7@C;JppGVC;=0&gsn zv}LXM&#_=s*00^X>BA#3S+5SkdD{!f_y<96EuUwbNV@vY>O*d%l0s(}7V%A?2@5zv z^0P%hf4>pP=bu-Hqt83eY93LUZ!*!fchBp|d4iI#n(q}JK(qcb@CsMEF-ZWx=5^v( z1J|Agw<;G;1A~ABZE~G>E;(&@BgFjXfy7W>av{gNyF5BA%4)dX``e=PwSrj2 z2@6!s!aJLLOBY8AlFqeEt&L}4Kf+tHHs7+xfL{2KG!ib=JoySFyQ41x6yy!Ys=3&xKCm!hS~pc0BLa>VI`Q8rOM< zTY6Ud>U`Vbbtjo4((CPwd97@;#|c;3Bt`2s8;$T+Bl&35p6YlOP^YKIITe7no97tB z8BX!$ET;_SB)V`i@AUzWk1T&|ONwvAIni9dJeCFn^xl0M{(_5FLOA|4{Di$U9zJgq zZN;{NpVovc9kDDUs#_1Pq`U#0>&S_VuxGNFj2cD3b7~Tv_BSxAqjG3evo8WMS-!sM zRWodGVq}obo_Cp@0-`bm)Oer!EVy*D!ir^7sSD9N4sx#2lN$Wc9bTu;{-ib9*7&W# z3^GIrih_#TT`q)|_$Sy}V4wvd57@PE1e@VPe7`R`d7#ITdTd_9W6PqQc=rJd~ zN;t9aB2$Z_KiNnUJtG-e!?0m@Wms;yn zx^=#M?yF!O4RlvTAr&fEl76Zr>3iQPOkF0 zUOa_1tZn-^A3u^Yyv104jL)vGUJ*jG;(>Mu6=-1lXp=CbfbYo#P$LGr%iYAXTLly~ zZIf8vm!cA6W1Nw0m9LtUAu=eMDB^!KfH?mNlrlik4K0&HKn?MEuQvjtn+w(Zyfi9; z-JjhFb0=V^f&5N>w`H8+lf9LHjwz-v``ed_I&EY(7QUu;zJvlGU}m+7poWNIQ9&}+ z+Gq%Wq^Jn3%iCtLO@HS=PXUNsKwm{M;(R{lFNK*gL>al}y(*v00`DG*aa}uRNu7pG zp(DxFD&~7a(nG5$c2ORDI@;JEPYUR?3M{7JHagQ0LtIx4jx_U`@PTfHE(~F z9siZ?@XbX3oWC`xIn4TWU;lHy;yNigfD@5?dkP)K5x?TV=*e8o4%sMFZ_+4su4$_~ zO#f|cn^KOIum(wCSoasziKVbnV5`tobmL96#IKeI;gn7jlEH0N@pd{Gu>$RLYb!3+ zGZs(7?Bo3t>@L<;xD#FC4HYs_VP>rMVO)cbjD>@=hfMnLc4b#b>wV%b#ZOsQLe8{H z^*D%V6V3np8$^w7MKe>8;xnEcK4-H?P+HF*qiXLE>h#3~Bq}Jf=LbKE+3UUd71{@H zL8bpPu`8vfhZ85a9pd(MDzut)>)&IwW632PgwpI#yD!=5mGibg&FFQ^lo9y3>`-|o zoCw%Hbq*BA30b7qoBVT)6Oe-kZ&|Z25a;#|cF5(Id0R&aB}qXC9H)O7``h*M&Y9_h0Mj`n}Pc z6+}RmXI8HB{N|Rt#!N_mcl^bN{@8ZoVw<4|FhUkD4KOrUjsP;pQA4uPbCp+aB*j02 zrDxjTzllfMI{BGg+RbyhNdoMwfJ!!t5ugK=%B6bL=g>SFz5zywYfnSRiOzl+&QF8P z`wCQ7B&GIF9b$p8HE@x5PWyZ&G#d4sEt20Ka(I7ZutvVmSitozS*|H$RQ7zO9@@~Y zjRaZbuzgUv?yN%>TJ4$0~0zTzP7AZMxL1c~S!LO@HY#0g7d zjr5^ya9!4Ap|yGe7y(gt{|`5|iK&q(o0plO9O;+GfqZIEGJ83~mSFTsks&r}nqi(P zuTzih5N$GNyy5BbR}9c9vlJ%|{3IMOY68?)udoEgu|jp+XXbP3D}2f4d7Rlk-K%`D zqmb#8pVt7`$}UK8tzRzzHG~!1)i2zBtnrH2(W2`OMGY@ zIE+w%~`*mXriOuPlWr zssg)*L_eWg5AbEtclp>N>Py{Nnj$$p9xjG9enUaawS3 ztNb}Z${t9Z`3&VlGxLV}DM#uR&8qF@cISS>dAO>L7|yLhm_{RQL*2vu2B`2Q6Xs#a z<&lTgR$wX+$I&hU{5Y9S{8*a%pI;)Jo z`6g{YHgaETYuxZp;*;9TjwF0P0Ai^ zHPL?I&QTu4#8>FtaG`&g(h6+ZFu-T!dZOj@r7?qGQ|qpiIK@Pq{D~**c9GoL-|qs7 z26qWLCCSXccyY+?fbLlRL4=oyO&AO+S`uW_?uWkA=zO1;TQ^d?ynf5`HAh9R9cWPZ zn8bpIP?V9>Wsw2k&JD~nQV)I!J32MFtDnCl4$26)|Eikk@S+xhQBBuN+UsC57eukd3&z^a}3FgDu6iE9p?FUPVER%JNi3x zw=PbH?;LFS&_+FdozMu8O}=?kjlzFs2?#wj-e9=RcS%0ueL2?rAe@$UA8q$MBPa*I zYlE=w&=|p0}ig9ip_ze&e!kCyV4XAC}j&62}hK)JQ=cy-yQG?kuAmupa8c&#v!x^r&RX2z%g|IJ-%q zS?$14!JliE4_mj1fP?TT7xN2tkbQ@#=**?== zkc%}ynX~T;FMYgYU=B7_sjMJ-$aLD1CABo`#SBr7D)K)#%(0j2vS?p!4FDH8H!WAs z;c&hePS;~NX6_wKHG}6d0LrpC4M3)5*$Iz~M`EefKMHJ(?@>hmxL0k#UwP~~|IxGr z<{gYBg-Q#GL;H;0Oo+cunf*gBb3nH=#anv+y^b?0ftkAc?2eM`u{_V*C$WT*Wh7$G zljSWga$W7{6>WkHC>$OPQcS&GOX&LgDekt+4Vj~7GVK$am81$9Hg3*Vhrx)wzMoB) zA&J;~_0FB)W0wK{{5Onxfp@5^0o->~1Jc&gML?_hxSZ4twEnRUfQ{7t)}tYEHg?W zaPeooVW#rApc1@CkDJZ{zj0SF=|li}teitZ0;~;G==bqj|6E1Iuc~Ow;}M_g^Cb zQl57DP}?e|m*3Bh%C=SugC8@wAoj(!Bc1KRERf=4WxK+G~4TkUHJ! znv@bn+LEB%xm+oE&3Hq-9kXXQrCM&T`zdklO(iNTD>j(B8~&%Vm$IWw%3{=&xYUPX)#gRArC6 zy$O%XhYf!J3DRVL)0$dkOw(M6oA&^zdr=r)pAAjx)4R9tpT$k~dl2R%18?O!=OwU# zyVP6uQ7?d}aC+X`(Kc;7b`FpXOJxcjf*_^~1)D#5uaDmVC!7V3|7FTu0BE*M&)cNuNFX5F< zX38n}*{+H|LX);W=g0jH+$_$8!KEn(ZfahN`Ygnh7)M|iTpzTNh1dZXrxAACLBs}= zP2Rd%dujIhlZNVcKj@{34_+UF%5P(oq#=4BaS7;bP{z>x&6gLc50f9Cn*nAd>N5H? zmO-Ya+u9^^sDj~|X>Kc9cm9T6c)JF0Vai1ft1_k-;|*)K7#}Pekd;BvJAU^9)vinC zjqpo1ot30qdM(`>-_*jY6g!bF1edc_+L6W(=>t>YdBMZOHo$(Z@QLw~{bV_BkYAKb z3E?Y5pv4kaUwNMuUgt~Y%2SX26#@9k(;&viHDb@PkxIYXAiB0Yh6Q5*WkhG$ZLyW9u=i=yNHnj=v=w10;_>>f1h>JBRL+h6BMBR$m=RU z@OB&O5%|yt-ZqaSDHZ`hJ@0K@hy2m3$GYqa{zi%}N8*OBT0&tVNIHGE<;5Vx7M{l1 z9(F>%J+TE-x;z}C@IYQ1IIUd)S%q2d@M=EE1*flM`*hVoDK|4b`klpNHo|LiK)ZP3 zPOM|Ixg$(fwvg45=%3)6sl22!v^^Yww)HDUlocrJoyFRkld)y+Su2yb_W2zFP#;_d0}&c;yhtOXp@NDJi! zNDd30E9d_cP{L%A84+ihw3@Sj9?i{erLr%Lcl@oralNg53DNlWX5BYSzm*a4g0aZN zr>9>a-|&yws%7X+)2Pzr#oJ(0)p<&m1-@nlI)AHXIyT9Dd)U!1l~S(;$Mr!=pmTu_ zyA%%L*zstRzsW<#V88TX)iOJIySH{`?4fsRrDP^`5Y;HciCI z2DS-b8dUp~x?wG*nD2p#S6#cyA-~GoxK)O}Vq)N4pIZ-=)uQ~O>VBWQ4Ss$Zl^BQ& zJl7)7LgacnrUaCX$>46zl)>L~0{>{$zC~7eL$fao$pz#SQt6AP(-a?)por#OwOGr|laiPd6weFZGRt+bE6lV` zNgFp_Y7TgZBt_qk#QrJxO#Rvet2_b;a%$(1eUOQZ?P(JUkT@9XE((ic}~&2$$MzwW6~wXR3~TfSi^Q#Yur88*GAs+i_olr zmH9{!5nQl2Hp8>A8+;n5bVRah^HADGj629Tg~#P#sKz-Ui>G@tj(;AI<5yR&8!9vCR8H_es5dMpyg0t)6 zSwcP_P@3zRQ_cgtmc{mfSvrSYP#yFeGY|+KF)9mGi8=g(5VTr^Gm^?8+3yt{ToGP; z)6p-6v`olUJA*P}e&)N{_V)2L@=P8kt#ZIU4+u}8Tzwf-1#C8oV#ke0T6LV!-)tsR zkc}JLe*c~!#sJdi5F}$7njM?S)hO^Rk0U}a4f5V2*)5*Rdg7A5bL;I8*iBnp4y%1nsUyW9hcNO}9&wtzK{5fHym3+~V&K(^@ zX=N}XpFTSrgEffKVG&&RN41+^@*-ISHyuQrZdnzHqr|BxV!iz8I(C)L!R0R;sXTT5 zSl)+&2la`EWKKna{4c!C1$@aff4{+ien96|5VEIh2<})p04HSoib$FAg}&4@F`@L0G``uKNtgWJs2Za(AOolf3ceDPv3G zfG@l5h5(C4<$kg4tzp1btc}sPCP6p4d%JTbk8{ilJE1ZkaS2-w@oQsptziKV&smas zDG9J!{@~viLgn9NcBkrS*FvPE?pip7C*`!Tkf9w(u^r)ExgRnfHU!ZG z3v(&{Dhj;MbXg}$^BtUu@kHm6nQh?}6}XY(jSkRF9RDN|8&H={9TV}8 zbdZL?*oX5;XNqevwS|Q2dJNvO_~W%oZRg9I zx+zj<&R#1jOwn&^iS|&REyJvLO08c55=A9<9I9M4e&sb()vkSgumEHM;T@XR zb&#ed`1z&lKaMZx&UJQnU`{*QhLi^K5(|&Z=8?=_Uev-mp}0J5Odz<+7z1%!lT!9nE!s~ei2xgUv{-h z;aRN!KmD-cl~2+H+ms>mc;^x|OKh#{sEO3P(q8Hm34JBNCaqKFp&2dZU%b!Mk8wbL ztO&hI=2w7M&@bxq&Kr=a_MeHXQX1S-Oc=ay-0nH0FL#v2aU$n(ewm6l7$~eqM_#!Z z6a3JnIn2NLGB$L6Gy-nTa3__lbT-}|GqfIi8)D(sxcp%oJdwhb1a4Idsw{rYeuMbq zrj+`OJ!^kZ=C-3c=+b|2FVRz|WZfgi&U_8osN2w3I@aP^f2L!^FdB4svL zvB_uFvgi>F0uIam>gvaB6lap|k!1bHSR*pQwERi$+kiZdBUky$Y(9O0&dQ0|iFM?- zM_Zs*;FoJ%Iz73(36y{Mb9poWPHjPc>+(9MWm+wRKGZD#RlPLw!jOU6wwSr2iLb88 zd9TXL-k#_O)&;;zyoggNv=R5Og17~gE;rhVq!a9p1C>(x0LK932s@1d$z;~T%F#Ck zCwOGeOg*AW@D|`cOmFVwjh!|nvilWLzn9*ab-4r#87^MP+7`~90K=pz)=NL$Y4_DL z6Ll~E=*Z`c#EiALNY}_p9Y#&h1Mc>w>D`v1GkoB8(w-rv4K5oBghWs#s)%?PTBXd? zp)Uj6iMi()17ivqg+B+x#2cV2OUq3{G63M)bU#%JvzIjTp*M)_qiX}m$YLANs>R6X zikK?=b>8ZY7t?w>HR7K4X3TK=rX?Zxk*4*FGhC;Zj;V`jah>w1!N3b3q4NPHgozul z_~wn>`KA#SV^@aVA2iM~f_DwVesI0uBY)dLZheYM4sp@$!CO4{z7@ZsUF3KYIHCjZ zqy6Do_30#{eQ)^2yVr@Gc5(r-gV}?snLGyTn|(IAoKHaa-$lC3u@y!cPh8 zXnjBOiZB#Wwx2mN^EqEyPZGqCN?-ybYe}~pKG7IcT3S?HH@=p zrR{=^&W`{NE<=8k$~$~^O@p4kP&X*Ndd(OCRdU!sA!IS58YL@ORF)LWVQzpez%`#v zJXCP4J1BRlFSB)fcC=nmVEkt^r#ni6F-3RoQ|WIVWHiORh?k%lQtx)}W)m$1grIF@ zb-hA|!s^SN_Sn{GLzLLG;dF>)=?hrp( z^f}6J!G%6h(d?%Lguc~2R>D^Ncp+^&=F+OGRb3v9+cKA{P^e^3b|->+U*oS%?P@vPAP4D|4CYf5lpsjY5@GboA)~FZAaY$=^{Tgjta#;s9}cj5DO%Z%qD`4OEUiO{yI+#&^F(jXmwZ%Y`@Kluu2Z9S>z zrArB0HVWWWzyxp(LA~6k;JUvc6sa| zAGm{XN6ceyPB9Ru^$D7Nb42kJ);_n|wF0VC62P{Yqy^lYe3CxV1ufy|tfF#vLfvbm zZx0cIr&eoPa>L5wX5FZt;MBa6LZbWq%xT72!-i47eBKYXBVoX}&4J}f{NaE#Y zo1b}E*V=hoRV5hxNDvKl=AwXr58a>5qX4=dnML9CtY3P0Q`S0sn>@;Oj;`yVwej@N zyuDh}JQ)7)te!sP(D!3 zfYp7{skc}yw;6#!yXDi-rQWhDIaT4;8i^hx%hHLzF86pQbw>sH10TFiiBA%|O9?1q z1{!+lX^7?yH3kBl8Xf7Vw!;Y3U4F%3RyCojU4sdaMHcBBd zNJ;13H8S5mn`#?X8_?&hLKGP9tTLY*U4TTLjjoRU&vGb7rL9m75VqF3%3DSgy#c;V zh;3$4Yo@|}NFlJVz;pcNr_c)A2%Up4ns-Ne_yVS4Z_B~?;Foe+0)m9x+8a^drXK0H zuP4PrVDn2`S;WQQ}pQw71K#V72hmrdb_$P51h(mhRk+ zUXsEj30hN)wU1X-V2;Mu%(pKu_H!MIRMx8%rqyQ1yN61HNsO`xZV_m0@kc%=mtrMX zaXOQeDl0UYq})dGW(TWPCtPogd((XR8X3EOE(?D0w$)ahH8&^UckM*`+EuIwv{4dz z7c(^3GlqAFZmjK1+W;KX096)LTl}HBQZ0N;6Q74Oy8yWXX;;X=!%&;yEArrAwP`l< zePS>o7iT1YtqBO~$*L_VP!2W|#f;oz2iaH4RVSuV12yk_`55r*4UOHhVNqMSXYOdK zBmyk~LUL`({yZ9~IVrrtHHReBqk>$sJlkeF$7GS-?#x2S!)GX|t9*}~irWuU2dxza ze$NDderDq_5Gc{Qz3Fu_2P7qMaGD8z;yrWM?B#C6)n-?Y@`6|BP*u1U4cu3Kd#l&8N?7t8cqn?&J4Hd>g7D>SyyW50!qq6LeiPgVrcksF-Pqa4Z57OWlW8ZOJn_ zT)80s48zie#9&opmnyr8z{>!2{O<0ToLPdatg9*MQ8mIt!KJ~pK^sK?Ggq_ZsiJl9cYMB$pgPq;Y6EsOhg$P$km}hAS z7WKFoW(87K2SMlo?O=6%fFU(L2<{h!gB(nUHA6W;>h zn)$fH-Oq1^lHdg=AQ z4I2$+dd&o+rBm77RBo#PXr;1!GI>*1s>fg77X%lX;hlRSAwWBy5&*qWgn>JlMK-Ne zym`&e@v;S(R{7ehO1l~X=$b-8E}hfruEUbfA;apIvQpbisG!WG>HchpJbNo}_SR&a z7XWR1KMP6Zi!hQr(u8L5x|PrUF9?$V5KInQ|MaF$`JN)af)~YkiJ~~)?s2x ztt;8jlyP3)fD^u9M4P5@V~j(=jvw8a9`(PmTDpZZ%?dL(mFD=efau~_<#mz*$50kI zJ<{qq^gB75?C0L7w`9e9^86%=rTO) zX0iepe>}}O9V?!!V1JqfBzvCmNtrxS6U?f8$Vclm2}O7w)C0dOdintUW>#p%KhEsa z>7!InckE6AGZSaNbB$y@J*nw=n?Eg4c>#UK?!*X_wbG%HPLGKQZN6Oi&{_m1=^8Oq z&Mt?M-=S}iNsonK{@3(7)1>98sL19&ET5V^rd|4U@pl<9>nA#6UzBSk z^9JtB_yNNR`UE2|dcOMR<5jni+}dmZ?VUm`SbTn+%lX7n>_=_%o66!R_anY3G&?;S zMLeoD^%S_VaMtFQ^ADmb?oO{=H%dgePOZQ-7|UTE_1QR&l2JF}D9IcuDLR>d>BIZ> zqcM<(h9EV9M;Dmr3N=ESHFBGdXw9e+C;kn5zRR~=8-cSfB^AG6x@euwd>ndqBsqp# zN^$JdebH0RNiGQX(o+wq*%B@tI7n51eF}|4F(~EBnG(hZZueKOd4^!GgEP;sqWX%W-PD{OuO0%HwmPQuVk&#f{hBolgU2P*@IleTfp4J4wOBtGfe>Yqn2r& zr?vnxgeoZ-m>swSkiCsV0}LjfZh`ia1vhGe5_lr+vzYx)ypW6T){NqA;9RKF z)MUkJ!YmWdYw0nsS*x#E_% z>3`FMRIC02@dlVIjK2F@J(DWXn`z?iLH*$ zA2L#ozZYm|YzSJgIPISH`f@()cs6aO9#8=R=G}g&l1T=_-N3Ufpgu3tyVIt_@UzU5 zpaTu`i3y5HBMSN}FS5Q4>CL1|T5&pe83o+W*$Z~r6&%~L`n4Xgzey(_Q^9!)ms?xB zNSWLr-rF6qbDr4>;VXX$E$RCy!uh~wCNgTjL@s2>hh^9{I8N|TXYtFN{p`E^aIk@Z z?R+#JYp8IY6}r4yGCLGiM5jsN0;4-y%q^{HQt7lewdqvX+7VaGW$$j^FQP!mg8|2^ zWNI{QV)%=_0>(%d>oE`*ZIQKCFA)J@NmbmYuL!`uw4?R(Fi7t{6<|ZvBRM0lSfmC= zrA-KCxJ(k;>1ur5*txeTpvh;K$LPC~&i+)-tuXDv%`*0Ds3-^&MEx7efXzODS>{`7 z_w(Wz{VJp&1hL@{6DzB*?iN~%N>m2xBcdbb91J9$1^hJbjdw2Zf5RO=kyns}syyje z=|P^pTxJ??ij9pNA4TG3VoN+$O^+_YGgjd6fof6b{}ZT29wx6zX9i!DdpA zhW$_6Dm>jBfeUCgZhN=TCwJcQg5~-AG0{A-Gfw=3y@@PDMbY@>STQ!JE=&(*alNmq^Xzfm9$9RUrL@r#HNn-@WoC~!# zF_@!VNjm!&e;eqx5u7i0;oz8&?RSx`h3@rfOs1srHCiAaCE?~Tbs=-O1>5oh^RGT7 zgI553NqAab_PYF|!GKn`#_>G7x7KTiT$}cUfhSxVUs+(kEXWpM(cv>TJgi{s=u8NI z$cNOF0(rtt6<)I8HNEG*kGT{9DyX6Aa!Nm`=5Cq9_Y|o64=LZMV7Gl-iHkAjV(^*t zWzA`v)CpHZpxgO+s6j`E8X{{jInt5{yXg9ih(P&9DEHM{b`l&U)@F#JUjnxspI<0U z1cv`!vz09-hUd8XjPY08u$3aQ?RPK)cAW0YiiJeNcO`o709isZGWk@%V9LJMYrY(v zTNKL|VfUw7YuyuPla-NDjcYBT-YK2YZX9N7;9fKHnICzQcy!n!u-yGOKdE} z)t57Uc}Jv%(5|$bF5-VpAl-$+lUB00Agv&tNtJ~A`I!bhORQu47TpD_>?|*nMN%w9 z2TRG=J6CI*$gB4e&(5s#&Yud36v7lSX5!fcfrQ4na5pVRr|CPNIKTidv!hKgZaHPX@O*wjIArzI6>dAx9hk=a`ofwu~KnFA(W6 zc&8=){-&DtdF2xlZ5Xd?0HLC)gK@AEhiZ7iE}k#nrXz}u@nkpLt1mXIpmHqnH4=H? zLU<8N&9)P5dXM*II5d#oy%`yhPfAD0rwzhJT2bZSnp(R>aEShS!RO|t;2#hIwRB)m zc~4X2!eQBwsK7<%RENz;R(Ra!93DCZ!&x2lH=5SR3+hBNp1j)PIzewuQ?5TuZCd}j zc;Wi#=J@1_jfg1M>d$oV!QQXgpCfmX>-e*)?%Lyx{5Uq)`g&P3L-Aa+Cy-a6FZE$= z{Y9aX7L|Q3fWU5SB^`SF6S3(&Z4%0giVWUg8CQY17_vN2cTBg8}b-0C3qwAt7N_mM~RDI6;1%;ck zYz@sJnGC#hJuq-~Av)j3!wN!8RR8-2**#V7UEp~QV9u{77B^C5wT6uH@Al3O-Ac%7 z@Az}_CgXOcuZHL#UV$22Tp`#%0so=C#g@y5a7HtfOj^StJ0BZi7KCJPAHDD}5mWwy%8TVXnTYLQa-r|vd zu2EBj;!aqg!JGXR6X4vZA`)TnqT!E?E%apY+sgn{dL9$u3`|n^u9%?QL0ioO+V z{DK?HY(cCB%^mN8Q+eKAn*)>`zY&Ut!+_jt?JCPDWZ>nd$9;MYP%NzWx^y;;jmIrV zx6uMNW@@ia*1?{tt<;G8bL_6ZD9VOjZNz65b_n8^4sI z`+M>h6}w_;f>9rnJ%ha%ex>Y|ofy=DdFa&kJA9UAfLbLWg1E){qU_7 zw{c#Up3Po&zg>t_V!>N!to3<4RWLA7Z-HUeiLop5)mBow3q4?gt)#wSE%$lG#LVUHcr~rbG%{M zLg#Sd?R@ehp&DO_=3SC5jQV2^^@NtxHn8`%{w+JhGLl|EZ%c1ywS4Yp=+qADAUWc? z{dC;7t$1CX+g)8##v8=2xA!!P(j~LW>A+FfZ4V&2DQfTt4E+tk(*4;~bd}b&TY7%6 z&Ml&cWOl<_d=7PnoJkfdP1;35fwRf|<1Ebs2$;jrC$JLE|2tKp&dS1toJA5V4s*Sq zk9h5JHn%dsxR|Y=Z^cX9T;pX8cqARw1+Ygv=$8FCJE9ad(nkMTVH9^MU*+OUUcu|7 zc=jpb4So>)$arRxqME2FvncSV9?f2*ym0GzF}c$H3-+NSGuy~(5`0@i|R$33j_QMZ>F=>0P^@1(=~SMF4t8alToiIOJKM_S*-hzel5oBVS_v+ z*9#cDOQDo}Y4D5YDEJS68`)&z4Qm~cn}@dvuO!Wdn>gN(kg2t$@aB;28H*}K>duc2 zzyL6P@psPOrvYel)nW}7{^O$1WX3L=lE{}Cob9SP-6@{96^RyM`*{qefM+`4KM0Iz z(Th+FS_%-tC{B2i^mM_0bhozQmK+mgLcH>5fGhC{PRV#+6+MSO2~VrmH)pN8lF~_-IU+P>a8ZNi!991_~8xR|Zrx##G_r*@YI3-4OrO{JNvDjJ;Um;CTWUm4?&KtKE#515e6WxY1YU z7Et+pL+94m0rpkqw#eussGTT8!r=Bk$+1H7uM1k!bhnkEZLwXxm#((EwtJPmd1bq7 zHX(1|gBxCAs8ILzpq>0~zNuopmdswbz_ePTho{9G#hYT2Irku8@ua^|T;^q3o4!OZXhP8>`+8$W}f@@P`9s1_z6c7 z?{oN5J2iluXC?!!YWjpd63TMnL34NEN^2@V7XfpMV195dCn9NabP_%V3E_&OeKc}Y zE;7mU$OQ!EWrOhF(?V$dhW7((J#xPaJ6&B8aNaL3@U=FoX938hU>~f32>IAivHocV0VBCqB=AVBDgrVq2`*%9l(O$US8?Sp^ zQ2cDQEJ3>I?w9a|1|-~KDEjPBw0ToxlsJ+)vfFh z*nbus7z)Kp>;x8nj4g{>Rq5=d&Tc_&^Dqk=9{dZFC>y_)Le%DGPEYsDrI#}jpnJ&2 zOLU|4y_zu0=Bmlq@faqv~vVS#*}TPGWs4hQ-{M&)%}FxK!@*%R+KzD-8_H zUNmWTqL0YejJ1N)O4+KpKr@$`7#v{c9Lv1>f2pea{d&yxlqIcfJE!gl$DZTeLXr`1zDmM*cy3Wg0~7+2E2kU8Ct-9031q3Ofccg=WfCh-5l+aa<+W4uSic#eu4 z;T1b_NZ|o<@00I;T$|_r`5ZaQdyMZm{|Ny>A?^WPCwYz@;pIJgjF*q^*fH+Wcewj` zj*0P|I<0f@xVXI^|CtyG-Fx?IPAFe$8L;djY>#NOV7Y$W@YC*cvw_iQd;(? zycYYUt{&HbZ*1@A?CS36ecDGNQ>e7zzh90_P0!5E%`d!Jq%)WwR@c@yHn-SccfNh! z{Q>;^^>4e5@bLb}ko^zC{y%nc2jR%kW5;-p@&DVdBS&v@f4pMH_)hB_KXuWb-!De| zjPAV?5|{4Rv<(R;>p8F_{clbRN}biGtFZrV+W&3Y|DIu~|0&D6~c2TUth~CgjI3w_Cl9s0}0+d#uxq>Ym_6^q19kS>Ou_Y>KM%c|UQ{&po8eQFy zwWThz5ErT?baYkN+bk}6ydv=T$R=wZOjYyr>#_E1*r(7MZ2qCWFL~}tmGp_ir89s|3e)<+X1^G8wmF>>4$|*n{t$tEWQa zNVkiIO>D$mu`tpqUJc^<_quC;pNUtZale68!mZ;KZTDS!a;oGM4A?TBQKBqjm>w}5 zOIdgqp;Jt^P}jl9d>9p15P`jJnMnIp02Wgq8ILKV>?HFD-(j6t1tqXl1V?+{Y&%+%JjWDp!!4kHpN4kXfr0iz9tMIU6hnVywde7=A6kPFA}8|~ z{{HYvq1UtLGa4SGUplk3(;tKOw9*VEg5}<%@Y7ijUB~8)=6@T{}R2^6IdtP~B^dt+& zY2hus_VVVIc7{rJOtFn7%75Eh;5*)Bn9*im%bIPIDfD}t5|I_RJ(!gUrh$1D0ddN} zF~Exf$}8y}-~%#h(B7~6y;kf5X=xOZn(f3J)%4tFQKv#(ZkmV3|FxYcRVH^K%RuPr zrENPs&mozLtAeu00eSUXvn|E5qoMw-H%dE-m=z55m9PD_a)a=V8Im*2ZyiIKZDM`b zMyg(%!@hJEhk`CWk4Sb*s|cN{sdT3JMY|3oZMCT@czcRJtE?aHzdhX|tb$^+9`ZOB zXjN%dYFvgP%{r{~A>kbT{n`O2u(VAgHXV%Xg)Aum_vs=&lw}Y+lA-;j-$|38|!@k&1`ZOWkLRU1=!eX^O9M&am%#c7asf>S!kAHKl1#+6t*s z#EfB+Tv|Rd_i^{I&XSPVwD}Q9OSNm2Fatk#9qP_Xj2#Fw+@wyqREyse;amcqvX$vd zbs&!3a_>qK+&R=?;M{=f zQS5nNl@rq#b#YmoZJStRb;MZ~eAj>Nk~c+6)F+$s~@- zpP$0#wd7K4yG|g}w;5*R4f+}iAgd#^5xJ|#3EE$rlKWPvp z4`8iWB{hve>K=9A?CbA}W>bee6uD2B$9IB5aiNArXQrkoOGEl!Uztu1X=o2ui4rv~ zP1HEo8T;$La{)~cP3AG>idjFa#Not3qC-Um&fbsUt1Uryc!0Cbp^O+5UvaLb*Pko4 z(*GJZvpG|&fbK1j>1#d}w=p|1ID7jpPVl~!{(3eh>XFqG$kUN_(sZ%p)oU%EP$~S$ z^Ggcz^9<*ju*E1!K5UfP@57%gyueW?wP7pa*lNpkTsk@i_GYVRKrNSKWCV*VFU)C< z&re?WVl8KUyCZELfcJENxA@BREqO1o%m!O6;Kpn_*I+0%a%gflxy2x5Mf`AyM^=_d>9Y}N>y{>?Q#xz zSWlV{3aY_SvNQWs8*-q94q&sV}=Z40x(u4G17kVGK=l@a15 zBYJ6c8%XT^V;z;W`;686tijdY6Risj(MP3#V(`$Qc=*!kNwmCZ?ut*23+(>Xw?iI& zRKZof;Y8v=&AGaG!=mnivn<#>>cs}8IP}%&* z)=a*8I2c|nP{!EtRDn4>X){LK9to6fmTMorMzSa5jkc9VXhvMN(lnu1xw;0_ITv5n zXxTHX53n^Gj}l0KMF^a^`7vVKB1*`iKqY8F*c_WlaUS+-Ez5Cj3KAEwAgVcS7JkyC zUu>@HWo1&NSjxahv<_Hi+J?1_Hc+|{8G9ghc~U@0&FsS7X*LFa2JQqGMoV)agP0V8 z^&oQpdthp~T&pMXS^`n9x1!1zgVk8ffE%DAAbv<_SVNOHzfcx!b#hEeFrh$BqH!g_ zE8ylK4{-^)|8P5dFjAvkzpk8=v8vH_)xOfFsWGR#f#uXD5grsX1ovzovF&HG$xTv- ztw9UN{~kaSRC>r0(vrVeO^URm*Jnqz03iDKBj&y}#W1myddQRW>sDPO+L#rwC{-Dr zgxe@5)>ktMk5Ybp$vgYBTvMP6AqU*HD^LWx{5hHuS28E=XNBt?3r;Ogl(}rD-cmM+ z$}+Ljr#R47SQ8pA5Rn!qDGp?Y`kGAkOnmUi=x-ZzR&TZo-cg{l=H4@B@OiN&@WkaAl6}2P@rBz$O_U|2RJIpu56vv*K2x!fuMfv>g z?uSS_5lh_?tzw&Vs%n3Sv!yO*wT!fNM(e8w_9obOsyK?k(P3*vepy47r?ysS)n>5e z`zKS&nG6Nb(0(&D%SB&^ z|E5LV9|-#GPXTmLPGTmxK@-l$wj{w2)K^fqnPfSDKr6S)(1?Rdz2i<0x%!^k#mlw8 zgb!Qvaig27WlDV1xxv3SVP-v%Pqw6!6=%DWE{2=V+eCLMY}-H1(73A6h)Gf~u-NZb zR;4(PHkfPwwSv1s(tGt4??j%(Tg%&)AVBV}NbAM%a>`XdoW1_m6t>d8H*w%x@j#2E zK5109u=R1n=1h_Ls2Yuy5$3ez5FgrP>NZ7rX>VHU0o2?JKOCTQ^5pu~ex8DRy{RPv4J%ID|+@$&}rNE!gEwX7!8iU9eh?=FW#xXM#0oQKGa_u7&|8oPNQCnjf-)GM{-}y z+0DH_90-yyr1FGS7X-P1M4tCob7--uGY*h_IYY6>+s5h0z%SdJQwJfZ8B=YroLvo%>{XKWT12g$WoJS+eEH8)WJI?aL>eyw)Y}+74_)d z&sT`hOI73Y4PQQg;#jVjN>imL2-XIlsQo*a8^RpPA#=C7Pn3j8#9G3)ew>m)?B+G1 zHaFejSE{aW=}cA6-W(guY;%I>|E&A8?r2D%bw1s%s1X#Dz>gTH*fR!W3rO@DB8+pP zG-&7MT)24d1d5RhufJBQD;9O*b zFb8sWbslIJAe&B9z4(mfLst79uC9qZ!xj%yQkmk|6U-jfhPmH(#!z8FF>voC`N=Pz zTDm52SmP@sTN&IXPd3@FE#dLYXxDd6SUaKIS5jwWq%&~mVa1`2ZpH2io*lwS1v3|6 z>MYq#QPxkVMFhF&giVZ2Z!`XT^@}0ClwP}@kMSDKs?gD@*soNx>QYdGie(N>6CJfF z*RXP((GLsM`My_xvs1d}QwQV@c}Pj99V;x@9%Go z+Rb!+5gqw8ocB#J3OO?{)U;8WSh;ksHf&M!o@j?3cZEORQTNPKWuWYjQE3l;>tZ^# zY`vBKP6X|+8`ox1x?3!aJ^3KBlVC2AJ{C4Ngrxd!`fa$-R@xrjI*NKXQVCadD}|n| zv#NvJY<}38AlTPvg>~NS%Ahbq{Lg);v2vjKX?IZl8te(q&xU4d3W>G_N4wzGX%s}4 zVeZPZ3@}QTD@kL5WV{zR&MX8eN(e|AN(N2&&91Rk^A5y8+2wbh^mTWze+&KfzV3tJ z{57-Z@i;(knEXT9dCr|!M=Qi_Dd~j_#WK&+Yb=Vk8Em&|8G7hft75?$nF5v&Lcto& z9h(95%N$e9{`G;~-#g+Ip3)Zh{rps2{s=O(q3>%$1HIpkU{=W1Vw}vOw92PMOuW^{dHW(<)7zYGBAPvjj`A z91;=-GtN8Px-?a3dG)CS&A0UpMqJF+snIEK!(Y3s&p>T_%gTGI_zw~h@@HZFTwn%| z1kbf2|Kj_fZ<66?hyBXI5KvYwdz9>b0Z?z@__HmuIo52!ZF(@}kmuyVR8Ki{$W92b zcI$Y0$di6%YGUPmPj*ct!h=O@>*~n0=>zWE32X!&oSTV9$h=*!S)?l2%Wk|xT z)p#wT2uUpM7Zt2f$*4=Okwdu~M8BEF${=YDbq;xKw-Ts`aFDVN&ctuSm#!9DZNWJU z=&&!42gL^i5vR5Xr0(eb0mSTqm(W`5E=u`4=5w_<`&~Q7G~}C9n%!K~xtUz8j7Fo~ zs)F)@Jib@bBwG}!$aj9RL|nSaoG+bXaeEand>LgR z8264ao$JtIQP9nL_T|k(COFGXWYdg)E?EQ!@R(0N!i`O}fG#=$1bm?=3Cs;BCcj=1 zW#7&_I1?^co%!J8uWw6|&rAQsj=1KIC_p2Eqr#hp123qhzk7v4ANbg9p_2K>!u?L? zP(Spmnu(62FTees%8@nt#Jv9lX6x8#6Jy11M;h+m13P$BM;UY(b}pKX=u8%Qy@ zlVb?@Fw44plu!?cQrZSTPVVWA@{{ueF0rnA|HfLr+chDJYN7pl67%;Nwp0r%=$EOw zCEz?s-GAJ)dFGJEo-Nv;d^x#o;q6;_*W?WPqh)5n1e0 zhgCv+7F4jlr=6Y!MlKR zD+T;mDGRT!PAXJj0MkZ;@2Z>enM~9GJf5 z#IVJw2Ra=yozFDEj(v0AjHW-uCs}*E1)tjN3mmnET!}b$lyTvPuyBHL66U;f@+i3E zgRI4sf}yVQ&DobX$CUWDxzXCY24^x;QEjHSsK&eWY>j)KOGl+`Q}7@Kel@RdZ%iqs z!g*Y~YyR0Nca1YON+(*OyZo~L+VFmYl`Bh#buSKWSn_e1{kIcRGLKvl2?7_o4^yR{ zPJ=SPgVL)MSrUff29tBru2b*;M#{-|??!J#WIWhx2_(8xkG*U#o%XVfe&9wuWeKkr z+Al9XIgKa0YI|ptO*Rgzu~Qw25tWx9?A+`ff3g#y_ZPnLe$i>KnPOGBmfKaMxIzh&wF3|)hu);30T3Srw zh7~rV7eIwHdcgU4Bt9w8bvbw<<5x2m363wHGVl=t0vMp|cpttY#`eTwk|nUoyd(d| zi~*qqw2>^!`a#n4p_^sX?F7Sqcq_He!0iZcT}4E9_gv=mqXgcDx#)#W4F}f`M+Jw* z&X+*kg7j1?f*l6rj})^%!M)rZ^C91NZ1rlqE;(tB)LF%~8mmo!($PR;@w%mmMwB`s z8wFEXn01l2)N{yyiBqo8;m42XL9B=nS1m;bn*XFf#9!U22x2Fh-`J7J&QnW*I8uCB zYK=~i0M)^G7C%i7Nb;F-bYT7cbT%dYDnIkpv#zy<-|S9=rkvzxGT!DJ2FdB%NB{Bb zR_5(vhM@}O9^Nmb3`4T^d@xc z=Lb#eg1wdw`gIPSAqlwD!Rx9lMDF#T%$13cHH_yX$>+Dt;L``Xzyt}gxGdYGZyH5) z@zzNJP5cGDSDWU@Hp`5^6Z01kJp797Pt|`b6bW|fWo3M)Jw8{O+@7&to&Hk$)&A8F z2{*u+$gdx2Ty)%Sh`Pc%q@D~kwKrX-+wpnmHF2ZLu;&VaR`xY;w935%+}PTYhZ^yVATKa`=>x$#i*&wf5+$y?-OU6{&Ks*w`P7!Dm-!A54q=60!O3QOtv< zF>c&vhcU0cj*r6p@D`Yldz_>hZpBU^eaU)YT?2$u=N54bV7u8BcJqBYRCfD7Y4#g` zM_;$cIo9WAe}$Ld>bN6vP#JY6ynf4h;p@xU7P%QbH+P?B3JJ@1OHx~D(}&D7v^lwB z-DUbvWlm1qc*!Op)Q@|F5>xNDPt;G6be4kAH`Zma&gwV5VU;l6$V%l)woS@c3*nhV3dZI4^H;YS^n6u99sLsV_3{0 z1Fq2EA0yM)D~Lug%mkl@xrWYC>B=+(qs*7AUWJw;f@O^lN577gU12IpW>tpuj@>eA z2Ju-LY^;8>a->+xI!azDIaOjb4XG{tQGh2y3UP zlLYe#qD6tv-51wggT3s@?4aXyf-+l<L* zM&_ePqJ9W$V7zAvEQ$yQ%L54Va$EO9{MLYE)%tFNokUB%5^c|=MC96b3W#G#x3&W= zFEY)$9(=QG*p{01ObNHFjcC8}p>Vu1pu4oT{#?aQV4+nqHCj?sYBkJkdhb#ZAnHI2 zR0ZR^NIx?gWA|=t`+mvvo*JCprCgjN1sS6{akcw; zp?$yDnC8UAIz?@w+I5hnVswAR>`t(#j24-SL}%toQ1S zq_>V3aW*S=rxV?Df6%~ctA$4CV7;SgSu7SllP*t)W zRx@0E=ahw<<5d*2PCI14+m`zaROP*Gi#mKxg$I?Pu4Q)R1r+{mJSzD;@n9-$)$WI2 z)15jK=Qskyp(`eL=~C50S*$b(T5=$(pxwkKjoRXWQ~$safkkiJ~WSyPli;TWJC z1BB$Zl>6D+=}RdAp^jStSEkQB6MMhpwm?ma=j)=5b+bdm^tIhATr!H?R=(O0M2h{w z=JWi#`|2RQdCm}`v2D}&QQ0#8wz6J2*1bQvXqzmcU~xuYGBI0ihPr0F)tUi&TA(HQ zUM^n6xk?Em&6_rIlLHSMuT*ocROrwea-{exLe#}`^3lJCyv}fajr%Bh|1U1k0;{)V zB%7jC8G|&iG)j7C`9yypeK5NZmlmI7#15t|%cA%_r|MYCsro5`?-xBc6A>>4v*x75 zCSvPf#z)0V_2&8Bm-2A^AbcF9>H;ct9^JZBS$%R{_7&tcUd_bem9~k}Dg7|V;`2$c zqQHkEH|+5adPqj8di}d^)J9~RE8NRuW)1tNZ+qel&Q>RfkU9>O>Lc+^`EGqhTT>IE zjxm)m2b?3wk(tMsmu7UsE_BUe`xy@RD(kI+`9I{AF@`K7sy{WMGF$d@Jri@y_jpcySp&2fJ}7l z4USW@FNlE?v`9$O4BljQ0X+eEF?!_Q7~VhNgujkc$ZJ<<Aeda6Lull%l`{wFo&ZV8@ZAq7G`#S>Hy}3N~6G}?{!vsSg?%9 z^Q>A|&NWtdParmQu^%C(zbw94E}c5JO_>av+!|!%y|V;axVXDj8D*-?b-5=*Wl8Kn zid#cRh{8f_-u;_n!H?;UNov>2A|5LiyxIYOg4+=2JLm$;ag1m_q-?~b=qbSgW1Th@ zHs$C@c+sVOtuE(>Hqh@ZpB|$CEwR?1+2^~i8FQxj?~Q!zdt}NdxM1^Hk6=IKuXGgb z5VqXmQve;%^WyxT=FIx*_4+>cK$hcEu;}s0E8YjNK+EnSwh)5x7gT$$3R)Y?-+-In zmi&~_xZGWRF7Iq_@2qB2>gFpGjYFP}^?OyPWAAuKGfK|XV!wF9ql#C1HSp%uZYdTRn!;+ct(bMFq2e@`CgcnD7X1=>8fUZZUf43Xi>tj zul>F2o3nDY?}5bKE502`+n2jbW~aWdCitalFFzg8?LXE$|>Zxiu;CWV#Iobr`+7X(0PuOl&wzjNbCh9rKjOh0rSNJ_+h4o~VwI|UeT4@ggNXyz*GCR{PK-a?e{adH zZkMkg@@Rzc{BsZgjKe?k;h*>7AOG-=pZsUN_-Ebx2S5Bb!cj*C|5sJw|Gx_IKl}dY zmG%Ea#w9rtDCDvPdR|q3Ql$^xTXY$YdUI4nnT8NbRzVQUj@PcXy{XyPmz>i^^iZ_XHli3yHQg%i5O4aGu*+l(!orDc8o8f*mRo-x=85 zo%4h9sriNmb)mXqC^4}^QxxPFu4tMxkqWT}**=e8*qSt*c5bTjQDZUolfXfEsw#?LC*WRn0?+SnUGd4m?u&Hz=Y;EbcV7OQ@ zvc?Nq&&bf2Z(?&RWZNVu* z`EZ}N{1h{94kMMf$*660Th4Oz{*C4rI$usQ*CKs*2hOC?b%zV7>!`d-W1+sxN4BmJ zre<6wJGh&cyYeM_Q1UAh`O=g>s(Pkvg+&^pgVr$I@6!5H!mZ9ogIl2sAyNOmHv zv;vTy&8i5zwf4dI%YjZHp4kcHu2ibi!s!SF;FQD&+a<3ZBnE9pja(#OeeufJanARU~YcAuaqNzQ+t5DiNVYC&}*3~Rn%=oGQ_b@Z`C zj;|W#YixTMeM1_P27Tu_LFE1fHLoo159k&VbY zhl~gVcbSm|F8jPs*S1b@{2|_4GJ}va8wNT8#EH_hQGe94OFNT9M24F3n`<5d2TFhie!-5vdUzhk; zn=(Y@=>um9gibbGa{b5$Lusjw=m776RF8dymkJbi>t*Rk+98KraWjevq;Sl7*da#oCMSQiU!dbbj_ zii%3wZ#RRXmUmHrWCPk3xXoI30V)~B@IcluIR=$v6D2^_kmIJ-e*>aOeFZf!;QZv@ z(E6>qxu)J%js9?&ukuI{4|7);C*Tm7k>B4EpyHC*M00(5gv9v~qQ-h2D&P#ws-mI0 z^%0jnG30;VZyoZDscy1`PCiBb^Z3W(Hd+nh|Bt`an0=XI-0+D zO@F_ABvvC*BN(*WZ;+0)aKcsiwYkj&R8EohlXPDA-Yj>d1#ZiGsIO9cgUfqLUk@>r z%}+8ohS=e!Rc+6sG2zM0*+-3K za8tx>;Ne~%piUpmg2#s(@`##gp{8F9@-NLH3c)fQu_q|V9)0-5kEgHWTBNK7bTd8J zUosEQp#I!c5}Vggkpzm+%0LQR1917*%x?p1=FFu{u%i*@~w;Otk( z<*sQ=8FIbP4N)}p{vNhrwt zRLy1%`*h5Iq%(bTeFO)Tyf}{R{M3!a+n8?z6STV4eZM=5O6O7YDUKaO-A5d40eC5O z&?^o1>^s6=sa|Bqmpmg}i46@8H+vkQdGP#6bdUj8iV<|Vbh4K2W5QUHqG!($tqlB9 zt533(-0o{dXtbdqU2R=kOy<3j4cLr!lo7?ZB)0J7*TAwMKvCOa$oWOkPofozkT%lm zk!4(7q2^MlQiy%y%%?PIo$J5ZZ>Z}QBxLZa%BP6QsaoD; zX1?$S_hvFC$Sv7Rrw0J*zfiVzi_?t3yZr(yAP`z(zY>jPAcR8>wEHK~3G|mKA=TLf zY7e%_-tz3@h0Q1~Yp;HA&oWf$_+$(5d-X}w%eYYbO!eX}D#8|)p`d7~@Jznao{p|I zZf1kDCU(AOldgaFE3rZep9`?mqQo3OXA-C|Z7}kcQ_5RdqN+9=tV{in@X1pef-Q4+ zvN>A=4+{S-?49@(%_q||QgTtjHdI4OZ4xzRAvd7a?NiK%kwLcz6%wk~W*Qu*EA4_l zi$5)d#NMMV_Im~t&@eW*;G@TjWl41K3N-CO2pf$C=2t3Jhx#%}U+&!uPn0TVJiE^B zFCQ%Egeq}Mb8imB=Hn1jK;?i03dFdCf|A{zW7?R~uOn7s|M%9q>pL^?%!VNLu&?^sx9#gcr$)Q*vU?DR zA?jLL;~NcBf$R;hFkt<@t;}L)%r~ZywMZ5rhaA}Z(VPD~i4ng31|wCX)Xfi}4C}u< zVbm$t_Ed2D8PdVBw^$jkvfp}V7-YqQR$ zX18WX4m#2?M%rYWrbV~3+Gv{rkfzsAU#XC*G1gXu^(G3U!j^=XU*7VP%0bjYQMCHx zvU69}^llc*?nR0`kh(L(1v_YHECVXT;bZ?8c4iGcBI2lEejk*b1M83{1CF3SkEJB5 z53uI*HNGwMU&I2*(?g5>i=S&4h+{YDI{E};jd%Y6q0}ie3*1k=ghFOxU!aZB$2%0( zh4RCmt3IT&d-HDC;1pC6m>tbZ4B`5CUDQg=quEasI)Tpmnd$^_qWXQkAvoRu(=vEa zM^jSqL-7ivl?Xy4*|Hh#Rr6vWO$P*JY>o#OuNM)5K3DXnDEeI7@8w80U#;;rA|VRg z5vd1fHkHoICi9{#=k%dGmUQT%oR27ATF82#$r&5Pb1~ZKH7x#aVNX@SjZ@}j$#bg()*1X5FWS?Ar+iWsJwoEtj|s)d2x^z zjbx_q0@7D!x+u@sKRynFK7~Hno-YsVSCVc6?BnBcoRG6dT1r-Be^BW$9|1S zWVG>OE6qRDF~4yVqk8TY3n*Vm>`fG--Vs|tNWBHPM3Dng_H6zAX6|gERY|>uyM)%D zs-_mnlycLStT@6|_hp;;j~ZX%109naMv`|ab|Q|8^i>~zcU0ndzPIb1yZ2N@5#)TsOpaqdV>-dNt=Dr@Aai&n zY!5A}TNGogVb?*hFz#0joJgl#DmWw2rXT9h`ijf0vzF#6!t1P>PUmu2{yKz9)oz~r z*Z$X>>i_nU-;ovAAgSf#^1+Pv5#X)JTHb&ptK~&u&a%*V5i^h6RrWD%P*BjH#7d#U zF0WSBhECMK#J=4;2UfWUH+q+}2h-JkT4%sV(X!V1;!cVrm-jqcJpSf-z_8mTyj!gQG&u;~ ztJY{7oJZxNGDY-dHYn?mCrl)WNymL`V{`e+3du$s2yh?AIS+hKVk$yydtY-o6EGB* ze&PKP^EsIQr63TnXG>pZPh`}w!I^MtEWpc%T7>I@Z81KA+len{<3w!?6(>hqdtnQS z$gS6maRY{+OruQW&*Tg0rD9X`MUxvBw8k1<6SE7{L75{v5lVrjuQ6UQ)>w2|o>_`j z6-fN<*p0f&E?W?poTAg_C^HyWPDE z9-qKak_MMBW<3i}4&d@|-=QBXSxLi)W61)W%OFk)1JAK;wq$_h!*AWPW7^4a{+RCP zrGF6z9y`tT8?c^T1ajHGK`C5LToQdLKPi}=uS)fX_Dp}j%_T);X#3K;6)Ex zt{EM4>EY@(UuY%fE`=`aYVLj|fcJ$_@_C?zF8Q>7^83Crz3xjEB6w7YXlF6gdB`IX z4qK~cq@BBmy;#99~q@YEZsKK!Aqx2fa8UpvC0 z;XY96y39LUx9{+|3=J1SSg){6M~a7d9(iUgwka|~1-`8{%pT5yJ6d9PoEqrCqFRix z9TT!MCdzW#HLp1M`2^&X5XycX_P zCWb8bP~`nsZ(S$jqZF6CL)=xf`z=}1w1bmuiamgJVy$H`gkBweOTC>e5w2|F|fqv2#v5yqDtyXwHDqRsMJK&Q>_M;caObD^P;6w&wimMU6Of^YP@X)~KIO!Ou zjc%db%OX_V=v#QCQ*q!4tN7C&0#Q+f4+$9SvVb<@#z%#`Y$E}eS6(u6lnKdd7ABY+ z^D2zKo?R!`Y+Qkk>CHj7r{g3YPByMFmdCtJ_y080K^^kY4|zBedRKY}fzVn2yGwgW zU#nZ$K99CzRC-)w)nmE)?;-?~Ww&>g&dpzEi553l2TJGkOA=pVx7>X&pVwzNrssQVY`&L8Yyb48e>CNW2FB=I+88Ly_PNzbvNJV$jX$qf9+9ttDNq)-Ex7HW zMMp-3c?E<2Y4%VSAOuu!Z$t6v;kjJHltC==VRJdGbM|E!| zYB;q5VP$zGdB7L-)L}aT%&=2|v^IYK;niufBjx8h1q`SniHAJHpnN6M_WiOHU+|)k z9q@xG0v?X#{ITCS0QLYLGlGXqZ-S4ZJceL%53#63Xu6qZN`5kbxt+jURF669`8xH> zy;65WLKBc?CCAylee3qF?DbaM-MaJ_$P5iB@R90Z6C!+GqqZu%%r|!Y43%vQ<;$;u zlvz3Lzyl)$oxZsU)YfjI_kfPy!yD!{^xtM^<^N}fUp#82c79^u%t zT1etR%9YvgDZr)atEEmxi9VU1{8;mO{dx?cGONuJx#zP_RBb13XnxdOY482LlK9ts zM%o=pLO_6vbb0h=Go%XQW6Mdn8RK09VYb-wDq32Q{R0%^9D2ejX8*u1`^BnpBg!Xi zW0DfkXkTz3XTyuJ}OxU=$4Qir*(BOQH4W%p^dmhdkZQSbSK@Nq8_* z@ix^xg|eL54h+*XGm=koEHhsW@J*owT2MZWnM5u#5v_K-g&qpGX7kgNP!}lWb(@2B zvY{v4Hrbn{!w*6C0~1nnMvcR>wu4cyh0Czsu?bBoyDk|)i$2iJcP~=&)sgJr48zHe z47i!9Ohcea!SQnXVp)HAy|VE)JhL${VT#dIQjGYt>8sm#17qmu7O%1Q+h|I=uC4NJ z=ljHkJTrMH>ADV$wLHt}WY2!}yv*&FaJh2EEfSi=Wd;wIPN#51zG*%}2GtqCD=D9{ zRmKKP*tq<7t|wbS+XEW#t1KMJ=lH_<8m^7yf~D`w~Ze)?x@mYzgVQLvBJZgHne3XAvJG3d#u%@P{AKNS??aUQig>SoOE)-|2Q#4Q~ zyq?jHx^BXM%C<|=ncJyDxQF*ojTBK!p)_nE<$7=VpX04D<6D-RdwR^2p?oM4`~sY{ z%&YqR@zqXt3%N322o}_-koyI+6&vy;oIWVN_(~zLb{1{WM6KWcb!W!@=bvG)_~(=> z0|t^q)pq*BkT)eRj{N3X(U0o+v%f-s5!-q%3?nbskQ@UBF=C1&!bZAzMXFY`4cc7e zWk5kQ!-0&#mI`Er#q!v z@w|T8QgqhXmu_MR)gEQ_Tjo&UDiM1IuTZ?wX++zKIYC!$L^eUL@V4oYHB#Vq6tNX% z{ouB)Q@zy&7Je{OARZ+J<)10b`@mnq}$%Q$x+#j=np zwv0-eFY#sXjI}K+O6WFOgq9-70lE>Xk8uxXX-sd)AU&)@)26imxeF^ibd8>{y0AHo z%^&g$3!V*KH3$ph7)0wwvoS)vus4{aRlaSmp0-Jds50MH{Wfm?qZK)|d&sl+rbKAJ zTEs3(HFq=+)@$%+LJiplMv`N8!K|x;IlBiZXE}P%!UHAR_MXK+HT_wxEBg0Z(8AFj zaqN>0m?_c7(o*0FD$_f=Aty8gC>lCNa z=*dD^CxSh5{W0UKf-3K8`r?~7_K1Vi&QCy%ew3NTe2DihP%R9+i+7aI8i^@vF^r`J z0K@u2d+sLn!NO+h={s)zTl5{_!mJLZ-xvkT<3MVBYY|h2?9lnzkDDsUg7#k&`I7NzRcs@%>dE|) zG^=g0i}3d1T9~(DN3O^8w}iV~^{-(M_}3q0T%nOurx zxIB((J+MdZ3+f`G9AEr6I5YW? z(Qe9(5>VI0{@S@S^;-G-p9q0~jTr)LRrm$s+iKkJIOG@8+ZVl7A}^3lqq*9cooUaI zTWIJvH5qA)KG%f3Wb8Iy6hc6d2SN|VMQp_TYBCg>eL1dnys%G;K>TyFDPb;$Xn0p@0&Zb>hX;syGp00 z^_Nd=&XtOLhq(MIxYxLuxSC&u7a>xY3h}OCx7aTO6QbZbkC7q!K@XAIhdgeSmFLe9 z$%XUUVYyVgX;T!aiSDc{%GNh|PUQ2>C7ft%U5i(SAl0TCD`8!&MQz{kGq#ctZkxIo zZYFXuy10((;(|QN=xYA{m2zbj#|_iZZPCL?Ro`_KTJkx!R|+xSl5^Q-hUr%c6z==LqA_@(VCE(biL}=*AwLol%KP%RnEdZ zh0bbAXB%wL=?-1O1|}{9L3?}_Wi~_D;DptaTAYWNdo=b^kw>L_M+PjW=)*&<;0DMZ zsZz>!-{DI8Rt5FfonvY;u#V!{#PcNGuo7-tEn?z#xodS6l~!FUGM5~@9a)6kw*3+_ z7=Zag@;R0g8pRE5nBbgm`)BSXbAud&;D9a%24pbgHIL7I9wBXeJex!-GfaIPx~DW- zx=djscdWv%cVNC;Ywvy#SpNCg!*1gU8`k%>X!3lOG{`wa!Qz~Lqc!MK_c?Aev^w|p zT%1+&8RLlG8yqXJkT&vs+)Oc~06tBys@Qa_w2H=iJ7mb%#^i0=o-B5=DDrT?pPx?O zveLfVaLF;$LbD~5&7Y+Y7T9o~&p|s9H`E5JRRRAiN97S%?Igfyi{!5 z_b}gB)ufkdGE?Mt?ER{V1>|d}S(6!9ESF+WqMvuB`nMT`z9w_ql;M2DvRa(2BpN2M zT&ayS@yduc&Q`2w{Tx=}?H@INq2`AM)cfc44|#-u98iQ;to|qW$)MKf-MyvtPK`szSe%0( z=KtdDO{3Y|+xTDI-L0Cd#9Vf(sCgzdcv=r?u6d@Yd8R5f*fk`Epf%675;Lww^Xj~@vaEYqN!<7En!eZPt1Vo-9G&*EaZBeZN-W9C z@#|Aa_+^JLW5VfG7;;sxStnTc`H+I#Tob1vKptE`=Se9_iT zuh*UK4*CaGS-!bm)L<&N?zI{?(fD=DzPAg0U*oXRS#jZo=3ZlokQGRNhJ(!*S`L-# z%`xK*T7>_Rt9Kk&eXtW(O$pyleppnlc2%s^l4t3-at-veSh*31ed>wwl2o^JxC%Q9>vvujprrVY8k zHI%?vpo4Bp^rrJSEfXlW?bBT~zbvLSnRSYEd}vxkIbK74T}VT*;mvHqG$uf0O*1>^ z3bfW|%}`&%Wtb)TjL(hUg^qs-RX15Ys=8yj2=Qq7dZL7)n4d`!L=rbAwG)ofzT}Uh z&i^}{8pFTub$H0wE=p%AgodLt=aCruCgVa6*M(QH?d%;*Xx&1Z5X_2$HDk;^E#mgW zFFuC~eH?Clw;Jb&RGPgEc#-rV$3)}nY_asqNW$o#1c$n*Hnzx0sqnv_U%0iwZK}s|qP01c{CUk8?Z1$spIZYsaf8siw-MsSeee;1k_Vei8w!yCG zmTOOgHZ!xHi#-n_HO<$$a+&4IbES`xn@NYj?lS#-g7c(+QraTbjSGo)s>{MJH*A{o zBCuuyveQNPP4hlBc@}nH(n&rvaJjWvX=wOGKBr5$Bg?5j8z}$=1Oz}M^^8P%V3r~s z^7lYN)4UYK=uoO9U2pITj)a4oP<4YYdL^eBj#YyU_?GXgaMWVE|2D<|3>Vk0m)~bU zYr1~R<=3C)+wqSyA=;;pq6+ZIorX%mI%%{|L%Dz0R*6LAs@eAzgWi-@Law!LeAu1M z`q?~U>J-9pWPsI#pU=j)BzK?9ELUlIOg%h9D=)bVh+f-jjOl67d%Ct_zquD1!3$0P zPl<7=$MWMafn?s@tBj|FcRQ<9#Z^iJxDPJtJ68h}G~x>ICk<_S@QTJyh7Hb{`+n{7 z`{A~i;Y)G3_8YtJ2(m_$DEVu&_p!HjDFQrf8I!8v>GG#$7>>X3l(wFl0O6;c(xSYX zm z(~Rht0k6IUQ)QMlb5IJpI|3jz!4ZGWBQhW{ltezf>x~7aVyDhFk=CI^^n1~Xq7?s> zwLNjz1ZRVWx9E$tzlVJfE$mfv{5b?msloS9W>CmwkuGJBZ52PtF_HiT(+;wkqHaD? z>|uFykVXuJ4z(EK@VcG{gj;7Zg`f#OBxwl^$CK+EI~6o#orsQww`X%KjDj^}-xOq3 z1$Q(V^)94&ShFzg7~XU@>;6Tc*=$0SAXdp+_qxfSSr6+g(|#f!pNfv=O}Uv*eBuUz zPiN%2MtT_RkmhPz1@>vOEu;#} z6}~LDtpB(&QM|2V9L3(LhFn&h3YsnSc8w3e!;zaVJf(eQu~-1>JYSd}u3BMbs#RcG zwHc4D|36cU3k3nVz&E+5mcZ2{EZTEtUHqv~=bqNw0Y~;n5f7``h#!nt^T7I`Q2&9p z#{*qio4)xWrZ;g&@I&dv$oZj-X74(UWk5}C$8STVLWb z^&ttz0JKdjF@UJsRaN^{YbFFVifUfJ>+Q$cy&UQ6a_^_Mn#tAjgOi=r@j1nHzp0Nz zfp?fGg+LNJP(Eh~S!l|YBCX^)ZhOD_;VsvRS!z66ecUu+7E@sQc17RW*skCKvOcR* z_FY{D(Xmq2o7Mvy;C!z2h5vhLrcU&U0yUd9&etJo%}~LMw-$ot)6mi{E3OfUBHT?) zAqo0r*smhFI5H;tjsfpiN0FkUbrkt@z!=ZvWZk*+Eo>`)*Q{r7?mM$A zDF5ZuU9KYpO`sFrjhf{+lU41A^LR>?PK&;D12^s!37;M(;pYl<{ms%#9IZsjfs*4K zj1$-#>vv~3o9ChBj{_-k-V4;duVlJ9&YH*bF>ddM@qmSrG|)Ma0|mfwLT0vgHYT30 z0RZaQEX)Y#US2awHbBIF6!lCsThjF6362STQ&rp~P=Wj6ln;b)M6wj}5LMk)_lcmG zi)nBd+JAidZ+%x^itvl)mOA)Oc5t~`j=RJIVPA+BsWJd)jIOts+4ymOhr2p&b-#%mGrqHmT1nv%x$mfjuoI6`WDV1f!IbS zc5w)%lkB!?Gf=j$2;`tTQ=Ado5+p9pNTvId(a&PfU_=c?o>9*`0NP43Cv*zjnHD7C z-`)IveaF}>Uy&jZX}M+fU)eJ5)uZTdB|6hLGMfrFb*h6nuMc)Z`YvRR5;&kwjgHE^ zfo8F?^(W88QQFUvzNV4VtzJ)SPCbiHYQuh!qgIb;1(Q*wFiurF^u*o`M6onV%JcEB zx)~8GE3w%vvz@bYDB?dQ9u;`{ZaJh{8c1bhPxH7N(2q{OiGcP#F4g#9r|K29A7tO} z8)_SP-MLWxG4#9Ax9`}OWn0}vd|BXx1H!_nae9!qtWWXfRymC=+K;x^|Fo%&EVR~r ztIaAFu^}oz>YLwObFkN|u+^9UkSZGdeFp=ybVBFe9=ew4T3KrXVzceyMpDnXmuHS(ddH(m zx8p8LjU&j;uTi`7N$*0Rc8fl)3Wpro`SD%qtA!Ym=dFc}Rzh+`zL}LF#x{>pB9`{H zR$L9a#S!8Rkx%wD|E(C+7qkps_L%Eej;pJBYOae#XU2Y1KaDVYr_{0eM!R@*8v7Cu zQEpq!`==`_Ydnv=eIx&0;V~%%Zmj`1&BhJ7L!giBmS&?98iCOTHTj8sTI~#4LSEOI zpYRjp1R54%icTU9m2y^BOB^g5MUc(-)|=@%@8Ex+08TmBstB?ydR9?vRWBuV+fZdv z`Pqn>sR<|>*=Q4k5jG0>s(YM`Q~Kvb8jBA8iVE&t6=*mK`z+YxjSY&v600b;xA*zQ z!v&3Bc`p(JZn*3PaB+SWYy4NO3Se50n-@^FRS-WOtapIzwX`U3fFt$_<#w;s-fb%^ z`>S+k&noKx88$Pm2qW9d=H)tJyu+(@lsTW7niVvmh*laJD-!#%;_roQTU)MON2Ah{pBeoIWDhmV5R%CE9P)sOXqE1`hnwfZw~jWoj&rA zMvEx#QWnm{m~*8Q=54VVI3SIAP-Qx*5Y!CK!nzgyR^ZQm{w?o+Z^Q1%azX89=jsnQ33TqPjKbj-P8T?oD-8y`E4j``-FjcZSB?XwIN`I?VGXoR7n}RR)v^@Zw&*Pl&;0 z5FLWv+SVFZ`q^SlgvQPIsj`{^bFcklo977ch&~|;XhYy_FOw*3Ahd|R%6oT3S&AyS z(#WL;h#-V_XaF*>C?)bZ=w7UxnF_MLb64^||4+~9;&q4-`4{A_K^k@WaRA++H7|%F zisO<-KU)8*>z(p`gvQ$S=tSWFU8Jtw_d0a2fIxX=@q}O0Q{VUy&V9WWdi{K*+ytM9 zZI0=~YF=MSE3;@kWW;ClZ|5R`kE}VlUU^XK;M$|26w({WE|=T$^2g`6JwchJ^WGz? zTgB+sAAz4U27ma8kGeeH zF8dHNA^o;JbRF!1ua>h~2hQF* z0XnU2g#=WY{<^RSD4T$G^nG7G~U{+s1L^vlmE z1EN-RiS(l>Nn*A5l4AbP`^z0%W)se{o#r~~n;*ZfHdN_NneWeoe~RW^H9~xXb)6F& zKWE2< z{CmT`GQ&9&NG#go1>#D`w|(iq^g~jHDZNP;Bx#e;uf@kVBMyDaX%wtd=TkbPn$0QtMP*Mg9QbR3ehP$hr#xFjVb-rkcl&s2fgs|(b4Hutzyc~!S_vScUM=6 zRFHIa(6!rjj&ZRM?hCZ4x{k-BgQYNqJEr$4Z*~^~>HpQNzQX#K1z|U9*%tECBxT>O z&!)N8f2(+sW!ZOY?e(nmwED1tfW83Cv1=hBNf2gEVDIj`?IC-ZAi4PeXXEw5yplvi{{_d?WBXejnmm5I2D;K z?%JozX>3&PI8@5w)hhFo%B?JKH>|DPT1(0dwwdjBASd&>2Rl|v(4|vbKL(CjijcZ; zT7phcqxrE_YHMzDmr-0r!~^FlC*y(k#UHbe+eG)&zOSAyPjyzydNmAk2&bpX`9zks z=;;>GOP%d;2#hfwadUB9P=$bZxFIw?$jT=OAGNVuAUIj&K=Ci5bRroa#N`WifLc~& z)mx?KB-sgP)~(NaeQywzgJ`epeN{Sxq3B~WbG}gY(j$CzPGt}Fon+@8ecWA@f@A8x z#Jw4;3c`l8?WhO7u_SHwyXIoJU+}B%v&VZ=`omRrTc$odk1yl%zUmX1y{2s|}U$dtMMhx!AC#cJK)LP1-#DUvLGOs8FCtfe@}&(Ubg; zLEeCrfh4R5$xau)>2hx>3i>VkukpGf#(bf-x`h^Z14rheMXc_^!MAJ0es=8|!#*+n zR(^P$u=`s=E!}c>KjF)KTuy9459sC`6=ZOoFi=^KaikG8LVVgoS$UwoBv9mgW~_z2 zX~A~KE9VxiI}$k)H&&QlbX;b?4WQhLa578vXhT5OhkiC%W`tQy` zfn6d)-==6h6upHKFYb=(351bq1KLntxMrFEGDMkv(Twht-j6l6TZ9){Z?O(+g^NFUTMdbGP5-HeZTZRkp`K~eEV$NrWga&zGR%bQ+ ziDVocKn8Ru|G^BRqX_^d*a^Ri`}_Rr?zvz`4f(i$!exLL*I3rq*sWHh-*jcH5#Mn4 zQaStv5GIUx93y&{knxU8n6=-924n+uNJm@09p&8NIbDDUB(!C(k4d4w5mRIMS9=7A zbrnhQ(1Z;Hseo#Pb4((AhAzZB(!TPa8JGt7|-5ED&BxnkY>l!=jkGHHYdlq*zq_OrabOLWZWIX5F2 z_?)S|1(ca=h;kzgvZT*Jpf$%(u>r;dG>s&+v&tm)936cL)3c_CC~|4P4fPbqD|(kq z@D*>Td_5Y?-V-5~KLbDFazc%0>?EBJDu0zNq#esu7GT}@3e9t1ir9>Q=~rR%*y2Hn z$*3dDW+(qEjP#hV+~Uhu;PQhSWB*?&o!izQkCTnRQT1Zbb?{hoUTTp@{6t}r*j(WO zGpkZvU`eU+m5v4I5v@m)Gx-{$VSMcvdG_jDOgKr)i%~(<-pixOj{t&`P)qA3i6|4XW~cw1f1Cq~t&;oc z`L0t;O-#??iJkSOdxg6bY@sAJpwcBsa93V91!rhWEK>7;P!F;)w0mHuGJE( z*8HfFcTKtY4b>k}&dhOV=qz6MNA%(&Z@zSqkUZ2&ZxY^}HHG%i2CJctS&yY6Mol>MP{$$Z8G**jS4} ztzGB$d}f(;;(cVUi^Q&VxHGj3sDCwzmCu@UlSjmrsZmEw-s=w58W_C0)94%-Hl7Ap zM>UOk(&Syn%-Fyj~wzIDOX@+G!(tr`kW%??_wkkm3Z%Ig1EoeTdDUR?>NL*;$02 z*0E!%nSwWGHPa}0RjUB8cUR^B9g$e5u`kgDb84g7IPk!}K) z+cAs*>?&>uX2GN=IWlA%GQxYYZt-Yl)r&d`Xu`fGmFvyGzr!F9sm4IpbYzKaY?Ebd z$XV40sizsLFEmP#wdPAFk?BIZM^Us<;~aMI6{Xgpgs%(9HqKE)cw?4)*S<~JlEiIP6 z%zJhQ9}@k0K8z3gx?;`pv1Qh5hWHw9CsD_+8DWT)GN}AicDcy(0no=~=4#4QbozhZ zf0uL%iWxKLP==oiGbT)5Ep#fcY9Bu=ac5Y{?D0?yR(wfA63jbjfUX4A7g+az=`#}P zI5Mj96ET8|QD-=mXUWKa{F{Xx1)RhM8&xL8bb;=d4A*^^e(~vt^@rj&qwx+?Dhm)> z`ZCB(X@rXLRu{YV)qh=LzK+-t`D2It#h+o(wA@ta^SXZxl=2qsmZ{?W!AcGMf!hO4 zg2wAP&yhV@HnE6d3Wfn9Yl*Vujc$DPp~cEs=k|MJ?Iep_XPeH-GN&88cNDZj((u$n zF-WAtmxnY*lH=GzJ!^8|f*RefSG@#UF`@yr;J^W^?ita}B9Kb?r zOz46mLqZJo`%5q#itr#GV>|+I;t&A_(VQOU&0n-UWf%6C5g5kLd++*nlca*zZ_|?z zTg4MwQ98MT7t8%W*m2s%Kan5ioY9Rh;(T4jX=I`0LaO9>;nVH{thZ?#OmYWg#>Tjh z@tG(L+mb&Jv|XI8etw_u-h!3GH?n$3@#-Kgl(u8Zkg^DDj)cr{+4- zV0lm{8LxP1!?2^qWrbnL zR}>X-(a$B(Jv=e9T2hcRT&>!#%KJw8$d*gBY4vzlkdsn5;gPdQXEZKj;xL{z9c0aC z3->5vU`if=E0?N-AN9z&h^t>1#Yj9G@hix=y*TV0kTQ<48oK&WrQfLd%vv$`5xQ(k zr*eA^T4zN&NBw5`bD6$8Rs#a$ul$`eNUshVCf`045O8~M;DlhIi$@WE!p!JPb*Fl} z)zb9ADnLN_Y*1sNGnoel?qxVMN#ocV$s7I%+R6Uiw)Va@#xwE$u7V;ml__vh4j*;d z{5e%TKA-%m%t~Hq)DerAYSV$6n`AJ8b2;*g!;EW|woSlr?`Oze?k6N*zom-+t)7>*4z8oQK-EwY=4 zQg?1KV*g;7-GpC^I+zN8H`Ulp>I08kN<1J>6wE>~O2X);u8SIZs}~6()&xua-Hqb{ zDwmrB`0i6<*Eg;3*x$j|;v@SIL=kRgY zJ)X`LdDt?S$?nm?hfDu$w*I@PLZ1>YolhL0&_9UAjaG7GPdE82n&ghheBx7&hni)kZ+>(7qb@1BypUyrBM#*?zA^=B?D>YPE$y1t_`0`Z^Th zLQBr*oB{~EY#Pd}A*+XhZ+MHOHRsYZcW;d zC}Bkkrtc?q-QtaomD?G{%V2B?@2%2CVIFjIFHOaSYI0w}WPuxE2%o_pK$}NmCD~9_ zJ7`dgpTax{fvt3!ZVy}@nXimeZ#hR7MxHwyRgUpxj%m7nB}me1kH9;QAja-RDt)C(v$#cHYXd&GW-^{-|!X z-z+4>!JY#NOk&(H&hN-8;2h;M*#7qIxAOr2NKuh%Kv8_^_VsB0XoTK(u!- z%fE}KBFQToP?O&*4uYf2bO4_CHe|%$XrCBy_P7!%wEyc?Pv0_O=nS?la$R{(<~PfY zyp@vk>4*`p6FBo8u8Yj`OVt0=1pdxVPOr1v9**BEo(8Nnkn^QM)g?fg zV7m+nqq$y@VRVzNS464%8IW*|KF~rv!f0Na7CVElm=X9&lf<5FA~NTRKi4m{EfjrM zYT4_L6{z4Zw!~l)U=ryB>cO`e<>@w%N~L-!y#&7ELp*gbF5+BMolyltPP#7l{Zx71 z>@MTRtFSH5K`=b?#3G{}3?D{Eak)GoeeS93zQj3`^~xnq)L+NS31qW4^}2s3J%-bD zJj%c+3JZ}A8eL$>Tu7;PjVuZ^mQ=~LxlJkd21fxK@*b4DzaNCy!Y(r~)cq`5M)on7 zL87M|0m}+CSDF3?Ow)~h#@!+E1x9DBDMiuTJ(W;gEh#QVzazl`b<~p>7WsMXZt(tG zsQY|8Y_Nfk$1p=x=o>5VCX`!z#IN!xd7o#D@9$x9wC=AbJQ?aOW6Bf=f-k$yI9F2G ziLG$si|>+e#p3AJuSc~IkI>}TBu!;L9>+nilz-KcC89YLcj_JTy2@13W=~7F^7VAe zhj1r+VS5XPFKt+EhArQ=hPNLr?QD?+cl&$PFxxk!4(>oJW%GW6%UK!}XK2zQT$lC5 zlV(5hYf4-VSu(f?vyMVDvZ>Q;R5#2%hr#GRLO}l}1N-tVh0Dv1t_|0??q$04UBjA} z=Th*X1jA0Lp!qDzc)izm#-2KP>t7$9# zn1{QsAu(mmy>sC)rFaS=QS`9QoDi2c@rqHYA48GJ5E3)TnKo|4dtUtewI-*Og^{*Z zr@IoXcCOEt(W=0H?f@~5P)MV%uWojd{A8PR=mgUD*_gvW2f$&Z(mQbFK}%(1Jjvpa zI9}KeevsdEPdMFzTTr$zO1%zX8$)3OrV9jH0?CKzOq zA-r^XvOq;59Yb+!lYql~6E_A7iRH}If#Wtx$eH!ny71Dz#&tDmnjlehh>sz2KgH7f zu^xxDE@`Y}?FIFVuM~NCDcVyU1ArJ#@~#AERvQ-1=V~K%w?4?;6LR(j)Z=6o=N*YLg1+AzWTT}_uu#|rMhw5~ULX1^#UU&{kR2-pp;EF87%uk5V?Vo-Fp7c;OgMb^9839o@{`A&X&Xq zMcke1=cQN+o-ZX|OS;T>3V25<6KdF@-RAV=?4+yEryDf(QxIxLpMNe4rnSm7jgBq8YmRvRAulb2Ld_aoq*%;rpv%aCkxv|mN9qZsN{W+e z_am1$RK@~UJiVW9@r|qWfDowXbG4;s0UCs@BUR_kEd0h7;}|c4$-~L*O9=G6Tn;I6 ze}QO;&nM7UrMxXNrdk+Pwgs_!`|RI#BzLTd!Zf%Cu+HqM#)ke=rs35(F+${3pJCKNRc^?YOIkwf_pT7Kf3H+>P;0N7D~Jaxe-ee1~4c39HPKHY zYa9@fPYCB*=iMmqrp@Cr(4MVs+4zSsa)2?U943A20Wd^1-z`$0LH|((=Vx4L<|Q-#i}K$|nIQiXwXy@nNuz z>EIC2mf=O7$sG#w0$I1h0y-C%Zgke;$27|-G(bwqEU)+cYiL~6P0*eD z$H1f|e1Fo@(&b-=M5@QKM&6nrSsAH0B=&XiI>6LU8uOH#g8`L(ryxlpyZqC$qak7D ze-=U^rU8vii-p)Q?a|_y#;>bMc}*V}azBZ>$It!=miNU4F3ToLwJdqr63TxAc$+G53r2fn5f~Dlf?Z}ab?Q*e>@)xvc zQmcUPORsFM3DHFH;xX&;HdM+>b%@z~MvStGsPz4^rRM(B1z?M`cuF_ik*!u|EBZW3 z`dk`11}gGBNCx^Ia_=EOMN>-NK+&W@WuV&69^?XO=73)wVvwJKIL>Dn0Sl{3im*gV z#r1%@v`>tP=KcgY-inO;|aQ@*!!|pV_<52t%UHt&Z>8>6K0Gjl!$2rr(Mmy0kvDrZ-m~9359C4Ze z4IoQbPzLT$ShHAj_8}b2=QHIsIWS+^j02-g8Wlwu;v4ygG5DLsZg$OWQ4_N-7{n9t z=*8~wx+Lv;NpsN8{CR?Jv!BblcadMR*C^mCBoOCz<&}^Hu;u^1vVi~HNaX%if((9+ zu*nFbL_*Et;Cx($%47G0vT7Wv1yuo8Z($6sXe>hw*{3$?3&;DP3%yG>>zOq6F7*TT zWNZK1xUF+<>QI&%1+BqumLj#nm*hHO{(k_``j)(Hoe3+a!BX;Tcx?+YIne8mU~x&h zL1u?nx>tum29tNAZ$_9=;6^XWZ0VOb`1|}ibdF2XjvkkZ>$JYc$b7u#MOr25CjQLO zw6wNISZF1{y5|Xg5$#*hqIu#bQ=$T*#lw>`4F>QaYVk=NY{g{YKI+S6)ZM7d%Do7j z`_Bjtz+Rh>R7Nfj7oygQm%TL4SEQ&}Ct*dTm`9)Lo?8X;gAGYfGQ#}Y#;9$*)$%;% zVA^TwAv284_fX7O{(46Jq5Hf<=F2v4)_kp)Az{8Ua^cmFpn&sHi32%i9KgjNK5H5} z3TLDY@*t8wX93mv$cd9U_AO<;^HBAjT?3GTg30DQ8=KcwmTJl zR?X`(^m>{7bIk*1gTNhq8Gs&+#O(|{INLuyq+0KJMqt*|j)6Pk*fr7O7qfOTk3XuU zyZHK6&DuEhzl9zVN9L#6e=@ApbNqrHk_*5D;YYM<)5+bv`&sen=TX*|V0sJ$-Syxn zU^j8D2vsL9Jp+RNFGeDUsp@qF=zJE@cHKlQhjR2~v{O12t(`iSI`&0_msYK6g8n=) zE}~evp8j_staT|Y#&n4{l&gDz(r)onlANnOwp9wl@Dc5qfNz9)u6Ob0UtJ(yuS*+I z;2ljG=(dkq9@ZXfNv1D)!%w!vF{FENNv@10&*%fSO3Ys~;5%FF=IKoB`+RnUvV5(&;xHlD=4i4bSJV? z>XCU)2!-^UB@be7D$G;_y6hb8vw-7s_NSF>vdJ^$^S>BgZVO?s*u+HI*sS$6g>Nc&??R?~bouo!3sBY*Vc7!74<;&bd157NeaK_7t$R%!N3e{sH5pd-la?=k&XlOJiC?e!fW)nPRSUbS>Yc zd9G#htm#h)BJ#)QoqBqfuwi>g*=rSFbLH$0Du;-bhzsc>-mfQlvSVL?%?uul%<%U{2pOg9ph6IPyC)ayFTcuA9oGx$Vm2C2Yg z85E%v{rxWXG{pdass@&UDFD%InFo3ku7Mz$QUQAkcy^mn2!US@Us1P^31}mVKKI zs_4va+nOV|=BhsA)0gF;t4UH!ciNBbbG9Se1ZDChfbc0pT#aEF5JgvaTpGNAX37+N zJ?B`|kk9C3!?tWx{cyP@F0$ZLyt)QVt3ncG{)@0U`Sx8%iEo1OQ@GHt*V4k+h7#+J zzIcZDdnAB1yg8BnN;p^k)`KZoUzH<3|)e)sby}iZZ#;lQ}GS}p>rVq$1LwWkBQk&@Lba5d<6y)|+ zAxfv$zDO=!LG?jpFUn&+JF);f{s~a6`IT;qT_0I#mF|QX$K;VGaiAllMIcaXYGaD$ zi^T`kG_Mil9NNAYS-2MZ8syq{;yX*nUT<&_N0Mn_@u8IidE=FVqrJr}Yk5Z zO2r{*tV3Rp1pe51WObxMYrPSu2cE&g;yaVOAk- zJeg<{0LHomYjZIQ*CIVSUu{srQ_4j{bntp`G5Iq=TD<%1ku#coZCC zoRrA@S_T)2f3v)LFnustr|c}z9C;Lq9$ZjNQVuHjB6z_8FSW*F*C)8sz%QPE)|fLK zPEDDHj1p=xJ4}B`pB;*EUjowFeX2N`>;@pZq?DuP0pg7_gP9a>txw&T&pYA>;3QR;GTD*SFp?zO!)*{TiXAS)Bd=!}r zGo~z?(wDz2H>|k_pLC&d!SieH&)<2mVZAHtmNokZ3|*FD*(5VP5A7Fm`+y9LT;Dg? z*V9|<;&mW~@29()4)>J5r~`5}fqo5~tx%}G1RDamL;r4~V+;s+t#SpqjFl|y2;?tw zwZ?3AC@X%d5boVq@1_lgSB^@dUq+RJcDlIi1GIvpGANHY&fl*^ff_p_!*#nPg|l1c ztQsUi8Q2W$odv98Okw@cq42z4n)?|w$Gi-{mIY%n5_?>E={JkiKJa7Zt|8!c8x@d4 z`gC9vwSD#+0$kG45Dq(|8+y=_pCxGn^p%KAh!ZtWn5jCauf$ZN?X|Yi?2c3NM^88A zcOBPR-W8BdNXjcE&W{*Rsfu?am$5irOSX;jJp*^(G#t(5_34@V35C>bpaYcAd*LCl;zR zHP(IawZ_Ty7SeP&Atg87HZP%y{7d0bZ4Wvk1y~P`aiMQ#L!zit92BQf>&!tmniq*D zeW-)K8q9FQxqDbr`>=d~%e3{%wx@R;3_QpPX$WLBdIJn3ce(7G5XAMXA)myc71nJF z5OeP+LJrzcbOijZPpK{qplQY-Iu2WmFKUpF3{^=JY^mdP@U${{U3sL*AKY2KKqP=t zhXWj50Zz^F_>o5pNUW=i=glHtsVqD&M9{`%lBjAkNAm#B7FQ4u&VS$vZ9aM(>@G4^Ze>lgHwUrkZTw%>TSGKq~xjZk1fRv@&<}MZu-`y7B5o ziFQ(aI3HIT6zg{B?~z&jrnvZ{UvPFnRU|H|IO;Fl%>ohE<}s_%v`U9P5pfxNg*Ckg z?S~xRz88bGyM}Uhx8G^y##0VO7y)_o{X74*ElOn<$sN3nd_fNvsvK--w%Wf?a^@yo zNGq~`)niIlYqBcTg9{e(th75aeo@RLR`#h{eRRR$B=JrLreOz2ER>k0r>;yB`WoYy z@^g6o=3=K87sKs1mL4#&&&||kMEwsN;wk+aVK?|LNsNIp?V$|<2AkIc^<{?W7UqpR z%Cns#WM3LWri1K z!EkHcJz*v0aVNctlem7)0t?S0L^B*u9T_F{j5s10VnPdWEYs|{HTy&2k04hQywiN= zY0gbOJEHdSpzzah{adJKW1GF7U$+SG$)O4FC!2i1Pu0oqKYy?!XtX(~i(TSmpH^wM zp_mC}{XkiRyfRcBz$q~kO_Z;jzY-1hWZb%Cs?|A4KQsED_-0Id*H8`t4ROY6*jJyP zIQ^2v;-K_uNrWm$20`jo!Il1Ex~~wo!x`Q5DUV&8TYlW-z@J3|N70clMF|UsfRc- zP?U%Z3`yc@cS>@=Ojb=-(NHSHkW%x}f znzq`~fDad*)1Tbo{Alp4pP)V*aHJmUC-S^gOy9foA?;i=vP)f+0H(Z(&%5SSxI<qFQq>q6p`DUXsW;A0D zdgzyJO8i}rk?$=&5k#&wISFS>s&l^V=Jo#t65GD*G6>ua%6v!t?Y!`*RgxnPIc!JK zPD>BA58NOlhJvV;hURmyr!@UTVzM|SNE68BaLgMF%a_nN>ZN@IECLYT%x_FTqr<6q zPc6nFWgy%j!%_d*Y|=+cm}w_gX4I5^lQLs9%hYc0+SLltDu_!9guoaf25`Q=YBSwg ztLc~Ho%o7uPzCen_eFn2)tFgOGa%nvcnH(V(B(z zq6&S$6E`v0)7384*b<*VEKz8@^yF8L zSP~!mj^B#Dey&=pLuySv^hU(_Ef+?BA$=?x7SME;Hg?W#2EZlzRk_Pf{|mFE_n(Wu z%fp8#U!5X9&C7ZaTrEg9$o)JEGmUR@S>5qe5P^5T%_qi@k2t`8H#@w?C5GV zRCF(o>!I4T=tPL2%Gj9B22wmegRsF+2Qtt2YTvTR0gHLjvJG%+YchOBCGy{xIM)VA z*0d3V+{CM1Ep_=ZzxTKR=4gi-4i`A^`)8l+a;@5;_dV5JKo(qzDNx(xrn15=5z*h+w46 z`^@Q zIL_N|nUYz)Doqbmg;V&3w-}Aq`9f#f(tsgLyOoC^L>4rY*Tp+$BeaexJOPduwZV%0 zaAY2s>O85%Cyi~ktxY3(zF@xokn@VzhY9k?$_wqz<6#Ili0<}-LwPkq$<~hq1+GK1 zyE5a~Dn3IAUnXJmO=ynUsaIa|6#Xq~lM;dA1#^Mdt|SN>(<=u!rE8%=p~?f-Iuf7~ z@;&soRR*WVe=~9hGjOj()~@zXz5t~;HeIK#Y?W}rOe^WPXq?L$q~C{U)KKGnpe&l$ z3>05whf^G5F}+F41h4F=kiBKMGy#Y|JZH!r(BnX=qyz2yb{NNz4#K%FeO#3&jtzvH z`)J5ywy5h^!yDfn+xPqOgaWRF)CvA6Z}s!z5W#Um`o`)rf@o z-sz^Y!Tlc_DonG^FF!NEwB}JmrqRGn6oD*q1T+$(7w2!#S#$aJ4*#k2*;J^PzH&^wBc6lAEDGm!BXp-l4u zFn_6MdkFaDcq96D0X`3pefR?#USVzjjpfckd|qlot_0Sj*y(Hy z37Nkmpv&Sg*P^z*0u4gx_<(Yb@fXiPA3&leNew`4>n;w>WbnI+TN?P#g&GVeb~c;& znckxY5_IVThQ?^z4Ef8?3F|-}hZByO=FCXwC+)_(=U*Q9$pcmF2(+tbL<7o-rW-d; zl~`#eT_>6{BfYiV^#-_K{=@~u6t7hk`EQ-uBY@f?OJyp2HRPu%Lv4CHrDC*80>i?Z zIz(#~)=r@7fv-^`fccQF*e}Wh@MNNWk?RW%3{IEIaKZ=_$%-7e5GR z{&>(f`DM6!Dg)>iuQb#)#Z-qKK;OtVR(PxNGkWTU-U>)wDMR40M;u7^^7x=l4ez-; zTNdci9wJP_n1Lcg5Yspyhq_SV4j81vRhS4tIMad#&WLj9L07F1&HRnJ;8Qm9zyA3U&BSY3qusa}JQKUNj_8Wj_DCgIV*-~aTB2p(L(@>2U%W5t zy-ujTAq$P$+vCR69-IWTYn`t0uwb#~fb)rbQ*$!Hc-ZS^*Y~?BxwdCNlKW^N=~?H^ zup@dh2Zzzve6p7m8|3~NV7^y4W7ud<80+nxEg;I0GJ&f`ygH1l zP!deZf#@X&a!9CPenE2uQ(PU(m}AFcLkB23FSJ->81VJ?eKXPO=Z*wEAj;Oe3a z7Ea*k-Uk-WRqNx>wQ>_+1-1VV_~Qf0^puka`0-_?D*6E$d0v_aN*v}t#?|roesBoo zguV`kc^(~QMM>CD_Hr)z4`P>`&eO^t3zo+tiShp7I>)BR4oit^hD+eOb2lg=m-C-X zr&4sgfv0p5$H7gdw>QCen07u zdeKTmASgsRUZq+ zx0lAIYr!dz*~k!SjK3^2fxFfTP!9z31MNf5lSu_z;yEsD#7jeNfw<*!B=147oX!o- z1DvOvANA}aT*Wz~T@CoyvM3Mx!0AIDI@@+5b3tl({63EB`z1iToyv$NTI&&^WsYK_ zY9q4$pPZZn-(=}aEQ-{=t_}@ObY#`lp-&~*2B2j1Y#@i?qh2w`!j#(cDwfRMPt2f0 zR?ak?=z1?8wnt38;RQ#5w|d_rx6EVIWVE~D=pfIgMy@L5wIk;h0|{ETy+yIN8rrS= z;R^bN+(bM2wmKSSm{#|}@oj+yZlpAbUh-9P{0Wp=b(49r4(bH`{EEJFWV6wDZ&+N=xxd_W zQOk`N$j=7%SwWOIT;@9(CC%p*H`})J92Wa@9U(v<@7*wG2NQS zSIBa%D%dvrP*GZ1Xfo}mJ@^nUjANKOYXV06DC z_B0imAdhiN8}fB(PK`|nPHo0g>urX7uD7m)NKP%_OKnE&$%v81=qs*L0a2g84M08M z>G>&P`qQYdHJFw4fQ7owbTM)QGpw~T=*2m#hDRJYQ>&Ow@8wBder z7rLZ5f8%}VLH5k z$_LrWv={n+MiSoybX5r>19Kwuaz%%|HCV+4`O+Jcsho+zbQ6}$aD=>V4F;D!8R<|= zq^ju_1sOzI%Z&IGg(K+7z;NG<-LYb-Pn=V{drE<-`gNGLO_lYjut@nEH7Gi?YAFTZ za~hCj{c~~Bu>HAeJLXoGRmsN{!0SaZu|4TN#_B8KF-6cBp47U5SSIBrAjgEpZ_NCJ zc4mA6BD=1hS)C^Xi>Wz1K|O19od>{-+uR-V3 zss{DjwmZwBaRuD3N~|Lu9PxOz$a1tv*$Hb_jO0g!Qam_Y^x#9t64&}B-Y!o{Pj75B zH*M=)j-p8*9E6!r)!p*YCgx77PV-d;1rfa~d^aCfl%P#nyjx1A^)(ttu4@FDcq_tm z_;Sd;LgsoV9=X`~LJf7=*5+r91u zzIDt{lRWpukh5xz9p|RJ=w@kr@NvY@)=K9=q@bJ(q-S3xW7UM? zO&^XQz@$CzhrUprY*!quW#P}v6)a$9Fne|Tw0~;i9vq^Emtt7czRGQd5#)d5{lb*| z(>ri+1o0C75~+s=^Z0rQ9Eu28#s}3q_RX*s(2o?StJwQ3wa_O;ii$0zSeeTu56*X| z6SI0Xm@FIX6i^1%IVK5>Jhgex|J!L@T z%xdoF%XPHz+_xW^dwa)uG}g0Q7gBS5I{viP4}R%2-uG7DeJ|oPH77Y2CQ`-p%x|d0W$#Mox+dMBaY8i?eE zTk~XB<4TZvQEIMA$r$f42do24n_GPdK@*$n4{EDbAUEBdq9%<_JMQ=h_0Wh9zMj!? zpume%;*iS%8KZ_p;>e}%Tzk7G69k!i3}5Q{&=*Y1a)Le}Na!;=bx4?ous#{!^I$fQ zh%9xjc^t?QnBP#6u&VJ*+ZQjMcl0x~lNr|L411EMa&vefon*5h9eG>b++b6a+Sd%B zLEqfMC6Twjp%T+kq3IgtKN7fedGBvP6FDA)i#dIn%~lbsLTlMJiG+XO@qv1C{}#FY zDZz!t>A-DM%h@ub$Qr1*YC?A{+ z)(!ZtVx)%c$nv_D8hO4nZ$K>L$}m0P!J`t#)=V)T$00B1X~}1x&B2W7F7Sw9${$P_ zqxlO#l)lH@fYg}@Gq@Hl$yk1Jp}J$Bz8u=wXync?9eJ1NkW2wTSUl776ig$$4%KoQ z)CWA9trN^hoe@v5`fzM~m6wJhNpT~)+K{~IYn|N=trwFjpoKeqM&wZIzkSUVVs{i% z0o^BW5*H?0o(A%HBSaaz; zH&4NTF)v7t>vCy;{q=tpefHAtcYprr>JaN6cXzLT<}x-9BeBhquG$f7c?q_azY&L@ zNmux?4V#VLFLcSq-Cij0uPu?D?|l?#x3u$JZ;EB;JrA9LQAG1o6WN)Oui1^5~Vn%xAoiyUN!(}!V2r`nrqbj&Sx$$&GFm8ip34TzaNcLZ17oRsDyG6)SlZ> z-pPB|>n70Z#?B5KT{cyTk|)}t`p9@FkB1{Y~=#Yfmd`GY(<$`Mt5W*S3=*{WhssZb(1-&}$TmNJ7QXCXw(oFDk=b!!N z!MVNUoLV{3RZKkxTfA;~nhcviP^#Ify47!9xM$aBA6@rx;c!>W*EWJ^aR;9ok?2iw`Vp>GmpIdoKmLyRZP0FVF ztI;K_M;67mbP)|>H=~l4rZvnv{ikCw%7_7D=GH0OyR*m4W+JnFv`UkCm&g=!wo_e-pFW0`+40FeHxm1y zbim_xfa9A?e%Ps|tN7wd+GMLPP@H*;`tVf%(MROMFE{#lgxxJzU%Kbt~?=s zinZ5~oI2!8$~(P-Ch3fBp-vd6GG^ZdYue~nudvm4MQFmai*`ow{yANcrjvPtF-B2I zGQ8Rsv*{Ab9bf?JVx(mch@x~T7qZ=SY%AB|KqJ);dbe@Ad#%G=Z1KiGf3nSM$roG`c&S(Th^mg078@<{@#d=`hOEhB z$Rl4FsDuUwhC;=|I@#fvlET)KIFzNcV}p_`t;T{Y!+jkD6WZku>)D3m9Lg#rvxk=& zF(W2w7CgYKs8zVLP~mchq_b{VQ`|I0%48_uq(L@l3=Z|(@ip3Lvr%%?gBvPNi`N(} z1E~JrrVM|je|}Dz;0iSv=wwK={^hp@D|+VFTh+?H^|`3lzbrmAo9?{&##q8&I8Rx^ zV6<4751cU-)_NSaMfNFKv#H6RY}sAH<&Df{`vDaBAL0BvCYrko6}*{CTJ@v5S^>t; z-dxxZUnw*Jluh}lsow3|7L3}w4d#W!j)d}jDz@NKE5o38L+B~pptAW*taD>tGA)m+ zy&UdW*Jad%sxUTR2WUW8LdrmFruMuT(UHb%#y--C4bR5eRrMhuYdabiMKs}GJw90Zq&D&RSG(ClNlW|c|DWW@n+k%opE!nWBs5cG=UtrWj9AmzL>59 zQhin*$i|xlmb31w*RPzx987oH`awu6O~Z9=;HPRCY3?p$9w{wHZ&QsIAUAJ+)NGHl zEmC{~$|U8~l)(!y-loDHyO{&ZSZyUQe;P^gmn#U$y@r5=6D(g<=^4FogX^St2L`sV=W=!!#U$90sClJf4{n*W1ttnRa@JG>N!D#KIz=sj!A zlPZ1Xi@74R3GjJ!DRqacp$J+QtCHM}#qbs>D(iCq8Cfd8yjX-zgz;p4IvD`(Mojdl zg7<%T(VwTZ7>tAASVI=z{(dC~D_Xn)bq9$9@~)m@Ru@oKVe55Y_Ngf<)B4!&yaIit z=@l)HC1K`Y^O!KrzYiY0S=whzHB2@5ng02ON=|b}f2dJEBc*I0@2}NeUR3QDV}?rl zx2)!CT0@IXn*E6`^II<-TiKroZ*th8#FP{T*dvEF>O2D<_<5?fq0mZV0@5ge8zQcF zM~2;w-nol>9&NsYx~Ca1b2+JkD(C43c}x=>S)@3O=wviz5$|=$cilV<=qXzP49res z1jUXx1zA*ORv%~b)osZmfXlwsD4`GX<{0qAD;}+b+FzS96MyGTdZu8<%sXVzU0#0VI&men6&{fkcx z>wL@`E(V_fI19gXYvHM*Y@N0o5%cO+BFKjbw`ofOI8}fa0*M{;rM*zO%JiBa5lO^2 z4B1QE?wr*m#V3pn5o5WZR`Iqk-RiJ1c|(?~b8%T$PUaf-w}|~&=iaO}FXW4Sr;H0Y zqta}Kr)*)^eoBqE0`HH<#LU;e`krbyncvYLz&T}Y#n2LO0(;FpdnI=n}js- z9RBwj^Hh;2^VcDQ76 zeQ-ZrC#h3K(9h$V7MPXk{BJCP;9O@T2iZWopMFsgP5Z*Vop3vU*n`J!O)x{IqrhoS zvoX$1!J^oCzT@=GV=G%L?V&Fch=%OB9n<9uVHxqqV%Q zT;#M0x{XgIx#y=km-s{Y3ZA{SaPCfpsxnhv3yBG@9YYI#N_bzA>gOxvPT6x>e)t2sSar8*nM-+*4D%ge; z1@u5xqn$h6q&k--$nXK^BULSVlldy{0S%>zRz%BONRBIv<%)Y)k*g9LJo0=?FpYRR z&OHFWzHR;fDZ|m!h8nJ1*v#s|xx0vpdpj_fMYNeOjNOXyOArK@^pcA}W>H#{3dp!= zFOHDW+0$`H(t6H&32oM7bzB)p5vg}{dDB$WxF-nS5ve6Tk{(=;K0kOznL{rYx8je? zQ6QxCt|pOIH#Zbvx?8y89gb>9&@O^%^=He`7{GO3hyUu3DNoiYfTXwE^HP9?SdDkO zT9#vPy&yxF8Tv~Nbd;j9OG#ekbdVyOXaZ4^#akX328|P6d_JbK{28uP(wXHQwhxOWq&m(V zkYTkoTC!vfPurE+^peCy8W(eYv#Jc$5u#<2YV%XXPluzMg-xxf=bt+Kec=>`<05>y zEumDe@1dlV4=AbnmtxvubcjdFAZOZW%-k=(14oGI?`QG`GF?eG1aQBGg1Hnfc)RAV zvVU-cXe7enJ9T9S$n{UaLS2-THXf}0g_ z7AN(^HaUCQf*$~BOJ!V4N5%pm?e7b2#%@*{=LDU_iX|D|+U*EEMdQcoYYQL8nXUBl z3jqw^TZdn)UjV(tR8vOsZ_MToiO7G$l7{b|7g2%SQHN8O$&0!9e=fD5|GC7pG*~|; zZtc1|9LKCCwm&=dSW}9n8Wrfj(#Qn_9^R(un@0&Q@xJE|sA8w7%?Hn`TTckb>&w80 zJM4iGC(WPZyO-qLVh-A}*X6raj!D$zg9{bU^CzQdjgj@?`L*-VbGM6`3n@d-qnXBw z)7^hA**C8+KT+3#|6j(*4f+hF`6s464V-r6gGf5yQp!cEJw*;$T3NY#CM<1wZwUpFH?MaEWU?f41 z=o1+xrY4$bR{Wf!KEUcj@EP-{{~Jv>}yC`Iv#@ z5qF}ZzW8YnNUBg=a&**z_=ulA9(8xpA}Subr9vu#pbpO3&KA> z3fK=#y5K)kWrjqz)4x#1e((DkZH3YT@q(`~4ax5X3~mfcJW}awui06WvF`)>RSW6> z4cL;{L*Q%fi=P0OeT;47G!WICZ2f^1Wi@d`OM}7L6mMBiKXcWTI?o+1c{{?r>>42E z0%DUb=6SVeO-^BW3s|W9S)&_mX96J6yatBQzPliY5h!z%CZ(h2FhY}qr@C7C>Y0Z$ z`cH=hzZySi*C4M0l?lq6JQC-SYH$s$LZ2?(?7*ss`433YSyR5bfP_t8fg zq}SFda+(e?;p1g}F6PiSm~>m5~e!#akWZY_#x3kDOUxYNf}cqVw)%4 za}-)4X{8j26#Byo{v!59;$ipwhn0j}+m(jAT6^{dJd%dJBjxO>yt9FX3{QsRkEKu1 zgdB=3fxU-_h?a-sH$!q0=Fn4z<~ukv2uLNLl1StRwiwpo0}k@{``eGcI}79hZ{l#A zdtM|fCVFC>4;8}pZ9-g{L#~GYJwr>$lmZcp_}{B%du6Gg8y|Fi{|G-TXbtl>DHn@94BP=a)PJiBmY)Pg}Vfz zb!EJ%yh^%{u&`^uO1Ezn%)GI92ByZ_f<#w_YEg6IrsNZ=Z|*Ad!NF23UGrx);#1Fv z%`0zKX0!?g%359|iJIZNbG0z0Mk5xY*?-YPa#i?@x0ru_)MYjAcMfGKxmPRF5Wb?r z)=cu2bhwgC6hlau@7D5hX=%w{uh1uXwyYFoIA-5r-xI~oNRP@d5EmW$o)VT9ElIot zVfi0HOMzvP8v%z@BlARQp~&b;?acLvq0($D0Q8?&jDzba|nr&CFB_@ zNocJmW&t@TF#Pz1&usJ*+_HC3GdVQoqUiGc=f+7L@IYQrwN})F$n14RTsC>@d98Qx z?4;rP_Ji=13MsLe&*#ObNO^vLGT&+QyMz;s^Y!QS?a0lDhGum~sgkW8&bSG@9FS6=q|JC?uUp!kW3r( zsxws>u@=Y5>t-%s-Eykrg;qCJ+4(YuXoMUBrz=A!(bwLw&gk05-4Ux$2e#DaBR~qcBOKZmbx z{rzLE$8ZEl=ePzMX-?8R0N(Lxt|176FSVWa_uTekT(7g8mbE?U7h9^7kCuc97m2Xh z;B&L>jecltmW8yAhZnh! zGA9bLARe3Ni#R>~(i7j8>q&9S$t0AE3G)uU+l)Ti|JNI)i!1$ODgAWVUWB`yn&r}H zd$LR}>-sbBnK5A(!qxftd850_jv)5XpZ+f31W$Rir(E;sFfe^aqroi>)nFf9<`u5l zIy)ujr6!C~?u?7A)b;eApY&fOIwNl8609#j0Ur6oRvrw9LudgYcix}iD%cW&z;gK% zCR#e&S@?>29fP<*Tia{bjn{5?4-5F3olrwwB*{nEBt>WM+eh|jg!Fql*O{qyC&yk_!Y_Lv6<@?)k zf{4dzNq}R8G1P#iV7JhJxsg2zC(>@)UyIgcMn2sJ^3Xo!Y=C~=0rV^ePs;|AI+Qeq zd-*Xr8|Til%^O*80BIfQ$)A^YB($*@t!w+;ENO1*)-@rHvXVxO^UagUaqA2 z*z%-WNx+JtJETj4$3Yl)wI$7g$dL-WUGsjlmf!sv_67NAyLup$W}4S-<7vwed#9A4 zc|iX4h=r?oj%3oW$PH#q!zB|uxY7w(WFX{%0Mqoe$H*5cT8aFbR0%+3qW{{o<;j0P z*LUYHKlq*wL^=(({oO!vvD$;dHCj~bn0m=E<)}qLDPY=F~RFV6XP2@e)+!La?SWwp$w&5Ja_`mg7eZs%>m{T)p6AYBH1GfUp95M!O08TyRW;3tfJ^tCV zyPM$4CD_@^DdKb{ zzxFz=%6ZFet(@8aQl)HO_7tCi5owfN&d2kcLF$9y=7L*h5+UA&TTa7dQyrk{S<=VFJ8>n^e(7;_L`F^vog@n+IyA%)+|!P5Y*Lp)3t&iJsEk;x2S%LjnE-0pHNoUJuvHl zz-~8~dtXVjIqkbhG5HIdht-Cg`p~UhvK2k5+xgcvl-KYpr40*fC6k zw=<30{FCGEAa}>(JP_JoVgF2$dKzr>viHinvYq8PaB}F)`MFPIkvmIO8J^*_e)*28 z);^>_MXsMxc%bXrb?sVk%}Jm3=l823fXeEX&pg=ytH7l=edMvcl}4F%%;X(;>|ox9 zw=d5z(}Os{>;~IKCe*)ubzYe?u?i9pPJBqy5K-YOahNcSxfpU0Pb+L;j`w&Vp$K6J zVha*X3C+0>K&vrJ&jHsZ2benZ`^AmK;X9~kah40d#H*;pk;Ij_CtnW}aR36sAGnOH z7N?D8>Dasf`e`EX(+@$uVxQ6~Yv(3OxykS!?vgylo_os^ttHv~0V~lmTK5`Vwano} zW2@)#@WQ{Iy?q|?MssXyH6bu9mrwKM#-ZYE1u{RUvLTm|a2iIs0?Cd_e@(fE*IgzE zPpdXOtvAug&(1Hfj`Lt=dd1s+cdI6sajw0`*BDddO&yC(=RYh)gE)u6V`Es;LZex` zbz+>a>o}*LPdfj4Xhs+dkB?P%$x!z3-8xBPr$5&no@zdgnkTS3W-BWf-n8aVN;P*>w9>8fQZ3wFATN@vIh^I} z$isM7310kfwuO?A5?APliaOiy7r5;c)3lCCjsMMR_UjwXc32tAn7!_BlNfztITw|q z0PD`3w+2Aqka1bXea%zR-@H28+d41`fi5T<=IWd#0>qaA?DYH$RG)DW;8+6myL>?8 z81dh*Ip+|3z|kI}u-?AW{uv%pBySF{_^>6Xr#;!yW2wx_Wdw|0Jn1N?lI(r5r)q~k zmA(>p{b>y>hyA)YyPZEg(U{Q2P2jXzv|UXF);*T-S|s&XUC=Eg+|-4WKRBl8ok z55LIvaRw?X*v7qjte``BK9%w6YqpO;RbbZm*L{0`^XtSpU~(j;g^riCx!{!Bl%K=i zx`zMfk}^&t1AfXT^8N-BPJc0iJvpz=1V%rsl%*<#g{XM%5$%B+^q92h@)$)8 z=FlwQW;4)XGvYT=d+8a@H$rUzeCa^PK5K}|K*)RfdA9NpO|Z9~?ZHz5%x$B;T!7G$ zi+rQ60}?qB#CFxrEDEg4Y0#L9tMn-v`hVqSIZx;Cj5b&Qe3i@(^S6AmtmC6RItznd z1$o;VUq5u6D^wqkYFCVh#44d-3eu@ipIg_)!*ySsy81{eW(UY_DA0Bj4*49|iFVC~ z2@M1#b1X2LlT;s>U`fWR=nYZZ_Sg9pwFJ|rBF^~POI#&b)f=b>YAaA_AiK#xlq0jq z`MN9u2yD9vd-n9eZ=J(Hh#6^2U&ox?p?`WA2TDVWk`hCihIe20-K3tY7}INey$4eE z+(qa1qqY^Jlw8IawR8tNqI#4Omd}j5LaxA;_OKGY=|&**O{^Ely&-x0g(VO_dl1q zfrxjZ)5MGfac0)3_o>2Z;5hKoveHyip^3+a`~O@zP?AYJ?mm+QuL7Lyi1_4#_0X>> z22;lhc_Mg_e=c=D^v+-lij>MMUyWGb^Vog=`1k1n{LEy3+HwN^D74|L{YiJ{@w!9v zt9`viovkJz)Ji(<=kG8OyPn$Lls1b0_PI&v)W|SAcjV>N%l{ zuoL$s?Hl;Ie+&ei(P1S?aaP)Nx${1+X{Rf0pg8I{=Dvqh|8#YoQMkXp^ZPe0?k<`w ztx3D@Inpzyu7~vZ#2wK~GKKn-0(ye%MV>YSBg)1&KEu` zEQ3vzEa5G9jCe53uu8PH0?30clf0A?FiW9^+W{^?YU}k{Jgf`M0|cRIZ7*aKm+*S? zMB#h3SsyyVDTZvFiDLfie9`}MLb;EuGejViGHZ&s>5#ifKVua8$FKDN^~Pi=N4<*P z8987L@wpNJoaqQUT1v*BqLbPs||0JteQJczTnEG%)X>;Y4PiMg%#G1 zf!qP%X#oiqVy!~q7~I3#c85&85}78wnx!8Ad-~o zz7|Oe;H&L#*n)2s1kDdzJCmM+h9@#~%$OeZFBZ&#`jK#MB7+r1cfd6Cg%gb)NxIa9 zo;d~A8aKNeN3{Oh&GXjd?}Dp1-e0cv7SJ`Z%9LTKrrWX?`cK7 z9QpD=0!g?&zX*mjv#7Ey`cdu)ZC4_dn(7jZHv)VZI8Mz-C#tNqdagvJ)V=GHxkbQ~ z&-1Rl>a+SflYF}cJO1>jykszIpCQdiO#Rwb-ez`aCae+t=oH zdL(*T@sZp{%MUbZgQ5O%cDT1GRZ*-}?~zA3R-{t*bu?WU(j+m@WpclCOV5tcsUf#j ziar!ssn^|I`LWS5H@Y|qB-}IzfQ8}LcX|&;fWzT!2ygB!gm{2skh^@U-YE7~gN$|> zJ(;S5fqFEY-K8%N1D3!93C8zyEERfpGafW#ATo#cXu`j3orx-&$q3S%h!2Fjlu|PT zQ~UcXtQ2it-S9QO72xxu(X|a@;h-@o|B#8~$BYMfhigoz?n2+zV}3%o3*_f%K98@I zeN$%N`EF;cG;p%sS4HJz-}?qhSW^JKB&HNWU=IfxE@O`k8(}>7tG3xl#Hc1!=r->9 zpBuocHe?%+*gXL#do1)pD!?oPXf>*de1TOU;05T@ATcv2U)_FLj#d)1Z0lcKah*_l z8GP??l1#o?pIG(Ph-xc zs)1~t)x=ev`0`W3gTyr*aKNcnch-}dBl$Bkm+CcOZ&9bpMST4lZ+&i$A6Ym^@IUw7 zTi>(RUN9gXaU^!c2QU+jgf6;z;$47G@>Evwm^o@bBGN4`zOCZO-a4eYRLSa|HxqCz<*@GQG|MntF=R4k6j{(d6?B=GDk@ftVzq0e__;-r4 z0WQ+tCqxPx8T@nWOP_o*^Uz1$Uy!B8vH2!_5ka4{0ibz>yq7oDM|bk)aDKV5{EEE> zsQ~i^Dky@t4lg_QF3ZAbV)AQHH3TD36ht&0Bw6p2i4IOvE+0RhH^CA|7 zp;`b3td+H$xJvJpG)5kS+fDv%_*3q_sbag>up`r_ZOmJ$4Bpgwe-fY3z@U#9>yGhp zdY4m7db7e2MaDMLb4BG4xd&l(s1&6bv=8hQT0 zkM*yk-a#^L;aRpZKBe?|>U0(k){i(#uR%4@Pcts_?RPTrTm9>1 z3zoDY>h{LYGTBRxMn57_iSs!^h?-0w@yq1d1A+w)tkO?+A?0BmGa2Z$h6?OJE}qbu z|J~%z0QoP;J!`~3_BHzMMm1L;#5x0N&4n*YF_2vT_RhlcdHa&qb_4Lck1KiDU^egP z&JB;hQ~p`I<+hKY)+8O#qFW(=%p3MnA4hC&blth<@DZdL}I_34tMZ7KFur0+) ztz`UYhq?vhCwVcn0_0%*PS%zt9>0$OJtD6bM@uV3swb{|p5j@zL?|1(V#=B})G*3_ zQ+5-}2P#H>Q=QA37-Y zHvJ>6-cJDHQ(6+RO{}s-5ZjH^FOiL8fhpN3C=C3b#{8iDIm}~(xLJ8^S`d$ z`DqR3Sj;b|`Vz4y4Nlka5=hBzPyNbTiK|_pJTrDv!8^RO6^_%j;BgSlBqF9!nN8@$ z2q<=dLmay_uHL))$TyYzAX4#)>mVEaO38zkgo#}g^pQZ68z<1R-}gIr0l8P2Yu+hR zL0&!8b$&Z|HG$81^X~+?8DI;0yUy20yLOi$;&BBPU@dW%eXTQ}49Z%!G`Nv@^Whgi zNh{;~&M#b^Y^fPlimhvtk&6-82L2_p7&W%p>Me>NDdktZW@^*DV zM$lX#K@%_ip(!{WC}(|ixJqeX_qi3+hHP`hBs|lHJ@+=l3O(hfueYr9c5Jz)%EItw zCYADkWFz%n-QJS^j`rB7{sn#a^+Wo49$J!`C(3*jSgya?0TSF6ama{r3e`MKdC~Hs zz+x#_CCL5b=&tVPpih3BUCTVrW_y3DCvytui(X|4 zkn214>V^8GP`xyU?x;c^3mzpdAC z63|g~#=^9a?oI4k0wQ>SyOaP(!LyH_gr+7+rQ4gaTPqchz#5b-rlJWl8Fz%1_VnPm z*QC#p_OYTL0~WNcXuU3bXh&2*nm_ZL(i?CYcUWf_rlQq0gE?&IgV}w0e*rPzkiJ`Q z?CD=JzQr2?=pKu(y&K6kb6PHs`wfnHZrx5&D384lQ8;+}SFY=wIHs#Hr@KI>tF{V< zy%rq^?=^c(@g$9Ci7Y6>U9^J$88AalYj6Lg!$yw}Wg3*QYkLm<~E*6+p?Y`Wx?}ftba{AlIu6 z&Cc8}2aGo=$#1L-Bpf9Nemc4-5|$G(wubn1{mvt6ovHedQHS-VRo-x2Ji;DdZY`Qo zWmhC@o{!EMVa$$yoz(VlkRu~kI1LcaIhJ>V+AtuH zg$gOHVV-oaiM>)6u$0u#Ma#j;Q`TTMK?P<^8+!NMuK5N4<^TTj>!5G(5oF4VRc*n> z7w(;-<`h^Kni?G3r{PI*x$SVA0PapU>F&vcW$Gj4KmO

IB0wqxfwUsHiOv(XhFNzZW*`yL5lo_JZLC>>YEIw{!Kb}>_LNL40fiFGPd{IWb zZcEQzq;T8w>*PSHNRj%-HIa>&E{h@ttH8#`3s z7pbd@X{g`*dsoeG;}83mrdvqQP?GoqLzco#{hPDb8OEb*I96 z#8gxk!%%%>!Hi+g=aR2Lo@tHFQGQ>^Z}ZwyV!c0;lt9|K)`e8YO2s^=Xlp?O`jDXL z?rq9~!RL;cKYPAw!IzZ^xF5%#}PMFP5)fPkfHPzr%TaO^D^+ka5qRoNm=D+_3fpTqMWYUJk2Tm zYR3DwG2Xi6YLti1CGHyWxdw^##y7mOcP+5@kzq$g&aZu2j z(pt1swSYt470D`Qg%%HLRwAV~I>BlsYTcex3g2_I)F;gD#`%;t`Y*4Uv=UZ!*Iu2P~+uk-sZwW6~xjh-)z&nSB*c3SdJ4CdUusKYWl<@=m#x zf1@Yq^G7+OF=+iq6}>6O-es{zfu-KwMG)HwNgye;RYAFk?KLo&zvA4m#Pyn(R%2U0 zKGlIm$&QP)5m?2;o`<+S8S!HDDE`91nlmXsK42)AIy_6JwRV1zgGINZGVQ1ieD=15 zc=;lN-neaHd2pBeAQM3!M9lRW*925^ov{%85>)dn(nflL9VhwhPAnevREc+Z#{9Jx zL!dI8VCLI6_RK#np}Ka*pGc1CjZe*~to#e}eobgjAh5K)$9Yd}tez?6qoO(lAQA2X z>eYIl}^ z!Le&aR6qmCprQqWkgTyTFYo= zV$hy0P*Jb+{^;`c5G>sY7j{QxHs*~WC_chI>eujD6RnE`dxRRGSB6CG&{Rt@?8wV0 zH`zP3ghmuS|NPJb5FA$?{%}>_7w}A(YC&B^GJo4>DXsnK*&a~BYV+IJ$@&P%FUli^ zz2)E-87|vMqRBHUIi1>SE(0-RB$Z3sFztdZ55|m7lpt*={7kP+!Ma~vyxHB`k!DLz ztzWqc)k@@VJlN`pDbsx9z!n-4&HlG!6$1S}uncOVAatnscx1CBa)QxA$fiI|G%nj~ zO2Sz(n|2?&ns7f0>v5dnvIlByYMtEOdd(kk^2pWr08RQ4Q2zJCITc2h*~xp>P3I`m z_*->Ld^&c_xvx#)(nr13c*aZ=_(fLwtPlvhX5bTOp+Kvk&!6VTF`A(EZ?9;iN|pZN ze;2|G-;6$fYU5+dfcWFU>Mj@U)TZ4sj=V_Vv?3<#eScm3`FtkrUic3mmolj2Bv5L5 z(fKMZImW1}%&{aQVi+OsDRHaP6jNyiul*zs%`YdgO23s1{k2*5GyA3gClB?%zkoFH z|DMEukKn(z;J=0N(|?cPzen(Ym0$M1uj9Y3&pVRQ4)&B!F)Tapm literal 0 HcmV?d00001 diff --git a/docs/assets/geomanist-medium.woff b/docs/assets/geomanist-medium.woff new file mode 100644 index 0000000000000000000000000000000000000000..0912669810efa388e09432588da0859d28da5576 GIT binary patch literal 19236 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 X2eZYWl5+6|D5q0h00CGyFOL8KQ;7od literal 0 HcmV?d00001 diff --git a/docs/assets/geomanist-medium.woff2 b/docs/assets/geomanist-medium.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..026dafe9da8cb7894397391087089812c213c4d1 GIT binary patch literal 14807 zcmV;|IVi?=Pew8T0RR9106EwI6951J0HI(206A#@0RR9100000000000000000000 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 literal 0 HcmV?d00001 diff --git a/docs/assets/github-logo.svg b/docs/assets/github-logo.svg new file mode 100644 index 000000000..9dd8eb57a --- /dev/null +++ b/docs/assets/github-logo.svg @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/assets/homepage-modules.svg b/docs/assets/homepage-modules.svg new file mode 100644 index 000000000..bd9521bae --- /dev/null +++ b/docs/assets/homepage-modules.svg @@ -0,0 +1,326 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/docs/assets/icon-square-big.svg b/docs/assets/icon-square-big.svg new file mode 100644 index 000000000..d4fed6ba7 --- /dev/null +++ b/docs/assets/icon-square-big.svg @@ -0,0 +1 @@ +icon-square-big diff --git a/docs/assets/icon-square-small.svg b/docs/assets/icon-square-small.svg new file mode 100644 index 000000000..d7b7e40b4 --- /dev/null +++ b/docs/assets/icon-square-small.svg @@ -0,0 +1 @@ +icon-square-small diff --git a/docs/assets/logged-in.jpg b/docs/assets/logged-in.jpg new file mode 100644 index 0000000000000000000000000000000000000000..1906b25f4be831e9cfd40218a8e30c1b6c7dc3c9 GIT binary patch literal 233276 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 literal 0 HcmV?d00001 diff --git a/docs/assets/logo-on-dark-bg.svg b/docs/assets/logo-on-dark-bg.svg new file mode 100644 index 000000000..952c47ede --- /dev/null +++ b/docs/assets/logo-on-dark-bg.svg @@ -0,0 +1 @@ +logo-on-dark-bg diff --git a/docs/assets/logo-on-white-bg.svg b/docs/assets/logo-on-white-bg.svg new file mode 100644 index 000000000..a17b8b5d2 --- /dev/null +++ b/docs/assets/logo-on-white-bg.svg @@ -0,0 +1 @@ +logo-on-white-bg diff --git a/docs/assets/logo-small.svg b/docs/assets/logo-small.svg new file mode 100644 index 000000000..9564fb1b9 --- /dev/null +++ b/docs/assets/logo-small.svg @@ -0,0 +1,57 @@ + + + Layer 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/assets/site-logo.svg b/docs/assets/site-logo.svg new file mode 100644 index 000000000..5b3b22a45 --- /dev/null +++ b/docs/assets/site-logo.svg @@ -0,0 +1 @@ +logo-on-dark-bg \ No newline at end of file diff --git a/docs/assets/socket.io-demo.gif b/docs/assets/socket.io-demo.gif new file mode 100644 index 0000000000000000000000000000000000000000..fdd3e00942aa4335996111a58361ca36c7c6dd7e GIT binary patch literal 59827 zcmV(=K-s@XNk%w1VPXf$0(SraA^!_bMO0HmK~P09E-(WD0000X`2+wA0000i00000 zVh73shXw@%3>+g9Dl{ww1u`2YIVA-%Gcy@DMKU)}Gc;`;LQ*J4Su0a=Fk*a869`c& z6HzuYaRd)*8!2!#GfFi{R5o;NH%n|eSb95Ba5HmTK^$64J9kk9Z%;NyM@LXubW>${ zaac@wQhRx7R%U8!WqNmYXnuTmX?J&cGc$`hIg&9@lQUeaHFA?Pc(pcq$W=CmQdo>l zagtMcv3FIAXJ(OPcb0i$g?D+1cXym_dbd(~!f<-PJcp|^jm|TZ1@E?d&S;z#_f>;8JZ0% zi!(E%0UojhB#Jdpk2PzlEK-+M36oMamuCZ{To0*QGpcM0vTZYsRZ)&ka*%OWi)Vd| zd1i@tcb92=l6hvGcXy#kVykvkq;`1N01wv#DcB-5-~bxr04w1nFUM>T$9yZ`LO$(! zI@3&1*LOwOY;oaDL*#Q-=XQOJGmMsZjf;A>u6>HGdbfvq!M%Y3zlAxBl39w1e3^!N zo|12vlXbL(SgVI?tA}^2o^PO=bhC+Pxr=tRlw-4>ceJH&%Z&oiiZkPq3G0zC{$Y(4!+L{=i-V7!j+%vtlarN)jgymzl$V)~khhzm zij}Fav6z*yk+-y}ld!O{iHyjMv(1USbT3x z%f`&u&ehGs)7sa{!`afu-QC^B+T_yr*T?1Q$L;pZ_Wai5>DcS^)&J<%`TXiMT z?CZzt=h@}@*8Jql_vYLA_s#zO+3V};>F)9E_v-5U`t|JP_3rTe`s)7v{s{j7{|OvO zu%N+%2oow?$grWqhY%w!#7D8B#fum-YTU@NBSncILy8 zoJq5$&2l70rSjkb)+iF?YziGpl%U6>NRuKh%CxD|r%fOt?uiw9b0~@tV*skEih!ZPb%(yW^ zwmWi{s8g#>4B74E)n-Y{?g+cK?c2C>>pncY zcgEeog9{%{d|+$IaEnXz&Ag)W=g^}|pT4_!bL!Z$Yu}Fb_*=@{X^XuQwfBOB|{RJrCfTqot9Dx%3CmVtcHt67kdnrg7gcMe2 zVOR!&ci}-2j<(^4AciO+N*!W0;)y7xI8ufxmUx+pFvch&gf12~?#U5 zOmZ_50@2fmt40trP(7{4O!GgR>}+mF9Ot`lzalH!2@?hTlZ+0wnzb;*@kyN8%Q2%c zbIp<5oU_vZ_zbkr0ugQWK1ie8P`&p$4YGt$OHK7ZR%8E-*4F+qWAZo9AcBG~|Gd-6 z%-|@V!!YLj!_65+3{#Eah%bzTE#DL^OX96O9=XOxHSO`!?=ZsC5$oU+&ls$b;lT{# z$Swmh6s5j;>!szrYs&&1Oiau47=FYnN9<$IAFv2~M8O0BA5HShL zLd@YxN+^(p#XG)Kux=|l&sA(~4#w(lL?4~ikX%KNv9m9fjK*aWFs(Sck8q>)wZK!Qm=I)XGeB1KJD$9lf9 zRxDmL<3kY80$M1Vd~1+Ga7AApQt$X(?ZHWC$Vk%Fn z%mTr(mO0wx$AY=BV%8pjC5O>7Guopnt`mg?(#(>c_J)nPV;?th$H~3;8bv1WCz-bA z*(#9@Of=;a1+Cjs7SI_rxZ6+-?XpOq&&(^$`8m=%D^$tsYhEu2d$OuU?pGn!oS%bLNq{IiVb?sYTH>!-# z%V@BFLG4B#JDJH|_95BfY!Xgd+RGevGZB1kIw^Z|opY6sD~4)WL=M%P3+^m<+y)#x z>lM}hN5#Q8&e+vgbWQD+D zq2T70Ev*SVp$=2{3ZARkvDj{lws-UJ{7GESBNw^YY@u#zPZl$tEs@DeW%Sc&^JgsYc*s*r@|1@g>w|{* zn|+V-`ql8~(G_}Kq26I0q{{DmUtU}hKU5cem$F}6`rtby`Ds%F^Pi)72JN2r$JZ3} zm(MciH)Z?M&p!Xzk0t(1`J)*E!@=|;VtS^WKmF@hPW2IVebASmQtuaA{2$W(qU2xw z_g8Ye7k~t~A@fHd^;dujxPUd0fDHJ61ag1_;(!oXffh&-6nKFeC?DCDCp>a}8yJEj zsCxrAf+iRq5-1=Uc!Df=fh*X8FerZ=NFPfAf-!i54ETaLxPzcIgN>9XHpqiQn0-1p zghq%ODHtF{c!W$iSWDQ1P^cM6*dI?Ag;wYT@7A6dACV7Mz^7=~ns7hSj? zV_1f2s3~cbQ>V*pBY_j_??d z@;Hz5SdZ|SA@-P$`nZq$*pL4Bj{q5v0y&TbS&#;KkO-NO3b~LB*^mzTkPsP>5;>6+ zS&#yD!Gy@*^(~Vk{bDvGC7kpS(7$- zlQ{pGlRCMRJlT^z`IA5yls_4hLRpkXd6Y<*luEgjOxcu9`IJx@l~T!(L^+jKd6ih1 zm0G!#T-lXg`ITT9mRnhsVp*1Ed6sCImTI|{Y}uA>`IbmYmT)znT#2lq*7P88m3}8mtH!iW_qS*nx<1(rfS-z zZu+KhdXsD#r*vAUc6z59Ij4BKr+nI{e)^Ak`lo_AsDxUm;~1!hny8ApsEYrJsEqok zkQ%9R>Zp=hsg`=FT1u&yx~ZJnsY9x%o*Js6I;t!Rs-$|VsG6!likYg~s;>H~HfpM{ zI;*r=tLiDMwwkNDx~tQPtGxQFz#6Q+>8rw8tj2n*sY$HJx~$CFtdyy&&Kj-KI<0{T zt<-w0*qW_uX|3AYt={^rS;?*7I8|oxuV^|9 z1+fm?h_3}P4Bog71fj3c$gcvi53&%EB=-;Iz>NuOu-(X41hKFKOArnlj}3dUYD%vl zO0WVUu-eG60^zUS2(Sa;vChb`75k70E3w*mu@7s10>QE;OR*RWk1qdfuhI#!CX0~Qs*@(0;8;u-0wDOp+P@A#ndZs$djXhhkKdZGtD-ctw zvPpZiFgp-Ri;YaHuue-5U;Bdmyb2|_ztBqN^vqT`c5V^P62(ki!4}L4Q5u3I`o44%Pwr?AqiHnU1 zOSW~(wRfwwo~w|Q%d-d}vf2o^oa?o#tB#;cwNm#TYC5{tSh`J%wRStRor|zx>$tD` zw__W)syn#L8@kWQyVb}=>6W?1i@L%~yTrS>iklAzu?|Y0xu*Zywf|7K?RdLsdbl16 zz0@eZeG9zS+l-P6w%Uu0vcSCu;l1GdyQw?87E8Fb>%7FNzSGFDtwRv7n~jeXFU-IO>A>rI!&zIl(d)t&?8D|L!-iY6W?IA0c*7)z zzdQU7kQ={6TfEoEz9Bor6|B7cYqJ_W!^#P=L@bT(X9*=Z7S0wJ&iR@1UD_k>CDC~eb5j2(*#Y$Lrnxlz0yYw z(VV=FOg+^w{hKca)X_-G4*k)$e2uwa4*2j@`LGVdpw{r%vtf&2gR8n+(m;h}d|&*!k$!^!rtUt=VsF)}#%MoUPb< zEz6g@*2YP&e{InJAjrII!I)jp-2A^yKnz7^5az(x?D%4(9F2obw7IO!D}B~B&D#v| z+jO0;Ic=uloT0F7$pk^$5p3JmxYM~Ez0Ci;5YA1H!cDqveBAV$+^22T->negU5y=` z!>(PN-!t4#9IzyvwMxz1NnN|cklhQh5A==J1Ci2it>0G-+%|36Aq~I&tq=fijqi=y zP951$t)}z+(f6I+&Zysp&EE~45Dz|&1WVx5Y~YWJ;8v~REq%8iju0VEjS+6k@m-uf zP~)NP(T=>)a=p&b=)290;^$c7Jz(9jEWSE^-YDGN(&*#h&De|U)?zx{87kyAUgWYJ z;2W;hXU*j74dmuX$$aE{w(Ef69L~wUyAOIj48yPv zA0FHLn6-~B*4Yi^&RE!Veh_w!=Xw9W=hRr+eEy|U?xJpmP5RLxX ztqs_LPUiZn1@8w9Nvrxi{)Tc=@MTdezEPB;vj^n&1@i$A09=PS&fwoaPPKUnS_xIOnT;wp5G+)QAM%ypJaR!B||@=pD@Rz7F(0jrRW1 z39jwZZP9zW?zrCWw=Ls5?Y93O@X|Q&8eWh2-q?H&?*4x40AKIl{LbkvomCx;MUb_P zD~<3T%+u%Y@4oN-7|&qM?*sqw=g+9|Exq!!tlfhi!pn~EcslaXSn|J4jVXWg`I_^p z9*;1;4q;u|oi6jCZsyO3^9`@_1#jgc@0^TYjS6qWvVPBJOW0$3^82XK0siX19`(Y$ z^A(@sL;s97-1ARe4uZP%C9Ufy|Mgt$_6ttUV~@n~X!g~J_9`9hRvh;3{P%f}^;tj0 zZ?EQK8|ON$_iGEXz0TT*rqH@-q(*O^6I6SkT}>gb5WE9QMzl!(j^tHhlQcoWdsfDqb{5(P2JW z1=m%?Cs3kDk|qn9d$=#;NtiKZ&ZJq>=1rVAb?)TZ)925Gam;PNnKI*S?AoC3UOQFsXp4A36NLZmIcDk8f*>AK$$RXOu-g&geW>12^w(5ha^17#u(j8@kk_-RB}lsn|w=01_LuoyU#Wx0=ytE z)GwFDh=DT4b(9dV#|f>((jg(Y+S0ndRBQ50I5`Z_I1=Nu^Uf5X{8B$D_X3bj(=I#H z#hBjWk}>};_iQlCF|&*@P=W?cQ?4~*>=RE+Gu3ocPB-OC(fuBr@}B^I9B5Echpbew zCO!qVr9&YcPe@a*Z0(^`)vPF1f^s>_%}#?AmZ~{NL~dAQlU2;sS9g5z&qq%~Rm)u& zYqi<^_Td#sGy#?NR%dHmwbx&jHTPU}(^c0g9I@4p(f`8oR#0#Wg~?FH^u#tz3!|l% zOjWBj$k(pKT=!svhZ{=7<4R2UVTciG*WIuTHVDQlWjwXsN!=P3F@2lmch-3$<(S%s zwk3jKQZ0`7Wtd}@8O68OvH514bG~^&!c-;#V;?CbqF-^XOsq6gbygZ@{oEruXe*z- zSLpvp7YuM_tnnw&tb7=J_9OpOx2NZtV?NW5tjTJM5-2lv=~6Nj8w`Q?2%T zZ@&BXyQ*u;m8l1$(*(Lqwre8|Z^H(?TB1)=ox4`Ww__a3$N$z`&V}hbc5~2`416tM z7b09g!=cR>(hAXA+~~s`uPO3_CKtMLnbs=^^U!WIwS#srltW)-QTW0d#q2 zyI0Rm`}g_ZxLfiCP=EsrR%sA4lhK8%eaAx_>jq*#pCv?gih{vdG}JIG8*d!o-FJ z5n&Hhctj*7kv@(q-P#IvG1Vc@fpl}!)UvXet3=UqWcuM0&1XeiDN&4!IibVGct)u( z(Iz#!-{Gj}Mbs57jEc$P*=kZa>QzySx%r|KVTeXR22zlYc?&UaGAIo$aD8Y?n~`ca z9!F9IY4np`^17HC*hF%JkksKIJ(-g-eo~Y=DdZvRmB@j((R!KeWFuP{l}X;@Ett&T z9yh~EnBa1hyX0jrXM#hry^=a{9F+`Vm#DBbkv5;o+*Dw5sa%fdkFBd7-jM&<6=hb4 znZD%aOhVaBa2f=d2b>)-6=}@m5#gGo%I46v$*S={^CbCs&?TX>&ULi&h0P3SKmD1+ zI(DT9IGN>UREf9z`NOv zEm{$bw&kHTiD=qrg-~fK^fe3>CP!_0)854rC-fXCBUks4T;)QVY8wdp>kLUeXN5R!yv{w*2=(w7?rLxS!z`!QiT6^;;)*1B?8h2 zBUr*3mOq)B>s`f&RnMX^uQ%DNSADt?z+$$rhg~F8&B~OMeV0qWs+(-7R}x~&Ti_0hjXFW!H2a!PutKSOie<_=yH}`-zND>ARc`&<7hD2@7Q09sZcd6Dm*Y;+ ztvXt+Z-3(4oxBA>(;aV)y4Tt5##g>gO6yJ|8{S9`qh2lA2PIc#-k!WLf-~VEG1<$I z{j#XPl}z7!1*lyI6R^Hqy{{JEnBN39Xu%6%?oR}~lL8m$z&^?_gEs83_(fR7E1pkd zYsz4~;J1@V7zS%mDh?!^q{BX`nQXuEE`f}gAT+jdOK|K*$Fl#pZxB|p_gu`Af~L~K z);kE1`FmuE?6@aA<_R-{T+0S((#i_PvUQ8sWHhH4I5q3Zp#CUhA({gpJlh98%<*C^ z^8{&zgmS1PtH&@4QxtUWs>Ke?0L(67P3JG zJ?Bc_S&nCBbg4~^m?DnQC#hC75m;@+5T<%2uZH!kdmsx^uUgi+-nFZHZ4g%5I@mOM z^{F+tXk+(n*gYxsK$;EgU!R25H4!1M8~l@H^W@ptCStTDGHqgWJK5tV_ueRy3wgTup8gwrii`w{cnJe8!Z3N4S2y3qHlvIdf*9Xc*7Ij zF8?~*;0TxaiXmQcjAuN!fs?7m9ZqqNZ~C<^5g*r`O5E_@&UVC<}(NA zf+9|Hb+;VnH?8B%cm8vr`)(NPcyZ8At#hOMbLd4+defaQvsypB-AI=@H=|y4tY=;8 zTdxn*x&C#qhh6MrH?`Nves;8{UF~ZRr`g&5cDTn~?sNa0+v$FHyyso-dl#17`Tlpn z2VU@le~;e@e|W?vUh#_uis2dmc*sXy@`-o+zVbc5eCJPJ``hP!_cvAje=Hv#&G&x!%@3y}xWgZ=5T`r(qKYN# zqaG(oLORyZlO*t>8aYt{I#ki5{`)_uFou7ChWUuU`6GfP&;^GfKm(+S^!tYdtO^A5 ziC}1u30#OL_=k5;K>K4qiCDnws|g3pIPeoc@=Lh%yT5`^0{6oQ_>({S`#}8DKmPMS z0K~xoEWiVlK?P($f+#@`WRgzY z!3T^FIOIS%3`Lo!!#m7FOWZ@k_`^O7#FH4rFw{U&M8r9)LQRRpES$tHbhfKQ2twqE z3*5w-_(U~y2Q-X|M0^ibJ47N_#t<|He_#o6P{k$0i3@xOTKh$WkVQ;n!dlb`XiT^h zY{V2aI9((HEu=(WoWXCriDASEV@#5HY>IJQj%EzUdrXKVkVa~>MhoP?Z4^XO3`U7? z#+=wkTx=3uR04L`!d{#SgVc$5G(-PnWJ4sWN2X9n=5R)iG>G`)2PfEvWTXl`q{wir z32!V!aO^-^G(|3(vtvriw zAczet2LdFOia1IIBtWtph$K*l`^&$xEQd67!xF4Nejo;{7(bBQhj)+yuEdA8B#5?j z2*4Z&DX>Ej>_-l)Lx-@-Ck#a|;fG%A#K`=I$s7m*oCagS3a^aFgBVT63_^dPh18VH z&`bw@kcF%4i^n_&UI@o0*oXgAG|d96z`1mY4m?f6TnmikO%AL-GR#WFWX!eLO$AKO zzL*6WoXB9*N?rgLd`L?VEX>2iLxadhh0w!Mbiy#S$_07NXRHX9WY32vP0IXB0Te>3 zd`f^T$C*??s#M3Tyva(Oz{p%p4`e~H{D-_e2(vtkv~Ukq|VVS&B|m!%zOvU>`FH5OoI5#(Co<-4a|Q)P1XEL zg>cQ?lt$TH5FZUs+?>vY=*^}4&ER}bXdq7be9vjHP8gI3C3Q|>j6W1bQpluI?3_RC zq(ScVPVgkm5+%=qFwg&lKu;fRN&s!o$1KiTluyZIL+Pwj;e5dSTuQ0*$@R-m0Uc1i zOhSCnEcLv<1RaO-Jj`|AN@z#|VtB|x#f2mw)JAm(MYT|}Ar*Eo2hCas`W%Q21WmY9 z%)49*%_>R3X|9er&l+h>n)KDdY3nWYDWWnEbLQBO} z;cSgU#R@*7tj2Ne z%5`|l`0EQ=g+>1&kOFkY$`ahuhT~61q)Dm-RCPTSgo^ob<{z<)t=SWise;b#mHdQ%c~?- zQytl5?b-KKRzu~-m;Hxm^@nN2ifXmZYc)=U*w%sQ)-vqSa3z93JR6kqDO_&r^3k6PCFd`sOzeoK*EzHz}Ai!#XwaRo!P1IKPLsNH+*(TM< zZ*9^NtW5uYC|x4(0Rn`@RsC1Zb+&_u*rgo9gC$)fg48*6zi)`Y;MCnCOwc*>lKo>+ z;Duh7B)~f~UH2o#f~{SGxZU>*Um`f&=XB2B)mGANO&X+Em()3-3~?5 z-t9`@72YlM*$_=(SA*ej9N^JaU+>+;f0*9*RluK2ObK?s?0rt|eO@p5ULY1t1C03HY^9#sJ};J$@gM2+DE zF396;;)8%-{g7bAZBs?QzYES_K&%Bg?%7KSuA6O;6qo0#R=Bb3O?M3%tx0r#$Z&^g3#I1T;%_a zT|^Xo#CwatQ?}Y%7EW1iw=a<%eia>E+zrYPJY$zCWDCVxs2Sf{5L2G}VoMPd+8*t0YD>H3)P*Lv{W? zc9!I&6zQ0TXO@;{>ZRxGEb87oU@T1Fv+d`HR%Dtk&sO|Hf{x@LKIm*r=nSq!hNeM> zF4g1QQHdsHpEOP;2vF9n=c|Ot=M7rRlnBf13vkFWUoPVw@PQ`Ch1IHCgKlP(uEb;< zL~7>H5;W$CgyEw!Y>CAg;0(pNyh+_vr{^Sw*hEG_bm=;UvbQ&Pr$2RDTe_+}`MPoNavl+X?J}BxnL(h}4oD?M4>J zW-I8XjM%;qhs{999#8^VAO>`3jiV;t5js~p4Bdj`*mEqn2;{)Q#!BiwY+xhY#a@WU z#)ro?=S|#g%hs&9*6g3=?Emv@OvFqB6z!Z$%+k)ztE}yv+28l{Z(vRcbcStOkZsfE zaDKh*p`7jzqU;673g3oKGz@OcHVESG=i^Rpp=9p1rd=r9!03kG35^KgdFdu@epgaA$R;?;t^`kKTmoM22jDE`q5Rpt&}ed`Xmhk^dLwf)#|kuebthl* zHqYrduTPSgb8oG4OULt0fAG%i$5j0D&>qSW6?D-ZbO_~-Lx=W6@5bh|O-5foM_+Sx zkMu&+NN(SaOPBN+x6M|+#x?wOXbAOD_x4pq=3PzoL8or@3;6#+rgD9ib#0G`*zN8*h{3w;%k5DTtEk8tw@XY zhjNewBZ)!Jnwwv$QppMT;9EKb#;rO0qS0=#C{Wtt(_IX=*hiG}Ve0dX= z`Apq!hsZ!BX#AeldEgv-pr88?C;E3VdcFK?$W(fnj`;su*Z3!l`emE?Ag=n9zWS{9 z>%Q#zX8ZbGKHt{&`PVmlArI!9RQuMH#fA5l{i%8_jK9d4_uwiA*p+B0O} zoK^=8Hi*(++q@~QZf)vysZ@cycwY4fEAP|NB>im`XfyEatO#!>)W}cmU)DZxW2LC? zwLl-~sty+zlB>g~t21}Sccdce(G9nA@9zCO`0(P#lP~YR94vhQJb3tr4^}zz^5@g9 zZ~s1ig%4vc6-uNuUyWgw+esa~GXqkqo5wTi{B_aR!Uu>t9R2vbzg}B>KBK~%mgg@nG+?UER z*W_~)nlznh)?sI5mHGMkC!m1}Iw+xq8hWUp`{_mmQUAz;Wr40KwcI!aF7>EeG&%(u z5xo>y5p_KgeB5WM)aM24ZC*LdRrEwkTB*rYK#sRIE=SgqDHP z{ZnM5x@w4NMUsNqXF;ICCS0?~iE5RQ{z;M2mjyM-)KWYF$7Gs(kqITNr~U*Wq-gQO zN{y_UsG&)+QF_=uZq|w>sRiwaoD%Ge+FDH_0Y{XibgoFRM50c!>rZ=jYSEO4T6{6a z854w_dhEFepT;4JJTjn)64WTBxH|tUWTln8nkllIV&o}a(#CsPxuq`ZFRH4B=B}%} zrt8qG*zRi(yH;M7E5yC-^Q+A!5BpEC4;|~*XUe`@ZH>@AS+1x)I(uzm+H#A~w@HOt z&$uHtY3|orE|xRIfh7%~yYPZ3uVG8oE9Qnd=1ZKZ2Jwc_zXAn3FoCxn4AE-}ugUP< z4{I2h#GbZDGUuIp{yFHOi>|X{`F_N%r|zwjuRKSD*l31G=gZGJ?BttaNdByY%eJZu z+|Sb(y`307QeQ$o}`X>0+U{stVfW;!7P7IbDO?Q(kR_EFEa*2;0o8#ynJn@ zck82=0)^DC(ebc{7~|M_+Vh_H_^^mZG?dh$WICk{q=U_C-Rs;DxPlmvcDCD4?sjKG z|JhG?ITKRxju)XXQt*bY>WW38H$7U35K@rR-mz}zJt=~Zj^Yzz`P6d0FTs&}|8N%m z;Fr8%VeogsHz^DHZ;CwoBXR~vA~YgUfjN;|sU8@i2wsVa8meHvmc~5|Hf%&r z{Ghy!W;ppxq>Q%X2MYfQCy^Mokdon`Wxi6GBg_br3EMM*!Mk@!Y3+Y*;98B<1bAZ&nolOKLn%w5G{!tF#2&4(|dyl88 zN6tyoQy@`@pQA7WEFj^qcOnEPktR2gd!|z!p{d9;%J>b1ptGCbloUc0I+2ptVmTjM z$ZGtf5%dA5ETOa{UoaUGfl>%566A_Ulcysh5cFfHDy3bBVNHB|g9#8(#hDI5Lbu2? zc{atFEESiInSKK}DdouGjwKIP&}<;?Oy@eCL?ulcv#M522oOCs#H(_(t8Nh%K|Dnp zW;zp^1Y;95uXz8>Z2qL7{O~3?hbOo{&Qmg86G%hV$xb3X^<(iotF5j_ke252a{LsE zKj#V1GA(SN_%!GO6B@^bCd939h3G#d>mJIsrlN7|)|O3o`@f|%DWli4eK+Z*2Qu6Ml$kuMSO zn_v9$x4!lbZ+x|@U;66zzU}Sqp3plflPFjr^6hVY>04d_JD9rwj&L~DD`5+3SiBx) zNP*{jUiJTuIKux`FpA5|-wR*2#YfDl5JBeR85{Ax93JqB1MJ`ibC|my?y-*DOHvFQ zc*E)4F^e^vYfN+RnxlG z^KtZ6ZLRB3qZ)_1rVpzZT-R4)P}aXbHnNkgY#L_^w95uhumM|LcM^5h&%XAqaV=wP zbG!e#&F(g|LG7YVbCuf11vk3Wt?qRLD#Yx*??TkO-jUWer0uQm(YbryZXWN9 z>Fw`<6TILCKRCh@uJH2Ud*Kd$IK(3^@rhHs;ugO+#(CKAjB~u>9{)JVLoV`>lf2|E z-nhwAuJV<$yyY%`Im}~@aFolu<~F}M&U3Ewo%6ishN8L8gD&);6TRq0KRVJ04)mlm zz3EPWI@F^s^{Ibu=~TZu*0Zklt#iHWLAScs!!Gu*lfCR_KYO>qj`p>)z3py)JKWnh^49-- zyyY{m`OR~_^PbNS=07j`(UZRPrk8x^Pp|sbv%dANAA9OwFZa8@eGJ4ul-eVFl))APyZXV8b?O!!~RKCHNsA9^oJ&-v(~q zBT8B!9%3RcqCos%BLYAjPNFB?94j26AzDKyIKn_Iz$S{|0(@eq;UOyuQz&Y~D3;#Jf&|m;KB#i~6NE!-6N+cozqeUiSMjD|k_?F4&@c}C1zUYT?+puVJ0SMB3oNp11J~) zH5_6n_@Xa@0$gqbH3-BF$iW-TCT+@rUk-p@$|h~jrW}j`1X5#YO66geUvPTPXqM(_ zYC~$uqBgK*BEBXO#O7}D=56NYbiP4v{$_D*r>gN{C~yK#Vnb^BVklSwD2Re6gn~fW zz;$A$UtWQAPNy8$01+Sn0N^5bHrjA@V19~>cY>!pj;C^(Cwi(U5wPcV+9qbg=Vm4- zecC5}_NRm{+7W2OFP^77ih_lPLKt*FFoMEO3IujyXI{R6M;0ZC;^l}&BLFDCg!a%> zz9@K9=!J?xhHhwwerSji!H5E;iFPE4`lxKOsEf*|k>dYZTV_KjfPyTdqa_$4B?RLk z^uQ3bz!kLT8(aZdM!=P}=M~663-q4?+~<*kPK=f*cO>bOHmNo~DFZ|)C`@UUcIkC$ zDN%AMmVRlN_Q04%D4PE1be*Pnre=DAf+ifJHx9rKDk=alDx-QKDmDP1lFXS->Ou(W zTVg|@9_m0O>Y_%Vqc&j+M5?8h>Q$X)hK7PDh^G+@L@7MLI*MQ>0svH+D)t4TB-(1B zpsJ>-DyzCGti~z@&T6gdsOMwQ4{BkZFE# z;;|x1rG6_xB&$3wt0Lm0rb4TjP*jxAy;lw~8yhj*g)A;x<@AW0Iz!8fqBS zfhB~27i_^64D7$w0m5MYNOfzO5l&W*F41DBNw{V#D4#tlt7Iw+{a<=L$+JE-N;40@7*%9bf_-ghG>AZq61h z>XN6Mr#9$ts{{FOp)bwkjK7f+f%allmlcb_48MV$O;pA}(+9-mc~XXY_&x?~3d6uBz%@ zFA-$#_I7Xi`Xcz&?f5b$`7&?qqHm|R?D`I{dEmhvc!G`+gd$)9z@l!xcETn|!Xiil z8-&3kTyPk$fdos!CipCBVy+?>#JmzP`|c+RkB0#xFw!b816zUv18oFPa0OrRB4qFe zcd#{laNmY-L5%PT|1fvhfNah|9#H=RDi{PO1f$kULI*g&06g&%J3s_Xu@gh_6L)|l zkm3p(L<*Aa3AgXD3h^5du@NJ&5?cckS1}YzF%?_!6=(61hAkJ?MjzL1mfFKt$A%}oGguoyp^Co}hK|tU$W0eVq zb3#P(G*@#hUvoBZvo-IdHyi&1IFqv@&p>TvK|*XYGH){koB#x{b3QvjLZG4-6EH8E zDn0Y2JtG7@bF%~Nb3ZRMG6ysr%X1yqKwe@2LiF=LKfnM)fE#>t1Pt>(H#9<|U^|9$ zL6@pU<0VEPghuBxM|(6#i}XK3KuH6@NmF$6et=OrKqnRi2#hpGcfebI!drF#P3JQR z9E3OKv@@r)rSkMr`t(5r^+pc>QHO$2hXPVVbSy9RBIC49192G=z(II5Cl7Vp;;iL% zH8IOFQ;YRj69H6DYFVE(H_vhhtaW;}^)SD+LOwuTJM~--E(1Vu1cu{F$1*K1LJk+N z*5>OXIB`DPbXXHMDcAospdR)UC$>Q>wktRGW9MvSTf=12GBR7XI%0NVFYTC0;1tk6 zReJzFKR^d80^aiP<05V+ut5jZwg-UqWf!()|LJQ-U~JEJZQpio`{Zt0Xm9^^UjGN$To*T*W;c9dXLsM%cZYZCl6QH- zEqK2|ddu~7N3RHEsTD*(1irIDz(O~Ow|ytLg?59p8N|f0wjHx~nf`ZX3ix0ugn=V? zf|K`xH#o~ecz@TcM*i^>ya6R6#NlqZePbj;bTM&{b77CT1C;oQA4H0)_;|DULI6uZ zw70k3(-}201vQc#+HE&WeIHq-Q6nrjm0xGyn8hOL&=v`9iWInUA-bt7@7PEt_vS zL-_EQb8eGM;G;J3;UX^`Bs%PB`I2jw0LM9u7xtiosstK(k-Ki9)4`&Xccb6eqX+un zPOJ(dAwkrneVaF$YdF5*qe7T;Ys>kOin<7r`aqaEhr?~EYq=q^dP2B5sCTZs(x3%C zp%K8Pf~&euhJv*bL_9ya_C@(z2m2B7pFkA*rKhc~Bcie|M6>_8pj)8;NWdGQF0$jf zg+>D(#DN9Ko4gADE=9xokxn`fiaWXMy18oux~n_8Z?3lw?uhH-8@K@-~lT z9|Zgx2>2)q^mW6#k^Xx^2K>M~x4|EL!n?u3e|jwrbibFXCW0!XI>2mxv>oulR!4)% zYqclrfx^#bol`)0HS@zqdTWP#qmF#ZyTQq){K|hq%fI{^#QeZ!(!YW6+dlL% zAyP_y2o3;J?k3r5d{Wl=j7zbY1Hctf0l)M8v-|yZV}IR0>I8B>okl(Qm;d-5Wu2dY z`dk0tZfgVr#FYpD2o@wbz~BG}3l}CNXk`k-f)TC=AaW67MvWUecJ%lWWJr-CNtQHu z5@kx2D_OR5`4VPKnJ3G^!uQXEhky8Bm7Dn!Xi%X;i54|_6lqeK0SXE<=&+zdh7O=Y zlt_^OqD7@!xpwvX6>M0sW672^dlqe4wMBanbnph@Q@L~LUM)yqZC<^5`S$gjvgXa4 zJA3{$d>Clv% zY}qmc1DHz<>x5;%b%t z9ejACwFl!Ce;$2$nAELfH?5sJLGSA6*SCKkfBxtPus`7NA3)O-(2u|Zza#Iq!VFxH z!R7e7&OZSE6R^PwExZuJ3^gQ)0lK7e0E|pT95E9x7%C2c7B*awMZXXvEVmYAoDr@6 z4(IwXL=r_baUm2{q!GvNs1E7*jwkU{$Oe#4@ zAqsxPlhHfFRIt%V>(rA^KjR8?P=X3QG`mC>l@!!aMI9Br78YRYAV4$e0)PSl*dh}` zvJ-#-*GRn;$VX$umDd(cMKwEBS#=dwSqGri)?Sremf2g-3;=)wFdiuAfesE} z;8SP4El}5Q#a$3uX{ogqTWz@=m)&;VeOIU+T9~(6cfCV0y zVBhjB7~zB!UYOyA9e%jMgCU-n;)*T47~_mJPD7%W7 zT4#)MVdv_6a>)qle~9s@iK@TOh#04zZh|AK*U@MlwZ$fyV4vyM*Jz}bW?Jrlq^3IT ztM|$JqOH3=`=YSN?x<|25x*$yr}trdBe&s}d-1z9-~2vVhB4=#b)+U@n4^aohV5KR zUq|)Ra{-<3xLKD)mRyX^N9)r4?nrjjHS!$vy*E<*=(jQQ9O+?3=UiX^yP0nn_|Qk! z{q)pVZ+)28|A{^HTxho)>D;5{J#^nQie7k)h!6ez((_UN`S|4rFYY7?-(91BhS8|$ ztkYf|BTYjG*p9{#-8~L&>?j@ODknRQ>?3pYdzbShD6ab54}cfZAOE%oIs9crfCT)9 z0gr~jjI2X}|6t$)9SF7vRuG0UoJ|2`vB8blFo63bf)eINLI(cBXiEd3(s1~@-2t&9 z|HwttjF&he%5Yp1gd($OSVW9iu?afl;R`Xcz$*rkgP_ylMrtTEByvQFOa$8#r`Sd} zVup!ltlZVo$F~dy@PkS$;|aHCMU3pjcr{$%757)eChmicZ(NrD6cu@^I1aFFbYx@G z?sySOUeS9WBtqPHI7Sv;M387KB>SA$NK>AYFEzwn5*0{{VG!eSm*j{niLgPgX-$Q- z^yKk?*g838#D<0}B`SNxNMeFYl^*#=D_Q+a zB(wvfEC$(xi&~X-SyU(w_16TiYE_|DRT@>1IzFkIgRIxA;XY(RxF)1cdFs4qTCaID zE<$xoHpQ!uq>2u@TJoy2qpBBoXu7Y0m2zT5E8CK`yR)WMs%&*DT-(aDxiYYZIo<1K zpW3vmZBv7Eq~i+HCP~84aeqyl=hgPdRjZxNwc|tWQt!%HBI(t(E%L0@KwC@EUX8S( zHOFaL%eU29t+jN7Egj8RTwc~Tx6vKvVVgiWOH!A*v&`y7vTMlz9`?Im1tEBuMqUtF zSGq&OZF)6CUG!qNyZqZO|IEw4_{O)q;?1vDxr<)^_Wl>Z0fyLm1zcbQ9~i+2h7N%h z++YVk7{U?e3xg$GVGCav!x?@Fg*Dt^4}TcM66SD-NnBzRpBSnmM)8VS++r8UP{l8n z@r-F)Rx+84yksXo8Ol*!P?M!xWh-A9 z%gdp1mbu(zFMk;^TL$x($y{bLZ$->!R`Z(K+-8%c+0Aj5^PJBNXFA^*&v}Njo%P&j zKmR$$dvqZi+Sa+&^{z#QYhM2v*un0SuZ3M~V;}oM z#76eAnceL4DBIc5miDxJ18r(w8{65=jJ37hZEt^DE!+low|`r1bDtaC=~nl;+1+k; zzZ>51miN5rU2l8e8{hfX_rCevZ-4(A-~ku-zzJS(gC88>?ABGn8QyS*KOEu_m-xgf zUU7?G9OD_+_{KTjagTo-|q!C*vam4tCt<^X;=H&+1_@yza8%XahLnt+kSSs-yQFH*Zbc2-gm$M9q@tIy4?j| zc*7qa@rhUb;u+s~$G@HMkC*)9DPMWZUmo+B*Zk(!9eK`w9`vCX{pd+wdefiY>^89t zj8NZt*S{Y2v6ubqX)k)u*B!QZ-u{n=RY6% z(U<=8sjv6uS0DS?*Z%go-+k}L{QBP)|MYT00)o&3sC6RFG0$|02hz}8_)qC5CS*u|00kAE6@Tj5CbW2 z0yB^UJJ16^5Cp$(14EDmOV9-WPY?xVZv<121zXSsUl0ZhZv|tJ25Zm;Zx9Cu4*^*( z2Yb*5e-H?R@aSex2#e4Nj}QryFyV+$37gOfpAZV8kok5HH>A)CuMi8f5DJ-43%k$@ zzYq)`kPE|*49n0A&oKSQ5DnLm4cpKSlTQubP!8vi4(ssr;?NHBP!IQz4-*d$`w$QV zQ4j}l?f#Gu4-pX)Q4yQY5Es!A9}yBG5&WpI{Up&6FA)m&b zh0z$3Q5l!<0+Ep!pAq{1?x6|{fEugO8n4j+dI1`@(cPTU<)jfC!?7B*ksHeq>cCMP z!;u^j?jG8}7|hWVy|LxcF&(dQ9S^P@-w_`7(c+1^IspO_Kp*+>66I0l{P7>N zF(3!BAPo{C9S$Auk>bFSAS2Qe5i;c_65}lLAu$pp3yvc%&Lcw-5;YR#MzSBL@ghyq zB?V3;E3PD8QV~(|zGpA=rSs&65Xs4E30uUyYgth zQXP-REYVW5GV^NG(iqs%E#XowuZA%Vz%I`%FZYrf`;s!P1~3JaFbh)>74zKafeXZu z0e12q{9zO7(FI2HA1o6a!*VRkvN+Sy01{vrZnGK@pdf7%H+8cU(s2fW^Jrev00vVw zA&@9bjyBB=I>RwH|FSpJ@i)B^EHU#qH*-DzK`ocl8lBT>!V??EQ?#a29IKO#uv0s? z(-Ob)x4dBj_|g`9W+I$u|)rYLM_w)Ffi10CjZa*wktewNS5SQ4OF@@01$zbWi(K zRCSV$JhW8@bw&;KA3zmOk7iU$)lr)?Qm)7B6oT0fK?ugqBr{c1n#lVSg)YWffnW)N7TLQj;K4sa6ARHZiSsA&vEH%k3Wj zxOQ#T4Q%)IRf$$)uT^1N)&R6twDMMMO|)&_7H%=oQ~x1M8Nd{tlyWI|L_=1z-T@lO zpc+3mYy-DLVHI#8S4=0jaxGUzv6Vr^loeXDaSc;267XiNmLkzDa!vPiA2fB_^|v&a zbK7%hc{fVQR(NkWcc1ifRo5CBpmkr@VQIJB2=!`t_Z?or3_O5c^|d8Imp%WrUjg=N zv6VipQ3h;*ah*2+(>3HCS9~jSY`ZsnHFJEcv3$=LeF>3$!?!)T zA$99>cjxzSh1Y($_geF}U@bBA|q@Aq&29oRJ? zI2_F$Ee`-9Uj((H1-H zn0`n19_p2Nf2)vJ7Ln-l zlLzr}eN=%Z)&oFbL&r5h2lQWumW926QYX1bdAXLW;Fk5V8OUG*rWJ?(V_E+?x#MP; zn9I$UaXCt%n3fT^ndu0a$9R|Px0;bznVH#Nq1c)0@Noh5j=9y6qqL6;c6CqLR7qL1 zkX4Tr*eut1VB2}0-#L#J_?+JlnmI0=^I12M)s+F(pX0TcX*f(*KvwNpn7db>5xP;| z^)F31p!+bLeRM@#Q=+Y=h}(61zj%$Wrkmw8aQwlZ@44JO`Yu_zb0>6h>Byq<7+yDe z{04gCI+~Y1`Z`1UXhxcjN?Kn}nx?7IZ9&=^Cz_joI;Mr1ZIwDUZ#rIcTBpr0o&RAQ zDD^EJlnlIjUa6Hii*=h~&~+N;MjtQA|YPnEAz z!LMf;rzcpjwQ#E|wt%s5w*JH50eRbGPX_WuvbwN<{jFAQrnwwd;7Q6yS?9=TJ=(m`&YCA z`@EAoc6soPp*P+H+`Y{$zUSL7sdZ=XyBZaCzxzA0czc!qefud-b-=6Az(L!56C6_) zoW)yQ{s`N}V_e4n7shAY#&29$YaGXSoX3Sy$9o*egFGUCT*!;u$f1$Qk6g)@92k?F z$)6m`Wzor_oXV@56sO$Evs}wFQn|O>%fH+tu^i0DoXqu5%*!0j)0_>@T+Q3u&3CcO z-(1e;ycOA;&hH%0h0xCPoX7FO&;K0I16|MuozM&2&<`Ea6J604ozWZJ(H|YsBVE!b zozg4a(k~s;GhNd+ozpwr(?1>5L%q?lZqE-+)K4ANQ(e_poz+|2)n6UfV_nu~oz`2O z&u_ioN*&jCo!3oJ*LxkH5;$7k^-s10&;xAs~H-7UT zp5s3r689yj$Y}Tp6Hq0>7!ofpa$+uv0m%DKIFOH>l@b} zO#2ka-rdZ8-_YI%!T#yg{ubR{-QfP-Lci`-vBB3Gg z3%_Fz_wV)3AEsdj@IEdzjvIVHS#6>5U0_%Jz85gR-2|VGH2*JM0r2UK^F99t*?#Wt zKJWM5-bmlzIR9!0zwq(?@H;>8^KbDh|M4>}@+ZIYFaPgZKiynEPHR8GK|k${ANaXZ z_}@VXLciUTKk$vecO}2?iQn|_;TsV1Xv*OmZX)8KVX6HA8hn7jA#V4JS_h=yXzD=~ zcnJD~U;5Wg`0;K2-46S;{~x&D`}xlF?QQu1LPxKE1PdBGh_K*2Km!vxd#oan+ulZ?=o6qM%U zA6m5;kGfPolm0fEz5MwQ%fWi-!NWg% zu&&boztvd(ly#PK|I9`ZT&+?6b{>P)`Lz&Wf)Qp|W$5*G-DHm)bWuhN;`O0o17*e= zfF_=}lY9TDNFP!JEyS8_-^Jzwg8wKeBY3){MIMHJX(t?U1Q~~%a@7qaKyruCjJb)&V|f}jc$tzYe(8~lEP_d9nPyTY;6hp+=MOS*T~y#M6S3)LUcF3Y z6rOqcpiY}{ErioOs=RR6O_I_1Cm=XYPal4oNnqVsNaqolYRK<$De=XlA9(VYdX7XoWi2Y z(6*EA*(be$4q9k!uj*T@qXj`~Z>8KabZMrnuFEie;liixe4>*2)W3d=t=={@@3Y6fQ*x>=evB=%D_7dBvJHRvuu4N8 zjr5lSDn;OngDkh&KbNZ0^lec0^3D$G5R|Zs_ZXSlfk2RjQPtmFO;At!2uyZHS#K>h zrf+kNDMuH!MVT$F=YLCw%1WlZT8bH@?>j6YHNC+kngptfYNI@zu##mto>qVF(5W{2*tYMg9r?hdn zVg@)Vp#;-6n+s-8gQYu2Ic%W{9}{23e6H=5dJWGvXNk2Sz8ZkSy^_*%Uchz$@Y} zX8LQ29lcl(wJmN%pH$@@KWIfrZbg#1?B(p*Weg`i$_MRm#V)|ON<~7AGcW?=2r(ke z54Q4UkZ~I#TX;C85{9vk(WO$9LP8#g z+;OCJ5>k~?+@~uI2umh<&7JTZT^X^K&3%5;DdB|AI2U@NH{LE?5cLW$&AF;{A`@oH z^kXys!xl*9>2sRVYugi9*wL_Uvzwf$C<7ZBA2Km&r06u}MpY9%LA^7cpi~<@X=u+! z;WK|U1taIOct3Ln6pRDisX8a#6glCUbyYD<9Yz z64DNd6=qCi+Y_zVLb6`3BNN$BR%aK^PdU^?lZ#?o){4`whV=zrJtv1EBhP(`&VWQx zO)xG;*j2Wbn$k>VQvgf0-z2snD}3re1PHgXrtz*K$?KR%dm4$xQGuux3uU<)S^R-@ zYnZhYT)lSI5I(bcu??(IDLYKJ$u+K_oomJH+S;UQmj0{YBJwvb z{!Q>uqc^!sSu(sNGayi;kP)IJij@e~?};ai-0_}HC^aUKKcIy(P^Nf5maMCtAlzOH zI|RckVy=?EqFUUs_Q_1C@5ex_+5Yx8#CLk|y}E^r0)uq7TfXsc8EjGrBN=-W_Ar$h z#^lqohr`kOu!(0m;>uu|odfdbJ67yZBJqlbQVU9qRWak0?K#jnMrzM^j9(M~|M+G( z3)_(YoGhUP_+X=bb3x+lWKWBFCv)ME;9fMDB&1_tF4)jLQoU*}DW(a0=@MFZdlXn3 zwsr4t!56O^A`3ZaAk)x{3xF}|akWHU%MR5vj=-Z;=Q`Tf9Z;(kqH8`MNHa+wht}Hr z>L3vsI6F*>E-IUvaQ7wF3hni;bv!*^PkY@%*$ynmwm4{T+uOADwXAn-z&AG=E8a`C zRH95#gGZ#)jl?#!$#QK}Q~Tcwq4ltJYf^Qq8sKh|cQu6#q9hU9*vMA+nFjuzDbw-U z57#)mJJM@cXS;|6(RW|?4Q>i`2O;$+w+qhw$8^s;jqdIz(dF&(diUl3-qy8wx5Mi1 z)QFsk21j|5Rc`XEpGezU@A^aWan-JmOL=17%GbkQc99@lj%k+<*V~@#v%{TSWS{#^ zmFr`oDAj*r{*5>t7H1*vr24ho8OeZ;$)j>wfpV@4fGTzpmN? zfB3{NzVVNb{NyWt`CS)2^Pdm>=u3b4)UUqvuMZRFV}JYH@4olH5B~6rKkM2bzxmIP z{`9MV{p@f5-bBAz_sf6&^sm4D?~niGmp}jf@4x^54}bwEfJ(Oie*jIOIDu9uh=pi~Chroj|hp8D2a!-fP_ei zmxzfOD2bcMiJj<)p9qSf_=lNzfR;##r-+IND2l7dimmAXimwQZbeM_&Xo|CFi??Wh zv8ao?$cw$`i+qTS{8x*?NQ}j3e!qx}$*7FW=!(W@f5YgE(I}18$Bflzjn{~ceK?Ks z2aVh4jo)Z|*(i?VNRHzOj_cQr=ctbBczfmOj_(MMyU32`myYvjkN5a_@u-jc$d8+d zkKtF3|0s|H`FH(jkOzs7dq|Mo7my3-kPoSK2`P~iNs(&^k=NId7pajOX<-%VkssNQ z965a%DUu~=k`)D#DXEg=c#_XYk}V07Fo$&<6fFp755Mexj;ibhh_j2 zaMC3b{;+yYP#`7cK){8Sh6jIAmUoP4Y>r84z{PMf^bq3}O9q6Qt`S8GCz&NEn1pE% zhWQZ~rIJ8$KV2C>4$u2mSmZR&#(f<5QlNOhIDC{YKWV< z$(z0@hrs!lHdz{J2r+la6$?QG9pMT@aF__;n$`9ZGf@*au_UxvW#}1xR>2Y)MtM$& zTI4Ag=BX2oG8S1=Ve+#S<|Lmsu`uZge(XvAaA*e_+R2^X*_w$do*vPk=IK@*@u1=- zpzlGT5om|V33hI&3-Le$tY88R-~!>G25LzRV8;y~N}~9{p|8LIJuspSpag0tohnKL z#DJm78JEcU4rid2s8E+`h@mPf0=lpXK9Gii01Wt`3|-j*#Bi1{iVs_fmPBBe9O|JU zDxxVmo$>e$u+Sf1*QH--huH}TvcLoi!33)C7}*gVKF}ShgcMl98&*PMuelJwuqEJ; zbFQHeTe44d8f+uUTyi#f@Of8@^HCC#n-szsa@r$w$|MCb7HA|;Ak?Ni=UaIZ3^w8l zhe0Cb5hWKAA=@z+g^{1bCnllhc4d11rZ1AFYbqs|nq5oesD}ZlnR=&rN+Wx!7JZr) zQUIqqk{!~Qs_sdFb~u(q5R^bF0=?;$D^Q}XV5Hta17$gub?KHy8l}Q1quh!Q&yWN{ zDwjC=mT@T$We}s>@Bu%XhRM3DX?P7R5SHGc1M9#IF;JqLffvI8eMN(KiD#%;MQ5t9FWzJ*)pB3cQW;BepH0AV!Gf_RQ!%4*SUGVIOt23L z6E8HwGQ=V%He090=dvcU5D+W>u@q~u0yb%dHml6Ru{u*KARD$LTe8!1vP+P%OhvMl z!7Qp>GLxMGAJ;z^-XXu5vk}VE3eHNu@W6t>yZb+#s)DmkfOi zc5+L%c1xqWfDh3Sqt{TJ-CC9rd1n_`tWzd9d#orVE>gWZDbTa7_L{3&v2f z12SCarLp@7N(TWxrS5wz6bt=+m;WQ*fFWvssn9idlD~RH+SNpOYa$G*P=7 zv|WUjyqY>7ZgDpi13L8sQp>}<#g{-^#}KS57q1(;a7DX+N^`(lQrEk?inRm23suc4 zK2CG0E=jyE3xRnk572P`3TlZCpc|v2%dXX+3OKN?>wuwwyRChxu1;XM42-x^pqyYA z4UXHc04%`xun95R3Q2mFEg%cJDV)rZmT0*Gz(BxztHGs9jtQ%Ws!I<^AT>!~WXkkY zwM!bc^mdfAL&-9-4Z*uY^1D67N!G_pnRmQ*1;l`MYbHfYNd!vITM_m(y$tbF3Gu|N zG8@Qn7-%6w4mJ>&gmEW@d`mnZ98tqJoWs|&!|dA-M?}S8#Kn~)#D-PGG<3vaWJgMj zLvXu?@_+_P(831Hz-2(f;?TGh47lDZxR4wPJ}|*K`j!`r$Z$x=m+J!OpaanP4zKV5 z&-L6H%@VXM79Fb}a%IV(jd|3qlYT+PE*%v4)1vP{eA z3&+&lwN9eTn^k3K`^$UGy+5l^+c(aFOo!aC0?_Hfl#I6?T)?B7!OPjm4GhT-tcH6|A_v*~n_B&-|>n9J&exETd@91i*>8#>uR5`N1wsx~lw%0001g$jS=q%5|u^ z2NDIZo5Qo~KVh_4>BY;WG?dgKwy%|@X}f$6zV(EK)pUT z&1YGCAUdtbRNXv2EwYC7)U`F#X056gh^%d(tYB9S_=?JPiMb`Jt^)hWP7s_BjIU!E zt|xl9aQT*-j1P@H((Y>5_zHHBu)-MJq?;WBz%Z7OO~|?Vturvd{~XepOwuJy5GT!t zDGjEupc1b<6>&-gHf&^SCTJz2Co&e-eg?$|L1#F_)`nHwh_*l7brZpTFUIX6Wj1}F zW~`2P)DX4Y9>&zXrDA~+Hbyqj9i}BlVcq#-DuXt(6vNyEfeaKxHf`42WftDYr`<(u zd8tAF55FxLS!*vXwm<3(-FAcA=b+8W6zyp|^Vp)RltmyMk9FrqEsqaz)q9PZ&Iiov~^hD+*| zxd3+0km4%(2RkmVc^l9#Jll~70JYtR_QA0G(WT|U+fvaSkOr$4GHq_^6Ty)LNN1Lk7xU_6o&Mc3xHn{F4&~aoA8AMsc=+tRr{~WH4f)&ct5R??e6zJd+`qN15fY?q3;K;jQq~){T_-14|@Xd z@DUI22v708sPO#W?wly`w1@1ZxA7kj@+ML7Bkzjrjt>`K+t=QSArE>G&+;$NlO!+m zqPXt6ju7kqi7?N^9nZfy@ADf!^Fi;4HgEF|k@1uG^M%UuNze2;FZ55pi3B}kNK2{ z4`#^uo$vXduY;1$>sq+^pl|x8kNT;v`Z`#JOD}M%5Bsq%`?F8`wQu{kkNZ!U`F2xc=`i|MO4(0vP}GkN^3v|Lk}F|NHO%0P#=Y zK!ODg9z>W>;X;ND9X^B@QQ}036)j%Gm{H?KjvYOI1Q}A~NRlN@o*fUqWu@Szuof|W5 z-MxJu^=E5_3l~jRC-mp4*S~v!mM?7nTp~9g#|0)QPCN;*gwdn_7o=|ew_)trw@du4 zGP(5YuCi-)XEFSE`a5Sg9vysmaq$M%Gk1=m^rowhpz^fi4k7OXBxt_+3Omq+^CB7$ zrT+|c@4Y1AtH{9zKm4$sBaHjUA835w@SqDz@~}kZ26|@)W1wSjpcX-737>Cj`=^|5 zV&ZAVcXVK{p$bo0u|4UMQ$oH1ar{U}9(@GzxBEZ~O+*q+L=m|cO=?j{8EGu?MkrH~ zk{~L35|T&?YqapofmUSF$^OpFD9wS^#M3WVmMG{%0Ef{*LU+oOV!>flk#HUNe3&u1 zciwYB3KxkZ@t=Aa^#PVAl^m!!W6}$6!R0n}q0>+MM9Ihh9|dx?N}ZB?XTwYR8?;bc zzblVKXaE(+l~Dm%w9!Xryp_b}2sIQ@4B305(5_xW`oVOhoMn^$`j zSJvLHRV$>Cs_TA)5g3 zxl-kI&L6G+;d<4bM{>2CwtY%c)a0x_x?Q4;#yYzHI_rF=%X^sEhiG@2e)=Cl=f2u* zKu}B$&?H@iR$9dCX3ovzsxy1*uJ`F1W5CyjsO`7uLszt(e{NamyD3+iY^I%tT5JkpuT;V4n1ZtBZ&#* z9)mE(`V8l_44DUj0vVhB^3|mU4o`j@any3wA2kN7!d>1{`wcO z>Ui*g!x9_jz_%iPtjmQ61WyYocp~4O@EySay5K@G7{B_IE;RHbi2a^}zZV(Ia4Y=Z zfCNZDTYWHrJ7gfGlJLNPL{L&#v|tc3GDPGh4`Lmx;tNCQvk|JJgw63`3K_&d|FtlU zAY@Q@9!EnP-Vt?O)FFp>2uBo(QHbKwpdr$neBz6XX7lwpw~ zgsWa=2U+E?g(_xH9aC=1mVZR0ni5$=nAC+fqG2Q?VF^j#Nm7Ejv}6?TrwUDS(vwe` zC8$LCO<)2rI?aq`M^yPR_N=Fv#Mx&5*uHq2M|SI$VWVU?nQ6}6?XiI@yJsh1mCR-G z5}gI|Cp6=kvocN;ET=07J$Nv*#g;Th;LxF*KKDtLzN8S+REZlHUQX|3q65=LQU7ze?>}dr@B3QUs=M zqwY>?XIqFnUsROAB4szBjh*y^5Ar!=;}x z4jI#Pg{7RR%kSoEfEe0h#5ROD;hAWhRQpX5=MKUUd2hq&YDVb{$$YK|vBU&- zv?fIl!%Y$hG87tE4*xGXIo?oVEs4@OsX~TGc1N@bxJ;^P?ny$HC@N!|Gs@b=x}1@4 ziI58*3u9QrlN79H*ZX1rltH=046LyZP~0RHtM|=eeDOiH{9qcx$Z|M-Y?8aj}2iB>wHK-ZlqbU(lz6YHUb7DQ~=9C&&85=bV zITTz_{#ruJc5B33utIgVOa~fXHYJCX1agq@*W0RNWaCL}X=W8RU*?RcaYbrVr*+$^ zR&%T0^XhOb8`xPiPp;|3YxVjY-NGKWvB~A`IN>@};cj-l0ot#0E4s+fg?P46ZCc!c zTRXEh+_=l_#&g^MT7fQQ_ns7v@UI++v8EwPxyB@6*=}g7vD99qea+ zirCQ(BDMQV2SA=mJ>I_d+`t<(ZKpeZ@Gf__ONH-w2YlcKKX}6X#O{SheBu?qc*Zy0 z@hm_5<0U_N%2(d}5ZD z+PByBwa0z#b-#Pw_ntJj_kHk%KYZdB-}qz!{_&N+eC9Xb`OgnY@}WO{>Q~?T*B`$0 zvA=!pci;Q}->1Cx!9RZTm*4#7udMjdzkc>B(rxdDfBfY?fBM(o{`bd!{`J3q{`cSi z{|CST6u>=3&g+-)W8kozz+1l4+Oyw z6u}WB!47P{6GXxE+d8aD!4`DE7lgqW)VvkECKS|-#KJA)!Y=ee)6>E)6vHtj!!jhi zFf_w7RKqo7L%Bl3HiW}Cl*2j1kvF8nJH*30)WglN!#(uFKLo@;?2A4W#6mR0Lqx=@ zAjCxfWW+{v#7FFjMTEpjq{K?JM2wKcOVq?og&Z|B*tPi#@-voV^qdvWJc6W z#%6@Zv%3d2FaQIP0gxk!d#HjGP&bayMs8$|R)~~s>_)5j#=#*+^bp5ryu4>LM{2Z2 zY#fPm6bX8~hjpY!u{g(kgot~zI(8hwFsR0AT!C_QigWabFi3!Z^a_5Ih=g27fUG=s ztO|h~$bvLSa)d~Ryb6bmh>euUCiI30V1Yvk0|W>Lg`AO%{Ki+<00Rgy=2!#>FaRR| z;1F);00Te(o2(ylY{{35$xx|+1TX{xaDr*nNm;OwoQy~2*v59SNTWQ*k!%4;fB**Y zqz*s;uwf2rL;$5U2%N0OYc!yltVxU+%A#}vf9M37jDZB{qMY2xo0LnQtRJ)F$$d;m zr2I+)+D4azN%VL%*L2Dh0L(2)$blrx-aO17w1+C#O6v#(qx^@FbOEOv$ZFgL$jr{`9LeneY?mbR z$tuWB1K3XS9LQYYg6y=K?;J?GDNW@(&Fo}=2^dKISx@CG2=}bUq=`xcxK3@nPff^9 zl&ntse9r>~&!YOz03A=w%+G4H8UfADT}Vy|gi!Xx&I(OYCty+z)j=e+M(!BNb{SEpM1buiP^;Mn2yg+DTuAG*AiWIJ ze;CuAY*TB1N#+OxjI|AVfveQF%~z2-GB?(}L8-Hhoi&lvFG&JP(x$EtLT-od7ST&QBFn>a^62 z994s0(^myjp^Q^OCDaDNQ-s`89i4zaT~Dh4R9&^xusl>Vy;N82A_#EQe}GgM*oRp? zP-#VoSdGj~-PBG+M^L3sQKeK;1wv<_Nu4~QFh~J)u!M-D$3V53FKtqt1OZv-54{9O zcXd%Wn$GNu$bYDYM#xEN^;LESR%r#v5#85;>{o*L*MQvzc+E_GrB3Gf0&YxB1en(e z6G)7u*MfjpzZ6bxOxSAd({#jFki6K871zKsRjDA?YBW%ERab)ly;th|SnlN5dd<{- zz*q51*MAsU1L)U=1<*XT*k9#FH9c6P4BCYq2%?qNoBc+K1=4${Sd*03j!oH)B?zg_ z)TYJMnx&h^+*&+aSr>c>|1~0K0`C%f(y~ecUHKN3ea{Z+*W&>`GWX;VALt#1J)mHom1VNU+w)P_~l6N&9l^X3h)(Q)-B)jgXE!^Qf+~PG#05%8#F4`1c;RIe_Xl>vmYT-~hVu1i+1h!yK#bDV5 zNh5Yz4@N;hP0|zkhmB2;7ar1TEXgv>&dudpF2-Oh_F{Jk+8PE&i%f#kG*}%z${8)m z>g`U!3}Yze5KAb~69VIbwA()R;(+AU%4>opV!Sr9L{A4;NQakozME(aozT$t-u_5ExAtMP&MgT(k*hWuBHrFaQQ1 zhII|w_z+wJP=ZoMTxzbyWiBdg)@E*&O=~{p66u7O%uRu4=4bwgd5+B_GD~xoUtlih z;LO{J{pKdIXR`F=sDtFD;OA^6W`USaVK zt_q(9>Y@&{lk8xlMn$2XipET8rH1OBfLjEZg{aO&rjClKu4=31>aO$0{CtTyYkR_nDE3bbbHw}$JuHVL$%LZ#u(6%f{@?*6hvZ?9TS=&j#(#7VXg{?b0^w(?;#o zR_)bhZA9Xv*M{xbmhIW5?b?11A~1)?IP9TV?AG?}-v;jB7VhCD?&3D?<3{e}R&L<7 z?dEpw=Z0?FUOXM)xx~I8=*I5s*6#QJ$nC_~?VzCUqO)#R+3xZ-@7nHe#488!9&hqK z@Aro9>>vUP1Z;-;i}h~r>yGdJHt+dPyl=>F{pRlh&u;p@sv1NL01t5YA@Bx=ZpBmZ z1qU4mr*PXgaGwk8!iaDQ-FW2ygD2$y|R2;#V#(}|YkPrw2cL}b8yIb%C z4G`Sjg1fuB4>q{FYX~H`ySv*gyZ>``U$>vCAG)jhR`uyVU)}rtZp3{jCC@2zl*6Tb zo#mA&bhV`Ax}Bp&oE0~3RH4pBzcE#5UGQ05)bVeiu3=K42pR`cws9^NJbLkvTl*cC zNWUBX{jj}{Ro;2&^N6?i1a4adEIy)lYRWDH54L$5*LfE~K z!D0JYxU#|Okl=qUZsrK`+Grl81Rg(Hq_v?B?wUPmvY}kDNRKK0?wWoflD>~=Ko4_* z#{{h=OBsaX4;~3Mca(N#WDlX=!s<@6;V_MmjAA|g)1HjoV14I#0`FntwvkFzk$kWb zed&@&?Lz|tP6bjOL$x15LdPRg-6MWKM*gOYHbaQ1@yPAQ%#(id<$W}l@zBzKOgVqd z487^-_GlP=%H>3LrFCD8 zA6A3^rIywUpVh0u_f(Vzxd$3*CgUMr8mgH$Z}avrg!&b#|wxAc}4VzI!>rf|~Xu$wJ(`gJJvSE2CR4p16m?YzVCYogi4XagyCGgK`9 z3(ZFAnFrE63w9-bm4hLPlC9vvf^zr4NtO*~zCr zBvZa`NhrbYiOKDS?6FJi5jUjGrDN)?h2O3>|76K$D!o4bE1xV_aX*XXb!AX5XSbWP zmT#h7ZF4=}nyheRS?~G#{pe#V;;0C3-OKp;V~$noGbRMr%O$CPTuL4`@(kBGpd76tb0PXeNgOXZLX@B zf^U%(KYsmA2H9zsc8@(W(GFCbwzA+Kd$&65ai$CJymokd9vv+%7sYr9y*}NYZ~w0G z?bcfi_HE&aK@)ueD4G}2Qz`r`KuIwCnOUwj34HG000fE&9P|ZEv+|Pj|7$Uf@_YL- zkQ+|y^I=AYI@`G*66Y`k+pY`NOjmQ{)@0jWR<$AP+x9Mjp4UIUeK}VShv8&)eb_@> zrE>%elGt@YiJZ90^6RzaS&W;4RD*y|C27V9>Db}uuykbpi0lVsWHxPic|XxmsK|pq z#)NEU5xKVf4keFq|Ct_$1I@^kI(fVv`|?{O-T14J+zlpEO%XeF(qM5ydCAa@>cq{70tMkc`BX^+b5FBbV9YVs^+bXit4tU*0>MAt_>wY=9`4g8ov+x z`?XjByo;RZckHTMy_!xcEa&jwRchL|_ON9r;!SXxn+M&o3nJLt)(X{xsOXDR+CWwe zSxsBzOnDK6@ouRFOJ!iJTDe`%s~I$s-ffC3NFN%#+>L4h$>YpvO7jPANZ)bGmHO zeFRro-z{JOuA5aBhZ5gb0o!Tf8S#bVKh1q=hg_oNNHUHLIul;Uu$~*zAsExiN2fM3 zge?D9cCA&2ABXe_I89tEMb*z7&8%>+2_p$MbjhQBUQ4X5erlfZ=Mik)NmSG4GwReN z{`2qC&uFH7T`!EgVO=-9yG4td&Z^yt3iW#lPBDoOY@jXV)#y>`$ z5dazgxxh)lEm0>1bL6$vPMZWon2P^&;MGnpZi)EHng@FWCDwf?QLg;Og_Du(T)LA8 z?;K3^4xwiagc9y()YO&6ow~62Y~Yd~P)KwUWwZF8>li$*Ty{O!VEH~p%1oKhq3cjF zFo-TnW4Z*Ste5{FGi&{dkef)Ce-K93*NTepNxKJ$hK1J5L035@?ITh7a73@g5A^nf zL6)U`BUH<%p^yFWM#M%aNgfjxf3?N1G$y=bH$xe`v8n>B?KrFdq#X4;#6DHY=>B>c zMkoK;AGQJsS7(cgb_h60mmFblWK)&FU944_-Kdw@ z+ywRGzc{G=>=|sNLTv!C99UMvQ@va<1S|`ZrQvLX8#C4Cz+2=j;i@fHJV)oqxyquI z@I)YcsDg;dw_x*=H2e;|nN88_H$B9<`5n5jm14!1!ic~nBQkWFG^qZYExlaHtYolY z4E-~w8o8onM1A(r-;(cyyNWt~^%gf|rF>}SiO$uD1r&O;0*4l}nE`)t;#6~m9uJjs zQJsxVISUci?BDt5i{yI zWc;fy;HtV}JZ|ZcG_n%Bs*qvsySh+V1$OUE7aWjehWS{0`1E=zdzgF5m%g4%&KJ^{?Lb@pR39w{sd^{1lN!7?|Z6oV`@b{WlR%s2jRjXkyfWS1q7Z{i0DNBX$+9!DYHq@_Mb z=JLrNPe0$3V-835vGqRxHs8345)*dOgwfS6?orJtj(jwm193{wp9p=7jBU=x+fDSGn1-&PxjDA6TEO;``~5mh|agNDfz(mCf<@ zZP2`Dd}FoO>9GNTf1%Hny(ZM=)^!Fn16X`jk~%1 zwZO`Ye`Sk=r*+)sEZpyTbpS^dV5W-8xSO&i+$~WXdSi<#(4{0+rVeg9PEndjjIpQT_ zFX9gER;(le46Nb-HvH#vK!IM4xwo?@j+{KHukIuTBz8_PZZKicI0wquBol__98a=r zW^(6oIm{W87f1DXj3y_t^Fl4a>!0!-_wV`nqwle)d&cn3ftSN)cr!uW>s`;C-7=?M zs=o$@-(H$R+IJBR9@jpkEh!U?Ek!%&fPyImIk|OimBwHK&LP2Rm_v0ID0p%G2 z%Ud9eQo-Y`;T_8Mga-gU3xIzj=4k@UBioSJSr?oue6+~nNYWQ(*5B647rLT!TLD0cf=F;bo7n00@YPY^3Bl8S z-ViqLBd`2nXCiWC0YKx7r`g#2NV7rEC5~ef4A<6!J`{TY2!G)a2wd4=^^?M>6c;T* zL|H1j!Vov^DN;~E6!b$p_6TW`>3tmCL7&rCt<%T-l+V~vphPEi%H@CAyCY6#ibPR- zgt4nmNR2NVNF*ge$w10tj`o4q6g6d+3_Z{oo$6LHmzaH5{DAtZlU(DVNO!7;?QB=i z)o8cVM8Psr9S%<8SFsWk^;NW~`pkq0^WMDbp21#`@^rDD<P1B~(`@=xB6jIKPT+S^0pD~2cXVs~9J6NeTaZt4}zt8~x(6)g7 zjxd3V&{-kuO`+n8u?S(w*9A(Um>&&vRL(f!;)FfoLT1iO@RAgMl0&&XCPg0{cZA)k z7$Zz@J;Y^&24qWitihrUCLK3I|*C>p0Efy$VGkcO ziEFhP{hq#PAN{Ta0R68V9sK6?pYrSwSiz@${HQg-pk5pmlI*n&Z`U6MmOI>3{@hVJ z++}|JV`gp*y~rXW9*8jOSKvSx?|l41ldF|0jesFMpS-`cnu{As!+RcT~%KSVxn4L~f1AoI5yYiOMVr zp+IY6*kkS?8M*sOgGfjaO)rySftPoiT#Brl^ST1M`nq zRzXb1P)`QWEFn)|Mwk*7bgpGtD1lE^T`$}X7#j5$&rtw-JJfJWF#M~ZHgTBrHYH@SvvY>T2by0T@DcK)8*&&%Uq4b3X9W1;2UNzRMRM@k9C2B1|QcRZW+=S zfDYhi4TfCc`PLoC1tCPT;iIvkiaFHhI5LD@;NaV18P^6Cur||d<99ZxQfsh0=OK>g^oD{ z2~EgDNsM&h@S66a!p?noLXHv=j&En@Z{{{M%G=}x70w%0(m)Qw_jGD$18FC5BWE@? zV*|d00EUU4l@upK1_QZBP9!_055rfajW_azS2*Jh<)~~{Ysf+_7`r6z(y6ofv@?*S z5UweQ>*IhLt+hj5gBoss+0ro$wBf@#yL|i23JsUIj8lW(jRI1=^z4oAPbXgJ8oU=- zUC^yqQKLfhxMHr$cQ0#}fkv?;483dc>E@pB0gXl;Cn10k>=DmTYboG$E;PX*@z+U^ z=thXeOc?14&PTLu6i!jvH4{qCw{QDmY7*l0`>;~Ze`8D}uUV+IB)mx+G@WiV?_I79 zIb>t6^h3j-@zpm<{m!Ffu8jBO-x(#fu3eR5+4cGBH8Hue3Am7lNNiaebHs9W)9sNZz#c40|V{LN(p^neuEv(LH9a5SP^1%5f`seJ2CHuFeSZk4ca zO{r;t!T|5BDevh?A7cU=4FbO;uHSmhb06z-T1lOJN9s>)=3%QqIK$yfe6OxtzBfp0 z1U3XRW>MxOX4uIo`SPs!j&leu*G?(5eEIAi5Zmg)&Ha;~H^@usNYS(SyZg1tLx^v7 zXkZIZ7_TKye7M<{h~bzBE6((0u0$lyDDnO%e5A}{?ik9}gqk|H{hQ)t_+0!}nNp90 z-*p}}Zjeluk32kEQfLMDR}o?oX|%bGMDzv1L5&Om>+4#1ntF6_vJnfOJCNN%)vbKSJOrL*ZUO!Q4v)S^YMTm7B3A6rFZVniK+NrB+rx3(;dUcO=;$jh0ynaAqqz`*5j@$2up1(<2 zvtkYE#CLj~SZ_Z4r_cPsex)L#pjoj;e4t0ULy%N}SXv+@V#R+Vo-Q%_gv?Z?#V!%KDSaosCi|01=zP#2kD1y+RBH4zy3g;C_>;dcToKL7U;dn9$W1fTmp-bIhtafKo|SKFwgi0y7S5c880 zf(E0OmK;>{`p>O_poUNk+!k_lu|~tU=x>T&Rli8t+UeDL-@|RSe-c`;Fok+3f6=K6 z;#*stS3Oel1QjuHA8(WXXg9yVdnMvMSFcg|0#)l!PsVX2SSJ>Z)V}DRv&ZkwB+76| z1C#J~UprjYvaNQwl&yTbI}y=xFl~Q+t#LbDt}g%Ck>T>N*;c@I-Prbcd%58B$&Fh; z;Kl4fg|^furgkl!Ch|3$SdIW9Y@#3kyGy8T`yDz!PXy#_)V@|?p6bD=Xq?V-@Mk}` zB0?=gp|70oLt~pz>BrzZneGRQqF?4Z8usp!0tFtBNVUhX{|w?Ap<^fIg6alnLRe8H z$(fV3e!}?+y#t#H2^{GQ!WsJ57?%A|*{LYJ$VaJ?)KLSeDUDE>qM+$-<%cvjj&NXF zLVib?zL*FQLwRuqm$9&QrtLlrM^ zph8_e!!is1B)W}!;Zca1b8XBS{V8XKx>^l?iXnd-cXS%Ma?NTQnr-Xah+NIz9es?L zKl1wnV^a#$tD!3048a%e9Ql-ZYP>95EOT2*lVzRvx``|^PiMGufAxu8?dtT9qUu-y ziS4+Q2*A$jUL-RFmLZo#oB36@&1kJP5C0#il~EAcJOXMLU37B5&%B*pU$Z=^qDYWG zjDLWU%61`Iuo@afH}jSLUD7 zrjwRyb((82hlofy0pRYH%m3rUrmKlTtNYWz1fp5dcA;g+jC(tP5k_C!L@*eGNU$M;vpWsbe z_Js5kBYGmzalb3}Ob?Tv$YnYc_9gX`t<_GyI0(;~!x|Q-jV$WXB4;o5+PjTtxm|Fx zS7i1(+A1-fHLQrYXs85ovCnNBGQS`4&i9RXOjCLtXD%O6@b=1{yB%9h6feQ?;mat6 zC&&{bF^0BHNZJO7KW|<+%ZOD)$JmzOZYrruw-l&C%#}|zHU)mP&r8a=5m0R*KL&C) zPF^^y5#rSmCVPdR@^9Sai$l7+-WhxH zvJ8ww2YHC$#Y|!yRY_Qs#{@ccz2}7bUa0M(f`yV=a^B7wUHPMo0i0UeqRBg}#)8~F z1UDq)Gc6ze2gP?$GyBxql$JYB*iADb<$7S6uQOcP{ctw>s9|3i7L~#(V#W)$kwjqE zV*2NtTE2!lo$xAxs_RpIK3?O2BwL1Rv~5x$@$G>$Kl}7qJWdfc*P*Ox#@FQPq~b3w zhw?^*YUxvd^(Y2u6df|uvd@xA1#b_P{R!3cF_X)p8Z1O3Gt`Tjlgkxdj@0rAHOiHe z!6JMNvK1K`Rkq0$dbdYfy@Z;z5w~DtuHzS-KN*^h)yY*hF2~<{wKQ9%lB-=BkM%Ay zv^vj{3mtcl4Pc41dofcW!CWUs99vog%qg|eE+@w1L^`8)jS~5v4^7xIbtY|7>a%Z8 z%#4e)r(;qYin&fLR5O<#5t@xvE~i#TMBf*uH1jKqPyc&Wte&MbcUD=L)`Y9CW2UwY za-BKEqkUVZNo}2UIdjSa!RuLScTA_9FYISSSYTRD1p>2Z?KeXNmb6|BS5_71 zvmuId+Pe;9&rj)Xgkh&G0SgO5{s<2Pe6OTp3W0@zBZ9$)@qa&AU0pppJA*=@a2iRm zC~>D4LxwdBvQ;r^UO67XmN3eY`Wbh5w%e zp^=O##>7HwN*pwK*fwroHf@YPUJ>bvMaC5f6kX1y==2jM;1!`5!mr!7{*3yBs6oH5B8(}6 z-T^Ld$qAGhHksLpZbf+}M#d(&6=j*$H8l}c#gN8Qo!mx9b4y-ZyR%<+PjCM~_>fz6 zUw6mIkO}6@?B9R?Cfa94M;B_Bm&-THt;zozE0lpb~g)7T%+?!}M0ZOKjBqnl%`)aLEFbh$LY) zywszkkc9=u&mYA{!p|ni*g`V$BN_Jpj27d+M_ULB1A_sF3Kxoq0FVBe@)IRJ69NJ| z5j7t*0tEvj#TRxOcHU3ClGNN%Bw}AFrFG~vtyzC~E8!xmGU6(6Fgw5lt%&Fy$a&?s zWNmolzl(l$Q$?^-_#!VRp`q&`ZRTOC`PD_y-qp>G%Q=DDvzgbkU&%_jYm?8Ls64d zG;4Sca{E!`_S=VnU~$pjidgc{j-g zYllrm@f|14eOI4Yuh?+6#9X(?NYCal&%RE7xU_J$x)9a!aF5CyySz;2)+o2eM5BfR zhw*5*nK1V41eD`=*0&~@$z-LWZ0CQ48h65^s`Te9-} z<0?xkG9%kF10e}5HC1t?C1v39_OjNZ_WaW3ik7;%x|sOEh_d0pn&rU8$%wYugo@s{ z>ZR1yv4qZ<$j-f**pY^+p^D*}jQ+WR;ho^ghrs#MsK0M1lN&ix_o;u66P7Pa`^UiJ zOEuH$bv-@xQ_D?%*2>5CiWiRx7Ov~YZ`%HCHSFCD=C=MW4IQsYT&@Y6tx23{YTaoM z->q*OYaX5*NSPgNJst`^97(vIjJz68yZsaMw2*Mz(|I&s^DtKm-AsQt?j9c>pPHWR zpIw@p=wF^0et(q)7Y@faj)qTf$L?R|whtGMt{0$t3-^y_^OHL(dxx9LPdj6GyDJY5 zzu#V0j*gBF&n{2zkB{!|Z;y9x&n_Mx4qsnik)be9l+QAdyxu@$Tn60{NPd4P7NuO4 zOl`qnBmsxz%1CYDaO|f)D7=0!MWcyyYGB>by5jLvR%6=_vR_LkGkKkkRz~Yfm7_W3 z-#*JVl>I4`NxVV_H-!-JVJH7B8}wnnR=N`vv7Qy%WqWx%VT@%3gPtsC^D@$&XBDdpCOU`hkQ zuXJbo7%Y;oXTKLw-M>b&gbGb_-_MV|<0X|p=B(udC1mgx&FrS>*ChOK(V=!r@B4a7 z4=L-a?Y*7_H$!7WaOt7%Y*LK*HLrt9q;$9S#-CZ(#~+GT1noPne)Cwb%u9LSvpNO` z_oJ8?1Ta)?D^sgtEv!2re476eM){-cUCnu-_#8%|glH55{*x$UmyIl*=eUgJzbc%% zW4`5iovfXk2o0l@31+dq2l6sND6x38Xj)AYQI6<#!xLVSi!5(-amSG88F&;w0J3FB zGq$ol*2yN2B}k>;u#+&7dN29Rvia6z4+1Bv4$DOEsb(UwoP~5s-qB=cw7I{U;-jSf zF*(a3PuZNxipS`WCG{&z~#US3bDN9QZ$5j6zeD$}6Lur)NV#FROSd%6j*PMxq3l+`rUiFt=G3PW~z- zvOCbwUh_Eolg=oLh+`BTns?C@QAhM?ez|u5mM$;yHKCv;V6+6quHyqf{A3I6>*DNS z5!-hMOWnJ})6!AdbhQy^)XL=msqm39XGgJplqBK$jpGDI&5Gr?z&Pb8 zWqY$b*A-{^4yRRjUmmwLZ+vKz+q&QU+-IR6eA|c3Fxu*ettg(ehwV6N=Et2RE!)T4 zG_&f*y)3u0$Njv}E)NyHB-^LMveN3Oqsr#9r(?)4^Ycl=yzTR8%YOCqS;zg^^LY;v zi@>bx8l~#f4dgS^7gQkYWMcI7#REZ zbkcnO_I%-0^Xuhi-VXZuupj&M@^pXx{ttn^arHpk14nq_hpb?TiCor$2)gjc`b-L- zl<7tNb`j8@NruQX(u?WI>O%OEhb%4A2Ok0nqEpC6J#_2CYr6<$J<&%qmgy&4Qt{yE z$j5XW>0jQ3go>aSU_lk{`^gC}!#J5Ja8gGka2RUCRiX+Ia_I&czG3^TcNBbVF6(A; zyo@w-&c*MS8DfvHi~6ZhNLUp*#MO2g&1;SMd0$5Qtg$x6eZu(ktZZ25$-%|@rH~Bz z?k-P=6B{g0M6sSWA_LwVK{WcSk+)+f6nKr8EITM!sQbgxPFs7O@6H+Wt z%wUirJhwflb}+n5UxdqeTewNyh(FpJ?}53d9mX5$hZi{=>*PnP_#j35oU zAAQQD_%Z}CaQ>BmbPo=l3Hh~l0OY6ceJ9_ZfQfxKh0=mKs_~v`2|=;t5DrAqrAu}H z69B#%0$5(v?O(>nMl#!71_lR9K}eetssM2q>s6a(7`PEEMl7S-h&o?6#uXyRl`S2O z&97T&SqO_)X{05sQGuD97c6M~_3&F~#an+V#L8SfTMldJ>0hpY^r1;`v&Q7qzlycY zL1Qg15EJwzxmJ1OSh&D*DX;Ffj$^XY$|`MPX3>?5A$V2eo((N(3%3eVVQpC(p|gRB zUz?RoqK`BavvAl%EJT;h_-6TaEWxcUkSoV5(M#_np$Mr(21zI>Io1_f9QDt(m516r zswtjv`J7F*voGV~e6Lp5O(V;%%&!~xb)FkiR+($KE%2V zvPLO_Tq`^9dDDC0{c8^g2zTc_7M#iSv!#jaOy+LyM`T>{weJ348hrzxW>;4y5e+%B-?hay+0wnl)_lf%J?e_*4NyzlzlSNSn|Fq2l>Bi<@-_Jnc~#cE z*81|@MDzccWr~c4?W8J{nmMMLk-zim2YinOuNGex`3u?wu0IXCaGSp`6bD|8BrS|N2FcPeqEn%=L>CEgWmqtU%ZC3_aq8yjwt)X+ZC7CHIJ&*SBE3! z)h&r(kCAK==X^>L*Ky+3o31GAbhYIrzUju?eDveLW9>(HS@~van1a^E5`(9A?tKn| zmP=KFjdIdnOFBaL{*YA<-mVdy&M$5d;ct5)%*e~pFR>lR*;(SgtE)y`@mIfA+gx&2 zca(?STZG>NIJ~+374H9WO?$g3Q+_=R_G%m7{&q5+l6`Fhrr#dlve>~eIfoq3k?IA19KbGlL9-@)G?d(9hmT->*t2(+b{_a@Qu zE#$GP)53yB_WSHC1{wCU(=ct?*0C-2`}Cmo*yB*i;eUzbKP!!+Py+IA{{9cwM%$iW z9l^5d-p5c2WSeSCod%+9@ue_#IkopGbqbh}^cdCR=V{i9Wh>Vd+0ZBh1B^wtsv}1GpTxH#-IRO7m0ie@{sR@nV?(MNO*e^}`p!FC=iN zLX>xVtZ47Ty8C^&%=x{;3@XY%GKT2Q<|?gp9vw1~h$hx`eujv_z(X>$9wh!k-pHnH zRkUV)qXV`6G7#@H;5VKZzO)M z5@Vu6B{vfUk6>T&^7n=xp+~~pfVBC?0H(zR;z!UKK_UfTA~)1SZ!kHrxgk-2PhRLT zvF1aPSgV|bPEx6Jk_?}mTx(M9-z240S(Q)8shr8`e6pGz$+1bv-&$pK7n4J8k`4J} z4)Rc6Ia7d|DQ4j*Ad3`e9KR0*#w7sZSp`^J2;b_5S%RC|SP#FT3d{%-c=yQa1fZjc zrd8J?K(T;)5O@Z5)SAFl&sKi#a!1R@loqx0bB?s)!n7zIPzF7J#3S%64t26WJ=j9? z8In=S2ZU^=M?a?305X#vfsPjGwkWAhvcfDdfb7;Zuhz`^LimXd;I%VmsZMH_aoVLy zT<2p(&tcjdOnNv!OU2B4jUqnD?!qmvG(fJexrsGynq@Vnpt7 z53tsc`T>#$u1A|o2YiPBi$7(}^rZW+V?`~}{_{g;4gf+&L4<@rITiAGdyw-dpdJ}1 zz9&e|uV7aiZR{|oWV`UN9KM~*!D z0o-M}W*fts2Z(El7^?H$PV-+(c~vK$T}*%ONs}{7i$+oK+b#yX$+*zvRS*sq^^gBIBg|mqu_SQus5>Qm``B=a%GBb`Q?D(uY}ok zkMIlRWmo=LDNn#OaJloR(knLL(i}pT9NG0oxwlTqB?M6HnlA5{nTu0Md;~03F_*od z&t0S~)-mVsBaUk;yCAC$aRn60r5%7#kH)HN%PWih%$*az%cPT(JUwZBQ%P^F@Q&Q&|Hedo+J8J(uyQ z@JmFayj1~SKjs&eW z%%U}FG5_7ds}QD$r9EHC3)EWyQo(90DNIWQwL6V9tF)JtEERelw}(B#$@w94LeS6b zOTETH6FPAWkuBZO(X_7bzjk|2wcGP~VBS4$P{;Eyl^aX?tw6sQY2o`Ina3$F5Y&!} ze71}VWQVq?$lTnDHn+oO!rX}Pw-9gdO=@t3z?FQV1K~vKOunDwuE%h~5G?91#*!<9rRJ!A2 zGe7eKd!c^tAhL!F#uo5(lR{79{j%~#8}JGSSUd){_G-Dv1Abi|l)&kB&y zbH(mri@sOCf_&DK$^`BFa&L$fbR-rKj1_Vfy;r-8vN&}aU}XTAd9bKmB2Q}1I#$?Sxi?C1vn*cd8m zPE>8y%5)J*dI5ifMnz|1dtdHT_23J94{ZMyV`kKM5VlpuQe|ZhXd3^^Z&=Ge)C^hp z(Dn|ola%}NA)Ja*SGkNqh3@FoGBbv%sV5+)GFK!TD3)CV-&YDJ+NhfaDc&y2w(eC_ z#B4t4M_ui>L2sRXoNfUB^$+VIwk&;%0}ktg@W206=IT2io$!e&qy+!n)fw^{uYEK0 zbn~>HT*BP(oA(r)YnJ^RAeXnVlP(+AD$}0Ar!pL!3E=HPcwqxFS{677VyFdz4b+~ZACExmG=Xwcc+y(JwHOJZ$M$GHIFNW>LVb%Jc;Ku8hHTQ{l+dq;r7X!B)(M33-if1u) zE{(V6jJL`YH{t$n;#Kd6PA#a%s4M*1MM>WM#+)Fwwo5*^YsegLAhf4%yZbXH!8B*j zBxcWANa@Gh-tvci$6t!h`unra`|fWFo?ZLnfA@d=Qt%@==;u5LdXo=<{yJz+I*3?H zv|2lu8aRk!mQN5mtX4lvsg_I2IV@>7Y`TUcn})%Fz@U)9l;psmPs5O@Y-Ev0<&eZ- zlEJ{R9yjP8H!{Ou^c+=HOV(iWV;COyket-7!L)ZtcCLYV$&UNFPMR^{24iGnF$Kn^ zPW}oVPraR}I-e95hIi|qu3^H=$DAtsJr);1o%6$(BZDvDI9;DQfg?N1`f%C+KwX-~ zSeeFH-9SEGJNx%`cF`q~gNb^lf4%@gi7*7A_niNof`MXQT#@j@)nF|3U}WW?WaOO{ z&z_>PoD8g8NCzDX`eCf7oa1#PmjU32x=%LGE>UkUDmX$)r!lCYb|~3?@OgQWEGnl! z$o0SKVwR*RBAj$Q&TtJcEc_st} zz;cP}i!#uK=wkm6=KElGerE`IFp7H!2O`3-!npx&G<`unu^1T_fH}kSOx8=>8Wg{E zj5!q$oeGj;+!NRUDMlD3CiV%O`{V*atXsQG&Q(vf17UZgq+s1GT|DA;qr~N*Wc8qA z_5k?o;cB~|Vn`8dx?dbskZ9uos4y_-zRx_I2jV>#AE3%F?7vY~x=}3SU_aKNdDrsDM~;Fr4;9va|X4+#*5ov(rZX ztT-JCNj(?&{j8KCe(tp}FoB=RC1a>`W_Dzg=ryWM7H4+l)7VU>igaf86tnnT&UQZG zW;1w0_3t2aipwR6OT0ES66K;YBxEq?Fe?9!{*`N#{~TPxgF!}w`Fun5eeOi3!Qx-F z>GGV-RIaEI&goBQ`qDySvAYBK-eZFvUxytmn2o{j1L1fqKUWqmjT;?;hu}5TiFhVf zKkvd6t78NqV@br)=q))PqQMGn1Z(BhBY6(UJ zQgNA&C8^qe{_Vsuo?hV}6xvoIFCYaXa9@6QyVx9z^-cGpp)2fQA>y)BNuVi`r`L<9 z*~4j4TwpHOX*-;Gc|)(0;EzY;j}m~#Rks&Kqy$*9r%$WJ@=P?aAt&-*EEEyhLJp(* zU%7Wmh?HhpOe6{+pBxg8sQ65%%0(>gr3kGWE{8r(M8=6vwEWq_fu(O1PvGaijOTgT zD;yXZ=T>F!9?$3i;K*W;mqU8(|2oPux0@&orwMJsv)Eib`y+L(#la`=b6z?O@bv2> z^xJ0b*mv^qq}RzM6nT!xivaMPr!#tjEPzl!RyG-2c`1-Y!gkcnX@VS~Xi+@RUl9{E zt~E$QyxiG#oTPv*(y5(2c_QA(4=M(M2Ahc5ASQ9r5FpMn0); zx7bd0(_aFchND}r${Yd=B+>5IeHUQ}4F4dyZv-a6$oT1p5V7Wa{GKbj;tMDSAMd!P2VcxQSmMqUbos04JA_zV`=lq^Dmog<;mlS#nlH5`EPGlUEvq2yg(&Ck}p z6OC>?PiEVyYVhj5gKzCa1?)i%BrjI;^#5QDuCW(8VL66)e#MlqINRyRC+*mkyb_6F z?TO0+$E$*_f?*FJF)76RUgjOL$SBY5|ZI zQkx_%A?uH>jspJrAWqg79KcSWuh9g@f>|OhxMDv;oYhimAm8$IvdT( zVwp=?!$*$H?|B<_BT>iUbYoCXyQW4y;Cbk0JL$MsVxbbo!uT znsy423V{uZuaN+WGN{gE$lnb@v_cXisRFgo}1v`}y_!}Mr73e+1K$O70)AwTbMk*A982$K~ ziC^RnS6g4Ie@zMy<4cV&X#EC4EBa*(9sdX;Pt&hm2+1AA=ccQ{l$Z0?@C&7Fz zurRvs4u%BBEV@;4FxsCqTYf1<@_LBE&xOt@ibY$7yjbeKTGrJ@1jPjh!62f0Er>C1 z)I=)k7)m;-LM!QRVJ*@mOuz7lbG|TE(3)DCU2@N7cZk5k#Q9z4gm&#q{=kWMm$1?x z3f~``Lj!309SV3Yd+;?W;}N95M`$EVD-@t>_V!Sb#LpqA`_;FYo`Ide<3K)eG4=`q zU{GQF*cJM))Z(|lXFlug2i!4{nft+^zkh>@dRa7D_2Bl9^&fs|GTZg`qH)*76Wwri zJ!71EKR&OM3E}qu5HtKxyf;EW5%i)>Rk?q9G0eBDMVi1F4U!kz{GMKfr0fnC!cmC> zG$0tDtz`{TRQNbrwoM8h85W+22hhK~gHp9G868EoKh|2F)nCa-?dhDreljf(&VGbR4A);mZ{9F zgtUgOn2h~ptaR)SX&)KN$2aVK8nbUyIhw;V5udj{$32qDbIbCt%1hz2z#_(9Y3A*i>KR(FxgB!;U-<7F#;U|~Fqdz6tiJJ2@?w9o?S zOI5@;)eUW@HjHpcZuF_3I3`%(yJ#qro;g*hSz0psD4U$9c$zQ)qMF0Jsq(Wql~{LQ zg>KRC{t>aV5wvmm@p&> zKIk1AjQHUdNyH~H`x_`N2M$rj%n9=Mne);ym+^_OKlImMhS>ETVt9lS@)+Bu>CHT5 zrMIrWXBO>HgkS!t_8%4TolO=2jORjX*DBbj}#Vwf0}_o%c7JkKgb~5!G0&U6fLzXpP!xk0AD5 zMT@Fct3?`nM6IH>*n1Y$+KSklMywdI73naFB2W7HeDC|5=l6tx*| zqLcLO`4#b}(|6>f@~GE$->Xve0Xv)NF@Zl6w*FvwzdY@?4LWMtyx4uNV2NG{I{m$I z`I9hz&T1WeG2nD{wjCURTL~tD#9iJ{1U!06ET~8VdV3Ah1+Z2m11SPwU01P+*GCm7 zs=LnH6hUzcl$frQJw0cEa7BHWN3pp`O@wJ)17yo8&IWTWzZn2Iz)MW$Lswp~STROK;7MSdSC z6sMv9QdMGARTflLkyBNLs6HT3RdZ9-fT@DxR5cN*j~!IC+EpQ=syY}|T{>0meN}ys zngOetA#0zWpqep6&BR*Gv=M3Kre+?eW`R(%ynvfkt67h#*YkthnIm;CK@A@{ z4H0e)Uu%umZW?Sx8h&va0T=3oP~w~Rf#=m4FpNeJNIh_0BLp;PaiI|^2o4ui3zGv! zS`R`X;3yb4+D#Q62ac&8#494ev7_L4)&bx=_}#^zN-sE(RWq4HB}q^-1)?dn4^DN{ zOqWBxhiPV#3}qlRvquNB+BI_`1`!y|Jh{Q#3(W$O!F*P&qV|D8Ijs`kfnsZ|GP!|L zm{tYJKsiFIYP7$yU8^RdzZ#?U0n%T4p;b@UU&pHb5!2Tor~N5TJW2nfa&g7Lv|74$ZFj^R>=P7_!o>W z4x|13V!REc_YyO8Fc%c&%gA?GFd zuF!P6oFRAL5XRbY#n_Oy1k4w2nCoVE|I-+M$8_YVp%AH-z=7fHhM_P$ScJ`}@WN0` zd<-wD^EJ@gNJ35PQJ~R;uaR`BhD?o7X`GSVr%}TGzE}H33XximDUAn6jFss%RN_^G z!IBTGQ4+o=6&sPQBe)AkC=Ge2KnPsph>Y0|MSlpiszcEXM$)$dl~+lPHc1~I!433h z*tAUq98AniR4gum=9DO@UbvScoJ|GpMNXldLdKgf5}ZiJJc&}@FxD%9)9-}QR{{0F zpRF!?EDw5IN@h$c!8V&Seit**aVoaQrdF&#FZ$jW;wE;dK+_Hse}4TNK9Z;8#LS6g ze3K%CJGobEq_1C@`KQiK7XkH}QQUT9R`(+8%tL9w0EbA^0P#p&p$>z|Ft#E%p2054 zICAC{W$0_6xo{nG|3UNTGxf3J<`E|5iDR>Yf#?vOFykGRU%VNN)I8LYEV0i#aK_y4 zp2a&gV{cNlCn*|E((9=PFA!2Sbq8=PikPOF2RoC(}$!k>+q*_d0tdbJSN*I{Tw zY~pB=elOyg;|%l|sF!H&6ll&?1&^ueN!lc>a$hJTU3|wDSwDt0du(DvY1KM5TN^)D z)o0d_I_Ga5`r)|k&FTW|0A;CTVyg4GU&y?p#w>SfrtlKo3o`TGL@PVY(L{$mGq3m8 zpEDF9iG4g{crU`Y1jt|qpHxHp2`yQCQg-YxaZI&z5I0qi2hu8{r(GBEXf~TU8xhA2 z^j9^Lua|J_7<%QC$@HfsdgRiJrTPt%8RK~PjE%?)<&zDyMbBQ0O$}JP+FJDp=)**M zQ_A#Zv+*${@xdh!dI^7{wtU=yIuUy8TSuxVwGx=Wq-$b2xw#xXX|vp6wZ0j7M2K$X zEHC#huA8i0dt&SKBZ_&le*Wp8;nuv!dFQj~?Ot*?>D>7Shgp=l)81+T& z*{n-QbO?>xo7F5;yt1V^vEm{lTcIbGc!FipUHhE6W|_LqG5$>UYUM6+&8=p6?-IVh zY5NeZE_!9b@2Dx7W-P|gTcoqlT{3ULgeGzd0S_K zpk%`nv*Gm^E99tYJA?6}-&QO}aWtcN%;AO|^S-8Q98{rCJAtoFx6NMLYP*N|nA^Cg zZAXz}gUf-39ma+xPt7;CX`G+CC%|c<*Vc4)B0tXrn9k!POd_x6n!ae>hB-Zp%q7n5 zKnV<5Sk*eXg0`PrF5f3z2v*!pF?~^!LKcMvr?O8%oL+oHYz3c0_{JN*XGK+1qqHwc zbEuH2lrHY9E`{tba^+oq5K3I^dZivNhcK6NUA>B2my>Fjsvy1UahEfUOKq**hbxy0 zkZb+&1d!9RQP=g;6W7lkgc(BD<^@aH6wVXAj)vd?Khe@8zn$Sp_EZJ^YR&i!wai+*OGa?`D#k&xta&!clk^0+hV zxcPyBXb<<<*Kl&R0~8g7pFY`a=Yg+2*<6r5e!g}eXn#OT>amP-&rShhbtl(7^w%EX zR&?QnZDZIcxZCc8ESLUnn&x_x#|GMClR+I!kNn<=lO6SdDFUzEvxI>?$O4gX%t@{7 zj6)u53BsN#Ju%7aH`dWvGx=ooll}V^J6xA95^xZq%LF`rqJP2@!4|z_&_#UKuY4}y zBur=eR2Z+DO);YIsBLSY+s{2FOoLdJ9gx3r6T*tD!T{$zXRnbw(yBl)TjrMxd>7IFKQwRa|L}1 zKidb+zSi#?G|e1dH?7M!{pMI+I(!rrX7I%X^XZ8}@b7I$Kh=|AZQMq_J1!6pB;tE{ z%PcZPax%0G&Q|`)wckl(!pz!Z&0%korD@kf9&L8zFlj?<@EUCuXr0w$`Pkzuz3eRS zj-!)=W7WnMFaA`S`YcfcPV+GG{lm#nUMSO-`FBsAv*i8c7KZzL*$E%tfl560HQgq9 zvh%`m?nCfgoI5~g$@v5Dj~0CA<4bQZo)>)2-OJN=z4S?4-r=s6>oZP%Py+*kK2YS> zKmly9RFq$k-bK=LSmtY3N(3zF9V`hL;;!d40yONMfK9FZPGY>6kemi$Vdb+Ioqm&F zc{PW~$^Y@7UH*E|0YrzyA!OP_aKZ;JLzs{uOv((Vs;a7~si|cKvo?j9*ag2aguQYM zBskq%CgJ?1IdY~s{8ps`PI(e82nk;V&(jL7m-Sq}&2o-4626sU&?YfxiyX8`8rCLB zu$~RmtWA?3j!`CodCG)LAGBQkO^aa=L3!@5ebZzM?RaS#{>Csqz!32&AnIvgsT;KE z4XgWCin(szJO);1{V0j%6(x8c1hXJY1x5M1d+KmFucGwB?{WzodhF@ z@EP#7;K(I{n;bW@ z6H9QDXAd$K@g*Z;C0%HOl3YEuRf68Ho^CeO)^1>GH*h6bd^Hx|vWsinx%~3$ z;LES8?xgVUw3vbH`2M_>@#3g~=DhiuxVgrZ(V~`t=H}_5rs*QW3dOdi#CZWQ-t`1EQTdw|;CU%_D)aJZTM)9DlZ^aXzL=yLJu zYHO%xZ)x~wxa$(#e{e9ofy3Z7W^gzZ?f|oSj=tC+JWfFq9Ouo=O~Tv-4)=HXVh?|? zd2+saakcjgzjt+Yio^cGAK;JH@h3a@%Z;n6{lmkZ&hb}-_bY-2z4E_!&=eN~ ze?4dpl^9mdhX31x9!6+>{OduxiW>Fe?t}vHbNo-!KK|oD-?th5j|ZKj^@-p?i;24| z4S%Zo$AkV9{i*t24?6qx^NBnqctehM(?1^cx22J$hfDP#*KV-?^`IkzZV^1_W)agS z`A~{`-th zXQ1=P^R1*jz2NUBv&WbH@D_zH_@c{8-h7+&x+ygYl29W!167|PaTqZEJrVQGoI^M< zu`mb8qwk21WRY|MK@t|AZKCrU)+iAwu?q4d15V%Wsi0^QrMqzZcm3 z7<-+`VO32Mk0IyQ_I|oMm&%R}n28k`C+7jbD%2#zgBW*!zhDp|it1Bj|d zg%}CL&x`O0K`A$} zzT;GkGjRIEDGp5*(jlpu5R&!}-`D;f6l?XF-D~f_q!S<@Sl=I$^1*O~{lcv=Tz7A( z;e0%@=JOT%Jx*HfMy^R=K}7ei?B)+nMIwkI`8YE`(QY6-pJKyKLWsJkYmgT9Yh3C+ z>)kF8%MDb+#C79Bbs}Q9(2wI{7Z< z`!F|@K^2;CZS%-ke&hY_YC&jn_y;ZxUKT=XeV+=MbGy};D9v}B} zeP~~clg*WJElZb&?wXWzyw-64(oux*UF>*V^yc@a-)i5X^C|XQ*vjd;eKH28=+`3Y zFm9h+WV=l=*!J^nEsRwRTVJHQg`5 zQn@g>eNF94gX247 z-OZbJlCW<1=q=qVjfW?7fNT16oZIZKGA)>`fR2*7C4VT==Z5Gqu$PdGJ5o}8P7F(r^0IGebN+^g*|+< zQitvukEmHLMRB{J--|_8X%c;&taU|Uack@ko4Xq~4N~E5sdsrv zjklby@joSw;*nr%S=WEy6YOP^nt;TEZhH2L@SIymWn80FM`6K6=NvzCjVEBWhq4(X z%gW)TgiFNRb95rKMb3v@yV0SNK%k_Ka6sdgj?031#Wa?LIed1A1CpA*yQTQHhma+8DILX<@u4P}Rw#(1 z07NqFe#CLP4|P!k5?0L<_WAhZ`f!oU4PMgqD&Ng68^(4s(pXCh=ewW7-EW|sKg#l> zOrtCe%;wGf{4JYlkkv1B%-X!gKFH0Ux#P3!h_o)bG}wjcyb*_-Lg--|JrTX4(dvEi3>Y`7mt zP)zLkaMP1XzXyOY2imak=NG?k&Yvm}bx}FOFnQ$A;i zn5Y*yEQX18p94mOw+rrPl=!?x^8mmls>~HVLn`z`f%PXPi=s>6F|}?~V6e#zb4O#e zm>firQlC`nTCrb!2{+^>56p*Ta5X4lGlsG;LaSS7*z;ccj1^UJ@Yzr9kwDw?s{IogOZ_mfGiLtiiYPdqj$*h`QeLUk^wx64{P03ch&B>w_ zEJE|N4>cL@7U@aNSZ=FMS(^&_+QZh19GFc-nGBYwW zv(D(^<}>eTrrhOBrmW8_o=;(MVm&j@s%*)s-o2T7mKDPX^U%B*BArzeke%t3+1!%d z-jY>!md!ky#$}NGWh%Qrlc_ZTG2DXizm6EUaK6o(T_Bw~YLVlcgg|HJEL6Oon9mWt zmxI*IS;R}{nuX?U1mx}vIWD*4+FZ-!R6;~2<^HN*Bg~{72IQSeJM6dQ@vPd<0vR?~`D<($;Zi3$t30N) z{1M*1JnppWjR_Fe#8a=O` zWT~09q#Kv1LA&G=d)F+m+@7g?Ki^vO2`c&a*L6YrG${k#x>r)WZAS7p+c zWNxp;aH}iU3fR|5hStIhYhNL2<$-D6Sw6h+5@sYfpAM_jtoIuQaBuIB5DAz%NQ+!f z3z6JTKfHgNY|-xQeyDbL9q_P@b`gtTHDqOaZoRpBU ze^B~E9=0x73w|N=N9y}mz!aZC^jC9s16zd=ogNjr&|~Q%{TmX0sHL>iZaT=Q!W--| z>+1^|l2RKV-d1?^=%YB`lcX!Tw3UKftO6_clNVQ`hGHX=qU@LiFW6OfjSH;pN|I7a zc)s}A(Dk$N9}kn*PrmhjvQH@vRCSyp)LnY16}+{s4QhSiq_lzZf`no>-ariL38vcl{W#{q@I|M$Td&1p2O)U8z@sYIPq?Mj z*ncXlPOXhVDwp<@-Rd*k@4>!lrV&HR7G78A>4SW_wo^y0N7}E&s_7^QiNdSKhaI{p zkh=9SnC|gVg+T_rcRkGB49HltRe7}mqXsQ81Hq#YPSu9Otp}w}9o`_!3$wZ6ATQp4 zhLEoZRRJ!gZbM#ghhCHonb-Sa^&dWaZkzY2^Zb1$14#0HoqSZaxhU`G1bSG~^@gOA z-yMTjMt(hm?efnp{4+;K7>9-`u_IlWQE-%ZueDS^!fYO4J3G+5F)F77>M7czo^})L z-ls)ld}8kT%O;PeTMsyIk3Fxim!1w+*lBqLmP)+cPFS*jTX4wtDqZTRFaWl2v4SUod8s zX9}Y@6$9c9j+lBlHU$Ek-C>*7ivGH2J&@=>&A&8K-%L_SBugLC8v==l16yIDL?#9G>56gCSC4~x}s*`)z1ZYBZ}Di#pcV!%ZAz1lEsf* zi!s>6E}gQ18Y&@SkDzYMcn+qrV|utAGuFX0DYUfEvGi34g9*P}T4h`Qt+}*jv%D3! zET*}<)3Ln2w9HhxjAL8*^?0S}+tN|s%4yDu0Qt)K(#qB4N_Y1Pk^CyjlT`%gDp~F- zMd#{?{R-%6m4+SL7`l4%36>!U3s%B1bz)hUu@-Bq?Cfi(`=#7Z)_8)}_;7`HJDFI5 z82PW(gxS|c3Dq$+nt!;g_g^mig6JEu8L=P{{4Y->tg0mNRA{d{w26RDZDCCWO6nHW z5e#jCK>G;s2n%S}fAdj=sD1(;6-%C$Mxdqh=ERDYAYn}wVJ)^X9Zq3Q>T$gUCJKof zGYsoDOdc}K9=A;&v(1|@Oh*~!p>5Mqws~ks(VSs1hQLQH8n*h!kiypD#1{~*uiWCHSRA;8XmF=usDS9MJ9zl<}k zYvo_M88>xEh%Y41AN)7kBv8x->`B8neDgQ_zaW#4S|BjXzreEWFR)zx*tXK#@h`9> zBozo$a&D}DZfxSesU)G-LI99`=lIccJb^(@e>Dkm_^ZF6ll}eu|H6>? ze=sEeFM~Y!he2L!5*Xys(b0bxmlX4viPAb0_eLQlsW;eDQl7=C>Un^O z$cfe``1Euy3{|U}g%DV=PmQC3m^w;Jt^O!yH#UopS?-q&sDw{zPi;YP)btt z3qTFF;3;RN>6TJFxyT%at^e2Iai_$l z)Nx+VvbG?9KDW!!?*m{CWuw8YPtv-A^k@6k~nQ?&TFlpSff_v;1b;K1Go-NaRBmK}LZN&Aj`cjS=L{DW9h8mnCLj^p*>=4)vXUhy+VR26)3oUu5?Ny?Pok zwhQ33CKA~p)ubH~;+-8Na-$i@D6CdeB;pvYCt??D+fgUm4Df_2hLP(Nk2qupjm`7? zAf*Yj4=@wfT6xa+c=!!!eyq{3@v)FT3NG)_V(}i#LvxST_Mbk*gY%u@^#6CC;-SO9 ek6y { + return ( + + Creative Commons License + + ); +}; + +export default CC; diff --git a/docs/components/container/container-style.scss b/docs/components/container/container-style.scss new file mode 100644 index 000000000..474eeebf1 --- /dev/null +++ b/docs/components/container/container-style.scss @@ -0,0 +1,8 @@ +@import 'http://github.com/vars'; +@import 'http://github.com/mixins'; + +.container { + width: 100%; + max-width: map-get($screens, large); + margin: 0 auto; +} diff --git a/docs/components/container/container.jsx b/docs/components/container/container.jsx new file mode 100644 index 000000000..9f00bd0a8 --- /dev/null +++ b/docs/components/container/container.jsx @@ -0,0 +1,11 @@ +import React from 'react'; + +export default (props = {}) => { + let { className = '' } = props; + + return ( +

+ ); +}; diff --git a/docs/components/contributors/contributors-style.scss b/docs/components/contributors/contributors-style.scss new file mode 100644 index 000000000..b8a441e02 --- /dev/null +++ b/docs/components/contributors/contributors-style.scss @@ -0,0 +1,37 @@ +@import 'http://github.com/functions'; + +.contributors__list { + padding: 6px; +} + +.contributor { + display: inline-flex; + flex-direction: column; + align-items: center; + margin-right: 1em; + font-size: 14px; + + img { + height: 45px; + width: 45px; + border-radius: 50%; + box-shadow: 0 0 2px rgba(0,0,0,0.3); + } + + .contributor__name { + color: getColor(fiord); + margin-top: -6px; + box-shadow: 0 0 2px rgba(0,0,0,0.3); + line-height: 1.4; + transition: color 0.1s; + padding: 0 6px; + border-radius: 2px; + background: transparentize(getColor(white), 0.05); + } + + &:hover { + .contributor__name { + color: lighten(getColor(denim), 5%); + } + } +} \ No newline at end of file diff --git a/docs/components/contributors/contributors.jsx b/docs/components/contributors/contributors.jsx new file mode 100644 index 000000000..e114aac18 --- /dev/null +++ b/docs/components/contributors/contributors.jsx @@ -0,0 +1,25 @@ +import React from 'react'; +import './contributors-style'; + +export default ({contributors}) => { + if (!contributors.length) { + return