diff --git a/node_modules/is-plain-obj/index.js b/node_modules/is-plain-obj/index.js
new file mode 100644
index 0000000..0d1ba9e
--- /dev/null
+++ b/node_modules/is-plain-obj/index.js
@@ -0,0 +1,7 @@
+'use strict';
+var toString = Object.prototype.toString;
+
+module.exports = function (x) {
+	var prototype;
+	return toString.call(x) === '[object Object]' && (prototype = Object.getPrototypeOf(x), prototype === null || prototype === Object.getPrototypeOf({}));
+};
diff --git a/node_modules/is-plain-obj/license b/node_modules/is-plain-obj/license
new file mode 100644
index 0000000..654d0bf
--- /dev/null
+++ b/node_modules/is-plain-obj/license
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
+
+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:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+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.
diff --git a/node_modules/is-plain-obj/package.json b/node_modules/is-plain-obj/package.json
new file mode 100644
index 0000000..9ac78cf
--- /dev/null
+++ b/node_modules/is-plain-obj/package.json
@@ -0,0 +1,70 @@
+{
+  "_from": "is-plain-obj@^1.0.0",
+  "_id": "is-plain-obj@1.1.0",
+  "_inBundle": false,
+  "_integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=",
+  "_location": "/is-plain-obj",
+  "_phantomChildren": {},
+  "_requested": {
+    "type": "range",
+    "registry": true,
+    "raw": "is-plain-obj@^1.0.0",
+    "name": "is-plain-obj",
+    "escapedName": "is-plain-obj",
+    "rawSpec": "^1.0.0",
+    "saveSpec": null,
+    "fetchSpec": "^1.0.0"
+  },
+  "_requiredBy": [
+    "/got",
+    "/normalize-url/sort-keys",
+    "/sort-keys"
+  ],
+  "_resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz",
+  "_shasum": "71a50c8429dfca773c92a390a4a03b39fcd51d3e",
+  "_spec": "is-plain-obj@^1.0.0",
+  "_where": "C:\\Users\\marcr\\Desktop\\KorAp\\Git\\Kalamar\\node_modules\\sort-keys",
+  "author": {
+    "name": "Sindre Sorhus",
+    "email": "sindresorhus@gmail.com",
+    "url": "sindresorhus.com"
+  },
+  "bugs": {
+    "url": "https://github.com/sindresorhus/is-plain-obj/issues"
+  },
+  "bundleDependencies": false,
+  "deprecated": false,
+  "description": "Check if a value is a plain object",
+  "devDependencies": {
+    "ava": "0.0.4"
+  },
+  "engines": {
+    "node": ">=0.10.0"
+  },
+  "files": [
+    "index.js"
+  ],
+  "homepage": "https://github.com/sindresorhus/is-plain-obj#readme",
+  "keywords": [
+    "obj",
+    "object",
+    "is",
+    "check",
+    "test",
+    "type",
+    "plain",
+    "vanilla",
+    "pure",
+    "simple"
+  ],
+  "license": "MIT",
+  "name": "is-plain-obj",
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/sindresorhus/is-plain-obj.git"
+  },
+  "scripts": {
+    "test": "node test.js"
+  },
+  "version": "1.1.0"
+}
diff --git a/node_modules/is-plain-obj/readme.md b/node_modules/is-plain-obj/readme.md
new file mode 100644
index 0000000..269e56a
--- /dev/null
+++ b/node_modules/is-plain-obj/readme.md
@@ -0,0 +1,35 @@
+# is-plain-obj [![Build Status](https://travis-ci.org/sindresorhus/is-plain-obj.svg?branch=master)](https://travis-ci.org/sindresorhus/is-plain-obj)
+
+> Check if a value is a plain object
+
+An object is plain if it's created by either `{}`, `new Object()` or `Object.create(null)`.
+
+
+## Install
+
+```
+$ npm install --save is-plain-obj
+```
+
+
+## Usage
+
+```js
+var isPlainObj = require('is-plain-obj');
+
+isPlainObj({foo: 'bar'});
+//=> true
+
+isPlainObj([1, 2, 3]);
+//=> false
+```
+
+
+## Related
+
+- [is-obj](https://github.com/sindresorhus/is-obj) - Check if a value is an object
+
+
+## License
+
+MIT © [Sindre Sorhus](http://sindresorhus.com)
