├── README.md ├── Q2 └── average-calculator │ ├── node_modules │ ├── delayed-stream │ │ ├── .npmignore │ │ ├── Makefile │ │ ├── package.json │ │ └── License │ ├── math-intrinsics │ │ ├── abs.d.ts │ │ ├── max.d.ts │ │ ├── min.d.ts │ │ ├── pow.d.ts │ │ ├── floor.d.ts │ │ ├── isNaN.d.ts │ │ ├── round.d.ts │ │ ├── tsconfig.json │ │ ├── sign.d.ts │ │ ├── mod.d.ts │ │ ├── abs.js │ │ ├── max.js │ │ ├── min.js │ │ ├── pow.js │ │ ├── floor.js │ │ ├── isFinite.d.ts │ │ ├── round.js │ │ ├── constants │ │ │ ├── maxValue.d.ts │ │ │ ├── maxArrayLength.d.ts │ │ │ ├── maxSafeInteger.d.ts │ │ │ ├── maxArrayLength.js │ │ │ ├── maxValue.js │ │ │ └── maxSafeInteger.js │ │ ├── isNegativeZero.d.ts │ │ ├── isInteger.d.ts │ │ ├── isNaN.js │ │ ├── isNegativeZero.js │ │ ├── mod.js │ │ ├── sign.js │ │ ├── .eslintrc │ │ ├── isFinite.js │ │ ├── isInteger.js │ │ ├── .github │ │ │ └── FUNDING.yml │ │ └── LICENSE │ ├── axios │ │ ├── lib │ │ │ ├── env │ │ │ │ ├── data.js │ │ │ │ ├── classes │ │ │ │ │ └── FormData.js │ │ │ │ └── README.md │ │ │ ├── helpers │ │ │ │ ├── null.js │ │ │ │ ├── bind.js │ │ │ │ ├── parseProtocol.js │ │ │ │ ├── README.md │ │ │ │ ├── readBlob.js │ │ │ │ ├── isAxiosError.js │ │ │ │ ├── callbackify.js │ │ │ │ ├── combineURLs.js │ │ │ │ ├── isURLSameOrigin.js │ │ │ │ ├── isAbsoluteURL.js │ │ │ │ ├── toURLEncodedForm.js │ │ │ │ ├── spread.js │ │ │ │ ├── ZlibHeaderTransformStream.js │ │ │ │ ├── deprecatedMethod.js │ │ │ │ └── throttle.js │ │ │ ├── platform │ │ │ │ ├── node │ │ │ │ │ ├── classes │ │ │ │ │ │ ├── FormData.js │ │ │ │ │ │ └── URLSearchParams.js │ │ │ │ │ └── index.js │ │ │ │ ├── browser │ │ │ │ │ ├── classes │ │ │ │ │ │ ├── Blob.js │ │ │ │ │ │ ├── FormData.js │ │ │ │ │ │ └── URLSearchParams.js │ │ │ │ │ └── index.js │ │ │ │ └── index.js │ │ │ ├── cancel │ │ │ │ ├── isCancel.js │ │ │ │ └── CanceledError.js │ │ │ ├── defaults │ │ │ │ └── transitional.js │ │ │ ├── core │ │ │ │ ├── README.md │ │ │ │ ├── buildFullPath.js │ │ │ │ ├── transformData.js │ │ │ │ └── settle.js │ │ │ └── adapters │ │ │ │ └── README.md │ │ ├── MIGRATION_GUIDE.md │ │ ├── index.js │ │ └── LICENSE │ ├── call-bind-apply-helpers │ │ ├── actualApply.d.ts │ │ ├── functionApply.d.ts │ │ ├── functionCall.d.ts │ │ ├── reflectApply.d.ts │ │ ├── functionCall.js │ │ ├── functionApply.js │ │ ├── reflectApply.js │ │ ├── tsconfig.json │ │ ├── .nycrc │ │ ├── .eslintrc │ │ ├── applyBind.js │ │ ├── actualApply.js │ │ ├── index.js │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── applyBind.d.ts │ │ └── LICENSE │ ├── gopd │ │ ├── gOPD.d.ts │ │ ├── gOPD.js │ │ ├── tsconfig.json │ │ ├── index.d.ts │ │ ├── index.js │ │ ├── .eslintrc │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── test │ │ │ └── index.js │ │ └── LICENSE │ ├── follow-redirects │ │ ├── http.js │ │ ├── https.js │ │ └── debug.js │ ├── object-inspect │ │ ├── util.inspect.js │ │ ├── example │ │ │ ├── circular.js │ │ │ ├── fn.js │ │ │ ├── inspect.js │ │ │ └── all.js │ │ ├── .nycrc │ │ ├── test │ │ │ ├── holes.js │ │ │ ├── lowbyte.js │ │ │ ├── undef.js │ │ │ ├── deep.js │ │ │ ├── global.js │ │ │ ├── browser │ │ │ │ └── dom.js │ │ │ ├── circular.js │ │ │ ├── has.js │ │ │ └── fakes.js │ │ ├── package-support.json │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── test-core-js.js │ │ └── LICENSE │ ├── es-errors │ │ ├── .eslintrc │ │ ├── index.d.ts │ │ ├── type.d.ts │ │ ├── uri.d.ts │ │ ├── eval.d.ts │ │ ├── index.js │ │ ├── range.d.ts │ │ ├── eval.js │ │ ├── syntax.d.ts │ │ ├── type.js │ │ ├── uri.js │ │ ├── range.js │ │ ├── ref.d.ts │ │ ├── ref.js │ │ ├── syntax.js │ │ ├── test │ │ │ └── index.js │ │ ├── .github │ │ │ └── FUNDING.yml │ │ └── LICENSE │ ├── hasown │ │ ├── .eslintrc │ │ ├── tsconfig.json │ │ ├── index.d.ts │ │ ├── index.js │ │ ├── .nycrc │ │ ├── .github │ │ │ └── FUNDING.yml │ │ └── LICENSE │ ├── dunder-proto │ │ ├── .eslintrc │ │ ├── test │ │ │ └── index.js │ │ ├── get.d.ts │ │ ├── set.d.ts │ │ ├── tsconfig.json │ │ ├── .nycrc │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── get.js │ │ └── LICENSE │ ├── has-tostringtag │ │ ├── .eslintrc │ │ ├── index.d.ts │ │ ├── shams.d.ts │ │ ├── shams.js │ │ ├── index.js │ │ ├── .nycrc │ │ ├── test │ │ │ ├── tests.js │ │ │ ├── index.js │ │ │ └── shams │ │ │ │ ├── get-own-property-symbols.js │ │ │ │ └── core-js.js │ │ ├── .github │ │ │ └── FUNDING.yml │ │ └── LICENSE │ ├── unpipe │ │ ├── HISTORY.md │ │ └── package.json │ ├── es-object-atoms │ │ ├── index.d.ts │ │ ├── index.js │ │ ├── isObject.d.ts │ │ ├── tsconfig.json │ │ ├── RequireObjectCoercible.d.ts │ │ ├── isObject.js │ │ ├── ToObject.js │ │ ├── .eslintrc │ │ ├── RequireObjectCoercible.js │ │ ├── ToObject.d.ts │ │ ├── .github │ │ │ └── FUNDING.yml │ │ └── LICENSE │ ├── has-symbols │ │ ├── index.d.ts │ │ ├── shams.d.ts │ │ ├── .nycrc │ │ ├── tsconfig.json │ │ ├── .eslintrc │ │ ├── index.js │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── test │ │ │ ├── index.js │ │ │ └── shams │ │ │ │ ├── get-own-property-symbols.js │ │ │ │ └── core-js.js │ │ └── LICENSE │ ├── get-proto │ │ ├── Reflect.getPrototypeOf.d.ts │ │ ├── index.d.ts │ │ ├── .eslintrc │ │ ├── Object.getPrototypeOf.d.ts │ │ ├── tsconfig.json │ │ ├── .nycrc │ │ ├── Reflect.getPrototypeOf.js │ │ ├── Object.getPrototypeOf.js │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── index.js │ │ ├── CHANGELOG.md │ │ └── LICENSE │ ├── setprototypeof │ │ ├── index.d.ts │ │ ├── index.js │ │ ├── LICENSE │ │ ├── test │ │ │ └── index.js │ │ └── README.md │ ├── es-define-property │ │ ├── index.d.ts │ │ ├── .nycrc │ │ ├── tsconfig.json │ │ ├── .eslintrc │ │ ├── index.js │ │ ├── .github │ │ │ └── FUNDING.yml │ │ └── LICENSE │ ├── form-data │ │ ├── lib │ │ │ ├── browser.js │ │ │ └── populate.js │ │ └── node_modules │ │ │ └── mime-db │ │ │ └── index.js │ ├── is-promise │ │ ├── index.d.ts │ │ ├── index.mjs │ │ ├── index.js │ │ ├── package.json │ │ ├── readme.md │ │ └── LICENSE │ ├── function-bind │ │ ├── index.js │ │ ├── .github │ │ │ ├── SECURITY.md │ │ │ └── FUNDING.yml │ │ ├── test │ │ │ └── .eslintrc │ │ ├── .nycrc │ │ ├── .eslintrc │ │ └── LICENSE │ ├── side-channel │ │ ├── tsconfig.json │ │ ├── .editorconfig │ │ ├── .eslintrc │ │ ├── .nycrc │ │ ├── index.d.ts │ │ ├── .github │ │ │ └── FUNDING.yml │ │ └── LICENSE │ ├── side-channel-list │ │ ├── tsconfig.json │ │ ├── .editorconfig │ │ ├── .eslintrc │ │ ├── .nycrc │ │ ├── index.d.ts │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── list.d.ts │ │ ├── CHANGELOG.md │ │ └── LICENSE │ ├── side-channel-map │ │ ├── tsconfig.json │ │ ├── .editorconfig │ │ ├── .eslintrc │ │ ├── .nycrc │ │ ├── index.d.ts │ │ ├── .github │ │ │ └── FUNDING.yml │ │ └── LICENSE │ ├── asynckit │ │ ├── index.js │ │ ├── lib │ │ │ ├── defer.js │ │ │ ├── abort.js │ │ │ ├── terminator.js │ │ │ ├── async.js │ │ │ ├── readable_serial.js │ │ │ ├── readable_parallel.js │ │ │ ├── readable_serial_ordered.js │ │ │ └── state.js │ │ ├── serial.js │ │ ├── stream.js │ │ └── LICENSE │ ├── es-set-tostringtag │ │ ├── tsconfig.json │ │ ├── .nycrc │ │ ├── .eslintrc │ │ ├── index.d.ts │ │ └── LICENSE │ ├── side-channel-weakmap │ │ ├── tsconfig.json │ │ ├── .editorconfig │ │ ├── .eslintrc │ │ ├── .nycrc │ │ ├── index.d.ts │ │ └── .github │ │ │ └── FUNDING.yml │ ├── toidentifier │ │ ├── HISTORY.md │ │ └── index.js │ ├── call-bound │ │ ├── .nycrc │ │ ├── tsconfig.json │ │ ├── .eslintrc │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── index.js │ │ └── LICENSE │ ├── get-intrinsic │ │ ├── .nycrc │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── .eslintrc │ │ └── LICENSE │ ├── iconv-lite │ │ ├── .idea │ │ │ ├── codeStyles │ │ │ │ └── codeStyleConfig.xml │ │ │ ├── vcs.xml │ │ │ ├── inspectionProfiles │ │ │ │ └── Project_Default.xml │ │ │ ├── modules.xml │ │ │ └── iconv-lite.iml │ │ ├── .github │ │ │ └── dependabot.yml │ │ ├── encodings │ │ │ └── index.js │ │ └── LICENSE │ ├── mime-db │ │ └── index.js │ ├── qs │ │ ├── lib │ │ │ ├── index.js │ │ │ └── formats.js │ │ ├── .nycrc │ │ ├── .github │ │ │ └── FUNDING.yml │ │ └── .editorconfig │ ├── express │ │ └── index.js │ ├── inherits │ │ ├── inherits.js │ │ ├── package.json │ │ ├── LICENSE │ │ └── inherits_browser.js │ ├── debug │ │ └── src │ │ │ └── index.js │ ├── proxy-from-env │ │ ├── .travis.yml │ │ ├── .eslintrc │ │ └── package.json │ ├── forwarded │ │ └── HISTORY.md │ ├── cookie-signature │ │ ├── Readme.md │ │ └── package.json │ ├── escape-html │ │ ├── package.json │ │ └── Readme.md │ ├── combined-stream │ │ ├── yarn.lock │ │ ├── package.json │ │ └── License │ ├── content-type │ │ └── HISTORY.md │ ├── merge-descriptors │ │ ├── index.d.ts │ │ └── index.js │ ├── once │ │ ├── package.json │ │ ├── LICENSE │ │ └── once.js │ ├── wrappy │ │ ├── package.json │ │ ├── LICENSE │ │ ├── README.md │ │ └── wrappy.js │ ├── ipaddr.js │ │ ├── package.json │ │ └── LICENSE │ ├── ms │ │ ├── package.json │ │ └── license.md │ ├── vary │ │ └── HISTORY.md │ ├── safer-buffer │ │ └── package.json │ ├── ee-first │ │ └── package.json │ ├── media-typer │ │ └── package.json │ └── bytes │ │ └── package.json │ ├── requirements.txt │ ├── package.json │ ├── utils │ └── windowManager.js │ └── server.js └── Q1 ├── public ├── robots.txt ├── favicon.ico ├── logo192.png ├── logo512.png └── manifest.json ├── src ├── setupTests.js ├── App.test.js ├── index.js ├── index.css ├── reportWebVitals.js ├── App.js ├── utils │ └── analytics.js ├── App.css └── components │ └── StockPage.jsx ├── .gitignore └── package.json /README.md: -------------------------------------------------------------------------------- 1 | "# 927622BAL031" 2 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/delayed-stream/.npmignore: -------------------------------------------------------------------------------- 1 | test 2 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/abs.d.ts: -------------------------------------------------------------------------------- 1 | export = Math.abs; -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/max.d.ts: -------------------------------------------------------------------------------- 1 | export = Math.max; -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/min.d.ts: -------------------------------------------------------------------------------- 1 | export = Math.min; -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/pow.d.ts: -------------------------------------------------------------------------------- 1 | export = Math.pow; -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/floor.d.ts: -------------------------------------------------------------------------------- 1 | export = Math.floor; -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/isNaN.d.ts: -------------------------------------------------------------------------------- 1 | export = Number.isNaN; -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/round.d.ts: -------------------------------------------------------------------------------- 1 | export = Math.round; -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/env/data.js: -------------------------------------------------------------------------------- 1 | export const VERSION = "1.9.0"; -------------------------------------------------------------------------------- /Q2/average-calculator/requirements.txt: -------------------------------------------------------------------------------- 1 | flask==2.0.3 2 | werkzeug==2.0.3 3 | requests==2.26.0 -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/call-bind-apply-helpers/actualApply.d.ts: -------------------------------------------------------------------------------- 1 | export = Reflect.apply; -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/gopd/gOPD.d.ts: -------------------------------------------------------------------------------- 1 | export = Object.getOwnPropertyDescriptor; 2 | -------------------------------------------------------------------------------- /Q1/public/robots.txt: -------------------------------------------------------------------------------- 1 | # https://www.robotstxt.org/robotstxt.html 2 | User-agent: * 3 | Disallow: 4 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/follow-redirects/http.js: -------------------------------------------------------------------------------- 1 | module.exports = require("./").http; 2 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/follow-redirects/https.js: -------------------------------------------------------------------------------- 1 | module.exports = require("./").https; 2 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/MIGRATION_GUIDE.md: -------------------------------------------------------------------------------- 1 | # Migration Guide 2 | 3 | ## 0.x.x -> 1.1.0 4 | -------------------------------------------------------------------------------- /Q1/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NandhanaRameshkumar/927622BAL031/main/Q1/public/favicon.ico -------------------------------------------------------------------------------- /Q1/public/logo192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NandhanaRameshkumar/927622BAL031/main/Q1/public/logo192.png -------------------------------------------------------------------------------- /Q1/public/logo512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NandhanaRameshkumar/927622BAL031/main/Q1/public/logo512.png -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/call-bind-apply-helpers/functionApply.d.ts: -------------------------------------------------------------------------------- 1 | export = Function.prototype.apply; -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/call-bind-apply-helpers/functionCall.d.ts: -------------------------------------------------------------------------------- 1 | export = Function.prototype.call; -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@ljharb/tsconfig", 3 | } 4 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/object-inspect/util.inspect.js: -------------------------------------------------------------------------------- 1 | module.exports = require('util').inspect; 2 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-errors/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | } 6 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/hasown/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | } 6 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/dunder-proto/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | } 6 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-errors/index.d.ts: -------------------------------------------------------------------------------- 1 | declare const Error: ErrorConstructor; 2 | 3 | export = Error; 4 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/has-tostringtag/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | } 6 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/helpers/null.js: -------------------------------------------------------------------------------- 1 | // eslint-disable-next-line strict 2 | export default null; 3 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/dunder-proto/test/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | require('./get'); 4 | require('./set'); 5 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/sign.d.ts: -------------------------------------------------------------------------------- 1 | declare function sign(x: number): number; 2 | 3 | export = sign; -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/unpipe/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.0.0 / 2015-06-14 2 | ================== 3 | 4 | * Initial release 5 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-errors/type.d.ts: -------------------------------------------------------------------------------- 1 | declare const TypeError: TypeErrorConstructor 2 | 3 | export = TypeError; 4 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-errors/uri.d.ts: -------------------------------------------------------------------------------- 1 | declare const URIError: URIErrorConstructor; 2 | 3 | export = URIError; 4 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-object-atoms/index.d.ts: -------------------------------------------------------------------------------- 1 | declare const Object: ObjectConstructor; 2 | 3 | export = Object; 4 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-errors/eval.d.ts: -------------------------------------------------------------------------------- 1 | declare const EvalError: EvalErrorConstructor; 2 | 3 | export = EvalError; 4 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-errors/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('.')} */ 4 | module.exports = Error; 5 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-errors/range.d.ts: -------------------------------------------------------------------------------- 1 | declare const RangeError: RangeErrorConstructor; 2 | 3 | export = RangeError; 4 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/has-symbols/index.d.ts: -------------------------------------------------------------------------------- 1 | declare function hasNativeSymbols(): boolean; 2 | 3 | export = hasNativeSymbols; -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/has-symbols/shams.d.ts: -------------------------------------------------------------------------------- 1 | declare function hasSymbolShams(): boolean; 2 | 3 | export = hasSymbolShams; -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/delayed-stream/Makefile: -------------------------------------------------------------------------------- 1 | SHELL := /bin/bash 2 | 3 | test: 4 | @./test/run.js 5 | 6 | .PHONY: test 7 | 8 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-errors/eval.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('./eval')} */ 4 | module.exports = EvalError; 5 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-errors/syntax.d.ts: -------------------------------------------------------------------------------- 1 | declare const SyntaxError: SyntaxErrorConstructor; 2 | 3 | export = SyntaxError; 4 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-errors/type.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('./type')} */ 4 | module.exports = TypeError; 5 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-errors/uri.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('./uri')} */ 4 | module.exports = URIError; 5 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-object-atoms/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('.')} */ 4 | module.exports = Object; 5 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/has-tostringtag/index.d.ts: -------------------------------------------------------------------------------- 1 | declare function hasToStringTag(): boolean; 2 | 3 | export = hasToStringTag; 4 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/mod.d.ts: -------------------------------------------------------------------------------- 1 | declare function mod(number: number, modulo: number): number; 2 | 3 | export = mod; -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-errors/range.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('./range')} */ 4 | module.exports = RangeError; 5 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-errors/ref.d.ts: -------------------------------------------------------------------------------- 1 | declare const ReferenceError: ReferenceErrorConstructor; 2 | 3 | export = ReferenceError; 4 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-errors/ref.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('./ref')} */ 4 | module.exports = ReferenceError; 5 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-object-atoms/isObject.d.ts: -------------------------------------------------------------------------------- 1 | declare function isObject(x: unknown): x is object; 2 | 3 | export = isObject; 4 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/get-proto/Reflect.getPrototypeOf.d.ts: -------------------------------------------------------------------------------- 1 | declare const x: typeof Reflect.getPrototypeOf | null; 2 | 3 | export = x; -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/abs.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('./abs')} */ 4 | module.exports = Math.abs; 5 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/max.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('./max')} */ 4 | module.exports = Math.max; 5 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/min.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('./min')} */ 4 | module.exports = Math.min; 5 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/pow.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('./pow')} */ 4 | module.exports = Math.pow; 5 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/platform/node/classes/FormData.js: -------------------------------------------------------------------------------- 1 | import FormData from 'form-data'; 2 | 3 | export default FormData; 4 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-errors/syntax.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('./syntax')} */ 4 | module.exports = SyntaxError; 5 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/has-tostringtag/shams.d.ts: -------------------------------------------------------------------------------- 1 | declare function hasToStringTagShams(): boolean; 2 | 3 | export = hasToStringTagShams; 4 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/hasown/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@ljharb/tsconfig", 3 | "exclude": [ 4 | "coverage", 5 | ], 6 | } 7 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/floor.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('./floor')} */ 4 | module.exports = Math.floor; 5 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/isFinite.d.ts: -------------------------------------------------------------------------------- 1 | declare function isFinite(x: unknown): x is number | bigint; 2 | 3 | export = isFinite; -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/round.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('./round')} */ 4 | module.exports = Math.round; 5 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/constants/maxValue.d.ts: -------------------------------------------------------------------------------- 1 | declare const MAX_VALUE: 1.7976931348623157e+308; 2 | 3 | export = MAX_VALUE; 4 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/isNegativeZero.d.ts: -------------------------------------------------------------------------------- 1 | declare function isNegativeZero(x: unknown): boolean; 2 | 3 | export = isNegativeZero; -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/platform/browser/classes/Blob.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | 3 | export default typeof Blob !== 'undefined' ? Blob : null 4 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/gopd/gOPD.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('./gOPD')} */ 4 | module.exports = Object.getOwnPropertyDescriptor; 5 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/constants/maxArrayLength.d.ts: -------------------------------------------------------------------------------- 1 | declare const MAX_ARRAY_LENGTH: 4294967295; 2 | 3 | export = MAX_ARRAY_LENGTH; -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/isInteger.d.ts: -------------------------------------------------------------------------------- 1 | declare function isInteger(argument: unknown): argument is number; 2 | 3 | export = isInteger; -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/setprototypeof/index.d.ts: -------------------------------------------------------------------------------- 1 | declare function setPrototypeOf(o: any, proto: object | null): any; 2 | export = setPrototypeOf; 3 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-define-property/index.d.ts: -------------------------------------------------------------------------------- 1 | declare const defineProperty: false | typeof Object.defineProperty; 2 | 3 | export = defineProperty; -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/form-data/lib/browser.js: -------------------------------------------------------------------------------- 1 | /* eslint-env browser */ 2 | module.exports = typeof self == 'object' ? self.FormData : window.FormData; 3 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/constants/maxSafeInteger.d.ts: -------------------------------------------------------------------------------- 1 | declare const MAX_SAFE_INTEGER: 9007199254740991; 2 | 3 | export = MAX_SAFE_INTEGER; -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/call-bind-apply-helpers/reflectApply.d.ts: -------------------------------------------------------------------------------- 1 | declare const reflectApply: false | typeof Reflect.apply; 2 | 3 | export = reflectApply; 4 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-object-atoms/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@ljharb/tsconfig", 3 | "compilerOptions": { 4 | "target": "es5", 5 | }, 6 | } 7 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/is-promise/index.d.ts: -------------------------------------------------------------------------------- 1 | declare function isPromise(obj: PromiseLike | S): obj is PromiseLike; 2 | export default isPromise; 3 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/platform/browser/classes/FormData.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | export default typeof FormData !== 'undefined' ? FormData : null; 4 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/platform/node/classes/URLSearchParams.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | import url from 'url'; 4 | export default url.URLSearchParams; 5 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/cancel/isCancel.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | export default function isCancel(value) { 4 | return !!(value && value.__CANCEL__); 5 | } 6 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/env/classes/FormData.js: -------------------------------------------------------------------------------- 1 | import _FormData from 'form-data'; 2 | export default typeof FormData !== 'undefined' ? FormData : _FormData; 3 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/hasown/index.d.ts: -------------------------------------------------------------------------------- 1 | declare function hasOwn(o: O, p: K): o is O & Record; 2 | 3 | export = hasOwn; 4 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/call-bind-apply-helpers/functionCall.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('./functionCall')} */ 4 | module.exports = Function.prototype.call; 5 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/call-bind-apply-helpers/functionApply.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('./functionApply')} */ 4 | module.exports = Function.prototype.apply; 5 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/dunder-proto/get.d.ts: -------------------------------------------------------------------------------- 1 | declare function getDunderProto(target: {}): object | null; 2 | 3 | declare const x: false | typeof getDunderProto; 4 | 5 | export = x; -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/env/README.md: -------------------------------------------------------------------------------- 1 | # axios // env 2 | 3 | The `data.js` file is updated automatically when the package version is upgrading. Please do not edit it manually. 4 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/function-bind/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var implementation = require('./implementation'); 4 | 5 | module.exports = Function.prototype.bind || implementation; 6 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/get-proto/index.d.ts: -------------------------------------------------------------------------------- 1 | declare function getProto(object: O): object | null; 2 | 3 | declare const x: typeof getProto | null; 4 | 5 | export = x; 6 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/constants/maxArrayLength.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('./maxArrayLength')} */ 4 | module.exports = 4294967295; // Math.pow(2, 32) - 1; 5 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/isNaN.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('./isNaN')} */ 4 | module.exports = Number.isNaN || function isNaN(a) { 5 | return a !== a; 6 | }; 7 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-object-atoms/RequireObjectCoercible.d.ts: -------------------------------------------------------------------------------- 1 | declare function RequireObjectCoercible(value: T, optMessage?: string): T; 2 | 3 | export = RequireObjectCoercible; 4 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/get-proto/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "id-length": "off", 8 | "sort-keys": "off", 9 | }, 10 | } 11 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/get-proto/Object.getPrototypeOf.d.ts: -------------------------------------------------------------------------------- 1 | declare function getProto(object: O): object | null; 2 | 3 | declare const x: typeof getProto | null; 4 | 5 | export = x; -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/object-inspect/example/circular.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var inspect = require('../'); 4 | var obj = { a: 1, b: [3, 4] }; 5 | obj.c = obj; 6 | console.log(inspect(obj)); 7 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/object-inspect/example/fn.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var inspect = require('../'); 4 | var obj = [1, 2, function f(n) { return n + 5; }, 4]; 5 | console.log(inspect(obj)); 6 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/defaults/transitional.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | export default { 4 | silentJSONParsing: true, 5 | forcedJSONParsing: true, 6 | clarifyTimeoutError: false 7 | }; 8 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/dunder-proto/set.d.ts: -------------------------------------------------------------------------------- 1 | declare function setDunderProto

