diff --git a/homework-12/index.html b/homework-12/index.html
new file mode 100644
index 0000000..04dc733
--- /dev/null
+++ b/homework-12/index.html
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/homework-12/js.js b/homework-12/js.js
new file mode 100644
index 0000000..65f3ee6
--- /dev/null
+++ b/homework-12/js.js
@@ -0,0 +1,144 @@
+// 'use strict';
+
+/*
+ * TASK ! ! !
+ * Сделайте пожалуйста с теми навыками которые у вас есть ТЕЛЕФОННЫЙ СПРАВОЧНИК
+ *
+ * Task 0 !!!! Didn't done!!!
+ *
+ * Создайте функцию конструктор Http, которая будет иметь 2 метода
+ *
+ * createServer() - принимает один аргумент функцию с двумя параметрами ctx и next
+ * ctx: Object {
+ * req: Object
+ * PORT: number
+ * url: string
+ * res: Object
+ * status: number,
+ * message: string,
+ * header: Object {
+ * content-type:application/json
+ * }
+ * }
+ * next: Function
+ *
+ *
+ * при вызове listen(PORT, host) - в консоле должна отобразится надпись
+ * "Server running on https://host:port"
+ * и вызваться переданная в createServer функция
+ *
+ *
+ * методы нужно вызывать через chain
+ * после вызова метода listen() - должна вызываться переданная в createServer
+ * первая функция и возвращать объект и функцию
+ *
+ * */
+
+function Http() {};
+
+
+Http.prototype.createServer = function(fn) {
+ let stx = {
+ req: {
+ port: 123,
+ url: `http`,
+ },
+ res: {
+ status: 0,
+ message: `ok`,
+ haeder: {
+ 'content-type': `application/json`,
+ }
+
+ }
+
+ }
+
+ this.callback = () => {
+ fn(ctx , ()=>{})
+ }
+ return this;
+}
+
+Http.prototype.listen = function(PORT, host) {
+ console.log(`Server running on https://${host}:${PORT}`);
+
+
+};
+
+const server = new Http().createServer(function(ctx, next) {
+ console.log(ctx);
+ }).listen(3000, 'localhost');
+
+
+// server.createServer(function(ctx, next) {
+// console.log(ctx);
+// })
+
+
+// console.log(server);
+// TASK 1
+// Создать класс Human, у которого будут свойства обычного человека:
+// имя, возраст, пол, рост, вес.
+// Используя прототипное наследование создать дочерние классы Worker
+// (дописать в них поля места работы, зарплата, метод "работать")
+// и Student (дописать поля места учебы, стипендией, метод "смотреть сериалы")
+//
+// Создать несколько экземпляров классов Worker и Student, вывести их в консоль.
+// Убедиться что они имеют поля родительского класса Human
+
+
+function Human(name,age,sex,hight,weight) {
+ this.name = name;
+ this.age = age;
+ this.sex = sex;
+ this.hight = hight;
+ this.weight = weight;
+}
+function Worker(sallary, keyshiya) {
+ this.sallary = sallary;
+ this.workPlace = keyshiya;
+
+}
+
+
+
+function Student(university, scholarship) {
+ this.university = university;
+ this.scholarship = scholarship;
+
+}
+
+
+
+
+Worker.prototype = Object.create(Human.prototype);
+Worker.prototype.constructor = Worker;
+Worker.prototype.arbeiten = function() {
+ console.log(`arbeite macht frie`);
+}
+
+Student.prototype = Object.create(Human.prototype);
+Student.prototype.constructor = Student;
+Student.prototype.lookingOfTVSeries = function() {
+ console.log(`Say: Lannisters always pay their debts`);
+}
+
+let studentExemplar1 = new Student(`HPI`,`-1200`);
+let workerExemplar1 = new Worker(`400$`,`somewhere`);
+let humanExample1 = new Human(`Vasia`,`18`,`man`,`165`,`55`);
+
+console.log(studentExemplar1);
+console.log(workerExemplar1);
+console.log(humanExample1);
+
+// @SUPER
+
+/*
+ *
+ * TASK 0
+ * Создайте функцию обертку над другой функцией
+ * Каждый раз при вызове внутренней функции в консоле будут отображаться аргументы функции
+ * которую мы обернули
+ *
+*/