diff --git a/Frontend Angular 4/package-lock.json b/Frontend Angular 4/package-lock.json
index fa7df2292a02f88d87b3406f097c6c2c8ad939cb..3481df8ad83547f594ab44feb42b8080237537b3 100644
--- a/Frontend Angular 4/package-lock.json	
+++ b/Frontend Angular 4/package-lock.json	
@@ -200,9 +200,9 @@
       "dev": true
     },
     "@types/node": {
-      "version": "6.0.114",
-      "resolved": "https://registry.npmjs.org/@types/node/-/node-6.0.114.tgz",
-      "integrity": "sha512-5ViC9dwf1VIAtrOFTvOuN04lJgw28eKjuy0Vg2Bd/fSlxKP2feCSkIw04ZgOENL2ywdWrtbkthp1XVLEjJmouw==",
+      "version": "6.0.115",
+      "resolved": "https://registry.npmjs.org/@types/node/-/node-6.0.115.tgz",
+      "integrity": "sha512-PWA07jqflLli+PAk7VaJn0MVdTw96egk5B1FxwocV/tcc3RamNGbza1ZgS0OGUsTuAYCFCboL+IlG2bPazV2Nw==",
       "dev": true
     },
     "@types/q": {
@@ -542,10 +542,13 @@
       "optional": true
     },
     "asn1": {
-      "version": "0.2.3",
-      "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz",
-      "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=",
-      "dev": true
+      "version": "0.2.4",
+      "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz",
+      "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==",
+      "dev": true,
+      "requires": {
+        "safer-buffer": "~2.1.0"
+      }
     },
     "asn1.js": {
       "version": "4.10.1",
@@ -1171,10 +1174,32 @@
         }
       }
     },
-    "buffer-from": {
+    "buffer-alloc": {
+      "version": "1.2.0",
+      "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz",
+      "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==",
+      "dev": true,
+      "requires": {
+        "buffer-alloc-unsafe": "^1.1.0",
+        "buffer-fill": "^1.0.0"
+      }
+    },
+    "buffer-alloc-unsafe": {
       "version": "1.1.0",
-      "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.0.tgz",
-      "integrity": "sha512-c5mRlguI/Pe2dSZmpER62rSCu0ryKmWddzRYsuXc50U2/g8jMOulc31VZMa4mYx31U5xsmSOpDCgH88Vl9cDGQ==",
+      "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz",
+      "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==",
+      "dev": true
+    },
+    "buffer-fill": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz",
+      "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=",
+      "dev": true
+    },
+    "buffer-from": {
+      "version": "1.1.1",
+      "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz",
+      "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==",
       "dev": true
     },
     "buffer-xor": {
@@ -1273,9 +1298,9 @@
       }
     },
     "caniuse-db": {
-      "version": "1.0.30000865",
-      "resolved": "https://registry.npmjs.org/caniuse-db/-/caniuse-db-1.0.30000865.tgz",
-      "integrity": "sha1-gv+2TUD3VnYgqsAtOmMgeWiavGs=",
+      "version": "1.0.30000874",
+      "resolved": "https://registry.npmjs.org/caniuse-db/-/caniuse-db-1.0.30000874.tgz",
+      "integrity": "sha1-Se3AJi79xsSdTZYrsW0fDHkPpE4=",
       "dev": true
     },
     "capture-stack-trace": {
@@ -1561,9 +1586,9 @@
       }
     },
     "codemirror": {
-      "version": "5.39.0",
-      "resolved": "https://registry.npmjs.org/codemirror/-/codemirror-5.39.0.tgz",
-      "integrity": "sha512-vpJRray/0ZCt9FiS7UcVr1JAm6OBdUt6TA/94Q7MScr8TnutVdQWh/WPr0migzaBPQmYvY7I9UZNvbsaLESIuQ=="
+      "version": "5.39.2",
+      "resolved": "https://registry.npmjs.org/codemirror/-/codemirror-5.39.2.tgz",
+      "integrity": "sha512-mchBy0kQ1Wggi+e58SmoLgKO4nG7s/BqNg6/6TRbhsnXI/KRG+fKAvRQ1LLhZZ6ZtUoDQ0dl5aMhE+IkSRh60Q=="
     },
     "collection-visit": {
       "version": "1.0.0",
@@ -1646,9 +1671,9 @@
       }
     },
     "commander": {
-      "version": "2.16.0",
-      "resolved": "https://registry.npmjs.org/commander/-/commander-2.16.0.tgz",
-      "integrity": "sha512-sVXqklSaotK9at437sFlFpyOcJonxe0yST/AG9DkQKUdIE6IqGIMv4SfAQSKaJbSdVEJYItASCrBiVQHq1HQew=="
+      "version": "2.17.0",
+      "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.0.tgz",
+      "integrity": "sha512-477o1hdVORiFlZxw8wgsXYCef3lh0zl/OV0FTftqiDxJSWw6dPQ2ipS4k20J2qBcsmsmLKSyr2iFrf9e3JGi4w=="
     },
     "common-tags": {
       "version": "1.8.0",
@@ -1687,37 +1712,21 @@
       "dev": true,
       "requires": {
         "mime-db": ">= 1.34.0 < 2"
-      },
-      "dependencies": {
-        "mime-db": {
-          "version": "1.34.0",
-          "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.34.0.tgz",
-          "integrity": "sha1-RS0Oz/XDA0am3B5kseruDTcZ/5o=",
-          "dev": true
-        }
       }
     },
     "compression": {
-      "version": "1.7.2",
-      "resolved": "http://registry.npmjs.org/compression/-/compression-1.7.2.tgz",
-      "integrity": "sha1-qv+81qr4VLROuygDU9WtFlH1mmk=",
+      "version": "1.7.3",
+      "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.3.tgz",
+      "integrity": "sha512-HSjyBG5N1Nnz7tF2+O7A9XUhyjru71/fwgNb7oIsEVHR0WShfs2tIS/EySLgiTe98aOK18YDlMXpzjCXY/n9mg==",
       "dev": true,
       "requires": {
-        "accepts": "~1.3.4",
+        "accepts": "~1.3.5",
         "bytes": "3.0.0",
-        "compressible": "~2.0.13",
+        "compressible": "~2.0.14",
         "debug": "2.6.9",
         "on-headers": "~1.0.1",
-        "safe-buffer": "5.1.1",
+        "safe-buffer": "5.1.2",
         "vary": "~1.1.2"
-      },
-      "dependencies": {
-        "safe-buffer": {
-          "version": "5.1.1",
-          "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz",
-          "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==",
-          "dev": true
-        }
       }
     },
     "concat-map": {
@@ -2725,13 +2734,14 @@
       "dev": true
     },
     "ecc-jsbn": {
-      "version": "0.1.1",
-      "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz",
-      "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=",
+      "version": "0.1.2",
+      "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz",
+      "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=",
       "dev": true,
       "optional": true,
       "requires": {
-        "jsbn": "~0.1.0"
+        "jsbn": "~0.1.0",
+        "safer-buffer": "^2.1.0"
       }
     },
     "ee-first": {
@@ -2741,9 +2751,9 @@
       "dev": true
     },
     "electron-to-chromium": {
-      "version": "1.3.52",
-      "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.52.tgz",
-      "integrity": "sha1-0tnxJwuko7lnuDHEDvcftNmrXOA=",
+      "version": "1.3.55",
+      "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.55.tgz",
+      "integrity": "sha1-8VDhCyC3fZ1Br8yjEu/gw7Gn/c4=",
       "dev": true
     },
     "elliptic": {
@@ -3228,9 +3238,9 @@
       }
     },
     "extend": {
-      "version": "3.0.1",
-      "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz",
-      "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ="
+      "version": "3.0.2",
+      "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
+      "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g=="
     },
     "extend-shallow": {
       "version": "3.0.2",
@@ -3487,9 +3497,9 @@
       "dev": true
     },
     "follow-redirects": {
-      "version": "1.5.1",
-      "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.1.tgz",
-      "integrity": "sha512-v9GI1hpaqq1ZZR6pBD1+kI7O24PhDvNGNodjS3MdcEqyrahCp8zbtpv+2B/krUnSmUH80lbAS7MrdeK5IylgKg==",
+      "version": "1.5.2",
+      "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.2.tgz",
+      "integrity": "sha512-kssLorP/9acIdpQ2udQVTiCS5LQmdEz9mvdIfDcl1gYX2tPKFADHSyFdvJS040XdFsPzemWtgI3q8mFVCxtX8A==",
       "dev": true,
       "requires": {
         "debug": "^3.1.0"
@@ -3632,14 +3642,12 @@
         "balanced-match": {
           "version": "1.0.0",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "brace-expansion": {
           "version": "1.1.11",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "balanced-match": "^1.0.0",
             "concat-map": "0.0.1"
@@ -3654,20 +3662,17 @@
         "code-point-at": {
           "version": "1.1.0",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "concat-map": {
           "version": "0.0.1",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "console-control-strings": {
           "version": "1.1.0",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "core-util-is": {
           "version": "1.0.2",
@@ -3784,8 +3789,7 @@
         "inherits": {
           "version": "2.0.3",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "ini": {
           "version": "1.3.5",
@@ -3797,7 +3801,6 @@
           "version": "1.0.0",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "number-is-nan": "^1.0.0"
           }
@@ -3812,7 +3815,6 @@
           "version": "3.0.4",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "brace-expansion": "^1.1.7"
           }
@@ -3820,14 +3822,12 @@
         "minimist": {
           "version": "0.0.8",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "minipass": {
           "version": "2.2.4",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "safe-buffer": "^5.1.1",
             "yallist": "^3.0.0"
@@ -3846,7 +3846,6 @@
           "version": "0.5.1",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "minimist": "0.0.8"
           }
@@ -3927,8 +3926,7 @@
         "number-is-nan": {
           "version": "1.0.1",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "object-assign": {
           "version": "4.1.1",
@@ -3940,7 +3938,6 @@
           "version": "1.4.0",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "wrappy": "1"
           }
@@ -4062,7 +4059,6 @@
           "version": "1.0.2",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "code-point-at": "^1.0.0",
             "is-fullwidth-code-point": "^1.0.0",
@@ -4153,8 +4149,8 @@
       "dev": true
     },
     "function-plot": {
-      "version": "git+https://github.com/diego-rey/function-plot.git#9aeb9257649497939ba3c89cf69f1c338e91d436",
-      "from": "git+https://github.com/diego-rey/function-plot.git#feature/integration-domain-shape",
+      "version": "git://github.com/diego-rey/function-plot.git#30b24f26c03396a1b3aae3cc783dc15d980c5ce9",
+      "from": "git://github.com/diego-rey/function-plot.git#feature/integration-domain-shape",
       "requires": {
         "array-range": "^1.0.1",
         "built-in-math-eval": "^0.3.0",
@@ -4219,9 +4215,9 @@
       }
     },
     "get-caller-file": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.2.tgz",
-      "integrity": "sha1-9wLmMSfn4jHBYKgMFVSstw1QR+U=",
+      "version": "1.0.3",
+      "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz",
+      "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==",
       "dev": true
     },
     "get-stdin": {
@@ -4405,7 +4401,7 @@
       "dev": true
     },
     "graph3D": {
-      "version": "git://github.com/ifagian/graph3D.git#79bb55dedbaf4e3b853f138acf4409b6bbcb4d07",
+      "version": "git://github.com/ifagian/graph3D.git#7541be7f1e4fd4d2b9d7a064f876cbcdbba7ccd7",
       "from": "git://github.com/ifagian/graph3D.git#master",
       "requires": {
         "three": "^0.90.0"
@@ -4712,9 +4708,9 @@
       "dev": true
     },
     "html-minifier": {
-      "version": "3.5.18",
-      "resolved": "https://registry.npmjs.org/html-minifier/-/html-minifier-3.5.18.tgz",
-      "integrity": "sha512-sczoq/9zeXiKZMj8tsQzHJE7EyjrpMHvblTLuh9o8h5923a6Ts5uQ/3YdY+xIqJYRjzHQPlrHjfjh0BtwPJG0g==",
+      "version": "3.5.19",
+      "resolved": "https://registry.npmjs.org/html-minifier/-/html-minifier-3.5.19.tgz",
+      "integrity": "sha512-Qr2JC9nsjK8oCrEmuB430ZIA8YWbF3D5LSjywD75FTuXmeqacwHgIM8wp3vHYzzPbklSjp53RdmDuzR4ub2HzA==",
       "dev": true,
       "requires": {
         "camel-case": "3.0.x",
@@ -4724,6 +4720,14 @@
         "param-case": "2.1.x",
         "relateurl": "0.2.x",
         "uglify-js": "3.4.x"
+      },
+      "dependencies": {
+        "commander": {
+          "version": "2.16.0",
+          "resolved": "https://registry.npmjs.org/commander/-/commander-2.16.0.tgz",
+          "integrity": "sha512-sVXqklSaotK9at437sFlFpyOcJonxe0yST/AG9DkQKUdIE6IqGIMv4SfAQSKaJbSdVEJYItASCrBiVQHq1HQew==",
+          "dev": true
+        }
       }
     },
     "html-webpack-plugin": {
@@ -5207,9 +5211,9 @@
       "integrity": "sha1-QLja9P16MRUL0AIWD2ZJbiKpjDw="
     },
     "ipaddr.js": {
-      "version": "1.6.0",
-      "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.6.0.tgz",
-      "integrity": "sha1-4/o1e3c9phnybpXwSdBVxyeW+Gs=",
+      "version": "1.8.0",
+      "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.8.0.tgz",
+      "integrity": "sha1-6qM9bd16zo9/b+DJygRA5wZzix4=",
       "dev": true
     },
     "is-absolute-url": {
@@ -5542,10 +5546,13 @@
       "dev": true
     },
     "isbinaryfile": {
-      "version": "3.0.2",
-      "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-3.0.2.tgz",
-      "integrity": "sha1-Sj6XTsDLqQBNP8bN5yCeppNopiE=",
-      "dev": true
+      "version": "3.0.3",
+      "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-3.0.3.tgz",
+      "integrity": "sha512-8cJBL5tTd2OS0dM4jz07wQd5g0dCCqIhUxPIGtZfa5L6hWlvV5MHTITy/DBAsF+Oe2LS1X3krBUhNwaGUWpWxw==",
+      "dev": true,
+      "requires": {
+        "buffer-alloc": "^1.2.0"
+      }
     },
     "isexe": {
       "version": "2.0.0",
@@ -5838,9 +5845,9 @@
       "integrity": "sha512-Ubldcmxp5np52/ENotGxlLe6aGMvmF4R8S6tZjsP6Knsaxd/xp3Zrh50cG93lR6nPXyUFwzN3ZSOQI0wRJNdGg=="
     },
     "js-base64": {
-      "version": "2.4.5",
-      "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.4.5.tgz",
-      "integrity": "sha512-aUnNwqMOXw3yvErjMPSQu6qIIzUmT1e5KcU1OZxRDU1g/am6mzBvcrmLAYwzmB59BHPrh5/tKaiF4OPhqRWESQ==",
+      "version": "2.4.8",
+      "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.4.8.tgz",
+      "integrity": "sha512-hm2nYpDrwoO/OzBhdcqs/XGT6XjSuSSCVEpia+Kl2J6x4CYt5hISlVL/AYU1khoDXv0AQVgxtdJySb9gjAn56Q==",
       "dev": true
     },
     "js-tokens": {
@@ -6265,9 +6272,9 @@
       },
       "dependencies": {
         "clone": {
-          "version": "2.1.1",
-          "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.1.tgz",
-          "integrity": "sha1-0hfR6WERjjrJpLi7oyhVU79kfNs=",
+          "version": "2.1.2",
+          "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz",
+          "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=",
           "dev": true
         }
       }
@@ -6689,18 +6696,18 @@
       "dev": true
     },
     "mime-db": {
-      "version": "1.33.0",
-      "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz",
-      "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==",
+      "version": "1.35.0",
+      "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.35.0.tgz",
+      "integrity": "sha512-JWT/IcCTsB0Io3AhWUMjRqucrHSPsSf2xKLaRldJVULioggvkJvggZ3VXNNSRkCddE6D+BUI4HEIZIA2OjwIvg==",
       "dev": true
     },
     "mime-types": {
-      "version": "2.1.18",
-      "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz",
-      "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==",
+      "version": "2.1.19",
+      "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.19.tgz",
+      "integrity": "sha512-P1tKYHVSZ6uFo26mtnve4HQFE3koh1UWVkp8YUC+ESBHe945xWSoXuHHiGarDqcEZ+whpCDnlNw5LON0kLo+sw==",
       "dev": true,
       "requires": {
-        "mime-db": "~1.33.0"
+        "mime-db": "~1.35.0"
       }
     },
     "mimic-fn": {
@@ -7678,9 +7685,9 @@
       }
     },
     "popper.js": {
-      "version": "1.14.3",
-      "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.14.3.tgz",
-      "integrity": "sha1-FDj5jQRqz3tNeM1QK/QYrGTU8JU="
+      "version": "1.14.4",
+      "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.14.4.tgz",
+      "integrity": "sha1-juwdj/AqWjoVLdQ0FKFce3n9abY="
     },
     "portfinder": {
       "version": "1.0.13",
@@ -8490,13 +8497,13 @@
       }
     },
     "proxy-addr": {
-      "version": "2.0.3",
-      "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.3.tgz",
-      "integrity": "sha512-jQTChiCJteusULxjBp8+jftSQE5Obdl3k4cnmLA6WXtK6XFuWRnvVL7aCiBqaLPM8c4ph0S4tKna8XvmIwEnXQ==",
+      "version": "2.0.4",
+      "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.4.tgz",
+      "integrity": "sha512-5erio2h9jp5CHGwcybmxmVqHmnCBZeewlfJ0pex+UW7Qny7OOZXTtH56TGNyBizkgiOwhJtMKrVzDTeKcySZwA==",
       "dev": true,
       "requires": {
         "forwarded": "~0.1.2",
-        "ipaddr.js": "1.6.0"
+        "ipaddr.js": "1.8.0"
       }
     },
     "prr": {
@@ -10323,9 +10330,9 @@
       "dev": true
     },
     "time-stamp": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-2.0.0.tgz",
-      "integrity": "sha1-lcakRTDhW6jW9KPsuMOj+sRto1c=",
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-2.0.1.tgz",
+      "integrity": "sha512-KUnkvOWC3C+pEbwE/0u3CcmNpGCDqkYGYZOphe1QFxApYQkJ5g195TDBjgZch/zG6chU1NcabLwnM7BCpWAzTQ==",
       "dev": true
     },
     "timed-out": {
@@ -10655,15 +10662,21 @@
       "dev": true
     },
     "uglify-js": {
-      "version": "3.4.4",
-      "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.4.tgz",
-      "integrity": "sha512-RiB1kNcC9RMyqwRrjXC+EjgLoXULoDnCaOnEDzUCHkBN0bHwmtF5rzDMiDWU29gu0kXCRRWwtcTAVFWRECmU2Q==",
+      "version": "3.4.6",
+      "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.6.tgz",
+      "integrity": "sha512-O1D7L6WcOzS1qW2ehopEm4cWm5yA6bQBozlks8jO8ODxYCy4zv+bR/la4Lwp01tpkYGNonnpXvUpYtrvSu8Yzg==",
       "dev": true,
       "requires": {
         "commander": "~2.16.0",
         "source-map": "~0.6.1"
       },
       "dependencies": {
+        "commander": {
+          "version": "2.16.0",
+          "resolved": "https://registry.npmjs.org/commander/-/commander-2.16.0.tgz",
+          "integrity": "sha512-sVXqklSaotK9at437sFlFpyOcJonxe0yST/AG9DkQKUdIE6IqGIMv4SfAQSKaJbSdVEJYItASCrBiVQHq1HQew==",
+          "dev": true
+        },
         "source-map": {
           "version": "0.6.1",
           "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
@@ -10878,9 +10891,9 @@
       }
     },
     "url-parse": {
-      "version": "1.4.1",
-      "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.4.1.tgz",
-      "integrity": "sha512-x95Td74QcvICAA0+qERaVkRpTGKyBHHYdwL2LXZm5t/gBtCB9KQSO/0zQgSTYEV1p0WcvSg79TLNPSvd5IDJMQ==",
+      "version": "1.4.3",
+      "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.4.3.tgz",
+      "integrity": "sha512-rh+KuAW36YKo0vClhQzLLveoj8FwPJNu65xLb7Mrt+eZht0IPT0IXgSv8gcMegZ6NvjJUALf6Mf25POlMwD1Fw==",
       "dev": true,
       "requires": {
         "querystringify": "^2.0.0",
@@ -10897,13 +10910,10 @@
       }
     },
     "use": {
-      "version": "3.1.0",
-      "resolved": "https://registry.npmjs.org/use/-/use-3.1.0.tgz",
-      "integrity": "sha512-6UJEQM/L+mzC3ZJNM56Q4DFGLX/evKGRg15UJHGB9X5j5Z3AFbgZvjUh2yq/UJUY4U5dh7Fal++XbNg1uzpRAw==",
-      "dev": true,
-      "requires": {
-        "kind-of": "^6.0.2"
-      }
+      "version": "3.1.1",
+      "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz",
+      "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==",
+      "dev": true
     },
     "user-home": {
       "version": "1.1.1",
@@ -10964,9 +10974,9 @@
       }
     },
     "validate-npm-package-license": {
-      "version": "3.0.3",
-      "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.3.tgz",
-      "integrity": "sha512-63ZOUnL4SIXj4L0NixR3L1lcjO38crAbgrTpl28t8jjrfuiOBL5Iygm+60qPs/KsZGzPNg6Smnc/oY16QTjF0g==",
+      "version": "3.0.4",
+      "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz",
+      "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==",
       "dev": true,
       "requires": {
         "spdx-correct": "^3.0.0",
diff --git a/Frontend Angular 4/package.json b/Frontend Angular 4/package.json
index e9814d97a29a9be0a3a5ce9f7785cb519af3f3a0..b11c5d38561a3c9c626ba7bbf8e0c6cd25a8dbe0 100755
--- a/Frontend Angular 4/package.json	
+++ b/Frontend Angular 4/package.json	
@@ -24,7 +24,8 @@
     "core-js": "^2.4.1",
     "d3": "^4.12.2",
     "font-awesome": "^4.7.0",
-    "function-plot": "git+https://github.com/diego-rey/function-plot.git#feature/integration-domain-shape",
+    "function-plot": "git://github.com/diego-rey/function-plot.git#feature/integration-domain-shape",
+    "graph3D": "git://github.com/ifagian/graph3D#master",
     "ionicons": "^3.0.0",
     "jq-console": "^2.13.2",
     "jquery": "^3.2.1",
@@ -34,8 +35,7 @@
     "ng2-slider-component": "^1.0.9",
     "rxjs": "^5.1.0",
     "tippy.js": "^1.2.0",
-    "zone.js": "^0.8.4",
-    "graph3D": "git://github.com/ifagian/graph3D#master"
+    "zone.js": "^0.8.4"
   },
   "devDependencies": {
     "@angular/cli": "1.2.6",
diff --git a/Frontend Angular 4/src/app/shared/config.ts b/Frontend Angular 4/src/app/shared/config.ts
index 970a385ea5a95fdc0c8f623e08d4d760b19996a0..839412fd6adb76fb0a908e0dcb92597ae55ec5ad 100755
--- a/Frontend Angular 4/src/app/shared/config.ts	
+++ b/Frontend Angular 4/src/app/shared/config.ts	
@@ -4,8 +4,8 @@
 //export const SERVER = 'http://localhost:9090';
 //export const GHCI_URL = 'ws://localhost:9090/endpoint';
 
-//export const SERVER = 'http://localhost:8080';
-//export const GHCI_URL = 'ws://localhost:8080/endpoint';
+// export const SERVER = 'http://localhost:9090';
+// export const GHCI_URL = 'ws://localhost:9090/endpoint';
 
 //Configuracion dinamica pensando en servidor con ip dinamica
 
@@ -13,6 +13,7 @@
 // export const GHCI_URL = window.location.protocol == 'http:'?  'ws://'+window.location.host+'/endpoint': 'wss://'+window.location.host+'/endpoint';
 
 // Google cloud platform
+
 export const SERVER = 'http://35.199.110.129:9090';
 export const GHCI_URL = 'ws://35.199.110.129:9090/endpoint';
 
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun
index d9b05c27393b87e376a7ff90c214f571a8f615e3..fe948ef5296c5e72d63e18c556380b6557a11d1b 100755
Binary files a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/InternationalizationHelper.dyn_hi b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/InternationalizationHelper.dyn_hi
new file mode 100644
index 0000000000000000000000000000000000000000..05930f629ac22746d8801079086f69739625d02f
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/InternationalizationHelper.dyn_hi differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/InternationalizationHelper.dyn_o b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/InternationalizationHelper.dyn_o
new file mode 100644
index 0000000000000000000000000000000000000000..6131a2caf9b5adcfe3a7423c1e71d2ef242012fc
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/InternationalizationHelper.dyn_o differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/InternationalizationHelper.hi b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/InternationalizationHelper.hi
new file mode 100644
index 0000000000000000000000000000000000000000..dbeebbe553b16c186e5e2a8c145f107db28a45a7
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/InternationalizationHelper.hi differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/InternationalizationHelper.o b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/InternationalizationHelper.o
new file mode 100644
index 0000000000000000000000000000000000000000..6944c58ef5024296888bc1be4afa4612239fac0f
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/InternationalizationHelper.o differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/Main.dyn_hi b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/Main.dyn_hi
new file mode 100644
index 0000000000000000000000000000000000000000..8704b2c20b82477805eeb2bf7df4983670325a69
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/Main.dyn_hi differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/Main.dyn_o b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/Main.dyn_o
new file mode 100644
index 0000000000000000000000000000000000000000..025b003e352209497c7bd80d8f223c72ad186693
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/Main.dyn_o differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/Main.hi b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/Main.hi
new file mode 100644
index 0000000000000000000000000000000000000000..33735cac9150cd1f8608ebdb2b9f9b17e61cb4c6
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/Main.hi differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/Main.o b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/Main.o
new file mode 100644
index 0000000000000000000000000000000000000000..8354efae3d92eab25c8a84e375df077b0e41bbc5
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/Main.o differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Core.dyn_hi b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Core.dyn_hi
new file mode 100644
index 0000000000000000000000000000000000000000..1d66253b9d52fb5126d5c7a202b2f9949dfa97c3
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Core.dyn_hi differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Core.dyn_o b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Core.dyn_o
new file mode 100644
index 0000000000000000000000000000000000000000..18ca55670fbe647bca8c02913513552c0f1c36c8
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Core.dyn_o differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Core.hi b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Core.hi
new file mode 100644
index 0000000000000000000000000000000000000000..723a98713e4ef0f9484844095ba31f2b2edac3cc
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Core.hi differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Core.o b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Core.o
new file mode 100644
index 0000000000000000000000000000000000000000..c41dcf908c1091ee963e28106d04e5d8e4219e96
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Core.o differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/CstProp.dyn_hi b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/CstProp.dyn_hi
new file mode 100644
index 0000000000000000000000000000000000000000..4e6fbec498735ed5a150748846f2c1ca9e24938c
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/CstProp.dyn_hi differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/CstProp.dyn_o b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/CstProp.dyn_o
new file mode 100644
index 0000000000000000000000000000000000000000..8610054d46f17c3c7f1616c897351bbf38cd729d
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/CstProp.dyn_o differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/CstProp.hi b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/CstProp.hi
new file mode 100644
index 0000000000000000000000000000000000000000..e7e1f7b6182f99a6d12cc16a9cb7de933d0c2f71
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/CstProp.hi differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/CstProp.o b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/CstProp.o
new file mode 100644
index 0000000000000000000000000000000000000000..f0824b6781cd25c1b8f48636dba83a0cfeed8d1e
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/CstProp.o differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Eval.dyn_hi b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Eval.dyn_hi
new file mode 100644
index 0000000000000000000000000000000000000000..1a7cff7eaecd1cb09a25f21751f0c98bf6b0b224
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Eval.dyn_hi differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Eval.dyn_o b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Eval.dyn_o
new file mode 100644
index 0000000000000000000000000000000000000000..321d9fff4739a4c92143bdfb5813ed1c03156ef2
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Eval.dyn_o differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Eval.hi b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Eval.hi
new file mode 100644
index 0000000000000000000000000000000000000000..9eae647520237be3ca00c87b44f54f0a2a0884b3
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Eval.hi differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Eval.o b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Eval.o
new file mode 100644
index 0000000000000000000000000000000000000000..f8da35d436693dcee3be169ec08dc00f9519afbb
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Eval.o differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Figures.dyn_hi b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Figures.dyn_hi
new file mode 100644
index 0000000000000000000000000000000000000000..11e343483ddc264588c5ffaac7c63ac4c5dd5799
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Figures.dyn_hi differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Figures.dyn_o b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Figures.dyn_o
new file mode 100644
index 0000000000000000000000000000000000000000..8ecc8276ecd72b6a7187dd589796e99d1c177f8f
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Figures.dyn_o differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Figures.hi b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Figures.hi
new file mode 100644
index 0000000000000000000000000000000000000000..fe7dfcda7ddccda27e2af3378a7d6af16f91b7da
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Figures.hi differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Figures.o b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Figures.o
new file mode 100644
index 0000000000000000000000000000000000000000..c1780ffe5446f5898c45945acd9c3f6cb05cff64
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Figures.o differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Parser.dyn_hi b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Parser.dyn_hi
new file mode 100644
index 0000000000000000000000000000000000000000..25c3b785e6f7a050495db76c4a7e8db3ac8c3c4a
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Parser.dyn_hi differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Parser.dyn_o b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Parser.dyn_o
new file mode 100644
index 0000000000000000000000000000000000000000..60ef6c65ac29d9ce2604c5f1197a596669bcd066
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Parser.dyn_o differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Parser.hi b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Parser.hi
new file mode 100644
index 0000000000000000000000000000000000000000..058770c74cc597fbeac8b63c346591e5ed303d91
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Parser.hi differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Parser.o b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Parser.o
new file mode 100644
index 0000000000000000000000000000000000000000..82210c3bf0027ef32c7d12a7c65481076f0b1762
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Parser.o differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/RenderFun.dyn_hi b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/RenderFun.dyn_hi
new file mode 100644
index 0000000000000000000000000000000000000000..e589466cc4d0bd5b6a397f5f752d38266aeca7fd
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/RenderFun.dyn_hi differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/RenderFun.dyn_o b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/RenderFun.dyn_o
new file mode 100644
index 0000000000000000000000000000000000000000..4a2034762511d38a7450570a0c95877d2cfb763a
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/RenderFun.dyn_o differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/RenderFun.hi b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/RenderFun.hi
new file mode 100644
index 0000000000000000000000000000000000000000..6dc007d0a3d782219135784f99edcf25f767c48c
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/RenderFun.hi differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/RenderFun.o b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/RenderFun.o
new file mode 100644
index 0000000000000000000000000000000000000000..abef0c5c1d6f7c12508171939fcf36f383c1df48
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/RenderFun.o differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/ReservedNames.dyn_hi b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/ReservedNames.dyn_hi
new file mode 100644
index 0000000000000000000000000000000000000000..68515ff37568a6660c99e99084be01264e118247
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/ReservedNames.dyn_hi differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/ReservedNames.dyn_o b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/ReservedNames.dyn_o
new file mode 100644
index 0000000000000000000000000000000000000000..92f436fbacd746a467a8b7e06df970814e8354db
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/ReservedNames.dyn_o differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/ReservedNames.hi b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/ReservedNames.hi
new file mode 100644
index 0000000000000000000000000000000000000000..f6e0591c4b1603bb20f54328925a91ec64f6588c
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/ReservedNames.hi differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/ReservedNames.o b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/ReservedNames.o
new file mode 100644
index 0000000000000000000000000000000000000000..8636390c5043cd7c7ca791c1a9f24ca151176328
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/ReservedNames.o differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/TypeCheck.dyn_hi b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/TypeCheck.dyn_hi
new file mode 100644
index 0000000000000000000000000000000000000000..f287f43debdd8777be29a5342345295b6db9e341
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/TypeCheck.dyn_hi differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/TypeCheck.dyn_o b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/TypeCheck.dyn_o
new file mode 100644
index 0000000000000000000000000000000000000000..d47fe9e5a697868866a9fc59d49149fe4c8cbb5c
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/TypeCheck.dyn_o differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/TypeCheck.hi b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/TypeCheck.hi
new file mode 100644
index 0000000000000000000000000000000000000000..c5290720f0673db7dae1c00eba5d784a11cfae8b
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/TypeCheck.hi differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/TypeCheck.o b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/TypeCheck.o
new file mode 100644
index 0000000000000000000000000000000000000000..d1cdbbc777168618a0b6cfa136d3181d78b3ae8a
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/TypeCheck.o differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Warning.dyn_hi b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Warning.dyn_hi
new file mode 100644
index 0000000000000000000000000000000000000000..e772d72192fc62496e423f2cf8adfd393cf5a95c
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Warning.dyn_hi differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Warning.dyn_o b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Warning.dyn_o
new file mode 100644
index 0000000000000000000000000000000000000000..f6ff5acdd1214594789f994a00eddca21a7eebfe
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Warning.dyn_o differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Warning.hi b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Warning.hi
new file mode 100644
index 0000000000000000000000000000000000000000..1875d6dde47ccdb7d2fb37d31b3ea51287cf3fcf
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Warning.hi differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Warning.o b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Warning.o
new file mode 100644
index 0000000000000000000000000000000000000000..802167f3d3b3efaae9c96214d8aa658812c66124
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/MateFun/Warning.o differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/Text/I18N/GetText.dyn_hi b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/Text/I18N/GetText.dyn_hi
new file mode 100644
index 0000000000000000000000000000000000000000..fca39a12cdb922cb6e4997eff3e1fc6ed696b599
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/Text/I18N/GetText.dyn_hi differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/Text/I18N/GetText.dyn_o b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/Text/I18N/GetText.dyn_o
new file mode 100644
index 0000000000000000000000000000000000000000..3cf235a0e29edea393bad9f3df3aa2df2355f9ab
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/Text/I18N/GetText.dyn_o differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/Text/I18N/GetText.hi b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/Text/I18N/GetText.hi
new file mode 100644
index 0000000000000000000000000000000000000000..3a8a287fc59b5adc64380a1cd885307f2d2dd8a6
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/Text/I18N/GetText.hi differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/Text/I18N/GetText.o b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/Text/I18N/GetText.o
new file mode 100644
index 0000000000000000000000000000000000000000..ac5bc727e5ca94ad755f26c3ea849ee23558838c
Binary files /dev/null and b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFun-tmp/Text/I18N/GetText.o differ
diff --git a/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFunTmp/salida.html b/Servidor JEE/src/main/java/edu/proygrado/binarios/MateFunTmp/salida.html
deleted file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000
diff --git a/Servidor JEE/src/main/java/edu/proygrado/ejb/CommandsBean.java b/Servidor JEE/src/main/java/edu/proygrado/ejb/CommandsBean.java
index 6f01fb8a3789c5b2c75dbee2c633e401c94b891c..92a74879632e001a9e62ec317971c9f29f066c63 100644
--- a/Servidor JEE/src/main/java/edu/proygrado/ejb/CommandsBean.java	
+++ b/Servidor JEE/src/main/java/edu/proygrado/ejb/CommandsBean.java	
@@ -13,7 +13,7 @@ import java.util.concurrent.CountDownLatch;
 import java.util.logging.Level;
 import java.util.logging.Logger;
 import java.util.regex.Pattern;
-
+import java.util.Map;
 import javax.annotation.PreDestroy;
 import javax.ejb.Stateful;
 import javax.inject.Inject;
@@ -232,6 +232,11 @@ public class CommandsBean {
 			}
 
 			this.latch = new CountDownLatch(2);
+			
+			
+			Map<String, String> envs = this.builder.environment();
+			envs.put("LANGUAGE", "en");
+		
 			this.proceso = this.builder.start();
 			this.p_stdin = new BufferedWriter(new OutputStreamWriter(proceso.getOutputStream()));
 			if (this.standardConsoleThread != null && this.standardConsoleThread.isAlive()) {
@@ -298,7 +303,8 @@ public class CommandsBean {
 					try {
 						Scanner s = new Scanner(proceso.getInputStream());
 						latch.countDown();
-						Pattern p = Pattern.compile("OUTFigura:(Figura:)*\\[\\]");
+						Pattern p = Pattern.compile("OUTFigure:(Figure:)*\\[\\]");
+						Pattern p3d = Pattern.compile("OUT3D Figure:(3D Figure:)*\\[\\]");
 						ArrayList<String> animacion = new ArrayList<>();
 						while (s.hasNextLine()) {
 							String result = s.nextLine();
@@ -314,16 +320,26 @@ public class CommandsBean {
 								nombrePrompt = "";
 							}
 							JsonObject respuestaJson = null;
-							if (result.contains("CANVAS:")) {
-								int index = result.indexOf("CANVAS:");
-								result = result.substring(index + 7);
+							if (result.contains("FIG:")) {
+								int index = result.indexOf("FIG:");
+								result = result.substring(index + 4);
+								animacion.add(result);
+								respuestaJson = null;
+							} else if (result.contains("FIG3D:")) {
+								int index = result.indexOf("FIG3D:");
+								result = result.substring(index + 6);
 								animacion.add(result);
 								respuestaJson = null;
-							} else if (result.equals("OUTFigura")) {
+							} else if (result.equals("OUTFigure")) {
 
 								respuestaJson = Json.createObjectBuilder().add("tipo", "canvas")
 										.add("resultado", animacion.get(0)).build();
 								animacion.clear();
+							} else if (result.equals("OUT3D Figure")) {
+
+								respuestaJson = Json.createObjectBuilder().add("tipo", "canvas3D")
+										.add("resultado", animacion.get(0)).build();
+								animacion.clear();
 
 							} else if (p.matcher(result).matches()) {
 								JsonArrayBuilder animJson = Json.createArrayBuilder();
@@ -333,12 +349,23 @@ public class CommandsBean {
 								respuestaJson = Json.createObjectBuilder().add("tipo", "animacion")
 										.add("resultado", animJson).build();
 
+								animacion.clear();
+							} else if (p3d.matcher(result).matches()) {
+								JsonArrayBuilder animJson = Json.createArrayBuilder();
+								for (String canvas : animacion) {
+									animJson.add(canvas);
+								}
+								respuestaJson = Json.createObjectBuilder().add("tipo", "animacion3D")
+										.add("resultado", animJson).build();
+
 								animacion.clear();
 							} else if (result.contains("GRAPH:")) {
 								int index = result.indexOf("GRAPH:");
 								result = result.substring(index + 6);
 								respuestaJson = Json.createObjectBuilder().add("tipo", "graph").add("resultado", result)
 										.build();
+							} else if (result.contains("OUTGraph")) {
+								
 							} else {
 								respuestaJson = Json.createObjectBuilder().add("tipo", "salida")
 										.add("resultado", result).build();
diff --git a/Servidor JEE/src/main/resources/META-INF/persistence.xml b/Servidor JEE/src/main/resources/META-INF/persistence.xml
index 79c49c23ed6b00775d68c701236b61f4087696b4..a4db38c81d6b7c31f5a40d8452e0e8728689db67 100644
--- a/Servidor JEE/src/main/resources/META-INF/persistence.xml	
+++ b/Servidor JEE/src/main/resources/META-INF/persistence.xml	
@@ -24,8 +24,7 @@
 <!-- 	</persistence-unit> -->
 
 	<persistence-unit name="matefunDS" transaction-type="JTA">
-	<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
-	<jta-data-source>jdbc/azureDSjta</jta-data-source>
+	<jta-data-source>java:/matefun</jta-data-source>
 	<class>edu.proygrado.modelo.Alumno</class>
 	<class>edu.proygrado.modelo.Archivo</class>
 	<class>edu.proygrado.modelo.Configuracion</class>
@@ -39,7 +38,6 @@
 	<class>edu.proygrado.modelo.Sesion</class>
 	<properties>
 	<property name="javax.persistence.schema-generation.database.action" value="none" />
-	<property name="hibernate.transaction.jta.platform" value="org.hibernate.engine.transaction.jta.platform.internal.WebSphereExtendedJtaPlatform"/>
 	</properties>
 	</persistence-unit>