(target: {}, proto: P): P; 2 | 3 | declare const x: false | typeof setDunderProto; 4 | 5 | export = x; -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/gopd/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@ljharb/tsconfig", 3 | "compilerOptions": { 4 | "target": "es2021", 5 | }, 6 | "exclude": [ 7 | "coverage", 8 | ], 9 | } 10 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/is-promise/index.mjs: -------------------------------------------------------------------------------- 1 | export default function isPromise(obj) { 2 | return !!obj && (typeof obj === 'object' || typeof obj === 'function') && typeof obj.then === 'function'; 3 | } 4 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/helpers/bind.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | export default function bind(fn, thisArg) { 4 | return function wrap() { 5 | return fn.apply(thisArg, arguments); 6 | }; 7 | } 8 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/platform/index.js: -------------------------------------------------------------------------------- 1 | import platform from './node/index.js'; 2 | import * as utils from './common/utils.js'; 3 | 4 | export default { 5 | ...utils, 6 | ...platform 7 | } 8 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/call-bind-apply-helpers/reflectApply.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('./reflectApply')} */ 4 | module.exports = typeof Reflect !== 'undefined' && Reflect && Reflect.apply; 5 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/call-bind-apply-helpers/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@ljharb/tsconfig", 3 | "compilerOptions": { 4 | "target": "es2021", 5 | }, 6 | "exclude": [ 7 | "coverage", 8 | ], 9 | } -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/dunder-proto/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@ljharb/tsconfig", 3 | "compilerOptions": { 4 | "target": "ES2021", 5 | }, 6 | "exclude": [ 7 | "coverage", 8 | ], 9 | } 10 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/get-proto/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@ljharb/tsconfig", 3 | "compilerOptions": { 4 | //"target": "es2021", 5 | }, 6 | "exclude": [ 7 | "coverage", 8 | ], 9 | } 10 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/side-channel/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@ljharb/tsconfig", 3 | "compilerOptions": { 4 | "target": "es2021", 5 | }, 6 | "exclude": [ 7 | "coverage", 8 | ], 9 | } 10 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/side-channel-list/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@ljharb/tsconfig", 3 | "compilerOptions": { 4 | "target": "es2021", 5 | }, 6 | "exclude": [ 7 | "coverage", 8 | ], 9 | } 10 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/side-channel-map/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@ljharb/tsconfig", 3 | "compilerOptions": { 4 | "target": "es2021", 5 | }, 6 | "exclude": [ 7 | "coverage", 8 | ], 9 | } 10 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/asynckit/index.js: -------------------------------------------------------------------------------- 1 | module.exports = 2 | { 3 | parallel : require('./parallel.js'), 4 | serial : require('./serial.js'), 5 | serialOrdered : require('./serialOrdered.js') 6 | }; 7 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-set-tostringtag/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@ljharb/tsconfig", 3 | "compilerOptions": { 4 | "target": "es2021", 5 | }, 6 | "exclude": [ 7 | "coverage", 8 | ], 9 | } 10 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/side-channel-weakmap/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@ljharb/tsconfig", 3 | "compilerOptions": { 4 | "target": "es2021", 5 | }, 6 | "exclude": [ 7 | "coverage", 8 | ], 9 | } 10 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/toidentifier/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.0.1 / 2021-11-14 2 | ================== 3 | 4 | * pref: enable strict mode 5 | 6 | 1.0.0 / 2018-07-09 7 | ================== 8 | 9 | * Initial release 10 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/call-bound/.nycrc: -------------------------------------------------------------------------------- 1 | { 2 | "all": true, 3 | "check-coverage": false, 4 | "reporter": ["text-summary", "text", "html", "json"], 5 | "exclude": [ 6 | "coverage", 7 | "test" 8 | ] 9 | } 10 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/function-bind/.github/SECURITY.md: -------------------------------------------------------------------------------- 1 | # Security 2 | 3 | Please email [@ljharb](https://github.com/ljharb) or see https://tidelift.com/security if you have a potential security vulnerability to report. 4 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/get-proto/.nycrc: -------------------------------------------------------------------------------- 1 | { 2 | "all": true, 3 | "check-coverage": false, 4 | "reporter": ["text-summary", "text", "html", "json"], 5 | "exclude": [ 6 | "coverage", 7 | "test" 8 | ] 9 | } 10 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/get-proto/Reflect.getPrototypeOf.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('./Reflect.getPrototypeOf')} */ 4 | module.exports = (typeof Reflect !== 'undefined' && Reflect.getPrototypeOf) || null; 5 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/has-symbols/.nycrc: -------------------------------------------------------------------------------- 1 | { 2 | "all": true, 3 | "check-coverage": false, 4 | "reporter": ["text-summary", "text", "html", "json"], 5 | "exclude": [ 6 | "coverage", 7 | "test" 8 | ] 9 | } 10 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/isNegativeZero.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('./isNegativeZero')} */ 4 | module.exports = function isNegativeZero(x) { 5 | return x === 0 && 1 / x === 1 / -0; 6 | }; 7 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/get-intrinsic/.nycrc: -------------------------------------------------------------------------------- 1 | { 2 | "all": true, 3 | "check-coverage": false, 4 | "reporter": ["text-summary", "text", "html", "json"], 5 | "exclude": [ 6 | "coverage", 7 | "test" 8 | ] 9 | } 10 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/gopd/index.d.ts: -------------------------------------------------------------------------------- 1 | declare function gOPD(obj: O, prop: K): PropertyDescriptor | undefined; 2 | 3 | declare const fn: typeof gOPD | undefined | null; 4 | 5 | export = fn; -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/iconv-lite/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/helpers/parseProtocol.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | export default function parseProtocol(url) { 4 | const match = /^([-+\w]{1,25})(:?\/\/|:)/.exec(url); 5 | return match && match[1] || ''; 6 | } 7 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/call-bound/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@ljharb/tsconfig", 3 | "compilerOptions": { 4 | "target": "ESNext", 5 | "lib": ["es2024"], 6 | }, 7 | "exclude": [ 8 | "coverage", 9 | ], 10 | } 11 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-define-property/.nycrc: -------------------------------------------------------------------------------- 1 | { 2 | "all": true, 3 | "check-coverage": false, 4 | "reporter": ["text-summary", "text", "html", "json"], 5 | "exclude": [ 6 | "coverage", 7 | "test" 8 | ] 9 | } 10 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-object-atoms/isObject.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('./isObject')} */ 4 | module.exports = function isObject(x) { 5 | return !!x && (typeof x === 'function' || typeof x === 'object'); 6 | }; 7 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-set-tostringtag/.nycrc: -------------------------------------------------------------------------------- 1 | { 2 | "all": true, 3 | "check-coverage": false, 4 | "reporter": ["text-summary", "text", "html", "json"], 5 | "exclude": [ 6 | "coverage", 7 | "test" 8 | ] 9 | } 10 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/call-bind-apply-helpers/.nycrc: -------------------------------------------------------------------------------- 1 | { 2 | "all": true, 3 | "check-coverage": false, 4 | "reporter": ["text-summary", "text", "html", "json"], 5 | "exclude": [ 6 | "coverage", 7 | "test" 8 | ] 9 | } 10 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/get-proto/Object.getPrototypeOf.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var $Object = require('es-object-atoms'); 4 | 5 | /** @type {import('./Object.getPrototypeOf')} */ 6 | module.exports = $Object.getPrototypeOf || null; 7 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/side-channel/.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | charset = utf-8 5 | end_of_line = lf 6 | insert_final_newline = true 7 | indent_style = tab 8 | indent_size = 2 9 | trim_trailing_whitespace = true 10 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-define-property/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@ljharb/tsconfig", 3 | "compilerOptions": { 4 | "target": "es2022", 5 | }, 6 | "exclude": [ 7 | "coverage", 8 | "test/list-exports" 9 | ], 10 | } 11 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/has-symbols/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@ljharb/tsconfig", 3 | "compilerOptions": { 4 | "target": "ES2021", 5 | "maxNodeModuleJsDepth": 0, 6 | }, 7 | "exclude": [ 8 | "coverage" 9 | ] 10 | } 11 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/side-channel-list/.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | charset = utf-8 5 | end_of_line = lf 6 | insert_final_newline = true 7 | indent_style = tab 8 | indent_size = 2 9 | trim_trailing_whitespace = true 10 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/side-channel-map/.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | charset = utf-8 5 | end_of_line = lf 6 | insert_final_newline = true 7 | indent_style = tab 8 | indent_size = 2 9 | trim_trailing_whitespace = true 10 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/call-bound/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "new-cap": [2, { 8 | "capIsNewExceptions": [ 9 | "GetIntrinsic", 10 | ], 11 | }], 12 | }, 13 | } 14 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/iconv-lite/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/side-channel-weakmap/.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | charset = utf-8 5 | end_of_line = lf 6 | insert_final_newline = true 7 | indent_style = tab 8 | indent_size = 2 9 | trim_trailing_whitespace = true 10 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-set-tostringtag/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "new-cap": [2, { 8 | "capIsNewExceptions": [ 9 | "GetIntrinsic", 10 | ], 11 | }], 12 | }, 13 | } 14 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-define-property/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "new-cap": ["error", { 8 | "capIsNewExceptions": [ 9 | "GetIntrinsic", 10 | ], 11 | }], 12 | }, 13 | } 14 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/has-symbols/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "max-statements-per-line": [2, { "max": 2 }], 8 | "no-magic-numbers": 0, 9 | "multiline-comment-style": 0, 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /Q1/src/setupTests.js: -------------------------------------------------------------------------------- 1 | // jest-dom adds custom jest matchers for asserting on DOM nodes. 2 | // allows you to do things like: 3 | // expect(element).toHaveTextContent(/react/i) 4 | // learn more: https://github.com/testing-library/jest-dom 5 | import '@testing-library/jest-dom'; 6 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/has-tostringtag/shams.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var hasSymbols = require('has-symbols/shams'); 4 | 5 | /** @type {import('.')} */ 6 | module.exports = function hasToStringTagShams() { 7 | return hasSymbols() && !!Symbol.toStringTag; 8 | }; 9 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/is-promise/index.js: -------------------------------------------------------------------------------- 1 | module.exports = isPromise; 2 | module.exports.default = isPromise; 3 | 4 | function isPromise(obj) { 5 | return !!obj && (typeof obj === 'object' || typeof obj === 'function') && typeof obj.then === 'function'; 6 | } 7 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/form-data/lib/populate.js: -------------------------------------------------------------------------------- 1 | // populates missing values 2 | module.exports = function(dst, src) { 3 | 4 | Object.keys(src).forEach(function(prop) 5 | { 6 | dst[prop] = dst[prop] || src[prop]; 7 | }); 8 | 9 | return dst; 10 | }; 11 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/function-bind/test/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "rules": { 3 | "array-bracket-newline": 0, 4 | "array-element-newline": 0, 5 | "max-statements-per-line": [2, { "max": 2 }], 6 | "no-invalid-this": 0, 7 | "no-magic-numbers": 0, 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/has-tostringtag/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var hasSymbols = require('has-symbols'); 4 | 5 | /** @type {import('.')} */ 6 | module.exports = function hasToStringTag() { 7 | return hasSymbols() && typeof Symbol.toStringTag === 'symbol'; 8 | }; 9 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/hasown/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var call = Function.prototype.call; 4 | var $hasOwn = Object.prototype.hasOwnProperty; 5 | var bind = require('function-bind'); 6 | 7 | /** @type {import('.')} */ 8 | module.exports = bind.call(call, $hasOwn); 9 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/platform/browser/classes/URLSearchParams.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | import AxiosURLSearchParams from '../../../helpers/AxiosURLSearchParams.js'; 4 | export default typeof URLSearchParams !== 'undefined' ? URLSearchParams : AxiosURLSearchParams; 5 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/constants/maxValue.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('./maxValue')} */ 4 | // eslint-disable-next-line no-extra-parens 5 | module.exports = /** @type {import('./maxValue')} */ (Number.MAX_VALUE) || 1.7976931348623157e+308; 6 | -------------------------------------------------------------------------------- /Q1/src/App.test.js: -------------------------------------------------------------------------------- 1 | import { render, screen } from '@testing-library/react'; 2 | import App from './App'; 3 | 4 | test('renders learn react link', () => { 5 | render(); 6 | const linkElement = screen.getByText(/learn react/i); 7 | expect(linkElement).toBeInTheDocument(); 8 | }); 9 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/mime-db/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * mime-db 3 | * Copyright(c) 2014 Jonathan Ong 4 | * Copyright(c) 2015-2022 Douglas Christopher Wilson 5 | * MIT Licensed 6 | */ 7 | 8 | /** 9 | * Module exports. 10 | */ 11 | 12 | module.exports = require('./db.json') 13 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/side-channel-list/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "max-lines-per-function": 0, 8 | "multiline-comment-style": 1, 9 | "new-cap": [2, { "capIsNewExceptions": ["GetIntrinsic"] }], 10 | }, 11 | } 12 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/side-channel-map/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "max-lines-per-function": 0, 8 | "multiline-comment-style": 1, 9 | "new-cap": [2, { "capIsNewExceptions": ["GetIntrinsic"] }], 10 | }, 11 | } 12 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/qs/lib/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var stringify = require('./stringify'); 4 | var parse = require('./parse'); 5 | var formats = require('./formats'); 6 | 7 | module.exports = { 8 | formats: formats, 9 | parse: parse, 10 | stringify: stringify 11 | }; 12 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/mod.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var $floor = require('./floor'); 4 | 5 | /** @type {import('./mod')} */ 6 | module.exports = function mod(number, modulo) { 7 | var remain = number % modulo; 8 | return $floor(remain >= 0 ? remain : remain + modulo); 9 | }; 10 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/side-channel/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "id-length": 0, 8 | "max-lines-per-function": 0, 9 | "multiline-comment-style": 1, 10 | "new-cap": [2, { "capIsNewExceptions": ["GetIntrinsic"] }], 11 | }, 12 | } 13 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/form-data/node_modules/mime-db/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * mime-db 3 | * Copyright(c) 2014 Jonathan Ong 4 | * Copyright(c) 2015-2022 Douglas Christopher Wilson 5 | * MIT Licensed 6 | */ 7 | 8 | /** 9 | * Module exports. 10 | */ 11 | 12 | module.exports = require('./db.json') 13 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/sign.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var $isNaN = require('./isNaN'); 4 | 5 | /** @type {import('./sign')} */ 6 | module.exports = function sign(number) { 7 | if ($isNaN(number) || number === 0) { 8 | return number; 9 | } 10 | return number < 0 ? -1 : +1; 11 | }; 12 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/qs/.nycrc: -------------------------------------------------------------------------------- 1 | { 2 | "all": true, 3 | "check-coverage": false, 4 | "reporter": ["text-summary", "text", "html", "json"], 5 | "lines": 86, 6 | "statements": 85.93, 7 | "functions": 82.43, 8 | "branches": 76.06, 9 | "exclude": [ 10 | "coverage", 11 | "dist" 12 | ] 13 | } 14 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/express/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * express 3 | * Copyright(c) 2009-2013 TJ Holowaychuk 4 | * Copyright(c) 2013 Roman Shtylman 5 | * Copyright(c) 2014-2015 Douglas Christopher Wilson 6 | * MIT Licensed 7 | */ 8 | 9 | 'use strict'; 10 | 11 | module.exports = require('./lib/express'); 12 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/gopd/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('.')} */ 4 | var $gOPD = require('./gOPD'); 5 | 6 | if ($gOPD) { 7 | try { 8 | $gOPD([], 'length'); 9 | } catch (e) { 10 | // IE 8 has a broken gOPD 11 | $gOPD = null; 12 | } 13 | } 14 | 15 | module.exports = $gOPD; 16 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/hasown/.nycrc: -------------------------------------------------------------------------------- 1 | { 2 | "all": true, 3 | "check-coverage": false, 4 | "reporter": ["text-summary", "text", "html", "json"], 5 | "lines": 86, 6 | "statements": 85.93, 7 | "functions": 82.43, 8 | "branches": 76.06, 9 | "exclude": [ 10 | "coverage", 11 | "test" 12 | ] 13 | } 14 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/constants/maxSafeInteger.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('./maxSafeInteger')} */ 4 | // eslint-disable-next-line no-extra-parens 5 | module.exports = /** @type {import('./maxSafeInteger')} */ (Number.MAX_SAFE_INTEGER) || 9007199254740991; // Math.pow(2, 53) - 1; 6 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/side-channel-weakmap/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "id-length": 0, 8 | "max-lines-per-function": 0, 9 | "multiline-comment-style": 1, 10 | "new-cap": [2, { "capIsNewExceptions": ["GetIntrinsic"] }], 11 | }, 12 | } 13 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/dunder-proto/.nycrc: -------------------------------------------------------------------------------- 1 | { 2 | "all": true, 3 | "check-coverage": false, 4 | "reporter": ["text-summary", "text", "html", "json"], 5 | "lines": 86, 6 | "statements": 85.93, 7 | "functions": 82.43, 8 | "branches": 76.06, 9 | "exclude": [ 10 | "coverage", 11 | "test" 12 | ] 13 | } 14 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/function-bind/.nycrc: -------------------------------------------------------------------------------- 1 | { 2 | "all": true, 3 | "check-coverage": false, 4 | "reporter": ["text-summary", "text", "html", "json"], 5 | "lines": 86, 6 | "statements": 85.93, 7 | "functions": 82.43, 8 | "branches": 76.06, 9 | "exclude": [ 10 | "coverage", 11 | "test" 12 | ] 13 | } 14 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/side-channel/.nycrc: -------------------------------------------------------------------------------- 1 | { 2 | "all": true, 3 | "check-coverage": false, 4 | "reporter": ["text-summary", "text", "html", "json"], 5 | "lines": 86, 6 | "statements": 85.93, 7 | "functions": 82.43, 8 | "branches": 76.06, 9 | "exclude": [ 10 | "coverage", 11 | "test" 12 | ] 13 | } 14 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/has-tostringtag/.nycrc: -------------------------------------------------------------------------------- 1 | { 2 | "all": true, 3 | "check-coverage": false, 4 | "reporter": ["text-summary", "text", "html", "json"], 5 | "lines": 86, 6 | "statements": 85.93, 7 | "functions": 82.43, 8 | "branches": 76.06, 9 | "exclude": [ 10 | "coverage", 11 | "test" 12 | ] 13 | } 14 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/side-channel-list/.nycrc: -------------------------------------------------------------------------------- 1 | { 2 | "all": true, 3 | "check-coverage": false, 4 | "reporter": ["text-summary", "text", "html", "json"], 5 | "lines": 86, 6 | "statements": 85.93, 7 | "functions": 82.43, 8 | "branches": 76.06, 9 | "exclude": [ 10 | "coverage", 11 | "test" 12 | ] 13 | } 14 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/side-channel-map/.nycrc: -------------------------------------------------------------------------------- 1 | { 2 | "all": true, 3 | "check-coverage": false, 4 | "reporter": ["text-summary", "text", "html", "json"], 5 | "lines": 86, 6 | "statements": 85.93, 7 | "functions": 82.43, 8 | "branches": 76.06, 9 | "exclude": [ 10 | "coverage", 11 | "test" 12 | ] 13 | } 14 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-set-tostringtag/index.d.ts: -------------------------------------------------------------------------------- 1 | declare function setToStringTag( 2 | object: object & { [Symbol.toStringTag]?: unknown }, 3 | value: string | unknown, 4 | options?: { 5 | force?: boolean; 6 | nonConfigurable?: boolean; 7 | }, 8 | ): void; 9 | 10 | export = setToStringTag; -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/side-channel-weakmap/.nycrc: -------------------------------------------------------------------------------- 1 | { 2 | "all": true, 3 | "check-coverage": false, 4 | "reporter": ["text-summary", "text", "html", "json"], 5 | "lines": 86, 6 | "statements": 85.93, 7 | "functions": 82.43, 8 | "branches": 76.06, 9 | "exclude": [ 10 | "coverage", 11 | "test" 12 | ] 13 | } 14 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/inherits/inherits.js: -------------------------------------------------------------------------------- 1 | try { 2 | var util = require('util'); 3 | /* istanbul ignore next */ 4 | if (typeof util.inherits !== 'function') throw ''; 5 | module.exports = util.inherits; 6 | } catch (e) { 7 | /* istanbul ignore next */ 8 | module.exports = require('./inherits_browser.js'); 9 | } 10 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/gopd/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "func-style": [2, "declaration"], 8 | "id-length": 0, 9 | "multiline-comment-style": 0, 10 | "new-cap": [2, { 11 | "capIsNewExceptions": [ 12 | "GetIntrinsic", 13 | ], 14 | }], 15 | }, 16 | } 17 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/object-inspect/.nycrc: -------------------------------------------------------------------------------- 1 | { 2 | "all": true, 3 | "check-coverage": false, 4 | "instrumentation": false, 5 | "sourceMap": false, 6 | "reporter": ["text-summary", "text", "html", "json"], 7 | "exclude": [ 8 | "coverage", 9 | "example", 10 | "test", 11 | "test-core-js.js" 12 | ] 13 | } 14 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-object-atoms/ToObject.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var $Object = require('./'); 4 | var RequireObjectCoercible = require('./RequireObjectCoercible'); 5 | 6 | /** @type {import('./ToObject')} */ 7 | module.exports = function ToObject(value) { 8 | RequireObjectCoercible(value); 9 | return $Object(value); 10 | }; 11 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/iconv-lite/.idea/inspectionProfiles/Project_Default.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/iconv-lite/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-object-atoms/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "eqeqeq": ["error", "allow-null"], 8 | "id-length": "off", 9 | "new-cap": ["error", { 10 | "capIsNewExceptions": [ 11 | "RequireObjectCoercible", 12 | "ToObject", 13 | ], 14 | }], 15 | }, 16 | } 17 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "eqeqeq": ["error", "allow-null"], 8 | "id-length": "off", 9 | "new-cap": ["error", { 10 | "capIsNewExceptions": [ 11 | "RequireObjectCoercible", 12 | "ToObject", 13 | ], 14 | }], 15 | }, 16 | } 17 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/object-inspect/example/inspect.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /* eslint-env browser */ 4 | var inspect = require('../'); 5 | 6 | var d = document.createElement('div'); 7 | d.setAttribute('id', 'beep'); 8 | d.innerHTML = 'woooiiiii'; 9 | 10 | console.log(inspect([d, { a: 3, b: 4, c: [5, 6, [7, [8, [9]]]] }])); 11 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/call-bind-apply-helpers/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "func-name-matching": 0, 8 | "id-length": 0, 9 | "new-cap": [2, { 10 | "capIsNewExceptions": [ 11 | "GetIntrinsic", 12 | ], 13 | }], 14 | "no-extra-parens": 0, 15 | "no-magic-numbers": 0, 16 | }, 17 | } 18 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/call-bind-apply-helpers/applyBind.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var bind = require('function-bind'); 4 | var $apply = require('./functionApply'); 5 | var actualApply = require('./actualApply'); 6 | 7 | /** @type {import('./applyBind')} */ 8 | module.exports = function applyBind() { 9 | return actualApply(bind, $apply, arguments); 10 | }; 11 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/isFinite.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var $isNaN = require('./isNaN'); 4 | 5 | /** @type {import('./isFinite')} */ 6 | module.exports = function isFinite(x) { 7 | return (typeof x === 'number' || typeof x === 'bigint') 8 | && !$isNaN(x) 9 | && x !== Infinity 10 | && x !== -Infinity; 11 | }; 12 | 13 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/object-inspect/test/holes.js: -------------------------------------------------------------------------------- 1 | var test = require('tape'); 2 | var inspect = require('../'); 3 | 4 | var xs = ['a', 'b']; 5 | xs[5] = 'f'; 6 | xs[7] = 'j'; 7 | xs[8] = 'k'; 8 | 9 | test('holes', function (t) { 10 | t.plan(1); 11 | t.equal( 12 | inspect(xs), 13 | "[ 'a', 'b', , , , 'f', , 'j', 'k' ]" 14 | ); 15 | }); 16 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/object-inspect/test/lowbyte.js: -------------------------------------------------------------------------------- 1 | var test = require('tape'); 2 | var inspect = require('../'); 3 | 4 | var obj = { x: 'a\r\nb', y: '\x05! \x1f \x12' }; 5 | 6 | test('interpolate low bytes', function (t) { 7 | t.plan(1); 8 | t.equal( 9 | inspect(obj), 10 | "{ x: 'a\\r\\nb', y: '\\x05! \\x1F \\x12' }" 11 | ); 12 | }); 13 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/call-bind-apply-helpers/actualApply.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var bind = require('function-bind'); 4 | 5 | var $apply = require('./functionApply'); 6 | var $call = require('./functionCall'); 7 | var $reflectApply = require('./reflectApply'); 8 | 9 | /** @type {import('./actualApply')} */ 10 | module.exports = $reflectApply || bind.call($call, $apply); 11 | -------------------------------------------------------------------------------- /Q1/src/index.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import ReactDOM from 'react-dom/client'; 3 | import './index.css'; 4 | import App from './App'; 5 | import reportWebVitals from './reportWebVitals'; 6 | 7 | const root = ReactDOM.createRoot(document.getElementById('root')); 8 | root.render( 9 | 10 | 11 | 12 | ); 13 | 14 | reportWebVitals(); 15 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/debug/src/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Detect Electron renderer / nwjs process, which is node, but we should 3 | * treat as a browser. 4 | */ 5 | 6 | if (typeof process === 'undefined' || process.type === 'renderer' || process.browser === true || process.__nwjs) { 7 | module.exports = require('./browser.js'); 8 | } else { 9 | module.exports = require('./node.js'); 10 | } 11 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/function-bind/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "func-name-matching": 0, 8 | "indent": [2, 4], 9 | "no-new-func": [1], 10 | }, 11 | 12 | "overrides": [ 13 | { 14 | "files": "test/**", 15 | "rules": { 16 | "max-lines-per-function": 0, 17 | "strict": [0] 18 | }, 19 | }, 20 | ], 21 | } 22 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-define-property/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('.')} */ 4 | var $defineProperty = Object.defineProperty || false; 5 | if ($defineProperty) { 6 | try { 7 | $defineProperty({}, 'a', { value: 1 }); 8 | } catch (e) { 9 | // IE 8 has a broken defineProperty 10 | $defineProperty = false; 11 | } 12 | } 13 | 14 | module.exports = $defineProperty; 15 | -------------------------------------------------------------------------------- /Q2/average-calculator/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "average-calculator", 3 | "version": "1.0.0", 4 | "main": "index.js", 5 | "scripts": { 6 | "test": "echo \"Error: no test specified\" && exit 1" 7 | }, 8 | "keywords": [], 9 | "author": "", 10 | "license": "ISC", 11 | "description": "", 12 | "dependencies": { 13 | "axios": "^1.9.0", 14 | "express": "^5.1.0" 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/object-inspect/test/undef.js: -------------------------------------------------------------------------------- 1 | var test = require('tape'); 2 | var inspect = require('../'); 3 | 4 | var obj = { a: 1, b: [3, 4, undefined, null], c: undefined, d: null }; 5 | 6 | test('undef and null', function (t) { 7 | t.plan(1); 8 | t.equal( 9 | inspect(obj), 10 | '{ a: 1, b: [ 3, 4, undefined, null ], c: undefined, d: null }' 11 | ); 12 | }); 13 | -------------------------------------------------------------------------------- /Q1/.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | /node_modules 5 | /.pnp 6 | .pnp.js 7 | 8 | # testing 9 | /coverage 10 | 11 | # production 12 | /build 13 | 14 | # misc 15 | .DS_Store 16 | .env.local 17 | .env.development.local 18 | .env.test.local 19 | .env.production.local 20 | 21 | npm-debug.log* 22 | yarn-debug.log* 23 | yarn-error.log* 24 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/helpers/README.md: -------------------------------------------------------------------------------- 1 | # axios // helpers 2 | 3 | The modules found in `helpers/` should be generic modules that are _not_ specific to the domain logic of axios. These modules could theoretically be published to npm on their own and consumed by other modules or apps. Some examples of generic modules are things like: 4 | 5 | - Browser polyfills 6 | - Managing cookies 7 | - Parsing HTTP headers 8 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/platform/browser/index.js: -------------------------------------------------------------------------------- 1 | import URLSearchParams from './classes/URLSearchParams.js' 2 | import FormData from './classes/FormData.js' 3 | import Blob from './classes/Blob.js' 4 | 5 | export default { 6 | isBrowser: true, 7 | classes: { 8 | URLSearchParams, 9 | FormData, 10 | Blob 11 | }, 12 | protocols: ['http', 'https', 'file', 'blob', 'url', 'data'] 13 | }; 14 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/proxy-from-env/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - node 4 | - lts/* 5 | script: 6 | - npm run lint 7 | # test-coverage will also run the tests, but does not print helpful output upon test failure. 8 | # So we also run the tests separately. 9 | - npm run test 10 | - npm run test-coverage && cat coverage/lcov.info | ./node_modules/.bin/coveralls && rm -rf coverage 11 | -------------------------------------------------------------------------------- /Q1/src/index.css: -------------------------------------------------------------------------------- 1 | body { 2 | margin: 0; 3 | font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 4 | 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', 5 | sans-serif; 6 | -webkit-font-smoothing: antialiased; 7 | -moz-osx-font-smoothing: grayscale; 8 | } 9 | 10 | code { 11 | font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New', 12 | monospace; 13 | } 14 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-object-atoms/RequireObjectCoercible.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var $TypeError = require('es-errors/type'); 4 | 5 | /** @type {import('./RequireObjectCoercible')} */ 6 | module.exports = function RequireObjectCoercible(value) { 7 | if (value == null) { 8 | throw new $TypeError((arguments.length > 0 && arguments[1]) || ('Cannot call method on ' + value)); 9 | } 10 | return value; 11 | }; 12 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-object-atoms/ToObject.d.ts: -------------------------------------------------------------------------------- 1 | declare function ToObject(value: number): Number; 2 | declare function ToObject(value: boolean): Boolean; 3 | declare function ToObject(value: string): String; 4 | declare function ToObject(value: bigint): BigInt; 5 | declare function ToObject(value: T): T; 6 | 7 | export = ToObject; 8 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/iconv-lite/.github/dependabot.yml: -------------------------------------------------------------------------------- 1 | # Please see the documentation for all configuration options: 2 | # https://help.github.com/github/administering-a-repository/configuration-options-for-dependency-updates 3 | 4 | version: 2 5 | updates: 6 | - package-ecosystem: "npm" 7 | directory: "/" 8 | schedule: 9 | interval: "daily" 10 | allow: 11 | - dependency-type: production 12 | -------------------------------------------------------------------------------- /Q2/average-calculator/utils/windowManager.js: -------------------------------------------------------------------------------- 1 | function updateWindow(currentWindow, newNumbers, maxSize) { 2 | const uniqueNew = newNumbers.filter(num => !currentWindow.includes(num)); 3 | const combined = [...currentWindow, ...uniqueNew]; 4 | 5 | if (combined.length <= maxSize) { 6 | return combined; 7 | } 8 | 9 | return combined.slice(combined.length - maxSize); 10 | } 11 | 12 | module.exports = { updateWindow }; 13 | -------------------------------------------------------------------------------- /Q1/src/reportWebVitals.js: -------------------------------------------------------------------------------- 1 | const reportWebVitals = onPerfEntry => { 2 | if (onPerfEntry && onPerfEntry instanceof Function) { 3 | import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => { 4 | getCLS(onPerfEntry); 5 | getFID(onPerfEntry); 6 | getFCP(onPerfEntry); 7 | getLCP(onPerfEntry); 8 | getTTFB(onPerfEntry); 9 | }); 10 | } 11 | }; 12 | 13 | export default reportWebVitals; 14 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/follow-redirects/debug.js: -------------------------------------------------------------------------------- 1 | var debug; 2 | 3 | module.exports = function () { 4 | if (!debug) { 5 | try { 6 | /* eslint global-require: off */ 7 | debug = require("debug")("follow-redirects"); 8 | } 9 | catch (error) { /* */ } 10 | if (typeof debug !== "function") { 11 | debug = function () { /* */ }; 12 | } 13 | } 14 | debug.apply(null, arguments); 15 | }; 16 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/helpers/readBlob.js: -------------------------------------------------------------------------------- 1 | const {asyncIterator} = Symbol; 2 | 3 | const readBlob = async function* (blob) { 4 | if (blob.stream) { 5 | yield* blob.stream() 6 | } else if (blob.arrayBuffer) { 7 | yield await blob.arrayBuffer() 8 | } else if (blob[asyncIterator]) { 9 | yield* blob[asyncIterator](); 10 | } else { 11 | yield blob; 12 | } 13 | } 14 | 15 | export default readBlob; 16 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/side-channel-list/index.d.ts: -------------------------------------------------------------------------------- 1 | declare namespace getSideChannelList { 2 | type Channel = { 3 | assert: (key: K) => void; 4 | has: (key: K) => boolean; 5 | get: (key: K) => V | undefined; 6 | set: (key: K, value: V) => void; 7 | delete: (key: K) => boolean; 8 | }; 9 | } 10 | 11 | declare function getSideChannelList(): getSideChannelList.Channel; 12 | 13 | export = getSideChannelList; 14 | -------------------------------------------------------------------------------- /Q2/average-calculator/server.js: -------------------------------------------------------------------------------- 1 | const express = require('express'); 2 | const app = express(); 3 | const numberRoutes = require('./routes/numberRoute'); 4 | 5 | app.use(express.json()); 6 | app.use('/numbers', numberRoutes); 7 | 8 | app.get('/', (req, res) => { 9 | res.send('Welcome to the Average Calculator API!'); 10 | }); 11 | 12 | const PORT = 3000; 13 | app.listen(PORT, () => { 14 | console.log(`Server is running on port ${PORT}`); 15 | }); 16 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/core/README.md: -------------------------------------------------------------------------------- 1 | # axios // core 2 | 3 | The modules found in `core/` should be modules that are specific to the domain logic of axios. These modules would most likely not make sense to be consumed outside of the axios module, as their logic is too specific. Some examples of core modules are: 4 | 5 | - Dispatching requests 6 | - Requests sent via `adapters/` (see lib/adapters/README.md) 7 | - Managing interceptors 8 | - Handling config 9 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/side-channel-map/index.d.ts: -------------------------------------------------------------------------------- 1 | declare namespace getSideChannelMap { 2 | type Channel = { 3 | assert: (key: K) => void; 4 | has: (key: K) => boolean; 5 | get: (key: K) => V | undefined; 6 | set: (key: K, value: V) => void; 7 | delete: (key: K) => boolean; 8 | }; 9 | } 10 | 11 | declare function getSideChannelMap(): getSideChannelMap.Channel; 12 | 13 | declare const x: false | typeof getSideChannelMap; 14 | 15 | export = x; 16 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/helpers/isAxiosError.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | import utils from './../utils.js'; 4 | 5 | /** 6 | * Determines whether the payload is an error thrown by Axios 7 | * 8 | * @param {*} payload The value to test 9 | * 10 | * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false 11 | */ 12 | export default function isAxiosError(payload) { 13 | return utils.isObject(payload) && (payload.isAxiosError === true); 14 | } 15 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-errors/test/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var test = require('tape'); 4 | 5 | var E = require('../'); 6 | var R = require('../range'); 7 | var Ref = require('../ref'); 8 | var S = require('../syntax'); 9 | var T = require('../type'); 10 | 11 | test('errors', function (t) { 12 | t.equal(E, Error); 13 | t.equal(R, RangeError); 14 | t.equal(Ref, ReferenceError); 15 | t.equal(S, SyntaxError); 16 | t.equal(T, TypeError); 17 | 18 | t.end(); 19 | }); 20 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/helpers/callbackify.js: -------------------------------------------------------------------------------- 1 | import utils from "../utils.js"; 2 | 3 | const callbackify = (fn, reducer) => { 4 | return utils.isAsyncFn(fn) ? function (...args) { 5 | const cb = args.pop(); 6 | fn.apply(this, args).then((value) => { 7 | try { 8 | reducer ? cb(null, ...reducer(value)) : cb(null, value); 9 | } catch (err) { 10 | cb(err); 11 | } 12 | }, cb); 13 | } : fn; 14 | } 15 | 16 | export default callbackify; 17 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/object-inspect/test/deep.js: -------------------------------------------------------------------------------- 1 | var inspect = require('../'); 2 | var test = require('tape'); 3 | 4 | test('deep', function (t) { 5 | t.plan(4); 6 | var obj = [[[[[[500]]]]]]; 7 | t.equal(inspect(obj), '[ [ [ [ [ [Array] ] ] ] ] ]'); 8 | t.equal(inspect(obj, { depth: 4 }), '[ [ [ [ [Array] ] ] ] ]'); 9 | t.equal(inspect(obj, { depth: 2 }), '[ [ [Array] ] ]'); 10 | 11 | t.equal(inspect([[[{ a: 1 }]]], { depth: 3 }), '[ [ [ [Object] ] ] ]'); 12 | }); 13 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/object-inspect/test/global.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var inspect = require('../'); 4 | 5 | var test = require('tape'); 6 | var globalThis = require('globalthis')(); 7 | 8 | test('global object', function (t) { 9 | /* eslint-env browser */ 10 | var expected = typeof window === 'undefined' ? 'globalThis' : 'Window'; 11 | t.equal( 12 | inspect([globalThis]), 13 | '[ { [object ' + expected + '] } ]' 14 | ); 15 | 16 | t.end(); 17 | }); 18 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/helpers/combineURLs.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** 4 | * Creates a new URL by combining the specified URLs 5 | * 6 | * @param {string} baseURL The base URL 7 | * @param {string} relativeURL The relative URL 8 | * 9 | * @returns {string} The combined URL 10 | */ 11 | export default function combineURLs(baseURL, relativeURL) { 12 | return relativeURL 13 | ? baseURL.replace(/\/?\/$/, '') + '/' + relativeURL.replace(/^\/+/, '') 14 | : baseURL; 15 | } 16 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/side-channel-weakmap/index.d.ts: -------------------------------------------------------------------------------- 1 | declare namespace getSideChannelWeakMap { 2 | type Channel = { 3 | assert: (key: K) => void; 4 | has: (key: K) => boolean; 5 | get: (key: K) => V | undefined; 6 | set: (key: K, value: V) => void; 7 | delete: (key: K) => boolean; 8 | } 9 | } 10 | 11 | declare function getSideChannelWeakMap(): getSideChannelWeakMap.Channel; 12 | 13 | declare const x: false | typeof getSideChannelWeakMap; 14 | 15 | export = x; 16 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/object-inspect/package-support.json: -------------------------------------------------------------------------------- 1 | { 2 | "versions": [ 3 | { 4 | "version": "*", 5 | "target": { 6 | "node": "all" 7 | }, 8 | "response": { 9 | "type": "time-permitting" 10 | }, 11 | "backing": { 12 | "npm-funding": true, 13 | "donations": [ 14 | "https://github.com/ljharb", 15 | "https://tidelift.com/funding/github/npm/object-inspect" 16 | ] 17 | } 18 | } 19 | ] 20 | } 21 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/setprototypeof/index.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | /* eslint no-proto: 0 */ 3 | module.exports = Object.setPrototypeOf || ({ __proto__: [] } instanceof Array ? setProtoOf : mixinProperties) 4 | 5 | function setProtoOf (obj, proto) { 6 | obj.__proto__ = proto 7 | return obj 8 | } 9 | 10 | function mixinProperties (obj, proto) { 11 | for (var prop in proto) { 12 | if (!Object.prototype.hasOwnProperty.call(obj, prop)) { 13 | obj[prop] = proto[prop] 14 | } 15 | } 16 | return obj 17 | } 18 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/isInteger.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var $abs = require('./abs'); 4 | var $floor = require('./floor'); 5 | 6 | var $isNaN = require('./isNaN'); 7 | var $isFinite = require('./isFinite'); 8 | 9 | /** @type {import('./isInteger')} */ 10 | module.exports = function isInteger(argument) { 11 | if (typeof argument !== 'number' || $isNaN(argument) || !$isFinite(argument)) { 12 | return false; 13 | } 14 | var absValue = $abs(argument); 15 | return $floor(absValue) === absValue; 16 | }; 17 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/helpers/isURLSameOrigin.js: -------------------------------------------------------------------------------- 1 | import platform from '../platform/index.js'; 2 | 3 | export default platform.hasStandardBrowserEnv ? ((origin, isMSIE) => (url) => { 4 | url = new URL(url, platform.origin); 5 | 6 | return ( 7 | origin.protocol === url.protocol && 8 | origin.host === url.host && 9 | (isMSIE || origin.port === url.port) 10 | ); 11 | })( 12 | new URL(platform.origin), 13 | platform.navigator && /(msie|trident)/i.test(platform.navigator.userAgent) 14 | ) : () => true; 15 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/forwarded/HISTORY.md: -------------------------------------------------------------------------------- 1 | 0.2.0 / 2021-05-31 2 | ================== 3 | 4 | * Use `req.socket` over deprecated `req.connection` 5 | 6 | 0.1.2 / 2017-09-14 7 | ================== 8 | 9 | * perf: improve header parsing 10 | * perf: reduce overhead when no `X-Forwarded-For` header 11 | 12 | 0.1.1 / 2017-09-10 13 | ================== 14 | 15 | * Fix trimming leading / trailing OWS 16 | * perf: hoist regular expression 17 | 18 | 0.1.0 / 2014-09-21 19 | ================== 20 | 21 | * Initial release 22 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/object-inspect/test/browser/dom.js: -------------------------------------------------------------------------------- 1 | var inspect = require('../../'); 2 | var test = require('tape'); 3 | 4 | test('dom element', function (t) { 5 | t.plan(1); 6 | 7 | var d = document.createElement('div'); 8 | d.setAttribute('id', 'beep'); 9 | d.innerHTML = 'woooiiiii'; 10 | 11 | t.equal( 12 | inspect([d, { a: 3, b: 4, c: [5, 6, [7, [8, [9]]]] }]), 13 | '[

...
, { a: 3, b: 4, c: [ 5, 6, [ 7, [ 8, [Object] ] ] ] } ]' 14 | ); 15 | }); 16 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/has-symbols/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var origSymbol = typeof Symbol !== 'undefined' && Symbol; 4 | var hasSymbolSham = require('./shams'); 5 | 6 | /** @type {import('.')} */ 7 | module.exports = function hasNativeSymbols() { 8 | if (typeof origSymbol !== 'function') { return false; } 9 | if (typeof Symbol !== 'function') { return false; } 10 | if (typeof origSymbol('foo') !== 'symbol') { return false; } 11 | if (typeof Symbol('bar') !== 'symbol') { return false; } 12 | 13 | return hasSymbolSham(); 14 | }; 15 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/object-inspect/example/all.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var inspect = require('../'); 4 | var Buffer = require('safer-buffer').Buffer; 5 | 6 | var holes = ['a', 'b']; 7 | holes[4] = 'e'; 8 | holes[6] = 'g'; 9 | 10 | var obj = { 11 | a: 1, 12 | b: [3, 4, undefined, null], 13 | c: undefined, 14 | d: null, 15 | e: { 16 | regex: /^x/i, 17 | buf: Buffer.from('abc'), 18 | holes: holes 19 | }, 20 | now: new Date() 21 | }; 22 | obj.self = obj; 23 | console.log(inspect(obj)); 24 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/iconv-lite/.idea/iconv-lite.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/object-inspect/test/circular.js: -------------------------------------------------------------------------------- 1 | var inspect = require('../'); 2 | var test = require('tape'); 3 | 4 | test('circular', function (t) { 5 | t.plan(2); 6 | var obj = { a: 1, b: [3, 4] }; 7 | obj.c = obj; 8 | t.equal(inspect(obj), '{ a: 1, b: [ 3, 4 ], c: [Circular] }'); 9 | 10 | var double = {}; 11 | double.a = [double]; 12 | double.b = {}; 13 | double.b.inner = double.b; 14 | double.b.obj = double; 15 | t.equal(inspect(double), '{ a: [ [Circular] ], b: { inner: [Circular], obj: [Circular] } }'); 16 | }); 17 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/cookie-signature/Readme.md: -------------------------------------------------------------------------------- 1 | 2 | # cookie-signature 3 | 4 | Sign and unsign cookies. 5 | 6 | ## Example 7 | 8 | ```js 9 | var cookie = require('cookie-signature'); 10 | 11 | var val = cookie.sign('hello', 'tobiiscool'); 12 | val.should.equal('hello.DGDUkGlIkCzPz+C0B064FNgHdEjox7ch8tOBGslZ5QI'); 13 | 14 | var val = cookie.sign('hello', 'tobiiscool'); 15 | cookie.unsign(val, 'tobiiscool').should.equal('hello'); 16 | cookie.unsign(val, 'luna').should.be.false; 17 | ``` 18 | 19 | ## License 20 | 21 | MIT. 22 | 23 | See LICENSE file for details. 24 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/escape-html/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "escape-html", 3 | "description": "Escape string for use in HTML", 4 | "version": "1.0.3", 5 | "license": "MIT", 6 | "keywords": [ 7 | "escape", 8 | "html", 9 | "utility" 10 | ], 11 | "repository": "component/escape-html", 12 | "devDependencies": { 13 | "benchmark": "1.0.0", 14 | "beautify-benchmark": "0.2.4" 15 | }, 16 | "files": [ 17 | "LICENSE", 18 | "Readme.md", 19 | "index.js" 20 | ], 21 | "scripts": { 22 | "bench": "node benchmark/index.js" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/side-channel/index.d.ts: -------------------------------------------------------------------------------- 1 | import getSideChannelList from 'side-channel-list'; 2 | import getSideChannelMap from 'side-channel-map'; 3 | import getSideChannelWeakMap from 'side-channel-weakmap'; 4 | 5 | declare namespace getSideChannel { 6 | type Channel = 7 | | getSideChannelList.Channel 8 | | ReturnType, false>> 9 | | ReturnType, false>>; 10 | } 11 | 12 | declare function getSideChannel(): getSideChannel.Channel; 13 | 14 | export = getSideChannel; 15 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/asynckit/lib/defer.js: -------------------------------------------------------------------------------- 1 | module.exports = defer; 2 | 3 | /** 4 | * Runs provided function on next iteration of the event loop 5 | * 6 | * @param {function} fn - function to run 7 | */ 8 | function defer(fn) 9 | { 10 | var nextTick = typeof setImmediate == 'function' 11 | ? setImmediate 12 | : ( 13 | typeof process == 'object' && typeof process.nextTick == 'function' 14 | ? process.nextTick 15 | : null 16 | ); 17 | 18 | if (nextTick) 19 | { 20 | nextTick(fn); 21 | } 22 | else 23 | { 24 | setTimeout(fn, 0); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Q1/public/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "short_name": "React App", 3 | "name": "Create React App Sample", 4 | "icons": [ 5 | { 6 | "src": "favicon.ico", 7 | "sizes": "64x64 32x32 24x24 16x16", 8 | "type": "image/x-icon" 9 | }, 10 | { 11 | "src": "logo192.png", 12 | "type": "image/png", 13 | "sizes": "192x192" 14 | }, 15 | { 16 | "src": "logo512.png", 17 | "type": "image/png", 18 | "sizes": "512x512" 19 | } 20 | ], 21 | "start_url": ".", 22 | "display": "standalone", 23 | "theme_color": "#000000", 24 | "background_color": "#ffffff" 25 | } 26 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/asynckit/serial.js: -------------------------------------------------------------------------------- 1 | var serialOrdered = require('./serialOrdered.js'); 2 | 3 | // Public API 4 | module.exports = serial; 5 | 6 | /** 7 | * Runs iterator over provided array elements in series 8 | * 9 | * @param {array|object} list - array or object (named list) to iterate over 10 | * @param {function} iterator - iterator to run 11 | * @param {function} callback - invoked when all elements processed 12 | * @returns {function} - jobs terminator 13 | */ 14 | function serial(list, iterator, callback) 15 | { 16 | return serialOrdered(list, iterator, null, callback); 17 | } 18 | -------------------------------------------------------------------------------- /Q1/src/App.js: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import StockPage from "./components/StockPage"; 3 | import CorrelationHeatmap from "./components/CorrelationHeatmap"; 4 | 5 | function App() { 6 | const dummyStockData = { 7 | AAPL: [150, 152, 153, 155, 154], 8 | MSFT: [300, 302, 301, 303, 304], 9 | GOOGL: [2700, 2710, 2720, 2730, 2740] 10 | }; 11 | 12 | return ( 13 |
14 |

React Stock Aggregator

15 | 16 | 17 |
18 | ); 19 | } 20 | 21 | export default App; 22 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/qs/lib/formats.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var replace = String.prototype.replace; 4 | var percentTwenties = /%20/g; 5 | 6 | var Format = { 7 | RFC1738: 'RFC1738', 8 | RFC3986: 'RFC3986' 9 | }; 10 | 11 | module.exports = { 12 | 'default': Format.RFC3986, 13 | formatters: { 14 | RFC1738: function (value) { 15 | return replace.call(value, percentTwenties, '+'); 16 | }, 17 | RFC3986: function (value) { 18 | return String(value); 19 | } 20 | }, 21 | RFC1738: Format.RFC1738, 22 | RFC3986: Format.RFC3986 23 | }; 24 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/object-inspect/test/has.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var inspect = require('../'); 4 | var test = require('tape'); 5 | var mockProperty = require('mock-property'); 6 | 7 | test('when Object#hasOwnProperty is deleted', function (t) { 8 | t.plan(1); 9 | var arr = [1, , 3]; // eslint-disable-line no-sparse-arrays 10 | 11 | t.teardown(mockProperty(Array.prototype, 1, { value: 2 })); // this is needed to account for "in" vs "hasOwnProperty" 12 | t.teardown(mockProperty(Object.prototype, 'hasOwnProperty', { 'delete': true })); 13 | 14 | t.equal(inspect(arr), '[ 1, , 3 ]'); 15 | }); 16 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/call-bind-apply-helpers/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var bind = require('function-bind'); 4 | var $TypeError = require('es-errors/type'); 5 | 6 | var $call = require('./functionCall'); 7 | var $actualApply = require('./actualApply'); 8 | 9 | /** @type {(args: [Function, thisArg?: unknown, ...args: unknown[]]) => Function} TODO FIXME, find a way to use import('.') */ 10 | module.exports = function callBindBasic(args) { 11 | if (args.length < 1 || typeof args[0] !== 'function') { 12 | throw new $TypeError('a function is required'); 13 | } 14 | return $actualApply(bind, $call, args); 15 | }; 16 | -------------------------------------------------------------------------------- /Q1/src/utils/analytics.js: -------------------------------------------------------------------------------- 1 | export const covariance = (X, Y) => { 2 | const n = X.length; 3 | const meanX = X.reduce((a, b) => a + b, 0) / n; 4 | const meanY = Y.reduce((a, b) => a + b, 0) / n; 5 | return X.reduce((sum, x, i) => sum + (x - meanX) * (Y[i] - meanY), 0) / (n - 1); 6 | }; 7 | 8 | export const standardDeviation = (X) => { 9 | const mean = X.reduce((a, b) => a + b, 0) / X.length; 10 | return Math.sqrt(X.reduce((sum, x) => sum + (x - mean) ** 2, 0) / X.length); 11 | }; 12 | 13 | export const pearsonCorrelation = (X, Y) => { 14 | return covariance(X, Y) / (standardDeviation(X) * standardDeviation(Y)); 15 | }; 16 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/qs/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [ljharb] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: npm/qs 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with a single custom sponsorship URL 13 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/has-tostringtag/test/tests.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | // eslint-disable-next-line consistent-return 4 | module.exports = /** @type {(t: import('tape').Test) => void | false} */ function runSymbolTests(t) { 5 | t.equal(typeof Symbol, 'function', 'global Symbol is a function'); 6 | t.ok(Symbol.toStringTag, 'Symbol.toStringTag exists'); 7 | 8 | if (typeof Symbol !== 'function' || !Symbol.toStringTag) { return false; } 9 | 10 | /** @type {{ [Symbol.toStringTag]?: 'test'}} */ 11 | var obj = {}; 12 | obj[Symbol.toStringTag] = 'test'; 13 | 14 | t.equal(Object.prototype.toString.call(obj), '[object test]'); 15 | }; 16 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/hasown/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [ljharb] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: npm/hasown 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with a single custom sponsorship URL 13 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-errors/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [ljharb] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: npm/es-errors 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with a single custom sponsorship URL 13 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-object-atoms/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [ljharb] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: npm/es-object 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with a single custom sponsorship URL 13 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [ljharb] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: npm/math-intrinsics 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with a single custom sponsorship URL 13 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/combined-stream/yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | delayed-stream@~1.0.0: 6 | version "1.0.0" 7 | resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" 8 | 9 | far@~0.0.7: 10 | version "0.0.7" 11 | resolved "https://registry.yarnpkg.com/far/-/far-0.0.7.tgz#01c1fd362bcd26ce9cf161af3938aa34619f79a7" 12 | dependencies: 13 | oop "0.0.3" 14 | 15 | oop@0.0.3: 16 | version "0.0.3" 17 | resolved "https://registry.yarnpkg.com/oop/-/oop-0.0.3.tgz#70fa405a5650891a194fdc82ca68dad6dabf4401" 18 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-define-property/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [ljharb] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: npm/es-define-property 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with a single custom sponsorship URL 13 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/gopd/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [ljharb] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: npm/gopd 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] 13 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/asynckit/lib/abort.js: -------------------------------------------------------------------------------- 1 | // API 2 | module.exports = abort; 3 | 4 | /** 5 | * Aborts leftover active jobs 6 | * 7 | * @param {object} state - current state object 8 | */ 9 | function abort(state) 10 | { 11 | Object.keys(state.jobs).forEach(clean.bind(state)); 12 | 13 | // reset leftover jobs 14 | state.jobs = {}; 15 | } 16 | 17 | /** 18 | * Cleans up leftover job by invoking abort function for the provided job id 19 | * 20 | * @this state 21 | * @param {string|number} key - job id to abort 22 | */ 23 | function clean(key) 24 | { 25 | if (typeof this.jobs[key] == 'function') 26 | { 27 | this.jobs[key](); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/helpers/isAbsoluteURL.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** 4 | * Determines whether the specified URL is absolute 5 | * 6 | * @param {string} url The URL to test 7 | * 8 | * @returns {boolean} True if the specified URL is absolute, otherwise false 9 | */ 10 | export default function isAbsoluteURL(url) { 11 | // A URL is considered absolute if it begins with "://" or "//" (protocol-relative URL). 12 | // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed 13 | // by any combination of letters, digits, plus, period, or hyphen. 14 | return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(url); 15 | } 16 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/call-bound/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [ljharb] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: npm/call-bound 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] 13 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/get-proto/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [ljharb] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: npm/get-proto 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] 13 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/helpers/toURLEncodedForm.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | import utils from '../utils.js'; 4 | import toFormData from './toFormData.js'; 5 | import platform from '../platform/index.js'; 6 | 7 | export default function toURLEncodedForm(data, options) { 8 | return toFormData(data, new platform.classes.URLSearchParams(), Object.assign({ 9 | visitor: function(value, key, path, helpers) { 10 | if (platform.isNode && utils.isBuffer(value)) { 11 | this.append(key, value.toString('base64')); 12 | return false; 13 | } 14 | 15 | return helpers.defaultVisitor.apply(this, arguments); 16 | } 17 | }, options)); 18 | } 19 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/dunder-proto/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [ljharb] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: npm/dunder-proto 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] 13 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/function-bind/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [ljharb] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: npm/function-bind 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] 13 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/get-intrinsic/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [ljharb] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: npm/get-intrinsic 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] 13 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/has-symbols/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [ljharb] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: npm/has-symbols 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] 13 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/side-channel/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [ljharb] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: npm/side-channel 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] 13 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/has-tostringtag/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [ljharb] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: npm/has-tostringtag 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] 13 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/object-inspect/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [ljharb] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: npm/object-inspect 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] 13 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/side-channel-list/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [ljharb] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: npm/side-channel-list 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] 13 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/side-channel-map/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [ljharb] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: npm/side-channel-map 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] 13 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/toidentifier/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * toidentifier 3 | * Copyright(c) 2016 Douglas Christopher Wilson 4 | * MIT Licensed 5 | */ 6 | 7 | 'use strict' 8 | 9 | /** 10 | * Module exports. 11 | * @public 12 | */ 13 | 14 | module.exports = toIdentifier 15 | 16 | /** 17 | * Trasform the given string into a JavaScript identifier 18 | * 19 | * @param {string} str 20 | * @returns {string} 21 | * @public 22 | */ 23 | 24 | function toIdentifier (str) { 25 | return str 26 | .split(' ') 27 | .map(function (token) { 28 | return token.slice(0, 1).toUpperCase() + token.slice(1) 29 | }) 30 | .join('') 31 | .replace(/[^ _0-9a-z]/gi, '') 32 | } 33 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/content-type/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.0.5 / 2023-01-29 2 | ================== 3 | 4 | * perf: skip value escaping when unnecessary 5 | 6 | 1.0.4 / 2017-09-11 7 | ================== 8 | 9 | * perf: skip parameter parsing when no parameters 10 | 11 | 1.0.3 / 2017-09-10 12 | ================== 13 | 14 | * perf: remove argument reassignment 15 | 16 | 1.0.2 / 2016-05-09 17 | ================== 18 | 19 | * perf: enable strict mode 20 | 21 | 1.0.1 / 2015-02-13 22 | ================== 23 | 24 | * Improve missing `Content-Type` header error message 25 | 26 | 1.0.0 / 2015-02-01 27 | ================== 28 | 29 | * Initial implementation, derived from `media-typer@0.3.0` 30 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/side-channel-weakmap/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [ljharb] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: npm/side-channel-weakmap 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] 13 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/call-bind-apply-helpers/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [ljharb] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: npm/call-bind-apply-helpers 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] 13 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/cookie-signature/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "cookie-signature", 3 | "version": "1.2.2", 4 | "main": "index.js", 5 | "description": "Sign and unsign cookies", 6 | "keywords": ["cookie", "sign", "unsign"], 7 | "author": "TJ Holowaychuk ", 8 | "license": "MIT", 9 | "repository": { 10 | "type": "git", 11 | "url": "https://github.com/visionmedia/node-cookie-signature.git" 12 | }, 13 | "dependencies": {}, 14 | "engines": { 15 | "node": ">=6.6.0" 16 | }, 17 | "devDependencies": { 18 | "mocha": "*", 19 | "should": "*" 20 | }, 21 | "scripts": { 22 | "test": "mocha --require should --reporter spec" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/object-inspect/test-core-js.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | require('core-js'); 4 | 5 | var inspect = require('./'); 6 | var test = require('tape'); 7 | 8 | test('Maps', function (t) { 9 | t.equal(inspect(new Map([[1, 2]])), 'Map (1) {1 => 2}'); 10 | t.end(); 11 | }); 12 | 13 | test('WeakMaps', function (t) { 14 | t.equal(inspect(new WeakMap([[{}, 2]])), 'WeakMap { ? }'); 15 | t.end(); 16 | }); 17 | 18 | test('Sets', function (t) { 19 | t.equal(inspect(new Set([[1, 2]])), 'Set (1) {[ 1, 2 ]}'); 20 | t.end(); 21 | }); 22 | 23 | test('WeakSets', function (t) { 24 | t.equal(inspect(new WeakSet([[1, 2]])), 'WeakSet { ? }'); 25 | t.end(); 26 | }); 27 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/asynckit/lib/terminator.js: -------------------------------------------------------------------------------- 1 | var abort = require('./abort.js') 2 | , async = require('./async.js') 3 | ; 4 | 5 | // API 6 | module.exports = terminator; 7 | 8 | /** 9 | * Terminates jobs in the attached state context 10 | * 11 | * @this AsyncKitState# 12 | * @param {function} callback - final callback to invoke after termination 13 | */ 14 | function terminator(callback) 15 | { 16 | if (!Object.keys(this.jobs).length) 17 | { 18 | return; 19 | } 20 | 21 | // fast forward iteration index 22 | this.index = this.size; 23 | 24 | // abort jobs 25 | abort(this); 26 | 27 | // send back results we have so far 28 | async(callback)(null, this.results); 29 | } 30 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/merge-descriptors/index.d.ts: -------------------------------------------------------------------------------- 1 | /** 2 | Merges "own" properties from a source to a destination object, including non-enumerable and accessor-defined properties. It retains original values and descriptors, ensuring the destination receives a complete and accurate copy of the source's properties. 3 | 4 | @param destination - The object to receive properties. 5 | @param source - The object providing properties. 6 | @param overwrite - Optional boolean to control overwriting of existing properties. Defaults to true. 7 | @returns The modified destination object. 8 | */ 9 | declare function mergeDescriptors(destination: T, source: U, overwrite?: boolean): T & U; 10 | 11 | export = mergeDescriptors; 12 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/helpers/spread.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** 4 | * Syntactic sugar for invoking a function and expanding an array for arguments. 5 | * 6 | * Common use case would be to use `Function.prototype.apply`. 7 | * 8 | * ```js 9 | * function f(x, y, z) {} 10 | * var args = [1, 2, 3]; 11 | * f.apply(null, args); 12 | * ``` 13 | * 14 | * With `spread` this example can be re-written. 15 | * 16 | * ```js 17 | * spread(function(x, y, z) {})([1, 2, 3]); 18 | * ``` 19 | * 20 | * @param {Function} callback 21 | * 22 | * @returns {Function} 23 | */ 24 | export default function spread(callback) { 25 | return function wrap(arr) { 26 | return callback.apply(null, arr); 27 | }; 28 | } 29 | -------------------------------------------------------------------------------- /Q1/src/App.css: -------------------------------------------------------------------------------- 1 | .App { 2 | text-align: center; 3 | } 4 | 5 | .App-logo { 6 | height: 40vmin; 7 | pointer-events: none; 8 | } 9 | 10 | @media (prefers-reduced-motion: no-preference) { 11 | .App-logo { 12 | animation: App-logo-spin infinite 20s linear; 13 | } 14 | } 15 | 16 | .App-header { 17 | background-color: #282c34; 18 | min-height: 100vh; 19 | display: flex; 20 | flex-direction: column; 21 | align-items: center; 22 | justify-content: center; 23 | font-size: calc(10px + 2vmin); 24 | color: white; 25 | } 26 | 27 | .App-link { 28 | color: #61dafb; 29 | } 30 | 31 | @keyframes App-logo-spin { 32 | from { 33 | transform: rotate(0deg); 34 | } 35 | to { 36 | transform: rotate(360deg); 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/call-bind-apply-helpers/applyBind.d.ts: -------------------------------------------------------------------------------- 1 | import actualApply from './actualApply'; 2 | 3 | type TupleSplitHead = T['length'] extends N 4 | ? T 5 | : T extends [...infer R, any] 6 | ? TupleSplitHead 7 | : never 8 | 9 | type TupleSplitTail = O['length'] extends N 10 | ? T 11 | : T extends [infer F, ...infer R] 12 | ? TupleSplitTail<[...R], N, [...O, F]> 13 | : never 14 | 15 | type TupleSplit = [TupleSplitHead, TupleSplitTail] 16 | 17 | declare function applyBind(...args: TupleSplit, 2>[1]): ReturnType; 18 | 19 | export = applyBind; -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/inherits/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "inherits", 3 | "description": "Browser-friendly inheritance fully compatible with standard node.js inherits()", 4 | "version": "2.0.4", 5 | "keywords": [ 6 | "inheritance", 7 | "class", 8 | "klass", 9 | "oop", 10 | "object-oriented", 11 | "inherits", 12 | "browser", 13 | "browserify" 14 | ], 15 | "main": "./inherits.js", 16 | "browser": "./inherits_browser.js", 17 | "repository": "git://github.com/isaacs/inherits", 18 | "license": "ISC", 19 | "scripts": { 20 | "test": "tap" 21 | }, 22 | "devDependencies": { 23 | "tap": "^14.2.4" 24 | }, 25 | "files": [ 26 | "inherits.js", 27 | "inherits_browser.js" 28 | ] 29 | } 30 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/is-promise/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "is-promise", 3 | "version": "4.0.0", 4 | "description": "Test whether an object looks like a promises-a+ promise", 5 | "main": "./index.js", 6 | "scripts": { 7 | "test": "node test" 8 | }, 9 | "files": [ 10 | "index.js", 11 | "index.mjs", 12 | "index.d.ts" 13 | ], 14 | "exports": { 15 | ".": [ 16 | { 17 | "import": "./index.mjs", 18 | "require": "./index.js", 19 | "default": "./index.js" 20 | }, 21 | "./index.js" 22 | ] 23 | }, 24 | "repository": { 25 | "type": "git", 26 | "url": "https://github.com/then/is-promise.git" 27 | }, 28 | "author": "ForbesLindesay", 29 | "license": "MIT" 30 | } 31 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/once/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "once", 3 | "version": "1.4.0", 4 | "description": "Run a function exactly one time", 5 | "main": "once.js", 6 | "directories": { 7 | "test": "test" 8 | }, 9 | "dependencies": { 10 | "wrappy": "1" 11 | }, 12 | "devDependencies": { 13 | "tap": "^7.0.1" 14 | }, 15 | "scripts": { 16 | "test": "tap test/*.js" 17 | }, 18 | "files": [ 19 | "once.js" 20 | ], 21 | "repository": { 22 | "type": "git", 23 | "url": "git://github.com/isaacs/once" 24 | }, 25 | "keywords": [ 26 | "once", 27 | "function", 28 | "one", 29 | "single" 30 | ], 31 | "author": "Isaac Z. Schlueter (http://blog.izs.me/)", 32 | "license": "ISC" 33 | } 34 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/merge-descriptors/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | function mergeDescriptors(destination, source, overwrite = true) { 4 | if (!destination) { 5 | throw new TypeError('The `destination` argument is required.'); 6 | } 7 | 8 | if (!source) { 9 | throw new TypeError('The `source` argument is required.'); 10 | } 11 | 12 | for (const name of Object.getOwnPropertyNames(source)) { 13 | if (!overwrite && Object.hasOwn(destination, name)) { 14 | // Skip descriptor 15 | continue; 16 | } 17 | 18 | // Copy descriptor 19 | const descriptor = Object.getOwnPropertyDescriptor(source, name); 20 | Object.defineProperty(destination, name, descriptor); 21 | } 22 | 23 | return destination; 24 | } 25 | 26 | module.exports = mergeDescriptors; 27 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/wrappy/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wrappy", 3 | "version": "1.0.2", 4 | "description": "Callback wrapping utility", 5 | "main": "wrappy.js", 6 | "files": [ 7 | "wrappy.js" 8 | ], 9 | "directories": { 10 | "test": "test" 11 | }, 12 | "dependencies": {}, 13 | "devDependencies": { 14 | "tap": "^2.3.1" 15 | }, 16 | "scripts": { 17 | "test": "tap --coverage test/*.js" 18 | }, 19 | "repository": { 20 | "type": "git", 21 | "url": "https://github.com/npm/wrappy" 22 | }, 23 | "author": "Isaac Z. Schlueter (http://blog.izs.me/)", 24 | "license": "ISC", 25 | "bugs": { 26 | "url": "https://github.com/npm/wrappy/issues" 27 | }, 28 | "homepage": "https://github.com/npm/wrappy" 29 | } 30 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/asynckit/lib/async.js: -------------------------------------------------------------------------------- 1 | var defer = require('./defer.js'); 2 | 3 | // API 4 | module.exports = async; 5 | 6 | /** 7 | * Runs provided callback asynchronously 8 | * even if callback itself is not 9 | * 10 | * @param {function} callback - callback to invoke 11 | * @returns {function} - augmented callback 12 | */ 13 | function async(callback) 14 | { 15 | var isAsync = false; 16 | 17 | // check if async happened 18 | defer(function() { isAsync = true; }); 19 | 20 | return function async_callback(err, result) 21 | { 22 | if (isAsync) 23 | { 24 | callback(err, result); 25 | } 26 | else 27 | { 28 | defer(function nextTick_callback() 29 | { 30 | callback(err, result); 31 | }); 32 | } 33 | }; 34 | } 35 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/combined-stream/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "author": "Felix Geisendörfer (http://debuggable.com/)", 3 | "name": "combined-stream", 4 | "description": "A stream that emits multiple other streams one after another.", 5 | "version": "1.0.8", 6 | "homepage": "https://github.com/felixge/node-combined-stream", 7 | "repository": { 8 | "type": "git", 9 | "url": "git://github.com/felixge/node-combined-stream.git" 10 | }, 11 | "main": "./lib/combined_stream", 12 | "scripts": { 13 | "test": "node test/run.js" 14 | }, 15 | "engines": { 16 | "node": ">= 0.8" 17 | }, 18 | "dependencies": { 19 | "delayed-stream": "~1.0.0" 20 | }, 21 | "devDependencies": { 22 | "far": "~0.0.7" 23 | }, 24 | "license": "MIT" 25 | } 26 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/has-symbols/test/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var test = require('tape'); 4 | var hasSymbols = require('../'); 5 | var runSymbolTests = require('./tests'); 6 | 7 | test('interface', function (t) { 8 | t.equal(typeof hasSymbols, 'function', 'is a function'); 9 | t.equal(typeof hasSymbols(), 'boolean', 'returns a boolean'); 10 | t.end(); 11 | }); 12 | 13 | test('Symbols are supported', { skip: !hasSymbols() }, function (t) { 14 | runSymbolTests(t); 15 | t.end(); 16 | }); 17 | 18 | test('Symbols are not supported', { skip: hasSymbols() }, function (t) { 19 | t.equal(typeof Symbol, 'undefined', 'global Symbol is undefined'); 20 | t.equal(typeof Object.getOwnPropertySymbols, 'undefined', 'Object.getOwnPropertySymbols does not exist'); 21 | t.end(); 22 | }); 23 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/call-bound/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var GetIntrinsic = require('get-intrinsic'); 4 | 5 | var callBindBasic = require('call-bind-apply-helpers'); 6 | 7 | /** @type {(thisArg: string, searchString: string, position?: number) => number} */ 8 | var $indexOf = callBindBasic([GetIntrinsic('%String.prototype.indexOf%')]); 9 | 10 | /** @type {import('.')} */ 11 | module.exports = function callBoundIntrinsic(name, allowMissing) { 12 | /* eslint no-extra-parens: 0 */ 13 | 14 | var intrinsic = /** @type {(this: unknown, ...args: unknown[]) => unknown} */ (GetIntrinsic(name, !!allowMissing)); 15 | if (typeof intrinsic === 'function' && $indexOf(name, '.prototype.') > -1) { 16 | return callBindBasic(/** @type {const} */ ([intrinsic])); 17 | } 18 | return intrinsic; 19 | }; 20 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/asynckit/lib/readable_serial.js: -------------------------------------------------------------------------------- 1 | var serial = require('../serial.js'); 2 | 3 | // API 4 | module.exports = ReadableSerial; 5 | 6 | /** 7 | * Streaming wrapper to `asynckit.serial` 8 | * 9 | * @param {array|object} list - array or object (named list) to iterate over 10 | * @param {function} iterator - iterator to run 11 | * @param {function} callback - invoked when all elements processed 12 | * @returns {stream.Readable#} 13 | */ 14 | function ReadableSerial(list, iterator, callback) 15 | { 16 | if (!(this instanceof ReadableSerial)) 17 | { 18 | return new ReadableSerial(list, iterator, callback); 19 | } 20 | 21 | // turn on object mode 22 | ReadableSerial.super_.call(this, {objectMode: true}); 23 | 24 | this._start(serial, list, iterator, callback); 25 | } 26 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/has-tostringtag/test/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var test = require('tape'); 4 | var hasSymbolToStringTag = require('../'); 5 | var runSymbolTests = require('./tests'); 6 | 7 | test('interface', function (t) { 8 | t.equal(typeof hasSymbolToStringTag, 'function', 'is a function'); 9 | t.equal(typeof hasSymbolToStringTag(), 'boolean', 'returns a boolean'); 10 | t.end(); 11 | }); 12 | 13 | test('Symbol.toStringTag exists', { skip: !hasSymbolToStringTag() }, function (t) { 14 | runSymbolTests(t); 15 | t.end(); 16 | }); 17 | 18 | test('Symbol.toStringTag does not exist', { skip: hasSymbolToStringTag() }, function (t) { 19 | t.equal(typeof Symbol === 'undefined' ? 'undefined' : typeof Symbol.toStringTag, 'undefined', 'global Symbol.toStringTag is undefined'); 20 | t.end(); 21 | }); 22 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/setprototypeof/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2015, Wes Todd 2 | 3 | Permission to use, copy, modify, and/or distribute this software for any 4 | purpose with or without fee is hereby granted, provided that the above 5 | copyright notice and this permission notice appear in all copies. 6 | 7 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 8 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 9 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY 10 | SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 11 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION 12 | OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN 13 | CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 14 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/side-channel-list/list.d.ts: -------------------------------------------------------------------------------- 1 | type ListNode = { 2 | key: K; 3 | next: undefined | ListNode; 4 | value: T; 5 | }; 6 | type RootNode = { 7 | next: undefined | ListNode; 8 | }; 9 | 10 | export function listGetNode(list: RootNode, key: ListNode['key'], isDelete?: boolean): ListNode | undefined; 11 | export function listGet(objects: undefined | RootNode, key: ListNode['key']): T | undefined; 12 | export function listSet(objects: RootNode, key: ListNode['key'], value: T): void; 13 | export function listHas(objects: undefined | RootNode, key: ListNode['key']): boolean; 14 | export function listDelete(objects: undefined | RootNode, key: ListNode['key']): ListNode | undefined; 15 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/asynckit/stream.js: -------------------------------------------------------------------------------- 1 | var inherits = require('util').inherits 2 | , Readable = require('stream').Readable 3 | , ReadableAsyncKit = require('./lib/readable_asynckit.js') 4 | , ReadableParallel = require('./lib/readable_parallel.js') 5 | , ReadableSerial = require('./lib/readable_serial.js') 6 | , ReadableSerialOrdered = require('./lib/readable_serial_ordered.js') 7 | ; 8 | 9 | // API 10 | module.exports = 11 | { 12 | parallel : ReadableParallel, 13 | serial : ReadableSerial, 14 | serialOrdered : ReadableSerialOrdered, 15 | }; 16 | 17 | inherits(ReadableAsyncKit, Readable); 18 | 19 | inherits(ReadableParallel, ReadableAsyncKit); 20 | inherits(ReadableSerial, ReadableAsyncKit); 21 | inherits(ReadableSerialOrdered, ReadableAsyncKit); 22 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/asynckit/lib/readable_parallel.js: -------------------------------------------------------------------------------- 1 | var parallel = require('../parallel.js'); 2 | 3 | // API 4 | module.exports = ReadableParallel; 5 | 6 | /** 7 | * Streaming wrapper to `asynckit.parallel` 8 | * 9 | * @param {array|object} list - array or object (named list) to iterate over 10 | * @param {function} iterator - iterator to run 11 | * @param {function} callback - invoked when all elements processed 12 | * @returns {stream.Readable#} 13 | */ 14 | function ReadableParallel(list, iterator, callback) 15 | { 16 | if (!(this instanceof ReadableParallel)) 17 | { 18 | return new ReadableParallel(list, iterator, callback); 19 | } 20 | 21 | // turn on object mode 22 | ReadableParallel.super_.call(this, {objectMode: true}); 23 | 24 | this._start(parallel, list, iterator, callback); 25 | } 26 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/setprototypeof/test/index.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | /* eslint-env mocha */ 3 | /* eslint no-proto: 0 */ 4 | var assert = require('assert') 5 | var setPrototypeOf = require('..') 6 | 7 | describe('setProtoOf(obj, proto)', function () { 8 | it('should merge objects', function () { 9 | var obj = { a: 1, b: 2 } 10 | var proto = { b: 3, c: 4 } 11 | var mergeObj = setPrototypeOf(obj, proto) 12 | 13 | if (Object.getPrototypeOf) { 14 | assert.strictEqual(Object.getPrototypeOf(obj), proto) 15 | } else if ({ __proto__: [] } instanceof Array) { 16 | assert.strictEqual(obj.__proto__, proto) 17 | } else { 18 | assert.strictEqual(obj.a, 1) 19 | assert.strictEqual(obj.b, 2) 20 | assert.strictEqual(obj.c, 4) 21 | } 22 | assert.strictEqual(mergeObj, obj) 23 | }) 24 | }) 25 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/delayed-stream/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "author": "Felix Geisendörfer (http://debuggable.com/)", 3 | "contributors": [ 4 | "Mike Atkins " 5 | ], 6 | "name": "delayed-stream", 7 | "description": "Buffers events from a stream until you are ready to handle them.", 8 | "license": "MIT", 9 | "version": "1.0.0", 10 | "homepage": "https://github.com/felixge/node-delayed-stream", 11 | "repository": { 12 | "type": "git", 13 | "url": "git://github.com/felixge/node-delayed-stream.git" 14 | }, 15 | "main": "./lib/delayed_stream", 16 | "engines": { 17 | "node": ">=0.4.0" 18 | }, 19 | "scripts": { 20 | "test": "make test" 21 | }, 22 | "dependencies": {}, 23 | "devDependencies": { 24 | "fake": "0.2.0", 25 | "far": "0.0.1" 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/inherits/LICENSE: -------------------------------------------------------------------------------- 1 | The ISC License 2 | 3 | Copyright (c) Isaac Z. Schlueter 4 | 5 | Permission to use, copy, modify, and/or distribute this software for any 6 | purpose with or without fee is hereby granted, provided that the above 7 | copyright notice and this permission notice appear in all copies. 8 | 9 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH 10 | REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND 11 | FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, 12 | INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM 13 | LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR 14 | OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 15 | PERFORMANCE OF THIS SOFTWARE. 16 | 17 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/qs/.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | indent_style = space 5 | indent_size = 4 6 | end_of_line = lf 7 | charset = utf-8 8 | trim_trailing_whitespace = true 9 | insert_final_newline = true 10 | max_line_length = 160 11 | quote_type = single 12 | 13 | [test/*] 14 | max_line_length = off 15 | 16 | [LICENSE.md] 17 | indent_size = off 18 | 19 | [*.md] 20 | max_line_length = off 21 | 22 | [*.json] 23 | max_line_length = off 24 | 25 | [Makefile] 26 | max_line_length = off 27 | 28 | [CHANGELOG.md] 29 | indent_style = space 30 | indent_size = 2 31 | 32 | [LICENSE] 33 | indent_size = 2 34 | max_line_length = off 35 | 36 | [coverage/**/*] 37 | indent_size = off 38 | indent_style = off 39 | indent = off 40 | max_line_length = off 41 | 42 | [.nycrc] 43 | indent_style = tab 44 | 45 | [tea.yaml] 46 | indent_size = 2 47 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/once/LICENSE: -------------------------------------------------------------------------------- 1 | The ISC License 2 | 3 | Copyright (c) Isaac Z. Schlueter and Contributors 4 | 5 | Permission to use, copy, modify, and/or distribute this software for any 6 | purpose with or without fee is hereby granted, provided that the above 7 | copyright notice and this permission notice appear in all copies. 8 | 9 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 10 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 11 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 12 | ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 13 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 14 | ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR 15 | IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 16 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/cancel/CanceledError.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | import AxiosError from '../core/AxiosError.js'; 4 | import utils from '../utils.js'; 5 | 6 | /** 7 | * A `CanceledError` is an object that is thrown when an operation is canceled. 8 | * 9 | * @param {string=} message The message. 10 | * @param {Object=} config The config. 11 | * @param {Object=} request The request. 12 | * 13 | * @returns {CanceledError} The created error. 14 | */ 15 | function CanceledError(message, config, request) { 16 | // eslint-disable-next-line no-eq-null,eqeqeq 17 | AxiosError.call(this, message == null ? 'canceled' : message, AxiosError.ERR_CANCELED, config, request); 18 | this.name = 'CanceledError'; 19 | } 20 | 21 | utils.inherits(CanceledError, AxiosError, { 22 | __CANCEL__: true 23 | }); 24 | 25 | export default CanceledError; 26 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/gopd/test/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var test = require('tape'); 4 | var gOPD = require('../'); 5 | 6 | test('gOPD', function (t) { 7 | t.test('supported', { skip: !gOPD }, function (st) { 8 | st.equal(typeof gOPD, 'function', 'is a function'); 9 | 10 | var obj = { x: 1 }; 11 | st.ok('x' in obj, 'property exists'); 12 | 13 | // @ts-expect-error TS can't figure out narrowing from `skip` 14 | var desc = gOPD(obj, 'x'); 15 | st.deepEqual( 16 | desc, 17 | { 18 | configurable: true, 19 | enumerable: true, 20 | value: 1, 21 | writable: true 22 | }, 23 | 'descriptor is as expected' 24 | ); 25 | 26 | st.end(); 27 | }); 28 | 29 | t.test('not supported', { skip: !!gOPD }, function (st) { 30 | st.notOk(gOPD, 'is falsy'); 31 | 32 | st.end(); 33 | }); 34 | 35 | t.end(); 36 | }); 37 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/object-inspect/test/fakes.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var inspect = require('../'); 4 | var test = require('tape'); 5 | var hasToStringTag = require('has-tostringtag/shams')(); 6 | var forEach = require('for-each'); 7 | 8 | test('fakes', { skip: !hasToStringTag }, function (t) { 9 | forEach([ 10 | 'Array', 11 | 'Boolean', 12 | 'Date', 13 | 'Error', 14 | 'Number', 15 | 'RegExp', 16 | 'String' 17 | ], function (expected) { 18 | var faker = {}; 19 | faker[Symbol.toStringTag] = expected; 20 | 21 | t.equal( 22 | inspect(faker), 23 | '{ [Symbol(Symbol.toStringTag)]: \'' + expected + '\' }', 24 | 'faker masquerading as ' + expected + ' is not shown as one' 25 | ); 26 | }); 27 | 28 | t.end(); 29 | }); 30 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/wrappy/LICENSE: -------------------------------------------------------------------------------- 1 | The ISC License 2 | 3 | Copyright (c) Isaac Z. Schlueter and Contributors 4 | 5 | Permission to use, copy, modify, and/or distribute this software for any 6 | purpose with or without fee is hereby granted, provided that the above 7 | copyright notice and this permission notice appear in all copies. 8 | 9 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 10 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 11 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 12 | ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 13 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 14 | ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR 15 | IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 16 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/helpers/ZlibHeaderTransformStream.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | import stream from "stream"; 4 | 5 | class ZlibHeaderTransformStream extends stream.Transform { 6 | __transform(chunk, encoding, callback) { 7 | this.push(chunk); 8 | callback(); 9 | } 10 | 11 | _transform(chunk, encoding, callback) { 12 | if (chunk.length !== 0) { 13 | this._transform = this.__transform; 14 | 15 | // Add Default Compression headers if no zlib headers are present 16 | if (chunk[0] !== 120) { // Hex: 78 17 | const header = Buffer.alloc(2); 18 | header[0] = 120; // Hex: 78 19 | header[1] = 156; // Hex: 9C 20 | this.push(header, encoding); 21 | } 22 | } 23 | 24 | this.__transform(chunk, encoding, callback); 25 | } 26 | } 27 | 28 | export default ZlibHeaderTransformStream; 29 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/iconv-lite/encodings/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | // Update this array if you add/rename/remove files in this directory. 4 | // We support Browserify by skipping automatic module discovery and requiring modules directly. 5 | var modules = [ 6 | require("./internal"), 7 | require("./utf32"), 8 | require("./utf16"), 9 | require("./utf7"), 10 | require("./sbcs-codec"), 11 | require("./sbcs-data"), 12 | require("./sbcs-data-generated"), 13 | require("./dbcs-codec"), 14 | require("./dbcs-data"), 15 | ]; 16 | 17 | // Put all encoding/alias/codec definitions to single object and export it. 18 | for (var i = 0; i < modules.length; i++) { 19 | var module = modules[i]; 20 | for (var enc in module) 21 | if (Object.prototype.hasOwnProperty.call(module, enc)) 22 | exports[enc] = module[enc]; 23 | } 24 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/get-intrinsic/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "env": { 7 | "es6": true, 8 | "es2017": true, 9 | "es2020": true, 10 | "es2021": true, 11 | "es2022": true, 12 | }, 13 | 14 | "globals": { 15 | "Float16Array": false, 16 | }, 17 | 18 | "rules": { 19 | "array-bracket-newline": 0, 20 | "complexity": 0, 21 | "eqeqeq": [2, "allow-null"], 22 | "func-name-matching": 0, 23 | "id-length": 0, 24 | "max-lines": 0, 25 | "max-lines-per-function": [2, 90], 26 | "max-params": [2, 4], 27 | "max-statements": 0, 28 | "max-statements-per-line": [2, { "max": 2 }], 29 | "multiline-comment-style": 0, 30 | "no-magic-numbers": 0, 31 | "sort-keys": 0, 32 | }, 33 | 34 | "overrides": [ 35 | { 36 | "files": "test/**", 37 | "rules": { 38 | "new-cap": 0, 39 | }, 40 | }, 41 | ], 42 | } 43 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/wrappy/README.md: -------------------------------------------------------------------------------- 1 | # wrappy 2 | 3 | Callback wrapping utility 4 | 5 | ## USAGE 6 | 7 | ```javascript 8 | var wrappy = require("wrappy") 9 | 10 | // var wrapper = wrappy(wrapperFunction) 11 | 12 | // make sure a cb is called only once 13 | // See also: http://npm.im/once for this specific use case 14 | var once = wrappy(function (cb) { 15 | var called = false 16 | return function () { 17 | if (called) return 18 | called = true 19 | return cb.apply(this, arguments) 20 | } 21 | }) 22 | 23 | function printBoo () { 24 | console.log('boo') 25 | } 26 | // has some rando property 27 | printBoo.iAmBooPrinter = true 28 | 29 | var onlyPrintOnce = once(printBoo) 30 | 31 | onlyPrintOnce() // prints 'boo' 32 | onlyPrintOnce() // does nothing 33 | 34 | // random property is retained! 35 | assert.equal(onlyPrintOnce.iAmBooPrinter, true) 36 | ``` 37 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/index.js: -------------------------------------------------------------------------------- 1 | import axios from './lib/axios.js'; 2 | 3 | // This module is intended to unwrap Axios default export as named. 4 | // Keep top-level export same with static properties 5 | // so that it can keep same with es module or cjs 6 | const { 7 | Axios, 8 | AxiosError, 9 | CanceledError, 10 | isCancel, 11 | CancelToken, 12 | VERSION, 13 | all, 14 | Cancel, 15 | isAxiosError, 16 | spread, 17 | toFormData, 18 | AxiosHeaders, 19 | HttpStatusCode, 20 | formToJSON, 21 | getAdapter, 22 | mergeConfig 23 | } = axios; 24 | 25 | export { 26 | axios as default, 27 | Axios, 28 | AxiosError, 29 | CanceledError, 30 | isCancel, 31 | CancelToken, 32 | VERSION, 33 | all, 34 | Cancel, 35 | isAxiosError, 36 | spread, 37 | toFormData, 38 | AxiosHeaders, 39 | HttpStatusCode, 40 | formToJSON, 41 | getAdapter, 42 | mergeConfig 43 | } 44 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/proxy-from-env/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "node": true 4 | }, 5 | "rules": { 6 | "array-bracket-spacing": [2, "never"], 7 | "block-scoped-var": 2, 8 | "brace-style": [2, "1tbs"], 9 | "camelcase": 1, 10 | "computed-property-spacing": [2, "never"], 11 | "curly": 2, 12 | "eol-last": 2, 13 | "eqeqeq": [2, "smart"], 14 | "max-depth": [1, 3], 15 | "max-len": [1, 80], 16 | "max-statements": [1, 15], 17 | "new-cap": 1, 18 | "no-extend-native": 2, 19 | "no-mixed-spaces-and-tabs": 2, 20 | "no-trailing-spaces": 2, 21 | "no-unused-vars": 1, 22 | "no-use-before-define": [2, "nofunc"], 23 | "object-curly-spacing": [2, "never"], 24 | "quotes": [2, "single", "avoid-escape"], 25 | "semi": [2, "always"], 26 | "keyword-spacing": [2, {"before": true, "after": true}], 27 | "space-unary-ops": 2 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/helpers/deprecatedMethod.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /*eslint no-console:0*/ 4 | 5 | /** 6 | * Supply a warning to the developer that a method they are using 7 | * has been deprecated. 8 | * 9 | * @param {string} method The name of the deprecated method 10 | * @param {string} [instead] The alternate method to use if applicable 11 | * @param {string} [docs] The documentation URL to get further details 12 | * 13 | * @returns {void} 14 | */ 15 | export default function deprecatedMethod(method, instead, docs) { 16 | try { 17 | console.warn( 18 | 'DEPRECATED method `' + method + '`.' + 19 | (instead ? ' Use `' + instead + '` instead.' : '') + 20 | ' This method will be removed in a future release.'); 21 | 22 | if (docs) { 23 | console.warn('For more information about usage see ' + docs); 24 | } 25 | } catch (e) { /* Ignore */ } 26 | } 27 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/inherits/inherits_browser.js: -------------------------------------------------------------------------------- 1 | if (typeof Object.create === 'function') { 2 | // implementation from standard node.js 'util' module 3 | module.exports = function inherits(ctor, superCtor) { 4 | if (superCtor) { 5 | ctor.super_ = superCtor 6 | ctor.prototype = Object.create(superCtor.prototype, { 7 | constructor: { 8 | value: ctor, 9 | enumerable: false, 10 | writable: true, 11 | configurable: true 12 | } 13 | }) 14 | } 15 | }; 16 | } else { 17 | // old school shim for old browsers 18 | module.exports = function inherits(ctor, superCtor) { 19 | if (superCtor) { 20 | ctor.super_ = superCtor 21 | var TempCtor = function () {} 22 | TempCtor.prototype = superCtor.prototype 23 | ctor.prototype = new TempCtor() 24 | ctor.prototype.constructor = ctor 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/ipaddr.js/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ipaddr.js", 3 | "description": "A library for manipulating IPv4 and IPv6 addresses in JavaScript.", 4 | "version": "1.9.1", 5 | "author": "whitequark ", 6 | "directories": { 7 | "lib": "./lib" 8 | }, 9 | "dependencies": {}, 10 | "devDependencies": { 11 | "coffee-script": "~1.12.6", 12 | "nodeunit": "^0.11.3", 13 | "uglify-js": "~3.0.19" 14 | }, 15 | "scripts": { 16 | "test": "cake build test" 17 | }, 18 | "files": [ 19 | "lib/", 20 | "LICENSE", 21 | "ipaddr.min.js" 22 | ], 23 | "keywords": [ 24 | "ip", 25 | "ipv4", 26 | "ipv6" 27 | ], 28 | "repository": "git://github.com/whitequark/ipaddr.js", 29 | "main": "./lib/ipaddr.js", 30 | "engines": { 31 | "node": ">= 0.10" 32 | }, 33 | "license": "MIT", 34 | "types": "./lib/ipaddr.js.d.ts" 35 | } 36 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/core/buildFullPath.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | import isAbsoluteURL from '../helpers/isAbsoluteURL.js'; 4 | import combineURLs from '../helpers/combineURLs.js'; 5 | 6 | /** 7 | * Creates a new URL by combining the baseURL with the requestedURL, 8 | * only when the requestedURL is not already an absolute URL. 9 | * If the requestURL is absolute, this function returns the requestedURL untouched. 10 | * 11 | * @param {string} baseURL The base URL 12 | * @param {string} requestedURL Absolute or relative URL to combine 13 | * 14 | * @returns {string} The combined full path 15 | */ 16 | export default function buildFullPath(baseURL, requestedURL, allowAbsoluteUrls) { 17 | let isRelativeUrl = !isAbsoluteURL(requestedURL); 18 | if (baseURL && (isRelativeUrl || allowAbsoluteUrls == false)) { 19 | return combineURLs(baseURL, requestedURL); 20 | } 21 | return requestedURL; 22 | } 23 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/side-channel-list/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | All notable changes to this project will be documented in this file. 4 | 5 | The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) 6 | and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). 7 | 8 | ## v1.0.0 - 2024-12-10 9 | 10 | ### Commits 11 | 12 | - Initial implementation, tests, readme, types [`5d6baee`](https://github.com/ljharb/side-channel-list/commit/5d6baee5c9054a1238007f5a1dfc109a7a816251) 13 | - Initial commit [`3ae784c`](https://github.com/ljharb/side-channel-list/commit/3ae784c63a47895fbaeed2a91ab54a8029a7a100) 14 | - npm init [`07055a4`](https://github.com/ljharb/side-channel-list/commit/07055a4d139895565b199dba5fe2479c1a1b9e28) 15 | - Only apps should have lockfiles [`9573058`](https://github.com/ljharb/side-channel-list/commit/9573058a47494e2d68f8c6c77b5d7fbe441949c1) 16 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/unpipe/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "unpipe", 3 | "description": "Unpipe a stream from all destinations", 4 | "version": "1.0.0", 5 | "author": "Douglas Christopher Wilson ", 6 | "license": "MIT", 7 | "repository": "stream-utils/unpipe", 8 | "devDependencies": { 9 | "istanbul": "0.3.15", 10 | "mocha": "2.2.5", 11 | "readable-stream": "1.1.13" 12 | }, 13 | "files": [ 14 | "HISTORY.md", 15 | "LICENSE", 16 | "README.md", 17 | "index.js" 18 | ], 19 | "engines": { 20 | "node": ">= 0.8" 21 | }, 22 | "scripts": { 23 | "test": "mocha --reporter spec --bail --check-leaks test/", 24 | "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot --check-leaks test/", 25 | "test-travis": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter spec --check-leaks test/" 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/escape-html/Readme.md: -------------------------------------------------------------------------------- 1 | 2 | # escape-html 3 | 4 | Escape string for use in HTML 5 | 6 | ## Example 7 | 8 | ```js 9 | var escape = require('escape-html'); 10 | var html = escape('foo & bar'); 11 | // -> foo & bar 12 | ``` 13 | 14 | ## Benchmark 15 | 16 | ``` 17 | $ npm run-script bench 18 | 19 | > escape-html@1.0.3 bench nodejs-escape-html 20 | > node benchmark/index.js 21 | 22 | 23 | http_parser@1.0 24 | node@0.10.33 25 | v8@3.14.5.9 26 | ares@1.9.0-DEV 27 | uv@0.10.29 28 | zlib@1.2.3 29 | modules@11 30 | openssl@1.0.1j 31 | 32 | 1 test completed. 33 | 2 tests completed. 34 | 3 tests completed. 35 | 36 | no special characters x 19,435,271 ops/sec ±0.85% (187 runs sampled) 37 | single special character x 6,132,421 ops/sec ±0.67% (194 runs sampled) 38 | many special characters x 3,175,826 ops/sec ±0.65% (193 runs sampled) 39 | ``` 40 | 41 | ## License 42 | 43 | MIT -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/ms/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ms", 3 | "version": "2.1.3", 4 | "description": "Tiny millisecond conversion utility", 5 | "repository": "vercel/ms", 6 | "main": "./index", 7 | "files": [ 8 | "index.js" 9 | ], 10 | "scripts": { 11 | "precommit": "lint-staged", 12 | "lint": "eslint lib/* bin/*", 13 | "test": "mocha tests.js" 14 | }, 15 | "eslintConfig": { 16 | "extends": "eslint:recommended", 17 | "env": { 18 | "node": true, 19 | "es6": true 20 | } 21 | }, 22 | "lint-staged": { 23 | "*.js": [ 24 | "npm run lint", 25 | "prettier --single-quote --write", 26 | "git add" 27 | ] 28 | }, 29 | "license": "MIT", 30 | "devDependencies": { 31 | "eslint": "4.18.2", 32 | "expect.js": "0.3.1", 33 | "husky": "0.14.3", 34 | "lint-staged": "5.0.0", 35 | "mocha": "4.0.1", 36 | "prettier": "2.0.5" 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/core/transformData.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | import utils from './../utils.js'; 4 | import defaults from '../defaults/index.js'; 5 | import AxiosHeaders from '../core/AxiosHeaders.js'; 6 | 7 | /** 8 | * Transform the data for a request or a response 9 | * 10 | * @param {Array|Function} fns A single function or Array of functions 11 | * @param {?Object} response The response object 12 | * 13 | * @returns {*} The resulting transformed data 14 | */ 15 | export default function transformData(fns, response) { 16 | const config = this || defaults; 17 | const context = response || config; 18 | const headers = AxiosHeaders.from(context.headers); 19 | let data = context.data; 20 | 21 | utils.forEach(fns, function transform(fn) { 22 | data = fn.call(config, data, headers.normalize(), response ? response.status : undefined); 23 | }); 24 | 25 | headers.normalize(); 26 | 27 | return data; 28 | } 29 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/has-symbols/test/shams/get-own-property-symbols.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var test = require('tape'); 4 | 5 | if (typeof Symbol === 'function' && typeof Symbol() === 'symbol') { 6 | test('has native Symbol support', function (t) { 7 | t.equal(typeof Symbol, 'function'); 8 | t.equal(typeof Symbol(), 'symbol'); 9 | t.end(); 10 | }); 11 | // @ts-expect-error TS is stupid and doesn't know about top level return 12 | return; 13 | } 14 | 15 | var hasSymbols = require('../../shams'); 16 | 17 | test('polyfilled Symbols', function (t) { 18 | /* eslint-disable global-require */ 19 | t.equal(hasSymbols(), false, 'hasSymbols is false before polyfilling'); 20 | 21 | require('get-own-property-symbols'); 22 | 23 | require('../tests')(t); 24 | 25 | var hasSymbolsAfter = hasSymbols(); 26 | t.equal(hasSymbolsAfter, true, 'hasSymbols is true after polyfilling'); 27 | /* eslint-enable global-require */ 28 | t.end(); 29 | }); 30 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/get-proto/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var reflectGetProto = require('./Reflect.getPrototypeOf'); 4 | var originalGetProto = require('./Object.getPrototypeOf'); 5 | 6 | var getDunderProto = require('dunder-proto/get'); 7 | 8 | /** @type {import('.')} */ 9 | module.exports = reflectGetProto 10 | ? function getProto(O) { 11 | // @ts-expect-error TS can't narrow inside a closure, for some reason 12 | return reflectGetProto(O); 13 | } 14 | : originalGetProto 15 | ? function getProto(O) { 16 | if (!O || (typeof O !== 'object' && typeof O !== 'function')) { 17 | throw new TypeError('getProto: not an object'); 18 | } 19 | // @ts-expect-error TS can't narrow inside a closure, for some reason 20 | return originalGetProto(O); 21 | } 22 | : getDunderProto 23 | ? function getProto(O) { 24 | // @ts-expect-error TS can't narrow inside a closure, for some reason 25 | return getDunderProto(O); 26 | } 27 | : null; 28 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/has-symbols/test/shams/core-js.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var test = require('tape'); 4 | 5 | if (typeof Symbol === 'function' && typeof Symbol() === 'symbol') { 6 | test('has native Symbol support', function (t) { 7 | t.equal(typeof Symbol, 'function'); 8 | t.equal(typeof Symbol(), 'symbol'); 9 | t.end(); 10 | }); 11 | // @ts-expect-error TS is stupid and doesn't know about top level return 12 | return; 13 | } 14 | 15 | var hasSymbols = require('../../shams'); 16 | 17 | test('polyfilled Symbols', function (t) { 18 | /* eslint-disable global-require */ 19 | t.equal(hasSymbols(), false, 'hasSymbols is false before polyfilling'); 20 | require('core-js/fn/symbol'); 21 | require('core-js/fn/symbol/to-string-tag'); 22 | 23 | require('../tests')(t); 24 | 25 | var hasSymbolsAfter = hasSymbols(); 26 | t.equal(hasSymbolsAfter, true, 'hasSymbols is true after polyfilling'); 27 | /* eslint-enable global-require */ 28 | t.end(); 29 | }); 30 | -------------------------------------------------------------------------------- /Q1/src/components/StockPage.jsx: -------------------------------------------------------------------------------- 1 | import React, { useEffect, useState } from "react"; 2 | import axios from "axios"; 3 | import { LineChart, Line, XAxis, YAxis, Tooltip, CartesianGrid } from "recharts"; 4 | 5 | const StockPage = () => { 6 | const [data, setData] = useState([]); 7 | 8 | useEffect(() => { 9 | axios.get("http://localhost:3000/api/stocks") // Example API 10 | .then(res => setData(res.data)) 11 | .catch(err => console.error(err)); 12 | }, []); 13 | 14 | return ( 15 |
16 |

Stock Price Chart

17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | ); 26 | }; 27 | 28 | export default StockPage; 29 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/core/settle.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | import AxiosError from './AxiosError.js'; 4 | 5 | /** 6 | * Resolve or reject a Promise based on response status. 7 | * 8 | * @param {Function} resolve A function that resolves the promise. 9 | * @param {Function} reject A function that rejects the promise. 10 | * @param {object} response The response. 11 | * 12 | * @returns {object} The response. 13 | */ 14 | export default function settle(resolve, reject, response) { 15 | const validateStatus = response.config.validateStatus; 16 | if (!response.status || !validateStatus || validateStatus(response.status)) { 17 | resolve(response); 18 | } else { 19 | reject(new AxiosError( 20 | 'Request failed with status code ' + response.status, 21 | [AxiosError.ERR_BAD_REQUEST, AxiosError.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4], 22 | response.config, 23 | response.request, 24 | response 25 | )); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/vary/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.1.2 / 2017-09-23 2 | ================== 3 | 4 | * perf: improve header token parsing speed 5 | 6 | 1.1.1 / 2017-03-20 7 | ================== 8 | 9 | * perf: hoist regular expression 10 | 11 | 1.1.0 / 2015-09-29 12 | ================== 13 | 14 | * Only accept valid field names in the `field` argument 15 | - Ensures the resulting string is a valid HTTP header value 16 | 17 | 1.0.1 / 2015-07-08 18 | ================== 19 | 20 | * Fix setting empty header from empty `field` 21 | * perf: enable strict mode 22 | * perf: remove argument reassignments 23 | 24 | 1.0.0 / 2014-08-10 25 | ================== 26 | 27 | * Accept valid `Vary` header string as `field` 28 | * Add `vary.append` for low-level string manipulation 29 | * Move to `jshttp` orgainzation 30 | 31 | 0.1.0 / 2014-06-05 32 | ================== 33 | 34 | * Support array of fields to set 35 | 36 | 0.0.0 / 2014-06-04 37 | ================== 38 | 39 | * Initial release 40 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/safer-buffer/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "safer-buffer", 3 | "version": "2.1.2", 4 | "description": "Modern Buffer API polyfill without footguns", 5 | "main": "safer.js", 6 | "scripts": { 7 | "browserify-test": "browserify --external tape tests.js > browserify-tests.js && tape browserify-tests.js", 8 | "test": "standard && tape tests.js" 9 | }, 10 | "author": { 11 | "name": "Nikita Skovoroda", 12 | "email": "chalkerx@gmail.com", 13 | "url": "https://github.com/ChALkeR" 14 | }, 15 | "license": "MIT", 16 | "repository": { 17 | "type": "git", 18 | "url": "git+https://github.com/ChALkeR/safer-buffer.git" 19 | }, 20 | "bugs": { 21 | "url": "https://github.com/ChALkeR/safer-buffer/issues" 22 | }, 23 | "devDependencies": { 24 | "standard": "^11.0.1", 25 | "tape": "^4.9.0" 26 | }, 27 | "files": [ 28 | "Porting-Buffer.md", 29 | "Readme.md", 30 | "tests.js", 31 | "dangerous.js", 32 | "safer.js" 33 | ] 34 | } 35 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/ee-first/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ee-first", 3 | "description": "return the first event in a set of ee/event pairs", 4 | "version": "1.1.1", 5 | "author": { 6 | "name": "Jonathan Ong", 7 | "email": "me@jongleberry.com", 8 | "url": "http://jongleberry.com", 9 | "twitter": "https://twitter.com/jongleberry" 10 | }, 11 | "contributors": [ 12 | "Douglas Christopher Wilson " 13 | ], 14 | "license": "MIT", 15 | "repository": "jonathanong/ee-first", 16 | "devDependencies": { 17 | "istanbul": "0.3.9", 18 | "mocha": "2.2.5" 19 | }, 20 | "files": [ 21 | "index.js", 22 | "LICENSE" 23 | ], 24 | "scripts": { 25 | "test": "mocha --reporter spec --bail --check-leaks test/", 26 | "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot --check-leaks test/", 27 | "test-travis": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter spec --check-leaks test/" 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/setprototypeof/README.md: -------------------------------------------------------------------------------- 1 | # Polyfill for `Object.setPrototypeOf` 2 | 3 | [![NPM Version](https://img.shields.io/npm/v/setprototypeof.svg)](https://npmjs.org/package/setprototypeof) 4 | [![NPM Downloads](https://img.shields.io/npm/dm/setprototypeof.svg)](https://npmjs.org/package/setprototypeof) 5 | [![js-standard-style](https://img.shields.io/badge/code%20style-standard-brightgreen.svg)](https://github.com/standard/standard) 6 | 7 | A simple cross platform implementation to set the prototype of an instianted object. Supports all modern browsers and at least back to IE8. 8 | 9 | ## Usage: 10 | 11 | ``` 12 | $ npm install --save setprototypeof 13 | ``` 14 | 15 | ```javascript 16 | var setPrototypeOf = require('setprototypeof') 17 | 18 | var obj = {} 19 | setPrototypeOf(obj, { 20 | foo: function () { 21 | return 'bar' 22 | } 23 | }) 24 | obj.foo() // bar 25 | ``` 26 | 27 | TypeScript is also supported: 28 | 29 | ```typescript 30 | import setPrototypeOf from 'setprototypeof' 31 | ``` 32 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/has-tostringtag/test/shams/get-own-property-symbols.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var test = require('tape'); 4 | 5 | if (typeof Symbol === 'function' && typeof Symbol() === 'symbol') { 6 | test('has native Symbol support', function (t) { 7 | t.equal(typeof Symbol, 'function'); 8 | t.equal(typeof Symbol(), 'symbol'); 9 | t.end(); 10 | }); 11 | // @ts-expect-error CJS has top-level return 12 | return; 13 | } 14 | 15 | var hasSymbolToStringTag = require('../../shams'); 16 | 17 | test('polyfilled Symbols', function (t) { 18 | /* eslint-disable global-require */ 19 | t.equal(hasSymbolToStringTag(), false, 'hasSymbolToStringTag is false before polyfilling'); 20 | 21 | // @ts-expect-error no types defined 22 | require('get-own-property-symbols'); 23 | 24 | require('../tests')(t); 25 | 26 | var hasToStringTagAfter = hasSymbolToStringTag(); 27 | t.equal(hasToStringTagAfter, true, 'hasSymbolToStringTag is true after polyfilling'); 28 | /* eslint-enable global-require */ 29 | t.end(); 30 | }); 31 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/platform/node/index.js: -------------------------------------------------------------------------------- 1 | import crypto from 'crypto'; 2 | import URLSearchParams from './classes/URLSearchParams.js' 3 | import FormData from './classes/FormData.js' 4 | 5 | const ALPHA = 'abcdefghijklmnopqrstuvwxyz' 6 | 7 | const DIGIT = '0123456789'; 8 | 9 | const ALPHABET = { 10 | DIGIT, 11 | ALPHA, 12 | ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT 13 | } 14 | 15 | const generateString = (size = 16, alphabet = ALPHABET.ALPHA_DIGIT) => { 16 | let str = ''; 17 | const {length} = alphabet; 18 | const randomValues = new Uint32Array(size); 19 | crypto.randomFillSync(randomValues); 20 | for (let i = 0; i < size; i++) { 21 | str += alphabet[randomValues[i] % length]; 22 | } 23 | 24 | return str; 25 | } 26 | 27 | 28 | export default { 29 | isNode: true, 30 | classes: { 31 | URLSearchParams, 32 | FormData, 33 | Blob: typeof Blob !== 'undefined' && Blob || null 34 | }, 35 | ALPHABET, 36 | generateString, 37 | protocols: [ 'http', 'https', 'file', 'data' ] 38 | }; 39 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/is-promise/readme.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # is-promise 4 | 5 | Test whether an object looks like a promises-a+ promise 6 | 7 | [![Build Status](https://img.shields.io/travis/then/is-promise/master.svg)](https://travis-ci.org/then/is-promise) 8 | [![Dependency Status](https://img.shields.io/david/then/is-promise.svg)](https://david-dm.org/then/is-promise) 9 | [![NPM version](https://img.shields.io/npm/v/is-promise.svg)](https://www.npmjs.org/package/is-promise) 10 | 11 | 12 | 13 | ## Installation 14 | 15 | $ npm install is-promise 16 | 17 | You can also use it client side via npm. 18 | 19 | ## API 20 | 21 | ```typescript 22 | import isPromise from 'is-promise'; 23 | 24 | isPromise(Promise.resolve());//=>true 25 | isPromise({then:function () {...}});//=>true 26 | isPromise(null);//=>false 27 | isPromise({});//=>false 28 | isPromise({then: true})//=>false 29 | ``` 30 | 31 | ## License 32 | 33 | MIT 34 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/wrappy/wrappy.js: -------------------------------------------------------------------------------- 1 | // Returns a wrapper function that returns a wrapped callback 2 | // The wrapper function should do some stuff, and return a 3 | // presumably different callback function. 4 | // This makes sure that own properties are retained, so that 5 | // decorations and such are not lost along the way. 6 | module.exports = wrappy 7 | function wrappy (fn, cb) { 8 | if (fn && cb) return wrappy(fn)(cb) 9 | 10 | if (typeof fn !== 'function') 11 | throw new TypeError('need wrapper function') 12 | 13 | Object.keys(fn).forEach(function (k) { 14 | wrapper[k] = fn[k] 15 | }) 16 | 17 | return wrapper 18 | 19 | function wrapper() { 20 | var args = new Array(arguments.length) 21 | for (var i = 0; i < args.length; i++) { 22 | args[i] = arguments[i] 23 | } 24 | var ret = fn.apply(this, args) 25 | var cb = args[args.length-1] 26 | if (typeof ret === 'function' && ret !== cb) { 27 | Object.keys(cb).forEach(function (k) { 28 | ret[k] = cb[k] 29 | }) 30 | } 31 | return ret 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /Q1/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "new", 3 | "version": "0.1.0", 4 | "private": true, 5 | "dependencies": { 6 | "@testing-library/dom": "^10.4.0", 7 | "@testing-library/jest-dom": "^6.6.3", 8 | "@testing-library/react": "^16.3.0", 9 | "@testing-library/user-event": "^13.5.0", 10 | "axios": "^1.9.0", 11 | "heatmap.js": "^2.0.5", 12 | "react": "^19.1.0", 13 | "react-dom": "^19.1.0", 14 | "react-scripts": "5.0.1", 15 | "recharts": "^2.15.3", 16 | "web-vitals": "^2.1.4" 17 | }, 18 | "scripts": { 19 | "start": "react-scripts start", 20 | "build": "react-scripts build", 21 | "test": "react-scripts test", 22 | "eject": "react-scripts eject" 23 | }, 24 | "eslintConfig": { 25 | "extends": [ 26 | "react-app", 27 | "react-app/jest" 28 | ] 29 | }, 30 | "browserslist": { 31 | "production": [ 32 | ">0.2%", 33 | "not dead", 34 | "not op_mini all" 35 | ], 36 | "development": [ 37 | "last 1 chrome version", 38 | "last 1 firefox version", 39 | "last 1 safari version" 40 | ] 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/helpers/throttle.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Throttle decorator 3 | * @param {Function} fn 4 | * @param {Number} freq 5 | * @return {Function} 6 | */ 7 | function throttle(fn, freq) { 8 | let timestamp = 0; 9 | let threshold = 1000 / freq; 10 | let lastArgs; 11 | let timer; 12 | 13 | const invoke = (args, now = Date.now()) => { 14 | timestamp = now; 15 | lastArgs = null; 16 | if (timer) { 17 | clearTimeout(timer); 18 | timer = null; 19 | } 20 | fn.apply(null, args); 21 | } 22 | 23 | const throttled = (...args) => { 24 | const now = Date.now(); 25 | const passed = now - timestamp; 26 | if ( passed >= threshold) { 27 | invoke(args, now); 28 | } else { 29 | lastArgs = args; 30 | if (!timer) { 31 | timer = setTimeout(() => { 32 | timer = null; 33 | invoke(lastArgs) 34 | }, threshold - passed); 35 | } 36 | } 37 | } 38 | 39 | const flush = () => lastArgs && invoke(lastArgs); 40 | 41 | return [throttled, flush]; 42 | } 43 | 44 | export default throttle; 45 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/media-typer/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "media-typer", 3 | "description": "Simple RFC 6838 media type parser and formatter", 4 | "version": "1.1.0", 5 | "author": "Douglas Christopher Wilson ", 6 | "license": "MIT", 7 | "repository": "jshttp/media-typer", 8 | "devDependencies": { 9 | "eslint": "5.16.0", 10 | "eslint-config-standard": "12.0.0", 11 | "eslint-plugin-import": "2.17.2", 12 | "eslint-plugin-markdown": "1.0.0", 13 | "eslint-plugin-node": "8.0.1", 14 | "eslint-plugin-promise": "4.1.1", 15 | "eslint-plugin-standard": "4.0.0", 16 | "mocha": "6.1.4", 17 | "nyc": "14.0.0" 18 | }, 19 | "files": [ 20 | "LICENSE", 21 | "HISTORY.md", 22 | "index.js" 23 | ], 24 | "engines": { 25 | "node": ">= 0.8" 26 | }, 27 | "scripts": { 28 | "lint": "eslint --plugin markdown --ext js,md .", 29 | "test": "mocha --reporter spec --check-leaks --bail test/", 30 | "test-cov": "nyc --reporter=html --reporter=text npm test", 31 | "test-travis": "nyc --reporter=text npm test" 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/asynckit/lib/readable_serial_ordered.js: -------------------------------------------------------------------------------- 1 | var serialOrdered = require('../serialOrdered.js'); 2 | 3 | // API 4 | module.exports = ReadableSerialOrdered; 5 | // expose sort helpers 6 | module.exports.ascending = serialOrdered.ascending; 7 | module.exports.descending = serialOrdered.descending; 8 | 9 | /** 10 | * Streaming wrapper to `asynckit.serialOrdered` 11 | * 12 | * @param {array|object} list - array or object (named list) to iterate over 13 | * @param {function} iterator - iterator to run 14 | * @param {function} sortMethod - custom sort function 15 | * @param {function} callback - invoked when all elements processed 16 | * @returns {stream.Readable#} 17 | */ 18 | function ReadableSerialOrdered(list, iterator, sortMethod, callback) 19 | { 20 | if (!(this instanceof ReadableSerialOrdered)) 21 | { 22 | return new ReadableSerialOrdered(list, iterator, sortMethod, callback); 23 | } 24 | 25 | // turn on object mode 26 | ReadableSerialOrdered.super_.call(this, {objectMode: true}); 27 | 28 | this._start(serialOrdered, list, iterator, sortMethod, callback); 29 | } 30 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/LICENSE: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2014-present Matt Zabriskie & Collaborators 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 4 | 5 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 6 | 7 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 8 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/has-tostringtag/test/shams/core-js.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var test = require('tape'); 4 | 5 | if (typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol') { 6 | test('has native Symbol.toStringTag support', function (t) { 7 | t.equal(typeof Symbol, 'function'); 8 | t.equal(typeof Symbol.toStringTag, 'symbol'); 9 | t.end(); 10 | }); 11 | // @ts-expect-error CJS has top-level return 12 | return; 13 | } 14 | 15 | var hasSymbolToStringTag = require('../../shams'); 16 | 17 | test('polyfilled Symbols', function (t) { 18 | /* eslint-disable global-require */ 19 | t.equal(hasSymbolToStringTag(), false, 'hasSymbolToStringTag is false before polyfilling'); 20 | // @ts-expect-error no types defined 21 | require('core-js/fn/symbol'); 22 | // @ts-expect-error no types defined 23 | require('core-js/fn/symbol/to-string-tag'); 24 | 25 | require('../tests')(t); 26 | 27 | var hasToStringTagAfter = hasSymbolToStringTag(); 28 | t.equal(hasToStringTagAfter, true, 'hasSymbolToStringTag is true after polyfilling'); 29 | /* eslint-enable global-require */ 30 | t.end(); 31 | }); 32 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/axios/lib/adapters/README.md: -------------------------------------------------------------------------------- 1 | # axios // adapters 2 | 3 | The modules under `adapters/` are modules that handle dispatching a request and settling a returned `Promise` once a response is received. 4 | 5 | ## Example 6 | 7 | ```js 8 | var settle = require('./../core/settle'); 9 | 10 | module.exports = function myAdapter(config) { 11 | // At this point: 12 | // - config has been merged with defaults 13 | // - request transformers have already run 14 | // - request interceptors have already run 15 | 16 | // Make the request using config provided 17 | // Upon response settle the Promise 18 | 19 | return new Promise(function(resolve, reject) { 20 | 21 | var response = { 22 | data: responseData, 23 | status: request.status, 24 | statusText: request.statusText, 25 | headers: responseHeaders, 26 | config: config, 27 | request: request 28 | }; 29 | 30 | settle(resolve, reject, response); 31 | 32 | // From here: 33 | // - response transformers will run 34 | // - response interceptors will run 35 | }); 36 | } 37 | ``` 38 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/asynckit/lib/state.js: -------------------------------------------------------------------------------- 1 | // API 2 | module.exports = state; 3 | 4 | /** 5 | * Creates initial state object 6 | * for iteration over list 7 | * 8 | * @param {array|object} list - list to iterate over 9 | * @param {function|null} sortMethod - function to use for keys sort, 10 | * or `null` to keep them as is 11 | * @returns {object} - initial state object 12 | */ 13 | function state(list, sortMethod) 14 | { 15 | var isNamedList = !Array.isArray(list) 16 | , initState = 17 | { 18 | index : 0, 19 | keyedList: isNamedList || sortMethod ? Object.keys(list) : null, 20 | jobs : {}, 21 | results : isNamedList ? {} : [], 22 | size : isNamedList ? Object.keys(list).length : list.length 23 | } 24 | ; 25 | 26 | if (sortMethod) 27 | { 28 | // sort array keys based on it's values 29 | // sort object's keys just on own merit 30 | initState.keyedList.sort(isNamedList ? sortMethod : function(a, b) 31 | { 32 | return sortMethod(list[a], list[b]); 33 | }); 34 | } 35 | 36 | return initState; 37 | } 38 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/dunder-proto/get.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var callBind = require('call-bind-apply-helpers'); 4 | var gOPD = require('gopd'); 5 | 6 | var hasProtoAccessor; 7 | try { 8 | // eslint-disable-next-line no-extra-parens, no-proto 9 | hasProtoAccessor = /** @type {{ __proto__?: typeof Array.prototype }} */ ([]).__proto__ === Array.prototype; 10 | } catch (e) { 11 | if (!e || typeof e !== 'object' || !('code' in e) || e.code !== 'ERR_PROTO_ACCESS') { 12 | throw e; 13 | } 14 | } 15 | 16 | // eslint-disable-next-line no-extra-parens 17 | var desc = !!hasProtoAccessor && gOPD && gOPD(Object.prototype, /** @type {keyof typeof Object.prototype} */ ('__proto__')); 18 | 19 | var $Object = Object; 20 | var $getPrototypeOf = $Object.getPrototypeOf; 21 | 22 | /** @type {import('./get')} */ 23 | module.exports = desc && typeof desc.get === 'function' 24 | ? callBind([desc.get]) 25 | : typeof $getPrototypeOf === 'function' 26 | ? /** @type {import('./get')} */ function getDunder(value) { 27 | // eslint-disable-next-line eqeqeq 28 | return $getPrototypeOf(value == null ? value : $Object(value)); 29 | } 30 | : false; 31 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/once/once.js: -------------------------------------------------------------------------------- 1 | var wrappy = require('wrappy') 2 | module.exports = wrappy(once) 3 | module.exports.strict = wrappy(onceStrict) 4 | 5 | once.proto = once(function () { 6 | Object.defineProperty(Function.prototype, 'once', { 7 | value: function () { 8 | return once(this) 9 | }, 10 | configurable: true 11 | }) 12 | 13 | Object.defineProperty(Function.prototype, 'onceStrict', { 14 | value: function () { 15 | return onceStrict(this) 16 | }, 17 | configurable: true 18 | }) 19 | }) 20 | 21 | function once (fn) { 22 | var f = function () { 23 | if (f.called) return f.value 24 | f.called = true 25 | return f.value = fn.apply(this, arguments) 26 | } 27 | f.called = false 28 | return f 29 | } 30 | 31 | function onceStrict (fn) { 32 | var f = function () { 33 | if (f.called) 34 | throw new Error(f.onceError) 35 | f.called = true 36 | return f.value = fn.apply(this, arguments) 37 | } 38 | var name = fn.name || 'Function wrapped with `once`' 39 | f.onceError = name + " shouldn't be called more than once" 40 | f.called = false 41 | return f 42 | } 43 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/proxy-from-env/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "proxy-from-env", 3 | "version": "1.1.0", 4 | "description": "Offers getProxyForUrl to get the proxy URL for a URL, respecting the *_PROXY (e.g. HTTP_PROXY) and NO_PROXY environment variables.", 5 | "main": "index.js", 6 | "scripts": { 7 | "lint": "eslint *.js", 8 | "test": "mocha ./test.js --reporter spec", 9 | "test-coverage": "istanbul cover ./node_modules/.bin/_mocha -- --reporter spec" 10 | }, 11 | "repository": { 12 | "type": "git", 13 | "url": "https://github.com/Rob--W/proxy-from-env.git" 14 | }, 15 | "keywords": [ 16 | "proxy", 17 | "http_proxy", 18 | "https_proxy", 19 | "no_proxy", 20 | "environment" 21 | ], 22 | "author": "Rob Wu (https://robwu.nl/)", 23 | "license": "MIT", 24 | "bugs": { 25 | "url": "https://github.com/Rob--W/proxy-from-env/issues" 26 | }, 27 | "homepage": "https://github.com/Rob--W/proxy-from-env#readme", 28 | "devDependencies": { 29 | "coveralls": "^3.0.9", 30 | "eslint": "^6.8.0", 31 | "istanbul": "^0.4.5", 32 | "mocha": "^7.1.0" 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/is-promise/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2014 Forbes Lindesay 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/function-bind/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2013 Raynos. 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. 20 | 21 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/get-proto/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | All notable changes to this project will be documented in this file. 4 | 5 | The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) 6 | and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). 7 | 8 | ## [v1.0.1](https://github.com/ljharb/get-proto/compare/v1.0.0...v1.0.1) - 2025-01-02 9 | 10 | ### Commits 11 | 12 | - [Fix] for the `Object.getPrototypeOf` window, throw for non-objects [`7fe6508`](https://github.com/ljharb/get-proto/commit/7fe6508b71419ebe1976bedb86001d1feaeaa49a) 13 | 14 | ## v1.0.0 - 2025-01-01 15 | 16 | ### Commits 17 | 18 | - Initial implementation, tests, readme, types [`5c70775`](https://github.com/ljharb/get-proto/commit/5c707751e81c3deeb2cf980d185fc7fd43611415) 19 | - Initial commit [`7c65c2a`](https://github.com/ljharb/get-proto/commit/7c65c2ad4e33d5dae2f219ebe1a046ae2256972c) 20 | - npm init [`0b8cf82`](https://github.com/ljharb/get-proto/commit/0b8cf824c9634e4a34ef7dd2a2cdc5be6ac79518) 21 | - Only apps should have lockfiles [`a6d1bff`](https://github.com/ljharb/get-proto/commit/a6d1bffc364f5828377cea7194558b2dbef7aea2) 22 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/bytes/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "bytes", 3 | "description": "Utility to parse a string bytes to bytes and vice-versa", 4 | "version": "3.1.2", 5 | "author": "TJ Holowaychuk (http://tjholowaychuk.com)", 6 | "contributors": [ 7 | "Jed Watson ", 8 | "Théo FIDRY " 9 | ], 10 | "license": "MIT", 11 | "keywords": [ 12 | "byte", 13 | "bytes", 14 | "utility", 15 | "parse", 16 | "parser", 17 | "convert", 18 | "converter" 19 | ], 20 | "repository": "visionmedia/bytes.js", 21 | "devDependencies": { 22 | "eslint": "7.32.0", 23 | "eslint-plugin-markdown": "2.2.1", 24 | "mocha": "9.2.0", 25 | "nyc": "15.1.0" 26 | }, 27 | "files": [ 28 | "History.md", 29 | "LICENSE", 30 | "Readme.md", 31 | "index.js" 32 | ], 33 | "engines": { 34 | "node": ">= 0.8" 35 | }, 36 | "scripts": { 37 | "lint": "eslint .", 38 | "test": "mocha --check-leaks --reporter spec", 39 | "test-ci": "nyc --reporter=lcov --reporter=text npm test", 40 | "test-cov": "nyc --reporter=html --reporter=text npm test" 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/iconv-lite/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2011 Alexander Shtuchkin 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining 4 | a copy of this software and associated documentation files (the 5 | "Software"), to deal in the Software without restriction, including 6 | without limitation the rights to use, copy, modify, merge, publish, 7 | distribute, sublicense, and/or sell copies of the Software, and to 8 | permit persons to whom the Software is furnished to do so, subject to 9 | the following conditions: 10 | 11 | The above copyright notice and this permission notice shall be 12 | included in all copies or substantial portions of the Software. 13 | 14 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 15 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 16 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 17 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE 18 | LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 19 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 20 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 21 | 22 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/gopd/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2022 Jordan Harband 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/call-bound/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2024 Jordan Harband 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-errors/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2024 Jordan Harband 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/get-intrinsic/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020 Jordan Harband 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/get-proto/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2025 Jordan Harband 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/has-symbols/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2016 Jordan Harband 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/has-tostringtag/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2021 Inspect JS 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/ms/license.md: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2020 Vercel, Inc. 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/side-channel/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2019 Jordan Harband 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/asynckit/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2016 Alex Indigo 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/delayed-stream/License: -------------------------------------------------------------------------------- 1 | Copyright (c) 2011 Debuggable Limited 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. 20 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/dunder-proto/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2024 ECMAScript Shims 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-define-property/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2024 Jordan Harband 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-object-atoms/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2024 Jordan Harband 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/hasown/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) Jordan Harband and contributors 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/ipaddr.js/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (C) 2011-2017 whitequark 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. 20 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/math-intrinsics/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2024 ECMAScript Shims 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/object-inspect/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2013 James Halliday 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/side-channel-list/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2024 Jordan Harband 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/side-channel-map/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2024 Jordan Harband 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/call-bind-apply-helpers/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2024 Jordan Harband 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/combined-stream/License: -------------------------------------------------------------------------------- 1 | Copyright (c) 2011 Debuggable Limited 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. 20 | -------------------------------------------------------------------------------- /Q2/average-calculator/node_modules/es-set-tostringtag/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2022 ECMAScript Shims 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | --------------------------------------------------------------------------------