How to use npm method in root

Best JavaScript code snippet using root

config.js

Source:config.js Github

copy

Full Screen

1System.config({2 baseURL: "/",3 defaultJSExtensions: true,4 transpiler: "babel",5 babelOptions: {6 "optional": [7 "runtime",8 "optimisation.modules.system",9 "es7.decorators",10 "es7.classProperties"11 ]12 },13 paths: {14 "*": "src/*.js",15 "github:*": "jspm_packages/github/*",16 "npm:*": "jspm_packages/npm/*"17 },1819 map: {20 "aurelia-bootstrapper": "npm:aurelia-bootstrapper@1.0.0",21 "aurelia-dialog": "npm:aurelia-dialog@1.0.0-beta.3.0.0",22 "aurelia-fetch-client": "npm:aurelia-fetch-client@1.0.0",23 "aurelia-framework": "npm:aurelia-framework@1.0.3",24 "aurelia-http-client": "npm:aurelia-http-client@1.0.0",25 "aurelia-templating-resources": "npm:aurelia-templating-resources@1.0.0",26 "aurelia-validation": "npm:aurelia-validation@0.12.5",27 "babel": "npm:babel-core@5.8.38",28 "babel-runtime": "npm:babel-runtime@5.8.38",29 "bootstrap": "github:twbs/bootstrap@3.3.7",30 "core-js": "npm:core-js@1.2.7",31 "font-awesome": "npm:font-awesome@4.6.3",32 "moment": "npm:moment@2.15.1",33 "toastr": "github:CodeSeven/toastr@2.1.3",34 "github:CodeSeven/toastr@2.1.3": {35 "css": "github:systemjs/plugin-css@0.1.27",36 "jquery": "github:components/jquery@3.1.0"37 },38 "github:jspm/nodelibs-assert@0.1.0": {39 "assert": "npm:assert@1.4.1"40 },41 "github:jspm/nodelibs-buffer@0.1.0": {42 "buffer": "npm:buffer@3.6.0"43 },44 "github:jspm/nodelibs-path@0.1.0": {45 "path-browserify": "npm:path-browserify@0.0.0"46 },47 "github:jspm/nodelibs-process@0.1.2": {48 "process": "npm:process@0.11.9"49 },50 "github:jspm/nodelibs-util@0.1.0": {51 "util": "npm:util@0.10.3"52 },53 "github:jspm/nodelibs-vm@0.1.0": {54 "vm-browserify": "npm:vm-browserify@0.0.4"55 },56 "github:twbs/bootstrap@3.3.7": {57 "jquery": "npm:jquery@3.1.0"58 },59 "npm:assert@1.4.1": {60 "assert": "github:jspm/nodelibs-assert@0.1.0",61 "buffer": "github:jspm/nodelibs-buffer@0.1.0",62 "process": "github:jspm/nodelibs-process@0.1.2",63 "util": "npm:util@0.10.3"64 },65 "npm:aurelia-binding@1.0.4": {66 "aurelia-logging": "npm:aurelia-logging@1.0.0",67 "aurelia-metadata": "npm:aurelia-metadata@1.0.0",68 "aurelia-pal": "npm:aurelia-pal@1.0.0",69 "aurelia-task-queue": "npm:aurelia-task-queue@1.0.0"70 },71 "npm:aurelia-bootstrapper@1.0.0": {72 "aurelia-event-aggregator": "npm:aurelia-event-aggregator@1.0.0",73 "aurelia-framework": "npm:aurelia-framework@1.0.3",74 "aurelia-history": "npm:aurelia-history@1.0.0",75 "aurelia-history-browser": "npm:aurelia-history-browser@1.0.0",76 "aurelia-loader-default": "npm:aurelia-loader-default@1.0.0",77 "aurelia-logging-console": "npm:aurelia-logging-console@1.0.0",78 "aurelia-pal": "npm:aurelia-pal@1.0.0",79 "aurelia-pal-browser": "npm:aurelia-pal-browser@1.0.0",80 "aurelia-polyfills": "npm:aurelia-polyfills@1.1.1",81 "aurelia-router": "npm:aurelia-router@1.0.3",82 "aurelia-templating": "npm:aurelia-templating@1.1.0",83 "aurelia-templating-binding": "npm:aurelia-templating-binding@1.0.0",84 "aurelia-templating-resources": "npm:aurelia-templating-resources@1.0.0",85 "aurelia-templating-router": "npm:aurelia-templating-router@1.0.0"86 },87 "npm:aurelia-dependency-injection@1.0.0": {88 "aurelia-metadata": "npm:aurelia-metadata@1.0.0",89 "aurelia-pal": "npm:aurelia-pal@1.0.0"90 },91 "npm:aurelia-dialog@1.0.0-beta.3.0.0": {92 "aurelia-dependency-injection": "npm:aurelia-dependency-injection@1.0.0",93 "aurelia-metadata": "npm:aurelia-metadata@1.0.0",94 "aurelia-pal": "npm:aurelia-pal@1.0.0",95 "aurelia-templating": "npm:aurelia-templating@1.1.0"96 },97 "npm:aurelia-event-aggregator@1.0.0": {98 "aurelia-logging": "npm:aurelia-logging@1.0.0"99 },100 "npm:aurelia-framework@1.0.3": {101 "aurelia-binding": "npm:aurelia-binding@1.0.4",102 "aurelia-dependency-injection": "npm:aurelia-dependency-injection@1.0.0",103 "aurelia-loader": "npm:aurelia-loader@1.0.0",104 "aurelia-logging": "npm:aurelia-logging@1.0.0",105 "aurelia-metadata": "npm:aurelia-metadata@1.0.0",106 "aurelia-pal": "npm:aurelia-pal@1.0.0",107 "aurelia-path": "npm:aurelia-path@1.0.0",108 "aurelia-task-queue": "npm:aurelia-task-queue@1.0.0",109 "aurelia-templating": "npm:aurelia-templating@1.1.0"110 },111 "npm:aurelia-history-browser@1.0.0": {112 "aurelia-history": "npm:aurelia-history@1.0.0",113 "aurelia-pal": "npm:aurelia-pal@1.0.0"114 },115 "npm:aurelia-http-client@1.0.0": {116 "aurelia-pal": "npm:aurelia-pal@1.0.0",117 "aurelia-path": "npm:aurelia-path@1.0.0"118 },119 "npm:aurelia-loader-default@1.0.0": {120 "aurelia-loader": "npm:aurelia-loader@1.0.0",121 "aurelia-metadata": "npm:aurelia-metadata@1.0.0",122 "aurelia-pal": "npm:aurelia-pal@1.0.0"123 },124 "npm:aurelia-loader@1.0.0": {125 "aurelia-metadata": "npm:aurelia-metadata@1.0.0",126 "aurelia-path": "npm:aurelia-path@1.0.0"127 },128 "npm:aurelia-logging-console@1.0.0": {129 "aurelia-logging": "npm:aurelia-logging@1.0.0"130 },131 "npm:aurelia-metadata@1.0.0": {132 "aurelia-pal": "npm:aurelia-pal@1.0.0"133 },134 "npm:aurelia-pal-browser@1.0.0": {135 "aurelia-pal": "npm:aurelia-pal@1.0.0"136 },137 "npm:aurelia-polyfills@1.1.1": {138 "aurelia-pal": "npm:aurelia-pal@1.0.0"139 },140 "npm:aurelia-route-recognizer@1.0.0": {141 "aurelia-path": "npm:aurelia-path@1.0.0"142 },143 "npm:aurelia-router@1.0.3": {144 "aurelia-dependency-injection": "npm:aurelia-dependency-injection@1.0.0",145 "aurelia-event-aggregator": "npm:aurelia-event-aggregator@1.0.0",146 "aurelia-history": "npm:aurelia-history@1.0.0",147 "aurelia-logging": "npm:aurelia-logging@1.0.0",148 "aurelia-path": "npm:aurelia-path@1.0.0",149 "aurelia-route-recognizer": "npm:aurelia-route-recognizer@1.0.0"150 },151 "npm:aurelia-task-queue@1.0.0": {152 "aurelia-pal": "npm:aurelia-pal@1.0.0"153 },154 "npm:aurelia-templating-binding@1.0.0": {155 "aurelia-binding": "npm:aurelia-binding@1.0.4",156 "aurelia-logging": "npm:aurelia-logging@1.0.0",157 "aurelia-templating": "npm:aurelia-templating@1.1.0"158 },159 "npm:aurelia-templating-resources@1.0.0": {160 "aurelia-binding": "npm:aurelia-binding@1.0.4",161 "aurelia-dependency-injection": "npm:aurelia-dependency-injection@1.0.0",162 "aurelia-loader": "npm:aurelia-loader@1.0.0",163 "aurelia-logging": "npm:aurelia-logging@1.0.0",164 "aurelia-metadata": "npm:aurelia-metadata@1.0.0",165 "aurelia-pal": "npm:aurelia-pal@1.0.0",166 "aurelia-path": "npm:aurelia-path@1.0.0",167 "aurelia-task-queue": "npm:aurelia-task-queue@1.0.0",168 "aurelia-templating": "npm:aurelia-templating@1.1.0"169 },170 "npm:aurelia-templating-router@1.0.0": {171 "aurelia-dependency-injection": "npm:aurelia-dependency-injection@1.0.0",172 "aurelia-logging": "npm:aurelia-logging@1.0.0",173 "aurelia-metadata": "npm:aurelia-metadata@1.0.0",174 "aurelia-pal": "npm:aurelia-pal@1.0.0",175 "aurelia-path": "npm:aurelia-path@1.0.0",176 "aurelia-router": "npm:aurelia-router@1.0.3",177 "aurelia-templating": "npm:aurelia-templating@1.1.0"178 },179 "npm:aurelia-templating@1.1.0": {180 "aurelia-binding": "npm:aurelia-binding@1.0.4",181 "aurelia-dependency-injection": "npm:aurelia-dependency-injection@1.0.0",182 "aurelia-loader": "npm:aurelia-loader@1.0.0",183 "aurelia-logging": "npm:aurelia-logging@1.0.0",184 "aurelia-metadata": "npm:aurelia-metadata@1.0.0",185 "aurelia-pal": "npm:aurelia-pal@1.0.0",186 "aurelia-path": "npm:aurelia-path@1.0.0",187 "aurelia-task-queue": "npm:aurelia-task-queue@1.0.0"188 },189 "npm:aurelia-validation@0.12.5": {190 "aurelia-binding": "npm:aurelia-binding@1.0.4",191 "aurelia-dependency-injection": "npm:aurelia-dependency-injection@1.0.0",192 "aurelia-logging": "npm:aurelia-logging@1.0.0",193 "aurelia-pal": "npm:aurelia-pal@1.0.0",194 "aurelia-task-queue": "npm:aurelia-task-queue@1.0.0",195 "aurelia-templating": "npm:aurelia-templating@1.1.0"196 },197 "npm:babel-runtime@5.8.38": {198 "process": "github:jspm/nodelibs-process@0.1.2"199 },200 "npm:buffer@3.6.0": {201 "base64-js": "npm:base64-js@0.0.8",202 "child_process": "github:jspm/nodelibs-child_process@0.1.0",203 "fs": "github:jspm/nodelibs-fs@0.1.2",204 "ieee754": "npm:ieee754@1.1.6",205 "isarray": "npm:isarray@1.0.0",206 "process": "github:jspm/nodelibs-process@0.1.2"207 },208 "npm:core-js@1.2.7": {209 "fs": "github:jspm/nodelibs-fs@0.1.2",210 "path": "github:jspm/nodelibs-path@0.1.0",211 "process": "github:jspm/nodelibs-process@0.1.2",212 "systemjs-json": "github:systemjs/plugin-json@0.1.2"213 },214 "npm:font-awesome@4.6.3": {215 "css": "github:systemjs/plugin-css@0.1.27"216 },217 "npm:inherits@2.0.1": {218 "util": "github:jspm/nodelibs-util@0.1.0"219 },220 "npm:path-browserify@0.0.0": {221 "process": "github:jspm/nodelibs-process@0.1.2"222 },223 "npm:process@0.11.9": {224 "assert": "github:jspm/nodelibs-assert@0.1.0",225 "fs": "github:jspm/nodelibs-fs@0.1.2",226 "vm": "github:jspm/nodelibs-vm@0.1.0"227 },228 "npm:util@0.10.3": {229 "inherits": "npm:inherits@2.0.1",230 "process": "github:jspm/nodelibs-process@0.1.2"231 },232 "npm:vm-browserify@0.0.4": {233 "indexof": "npm:indexof@0.0.1"234 }235 } ...

Full Screen

Full Screen

jspm.config.js

Source:jspm.config.js Github

copy

Full Screen

1SystemJS.config({2 transpiler: "plugin-typescript",3 typescriptOptions: {4 "tsconfig": true,5 "typeCheck": true6 },7 packages: {8 "app": {9 "main": "app.ts",10 "defaultExtension": "ts"11 }12 },13 browserConfig: {14 "baseURL": "/",15 "paths": {16 "app/": "src/",17 "github:": "jspm_packages/github/",18 "npm:": "jspm_packages/npm/"19 }20 },21 devConfig: {22 "map": {23 "plugin-typescript": "github:frankwallis/plugin-typescript@5.3.3",24 "os": "npm:jspm-nodelibs-os@0.2.0",25 "child_process": "npm:jspm-nodelibs-child_process@0.2.0",26 "assert": "npm:jspm-nodelibs-assert@0.2.0",27 "module": "npm:jspm-nodelibs-module@0.2.0",28 "buffer": "npm:jspm-nodelibs-buffer@0.2.1",29 "util": "npm:jspm-nodelibs-util@0.2.1",30 "crypto": "npm:jspm-nodelibs-crypto@0.2.0",31 "stream": "npm:jspm-nodelibs-stream@0.2.0",32 "constants": "npm:jspm-nodelibs-constants@0.2.0",33 "string_decoder": "npm:jspm-nodelibs-string_decoder@0.2.0",34 "vm": "npm:jspm-nodelibs-vm@0.2.0",35 "events": "npm:jspm-nodelibs-events@0.2.0",36 "net": "npm:jspm-nodelibs-net@0.2.0"37 },38 "packages": {39 "npm:jspm-nodelibs-os@0.2.0": {40 "map": {41 "os-browserify": "npm:os-browserify@0.2.1"42 }43 },44 "github:frankwallis/plugin-typescript@5.3.3": {45 "map": {46 "typescript": "npm:typescript@2.1.4"47 }48 },49 "npm:typescript@2.1.4": {50 "map": {51 "source-map-support": "npm:source-map-support@0.4.8"52 }53 },54 "npm:source-map-support@0.4.8": {55 "map": {56 "source-map": "npm:source-map@0.5.6"57 }58 },59 "npm:jspm-nodelibs-buffer@0.2.1": {60 "map": {61 "buffer": "npm:buffer@4.9.1"62 }63 },64 "npm:buffer@4.9.1": {65 "map": {66 "base64-js": "npm:base64-js@1.2.0",67 "ieee754": "npm:ieee754@1.1.8",68 "isarray": "npm:isarray@1.0.0"69 }70 },71 "npm:jspm-nodelibs-crypto@0.2.0": {72 "map": {73 "crypto-browserify": "npm:crypto-browserify@3.11.0"74 }75 },76 "npm:crypto-browserify@3.11.0": {77 "map": {78 "diffie-hellman": "npm:diffie-hellman@5.0.2",79 "pbkdf2": "npm:pbkdf2@3.0.9",80 "create-ecdh": "npm:create-ecdh@4.0.0",81 "browserify-sign": "npm:browserify-sign@4.0.0",82 "create-hmac": "npm:create-hmac@1.1.4",83 "browserify-cipher": "npm:browserify-cipher@1.0.0",84 "create-hash": "npm:create-hash@1.1.2",85 "inherits": "npm:inherits@2.0.3",86 "public-encrypt": "npm:public-encrypt@4.0.0",87 "randombytes": "npm:randombytes@2.0.3"88 }89 },90 "npm:pbkdf2@3.0.9": {91 "map": {92 "create-hmac": "npm:create-hmac@1.1.4"93 }94 },95 "npm:browserify-sign@4.0.0": {96 "map": {97 "create-hmac": "npm:create-hmac@1.1.4",98 "create-hash": "npm:create-hash@1.1.2",99 "inherits": "npm:inherits@2.0.3",100 "bn.js": "npm:bn.js@4.11.6",101 "parse-asn1": "npm:parse-asn1@5.0.0",102 "elliptic": "npm:elliptic@6.3.2",103 "browserify-rsa": "npm:browserify-rsa@4.0.1"104 }105 },106 "npm:diffie-hellman@5.0.2": {107 "map": {108 "randombytes": "npm:randombytes@2.0.3",109 "bn.js": "npm:bn.js@4.11.6",110 "miller-rabin": "npm:miller-rabin@4.0.0"111 }112 },113 "npm:create-hmac@1.1.4": {114 "map": {115 "create-hash": "npm:create-hash@1.1.2",116 "inherits": "npm:inherits@2.0.3"117 }118 },119 "npm:create-hash@1.1.2": {120 "map": {121 "inherits": "npm:inherits@2.0.3",122 "cipher-base": "npm:cipher-base@1.0.3",123 "ripemd160": "npm:ripemd160@1.0.1",124 "sha.js": "npm:sha.js@2.4.8"125 }126 },127 "npm:public-encrypt@4.0.0": {128 "map": {129 "create-hash": "npm:create-hash@1.1.2",130 "randombytes": "npm:randombytes@2.0.3",131 "bn.js": "npm:bn.js@4.11.6",132 "parse-asn1": "npm:parse-asn1@5.0.0",133 "browserify-rsa": "npm:browserify-rsa@4.0.1"134 }135 },136 "npm:create-ecdh@4.0.0": {137 "map": {138 "bn.js": "npm:bn.js@4.11.6",139 "elliptic": "npm:elliptic@6.3.2"140 }141 },142 "npm:miller-rabin@4.0.0": {143 "map": {144 "bn.js": "npm:bn.js@4.11.6",145 "brorand": "npm:brorand@1.0.6"146 }147 },148 "npm:parse-asn1@5.0.0": {149 "map": {150 "create-hash": "npm:create-hash@1.1.2",151 "pbkdf2": "npm:pbkdf2@3.0.9",152 "asn1.js": "npm:asn1.js@4.9.0",153 "evp_bytestokey": "npm:evp_bytestokey@1.0.0",154 "browserify-aes": "npm:browserify-aes@1.0.6"155 }156 },157 "npm:asn1.js@4.9.0": {158 "map": {159 "bn.js": "npm:bn.js@4.11.6",160 "inherits": "npm:inherits@2.0.3",161 "minimalistic-assert": "npm:minimalistic-assert@1.0.0"162 }163 },164 "npm:browserify-cipher@1.0.0": {165 "map": {166 "evp_bytestokey": "npm:evp_bytestokey@1.0.0",167 "browserify-des": "npm:browserify-des@1.0.0",168 "browserify-aes": "npm:browserify-aes@1.0.6"169 }170 },171 "npm:cipher-base@1.0.3": {172 "map": {173 "inherits": "npm:inherits@2.0.3"174 }175 },176 "npm:sha.js@2.4.8": {177 "map": {178 "inherits": "npm:inherits@2.0.3"179 }180 },181 "npm:evp_bytestokey@1.0.0": {182 "map": {183 "create-hash": "npm:create-hash@1.1.2"184 }185 },186 "npm:browserify-aes@1.0.6": {187 "map": {188 "cipher-base": "npm:cipher-base@1.0.3",189 "create-hash": "npm:create-hash@1.1.2",190 "evp_bytestokey": "npm:evp_bytestokey@1.0.0",191 "inherits": "npm:inherits@2.0.3",192 "buffer-xor": "npm:buffer-xor@1.0.3"193 }194 },195 "npm:browserify-des@1.0.0": {196 "map": {197 "cipher-base": "npm:cipher-base@1.0.3",198 "inherits": "npm:inherits@2.0.3",199 "des.js": "npm:des.js@1.0.0"200 }201 },202 "npm:elliptic@6.3.2": {203 "map": {204 "bn.js": "npm:bn.js@4.11.6",205 "brorand": "npm:brorand@1.0.6",206 "inherits": "npm:inherits@2.0.3",207 "hash.js": "npm:hash.js@1.0.3"208 }209 },210 "npm:browserify-rsa@4.0.1": {211 "map": {212 "bn.js": "npm:bn.js@4.11.6",213 "randombytes": "npm:randombytes@2.0.3"214 }215 },216 "npm:jspm-nodelibs-stream@0.2.0": {217 "map": {218 "stream-browserify": "npm:stream-browserify@2.0.1"219 }220 },221 "npm:des.js@1.0.0": {222 "map": {223 "inherits": "npm:inherits@2.0.3",224 "minimalistic-assert": "npm:minimalistic-assert@1.0.0"225 }226 },227 "npm:stream-browserify@2.0.1": {228 "map": {229 "inherits": "npm:inherits@2.0.3",230 "readable-stream": "npm:readable-stream@2.2.2"231 }232 },233 "npm:hash.js@1.0.3": {234 "map": {235 "inherits": "npm:inherits@2.0.3"236 }237 },238 "npm:readable-stream@2.2.2": {239 "map": {240 "isarray": "npm:isarray@1.0.0",241 "inherits": "npm:inherits@2.0.3",242 "string_decoder": "npm:string_decoder@0.10.31",243 "process-nextick-args": "npm:process-nextick-args@1.0.7",244 "buffer-shims": "npm:buffer-shims@1.0.0",245 "core-util-is": "npm:core-util-is@1.0.2",246 "util-deprecate": "npm:util-deprecate@1.0.2"247 }248 },249 "npm:jspm-nodelibs-string_decoder@0.2.0": {250 "map": {251 "string_decoder-browserify": "npm:string_decoder@0.10.31"252 }253 }254 }255 }256});257SystemJS.config({258 packageConfigPaths: [259 "npm:@*/*.json",260 "npm:*.json",261 "github:*/*.json"262 ],263 map: {264 "core-js": "npm:core-js@2.4.0",265 "fs": "npm:jspm-nodelibs-fs@0.2.0",266 "path": "npm:jspm-nodelibs-path@0.2.0",267 "process": "npm:jspm-nodelibs-process@0.2.0"268 },269 packages: {}...

Full Screen

Full Screen

Using AI Code Generation

copy

Full Screen

1const path = require('path');2const rootDir = require('../util/path');3const express = require('express');4const router = express.Router();5router.get('/', (req, res, next) => {6 const products = adminData.products;7 res.render('shop', {prods: products, pageTitle: 'Shop', path: '/'});8});9module.exports = router;10 <% for (const product of prods) { %>11 <% } %>12const express = require('express');13const bodyParser = require('body-parser');14const app = express();15app.set('view engine', 'ejs');16app.set('views', 'views');17const adminRoutes = require('./routes/admin');18const shopRoutes = require('./routes/shop');19app.use(bodyParser.urlencoded({extended: false}));20app.use(adminRoutes);21app.use(shopRoutes);22app.use((req, res, next) => {23 res.status(404).sendFile(path.join(__dirname, 'views', '404.html'));24});25app.listen(3000);26const path = require('path');27const express = require('express');28const router = express.Router();29const rootDir = require('../util/path');

Full Screen

Using AI Code Generation

copy

Full Screen

1const path = require('path');2const express = require('express');3const app = express();4const port = process.env.PORT || 3000;5const publicDir = path.join(__dirname, '/public');6const viewsPath = path.join(__dirname, '/templates/views');7const partialsPath = path.join(__dirname, '/templates/partials');8const hbs = require('hbs');9app.set('view engine', 'hbs');10app.set('views', viewsPath);11hbs.registerPartials(partialsPath);12app.use(express.static(publicDir));13app.get('', (req, res) => {14 res.render('index', {15 });16});17app.get('/about', (req, res) => {18 res.render('about', {19 });20});21app.get('/help', (req, res) => {22 res.render('help', {23 });24});25app.get('/weather', (req, res) => {26 res.send({27 });28});29app.get('/help/*', (req, res) => {30 res.render('404', {31 });32});33app.get('*', (req, res) => {34 res.render('404', {35 });36});37app.listen(port, () => {38 console.log('Server is up on port

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Run root automation tests on LambdaTest cloud grid

Perform automation testing on 3000+ real desktop and mobile devices online.

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful