diff --git a/week-2/mandatory/2-ecommerce-db/task.md b/week-2/mandatory/2-ecommerce-db/task.md
index 70e9ce0c..51a0d068 100644
--- a/week-2/mandatory/2-ecommerce-db/task.md
+++ b/week-2/mandatory/2-ecommerce-db/task.md
@@ -9,7 +9,18 @@ Below you will find a set of tasks for you to complete to set up a databases of
To submit this homework write the correct commands for each question here:
```sql
-
+1.select name,address from customers where country='United States';
+2.select * from customers order by name;
+3.select * from products where unit_price>100;
+4.select * from products where product_name like 'socks';
+5.select * from products order by unit_price desc limit 5;
+6.select products.product_name,products.unit_price,suppliers.supplier_name from products,suppliers where suppliers.id=products.supplier_id;
+7.select products.product_name,suppliers.supplier_name from products,suppliers where products.supplier_id=suppliers.id and suppliers.country='United Kingdom';
+8.select * from orders where customer_id=1;
+9.select * from orders where customer_id=(select id from customers where name='Hope Crosby');
+10.select products.product_name,products.unit_price,order_items.quantity from products inner join order_items on products.id=order_items.product_id inner join orders on order_items.order_id=orders.id;
+11.select customers.name,orders.order_reference,orders.order_date,products.product_name,suppliers.supplier_name,order_items.quantity from customers inner join orders on customers.id=orders.customer_id inner join order_items on orders.id=order_items.order_id inner join products on order_items.product_id=products.id inner join suppliers on products.supplier_id=suppliers.id;
+12.select customers.name from customers inner join orders on customers.id=orders.customer_id inner join order_items on orders.id=order_items.order_id inner join products on order_items.product_id=products.id inner join suppliers on products.supplier_id=suppliers.id where suppliers.country='China';
```
diff --git a/week-3/mandatory/2-api/node_modules/.bin/is-ci b/week-3/mandatory/2-api/node_modules/.bin/is-ci
new file mode 120000
index 00000000..fe6aca6f
--- /dev/null
+++ b/week-3/mandatory/2-api/node_modules/.bin/is-ci
@@ -0,0 +1 @@
+../is-ci/bin.js
\ No newline at end of file
diff --git a/week-3/mandatory/2-api/node_modules/.bin/mime b/week-3/mandatory/2-api/node_modules/.bin/mime
new file mode 120000
index 00000000..fbb7ee0e
--- /dev/null
+++ b/week-3/mandatory/2-api/node_modules/.bin/mime
@@ -0,0 +1 @@
+../mime/cli.js
\ No newline at end of file
diff --git a/week-3/mandatory/2-api/node_modules/.bin/nodemon b/week-3/mandatory/2-api/node_modules/.bin/nodemon
new file mode 120000
index 00000000..1056ddc1
--- /dev/null
+++ b/week-3/mandatory/2-api/node_modules/.bin/nodemon
@@ -0,0 +1 @@
+../nodemon/bin/nodemon.js
\ No newline at end of file
diff --git a/week-3/mandatory/2-api/node_modules/.bin/nodetouch b/week-3/mandatory/2-api/node_modules/.bin/nodetouch
new file mode 120000
index 00000000..3409fdb7
--- /dev/null
+++ b/week-3/mandatory/2-api/node_modules/.bin/nodetouch
@@ -0,0 +1 @@
+../touch/bin/nodetouch.js
\ No newline at end of file
diff --git a/week-3/mandatory/2-api/node_modules/.bin/nopt b/week-3/mandatory/2-api/node_modules/.bin/nopt
new file mode 120000
index 00000000..6b6566ea
--- /dev/null
+++ b/week-3/mandatory/2-api/node_modules/.bin/nopt
@@ -0,0 +1 @@
+../nopt/bin/nopt.js
\ No newline at end of file
diff --git a/week-3/mandatory/2-api/node_modules/.bin/rc b/week-3/mandatory/2-api/node_modules/.bin/rc
new file mode 120000
index 00000000..48b3cda7
--- /dev/null
+++ b/week-3/mandatory/2-api/node_modules/.bin/rc
@@ -0,0 +1 @@
+../rc/cli.js
\ No newline at end of file
diff --git a/week-3/mandatory/2-api/node_modules/.bin/semver b/week-3/mandatory/2-api/node_modules/.bin/semver
new file mode 120000
index 00000000..317eb293
--- /dev/null
+++ b/week-3/mandatory/2-api/node_modules/.bin/semver
@@ -0,0 +1 @@
+../semver/bin/semver
\ No newline at end of file
diff --git a/week-3/mandatory/2-api/node_modules/@sindresorhus/is/dist/index.d.ts b/week-3/mandatory/2-api/node_modules/@sindresorhus/is/dist/index.d.ts
new file mode 100644
index 00000000..e94d30b7
--- /dev/null
+++ b/week-3/mandatory/2-api/node_modules/@sindresorhus/is/dist/index.d.ts
@@ -0,0 +1,132 @@
+///
+///
+///
+///
+///
+declare type TypedArray = Int8Array | Uint8Array | Uint8ClampedArray | Int16Array | Uint16Array | Int32Array | Uint32Array | Float32Array | Float64Array;
+declare type Primitive = null | undefined | string | number | boolean | Symbol;
+export interface ArrayLike {
+ length: number;
+}
+export interface Class {
+ new (...args: any[]): T;
+}
+declare type DomElement = object & {
+ nodeType: 1;
+ nodeName: string;
+};
+declare type NodeStream = object & {
+ pipe: Function;
+};
+export declare const enum TypeName {
+ null = "null",
+ boolean = "boolean",
+ undefined = "undefined",
+ string = "string",
+ number = "number",
+ symbol = "symbol",
+ Function = "Function",
+ GeneratorFunction = "GeneratorFunction",
+ AsyncFunction = "AsyncFunction",
+ Observable = "Observable",
+ Array = "Array",
+ Buffer = "Buffer",
+ Object = "Object",
+ RegExp = "RegExp",
+ Date = "Date",
+ Error = "Error",
+ Map = "Map",
+ Set = "Set",
+ WeakMap = "WeakMap",
+ WeakSet = "WeakSet",
+ Int8Array = "Int8Array",
+ Uint8Array = "Uint8Array",
+ Uint8ClampedArray = "Uint8ClampedArray",
+ Int16Array = "Int16Array",
+ Uint16Array = "Uint16Array",
+ Int32Array = "Int32Array",
+ Uint32Array = "Uint32Array",
+ Float32Array = "Float32Array",
+ Float64Array = "Float64Array",
+ ArrayBuffer = "ArrayBuffer",
+ SharedArrayBuffer = "SharedArrayBuffer",
+ DataView = "DataView",
+ Promise = "Promise",
+ URL = "URL"
+}
+declare function is(value: unknown): TypeName;
+declare namespace is {
+ const undefined: (value: unknown) => value is undefined;
+ const string: (value: unknown) => value is string;
+ const number: (value: unknown) => value is number;
+ const function_: (value: unknown) => value is Function;
+ const null_: (value: unknown) => value is null;
+ const class_: (value: unknown) => value is Class;
+ const boolean: (value: unknown) => value is boolean;
+ const symbol: (value: unknown) => value is Symbol;
+ const numericString: (value: unknown) => boolean;
+ const array: (arg: any) => arg is any[];
+ const buffer: (input: unknown) => input is Buffer;
+ const nullOrUndefined: (value: unknown) => value is null | undefined;
+ const object: (value: unknown) => value is object;
+ const iterable: (value: unknown) => value is IterableIterator;
+ const asyncIterable: (value: unknown) => value is AsyncIterableIterator;
+ const generator: (value: unknown) => value is Generator;
+ const nativePromise: (value: unknown) => value is Promise;
+ const promise: (value: unknown) => value is Promise;
+ const generatorFunction: (value: unknown) => value is GeneratorFunction;
+ const asyncFunction: (value: unknown) => value is Function;
+ const boundFunction: (value: unknown) => value is Function;
+ const regExp: (value: unknown) => value is RegExp;
+ const date: (value: unknown) => value is Date;
+ const error: (value: unknown) => value is Error;
+ const map: (value: unknown) => value is Map;
+ const set: (value: unknown) => value is Set;
+ const weakMap: (value: unknown) => value is WeakMap