diff --git a/config.toml b/config.toml
index d823812c..e5e7513b 100644
--- a/config.toml
+++ b/config.toml
@@ -9,6 +9,7 @@
SeedRatioStop = 1.50 #automatically stops the torrent after it reaches this seeding ratio
#Relative or absolute path accepted, the server will convert any relative path to an absolute path.
DefaultMoveFolder = 'downloaded' #default path that a finished torrent is symlinked to after completion. Torrents added via RSS will default here
+ TorrentWatchFolder = 'torrentUpload' #folder path that is watched for .torrent files and adds them automatically every 5 minutes
[notifications]
diff --git a/engine/cronJobs.go b/engine/cronJobs.go
index df87ebfb..ce4541cb 100644
--- a/engine/cronJobs.go
+++ b/engine/cronJobs.go
@@ -1,6 +1,10 @@
package engine
import (
+ "io/ioutil"
+ "os"
+ "path/filepath"
+
"github.com/anacrolix/torrent"
"github.com/asdine/storm"
Storage "github.com/deranjer/goTorrent/storage"
@@ -19,8 +23,37 @@ func InitializeCronEngine() *cron.Cron {
return c
}
+//CheckTorrentWatchFolder adds torrents from a watch folder //TODO see if you can use filepath.Abs instead of changing directory
+func CheckTorrentWatchFolder(c *cron.Cron, db *storm.DB, tclient *torrent.Client, torrentLocalStorage Storage.TorrentLocal, config FullClientSettings) {
+ c.AddFunc("@every 5m", func() {
+ Logger.WithFields(logrus.Fields{"Watch Folder": config.TorrentWatchFolder}).Info("Running the watch folder cron job")
+ torrentFiles, err := ioutil.ReadDir(config.TorrentWatchFolder)
+ if err != nil {
+ Logger.WithFields(logrus.Fields{"Folder": config.TorrentWatchFolder, "Error": err}).Error("Unable to read from the torrent upload folder")
+ return
+ }
+ for _, file := range torrentFiles {
+ if filepath.Ext(file.Name()) != ".torrent" {
+ Logger.WithFields(logrus.Fields{"File": file.Name(), "error": err}).Error("Not a torrent file..")
+ } else {
+ fullFilePath := filepath.Join(config.TorrentWatchFolder, file.Name())
+ clientTorrent, err := tclient.AddTorrentFromFile(fullFilePath)
+ if err != nil {
+ Logger.WithFields(logrus.Fields{"err": err, "Torrent": file.Name()}).Warn("Unable to add torrent to torrent client!")
+ break //break out of the loop entirely for this message since we hit an error
+ }
+ fullNewFilePath := filepath.Join(config.TFileUploadFolder, file.Name())
+ StartTorrent(clientTorrent, torrentLocalStorage, db, config.TorrentConfig.DataDir, "file", file.Name(), config.DefaultMoveFolder)
+ CopyFile(fullFilePath, fullNewFilePath)
+ os.Remove(fullFilePath) //delete the torrent after adding it and copying it over
+ Logger.WithFields(logrus.Fields{"Source Folder": config.TorrentWatchFolder, "Destination Folder": config.TFileUploadFolder, "Torrent": file.Name()}).Info("Added torrent from watch folder, and moved torrent file")
+ }
+ }
+ })
+}
+
//RefreshRSSCron refreshes all of the RSS feeds on an hourly basis
-func RefreshRSSCron(c *cron.Cron, db *storm.DB, tclient *torrent.Client, torrentLocalStorage Storage.TorrentLocal, dataDir string) {
+func RefreshRSSCron(c *cron.Cron, db *storm.DB, tclient *torrent.Client, torrentLocalStorage Storage.TorrentLocal, config FullClientSettings) {
c.AddFunc("@hourly", func() {
torrentHashHistory := Storage.FetchHashHistory(db)
RSSFeedStore := Storage.FetchRSSFeeds(db)
@@ -48,7 +81,7 @@ func RefreshRSSCron(c *cron.Cron, db *storm.DB, tclient *torrent.Client, torrent
Logger.WithFields(logrus.Fields{"err": err, "Torrent": RSSTorrent.Title}).Warn("Unable to add torrent to torrent client!")
break //break out of the loop entirely for this message since we hit an error
}
- StartTorrent(clientTorrent, torrentLocalStorage, db, dataDir, "magnet", "", dataDir) //TODO let user specify torrent default storage location and let change on fly
+ StartTorrent(clientTorrent, torrentLocalStorage, db, config.TorrentConfig.DataDir, "magnet", "", config.DefaultMoveFolder) //TODO let user specify torrent default storage location and let change on fly
singleFeed.Torrents = append(singleFeed.Torrents, singleRSSTorrent)
}
diff --git a/engine/engineMaths.go b/engine/engineHelpers.go
similarity index 84%
rename from engine/engineMaths.go
rename to engine/engineHelpers.go
index 3dc0c2c2..58375cd0 100644
--- a/engine/engineMaths.go
+++ b/engine/engineHelpers.go
@@ -2,10 +2,13 @@ package engine
import (
"fmt"
+ "io"
+ "os"
"time"
"github.com/anacrolix/torrent"
"github.com/deranjer/goTorrent/storage"
+ "github.com/sirupsen/logrus"
)
func secondsToMinutes(inSeconds int64) string {
@@ -35,6 +38,25 @@ func HumanizeBytes(bytes float32) string {
return pBytes
}
+//CopyFile takes a source file string and a destination file string and copies the file
+func CopyFile(srcFile string, destFile string) {
+ fileContents, err := os.Open(srcFile)
+ defer fileContents.Close()
+ if err != nil {
+ Logger.WithFields(logrus.Fields{"File": srcFile, "Error": err}).Error("Cannot open source file")
+ }
+ outfileContents, err := os.Open(destFile)
+ defer outfileContents.Close()
+ if err != nil {
+ Logger.WithFields(logrus.Fields{"File": destFile, "Error": err}).Error("Cannot open destination file")
+ }
+ _, err = io.Copy(outfileContents, fileContents)
+ if err != nil {
+ Logger.WithFields(logrus.Fields{"Source File": srcFile, "Destination File": destFile, "Error": err}).Error("Cannot write contents to destination file")
+ }
+
+}
+
//CalculateTorrentSpeed is used to calculate the torrent upload and download speed over time c is current clientdb, oc is last client db to calculate speed over time
func CalculateTorrentSpeed(t *torrent.Torrent, c *ClientDB, oc ClientDB) {
now := time.Now()
diff --git a/engine/settings.go b/engine/settings.go
index e2bab239..f9b92486 100644
--- a/engine/settings.go
+++ b/engine/settings.go
@@ -13,15 +13,16 @@ import (
//FullClientSettings contains all of the settings for our entire application
type FullClientSettings struct {
- LoggingLevel logrus.Level
- LoggingOutput string
- HTTPAddr string
- Version int
- TorrentConfig torrent.Config
- TFileUploadFolder string
- SeedRatioStop float64
- PushBulletToken string
- DefaultMoveFolder string
+ LoggingLevel logrus.Level
+ LoggingOutput string
+ HTTPAddr string
+ Version int
+ TorrentConfig torrent.Config
+ TFileUploadFolder string
+ SeedRatioStop float64
+ PushBulletToken string
+ DefaultMoveFolder string
+ TorrentWatchFolder string
}
//default is called if there is a parsing error
@@ -71,6 +72,11 @@ func FullClientSettingsNew() FullClientSettings {
if err != nil {
fmt.Println("Failed creating absolute path for defaultMoveFolder", err)
}
+ torrentWatchFolder := filepath.ToSlash(viper.GetString("serverConfig.TorrentWatchFolder"))
+ torrentWatchFolderAbs, err := filepath.Abs(torrentWatchFolder)
+ if err != nil {
+ fmt.Println("Failed creating absolute path for torrentWatchFolderAbs", err)
+ }
dataDir := filepath.ToSlash(viper.GetString("torrentClientConfig.DownloadDir")) //Converting the string literal into a filepath
dataDirAbs, err := filepath.Abs(dataDir) //Converting to an absolute file path
@@ -149,14 +155,15 @@ func FullClientSettingsNew() FullClientSettings {
}
Config := FullClientSettings{
- LoggingLevel: logLevel,
- LoggingOutput: logOutput,
- SeedRatioStop: seedRatioStop,
- HTTPAddr: httpAddr,
- TorrentConfig: tConfig,
- TFileUploadFolder: "uploadedTorrents",
- PushBulletToken: pushBulletToken,
- DefaultMoveFolder: defaultMoveFolderAbs,
+ LoggingLevel: logLevel,
+ LoggingOutput: logOutput,
+ SeedRatioStop: seedRatioStop,
+ HTTPAddr: httpAddr,
+ TorrentConfig: tConfig,
+ TFileUploadFolder: "uploadedTorrents",
+ PushBulletToken: pushBulletToken,
+ DefaultMoveFolder: defaultMoveFolderAbs,
+ TorrentWatchFolder: torrentWatchFolderAbs,
}
return Config
diff --git a/goTorrentWebUI/node_modules/attr-accept/package.json b/goTorrentWebUI/node_modules/attr-accept/package.json
index bcbbeeab..fefb7662 100644
--- a/goTorrentWebUI/node_modules/attr-accept/package.json
+++ b/goTorrentWebUI/node_modules/attr-accept/package.json
@@ -22,8 +22,7 @@
"fetchSpec": "1.1.0"
},
"_requiredBy": [
- "/",
- "/react-dropzone"
+ "/"
],
"_resolved": "https://registry.npmjs.org/attr-accept/-/attr-accept-1.1.0.tgz",
"_spec": "1.1.0",
diff --git a/goTorrentWebUI/node_modules/react-toastify/.eslintignore b/goTorrentWebUI/node_modules/react-toastify/.eslintignore
new file mode 100644
index 00000000..6de001d8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/.eslintignore
@@ -0,0 +1 @@
+webpack.config.js
diff --git a/goTorrentWebUI/node_modules/react-toastify/.travis.yml b/goTorrentWebUI/node_modules/react-toastify/.travis.yml
new file mode 100644
index 00000000..2648d71e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/.travis.yml
@@ -0,0 +1,5 @@
+language: node_js
+node_js:
+ - "8"
+script:
+ - yarn lint && yarn test:coverage
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/LICENSE b/goTorrentWebUI/node_modules/react-toastify/LICENSE
new file mode 100644
index 00000000..8561b316
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/LICENSE
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2017 Fadi Khadra
+
+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.
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/README.md b/goTorrentWebUI/node_modules/react-toastify/README.md
new file mode 100644
index 00000000..3933aaf5
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/README.md
@@ -0,0 +1,1093 @@
+# React Toastify [](https://travis-ci.org/fkhadra/react-toastify) []() []() []() [](https://coveralls.io/github/fkhadra/react-toastify?branch=master)
+
+
+
+
+🎉 React-Toastify allow you to add notification to your app with ease. No bullshit !
+
+* [Demo](#demo)
+* [Installation](#installation)
+* [Features](#features)
+* [Migrate from v2 to v3](#migrate-from-v2-to-v3)
+* [Usage](#usage)
+ + [One component to rule them all](#one-component-to-rule-them-all)
+ + [Positioning toast](#positioning-toast)
+ + [Set autoclose delay or disable it](#set-autoclose-delay-or-disable-it)
+ + [Render a component](#render-a-component)
+ + [Remove a toast programmatically](#remove-a-toast-programmatically)
+ + [Prevent duplicate](#prevent-duplicate)
+ + [Update a toast](#update-a-toast)
+ - [Basic example](#basic-example)
+ - [Update the content](#update-the-content)
+ - [ :sparkles: Apply a transition](#apply-a-transition)
+ - [Reset option or inherit from ToastContainer](#reset-option-or-inherit-from-ToastContainer)
+ + [Define hook](#define-hook)
+ + [Set a custom close button or simply remove it](#set-a-custom-close-button-or-simply-remove-it)
+ - [Override the default one](#override-the-default-one)
+ - [Define it per toast](#define-it-per-toast)
+ - [Remove it](#remove-it)
+ + [Add an undo option to a toast](#add-an-undo-option-to-a-toast)
+ + [ :sparkles: Define a custom enter and exit transition](#define-a-custom-enter-and-exit-transition)
+ + [Le style](#le-style)
+ - [Replace default style](#replace-default-style)
+ - [Style with className](#style-with-classname)
+ + [Mobile](#mobile)
+* [Api](#api)
+ + [ToastContainer](#toastcontainer)
+ + [toast](#toast)
+* [Browser Support](#browser-support)
+* [Release Notes](#release-notes)
+* [Contribute](#contribute)
+* [License](#license)
+
+## Demo
+
+[A demo is worth thousand word](https://fkhadra.github.io/react-toastify/)
+
+## Installation
+
+```
+$ npm install --save react-toastify
+$ yarn add react-toastify
+```
+
+## Features
+
+- Easy to setup for real, you can make it works in less than 10sec !
+- Super easy to customize
+- Can display a react component inside the toast !
+- Don't rely on `findDOMNode` or any DOM hack
+- Has ```onOpen``` and ```onClose``` hooks. Both can access the props passed to the react component rendered inside the toast
+- Can remove a toast programmatically
+- Define behavior per toast
+- Use glamor for styling 💅
+- Pause toast when the browser is not visible thanks to visibility api
+- Fancy progress bar to display the remaining time
+- Possibility to update a toast
+
+## Migrate from v2 to v3
+
+The v3 rely on glamor for styling. Using css classes is still fine but
+you may need to replace your css classes by a glamor rule in some case.
+
+No more css file to import !
+
+A style helper has been added to mimic the old sass variables.
+
+## Usage
+
+### One component to rule them all
+
+By default all toasts will inherits ToastContainer's props. **Props defined on toast supersede ToastContainer's props.**
+
+```javascript
+ import React, { Component } from 'react';
+ import { ToastContainer, toast } from 'react-toastify';
+
+ class App extends Component {
+ notify = () => toast("Wow so easy !");
+
+ render(){
+ return (
+
+ Notify !
+
+
+ );
+ }
+ }
+```
+
+### Positioning toast
+
+By default all the toasts will be positionned on the top right of your browser. If a position is set on a toast, the one defined on ToastContainer will be replaced.
+
+The following values are allowed: **top-right, top-center, top-left, bottom-right, bottom-center, bottom-left**
+
+For convenience, toast expose a POSITION property to avoid any typo.
+
+```javascript
+ // toast.POSITION.TOP_LEFT, toast.POSITION.TOP_RIGHT, toast.POSITION.TOP_CENTER
+ // toast.POSITION.BOTTOM_LEFT,toast.POSITION.BOTTOM_RIGHT, toast.POSITION.BOTTOM_CENTER
+
+ import React, { Component } from 'react';
+ import { toast } from 'react-toastify';
+ import { css } from 'glamor';
+
+ class Position extends Component {
+ notify = () => {
+ toast("Default Notification !");
+ toast.success("Success Notification !", {
+ position: toast.POSITION.TOP_CENTER
+ });
+ toast.error("Error Notification !", {
+ position: toast.POSITION.TOP_LEFT
+ });
+ toast.warn("Warning Notification !", {
+ position: toast.POSITION.BOTTOM_LEFT
+ });
+ toast.info("Info Notification !", {
+ position: toast.POSITION.BOTTOM_CENTER
+ });
+ toast("Custom Style Notification !", {
+ position: toast.POSITION.BOTTOM_RIGHT,
+ className: css({
+ background: "black"
+ })
+ });
+ };
+
+ render(){
+ return Notify ;
+ }
+ }
+```
+
+### Set autoclose delay or disable it
+
+- Set the default delay
+
+```js
+ import React from 'react';
+ import { ToastContainer } from 'react-toastify';
+
+ // close toast after 8 seconds
+ const App = () => (
+
+ );
+```
+
+- Set the delay per toast for more control
+
+```js
+ import React from 'react';
+ import { ToastContainer } from 'react-toastify';
+
+ class App extends Component {
+ closeAfter15 = () => toast("YOLO", { autoClose: 15000 });
+
+ closeAfter7 = () => toast("7 Kingdoms", { autoClose: 15000 })
+
+ render(){
+ return (
+
+ Close after 15 seconds
+ Close after 7 seconds
+
+
+ );
+ }
+ }
+```
+
+- Disable it by default
+
+```js
+ {/* Some components */}
+
+ {/* Some components */}
+```
+
+- Disable it per toast
+
+```js
+ {/* Some components */}
+ toast("hello", {
+ autoClose: false
+ })
+ {/* Some components */}
+```
+
+### Render a component
+
+When you render a component, a `closeToast` function is passed as a props. That way you can close the toast on user interaction for example.
+
+```js
+import React from 'react';
+import { ToastContainer, toast } from "react-toastify";
+
+const Msg = ({ closeToast }) => (
+
+ Lorem ipsum dolor
+ Retry
+ Close
+
+)
+
+const App = () => (
+
+ toast( )}>Hello 😀
+
+
+);
+```
+
+Use could also render a component using a function. More or less like a "render props":
+
+```js
+toast(({ closeToast }) => Functional swag 😎
);
+```
+
+### Remove a toast programmatically
+
+An id is returned each time you display a toast, use it to remove a given toast programmatically by calling ```toast.dismiss(id)```
+
+Without args, all the displayed toasts will be removed.
+
+```javascript
+ import React, { Component } from 'react';
+ import { toast } from 'react-toastify';
+
+ class Example extends Component {
+ toastId = null;
+
+ notify = () => this.toastId = toast("Lorem ipsum dolor");
+
+ dismiss = () => toast.dismiss(this.toastId);
+
+ dismissAll = () => toast.dismiss();
+
+ render(){
+ return (
+
+ Notify
+ Dismiss
+ Dismiss All
+
+ );
+ }
+ }
+```
+
+### Prevent duplicate
+
+To prevent duplicates, you can check if a given toast is active by calling `toast.isActive(id)` like the snippet below. With this approach, you can decide with more precision whether or not you want to display a toast.
+
+```javascript
+ import React, { Component } from 'react';
+ import { toast } from 'react-toastify';
+
+ class Example extends Component {
+ toastId = null;
+
+ notify = () => {
+ if (! toast.isActive(this.toastId)) {
+ this.toastId = toast("I cannot be duplicated !");
+ }
+ }
+
+ render(){
+ return (
+
+ Notify
+
+ );
+ }
+ }
+```
+
+### Update a toast
+
+When you update a toast, the toast options and the content are inherited but don't worry you can update them.
+
+
+
+#### Basic example
+
+```js
+import React, { Component } from 'react';
+import { toast } from 'react-toastify';
+
+class Update extends Component {
+ toastId = null;
+
+ notify = () => this.toastId = toast("Hello", { autoClose: false });
+
+ update = () => toast.update(this.toastId, { type: toast.TYPE.INFO, autoClose: 5000 });
+
+ render(){
+ return (
+
+ Notify
+ Update
+
+ )
+ }
+}
+```
+
+#### Update the content
+
+If you want to change the content it's straightforward as well. You can render any valid element including a react component. Pass your value to a `render` option as follow:
+
+```js
+ // With a string
+ toast.update(this.toastId, {
+ render: "New content"
+ type: toast.TYPE.INFO,
+ autoClose: 5000
+ });
+
+// Or with a component
+toast.update(this.toastId, {
+ render:
+ type: toast.TYPE.INFO,
+ autoClose: 5000
+ });
+
+
+```
+
+#### Apply a transition
+
+By default, when you update a toast, there is no transition applied. You can easily change this behavior by taking advantage of the `className` option. Lets rotate the toast on update:
+
+
+
+```js
+toast.update(this.toastId, {
+ render: "New Content",
+ type: toast.TYPE.INFO,
+ //Here the magic
+ className: css({
+ transform: "rotateY(360deg)",
+ transition: "transform 0.6s"
+ })
+})
+```
+
+#### Reset option or inherit from ToastContainer
+
+If you want to inherit props from the `ToastContainer`, you can reset an option by passing null.
+It's particulary usefull when you remove the `closeButton` from a toast and you want it back during the update:
+
+```js
+class Update extends Component {
+ toastId = null;
+
+ notify = () => this.toastId = toast("Hello", {
+ autoClose: false,
+ closeButton: false // Remove the closeButton
+ });
+
+ update = () => toast.update(this.toastId, {
+ type: toast.TYPE.INFO,
+ autoClose: 5000,
+ closeButton: null // The closeButton defined on ToastContainer will be used
+ });
+
+ render(){
+ return (
+
+ Notify
+ Update
+
+ )
+ }
+}
+```
+
+### Define hook
+
+You can define two hooks on toast. Hooks are really useful when the toast are not used only to display messages.
+
+- onOpen is called inside componentDidMount
+- onClose is called inside componentWillUnmount
+
+```javascript
+ import React, { Component } from 'react';
+ import { toast } from 'react-toastify';
+
+ class Hook extends Component {
+ notify = () => toast( , {
+ onOpen: ({ foo }) => window.alert('I counted to infinity once then..'),
+ onClose: ({ foo }) => window.alert('I counted to infinity twice')
+ });
+
+ render(){
+ return Notify ;
+ }
+ }
+```
+
+### Set a custom close button or simply remove it
+
+#### Override the default one
+
+You can pass a custom close button to the `ToastContainer` to replace the default one.
+
+⚠️ **When you use a custom close button, your button will receive a ```closeToast``` function.
+You need to call it in order to close the toast.** ⚠️
+
+```javascript
+ import React, { Component } from 'react';
+ import { toast, ToastContainer } from 'react-toastify';
+
+ const CloseButton = ({ YouCanPassAnyProps, closeToast }) => (
+
+ delete
+
+ );
+
+ class CustomClose extends Component {
+ notify = () => {
+ toast("The close button change when Chuck Norris display a toast");
+ };
+
+ render(){
+ return (
+
+ Notify ;
+ } />
+
+ );
+ }
+ }
+```
+
+#### Define it per toast
+
+```javascript
+ import React, { Component } from 'react';
+ import { toast } from 'react-toastify';
+
+ // Let's use the closeButton we defined on the previous example
+ class CustomClose extends Component {
+ notify = () => {
+ toast("The close button change when Chuck Norris display a toast",{
+ closeButton:
+ });
+ };
+
+ render(){
+ return Notify ;
+ }
+ }
+```
+
+#### Remove it
+
+Sometimes you don't want to display a close button. It can be removed globally or per toast. Simply pass
+`false` to `closeButton` props:
+
+- remove it by default
+
+```js
+ {/* Some components */}
+
+ {/* Some components */}
+```
+
+- remove it per toast
+
+```js
+ {/* Some components */}
+ toast("hello", {
+ closeButton: false
+ })
+ {/* Some components */}
+```
+
+### Add an undo option to a toast
+
+See it in action:
+
+[](https://codesandbox.io/s/l2qkywz7xl)
+
+```javascript
+const ToastUndo = ({ id, undo, closeToast }) => {
+ function handleClick(){
+ undo(id);
+ closeToast();
+ }
+
+ return (
+
+
+ Row Deleted UNDO
+
+
+ );
+}
+
+class App extends Component {
+ state = {
+ collection: data,
+ // Buffer
+ toRemove: []
+ };
+
+ // Remove the row id from the buffer
+ undo = id => {
+ this.setState({
+ toRemove: this.state.toRemove.filter(v => v !== id)
+ });
+ }
+
+ // Remove definetly
+ cleanCollection = () => this.setState({
+ // Return element which are not included in toRemove
+ collection: this.state.collection.filter(v => !this.state.toRemove.includes(v.id)),
+ //Cleanup the buffer
+ toRemove: []
+ });
+
+ // Remove row from render process
+ // then display the toast with undo action available
+ removeRow = e => {
+ const id = e.target.dataset.rowId;
+ this.setState({
+ toRemove: [...this.state.toRemove, id]
+ });
+ toast( , {
+ // hook will be called whent the component unmount
+ onClose: this.cleanCollection
+ });
+ };
+
+ renderRows() {
+ const { collection, toRemove } = this.state;
+
+ // Render all the element wich are not present in toRemove
+ // Im using data-attribute to grab the row id
+ return collection.filter(v => !toRemove.includes(v.id)).map(v => (
+
+ {v.firstName}
+ {v.lastName}
+ {v.email}
+
+
+ Delete
+
+
+
+ ));
+ }
+
+ render() {
+ // Dont close the toast on click
+ return (
+
+
+
+
+ name
+ firstname
+ gender
+
+
+ {this.renderRows()}
+
+
+
+
+ );
+ }
+}
+```
+
+### Define a custom enter and exit transition
+
+The toast rely on `react-transition-group` for the enter and exit transition.
+
+
+
+I'll use the zoom animation from animate.css. Of course, you could create the animation using glamor.
+
+```css
+/* style.css*/
+@keyframes zoomIn {
+ from {
+ opacity: 0;
+ transform: scale3d(.3, .3, .3);
+ }
+
+ 50% {
+ opacity: 1;
+ }
+}
+
+.zoomIn {
+ animation-name: zoomIn;
+}
+
+@keyframes zoomOut {
+ from {
+ opacity: 1;
+ }
+
+ 50% {
+ opacity: 0;
+ transform: scale3d(.3, .3, .3);
+ }
+
+ to {
+ opacity: 0;
+ }
+}
+
+.zoomOut {
+ animation-name: zoomOut;
+}
+
+.animate{
+ animation-duration: 800ms;
+}
+```
+
+- Create a transition and apply it
+
+```js
+import React, { Component } from 'react';
+import { toast } from 'react-toastify';
+import Transition from 'react-transition-group/Transition';
+import './style.css';
+
+// Any transition created with react-transition-group/Transition will work !
+const ZoomInAndOut = ({ children, position, ...props }) => (
+ node.classList.add('zoomIn', 'animate')}
+ onExit={node => {
+ node.classList.remove('zoomIn', 'animate');
+ node.classList.add('zoomOut', 'animate');
+ }}
+ >
+ {children}
+
+);
+
+class App extends Component {
+ notify = () => {
+ toast("ZoomIn and ZoomOut", {
+ transition: ZoomInAndOut,
+ autoClose: 5000
+ });
+ };
+
+ render(){
+ return Notify ;
+ }
+}
+
+```
+
+- Or pass your transition to the ToastContainer to replace the default one.
+
+```js
+render(){
+ return(
+ {/*Component*/}
+
+ {/*Component*/}
+ );
+}
+```
+
+### Le style
+
+#### Replace default style
+
+You could use the style helper to replace the variable listed below:
+
+```javascript
+import { style } from "react-toastify";
+
+style({
+ width: "320px",
+ colorDefault: "#fff",
+ colorInfo: "#3498db",
+ colorSuccess: "#07bc0c",
+ colorWarning: "#f1c40f",
+ colorError: "#e74c3c",
+ colorProgressDefault: "linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55)",
+ mobile: "only screen and (max-width : 480px)",
+ fontFamily: "sans-serif",
+ zIndex: 9999,
+ TOP_LEFT: {
+ top: '1em',
+ left: '1em'
+ },
+ TOP_CENTER: {
+ top: '1em',
+ marginLeft: `-${320/2}px`,
+ left: '50%'
+ },
+ TOP_RIGHT: {
+ top: '1em',
+ right: '1em'
+ },
+ BOTTOM_LEFT: {
+ bottom: '1em',
+ left: '1em'
+ },
+ BOTTOM_CENTER: {
+ bottom: '1em',
+ marginLeft: `-${320/2}px`,
+ left: '50%'
+ },
+ BOTTOM_RIGHT: {
+ bottom: '1em',
+ right: '1em'
+ }
+});
+```
+
+#### Style with className
+
+All className like props can be a css class or a glamor rule.
+
+⚠️ Use a glamor rule rather than a css class when you want to override a property cause glamor stylesheet
+will be injected last ⚠️
+
+```javascript
+ import React, { Component } from 'react';
+ import { toast } from 'react-toastify';
+ import { css } from 'glamor';
+
+ class Style extends Component {
+ notify = () => {
+ toast("Dark style notification with default type progress bar",{
+ className: css({
+ background: "black"
+ }),
+ bodyClassName: "grow-font-size"
+ });
+
+ toast("Fancy progress bar.",{
+ progressClassName: css({
+ background: "repeating-radial-gradient(circle at center, red 0, blue, green 30px)"
+ })
+ });
+ };
+
+ render(){
+ return Notify ;
+ }
+ }
+```
+
+You could define your style globally:
+
+
+```javascript
+ render(){
+ return(
+ {/*Component*/}
+
+ {/*Component*/}
+ );
+ }
+```
+
+### Mobile
+
+On mobile the toast will take all the width available.
+
+
+
+## Api
+
+### ToastContainer
+
+| Props | Type | Default | Description |
+| ----------------- | -------------- | --------- | --------------------------------------------------------------- |
+| position | string | top-right | One of top-right, top-center, top-left, bottom-right, bottom-center, bottom-left |
+| autoClose | false or int | 5000 | Delay in ms to close the toast. If set to false, the notification need to be closed manualy |
+| closeButton | React Element or false | - | A React Component to replace the default close button or `false` to hide the button |
+| transition | function | - | A reference to a valid react-transition-group/Transition component |
+| hideProgressBar | bool | false | Display or not the progress bar below the toast(remaining time) |
+| pauseOnHover | bool | true | Keep the timer running or not on hover |
+| closeOnClick | bool | true | Dismiss toast on click |
+| newestOnTop | bool | false | Display newest toast on top |
+| className | string\|glamor rule | - | Add optional classes to the container |
+| style | object | - | Add optional inline style to the container |
+| toastClassName | string\|glamor rule | - | Add optional classes to the toast |
+| bodyClassName | string\|glamor rule | - | Add optional classes to the toast body |
+| progressClassName | string\|glamor rule | - | Add optional classes to the progress bar |
+
+
+### toast
+
+All the method of toast return a **toastId** except `dismiss` and `isActive`.
+The **toastId** can be used to remove a toast programmatically or to check if the toast is displayed.
+
+
+| Parameter | Type | Required | Description |
+| --------- | ------- | ------------- | ------------------------------------------------------------- |
+| content | string or React Element | ✓ | Element that will be displayed |
+| options | object | ✘ | Possible keys : autoClose, type, closeButton, hideProgressBar | |
+
+- Available options :
+ - `type`: Kind of notification. One of "default", "success", "info", "warning", "error". You can use `toast.TYPE.SUCCESS` and so on to avoid any typo.
+ - `onOpen`: Called inside componentDidMount
+ - `onClose`: Called inside componentWillUnmount
+ - `autoClose`: same as ToastContainer.
+ - `closeButton`: same as ToastContainer.
+ - `transition`: same as ToastContainer.
+ - `closeOnClick`: same as ToastContainer.
+ - `hideProgressBar`: same as ToastContainer.
+ - `position`: same as ToastContainer
+ - `pauseOnHover`: same as ToastContainer
+ - `className`: same as ToastContainer toastClassName
+ - `bodyClassName`: same as ToastContainer
+ - `progressClassName`: same as ToastContainer
+ - `render`: string or React Element, only available when calling update
+
+:warning:️ *Toast options supersede ToastContainer props* :warning:
+
+```javascript
+const Img = ({ src }) => ;
+const options = {
+ onOpen: props => console.log(props.foo),
+ onClose: props => console.log(props.foo),
+ autoClose: 6000,
+ closeButton: ,
+ type: toast.TYPE.INFO,
+ hideProgressBar: false,
+ position: toast.POSITION.TOP_LEFT,
+ pauseOnHover: true,
+ transition: MyCustomTransition
+};
+
+const toastId = toast( , options) // default, type: 'default'
+toast(({ closeToast }) => Render props like
, options);
+toast.success("Hello", options) // add type: 'success' to options
+toast.info("World", options) // add type: 'info' to options
+toast.warn( , options) // add type: 'warning' to options
+toast.error( , options) // add type: 'error' to options
+toast.dismiss() // Remove all toasts !
+toast.dismiss(toastId) // Remove given toast
+toast.isActive(toastId) //Check if a toast is displayed or not
+toast.update(toastId, {
+ type: toast.TYPE.INFO,
+ render:
+});
+```
+
+## Browser Support
+
+ |  |  |  |  | 
+--- | --- | --- | --- | --- | --- |
+IE 11+ ✔ | Latest ✔ | Latest ✔ | Latest ✔ | Latest ✔ | Latest ✔ |
+
+## Release Notes
+
+### V3.2.2
+
+- Add comment to typescript definition.
+
+### V3.2.1
+
+- Fix typescript definition. Relate to [issue #110](https://github.com/fkhadra/react-toastify/issues/110)
+
+### V3.2.0
+
+- Allow "render props" rendering. Relate to [issue #106](https://github.com/fkhadra/react-toastify/issues/106)
+- Can set fontFamily via the style helper. Relate to [issue #107](https://github.com/fkhadra/react-toastify/issues/107)
+- Can override position default values via style helper. Realte to [issue #108](https://github.com/fkhadra/react-toastify/issues/108)
+
+### V3.1.2
+- Fix [issue #103](https://github.com/fkhadra/react-toastify/issues/103) for real...
+- Fix [issue #104](https://github.com/fkhadra/react-toastify/issues/104) Incorrect TS definition for `toast.dismiss`
+
+### V3.1.1
+
+- Fix [issue #103](https://github.com/fkhadra/react-toastify/issues/103)
+
+### V3.1.0
+
+- Add ability to update an existing toast
+- Allow to define the zIndex via the style helper
+- Get rid of all inline style
+
+### V3.0.0
+
+- Switched to styled component with glamor
+- Added style helper to replace sass variables
+- Test suite improved
+- Typescript definition improved
+
+### V2.2.1
+
+- Fix [issue #71](https://github.com/fkhadra/react-toastify/issues/71)
+
+### V2.2.0
+
+- Sass variables are now namespaced
+
+### V2.1.7
+
+- Can now use [sass variable default](http://sass-lang.com/documentation/file.SASS_REFERENCE.html#Variable_Defaults___default) thanks to [vikpe](https://github.com/vikpe)
+### V2.1.5
+
+- Test suites improved
+
+### V2.1.4
+
+- Fix broken typescript dependencies
+
+### V2.1.3
+
+- Added typescript definition
+- Toast will pause when page is not visible thanks to page visibility api.
+
+### V2.1.2
+
+- Previous version was breaking compatibility with react < 16
+### V2.1.1
+
+#### Bugfix
+
+- Remove toast from react dom when not displayed. Because of that the `onClose` callback on the toast was never called. Relate to [issue #50](https://github.com/fkhadra/react-toastify/issues/50)
+
+### V2.1.0
+
+#### New Features
+
+- Can set a custom transition when the toat enter and exit the screen :sparkles:
+
+#### Others
+
+- Upgrade to react v16
+- Upgrade to enzyme v3
+- Switched to react-app preset for eslint
+- Upgrade to webpack v3
+- Upgrade to react-transition-group v2
+
+
+### V2.0.0
+
+This version may introduce breaking changes due to redesign. My apologies.
+
+But, it brings a lots of new and exciting features !
+
+#### New Features
+
+- The default design has been reviewed. The component is now usable out of the box without the need to touch the css. Relate to [issue #28](https://github.com/fkhadra/react-toastify/issues/28)
+- The toast timer can keep running on hover. [issue #33](https://github.com/fkhadra/react-toastify/issues/33)
+- Added a possibility to check if a given toast is displayed or not. By using that method we can prevent duplicate. [issue #3](https://github.com/fkhadra/react-toastify/issues/3)
+- Can decide to close the toast on click
+- Can show newest toast on top
+- Can define additionnal className for toast[issue #21](https://github.com/fkhadra/react-toastify/issues/21)
+- Much more mobile ready than the past
+
+#### Bug Fixes
+
+- The space in of left boxes from window & right boxes from window is different.[issue #25](https://github.com/fkhadra/react-toastify/issues/25)
+- Partial support of ie11. I still need to fix the animation but I need a computer with ie11 for that xD [issue #26](https://github.com/fkhadra/react-toastify/issues/26)
+
+### v1.7.0
+
+#### New Features
+
+- Toast can now be positioned individually !
+
+### v1.6.0
+
+#### New Features
+
+- Can now remove a toast programmatically. When you display a toast, the function return a **toastId**. You can use it
+as follow to remove a given toast `toast.dismiss(toastId)`
+- If the container is not mounted, the notification will be added to a queue and dispatched as soon as the container is mounted.
+For more details check [issue #4](https://github.com/fkhadra/react-toastify/issues/4)
+
+#### Others
+
+- Added --no-idents flag to cssnano to avoid animation name collision with others libs.
+- Tests are no longer transpiled
+
+### v1.5.0
+
+- That version does not bring any features but it brings tests made with the amazing jest and aslo Travis CI integration.
+
+### v1.4.3
+
+- React and react-dom are now peer dependencies
+
+### v1.4.2
+
+- Don't try to pass down the props when we render a string like so : `toast(hello
)`
+
+#### Bug fix
+
+- Fixed the test to check if the toast can be rendered
+
+### v1.4.0
+
+- React v16 ready : moving to prop-types and react-transition-group
+- Internal rewrite of components. The implementation wasn't bad but it wasn't good either. A better props validation has been added has well.
+- Removed useless dependencies. I was using the Object.values polyfill when a one line forEach can do the same is my case.
+- Now I believe it's even easier to style the components. The sass sources files are now included when you install the package via yarn or npm
+- The default close button has been replaced.
+
+#### New Features
+
+- A progress bar is now visible to track the remaining time before the notification is closed. Of course if you don't like it, you are free to disable it.
+- You can choose to display a close button or not.
+- Event pointer is set to none to avoid losing pointer events on everything beneath the toast container when no toast are displayed
+- The `closeToast` callback is also passed down to your component.
+
+### v1.3.0
+
+- PropTypes package update
+- Dead code elimination
+
+#### New Features
+
+- Possibility to use a custom close button. Check the api docs of ToastContainer and toast.
+
+### v1.2.2
+
+I was storing react component into state which is a bad practice. [What should Go in State](http://web.archive.org/web/20150419023006/http://facebook.github.io/react/docs/interactivity-and-dynamic-uis.html)
+This is no more the case now. The separation of concern between the data and the view is respected.
+
+#### Bug fix
+
+- Was calling cloneElement on undefined which cause your console bleed. See issue [#2](https://github.com/fkhadra/react-toastify/issues/2)
+
+
+### v1.2.1
+
+#### Bug fix
+
+- Added Object.values polyfill otherwise won't work with IE or EDGE. I ♥ IE.
+
+### v1.1.1
+
+#### Bug fix
+
+- OnClose and OnOpen can access all the props passed to the component. Before
+only the props passed using toast options were accessible
+
+#### New Features
+
+- Passing prop using toast option will be removed at the next release. It doesn't
+make sense to keep both way to pass props. Use the react way instead
+
+### v1.1.0
+
+#### New Features
+
+- Added onOpen callback
+- Added onClose callback
+
+## Contribute
+
+Show your ❤️ and support by giving a ⭐. Any suggestions and pull request are welcome !
+
+## License
+
+Licensed under MIT
diff --git a/goTorrentWebUI/node_modules/react-toastify/index.d.ts b/goTorrentWebUI/node_modules/react-toastify/index.d.ts
new file mode 100644
index 00000000..55f69b3a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/index.d.ts
@@ -0,0 +1,272 @@
+import * as React from 'react';
+import Transition from 'react-transition-group/Transition';
+
+type ToastType = 'info' | 'success' | 'warning' | 'error' | 'default';
+
+type ToastContent = React.ReactNode | { (): void };
+
+interface styleProps {
+ /**
+ * Set the default toast width.
+ * Default: '320px'
+ */
+ width?: string;
+
+ /**
+ * Set the toast color when no type is provided.
+ * Default: '#fff'
+ */
+ colorDefault?: string;
+
+ /**
+ * Set the toast color when the type is INFO.
+ * Default: '#3498db'
+ */
+ colorInfo?: string;
+
+ /**
+ * Set the toast color when the type is SUCCESS.
+ * Default: '#07bc0c'
+ */
+ colorSuccess?: string;
+
+ /**
+ * Set the toast color when the type is WARNING.
+ * Default: '#f1c40f'
+ */
+ colorWarning?: string;
+
+ /**
+ * Set the toast color when the type is ERROR.
+ * Default: '#e74c3c'
+ */
+ colorError?: string;
+
+ /**
+ * Set the progress bar color when no type is provided.
+ * Default: 'linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55)'
+ */
+ colorProgressDefault?: string;
+
+ /**
+ * Media query to apply mobile style.
+ * Default: 'only screen and (max-width : 480px)'
+ */
+ mobile?: string;
+
+ /**
+ * Set the z-index for the ToastContainer.
+ * Default: 9999
+ */
+ zIndex?: string | number;
+
+ /**
+ * Override the default position.
+ * Default: {
+ * top: '1em',
+ * left: '1em'
+ * }
+ */
+ TOP_LEFT?: object;
+
+ /**
+ * Override the default position.
+ * Default: {
+ * top: '1em',
+ * left: '50%'
+ * }
+ */
+ TOP_CENTER?: object;
+
+ /**
+ * Override the default position.
+ * Default: {
+ * top: '1em',
+ * right: '1em'
+ *}
+ */
+ TOP_RIGHT?: object;
+
+ /**
+ * Override the default position.
+ * Default: {
+ * bottom: '1em',
+ * left: '1em'
+ * }
+ */
+ BOTTOM_LEFT?: object;
+
+ /**
+ * Override the default position.
+ * Default: {
+ * bottom: '1em',
+ * left: '50%'
+ *}
+ */
+ BOTTOM_CENTER?: object;
+
+ /**
+ * Override the default position.
+ * Default: {
+ * bottom: '1em',
+ * right: '1em'
+ *}
+ */
+ BOTTOM_RIGHT?: object;
+}
+
+interface CommonOptions {
+ /**
+ * Pause the timer when the mouse hover the toast.
+ */
+ pauseOnHover?: boolean;
+
+ /**
+ * Remove the toast when clicked.
+ */
+ closeOnClick?: boolean;
+
+ /**
+ * Set the delay in ms to close the toast automatically.
+ * Use `false` to prevent the toast from closing.
+ */
+ autoClose?: number | false;
+
+ /**
+ * Set the default position to use.
+ * One of: 'top-right', 'top-center', 'top-left', 'bottom-right', 'bottom-center', 'bottom-left'
+ */
+ position?: string;
+
+ /**
+ * Pass a custom close button.
+ * To remove the close button pass `false`
+ */
+ closeButton?: React.ReactNode | false;
+
+ /**
+ * An optional css class to set for the progress bar. It can be a glamor rule
+ * or a css class name.
+ */
+ progressClassName?: string | object;
+
+ /**
+ * An optional css class to set. It can be a glamor rule
+ * or a css class name.
+ */
+ className?: string | object;
+
+ /**
+ * An optional css class to set for the toast content. It can be a glamor rule
+ * or a css class name.
+ */
+ bodyClassName?: string | object;
+
+ /**
+ * Show or not the progress bar.
+ */
+ hideProgressBar?: boolean;
+
+ /**
+ * Pass a custom transition built with react-transition-group.
+ */
+ transition?: Transition;
+}
+
+interface ToastOptions extends CommonOptions {
+ /**
+ * Called inside componentDidMount.
+ */
+ onOpen?: () => void;
+
+ /**
+ * Called inside componentWillUnMount.
+ */
+ onClose?: () => void;
+
+ /**
+ * Set the toast type.
+ * One of: 'info', 'success', 'warning', 'error', 'default'.
+ */
+ type?: ToastType;
+}
+
+interface UpdateOptions extends ToastOptions {
+ /**
+ * Used to update a toast.
+ * Pass any valid ReactNode(string, number, component)
+ */
+ render?: ToastContent;
+}
+
+interface ToastContainerProps extends CommonOptions {
+ /**
+ * Whether or not to display the newest toast on top.
+ * Default: false
+ */
+ newestOnTop?: boolean;
+
+ /**
+ * An optional inline style to apply.
+ */
+ style?: object;
+
+ /**
+ * An optional css class to set. It can be a glamor rule
+ * or a css class name.
+ */
+ toastClassName?: string | object;
+}
+
+interface Toast {
+ /**
+ * Shorthand to display toast of type 'success'.
+ */
+ success(content: ToastContent, options?: ToastOptions): number;
+
+ /**
+ * Shorthand to display toast of type 'info'.
+ */
+ info(content: ToastContent, options?: ToastOptions): number;
+
+ /**
+ * Shorthand to display toast of type 'warning'.
+ */
+ warn(content: ToastContent, options?: ToastOptions): number;
+
+ /**
+ * Shorthand to display toast of type 'error'.
+ */
+ error(content: ToastContent, options?: ToastOptions): number;
+
+ /**
+ * Check if a toast is active by passing the `toastId`.
+ * Each time you display a toast you receive a `toastId`.
+ */
+ isActive(toastId: number): boolean;
+
+ /**
+ * Remove a toast. If no `toastId` is used, all the active toast
+ * will be removed.
+ */
+ dismiss(toastId?: number): void;
+
+ /**
+ * Update an existing toast. By default, we keep the initial content and options of the toast.
+ */
+ update(toastId: number, options?: UpdateOptions): number;
+
+ /**
+ * Display a toast without a specific type.
+ */
+ (content: ToastContent, options?: ToastOptions): number;
+}
+
+export class ToastContainer extends React.Component {}
+
+/**
+ * Helper to override the global style.
+ */
+export function style(props: styleProps): void;
+
+export let toast: Toast;
diff --git a/goTorrentWebUI/node_modules/react-toastify/lib/DefaultCloseButton.js b/goTorrentWebUI/node_modules/react-toastify/lib/DefaultCloseButton.js
new file mode 100644
index 00000000..488716a6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/lib/DefaultCloseButton.js
@@ -0,0 +1,56 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; /* eslint react/require-default-props: 0 */
+
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+var _glamor = require('glamor');
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var rule = function rule(isDefault) {
+ return (0, _glamor.css)({
+ color: isDefault ? '#000' : '#fff',
+ fontWeight: 'bold',
+ fontSize: '14px',
+ background: 'transparent',
+ outline: 'none',
+ border: 'none',
+ padding: 0,
+ cursor: 'pointer',
+ opacity: isDefault ? '0.3' : '0.7',
+ transition: '.3s ease',
+ alignSelf: 'flex-start',
+ ':hover, :focus': {
+ opacity: 1
+ }
+ });
+};
+
+function DefaultCloseButton(_ref) {
+ var closeToast = _ref.closeToast,
+ type = _ref.type;
+
+ return _react2.default.createElement(
+ 'button',
+ _extends({}, rule(type === 'default'), { type: 'button', onClick: closeToast }),
+ '\u2716'
+ );
+}
+
+DefaultCloseButton.propTypes = {
+ closeToast: _propTypes2.default.func
+};
+
+exports.default = DefaultCloseButton;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/lib/DefaultTransition.js b/goTorrentWebUI/node_modules/react-toastify/lib/DefaultTransition.js
new file mode 100644
index 00000000..da5e666d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/lib/DefaultTransition.js
@@ -0,0 +1,77 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _Transition = require('react-transition-group/Transition');
+
+var _Transition2 = _interopRequireDefault(_Transition);
+
+var _glamor = require('glamor');
+
+var _animation2 = require('./animation');
+
+var _animation3 = _interopRequireDefault(_animation2);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
+
+var animate = {
+ animationDuration: '0.75s',
+ animationFillMode: 'both'
+};
+
+var animation = function animation(pos) {
+ var _getAnimation = (0, _animation3.default)(pos),
+ enter = _getAnimation.enter,
+ exit = _getAnimation.exit;
+
+ var enterAnimation = _glamor.css.keyframes('enter', _extends({
+ 'from, 60%, 75%, 90%, to': {
+ animationTimingFunction: 'cubic-bezier(0.215, 0.610, 0.355, 1.000)'
+ }
+ }, enter));
+ var exitAnimation = _glamor.css.keyframes('exit', exit);
+
+ return {
+ enter: (0, _glamor.css)(_extends({}, animate, { animationName: enterAnimation })),
+ exit: (0, _glamor.css)(_extends({}, animate, { animationName: exitAnimation }))
+ };
+};
+
+function DefaultTransition(_ref) {
+ var children = _ref.children,
+ position = _ref.position,
+ props = _objectWithoutProperties(_ref, ['children', 'position']);
+
+ var _animation = animation(position),
+ enter = _animation.enter,
+ exit = _animation.exit;
+
+ return _react2.default.createElement(
+ _Transition2.default,
+ _extends({}, props, {
+ timeout: 750,
+ onEnter: function onEnter(node) {
+ return node.classList.add(enter);
+ },
+ onEntered: function onEntered(node) {
+ return node.classList.remove(enter);
+ },
+ onExit: function onExit(node) {
+ return node.classList.add(exit);
+ }
+ }),
+ children
+ );
+}
+
+exports.default = DefaultTransition;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/lib/ProgressBar.js b/goTorrentWebUI/node_modules/react-toastify/lib/ProgressBar.js
new file mode 100644
index 00000000..7d598ace
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/lib/ProgressBar.js
@@ -0,0 +1,99 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+var _glamor = require('glamor');
+
+var _constant = require('./constant');
+
+var _style = require('./style');
+
+var _style2 = _interopRequireDefault(_style);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var trackProgress = _glamor.css.keyframes('track-progress', {
+ '0%': { width: '100%' },
+ '100%': { width: 0 }
+});
+
+var progress = function progress(type, isRunning, hide, delay) {
+ return (0, _glamor.css)(_extends({
+ position: 'absolute',
+ bottom: 0,
+ left: 0,
+ width: 0,
+ height: '5px',
+ zIndex: _style2.default.zIndex,
+ opacity: hide ? 0 : 0.7,
+ animation: trackProgress + ' linear 1',
+ animationPlayState: isRunning ? 'running' : 'paused',
+ animationDuration: delay + 'ms',
+ backgroundColor: 'rgba(255,255,255,.7)'
+ }, type === 'default' ? { background: _style2.default.colorProgressDefault } : {}));
+};
+
+function ProgressBar(_ref) {
+ var delay = _ref.delay,
+ isRunning = _ref.isRunning,
+ closeToast = _ref.closeToast,
+ type = _ref.type,
+ hide = _ref.hide,
+ className = _ref.className;
+
+ return _react2.default.createElement('div', _extends({}, typeof className !== 'string' ? (0, _glamor.css)(progress(type, isRunning, hide, delay), className) : progress(type, isRunning, hide, delay), typeof className === 'string' && { className: className }, {
+ onAnimationEnd: closeToast
+ }));
+}
+
+ProgressBar.propTypes = {
+ /**
+ * The animation delay which determine when to close the toast
+ */
+ delay: _propTypes2.default.number.isRequired,
+
+ /**
+ * Whether or not the animation is running or paused
+ */
+ isRunning: _propTypes2.default.bool.isRequired,
+
+ /**
+ * Func to close the current toast
+ */
+ closeToast: _propTypes2.default.func.isRequired,
+
+ /**
+ * Optional type : info, success ...
+ */
+ type: _propTypes2.default.string,
+
+ /**
+ * Hide or not the progress bar
+ */
+ hide: _propTypes2.default.bool,
+
+ /**
+ * Optionnal className
+ */
+ className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object])
+};
+
+ProgressBar.defaultProps = {
+ type: _constant.TYPE.DEFAULT,
+ hide: false,
+ className: ''
+};
+
+exports.default = ProgressBar;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/lib/Toast.js b/goTorrentWebUI/node_modules/react-toastify/lib/Toast.js
new file mode 100644
index 00000000..1ffbc351
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/lib/Toast.js
@@ -0,0 +1,217 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+var _glamor = require('glamor');
+
+var _ProgressBar = require('./ProgressBar');
+
+var _ProgressBar2 = _interopRequireDefault(_ProgressBar);
+
+var _constant = require('./constant');
+
+var _style = require('./style');
+
+var _style2 = _interopRequireDefault(_style);
+
+var _propValidator = require('./util/propValidator');
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
+
+function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
+
+function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
+var toast = function toast(type) {
+ return (0, _glamor.css)(_extends({
+ position: 'relative',
+ minHeight: '48px',
+ marginBottom: '1rem',
+ padding: '8px',
+ borderRadius: '1px',
+ boxShadow: '0 1px 10px 0 rgba(0, 0, 0, .1), 0 2px 15px 0 rgba(0, 0, 0, .05)',
+ display: 'flex',
+ justifyContent: 'space-between',
+ maxHeight: '800px',
+ overflow: 'hidden',
+ fontFamily: _style2.default.fontFamily,
+ cursor: 'pointer',
+ background: _style2.default['color' + type.charAt(0).toUpperCase() + type.slice(1)]
+ }, type === 'default' ? { color: '#aaa' } : {}, _defineProperty({}, '@media ' + _style2.default.mobile, {
+ marginBottom: 0
+ })));
+};
+
+var body = (0, _glamor.css)({
+ margin: 'auto 0',
+ flex: 1
+});
+
+var Toast = function (_Component) {
+ _inherits(Toast, _Component);
+
+ function Toast() {
+ var _ref;
+
+ var _temp, _this, _ret;
+
+ _classCallCheck(this, Toast);
+
+ for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
+ args[_key] = arguments[_key];
+ }
+
+ return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = Toast.__proto__ || Object.getPrototypeOf(Toast)).call.apply(_ref, [this].concat(args))), _this), _this.state = {
+ isRunning: true
+ }, _this.pauseToast = function () {
+ _this.setState({ isRunning: false });
+ }, _this.playToast = function () {
+ _this.setState({ isRunning: true });
+ }, _temp), _possibleConstructorReturn(_this, _ret);
+ }
+
+ _createClass(Toast, [{
+ key: 'componentDidMount',
+ value: function componentDidMount() {
+ this.props.onOpen !== null && this.props.onOpen(this.getChildrenProps());
+ }
+ }, {
+ key: 'componentWillReceiveProps',
+ value: function componentWillReceiveProps(nextProps) {
+ if (this.props.isDocumentHidden !== nextProps.isDocumentHidden) {
+ this.setState({
+ isRunning: !nextProps.isDocumentHidden
+ });
+ }
+ }
+ }, {
+ key: 'componentWillUnmount',
+ value: function componentWillUnmount() {
+ this.props.onClose !== null && this.props.onClose(this.getChildrenProps());
+ }
+ }, {
+ key: 'getChildrenProps',
+ value: function getChildrenProps() {
+ return this.props.children.props;
+ }
+ }, {
+ key: 'getToastProps',
+ value: function getToastProps() {
+ var toastProps = {};
+
+ if (this.props.autoClose !== false && this.props.pauseOnHover === true) {
+ toastProps.onMouseEnter = this.pauseToast;
+ toastProps.onMouseLeave = this.playToast;
+ }
+ typeof this.props.className === 'string' && (toastProps.className = this.props.className);
+ this.props.closeOnClick && (toastProps.onClick = this.props.closeToast);
+
+ return toastProps;
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ var _props = this.props,
+ closeButton = _props.closeButton,
+ children = _props.children,
+ autoClose = _props.autoClose,
+ type = _props.type,
+ hideProgressBar = _props.hideProgressBar,
+ closeToast = _props.closeToast,
+ Transition = _props.transition,
+ position = _props.position,
+ onExited = _props.onExited,
+ className = _props.className,
+ bodyClassName = _props.bodyClassName,
+ progressClassName = _props.progressClassName,
+ updateId = _props.updateId;
+
+
+ return _react2.default.createElement(
+ Transition,
+ {
+ 'in': this.props.in,
+ appear: true,
+ unmountOnExit: true,
+ onExited: onExited,
+ position: position
+ },
+ _react2.default.createElement(
+ 'div',
+ _extends({}, typeof className !== 'string' ? (0, _glamor.css)(toast(type), className) : toast(type), this.getToastProps()),
+ _react2.default.createElement(
+ 'div',
+ _extends({}, typeof bodyClassName !== 'string' ? (0, _glamor.css)(body, bodyClassName) : body, typeof bodyClassName === 'string' && {
+ className: bodyClassName
+ }),
+ children
+ ),
+ closeButton !== false && closeButton,
+ autoClose !== false && _react2.default.createElement(_ProgressBar2.default, {
+ key: 'pb-' + updateId,
+ delay: autoClose,
+ isRunning: this.state.isRunning,
+ closeToast: closeToast,
+ hide: hideProgressBar,
+ type: type,
+ className: progressClassName
+ })
+ )
+ );
+ }
+ }]);
+
+ return Toast;
+}(_react.Component);
+
+Toast.propTypes = {
+ closeButton: _propValidator.falseOrElement.isRequired,
+ autoClose: _propValidator.falseOrDelay.isRequired,
+ children: _propTypes2.default.node.isRequired,
+ closeToast: _propTypes2.default.func.isRequired,
+ position: _propTypes2.default.oneOf((0, _propValidator.objectValues)(_constant.POSITION)).isRequired,
+ pauseOnHover: _propTypes2.default.bool.isRequired,
+ closeOnClick: _propTypes2.default.bool.isRequired,
+ transition: _propTypes2.default.func.isRequired,
+ isDocumentHidden: _propTypes2.default.bool.isRequired,
+ in: _propTypes2.default.bool,
+ onExited: _propTypes2.default.func,
+ hideProgressBar: _propTypes2.default.bool,
+ onOpen: _propTypes2.default.func,
+ onClose: _propTypes2.default.func,
+ type: _propTypes2.default.oneOf((0, _propValidator.objectValues)(_constant.TYPE)),
+ className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),
+ bodyClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),
+ progressClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),
+ updateId: _propTypes2.default.number
+};
+Toast.defaultProps = {
+ type: _constant.TYPE.DEFAULT,
+ in: true,
+ hideProgressBar: false,
+ onOpen: null,
+ onClose: null,
+ className: '',
+ bodyClassName: '',
+ progressClassName: '',
+ updateId: null
+};
+exports.default = Toast;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/lib/ToastContainer.js b/goTorrentWebUI/node_modules/react-toastify/lib/ToastContainer.js
new file mode 100644
index 00000000..c230395e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/lib/ToastContainer.js
@@ -0,0 +1,399 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+var _react = require('react');
+
+var _react2 = _interopRequireDefault(_react);
+
+var _propTypes = require('prop-types');
+
+var _propTypes2 = _interopRequireDefault(_propTypes);
+
+var _glamor = require('glamor');
+
+var _TransitionGroup = require('react-transition-group/TransitionGroup');
+
+var _TransitionGroup2 = _interopRequireDefault(_TransitionGroup);
+
+var _Toast = require('./Toast');
+
+var _Toast2 = _interopRequireDefault(_Toast);
+
+var _DefaultCloseButton = require('./DefaultCloseButton');
+
+var _DefaultCloseButton2 = _interopRequireDefault(_DefaultCloseButton);
+
+var _DefaultTransition = require('./DefaultTransition');
+
+var _DefaultTransition2 = _interopRequireDefault(_DefaultTransition);
+
+var _constant = require('./constant');
+
+var _style = require('./style');
+
+var _style2 = _interopRequireDefault(_style);
+
+var _EventManager = require('./util/EventManager');
+
+var _EventManager2 = _interopRequireDefault(_EventManager);
+
+var _propValidator = require('./util/propValidator');
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
+
+function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
+
+function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
+var toastPosition = function toastPosition(pos) {
+ var positionKey = pos.toUpperCase().replace('-', '_');
+ var positionRule = typeof _constant.POSITION[positionKey] !== 'undefined' ? _style2.default[positionKey] : _style2.default.TOP_RIGHT;
+
+ /** define margin for center toast based on toast witdh */
+ if (positionKey.indexOf('CENTER') !== -1 && typeof positionRule.marginLeft === 'undefined') {
+ positionRule.marginLeft = '-' + parseInt(_style2.default.width, 10) / 2 + 'px';
+ }
+
+ return (0, _glamor.css)(positionRule, (0, _glamor.css)(_defineProperty({}, '@media ' + _style2.default.mobile, _extends({
+ left: 0,
+ margin: 0,
+ position: 'fixed'
+ }, pos.substring(0, 3) === 'top' ? { top: 0 } : { bottom: 0 }))));
+};
+
+var container = function container(disablePointer, position) {
+ return (0, _glamor.css)(_extends({
+ zIndex: _style2.default.zIndex,
+ position: 'fixed',
+ padding: '4px',
+ width: _style2.default.width,
+ boxSizing: 'border-box',
+ color: '#fff'
+ }, disablePointer ? { pointerEvents: 'none' } : {}, _defineProperty({}, '@media ' + _style2.default.mobile, {
+ width: '100vw',
+ padding: 0
+ })), toastPosition(position));
+};
+
+var ToastContainer = function (_Component) {
+ _inherits(ToastContainer, _Component);
+
+ function ToastContainer() {
+ var _ref;
+
+ var _temp, _this, _ret;
+
+ _classCallCheck(this, ToastContainer);
+
+ for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
+ args[_key] = arguments[_key];
+ }
+
+ return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = ToastContainer.__proto__ || Object.getPrototypeOf(ToastContainer)).call.apply(_ref, [this].concat(args))), _this), _this.state = {
+ toast: [],
+ isDocumentHidden: false
+ }, _this.collection = {}, _this.isDocumentHidden = function () {
+ return _this.setState({ isDocumentHidden: document.hidden });
+ }, _this.isToastActive = function (id) {
+ return _this.state.toast.indexOf(parseInt(id, 10)) !== -1;
+ }, _temp), _possibleConstructorReturn(_this, _ret);
+ }
+
+ /**
+ * Hold toast ids
+ */
+
+
+ /**
+ * Hold toast's informations:
+ * - what to render
+ * - position
+ * - raw content
+ * - options
+ */
+
+
+ _createClass(ToastContainer, [{
+ key: 'componentDidMount',
+ value: function componentDidMount() {
+ var _this2 = this;
+
+ var SHOW = _constant.ACTION.SHOW,
+ CLEAR = _constant.ACTION.CLEAR,
+ MOUNTED = _constant.ACTION.MOUNTED;
+
+ _EventManager2.default.on(SHOW, function (content, options) {
+ return _this2.show(content, options);
+ }).on(CLEAR, function (id) {
+ return id !== null ? _this2.removeToast(id) : _this2.clear();
+ }).emit(MOUNTED, this);
+ document.addEventListener('visibilitychange', this.isDocumentHidden);
+ }
+ }, {
+ key: 'componentWillUnmount',
+ value: function componentWillUnmount() {
+ _EventManager2.default.off(_constant.ACTION.SHOW);
+ _EventManager2.default.off(_constant.ACTION.CLEAR);
+ document.removeEventListener('visibilitychange', this.isDocumentHidden);
+ }
+ }, {
+ key: 'removeToast',
+ value: function removeToast(id) {
+ this.setState({
+ toast: this.state.toast.filter(function (v) {
+ return v !== parseInt(id, 10);
+ })
+ });
+ }
+ }, {
+ key: 'makeCloseButton',
+ value: function makeCloseButton(toastClose, toastId, type) {
+ var _this3 = this;
+
+ var closeButton = this.props.closeButton;
+
+ if ((0, _react.isValidElement)(toastClose) || toastClose === false) {
+ closeButton = toastClose;
+ }
+
+ return closeButton === false ? false : (0, _react.cloneElement)(closeButton, {
+ closeToast: function closeToast() {
+ return _this3.removeToast(toastId);
+ },
+ type: type
+ });
+ }
+ }, {
+ key: 'getAutoCloseDelay',
+ value: function getAutoCloseDelay(toastAutoClose) {
+ return toastAutoClose === false || (0, _propValidator.isValidDelay)(toastAutoClose) ? toastAutoClose : this.props.autoClose;
+ }
+ }, {
+ key: 'isFunction',
+ value: function isFunction(object) {
+ return !!(object && object.constructor && object.call && object.apply);
+ }
+ }, {
+ key: 'canBeRendered',
+ value: function canBeRendered(content) {
+ return (0, _react.isValidElement)(content) || typeof content === 'string' || typeof content === 'number' || this.isFunction(content);
+ }
+ }, {
+ key: 'show',
+ value: function show(content, options) {
+ var _this4 = this;
+
+ if (!this.canBeRendered(content)) {
+ throw new Error('The element you provided cannot be rendered. You provided an element of type ' + (typeof content === 'undefined' ? 'undefined' : _typeof(content)));
+ }
+ var toastId = options.toastId;
+ var closeToast = function closeToast() {
+ return _this4.removeToast(toastId);
+ };
+ var toastOptions = {
+ id: toastId,
+ type: options.type,
+ closeToast: closeToast,
+ updateId: options.updateId,
+ position: options.position || this.props.position,
+ transition: options.transition || this.props.transition,
+ className: options.className || this.props.toastClassName,
+ bodyClassName: options.bodyClassName || this.props.bodyClassName,
+ closeButton: this.makeCloseButton(options.closeButton, toastId, options.type),
+ pauseOnHover: options.pauseOnHover !== null ? options.pauseOnHover : this.props.pauseOnHover,
+ closeOnClick: options.closeOnClick !== null ? options.closeOnClick : this.props.closeOnClick,
+ progressClassName: options.progressClassName || this.props.progressClassName,
+ autoClose: this.getAutoCloseDelay(options.autoClose !== false ? parseInt(options.autoClose, 10) : options.autoClose),
+ hideProgressBar: typeof options.hideProgressBar === 'boolean' ? options.hideProgressBar : this.props.hideProgressBar
+ };
+
+ this.isFunction(options.onOpen) && (toastOptions.onOpen = options.onOpen);
+
+ this.isFunction(options.onClose) && (toastOptions.onClose = options.onClose);
+
+ /**
+ * add closeToast function to react component only
+ */
+ if ((0, _react.isValidElement)(content) && typeof content.type !== 'string' && typeof content.type !== 'number') {
+ content = (0, _react.cloneElement)(content, {
+ closeToast: closeToast
+ });
+ } else if (this.isFunction(content)) {
+ content = content({ closeToast: closeToast });
+ }
+
+ this.collection = _extends({}, this.collection, _defineProperty({}, toastId, {
+ position: toastOptions.position,
+ options: toastOptions,
+ content: content
+ }));
+
+ this.setState({
+ toast: toastOptions.updateId !== null ? [].concat(_toConsumableArray(this.state.toast)) : [].concat(_toConsumableArray(this.state.toast), [toastId])
+ });
+ }
+ }, {
+ key: 'makeToast',
+ value: function makeToast(content, options) {
+ return _react2.default.createElement(
+ _Toast2.default,
+ _extends({}, options, {
+ isDocumentHidden: this.state.isDocumentHidden,
+ key: 'toast-' + options.id
+ }),
+ content
+ );
+ }
+ }, {
+ key: 'clear',
+ value: function clear() {
+ this.setState({ toast: [] });
+ }
+ }, {
+ key: 'renderToast',
+ value: function renderToast() {
+ var _this5 = this;
+
+ var toastToRender = {};
+ var _props = this.props,
+ className = _props.className,
+ style = _props.style,
+ newestOnTop = _props.newestOnTop;
+
+ var collection = newestOnTop ? Object.keys(this.collection).reverse() : Object.keys(this.collection);
+
+ collection.forEach(function (toastId) {
+ var item = _this5.collection[toastId];
+ toastToRender[item.position] || (toastToRender[item.position] = []);
+
+ if (_this5.state.toast.indexOf(parseInt(toastId, 10)) !== -1) {
+ toastToRender[item.position].push(_this5.makeToast(item.content, item.options));
+ } else {
+ toastToRender[item.position].push(null);
+ delete _this5.collection[toastId];
+ }
+ });
+
+ return Object.keys(toastToRender).map(function (position) {
+ var disablePointer = toastToRender[position].length === 1 && toastToRender[position][0] === null;
+
+ return _react2.default.createElement(
+ _TransitionGroup2.default,
+ _extends({}, typeof className !== 'string' ? (0, _glamor.css)(container(disablePointer, position), className) : container(disablePointer, position), typeof className === 'string' && { className: className }, style !== null && { style: style }, {
+ key: 'container-' + position
+ }),
+ toastToRender[position]
+ );
+ });
+ }
+ }, {
+ key: 'render',
+ value: function render() {
+ return _react2.default.createElement(
+ 'div',
+ null,
+ this.renderToast()
+ );
+ }
+ }]);
+
+ return ToastContainer;
+}(_react.Component);
+
+ToastContainer.propTypes = {
+ /**
+ * Set toast position
+ */
+ position: _propTypes2.default.oneOf((0, _propValidator.objectValues)(_constant.POSITION)),
+
+ /**
+ * Disable or set autoClose delay
+ */
+ autoClose: _propValidator.falseOrDelay,
+
+ /**
+ * Disable or set a custom react element for the close button
+ */
+ closeButton: _propValidator.falseOrElement,
+
+ /**
+ * Hide or not progress bar when autoClose is enabled
+ */
+ hideProgressBar: _propTypes2.default.bool,
+
+ /**
+ * Pause toast duration on hover
+ */
+ pauseOnHover: _propTypes2.default.bool,
+
+ /**
+ * Dismiss toast on click
+ */
+ closeOnClick: _propTypes2.default.bool,
+
+ /**
+ * Newest on top
+ */
+ newestOnTop: _propTypes2.default.bool,
+
+ /**
+ * An optional className
+ */
+ className: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),
+
+ /**
+ * An optional style
+ */
+ style: _propTypes2.default.object,
+
+ /**
+ * An optional className for the toast
+ */
+ toastClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),
+
+ /**
+ * An optional className for the toast body
+ */
+ bodyClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),
+
+ /**
+ * An optional className for the toast progress bar
+ */
+ progressClassName: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.object]),
+
+ /**
+ * Define enter and exit transition using react-transition-group
+ */
+ transition: _propTypes2.default.func
+};
+ToastContainer.defaultProps = {
+ position: _constant.POSITION.TOP_RIGHT,
+ transition: _DefaultTransition2.default,
+ autoClose: 5000,
+ hideProgressBar: false,
+ closeButton: _react2.default.createElement(_DefaultCloseButton2.default, null),
+ pauseOnHover: true,
+ closeOnClick: true,
+ newestOnTop: false,
+ className: null,
+ style: null,
+ toastClassName: '',
+ bodyClassName: '',
+ progressClassName: ''
+};
+exports.default = ToastContainer;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/lib/animation.js b/goTorrentWebUI/node_modules/react-toastify/lib/animation.js
new file mode 100644
index 00000000..3857b1fd
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/lib/animation.js
@@ -0,0 +1,150 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = getAnimation;
+
+var _constant = require('./constant');
+
+function getAnimation(pos) {
+ switch (pos) {
+ case _constant.POSITION.TOP_RIGHT:
+ case _constant.POSITION.BOTTOM_RIGHT:
+ default:
+ return {
+ enter: {
+ from: {
+ opacity: 0,
+ transform: 'translate3d(3000px, 0, 0)'
+ },
+ '60%': {
+ opacity: 1,
+ transform: 'translate3d(-25px, 0, 0)'
+ },
+ '75%': {
+ transform: 'translate3d(10px, 0, 0)'
+ },
+ '90%': {
+ transform: 'translate3d(-5px, 0, 0)'
+ },
+ to: {
+ transform: 'none'
+ }
+ },
+ exit: {
+ '20%': {
+ opacity: 1,
+ transform: 'translate3d(-20px, 0, 0)'
+ },
+ to: {
+ opacity: 0,
+ transform: 'translate3d(2000px, 0, 0)'
+ }
+ }
+ };
+ case _constant.POSITION.TOP_LEFT:
+ case _constant.POSITION.BOTTOM_LEFT:
+ return {
+ enter: {
+ '0%': {
+ opacity: 0,
+ transform: 'translate3d(-3000px, 0, 0)'
+ },
+ '60%': {
+ opacity: 1,
+ transform: 'translate3d(25px, 0, 0)'
+ },
+ '75%': {
+ transform: 'translate3d(-10px, 0, 0)'
+ },
+ '90%': {
+ transform: 'translate3d(5px, 0, 0)'
+ },
+ to: {
+ transform: 'none'
+ }
+ },
+ exit: {
+ '20%': {
+ opacity: 1,
+ transform: 'translate3d(20px, 0, 0)'
+ },
+ to: {
+ opacity: 0,
+ transform: 'translate3d(-2000px, 0, 0)'
+ }
+ }
+ };
+ case _constant.POSITION.BOTTOM_CENTER:
+ return {
+ enter: {
+ from: {
+ opacity: 0,
+ transform: 'translate3d(0, 3000px, 0)'
+ },
+ '60%': {
+ opacity: 1,
+ transform: 'translate3d(0, -20px, 0)'
+ },
+ '75%': {
+ transform: 'translate3d(0, 10px, 0)'
+ },
+ '90%': {
+ transform: 'translate3d(0, -5px, 0)'
+ },
+ to: {
+ transform: 'translate3d(0, 0, 0)'
+ }
+ },
+ exit: {
+ '20%': {
+ transform: 'translate3d(0, 10px, 0)'
+ },
+ '40%, 45%': {
+ opacity: 1,
+ transform: 'translate3d(0, -20px, 0)'
+ },
+ to: {
+ opacity: 0,
+ transform: 'translate3d(0, 2000px, 0)'
+ }
+ }
+ };
+ case _constant.POSITION.TOP_CENTER:
+ return {
+ enter: {
+ '0%': {
+ opacity: 0,
+ transform: 'translate3d(0, -3000px, 0)'
+ },
+ '60%': {
+ opacity: 1,
+ transform: 'translate3d(0, 25px, 0)'
+ },
+ '75%': {
+ transform: 'translate3d(0, -10px, 0)'
+ },
+ '90%': {
+ transform: 'translate3d(0, 5px, 0)'
+ },
+ to: {
+ transform: 'none'
+ }
+ },
+ exit: {
+ '20%': {
+ transform: 'translate3d(0, -10px, 0)'
+ },
+ '40%, 45%': {
+ opacity: 1,
+ transform: 'translate3d(0, 20px, 0)'
+ },
+ to: {
+ opacity: 0,
+ transform: 'translate3d(0, -2000px, 0)'
+ }
+ }
+ };
+ }
+}
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/lib/config.js b/goTorrentWebUI/node_modules/react-toastify/lib/config.js
new file mode 100644
index 00000000..413f9636
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/lib/config.js
@@ -0,0 +1,18 @@
+"use strict";
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = {
+ width: "320px",
+ background: "#ffffff",
+ fontColor: "#999",
+ fontSize: "13px",
+ colorDefault: "#fff",
+ colorInfo: "#3498db",
+ colorSuccess: "#07bc0c",
+ colorWarning: "#f1c40f",
+ colorError: "#e74c3c",
+ colorProgressDefault: "linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55)",
+ smartphonePortrait: "only screen and (max-width : 480px)"
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/lib/constant.js b/goTorrentWebUI/node_modules/react-toastify/lib/constant.js
new file mode 100644
index 00000000..8905d75b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/lib/constant.js
@@ -0,0 +1,26 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+var POSITION = exports.POSITION = {
+ TOP_LEFT: 'top-left',
+ TOP_RIGHT: 'top-right',
+ TOP_CENTER: 'top-center',
+ BOTTOM_LEFT: 'bottom-left',
+ BOTTOM_RIGHT: 'bottom-right',
+ BOTTOM_CENTER: 'bottom-center'
+};
+
+var TYPE = exports.TYPE = {
+ INFO: 'info',
+ SUCCESS: 'success',
+ WARNING: 'warning',
+ ERROR: 'error',
+ DEFAULT: 'default'
+};
+var ACTION = exports.ACTION = {
+ SHOW: 'SHOW_TOAST',
+ CLEAR: 'CLEAR_TOAST',
+ MOUNTED: 'CONTAINER_MOUNTED'
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/lib/index.js b/goTorrentWebUI/node_modules/react-toastify/lib/index.js
new file mode 100644
index 00000000..069dd12d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/lib/index.js
@@ -0,0 +1,22 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.style = exports.toast = exports.ToastContainer = undefined;
+
+var _ToastContainer = require('./ToastContainer');
+
+var _ToastContainer2 = _interopRequireDefault(_ToastContainer);
+
+var _toaster = require('./toaster');
+
+var _toaster2 = _interopRequireDefault(_toaster);
+
+var _style = require('./style');
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+exports.ToastContainer = _ToastContainer2.default;
+exports.toast = _toaster2.default;
+exports.style = _style.defineStyle;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/lib/style.js b/goTorrentWebUI/node_modules/react-toastify/lib/style.js
new file mode 100644
index 00000000..e275ae85
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/lib/style.js
@@ -0,0 +1,50 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.defineStyle = defineStyle;
+var style = {
+ width: '320px',
+ colorDefault: '#fff',
+ colorInfo: '#3498db',
+ colorSuccess: '#07bc0c',
+ colorWarning: '#f1c40f',
+ colorError: '#e74c3c',
+ colorProgressDefault: 'linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55)',
+ mobile: 'only screen and (max-width : 480px)',
+ fontFamily: 'sans-serif',
+ zIndex: 9999,
+ TOP_LEFT: {
+ top: '1em',
+ left: '1em'
+ },
+ TOP_CENTER: {
+ top: '1em',
+ left: '50%'
+ },
+ TOP_RIGHT: {
+ top: '1em',
+ right: '1em'
+ },
+ BOTTOM_LEFT: {
+ bottom: '1em',
+ left: '1em'
+ },
+ BOTTOM_CENTER: {
+ bottom: '1em',
+ left: '50%'
+ },
+ BOTTOM_RIGHT: {
+ bottom: '1em',
+ right: '1em'
+ }
+};
+
+function defineStyle(props) {
+ for (var prop in props) {
+ style[prop] = props[prop];
+ }
+}
+
+exports.default = style;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/lib/toaster.js b/goTorrentWebUI/node_modules/react-toastify/lib/toaster.js
new file mode 100644
index 00000000..f12f440f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/lib/toaster.js
@@ -0,0 +1,129 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+var _EventManager = require('./util/EventManager');
+
+var _EventManager2 = _interopRequireDefault(_EventManager);
+
+var _constant = require('./constant');
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var defaultOptions = {
+ type: _constant.TYPE.DEFAULT,
+ autoClose: null,
+ closeButton: null,
+ hideProgressBar: null,
+ position: null,
+ pauseOnHover: null,
+ closeOnClick: null,
+ className: null,
+ bodyClassName: null,
+ progressClassName: null,
+ transition: null,
+ updateId: null
+};
+
+var container = null;
+var queue = [];
+var toastId = 0;
+
+/**
+ * Merge provided options with the defaults settings and generate the toastId
+ * @param {*} options
+ */
+function mergeOptions(options, type) {
+ return _extends({}, defaultOptions, options, {
+ type: type,
+ toastId: ++toastId
+ });
+}
+
+/**
+ * Dispatch toast. If the container is not mounted, the toast is enqueued
+ * @param {*} content
+ * @param {*} options
+ */
+function emitEvent(content, options) {
+ if (container !== null) {
+ _EventManager2.default.emit(_constant.ACTION.SHOW, content, options);
+ } else {
+ queue.push({ action: _constant.ACTION.SHOW, content: content, options: options });
+ }
+
+ return options.toastId;
+}
+
+var toaster = _extends(function (content, options) {
+ return emitEvent(content, mergeOptions(options, options && options.type || _constant.TYPE.DEFAULT));
+}, {
+ success: function success(content, options) {
+ return emitEvent(content, mergeOptions(options, _constant.TYPE.SUCCESS));
+ },
+ info: function info(content, options) {
+ return emitEvent(content, mergeOptions(options, _constant.TYPE.INFO));
+ },
+ warn: function warn(content, options) {
+ return emitEvent(content, mergeOptions(options, _constant.TYPE.WARNING));
+ },
+ warning: function warning(content, options) {
+ return emitEvent(content, mergeOptions(options, _constant.TYPE.WARNING));
+ },
+ error: function error(content, options) {
+ return emitEvent(content, mergeOptions(options, _constant.TYPE.ERROR));
+ },
+ dismiss: function dismiss() {
+ var id = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
+ return container && _EventManager2.default.emit(_constant.ACTION.CLEAR, id);
+ },
+ isActive: function isActive() {
+ return false;
+ },
+ update: function update(id, options) {
+ if (container && typeof container.collection[id] !== 'undefined') {
+ var _container$collection = container.collection[id],
+ oldOptions = _container$collection.options,
+ oldContent = _container$collection.content;
+
+ var updateId = oldOptions.updateId !== null ? oldOptions.updateId + 1 : 1;
+
+ var nextOptions = _extends({}, oldOptions, options, {
+ toastId: id,
+ updateId: updateId
+ });
+ var content = typeof nextOptions.render !== 'undefined' ? nextOptions.render : oldContent;
+ delete nextOptions.render;
+
+ return emitEvent(content, nextOptions);
+ }
+
+ return false;
+ }
+}, {
+ POSITION: _constant.POSITION,
+ TYPE: _constant.TYPE
+});
+
+/**
+ * Wait until the ToastContainer is mounted to dispatch the toast
+ * and attach isActive method
+ */
+_EventManager2.default.on(_constant.ACTION.MOUNTED, function (containerInstance) {
+ container = containerInstance;
+
+ toaster.isActive = function (id) {
+ return container.isToastActive(id);
+ };
+
+ queue.forEach(function (item) {
+ _EventManager2.default.emit(item.action, item.content, item.options);
+ });
+ queue = [];
+});
+
+exports.default = toaster;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/lib/util/EventManager.js b/goTorrentWebUI/node_modules/react-toastify/lib/util/EventManager.js
new file mode 100644
index 00000000..e2314bc7
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/lib/util/EventManager.js
@@ -0,0 +1,47 @@
+"use strict";
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }
+
+var eventManager = {
+ eventList: new Map(),
+
+ on: function on(event, callback) {
+ this.eventList.has(event) || this.eventList.set(event, []);
+
+ this.eventList.get(event).push(callback);
+
+ return this;
+ },
+ off: function off() {
+ var event = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
+
+ return this.eventList.delete(event);
+ },
+ emit: function emit(event) {
+ var _this = this;
+
+ for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
+ args[_key - 1] = arguments[_key];
+ }
+
+ if (!this.eventList.has(event)) {
+ /* eslint no-console: 0 */
+ console.warn("<" + event + "> Event is not registered. Did you forgot to bind the event ?");
+ return false;
+ }
+
+ this.eventList.get(event).forEach(function (callback) {
+ return setTimeout(function () {
+ return callback.call.apply(callback, [_this].concat(_toConsumableArray(args)));
+ }, 0);
+ });
+
+ return true;
+ }
+};
+
+exports.default = eventManager;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/lib/util/objectValues.js b/goTorrentWebUI/node_modules/react-toastify/lib/util/objectValues.js
new file mode 100644
index 00000000..15954359
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/lib/util/objectValues.js
@@ -0,0 +1,11 @@
+"use strict";
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+exports.default = function (obj) {
+ return Object.keys(obj).map(function (key) {
+ return obj[key];
+ });
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/lib/util/propValidator.js b/goTorrentWebUI/node_modules/react-toastify/lib/util/propValidator.js
new file mode 100644
index 00000000..792e176b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/lib/util/propValidator.js
@@ -0,0 +1,53 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.falseOrElement = exports.falseOrDelay = undefined;
+exports.isValidDelay = isValidDelay;
+exports.objectValues = objectValues;
+
+var _react = require('react');
+
+function isValidDelay(val) {
+ return typeof val === 'number' && !isNaN(val) && val > 0;
+}
+
+function objectValues(obj) {
+ return Object.keys(obj).map(function (key) {
+ return obj[key];
+ });
+}
+
+function withRequired(fn) {
+ fn.isRequired = function (props, propName, componentName) {
+ var prop = props[propName];
+
+ if (typeof prop === 'undefined') {
+ return new Error('The prop ' + propName + ' is marked as required in \n ' + componentName + ', but its value is undefined.');
+ }
+
+ fn(props, propName, componentName);
+ };
+ return fn;
+}
+
+var falseOrDelay = exports.falseOrDelay = withRequired(function (props, propName, componentName) {
+ var prop = props[propName];
+
+ if (prop !== false && !isValidDelay(prop)) {
+ return new Error(componentName + ' expect ' + propName + ' \n to be a valid Number > 0 or equal to false. ' + prop + ' given.');
+ }
+
+ return null;
+});
+
+var falseOrElement = exports.falseOrElement = withRequired(function (props, propName, componentName) {
+ var prop = props[propName];
+
+ if (prop !== false && !(0, _react.isValidElement)(prop)) {
+ return new Error(componentName + ' expect ' + propName + ' \n to be a valid react element or equal to false. ' + prop + ' given.');
+ }
+
+ return null;
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/.bin/loose-envify b/goTorrentWebUI/node_modules/react-toastify/node_modules/.bin/loose-envify
new file mode 100644
index 00000000..0939216f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/.bin/loose-envify
@@ -0,0 +1,15 @@
+#!/bin/sh
+basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
+
+case `uname` in
+ *CYGWIN*) basedir=`cygpath -w "$basedir"`;;
+esac
+
+if [ -x "$basedir/node" ]; then
+ "$basedir/node" "$basedir/../loose-envify/cli.js" "$@"
+ ret=$?
+else
+ node "$basedir/../loose-envify/cli.js" "$@"
+ ret=$?
+fi
+exit $ret
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/.bin/loose-envify.cmd b/goTorrentWebUI/node_modules/react-toastify/node_modules/.bin/loose-envify.cmd
new file mode 100644
index 00000000..6238bbb2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/.bin/loose-envify.cmd
@@ -0,0 +1,7 @@
+@IF EXIST "%~dp0\node.exe" (
+ "%~dp0\node.exe" "%~dp0\..\loose-envify\cli.js" %*
+) ELSE (
+ @SETLOCAL
+ @SET PATHEXT=%PATHEXT:;.JS;=;%
+ node "%~dp0\..\loose-envify\cli.js" %*
+)
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/asap/CHANGES.md b/goTorrentWebUI/node_modules/react-toastify/node_modules/asap/CHANGES.md
new file mode 100644
index 00000000..f105b919
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/asap/CHANGES.md
@@ -0,0 +1,70 @@
+
+## 2.0.6
+
+Version 2.0.4 adds support for React Native by clarifying in package.json that
+the browser environment does not support Node.js domains.
+Why this is necessary, we leave as an exercise for the user.
+
+## 2.0.3
+
+Version 2.0.3 fixes a bug when adjusting the capacity of the task queue.
+
+## 2.0.1-2.02
+
+Version 2.0.1 fixes a bug in the way redirects were expressed that affected the
+function of Browserify, but which Mr would tolerate.
+
+## 2.0.0
+
+Version 2 of ASAP is a full rewrite with a few salient changes.
+First, the ASAP source is CommonJS only and designed with [Browserify][] and
+[Browserify-compatible][Mr] module loaders in mind.
+
+[Browserify]: https://github.com/substack/node-browserify
+[Mr]: https://github.com/montagejs/mr
+
+The new version has been refactored in two dimensions.
+Support for Node.js and browsers have been separated, using Browserify
+redirects and ASAP has been divided into two modules.
+The "raw" layer depends on the tasks to catch thrown exceptions and unravel
+Node.js domains.
+
+The full implementation of ASAP is loadable as `require("asap")` in both Node.js
+and browsers.
+
+The raw layer that lacks exception handling overhead is loadable as
+`require("asap/raw")`.
+The interface is the same for both layers.
+
+Tasks are no longer required to be functions, but can rather be any object that
+implements `task.call()`.
+With this feature you can recycle task objects to avoid garbage collector churn
+and avoid closures in general.
+
+The implementation has been rigorously documented so that our successors can
+understand the scope of the problem that this module solves and all of its
+nuances, ensuring that the next generation of implementations know what details
+are essential.
+
+- [asap.js](https://github.com/kriskowal/asap/blob/master/asap.js)
+- [raw.js](https://github.com/kriskowal/asap/blob/master/raw.js)
+- [browser-asap.js](https://github.com/kriskowal/asap/blob/master/browser-asap.js)
+- [browser-raw.js](https://github.com/kriskowal/asap/blob/master/browser-raw.js)
+
+The new version has also been rigorously tested across a broad spectrum of
+browsers, in both the window and worker context.
+The following charts capture the browser test results for the most recent
+release.
+The first chart shows test results for ASAP running in the main window context.
+The second chart shows test results for ASAP running in a web worker context.
+Test results are inconclusive (grey) on browsers that do not support web
+workers.
+These data are captured automatically by [Continuous
+Integration][].
+
+
+
+
+
+[Continuous Integration]: https://github.com/kriskowal/asap/blob/master/CONTRIBUTING.md
+
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/asap/LICENSE.md b/goTorrentWebUI/node_modules/react-toastify/node_modules/asap/LICENSE.md
new file mode 100644
index 00000000..ba18c613
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/asap/LICENSE.md
@@ -0,0 +1,21 @@
+
+Copyright 2009–2014 Contributors. All rights reserved.
+
+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/goTorrentWebUI/node_modules/react-toastify/node_modules/asap/README.md b/goTorrentWebUI/node_modules/react-toastify/node_modules/asap/README.md
new file mode 100644
index 00000000..452fd8c2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/asap/README.md
@@ -0,0 +1,237 @@
+# ASAP
+
+[](https://travis-ci.org/kriskowal/asap)
+
+Promise and asynchronous observer libraries, as well as hand-rolled callback
+programs and libraries, often need a mechanism to postpone the execution of a
+callback until the next available event.
+(See [Designing API’s for Asynchrony][Zalgo].)
+The `asap` function executes a task **as soon as possible** but not before it
+returns, waiting only for the completion of the current event and previously
+scheduled tasks.
+
+```javascript
+asap(function () {
+ // ...
+});
+```
+
+[Zalgo]: http://blog.izs.me/post/59142742143/designing-apis-for-asynchrony
+
+This CommonJS package provides an `asap` module that exports a function that
+executes a task function *as soon as possible*.
+
+ASAP strives to schedule events to occur before yielding for IO, reflow,
+or redrawing.
+Each event receives an independent stack, with only platform code in parent
+frames and the events run in the order they are scheduled.
+
+ASAP provides a fast event queue that will execute tasks until it is
+empty before yielding to the JavaScript engine's underlying event-loop.
+When a task gets added to a previously empty event queue, ASAP schedules a flush
+event, preferring for that event to occur before the JavaScript engine has an
+opportunity to perform IO tasks or rendering, thus making the first task and
+subsequent tasks semantically indistinguishable.
+ASAP uses a variety of techniques to preserve this invariant on different
+versions of browsers and Node.js.
+
+By design, ASAP prevents input events from being handled until the task
+queue is empty.
+If the process is busy enough, this may cause incoming connection requests to be
+dropped, and may cause existing connections to inform the sender to reduce the
+transmission rate or stall.
+ASAP allows this on the theory that, if there is enough work to do, there is no
+sense in looking for trouble.
+As a consequence, ASAP can interfere with smooth animation.
+If your task should be tied to the rendering loop, consider using
+`requestAnimationFrame` instead.
+A long sequence of tasks can also effect the long running script dialog.
+If this is a problem, you may be able to use ASAP’s cousin `setImmediate` to
+break long processes into shorter intervals and periodically allow the browser
+to breathe.
+`setImmediate` will yield for IO, reflow, and repaint events.
+It also returns a handler and can be canceled.
+For a `setImmediate` shim, consider [YuzuJS setImmediate][setImmediate].
+
+[setImmediate]: https://github.com/YuzuJS/setImmediate
+
+Take care.
+ASAP can sustain infinite recursive calls without warning.
+It will not halt from a stack overflow, and it will not consume unbounded
+memory.
+This is behaviorally equivalent to an infinite loop.
+Just as with infinite loops, you can monitor a Node.js process for this behavior
+with a heart-beat signal.
+As with infinite loops, a very small amount of caution goes a long way to
+avoiding problems.
+
+```javascript
+function loop() {
+ asap(loop);
+}
+loop();
+```
+
+In browsers, if a task throws an exception, it will not interrupt the flushing
+of high-priority tasks.
+The exception will be postponed to a later, low-priority event to avoid
+slow-downs.
+In Node.js, if a task throws an exception, ASAP will resume flushing only if—and
+only after—the error is handled by `domain.on("error")` or
+`process.on("uncaughtException")`.
+
+## Raw ASAP
+
+Checking for exceptions comes at a cost.
+The package also provides an `asap/raw` module that exports the underlying
+implementation which is faster but stalls if a task throws an exception.
+This internal version of the ASAP function does not check for errors.
+If a task does throw an error, it will stall the event queue unless you manually
+call `rawAsap.requestFlush()` before throwing the error, or any time after.
+
+In Node.js, `asap/raw` also runs all tasks outside any domain.
+If you need a task to be bound to your domain, you will have to do it manually.
+
+```js
+if (process.domain) {
+ task = process.domain.bind(task);
+}
+rawAsap(task);
+```
+
+## Tasks
+
+A task may be any object that implements `call()`.
+A function will suffice, but closures tend not to be reusable and can cause
+garbage collector churn.
+Both `asap` and `rawAsap` accept task objects to give you the option of
+recycling task objects or using higher callable object abstractions.
+See the `asap` source for an illustration.
+
+
+## Compatibility
+
+ASAP is tested on Node.js v0.10 and in a broad spectrum of web browsers.
+The following charts capture the browser test results for the most recent
+release.
+The first chart shows test results for ASAP running in the main window context.
+The second chart shows test results for ASAP running in a web worker context.
+Test results are inconclusive (grey) on browsers that do not support web
+workers.
+These data are captured automatically by [Continuous
+Integration][].
+
+[Continuous Integration]: https://github.com/kriskowal/asap/blob/master/CONTRIBUTING.md
+
+
+
+
+
+## Caveats
+
+When a task is added to an empty event queue, it is not always possible to
+guarantee that the task queue will begin flushing immediately after the current
+event.
+However, once the task queue begins flushing, it will not yield until the queue
+is empty, even if the queue grows while executing tasks.
+
+The following browsers allow the use of [DOM mutation observers][] to access
+the HTML [microtask queue][], and thus begin flushing ASAP's task queue
+immediately at the end of the current event loop turn, before any rendering or
+IO:
+
+[microtask queue]: http://www.whatwg.org/specs/web-apps/current-work/multipage/webappapis.html#microtask-queue
+[DOM mutation observers]: http://dom.spec.whatwg.org/#mutation-observers
+
+- Android 4–4.3
+- Chrome 26–34
+- Firefox 14–29
+- Internet Explorer 11
+- iPad Safari 6–7.1
+- iPhone Safari 7–7.1
+- Safari 6–7
+
+In the absense of mutation observers, there are a few browsers, and situations
+like web workers in some of the above browsers, where [message channels][]
+would be a useful way to avoid falling back to timers.
+Message channels give direct access to the HTML [task queue][], so the ASAP
+task queue would flush after any already queued rendering and IO tasks, but
+without having the minimum delay imposed by timers.
+However, among these browsers, Internet Explorer 10 and Safari do not reliably
+dispatch messages, so they are not worth the trouble to implement.
+
+[message channels]: http://www.whatwg.org/specs/web-apps/current-work/multipage/web-messaging.html#message-channels
+[task queue]: http://www.whatwg.org/specs/web-apps/current-work/multipage/webappapis.html#concept-task
+
+- Internet Explorer 10
+- Safair 5.0-1
+- Opera 11-12
+
+In the absense of mutation observers, these browsers and the following browsers
+all fall back to using `setTimeout` and `setInterval` to ensure that a `flush`
+occurs.
+The implementation uses both and cancels whatever handler loses the race, since
+`setTimeout` tends to occasionally skip tasks in unisolated circumstances.
+Timers generally delay the flushing of ASAP's task queue for four milliseconds.
+
+- Firefox 3–13
+- Internet Explorer 6–10
+- iPad Safari 4.3
+- Lynx 2.8.7
+
+
+## Heritage
+
+ASAP has been factored out of the [Q][] asynchronous promise library.
+It originally had a naïve implementation in terms of `setTimeout`, but
+[Malte Ubl][NonBlocking] provided an insight that `postMessage` might be
+useful for creating a high-priority, no-delay event dispatch hack.
+Since then, Internet Explorer proposed and implemented `setImmediate`.
+Robert Katić began contributing to Q by measuring the performance of
+the internal implementation of `asap`, paying particular attention to
+error recovery.
+Domenic, Robert, and Kris Kowal collectively settled on the current strategy of
+unrolling the high-priority event queue internally regardless of what strategy
+we used to dispatch the potentially lower-priority flush event.
+Domenic went on to make ASAP cooperate with Node.js domains.
+
+[Q]: https://github.com/kriskowal/q
+[NonBlocking]: http://www.nonblocking.io/2011/06/windownexttick.html
+
+For further reading, Nicholas Zakas provided a thorough article on [The
+Case for setImmediate][NCZ].
+
+[NCZ]: http://www.nczonline.net/blog/2013/07/09/the-case-for-setimmediate/
+
+Ember’s RSVP promise implementation later [adopted][RSVP ASAP] the name ASAP but
+further developed the implentation.
+Particularly, The `MessagePort` implementation was abandoned due to interaction
+[problems with Mobile Internet Explorer][IE Problems] in favor of an
+implementation backed on the newer and more reliable DOM `MutationObserver`
+interface.
+These changes were back-ported into this library.
+
+[IE Problems]: https://github.com/cujojs/when/issues/197
+[RSVP ASAP]: https://github.com/tildeio/rsvp.js/blob/cddf7232546a9cf858524b75cde6f9edf72620a7/lib/rsvp/asap.js
+
+In addition, ASAP factored into `asap` and `asap/raw`, such that `asap` remained
+exception-safe, but `asap/raw` provided a tight kernel that could be used for
+tasks that guaranteed that they would not throw exceptions.
+This core is useful for promise implementations that capture thrown errors in
+rejected promises and do not need a second safety net.
+At the same time, the exception handling in `asap` was factored into separate
+implementations for Node.js and browsers, using the the [Browserify][Browser
+Config] `browser` property in `package.json` to instruct browser module loaders
+and bundlers, including [Browserify][], [Mr][], and [Mop][], to use the
+browser-only implementation.
+
+[Browser Config]: https://gist.github.com/defunctzombie/4339901
+[Browserify]: https://github.com/substack/node-browserify
+[Mr]: https://github.com/montagejs/mr
+[Mop]: https://github.com/montagejs/mop
+
+## License
+
+Copyright 2009-2014 by Contributors
+MIT License (enclosed)
+
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/asap/asap.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/asap/asap.js
new file mode 100644
index 00000000..f04fcd58
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/asap/asap.js
@@ -0,0 +1,65 @@
+"use strict";
+
+var rawAsap = require("./raw");
+var freeTasks = [];
+
+/**
+ * Calls a task as soon as possible after returning, in its own event, with
+ * priority over IO events. An exception thrown in a task can be handled by
+ * `process.on("uncaughtException") or `domain.on("error")`, but will otherwise
+ * crash the process. If the error is handled, all subsequent tasks will
+ * resume.
+ *
+ * @param {{call}} task A callable object, typically a function that takes no
+ * arguments.
+ */
+module.exports = asap;
+function asap(task) {
+ var rawTask;
+ if (freeTasks.length) {
+ rawTask = freeTasks.pop();
+ } else {
+ rawTask = new RawTask();
+ }
+ rawTask.task = task;
+ rawTask.domain = process.domain;
+ rawAsap(rawTask);
+}
+
+function RawTask() {
+ this.task = null;
+ this.domain = null;
+}
+
+RawTask.prototype.call = function () {
+ if (this.domain) {
+ this.domain.enter();
+ }
+ var threw = true;
+ try {
+ this.task.call();
+ threw = false;
+ // If the task throws an exception (presumably) Node.js restores the
+ // domain stack for the next event.
+ if (this.domain) {
+ this.domain.exit();
+ }
+ } finally {
+ // We use try/finally and a threw flag to avoid messing up stack traces
+ // when we catch and release errors.
+ if (threw) {
+ // In Node.js, uncaught exceptions are considered fatal errors.
+ // Re-throw them to interrupt flushing!
+ // Ensure that flushing continues if an uncaught exception is
+ // suppressed listening process.on("uncaughtException") or
+ // domain.on("error").
+ rawAsap.requestFlush();
+ }
+ // If the task threw an error, we do not want to exit the domain here.
+ // Exiting the domain would prevent the domain from catching the error.
+ this.task = null;
+ this.domain = null;
+ freeTasks.push(this);
+ }
+};
+
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/asap/browser-asap.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/asap/browser-asap.js
new file mode 100644
index 00000000..805c9824
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/asap/browser-asap.js
@@ -0,0 +1,66 @@
+"use strict";
+
+// rawAsap provides everything we need except exception management.
+var rawAsap = require("./raw");
+// RawTasks are recycled to reduce GC churn.
+var freeTasks = [];
+// We queue errors to ensure they are thrown in right order (FIFO).
+// Array-as-queue is good enough here, since we are just dealing with exceptions.
+var pendingErrors = [];
+var requestErrorThrow = rawAsap.makeRequestCallFromTimer(throwFirstError);
+
+function throwFirstError() {
+ if (pendingErrors.length) {
+ throw pendingErrors.shift();
+ }
+}
+
+/**
+ * Calls a task as soon as possible after returning, in its own event, with priority
+ * over other events like animation, reflow, and repaint. An error thrown from an
+ * event will not interrupt, nor even substantially slow down the processing of
+ * other events, but will be rather postponed to a lower priority event.
+ * @param {{call}} task A callable object, typically a function that takes no
+ * arguments.
+ */
+module.exports = asap;
+function asap(task) {
+ var rawTask;
+ if (freeTasks.length) {
+ rawTask = freeTasks.pop();
+ } else {
+ rawTask = new RawTask();
+ }
+ rawTask.task = task;
+ rawAsap(rawTask);
+}
+
+// We wrap tasks with recyclable task objects. A task object implements
+// `call`, just like a function.
+function RawTask() {
+ this.task = null;
+}
+
+// The sole purpose of wrapping the task is to catch the exception and recycle
+// the task object after its single use.
+RawTask.prototype.call = function () {
+ try {
+ this.task.call();
+ } catch (error) {
+ if (asap.onerror) {
+ // This hook exists purely for testing purposes.
+ // Its name will be periodically randomized to break any code that
+ // depends on its existence.
+ asap.onerror(error);
+ } else {
+ // In a web browser, exceptions are not fatal. However, to avoid
+ // slowing down the queue of pending tasks, we rethrow the error in a
+ // lower priority turn.
+ pendingErrors.push(error);
+ requestErrorThrow();
+ }
+ } finally {
+ this.task = null;
+ freeTasks[freeTasks.length] = this;
+ }
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/asap/browser-raw.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/asap/browser-raw.js
new file mode 100644
index 00000000..9cee7e32
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/asap/browser-raw.js
@@ -0,0 +1,223 @@
+"use strict";
+
+// Use the fastest means possible to execute a task in its own turn, with
+// priority over other events including IO, animation, reflow, and redraw
+// events in browsers.
+//
+// An exception thrown by a task will permanently interrupt the processing of
+// subsequent tasks. The higher level `asap` function ensures that if an
+// exception is thrown by a task, that the task queue will continue flushing as
+// soon as possible, but if you use `rawAsap` directly, you are responsible to
+// either ensure that no exceptions are thrown from your task, or to manually
+// call `rawAsap.requestFlush` if an exception is thrown.
+module.exports = rawAsap;
+function rawAsap(task) {
+ if (!queue.length) {
+ requestFlush();
+ flushing = true;
+ }
+ // Equivalent to push, but avoids a function call.
+ queue[queue.length] = task;
+}
+
+var queue = [];
+// Once a flush has been requested, no further calls to `requestFlush` are
+// necessary until the next `flush` completes.
+var flushing = false;
+// `requestFlush` is an implementation-specific method that attempts to kick
+// off a `flush` event as quickly as possible. `flush` will attempt to exhaust
+// the event queue before yielding to the browser's own event loop.
+var requestFlush;
+// The position of the next task to execute in the task queue. This is
+// preserved between calls to `flush` so that it can be resumed if
+// a task throws an exception.
+var index = 0;
+// If a task schedules additional tasks recursively, the task queue can grow
+// unbounded. To prevent memory exhaustion, the task queue will periodically
+// truncate already-completed tasks.
+var capacity = 1024;
+
+// The flush function processes all tasks that have been scheduled with
+// `rawAsap` unless and until one of those tasks throws an exception.
+// If a task throws an exception, `flush` ensures that its state will remain
+// consistent and will resume where it left off when called again.
+// However, `flush` does not make any arrangements to be called again if an
+// exception is thrown.
+function flush() {
+ while (index < queue.length) {
+ var currentIndex = index;
+ // Advance the index before calling the task. This ensures that we will
+ // begin flushing on the next task the task throws an error.
+ index = index + 1;
+ queue[currentIndex].call();
+ // Prevent leaking memory for long chains of recursive calls to `asap`.
+ // If we call `asap` within tasks scheduled by `asap`, the queue will
+ // grow, but to avoid an O(n) walk for every task we execute, we don't
+ // shift tasks off the queue after they have been executed.
+ // Instead, we periodically shift 1024 tasks off the queue.
+ if (index > capacity) {
+ // Manually shift all values starting at the index back to the
+ // beginning of the queue.
+ for (var scan = 0, newLength = queue.length - index; scan < newLength; scan++) {
+ queue[scan] = queue[scan + index];
+ }
+ queue.length -= index;
+ index = 0;
+ }
+ }
+ queue.length = 0;
+ index = 0;
+ flushing = false;
+}
+
+// `requestFlush` is implemented using a strategy based on data collected from
+// every available SauceLabs Selenium web driver worker at time of writing.
+// https://docs.google.com/spreadsheets/d/1mG-5UYGup5qxGdEMWkhP6BWCz053NUb2E1QoUTU16uA/edit#gid=783724593
+
+// Safari 6 and 6.1 for desktop, iPad, and iPhone are the only browsers that
+// have WebKitMutationObserver but not un-prefixed MutationObserver.
+// Must use `global` or `self` instead of `window` to work in both frames and web
+// workers. `global` is a provision of Browserify, Mr, Mrs, or Mop.
+
+/* globals self */
+var scope = typeof global !== "undefined" ? global : self;
+var BrowserMutationObserver = scope.MutationObserver || scope.WebKitMutationObserver;
+
+// MutationObservers are desirable because they have high priority and work
+// reliably everywhere they are implemented.
+// They are implemented in all modern browsers.
+//
+// - Android 4-4.3
+// - Chrome 26-34
+// - Firefox 14-29
+// - Internet Explorer 11
+// - iPad Safari 6-7.1
+// - iPhone Safari 7-7.1
+// - Safari 6-7
+if (typeof BrowserMutationObserver === "function") {
+ requestFlush = makeRequestCallFromMutationObserver(flush);
+
+// MessageChannels are desirable because they give direct access to the HTML
+// task queue, are implemented in Internet Explorer 10, Safari 5.0-1, and Opera
+// 11-12, and in web workers in many engines.
+// Although message channels yield to any queued rendering and IO tasks, they
+// would be better than imposing the 4ms delay of timers.
+// However, they do not work reliably in Internet Explorer or Safari.
+
+// Internet Explorer 10 is the only browser that has setImmediate but does
+// not have MutationObservers.
+// Although setImmediate yields to the browser's renderer, it would be
+// preferrable to falling back to setTimeout since it does not have
+// the minimum 4ms penalty.
+// Unfortunately there appears to be a bug in Internet Explorer 10 Mobile (and
+// Desktop to a lesser extent) that renders both setImmediate and
+// MessageChannel useless for the purposes of ASAP.
+// https://github.com/kriskowal/q/issues/396
+
+// Timers are implemented universally.
+// We fall back to timers in workers in most engines, and in foreground
+// contexts in the following browsers.
+// However, note that even this simple case requires nuances to operate in a
+// broad spectrum of browsers.
+//
+// - Firefox 3-13
+// - Internet Explorer 6-9
+// - iPad Safari 4.3
+// - Lynx 2.8.7
+} else {
+ requestFlush = makeRequestCallFromTimer(flush);
+}
+
+// `requestFlush` requests that the high priority event queue be flushed as
+// soon as possible.
+// This is useful to prevent an error thrown in a task from stalling the event
+// queue if the exception handled by Node.js’s
+// `process.on("uncaughtException")` or by a domain.
+rawAsap.requestFlush = requestFlush;
+
+// To request a high priority event, we induce a mutation observer by toggling
+// the text of a text node between "1" and "-1".
+function makeRequestCallFromMutationObserver(callback) {
+ var toggle = 1;
+ var observer = new BrowserMutationObserver(callback);
+ var node = document.createTextNode("");
+ observer.observe(node, {characterData: true});
+ return function requestCall() {
+ toggle = -toggle;
+ node.data = toggle;
+ };
+}
+
+// The message channel technique was discovered by Malte Ubl and was the
+// original foundation for this library.
+// http://www.nonblocking.io/2011/06/windownexttick.html
+
+// Safari 6.0.5 (at least) intermittently fails to create message ports on a
+// page's first load. Thankfully, this version of Safari supports
+// MutationObservers, so we don't need to fall back in that case.
+
+// function makeRequestCallFromMessageChannel(callback) {
+// var channel = new MessageChannel();
+// channel.port1.onmessage = callback;
+// return function requestCall() {
+// channel.port2.postMessage(0);
+// };
+// }
+
+// For reasons explained above, we are also unable to use `setImmediate`
+// under any circumstances.
+// Even if we were, there is another bug in Internet Explorer 10.
+// It is not sufficient to assign `setImmediate` to `requestFlush` because
+// `setImmediate` must be called *by name* and therefore must be wrapped in a
+// closure.
+// Never forget.
+
+// function makeRequestCallFromSetImmediate(callback) {
+// return function requestCall() {
+// setImmediate(callback);
+// };
+// }
+
+// Safari 6.0 has a problem where timers will get lost while the user is
+// scrolling. This problem does not impact ASAP because Safari 6.0 supports
+// mutation observers, so that implementation is used instead.
+// However, if we ever elect to use timers in Safari, the prevalent work-around
+// is to add a scroll event listener that calls for a flush.
+
+// `setTimeout` does not call the passed callback if the delay is less than
+// approximately 7 in web workers in Firefox 8 through 18, and sometimes not
+// even then.
+
+function makeRequestCallFromTimer(callback) {
+ return function requestCall() {
+ // We dispatch a timeout with a specified delay of 0 for engines that
+ // can reliably accommodate that request. This will usually be snapped
+ // to a 4 milisecond delay, but once we're flushing, there's no delay
+ // between events.
+ var timeoutHandle = setTimeout(handleTimer, 0);
+ // However, since this timer gets frequently dropped in Firefox
+ // workers, we enlist an interval handle that will try to fire
+ // an event 20 times per second until it succeeds.
+ var intervalHandle = setInterval(handleTimer, 50);
+
+ function handleTimer() {
+ // Whichever timer succeeds will cancel both timers and
+ // execute the callback.
+ clearTimeout(timeoutHandle);
+ clearInterval(intervalHandle);
+ callback();
+ }
+ };
+}
+
+// This is for `asap.js` only.
+// Its name will be periodically randomized to break any code that depends on
+// its existence.
+rawAsap.makeRequestCallFromTimer = makeRequestCallFromTimer;
+
+// ASAP was originally a nextTick shim included in Q. This was factored out
+// into this ASAP package. It was later adapted to RSVP which made further
+// amendments. These decisions, particularly to marginalize MessageChannel and
+// to capture the MutationObserver implementation in a closure, were integrated
+// back into ASAP proper.
+// https://github.com/tildeio/rsvp.js/blob/cddf7232546a9cf858524b75cde6f9edf72620a7/lib/rsvp/asap.js
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/asap/package.json b/goTorrentWebUI/node_modules/react-toastify/node_modules/asap/package.json
new file mode 100644
index 00000000..48fd32cc
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/asap/package.json
@@ -0,0 +1,87 @@
+{
+ "_from": "asap@~2.0.3",
+ "_id": "asap@2.0.6",
+ "_inBundle": false,
+ "_integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=",
+ "_location": "/react-toastify/asap",
+ "_phantomChildren": {},
+ "_requested": {
+ "type": "range",
+ "registry": true,
+ "raw": "asap@~2.0.3",
+ "name": "asap",
+ "escapedName": "asap",
+ "rawSpec": "~2.0.3",
+ "saveSpec": null,
+ "fetchSpec": "~2.0.3"
+ },
+ "_requiredBy": [
+ "/react-toastify/promise"
+ ],
+ "_resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz",
+ "_shasum": "e50347611d7e690943208bbdafebcbc2fb866d46",
+ "_spec": "asap@~2.0.3",
+ "_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI\\node_modules\\react-toastify\\node_modules\\promise",
+ "browser": {
+ "./asap": "./browser-asap.js",
+ "./asap.js": "./browser-asap.js",
+ "./raw": "./browser-raw.js",
+ "./raw.js": "./browser-raw.js",
+ "./test/domain.js": "./test/browser-domain.js"
+ },
+ "bugs": {
+ "url": "https://github.com/kriskowal/asap/issues"
+ },
+ "bundleDependencies": false,
+ "deprecated": false,
+ "description": "High-priority task queue for Node.js and browsers",
+ "devDependencies": {
+ "benchmark": "^1.0.0",
+ "events": "^1.0.1",
+ "jshint": "^2.5.1",
+ "knox": "^0.8.10",
+ "mr": "^2.0.5",
+ "opener": "^1.3.0",
+ "q": "^2.0.3",
+ "q-io": "^2.0.3",
+ "saucelabs": "^0.1.1",
+ "wd": "^0.2.21",
+ "weak-map": "^1.0.5"
+ },
+ "files": [
+ "raw.js",
+ "asap.js",
+ "browser-raw.js",
+ "browser-asap.js"
+ ],
+ "homepage": "https://github.com/kriskowal/asap#readme",
+ "keywords": [
+ "event",
+ "task",
+ "queue"
+ ],
+ "license": "MIT",
+ "main": "./asap.js",
+ "name": "asap",
+ "react-native": {
+ "domain": false
+ },
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/kriskowal/asap.git"
+ },
+ "scripts": {
+ "benchmarks": "node benchmarks",
+ "lint": "jshint raw.js asap.js browser-raw.js browser-asap.js $(find scripts -name '*.js' | grep -v gauntlet)",
+ "test": "npm run lint && npm run test-node",
+ "test-browser": "node scripts/publish-bundle.js test/asap-test.js | xargs opener",
+ "test-node": "node test/asap-test.js",
+ "test-publish": "node scripts/publish-bundle.js test/asap-test.js | pbcopy",
+ "test-saucelabs": "node scripts/saucelabs.js test/asap-test.js scripts/saucelabs-spot-configurations.json",
+ "test-saucelabs-all": "node scripts/saucelabs.js test/asap-test.js scripts/saucelabs-all-configurations.json",
+ "test-saucelabs-worker": "node scripts/saucelabs-worker-test.js scripts/saucelabs-spot-configurations.json",
+ "test-saucelabs-worker-all": "node scripts/saucelabs-worker-test.js scripts/saucelabs-all-configurations.json",
+ "test-travis": "npm run lint && npm run test-node && npm run test-saucelabs && npm run test-saucelabs-worker"
+ },
+ "version": "2.0.6"
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/asap/raw.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/asap/raw.js
new file mode 100644
index 00000000..ae3b8923
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/asap/raw.js
@@ -0,0 +1,101 @@
+"use strict";
+
+var domain; // The domain module is executed on demand
+var hasSetImmediate = typeof setImmediate === "function";
+
+// Use the fastest means possible to execute a task in its own turn, with
+// priority over other events including network IO events in Node.js.
+//
+// An exception thrown by a task will permanently interrupt the processing of
+// subsequent tasks. The higher level `asap` function ensures that if an
+// exception is thrown by a task, that the task queue will continue flushing as
+// soon as possible, but if you use `rawAsap` directly, you are responsible to
+// either ensure that no exceptions are thrown from your task, or to manually
+// call `rawAsap.requestFlush` if an exception is thrown.
+module.exports = rawAsap;
+function rawAsap(task) {
+ if (!queue.length) {
+ requestFlush();
+ flushing = true;
+ }
+ // Avoids a function call
+ queue[queue.length] = task;
+}
+
+var queue = [];
+// Once a flush has been requested, no further calls to `requestFlush` are
+// necessary until the next `flush` completes.
+var flushing = false;
+// The position of the next task to execute in the task queue. This is
+// preserved between calls to `flush` so that it can be resumed if
+// a task throws an exception.
+var index = 0;
+// If a task schedules additional tasks recursively, the task queue can grow
+// unbounded. To prevent memory excaustion, the task queue will periodically
+// truncate already-completed tasks.
+var capacity = 1024;
+
+// The flush function processes all tasks that have been scheduled with
+// `rawAsap` unless and until one of those tasks throws an exception.
+// If a task throws an exception, `flush` ensures that its state will remain
+// consistent and will resume where it left off when called again.
+// However, `flush` does not make any arrangements to be called again if an
+// exception is thrown.
+function flush() {
+ while (index < queue.length) {
+ var currentIndex = index;
+ // Advance the index before calling the task. This ensures that we will
+ // begin flushing on the next task the task throws an error.
+ index = index + 1;
+ queue[currentIndex].call();
+ // Prevent leaking memory for long chains of recursive calls to `asap`.
+ // If we call `asap` within tasks scheduled by `asap`, the queue will
+ // grow, but to avoid an O(n) walk for every task we execute, we don't
+ // shift tasks off the queue after they have been executed.
+ // Instead, we periodically shift 1024 tasks off the queue.
+ if (index > capacity) {
+ // Manually shift all values starting at the index back to the
+ // beginning of the queue.
+ for (var scan = 0, newLength = queue.length - index; scan < newLength; scan++) {
+ queue[scan] = queue[scan + index];
+ }
+ queue.length -= index;
+ index = 0;
+ }
+ }
+ queue.length = 0;
+ index = 0;
+ flushing = false;
+}
+
+rawAsap.requestFlush = requestFlush;
+function requestFlush() {
+ // Ensure flushing is not bound to any domain.
+ // It is not sufficient to exit the domain, because domains exist on a stack.
+ // To execute code outside of any domain, the following dance is necessary.
+ var parentDomain = process.domain;
+ if (parentDomain) {
+ if (!domain) {
+ // Lazy execute the domain module.
+ // Only employed if the user elects to use domains.
+ domain = require("domain");
+ }
+ domain.active = process.domain = null;
+ }
+
+ // `setImmediate` is slower that `process.nextTick`, but `process.nextTick`
+ // cannot handle recursion.
+ // `requestFlush` will only be called recursively from `asap.js`, to resume
+ // flushing after an error is thrown into a domain.
+ // Conveniently, `setImmediate` was introduced in the same version
+ // `process.nextTick` started throwing recursion errors.
+ if (flushing && hasSetImmediate) {
+ setImmediate(flush);
+ } else {
+ process.nextTick(flush);
+ }
+
+ if (parentDomain) {
+ domain.active = process.domain = parentDomain;
+ }
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.editorconfig b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.editorconfig
new file mode 100644
index 00000000..a11eb44b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.editorconfig
@@ -0,0 +1,17 @@
+root = true
+
+[*]
+end_of_line = lf
+insert_final_newline = true
+
+[{*.js,*.md}]
+charset = utf-8
+indent_style = space
+indent_size = 2
+
+[Makefile]
+indent_style = tab
+
+[{package.json,.travis.yml}]
+indent_style = space
+indent_size = 2
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/.name b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/.name
new file mode 100644
index 00000000..3e2e4036
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/.name
@@ -0,0 +1 @@
+bowser
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/bowser.iml b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/bowser.iml
new file mode 100644
index 00000000..c956989b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/bowser.iml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/encodings.xml b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/encodings.xml
new file mode 100644
index 00000000..97626ba4
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/encodings.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/inspectionProfiles/Project_Default.xml b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/inspectionProfiles/Project_Default.xml
new file mode 100644
index 00000000..c6cc8c81
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/inspectionProfiles/Project_Default.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/jsLibraryMappings.xml b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/jsLibraryMappings.xml
new file mode 100644
index 00000000..9bd3e336
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/jsLibraryMappings.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/markdown-exported-files.xml b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/markdown-exported-files.xml
new file mode 100644
index 00000000..5d1f1293
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/markdown-exported-files.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/markdown-navigator.xml b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/markdown-navigator.xml
new file mode 100644
index 00000000..05e6c4b6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/markdown-navigator.xml
@@ -0,0 +1,67 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/markdown-navigator/profiles_settings.xml b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/markdown-navigator/profiles_settings.xml
new file mode 100644
index 00000000..57927c5a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/markdown-navigator/profiles_settings.xml
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/misc.xml b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/misc.xml
new file mode 100644
index 00000000..28a804d8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/misc.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/modules.xml b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/modules.xml
new file mode 100644
index 00000000..d90ae6dd
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/modules.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/vcs.xml b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/vcs.xml
new file mode 100644
index 00000000..94a25f7f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/watcherTasks.xml b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/watcherTasks.xml
new file mode 100644
index 00000000..9338ba68
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/watcherTasks.xml
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/workspace.xml b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/workspace.xml
new file mode 100644
index 00000000..56c48de2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.idea/workspace.xml
@@ -0,0 +1,745 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ amazon Silk
+ load
+ parseFile
+ default
+ Windows Phone
+ Webos
+ Mozilla/5.0 (Linux; U; Android 4.4.2; de-de; Nexus 7 Build/KOT49H) AppleWebKit/537.16 (KHTML, like Gecko) Version/4.0 Mobile Safari/537.16
+ like
+ Mozilla/5.0 (Maemo; Linux; U; Jolla; Sailfish; Mobile; rv:26.0) Gecko/26.0 Firefox/26.0 SailfishBrowser/1.0 like Safari/538.1
+ Sa
+ Sailfish
+ Firefox
+ sailfish
+ boos
+ opera m
+ Mozilla/5.0 (Linux; U; Android 6.0; R1 HD Build/MRA58K; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/52.0.2743.98 Mobile Safari/537.36 OPR/18.0.2254.106542
+ isUnsup
+ name: '[a-zA-Z ]+'\s+,
+ Chrome
+ OPR
+ ios
+ safari
+ iphone
+ chromium: true
+ flag
+ msedge
+ edge
+ Mozilla/5.0 (Linux; Android 8.0; Pixel XL Build/OPP3.170518.006) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.0 Mobile Safari/537.36 EdgA/41.1.35.1
+ version: ""
+ Mozilla/5.0 (iPod touch; CPU iPhone OS 9_3_4 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) OPiOS/14.0.0.104835 Mobile/13G35 Safari/9537.53
+
+
+ descript
+ describe
+ (\d+(\.?_?\d+)+)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+ false
+ false
+ true
+
+
+ true
+ DEFINITION_ORDER
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ project
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $USER_HOME$/.nvm/versions/node/v4.2.4/bin/node
+
+ $PROJECT_DIR$
+ true
+
+ bdd
+
+ DIRECTORY
+
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1460663203148
+
+
+ 1460663203148
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.travis.yml b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.travis.yml
new file mode 100644
index 00000000..14de7946
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/.travis.yml
@@ -0,0 +1,8 @@
+language: node_js
+node_js:
+ - "4.4.7"
+notifications:
+ email:
+ - dustin@dustindiaz.com
+
+script: NODE_ENV=test ./node_modules/.bin/mocha --reporter spec
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/CHANGELOG.md b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/CHANGELOG.md
new file mode 100644
index 00000000..ddff82ee
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/CHANGELOG.md
@@ -0,0 +1,73 @@
+# Bowser Changelog
+
+### 1.9.1 (December 22, 2017)
+- [FIX] Fix `typings.d.ts` — add `chromium` flag to interface
+
+### 1.9.0 (December 20, 2017)
+- [ADD] Add a public method `.detect()` (#205)
+- [DOCS] Fix description of `chromium` flag in docs (#206)
+
+### 1.8.1 (October 7, 2017)
+- [FIX] Fix detection of MS Edge on Android and iOS (#201)
+
+### 1.8.0 (October 7, 2017)
+- [ADD] Add `osname` into result object (#200)
+
+### 1.7.3 (August 30, 2017)
+- [FIX] Fix detection of Chrome on Android 8 OPR6 (#193)
+
+### 1.7.2 (August 17, 2017)
+- [FIX] Fix typings.d.ts according to #185
+
+### 1.7.1 (July 13, 2017)
+- [ADD] Fix detecting of Tablet PC as tablet (#183)
+
+### 1.7.0 (May 18, 2017)
+- [ADD] Add OS version support for Windows and macOS (#178)
+
+### 1.6.0 (December 5, 2016)
+- [ADD] Add some tests for Windows devices (#89)
+- [ADD] Add `root` to initialization process (#170)
+- [FIX] Upgrade .travis.yml config
+
+### 1.5.0 (October 31, 2016)
+- [ADD] Throw an error when `minVersion` map has not a string as a version and fix readme (#165)
+- [FIX] Fix truly detection of Windows Phones (#167)
+
+### 1.4.6 (September 19, 2016)
+- [FIX] Fix mobile Opera's version detection on Android
+- [FIX] Fix typescript typings — add `mobile` and `tablet` flags
+- [DOC] Fix description of `bowser.check`
+
+### 1.4.5 (August 30, 2016)
+
+- [FIX] Add support of Samsung Internet for Android
+- [FIX] Fix case when `navigator.userAgent` is `undefined`
+- [DOC] Add information about `strictMode` in `check` function
+- [DOC] Consistent use of `bowser` variable in the README
+
+### 1.4.4 (August 10, 2016)
+
+- [FIX] Fix AMD `define` call — pass name to the function
+
+### 1.4.3 (July 27, 2016)
+
+- [FIX] Fix error `Object doesn't support this property or method` on IE8
+
+### 1.4.2 (July 26, 2016)
+
+- [FIX] Fix missing `isUnsupportedBrowser` in typings description
+- [DOC] Fix `check`'s declaration in README
+
+### 1.4.1 (July 7, 2016)
+
+- [FIX] Fix `strictMode` logic for `isUnsupportedBrowser`
+
+### 1.4.0 (June 28, 2016)
+
+- [FEATURE] Add `bowser.compareVersions` method
+- [FEATURE] Add `bowser.isUnsupportedBrowser` method
+- [FEATURE] Add `bowser.check` method
+- [DOC] Changelog started
+- [DOC] Add API section to README
+- [FIX] Fix detection of browser type (A/C/X) for Chromium
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/ISSUE_TEMPLATE.md b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/ISSUE_TEMPLATE.md
new file mode 100644
index 00000000..165469f3
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/ISSUE_TEMPLATE.md
@@ -0,0 +1,5 @@
+Template to report about browser detection issue
+
+`window.navigator.userAgent` of the browser is: ...
+ And it's detected like a ...
+ But real name of the browser is ...
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/LICENSE b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/LICENSE
new file mode 100644
index 00000000..94085f02
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/LICENSE
@@ -0,0 +1,39 @@
+Copyright 2015, Dustin Diaz (the "Original Author")
+All rights reserved.
+
+MIT License
+
+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.
+
+Distributions of all or part of the Software intended to be used
+by the recipients as they would use the unmodified Software,
+containing modifications that substantially alter, remove, or
+disable functionality of the Software, outside of the documented
+configuration mechanisms provided by the Software, shall be
+modified such that the Original Author's bug reporting email
+addresses and urls are either replaced with the contact information
+of the parties responsible for the changes, or removed entirely.
+
+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.
+
+
+Except where noted, this license applies to any and all software
+programs and associated documentation files created by the
+Original Author, when distributed with the Software.
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/README.md b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/README.md
new file mode 100644
index 00000000..6f758ca6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/README.md
@@ -0,0 +1,210 @@
+## Bowser
+A Browser detector. Because sometimes, there is no other way, and not even good modern browsers always provide good feature detection mechanisms.
+
+[](https://travis-ci.org/lancedikson/bowser)
+
+So... it works like this:
+
+``` js
+if (bowser.msie && bowser.version <= 6) {
+ alert('Hello China');
+}
+```
+
+## 1.1.0 breaking changes
+We don't save built script in the repo anymore. The main file (`src/bowser.js`) is available through NPM or Bower.
+Also you can download minified file from [the release page](https://github.com/ded/bowser/releases).
+
+## 1.0.0 breaking changes
+`browser = require('bowser').browser;` becomes `bowser = require('bowser');`
+
+---
+
+## API
+
+### bowser`:Object`
+Use it to get object with detected flags of your current browser.
+
+### bowser._detect(ua `:String`)`:Object`
+Use it to get object with detected flags from User Agent string.
+
+### bowser.check(minVersions`:Object`, strictMode`:Boolean`, [ua]`:String`)`:Boolean`
+Use it to check if browser is supported. In default non-strict mode any browser family not present in `minVersions` will pass the check (like Chrome in the third call in the sample bellow). When strict mode is enabled then any not specified browser family in `minVersions` will cause `check` to return `false` (in the sample it is the fourth call, the last one).
+
+``` js
+/**
+ * in case of using IE10
+ */
+bowser.check({msie: "11"}); // true
+bowser.check({msie: "9.0"}); // false
+
+/**
+ * specific user agent
+ */
+bowser.check({chrome: "45"}, window.navigator.userAgent); // true
+
+/**
+ * but false in strict mode
+ */
+bowser.check({chrome: "45"}, true, window.navigator.userAgent); // false
+```
+
+### bowser.compareVersions(versions`:Array`)`:Number`
+Use it to compare two versions.
+
+``` js
+bowser.compareVersions(['9.0', '10']);
+// -1
+```
+
+### bowser.isUnsupportedBrowser(minVersions`:Object`, [strictMode]`:Boolean`, [ua]`:string`)`:Boolean`
+Use it to check if browser is unsupported.
+
+``` js
+bowser.isUnsupportedBrowser({msie: "10"}, window.navigator.userAgent);
+// true / false
+```
+
+See more examples in [tests](test/test.js).
+
+---
+
+## Bowser Flags
+Your mileage may vary, but these flags should be set. See Contributing below.
+
+``` js
+alert('Hello ' + bowser.name + ' ' + bowser.version);
+```
+
+### All detected browsers
+These flags are set for all detected browsers:
+
+* `name` - A human readable name for this browser. E.g. 'Chrome', ''
+* `version` - Version number for the browser. E.g. '32.0'
+
+For unknown browsers, Bowser makes a best guess from the UA string. So, these may not be set.
+
+### Rendering engine flags
+If detected, one of these flags may be set to true:
+
+ * `webkit` - Chrome 0-27, Android <4.4, iOs, BB, etc.
+ * `blink` - Chrome >=28, Android >=4.4, Opera, etc.
+ * `gecko` - Firefox, etc.
+ * `msie` - IE <= 11
+ * `msedge` - IE > 11
+
+Safari, Chrome and some other minor browsers will report that they have `webkit` engines.
+Firefox and Seamonkey will report that they have `gecko` engines.
+
+``` js
+if (bowser.webkit) {
+ // do stuff with safari & chrome & opera & android & blackberry & webos & silk
+}
+```
+
+### Device flags
+If detected, one of these flags may be set to true:
+
+ * `mobile` - All detected mobile OSes are additionally flagged `mobile`, **unless it's a tablet**
+ * `tablet` - If a tablet device is detected, the flag `tablet` is **set instead of `mobile`**.
+
+### Browser flags
+If detected, one of these flags may be set to true. The rendering engine flag is shown in []'s:
+
+ * `chrome` - [`webkit`|`blink`]
+ * `chromium` - [`webkit`|`blink`]
+ * `firefox` - [`gecko`]
+ * `msie`
+ * `msedge`
+ * `safari` - [`webkit`]
+ * `android` - native browser - [`webkit`|`blink`]
+ * `ios` - native browser - [`webkit`]
+ * `opera` - [`blink` if >=15]
+ * `samsungBrowser` - [`blink`]
+ * `phantom` - [`webkit`]
+ * `blackberry` - native browser - [`webkit`]
+ * `webos` - native browser - [`webkit`]
+ * `silk` - Amazon Kindle browser - [`webkit`]
+ * `bada` - [`webkit`]
+ * `tizen` - [`webkit`]
+ * `seamonkey` - [`gecko`]
+ * `sailfish` - [`gecko`]
+ * `ucbrowser` — [`webkit`]
+ * `qupzilla` — [`webkit`]
+ * `vivaldi` — [`blink`]
+ * `sleipnir` — [`blink`]
+ * `kMeleon` — [`gecko`]
+
+For all detected browsers the browser version is set in the `version` field.
+
+### OS Flags
+If detected, one of these flags may be set to true:
+
+ * `mac`
+ * `windows` - other than Windows Phone
+ * `windowsphone`
+ * `linux` - other than `android`, `chromeos`, `webos`, `tizen`, and `sailfish`
+ * `chromeos`
+ * `android`
+ * `ios` - also sets one of `iphone`/`ipad`/`ipod`
+ * `blackberry`
+ * `firefoxos`
+ * `webos` - may also set `touchpad`
+ * `bada`
+ * `tizen`
+ * `sailfish`
+
+`osname` and `osversion` may also be set:
+
+ * `osname` - for the OS flags detected above: macOS, Windows, Windows Phone, Linux, Chrome OS, Android, iOS, Blackberry OS, Firefox OS, WebOS, Bada, Tizen, Sailfish OS, and Xbox
+ * `osversion` - for Android, iOS, MacOS, Windows, Windows Phone, WebOS, Bada, and Tizen. If included in UA string.
+
+iOS is always reported as `ios` and additionally as `iphone`/`ipad`/`ipod`, whichever one matches best.
+If WebOS device is an HP TouchPad the flag `touchpad` is additionally set.
+
+### Browser capability grading
+One of these flags may be set:
+
+ * `a` - This browser has full capabilities
+ * `c` - This browser has degraded capabilities. Serve simpler version
+ * `x` - This browser has minimal capabilities and is probably not well detected.
+
+There is no `b`. For unknown browsers, none of these flags may be set.
+
+### Ender Support
+
+`package.json`
+
+``` json
+"dependencies": {
+ "bowser": "x.x.x"
+}
+```
+
+``` js
+if (require('bowser').chrome) {
+ alert('Hello Silicon Valley')
+}
+```
+
+### Contributing
+If you'd like to contribute a change to bowser, modify the files in `src/`, then run the following (you'll need node + npm installed):
+
+``` sh
+$ npm install
+$ make test
+```
+
+Please do not check-in the built files `bowser.js` and `bowser.min.js` in pull requests.
+
+### Adding tests
+See the list in `src/useragents.js` with example user agents and their expected bowser object.
+
+Whenever you add support for new browsers or notice a bug / mismatch, please update the list and
+check if all tests are still passing.
+
+### Similar Projects
+* [Kong](https://github.com/BigBadBleuCheese/Kong) - A C# port of Bowser.
+
+### License
+Licensed as MIT. All rights not explicitly granted in the MIT license are reserved. See the included LICENSE file for more details.
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/bower.json b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/bower.json
new file mode 100644
index 00000000..974dcd20
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/bower.json
@@ -0,0 +1,33 @@
+{
+ "name": "bowser",
+ "description": "Lightweight browser detector",
+ "keywords": [
+ "browser",
+ "useragent",
+ "user-agent",
+ "parser",
+ "ua",
+ "detection",
+ "ender",
+ "sniff"
+ ],
+ "version": "1.9.0",
+ "homepage": "https://github.com/lancedikson/bowser",
+ "scripts": [
+ "src/bowser.js"
+ ],
+ "authors": [
+ "Dustin Diaz (http://dustindiaz.com)",
+ "Denis Demchenko "
+ ],
+ "moduleType": [],
+ "license": "MIT",
+ "main": "src/bowser.js",
+ "ignore": [
+ "node_modules",
+ "test",
+ "make",
+ "**/.*",
+ "Makefile"
+ ]
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/bowser.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/bowser.js
new file mode 100644
index 00000000..2ec17fb4
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/bowser.js
@@ -0,0 +1,620 @@
+/*!
+ * Bowser - a browser detector
+ * https://github.com/ded/bowser
+ * MIT License | (c) Dustin Diaz 2015
+ */
+
+!function (root, name, definition) {
+ if (typeof module != 'undefined' && module.exports) module.exports = definition()
+ else if (typeof define == 'function' && define.amd) define(name, definition)
+ else root[name] = definition()
+}(this, 'bowser', function () {
+ /**
+ * See useragents.js for examples of navigator.userAgent
+ */
+
+ var t = true
+
+ function detect(ua) {
+
+ function getFirstMatch(regex) {
+ var match = ua.match(regex);
+ return (match && match.length > 1 && match[1]) || '';
+ }
+
+ function getSecondMatch(regex) {
+ var match = ua.match(regex);
+ return (match && match.length > 1 && match[2]) || '';
+ }
+
+ var iosdevice = getFirstMatch(/(ipod|iphone|ipad)/i).toLowerCase()
+ , likeAndroid = /like android/i.test(ua)
+ , android = !likeAndroid && /android/i.test(ua)
+ , nexusMobile = /nexus\s*[0-6]\s*/i.test(ua)
+ , nexusTablet = !nexusMobile && /nexus\s*[0-9]+/i.test(ua)
+ , chromeos = /CrOS/.test(ua)
+ , silk = /silk/i.test(ua)
+ , sailfish = /sailfish/i.test(ua)
+ , tizen = /tizen/i.test(ua)
+ , webos = /(web|hpw)os/i.test(ua)
+ , windowsphone = /windows phone/i.test(ua)
+ , samsungBrowser = /SamsungBrowser/i.test(ua)
+ , windows = !windowsphone && /windows/i.test(ua)
+ , mac = !iosdevice && !silk && /macintosh/i.test(ua)
+ , linux = !android && !sailfish && !tizen && !webos && /linux/i.test(ua)
+ , edgeVersion = getSecondMatch(/edg([ea]|ios)\/(\d+(\.\d+)?)/i)
+ , versionIdentifier = getFirstMatch(/version\/(\d+(\.\d+)?)/i)
+ , tablet = /tablet/i.test(ua) && !/tablet pc/i.test(ua)
+ , mobile = !tablet && /[^-]mobi/i.test(ua)
+ , xbox = /xbox/i.test(ua)
+ , result
+
+ if (/opera/i.test(ua)) {
+ // an old Opera
+ result = {
+ name: 'Opera'
+ , opera: t
+ , version: versionIdentifier || getFirstMatch(/(?:opera|opr|opios)[\s\/](\d+(\.\d+)?)/i)
+ }
+ } else if (/opr\/|opios/i.test(ua)) {
+ // a new Opera
+ result = {
+ name: 'Opera'
+ , opera: t
+ , version: getFirstMatch(/(?:opr|opios)[\s\/](\d+(\.\d+)?)/i) || versionIdentifier
+ }
+ }
+ else if (/SamsungBrowser/i.test(ua)) {
+ result = {
+ name: 'Samsung Internet for Android'
+ , samsungBrowser: t
+ , version: versionIdentifier || getFirstMatch(/(?:SamsungBrowser)[\s\/](\d+(\.\d+)?)/i)
+ }
+ }
+ else if (/coast/i.test(ua)) {
+ result = {
+ name: 'Opera Coast'
+ , coast: t
+ , version: versionIdentifier || getFirstMatch(/(?:coast)[\s\/](\d+(\.\d+)?)/i)
+ }
+ }
+ else if (/yabrowser/i.test(ua)) {
+ result = {
+ name: 'Yandex Browser'
+ , yandexbrowser: t
+ , version: versionIdentifier || getFirstMatch(/(?:yabrowser)[\s\/](\d+(\.\d+)?)/i)
+ }
+ }
+ else if (/ucbrowser/i.test(ua)) {
+ result = {
+ name: 'UC Browser'
+ , ucbrowser: t
+ , version: getFirstMatch(/(?:ucbrowser)[\s\/](\d+(?:\.\d+)+)/i)
+ }
+ }
+ else if (/mxios/i.test(ua)) {
+ result = {
+ name: 'Maxthon'
+ , maxthon: t
+ , version: getFirstMatch(/(?:mxios)[\s\/](\d+(?:\.\d+)+)/i)
+ }
+ }
+ else if (/epiphany/i.test(ua)) {
+ result = {
+ name: 'Epiphany'
+ , epiphany: t
+ , version: getFirstMatch(/(?:epiphany)[\s\/](\d+(?:\.\d+)+)/i)
+ }
+ }
+ else if (/puffin/i.test(ua)) {
+ result = {
+ name: 'Puffin'
+ , puffin: t
+ , version: getFirstMatch(/(?:puffin)[\s\/](\d+(?:\.\d+)?)/i)
+ }
+ }
+ else if (/sleipnir/i.test(ua)) {
+ result = {
+ name: 'Sleipnir'
+ , sleipnir: t
+ , version: getFirstMatch(/(?:sleipnir)[\s\/](\d+(?:\.\d+)+)/i)
+ }
+ }
+ else if (/k-meleon/i.test(ua)) {
+ result = {
+ name: 'K-Meleon'
+ , kMeleon: t
+ , version: getFirstMatch(/(?:k-meleon)[\s\/](\d+(?:\.\d+)+)/i)
+ }
+ }
+ else if (windowsphone) {
+ result = {
+ name: 'Windows Phone'
+ , osname: 'Windows Phone'
+ , windowsphone: t
+ }
+ if (edgeVersion) {
+ result.msedge = t
+ result.version = edgeVersion
+ }
+ else {
+ result.msie = t
+ result.version = getFirstMatch(/iemobile\/(\d+(\.\d+)?)/i)
+ }
+ }
+ else if (/msie|trident/i.test(ua)) {
+ result = {
+ name: 'Internet Explorer'
+ , msie: t
+ , version: getFirstMatch(/(?:msie |rv:)(\d+(\.\d+)?)/i)
+ }
+ } else if (chromeos) {
+ result = {
+ name: 'Chrome'
+ , osname: 'Chrome OS'
+ , chromeos: t
+ , chromeBook: t
+ , chrome: t
+ , version: getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.\d+)?)/i)
+ }
+ } else if (/edg([ea]|ios)/i.test(ua)) {
+ result = {
+ name: 'Microsoft Edge'
+ , msedge: t
+ , version: edgeVersion
+ }
+ }
+ else if (/vivaldi/i.test(ua)) {
+ result = {
+ name: 'Vivaldi'
+ , vivaldi: t
+ , version: getFirstMatch(/vivaldi\/(\d+(\.\d+)?)/i) || versionIdentifier
+ }
+ }
+ else if (sailfish) {
+ result = {
+ name: 'Sailfish'
+ , osname: 'Sailfish OS'
+ , sailfish: t
+ , version: getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i)
+ }
+ }
+ else if (/seamonkey\//i.test(ua)) {
+ result = {
+ name: 'SeaMonkey'
+ , seamonkey: t
+ , version: getFirstMatch(/seamonkey\/(\d+(\.\d+)?)/i)
+ }
+ }
+ else if (/firefox|iceweasel|fxios/i.test(ua)) {
+ result = {
+ name: 'Firefox'
+ , firefox: t
+ , version: getFirstMatch(/(?:firefox|iceweasel|fxios)[ \/](\d+(\.\d+)?)/i)
+ }
+ if (/\((mobile|tablet);[^\)]*rv:[\d\.]+\)/i.test(ua)) {
+ result.firefoxos = t
+ result.osname = 'Firefox OS'
+ }
+ }
+ else if (silk) {
+ result = {
+ name: 'Amazon Silk'
+ , silk: t
+ , version : getFirstMatch(/silk\/(\d+(\.\d+)?)/i)
+ }
+ }
+ else if (/phantom/i.test(ua)) {
+ result = {
+ name: 'PhantomJS'
+ , phantom: t
+ , version: getFirstMatch(/phantomjs\/(\d+(\.\d+)?)/i)
+ }
+ }
+ else if (/slimerjs/i.test(ua)) {
+ result = {
+ name: 'SlimerJS'
+ , slimer: t
+ , version: getFirstMatch(/slimerjs\/(\d+(\.\d+)?)/i)
+ }
+ }
+ else if (/blackberry|\bbb\d+/i.test(ua) || /rim\stablet/i.test(ua)) {
+ result = {
+ name: 'BlackBerry'
+ , osname: 'BlackBerry OS'
+ , blackberry: t
+ , version: versionIdentifier || getFirstMatch(/blackberry[\d]+\/(\d+(\.\d+)?)/i)
+ }
+ }
+ else if (webos) {
+ result = {
+ name: 'WebOS'
+ , osname: 'WebOS'
+ , webos: t
+ , version: versionIdentifier || getFirstMatch(/w(?:eb)?osbrowser\/(\d+(\.\d+)?)/i)
+ };
+ /touchpad\//i.test(ua) && (result.touchpad = t)
+ }
+ else if (/bada/i.test(ua)) {
+ result = {
+ name: 'Bada'
+ , osname: 'Bada'
+ , bada: t
+ , version: getFirstMatch(/dolfin\/(\d+(\.\d+)?)/i)
+ };
+ }
+ else if (tizen) {
+ result = {
+ name: 'Tizen'
+ , osname: 'Tizen'
+ , tizen: t
+ , version: getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.\d+)?)/i) || versionIdentifier
+ };
+ }
+ else if (/qupzilla/i.test(ua)) {
+ result = {
+ name: 'QupZilla'
+ , qupzilla: t
+ , version: getFirstMatch(/(?:qupzilla)[\s\/](\d+(?:\.\d+)+)/i) || versionIdentifier
+ }
+ }
+ else if (/chromium/i.test(ua)) {
+ result = {
+ name: 'Chromium'
+ , chromium: t
+ , version: getFirstMatch(/(?:chromium)[\s\/](\d+(?:\.\d+)?)/i) || versionIdentifier
+ }
+ }
+ else if (/chrome|crios|crmo/i.test(ua)) {
+ result = {
+ name: 'Chrome'
+ , chrome: t
+ , version: getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.\d+)?)/i)
+ }
+ }
+ else if (android) {
+ result = {
+ name: 'Android'
+ , version: versionIdentifier
+ }
+ }
+ else if (/safari|applewebkit/i.test(ua)) {
+ result = {
+ name: 'Safari'
+ , safari: t
+ }
+ if (versionIdentifier) {
+ result.version = versionIdentifier
+ }
+ }
+ else if (iosdevice) {
+ result = {
+ name : iosdevice == 'iphone' ? 'iPhone' : iosdevice == 'ipad' ? 'iPad' : 'iPod'
+ }
+ // WTF: version is not part of user agent in web apps
+ if (versionIdentifier) {
+ result.version = versionIdentifier
+ }
+ }
+ else if(/googlebot/i.test(ua)) {
+ result = {
+ name: 'Googlebot'
+ , googlebot: t
+ , version: getFirstMatch(/googlebot\/(\d+(\.\d+))/i) || versionIdentifier
+ }
+ }
+ else {
+ result = {
+ name: getFirstMatch(/^(.*)\/(.*) /),
+ version: getSecondMatch(/^(.*)\/(.*) /)
+ };
+ }
+
+ // set webkit or gecko flag for browsers based on these engines
+ if (!result.msedge && /(apple)?webkit/i.test(ua)) {
+ if (/(apple)?webkit\/537\.36/i.test(ua)) {
+ result.name = result.name || "Blink"
+ result.blink = t
+ } else {
+ result.name = result.name || "Webkit"
+ result.webkit = t
+ }
+ if (!result.version && versionIdentifier) {
+ result.version = versionIdentifier
+ }
+ } else if (!result.opera && /gecko\//i.test(ua)) {
+ result.name = result.name || "Gecko"
+ result.gecko = t
+ result.version = result.version || getFirstMatch(/gecko\/(\d+(\.\d+)?)/i)
+ }
+
+ // set OS flags for platforms that have multiple browsers
+ if (!result.windowsphone && (android || result.silk)) {
+ result.android = t
+ result.osname = 'Android'
+ } else if (!result.windowsphone && iosdevice) {
+ result[iosdevice] = t
+ result.ios = t
+ result.osname = 'iOS'
+ } else if (mac) {
+ result.mac = t
+ result.osname = 'macOS'
+ } else if (xbox) {
+ result.xbox = t
+ result.osname = 'Xbox'
+ } else if (windows) {
+ result.windows = t
+ result.osname = 'Windows'
+ } else if (linux) {
+ result.linux = t
+ result.osname = 'Linux'
+ }
+
+ function getWindowsVersion (s) {
+ switch (s) {
+ case 'NT': return 'NT'
+ case 'XP': return 'XP'
+ case 'NT 5.0': return '2000'
+ case 'NT 5.1': return 'XP'
+ case 'NT 5.2': return '2003'
+ case 'NT 6.0': return 'Vista'
+ case 'NT 6.1': return '7'
+ case 'NT 6.2': return '8'
+ case 'NT 6.3': return '8.1'
+ case 'NT 10.0': return '10'
+ default: return undefined
+ }
+ }
+
+ // OS version extraction
+ var osVersion = '';
+ if (result.windows) {
+ osVersion = getWindowsVersion(getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i))
+ } else if (result.windowsphone) {
+ osVersion = getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i);
+ } else if (result.mac) {
+ osVersion = getFirstMatch(/Mac OS X (\d+([_\.\s]\d+)*)/i);
+ osVersion = osVersion.replace(/[_\s]/g, '.');
+ } else if (iosdevice) {
+ osVersion = getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i);
+ osVersion = osVersion.replace(/[_\s]/g, '.');
+ } else if (android) {
+ osVersion = getFirstMatch(/android[ \/-](\d+(\.\d+)*)/i);
+ } else if (result.webos) {
+ osVersion = getFirstMatch(/(?:web|hpw)os\/(\d+(\.\d+)*)/i);
+ } else if (result.blackberry) {
+ osVersion = getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i);
+ } else if (result.bada) {
+ osVersion = getFirstMatch(/bada\/(\d+(\.\d+)*)/i);
+ } else if (result.tizen) {
+ osVersion = getFirstMatch(/tizen[\/\s](\d+(\.\d+)*)/i);
+ }
+ if (osVersion) {
+ result.osversion = osVersion;
+ }
+
+ // device type extraction
+ var osMajorVersion = !result.windows && osVersion.split('.')[0];
+ if (
+ tablet
+ || nexusTablet
+ || iosdevice == 'ipad'
+ || (android && (osMajorVersion == 3 || (osMajorVersion >= 4 && !mobile)))
+ || result.silk
+ ) {
+ result.tablet = t
+ } else if (
+ mobile
+ || iosdevice == 'iphone'
+ || iosdevice == 'ipod'
+ || android
+ || nexusMobile
+ || result.blackberry
+ || result.webos
+ || result.bada
+ ) {
+ result.mobile = t
+ }
+
+ // Graded Browser Support
+ // http://developer.yahoo.com/yui/articles/gbs
+ if (result.msedge ||
+ (result.msie && result.version >= 10) ||
+ (result.yandexbrowser && result.version >= 15) ||
+ (result.vivaldi && result.version >= 1.0) ||
+ (result.chrome && result.version >= 20) ||
+ (result.samsungBrowser && result.version >= 4) ||
+ (result.firefox && result.version >= 20.0) ||
+ (result.safari && result.version >= 6) ||
+ (result.opera && result.version >= 10.0) ||
+ (result.ios && result.osversion && result.osversion.split(".")[0] >= 6) ||
+ (result.blackberry && result.version >= 10.1)
+ || (result.chromium && result.version >= 20)
+ ) {
+ result.a = t;
+ }
+ else if ((result.msie && result.version < 10) ||
+ (result.chrome && result.version < 20) ||
+ (result.firefox && result.version < 20.0) ||
+ (result.safari && result.version < 6) ||
+ (result.opera && result.version < 10.0) ||
+ (result.ios && result.osversion && result.osversion.split(".")[0] < 6)
+ || (result.chromium && result.version < 20)
+ ) {
+ result.c = t
+ } else result.x = t
+
+ return result
+ }
+
+ var bowser = detect(typeof navigator !== 'undefined' ? navigator.userAgent || '' : '')
+
+ bowser.test = function (browserList) {
+ for (var i = 0; i < browserList.length; ++i) {
+ var browserItem = browserList[i];
+ if (typeof browserItem=== 'string') {
+ if (browserItem in bowser) {
+ return true;
+ }
+ }
+ }
+ return false;
+ }
+
+ /**
+ * Get version precisions count
+ *
+ * @example
+ * getVersionPrecision("1.10.3") // 3
+ *
+ * @param {string} version
+ * @return {number}
+ */
+ function getVersionPrecision(version) {
+ return version.split(".").length;
+ }
+
+ /**
+ * Array::map polyfill
+ *
+ * @param {Array} arr
+ * @param {Function} iterator
+ * @return {Array}
+ */
+ function map(arr, iterator) {
+ var result = [], i;
+ if (Array.prototype.map) {
+ return Array.prototype.map.call(arr, iterator);
+ }
+ for (i = 0; i < arr.length; i++) {
+ result.push(iterator(arr[i]));
+ }
+ return result;
+ }
+
+ /**
+ * Calculate browser version weight
+ *
+ * @example
+ * compareVersions(['1.10.2.1', '1.8.2.1.90']) // 1
+ * compareVersions(['1.010.2.1', '1.09.2.1.90']); // 1
+ * compareVersions(['1.10.2.1', '1.10.2.1']); // 0
+ * compareVersions(['1.10.2.1', '1.0800.2']); // -1
+ *
+ * @param {Array} versions versions to compare
+ * @return {Number} comparison result
+ */
+ function compareVersions(versions) {
+ // 1) get common precision for both versions, for example for "10.0" and "9" it should be 2
+ var precision = Math.max(getVersionPrecision(versions[0]), getVersionPrecision(versions[1]));
+ var chunks = map(versions, function (version) {
+ var delta = precision - getVersionPrecision(version);
+
+ // 2) "9" -> "9.0" (for precision = 2)
+ version = version + new Array(delta + 1).join(".0");
+
+ // 3) "9.0" -> ["000000000"", "000000009"]
+ return map(version.split("."), function (chunk) {
+ return new Array(20 - chunk.length).join("0") + chunk;
+ }).reverse();
+ });
+
+ // iterate in reverse order by reversed chunks array
+ while (--precision >= 0) {
+ // 4) compare: "000000009" > "000000010" = false (but "9" > "10" = true)
+ if (chunks[0][precision] > chunks[1][precision]) {
+ return 1;
+ }
+ else if (chunks[0][precision] === chunks[1][precision]) {
+ if (precision === 0) {
+ // all version chunks are same
+ return 0;
+ }
+ }
+ else {
+ return -1;
+ }
+ }
+ }
+
+ /**
+ * Check if browser is unsupported
+ *
+ * @example
+ * bowser.isUnsupportedBrowser({
+ * msie: "10",
+ * firefox: "23",
+ * chrome: "29",
+ * safari: "5.1",
+ * opera: "16",
+ * phantom: "534"
+ * });
+ *
+ * @param {Object} minVersions map of minimal version to browser
+ * @param {Boolean} [strictMode = false] flag to return false if browser wasn't found in map
+ * @param {String} [ua] user agent string
+ * @return {Boolean}
+ */
+ function isUnsupportedBrowser(minVersions, strictMode, ua) {
+ var _bowser = bowser;
+
+ // make strictMode param optional with ua param usage
+ if (typeof strictMode === 'string') {
+ ua = strictMode;
+ strictMode = void(0);
+ }
+
+ if (strictMode === void(0)) {
+ strictMode = false;
+ }
+ if (ua) {
+ _bowser = detect(ua);
+ }
+
+ var version = "" + _bowser.version;
+ for (var browser in minVersions) {
+ if (minVersions.hasOwnProperty(browser)) {
+ if (_bowser[browser]) {
+ if (typeof minVersions[browser] !== 'string') {
+ throw new Error('Browser version in the minVersion map should be a string: ' + browser + ': ' + String(minVersions));
+ }
+
+ // browser version and min supported version.
+ return compareVersions([version, minVersions[browser]]) < 0;
+ }
+ }
+ }
+
+ return strictMode; // not found
+ }
+
+ /**
+ * Check if browser is supported
+ *
+ * @param {Object} minVersions map of minimal version to browser
+ * @param {Boolean} [strictMode = false] flag to return false if browser wasn't found in map
+ * @param {String} [ua] user agent string
+ * @return {Boolean}
+ */
+ function check(minVersions, strictMode, ua) {
+ return !isUnsupportedBrowser(minVersions, strictMode, ua);
+ }
+
+ bowser.isUnsupportedBrowser = isUnsupportedBrowser;
+ bowser.compareVersions = compareVersions;
+ bowser.check = check;
+
+ /*
+ * Set our detect method to the main bowser object so we can
+ * reuse it to test other user agents.
+ * This is needed to implement future tests.
+ */
+ bowser._detect = detect;
+
+ /*
+ * Set our detect public method to the main bowser object
+ * This is needed to implement bowser in server side
+ */
+ bowser.detect = detect;
+ return bowser
+});
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/bowser.min.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/bowser.min.js
new file mode 100644
index 00000000..5866337b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/bowser.min.js
@@ -0,0 +1,6 @@
+/*!
+ * Bowser - a browser detector
+ * https://github.com/ded/bowser
+ * MIT License | (c) Dustin Diaz 2015
+ */
+!function(e,t,n){typeof module!="undefined"&&module.exports?module.exports=n():typeof define=="function"&&define.amd?define(t,n):e[t]=n()}(this,"bowser",function(){function t(t){function n(e){var n=t.match(e);return n&&n.length>1&&n[1]||""}function r(e){var n=t.match(e);return n&&n.length>1&&n[2]||""}function N(e){switch(e){case"NT":return"NT";case"XP":return"XP";case"NT 5.0":return"2000";case"NT 5.1":return"XP";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return undefined}}var i=n(/(ipod|iphone|ipad)/i).toLowerCase(),s=/like android/i.test(t),o=!s&&/android/i.test(t),u=/nexus\s*[0-6]\s*/i.test(t),a=!u&&/nexus\s*[0-9]+/i.test(t),f=/CrOS/.test(t),l=/silk/i.test(t),c=/sailfish/i.test(t),h=/tizen/i.test(t),p=/(web|hpw)os/i.test(t),d=/windows phone/i.test(t),v=/SamsungBrowser/i.test(t),m=!d&&/windows/i.test(t),g=!i&&!l&&/macintosh/i.test(t),y=!o&&!c&&!h&&!p&&/linux/i.test(t),b=r(/edg([ea]|ios)\/(\d+(\.\d+)?)/i),w=n(/version\/(\d+(\.\d+)?)/i),E=/tablet/i.test(t)&&!/tablet pc/i.test(t),S=!E&&/[^-]mobi/i.test(t),x=/xbox/i.test(t),T;/opera/i.test(t)?T={name:"Opera",opera:e,version:w||n(/(?:opera|opr|opios)[\s\/](\d+(\.\d+)?)/i)}:/opr\/|opios/i.test(t)?T={name:"Opera",opera:e,version:n(/(?:opr|opios)[\s\/](\d+(\.\d+)?)/i)||w}:/SamsungBrowser/i.test(t)?T={name:"Samsung Internet for Android",samsungBrowser:e,version:w||n(/(?:SamsungBrowser)[\s\/](\d+(\.\d+)?)/i)}:/coast/i.test(t)?T={name:"Opera Coast",coast:e,version:w||n(/(?:coast)[\s\/](\d+(\.\d+)?)/i)}:/yabrowser/i.test(t)?T={name:"Yandex Browser",yandexbrowser:e,version:w||n(/(?:yabrowser)[\s\/](\d+(\.\d+)?)/i)}:/ucbrowser/i.test(t)?T={name:"UC Browser",ucbrowser:e,version:n(/(?:ucbrowser)[\s\/](\d+(?:\.\d+)+)/i)}:/mxios/i.test(t)?T={name:"Maxthon",maxthon:e,version:n(/(?:mxios)[\s\/](\d+(?:\.\d+)+)/i)}:/epiphany/i.test(t)?T={name:"Epiphany",epiphany:e,version:n(/(?:epiphany)[\s\/](\d+(?:\.\d+)+)/i)}:/puffin/i.test(t)?T={name:"Puffin",puffin:e,version:n(/(?:puffin)[\s\/](\d+(?:\.\d+)?)/i)}:/sleipnir/i.test(t)?T={name:"Sleipnir",sleipnir:e,version:n(/(?:sleipnir)[\s\/](\d+(?:\.\d+)+)/i)}:/k-meleon/i.test(t)?T={name:"K-Meleon",kMeleon:e,version:n(/(?:k-meleon)[\s\/](\d+(?:\.\d+)+)/i)}:d?(T={name:"Windows Phone",osname:"Windows Phone",windowsphone:e},b?(T.msedge=e,T.version=b):(T.msie=e,T.version=n(/iemobile\/(\d+(\.\d+)?)/i))):/msie|trident/i.test(t)?T={name:"Internet Explorer",msie:e,version:n(/(?:msie |rv:)(\d+(\.\d+)?)/i)}:f?T={name:"Chrome",osname:"Chrome OS",chromeos:e,chromeBook:e,chrome:e,version:n(/(?:chrome|crios|crmo)\/(\d+(\.\d+)?)/i)}:/edg([ea]|ios)/i.test(t)?T={name:"Microsoft Edge",msedge:e,version:b}:/vivaldi/i.test(t)?T={name:"Vivaldi",vivaldi:e,version:n(/vivaldi\/(\d+(\.\d+)?)/i)||w}:c?T={name:"Sailfish",osname:"Sailfish OS",sailfish:e,version:n(/sailfish\s?browser\/(\d+(\.\d+)?)/i)}:/seamonkey\//i.test(t)?T={name:"SeaMonkey",seamonkey:e,version:n(/seamonkey\/(\d+(\.\d+)?)/i)}:/firefox|iceweasel|fxios/i.test(t)?(T={name:"Firefox",firefox:e,version:n(/(?:firefox|iceweasel|fxios)[ \/](\d+(\.\d+)?)/i)},/\((mobile|tablet);[^\)]*rv:[\d\.]+\)/i.test(t)&&(T.firefoxos=e,T.osname="Firefox OS")):l?T={name:"Amazon Silk",silk:e,version:n(/silk\/(\d+(\.\d+)?)/i)}:/phantom/i.test(t)?T={name:"PhantomJS",phantom:e,version:n(/phantomjs\/(\d+(\.\d+)?)/i)}:/slimerjs/i.test(t)?T={name:"SlimerJS",slimer:e,version:n(/slimerjs\/(\d+(\.\d+)?)/i)}:/blackberry|\bbb\d+/i.test(t)||/rim\stablet/i.test(t)?T={name:"BlackBerry",osname:"BlackBerry OS",blackberry:e,version:w||n(/blackberry[\d]+\/(\d+(\.\d+)?)/i)}:p?(T={name:"WebOS",osname:"WebOS",webos:e,version:w||n(/w(?:eb)?osbrowser\/(\d+(\.\d+)?)/i)},/touchpad\//i.test(t)&&(T.touchpad=e)):/bada/i.test(t)?T={name:"Bada",osname:"Bada",bada:e,version:n(/dolfin\/(\d+(\.\d+)?)/i)}:h?T={name:"Tizen",osname:"Tizen",tizen:e,version:n(/(?:tizen\s?)?browser\/(\d+(\.\d+)?)/i)||w}:/qupzilla/i.test(t)?T={name:"QupZilla",qupzilla:e,version:n(/(?:qupzilla)[\s\/](\d+(?:\.\d+)+)/i)||w}:/chromium/i.test(t)?T={name:"Chromium",chromium:e,version:n(/(?:chromium)[\s\/](\d+(?:\.\d+)?)/i)||w}:/chrome|crios|crmo/i.test(t)?T={name:"Chrome",chrome:e,version:n(/(?:chrome|crios|crmo)\/(\d+(\.\d+)?)/i)}:o?T={name:"Android",version:w}:/safari|applewebkit/i.test(t)?(T={name:"Safari",safari:e},w&&(T.version=w)):i?(T={name:i=="iphone"?"iPhone":i=="ipad"?"iPad":"iPod"},w&&(T.version=w)):/googlebot/i.test(t)?T={name:"Googlebot",googlebot:e,version:n(/googlebot\/(\d+(\.\d+))/i)||w}:T={name:n(/^(.*)\/(.*) /),version:r(/^(.*)\/(.*) /)},!T.msedge&&/(apple)?webkit/i.test(t)?(/(apple)?webkit\/537\.36/i.test(t)?(T.name=T.name||"Blink",T.blink=e):(T.name=T.name||"Webkit",T.webkit=e),!T.version&&w&&(T.version=w)):!T.opera&&/gecko\//i.test(t)&&(T.name=T.name||"Gecko",T.gecko=e,T.version=T.version||n(/gecko\/(\d+(\.\d+)?)/i)),!T.windowsphone&&(o||T.silk)?(T.android=e,T.osname="Android"):!T.windowsphone&&i?(T[i]=e,T.ios=e,T.osname="iOS"):g?(T.mac=e,T.osname="macOS"):x?(T.xbox=e,T.osname="Xbox"):m?(T.windows=e,T.osname="Windows"):y&&(T.linux=e,T.osname="Linux");var C="";T.windows?C=N(n(/Windows ((NT|XP)( \d\d?.\d)?)/i)):T.windowsphone?C=n(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i):T.mac?(C=n(/Mac OS X (\d+([_\.\s]\d+)*)/i),C=C.replace(/[_\s]/g,".")):i?(C=n(/os (\d+([_\s]\d+)*) like mac os x/i),C=C.replace(/[_\s]/g,".")):o?C=n(/android[ \/-](\d+(\.\d+)*)/i):T.webos?C=n(/(?:web|hpw)os\/(\d+(\.\d+)*)/i):T.blackberry?C=n(/rim\stablet\sos\s(\d+(\.\d+)*)/i):T.bada?C=n(/bada\/(\d+(\.\d+)*)/i):T.tizen&&(C=n(/tizen[\/\s](\d+(\.\d+)*)/i)),C&&(T.osversion=C);var k=!T.windows&&C.split(".")[0];if(E||a||i=="ipad"||o&&(k==3||k>=4&&!S)||T.silk)T.tablet=e;else if(S||i=="iphone"||i=="ipod"||o||u||T.blackberry||T.webos||T.bada)T.mobile=e;return T.msedge||T.msie&&T.version>=10||T.yandexbrowser&&T.version>=15||T.vivaldi&&T.version>=1||T.chrome&&T.version>=20||T.samsungBrowser&&T.version>=4||T.firefox&&T.version>=20||T.safari&&T.version>=6||T.opera&&T.version>=10||T.ios&&T.osversion&&T.osversion.split(".")[0]>=6||T.blackberry&&T.version>=10.1||T.chromium&&T.version>=20?T.a=e:T.msie&&T.version<10||T.chrome&&T.version<20||T.firefox&&T.version<20||T.safari&&T.version<6||T.opera&&T.version<10||T.ios&&T.osversion&&T.osversion.split(".")[0]<6||T.chromium&&T.version<20?T.c=e:T.x=e,T}function r(e){return e.split(".").length}function i(e,t){var n=[],r;if(Array.prototype.map)return Array.prototype.map.call(e,t);for(r=0;r=0){if(n[0][t]>n[1][t])return 1;if(n[0][t]!==n[1][t])return-1;if(t===0)return 0}}function o(e,r,i){var o=n;typeof r=="string"&&(i=r,r=void 0),r===void 0&&(r=!1),i&&(o=t(i));var u=""+o.version;for(var a in e)if(e.hasOwnProperty(a)&&o[a]){if(typeof e[a]!="string")throw new Error("Browser version in the minVersion map should be a string: "+a+": "+String(e));return s([u,e[a]])<0}return r}function u(e,t,n){return!o(e,t,n)}var e=!0,n=t(typeof navigator!="undefined"?navigator.userAgent||"":"");return n.test=function(e){for(var t=0;t 1 && match[1]) || '';
+ }
+
+ function getSecondMatch(regex) {
+ var match = ua.match(regex);
+ return (match && match.length > 1 && match[2]) || '';
+ }
+
+ var iosdevice = getFirstMatch(/(ipod|iphone|ipad)/i).toLowerCase()
+ , likeAndroid = /like android/i.test(ua)
+ , android = !likeAndroid && /android/i.test(ua)
+ , nexusMobile = /nexus\s*[0-6]\s*/i.test(ua)
+ , nexusTablet = !nexusMobile && /nexus\s*[0-9]+/i.test(ua)
+ , chromeos = /CrOS/.test(ua)
+ , silk = /silk/i.test(ua)
+ , sailfish = /sailfish/i.test(ua)
+ , tizen = /tizen/i.test(ua)
+ , webos = /(web|hpw)os/i.test(ua)
+ , windowsphone = /windows phone/i.test(ua)
+ , samsungBrowser = /SamsungBrowser/i.test(ua)
+ , windows = !windowsphone && /windows/i.test(ua)
+ , mac = !iosdevice && !silk && /macintosh/i.test(ua)
+ , linux = !android && !sailfish && !tizen && !webos && /linux/i.test(ua)
+ , edgeVersion = getSecondMatch(/edg([ea]|ios)\/(\d+(\.\d+)?)/i)
+ , versionIdentifier = getFirstMatch(/version\/(\d+(\.\d+)?)/i)
+ , tablet = /tablet/i.test(ua) && !/tablet pc/i.test(ua)
+ , mobile = !tablet && /[^-]mobi/i.test(ua)
+ , xbox = /xbox/i.test(ua)
+ , result
+
+ if (/opera/i.test(ua)) {
+ // an old Opera
+ result = {
+ name: 'Opera'
+ , opera: t
+ , version: versionIdentifier || getFirstMatch(/(?:opera|opr|opios)[\s\/](\d+(\.\d+)?)/i)
+ }
+ } else if (/opr\/|opios/i.test(ua)) {
+ // a new Opera
+ result = {
+ name: 'Opera'
+ , opera: t
+ , version: getFirstMatch(/(?:opr|opios)[\s\/](\d+(\.\d+)?)/i) || versionIdentifier
+ }
+ }
+ else if (/SamsungBrowser/i.test(ua)) {
+ result = {
+ name: 'Samsung Internet for Android'
+ , samsungBrowser: t
+ , version: versionIdentifier || getFirstMatch(/(?:SamsungBrowser)[\s\/](\d+(\.\d+)?)/i)
+ }
+ }
+ else if (/coast/i.test(ua)) {
+ result = {
+ name: 'Opera Coast'
+ , coast: t
+ , version: versionIdentifier || getFirstMatch(/(?:coast)[\s\/](\d+(\.\d+)?)/i)
+ }
+ }
+ else if (/yabrowser/i.test(ua)) {
+ result = {
+ name: 'Yandex Browser'
+ , yandexbrowser: t
+ , version: versionIdentifier || getFirstMatch(/(?:yabrowser)[\s\/](\d+(\.\d+)?)/i)
+ }
+ }
+ else if (/ucbrowser/i.test(ua)) {
+ result = {
+ name: 'UC Browser'
+ , ucbrowser: t
+ , version: getFirstMatch(/(?:ucbrowser)[\s\/](\d+(?:\.\d+)+)/i)
+ }
+ }
+ else if (/mxios/i.test(ua)) {
+ result = {
+ name: 'Maxthon'
+ , maxthon: t
+ , version: getFirstMatch(/(?:mxios)[\s\/](\d+(?:\.\d+)+)/i)
+ }
+ }
+ else if (/epiphany/i.test(ua)) {
+ result = {
+ name: 'Epiphany'
+ , epiphany: t
+ , version: getFirstMatch(/(?:epiphany)[\s\/](\d+(?:\.\d+)+)/i)
+ }
+ }
+ else if (/puffin/i.test(ua)) {
+ result = {
+ name: 'Puffin'
+ , puffin: t
+ , version: getFirstMatch(/(?:puffin)[\s\/](\d+(?:\.\d+)?)/i)
+ }
+ }
+ else if (/sleipnir/i.test(ua)) {
+ result = {
+ name: 'Sleipnir'
+ , sleipnir: t
+ , version: getFirstMatch(/(?:sleipnir)[\s\/](\d+(?:\.\d+)+)/i)
+ }
+ }
+ else if (/k-meleon/i.test(ua)) {
+ result = {
+ name: 'K-Meleon'
+ , kMeleon: t
+ , version: getFirstMatch(/(?:k-meleon)[\s\/](\d+(?:\.\d+)+)/i)
+ }
+ }
+ else if (windowsphone) {
+ result = {
+ name: 'Windows Phone'
+ , osname: 'Windows Phone'
+ , windowsphone: t
+ }
+ if (edgeVersion) {
+ result.msedge = t
+ result.version = edgeVersion
+ }
+ else {
+ result.msie = t
+ result.version = getFirstMatch(/iemobile\/(\d+(\.\d+)?)/i)
+ }
+ }
+ else if (/msie|trident/i.test(ua)) {
+ result = {
+ name: 'Internet Explorer'
+ , msie: t
+ , version: getFirstMatch(/(?:msie |rv:)(\d+(\.\d+)?)/i)
+ }
+ } else if (chromeos) {
+ result = {
+ name: 'Chrome'
+ , osname: 'Chrome OS'
+ , chromeos: t
+ , chromeBook: t
+ , chrome: t
+ , version: getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.\d+)?)/i)
+ }
+ } else if (/edg([ea]|ios)/i.test(ua)) {
+ result = {
+ name: 'Microsoft Edge'
+ , msedge: t
+ , version: edgeVersion
+ }
+ }
+ else if (/vivaldi/i.test(ua)) {
+ result = {
+ name: 'Vivaldi'
+ , vivaldi: t
+ , version: getFirstMatch(/vivaldi\/(\d+(\.\d+)?)/i) || versionIdentifier
+ }
+ }
+ else if (sailfish) {
+ result = {
+ name: 'Sailfish'
+ , osname: 'Sailfish OS'
+ , sailfish: t
+ , version: getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i)
+ }
+ }
+ else if (/seamonkey\//i.test(ua)) {
+ result = {
+ name: 'SeaMonkey'
+ , seamonkey: t
+ , version: getFirstMatch(/seamonkey\/(\d+(\.\d+)?)/i)
+ }
+ }
+ else if (/firefox|iceweasel|fxios/i.test(ua)) {
+ result = {
+ name: 'Firefox'
+ , firefox: t
+ , version: getFirstMatch(/(?:firefox|iceweasel|fxios)[ \/](\d+(\.\d+)?)/i)
+ }
+ if (/\((mobile|tablet);[^\)]*rv:[\d\.]+\)/i.test(ua)) {
+ result.firefoxos = t
+ result.osname = 'Firefox OS'
+ }
+ }
+ else if (silk) {
+ result = {
+ name: 'Amazon Silk'
+ , silk: t
+ , version : getFirstMatch(/silk\/(\d+(\.\d+)?)/i)
+ }
+ }
+ else if (/phantom/i.test(ua)) {
+ result = {
+ name: 'PhantomJS'
+ , phantom: t
+ , version: getFirstMatch(/phantomjs\/(\d+(\.\d+)?)/i)
+ }
+ }
+ else if (/slimerjs/i.test(ua)) {
+ result = {
+ name: 'SlimerJS'
+ , slimer: t
+ , version: getFirstMatch(/slimerjs\/(\d+(\.\d+)?)/i)
+ }
+ }
+ else if (/blackberry|\bbb\d+/i.test(ua) || /rim\stablet/i.test(ua)) {
+ result = {
+ name: 'BlackBerry'
+ , osname: 'BlackBerry OS'
+ , blackberry: t
+ , version: versionIdentifier || getFirstMatch(/blackberry[\d]+\/(\d+(\.\d+)?)/i)
+ }
+ }
+ else if (webos) {
+ result = {
+ name: 'WebOS'
+ , osname: 'WebOS'
+ , webos: t
+ , version: versionIdentifier || getFirstMatch(/w(?:eb)?osbrowser\/(\d+(\.\d+)?)/i)
+ };
+ /touchpad\//i.test(ua) && (result.touchpad = t)
+ }
+ else if (/bada/i.test(ua)) {
+ result = {
+ name: 'Bada'
+ , osname: 'Bada'
+ , bada: t
+ , version: getFirstMatch(/dolfin\/(\d+(\.\d+)?)/i)
+ };
+ }
+ else if (tizen) {
+ result = {
+ name: 'Tizen'
+ , osname: 'Tizen'
+ , tizen: t
+ , version: getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.\d+)?)/i) || versionIdentifier
+ };
+ }
+ else if (/qupzilla/i.test(ua)) {
+ result = {
+ name: 'QupZilla'
+ , qupzilla: t
+ , version: getFirstMatch(/(?:qupzilla)[\s\/](\d+(?:\.\d+)+)/i) || versionIdentifier
+ }
+ }
+ else if (/chromium/i.test(ua)) {
+ result = {
+ name: 'Chromium'
+ , chromium: t
+ , version: getFirstMatch(/(?:chromium)[\s\/](\d+(?:\.\d+)?)/i) || versionIdentifier
+ }
+ }
+ else if (/chrome|crios|crmo/i.test(ua)) {
+ result = {
+ name: 'Chrome'
+ , chrome: t
+ , version: getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.\d+)?)/i)
+ }
+ }
+ else if (android) {
+ result = {
+ name: 'Android'
+ , version: versionIdentifier
+ }
+ }
+ else if (/safari|applewebkit/i.test(ua)) {
+ result = {
+ name: 'Safari'
+ , safari: t
+ }
+ if (versionIdentifier) {
+ result.version = versionIdentifier
+ }
+ }
+ else if (iosdevice) {
+ result = {
+ name : iosdevice == 'iphone' ? 'iPhone' : iosdevice == 'ipad' ? 'iPad' : 'iPod'
+ }
+ // WTF: version is not part of user agent in web apps
+ if (versionIdentifier) {
+ result.version = versionIdentifier
+ }
+ }
+ else if(/googlebot/i.test(ua)) {
+ result = {
+ name: 'Googlebot'
+ , googlebot: t
+ , version: getFirstMatch(/googlebot\/(\d+(\.\d+))/i) || versionIdentifier
+ }
+ }
+ else {
+ result = {
+ name: getFirstMatch(/^(.*)\/(.*) /),
+ version: getSecondMatch(/^(.*)\/(.*) /)
+ };
+ }
+
+ // set webkit or gecko flag for browsers based on these engines
+ if (!result.msedge && /(apple)?webkit/i.test(ua)) {
+ if (/(apple)?webkit\/537\.36/i.test(ua)) {
+ result.name = result.name || "Blink"
+ result.blink = t
+ } else {
+ result.name = result.name || "Webkit"
+ result.webkit = t
+ }
+ if (!result.version && versionIdentifier) {
+ result.version = versionIdentifier
+ }
+ } else if (!result.opera && /gecko\//i.test(ua)) {
+ result.name = result.name || "Gecko"
+ result.gecko = t
+ result.version = result.version || getFirstMatch(/gecko\/(\d+(\.\d+)?)/i)
+ }
+
+ // set OS flags for platforms that have multiple browsers
+ if (!result.windowsphone && (android || result.silk)) {
+ result.android = t
+ result.osname = 'Android'
+ } else if (!result.windowsphone && iosdevice) {
+ result[iosdevice] = t
+ result.ios = t
+ result.osname = 'iOS'
+ } else if (mac) {
+ result.mac = t
+ result.osname = 'macOS'
+ } else if (xbox) {
+ result.xbox = t
+ result.osname = 'Xbox'
+ } else if (windows) {
+ result.windows = t
+ result.osname = 'Windows'
+ } else if (linux) {
+ result.linux = t
+ result.osname = 'Linux'
+ }
+
+ function getWindowsVersion (s) {
+ switch (s) {
+ case 'NT': return 'NT'
+ case 'XP': return 'XP'
+ case 'NT 5.0': return '2000'
+ case 'NT 5.1': return 'XP'
+ case 'NT 5.2': return '2003'
+ case 'NT 6.0': return 'Vista'
+ case 'NT 6.1': return '7'
+ case 'NT 6.2': return '8'
+ case 'NT 6.3': return '8.1'
+ case 'NT 10.0': return '10'
+ default: return undefined
+ }
+ }
+
+ // OS version extraction
+ var osVersion = '';
+ if (result.windows) {
+ osVersion = getWindowsVersion(getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i))
+ } else if (result.windowsphone) {
+ osVersion = getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i);
+ } else if (result.mac) {
+ osVersion = getFirstMatch(/Mac OS X (\d+([_\.\s]\d+)*)/i);
+ osVersion = osVersion.replace(/[_\s]/g, '.');
+ } else if (iosdevice) {
+ osVersion = getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i);
+ osVersion = osVersion.replace(/[_\s]/g, '.');
+ } else if (android) {
+ osVersion = getFirstMatch(/android[ \/-](\d+(\.\d+)*)/i);
+ } else if (result.webos) {
+ osVersion = getFirstMatch(/(?:web|hpw)os\/(\d+(\.\d+)*)/i);
+ } else if (result.blackberry) {
+ osVersion = getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i);
+ } else if (result.bada) {
+ osVersion = getFirstMatch(/bada\/(\d+(\.\d+)*)/i);
+ } else if (result.tizen) {
+ osVersion = getFirstMatch(/tizen[\/\s](\d+(\.\d+)*)/i);
+ }
+ if (osVersion) {
+ result.osversion = osVersion;
+ }
+
+ // device type extraction
+ var osMajorVersion = !result.windows && osVersion.split('.')[0];
+ if (
+ tablet
+ || nexusTablet
+ || iosdevice == 'ipad'
+ || (android && (osMajorVersion == 3 || (osMajorVersion >= 4 && !mobile)))
+ || result.silk
+ ) {
+ result.tablet = t
+ } else if (
+ mobile
+ || iosdevice == 'iphone'
+ || iosdevice == 'ipod'
+ || android
+ || nexusMobile
+ || result.blackberry
+ || result.webos
+ || result.bada
+ ) {
+ result.mobile = t
+ }
+
+ // Graded Browser Support
+ // http://developer.yahoo.com/yui/articles/gbs
+ if (result.msedge ||
+ (result.msie && result.version >= 10) ||
+ (result.yandexbrowser && result.version >= 15) ||
+ (result.vivaldi && result.version >= 1.0) ||
+ (result.chrome && result.version >= 20) ||
+ (result.samsungBrowser && result.version >= 4) ||
+ (result.firefox && result.version >= 20.0) ||
+ (result.safari && result.version >= 6) ||
+ (result.opera && result.version >= 10.0) ||
+ (result.ios && result.osversion && result.osversion.split(".")[0] >= 6) ||
+ (result.blackberry && result.version >= 10.1)
+ || (result.chromium && result.version >= 20)
+ ) {
+ result.a = t;
+ }
+ else if ((result.msie && result.version < 10) ||
+ (result.chrome && result.version < 20) ||
+ (result.firefox && result.version < 20.0) ||
+ (result.safari && result.version < 6) ||
+ (result.opera && result.version < 10.0) ||
+ (result.ios && result.osversion && result.osversion.split(".")[0] < 6)
+ || (result.chromium && result.version < 20)
+ ) {
+ result.c = t
+ } else result.x = t
+
+ return result
+ }
+
+ var bowser = detect(typeof navigator !== 'undefined' ? navigator.userAgent || '' : '')
+
+ bowser.test = function (browserList) {
+ for (var i = 0; i < browserList.length; ++i) {
+ var browserItem = browserList[i];
+ if (typeof browserItem=== 'string') {
+ if (browserItem in bowser) {
+ return true;
+ }
+ }
+ }
+ return false;
+ }
+
+ /**
+ * Get version precisions count
+ *
+ * @example
+ * getVersionPrecision("1.10.3") // 3
+ *
+ * @param {string} version
+ * @return {number}
+ */
+ function getVersionPrecision(version) {
+ return version.split(".").length;
+ }
+
+ /**
+ * Array::map polyfill
+ *
+ * @param {Array} arr
+ * @param {Function} iterator
+ * @return {Array}
+ */
+ function map(arr, iterator) {
+ var result = [], i;
+ if (Array.prototype.map) {
+ return Array.prototype.map.call(arr, iterator);
+ }
+ for (i = 0; i < arr.length; i++) {
+ result.push(iterator(arr[i]));
+ }
+ return result;
+ }
+
+ /**
+ * Calculate browser version weight
+ *
+ * @example
+ * compareVersions(['1.10.2.1', '1.8.2.1.90']) // 1
+ * compareVersions(['1.010.2.1', '1.09.2.1.90']); // 1
+ * compareVersions(['1.10.2.1', '1.10.2.1']); // 0
+ * compareVersions(['1.10.2.1', '1.0800.2']); // -1
+ *
+ * @param {Array} versions versions to compare
+ * @return {Number} comparison result
+ */
+ function compareVersions(versions) {
+ // 1) get common precision for both versions, for example for "10.0" and "9" it should be 2
+ var precision = Math.max(getVersionPrecision(versions[0]), getVersionPrecision(versions[1]));
+ var chunks = map(versions, function (version) {
+ var delta = precision - getVersionPrecision(version);
+
+ // 2) "9" -> "9.0" (for precision = 2)
+ version = version + new Array(delta + 1).join(".0");
+
+ // 3) "9.0" -> ["000000000"", "000000009"]
+ return map(version.split("."), function (chunk) {
+ return new Array(20 - chunk.length).join("0") + chunk;
+ }).reverse();
+ });
+
+ // iterate in reverse order by reversed chunks array
+ while (--precision >= 0) {
+ // 4) compare: "000000009" > "000000010" = false (but "9" > "10" = true)
+ if (chunks[0][precision] > chunks[1][precision]) {
+ return 1;
+ }
+ else if (chunks[0][precision] === chunks[1][precision]) {
+ if (precision === 0) {
+ // all version chunks are same
+ return 0;
+ }
+ }
+ else {
+ return -1;
+ }
+ }
+ }
+
+ /**
+ * Check if browser is unsupported
+ *
+ * @example
+ * bowser.isUnsupportedBrowser({
+ * msie: "10",
+ * firefox: "23",
+ * chrome: "29",
+ * safari: "5.1",
+ * opera: "16",
+ * phantom: "534"
+ * });
+ *
+ * @param {Object} minVersions map of minimal version to browser
+ * @param {Boolean} [strictMode = false] flag to return false if browser wasn't found in map
+ * @param {String} [ua] user agent string
+ * @return {Boolean}
+ */
+ function isUnsupportedBrowser(minVersions, strictMode, ua) {
+ var _bowser = bowser;
+
+ // make strictMode param optional with ua param usage
+ if (typeof strictMode === 'string') {
+ ua = strictMode;
+ strictMode = void(0);
+ }
+
+ if (strictMode === void(0)) {
+ strictMode = false;
+ }
+ if (ua) {
+ _bowser = detect(ua);
+ }
+
+ var version = "" + _bowser.version;
+ for (var browser in minVersions) {
+ if (minVersions.hasOwnProperty(browser)) {
+ if (_bowser[browser]) {
+ if (typeof minVersions[browser] !== 'string') {
+ throw new Error('Browser version in the minVersion map should be a string: ' + browser + ': ' + String(minVersions));
+ }
+
+ // browser version and min supported version.
+ return compareVersions([version, minVersions[browser]]) < 0;
+ }
+ }
+ }
+
+ return strictMode; // not found
+ }
+
+ /**
+ * Check if browser is supported
+ *
+ * @param {Object} minVersions map of minimal version to browser
+ * @param {Boolean} [strictMode = false] flag to return false if browser wasn't found in map
+ * @param {String} [ua] user agent string
+ * @return {Boolean}
+ */
+ function check(minVersions, strictMode, ua) {
+ return !isUnsupportedBrowser(minVersions, strictMode, ua);
+ }
+
+ bowser.isUnsupportedBrowser = isUnsupportedBrowser;
+ bowser.compareVersions = compareVersions;
+ bowser.check = check;
+
+ /*
+ * Set our detect method to the main bowser object so we can
+ * reuse it to test other user agents.
+ * This is needed to implement future tests.
+ */
+ bowser._detect = detect;
+
+ /*
+ * Set our detect public method to the main bowser object
+ * This is needed to implement bowser in server side
+ */
+ bowser.detect = detect;
+ return bowser
+});
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/test/test.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/test/test.js
new file mode 100644
index 00000000..9fe5f5d8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/test/test.js
@@ -0,0 +1,151 @@
+/**
+ * Loop through all entries in our user agents object and test everything.
+ *
+ * @see src/useragents.js
+ * @author hannes.diercks@jimdo.com
+ */
+
+var g
+ , ua
+ , p
+ , assert = require('assert')
+ , browser = require('../src/bowser')
+ , allUserAgents = require('../src/useragents').useragents
+
+/**
+ * Get the length of an object.
+ * http://stackoverflow.com/questions/5223/length-of-javascript-object-ie-associative-array
+ *
+ * @param {Object} obj
+ * @return {Number}
+ */
+function objLength(obj) {
+ var size = 0
+ , key
+ for (key in obj) {
+ if (obj.hasOwnProperty(key)) size++
+ }
+ return size
+}
+
+function objKeys(obj) {
+ var keys = []
+ , key
+ for (key in obj) {
+ if (obj.hasOwnProperty(key)) {
+ keys.push(key)
+ }
+ }
+ keys.sort();
+ return keys.join(', ')
+}
+
+/* Groups */
+for (g in allUserAgents) { (function(group, userAgents) {
+ describe(group, function() {
+
+ /* User Agents */
+ for (ua in userAgents) { (function(userAgent, expections) {
+ describe('user agent "' + userAgent + '"', function() {
+
+ expections.name = group
+
+ /* Get the result from bowser. */
+ var result = browser._detect(userAgent)
+
+ /* At first, check if the result has the correct length. */
+ it('should have ' + objLength(expections) + ' properties', function() {
+ assert.equal(objKeys(result), objKeys(expections))
+ })
+
+ /* Properties */
+ for (p in expections) { (function(property, value, resultValue) {
+
+ /* Now ensure correctness of every property. */
+ it('\'s Property "' + property + '" should be ' + value, function() {
+ assert.equal(resultValue, value)
+ })
+
+ })(p, expections[p], result[p])}
+
+ })
+ })(ua, userAgents[ua])}
+
+ })
+})(g, allUserAgents[g])}
+
+var comparisionsTasks = [
+ ['9.0', '10', -1],
+ ['11', '10', 1],
+ ['1.10.2.1', '1.8.2.1.90', 1],
+ ['1.010.2.1', '1.08.2.1.90', 1],
+ ['1.10.2.1', '1.10.2.1', 0],
+ ['1.10.2.1', '1.0800.2', -1],
+ ['1.0.0-alpha', '1.0.0-alpha.1', -1],
+ ['1.0.0-alpha.1', '1.0.0-alpha.beta', -1],
+ ['1.0.0-alpha.beta', '1.0.0-beta', -1],
+ ['1.0.0-beta', '1.0.0-beta.2', -1],
+ ['1.0.0-beta.11', '1.0.0-rc.1', -1],
+ ['1.0.0-rc.1', '1.0.0', -1]
+];
+
+describe('Browser versions comparision', function() {
+ for(g in comparisionsTasks) {
+ var task = comparisionsTasks[g],
+ version = task[0],
+ version2 = task[1],
+ matching = task[2] === 0 ? ' == ' : (task[2] > 0) ? ' > ' : ' < ';
+ it('version ' + version + ' should be' + matching + 'version ' + version2, function(){
+ assert.equal(browser.compareVersions([version, version2]), task[2]);
+ });
+ }
+});
+
+describe('Unsupported browser check', function() {
+
+ before(function() {
+ this.ie10_6 = "Mozilla/5.0 (compatible; MSIE 10.6; Windows NT 6.1; Trident/5.0; InfoPath.2; SLCC1; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET CLR 2.0.50727) 3gpp-gba UNTRUSTED/1.0";
+ });
+
+ it('should be passed by #isUnsupportedBrowser for IE10.6 and for IE10 miminal version specified', function() {
+ var unsupported = browser.isUnsupportedBrowser({msie: "10"}, this.ie10_6);
+ assert.equal(unsupported, false);
+ });
+
+ it('should be passed by #isUnsupportedBrowser for IE10.6 and for IE10 miminal version specified in strict mode', function() {
+ var unsupported = browser.isUnsupportedBrowser({msie: "10"}, true, this.ie10_6);
+ assert.equal(unsupported, false);
+ });
+
+ it('should NOT be passed by #isUnsupportedBrowser for IE10.6 and for IE10 miminal version specified in strict mode', function() {
+ var isUnsupported = browser.isUnsupportedBrowser({msie: "11"}, true, this.ie10_6);
+ assert.equal(isUnsupported, true);
+ });
+
+ it('should NOT be passed by #check for IE10.6 and for IE11 miminal version specified', function() {
+ var supported = browser.check({msie: "11"}, this.ie10_6);
+ assert.equal(supported, false);
+ });
+
+ it('should NOT be passed by #check for IE10.6 and for IE11 miminal version specified in strict mode', function() {
+ var supported = browser.check({msie: "11"}, true, this.ie10_6);
+ assert.equal(supported, false);
+ });
+
+ it('should throw an error when minVersion map has a number, but not a string', function() {
+ assert.throws(() => {
+ browser.check({msie: 11}, this.ie10_6);
+ }, /Browser version in the minVersion map should be a string/);
+ });
+
+ it('should be passed by #check for IE10.6 when version was not specified', function() {
+ var supported = browser.check({}, this.ie10_6);
+ assert.equal(supported, true);
+ });
+
+ it('should NOT be passed by #check for IE10.6 when version was not specified in strict mode', function() {
+ var supported = browser.check({}, true, this.ie10_6);
+ assert.equal(supported, false);
+ });
+
+})
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/typings.d.ts b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/typings.d.ts
new file mode 100644
index 00000000..84af6bd2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/bowser/typings.d.ts
@@ -0,0 +1,106 @@
+// Type definitions for Bowser 1.x
+// Project: https://github.com/lancedikson/bowser
+// Definitions by: Paulo Cesar
+// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
+
+declare const bowser: bowser.IBowser;
+export = bowser;
+export as namespace bowser;
+
+declare namespace bowser {
+
+ export interface IBowserOS {
+ mac: boolean;
+ /**other than Windows Phone */
+ windows: boolean;
+ windowsphone: boolean;
+ /**other than android, chromeos, webos, tizen, and sailfish */
+ linux: boolean;
+ chromeos: boolean;
+ android: boolean;
+ /** also sets one of iphone/ipad/ipod */
+ ios: boolean;
+ blackberry: boolean;
+ firefoxos: boolean;
+ /** may also set touchpad */
+ webos: boolean;
+ bada: boolean;
+ tizen: boolean;
+ sailfish: boolean;
+ }
+
+ export interface IBowserVersions {
+ chrome: boolean;
+ chromium: boolean;
+ firefox: boolean;
+ msie: boolean;
+ msedge: boolean;
+ safari: boolean;
+ android: boolean;
+ ios: boolean;
+ opera: boolean;
+ phantom: boolean;
+ blackberry: boolean;
+ webos: boolean;
+ silk: boolean;
+ bada: boolean;
+ tizen: boolean;
+ seamonkey: boolean;
+ sailfish: boolean;
+ ucbrowser: boolean;
+ qupzilla: boolean;
+ vivaldi: boolean;
+ sleipnir: boolean;
+ kMeleon: boolean;
+ }
+
+ export interface IBowserEngines {
+ /** IE <= 11 */
+ msie: boolean;
+ /**Chrome 0-27, Android <4.4, iOs, BB, etc. */
+ webkit: boolean;
+ /**Chrome >=28, Android >=4.4, Opera, etc. */
+ blink: boolean;
+ /**Firefox, etc. */
+ gecko: boolean;
+ /** IE > 11 */
+ msedge: boolean;
+ /** If a tablet device is detected, the flag tablet is set instead of mobile. */
+ tablet: boolean;
+ /** All detected mobile OSes are additionally flagged mobile, unless it's a tablet */
+ mobile: boolean;
+
+ }
+
+ export interface IBowserGrade {
+ /** Grade A browser */
+ a: boolean;
+ /** Grade C browser */
+ c: boolean;
+ /** Grade X browser */
+ x: boolean;
+ /**A human readable name for this browser. E.g. 'Chrome', '' */
+ name: string;
+ /**Version number for the browser. E.g. '32.0' */
+ version: string|number;
+ osversion: string|number;
+ }
+
+ export interface IBowserDetection extends IBowserGrade, IBowserEngines, IBowserOS, IBowserVersions { }
+
+ export interface IBowserMinVersions {
+ // { msie: "11", "firefox": "4" }
+ [index: string]: string;
+ }
+
+ export interface IBowser extends IBowserDetection {
+ (): IBowserDetection;
+ test(browserList: string[]): boolean;
+ _detect(ua: string): IBowser;
+ detect(ua: string): IBowser;
+ compareVersions(versions: string[]): number;
+ check(minVersions: IBowserMinVersions, strictMode?: boolean|string, ua?: string): Boolean;
+ isUnsupportedBrowser(minVersions: IBowserMinVersions, strictMode?: boolean|string, ua?: string): boolean;
+ }
+
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/chain-function/.gitattributes b/goTorrentWebUI/node_modules/react-toastify/node_modules/chain-function/.gitattributes
new file mode 100644
index 00000000..bdb0cabc
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/chain-function/.gitattributes
@@ -0,0 +1,17 @@
+# Auto detect text files and perform LF normalization
+* text=auto
+
+# Custom for Visual Studio
+*.cs diff=csharp
+
+# Standard to msysgit
+*.doc diff=astextplain
+*.DOC diff=astextplain
+*.docx diff=astextplain
+*.DOCX diff=astextplain
+*.dot diff=astextplain
+*.DOT diff=astextplain
+*.pdf diff=astextplain
+*.PDF diff=astextplain
+*.rtf diff=astextplain
+*.RTF diff=astextplain
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/chain-function/.npmignore b/goTorrentWebUI/node_modules/react-toastify/node_modules/chain-function/.npmignore
new file mode 100644
index 00000000..ef772a6e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/chain-function/.npmignore
@@ -0,0 +1,75 @@
+# Logs
+logs
+*.log
+
+# Runtime data
+pids
+*.pid
+*.seed
+
+# Directory for instrumented libs generated by jscoverage/JSCover
+lib-cov
+
+# Coverage directory used by tools like istanbul
+coverage
+
+# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
+.grunt
+
+# Compiled binary addons (http://nodejs.org/api/addons.html)
+build/Release
+
+# Dependency directory
+# Commenting this out is preferred by some people, see
+# https://www.npmjs.org/doc/misc/npm-faq.html#should-i-check-my-node_modules-folder-into-git-
+node_modules
+
+# Users Environment Variables
+.lock-wscript
+
+# =========================
+# Operating System Files
+# =========================
+
+# OSX
+# =========================
+
+.DS_Store
+.AppleDouble
+.LSOverride
+
+# Thumbnails
+._*
+
+# Files that might appear on external disk
+.Spotlight-V100
+.Trashes
+
+# Directories potentially created on remote AFP share
+.AppleDB
+.AppleDesktop
+Network Trash Folder
+Temporary Items
+.apdisk
+
+# Windows
+# =========================
+
+# Windows image file caches
+Thumbs.db
+ehthumbs.db
+
+# Folder config file
+Desktop.ini
+
+# Recycle Bin used on file shares
+$RECYCLE.BIN/
+
+# Windows Installer files
+*.cab
+*.msi
+*.msm
+*.msp
+
+# Windows shortcuts
+*.lnk
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/chain-function/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/chain-function/index.js
new file mode 100644
index 00000000..a78e8fa4
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/chain-function/index.js
@@ -0,0 +1,20 @@
+
+module.exports = function chain(){
+ var len = arguments.length
+ var args = [];
+
+ for (var i = 0; i < len; i++)
+ args[i] = arguments[i]
+
+ args = args.filter(function(fn){ return fn != null })
+
+ if (args.length === 0) return undefined
+ if (args.length === 1) return args[0]
+
+ return args.reduce(function(current, next){
+ return function chainedFunction() {
+ current.apply(this, arguments);
+ next.apply(this, arguments);
+ };
+ })
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/chain-function/package.json b/goTorrentWebUI/node_modules/react-toastify/node_modules/chain-function/package.json
new file mode 100644
index 00000000..e00875e1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/chain-function/package.json
@@ -0,0 +1,51 @@
+{
+ "_from": "chain-function@^1.0.0",
+ "_id": "chain-function@1.0.0",
+ "_inBundle": false,
+ "_integrity": "sha1-DUqzfn4Y6tC9xHuSB2QRjOWHM9w=",
+ "_location": "/react-toastify/chain-function",
+ "_phantomChildren": {},
+ "_requested": {
+ "type": "range",
+ "registry": true,
+ "raw": "chain-function@^1.0.0",
+ "name": "chain-function",
+ "escapedName": "chain-function",
+ "rawSpec": "^1.0.0",
+ "saveSpec": null,
+ "fetchSpec": "^1.0.0"
+ },
+ "_requiredBy": [
+ "/react-toastify/react-transition-group"
+ ],
+ "_resolved": "https://registry.npmjs.org/chain-function/-/chain-function-1.0.0.tgz",
+ "_shasum": "0d4ab37e7e18ead0bdc47b920764118ce58733dc",
+ "_spec": "chain-function@^1.0.0",
+ "_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI\\node_modules\\react-toastify\\node_modules\\react-transition-group",
+ "author": {
+ "name": "jquense"
+ },
+ "bugs": {
+ "url": "https://github.com/jquense/chain-function/issues"
+ },
+ "bundleDependencies": false,
+ "deprecated": false,
+ "description": "chain a bunch of functions together into a single call",
+ "homepage": "https://github.com/jquense/chain-function#readme",
+ "keywords": [
+ "chain",
+ "compose",
+ "function"
+ ],
+ "license": "MIT",
+ "main": "index.js",
+ "name": "chain-function",
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/jquense/chain-function.git"
+ },
+ "scripts": {
+ "test": "node ./test.js"
+ },
+ "version": "1.0.0"
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/chain-function/test.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/chain-function/test.js
new file mode 100644
index 00000000..54852fd2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/chain-function/test.js
@@ -0,0 +1,29 @@
+var assert = require('assert')
+var chain = require('./index')
+
+console.log('testing...')
+
+var count = 0;
+
+chain(
+ function(step){ count += step },
+ function(step){ count += step },
+ function(step){ count += step }
+)(1)
+
+assert.equal(count, 3, 'should chain calls')
+
+count = 0;
+
+chain(
+ function(step){ count += step },
+ null, undefined,
+ function(step){ count += step }
+)(1)
+
+assert.equal(count, 2, 'should filter out null and undefined arguments')
+
+var fn = function(){}
+assert.equal(chain(fn, null), fn, 'should return the only function argument')
+
+console.log('done. tests pass!')
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/classnames/CONTRIBUTING.md b/goTorrentWebUI/node_modules/react-toastify/node_modules/classnames/CONTRIBUTING.md
new file mode 100644
index 00000000..5904061e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/classnames/CONTRIBUTING.md
@@ -0,0 +1,21 @@
+# Contributing
+
+Thanks for your interest in classNames. Issues, PRs and suggestions welcome :)
+
+Before working on a PR, please consider the following:
+
+* Speed is a serious concern for this package as it is likely to be called a
+significant number of times in any project that uses it. As such, new features
+will only be accepted if they improve (or at least do not negatively impact)
+performance.
+* To demonstrate performance differences please set up a
+[JSPerf](http://jsperf.com) test and link to it from your issue / PR.
+* Tests must be added for any change or new feature before it will be accepted.
+
+A benchmark utilitiy is included so that changes may be tested against the
+current published version. To run the benchmarks, `npm install` in the
+`./benchmarks` directory then run `npm run benchmarks` in the package root.
+
+Please be aware though that local benchmarks are just a smoke-signal; they will
+run in the v8 version that your node/iojs uses, while classNames is _most_
+often run across a wide variety of browsers and browser versions.
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/classnames/HISTORY.md b/goTorrentWebUI/node_modules/react-toastify/node_modules/classnames/HISTORY.md
new file mode 100644
index 00000000..492952f1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/classnames/HISTORY.md
@@ -0,0 +1,81 @@
+# Changelog
+
+## v2.2.5 / 2016-05-02
+
+* Improved performance of `dedupe` variant even further, thanks [Andres Suarez](https://github.com/zertosh)
+
+## v2.2.4 / 2016-04-25
+
+* Improved performance of `dedupe` variant by about 2x, thanks [Bartosz Gościński](https://github.com/bgoscinski)
+
+## v2.2.3 / 2016-01-05
+
+* Updated `bind` variant to use `[].join(' ')` as per the main script in 2.2.2
+
+## v2.2.2 / 2016-01-04
+
+* Switched from string concatenation to `[].join(' ')` for a slight performance gain in the main function.
+
+## v2.2.1 / 2015-11-26
+
+* Add deps parameter to the AMD module, fixes an issue using the Dojo loader, thanks [Chris Jordan](https://github.com/flipperkid)
+
+## v2.2.0 / 2015-10-18
+
+* added a new `bind` variant for use with [css-modules](https://github.com/css-modules/css-modules) and similar abstractions, thanks to [Kirill Yakovenko](https://github.com/blia)
+
+## v2.1.5 / 2015-09-30
+
+* reverted a new usage of `Object.keys` in `dedupe.js` that slipped through in the last release
+
+## v2.1.4 / 2015-09-30
+
+* new case added to benchmarks
+* safer `hasOwnProperty` check
+* AMD module is now named, so you can do the following:
+
+```
+define(["classnames"], function (classNames) {
+ var style = classNames("foo", "bar");
+ // ...
+});
+```
+
+## v2.1.3 / 2015-07-02
+
+* updated UMD wrapper to support AMD and CommonJS on the same pacge
+
+## v2.1.2 / 2015-05-28
+
+* added a proper UMD wrapper
+
+## v2.1.1 / 2015-05-06
+
+* minor performance improvement thanks to type caching
+* improved benchmarking and results output
+
+## v2.1.0 / 2015-05-05
+
+* added alternate `dedupe` version of classNames, which is slower (10x) but ensures that if a class is added then overridden by a falsy value in a subsequent argument, it is excluded from the result.
+
+## v2.0.0 / 2015-05-03
+
+* performance improvement; switched to `Array.isArray` for type detection, which is much faster in modern browsers. A polyfill is now required for IE8 support, see the Readme for details.
+
+## v1.2.2 / 2015-04-28
+
+* license comment updates to simiplify certain build scenarios
+
+## v1.2.1 / 2015-04-22
+
+* added safe exporting for requireJS usage
+* clarified Bower usage and instructions
+
+## v1.2.0 / 2015-03-17
+
+* added comprehensive support for array arguments, including nested arrays
+* simplified code slightly
+
+## Previous
+
+Please see the git history for the details of previous versions.
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/classnames/LICENSE b/goTorrentWebUI/node_modules/react-toastify/node_modules/classnames/LICENSE
new file mode 100644
index 00000000..e6620b58
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/classnames/LICENSE
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) 2016 Jed Watson
+
+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/goTorrentWebUI/node_modules/react-toastify/node_modules/classnames/README.md b/goTorrentWebUI/node_modules/react-toastify/node_modules/classnames/README.md
new file mode 100644
index 00000000..265a2ba7
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/classnames/README.md
@@ -0,0 +1,188 @@
+Classnames
+===========
+
+[](https://www.npmjs.org/package/classnames)
+[](https://travis-ci.org/JedWatson/classnames)
+
+A simple javascript utility for conditionally joining classNames together.
+
+Install with npm or Bower.
+
+```sh
+npm install classnames
+```
+
+Use with node.js, browserify or webpack:
+
+```js
+var classNames = require('classnames');
+classNames('foo', 'bar'); // => 'foo bar'
+```
+
+Alternatively, you can simply include `index.js` on your page with a standalone ` i)if(has(O, key = names[i++])){
+ ~arrayIndexOf(result, key) || result.push(key);
+ }
+ return result;
+ };
+ };
+ var Empty = function(){};
+ $export($export.S, 'Object', {
+ // 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
+ getPrototypeOf: $.getProto = $.getProto || function(O){
+ O = toObject(O);
+ if(has(O, IE_PROTO))return O[IE_PROTO];
+ if(typeof O.constructor == 'function' && O instanceof O.constructor){
+ return O.constructor.prototype;
+ } return O instanceof Object ? ObjectProto : null;
+ },
+ // 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
+ getOwnPropertyNames: $.getNames = $.getNames || createGetKeys(keys2, keys2.length, true),
+ // 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
+ create: $.create = $.create || function(O, /*?*/Properties){
+ var result;
+ if(O !== null){
+ Empty.prototype = anObject(O);
+ result = new Empty();
+ Empty.prototype = null;
+ // add "__proto__" for Object.getPrototypeOf shim
+ result[IE_PROTO] = O;
+ } else result = createDict();
+ return Properties === undefined ? result : defineProperties(result, Properties);
+ },
+ // 19.1.2.14 / 15.2.3.14 Object.keys(O)
+ keys: $.getKeys = $.getKeys || createGetKeys(keys1, keysLen1, false)
+ });
+
+ var construct = function(F, len, args){
+ if(!(len in factories)){
+ for(var n = [], i = 0; i < len; i++)n[i] = 'a[' + i + ']';
+ factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')');
+ }
+ return factories[len](F, args);
+ };
+
+ // 19.2.3.2 / 15.3.4.5 Function.prototype.bind(thisArg, args...)
+ $export($export.P, 'Function', {
+ bind: function bind(that /*, args... */){
+ var fn = aFunction(this)
+ , partArgs = arraySlice.call(arguments, 1);
+ var bound = function(/* args... */){
+ var args = partArgs.concat(arraySlice.call(arguments));
+ return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that);
+ };
+ if(isObject(fn.prototype))bound.prototype = fn.prototype;
+ return bound;
+ }
+ });
+
+ // fallback for not array-like ES3 strings and DOM objects
+ $export($export.P + $export.F * fails(function(){
+ if(html)arraySlice.call(html);
+ }), 'Array', {
+ slice: function(begin, end){
+ var len = toLength(this.length)
+ , klass = cof(this);
+ end = end === undefined ? len : end;
+ if(klass == 'Array')return arraySlice.call(this, begin, end);
+ var start = toIndex(begin, len)
+ , upTo = toIndex(end, len)
+ , size = toLength(upTo - start)
+ , cloned = Array(size)
+ , i = 0;
+ for(; i < size; i++)cloned[i] = klass == 'String'
+ ? this.charAt(start + i)
+ : this[start + i];
+ return cloned;
+ }
+ });
+ $export($export.P + $export.F * (IObject != Object), 'Array', {
+ join: function join(separator){
+ return arrayJoin.call(IObject(this), separator === undefined ? ',' : separator);
+ }
+ });
+
+ // 22.1.2.2 / 15.4.3.2 Array.isArray(arg)
+ $export($export.S, 'Array', {isArray: __webpack_require__(30)});
+
+ var createArrayReduce = function(isRight){
+ return function(callbackfn, memo){
+ aFunction(callbackfn);
+ var O = IObject(this)
+ , length = toLength(O.length)
+ , index = isRight ? length - 1 : 0
+ , i = isRight ? -1 : 1;
+ if(arguments.length < 2)for(;;){
+ if(index in O){
+ memo = O[index];
+ index += i;
+ break;
+ }
+ index += i;
+ if(isRight ? index < 0 : length <= index){
+ throw TypeError('Reduce of empty array with no initial value');
+ }
+ }
+ for(;isRight ? index >= 0 : length > index; index += i)if(index in O){
+ memo = callbackfn(memo, O[index], index, this);
+ }
+ return memo;
+ };
+ };
+
+ var methodize = function($fn){
+ return function(arg1/*, arg2 = undefined */){
+ return $fn(this, arg1, arguments[1]);
+ };
+ };
+
+ $export($export.P, 'Array', {
+ // 22.1.3.10 / 15.4.4.18 Array.prototype.forEach(callbackfn [, thisArg])
+ forEach: $.each = $.each || methodize(createArrayMethod(0)),
+ // 22.1.3.15 / 15.4.4.19 Array.prototype.map(callbackfn [, thisArg])
+ map: methodize(createArrayMethod(1)),
+ // 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg])
+ filter: methodize(createArrayMethod(2)),
+ // 22.1.3.23 / 15.4.4.17 Array.prototype.some(callbackfn [, thisArg])
+ some: methodize(createArrayMethod(3)),
+ // 22.1.3.5 / 15.4.4.16 Array.prototype.every(callbackfn [, thisArg])
+ every: methodize(createArrayMethod(4)),
+ // 22.1.3.18 / 15.4.4.21 Array.prototype.reduce(callbackfn [, initialValue])
+ reduce: createArrayReduce(false),
+ // 22.1.3.19 / 15.4.4.22 Array.prototype.reduceRight(callbackfn [, initialValue])
+ reduceRight: createArrayReduce(true),
+ // 22.1.3.11 / 15.4.4.14 Array.prototype.indexOf(searchElement [, fromIndex])
+ indexOf: methodize(arrayIndexOf),
+ // 22.1.3.14 / 15.4.4.15 Array.prototype.lastIndexOf(searchElement [, fromIndex])
+ lastIndexOf: function(el, fromIndex /* = @[*-1] */){
+ var O = toIObject(this)
+ , length = toLength(O.length)
+ , index = length - 1;
+ if(arguments.length > 1)index = Math.min(index, toInteger(fromIndex));
+ if(index < 0)index = toLength(length + index);
+ for(;index >= 0; index--)if(index in O)if(O[index] === el)return index;
+ return -1;
+ }
+ });
+
+ // 20.3.3.1 / 15.9.4.4 Date.now()
+ $export($export.S, 'Date', {now: function(){ return +new Date; }});
+
+ var lz = function(num){
+ return num > 9 ? num : '0' + num;
+ };
+
+ // 20.3.4.36 / 15.9.5.43 Date.prototype.toISOString()
+ // PhantomJS / old WebKit has a broken implementations
+ $export($export.P + $export.F * (fails(function(){
+ return new Date(-5e13 - 1).toISOString() != '0385-07-25T07:06:39.999Z';
+ }) || !fails(function(){
+ new Date(NaN).toISOString();
+ })), 'Date', {
+ toISOString: function toISOString(){
+ if(!isFinite(this))throw RangeError('Invalid time value');
+ var d = this
+ , y = d.getUTCFullYear()
+ , m = d.getUTCMilliseconds()
+ , s = y < 0 ? '-' : y > 9999 ? '+' : '';
+ return s + ('00000' + Math.abs(y)).slice(s ? -6 : -4) +
+ '-' + lz(d.getUTCMonth() + 1) + '-' + lz(d.getUTCDate()) +
+ 'T' + lz(d.getUTCHours()) + ':' + lz(d.getUTCMinutes()) +
+ ':' + lz(d.getUTCSeconds()) + '.' + (m > 99 ? m : '0' + lz(m)) + 'Z';
+ }
+ });
+
+/***/ },
+/* 2 */
+/***/ function(module, exports) {
+
+ var $Object = Object;
+ module.exports = {
+ create: $Object.create,
+ getProto: $Object.getPrototypeOf,
+ isEnum: {}.propertyIsEnumerable,
+ getDesc: $Object.getOwnPropertyDescriptor,
+ setDesc: $Object.defineProperty,
+ setDescs: $Object.defineProperties,
+ getKeys: $Object.keys,
+ getNames: $Object.getOwnPropertyNames,
+ getSymbols: $Object.getOwnPropertySymbols,
+ each: [].forEach
+ };
+
+/***/ },
+/* 3 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var global = __webpack_require__(4)
+ , core = __webpack_require__(5)
+ , hide = __webpack_require__(6)
+ , redefine = __webpack_require__(10)
+ , ctx = __webpack_require__(12)
+ , PROTOTYPE = 'prototype';
+
+ var $export = function(type, name, source){
+ var IS_FORCED = type & $export.F
+ , IS_GLOBAL = type & $export.G
+ , IS_STATIC = type & $export.S
+ , IS_PROTO = type & $export.P
+ , IS_BIND = type & $export.B
+ , target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE]
+ , exports = IS_GLOBAL ? core : core[name] || (core[name] = {})
+ , expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {})
+ , key, own, out, exp;
+ if(IS_GLOBAL)source = name;
+ for(key in source){
+ // contains in native
+ own = !IS_FORCED && target && key in target;
+ // export native or passed
+ out = (own ? target : source)[key];
+ // bind timers to global for call from export context
+ exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
+ // extend global
+ if(target && !own)redefine(target, key, out);
+ // export
+ if(exports[key] != out)hide(exports, key, exp);
+ if(IS_PROTO && expProto[key] != out)expProto[key] = out;
+ }
+ };
+ global.core = core;
+ // type bitmap
+ $export.F = 1; // forced
+ $export.G = 2; // global
+ $export.S = 4; // static
+ $export.P = 8; // proto
+ $export.B = 16; // bind
+ $export.W = 32; // wrap
+ module.exports = $export;
+
+/***/ },
+/* 4 */
+/***/ function(module, exports) {
+
+ // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
+ var global = module.exports = typeof window != 'undefined' && window.Math == Math
+ ? window : typeof self != 'undefined' && self.Math == Math ? self : Function('return this')();
+ if(typeof __g == 'number')__g = global; // eslint-disable-line no-undef
+
+/***/ },
+/* 5 */
+/***/ function(module, exports) {
+
+ var core = module.exports = {version: '1.2.6'};
+ if(typeof __e == 'number')__e = core; // eslint-disable-line no-undef
+
+/***/ },
+/* 6 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $ = __webpack_require__(2)
+ , createDesc = __webpack_require__(7);
+ module.exports = __webpack_require__(8) ? function(object, key, value){
+ return $.setDesc(object, key, createDesc(1, value));
+ } : function(object, key, value){
+ object[key] = value;
+ return object;
+ };
+
+/***/ },
+/* 7 */
+/***/ function(module, exports) {
+
+ module.exports = function(bitmap, value){
+ return {
+ enumerable : !(bitmap & 1),
+ configurable: !(bitmap & 2),
+ writable : !(bitmap & 4),
+ value : value
+ };
+ };
+
+/***/ },
+/* 8 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // Thank's IE8 for his funny defineProperty
+ module.exports = !__webpack_require__(9)(function(){
+ return Object.defineProperty({}, 'a', {get: function(){ return 7; }}).a != 7;
+ });
+
+/***/ },
+/* 9 */
+/***/ function(module, exports) {
+
+ module.exports = function(exec){
+ try {
+ return !!exec();
+ } catch(e){
+ return true;
+ }
+ };
+
+/***/ },
+/* 10 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // add fake Function#toString
+ // for correct work wrapped methods / constructors with methods like LoDash isNative
+ var global = __webpack_require__(4)
+ , hide = __webpack_require__(6)
+ , SRC = __webpack_require__(11)('src')
+ , TO_STRING = 'toString'
+ , $toString = Function[TO_STRING]
+ , TPL = ('' + $toString).split(TO_STRING);
+
+ __webpack_require__(5).inspectSource = function(it){
+ return $toString.call(it);
+ };
+
+ (module.exports = function(O, key, val, safe){
+ if(typeof val == 'function'){
+ val.hasOwnProperty(SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));
+ val.hasOwnProperty('name') || hide(val, 'name', key);
+ }
+ if(O === global){
+ O[key] = val;
+ } else {
+ if(!safe)delete O[key];
+ hide(O, key, val);
+ }
+ })(Function.prototype, TO_STRING, function toString(){
+ return typeof this == 'function' && this[SRC] || $toString.call(this);
+ });
+
+/***/ },
+/* 11 */
+/***/ function(module, exports) {
+
+ var id = 0
+ , px = Math.random();
+ module.exports = function(key){
+ return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
+ };
+
+/***/ },
+/* 12 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // optional / simple context binding
+ var aFunction = __webpack_require__(13);
+ module.exports = function(fn, that, length){
+ aFunction(fn);
+ if(that === undefined)return fn;
+ switch(length){
+ case 1: return function(a){
+ return fn.call(that, a);
+ };
+ case 2: return function(a, b){
+ return fn.call(that, a, b);
+ };
+ case 3: return function(a, b, c){
+ return fn.call(that, a, b, c);
+ };
+ }
+ return function(/* ...args */){
+ return fn.apply(that, arguments);
+ };
+ };
+
+/***/ },
+/* 13 */
+/***/ function(module, exports) {
+
+ module.exports = function(it){
+ if(typeof it != 'function')throw TypeError(it + ' is not a function!');
+ return it;
+ };
+
+/***/ },
+/* 14 */
+/***/ function(module, exports, __webpack_require__) {
+
+ module.exports = __webpack_require__(4).document && document.documentElement;
+
+/***/ },
+/* 15 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var isObject = __webpack_require__(16)
+ , document = __webpack_require__(4).document
+ // in old IE typeof document.createElement is 'object'
+ , is = isObject(document) && isObject(document.createElement);
+ module.exports = function(it){
+ return is ? document.createElement(it) : {};
+ };
+
+/***/ },
+/* 16 */
+/***/ function(module, exports) {
+
+ module.exports = function(it){
+ return typeof it === 'object' ? it !== null : typeof it === 'function';
+ };
+
+/***/ },
+/* 17 */
+/***/ function(module, exports) {
+
+ var hasOwnProperty = {}.hasOwnProperty;
+ module.exports = function(it, key){
+ return hasOwnProperty.call(it, key);
+ };
+
+/***/ },
+/* 18 */
+/***/ function(module, exports) {
+
+ var toString = {}.toString;
+
+ module.exports = function(it){
+ return toString.call(it).slice(8, -1);
+ };
+
+/***/ },
+/* 19 */
+/***/ function(module, exports) {
+
+ // fast apply, http://jsperf.lnkit.com/fast-apply/5
+ module.exports = function(fn, args, that){
+ var un = that === undefined;
+ switch(args.length){
+ case 0: return un ? fn()
+ : fn.call(that);
+ case 1: return un ? fn(args[0])
+ : fn.call(that, args[0]);
+ case 2: return un ? fn(args[0], args[1])
+ : fn.call(that, args[0], args[1]);
+ case 3: return un ? fn(args[0], args[1], args[2])
+ : fn.call(that, args[0], args[1], args[2]);
+ case 4: return un ? fn(args[0], args[1], args[2], args[3])
+ : fn.call(that, args[0], args[1], args[2], args[3]);
+ } return fn.apply(that, args);
+ };
+
+/***/ },
+/* 20 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var isObject = __webpack_require__(16);
+ module.exports = function(it){
+ if(!isObject(it))throw TypeError(it + ' is not an object!');
+ return it;
+ };
+
+/***/ },
+/* 21 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 7.1.13 ToObject(argument)
+ var defined = __webpack_require__(22);
+ module.exports = function(it){
+ return Object(defined(it));
+ };
+
+/***/ },
+/* 22 */
+/***/ function(module, exports) {
+
+ // 7.2.1 RequireObjectCoercible(argument)
+ module.exports = function(it){
+ if(it == undefined)throw TypeError("Can't call method on " + it);
+ return it;
+ };
+
+/***/ },
+/* 23 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // to indexed object, toObject with fallback for non-array-like ES3 strings
+ var IObject = __webpack_require__(24)
+ , defined = __webpack_require__(22);
+ module.exports = function(it){
+ return IObject(defined(it));
+ };
+
+/***/ },
+/* 24 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // fallback for non-array-like ES3 and non-enumerable old V8 strings
+ var cof = __webpack_require__(18);
+ module.exports = Object('z').propertyIsEnumerable(0) ? Object : function(it){
+ return cof(it) == 'String' ? it.split('') : Object(it);
+ };
+
+/***/ },
+/* 25 */
+/***/ function(module, exports) {
+
+ // 7.1.4 ToInteger
+ var ceil = Math.ceil
+ , floor = Math.floor;
+ module.exports = function(it){
+ return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
+ };
+
+/***/ },
+/* 26 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var toInteger = __webpack_require__(25)
+ , max = Math.max
+ , min = Math.min;
+ module.exports = function(index, length){
+ index = toInteger(index);
+ return index < 0 ? max(index + length, 0) : min(index, length);
+ };
+
+/***/ },
+/* 27 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 7.1.15 ToLength
+ var toInteger = __webpack_require__(25)
+ , min = Math.min;
+ module.exports = function(it){
+ return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
+ };
+
+/***/ },
+/* 28 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 0 -> Array#forEach
+ // 1 -> Array#map
+ // 2 -> Array#filter
+ // 3 -> Array#some
+ // 4 -> Array#every
+ // 5 -> Array#find
+ // 6 -> Array#findIndex
+ var ctx = __webpack_require__(12)
+ , IObject = __webpack_require__(24)
+ , toObject = __webpack_require__(21)
+ , toLength = __webpack_require__(27)
+ , asc = __webpack_require__(29);
+ module.exports = function(TYPE){
+ var IS_MAP = TYPE == 1
+ , IS_FILTER = TYPE == 2
+ , IS_SOME = TYPE == 3
+ , IS_EVERY = TYPE == 4
+ , IS_FIND_INDEX = TYPE == 6
+ , NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
+ return function($this, callbackfn, that){
+ var O = toObject($this)
+ , self = IObject(O)
+ , f = ctx(callbackfn, that, 3)
+ , length = toLength(self.length)
+ , index = 0
+ , result = IS_MAP ? asc($this, length) : IS_FILTER ? asc($this, 0) : undefined
+ , val, res;
+ for(;length > index; index++)if(NO_HOLES || index in self){
+ val = self[index];
+ res = f(val, index, O);
+ if(TYPE){
+ if(IS_MAP)result[index] = res; // map
+ else if(res)switch(TYPE){
+ case 3: return true; // some
+ case 5: return val; // find
+ case 6: return index; // findIndex
+ case 2: result.push(val); // filter
+ } else if(IS_EVERY)return false; // every
+ }
+ }
+ return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
+ };
+ };
+
+/***/ },
+/* 29 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 9.4.2.3 ArraySpeciesCreate(originalArray, length)
+ var isObject = __webpack_require__(16)
+ , isArray = __webpack_require__(30)
+ , SPECIES = __webpack_require__(31)('species');
+ module.exports = function(original, length){
+ var C;
+ if(isArray(original)){
+ C = original.constructor;
+ // cross-realm fallback
+ if(typeof C == 'function' && (C === Array || isArray(C.prototype)))C = undefined;
+ if(isObject(C)){
+ C = C[SPECIES];
+ if(C === null)C = undefined;
+ }
+ } return new (C === undefined ? Array : C)(length);
+ };
+
+/***/ },
+/* 30 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 7.2.2 IsArray(argument)
+ var cof = __webpack_require__(18);
+ module.exports = Array.isArray || function(arg){
+ return cof(arg) == 'Array';
+ };
+
+/***/ },
+/* 31 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var store = __webpack_require__(32)('wks')
+ , uid = __webpack_require__(11)
+ , Symbol = __webpack_require__(4).Symbol;
+ module.exports = function(name){
+ return store[name] || (store[name] =
+ Symbol && Symbol[name] || (Symbol || uid)('Symbol.' + name));
+ };
+
+/***/ },
+/* 32 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var global = __webpack_require__(4)
+ , SHARED = '__core-js_shared__'
+ , store = global[SHARED] || (global[SHARED] = {});
+ module.exports = function(key){
+ return store[key] || (store[key] = {});
+ };
+
+/***/ },
+/* 33 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // false -> Array#indexOf
+ // true -> Array#includes
+ var toIObject = __webpack_require__(23)
+ , toLength = __webpack_require__(27)
+ , toIndex = __webpack_require__(26);
+ module.exports = function(IS_INCLUDES){
+ return function($this, el, fromIndex){
+ var O = toIObject($this)
+ , length = toLength(O.length)
+ , index = toIndex(fromIndex, length)
+ , value;
+ // Array#includes uses SameValueZero equality algorithm
+ if(IS_INCLUDES && el != el)while(length > index){
+ value = O[index++];
+ if(value != value)return true;
+ // Array#toIndex ignores holes, Array#includes - not
+ } else for(;length > index; index++)if(IS_INCLUDES || index in O){
+ if(O[index] === el)return IS_INCLUDES || index;
+ } return !IS_INCLUDES && -1;
+ };
+ };
+
+/***/ },
+/* 34 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ // ECMAScript 6 symbols shim
+ var $ = __webpack_require__(2)
+ , global = __webpack_require__(4)
+ , has = __webpack_require__(17)
+ , DESCRIPTORS = __webpack_require__(8)
+ , $export = __webpack_require__(3)
+ , redefine = __webpack_require__(10)
+ , $fails = __webpack_require__(9)
+ , shared = __webpack_require__(32)
+ , setToStringTag = __webpack_require__(35)
+ , uid = __webpack_require__(11)
+ , wks = __webpack_require__(31)
+ , keyOf = __webpack_require__(36)
+ , $names = __webpack_require__(37)
+ , enumKeys = __webpack_require__(38)
+ , isArray = __webpack_require__(30)
+ , anObject = __webpack_require__(20)
+ , toIObject = __webpack_require__(23)
+ , createDesc = __webpack_require__(7)
+ , getDesc = $.getDesc
+ , setDesc = $.setDesc
+ , _create = $.create
+ , getNames = $names.get
+ , $Symbol = global.Symbol
+ , $JSON = global.JSON
+ , _stringify = $JSON && $JSON.stringify
+ , setter = false
+ , HIDDEN = wks('_hidden')
+ , isEnum = $.isEnum
+ , SymbolRegistry = shared('symbol-registry')
+ , AllSymbols = shared('symbols')
+ , useNative = typeof $Symbol == 'function'
+ , ObjectProto = Object.prototype;
+
+ // fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
+ var setSymbolDesc = DESCRIPTORS && $fails(function(){
+ return _create(setDesc({}, 'a', {
+ get: function(){ return setDesc(this, 'a', {value: 7}).a; }
+ })).a != 7;
+ }) ? function(it, key, D){
+ var protoDesc = getDesc(ObjectProto, key);
+ if(protoDesc)delete ObjectProto[key];
+ setDesc(it, key, D);
+ if(protoDesc && it !== ObjectProto)setDesc(ObjectProto, key, protoDesc);
+ } : setDesc;
+
+ var wrap = function(tag){
+ var sym = AllSymbols[tag] = _create($Symbol.prototype);
+ sym._k = tag;
+ DESCRIPTORS && setter && setSymbolDesc(ObjectProto, tag, {
+ configurable: true,
+ set: function(value){
+ if(has(this, HIDDEN) && has(this[HIDDEN], tag))this[HIDDEN][tag] = false;
+ setSymbolDesc(this, tag, createDesc(1, value));
+ }
+ });
+ return sym;
+ };
+
+ var isSymbol = function(it){
+ return typeof it == 'symbol';
+ };
+
+ var $defineProperty = function defineProperty(it, key, D){
+ if(D && has(AllSymbols, key)){
+ if(!D.enumerable){
+ if(!has(it, HIDDEN))setDesc(it, HIDDEN, createDesc(1, {}));
+ it[HIDDEN][key] = true;
+ } else {
+ if(has(it, HIDDEN) && it[HIDDEN][key])it[HIDDEN][key] = false;
+ D = _create(D, {enumerable: createDesc(0, false)});
+ } return setSymbolDesc(it, key, D);
+ } return setDesc(it, key, D);
+ };
+ var $defineProperties = function defineProperties(it, P){
+ anObject(it);
+ var keys = enumKeys(P = toIObject(P))
+ , i = 0
+ , l = keys.length
+ , key;
+ while(l > i)$defineProperty(it, key = keys[i++], P[key]);
+ return it;
+ };
+ var $create = function create(it, P){
+ return P === undefined ? _create(it) : $defineProperties(_create(it), P);
+ };
+ var $propertyIsEnumerable = function propertyIsEnumerable(key){
+ var E = isEnum.call(this, key);
+ return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key]
+ ? E : true;
+ };
+ var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key){
+ var D = getDesc(it = toIObject(it), key);
+ if(D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key]))D.enumerable = true;
+ return D;
+ };
+ var $getOwnPropertyNames = function getOwnPropertyNames(it){
+ var names = getNames(toIObject(it))
+ , result = []
+ , i = 0
+ , key;
+ while(names.length > i)if(!has(AllSymbols, key = names[i++]) && key != HIDDEN)result.push(key);
+ return result;
+ };
+ var $getOwnPropertySymbols = function getOwnPropertySymbols(it){
+ var names = getNames(toIObject(it))
+ , result = []
+ , i = 0
+ , key;
+ while(names.length > i)if(has(AllSymbols, key = names[i++]))result.push(AllSymbols[key]);
+ return result;
+ };
+ var $stringify = function stringify(it){
+ if(it === undefined || isSymbol(it))return; // IE8 returns string on undefined
+ var args = [it]
+ , i = 1
+ , $$ = arguments
+ , replacer, $replacer;
+ while($$.length > i)args.push($$[i++]);
+ replacer = args[1];
+ if(typeof replacer == 'function')$replacer = replacer;
+ if($replacer || !isArray(replacer))replacer = function(key, value){
+ if($replacer)value = $replacer.call(this, key, value);
+ if(!isSymbol(value))return value;
+ };
+ args[1] = replacer;
+ return _stringify.apply($JSON, args);
+ };
+ var buggyJSON = $fails(function(){
+ var S = $Symbol();
+ // MS Edge converts symbol values to JSON as {}
+ // WebKit converts symbol values to JSON as null
+ // V8 throws on boxed symbols
+ return _stringify([S]) != '[null]' || _stringify({a: S}) != '{}' || _stringify(Object(S)) != '{}';
+ });
+
+ // 19.4.1.1 Symbol([description])
+ if(!useNative){
+ $Symbol = function Symbol(){
+ if(isSymbol(this))throw TypeError('Symbol is not a constructor');
+ return wrap(uid(arguments.length > 0 ? arguments[0] : undefined));
+ };
+ redefine($Symbol.prototype, 'toString', function toString(){
+ return this._k;
+ });
+
+ isSymbol = function(it){
+ return it instanceof $Symbol;
+ };
+
+ $.create = $create;
+ $.isEnum = $propertyIsEnumerable;
+ $.getDesc = $getOwnPropertyDescriptor;
+ $.setDesc = $defineProperty;
+ $.setDescs = $defineProperties;
+ $.getNames = $names.get = $getOwnPropertyNames;
+ $.getSymbols = $getOwnPropertySymbols;
+
+ if(DESCRIPTORS && !__webpack_require__(39)){
+ redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
+ }
+ }
+
+ var symbolStatics = {
+ // 19.4.2.1 Symbol.for(key)
+ 'for': function(key){
+ return has(SymbolRegistry, key += '')
+ ? SymbolRegistry[key]
+ : SymbolRegistry[key] = $Symbol(key);
+ },
+ // 19.4.2.5 Symbol.keyFor(sym)
+ keyFor: function keyFor(key){
+ return keyOf(SymbolRegistry, key);
+ },
+ useSetter: function(){ setter = true; },
+ useSimple: function(){ setter = false; }
+ };
+ // 19.4.2.2 Symbol.hasInstance
+ // 19.4.2.3 Symbol.isConcatSpreadable
+ // 19.4.2.4 Symbol.iterator
+ // 19.4.2.6 Symbol.match
+ // 19.4.2.8 Symbol.replace
+ // 19.4.2.9 Symbol.search
+ // 19.4.2.10 Symbol.species
+ // 19.4.2.11 Symbol.split
+ // 19.4.2.12 Symbol.toPrimitive
+ // 19.4.2.13 Symbol.toStringTag
+ // 19.4.2.14 Symbol.unscopables
+ $.each.call((
+ 'hasInstance,isConcatSpreadable,iterator,match,replace,search,' +
+ 'species,split,toPrimitive,toStringTag,unscopables'
+ ).split(','), function(it){
+ var sym = wks(it);
+ symbolStatics[it] = useNative ? sym : wrap(sym);
+ });
+
+ setter = true;
+
+ $export($export.G + $export.W, {Symbol: $Symbol});
+
+ $export($export.S, 'Symbol', symbolStatics);
+
+ $export($export.S + $export.F * !useNative, 'Object', {
+ // 19.1.2.2 Object.create(O [, Properties])
+ create: $create,
+ // 19.1.2.4 Object.defineProperty(O, P, Attributes)
+ defineProperty: $defineProperty,
+ // 19.1.2.3 Object.defineProperties(O, Properties)
+ defineProperties: $defineProperties,
+ // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
+ getOwnPropertyDescriptor: $getOwnPropertyDescriptor,
+ // 19.1.2.7 Object.getOwnPropertyNames(O)
+ getOwnPropertyNames: $getOwnPropertyNames,
+ // 19.1.2.8 Object.getOwnPropertySymbols(O)
+ getOwnPropertySymbols: $getOwnPropertySymbols
+ });
+
+ // 24.3.2 JSON.stringify(value [, replacer [, space]])
+ $JSON && $export($export.S + $export.F * (!useNative || buggyJSON), 'JSON', {stringify: $stringify});
+
+ // 19.4.3.5 Symbol.prototype[@@toStringTag]
+ setToStringTag($Symbol, 'Symbol');
+ // 20.2.1.9 Math[@@toStringTag]
+ setToStringTag(Math, 'Math', true);
+ // 24.3.3 JSON[@@toStringTag]
+ setToStringTag(global.JSON, 'JSON', true);
+
+/***/ },
+/* 35 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var def = __webpack_require__(2).setDesc
+ , has = __webpack_require__(17)
+ , TAG = __webpack_require__(31)('toStringTag');
+
+ module.exports = function(it, tag, stat){
+ if(it && !has(it = stat ? it : it.prototype, TAG))def(it, TAG, {configurable: true, value: tag});
+ };
+
+/***/ },
+/* 36 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $ = __webpack_require__(2)
+ , toIObject = __webpack_require__(23);
+ module.exports = function(object, el){
+ var O = toIObject(object)
+ , keys = $.getKeys(O)
+ , length = keys.length
+ , index = 0
+ , key;
+ while(length > index)if(O[key = keys[index++]] === el)return key;
+ };
+
+/***/ },
+/* 37 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
+ var toIObject = __webpack_require__(23)
+ , getNames = __webpack_require__(2).getNames
+ , toString = {}.toString;
+
+ var windowNames = typeof window == 'object' && Object.getOwnPropertyNames
+ ? Object.getOwnPropertyNames(window) : [];
+
+ var getWindowNames = function(it){
+ try {
+ return getNames(it);
+ } catch(e){
+ return windowNames.slice();
+ }
+ };
+
+ module.exports.get = function getOwnPropertyNames(it){
+ if(windowNames && toString.call(it) == '[object Window]')return getWindowNames(it);
+ return getNames(toIObject(it));
+ };
+
+/***/ },
+/* 38 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // all enumerable object keys, includes symbols
+ var $ = __webpack_require__(2);
+ module.exports = function(it){
+ var keys = $.getKeys(it)
+ , getSymbols = $.getSymbols;
+ if(getSymbols){
+ var symbols = getSymbols(it)
+ , isEnum = $.isEnum
+ , i = 0
+ , key;
+ while(symbols.length > i)if(isEnum.call(it, key = symbols[i++]))keys.push(key);
+ }
+ return keys;
+ };
+
+/***/ },
+/* 39 */
+/***/ function(module, exports) {
+
+ module.exports = false;
+
+/***/ },
+/* 40 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.3.1 Object.assign(target, source)
+ var $export = __webpack_require__(3);
+
+ $export($export.S + $export.F, 'Object', {assign: __webpack_require__(41)});
+
+/***/ },
+/* 41 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.1 Object.assign(target, source, ...)
+ var $ = __webpack_require__(2)
+ , toObject = __webpack_require__(21)
+ , IObject = __webpack_require__(24);
+
+ // should work with symbols and should have deterministic property order (V8 bug)
+ module.exports = __webpack_require__(9)(function(){
+ var a = Object.assign
+ , A = {}
+ , B = {}
+ , S = Symbol()
+ , K = 'abcdefghijklmnopqrst';
+ A[S] = 7;
+ K.split('').forEach(function(k){ B[k] = k; });
+ return a({}, A)[S] != 7 || Object.keys(a({}, B)).join('') != K;
+ }) ? function assign(target, source){ // eslint-disable-line no-unused-vars
+ var T = toObject(target)
+ , $$ = arguments
+ , $$len = $$.length
+ , index = 1
+ , getKeys = $.getKeys
+ , getSymbols = $.getSymbols
+ , isEnum = $.isEnum;
+ while($$len > index){
+ var S = IObject($$[index++])
+ , keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S)
+ , length = keys.length
+ , j = 0
+ , key;
+ while(length > j)if(isEnum.call(S, key = keys[j++]))T[key] = S[key];
+ }
+ return T;
+ } : Object.assign;
+
+/***/ },
+/* 42 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.3.10 Object.is(value1, value2)
+ var $export = __webpack_require__(3);
+ $export($export.S, 'Object', {is: __webpack_require__(43)});
+
+/***/ },
+/* 43 */
+/***/ function(module, exports) {
+
+ // 7.2.9 SameValue(x, y)
+ module.exports = Object.is || function is(x, y){
+ return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;
+ };
+
+/***/ },
+/* 44 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.3.19 Object.setPrototypeOf(O, proto)
+ var $export = __webpack_require__(3);
+ $export($export.S, 'Object', {setPrototypeOf: __webpack_require__(45).set});
+
+/***/ },
+/* 45 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // Works with __proto__ only. Old v8 can't work with null proto objects.
+ /* eslint-disable no-proto */
+ var getDesc = __webpack_require__(2).getDesc
+ , isObject = __webpack_require__(16)
+ , anObject = __webpack_require__(20);
+ var check = function(O, proto){
+ anObject(O);
+ if(!isObject(proto) && proto !== null)throw TypeError(proto + ": can't set as prototype!");
+ };
+ module.exports = {
+ set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
+ function(test, buggy, set){
+ try {
+ set = __webpack_require__(12)(Function.call, getDesc(Object.prototype, '__proto__').set, 2);
+ set(test, []);
+ buggy = !(test instanceof Array);
+ } catch(e){ buggy = true; }
+ return function setPrototypeOf(O, proto){
+ check(O, proto);
+ if(buggy)O.__proto__ = proto;
+ else set(O, proto);
+ return O;
+ };
+ }({}, false) : undefined),
+ check: check
+ };
+
+/***/ },
+/* 46 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ // 19.1.3.6 Object.prototype.toString()
+ var classof = __webpack_require__(47)
+ , test = {};
+ test[__webpack_require__(31)('toStringTag')] = 'z';
+ if(test + '' != '[object z]'){
+ __webpack_require__(10)(Object.prototype, 'toString', function toString(){
+ return '[object ' + classof(this) + ']';
+ }, true);
+ }
+
+/***/ },
+/* 47 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // getting tag from 19.1.3.6 Object.prototype.toString()
+ var cof = __webpack_require__(18)
+ , TAG = __webpack_require__(31)('toStringTag')
+ // ES3 wrong here
+ , ARG = cof(function(){ return arguments; }()) == 'Arguments';
+
+ module.exports = function(it){
+ var O, T, B;
+ return it === undefined ? 'Undefined' : it === null ? 'Null'
+ // @@toStringTag case
+ : typeof (T = (O = Object(it))[TAG]) == 'string' ? T
+ // builtinTag case
+ : ARG ? cof(O)
+ // ES3 arguments fallback
+ : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
+ };
+
+/***/ },
+/* 48 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.5 Object.freeze(O)
+ var isObject = __webpack_require__(16);
+
+ __webpack_require__(49)('freeze', function($freeze){
+ return function freeze(it){
+ return $freeze && isObject(it) ? $freeze(it) : it;
+ };
+ });
+
+/***/ },
+/* 49 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // most Object methods by ES6 should accept primitives
+ var $export = __webpack_require__(3)
+ , core = __webpack_require__(5)
+ , fails = __webpack_require__(9);
+ module.exports = function(KEY, exec){
+ var fn = (core.Object || {})[KEY] || Object[KEY]
+ , exp = {};
+ exp[KEY] = exec(fn);
+ $export($export.S + $export.F * fails(function(){ fn(1); }), 'Object', exp);
+ };
+
+/***/ },
+/* 50 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.17 Object.seal(O)
+ var isObject = __webpack_require__(16);
+
+ __webpack_require__(49)('seal', function($seal){
+ return function seal(it){
+ return $seal && isObject(it) ? $seal(it) : it;
+ };
+ });
+
+/***/ },
+/* 51 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.15 Object.preventExtensions(O)
+ var isObject = __webpack_require__(16);
+
+ __webpack_require__(49)('preventExtensions', function($preventExtensions){
+ return function preventExtensions(it){
+ return $preventExtensions && isObject(it) ? $preventExtensions(it) : it;
+ };
+ });
+
+/***/ },
+/* 52 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.12 Object.isFrozen(O)
+ var isObject = __webpack_require__(16);
+
+ __webpack_require__(49)('isFrozen', function($isFrozen){
+ return function isFrozen(it){
+ return isObject(it) ? $isFrozen ? $isFrozen(it) : false : true;
+ };
+ });
+
+/***/ },
+/* 53 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.13 Object.isSealed(O)
+ var isObject = __webpack_require__(16);
+
+ __webpack_require__(49)('isSealed', function($isSealed){
+ return function isSealed(it){
+ return isObject(it) ? $isSealed ? $isSealed(it) : false : true;
+ };
+ });
+
+/***/ },
+/* 54 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.11 Object.isExtensible(O)
+ var isObject = __webpack_require__(16);
+
+ __webpack_require__(49)('isExtensible', function($isExtensible){
+ return function isExtensible(it){
+ return isObject(it) ? $isExtensible ? $isExtensible(it) : true : false;
+ };
+ });
+
+/***/ },
+/* 55 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
+ var toIObject = __webpack_require__(23);
+
+ __webpack_require__(49)('getOwnPropertyDescriptor', function($getOwnPropertyDescriptor){
+ return function getOwnPropertyDescriptor(it, key){
+ return $getOwnPropertyDescriptor(toIObject(it), key);
+ };
+ });
+
+/***/ },
+/* 56 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.9 Object.getPrototypeOf(O)
+ var toObject = __webpack_require__(21);
+
+ __webpack_require__(49)('getPrototypeOf', function($getPrototypeOf){
+ return function getPrototypeOf(it){
+ return $getPrototypeOf(toObject(it));
+ };
+ });
+
+/***/ },
+/* 57 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.14 Object.keys(O)
+ var toObject = __webpack_require__(21);
+
+ __webpack_require__(49)('keys', function($keys){
+ return function keys(it){
+ return $keys(toObject(it));
+ };
+ });
+
+/***/ },
+/* 58 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.7 Object.getOwnPropertyNames(O)
+ __webpack_require__(49)('getOwnPropertyNames', function(){
+ return __webpack_require__(37).get;
+ });
+
+/***/ },
+/* 59 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var setDesc = __webpack_require__(2).setDesc
+ , createDesc = __webpack_require__(7)
+ , has = __webpack_require__(17)
+ , FProto = Function.prototype
+ , nameRE = /^\s*function ([^ (]*)/
+ , NAME = 'name';
+ // 19.2.4.2 name
+ NAME in FProto || __webpack_require__(8) && setDesc(FProto, NAME, {
+ configurable: true,
+ get: function(){
+ var match = ('' + this).match(nameRE)
+ , name = match ? match[1] : '';
+ has(this, NAME) || setDesc(this, NAME, createDesc(5, name));
+ return name;
+ }
+ });
+
+/***/ },
+/* 60 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $ = __webpack_require__(2)
+ , isObject = __webpack_require__(16)
+ , HAS_INSTANCE = __webpack_require__(31)('hasInstance')
+ , FunctionProto = Function.prototype;
+ // 19.2.3.6 Function.prototype[@@hasInstance](V)
+ if(!(HAS_INSTANCE in FunctionProto))$.setDesc(FunctionProto, HAS_INSTANCE, {value: function(O){
+ if(typeof this != 'function' || !isObject(O))return false;
+ if(!isObject(this.prototype))return O instanceof this;
+ // for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this:
+ while(O = $.getProto(O))if(this.prototype === O)return true;
+ return false;
+ }});
+
+/***/ },
+/* 61 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $ = __webpack_require__(2)
+ , global = __webpack_require__(4)
+ , has = __webpack_require__(17)
+ , cof = __webpack_require__(18)
+ , toPrimitive = __webpack_require__(62)
+ , fails = __webpack_require__(9)
+ , $trim = __webpack_require__(63).trim
+ , NUMBER = 'Number'
+ , $Number = global[NUMBER]
+ , Base = $Number
+ , proto = $Number.prototype
+ // Opera ~12 has broken Object#toString
+ , BROKEN_COF = cof($.create(proto)) == NUMBER
+ , TRIM = 'trim' in String.prototype;
+
+ // 7.1.3 ToNumber(argument)
+ var toNumber = function(argument){
+ var it = toPrimitive(argument, false);
+ if(typeof it == 'string' && it.length > 2){
+ it = TRIM ? it.trim() : $trim(it, 3);
+ var first = it.charCodeAt(0)
+ , third, radix, maxCode;
+ if(first === 43 || first === 45){
+ third = it.charCodeAt(2);
+ if(third === 88 || third === 120)return NaN; // Number('+0x1') should be NaN, old V8 fix
+ } else if(first === 48){
+ switch(it.charCodeAt(1)){
+ case 66 : case 98 : radix = 2; maxCode = 49; break; // fast equal /^0b[01]+$/i
+ case 79 : case 111 : radix = 8; maxCode = 55; break; // fast equal /^0o[0-7]+$/i
+ default : return +it;
+ }
+ for(var digits = it.slice(2), i = 0, l = digits.length, code; i < l; i++){
+ code = digits.charCodeAt(i);
+ // parseInt parses a string to a first unavailable symbol
+ // but ToNumber should return NaN if a string contains unavailable symbols
+ if(code < 48 || code > maxCode)return NaN;
+ } return parseInt(digits, radix);
+ }
+ } return +it;
+ };
+
+ if(!$Number(' 0o1') || !$Number('0b1') || $Number('+0x1')){
+ $Number = function Number(value){
+ var it = arguments.length < 1 ? 0 : value
+ , that = this;
+ return that instanceof $Number
+ // check on 1..constructor(foo) case
+ && (BROKEN_COF ? fails(function(){ proto.valueOf.call(that); }) : cof(that) != NUMBER)
+ ? new Base(toNumber(it)) : toNumber(it);
+ };
+ $.each.call(__webpack_require__(8) ? $.getNames(Base) : (
+ // ES3:
+ 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +
+ // ES6 (in case, if modules with ES6 Number statics required before):
+ 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +
+ 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'
+ ).split(','), function(key){
+ if(has(Base, key) && !has($Number, key)){
+ $.setDesc($Number, key, $.getDesc(Base, key));
+ }
+ });
+ $Number.prototype = proto;
+ proto.constructor = $Number;
+ __webpack_require__(10)(global, NUMBER, $Number);
+ }
+
+/***/ },
+/* 62 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 7.1.1 ToPrimitive(input [, PreferredType])
+ var isObject = __webpack_require__(16);
+ // instead of the ES6 spec version, we didn't implement @@toPrimitive case
+ // and the second argument - flag - preferred type is a string
+ module.exports = function(it, S){
+ if(!isObject(it))return it;
+ var fn, val;
+ if(S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it)))return val;
+ if(typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it)))return val;
+ if(!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it)))return val;
+ throw TypeError("Can't convert object to primitive value");
+ };
+
+/***/ },
+/* 63 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $export = __webpack_require__(3)
+ , defined = __webpack_require__(22)
+ , fails = __webpack_require__(9)
+ , spaces = '\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003' +
+ '\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF'
+ , space = '[' + spaces + ']'
+ , non = '\u200b\u0085'
+ , ltrim = RegExp('^' + space + space + '*')
+ , rtrim = RegExp(space + space + '*$');
+
+ var exporter = function(KEY, exec){
+ var exp = {};
+ exp[KEY] = exec(trim);
+ $export($export.P + $export.F * fails(function(){
+ return !!spaces[KEY]() || non[KEY]() != non;
+ }), 'String', exp);
+ };
+
+ // 1 -> String#trimLeft
+ // 2 -> String#trimRight
+ // 3 -> String#trim
+ var trim = exporter.trim = function(string, TYPE){
+ string = String(defined(string));
+ if(TYPE & 1)string = string.replace(ltrim, '');
+ if(TYPE & 2)string = string.replace(rtrim, '');
+ return string;
+ };
+
+ module.exports = exporter;
+
+/***/ },
+/* 64 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.1 Number.EPSILON
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Number', {EPSILON: Math.pow(2, -52)});
+
+/***/ },
+/* 65 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.2 Number.isFinite(number)
+ var $export = __webpack_require__(3)
+ , _isFinite = __webpack_require__(4).isFinite;
+
+ $export($export.S, 'Number', {
+ isFinite: function isFinite(it){
+ return typeof it == 'number' && _isFinite(it);
+ }
+ });
+
+/***/ },
+/* 66 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.3 Number.isInteger(number)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Number', {isInteger: __webpack_require__(67)});
+
+/***/ },
+/* 67 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.3 Number.isInteger(number)
+ var isObject = __webpack_require__(16)
+ , floor = Math.floor;
+ module.exports = function isInteger(it){
+ return !isObject(it) && isFinite(it) && floor(it) === it;
+ };
+
+/***/ },
+/* 68 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.4 Number.isNaN(number)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Number', {
+ isNaN: function isNaN(number){
+ return number != number;
+ }
+ });
+
+/***/ },
+/* 69 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.5 Number.isSafeInteger(number)
+ var $export = __webpack_require__(3)
+ , isInteger = __webpack_require__(67)
+ , abs = Math.abs;
+
+ $export($export.S, 'Number', {
+ isSafeInteger: function isSafeInteger(number){
+ return isInteger(number) && abs(number) <= 0x1fffffffffffff;
+ }
+ });
+
+/***/ },
+/* 70 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.6 Number.MAX_SAFE_INTEGER
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Number', {MAX_SAFE_INTEGER: 0x1fffffffffffff});
+
+/***/ },
+/* 71 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.10 Number.MIN_SAFE_INTEGER
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Number', {MIN_SAFE_INTEGER: -0x1fffffffffffff});
+
+/***/ },
+/* 72 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.12 Number.parseFloat(string)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Number', {parseFloat: parseFloat});
+
+/***/ },
+/* 73 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.13 Number.parseInt(string, radix)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Number', {parseInt: parseInt});
+
+/***/ },
+/* 74 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.3 Math.acosh(x)
+ var $export = __webpack_require__(3)
+ , log1p = __webpack_require__(75)
+ , sqrt = Math.sqrt
+ , $acosh = Math.acosh;
+
+ // V8 bug https://code.google.com/p/v8/issues/detail?id=3509
+ $export($export.S + $export.F * !($acosh && Math.floor($acosh(Number.MAX_VALUE)) == 710), 'Math', {
+ acosh: function acosh(x){
+ return (x = +x) < 1 ? NaN : x > 94906265.62425156
+ ? Math.log(x) + Math.LN2
+ : log1p(x - 1 + sqrt(x - 1) * sqrt(x + 1));
+ }
+ });
+
+/***/ },
+/* 75 */
+/***/ function(module, exports) {
+
+ // 20.2.2.20 Math.log1p(x)
+ module.exports = Math.log1p || function log1p(x){
+ return (x = +x) > -1e-8 && x < 1e-8 ? x - x * x / 2 : Math.log(1 + x);
+ };
+
+/***/ },
+/* 76 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.5 Math.asinh(x)
+ var $export = __webpack_require__(3);
+
+ function asinh(x){
+ return !isFinite(x = +x) || x == 0 ? x : x < 0 ? -asinh(-x) : Math.log(x + Math.sqrt(x * x + 1));
+ }
+
+ $export($export.S, 'Math', {asinh: asinh});
+
+/***/ },
+/* 77 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.7 Math.atanh(x)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Math', {
+ atanh: function atanh(x){
+ return (x = +x) == 0 ? x : Math.log((1 + x) / (1 - x)) / 2;
+ }
+ });
+
+/***/ },
+/* 78 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.9 Math.cbrt(x)
+ var $export = __webpack_require__(3)
+ , sign = __webpack_require__(79);
+
+ $export($export.S, 'Math', {
+ cbrt: function cbrt(x){
+ return sign(x = +x) * Math.pow(Math.abs(x), 1 / 3);
+ }
+ });
+
+/***/ },
+/* 79 */
+/***/ function(module, exports) {
+
+ // 20.2.2.28 Math.sign(x)
+ module.exports = Math.sign || function sign(x){
+ return (x = +x) == 0 || x != x ? x : x < 0 ? -1 : 1;
+ };
+
+/***/ },
+/* 80 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.11 Math.clz32(x)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Math', {
+ clz32: function clz32(x){
+ return (x >>>= 0) ? 31 - Math.floor(Math.log(x + 0.5) * Math.LOG2E) : 32;
+ }
+ });
+
+/***/ },
+/* 81 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.12 Math.cosh(x)
+ var $export = __webpack_require__(3)
+ , exp = Math.exp;
+
+ $export($export.S, 'Math', {
+ cosh: function cosh(x){
+ return (exp(x = +x) + exp(-x)) / 2;
+ }
+ });
+
+/***/ },
+/* 82 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.14 Math.expm1(x)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Math', {expm1: __webpack_require__(83)});
+
+/***/ },
+/* 83 */
+/***/ function(module, exports) {
+
+ // 20.2.2.14 Math.expm1(x)
+ module.exports = Math.expm1 || function expm1(x){
+ return (x = +x) == 0 ? x : x > -1e-6 && x < 1e-6 ? x + x * x / 2 : Math.exp(x) - 1;
+ };
+
+/***/ },
+/* 84 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.16 Math.fround(x)
+ var $export = __webpack_require__(3)
+ , sign = __webpack_require__(79)
+ , pow = Math.pow
+ , EPSILON = pow(2, -52)
+ , EPSILON32 = pow(2, -23)
+ , MAX32 = pow(2, 127) * (2 - EPSILON32)
+ , MIN32 = pow(2, -126);
+
+ var roundTiesToEven = function(n){
+ return n + 1 / EPSILON - 1 / EPSILON;
+ };
+
+
+ $export($export.S, 'Math', {
+ fround: function fround(x){
+ var $abs = Math.abs(x)
+ , $sign = sign(x)
+ , a, result;
+ if($abs < MIN32)return $sign * roundTiesToEven($abs / MIN32 / EPSILON32) * MIN32 * EPSILON32;
+ a = (1 + EPSILON32 / EPSILON) * $abs;
+ result = a - (a - $abs);
+ if(result > MAX32 || result != result)return $sign * Infinity;
+ return $sign * result;
+ }
+ });
+
+/***/ },
+/* 85 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.17 Math.hypot([value1[, value2[, … ]]])
+ var $export = __webpack_require__(3)
+ , abs = Math.abs;
+
+ $export($export.S, 'Math', {
+ hypot: function hypot(value1, value2){ // eslint-disable-line no-unused-vars
+ var sum = 0
+ , i = 0
+ , $$ = arguments
+ , $$len = $$.length
+ , larg = 0
+ , arg, div;
+ while(i < $$len){
+ arg = abs($$[i++]);
+ if(larg < arg){
+ div = larg / arg;
+ sum = sum * div * div + 1;
+ larg = arg;
+ } else if(arg > 0){
+ div = arg / larg;
+ sum += div * div;
+ } else sum += arg;
+ }
+ return larg === Infinity ? Infinity : larg * Math.sqrt(sum);
+ }
+ });
+
+/***/ },
+/* 86 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.18 Math.imul(x, y)
+ var $export = __webpack_require__(3)
+ , $imul = Math.imul;
+
+ // some WebKit versions fails with big numbers, some has wrong arity
+ $export($export.S + $export.F * __webpack_require__(9)(function(){
+ return $imul(0xffffffff, 5) != -5 || $imul.length != 2;
+ }), 'Math', {
+ imul: function imul(x, y){
+ var UINT16 = 0xffff
+ , xn = +x
+ , yn = +y
+ , xl = UINT16 & xn
+ , yl = UINT16 & yn;
+ return 0 | xl * yl + ((UINT16 & xn >>> 16) * yl + xl * (UINT16 & yn >>> 16) << 16 >>> 0);
+ }
+ });
+
+/***/ },
+/* 87 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.21 Math.log10(x)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Math', {
+ log10: function log10(x){
+ return Math.log(x) / Math.LN10;
+ }
+ });
+
+/***/ },
+/* 88 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.20 Math.log1p(x)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Math', {log1p: __webpack_require__(75)});
+
+/***/ },
+/* 89 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.22 Math.log2(x)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Math', {
+ log2: function log2(x){
+ return Math.log(x) / Math.LN2;
+ }
+ });
+
+/***/ },
+/* 90 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.28 Math.sign(x)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Math', {sign: __webpack_require__(79)});
+
+/***/ },
+/* 91 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.30 Math.sinh(x)
+ var $export = __webpack_require__(3)
+ , expm1 = __webpack_require__(83)
+ , exp = Math.exp;
+
+ // V8 near Chromium 38 has a problem with very small numbers
+ $export($export.S + $export.F * __webpack_require__(9)(function(){
+ return !Math.sinh(-2e-17) != -2e-17;
+ }), 'Math', {
+ sinh: function sinh(x){
+ return Math.abs(x = +x) < 1
+ ? (expm1(x) - expm1(-x)) / 2
+ : (exp(x - 1) - exp(-x - 1)) * (Math.E / 2);
+ }
+ });
+
+/***/ },
+/* 92 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.33 Math.tanh(x)
+ var $export = __webpack_require__(3)
+ , expm1 = __webpack_require__(83)
+ , exp = Math.exp;
+
+ $export($export.S, 'Math', {
+ tanh: function tanh(x){
+ var a = expm1(x = +x)
+ , b = expm1(-x);
+ return a == Infinity ? 1 : b == Infinity ? -1 : (a - b) / (exp(x) + exp(-x));
+ }
+ });
+
+/***/ },
+/* 93 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.34 Math.trunc(x)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Math', {
+ trunc: function trunc(it){
+ return (it > 0 ? Math.floor : Math.ceil)(it);
+ }
+ });
+
+/***/ },
+/* 94 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $export = __webpack_require__(3)
+ , toIndex = __webpack_require__(26)
+ , fromCharCode = String.fromCharCode
+ , $fromCodePoint = String.fromCodePoint;
+
+ // length should be 1, old FF problem
+ $export($export.S + $export.F * (!!$fromCodePoint && $fromCodePoint.length != 1), 'String', {
+ // 21.1.2.2 String.fromCodePoint(...codePoints)
+ fromCodePoint: function fromCodePoint(x){ // eslint-disable-line no-unused-vars
+ var res = []
+ , $$ = arguments
+ , $$len = $$.length
+ , i = 0
+ , code;
+ while($$len > i){
+ code = +$$[i++];
+ if(toIndex(code, 0x10ffff) !== code)throw RangeError(code + ' is not a valid code point');
+ res.push(code < 0x10000
+ ? fromCharCode(code)
+ : fromCharCode(((code -= 0x10000) >> 10) + 0xd800, code % 0x400 + 0xdc00)
+ );
+ } return res.join('');
+ }
+ });
+
+/***/ },
+/* 95 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $export = __webpack_require__(3)
+ , toIObject = __webpack_require__(23)
+ , toLength = __webpack_require__(27);
+
+ $export($export.S, 'String', {
+ // 21.1.2.4 String.raw(callSite, ...substitutions)
+ raw: function raw(callSite){
+ var tpl = toIObject(callSite.raw)
+ , len = toLength(tpl.length)
+ , $$ = arguments
+ , $$len = $$.length
+ , res = []
+ , i = 0;
+ while(len > i){
+ res.push(String(tpl[i++]));
+ if(i < $$len)res.push(String($$[i]));
+ } return res.join('');
+ }
+ });
+
+/***/ },
+/* 96 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ // 21.1.3.25 String.prototype.trim()
+ __webpack_require__(63)('trim', function($trim){
+ return function trim(){
+ return $trim(this, 3);
+ };
+ });
+
+/***/ },
+/* 97 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $export = __webpack_require__(3)
+ , $at = __webpack_require__(98)(false);
+ $export($export.P, 'String', {
+ // 21.1.3.3 String.prototype.codePointAt(pos)
+ codePointAt: function codePointAt(pos){
+ return $at(this, pos);
+ }
+ });
+
+/***/ },
+/* 98 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var toInteger = __webpack_require__(25)
+ , defined = __webpack_require__(22);
+ // true -> String#at
+ // false -> String#codePointAt
+ module.exports = function(TO_STRING){
+ return function(that, pos){
+ var s = String(defined(that))
+ , i = toInteger(pos)
+ , l = s.length
+ , a, b;
+ if(i < 0 || i >= l)return TO_STRING ? '' : undefined;
+ a = s.charCodeAt(i);
+ return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
+ ? TO_STRING ? s.charAt(i) : a
+ : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
+ };
+ };
+
+/***/ },
+/* 99 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 21.1.3.6 String.prototype.endsWith(searchString [, endPosition])
+ 'use strict';
+ var $export = __webpack_require__(3)
+ , toLength = __webpack_require__(27)
+ , context = __webpack_require__(100)
+ , ENDS_WITH = 'endsWith'
+ , $endsWith = ''[ENDS_WITH];
+
+ $export($export.P + $export.F * __webpack_require__(102)(ENDS_WITH), 'String', {
+ endsWith: function endsWith(searchString /*, endPosition = @length */){
+ var that = context(this, searchString, ENDS_WITH)
+ , $$ = arguments
+ , endPosition = $$.length > 1 ? $$[1] : undefined
+ , len = toLength(that.length)
+ , end = endPosition === undefined ? len : Math.min(toLength(endPosition), len)
+ , search = String(searchString);
+ return $endsWith
+ ? $endsWith.call(that, search, end)
+ : that.slice(end - search.length, end) === search;
+ }
+ });
+
+/***/ },
+/* 100 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // helper for String#{startsWith, endsWith, includes}
+ var isRegExp = __webpack_require__(101)
+ , defined = __webpack_require__(22);
+
+ module.exports = function(that, searchString, NAME){
+ if(isRegExp(searchString))throw TypeError('String#' + NAME + " doesn't accept regex!");
+ return String(defined(that));
+ };
+
+/***/ },
+/* 101 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 7.2.8 IsRegExp(argument)
+ var isObject = __webpack_require__(16)
+ , cof = __webpack_require__(18)
+ , MATCH = __webpack_require__(31)('match');
+ module.exports = function(it){
+ var isRegExp;
+ return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');
+ };
+
+/***/ },
+/* 102 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var MATCH = __webpack_require__(31)('match');
+ module.exports = function(KEY){
+ var re = /./;
+ try {
+ '/./'[KEY](re);
+ } catch(e){
+ try {
+ re[MATCH] = false;
+ return !'/./'[KEY](re);
+ } catch(f){ /* empty */ }
+ } return true;
+ };
+
+/***/ },
+/* 103 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 21.1.3.7 String.prototype.includes(searchString, position = 0)
+ 'use strict';
+ var $export = __webpack_require__(3)
+ , context = __webpack_require__(100)
+ , INCLUDES = 'includes';
+
+ $export($export.P + $export.F * __webpack_require__(102)(INCLUDES), 'String', {
+ includes: function includes(searchString /*, position = 0 */){
+ return !!~context(this, searchString, INCLUDES)
+ .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);
+ }
+ });
+
+/***/ },
+/* 104 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $export = __webpack_require__(3);
+
+ $export($export.P, 'String', {
+ // 21.1.3.13 String.prototype.repeat(count)
+ repeat: __webpack_require__(105)
+ });
+
+/***/ },
+/* 105 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var toInteger = __webpack_require__(25)
+ , defined = __webpack_require__(22);
+
+ module.exports = function repeat(count){
+ var str = String(defined(this))
+ , res = ''
+ , n = toInteger(count);
+ if(n < 0 || n == Infinity)throw RangeError("Count can't be negative");
+ for(;n > 0; (n >>>= 1) && (str += str))if(n & 1)res += str;
+ return res;
+ };
+
+/***/ },
+/* 106 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 21.1.3.18 String.prototype.startsWith(searchString [, position ])
+ 'use strict';
+ var $export = __webpack_require__(3)
+ , toLength = __webpack_require__(27)
+ , context = __webpack_require__(100)
+ , STARTS_WITH = 'startsWith'
+ , $startsWith = ''[STARTS_WITH];
+
+ $export($export.P + $export.F * __webpack_require__(102)(STARTS_WITH), 'String', {
+ startsWith: function startsWith(searchString /*, position = 0 */){
+ var that = context(this, searchString, STARTS_WITH)
+ , $$ = arguments
+ , index = toLength(Math.min($$.length > 1 ? $$[1] : undefined, that.length))
+ , search = String(searchString);
+ return $startsWith
+ ? $startsWith.call(that, search, index)
+ : that.slice(index, index + search.length) === search;
+ }
+ });
+
+/***/ },
+/* 107 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $at = __webpack_require__(98)(true);
+
+ // 21.1.3.27 String.prototype[@@iterator]()
+ __webpack_require__(108)(String, 'String', function(iterated){
+ this._t = String(iterated); // target
+ this._i = 0; // next index
+ // 21.1.5.2.1 %StringIteratorPrototype%.next()
+ }, function(){
+ var O = this._t
+ , index = this._i
+ , point;
+ if(index >= O.length)return {value: undefined, done: true};
+ point = $at(O, index);
+ this._i += point.length;
+ return {value: point, done: false};
+ });
+
+/***/ },
+/* 108 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var LIBRARY = __webpack_require__(39)
+ , $export = __webpack_require__(3)
+ , redefine = __webpack_require__(10)
+ , hide = __webpack_require__(6)
+ , has = __webpack_require__(17)
+ , Iterators = __webpack_require__(109)
+ , $iterCreate = __webpack_require__(110)
+ , setToStringTag = __webpack_require__(35)
+ , getProto = __webpack_require__(2).getProto
+ , ITERATOR = __webpack_require__(31)('iterator')
+ , BUGGY = !([].keys && 'next' in [].keys()) // Safari has buggy iterators w/o `next`
+ , FF_ITERATOR = '@@iterator'
+ , KEYS = 'keys'
+ , VALUES = 'values';
+
+ var returnThis = function(){ return this; };
+
+ module.exports = function(Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED){
+ $iterCreate(Constructor, NAME, next);
+ var getMethod = function(kind){
+ if(!BUGGY && kind in proto)return proto[kind];
+ switch(kind){
+ case KEYS: return function keys(){ return new Constructor(this, kind); };
+ case VALUES: return function values(){ return new Constructor(this, kind); };
+ } return function entries(){ return new Constructor(this, kind); };
+ };
+ var TAG = NAME + ' Iterator'
+ , DEF_VALUES = DEFAULT == VALUES
+ , VALUES_BUG = false
+ , proto = Base.prototype
+ , $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT]
+ , $default = $native || getMethod(DEFAULT)
+ , methods, key;
+ // Fix native
+ if($native){
+ var IteratorPrototype = getProto($default.call(new Base));
+ // Set @@toStringTag to native iterators
+ setToStringTag(IteratorPrototype, TAG, true);
+ // FF fix
+ if(!LIBRARY && has(proto, FF_ITERATOR))hide(IteratorPrototype, ITERATOR, returnThis);
+ // fix Array#{values, @@iterator}.name in V8 / FF
+ if(DEF_VALUES && $native.name !== VALUES){
+ VALUES_BUG = true;
+ $default = function values(){ return $native.call(this); };
+ }
+ }
+ // Define iterator
+ if((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])){
+ hide(proto, ITERATOR, $default);
+ }
+ // Plug for library
+ Iterators[NAME] = $default;
+ Iterators[TAG] = returnThis;
+ if(DEFAULT){
+ methods = {
+ values: DEF_VALUES ? $default : getMethod(VALUES),
+ keys: IS_SET ? $default : getMethod(KEYS),
+ entries: !DEF_VALUES ? $default : getMethod('entries')
+ };
+ if(FORCED)for(key in methods){
+ if(!(key in proto))redefine(proto, key, methods[key]);
+ } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
+ }
+ return methods;
+ };
+
+/***/ },
+/* 109 */
+/***/ function(module, exports) {
+
+ module.exports = {};
+
+/***/ },
+/* 110 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $ = __webpack_require__(2)
+ , descriptor = __webpack_require__(7)
+ , setToStringTag = __webpack_require__(35)
+ , IteratorPrototype = {};
+
+ // 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
+ __webpack_require__(6)(IteratorPrototype, __webpack_require__(31)('iterator'), function(){ return this; });
+
+ module.exports = function(Constructor, NAME, next){
+ Constructor.prototype = $.create(IteratorPrototype, {next: descriptor(1, next)});
+ setToStringTag(Constructor, NAME + ' Iterator');
+ };
+
+/***/ },
+/* 111 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var ctx = __webpack_require__(12)
+ , $export = __webpack_require__(3)
+ , toObject = __webpack_require__(21)
+ , call = __webpack_require__(112)
+ , isArrayIter = __webpack_require__(113)
+ , toLength = __webpack_require__(27)
+ , getIterFn = __webpack_require__(114);
+ $export($export.S + $export.F * !__webpack_require__(115)(function(iter){ Array.from(iter); }), 'Array', {
+ // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)
+ from: function from(arrayLike/*, mapfn = undefined, thisArg = undefined*/){
+ var O = toObject(arrayLike)
+ , C = typeof this == 'function' ? this : Array
+ , $$ = arguments
+ , $$len = $$.length
+ , mapfn = $$len > 1 ? $$[1] : undefined
+ , mapping = mapfn !== undefined
+ , index = 0
+ , iterFn = getIterFn(O)
+ , length, result, step, iterator;
+ if(mapping)mapfn = ctx(mapfn, $$len > 2 ? $$[2] : undefined, 2);
+ // if object isn't iterable or it's array with default iterator - use simple case
+ if(iterFn != undefined && !(C == Array && isArrayIter(iterFn))){
+ for(iterator = iterFn.call(O), result = new C; !(step = iterator.next()).done; index++){
+ result[index] = mapping ? call(iterator, mapfn, [step.value, index], true) : step.value;
+ }
+ } else {
+ length = toLength(O.length);
+ for(result = new C(length); length > index; index++){
+ result[index] = mapping ? mapfn(O[index], index) : O[index];
+ }
+ }
+ result.length = index;
+ return result;
+ }
+ });
+
+
+/***/ },
+/* 112 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // call something on iterator step with safe closing on error
+ var anObject = __webpack_require__(20);
+ module.exports = function(iterator, fn, value, entries){
+ try {
+ return entries ? fn(anObject(value)[0], value[1]) : fn(value);
+ // 7.4.6 IteratorClose(iterator, completion)
+ } catch(e){
+ var ret = iterator['return'];
+ if(ret !== undefined)anObject(ret.call(iterator));
+ throw e;
+ }
+ };
+
+/***/ },
+/* 113 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // check on default Array iterator
+ var Iterators = __webpack_require__(109)
+ , ITERATOR = __webpack_require__(31)('iterator')
+ , ArrayProto = Array.prototype;
+
+ module.exports = function(it){
+ return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);
+ };
+
+/***/ },
+/* 114 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var classof = __webpack_require__(47)
+ , ITERATOR = __webpack_require__(31)('iterator')
+ , Iterators = __webpack_require__(109);
+ module.exports = __webpack_require__(5).getIteratorMethod = function(it){
+ if(it != undefined)return it[ITERATOR]
+ || it['@@iterator']
+ || Iterators[classof(it)];
+ };
+
+/***/ },
+/* 115 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var ITERATOR = __webpack_require__(31)('iterator')
+ , SAFE_CLOSING = false;
+
+ try {
+ var riter = [7][ITERATOR]();
+ riter['return'] = function(){ SAFE_CLOSING = true; };
+ Array.from(riter, function(){ throw 2; });
+ } catch(e){ /* empty */ }
+
+ module.exports = function(exec, skipClosing){
+ if(!skipClosing && !SAFE_CLOSING)return false;
+ var safe = false;
+ try {
+ var arr = [7]
+ , iter = arr[ITERATOR]();
+ iter.next = function(){ return {done: safe = true}; };
+ arr[ITERATOR] = function(){ return iter; };
+ exec(arr);
+ } catch(e){ /* empty */ }
+ return safe;
+ };
+
+/***/ },
+/* 116 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $export = __webpack_require__(3);
+
+ // WebKit Array.of isn't generic
+ $export($export.S + $export.F * __webpack_require__(9)(function(){
+ function F(){}
+ return !(Array.of.call(F) instanceof F);
+ }), 'Array', {
+ // 22.1.2.3 Array.of( ...items)
+ of: function of(/* ...args */){
+ var index = 0
+ , $$ = arguments
+ , $$len = $$.length
+ , result = new (typeof this == 'function' ? this : Array)($$len);
+ while($$len > index)result[index] = $$[index++];
+ result.length = $$len;
+ return result;
+ }
+ });
+
+/***/ },
+/* 117 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var addToUnscopables = __webpack_require__(118)
+ , step = __webpack_require__(119)
+ , Iterators = __webpack_require__(109)
+ , toIObject = __webpack_require__(23);
+
+ // 22.1.3.4 Array.prototype.entries()
+ // 22.1.3.13 Array.prototype.keys()
+ // 22.1.3.29 Array.prototype.values()
+ // 22.1.3.30 Array.prototype[@@iterator]()
+ module.exports = __webpack_require__(108)(Array, 'Array', function(iterated, kind){
+ this._t = toIObject(iterated); // target
+ this._i = 0; // next index
+ this._k = kind; // kind
+ // 22.1.5.2.1 %ArrayIteratorPrototype%.next()
+ }, function(){
+ var O = this._t
+ , kind = this._k
+ , index = this._i++;
+ if(!O || index >= O.length){
+ this._t = undefined;
+ return step(1);
+ }
+ if(kind == 'keys' )return step(0, index);
+ if(kind == 'values')return step(0, O[index]);
+ return step(0, [index, O[index]]);
+ }, 'values');
+
+ // argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
+ Iterators.Arguments = Iterators.Array;
+
+ addToUnscopables('keys');
+ addToUnscopables('values');
+ addToUnscopables('entries');
+
+/***/ },
+/* 118 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 22.1.3.31 Array.prototype[@@unscopables]
+ var UNSCOPABLES = __webpack_require__(31)('unscopables')
+ , ArrayProto = Array.prototype;
+ if(ArrayProto[UNSCOPABLES] == undefined)__webpack_require__(6)(ArrayProto, UNSCOPABLES, {});
+ module.exports = function(key){
+ ArrayProto[UNSCOPABLES][key] = true;
+ };
+
+/***/ },
+/* 119 */
+/***/ function(module, exports) {
+
+ module.exports = function(done, value){
+ return {value: value, done: !!done};
+ };
+
+/***/ },
+/* 120 */
+/***/ function(module, exports, __webpack_require__) {
+
+ __webpack_require__(121)('Array');
+
+/***/ },
+/* 121 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var global = __webpack_require__(4)
+ , $ = __webpack_require__(2)
+ , DESCRIPTORS = __webpack_require__(8)
+ , SPECIES = __webpack_require__(31)('species');
+
+ module.exports = function(KEY){
+ var C = global[KEY];
+ if(DESCRIPTORS && C && !C[SPECIES])$.setDesc(C, SPECIES, {
+ configurable: true,
+ get: function(){ return this; }
+ });
+ };
+
+/***/ },
+/* 122 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length)
+ var $export = __webpack_require__(3);
+
+ $export($export.P, 'Array', {copyWithin: __webpack_require__(123)});
+
+ __webpack_require__(118)('copyWithin');
+
+/***/ },
+/* 123 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length)
+ 'use strict';
+ var toObject = __webpack_require__(21)
+ , toIndex = __webpack_require__(26)
+ , toLength = __webpack_require__(27);
+
+ module.exports = [].copyWithin || function copyWithin(target/*= 0*/, start/*= 0, end = @length*/){
+ var O = toObject(this)
+ , len = toLength(O.length)
+ , to = toIndex(target, len)
+ , from = toIndex(start, len)
+ , $$ = arguments
+ , end = $$.length > 2 ? $$[2] : undefined
+ , count = Math.min((end === undefined ? len : toIndex(end, len)) - from, len - to)
+ , inc = 1;
+ if(from < to && to < from + count){
+ inc = -1;
+ from += count - 1;
+ to += count - 1;
+ }
+ while(count-- > 0){
+ if(from in O)O[to] = O[from];
+ else delete O[to];
+ to += inc;
+ from += inc;
+ } return O;
+ };
+
+/***/ },
+/* 124 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)
+ var $export = __webpack_require__(3);
+
+ $export($export.P, 'Array', {fill: __webpack_require__(125)});
+
+ __webpack_require__(118)('fill');
+
+/***/ },
+/* 125 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)
+ 'use strict';
+ var toObject = __webpack_require__(21)
+ , toIndex = __webpack_require__(26)
+ , toLength = __webpack_require__(27);
+ module.exports = [].fill || function fill(value /*, start = 0, end = @length */){
+ var O = toObject(this)
+ , length = toLength(O.length)
+ , $$ = arguments
+ , $$len = $$.length
+ , index = toIndex($$len > 1 ? $$[1] : undefined, length)
+ , end = $$len > 2 ? $$[2] : undefined
+ , endPos = end === undefined ? length : toIndex(end, length);
+ while(endPos > index)O[index++] = value;
+ return O;
+ };
+
+/***/ },
+/* 126 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ // 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined)
+ var $export = __webpack_require__(3)
+ , $find = __webpack_require__(28)(5)
+ , KEY = 'find'
+ , forced = true;
+ // Shouldn't skip holes
+ if(KEY in [])Array(1)[KEY](function(){ forced = false; });
+ $export($export.P + $export.F * forced, 'Array', {
+ find: function find(callbackfn/*, that = undefined */){
+ return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+ }
+ });
+ __webpack_require__(118)(KEY);
+
+/***/ },
+/* 127 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ // 22.1.3.9 Array.prototype.findIndex(predicate, thisArg = undefined)
+ var $export = __webpack_require__(3)
+ , $find = __webpack_require__(28)(6)
+ , KEY = 'findIndex'
+ , forced = true;
+ // Shouldn't skip holes
+ if(KEY in [])Array(1)[KEY](function(){ forced = false; });
+ $export($export.P + $export.F * forced, 'Array', {
+ findIndex: function findIndex(callbackfn/*, that = undefined */){
+ return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+ }
+ });
+ __webpack_require__(118)(KEY);
+
+/***/ },
+/* 128 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $ = __webpack_require__(2)
+ , global = __webpack_require__(4)
+ , isRegExp = __webpack_require__(101)
+ , $flags = __webpack_require__(129)
+ , $RegExp = global.RegExp
+ , Base = $RegExp
+ , proto = $RegExp.prototype
+ , re1 = /a/g
+ , re2 = /a/g
+ // "new" creates a new object, old webkit buggy here
+ , CORRECT_NEW = new $RegExp(re1) !== re1;
+
+ if(__webpack_require__(8) && (!CORRECT_NEW || __webpack_require__(9)(function(){
+ re2[__webpack_require__(31)('match')] = false;
+ // RegExp constructor can alter flags and IsRegExp works correct with @@match
+ return $RegExp(re1) != re1 || $RegExp(re2) == re2 || $RegExp(re1, 'i') != '/a/i';
+ }))){
+ $RegExp = function RegExp(p, f){
+ var piRE = isRegExp(p)
+ , fiU = f === undefined;
+ return !(this instanceof $RegExp) && piRE && p.constructor === $RegExp && fiU ? p
+ : CORRECT_NEW
+ ? new Base(piRE && !fiU ? p.source : p, f)
+ : Base((piRE = p instanceof $RegExp) ? p.source : p, piRE && fiU ? $flags.call(p) : f);
+ };
+ $.each.call($.getNames(Base), function(key){
+ key in $RegExp || $.setDesc($RegExp, key, {
+ configurable: true,
+ get: function(){ return Base[key]; },
+ set: function(it){ Base[key] = it; }
+ });
+ });
+ proto.constructor = $RegExp;
+ $RegExp.prototype = proto;
+ __webpack_require__(10)(global, 'RegExp', $RegExp);
+ }
+
+ __webpack_require__(121)('RegExp');
+
+/***/ },
+/* 129 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ // 21.2.5.3 get RegExp.prototype.flags
+ var anObject = __webpack_require__(20);
+ module.exports = function(){
+ var that = anObject(this)
+ , result = '';
+ if(that.global) result += 'g';
+ if(that.ignoreCase) result += 'i';
+ if(that.multiline) result += 'm';
+ if(that.unicode) result += 'u';
+ if(that.sticky) result += 'y';
+ return result;
+ };
+
+/***/ },
+/* 130 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 21.2.5.3 get RegExp.prototype.flags()
+ var $ = __webpack_require__(2);
+ if(__webpack_require__(8) && /./g.flags != 'g')$.setDesc(RegExp.prototype, 'flags', {
+ configurable: true,
+ get: __webpack_require__(129)
+ });
+
+/***/ },
+/* 131 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // @@match logic
+ __webpack_require__(132)('match', 1, function(defined, MATCH){
+ // 21.1.3.11 String.prototype.match(regexp)
+ return function match(regexp){
+ 'use strict';
+ var O = defined(this)
+ , fn = regexp == undefined ? undefined : regexp[MATCH];
+ return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));
+ };
+ });
+
+/***/ },
+/* 132 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var hide = __webpack_require__(6)
+ , redefine = __webpack_require__(10)
+ , fails = __webpack_require__(9)
+ , defined = __webpack_require__(22)
+ , wks = __webpack_require__(31);
+
+ module.exports = function(KEY, length, exec){
+ var SYMBOL = wks(KEY)
+ , original = ''[KEY];
+ if(fails(function(){
+ var O = {};
+ O[SYMBOL] = function(){ return 7; };
+ return ''[KEY](O) != 7;
+ })){
+ redefine(String.prototype, KEY, exec(defined, SYMBOL, original));
+ hide(RegExp.prototype, SYMBOL, length == 2
+ // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)
+ // 21.2.5.11 RegExp.prototype[@@split](string, limit)
+ ? function(string, arg){ return original.call(string, this, arg); }
+ // 21.2.5.6 RegExp.prototype[@@match](string)
+ // 21.2.5.9 RegExp.prototype[@@search](string)
+ : function(string){ return original.call(string, this); }
+ );
+ }
+ };
+
+/***/ },
+/* 133 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // @@replace logic
+ __webpack_require__(132)('replace', 2, function(defined, REPLACE, $replace){
+ // 21.1.3.14 String.prototype.replace(searchValue, replaceValue)
+ return function replace(searchValue, replaceValue){
+ 'use strict';
+ var O = defined(this)
+ , fn = searchValue == undefined ? undefined : searchValue[REPLACE];
+ return fn !== undefined
+ ? fn.call(searchValue, O, replaceValue)
+ : $replace.call(String(O), searchValue, replaceValue);
+ };
+ });
+
+/***/ },
+/* 134 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // @@search logic
+ __webpack_require__(132)('search', 1, function(defined, SEARCH){
+ // 21.1.3.15 String.prototype.search(regexp)
+ return function search(regexp){
+ 'use strict';
+ var O = defined(this)
+ , fn = regexp == undefined ? undefined : regexp[SEARCH];
+ return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O));
+ };
+ });
+
+/***/ },
+/* 135 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // @@split logic
+ __webpack_require__(132)('split', 2, function(defined, SPLIT, $split){
+ // 21.1.3.17 String.prototype.split(separator, limit)
+ return function split(separator, limit){
+ 'use strict';
+ var O = defined(this)
+ , fn = separator == undefined ? undefined : separator[SPLIT];
+ return fn !== undefined
+ ? fn.call(separator, O, limit)
+ : $split.call(String(O), separator, limit);
+ };
+ });
+
+/***/ },
+/* 136 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $ = __webpack_require__(2)
+ , LIBRARY = __webpack_require__(39)
+ , global = __webpack_require__(4)
+ , ctx = __webpack_require__(12)
+ , classof = __webpack_require__(47)
+ , $export = __webpack_require__(3)
+ , isObject = __webpack_require__(16)
+ , anObject = __webpack_require__(20)
+ , aFunction = __webpack_require__(13)
+ , strictNew = __webpack_require__(137)
+ , forOf = __webpack_require__(138)
+ , setProto = __webpack_require__(45).set
+ , same = __webpack_require__(43)
+ , SPECIES = __webpack_require__(31)('species')
+ , speciesConstructor = __webpack_require__(139)
+ , asap = __webpack_require__(140)
+ , PROMISE = 'Promise'
+ , process = global.process
+ , isNode = classof(process) == 'process'
+ , P = global[PROMISE]
+ , empty = function(){ /* empty */ }
+ , Wrapper;
+
+ var testResolve = function(sub){
+ var test = new P(empty), promise;
+ if(sub)test.constructor = function(exec){
+ exec(empty, empty);
+ };
+ (promise = P.resolve(test))['catch'](empty);
+ return promise === test;
+ };
+
+ var USE_NATIVE = function(){
+ var works = false;
+ function P2(x){
+ var self = new P(x);
+ setProto(self, P2.prototype);
+ return self;
+ }
+ try {
+ works = P && P.resolve && testResolve();
+ setProto(P2, P);
+ P2.prototype = $.create(P.prototype, {constructor: {value: P2}});
+ // actual Firefox has broken subclass support, test that
+ if(!(P2.resolve(5).then(function(){}) instanceof P2)){
+ works = false;
+ }
+ // actual V8 bug, https://code.google.com/p/v8/issues/detail?id=4162
+ if(works && __webpack_require__(8)){
+ var thenableThenGotten = false;
+ P.resolve($.setDesc({}, 'then', {
+ get: function(){ thenableThenGotten = true; }
+ }));
+ works = thenableThenGotten;
+ }
+ } catch(e){ works = false; }
+ return works;
+ }();
+
+ // helpers
+ var sameConstructor = function(a, b){
+ // library wrapper special case
+ if(LIBRARY && a === P && b === Wrapper)return true;
+ return same(a, b);
+ };
+ var getConstructor = function(C){
+ var S = anObject(C)[SPECIES];
+ return S != undefined ? S : C;
+ };
+ var isThenable = function(it){
+ var then;
+ return isObject(it) && typeof (then = it.then) == 'function' ? then : false;
+ };
+ var PromiseCapability = function(C){
+ var resolve, reject;
+ this.promise = new C(function($$resolve, $$reject){
+ if(resolve !== undefined || reject !== undefined)throw TypeError('Bad Promise constructor');
+ resolve = $$resolve;
+ reject = $$reject;
+ });
+ this.resolve = aFunction(resolve),
+ this.reject = aFunction(reject)
+ };
+ var perform = function(exec){
+ try {
+ exec();
+ } catch(e){
+ return {error: e};
+ }
+ };
+ var notify = function(record, isReject){
+ if(record.n)return;
+ record.n = true;
+ var chain = record.c;
+ asap(function(){
+ var value = record.v
+ , ok = record.s == 1
+ , i = 0;
+ var run = function(reaction){
+ var handler = ok ? reaction.ok : reaction.fail
+ , resolve = reaction.resolve
+ , reject = reaction.reject
+ , result, then;
+ try {
+ if(handler){
+ if(!ok)record.h = true;
+ result = handler === true ? value : handler(value);
+ if(result === reaction.promise){
+ reject(TypeError('Promise-chain cycle'));
+ } else if(then = isThenable(result)){
+ then.call(result, resolve, reject);
+ } else resolve(result);
+ } else reject(value);
+ } catch(e){
+ reject(e);
+ }
+ };
+ while(chain.length > i)run(chain[i++]); // variable length - can't use forEach
+ chain.length = 0;
+ record.n = false;
+ if(isReject)setTimeout(function(){
+ var promise = record.p
+ , handler, console;
+ if(isUnhandled(promise)){
+ if(isNode){
+ process.emit('unhandledRejection', value, promise);
+ } else if(handler = global.onunhandledrejection){
+ handler({promise: promise, reason: value});
+ } else if((console = global.console) && console.error){
+ console.error('Unhandled promise rejection', value);
+ }
+ } record.a = undefined;
+ }, 1);
+ });
+ };
+ var isUnhandled = function(promise){
+ var record = promise._d
+ , chain = record.a || record.c
+ , i = 0
+ , reaction;
+ if(record.h)return false;
+ while(chain.length > i){
+ reaction = chain[i++];
+ if(reaction.fail || !isUnhandled(reaction.promise))return false;
+ } return true;
+ };
+ var $reject = function(value){
+ var record = this;
+ if(record.d)return;
+ record.d = true;
+ record = record.r || record; // unwrap
+ record.v = value;
+ record.s = 2;
+ record.a = record.c.slice();
+ notify(record, true);
+ };
+ var $resolve = function(value){
+ var record = this
+ , then;
+ if(record.d)return;
+ record.d = true;
+ record = record.r || record; // unwrap
+ try {
+ if(record.p === value)throw TypeError("Promise can't be resolved itself");
+ if(then = isThenable(value)){
+ asap(function(){
+ var wrapper = {r: record, d: false}; // wrap
+ try {
+ then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));
+ } catch(e){
+ $reject.call(wrapper, e);
+ }
+ });
+ } else {
+ record.v = value;
+ record.s = 1;
+ notify(record, false);
+ }
+ } catch(e){
+ $reject.call({r: record, d: false}, e); // wrap
+ }
+ };
+
+ // constructor polyfill
+ if(!USE_NATIVE){
+ // 25.4.3.1 Promise(executor)
+ P = function Promise(executor){
+ aFunction(executor);
+ var record = this._d = {
+ p: strictNew(this, P, PROMISE), // <- promise
+ c: [], // <- awaiting reactions
+ a: undefined, // <- checked in isUnhandled reactions
+ s: 0, // <- state
+ d: false, // <- done
+ v: undefined, // <- value
+ h: false, // <- handled rejection
+ n: false // <- notify
+ };
+ try {
+ executor(ctx($resolve, record, 1), ctx($reject, record, 1));
+ } catch(err){
+ $reject.call(record, err);
+ }
+ };
+ __webpack_require__(142)(P.prototype, {
+ // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)
+ then: function then(onFulfilled, onRejected){
+ var reaction = new PromiseCapability(speciesConstructor(this, P))
+ , promise = reaction.promise
+ , record = this._d;
+ reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;
+ reaction.fail = typeof onRejected == 'function' && onRejected;
+ record.c.push(reaction);
+ if(record.a)record.a.push(reaction);
+ if(record.s)notify(record, false);
+ return promise;
+ },
+ // 25.4.5.1 Promise.prototype.catch(onRejected)
+ 'catch': function(onRejected){
+ return this.then(undefined, onRejected);
+ }
+ });
+ }
+
+ $export($export.G + $export.W + $export.F * !USE_NATIVE, {Promise: P});
+ __webpack_require__(35)(P, PROMISE);
+ __webpack_require__(121)(PROMISE);
+ Wrapper = __webpack_require__(5)[PROMISE];
+
+ // statics
+ $export($export.S + $export.F * !USE_NATIVE, PROMISE, {
+ // 25.4.4.5 Promise.reject(r)
+ reject: function reject(r){
+ var capability = new PromiseCapability(this)
+ , $$reject = capability.reject;
+ $$reject(r);
+ return capability.promise;
+ }
+ });
+ $export($export.S + $export.F * (!USE_NATIVE || testResolve(true)), PROMISE, {
+ // 25.4.4.6 Promise.resolve(x)
+ resolve: function resolve(x){
+ // instanceof instead of internal slot check because we should fix it without replacement native Promise core
+ if(x instanceof P && sameConstructor(x.constructor, this))return x;
+ var capability = new PromiseCapability(this)
+ , $$resolve = capability.resolve;
+ $$resolve(x);
+ return capability.promise;
+ }
+ });
+ $export($export.S + $export.F * !(USE_NATIVE && __webpack_require__(115)(function(iter){
+ P.all(iter)['catch'](function(){});
+ })), PROMISE, {
+ // 25.4.4.1 Promise.all(iterable)
+ all: function all(iterable){
+ var C = getConstructor(this)
+ , capability = new PromiseCapability(C)
+ , resolve = capability.resolve
+ , reject = capability.reject
+ , values = [];
+ var abrupt = perform(function(){
+ forOf(iterable, false, values.push, values);
+ var remaining = values.length
+ , results = Array(remaining);
+ if(remaining)$.each.call(values, function(promise, index){
+ var alreadyCalled = false;
+ C.resolve(promise).then(function(value){
+ if(alreadyCalled)return;
+ alreadyCalled = true;
+ results[index] = value;
+ --remaining || resolve(results);
+ }, reject);
+ });
+ else resolve(results);
+ });
+ if(abrupt)reject(abrupt.error);
+ return capability.promise;
+ },
+ // 25.4.4.4 Promise.race(iterable)
+ race: function race(iterable){
+ var C = getConstructor(this)
+ , capability = new PromiseCapability(C)
+ , reject = capability.reject;
+ var abrupt = perform(function(){
+ forOf(iterable, false, function(promise){
+ C.resolve(promise).then(capability.resolve, reject);
+ });
+ });
+ if(abrupt)reject(abrupt.error);
+ return capability.promise;
+ }
+ });
+
+/***/ },
+/* 137 */
+/***/ function(module, exports) {
+
+ module.exports = function(it, Constructor, name){
+ if(!(it instanceof Constructor))throw TypeError(name + ": use the 'new' operator!");
+ return it;
+ };
+
+/***/ },
+/* 138 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var ctx = __webpack_require__(12)
+ , call = __webpack_require__(112)
+ , isArrayIter = __webpack_require__(113)
+ , anObject = __webpack_require__(20)
+ , toLength = __webpack_require__(27)
+ , getIterFn = __webpack_require__(114);
+ module.exports = function(iterable, entries, fn, that){
+ var iterFn = getIterFn(iterable)
+ , f = ctx(fn, that, entries ? 2 : 1)
+ , index = 0
+ , length, step, iterator;
+ if(typeof iterFn != 'function')throw TypeError(iterable + ' is not iterable!');
+ // fast case for arrays with default iterator
+ if(isArrayIter(iterFn))for(length = toLength(iterable.length); length > index; index++){
+ entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);
+ } else for(iterator = iterFn.call(iterable); !(step = iterator.next()).done; ){
+ call(iterator, f, step.value, entries);
+ }
+ };
+
+/***/ },
+/* 139 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 7.3.20 SpeciesConstructor(O, defaultConstructor)
+ var anObject = __webpack_require__(20)
+ , aFunction = __webpack_require__(13)
+ , SPECIES = __webpack_require__(31)('species');
+ module.exports = function(O, D){
+ var C = anObject(O).constructor, S;
+ return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);
+ };
+
+/***/ },
+/* 140 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var global = __webpack_require__(4)
+ , macrotask = __webpack_require__(141).set
+ , Observer = global.MutationObserver || global.WebKitMutationObserver
+ , process = global.process
+ , Promise = global.Promise
+ , isNode = __webpack_require__(18)(process) == 'process'
+ , head, last, notify;
+
+ var flush = function(){
+ var parent, domain, fn;
+ if(isNode && (parent = process.domain)){
+ process.domain = null;
+ parent.exit();
+ }
+ while(head){
+ domain = head.domain;
+ fn = head.fn;
+ if(domain)domain.enter();
+ fn(); // <- currently we use it only for Promise - try / catch not required
+ if(domain)domain.exit();
+ head = head.next;
+ } last = undefined;
+ if(parent)parent.enter();
+ };
+
+ // Node.js
+ if(isNode){
+ notify = function(){
+ process.nextTick(flush);
+ };
+ // browsers with MutationObserver
+ } else if(Observer){
+ var toggle = 1
+ , node = document.createTextNode('');
+ new Observer(flush).observe(node, {characterData: true}); // eslint-disable-line no-new
+ notify = function(){
+ node.data = toggle = -toggle;
+ };
+ // environments with maybe non-completely correct, but existent Promise
+ } else if(Promise && Promise.resolve){
+ notify = function(){
+ Promise.resolve().then(flush);
+ };
+ // for other environments - macrotask based on:
+ // - setImmediate
+ // - MessageChannel
+ // - window.postMessag
+ // - onreadystatechange
+ // - setTimeout
+ } else {
+ notify = function(){
+ // strange IE + webpack dev server bug - use .call(global)
+ macrotask.call(global, flush);
+ };
+ }
+
+ module.exports = function asap(fn){
+ var task = {fn: fn, next: undefined, domain: isNode && process.domain};
+ if(last)last.next = task;
+ if(!head){
+ head = task;
+ notify();
+ } last = task;
+ };
+
+/***/ },
+/* 141 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var ctx = __webpack_require__(12)
+ , invoke = __webpack_require__(19)
+ , html = __webpack_require__(14)
+ , cel = __webpack_require__(15)
+ , global = __webpack_require__(4)
+ , process = global.process
+ , setTask = global.setImmediate
+ , clearTask = global.clearImmediate
+ , MessageChannel = global.MessageChannel
+ , counter = 0
+ , queue = {}
+ , ONREADYSTATECHANGE = 'onreadystatechange'
+ , defer, channel, port;
+ var run = function(){
+ var id = +this;
+ if(queue.hasOwnProperty(id)){
+ var fn = queue[id];
+ delete queue[id];
+ fn();
+ }
+ };
+ var listner = function(event){
+ run.call(event.data);
+ };
+ // Node.js 0.9+ & IE10+ has setImmediate, otherwise:
+ if(!setTask || !clearTask){
+ setTask = function setImmediate(fn){
+ var args = [], i = 1;
+ while(arguments.length > i)args.push(arguments[i++]);
+ queue[++counter] = function(){
+ invoke(typeof fn == 'function' ? fn : Function(fn), args);
+ };
+ defer(counter);
+ return counter;
+ };
+ clearTask = function clearImmediate(id){
+ delete queue[id];
+ };
+ // Node.js 0.8-
+ if(__webpack_require__(18)(process) == 'process'){
+ defer = function(id){
+ process.nextTick(ctx(run, id, 1));
+ };
+ // Browsers with MessageChannel, includes WebWorkers
+ } else if(MessageChannel){
+ channel = new MessageChannel;
+ port = channel.port2;
+ channel.port1.onmessage = listner;
+ defer = ctx(port.postMessage, port, 1);
+ // Browsers with postMessage, skip WebWorkers
+ // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'
+ } else if(global.addEventListener && typeof postMessage == 'function' && !global.importScripts){
+ defer = function(id){
+ global.postMessage(id + '', '*');
+ };
+ global.addEventListener('message', listner, false);
+ // IE8-
+ } else if(ONREADYSTATECHANGE in cel('script')){
+ defer = function(id){
+ html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function(){
+ html.removeChild(this);
+ run.call(id);
+ };
+ };
+ // Rest old browsers
+ } else {
+ defer = function(id){
+ setTimeout(ctx(run, id, 1), 0);
+ };
+ }
+ }
+ module.exports = {
+ set: setTask,
+ clear: clearTask
+ };
+
+/***/ },
+/* 142 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var redefine = __webpack_require__(10);
+ module.exports = function(target, src){
+ for(var key in src)redefine(target, key, src[key]);
+ return target;
+ };
+
+/***/ },
+/* 143 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var strong = __webpack_require__(144);
+
+ // 23.1 Map Objects
+ __webpack_require__(145)('Map', function(get){
+ return function Map(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };
+ }, {
+ // 23.1.3.6 Map.prototype.get(key)
+ get: function get(key){
+ var entry = strong.getEntry(this, key);
+ return entry && entry.v;
+ },
+ // 23.1.3.9 Map.prototype.set(key, value)
+ set: function set(key, value){
+ return strong.def(this, key === 0 ? 0 : key, value);
+ }
+ }, strong, true);
+
+/***/ },
+/* 144 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $ = __webpack_require__(2)
+ , hide = __webpack_require__(6)
+ , redefineAll = __webpack_require__(142)
+ , ctx = __webpack_require__(12)
+ , strictNew = __webpack_require__(137)
+ , defined = __webpack_require__(22)
+ , forOf = __webpack_require__(138)
+ , $iterDefine = __webpack_require__(108)
+ , step = __webpack_require__(119)
+ , ID = __webpack_require__(11)('id')
+ , $has = __webpack_require__(17)
+ , isObject = __webpack_require__(16)
+ , setSpecies = __webpack_require__(121)
+ , DESCRIPTORS = __webpack_require__(8)
+ , isExtensible = Object.isExtensible || isObject
+ , SIZE = DESCRIPTORS ? '_s' : 'size'
+ , id = 0;
+
+ var fastKey = function(it, create){
+ // return primitive with prefix
+ if(!isObject(it))return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
+ if(!$has(it, ID)){
+ // can't set id to frozen object
+ if(!isExtensible(it))return 'F';
+ // not necessary to add id
+ if(!create)return 'E';
+ // add missing object id
+ hide(it, ID, ++id);
+ // return object id with prefix
+ } return 'O' + it[ID];
+ };
+
+ var getEntry = function(that, key){
+ // fast case
+ var index = fastKey(key), entry;
+ if(index !== 'F')return that._i[index];
+ // frozen object case
+ for(entry = that._f; entry; entry = entry.n){
+ if(entry.k == key)return entry;
+ }
+ };
+
+ module.exports = {
+ getConstructor: function(wrapper, NAME, IS_MAP, ADDER){
+ var C = wrapper(function(that, iterable){
+ strictNew(that, C, NAME);
+ that._i = $.create(null); // index
+ that._f = undefined; // first entry
+ that._l = undefined; // last entry
+ that[SIZE] = 0; // size
+ if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);
+ });
+ redefineAll(C.prototype, {
+ // 23.1.3.1 Map.prototype.clear()
+ // 23.2.3.2 Set.prototype.clear()
+ clear: function clear(){
+ for(var that = this, data = that._i, entry = that._f; entry; entry = entry.n){
+ entry.r = true;
+ if(entry.p)entry.p = entry.p.n = undefined;
+ delete data[entry.i];
+ }
+ that._f = that._l = undefined;
+ that[SIZE] = 0;
+ },
+ // 23.1.3.3 Map.prototype.delete(key)
+ // 23.2.3.4 Set.prototype.delete(value)
+ 'delete': function(key){
+ var that = this
+ , entry = getEntry(that, key);
+ if(entry){
+ var next = entry.n
+ , prev = entry.p;
+ delete that._i[entry.i];
+ entry.r = true;
+ if(prev)prev.n = next;
+ if(next)next.p = prev;
+ if(that._f == entry)that._f = next;
+ if(that._l == entry)that._l = prev;
+ that[SIZE]--;
+ } return !!entry;
+ },
+ // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)
+ // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)
+ forEach: function forEach(callbackfn /*, that = undefined */){
+ var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3)
+ , entry;
+ while(entry = entry ? entry.n : this._f){
+ f(entry.v, entry.k, this);
+ // revert to the last existing entry
+ while(entry && entry.r)entry = entry.p;
+ }
+ },
+ // 23.1.3.7 Map.prototype.has(key)
+ // 23.2.3.7 Set.prototype.has(value)
+ has: function has(key){
+ return !!getEntry(this, key);
+ }
+ });
+ if(DESCRIPTORS)$.setDesc(C.prototype, 'size', {
+ get: function(){
+ return defined(this[SIZE]);
+ }
+ });
+ return C;
+ },
+ def: function(that, key, value){
+ var entry = getEntry(that, key)
+ , prev, index;
+ // change existing entry
+ if(entry){
+ entry.v = value;
+ // create new entry
+ } else {
+ that._l = entry = {
+ i: index = fastKey(key, true), // <- index
+ k: key, // <- key
+ v: value, // <- value
+ p: prev = that._l, // <- previous entry
+ n: undefined, // <- next entry
+ r: false // <- removed
+ };
+ if(!that._f)that._f = entry;
+ if(prev)prev.n = entry;
+ that[SIZE]++;
+ // add to index
+ if(index !== 'F')that._i[index] = entry;
+ } return that;
+ },
+ getEntry: getEntry,
+ setStrong: function(C, NAME, IS_MAP){
+ // add .keys, .values, .entries, [@@iterator]
+ // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11
+ $iterDefine(C, NAME, function(iterated, kind){
+ this._t = iterated; // target
+ this._k = kind; // kind
+ this._l = undefined; // previous
+ }, function(){
+ var that = this
+ , kind = that._k
+ , entry = that._l;
+ // revert to the last existing entry
+ while(entry && entry.r)entry = entry.p;
+ // get next entry
+ if(!that._t || !(that._l = entry = entry ? entry.n : that._t._f)){
+ // or finish the iteration
+ that._t = undefined;
+ return step(1);
+ }
+ // return step by kind
+ if(kind == 'keys' )return step(0, entry.k);
+ if(kind == 'values')return step(0, entry.v);
+ return step(0, [entry.k, entry.v]);
+ }, IS_MAP ? 'entries' : 'values' , !IS_MAP, true);
+
+ // add [@@species], 23.1.2.2, 23.2.2.2
+ setSpecies(NAME);
+ }
+ };
+
+/***/ },
+/* 145 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var global = __webpack_require__(4)
+ , $export = __webpack_require__(3)
+ , redefine = __webpack_require__(10)
+ , redefineAll = __webpack_require__(142)
+ , forOf = __webpack_require__(138)
+ , strictNew = __webpack_require__(137)
+ , isObject = __webpack_require__(16)
+ , fails = __webpack_require__(9)
+ , $iterDetect = __webpack_require__(115)
+ , setToStringTag = __webpack_require__(35);
+
+ module.exports = function(NAME, wrapper, methods, common, IS_MAP, IS_WEAK){
+ var Base = global[NAME]
+ , C = Base
+ , ADDER = IS_MAP ? 'set' : 'add'
+ , proto = C && C.prototype
+ , O = {};
+ var fixMethod = function(KEY){
+ var fn = proto[KEY];
+ redefine(proto, KEY,
+ KEY == 'delete' ? function(a){
+ return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);
+ } : KEY == 'has' ? function has(a){
+ return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);
+ } : KEY == 'get' ? function get(a){
+ return IS_WEAK && !isObject(a) ? undefined : fn.call(this, a === 0 ? 0 : a);
+ } : KEY == 'add' ? function add(a){ fn.call(this, a === 0 ? 0 : a); return this; }
+ : function set(a, b){ fn.call(this, a === 0 ? 0 : a, b); return this; }
+ );
+ };
+ if(typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function(){
+ new C().entries().next();
+ }))){
+ // create collection constructor
+ C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);
+ redefineAll(C.prototype, methods);
+ } else {
+ var instance = new C
+ // early implementations not supports chaining
+ , HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) != instance
+ // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false
+ , THROWS_ON_PRIMITIVES = fails(function(){ instance.has(1); })
+ // most early implementations doesn't supports iterables, most modern - not close it correctly
+ , ACCEPT_ITERABLES = $iterDetect(function(iter){ new C(iter); }) // eslint-disable-line no-new
+ // for early implementations -0 and +0 not the same
+ , BUGGY_ZERO;
+ if(!ACCEPT_ITERABLES){
+ C = wrapper(function(target, iterable){
+ strictNew(target, C, NAME);
+ var that = new Base;
+ if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);
+ return that;
+ });
+ C.prototype = proto;
+ proto.constructor = C;
+ }
+ IS_WEAK || instance.forEach(function(val, key){
+ BUGGY_ZERO = 1 / key === -Infinity;
+ });
+ if(THROWS_ON_PRIMITIVES || BUGGY_ZERO){
+ fixMethod('delete');
+ fixMethod('has');
+ IS_MAP && fixMethod('get');
+ }
+ if(BUGGY_ZERO || HASNT_CHAINING)fixMethod(ADDER);
+ // weak collections should not contains .clear method
+ if(IS_WEAK && proto.clear)delete proto.clear;
+ }
+
+ setToStringTag(C, NAME);
+
+ O[NAME] = C;
+ $export($export.G + $export.W + $export.F * (C != Base), O);
+
+ if(!IS_WEAK)common.setStrong(C, NAME, IS_MAP);
+
+ return C;
+ };
+
+/***/ },
+/* 146 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var strong = __webpack_require__(144);
+
+ // 23.2 Set Objects
+ __webpack_require__(145)('Set', function(get){
+ return function Set(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };
+ }, {
+ // 23.2.3.1 Set.prototype.add(value)
+ add: function add(value){
+ return strong.def(this, value = value === 0 ? 0 : value, value);
+ }
+ }, strong);
+
+/***/ },
+/* 147 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $ = __webpack_require__(2)
+ , redefine = __webpack_require__(10)
+ , weak = __webpack_require__(148)
+ , isObject = __webpack_require__(16)
+ , has = __webpack_require__(17)
+ , frozenStore = weak.frozenStore
+ , WEAK = weak.WEAK
+ , isExtensible = Object.isExtensible || isObject
+ , tmp = {};
+
+ // 23.3 WeakMap Objects
+ var $WeakMap = __webpack_require__(145)('WeakMap', function(get){
+ return function WeakMap(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };
+ }, {
+ // 23.3.3.3 WeakMap.prototype.get(key)
+ get: function get(key){
+ if(isObject(key)){
+ if(!isExtensible(key))return frozenStore(this).get(key);
+ if(has(key, WEAK))return key[WEAK][this._i];
+ }
+ },
+ // 23.3.3.5 WeakMap.prototype.set(key, value)
+ set: function set(key, value){
+ return weak.def(this, key, value);
+ }
+ }, weak, true, true);
+
+ // IE11 WeakMap frozen keys fix
+ if(new $WeakMap().set((Object.freeze || Object)(tmp), 7).get(tmp) != 7){
+ $.each.call(['delete', 'has', 'get', 'set'], function(key){
+ var proto = $WeakMap.prototype
+ , method = proto[key];
+ redefine(proto, key, function(a, b){
+ // store frozen objects on leaky map
+ if(isObject(a) && !isExtensible(a)){
+ var result = frozenStore(this)[key](a, b);
+ return key == 'set' ? this : result;
+ // store all the rest on native weakmap
+ } return method.call(this, a, b);
+ });
+ });
+ }
+
+/***/ },
+/* 148 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var hide = __webpack_require__(6)
+ , redefineAll = __webpack_require__(142)
+ , anObject = __webpack_require__(20)
+ , isObject = __webpack_require__(16)
+ , strictNew = __webpack_require__(137)
+ , forOf = __webpack_require__(138)
+ , createArrayMethod = __webpack_require__(28)
+ , $has = __webpack_require__(17)
+ , WEAK = __webpack_require__(11)('weak')
+ , isExtensible = Object.isExtensible || isObject
+ , arrayFind = createArrayMethod(5)
+ , arrayFindIndex = createArrayMethod(6)
+ , id = 0;
+
+ // fallback for frozen keys
+ var frozenStore = function(that){
+ return that._l || (that._l = new FrozenStore);
+ };
+ var FrozenStore = function(){
+ this.a = [];
+ };
+ var findFrozen = function(store, key){
+ return arrayFind(store.a, function(it){
+ return it[0] === key;
+ });
+ };
+ FrozenStore.prototype = {
+ get: function(key){
+ var entry = findFrozen(this, key);
+ if(entry)return entry[1];
+ },
+ has: function(key){
+ return !!findFrozen(this, key);
+ },
+ set: function(key, value){
+ var entry = findFrozen(this, key);
+ if(entry)entry[1] = value;
+ else this.a.push([key, value]);
+ },
+ 'delete': function(key){
+ var index = arrayFindIndex(this.a, function(it){
+ return it[0] === key;
+ });
+ if(~index)this.a.splice(index, 1);
+ return !!~index;
+ }
+ };
+
+ module.exports = {
+ getConstructor: function(wrapper, NAME, IS_MAP, ADDER){
+ var C = wrapper(function(that, iterable){
+ strictNew(that, C, NAME);
+ that._i = id++; // collection id
+ that._l = undefined; // leak store for frozen objects
+ if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);
+ });
+ redefineAll(C.prototype, {
+ // 23.3.3.2 WeakMap.prototype.delete(key)
+ // 23.4.3.3 WeakSet.prototype.delete(value)
+ 'delete': function(key){
+ if(!isObject(key))return false;
+ if(!isExtensible(key))return frozenStore(this)['delete'](key);
+ return $has(key, WEAK) && $has(key[WEAK], this._i) && delete key[WEAK][this._i];
+ },
+ // 23.3.3.4 WeakMap.prototype.has(key)
+ // 23.4.3.4 WeakSet.prototype.has(value)
+ has: function has(key){
+ if(!isObject(key))return false;
+ if(!isExtensible(key))return frozenStore(this).has(key);
+ return $has(key, WEAK) && $has(key[WEAK], this._i);
+ }
+ });
+ return C;
+ },
+ def: function(that, key, value){
+ if(!isExtensible(anObject(key))){
+ frozenStore(that).set(key, value);
+ } else {
+ $has(key, WEAK) || hide(key, WEAK, {});
+ key[WEAK][that._i] = value;
+ } return that;
+ },
+ frozenStore: frozenStore,
+ WEAK: WEAK
+ };
+
+/***/ },
+/* 149 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var weak = __webpack_require__(148);
+
+ // 23.4 WeakSet Objects
+ __webpack_require__(145)('WeakSet', function(get){
+ return function WeakSet(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };
+ }, {
+ // 23.4.3.1 WeakSet.prototype.add(value)
+ add: function add(value){
+ return weak.def(this, value, true);
+ }
+ }, weak, false, true);
+
+/***/ },
+/* 150 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.1 Reflect.apply(target, thisArgument, argumentsList)
+ var $export = __webpack_require__(3)
+ , _apply = Function.apply
+ , anObject = __webpack_require__(20);
+
+ $export($export.S, 'Reflect', {
+ apply: function apply(target, thisArgument, argumentsList){
+ return _apply.call(target, thisArgument, anObject(argumentsList));
+ }
+ });
+
+/***/ },
+/* 151 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.2 Reflect.construct(target, argumentsList [, newTarget])
+ var $ = __webpack_require__(2)
+ , $export = __webpack_require__(3)
+ , aFunction = __webpack_require__(13)
+ , anObject = __webpack_require__(20)
+ , isObject = __webpack_require__(16)
+ , bind = Function.bind || __webpack_require__(5).Function.prototype.bind;
+
+ // MS Edge supports only 2 arguments
+ // FF Nightly sets third argument as `new.target`, but does not create `this` from it
+ $export($export.S + $export.F * __webpack_require__(9)(function(){
+ function F(){}
+ return !(Reflect.construct(function(){}, [], F) instanceof F);
+ }), 'Reflect', {
+ construct: function construct(Target, args /*, newTarget*/){
+ aFunction(Target);
+ anObject(args);
+ var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);
+ if(Target == newTarget){
+ // w/o altered newTarget, optimization for 0-4 arguments
+ switch(args.length){
+ case 0: return new Target;
+ case 1: return new Target(args[0]);
+ case 2: return new Target(args[0], args[1]);
+ case 3: return new Target(args[0], args[1], args[2]);
+ case 4: return new Target(args[0], args[1], args[2], args[3]);
+ }
+ // w/o altered newTarget, lot of arguments case
+ var $args = [null];
+ $args.push.apply($args, args);
+ return new (bind.apply(Target, $args));
+ }
+ // with altered newTarget, not support built-in constructors
+ var proto = newTarget.prototype
+ , instance = $.create(isObject(proto) ? proto : Object.prototype)
+ , result = Function.apply.call(Target, instance, args);
+ return isObject(result) ? result : instance;
+ }
+ });
+
+/***/ },
+/* 152 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.3 Reflect.defineProperty(target, propertyKey, attributes)
+ var $ = __webpack_require__(2)
+ , $export = __webpack_require__(3)
+ , anObject = __webpack_require__(20);
+
+ // MS Edge has broken Reflect.defineProperty - throwing instead of returning false
+ $export($export.S + $export.F * __webpack_require__(9)(function(){
+ Reflect.defineProperty($.setDesc({}, 1, {value: 1}), 1, {value: 2});
+ }), 'Reflect', {
+ defineProperty: function defineProperty(target, propertyKey, attributes){
+ anObject(target);
+ try {
+ $.setDesc(target, propertyKey, attributes);
+ return true;
+ } catch(e){
+ return false;
+ }
+ }
+ });
+
+/***/ },
+/* 153 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.4 Reflect.deleteProperty(target, propertyKey)
+ var $export = __webpack_require__(3)
+ , getDesc = __webpack_require__(2).getDesc
+ , anObject = __webpack_require__(20);
+
+ $export($export.S, 'Reflect', {
+ deleteProperty: function deleteProperty(target, propertyKey){
+ var desc = getDesc(anObject(target), propertyKey);
+ return desc && !desc.configurable ? false : delete target[propertyKey];
+ }
+ });
+
+/***/ },
+/* 154 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ // 26.1.5 Reflect.enumerate(target)
+ var $export = __webpack_require__(3)
+ , anObject = __webpack_require__(20);
+ var Enumerate = function(iterated){
+ this._t = anObject(iterated); // target
+ this._i = 0; // next index
+ var keys = this._k = [] // keys
+ , key;
+ for(key in iterated)keys.push(key);
+ };
+ __webpack_require__(110)(Enumerate, 'Object', function(){
+ var that = this
+ , keys = that._k
+ , key;
+ do {
+ if(that._i >= keys.length)return {value: undefined, done: true};
+ } while(!((key = keys[that._i++]) in that._t));
+ return {value: key, done: false};
+ });
+
+ $export($export.S, 'Reflect', {
+ enumerate: function enumerate(target){
+ return new Enumerate(target);
+ }
+ });
+
+/***/ },
+/* 155 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.6 Reflect.get(target, propertyKey [, receiver])
+ var $ = __webpack_require__(2)
+ , has = __webpack_require__(17)
+ , $export = __webpack_require__(3)
+ , isObject = __webpack_require__(16)
+ , anObject = __webpack_require__(20);
+
+ function get(target, propertyKey/*, receiver*/){
+ var receiver = arguments.length < 3 ? target : arguments[2]
+ , desc, proto;
+ if(anObject(target) === receiver)return target[propertyKey];
+ if(desc = $.getDesc(target, propertyKey))return has(desc, 'value')
+ ? desc.value
+ : desc.get !== undefined
+ ? desc.get.call(receiver)
+ : undefined;
+ if(isObject(proto = $.getProto(target)))return get(proto, propertyKey, receiver);
+ }
+
+ $export($export.S, 'Reflect', {get: get});
+
+/***/ },
+/* 156 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.7 Reflect.getOwnPropertyDescriptor(target, propertyKey)
+ var $ = __webpack_require__(2)
+ , $export = __webpack_require__(3)
+ , anObject = __webpack_require__(20);
+
+ $export($export.S, 'Reflect', {
+ getOwnPropertyDescriptor: function getOwnPropertyDescriptor(target, propertyKey){
+ return $.getDesc(anObject(target), propertyKey);
+ }
+ });
+
+/***/ },
+/* 157 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.8 Reflect.getPrototypeOf(target)
+ var $export = __webpack_require__(3)
+ , getProto = __webpack_require__(2).getProto
+ , anObject = __webpack_require__(20);
+
+ $export($export.S, 'Reflect', {
+ getPrototypeOf: function getPrototypeOf(target){
+ return getProto(anObject(target));
+ }
+ });
+
+/***/ },
+/* 158 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.9 Reflect.has(target, propertyKey)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Reflect', {
+ has: function has(target, propertyKey){
+ return propertyKey in target;
+ }
+ });
+
+/***/ },
+/* 159 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.10 Reflect.isExtensible(target)
+ var $export = __webpack_require__(3)
+ , anObject = __webpack_require__(20)
+ , $isExtensible = Object.isExtensible;
+
+ $export($export.S, 'Reflect', {
+ isExtensible: function isExtensible(target){
+ anObject(target);
+ return $isExtensible ? $isExtensible(target) : true;
+ }
+ });
+
+/***/ },
+/* 160 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.11 Reflect.ownKeys(target)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Reflect', {ownKeys: __webpack_require__(161)});
+
+/***/ },
+/* 161 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // all object keys, includes non-enumerable and symbols
+ var $ = __webpack_require__(2)
+ , anObject = __webpack_require__(20)
+ , Reflect = __webpack_require__(4).Reflect;
+ module.exports = Reflect && Reflect.ownKeys || function ownKeys(it){
+ var keys = $.getNames(anObject(it))
+ , getSymbols = $.getSymbols;
+ return getSymbols ? keys.concat(getSymbols(it)) : keys;
+ };
+
+/***/ },
+/* 162 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.12 Reflect.preventExtensions(target)
+ var $export = __webpack_require__(3)
+ , anObject = __webpack_require__(20)
+ , $preventExtensions = Object.preventExtensions;
+
+ $export($export.S, 'Reflect', {
+ preventExtensions: function preventExtensions(target){
+ anObject(target);
+ try {
+ if($preventExtensions)$preventExtensions(target);
+ return true;
+ } catch(e){
+ return false;
+ }
+ }
+ });
+
+/***/ },
+/* 163 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.13 Reflect.set(target, propertyKey, V [, receiver])
+ var $ = __webpack_require__(2)
+ , has = __webpack_require__(17)
+ , $export = __webpack_require__(3)
+ , createDesc = __webpack_require__(7)
+ , anObject = __webpack_require__(20)
+ , isObject = __webpack_require__(16);
+
+ function set(target, propertyKey, V/*, receiver*/){
+ var receiver = arguments.length < 4 ? target : arguments[3]
+ , ownDesc = $.getDesc(anObject(target), propertyKey)
+ , existingDescriptor, proto;
+ if(!ownDesc){
+ if(isObject(proto = $.getProto(target))){
+ return set(proto, propertyKey, V, receiver);
+ }
+ ownDesc = createDesc(0);
+ }
+ if(has(ownDesc, 'value')){
+ if(ownDesc.writable === false || !isObject(receiver))return false;
+ existingDescriptor = $.getDesc(receiver, propertyKey) || createDesc(0);
+ existingDescriptor.value = V;
+ $.setDesc(receiver, propertyKey, existingDescriptor);
+ return true;
+ }
+ return ownDesc.set === undefined ? false : (ownDesc.set.call(receiver, V), true);
+ }
+
+ $export($export.S, 'Reflect', {set: set});
+
+/***/ },
+/* 164 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.14 Reflect.setPrototypeOf(target, proto)
+ var $export = __webpack_require__(3)
+ , setProto = __webpack_require__(45);
+
+ if(setProto)$export($export.S, 'Reflect', {
+ setPrototypeOf: function setPrototypeOf(target, proto){
+ setProto.check(target, proto);
+ try {
+ setProto.set(target, proto);
+ return true;
+ } catch(e){
+ return false;
+ }
+ }
+ });
+
+/***/ },
+/* 165 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $export = __webpack_require__(3)
+ , $includes = __webpack_require__(33)(true);
+
+ $export($export.P, 'Array', {
+ // https://github.com/domenic/Array.prototype.includes
+ includes: function includes(el /*, fromIndex = 0 */){
+ return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);
+ }
+ });
+
+ __webpack_require__(118)('includes');
+
+/***/ },
+/* 166 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ // https://github.com/mathiasbynens/String.prototype.at
+ var $export = __webpack_require__(3)
+ , $at = __webpack_require__(98)(true);
+
+ $export($export.P, 'String', {
+ at: function at(pos){
+ return $at(this, pos);
+ }
+ });
+
+/***/ },
+/* 167 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $export = __webpack_require__(3)
+ , $pad = __webpack_require__(168);
+
+ $export($export.P, 'String', {
+ padLeft: function padLeft(maxLength /*, fillString = ' ' */){
+ return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, true);
+ }
+ });
+
+/***/ },
+/* 168 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // https://github.com/ljharb/proposal-string-pad-left-right
+ var toLength = __webpack_require__(27)
+ , repeat = __webpack_require__(105)
+ , defined = __webpack_require__(22);
+
+ module.exports = function(that, maxLength, fillString, left){
+ var S = String(defined(that))
+ , stringLength = S.length
+ , fillStr = fillString === undefined ? ' ' : String(fillString)
+ , intMaxLength = toLength(maxLength);
+ if(intMaxLength <= stringLength)return S;
+ if(fillStr == '')fillStr = ' ';
+ var fillLen = intMaxLength - stringLength
+ , stringFiller = repeat.call(fillStr, Math.ceil(fillLen / fillStr.length));
+ if(stringFiller.length > fillLen)stringFiller = stringFiller.slice(0, fillLen);
+ return left ? stringFiller + S : S + stringFiller;
+ };
+
+/***/ },
+/* 169 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $export = __webpack_require__(3)
+ , $pad = __webpack_require__(168);
+
+ $export($export.P, 'String', {
+ padRight: function padRight(maxLength /*, fillString = ' ' */){
+ return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, false);
+ }
+ });
+
+/***/ },
+/* 170 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ // https://github.com/sebmarkbage/ecmascript-string-left-right-trim
+ __webpack_require__(63)('trimLeft', function($trim){
+ return function trimLeft(){
+ return $trim(this, 1);
+ };
+ });
+
+/***/ },
+/* 171 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ // https://github.com/sebmarkbage/ecmascript-string-left-right-trim
+ __webpack_require__(63)('trimRight', function($trim){
+ return function trimRight(){
+ return $trim(this, 2);
+ };
+ });
+
+/***/ },
+/* 172 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // https://github.com/benjamingr/RexExp.escape
+ var $export = __webpack_require__(3)
+ , $re = __webpack_require__(173)(/[\\^$*+?.()|[\]{}]/g, '\\$&');
+
+ $export($export.S, 'RegExp', {escape: function escape(it){ return $re(it); }});
+
+
+/***/ },
+/* 173 */
+/***/ function(module, exports) {
+
+ module.exports = function(regExp, replace){
+ var replacer = replace === Object(replace) ? function(part){
+ return replace[part];
+ } : replace;
+ return function(it){
+ return String(it).replace(regExp, replacer);
+ };
+ };
+
+/***/ },
+/* 174 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // https://gist.github.com/WebReflection/9353781
+ var $ = __webpack_require__(2)
+ , $export = __webpack_require__(3)
+ , ownKeys = __webpack_require__(161)
+ , toIObject = __webpack_require__(23)
+ , createDesc = __webpack_require__(7);
+
+ $export($export.S, 'Object', {
+ getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object){
+ var O = toIObject(object)
+ , setDesc = $.setDesc
+ , getDesc = $.getDesc
+ , keys = ownKeys(O)
+ , result = {}
+ , i = 0
+ , key, D;
+ while(keys.length > i){
+ D = getDesc(O, key = keys[i++]);
+ if(key in result)setDesc(result, key, createDesc(0, D));
+ else result[key] = D;
+ } return result;
+ }
+ });
+
+/***/ },
+/* 175 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // http://goo.gl/XkBrjD
+ var $export = __webpack_require__(3)
+ , $values = __webpack_require__(176)(false);
+
+ $export($export.S, 'Object', {
+ values: function values(it){
+ return $values(it);
+ }
+ });
+
+/***/ },
+/* 176 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $ = __webpack_require__(2)
+ , toIObject = __webpack_require__(23)
+ , isEnum = $.isEnum;
+ module.exports = function(isEntries){
+ return function(it){
+ var O = toIObject(it)
+ , keys = $.getKeys(O)
+ , length = keys.length
+ , i = 0
+ , result = []
+ , key;
+ while(length > i)if(isEnum.call(O, key = keys[i++])){
+ result.push(isEntries ? [key, O[key]] : O[key]);
+ } return result;
+ };
+ };
+
+/***/ },
+/* 177 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // http://goo.gl/XkBrjD
+ var $export = __webpack_require__(3)
+ , $entries = __webpack_require__(176)(true);
+
+ $export($export.S, 'Object', {
+ entries: function entries(it){
+ return $entries(it);
+ }
+ });
+
+/***/ },
+/* 178 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // https://github.com/DavidBruant/Map-Set.prototype.toJSON
+ var $export = __webpack_require__(3);
+
+ $export($export.P, 'Map', {toJSON: __webpack_require__(179)('Map')});
+
+/***/ },
+/* 179 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // https://github.com/DavidBruant/Map-Set.prototype.toJSON
+ var forOf = __webpack_require__(138)
+ , classof = __webpack_require__(47);
+ module.exports = function(NAME){
+ return function toJSON(){
+ if(classof(this) != NAME)throw TypeError(NAME + "#toJSON isn't generic");
+ var arr = [];
+ forOf(this, false, arr.push, arr);
+ return arr;
+ };
+ };
+
+/***/ },
+/* 180 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // https://github.com/DavidBruant/Map-Set.prototype.toJSON
+ var $export = __webpack_require__(3);
+
+ $export($export.P, 'Set', {toJSON: __webpack_require__(179)('Set')});
+
+/***/ },
+/* 181 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $export = __webpack_require__(3)
+ , $task = __webpack_require__(141);
+ $export($export.G + $export.B, {
+ setImmediate: $task.set,
+ clearImmediate: $task.clear
+ });
+
+/***/ },
+/* 182 */
+/***/ function(module, exports, __webpack_require__) {
+
+ __webpack_require__(117);
+ var global = __webpack_require__(4)
+ , hide = __webpack_require__(6)
+ , Iterators = __webpack_require__(109)
+ , ITERATOR = __webpack_require__(31)('iterator')
+ , NL = global.NodeList
+ , HTC = global.HTMLCollection
+ , NLProto = NL && NL.prototype
+ , HTCProto = HTC && HTC.prototype
+ , ArrayValues = Iterators.NodeList = Iterators.HTMLCollection = Iterators.Array;
+ if(NLProto && !NLProto[ITERATOR])hide(NLProto, ITERATOR, ArrayValues);
+ if(HTCProto && !HTCProto[ITERATOR])hide(HTCProto, ITERATOR, ArrayValues);
+
+/***/ },
+/* 183 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // ie9- setTimeout & setInterval additional parameters fix
+ var global = __webpack_require__(4)
+ , $export = __webpack_require__(3)
+ , invoke = __webpack_require__(19)
+ , partial = __webpack_require__(184)
+ , navigator = global.navigator
+ , MSIE = !!navigator && /MSIE .\./.test(navigator.userAgent); // <- dirty ie9- check
+ var wrap = function(set){
+ return MSIE ? function(fn, time /*, ...args */){
+ return set(invoke(
+ partial,
+ [].slice.call(arguments, 2),
+ typeof fn == 'function' ? fn : Function(fn)
+ ), time);
+ } : set;
+ };
+ $export($export.G + $export.B + $export.F * MSIE, {
+ setTimeout: wrap(global.setTimeout),
+ setInterval: wrap(global.setInterval)
+ });
+
+/***/ },
+/* 184 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var path = __webpack_require__(185)
+ , invoke = __webpack_require__(19)
+ , aFunction = __webpack_require__(13);
+ module.exports = function(/* ...pargs */){
+ var fn = aFunction(this)
+ , length = arguments.length
+ , pargs = Array(length)
+ , i = 0
+ , _ = path._
+ , holder = false;
+ while(length > i)if((pargs[i] = arguments[i++]) === _)holder = true;
+ return function(/* ...args */){
+ var that = this
+ , $$ = arguments
+ , $$len = $$.length
+ , j = 0, k = 0, args;
+ if(!holder && !$$len)return invoke(fn, pargs, that);
+ args = pargs.slice();
+ if(holder)for(;length > j; j++)if(args[j] === _)args[j] = $$[k++];
+ while($$len > k)args.push($$[k++]);
+ return invoke(fn, args, that);
+ };
+ };
+
+/***/ },
+/* 185 */
+/***/ function(module, exports, __webpack_require__) {
+
+ module.exports = __webpack_require__(4);
+
+/***/ },
+/* 186 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $ = __webpack_require__(2)
+ , ctx = __webpack_require__(12)
+ , $export = __webpack_require__(3)
+ , createDesc = __webpack_require__(7)
+ , assign = __webpack_require__(41)
+ , keyOf = __webpack_require__(36)
+ , aFunction = __webpack_require__(13)
+ , forOf = __webpack_require__(138)
+ , isIterable = __webpack_require__(187)
+ , $iterCreate = __webpack_require__(110)
+ , step = __webpack_require__(119)
+ , isObject = __webpack_require__(16)
+ , toIObject = __webpack_require__(23)
+ , DESCRIPTORS = __webpack_require__(8)
+ , has = __webpack_require__(17)
+ , getKeys = $.getKeys;
+
+ // 0 -> Dict.forEach
+ // 1 -> Dict.map
+ // 2 -> Dict.filter
+ // 3 -> Dict.some
+ // 4 -> Dict.every
+ // 5 -> Dict.find
+ // 6 -> Dict.findKey
+ // 7 -> Dict.mapPairs
+ var createDictMethod = function(TYPE){
+ var IS_MAP = TYPE == 1
+ , IS_EVERY = TYPE == 4;
+ return function(object, callbackfn, that /* = undefined */){
+ var f = ctx(callbackfn, that, 3)
+ , O = toIObject(object)
+ , result = IS_MAP || TYPE == 7 || TYPE == 2
+ ? new (typeof this == 'function' ? this : Dict) : undefined
+ , key, val, res;
+ for(key in O)if(has(O, key)){
+ val = O[key];
+ res = f(val, key, object);
+ if(TYPE){
+ if(IS_MAP)result[key] = res; // map
+ else if(res)switch(TYPE){
+ case 2: result[key] = val; break; // filter
+ case 3: return true; // some
+ case 5: return val; // find
+ case 6: return key; // findKey
+ case 7: result[res[0]] = res[1]; // mapPairs
+ } else if(IS_EVERY)return false; // every
+ }
+ }
+ return TYPE == 3 || IS_EVERY ? IS_EVERY : result;
+ };
+ };
+ var findKey = createDictMethod(6);
+
+ var createDictIter = function(kind){
+ return function(it){
+ return new DictIterator(it, kind);
+ };
+ };
+ var DictIterator = function(iterated, kind){
+ this._t = toIObject(iterated); // target
+ this._a = getKeys(iterated); // keys
+ this._i = 0; // next index
+ this._k = kind; // kind
+ };
+ $iterCreate(DictIterator, 'Dict', function(){
+ var that = this
+ , O = that._t
+ , keys = that._a
+ , kind = that._k
+ , key;
+ do {
+ if(that._i >= keys.length){
+ that._t = undefined;
+ return step(1);
+ }
+ } while(!has(O, key = keys[that._i++]));
+ if(kind == 'keys' )return step(0, key);
+ if(kind == 'values')return step(0, O[key]);
+ return step(0, [key, O[key]]);
+ });
+
+ function Dict(iterable){
+ var dict = $.create(null);
+ if(iterable != undefined){
+ if(isIterable(iterable)){
+ forOf(iterable, true, function(key, value){
+ dict[key] = value;
+ });
+ } else assign(dict, iterable);
+ }
+ return dict;
+ }
+ Dict.prototype = null;
+
+ function reduce(object, mapfn, init){
+ aFunction(mapfn);
+ var O = toIObject(object)
+ , keys = getKeys(O)
+ , length = keys.length
+ , i = 0
+ , memo, key;
+ if(arguments.length < 3){
+ if(!length)throw TypeError('Reduce of empty object with no initial value');
+ memo = O[keys[i++]];
+ } else memo = Object(init);
+ while(length > i)if(has(O, key = keys[i++])){
+ memo = mapfn(memo, O[key], key, object);
+ }
+ return memo;
+ }
+
+ function includes(object, el){
+ return (el == el ? keyOf(object, el) : findKey(object, function(it){
+ return it != it;
+ })) !== undefined;
+ }
+
+ function get(object, key){
+ if(has(object, key))return object[key];
+ }
+ function set(object, key, value){
+ if(DESCRIPTORS && key in Object)$.setDesc(object, key, createDesc(0, value));
+ else object[key] = value;
+ return object;
+ }
+
+ function isDict(it){
+ return isObject(it) && $.getProto(it) === Dict.prototype;
+ }
+
+ $export($export.G + $export.F, {Dict: Dict});
+
+ $export($export.S, 'Dict', {
+ keys: createDictIter('keys'),
+ values: createDictIter('values'),
+ entries: createDictIter('entries'),
+ forEach: createDictMethod(0),
+ map: createDictMethod(1),
+ filter: createDictMethod(2),
+ some: createDictMethod(3),
+ every: createDictMethod(4),
+ find: createDictMethod(5),
+ findKey: findKey,
+ mapPairs: createDictMethod(7),
+ reduce: reduce,
+ keyOf: keyOf,
+ includes: includes,
+ has: has,
+ get: get,
+ set: set,
+ isDict: isDict
+ });
+
+/***/ },
+/* 187 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var classof = __webpack_require__(47)
+ , ITERATOR = __webpack_require__(31)('iterator')
+ , Iterators = __webpack_require__(109);
+ module.exports = __webpack_require__(5).isIterable = function(it){
+ var O = Object(it);
+ return O[ITERATOR] !== undefined
+ || '@@iterator' in O
+ || Iterators.hasOwnProperty(classof(O));
+ };
+
+/***/ },
+/* 188 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var anObject = __webpack_require__(20)
+ , get = __webpack_require__(114);
+ module.exports = __webpack_require__(5).getIterator = function(it){
+ var iterFn = get(it);
+ if(typeof iterFn != 'function')throw TypeError(it + ' is not iterable!');
+ return anObject(iterFn.call(it));
+ };
+
+/***/ },
+/* 189 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var global = __webpack_require__(4)
+ , core = __webpack_require__(5)
+ , $export = __webpack_require__(3)
+ , partial = __webpack_require__(184);
+ // https://esdiscuss.org/topic/promise-returning-delay-function
+ $export($export.G + $export.F, {
+ delay: function delay(time){
+ return new (core.Promise || global.Promise)(function(resolve){
+ setTimeout(partial.call(resolve, true), time);
+ });
+ }
+ });
+
+/***/ },
+/* 190 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var path = __webpack_require__(185)
+ , $export = __webpack_require__(3);
+
+ // Placeholder
+ __webpack_require__(5)._ = path._ = path._ || {};
+
+ $export($export.P + $export.F, 'Function', {part: __webpack_require__(184)});
+
+/***/ },
+/* 191 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $export = __webpack_require__(3);
+
+ $export($export.S + $export.F, 'Object', {isObject: __webpack_require__(16)});
+
+/***/ },
+/* 192 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $export = __webpack_require__(3);
+
+ $export($export.S + $export.F, 'Object', {classof: __webpack_require__(47)});
+
+/***/ },
+/* 193 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $export = __webpack_require__(3)
+ , define = __webpack_require__(194);
+
+ $export($export.S + $export.F, 'Object', {define: define});
+
+/***/ },
+/* 194 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $ = __webpack_require__(2)
+ , ownKeys = __webpack_require__(161)
+ , toIObject = __webpack_require__(23);
+
+ module.exports = function define(target, mixin){
+ var keys = ownKeys(toIObject(mixin))
+ , length = keys.length
+ , i = 0, key;
+ while(length > i)$.setDesc(target, key = keys[i++], $.getDesc(mixin, key));
+ return target;
+ };
+
+/***/ },
+/* 195 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $export = __webpack_require__(3)
+ , define = __webpack_require__(194)
+ , create = __webpack_require__(2).create;
+
+ $export($export.S + $export.F, 'Object', {
+ make: function(proto, mixin){
+ return define(create(proto), mixin);
+ }
+ });
+
+/***/ },
+/* 196 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ __webpack_require__(108)(Number, 'Number', function(iterated){
+ this._l = +iterated;
+ this._i = 0;
+ }, function(){
+ var i = this._i++
+ , done = !(i < this._l);
+ return {done: done, value: done ? undefined : i};
+ });
+
+/***/ },
+/* 197 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $export = __webpack_require__(3);
+ var $re = __webpack_require__(173)(/[&<>"']/g, {
+ '&': '&',
+ '<': '<',
+ '>': '>',
+ '"': '"',
+ "'": '''
+ });
+
+ $export($export.P + $export.F, 'String', {escapeHTML: function escapeHTML(){ return $re(this); }});
+
+/***/ },
+/* 198 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $export = __webpack_require__(3);
+ var $re = __webpack_require__(173)(/&(?:amp|lt|gt|quot|apos);/g, {
+ '&': '&',
+ '<': '<',
+ '>': '>',
+ '"': '"',
+ ''': "'"
+ });
+
+ $export($export.P + $export.F, 'String', {unescapeHTML: function unescapeHTML(){ return $re(this); }});
+
+/***/ },
+/* 199 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $ = __webpack_require__(2)
+ , global = __webpack_require__(4)
+ , $export = __webpack_require__(3)
+ , log = {}
+ , enabled = true;
+ // Methods from https://github.com/DeveloperToolsWG/console-object/blob/master/api.md
+ $.each.call((
+ 'assert,clear,count,debug,dir,dirxml,error,exception,group,groupCollapsed,groupEnd,' +
+ 'info,isIndependentlyComposed,log,markTimeline,profile,profileEnd,table,' +
+ 'time,timeEnd,timeline,timelineEnd,timeStamp,trace,warn'
+ ).split(','), function(key){
+ log[key] = function(){
+ var $console = global.console;
+ if(enabled && $console && $console[key]){
+ return Function.apply.call($console[key], $console, arguments);
+ }
+ };
+ });
+ $export($export.G + $export.F, {log: __webpack_require__(41)(log.log, log, {
+ enable: function(){
+ enabled = true;
+ },
+ disable: function(){
+ enabled = false;
+ }
+ })});
+
+/***/ },
+/* 200 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // JavaScript 1.6 / Strawman array statics shim
+ var $ = __webpack_require__(2)
+ , $export = __webpack_require__(3)
+ , $ctx = __webpack_require__(12)
+ , $Array = __webpack_require__(5).Array || Array
+ , statics = {};
+ var setStatics = function(keys, length){
+ $.each.call(keys.split(','), function(key){
+ if(length == undefined && key in $Array)statics[key] = $Array[key];
+ else if(key in [])statics[key] = $ctx(Function.call, [][key], length);
+ });
+ };
+ setStatics('pop,reverse,shift,keys,values,entries', 1);
+ setStatics('indexOf,every,some,forEach,map,filter,find,findIndex,includes', 3);
+ setStatics('join,slice,concat,push,splice,unshift,sort,lastIndexOf,' +
+ 'reduce,reduceRight,copyWithin,fill');
+ $export($export.S, 'Array', statics);
+
+/***/ }
+/******/ ]);
+// CommonJS export
+if(typeof module != 'undefined' && module.exports)module.exports = __e;
+// RequireJS export
+else if(typeof define == 'function' && define.amd)define(function(){return __e});
+// Export to global object
+else __g.core = __e;
+}(1, 1);
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/client/core.min.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/client/core.min.js
new file mode 100644
index 00000000..7a080f0b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/client/core.min.js
@@ -0,0 +1,9 @@
+/**
+ * core-js 1.2.7
+ * https://github.com/zloirock/core-js
+ * License: http://rock.mit-license.org
+ * © 2016 Denis Pushkarev
+ */
+!function(b,c,a){"use strict";!function(b){function __webpack_require__(c){if(a[c])return a[c].exports;var d=a[c]={exports:{},id:c,loaded:!1};return b[c].call(d.exports,d,d.exports,__webpack_require__),d.loaded=!0,d.exports}var a={};return __webpack_require__.m=b,__webpack_require__.c=a,__webpack_require__.p="",__webpack_require__(0)}([function(b,c,a){a(1),a(34),a(40),a(42),a(44),a(46),a(48),a(50),a(51),a(52),a(53),a(54),a(55),a(56),a(57),a(58),a(59),a(60),a(61),a(64),a(65),a(66),a(68),a(69),a(70),a(71),a(72),a(73),a(74),a(76),a(77),a(78),a(80),a(81),a(82),a(84),a(85),a(86),a(87),a(88),a(89),a(90),a(91),a(92),a(93),a(94),a(95),a(96),a(97),a(99),a(103),a(104),a(106),a(107),a(111),a(116),a(117),a(120),a(122),a(124),a(126),a(127),a(128),a(130),a(131),a(133),a(134),a(135),a(136),a(143),a(146),a(147),a(149),a(150),a(151),a(152),a(153),a(154),a(155),a(156),a(157),a(158),a(159),a(160),a(162),a(163),a(164),a(165),a(166),a(167),a(169),a(170),a(171),a(172),a(174),a(175),a(177),a(178),a(180),a(181),a(182),a(183),a(186),a(114),a(188),a(187),a(189),a(190),a(191),a(192),a(193),a(195),a(196),a(197),a(198),a(199),b.exports=a(200)},function(S,R,b){var r,d=b(2),c=b(3),x=b(8),O=b(7),o=b(14),E=b(15),n=b(17),N=b(18),J=b(19),j=b(9),p=b(20),v=b(13),I=b(16),Q=b(21),y=b(23),K=b(25),w=b(26),h=b(27),s=b(24),m=b(11)("__proto__"),g=b(28),A=b(33)(!1),B=Object.prototype,C=Array.prototype,k=C.slice,M=C.join,F=d.setDesc,L=d.getDesc,q=d.setDescs,u={};x||(r=!j(function(){return 7!=F(E("div"),"a",{get:function(){return 7}}).a}),d.setDesc=function(b,c,a){if(r)try{return F(b,c,a)}catch(d){}if("get"in a||"set"in a)throw TypeError("Accessors not supported!");return"value"in a&&(p(b)[c]=a.value),b},d.getDesc=function(a,b){if(r)try{return L(a,b)}catch(c){}return n(a,b)?O(!B.propertyIsEnumerable.call(a,b),a[b]):void 0},d.setDescs=q=function(a,b){p(a);for(var c,e=d.getKeys(b),g=e.length,f=0;g>f;)d.setDesc(a,c=e[f++],b[c]);return a}),c(c.S+c.F*!x,"Object",{getOwnPropertyDescriptor:d.getDesc,defineProperty:d.setDesc,defineProperties:q});var i="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(","),H=i.concat("length","prototype"),G=i.length,l=function(){var a,b=E("iframe"),c=G,d=">";for(b.style.display="none",o.appendChild(b),b.src="javascript:",a=b.contentWindow.document,a.open(),a.write("f;)n(e,c=a[f++])&&(~A(d,c)||d.push(c));return d}},t=function(){};c(c.S,"Object",{getPrototypeOf:d.getProto=d.getProto||function(a){return a=Q(a),n(a,m)?a[m]:"function"==typeof a.constructor&&a instanceof a.constructor?a.constructor.prototype:a instanceof Object?B:null},getOwnPropertyNames:d.getNames=d.getNames||D(H,H.length,!0),create:d.create=d.create||function(c,d){var b;return null!==c?(t.prototype=p(c),b=new t,t.prototype=null,b[m]=c):b=l(),d===a?b:q(b,d)},keys:d.getKeys=d.getKeys||D(i,G,!1)});var P=function(d,a,e){if(!(a in u)){for(var c=[],b=0;a>b;b++)c[b]="a["+b+"]";u[a]=Function("F,a","return new F("+c.join(",")+")")}return u[a](d,e)};c(c.P,"Function",{bind:function bind(c){var a=v(this),d=k.call(arguments,1),b=function(){var e=d.concat(k.call(arguments));return this instanceof b?P(a,e.length,e):J(a,e,c)};return I(a.prototype)&&(b.prototype=a.prototype),b}}),c(c.P+c.F*j(function(){o&&k.call(o)}),"Array",{slice:function(f,b){var d=h(this.length),g=N(this);if(b=b===a?d:b,"Array"==g)return k.call(this,f,b);for(var e=w(f,d),l=w(b,d),i=h(l-e),j=Array(i),c=0;i>c;c++)j[c]="String"==g?this.charAt(e+c):this[e+c];return j}}),c(c.P+c.F*(s!=Object),"Array",{join:function join(b){return M.call(s(this),b===a?",":b)}}),c(c.S,"Array",{isArray:b(30)});var z=function(a){return function(g,d){v(g);var c=s(this),e=h(c.length),b=a?e-1:0,f=a?-1:1;if(arguments.length<2)for(;;){if(b in c){d=c[b],b+=f;break}if(b+=f,a?0>b:b>=e)throw TypeError("Reduce of empty array with no initial value")}for(;a?b>=0:e>b;b+=f)b in c&&(d=g(d,c[b],b,this));return d}},f=function(a){return function(b){return a(this,b,arguments[1])}};c(c.P,"Array",{forEach:d.each=d.each||f(g(0)),map:f(g(1)),filter:f(g(2)),some:f(g(3)),every:f(g(4)),reduce:z(!1),reduceRight:z(!0),indexOf:f(A),lastIndexOf:function(d,e){var b=y(this),c=h(b.length),a=c-1;for(arguments.length>1&&(a=Math.min(a,K(e))),0>a&&(a=h(c+a));a>=0;a--)if(a in b&&b[a]===d)return a;return-1}}),c(c.S,"Date",{now:function(){return+new Date}});var e=function(a){return a>9?a:"0"+a};c(c.P+c.F*(j(function(){return"0385-07-25T07:06:39.999Z"!=new Date(-5e13-1).toISOString()})||!j(function(){new Date(NaN).toISOString()})),"Date",{toISOString:function toISOString(){if(!isFinite(this))throw RangeError("Invalid time value");var a=this,b=a.getUTCFullYear(),c=a.getUTCMilliseconds(),d=0>b?"-":b>9999?"+":"";return d+("00000"+Math.abs(b)).slice(d?-6:-4)+"-"+e(a.getUTCMonth()+1)+"-"+e(a.getUTCDate())+"T"+e(a.getUTCHours())+":"+e(a.getUTCMinutes())+":"+e(a.getUTCSeconds())+"."+(c>99?c:"0"+e(c))+"Z"}})},function(b,c){var a=Object;b.exports={create:a.create,getProto:a.getPrototypeOf,isEnum:{}.propertyIsEnumerable,getDesc:a.getOwnPropertyDescriptor,setDesc:a.defineProperty,setDescs:a.defineProperties,getKeys:a.keys,getNames:a.getOwnPropertyNames,getSymbols:a.getOwnPropertySymbols,each:[].forEach}},function(g,j,c){var b=c(4),d=c(5),h=c(6),i=c(10),f=c(12),e="prototype",a=function(k,j,o){var g,m,c,s,v=k&a.F,p=k&a.G,u=k&a.S,r=k&a.P,t=k&a.B,l=p?b:u?b[j]||(b[j]={}):(b[j]||{})[e],n=p?d:d[j]||(d[j]={}),q=n[e]||(n[e]={});p&&(o=j);for(g in o)m=!v&&l&&g in l,c=(m?l:o)[g],s=t&&m?f(c,b):r&&"function"==typeof c?f(Function.call,c):c,l&&!m&&i(l,g,c),n[g]!=c&&h(n,g,s),r&&q[g]!=c&&(q[g]=c)};b.core=d,a.F=1,a.G=2,a.S=4,a.P=8,a.B=16,a.W=32,g.exports=a},function(a,d){var b=a.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof c&&(c=b)},function(a,d){var c=a.exports={version:"1.2.6"};"number"==typeof b&&(b=c)},function(b,e,a){var c=a(2),d=a(7);b.exports=a(8)?function(a,b,e){return c.setDesc(a,b,d(1,e))}:function(a,b,c){return a[b]=c,a}},function(a,b){a.exports=function(a,b){return{enumerable:!(1&a),configurable:!(2&a),writable:!(4&a),value:b}}},function(a,c,b){a.exports=!b(9)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},function(a,b){a.exports=function(a){try{return!!a()}catch(b){return!0}}},function(f,i,a){var g=a(4),b=a(6),c=a(11)("src"),d="toString",e=Function[d],h=(""+e).split(d);a(5).inspectSource=function(a){return e.call(a)},(f.exports=function(e,a,d,f){"function"==typeof d&&(d.hasOwnProperty(c)||b(d,c,e[a]?""+e[a]:h.join(String(a))),d.hasOwnProperty("name")||b(d,"name",a)),e===g?e[a]=d:(f||delete e[a],b(e,a,d))})(Function.prototype,d,function toString(){return"function"==typeof this&&this[c]||e.call(this)})},function(b,e){var c=0,d=Math.random();b.exports=function(b){return"Symbol(".concat(b===a?"":b,")_",(++c+d).toString(36))}},function(b,e,c){var d=c(13);b.exports=function(b,c,e){if(d(b),c===a)return b;switch(e){case 1:return function(a){return b.call(c,a)};case 2:return function(a,d){return b.call(c,a,d)};case 3:return function(a,d,e){return b.call(c,a,d,e)}}return function(){return b.apply(c,arguments)}}},function(a,b){a.exports=function(a){if("function"!=typeof a)throw TypeError(a+" is not a function!");return a}},function(a,c,b){a.exports=b(4).document&&document.documentElement},function(d,f,b){var c=b(16),a=b(4).document,e=c(a)&&c(a.createElement);d.exports=function(b){return e?a.createElement(b):{}}},function(a,b){a.exports=function(a){return"object"==typeof a?null!==a:"function"==typeof a}},function(a,c){var b={}.hasOwnProperty;a.exports=function(a,c){return b.call(a,c)}},function(a,c){var b={}.toString;a.exports=function(a){return b.call(a).slice(8,-1)}},function(b,c){b.exports=function(c,b,d){var e=d===a;switch(b.length){case 0:return e?c():c.call(d);case 1:return e?c(b[0]):c.call(d,b[0]);case 2:return e?c(b[0],b[1]):c.call(d,b[0],b[1]);case 3:return e?c(b[0],b[1],b[2]):c.call(d,b[0],b[1],b[2]);case 4:return e?c(b[0],b[1],b[2],b[3]):c.call(d,b[0],b[1],b[2],b[3])}return c.apply(d,b)}},function(a,d,b){var c=b(16);a.exports=function(a){if(!c(a))throw TypeError(a+" is not an object!");return a}},function(a,d,b){var c=b(22);a.exports=function(a){return Object(c(a))}},function(b,c){b.exports=function(b){if(b==a)throw TypeError("Can't call method on "+b);return b}},function(b,e,a){var c=a(24),d=a(22);b.exports=function(a){return c(d(a))}},function(a,d,b){var c=b(18);a.exports=Object("z").propertyIsEnumerable(0)?Object:function(a){return"String"==c(a)?a.split(""):Object(a)}},function(a,d){var b=Math.ceil,c=Math.floor;a.exports=function(a){return isNaN(a=+a)?0:(a>0?c:b)(a)}},function(a,f,b){var c=b(25),d=Math.max,e=Math.min;a.exports=function(a,b){return a=c(a),0>a?d(a+b,0):e(a,b)}},function(a,e,b){var c=b(25),d=Math.min;a.exports=function(a){return a>0?d(c(a),9007199254740991):0}},function(d,i,b){var e=b(12),f=b(24),g=b(21),h=b(27),c=b(29);d.exports=function(b){var i=1==b,k=2==b,l=3==b,d=4==b,j=6==b,m=5==b||j;return function(p,v,x){for(var o,r,u=g(p),s=f(u),w=e(v,x,3),t=h(s.length),n=0,q=i?c(p,t):k?c(p,0):a;t>n;n++)if((m||n in s)&&(o=s[n],r=w(o,n,u),b))if(i)q[n]=r;else if(r)switch(b){case 3:return!0;case 5:return o;case 6:return n;case 2:q.push(o)}else if(d)return!1;return j?-1:l||d?d:q}}},function(d,g,b){var e=b(16),c=b(30),f=b(31)("species");d.exports=function(d,g){var b;return c(d)&&(b=d.constructor,"function"!=typeof b||b!==Array&&!c(b.prototype)||(b=a),e(b)&&(b=b[f],null===b&&(b=a))),new(b===a?Array:b)(g)}},function(a,d,b){var c=b(18);a.exports=Array.isArray||function(a){return"Array"==c(a)}},function(d,f,a){var c=a(32)("wks"),e=a(11),b=a(4).Symbol;d.exports=function(a){return c[a]||(c[a]=b&&b[a]||(b||e)("Symbol."+a))}},function(d,f,e){var a=e(4),b="__core-js_shared__",c=a[b]||(a[b]={});d.exports=function(a){return c[a]||(c[a]={})}},function(b,f,a){var c=a(23),d=a(27),e=a(26);b.exports=function(a){return function(j,g,k){var h,f=c(j),i=d(f.length),b=e(k,i);if(a&&g!=g){for(;i>b;)if(h=f[b++],h!=h)return!0}else for(;i>b;b++)if((a||b in f)&&f[b]===g)return a||b;return!a&&-1}}},function(W,V,b){var e=b(2),x=b(4),d=b(17),w=b(8),f=b(3),G=b(10),H=b(9),J=b(32),s=b(35),S=b(11),A=b(31),R=b(36),C=b(37),Q=b(38),P=b(30),O=b(20),p=b(23),v=b(7),I=e.getDesc,i=e.setDesc,k=e.create,z=C.get,g=x.Symbol,l=x.JSON,m=l&&l.stringify,n=!1,c=A("_hidden"),N=e.isEnum,o=J("symbol-registry"),h=J("symbols"),q="function"==typeof g,j=Object.prototype,y=w&&H(function(){return 7!=k(i({},"a",{get:function(){return i(this,"a",{value:7}).a}})).a})?function(c,a,d){var b=I(j,a);b&&delete j[a],i(c,a,d),b&&c!==j&&i(j,a,b)}:i,L=function(a){var b=h[a]=k(g.prototype);return b._k=a,w&&n&&y(j,a,{configurable:!0,set:function(b){d(this,c)&&d(this[c],a)&&(this[c][a]=!1),y(this,a,v(1,b))}}),b},r=function(a){return"symbol"==typeof a},t=function defineProperty(a,b,e){return e&&d(h,b)?(e.enumerable?(d(a,c)&&a[c][b]&&(a[c][b]=!1),e=k(e,{enumerable:v(0,!1)})):(d(a,c)||i(a,c,v(1,{})),a[c][b]=!0),y(a,b,e)):i(a,b,e)},u=function defineProperties(a,b){O(a);for(var c,d=Q(b=p(b)),e=0,f=d.length;f>e;)t(a,c=d[e++],b[c]);return a},F=function create(b,c){return c===a?k(b):u(k(b),c)},E=function propertyIsEnumerable(a){var b=N.call(this,a);return b||!d(this,a)||!d(h,a)||d(this,c)&&this[c][a]?b:!0},D=function getOwnPropertyDescriptor(a,b){var e=I(a=p(a),b);return!e||!d(h,b)||d(a,c)&&a[c][b]||(e.enumerable=!0),e},B=function getOwnPropertyNames(g){for(var a,b=z(p(g)),e=[],f=0;b.length>f;)d(h,a=b[f++])||a==c||e.push(a);return e},M=function getOwnPropertySymbols(f){for(var a,b=z(p(f)),c=[],e=0;b.length>e;)d(h,a=b[e++])&&c.push(h[a]);return c},T=function stringify(e){if(e!==a&&!r(e)){for(var b,c,d=[e],f=1,g=arguments;g.length>f;)d.push(g[f++]);return b=d[1],"function"==typeof b&&(c=b),(c||!P(b))&&(b=function(b,a){return c&&(a=c.call(this,b,a)),r(a)?void 0:a}),d[1]=b,m.apply(l,d)}},U=H(function(){var a=g();return"[null]"!=m([a])||"{}"!=m({a:a})||"{}"!=m(Object(a))});q||(g=function Symbol(){if(r(this))throw TypeError("Symbol is not a constructor");return L(S(arguments.length>0?arguments[0]:a))},G(g.prototype,"toString",function toString(){return this._k}),r=function(a){return a instanceof g},e.create=F,e.isEnum=E,e.getDesc=D,e.setDesc=t,e.setDescs=u,e.getNames=C.get=B,e.getSymbols=M,w&&!b(39)&&G(j,"propertyIsEnumerable",E,!0));var K={"for":function(a){return d(o,a+="")?o[a]:o[a]=g(a)},keyFor:function keyFor(a){return R(o,a)},useSetter:function(){n=!0},useSimple:function(){n=!1}};e.each.call("hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),function(a){var b=A(a);K[a]=q?b:L(b)}),n=!0,f(f.G+f.W,{Symbol:g}),f(f.S,"Symbol",K),f(f.S+f.F*!q,"Object",{create:F,defineProperty:t,defineProperties:u,getOwnPropertyDescriptor:D,getOwnPropertyNames:B,getOwnPropertySymbols:M}),l&&f(f.S+f.F*(!q||U),"JSON",{stringify:T}),s(g,"Symbol"),s(Math,"Math",!0),s(x.JSON,"JSON",!0)},function(c,f,a){var d=a(2).setDesc,e=a(17),b=a(31)("toStringTag");c.exports=function(a,c,f){a&&!e(a=f?a:a.prototype,b)&&d(a,b,{configurable:!0,value:c})}},function(b,e,a){var c=a(2),d=a(23);b.exports=function(g,h){for(var a,b=d(g),e=c.getKeys(b),i=e.length,f=0;i>f;)if(b[a=e[f++]]===h)return a}},function(d,h,a){var e=a(23),b=a(2).getNames,f={}.toString,c="object"==typeof window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],g=function(a){try{return b(a)}catch(d){return c.slice()}};d.exports.get=function getOwnPropertyNames(a){return c&&"[object Window]"==f.call(a)?g(a):b(e(a))}},function(b,d,c){var a=c(2);b.exports=function(b){var c=a.getKeys(b),d=a.getSymbols;if(d)for(var e,f=d(b),h=a.isEnum,g=0;f.length>g;)h.call(b,e=f[g++])&&c.push(e);return c}},function(a,b){a.exports=!1},function(c,d,b){var a=b(3);a(a.S+a.F,"Object",{assign:b(41)})},function(c,f,a){var b=a(2),d=a(21),e=a(24);c.exports=a(9)(function(){var a=Object.assign,b={},c={},d=Symbol(),e="abcdefghijklmnopqrst";return b[d]=7,e.split("").forEach(function(a){c[a]=a}),7!=a({},b)[d]||Object.keys(a({},c)).join("")!=e})?function assign(n,q){for(var g=d(n),h=arguments,o=h.length,j=1,f=b.getKeys,l=b.getSymbols,m=b.isEnum;o>j;)for(var c,a=e(h[j++]),k=l?f(a).concat(l(a)):f(a),p=k.length,i=0;p>i;)m.call(a,c=k[i++])&&(g[c]=a[c]);return g}:Object.assign},function(c,d,a){var b=a(3);b(b.S,"Object",{is:a(43)})},function(a,b){a.exports=Object.is||function is(a,b){return a===b?0!==a||1/a===1/b:a!=a&&b!=b}},function(c,d,a){var b=a(3);b(b.S,"Object",{setPrototypeOf:a(45).set})},function(d,h,b){var e=b(2).getDesc,f=b(16),g=b(20),c=function(b,a){if(g(b),!f(a)&&null!==a)throw TypeError(a+": can't set as prototype!")};d.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(f,a,d){try{d=b(12)(Function.call,e(Object.prototype,"__proto__").set,2),d(f,[]),a=!(f instanceof Array)}catch(g){a=!0}return function setPrototypeOf(b,e){return c(b,e),a?b.__proto__=e:d(b,e),b}}({},!1):a),check:c}},function(d,e,a){var c=a(47),b={};b[a(31)("toStringTag")]="z",b+""!="[object z]"&&a(10)(Object.prototype,"toString",function toString(){return"[object "+c(this)+"]"},!0)},function(d,g,c){var b=c(18),e=c(31)("toStringTag"),f="Arguments"==b(function(){return arguments}());d.exports=function(d){var c,g,h;return d===a?"Undefined":null===d?"Null":"string"==typeof(g=(c=Object(d))[e])?g:f?b(c):"Object"==(h=b(c))&&"function"==typeof c.callee?"Arguments":h}},function(c,d,a){var b=a(16);a(49)("freeze",function(a){return function freeze(c){return a&&b(c)?a(c):c}})},function(c,f,a){var b=a(3),d=a(5),e=a(9);c.exports=function(a,g){var c=(d.Object||{})[a]||Object[a],f={};f[a]=g(c),b(b.S+b.F*e(function(){c(1)}),"Object",f)}},function(c,d,a){var b=a(16);a(49)("seal",function(a){return function seal(c){return a&&b(c)?a(c):c}})},function(c,d,a){var b=a(16);a(49)("preventExtensions",function(a){return function preventExtensions(c){return a&&b(c)?a(c):c}})},function(c,d,a){var b=a(16);a(49)("isFrozen",function(a){return function isFrozen(c){return b(c)?a?a(c):!1:!0}})},function(c,d,a){var b=a(16);a(49)("isSealed",function(a){return function isSealed(c){return b(c)?a?a(c):!1:!0}})},function(c,d,a){var b=a(16);a(49)("isExtensible",function(a){return function isExtensible(c){return b(c)?a?a(c):!0:!1}})},function(c,d,a){var b=a(23);a(49)("getOwnPropertyDescriptor",function(a){return function getOwnPropertyDescriptor(c,d){return a(b(c),d)}})},function(c,d,a){var b=a(21);a(49)("getPrototypeOf",function(a){return function getPrototypeOf(c){return a(b(c))}})},function(c,d,a){var b=a(21);a(49)("keys",function(a){return function keys(c){return a(b(c))}})},function(b,c,a){a(49)("getOwnPropertyNames",function(){return a(37).get})},function(h,i,a){var c=a(2).setDesc,e=a(7),f=a(17),d=Function.prototype,g=/^\s*function ([^ (]*)/,b="name";b in d||a(8)&&c(d,b,{configurable:!0,get:function(){var a=(""+this).match(g),d=a?a[1]:"";return f(this,b)||c(this,b,e(5,d)),d}})},function(f,g,a){var b=a(2),c=a(16),d=a(31)("hasInstance"),e=Function.prototype;d in e||b.setDesc(e,d,{value:function(a){if("function"!=typeof this||!c(a))return!1;if(!c(this.prototype))return a instanceof this;for(;a=b.getProto(a);)if(this.prototype===a)return!0;return!1}})},function(q,p,b){var c=b(2),h=b(4),i=b(17),j=b(18),l=b(62),k=b(9),n=b(63).trim,d="Number",a=h[d],e=a,f=a.prototype,o=j(c.create(f))==d,m="trim"in String.prototype,g=function(i){var a=l(i,!1);if("string"==typeof a&&a.length>2){a=m?a.trim():n(a,3);var b,c,d,e=a.charCodeAt(0);if(43===e||45===e){if(b=a.charCodeAt(2),88===b||120===b)return NaN}else if(48===e){switch(a.charCodeAt(1)){case 66:case 98:c=2,d=49;break;case 79:case 111:c=8,d=55;break;default:return+a}for(var f,g=a.slice(2),h=0,j=g.length;j>h;h++)if(f=g.charCodeAt(h),48>f||f>d)return NaN;return parseInt(g,c)}}return+a};a(" 0o1")&&a("0b1")&&!a("+0x1")||(a=function Number(h){var c=arguments.length<1?0:h,b=this;return b instanceof a&&(o?k(function(){f.valueOf.call(b)}):j(b)!=d)?new e(g(c)):g(c)},c.each.call(b(8)?c.getNames(e):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),function(b){i(e,b)&&!i(a,b)&&c.setDesc(a,b,c.getDesc(e,b))}),a.prototype=f,f.constructor=a,b(10)(h,d,a))},function(b,d,c){var a=c(16);b.exports=function(b,e){if(!a(b))return b;var c,d;if(e&&"function"==typeof(c=b.toString)&&!a(d=c.call(b)))return d;if("function"==typeof(c=b.valueOf)&&!a(d=c.call(b)))return d;if(!e&&"function"==typeof(c=b.toString)&&!a(d=c.call(b)))return d;throw TypeError("Can't convert object to primitive value")}},function(g,m,b){var c=b(3),h=b(22),i=b(9),d=" \n\f\r \u2028\u2029\ufeff",a="["+d+"]",f="
",j=RegExp("^"+a+a+"*"),k=RegExp(a+a+"*$"),e=function(a,e){var b={};b[a]=e(l),c(c.P+c.F*i(function(){return!!d[a]()||f[a]()!=f}),"String",b)},l=e.trim=function(a,b){return a=String(h(a)),1&b&&(a=a.replace(j,"")),2&b&&(a=a.replace(k,"")),a};g.exports=e},function(c,d,b){var a=b(3);a(a.S,"Number",{EPSILON:Math.pow(2,-52)})},function(d,e,a){var b=a(3),c=a(4).isFinite;b(b.S,"Number",{isFinite:function isFinite(a){return"number"==typeof a&&c(a)}})},function(c,d,a){var b=a(3);b(b.S,"Number",{isInteger:a(67)})},function(a,e,b){var c=b(16),d=Math.floor;a.exports=function isInteger(a){return!c(a)&&isFinite(a)&&d(a)===a}},function(c,d,b){var a=b(3);a(a.S,"Number",{isNaN:function isNaN(a){return a!=a}})},function(e,f,a){var b=a(3),c=a(67),d=Math.abs;b(b.S,"Number",{isSafeInteger:function isSafeInteger(a){return c(a)&&d(a)<=9007199254740991}})},function(c,d,b){var a=b(3);a(a.S,"Number",{MAX_SAFE_INTEGER:9007199254740991})},function(c,d,b){var a=b(3);a(a.S,"Number",{MIN_SAFE_INTEGER:-9007199254740991})},function(c,d,b){var a=b(3);a(a.S,"Number",{parseFloat:parseFloat})},function(c,d,b){var a=b(3);a(a.S,"Number",{parseInt:parseInt})},function(f,g,b){var a=b(3),e=b(75),c=Math.sqrt,d=Math.acosh;a(a.S+a.F*!(d&&710==Math.floor(d(Number.MAX_VALUE))),"Math",{acosh:function acosh(a){return(a=+a)<1?NaN:a>94906265.62425156?Math.log(a)+Math.LN2:e(a-1+c(a-1)*c(a+1))}})},function(a,b){a.exports=Math.log1p||function log1p(a){return(a=+a)>-1e-8&&1e-8>a?a-a*a/2:Math.log(1+a)}},function(c,d,b){function asinh(a){return isFinite(a=+a)&&0!=a?0>a?-asinh(-a):Math.log(a+Math.sqrt(a*a+1)):a}var a=b(3);a(a.S,"Math",{asinh:asinh})},function(c,d,b){var a=b(3);a(a.S,"Math",{atanh:function atanh(a){return 0==(a=+a)?a:Math.log((1+a)/(1-a))/2}})},function(d,e,a){var b=a(3),c=a(79);b(b.S,"Math",{cbrt:function cbrt(a){return c(a=+a)*Math.pow(Math.abs(a),1/3)}})},function(a,b){a.exports=Math.sign||function sign(a){return 0==(a=+a)||a!=a?a:0>a?-1:1}},function(c,d,b){var a=b(3);a(a.S,"Math",{clz32:function clz32(a){return(a>>>=0)?31-Math.floor(Math.log(a+.5)*Math.LOG2E):32}})},function(d,e,c){var a=c(3),b=Math.exp;a(a.S,"Math",{cosh:function cosh(a){return(b(a=+a)+b(-a))/2}})},function(c,d,a){var b=a(3);b(b.S,"Math",{expm1:a(83)})},function(a,b){a.exports=Math.expm1||function expm1(a){return 0==(a=+a)?a:a>-1e-6&&1e-6>a?a+a*a/2:Math.exp(a)-1}},function(k,j,e){var f=e(3),g=e(79),a=Math.pow,d=a(2,-52),b=a(2,-23),i=a(2,127)*(2-b),c=a(2,-126),h=function(a){return a+1/d-1/d};f(f.S,"Math",{fround:function fround(k){var f,a,e=Math.abs(k),j=g(k);return c>e?j*h(e/c/b)*c*b:(f=(1+b/d)*e,a=f-(f-e),a>i||a!=a?j*(1/0):j*a)}})},function(d,e,b){var a=b(3),c=Math.abs;a(a.S,"Math",{hypot:function hypot(i,j){for(var a,b,e=0,f=0,g=arguments,h=g.length,d=0;h>f;)a=c(g[f++]),a>d?(b=d/a,e=e*b*b+1,d=a):a>0?(b=a/d,e+=b*b):e+=a;return d===1/0?1/0:d*Math.sqrt(e)}})},function(d,e,b){var a=b(3),c=Math.imul;a(a.S+a.F*b(9)(function(){return-5!=c(4294967295,5)||2!=c.length}),"Math",{imul:function imul(f,g){var a=65535,b=+f,c=+g,d=a&b,e=a&c;return 0|d*e+((a&b>>>16)*e+d*(a&c>>>16)<<16>>>0)}})},function(c,d,b){var a=b(3);a(a.S,"Math",{log10:function log10(a){return Math.log(a)/Math.LN10}})},function(c,d,a){var b=a(3);b(b.S,"Math",{log1p:a(75)})},function(c,d,b){var a=b(3);a(a.S,"Math",{log2:function log2(a){return Math.log(a)/Math.LN2}})},function(c,d,a){var b=a(3);b(b.S,"Math",{sign:a(79)})},function(e,f,a){var b=a(3),c=a(83),d=Math.exp;b(b.S+b.F*a(9)(function(){return-2e-17!=!Math.sinh(-2e-17)}),"Math",{sinh:function sinh(a){return Math.abs(a=+a)<1?(c(a)-c(-a))/2:(d(a-1)-d(-a-1))*(Math.E/2)}})},function(e,f,a){var b=a(3),c=a(83),d=Math.exp;b(b.S,"Math",{tanh:function tanh(a){var b=c(a=+a),e=c(-a);return b==1/0?1:e==1/0?-1:(b-e)/(d(a)+d(-a))}})},function(c,d,b){var a=b(3);a(a.S,"Math",{trunc:function trunc(a){return(a>0?Math.floor:Math.ceil)(a)}})},function(f,g,b){var a=b(3),e=b(26),c=String.fromCharCode,d=String.fromCodePoint;a(a.S+a.F*(!!d&&1!=d.length),"String",{fromCodePoint:function fromCodePoint(h){for(var a,b=[],d=arguments,g=d.length,f=0;g>f;){if(a=+d[f++],e(a,1114111)!==a)throw RangeError(a+" is not a valid code point");b.push(65536>a?c(a):c(((a-=65536)>>10)+55296,a%1024+56320))}return b.join("")}})},function(e,f,a){var b=a(3),c=a(23),d=a(27);b(b.S,"String",{raw:function raw(g){for(var e=c(g.raw),h=d(e.length),f=arguments,i=f.length,b=[],a=0;h>a;)b.push(String(e[a++])),i>a&&b.push(String(f[a]));return b.join("")}})},function(b,c,a){a(63)("trim",function(a){return function trim(){return a(this,3)}})},function(d,e,a){var b=a(3),c=a(98)(!1);b(b.P,"String",{codePointAt:function codePointAt(a){return c(this,a)}})},function(c,f,b){var d=b(25),e=b(22);c.exports=function(b){return function(j,k){var f,h,g=String(e(j)),c=d(k),i=g.length;return 0>c||c>=i?b?"":a:(f=g.charCodeAt(c),55296>f||f>56319||c+1===i||(h=g.charCodeAt(c+1))<56320||h>57343?b?g.charAt(c):f:b?g.slice(c,c+2):(f-55296<<10)+(h-56320)+65536)}}},function(h,i,b){var c=b(3),e=b(27),g=b(100),d="endsWith",f=""[d];c(c.P+c.F*b(102)(d),"String",{endsWith:function endsWith(i){var b=g(this,i,d),j=arguments,k=j.length>1?j[1]:a,l=e(b.length),c=k===a?l:Math.min(e(k),l),h=String(i);return f?f.call(b,h,c):b.slice(c-h.length,c)===h}})},function(b,e,a){var c=a(101),d=a(22);b.exports=function(a,b,e){if(c(b))throw TypeError("String#"+e+" doesn't accept regex!");return String(d(a))}},function(c,g,b){var d=b(16),e=b(18),f=b(31)("match");c.exports=function(b){var c;return d(b)&&((c=b[f])!==a?!!c:"RegExp"==e(b))}},function(a,d,b){var c=b(31)("match");a.exports=function(b){var a=/./;try{"/./"[b](a)}catch(d){try{return a[c]=!1,!"/./"[b](a)}catch(e){}}return!0}},function(f,g,b){var c=b(3),e=b(100),d="includes";c(c.P+c.F*b(102)(d),"String",{includes:function includes(b){return!!~e(this,b,d).indexOf(b,arguments.length>1?arguments[1]:a)}})},function(c,d,a){var b=a(3);b(b.P,"String",{repeat:a(105)})},function(b,e,a){var c=a(25),d=a(22);b.exports=function repeat(f){var b=String(d(this)),e="",a=c(f);if(0>a||a==1/0)throw RangeError("Count can't be negative");for(;a>0;(a>>>=1)&&(b+=b))1&a&&(e+=b);return e}},function(h,i,b){var c=b(3),f=b(27),g=b(100),d="startsWith",e=""[d];c(c.P+c.F*b(102)(d),"String",{startsWith:function startsWith(i){var b=g(this,i,d),j=arguments,c=f(Math.min(j.length>1?j[1]:a,b.length)),h=String(i);return e?e.call(b,h,c):b.slice(c,c+h.length)===h}})},function(d,e,b){var c=b(98)(!0);b(108)(String,"String",function(a){this._t=String(a),this._i=0},function(){var b,d=this._t,e=this._i;return e>=d.length?{value:a,done:!0}:(b=c(d,e),this._i+=b.length,{value:b,done:!1})})},function(o,r,a){var i=a(39),d=a(3),n=a(10),h=a(6),m=a(17),f=a(109),q=a(110),p=a(35),l=a(2).getProto,c=a(31)("iterator"),e=!([].keys&&"next"in[].keys()),j="@@iterator",k="keys",b="values",g=function(){return this};o.exports=function(B,v,u,F,s,E,A){q(u,v,F);var r,x,w=function(c){if(!e&&c in a)return a[c];switch(c){case k:return function keys(){return new u(this,c)};case b:return function values(){return new u(this,c)}}return function entries(){return new u(this,c)}},C=v+" Iterator",y=s==b,z=!1,a=B.prototype,t=a[c]||a[j]||s&&a[s],o=t||w(s);if(t){var D=l(o.call(new B));p(D,C,!0),!i&&m(a,j)&&h(D,c,g),y&&t.name!==b&&(z=!0,o=function values(){return t.call(this)})}if(i&&!A||!e&&!z&&a[c]||h(a,c,o),f[v]=o,f[C]=g,s)if(r={values:y?o:w(b),keys:E?o:w(k),entries:y?w("entries"):o},A)for(x in r)x in a||n(a,x,r[x]);else d(d.P+d.F*(e||z),v,r);return r}},function(a,b){a.exports={}},function(c,g,a){var d=a(2),e=a(7),f=a(35),b={};a(6)(b,a(31)("iterator"),function(){return this}),c.exports=function(a,c,g){a.prototype=d.create(b,{next:e(1,g)}),f(a,c+" Iterator")}},function(j,k,b){var d=b(12),c=b(3),e=b(21),f=b(112),g=b(113),h=b(27),i=b(114);c(c.S+c.F*!b(115)(function(a){Array.from(a)}),"Array",{from:function from(t){var n,c,r,m,j=e(t),l="function"==typeof this?this:Array,p=arguments,s=p.length,k=s>1?p[1]:a,q=k!==a,b=0,o=i(j);if(q&&(k=d(k,s>2?p[2]:a,2)),o==a||l==Array&&g(o))for(n=h(j.length),c=new l(n);n>b;b++)c[b]=q?k(j[b],b):j[b];else for(m=o.call(j),c=new l;!(r=m.next()).done;b++)c[b]=q?f(m,k,[r.value,b],!0):r.value;return c.length=b,c}})},function(c,e,d){var b=d(20);c.exports=function(d,e,c,g){try{return g?e(b(c)[0],c[1]):e(c)}catch(h){var f=d["return"];throw f!==a&&b(f.call(d)),h}}},function(c,g,b){var d=b(109),e=b(31)("iterator"),f=Array.prototype;c.exports=function(b){return b!==a&&(d.Array===b||f[e]===b)}},function(c,g,b){var d=b(47),e=b(31)("iterator"),f=b(109);c.exports=b(5).getIteratorMethod=function(b){return b!=a?b[e]||b["@@iterator"]||f[d(b)]:void 0}},function(d,f,e){var a=e(31)("iterator"),b=!1;try{var c=[7][a]();c["return"]=function(){b=!0},Array.from(c,function(){throw 2})}catch(g){}d.exports=function(f,g){if(!g&&!b)return!1;var d=!1;try{var c=[7],e=c[a]();e.next=function(){return{done:d=!0}},c[a]=function(){return e},f(c)}catch(h){}return d}},function(c,d,b){var a=b(3);a(a.S+a.F*b(9)(function(){function F(){}return!(Array.of.call(F)instanceof F)}),"Array",{of:function of(){for(var a=0,d=arguments,b=d.length,c=new("function"==typeof this?this:Array)(b);b>a;)c[a]=d[a++];return c.length=b,c}})},function(f,h,b){var d=b(118),c=b(119),e=b(109),g=b(23);f.exports=b(108)(Array,"Array",function(a,b){this._t=g(a),this._i=0,this._k=b},function(){var d=this._t,e=this._k,b=this._i++;return!d||b>=d.length?(this._t=a,c(1)):"keys"==e?c(0,b):"values"==e?c(0,d[b]):c(0,[b,d[b]])},"values"),e.Arguments=e.Array,d("keys"),d("values"),d("entries")},function(e,f,d){var b=d(31)("unscopables"),c=Array.prototype;c[b]==a&&d(6)(c,b,{}),e.exports=function(a){c[b][a]=!0}},function(a,b){a.exports=function(a,b){return{value:b,done:!!a}}},function(b,c,a){a(121)("Array")},function(c,g,a){var d=a(4),e=a(2),f=a(8),b=a(31)("species");c.exports=function(c){var a=d[c];f&&a&&!a[b]&&e.setDesc(a,b,{configurable:!0,get:function(){return this}})}},function(c,d,a){var b=a(3);b(b.P,"Array",{copyWithin:a(123)}),a(118)("copyWithin")},function(d,g,b){var e=b(21),c=b(26),f=b(27);d.exports=[].copyWithin||function copyWithin(m,n){var g=e(this),h=f(g.length),b=c(m,h),d=c(n,h),k=arguments,l=k.length>2?k[2]:a,i=Math.min((l===a?h:c(l,h))-d,h-b),j=1;for(b>d&&d+i>b&&(j=-1,d+=i-1,b+=i-1);i-->0;)d in g?g[b]=g[d]:delete g[b],b+=j,d+=j;return g}},function(c,d,a){var b=a(3);b(b.P,"Array",{fill:a(125)}),a(118)("fill")},function(d,g,b){var e=b(21),c=b(26),f=b(27);d.exports=[].fill||function fill(k){for(var b=e(this),d=f(b.length),g=arguments,h=g.length,i=c(h>1?g[1]:a,d),j=h>2?g[2]:a,l=j===a?d:c(j,d);l>i;)b[i++]=k;return b}},function(g,h,b){var c=b(3),f=b(28)(5),d="find",e=!0;d in[]&&Array(1)[d](function(){e=!1}),c(c.P+c.F*e,"Array",{find:function find(b){return f(this,b,arguments.length>1?arguments[1]:a)}}),b(118)(d)},function(g,h,b){var c=b(3),f=b(28)(6),d="findIndex",e=!0;d in[]&&Array(1)[d](function(){e=!1}),c(c.P+c.F*e,"Array",{findIndex:function findIndex(b){return f(this,b,arguments.length>1?arguments[1]:a)}}),b(118)(d)},function(n,m,c){var f=c(2),i=c(4),k=c(101),l=c(129),b=i.RegExp,d=b,j=b.prototype,e=/a/g,g=/a/g,h=new b(e)!==e;!c(8)||h&&!c(9)(function(){return g[c(31)("match")]=!1,b(e)!=e||b(g)==g||"/a/i"!=b(e,"i")})||(b=function RegExp(c,f){var e=k(c),g=f===a;return this instanceof b||!e||c.constructor!==b||!g?h?new d(e&&!g?c.source:c,f):d((e=c instanceof b)?c.source:c,e&&g?l.call(c):f):c},f.each.call(f.getNames(d),function(a){a in b||f.setDesc(b,a,{configurable:!0,get:function(){return d[a]},set:function(b){d[a]=b}})}),j.constructor=b,b.prototype=j,c(10)(i,"RegExp",b)),c(121)("RegExp")},function(a,d,b){var c=b(20);a.exports=function(){var b=c(this),a="";return b.global&&(a+="g"),b.ignoreCase&&(a+="i"),b.multiline&&(a+="m"),b.unicode&&(a+="u"),b.sticky&&(a+="y"),a}},function(c,d,a){var b=a(2);a(8)&&"g"!=/./g.flags&&b.setDesc(RegExp.prototype,"flags",{configurable:!0,get:a(129)})},function(c,d,b){b(132)("match",1,function(c,b){return function match(d){var e=c(this),f=d==a?a:d[b];return f!==a?f.call(d,e):new RegExp(d)[b](String(e))}})},function(b,h,a){var c=a(6),d=a(10),e=a(9),f=a(22),g=a(31);b.exports=function(a,i,j){var b=g(a),h=""[a];e(function(){var c={};return c[b]=function(){return 7},7!=""[a](c)})&&(d(String.prototype,a,j(f,b,h)),c(RegExp.prototype,b,2==i?function(a,b){return h.call(a,this,b)}:function(a){return h.call(a,this)}))}},function(c,d,b){b(132)("replace",2,function(b,c,d){return function replace(e,f){var g=b(this),h=e==a?a:e[c];return h!==a?h.call(e,g,f):d.call(String(g),e,f)}})},function(c,d,b){b(132)("search",1,function(c,b){return function search(d){var e=c(this),f=d==a?a:d[b];return f!==a?f.call(d,e):new RegExp(d)[b](String(e))}})},function(c,d,b){b(132)("split",2,function(b,c,d){return function split(e,f){var g=b(this),h=e==a?a:e[c];return h!==a?h.call(e,g,f):d.call(String(g),e,f)}})},function(K,J,b){var s,l=b(2),F=b(39),k=b(4),j=b(12),I=b(47),d=b(3),D=b(16),E=b(20),m=b(13),G=b(137),p=b(138),q=b(45).set,A=b(43),B=b(31)("species"),z=b(139),v=b(140),e="Promise",o=k.process,H="process"==I(o),c=k[e],i=function(){},r=function(d){var b,a=new c(i);return d&&(a.constructor=function(a){a(i,i)}),(b=c.resolve(a))["catch"](i),b===a},h=function(){function P2(b){var a=new c(b);return q(a,P2.prototype),a}var a=!1;try{if(a=c&&c.resolve&&r(),q(P2,c),
+P2.prototype=l.create(c.prototype,{constructor:{value:P2}}),P2.resolve(5).then(function(){})instanceof P2||(a=!1),a&&b(8)){var d=!1;c.resolve(l.setDesc({},"then",{get:function(){d=!0}})),a=d}}catch(e){a=!1}return a}(),C=function(a,b){return F&&a===c&&b===s?!0:A(a,b)},t=function(b){var c=E(b)[B];return c!=a?c:b},u=function(a){var b;return D(a)&&"function"==typeof(b=a.then)?b:!1},g=function(d){var b,c;this.promise=new d(function(d,e){if(b!==a||c!==a)throw TypeError("Bad Promise constructor");b=d,c=e}),this.resolve=m(b),this.reject=m(c)},w=function(a){try{a()}catch(b){return{error:b}}},n=function(b,d){if(!b.n){b.n=!0;var c=b.c;v(function(){for(var e=b.v,f=1==b.s,g=0,h=function(a){var c,h,g=f?a.ok:a.fail,i=a.resolve,d=a.reject;try{g?(f||(b.h=!0),c=g===!0?e:g(e),c===a.promise?d(TypeError("Promise-chain cycle")):(h=u(c))?h.call(c,i,d):i(c)):d(e)}catch(j){d(j)}};c.length>g;)h(c[g++]);c.length=0,b.n=!1,d&&setTimeout(function(){var f,c,d=b.p;y(d)&&(H?o.emit("unhandledRejection",e,d):(f=k.onunhandledrejection)?f({promise:d,reason:e}):(c=k.console)&&c.error&&c.error("Unhandled promise rejection",e)),b.a=a},1)})}},y=function(e){var a,b=e._d,c=b.a||b.c,d=0;if(b.h)return!1;for(;c.length>d;)if(a=c[d++],a.fail||!y(a.promise))return!1;return!0},f=function(b){var a=this;a.d||(a.d=!0,a=a.r||a,a.v=b,a.s=2,a.a=a.c.slice(),n(a,!0))},x=function(b){var c,a=this;if(!a.d){a.d=!0,a=a.r||a;try{if(a.p===b)throw TypeError("Promise can't be resolved itself");(c=u(b))?v(function(){var d={r:a,d:!1};try{c.call(b,j(x,d,1),j(f,d,1))}catch(e){f.call(d,e)}}):(a.v=b,a.s=1,n(a,!1))}catch(d){f.call({r:a,d:!1},d)}}};h||(c=function Promise(d){m(d);var b=this._d={p:G(this,c,e),c:[],a:a,s:0,d:!1,v:a,h:!1,n:!1};try{d(j(x,b,1),j(f,b,1))}catch(g){f.call(b,g)}},b(142)(c.prototype,{then:function then(d,e){var a=new g(z(this,c)),f=a.promise,b=this._d;return a.ok="function"==typeof d?d:!0,a.fail="function"==typeof e&&e,b.c.push(a),b.a&&b.a.push(a),b.s&&n(b,!1),f},"catch":function(b){return this.then(a,b)}})),d(d.G+d.W+d.F*!h,{Promise:c}),b(35)(c,e),b(121)(e),s=b(5)[e],d(d.S+d.F*!h,e,{reject:function reject(b){var a=new g(this),c=a.reject;return c(b),a.promise}}),d(d.S+d.F*(!h||r(!0)),e,{resolve:function resolve(a){if(a instanceof c&&C(a.constructor,this))return a;var b=new g(this),d=b.resolve;return d(a),b.promise}}),d(d.S+d.F*!(h&&b(115)(function(a){c.all(a)["catch"](function(){})})),e,{all:function all(h){var c=t(this),b=new g(c),d=b.resolve,e=b.reject,a=[],f=w(function(){p(h,!1,a.push,a);var b=a.length,f=Array(b);b?l.each.call(a,function(g,h){var a=!1;c.resolve(g).then(function(c){a||(a=!0,f[h]=c,--b||d(f))},e)}):d(f)});return f&&e(f.error),b.promise},race:function race(e){var b=t(this),a=new g(b),c=a.reject,d=w(function(){p(e,!1,function(d){b.resolve(d).then(a.resolve,c)})});return d&&c(d.error),a.promise}})},function(a,b){a.exports=function(a,b,c){if(!(a instanceof b))throw TypeError(c+": use the 'new' operator!");return a}},function(b,i,a){var c=a(12),d=a(112),e=a(113),f=a(20),g=a(27),h=a(114);b.exports=function(a,j,o,p){var n,b,k,l=h(a),m=c(o,p,j?2:1),i=0;if("function"!=typeof l)throw TypeError(a+" is not iterable!");if(e(l))for(n=g(a.length);n>i;i++)j?m(f(b=a[i])[0],b[1]):m(a[i]);else for(k=l.call(a);!(b=k.next()).done;)d(k,m,b.value,j)}},function(d,g,b){var c=b(20),e=b(13),f=b(31)("species");d.exports=function(g,h){var b,d=c(g).constructor;return d===a||(b=c(d)[f])==a?h:e(b)}},function(n,p,h){var b,f,g,c=h(4),o=h(141).set,k=c.MutationObserver||c.WebKitMutationObserver,d=c.process,i=c.Promise,j="process"==h(18)(d),e=function(){var e,c,g;for(j&&(e=d.domain)&&(d.domain=null,e.exit());b;)c=b.domain,g=b.fn,c&&c.enter(),g(),c&&c.exit(),b=b.next;f=a,e&&e.enter()};if(j)g=function(){d.nextTick(e)};else if(k){var m=1,l=document.createTextNode("");new k(e).observe(l,{characterData:!0}),g=function(){l.data=m=-m}}else g=i&&i.resolve?function(){i.resolve().then(e)}:function(){o.call(c,e)};n.exports=function asap(e){var c={fn:e,next:a,domain:j&&d.domain};f&&(f.next=c),b||(b=c,g()),f=c}},function(s,t,b){var c,g,f,k=b(12),r=b(19),n=b(14),p=b(15),a=b(4),l=a.process,h=a.setImmediate,i=a.clearImmediate,o=a.MessageChannel,j=0,d={},q="onreadystatechange",e=function(){var a=+this;if(d.hasOwnProperty(a)){var b=d[a];delete d[a],b()}},m=function(a){e.call(a.data)};h&&i||(h=function setImmediate(a){for(var b=[],e=1;arguments.length>e;)b.push(arguments[e++]);return d[++j]=function(){r("function"==typeof a?a:Function(a),b)},c(j),j},i=function clearImmediate(a){delete d[a]},"process"==b(18)(l)?c=function(a){l.nextTick(k(e,a,1))}:o?(g=new o,f=g.port2,g.port1.onmessage=m,c=k(f.postMessage,f,1)):a.addEventListener&&"function"==typeof postMessage&&!a.importScripts?(c=function(b){a.postMessage(b+"","*")},a.addEventListener("message",m,!1)):c=q in p("script")?function(a){n.appendChild(p("script"))[q]=function(){n.removeChild(this),e.call(a)}}:function(a){setTimeout(k(e,a,1),0)}),s.exports={set:h,clear:i}},function(a,d,b){var c=b(10);a.exports=function(a,b){for(var d in b)c(a,d,b[d]);return a}},function(d,e,c){var b=c(144);c(145)("Map",function(b){return function Map(){return b(this,arguments.length>0?arguments[0]:a)}},{get:function get(c){var a=b.getEntry(this,c);return a&&a.v},set:function set(a,c){return b.def(this,0===a?0:a,c)}},b,!0)},function(v,w,b){var j=b(2),m=b(6),o=b(142),n=b(12),p=b(137),r=b(22),t=b(138),l=b(108),d=b(119),f=b(11)("id"),k=b(17),h=b(16),q=b(121),i=b(8),s=Object.isExtensible||h,c=i?"_s":"size",u=0,g=function(a,b){if(!h(a))return"symbol"==typeof a?a:("string"==typeof a?"S":"P")+a;if(!k(a,f)){if(!s(a))return"F";if(!b)return"E";m(a,f,++u)}return"O"+a[f]},e=function(b,c){var a,d=g(c);if("F"!==d)return b._i[d];for(a=b._f;a;a=a.n)if(a.k==c)return a};v.exports={getConstructor:function(d,f,g,h){var b=d(function(d,e){p(d,b,f),d._i=j.create(null),d._f=a,d._l=a,d[c]=0,e!=a&&t(e,g,d[h],d)});return o(b.prototype,{clear:function clear(){for(var d=this,e=d._i,b=d._f;b;b=b.n)b.r=!0,b.p&&(b.p=b.p.n=a),delete e[b.i];d._f=d._l=a,d[c]=0},"delete":function(g){var b=this,a=e(b,g);if(a){var d=a.n,f=a.p;delete b._i[a.i],a.r=!0,f&&(f.n=d),d&&(d.p=f),b._f==a&&(b._f=d),b._l==a&&(b._l=f),b[c]--}return!!a},forEach:function forEach(c){for(var b,d=n(c,arguments.length>1?arguments[1]:a,3);b=b?b.n:this._f;)for(d(b.v,b.k,this);b&&b.r;)b=b.p},has:function has(a){return!!e(this,a)}}),i&&j.setDesc(b.prototype,"size",{get:function(){return r(this[c])}}),b},def:function(b,f,j){var h,i,d=e(b,f);return d?d.v=j:(b._l=d={i:i=g(f,!0),k:f,v:j,p:h=b._l,n:a,r:!1},b._f||(b._f=d),h&&(h.n=d),b[c]++,"F"!==i&&(b._i[i]=d)),b},getEntry:e,setStrong:function(e,b,c){l(e,b,function(b,c){this._t=b,this._k=c,this._l=a},function(){for(var c=this,e=c._k,b=c._l;b&&b.r;)b=b.p;return c._t&&(c._l=b=b?b.n:c._t._f)?"keys"==e?d(0,b.k):"values"==e?d(0,b.v):d(0,[b.k,b.v]):(c._t=a,d(1))},c?"entries":"values",!c,!0),q(b)}}},function(l,n,b){var k=b(4),c=b(3),g=b(10),f=b(142),i=b(138),j=b(137),d=b(16),e=b(9),h=b(115),m=b(35);l.exports=function(o,v,y,x,p,l){var t=k[o],b=t,s=p?"set":"add",n=b&&b.prototype,w={},r=function(b){var c=n[b];g(n,b,"delete"==b?function(a){return l&&!d(a)?!1:c.call(this,0===a?0:a)}:"has"==b?function has(a){return l&&!d(a)?!1:c.call(this,0===a?0:a)}:"get"==b?function get(b){return l&&!d(b)?a:c.call(this,0===b?0:b)}:"add"==b?function add(a){return c.call(this,0===a?0:a),this}:function set(a,b){return c.call(this,0===a?0:a,b),this})};if("function"==typeof b&&(l||n.forEach&&!e(function(){(new b).entries().next()}))){var u,q=new b,z=q[s](l?{}:-0,1)!=q,A=e(function(){q.has(1)}),B=h(function(a){new b(a)});B||(b=v(function(e,d){j(e,b,o);var c=new t;return d!=a&&i(d,p,c[s],c),c}),b.prototype=n,n.constructor=b),l||q.forEach(function(b,a){u=1/a===-(1/0)}),(A||u)&&(r("delete"),r("has"),p&&r("get")),(u||z)&&r(s),l&&n.clear&&delete n.clear}else b=x.getConstructor(v,o,p,s),f(b.prototype,y);return m(b,o),w[o]=b,c(c.G+c.W+c.F*(b!=t),w),l||x.setStrong(b,o,p),b}},function(d,e,b){var c=b(144);b(145)("Set",function(b){return function Set(){return b(this,arguments.length>0?arguments[0]:a)}},{add:function add(a){return c.def(this,a=0===a?0:a,a)}},c)},function(n,m,b){var l=b(2),k=b(10),c=b(148),d=b(16),j=b(17),i=c.frozenStore,h=c.WEAK,f=Object.isExtensible||d,e={},g=b(145)("WeakMap",function(b){return function WeakMap(){return b(this,arguments.length>0?arguments[0]:a)}},{get:function get(a){if(d(a)){if(!f(a))return i(this).get(a);if(j(a,h))return a[h][this._i]}},set:function set(a,b){return c.def(this,a,b)}},c,!0,!0);7!=(new g).set((Object.freeze||Object)(e),7).get(e)&&l.each.call(["delete","has","get","set"],function(a){var b=g.prototype,c=b[a];k(b,a,function(b,e){if(d(b)&&!f(b)){var g=i(this)[a](b,e);return"set"==a?this:g}return c.call(this,b,e)})})},function(s,t,b){var r=b(6),q=b(142),m=b(20),h=b(16),l=b(137),k=b(138),j=b(28),d=b(17),c=b(11)("weak"),g=Object.isExtensible||h,n=j(5),o=j(6),p=0,e=function(a){return a._l||(a._l=new i)},i=function(){this.a=[]},f=function(a,b){return n(a.a,function(a){return a[0]===b})};i.prototype={get:function(b){var a=f(this,b);return a?a[1]:void 0},has:function(a){return!!f(this,a)},set:function(a,b){var c=f(this,a);c?c[1]=b:this.a.push([a,b])},"delete":function(b){var a=o(this.a,function(a){return a[0]===b});return~a&&this.a.splice(a,1),!!~a}},s.exports={getConstructor:function(f,i,j,m){var b=f(function(c,d){l(c,b,i),c._i=p++,c._l=a,d!=a&&k(d,j,c[m],c)});return q(b.prototype,{"delete":function(a){return h(a)?g(a)?d(a,c)&&d(a[c],this._i)&&delete a[c][this._i]:e(this)["delete"](a):!1},has:function has(a){return h(a)?g(a)?d(a,c)&&d(a[c],this._i):e(this).has(a):!1}}),b},def:function(b,a,f){return g(m(a))?(d(a,c)||r(a,c,{}),a[c][b._i]=f):e(b).set(a,f),b},frozenStore:e,WEAK:c}},function(d,e,b){var c=b(148);b(145)("WeakSet",function(b){return function WeakSet(){return b(this,arguments.length>0?arguments[0]:a)}},{add:function add(a){return c.def(this,a,!0)}},c,!1,!0)},function(e,f,a){var b=a(3),c=Function.apply,d=a(20);b(b.S,"Reflect",{apply:function apply(a,b,e){return c.call(a,b,d(e))}})},function(h,i,a){var e=a(2),b=a(3),c=a(13),f=a(20),d=a(16),g=Function.bind||a(5).Function.prototype.bind;b(b.S+b.F*a(9)(function(){function F(){}return!(Reflect.construct(function(){},[],F)instanceof F)}),"Reflect",{construct:function construct(b,a){c(b),f(a);var i=arguments.length<3?b:c(arguments[2]);if(b==i){switch(a.length){case 0:return new b;case 1:return new b(a[0]);case 2:return new b(a[0],a[1]);case 3:return new b(a[0],a[1],a[2]);case 4:return new b(a[0],a[1],a[2],a[3])}var h=[null];return h.push.apply(h,a),new(g.apply(b,h))}var j=i.prototype,k=e.create(d(j)?j:Object.prototype),l=Function.apply.call(b,k,a);return d(l)?l:k}})},function(e,f,a){var c=a(2),b=a(3),d=a(20);b(b.S+b.F*a(9)(function(){Reflect.defineProperty(c.setDesc({},1,{value:1}),1,{value:2})}),"Reflect",{defineProperty:function defineProperty(a,b,e){d(a);try{return c.setDesc(a,b,e),!0}catch(f){return!1}}})},function(e,f,a){var b=a(3),c=a(2).getDesc,d=a(20);b(b.S,"Reflect",{deleteProperty:function deleteProperty(a,b){var e=c(d(a),b);return e&&!e.configurable?!1:delete a[b]}})},function(f,g,b){var c=b(3),e=b(20),d=function(a){this._t=e(a),this._i=0;var b,c=this._k=[];for(b in a)c.push(b)};b(110)(d,"Object",function(){var c,b=this,d=b._k;do if(b._i>=d.length)return{value:a,done:!0};while(!((c=d[b._i++])in b._t));return{value:c,done:!1}}),c(c.S,"Reflect",{enumerate:function enumerate(a){return new d(a)}})},function(h,i,b){function get(b,h){var d,j,i=arguments.length<3?b:arguments[2];return g(b)===i?b[h]:(d=c.getDesc(b,h))?e(d,"value")?d.value:d.get!==a?d.get.call(i):a:f(j=c.getProto(b))?get(j,h,i):void 0}var c=b(2),e=b(17),d=b(3),f=b(16),g=b(20);d(d.S,"Reflect",{get:get})},function(e,f,a){var c=a(2),b=a(3),d=a(20);b(b.S,"Reflect",{getOwnPropertyDescriptor:function getOwnPropertyDescriptor(a,b){return c.getDesc(d(a),b)}})},function(e,f,a){var b=a(3),c=a(2).getProto,d=a(20);b(b.S,"Reflect",{getPrototypeOf:function getPrototypeOf(a){return c(d(a))}})},function(c,d,b){var a=b(3);a(a.S,"Reflect",{has:function has(a,b){return b in a}})},function(e,f,a){var b=a(3),d=a(20),c=Object.isExtensible;b(b.S,"Reflect",{isExtensible:function isExtensible(a){return d(a),c?c(a):!0}})},function(c,d,a){var b=a(3);b(b.S,"Reflect",{ownKeys:a(161)})},function(d,f,a){var b=a(2),e=a(20),c=a(4).Reflect;d.exports=c&&c.ownKeys||function ownKeys(a){var c=b.getNames(e(a)),d=b.getSymbols;return d?c.concat(d(a)):c}},function(e,f,a){var b=a(3),d=a(20),c=Object.preventExtensions;b(b.S,"Reflect",{preventExtensions:function preventExtensions(a){d(a);try{return c&&c(a),!0}catch(b){return!1}}})},function(i,j,b){function set(j,i,k){var l,m,d=arguments.length<4?j:arguments[3],b=c.getDesc(h(j),i);if(!b){if(f(m=c.getProto(j)))return set(m,i,k,d);b=e(0)}return g(b,"value")?b.writable!==!1&&f(d)?(l=c.getDesc(d,i)||e(0),l.value=k,c.setDesc(d,i,l),!0):!1:b.set===a?!1:(b.set.call(d,k),!0)}var c=b(2),g=b(17),d=b(3),e=b(7),h=b(20),f=b(16);d(d.S,"Reflect",{set:set})},function(d,e,b){var c=b(3),a=b(45);a&&c(c.S,"Reflect",{setPrototypeOf:function setPrototypeOf(b,c){a.check(b,c);try{return a.set(b,c),!0}catch(d){return!1}}})},function(e,f,b){var c=b(3),d=b(33)(!0);c(c.P,"Array",{includes:function includes(b){return d(this,b,arguments.length>1?arguments[1]:a)}}),b(118)("includes")},function(d,e,a){var b=a(3),c=a(98)(!0);b(b.P,"String",{at:function at(a){return c(this,a)}})},function(e,f,b){var c=b(3),d=b(168);c(c.P,"String",{padLeft:function padLeft(b){return d(this,b,arguments.length>1?arguments[1]:a,!0)}})},function(c,g,b){var d=b(27),e=b(105),f=b(22);c.exports=function(l,m,i,n){var c=String(f(l)),j=c.length,g=i===a?" ":String(i),k=d(m);if(j>=k)return c;""==g&&(g=" ");var h=k-j,b=e.call(g,Math.ceil(h/g.length));return b.length>h&&(b=b.slice(0,h)),n?b+c:c+b}},function(e,f,b){var c=b(3),d=b(168);c(c.P,"String",{padRight:function padRight(b){return d(this,b,arguments.length>1?arguments[1]:a,!1)}})},function(b,c,a){a(63)("trimLeft",function(a){return function trimLeft(){return a(this,1)}})},function(b,c,a){a(63)("trimRight",function(a){return function trimRight(){return a(this,2)}})},function(d,e,a){var b=a(3),c=a(173)(/[\\^$*+?.()|[\]{}]/g,"\\$&");b(b.S,"RegExp",{escape:function escape(a){return c(a)}})},function(a,b){a.exports=function(b,a){var c=a===Object(a)?function(b){return a[b]}:a;return function(a){return String(a).replace(b,c)}}},function(g,h,a){var b=a(2),c=a(3),d=a(161),e=a(23),f=a(7);c(c.S,"Object",{getOwnPropertyDescriptors:function getOwnPropertyDescriptors(k){for(var a,g,h=e(k),l=b.setDesc,m=b.getDesc,i=d(h),c={},j=0;i.length>j;)g=m(h,a=i[j++]),a in c?l(c,a,f(0,g)):c[a]=g;return c}})},function(d,e,a){var b=a(3),c=a(176)(!1);b(b.S,"Object",{values:function values(a){return c(a)}})},function(c,f,a){var b=a(2),d=a(23),e=b.isEnum;c.exports=function(a){return function(j){for(var c,f=d(j),g=b.getKeys(f),k=g.length,h=0,i=[];k>h;)e.call(f,c=g[h++])&&i.push(a?[c,f[c]]:f[c]);return i}}},function(d,e,a){var b=a(3),c=a(176)(!0);b(b.S,"Object",{entries:function entries(a){return c(a)}})},function(c,d,a){var b=a(3);b(b.P,"Map",{toJSON:a(179)("Map")})},function(b,e,a){var c=a(138),d=a(47);b.exports=function(a){return function toJSON(){if(d(this)!=a)throw TypeError(a+"#toJSON isn't generic");var b=[];return c(this,!1,b.push,b),b}}},function(c,d,a){var b=a(3);b(b.P,"Set",{toJSON:a(179)("Set")})},function(d,e,b){var a=b(3),c=b(141);a(a.G+a.B,{setImmediate:c.set,clearImmediate:c.clear})},function(l,k,a){a(117);var g=a(4),j=a(6),c=a(109),b=a(31)("iterator"),h=g.NodeList,i=g.HTMLCollection,e=h&&h.prototype,d=i&&i.prototype,f=c.NodeList=c.HTMLCollection=c.Array;e&&!e[b]&&j(e,b,f),d&&!d[b]&&j(d,b,f)},function(i,j,a){var c=a(4),b=a(3),g=a(19),h=a(184),d=c.navigator,e=!!d&&/MSIE .\./.test(d.userAgent),f=function(a){return e?function(b,c){return a(g(h,[].slice.call(arguments,2),"function"==typeof b?b:Function(b)),c)}:a};b(b.G+b.B+b.F*e,{setTimeout:f(c.setTimeout),setInterval:f(c.setInterval)})},function(c,f,a){var d=a(185),b=a(19),e=a(13);c.exports=function(){for(var h=e(this),a=arguments.length,c=Array(a),f=0,i=d._,g=!1;a>f;)(c[f]=arguments[f++])===i&&(g=!0);return function(){var d,k=this,f=arguments,l=f.length,e=0,j=0;if(!g&&!l)return b(h,c,k);if(d=c.slice(),g)for(;a>e;e++)d[e]===i&&(d[e]=f[j++]);for(;l>j;)d.push(f[j++]);return b(h,d,k)}}},function(a,c,b){a.exports=b(4)},function(x,w,b){function Dict(b){var c=f.create(null);return b!=a&&(r(b)?q(b,!0,function(a,b){c[a]=b}):o(c,b)),c}function reduce(g,h,l){p(h);var a,c,b=i(g),e=k(b),j=e.length,f=0;if(arguments.length<3){if(!j)throw TypeError("Reduce of empty object with no initial value");a=b[e[f++]]}else a=Object(l);for(;j>f;)d(b,c=e[f++])&&(a=h(a,b[c],c,g));return a}function includes(c,b){return(b==b?j(c,b):l(c,function(a){return a!=a}))!==a}function get(a,b){return d(a,b)?a[b]:void 0}function set(a,b,c){return v&&b in Object?f.setDesc(a,b,t(0,c)):a[b]=c,a}function isDict(a){return u(a)&&f.getProto(a)===Dict.prototype}var f=b(2),n=b(12),e=b(3),t=b(7),o=b(41),j=b(36),p=b(13),q=b(138),r=b(187),s=b(110),g=b(119),u=b(16),i=b(23),v=b(8),d=b(17),k=f.getKeys,c=function(b){var e=1==b,c=4==b;return function(l,m,o){var f,h,g,p=n(m,o,3),k=i(l),j=e||7==b||2==b?new("function"==typeof this?this:Dict):a;for(f in k)if(d(k,f)&&(h=k[f],g=p(h,f,l),b))if(e)j[f]=g;else if(g)switch(b){case 2:j[f]=h;break;case 3:return!0;case 5:return h;case 6:return f;case 7:j[g[0]]=g[1]}else if(c)return!1;return 3==b||c?c:j}},l=c(6),h=function(a){return function(b){return new m(b,a)}},m=function(a,b){this._t=i(a),this._a=k(a),this._i=0,this._k=b};s(m,"Dict",function(){var c,b=this,e=b._t,f=b._a,h=b._k;do if(b._i>=f.length)return b._t=a,g(1);while(!d(e,c=f[b._i++]));return"keys"==h?g(0,c):"values"==h?g(0,e[c]):g(0,[c,e[c]])}),Dict.prototype=null,e(e.G+e.F,{Dict:Dict}),e(e.S,"Dict",{keys:h("keys"),values:h("values"),entries:h("entries"),forEach:c(0),map:c(1),filter:c(2),some:c(3),every:c(4),find:c(5),findKey:l,mapPairs:c(7),reduce:reduce,keyOf:j,includes:includes,has:d,get:get,set:set,isDict:isDict})},function(c,g,b){var d=b(47),e=b(31)("iterator"),f=b(109);c.exports=b(5).isIterable=function(c){var b=Object(c);return b[e]!==a||"@@iterator"in b||f.hasOwnProperty(d(b))}},function(b,e,a){var c=a(20),d=a(114);b.exports=a(5).getIterator=function(a){var b=d(a);if("function"!=typeof b)throw TypeError(a+" is not iterable!");return c(b.call(a))}},function(f,g,a){var c=a(4),d=a(5),b=a(3),e=a(184);b(b.G+b.F,{delay:function delay(a){return new(d.Promise||c.Promise)(function(b){setTimeout(e.call(b,!0),a)})}})},function(d,e,a){var c=a(185),b=a(3);a(5)._=c._=c._||{},b(b.P+b.F,"Function",{part:a(184)})},function(c,d,b){var a=b(3);a(a.S+a.F,"Object",{isObject:b(16)})},function(c,d,b){var a=b(3);a(a.S+a.F,"Object",{classof:b(47)})},function(d,e,b){var a=b(3),c=b(194);a(a.S+a.F,"Object",{define:c})},function(c,f,a){var b=a(2),d=a(161),e=a(23);c.exports=function define(a,c){for(var f,g=d(e(c)),i=g.length,h=0;i>h;)b.setDesc(a,f=g[h++],b.getDesc(c,f));return a}},function(e,f,a){var b=a(3),c=a(194),d=a(2).create;b(b.S+b.F,"Object",{make:function(a,b){return c(d(a),b)}})},function(c,d,b){b(108)(Number,"Number",function(a){this._l=+a,this._i=0},function(){var b=this._i++,c=!(this._l>b);return{done:c,value:c?a:b}})},function(d,e,b){var a=b(3),c=b(173)(/[&<>"']/g,{"&":"&","<":"<",">":">",'"':""","'":"'"});a(a.P+a.F,"String",{escapeHTML:function escapeHTML(){return c(this)}})},function(d,e,b){var a=b(3),c=b(173)(/&(?:amp|lt|gt|quot|apos);/g,{"&":"&","<":"<",">":">",""":'"',"'":"'"});a(a.P+a.F,"String",{unescapeHTML:function unescapeHTML(){return c(this)}})},function(g,h,a){var e=a(2),f=a(4),b=a(3),c={},d=!0;e.each.call("assert,clear,count,debug,dir,dirxml,error,exception,group,groupCollapsed,groupEnd,info,isIndependentlyComposed,log,markTimeline,profile,profileEnd,table,time,timeEnd,timeline,timelineEnd,timeStamp,trace,warn".split(","),function(a){c[a]=function(){var b=f.console;return d&&b&&b[a]?Function.apply.call(b[a],b,arguments):void 0}}),b(b.G+b.F,{log:a(41)(c.log,c,{enable:function(){d=!0},disable:function(){d=!1}})})},function(i,j,b){var g=b(2),e=b(3),h=b(12),f=b(5).Array||Array,c={},d=function(d,b){g.each.call(d.split(","),function(d){b==a&&d in f?c[d]=f[d]:d in[]&&(c[d]=h(Function.call,[][d],b))})};d("pop,reverse,shift,keys,values,entries",1),d("indexOf,every,some,forEach,map,filter,find,findIndex,includes",3),d("join,slice,concat,push,splice,unshift,sort,lastIndexOf,reduce,reduceRight,copyWithin,fill"),e(e.S,"Array",c)}]),"undefined"!=typeof module&&module.exports?module.exports=b:"function"==typeof define&&define.amd?define(function(){return b}):c.core=b}(1,1);
+//# sourceMappingURL=core.min.js.map
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/client/core.min.js.map b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/client/core.min.js.map
new file mode 100644
index 00000000..fab30694
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/client/core.min.js.map
@@ -0,0 +1 @@
+{"version":3,"sources":["core.js"],"names":["__e","__g","undefined","modules","__webpack_require__","moduleId","installedModules","exports","module","id","loaded","call","m","c","p","IE8_DOM_DEFINE","$","$export","DESCRIPTORS","createDesc","html","cel","has","cof","invoke","fails","anObject","aFunction","isObject","toObject","toIObject","toInteger","toIndex","toLength","IObject","IE_PROTO","createArrayMethod","arrayIndexOf","ObjectProto","Object","prototype","ArrayProto","Array","arraySlice","slice","arrayJoin","join","defineProperty","setDesc","getOwnDescriptor","getDesc","defineProperties","setDescs","factories","get","a","O","P","Attributes","e","TypeError","value","propertyIsEnumerable","Properties","keys","getKeys","length","i","S","F","getOwnPropertyDescriptor","keys1","split","keys2","concat","keysLen1","createDict","iframeDocument","iframe","gt","style","display","appendChild","src","contentWindow","document","open","write","close","createGetKeys","names","object","key","result","push","Empty","getPrototypeOf","getProto","constructor","getOwnPropertyNames","getNames","create","construct","len","args","n","Function","bind","that","fn","this","partArgs","arguments","bound","begin","end","klass","start","upTo","size","cloned","charAt","separator","isArray","createArrayReduce","isRight","callbackfn","memo","index","methodize","$fn","arg1","forEach","each","map","filter","some","every","reduce","reduceRight","indexOf","lastIndexOf","el","fromIndex","Math","min","now","Date","lz","num","toISOString","NaN","isFinite","RangeError","d","y","getUTCFullYear","getUTCMilliseconds","s","abs","getUTCMonth","getUTCDate","getUTCHours","getUTCMinutes","getUTCSeconds","$Object","isEnum","getSymbols","getOwnPropertySymbols","global","core","hide","redefine","ctx","PROTOTYPE","type","name","source","own","out","exp","IS_FORCED","IS_GLOBAL","G","IS_STATIC","IS_PROTO","IS_BIND","B","target","expProto","W","window","self","version","bitmap","enumerable","configurable","writable","exec","SRC","TO_STRING","$toString","TPL","inspectSource","it","val","safe","hasOwnProperty","String","toString","px","random","b","apply","documentElement","is","createElement","un","defined","ceil","floor","isNaN","max","asc","TYPE","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","NO_HOLES","$this","res","f","SPECIES","original","C","arg","store","uid","Symbol","SHARED","IS_INCLUDES","$fails","shared","setToStringTag","wks","keyOf","$names","enumKeys","_create","$Symbol","$JSON","JSON","_stringify","stringify","setter","HIDDEN","SymbolRegistry","AllSymbols","useNative","setSymbolDesc","D","protoDesc","wrap","tag","sym","_k","set","isSymbol","$defineProperty","$defineProperties","l","$create","$propertyIsEnumerable","E","$getOwnPropertyDescriptor","$getOwnPropertyNames","$getOwnPropertySymbols","$stringify","replacer","$replacer","$$","buggyJSON","symbolStatics","for","keyFor","useSetter","useSimple","def","TAG","stat","windowNames","getWindowNames","symbols","assign","A","K","k","T","$$len","j","x","setPrototypeOf","check","proto","test","buggy","__proto__","classof","ARG","callee","$freeze","freeze","KEY","$seal","seal","$preventExtensions","preventExtensions","$isFrozen","isFrozen","$isSealed","isSealed","$isExtensible","isExtensible","$getPrototypeOf","$keys","FProto","nameRE","NAME","match","HAS_INSTANCE","FunctionProto","toPrimitive","$trim","trim","NUMBER","$Number","Base","BROKEN_COF","TRIM","toNumber","argument","third","radix","maxCode","first","charCodeAt","code","digits","parseInt","Number","valueOf","spaces","space","non","ltrim","RegExp","rtrim","exporter","string","replace","EPSILON","pow","_isFinite","isInteger","number","isSafeInteger","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","parseFloat","log1p","sqrt","$acosh","acosh","MAX_VALUE","log","LN2","asinh","atanh","sign","cbrt","clz32","LOG2E","cosh","expm1","EPSILON32","MAX32","MIN32","roundTiesToEven","fround","$abs","$sign","Infinity","hypot","value1","value2","div","sum","larg","$imul","imul","UINT16","xn","yn","xl","yl","log10","LN10","log2","sinh","tanh","trunc","fromCharCode","$fromCodePoint","fromCodePoint","raw","callSite","tpl","$at","codePointAt","pos","context","ENDS_WITH","$endsWith","endsWith","searchString","endPosition","search","isRegExp","MATCH","re","INCLUDES","includes","repeat","count","str","STARTS_WITH","$startsWith","startsWith","iterated","_t","_i","point","done","LIBRARY","Iterators","$iterCreate","ITERATOR","BUGGY","FF_ITERATOR","KEYS","VALUES","returnThis","Constructor","next","DEFAULT","IS_SET","FORCED","methods","getMethod","kind","values","entries","DEF_VALUES","VALUES_BUG","$native","$default","IteratorPrototype","descriptor","isArrayIter","getIterFn","iter","from","arrayLike","step","iterator","mapfn","mapping","iterFn","ret","getIteratorMethod","SAFE_CLOSING","riter","skipClosing","arr","of","addToUnscopables","Arguments","UNSCOPABLES","copyWithin","to","inc","fill","endPos","$find","forced","find","findIndex","$flags","$RegExp","re1","re2","CORRECT_NEW","piRE","fiU","ignoreCase","multiline","unicode","sticky","flags","regexp","SYMBOL","REPLACE","$replace","searchValue","replaceValue","SEARCH","SPLIT","$split","limit","Wrapper","strictNew","forOf","setProto","same","speciesConstructor","asap","PROMISE","process","isNode","empty","testResolve","sub","promise","resolve","USE_NATIVE","P2","works","then","thenableThenGotten","sameConstructor","getConstructor","isThenable","PromiseCapability","reject","$$resolve","$$reject","perform","error","notify","record","isReject","chain","v","ok","run","reaction","handler","fail","h","setTimeout","console","isUnhandled","emit","onunhandledrejection","reason","_d","$reject","r","$resolve","wrapper","Promise","executor","err","onFulfilled","onRejected","catch","capability","all","iterable","abrupt","remaining","results","alreadyCalled","race","head","last","macrotask","Observer","MutationObserver","WebKitMutationObserver","flush","parent","domain","exit","enter","nextTick","toggle","node","createTextNode","observe","characterData","data","task","defer","channel","port","setTask","setImmediate","clearTask","clearImmediate","MessageChannel","counter","queue","ONREADYSTATECHANGE","listner","event","port2","port1","onmessage","postMessage","addEventListener","importScripts","removeChild","clear","strong","Map","entry","getEntry","redefineAll","$iterDefine","ID","$has","setSpecies","SIZE","fastKey","_f","ADDER","_l","delete","prev","setStrong","$iterDetect","common","IS_WEAK","fixMethod","add","BUGGY_ZERO","instance","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","Set","weak","frozenStore","WEAK","tmp","$WeakMap","WeakMap","method","arrayFind","arrayFindIndex","FrozenStore","findFrozen","splice","WeakSet","_apply","thisArgument","argumentsList","Reflect","Target","newTarget","$args","propertyKey","attributes","deleteProperty","desc","Enumerate","enumerate","receiver","ownKeys","V","existingDescriptor","ownDesc","$includes","at","$pad","padLeft","maxLength","fillString","left","stringLength","fillStr","intMaxLength","fillLen","stringFiller","padRight","trimLeft","trimRight","$re","escape","regExp","part","getOwnPropertyDescriptors","$values","isEntries","$entries","toJSON","$task","NL","NodeList","HTC","HTMLCollection","NLProto","HTCProto","ArrayValues","partial","navigator","MSIE","userAgent","time","setInterval","path","pargs","_","holder","Dict","dict","isIterable","init","findKey","isDict","createDictMethod","createDictIter","DictIterator","_a","mapPairs","getIterator","delay","define","mixin","make","&","<",">","\"","'","escapeHTML","&","<",">",""","'","unescapeHTML","enabled","$console","enable","disable","$ctx","$Array","statics","setStatics","amd"],"mappings":"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","file":"core.min.js"}
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/client/library.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/client/library.js
new file mode 100644
index 00000000..65385ef0
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/client/library.js
@@ -0,0 +1,4550 @@
+/**
+ * core-js 1.2.7
+ * https://github.com/zloirock/core-js
+ * License: http://rock.mit-license.org
+ * © 2016 Denis Pushkarev
+ */
+!function(__e, __g, undefined){
+'use strict';
+/******/ (function(modules) { // webpackBootstrap
+/******/ // The module cache
+/******/ var installedModules = {};
+
+/******/ // The require function
+/******/ function __webpack_require__(moduleId) {
+
+/******/ // Check if module is in cache
+/******/ if(installedModules[moduleId])
+/******/ return installedModules[moduleId].exports;
+
+/******/ // Create a new module (and put it into the cache)
+/******/ var module = installedModules[moduleId] = {
+/******/ exports: {},
+/******/ id: moduleId,
+/******/ loaded: false
+/******/ };
+
+/******/ // Execute the module function
+/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
+
+/******/ // Flag the module as loaded
+/******/ module.loaded = true;
+
+/******/ // Return the exports of the module
+/******/ return module.exports;
+/******/ }
+
+
+/******/ // expose the modules object (__webpack_modules__)
+/******/ __webpack_require__.m = modules;
+
+/******/ // expose the module cache
+/******/ __webpack_require__.c = installedModules;
+
+/******/ // __webpack_public_path__
+/******/ __webpack_require__.p = "";
+
+/******/ // Load entry module and return exports
+/******/ return __webpack_require__(0);
+/******/ })
+/************************************************************************/
+/******/ ([
+/* 0 */
+/***/ function(module, exports, __webpack_require__) {
+
+ __webpack_require__(1);
+ __webpack_require__(32);
+ __webpack_require__(40);
+ __webpack_require__(42);
+ __webpack_require__(44);
+ __webpack_require__(46);
+ __webpack_require__(48);
+ __webpack_require__(49);
+ __webpack_require__(50);
+ __webpack_require__(51);
+ __webpack_require__(52);
+ __webpack_require__(53);
+ __webpack_require__(54);
+ __webpack_require__(55);
+ __webpack_require__(56);
+ __webpack_require__(57);
+ __webpack_require__(58);
+ __webpack_require__(59);
+ __webpack_require__(60);
+ __webpack_require__(62);
+ __webpack_require__(63);
+ __webpack_require__(64);
+ __webpack_require__(65);
+ __webpack_require__(66);
+ __webpack_require__(67);
+ __webpack_require__(68);
+ __webpack_require__(70);
+ __webpack_require__(71);
+ __webpack_require__(72);
+ __webpack_require__(74);
+ __webpack_require__(75);
+ __webpack_require__(76);
+ __webpack_require__(78);
+ __webpack_require__(79);
+ __webpack_require__(80);
+ __webpack_require__(81);
+ __webpack_require__(82);
+ __webpack_require__(83);
+ __webpack_require__(84);
+ __webpack_require__(85);
+ __webpack_require__(86);
+ __webpack_require__(87);
+ __webpack_require__(88);
+ __webpack_require__(89);
+ __webpack_require__(90);
+ __webpack_require__(92);
+ __webpack_require__(94);
+ __webpack_require__(98);
+ __webpack_require__(99);
+ __webpack_require__(101);
+ __webpack_require__(102);
+ __webpack_require__(106);
+ __webpack_require__(112);
+ __webpack_require__(113);
+ __webpack_require__(116);
+ __webpack_require__(118);
+ __webpack_require__(120);
+ __webpack_require__(122);
+ __webpack_require__(123);
+ __webpack_require__(124);
+ __webpack_require__(131);
+ __webpack_require__(134);
+ __webpack_require__(135);
+ __webpack_require__(137);
+ __webpack_require__(138);
+ __webpack_require__(139);
+ __webpack_require__(140);
+ __webpack_require__(141);
+ __webpack_require__(142);
+ __webpack_require__(143);
+ __webpack_require__(144);
+ __webpack_require__(145);
+ __webpack_require__(146);
+ __webpack_require__(147);
+ __webpack_require__(148);
+ __webpack_require__(150);
+ __webpack_require__(151);
+ __webpack_require__(152);
+ __webpack_require__(153);
+ __webpack_require__(154);
+ __webpack_require__(155);
+ __webpack_require__(157);
+ __webpack_require__(158);
+ __webpack_require__(159);
+ __webpack_require__(160);
+ __webpack_require__(162);
+ __webpack_require__(163);
+ __webpack_require__(165);
+ __webpack_require__(166);
+ __webpack_require__(168);
+ __webpack_require__(169);
+ __webpack_require__(170);
+ __webpack_require__(171);
+ __webpack_require__(174);
+ __webpack_require__(109);
+ __webpack_require__(176);
+ __webpack_require__(175);
+ __webpack_require__(177);
+ __webpack_require__(178);
+ __webpack_require__(179);
+ __webpack_require__(180);
+ __webpack_require__(181);
+ __webpack_require__(183);
+ __webpack_require__(184);
+ __webpack_require__(185);
+ __webpack_require__(186);
+ __webpack_require__(187);
+ module.exports = __webpack_require__(188);
+
+
+/***/ },
+/* 1 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $ = __webpack_require__(2)
+ , $export = __webpack_require__(3)
+ , DESCRIPTORS = __webpack_require__(8)
+ , createDesc = __webpack_require__(10)
+ , html = __webpack_require__(11)
+ , cel = __webpack_require__(12)
+ , has = __webpack_require__(14)
+ , cof = __webpack_require__(15)
+ , invoke = __webpack_require__(16)
+ , fails = __webpack_require__(9)
+ , anObject = __webpack_require__(17)
+ , aFunction = __webpack_require__(7)
+ , isObject = __webpack_require__(13)
+ , toObject = __webpack_require__(18)
+ , toIObject = __webpack_require__(20)
+ , toInteger = __webpack_require__(22)
+ , toIndex = __webpack_require__(23)
+ , toLength = __webpack_require__(24)
+ , IObject = __webpack_require__(21)
+ , IE_PROTO = __webpack_require__(25)('__proto__')
+ , createArrayMethod = __webpack_require__(26)
+ , arrayIndexOf = __webpack_require__(31)(false)
+ , ObjectProto = Object.prototype
+ , ArrayProto = Array.prototype
+ , arraySlice = ArrayProto.slice
+ , arrayJoin = ArrayProto.join
+ , defineProperty = $.setDesc
+ , getOwnDescriptor = $.getDesc
+ , defineProperties = $.setDescs
+ , factories = {}
+ , IE8_DOM_DEFINE;
+
+ if(!DESCRIPTORS){
+ IE8_DOM_DEFINE = !fails(function(){
+ return defineProperty(cel('div'), 'a', {get: function(){ return 7; }}).a != 7;
+ });
+ $.setDesc = function(O, P, Attributes){
+ if(IE8_DOM_DEFINE)try {
+ return defineProperty(O, P, Attributes);
+ } catch(e){ /* empty */ }
+ if('get' in Attributes || 'set' in Attributes)throw TypeError('Accessors not supported!');
+ if('value' in Attributes)anObject(O)[P] = Attributes.value;
+ return O;
+ };
+ $.getDesc = function(O, P){
+ if(IE8_DOM_DEFINE)try {
+ return getOwnDescriptor(O, P);
+ } catch(e){ /* empty */ }
+ if(has(O, P))return createDesc(!ObjectProto.propertyIsEnumerable.call(O, P), O[P]);
+ };
+ $.setDescs = defineProperties = function(O, Properties){
+ anObject(O);
+ var keys = $.getKeys(Properties)
+ , length = keys.length
+ , i = 0
+ , P;
+ while(length > i)$.setDesc(O, P = keys[i++], Properties[P]);
+ return O;
+ };
+ }
+ $export($export.S + $export.F * !DESCRIPTORS, 'Object', {
+ // 19.1.2.6 / 15.2.3.3 Object.getOwnPropertyDescriptor(O, P)
+ getOwnPropertyDescriptor: $.getDesc,
+ // 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)
+ defineProperty: $.setDesc,
+ // 19.1.2.3 / 15.2.3.7 Object.defineProperties(O, Properties)
+ defineProperties: defineProperties
+ });
+
+ // IE 8- don't enum bug keys
+ var keys1 = ('constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,' +
+ 'toLocaleString,toString,valueOf').split(',')
+ // Additional keys for getOwnPropertyNames
+ , keys2 = keys1.concat('length', 'prototype')
+ , keysLen1 = keys1.length;
+
+ // Create object with `null` prototype: use iframe Object with cleared prototype
+ var createDict = function(){
+ // Thrash, waste and sodomy: IE GC bug
+ var iframe = cel('iframe')
+ , i = keysLen1
+ , gt = '>'
+ , iframeDocument;
+ iframe.style.display = 'none';
+ html.appendChild(iframe);
+ iframe.src = 'javascript:'; // eslint-disable-line no-script-url
+ // createDict = iframe.contentWindow.Object;
+ // html.removeChild(iframe);
+ iframeDocument = iframe.contentWindow.document;
+ iframeDocument.open();
+ iframeDocument.write(' i)if(has(O, key = names[i++])){
+ ~arrayIndexOf(result, key) || result.push(key);
+ }
+ return result;
+ };
+ };
+ var Empty = function(){};
+ $export($export.S, 'Object', {
+ // 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
+ getPrototypeOf: $.getProto = $.getProto || function(O){
+ O = toObject(O);
+ if(has(O, IE_PROTO))return O[IE_PROTO];
+ if(typeof O.constructor == 'function' && O instanceof O.constructor){
+ return O.constructor.prototype;
+ } return O instanceof Object ? ObjectProto : null;
+ },
+ // 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
+ getOwnPropertyNames: $.getNames = $.getNames || createGetKeys(keys2, keys2.length, true),
+ // 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
+ create: $.create = $.create || function(O, /*?*/Properties){
+ var result;
+ if(O !== null){
+ Empty.prototype = anObject(O);
+ result = new Empty();
+ Empty.prototype = null;
+ // add "__proto__" for Object.getPrototypeOf shim
+ result[IE_PROTO] = O;
+ } else result = createDict();
+ return Properties === undefined ? result : defineProperties(result, Properties);
+ },
+ // 19.1.2.14 / 15.2.3.14 Object.keys(O)
+ keys: $.getKeys = $.getKeys || createGetKeys(keys1, keysLen1, false)
+ });
+
+ var construct = function(F, len, args){
+ if(!(len in factories)){
+ for(var n = [], i = 0; i < len; i++)n[i] = 'a[' + i + ']';
+ factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')');
+ }
+ return factories[len](F, args);
+ };
+
+ // 19.2.3.2 / 15.3.4.5 Function.prototype.bind(thisArg, args...)
+ $export($export.P, 'Function', {
+ bind: function bind(that /*, args... */){
+ var fn = aFunction(this)
+ , partArgs = arraySlice.call(arguments, 1);
+ var bound = function(/* args... */){
+ var args = partArgs.concat(arraySlice.call(arguments));
+ return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that);
+ };
+ if(isObject(fn.prototype))bound.prototype = fn.prototype;
+ return bound;
+ }
+ });
+
+ // fallback for not array-like ES3 strings and DOM objects
+ $export($export.P + $export.F * fails(function(){
+ if(html)arraySlice.call(html);
+ }), 'Array', {
+ slice: function(begin, end){
+ var len = toLength(this.length)
+ , klass = cof(this);
+ end = end === undefined ? len : end;
+ if(klass == 'Array')return arraySlice.call(this, begin, end);
+ var start = toIndex(begin, len)
+ , upTo = toIndex(end, len)
+ , size = toLength(upTo - start)
+ , cloned = Array(size)
+ , i = 0;
+ for(; i < size; i++)cloned[i] = klass == 'String'
+ ? this.charAt(start + i)
+ : this[start + i];
+ return cloned;
+ }
+ });
+ $export($export.P + $export.F * (IObject != Object), 'Array', {
+ join: function join(separator){
+ return arrayJoin.call(IObject(this), separator === undefined ? ',' : separator);
+ }
+ });
+
+ // 22.1.2.2 / 15.4.3.2 Array.isArray(arg)
+ $export($export.S, 'Array', {isArray: __webpack_require__(28)});
+
+ var createArrayReduce = function(isRight){
+ return function(callbackfn, memo){
+ aFunction(callbackfn);
+ var O = IObject(this)
+ , length = toLength(O.length)
+ , index = isRight ? length - 1 : 0
+ , i = isRight ? -1 : 1;
+ if(arguments.length < 2)for(;;){
+ if(index in O){
+ memo = O[index];
+ index += i;
+ break;
+ }
+ index += i;
+ if(isRight ? index < 0 : length <= index){
+ throw TypeError('Reduce of empty array with no initial value');
+ }
+ }
+ for(;isRight ? index >= 0 : length > index; index += i)if(index in O){
+ memo = callbackfn(memo, O[index], index, this);
+ }
+ return memo;
+ };
+ };
+
+ var methodize = function($fn){
+ return function(arg1/*, arg2 = undefined */){
+ return $fn(this, arg1, arguments[1]);
+ };
+ };
+
+ $export($export.P, 'Array', {
+ // 22.1.3.10 / 15.4.4.18 Array.prototype.forEach(callbackfn [, thisArg])
+ forEach: $.each = $.each || methodize(createArrayMethod(0)),
+ // 22.1.3.15 / 15.4.4.19 Array.prototype.map(callbackfn [, thisArg])
+ map: methodize(createArrayMethod(1)),
+ // 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg])
+ filter: methodize(createArrayMethod(2)),
+ // 22.1.3.23 / 15.4.4.17 Array.prototype.some(callbackfn [, thisArg])
+ some: methodize(createArrayMethod(3)),
+ // 22.1.3.5 / 15.4.4.16 Array.prototype.every(callbackfn [, thisArg])
+ every: methodize(createArrayMethod(4)),
+ // 22.1.3.18 / 15.4.4.21 Array.prototype.reduce(callbackfn [, initialValue])
+ reduce: createArrayReduce(false),
+ // 22.1.3.19 / 15.4.4.22 Array.prototype.reduceRight(callbackfn [, initialValue])
+ reduceRight: createArrayReduce(true),
+ // 22.1.3.11 / 15.4.4.14 Array.prototype.indexOf(searchElement [, fromIndex])
+ indexOf: methodize(arrayIndexOf),
+ // 22.1.3.14 / 15.4.4.15 Array.prototype.lastIndexOf(searchElement [, fromIndex])
+ lastIndexOf: function(el, fromIndex /* = @[*-1] */){
+ var O = toIObject(this)
+ , length = toLength(O.length)
+ , index = length - 1;
+ if(arguments.length > 1)index = Math.min(index, toInteger(fromIndex));
+ if(index < 0)index = toLength(length + index);
+ for(;index >= 0; index--)if(index in O)if(O[index] === el)return index;
+ return -1;
+ }
+ });
+
+ // 20.3.3.1 / 15.9.4.4 Date.now()
+ $export($export.S, 'Date', {now: function(){ return +new Date; }});
+
+ var lz = function(num){
+ return num > 9 ? num : '0' + num;
+ };
+
+ // 20.3.4.36 / 15.9.5.43 Date.prototype.toISOString()
+ // PhantomJS / old WebKit has a broken implementations
+ $export($export.P + $export.F * (fails(function(){
+ return new Date(-5e13 - 1).toISOString() != '0385-07-25T07:06:39.999Z';
+ }) || !fails(function(){
+ new Date(NaN).toISOString();
+ })), 'Date', {
+ toISOString: function toISOString(){
+ if(!isFinite(this))throw RangeError('Invalid time value');
+ var d = this
+ , y = d.getUTCFullYear()
+ , m = d.getUTCMilliseconds()
+ , s = y < 0 ? '-' : y > 9999 ? '+' : '';
+ return s + ('00000' + Math.abs(y)).slice(s ? -6 : -4) +
+ '-' + lz(d.getUTCMonth() + 1) + '-' + lz(d.getUTCDate()) +
+ 'T' + lz(d.getUTCHours()) + ':' + lz(d.getUTCMinutes()) +
+ ':' + lz(d.getUTCSeconds()) + '.' + (m > 99 ? m : '0' + lz(m)) + 'Z';
+ }
+ });
+
+/***/ },
+/* 2 */
+/***/ function(module, exports) {
+
+ var $Object = Object;
+ module.exports = {
+ create: $Object.create,
+ getProto: $Object.getPrototypeOf,
+ isEnum: {}.propertyIsEnumerable,
+ getDesc: $Object.getOwnPropertyDescriptor,
+ setDesc: $Object.defineProperty,
+ setDescs: $Object.defineProperties,
+ getKeys: $Object.keys,
+ getNames: $Object.getOwnPropertyNames,
+ getSymbols: $Object.getOwnPropertySymbols,
+ each: [].forEach
+ };
+
+/***/ },
+/* 3 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var global = __webpack_require__(4)
+ , core = __webpack_require__(5)
+ , ctx = __webpack_require__(6)
+ , PROTOTYPE = 'prototype';
+
+ var $export = function(type, name, source){
+ var IS_FORCED = type & $export.F
+ , IS_GLOBAL = type & $export.G
+ , IS_STATIC = type & $export.S
+ , IS_PROTO = type & $export.P
+ , IS_BIND = type & $export.B
+ , IS_WRAP = type & $export.W
+ , exports = IS_GLOBAL ? core : core[name] || (core[name] = {})
+ , target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE]
+ , key, own, out;
+ if(IS_GLOBAL)source = name;
+ for(key in source){
+ // contains in native
+ own = !IS_FORCED && target && key in target;
+ if(own && key in exports)continue;
+ // export native or passed
+ out = own ? target[key] : source[key];
+ // prevent global pollution for namespaces
+ exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]
+ // bind timers to global for call from export context
+ : IS_BIND && own ? ctx(out, global)
+ // wrap global constructors for prevent change them in library
+ : IS_WRAP && target[key] == out ? (function(C){
+ var F = function(param){
+ return this instanceof C ? new C(param) : C(param);
+ };
+ F[PROTOTYPE] = C[PROTOTYPE];
+ return F;
+ // make static versions for prototype methods
+ })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
+ if(IS_PROTO)(exports[PROTOTYPE] || (exports[PROTOTYPE] = {}))[key] = out;
+ }
+ };
+ // type bitmap
+ $export.F = 1; // forced
+ $export.G = 2; // global
+ $export.S = 4; // static
+ $export.P = 8; // proto
+ $export.B = 16; // bind
+ $export.W = 32; // wrap
+ module.exports = $export;
+
+/***/ },
+/* 4 */
+/***/ function(module, exports) {
+
+ // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
+ var global = module.exports = typeof window != 'undefined' && window.Math == Math
+ ? window : typeof self != 'undefined' && self.Math == Math ? self : Function('return this')();
+ if(typeof __g == 'number')__g = global; // eslint-disable-line no-undef
+
+/***/ },
+/* 5 */
+/***/ function(module, exports) {
+
+ var core = module.exports = {version: '1.2.6'};
+ if(typeof __e == 'number')__e = core; // eslint-disable-line no-undef
+
+/***/ },
+/* 6 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // optional / simple context binding
+ var aFunction = __webpack_require__(7);
+ module.exports = function(fn, that, length){
+ aFunction(fn);
+ if(that === undefined)return fn;
+ switch(length){
+ case 1: return function(a){
+ return fn.call(that, a);
+ };
+ case 2: return function(a, b){
+ return fn.call(that, a, b);
+ };
+ case 3: return function(a, b, c){
+ return fn.call(that, a, b, c);
+ };
+ }
+ return function(/* ...args */){
+ return fn.apply(that, arguments);
+ };
+ };
+
+/***/ },
+/* 7 */
+/***/ function(module, exports) {
+
+ module.exports = function(it){
+ if(typeof it != 'function')throw TypeError(it + ' is not a function!');
+ return it;
+ };
+
+/***/ },
+/* 8 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // Thank's IE8 for his funny defineProperty
+ module.exports = !__webpack_require__(9)(function(){
+ return Object.defineProperty({}, 'a', {get: function(){ return 7; }}).a != 7;
+ });
+
+/***/ },
+/* 9 */
+/***/ function(module, exports) {
+
+ module.exports = function(exec){
+ try {
+ return !!exec();
+ } catch(e){
+ return true;
+ }
+ };
+
+/***/ },
+/* 10 */
+/***/ function(module, exports) {
+
+ module.exports = function(bitmap, value){
+ return {
+ enumerable : !(bitmap & 1),
+ configurable: !(bitmap & 2),
+ writable : !(bitmap & 4),
+ value : value
+ };
+ };
+
+/***/ },
+/* 11 */
+/***/ function(module, exports, __webpack_require__) {
+
+ module.exports = __webpack_require__(4).document && document.documentElement;
+
+/***/ },
+/* 12 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var isObject = __webpack_require__(13)
+ , document = __webpack_require__(4).document
+ // in old IE typeof document.createElement is 'object'
+ , is = isObject(document) && isObject(document.createElement);
+ module.exports = function(it){
+ return is ? document.createElement(it) : {};
+ };
+
+/***/ },
+/* 13 */
+/***/ function(module, exports) {
+
+ module.exports = function(it){
+ return typeof it === 'object' ? it !== null : typeof it === 'function';
+ };
+
+/***/ },
+/* 14 */
+/***/ function(module, exports) {
+
+ var hasOwnProperty = {}.hasOwnProperty;
+ module.exports = function(it, key){
+ return hasOwnProperty.call(it, key);
+ };
+
+/***/ },
+/* 15 */
+/***/ function(module, exports) {
+
+ var toString = {}.toString;
+
+ module.exports = function(it){
+ return toString.call(it).slice(8, -1);
+ };
+
+/***/ },
+/* 16 */
+/***/ function(module, exports) {
+
+ // fast apply, http://jsperf.lnkit.com/fast-apply/5
+ module.exports = function(fn, args, that){
+ var un = that === undefined;
+ switch(args.length){
+ case 0: return un ? fn()
+ : fn.call(that);
+ case 1: return un ? fn(args[0])
+ : fn.call(that, args[0]);
+ case 2: return un ? fn(args[0], args[1])
+ : fn.call(that, args[0], args[1]);
+ case 3: return un ? fn(args[0], args[1], args[2])
+ : fn.call(that, args[0], args[1], args[2]);
+ case 4: return un ? fn(args[0], args[1], args[2], args[3])
+ : fn.call(that, args[0], args[1], args[2], args[3]);
+ } return fn.apply(that, args);
+ };
+
+/***/ },
+/* 17 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var isObject = __webpack_require__(13);
+ module.exports = function(it){
+ if(!isObject(it))throw TypeError(it + ' is not an object!');
+ return it;
+ };
+
+/***/ },
+/* 18 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 7.1.13 ToObject(argument)
+ var defined = __webpack_require__(19);
+ module.exports = function(it){
+ return Object(defined(it));
+ };
+
+/***/ },
+/* 19 */
+/***/ function(module, exports) {
+
+ // 7.2.1 RequireObjectCoercible(argument)
+ module.exports = function(it){
+ if(it == undefined)throw TypeError("Can't call method on " + it);
+ return it;
+ };
+
+/***/ },
+/* 20 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // to indexed object, toObject with fallback for non-array-like ES3 strings
+ var IObject = __webpack_require__(21)
+ , defined = __webpack_require__(19);
+ module.exports = function(it){
+ return IObject(defined(it));
+ };
+
+/***/ },
+/* 21 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // fallback for non-array-like ES3 and non-enumerable old V8 strings
+ var cof = __webpack_require__(15);
+ module.exports = Object('z').propertyIsEnumerable(0) ? Object : function(it){
+ return cof(it) == 'String' ? it.split('') : Object(it);
+ };
+
+/***/ },
+/* 22 */
+/***/ function(module, exports) {
+
+ // 7.1.4 ToInteger
+ var ceil = Math.ceil
+ , floor = Math.floor;
+ module.exports = function(it){
+ return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
+ };
+
+/***/ },
+/* 23 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var toInteger = __webpack_require__(22)
+ , max = Math.max
+ , min = Math.min;
+ module.exports = function(index, length){
+ index = toInteger(index);
+ return index < 0 ? max(index + length, 0) : min(index, length);
+ };
+
+/***/ },
+/* 24 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 7.1.15 ToLength
+ var toInteger = __webpack_require__(22)
+ , min = Math.min;
+ module.exports = function(it){
+ return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
+ };
+
+/***/ },
+/* 25 */
+/***/ function(module, exports) {
+
+ var id = 0
+ , px = Math.random();
+ module.exports = function(key){
+ return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
+ };
+
+/***/ },
+/* 26 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 0 -> Array#forEach
+ // 1 -> Array#map
+ // 2 -> Array#filter
+ // 3 -> Array#some
+ // 4 -> Array#every
+ // 5 -> Array#find
+ // 6 -> Array#findIndex
+ var ctx = __webpack_require__(6)
+ , IObject = __webpack_require__(21)
+ , toObject = __webpack_require__(18)
+ , toLength = __webpack_require__(24)
+ , asc = __webpack_require__(27);
+ module.exports = function(TYPE){
+ var IS_MAP = TYPE == 1
+ , IS_FILTER = TYPE == 2
+ , IS_SOME = TYPE == 3
+ , IS_EVERY = TYPE == 4
+ , IS_FIND_INDEX = TYPE == 6
+ , NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
+ return function($this, callbackfn, that){
+ var O = toObject($this)
+ , self = IObject(O)
+ , f = ctx(callbackfn, that, 3)
+ , length = toLength(self.length)
+ , index = 0
+ , result = IS_MAP ? asc($this, length) : IS_FILTER ? asc($this, 0) : undefined
+ , val, res;
+ for(;length > index; index++)if(NO_HOLES || index in self){
+ val = self[index];
+ res = f(val, index, O);
+ if(TYPE){
+ if(IS_MAP)result[index] = res; // map
+ else if(res)switch(TYPE){
+ case 3: return true; // some
+ case 5: return val; // find
+ case 6: return index; // findIndex
+ case 2: result.push(val); // filter
+ } else if(IS_EVERY)return false; // every
+ }
+ }
+ return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
+ };
+ };
+
+/***/ },
+/* 27 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 9.4.2.3 ArraySpeciesCreate(originalArray, length)
+ var isObject = __webpack_require__(13)
+ , isArray = __webpack_require__(28)
+ , SPECIES = __webpack_require__(29)('species');
+ module.exports = function(original, length){
+ var C;
+ if(isArray(original)){
+ C = original.constructor;
+ // cross-realm fallback
+ if(typeof C == 'function' && (C === Array || isArray(C.prototype)))C = undefined;
+ if(isObject(C)){
+ C = C[SPECIES];
+ if(C === null)C = undefined;
+ }
+ } return new (C === undefined ? Array : C)(length);
+ };
+
+/***/ },
+/* 28 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 7.2.2 IsArray(argument)
+ var cof = __webpack_require__(15);
+ module.exports = Array.isArray || function(arg){
+ return cof(arg) == 'Array';
+ };
+
+/***/ },
+/* 29 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var store = __webpack_require__(30)('wks')
+ , uid = __webpack_require__(25)
+ , Symbol = __webpack_require__(4).Symbol;
+ module.exports = function(name){
+ return store[name] || (store[name] =
+ Symbol && Symbol[name] || (Symbol || uid)('Symbol.' + name));
+ };
+
+/***/ },
+/* 30 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var global = __webpack_require__(4)
+ , SHARED = '__core-js_shared__'
+ , store = global[SHARED] || (global[SHARED] = {});
+ module.exports = function(key){
+ return store[key] || (store[key] = {});
+ };
+
+/***/ },
+/* 31 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // false -> Array#indexOf
+ // true -> Array#includes
+ var toIObject = __webpack_require__(20)
+ , toLength = __webpack_require__(24)
+ , toIndex = __webpack_require__(23);
+ module.exports = function(IS_INCLUDES){
+ return function($this, el, fromIndex){
+ var O = toIObject($this)
+ , length = toLength(O.length)
+ , index = toIndex(fromIndex, length)
+ , value;
+ // Array#includes uses SameValueZero equality algorithm
+ if(IS_INCLUDES && el != el)while(length > index){
+ value = O[index++];
+ if(value != value)return true;
+ // Array#toIndex ignores holes, Array#includes - not
+ } else for(;length > index; index++)if(IS_INCLUDES || index in O){
+ if(O[index] === el)return IS_INCLUDES || index;
+ } return !IS_INCLUDES && -1;
+ };
+ };
+
+/***/ },
+/* 32 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ // ECMAScript 6 symbols shim
+ var $ = __webpack_require__(2)
+ , global = __webpack_require__(4)
+ , has = __webpack_require__(14)
+ , DESCRIPTORS = __webpack_require__(8)
+ , $export = __webpack_require__(3)
+ , redefine = __webpack_require__(33)
+ , $fails = __webpack_require__(9)
+ , shared = __webpack_require__(30)
+ , setToStringTag = __webpack_require__(35)
+ , uid = __webpack_require__(25)
+ , wks = __webpack_require__(29)
+ , keyOf = __webpack_require__(36)
+ , $names = __webpack_require__(37)
+ , enumKeys = __webpack_require__(38)
+ , isArray = __webpack_require__(28)
+ , anObject = __webpack_require__(17)
+ , toIObject = __webpack_require__(20)
+ , createDesc = __webpack_require__(10)
+ , getDesc = $.getDesc
+ , setDesc = $.setDesc
+ , _create = $.create
+ , getNames = $names.get
+ , $Symbol = global.Symbol
+ , $JSON = global.JSON
+ , _stringify = $JSON && $JSON.stringify
+ , setter = false
+ , HIDDEN = wks('_hidden')
+ , isEnum = $.isEnum
+ , SymbolRegistry = shared('symbol-registry')
+ , AllSymbols = shared('symbols')
+ , useNative = typeof $Symbol == 'function'
+ , ObjectProto = Object.prototype;
+
+ // fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
+ var setSymbolDesc = DESCRIPTORS && $fails(function(){
+ return _create(setDesc({}, 'a', {
+ get: function(){ return setDesc(this, 'a', {value: 7}).a; }
+ })).a != 7;
+ }) ? function(it, key, D){
+ var protoDesc = getDesc(ObjectProto, key);
+ if(protoDesc)delete ObjectProto[key];
+ setDesc(it, key, D);
+ if(protoDesc && it !== ObjectProto)setDesc(ObjectProto, key, protoDesc);
+ } : setDesc;
+
+ var wrap = function(tag){
+ var sym = AllSymbols[tag] = _create($Symbol.prototype);
+ sym._k = tag;
+ DESCRIPTORS && setter && setSymbolDesc(ObjectProto, tag, {
+ configurable: true,
+ set: function(value){
+ if(has(this, HIDDEN) && has(this[HIDDEN], tag))this[HIDDEN][tag] = false;
+ setSymbolDesc(this, tag, createDesc(1, value));
+ }
+ });
+ return sym;
+ };
+
+ var isSymbol = function(it){
+ return typeof it == 'symbol';
+ };
+
+ var $defineProperty = function defineProperty(it, key, D){
+ if(D && has(AllSymbols, key)){
+ if(!D.enumerable){
+ if(!has(it, HIDDEN))setDesc(it, HIDDEN, createDesc(1, {}));
+ it[HIDDEN][key] = true;
+ } else {
+ if(has(it, HIDDEN) && it[HIDDEN][key])it[HIDDEN][key] = false;
+ D = _create(D, {enumerable: createDesc(0, false)});
+ } return setSymbolDesc(it, key, D);
+ } return setDesc(it, key, D);
+ };
+ var $defineProperties = function defineProperties(it, P){
+ anObject(it);
+ var keys = enumKeys(P = toIObject(P))
+ , i = 0
+ , l = keys.length
+ , key;
+ while(l > i)$defineProperty(it, key = keys[i++], P[key]);
+ return it;
+ };
+ var $create = function create(it, P){
+ return P === undefined ? _create(it) : $defineProperties(_create(it), P);
+ };
+ var $propertyIsEnumerable = function propertyIsEnumerable(key){
+ var E = isEnum.call(this, key);
+ return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key]
+ ? E : true;
+ };
+ var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key){
+ var D = getDesc(it = toIObject(it), key);
+ if(D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key]))D.enumerable = true;
+ return D;
+ };
+ var $getOwnPropertyNames = function getOwnPropertyNames(it){
+ var names = getNames(toIObject(it))
+ , result = []
+ , i = 0
+ , key;
+ while(names.length > i)if(!has(AllSymbols, key = names[i++]) && key != HIDDEN)result.push(key);
+ return result;
+ };
+ var $getOwnPropertySymbols = function getOwnPropertySymbols(it){
+ var names = getNames(toIObject(it))
+ , result = []
+ , i = 0
+ , key;
+ while(names.length > i)if(has(AllSymbols, key = names[i++]))result.push(AllSymbols[key]);
+ return result;
+ };
+ var $stringify = function stringify(it){
+ if(it === undefined || isSymbol(it))return; // IE8 returns string on undefined
+ var args = [it]
+ , i = 1
+ , $$ = arguments
+ , replacer, $replacer;
+ while($$.length > i)args.push($$[i++]);
+ replacer = args[1];
+ if(typeof replacer == 'function')$replacer = replacer;
+ if($replacer || !isArray(replacer))replacer = function(key, value){
+ if($replacer)value = $replacer.call(this, key, value);
+ if(!isSymbol(value))return value;
+ };
+ args[1] = replacer;
+ return _stringify.apply($JSON, args);
+ };
+ var buggyJSON = $fails(function(){
+ var S = $Symbol();
+ // MS Edge converts symbol values to JSON as {}
+ // WebKit converts symbol values to JSON as null
+ // V8 throws on boxed symbols
+ return _stringify([S]) != '[null]' || _stringify({a: S}) != '{}' || _stringify(Object(S)) != '{}';
+ });
+
+ // 19.4.1.1 Symbol([description])
+ if(!useNative){
+ $Symbol = function Symbol(){
+ if(isSymbol(this))throw TypeError('Symbol is not a constructor');
+ return wrap(uid(arguments.length > 0 ? arguments[0] : undefined));
+ };
+ redefine($Symbol.prototype, 'toString', function toString(){
+ return this._k;
+ });
+
+ isSymbol = function(it){
+ return it instanceof $Symbol;
+ };
+
+ $.create = $create;
+ $.isEnum = $propertyIsEnumerable;
+ $.getDesc = $getOwnPropertyDescriptor;
+ $.setDesc = $defineProperty;
+ $.setDescs = $defineProperties;
+ $.getNames = $names.get = $getOwnPropertyNames;
+ $.getSymbols = $getOwnPropertySymbols;
+
+ if(DESCRIPTORS && !__webpack_require__(39)){
+ redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
+ }
+ }
+
+ var symbolStatics = {
+ // 19.4.2.1 Symbol.for(key)
+ 'for': function(key){
+ return has(SymbolRegistry, key += '')
+ ? SymbolRegistry[key]
+ : SymbolRegistry[key] = $Symbol(key);
+ },
+ // 19.4.2.5 Symbol.keyFor(sym)
+ keyFor: function keyFor(key){
+ return keyOf(SymbolRegistry, key);
+ },
+ useSetter: function(){ setter = true; },
+ useSimple: function(){ setter = false; }
+ };
+ // 19.4.2.2 Symbol.hasInstance
+ // 19.4.2.3 Symbol.isConcatSpreadable
+ // 19.4.2.4 Symbol.iterator
+ // 19.4.2.6 Symbol.match
+ // 19.4.2.8 Symbol.replace
+ // 19.4.2.9 Symbol.search
+ // 19.4.2.10 Symbol.species
+ // 19.4.2.11 Symbol.split
+ // 19.4.2.12 Symbol.toPrimitive
+ // 19.4.2.13 Symbol.toStringTag
+ // 19.4.2.14 Symbol.unscopables
+ $.each.call((
+ 'hasInstance,isConcatSpreadable,iterator,match,replace,search,' +
+ 'species,split,toPrimitive,toStringTag,unscopables'
+ ).split(','), function(it){
+ var sym = wks(it);
+ symbolStatics[it] = useNative ? sym : wrap(sym);
+ });
+
+ setter = true;
+
+ $export($export.G + $export.W, {Symbol: $Symbol});
+
+ $export($export.S, 'Symbol', symbolStatics);
+
+ $export($export.S + $export.F * !useNative, 'Object', {
+ // 19.1.2.2 Object.create(O [, Properties])
+ create: $create,
+ // 19.1.2.4 Object.defineProperty(O, P, Attributes)
+ defineProperty: $defineProperty,
+ // 19.1.2.3 Object.defineProperties(O, Properties)
+ defineProperties: $defineProperties,
+ // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
+ getOwnPropertyDescriptor: $getOwnPropertyDescriptor,
+ // 19.1.2.7 Object.getOwnPropertyNames(O)
+ getOwnPropertyNames: $getOwnPropertyNames,
+ // 19.1.2.8 Object.getOwnPropertySymbols(O)
+ getOwnPropertySymbols: $getOwnPropertySymbols
+ });
+
+ // 24.3.2 JSON.stringify(value [, replacer [, space]])
+ $JSON && $export($export.S + $export.F * (!useNative || buggyJSON), 'JSON', {stringify: $stringify});
+
+ // 19.4.3.5 Symbol.prototype[@@toStringTag]
+ setToStringTag($Symbol, 'Symbol');
+ // 20.2.1.9 Math[@@toStringTag]
+ setToStringTag(Math, 'Math', true);
+ // 24.3.3 JSON[@@toStringTag]
+ setToStringTag(global.JSON, 'JSON', true);
+
+/***/ },
+/* 33 */
+/***/ function(module, exports, __webpack_require__) {
+
+ module.exports = __webpack_require__(34);
+
+/***/ },
+/* 34 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $ = __webpack_require__(2)
+ , createDesc = __webpack_require__(10);
+ module.exports = __webpack_require__(8) ? function(object, key, value){
+ return $.setDesc(object, key, createDesc(1, value));
+ } : function(object, key, value){
+ object[key] = value;
+ return object;
+ };
+
+/***/ },
+/* 35 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var def = __webpack_require__(2).setDesc
+ , has = __webpack_require__(14)
+ , TAG = __webpack_require__(29)('toStringTag');
+
+ module.exports = function(it, tag, stat){
+ if(it && !has(it = stat ? it : it.prototype, TAG))def(it, TAG, {configurable: true, value: tag});
+ };
+
+/***/ },
+/* 36 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $ = __webpack_require__(2)
+ , toIObject = __webpack_require__(20);
+ module.exports = function(object, el){
+ var O = toIObject(object)
+ , keys = $.getKeys(O)
+ , length = keys.length
+ , index = 0
+ , key;
+ while(length > index)if(O[key = keys[index++]] === el)return key;
+ };
+
+/***/ },
+/* 37 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
+ var toIObject = __webpack_require__(20)
+ , getNames = __webpack_require__(2).getNames
+ , toString = {}.toString;
+
+ var windowNames = typeof window == 'object' && Object.getOwnPropertyNames
+ ? Object.getOwnPropertyNames(window) : [];
+
+ var getWindowNames = function(it){
+ try {
+ return getNames(it);
+ } catch(e){
+ return windowNames.slice();
+ }
+ };
+
+ module.exports.get = function getOwnPropertyNames(it){
+ if(windowNames && toString.call(it) == '[object Window]')return getWindowNames(it);
+ return getNames(toIObject(it));
+ };
+
+/***/ },
+/* 38 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // all enumerable object keys, includes symbols
+ var $ = __webpack_require__(2);
+ module.exports = function(it){
+ var keys = $.getKeys(it)
+ , getSymbols = $.getSymbols;
+ if(getSymbols){
+ var symbols = getSymbols(it)
+ , isEnum = $.isEnum
+ , i = 0
+ , key;
+ while(symbols.length > i)if(isEnum.call(it, key = symbols[i++]))keys.push(key);
+ }
+ return keys;
+ };
+
+/***/ },
+/* 39 */
+/***/ function(module, exports) {
+
+ module.exports = true;
+
+/***/ },
+/* 40 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.3.1 Object.assign(target, source)
+ var $export = __webpack_require__(3);
+
+ $export($export.S + $export.F, 'Object', {assign: __webpack_require__(41)});
+
+/***/ },
+/* 41 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.1 Object.assign(target, source, ...)
+ var $ = __webpack_require__(2)
+ , toObject = __webpack_require__(18)
+ , IObject = __webpack_require__(21);
+
+ // should work with symbols and should have deterministic property order (V8 bug)
+ module.exports = __webpack_require__(9)(function(){
+ var a = Object.assign
+ , A = {}
+ , B = {}
+ , S = Symbol()
+ , K = 'abcdefghijklmnopqrst';
+ A[S] = 7;
+ K.split('').forEach(function(k){ B[k] = k; });
+ return a({}, A)[S] != 7 || Object.keys(a({}, B)).join('') != K;
+ }) ? function assign(target, source){ // eslint-disable-line no-unused-vars
+ var T = toObject(target)
+ , $$ = arguments
+ , $$len = $$.length
+ , index = 1
+ , getKeys = $.getKeys
+ , getSymbols = $.getSymbols
+ , isEnum = $.isEnum;
+ while($$len > index){
+ var S = IObject($$[index++])
+ , keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S)
+ , length = keys.length
+ , j = 0
+ , key;
+ while(length > j)if(isEnum.call(S, key = keys[j++]))T[key] = S[key];
+ }
+ return T;
+ } : Object.assign;
+
+/***/ },
+/* 42 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.3.10 Object.is(value1, value2)
+ var $export = __webpack_require__(3);
+ $export($export.S, 'Object', {is: __webpack_require__(43)});
+
+/***/ },
+/* 43 */
+/***/ function(module, exports) {
+
+ // 7.2.9 SameValue(x, y)
+ module.exports = Object.is || function is(x, y){
+ return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;
+ };
+
+/***/ },
+/* 44 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.3.19 Object.setPrototypeOf(O, proto)
+ var $export = __webpack_require__(3);
+ $export($export.S, 'Object', {setPrototypeOf: __webpack_require__(45).set});
+
+/***/ },
+/* 45 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // Works with __proto__ only. Old v8 can't work with null proto objects.
+ /* eslint-disable no-proto */
+ var getDesc = __webpack_require__(2).getDesc
+ , isObject = __webpack_require__(13)
+ , anObject = __webpack_require__(17);
+ var check = function(O, proto){
+ anObject(O);
+ if(!isObject(proto) && proto !== null)throw TypeError(proto + ": can't set as prototype!");
+ };
+ module.exports = {
+ set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
+ function(test, buggy, set){
+ try {
+ set = __webpack_require__(6)(Function.call, getDesc(Object.prototype, '__proto__').set, 2);
+ set(test, []);
+ buggy = !(test instanceof Array);
+ } catch(e){ buggy = true; }
+ return function setPrototypeOf(O, proto){
+ check(O, proto);
+ if(buggy)O.__proto__ = proto;
+ else set(O, proto);
+ return O;
+ };
+ }({}, false) : undefined),
+ check: check
+ };
+
+/***/ },
+/* 46 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.5 Object.freeze(O)
+ var isObject = __webpack_require__(13);
+
+ __webpack_require__(47)('freeze', function($freeze){
+ return function freeze(it){
+ return $freeze && isObject(it) ? $freeze(it) : it;
+ };
+ });
+
+/***/ },
+/* 47 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // most Object methods by ES6 should accept primitives
+ var $export = __webpack_require__(3)
+ , core = __webpack_require__(5)
+ , fails = __webpack_require__(9);
+ module.exports = function(KEY, exec){
+ var fn = (core.Object || {})[KEY] || Object[KEY]
+ , exp = {};
+ exp[KEY] = exec(fn);
+ $export($export.S + $export.F * fails(function(){ fn(1); }), 'Object', exp);
+ };
+
+/***/ },
+/* 48 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.17 Object.seal(O)
+ var isObject = __webpack_require__(13);
+
+ __webpack_require__(47)('seal', function($seal){
+ return function seal(it){
+ return $seal && isObject(it) ? $seal(it) : it;
+ };
+ });
+
+/***/ },
+/* 49 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.15 Object.preventExtensions(O)
+ var isObject = __webpack_require__(13);
+
+ __webpack_require__(47)('preventExtensions', function($preventExtensions){
+ return function preventExtensions(it){
+ return $preventExtensions && isObject(it) ? $preventExtensions(it) : it;
+ };
+ });
+
+/***/ },
+/* 50 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.12 Object.isFrozen(O)
+ var isObject = __webpack_require__(13);
+
+ __webpack_require__(47)('isFrozen', function($isFrozen){
+ return function isFrozen(it){
+ return isObject(it) ? $isFrozen ? $isFrozen(it) : false : true;
+ };
+ });
+
+/***/ },
+/* 51 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.13 Object.isSealed(O)
+ var isObject = __webpack_require__(13);
+
+ __webpack_require__(47)('isSealed', function($isSealed){
+ return function isSealed(it){
+ return isObject(it) ? $isSealed ? $isSealed(it) : false : true;
+ };
+ });
+
+/***/ },
+/* 52 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.11 Object.isExtensible(O)
+ var isObject = __webpack_require__(13);
+
+ __webpack_require__(47)('isExtensible', function($isExtensible){
+ return function isExtensible(it){
+ return isObject(it) ? $isExtensible ? $isExtensible(it) : true : false;
+ };
+ });
+
+/***/ },
+/* 53 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
+ var toIObject = __webpack_require__(20);
+
+ __webpack_require__(47)('getOwnPropertyDescriptor', function($getOwnPropertyDescriptor){
+ return function getOwnPropertyDescriptor(it, key){
+ return $getOwnPropertyDescriptor(toIObject(it), key);
+ };
+ });
+
+/***/ },
+/* 54 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.9 Object.getPrototypeOf(O)
+ var toObject = __webpack_require__(18);
+
+ __webpack_require__(47)('getPrototypeOf', function($getPrototypeOf){
+ return function getPrototypeOf(it){
+ return $getPrototypeOf(toObject(it));
+ };
+ });
+
+/***/ },
+/* 55 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.14 Object.keys(O)
+ var toObject = __webpack_require__(18);
+
+ __webpack_require__(47)('keys', function($keys){
+ return function keys(it){
+ return $keys(toObject(it));
+ };
+ });
+
+/***/ },
+/* 56 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.7 Object.getOwnPropertyNames(O)
+ __webpack_require__(47)('getOwnPropertyNames', function(){
+ return __webpack_require__(37).get;
+ });
+
+/***/ },
+/* 57 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $ = __webpack_require__(2)
+ , isObject = __webpack_require__(13)
+ , HAS_INSTANCE = __webpack_require__(29)('hasInstance')
+ , FunctionProto = Function.prototype;
+ // 19.2.3.6 Function.prototype[@@hasInstance](V)
+ if(!(HAS_INSTANCE in FunctionProto))$.setDesc(FunctionProto, HAS_INSTANCE, {value: function(O){
+ if(typeof this != 'function' || !isObject(O))return false;
+ if(!isObject(this.prototype))return O instanceof this;
+ // for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this:
+ while(O = $.getProto(O))if(this.prototype === O)return true;
+ return false;
+ }});
+
+/***/ },
+/* 58 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.1 Number.EPSILON
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Number', {EPSILON: Math.pow(2, -52)});
+
+/***/ },
+/* 59 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.2 Number.isFinite(number)
+ var $export = __webpack_require__(3)
+ , _isFinite = __webpack_require__(4).isFinite;
+
+ $export($export.S, 'Number', {
+ isFinite: function isFinite(it){
+ return typeof it == 'number' && _isFinite(it);
+ }
+ });
+
+/***/ },
+/* 60 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.3 Number.isInteger(number)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Number', {isInteger: __webpack_require__(61)});
+
+/***/ },
+/* 61 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.3 Number.isInteger(number)
+ var isObject = __webpack_require__(13)
+ , floor = Math.floor;
+ module.exports = function isInteger(it){
+ return !isObject(it) && isFinite(it) && floor(it) === it;
+ };
+
+/***/ },
+/* 62 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.4 Number.isNaN(number)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Number', {
+ isNaN: function isNaN(number){
+ return number != number;
+ }
+ });
+
+/***/ },
+/* 63 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.5 Number.isSafeInteger(number)
+ var $export = __webpack_require__(3)
+ , isInteger = __webpack_require__(61)
+ , abs = Math.abs;
+
+ $export($export.S, 'Number', {
+ isSafeInteger: function isSafeInteger(number){
+ return isInteger(number) && abs(number) <= 0x1fffffffffffff;
+ }
+ });
+
+/***/ },
+/* 64 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.6 Number.MAX_SAFE_INTEGER
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Number', {MAX_SAFE_INTEGER: 0x1fffffffffffff});
+
+/***/ },
+/* 65 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.10 Number.MIN_SAFE_INTEGER
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Number', {MIN_SAFE_INTEGER: -0x1fffffffffffff});
+
+/***/ },
+/* 66 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.12 Number.parseFloat(string)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Number', {parseFloat: parseFloat});
+
+/***/ },
+/* 67 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.13 Number.parseInt(string, radix)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Number', {parseInt: parseInt});
+
+/***/ },
+/* 68 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.3 Math.acosh(x)
+ var $export = __webpack_require__(3)
+ , log1p = __webpack_require__(69)
+ , sqrt = Math.sqrt
+ , $acosh = Math.acosh;
+
+ // V8 bug https://code.google.com/p/v8/issues/detail?id=3509
+ $export($export.S + $export.F * !($acosh && Math.floor($acosh(Number.MAX_VALUE)) == 710), 'Math', {
+ acosh: function acosh(x){
+ return (x = +x) < 1 ? NaN : x > 94906265.62425156
+ ? Math.log(x) + Math.LN2
+ : log1p(x - 1 + sqrt(x - 1) * sqrt(x + 1));
+ }
+ });
+
+/***/ },
+/* 69 */
+/***/ function(module, exports) {
+
+ // 20.2.2.20 Math.log1p(x)
+ module.exports = Math.log1p || function log1p(x){
+ return (x = +x) > -1e-8 && x < 1e-8 ? x - x * x / 2 : Math.log(1 + x);
+ };
+
+/***/ },
+/* 70 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.5 Math.asinh(x)
+ var $export = __webpack_require__(3);
+
+ function asinh(x){
+ return !isFinite(x = +x) || x == 0 ? x : x < 0 ? -asinh(-x) : Math.log(x + Math.sqrt(x * x + 1));
+ }
+
+ $export($export.S, 'Math', {asinh: asinh});
+
+/***/ },
+/* 71 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.7 Math.atanh(x)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Math', {
+ atanh: function atanh(x){
+ return (x = +x) == 0 ? x : Math.log((1 + x) / (1 - x)) / 2;
+ }
+ });
+
+/***/ },
+/* 72 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.9 Math.cbrt(x)
+ var $export = __webpack_require__(3)
+ , sign = __webpack_require__(73);
+
+ $export($export.S, 'Math', {
+ cbrt: function cbrt(x){
+ return sign(x = +x) * Math.pow(Math.abs(x), 1 / 3);
+ }
+ });
+
+/***/ },
+/* 73 */
+/***/ function(module, exports) {
+
+ // 20.2.2.28 Math.sign(x)
+ module.exports = Math.sign || function sign(x){
+ return (x = +x) == 0 || x != x ? x : x < 0 ? -1 : 1;
+ };
+
+/***/ },
+/* 74 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.11 Math.clz32(x)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Math', {
+ clz32: function clz32(x){
+ return (x >>>= 0) ? 31 - Math.floor(Math.log(x + 0.5) * Math.LOG2E) : 32;
+ }
+ });
+
+/***/ },
+/* 75 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.12 Math.cosh(x)
+ var $export = __webpack_require__(3)
+ , exp = Math.exp;
+
+ $export($export.S, 'Math', {
+ cosh: function cosh(x){
+ return (exp(x = +x) + exp(-x)) / 2;
+ }
+ });
+
+/***/ },
+/* 76 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.14 Math.expm1(x)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Math', {expm1: __webpack_require__(77)});
+
+/***/ },
+/* 77 */
+/***/ function(module, exports) {
+
+ // 20.2.2.14 Math.expm1(x)
+ module.exports = Math.expm1 || function expm1(x){
+ return (x = +x) == 0 ? x : x > -1e-6 && x < 1e-6 ? x + x * x / 2 : Math.exp(x) - 1;
+ };
+
+/***/ },
+/* 78 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.16 Math.fround(x)
+ var $export = __webpack_require__(3)
+ , sign = __webpack_require__(73)
+ , pow = Math.pow
+ , EPSILON = pow(2, -52)
+ , EPSILON32 = pow(2, -23)
+ , MAX32 = pow(2, 127) * (2 - EPSILON32)
+ , MIN32 = pow(2, -126);
+
+ var roundTiesToEven = function(n){
+ return n + 1 / EPSILON - 1 / EPSILON;
+ };
+
+
+ $export($export.S, 'Math', {
+ fround: function fround(x){
+ var $abs = Math.abs(x)
+ , $sign = sign(x)
+ , a, result;
+ if($abs < MIN32)return $sign * roundTiesToEven($abs / MIN32 / EPSILON32) * MIN32 * EPSILON32;
+ a = (1 + EPSILON32 / EPSILON) * $abs;
+ result = a - (a - $abs);
+ if(result > MAX32 || result != result)return $sign * Infinity;
+ return $sign * result;
+ }
+ });
+
+/***/ },
+/* 79 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.17 Math.hypot([value1[, value2[, … ]]])
+ var $export = __webpack_require__(3)
+ , abs = Math.abs;
+
+ $export($export.S, 'Math', {
+ hypot: function hypot(value1, value2){ // eslint-disable-line no-unused-vars
+ var sum = 0
+ , i = 0
+ , $$ = arguments
+ , $$len = $$.length
+ , larg = 0
+ , arg, div;
+ while(i < $$len){
+ arg = abs($$[i++]);
+ if(larg < arg){
+ div = larg / arg;
+ sum = sum * div * div + 1;
+ larg = arg;
+ } else if(arg > 0){
+ div = arg / larg;
+ sum += div * div;
+ } else sum += arg;
+ }
+ return larg === Infinity ? Infinity : larg * Math.sqrt(sum);
+ }
+ });
+
+/***/ },
+/* 80 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.18 Math.imul(x, y)
+ var $export = __webpack_require__(3)
+ , $imul = Math.imul;
+
+ // some WebKit versions fails with big numbers, some has wrong arity
+ $export($export.S + $export.F * __webpack_require__(9)(function(){
+ return $imul(0xffffffff, 5) != -5 || $imul.length != 2;
+ }), 'Math', {
+ imul: function imul(x, y){
+ var UINT16 = 0xffff
+ , xn = +x
+ , yn = +y
+ , xl = UINT16 & xn
+ , yl = UINT16 & yn;
+ return 0 | xl * yl + ((UINT16 & xn >>> 16) * yl + xl * (UINT16 & yn >>> 16) << 16 >>> 0);
+ }
+ });
+
+/***/ },
+/* 81 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.21 Math.log10(x)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Math', {
+ log10: function log10(x){
+ return Math.log(x) / Math.LN10;
+ }
+ });
+
+/***/ },
+/* 82 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.20 Math.log1p(x)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Math', {log1p: __webpack_require__(69)});
+
+/***/ },
+/* 83 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.22 Math.log2(x)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Math', {
+ log2: function log2(x){
+ return Math.log(x) / Math.LN2;
+ }
+ });
+
+/***/ },
+/* 84 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.28 Math.sign(x)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Math', {sign: __webpack_require__(73)});
+
+/***/ },
+/* 85 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.30 Math.sinh(x)
+ var $export = __webpack_require__(3)
+ , expm1 = __webpack_require__(77)
+ , exp = Math.exp;
+
+ // V8 near Chromium 38 has a problem with very small numbers
+ $export($export.S + $export.F * __webpack_require__(9)(function(){
+ return !Math.sinh(-2e-17) != -2e-17;
+ }), 'Math', {
+ sinh: function sinh(x){
+ return Math.abs(x = +x) < 1
+ ? (expm1(x) - expm1(-x)) / 2
+ : (exp(x - 1) - exp(-x - 1)) * (Math.E / 2);
+ }
+ });
+
+/***/ },
+/* 86 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.33 Math.tanh(x)
+ var $export = __webpack_require__(3)
+ , expm1 = __webpack_require__(77)
+ , exp = Math.exp;
+
+ $export($export.S, 'Math', {
+ tanh: function tanh(x){
+ var a = expm1(x = +x)
+ , b = expm1(-x);
+ return a == Infinity ? 1 : b == Infinity ? -1 : (a - b) / (exp(x) + exp(-x));
+ }
+ });
+
+/***/ },
+/* 87 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.34 Math.trunc(x)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Math', {
+ trunc: function trunc(it){
+ return (it > 0 ? Math.floor : Math.ceil)(it);
+ }
+ });
+
+/***/ },
+/* 88 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $export = __webpack_require__(3)
+ , toIndex = __webpack_require__(23)
+ , fromCharCode = String.fromCharCode
+ , $fromCodePoint = String.fromCodePoint;
+
+ // length should be 1, old FF problem
+ $export($export.S + $export.F * (!!$fromCodePoint && $fromCodePoint.length != 1), 'String', {
+ // 21.1.2.2 String.fromCodePoint(...codePoints)
+ fromCodePoint: function fromCodePoint(x){ // eslint-disable-line no-unused-vars
+ var res = []
+ , $$ = arguments
+ , $$len = $$.length
+ , i = 0
+ , code;
+ while($$len > i){
+ code = +$$[i++];
+ if(toIndex(code, 0x10ffff) !== code)throw RangeError(code + ' is not a valid code point');
+ res.push(code < 0x10000
+ ? fromCharCode(code)
+ : fromCharCode(((code -= 0x10000) >> 10) + 0xd800, code % 0x400 + 0xdc00)
+ );
+ } return res.join('');
+ }
+ });
+
+/***/ },
+/* 89 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $export = __webpack_require__(3)
+ , toIObject = __webpack_require__(20)
+ , toLength = __webpack_require__(24);
+
+ $export($export.S, 'String', {
+ // 21.1.2.4 String.raw(callSite, ...substitutions)
+ raw: function raw(callSite){
+ var tpl = toIObject(callSite.raw)
+ , len = toLength(tpl.length)
+ , $$ = arguments
+ , $$len = $$.length
+ , res = []
+ , i = 0;
+ while(len > i){
+ res.push(String(tpl[i++]));
+ if(i < $$len)res.push(String($$[i]));
+ } return res.join('');
+ }
+ });
+
+/***/ },
+/* 90 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ // 21.1.3.25 String.prototype.trim()
+ __webpack_require__(91)('trim', function($trim){
+ return function trim(){
+ return $trim(this, 3);
+ };
+ });
+
+/***/ },
+/* 91 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $export = __webpack_require__(3)
+ , defined = __webpack_require__(19)
+ , fails = __webpack_require__(9)
+ , spaces = '\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003' +
+ '\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF'
+ , space = '[' + spaces + ']'
+ , non = '\u200b\u0085'
+ , ltrim = RegExp('^' + space + space + '*')
+ , rtrim = RegExp(space + space + '*$');
+
+ var exporter = function(KEY, exec){
+ var exp = {};
+ exp[KEY] = exec(trim);
+ $export($export.P + $export.F * fails(function(){
+ return !!spaces[KEY]() || non[KEY]() != non;
+ }), 'String', exp);
+ };
+
+ // 1 -> String#trimLeft
+ // 2 -> String#trimRight
+ // 3 -> String#trim
+ var trim = exporter.trim = function(string, TYPE){
+ string = String(defined(string));
+ if(TYPE & 1)string = string.replace(ltrim, '');
+ if(TYPE & 2)string = string.replace(rtrim, '');
+ return string;
+ };
+
+ module.exports = exporter;
+
+/***/ },
+/* 92 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $export = __webpack_require__(3)
+ , $at = __webpack_require__(93)(false);
+ $export($export.P, 'String', {
+ // 21.1.3.3 String.prototype.codePointAt(pos)
+ codePointAt: function codePointAt(pos){
+ return $at(this, pos);
+ }
+ });
+
+/***/ },
+/* 93 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var toInteger = __webpack_require__(22)
+ , defined = __webpack_require__(19);
+ // true -> String#at
+ // false -> String#codePointAt
+ module.exports = function(TO_STRING){
+ return function(that, pos){
+ var s = String(defined(that))
+ , i = toInteger(pos)
+ , l = s.length
+ , a, b;
+ if(i < 0 || i >= l)return TO_STRING ? '' : undefined;
+ a = s.charCodeAt(i);
+ return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
+ ? TO_STRING ? s.charAt(i) : a
+ : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
+ };
+ };
+
+/***/ },
+/* 94 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 21.1.3.6 String.prototype.endsWith(searchString [, endPosition])
+ 'use strict';
+ var $export = __webpack_require__(3)
+ , toLength = __webpack_require__(24)
+ , context = __webpack_require__(95)
+ , ENDS_WITH = 'endsWith'
+ , $endsWith = ''[ENDS_WITH];
+
+ $export($export.P + $export.F * __webpack_require__(97)(ENDS_WITH), 'String', {
+ endsWith: function endsWith(searchString /*, endPosition = @length */){
+ var that = context(this, searchString, ENDS_WITH)
+ , $$ = arguments
+ , endPosition = $$.length > 1 ? $$[1] : undefined
+ , len = toLength(that.length)
+ , end = endPosition === undefined ? len : Math.min(toLength(endPosition), len)
+ , search = String(searchString);
+ return $endsWith
+ ? $endsWith.call(that, search, end)
+ : that.slice(end - search.length, end) === search;
+ }
+ });
+
+/***/ },
+/* 95 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // helper for String#{startsWith, endsWith, includes}
+ var isRegExp = __webpack_require__(96)
+ , defined = __webpack_require__(19);
+
+ module.exports = function(that, searchString, NAME){
+ if(isRegExp(searchString))throw TypeError('String#' + NAME + " doesn't accept regex!");
+ return String(defined(that));
+ };
+
+/***/ },
+/* 96 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 7.2.8 IsRegExp(argument)
+ var isObject = __webpack_require__(13)
+ , cof = __webpack_require__(15)
+ , MATCH = __webpack_require__(29)('match');
+ module.exports = function(it){
+ var isRegExp;
+ return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');
+ };
+
+/***/ },
+/* 97 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var MATCH = __webpack_require__(29)('match');
+ module.exports = function(KEY){
+ var re = /./;
+ try {
+ '/./'[KEY](re);
+ } catch(e){
+ try {
+ re[MATCH] = false;
+ return !'/./'[KEY](re);
+ } catch(f){ /* empty */ }
+ } return true;
+ };
+
+/***/ },
+/* 98 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 21.1.3.7 String.prototype.includes(searchString, position = 0)
+ 'use strict';
+ var $export = __webpack_require__(3)
+ , context = __webpack_require__(95)
+ , INCLUDES = 'includes';
+
+ $export($export.P + $export.F * __webpack_require__(97)(INCLUDES), 'String', {
+ includes: function includes(searchString /*, position = 0 */){
+ return !!~context(this, searchString, INCLUDES)
+ .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);
+ }
+ });
+
+/***/ },
+/* 99 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $export = __webpack_require__(3);
+
+ $export($export.P, 'String', {
+ // 21.1.3.13 String.prototype.repeat(count)
+ repeat: __webpack_require__(100)
+ });
+
+/***/ },
+/* 100 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var toInteger = __webpack_require__(22)
+ , defined = __webpack_require__(19);
+
+ module.exports = function repeat(count){
+ var str = String(defined(this))
+ , res = ''
+ , n = toInteger(count);
+ if(n < 0 || n == Infinity)throw RangeError("Count can't be negative");
+ for(;n > 0; (n >>>= 1) && (str += str))if(n & 1)res += str;
+ return res;
+ };
+
+/***/ },
+/* 101 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 21.1.3.18 String.prototype.startsWith(searchString [, position ])
+ 'use strict';
+ var $export = __webpack_require__(3)
+ , toLength = __webpack_require__(24)
+ , context = __webpack_require__(95)
+ , STARTS_WITH = 'startsWith'
+ , $startsWith = ''[STARTS_WITH];
+
+ $export($export.P + $export.F * __webpack_require__(97)(STARTS_WITH), 'String', {
+ startsWith: function startsWith(searchString /*, position = 0 */){
+ var that = context(this, searchString, STARTS_WITH)
+ , $$ = arguments
+ , index = toLength(Math.min($$.length > 1 ? $$[1] : undefined, that.length))
+ , search = String(searchString);
+ return $startsWith
+ ? $startsWith.call(that, search, index)
+ : that.slice(index, index + search.length) === search;
+ }
+ });
+
+/***/ },
+/* 102 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $at = __webpack_require__(93)(true);
+
+ // 21.1.3.27 String.prototype[@@iterator]()
+ __webpack_require__(103)(String, 'String', function(iterated){
+ this._t = String(iterated); // target
+ this._i = 0; // next index
+ // 21.1.5.2.1 %StringIteratorPrototype%.next()
+ }, function(){
+ var O = this._t
+ , index = this._i
+ , point;
+ if(index >= O.length)return {value: undefined, done: true};
+ point = $at(O, index);
+ this._i += point.length;
+ return {value: point, done: false};
+ });
+
+/***/ },
+/* 103 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var LIBRARY = __webpack_require__(39)
+ , $export = __webpack_require__(3)
+ , redefine = __webpack_require__(33)
+ , hide = __webpack_require__(34)
+ , has = __webpack_require__(14)
+ , Iterators = __webpack_require__(104)
+ , $iterCreate = __webpack_require__(105)
+ , setToStringTag = __webpack_require__(35)
+ , getProto = __webpack_require__(2).getProto
+ , ITERATOR = __webpack_require__(29)('iterator')
+ , BUGGY = !([].keys && 'next' in [].keys()) // Safari has buggy iterators w/o `next`
+ , FF_ITERATOR = '@@iterator'
+ , KEYS = 'keys'
+ , VALUES = 'values';
+
+ var returnThis = function(){ return this; };
+
+ module.exports = function(Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED){
+ $iterCreate(Constructor, NAME, next);
+ var getMethod = function(kind){
+ if(!BUGGY && kind in proto)return proto[kind];
+ switch(kind){
+ case KEYS: return function keys(){ return new Constructor(this, kind); };
+ case VALUES: return function values(){ return new Constructor(this, kind); };
+ } return function entries(){ return new Constructor(this, kind); };
+ };
+ var TAG = NAME + ' Iterator'
+ , DEF_VALUES = DEFAULT == VALUES
+ , VALUES_BUG = false
+ , proto = Base.prototype
+ , $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT]
+ , $default = $native || getMethod(DEFAULT)
+ , methods, key;
+ // Fix native
+ if($native){
+ var IteratorPrototype = getProto($default.call(new Base));
+ // Set @@toStringTag to native iterators
+ setToStringTag(IteratorPrototype, TAG, true);
+ // FF fix
+ if(!LIBRARY && has(proto, FF_ITERATOR))hide(IteratorPrototype, ITERATOR, returnThis);
+ // fix Array#{values, @@iterator}.name in V8 / FF
+ if(DEF_VALUES && $native.name !== VALUES){
+ VALUES_BUG = true;
+ $default = function values(){ return $native.call(this); };
+ }
+ }
+ // Define iterator
+ if((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])){
+ hide(proto, ITERATOR, $default);
+ }
+ // Plug for library
+ Iterators[NAME] = $default;
+ Iterators[TAG] = returnThis;
+ if(DEFAULT){
+ methods = {
+ values: DEF_VALUES ? $default : getMethod(VALUES),
+ keys: IS_SET ? $default : getMethod(KEYS),
+ entries: !DEF_VALUES ? $default : getMethod('entries')
+ };
+ if(FORCED)for(key in methods){
+ if(!(key in proto))redefine(proto, key, methods[key]);
+ } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
+ }
+ return methods;
+ };
+
+/***/ },
+/* 104 */
+/***/ function(module, exports) {
+
+ module.exports = {};
+
+/***/ },
+/* 105 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $ = __webpack_require__(2)
+ , descriptor = __webpack_require__(10)
+ , setToStringTag = __webpack_require__(35)
+ , IteratorPrototype = {};
+
+ // 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
+ __webpack_require__(34)(IteratorPrototype, __webpack_require__(29)('iterator'), function(){ return this; });
+
+ module.exports = function(Constructor, NAME, next){
+ Constructor.prototype = $.create(IteratorPrototype, {next: descriptor(1, next)});
+ setToStringTag(Constructor, NAME + ' Iterator');
+ };
+
+/***/ },
+/* 106 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var ctx = __webpack_require__(6)
+ , $export = __webpack_require__(3)
+ , toObject = __webpack_require__(18)
+ , call = __webpack_require__(107)
+ , isArrayIter = __webpack_require__(108)
+ , toLength = __webpack_require__(24)
+ , getIterFn = __webpack_require__(109);
+ $export($export.S + $export.F * !__webpack_require__(111)(function(iter){ Array.from(iter); }), 'Array', {
+ // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)
+ from: function from(arrayLike/*, mapfn = undefined, thisArg = undefined*/){
+ var O = toObject(arrayLike)
+ , C = typeof this == 'function' ? this : Array
+ , $$ = arguments
+ , $$len = $$.length
+ , mapfn = $$len > 1 ? $$[1] : undefined
+ , mapping = mapfn !== undefined
+ , index = 0
+ , iterFn = getIterFn(O)
+ , length, result, step, iterator;
+ if(mapping)mapfn = ctx(mapfn, $$len > 2 ? $$[2] : undefined, 2);
+ // if object isn't iterable or it's array with default iterator - use simple case
+ if(iterFn != undefined && !(C == Array && isArrayIter(iterFn))){
+ for(iterator = iterFn.call(O), result = new C; !(step = iterator.next()).done; index++){
+ result[index] = mapping ? call(iterator, mapfn, [step.value, index], true) : step.value;
+ }
+ } else {
+ length = toLength(O.length);
+ for(result = new C(length); length > index; index++){
+ result[index] = mapping ? mapfn(O[index], index) : O[index];
+ }
+ }
+ result.length = index;
+ return result;
+ }
+ });
+
+
+/***/ },
+/* 107 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // call something on iterator step with safe closing on error
+ var anObject = __webpack_require__(17);
+ module.exports = function(iterator, fn, value, entries){
+ try {
+ return entries ? fn(anObject(value)[0], value[1]) : fn(value);
+ // 7.4.6 IteratorClose(iterator, completion)
+ } catch(e){
+ var ret = iterator['return'];
+ if(ret !== undefined)anObject(ret.call(iterator));
+ throw e;
+ }
+ };
+
+/***/ },
+/* 108 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // check on default Array iterator
+ var Iterators = __webpack_require__(104)
+ , ITERATOR = __webpack_require__(29)('iterator')
+ , ArrayProto = Array.prototype;
+
+ module.exports = function(it){
+ return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);
+ };
+
+/***/ },
+/* 109 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var classof = __webpack_require__(110)
+ , ITERATOR = __webpack_require__(29)('iterator')
+ , Iterators = __webpack_require__(104);
+ module.exports = __webpack_require__(5).getIteratorMethod = function(it){
+ if(it != undefined)return it[ITERATOR]
+ || it['@@iterator']
+ || Iterators[classof(it)];
+ };
+
+/***/ },
+/* 110 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // getting tag from 19.1.3.6 Object.prototype.toString()
+ var cof = __webpack_require__(15)
+ , TAG = __webpack_require__(29)('toStringTag')
+ // ES3 wrong here
+ , ARG = cof(function(){ return arguments; }()) == 'Arguments';
+
+ module.exports = function(it){
+ var O, T, B;
+ return it === undefined ? 'Undefined' : it === null ? 'Null'
+ // @@toStringTag case
+ : typeof (T = (O = Object(it))[TAG]) == 'string' ? T
+ // builtinTag case
+ : ARG ? cof(O)
+ // ES3 arguments fallback
+ : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
+ };
+
+/***/ },
+/* 111 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var ITERATOR = __webpack_require__(29)('iterator')
+ , SAFE_CLOSING = false;
+
+ try {
+ var riter = [7][ITERATOR]();
+ riter['return'] = function(){ SAFE_CLOSING = true; };
+ Array.from(riter, function(){ throw 2; });
+ } catch(e){ /* empty */ }
+
+ module.exports = function(exec, skipClosing){
+ if(!skipClosing && !SAFE_CLOSING)return false;
+ var safe = false;
+ try {
+ var arr = [7]
+ , iter = arr[ITERATOR]();
+ iter.next = function(){ return {done: safe = true}; };
+ arr[ITERATOR] = function(){ return iter; };
+ exec(arr);
+ } catch(e){ /* empty */ }
+ return safe;
+ };
+
+/***/ },
+/* 112 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $export = __webpack_require__(3);
+
+ // WebKit Array.of isn't generic
+ $export($export.S + $export.F * __webpack_require__(9)(function(){
+ function F(){}
+ return !(Array.of.call(F) instanceof F);
+ }), 'Array', {
+ // 22.1.2.3 Array.of( ...items)
+ of: function of(/* ...args */){
+ var index = 0
+ , $$ = arguments
+ , $$len = $$.length
+ , result = new (typeof this == 'function' ? this : Array)($$len);
+ while($$len > index)result[index] = $$[index++];
+ result.length = $$len;
+ return result;
+ }
+ });
+
+/***/ },
+/* 113 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var addToUnscopables = __webpack_require__(114)
+ , step = __webpack_require__(115)
+ , Iterators = __webpack_require__(104)
+ , toIObject = __webpack_require__(20);
+
+ // 22.1.3.4 Array.prototype.entries()
+ // 22.1.3.13 Array.prototype.keys()
+ // 22.1.3.29 Array.prototype.values()
+ // 22.1.3.30 Array.prototype[@@iterator]()
+ module.exports = __webpack_require__(103)(Array, 'Array', function(iterated, kind){
+ this._t = toIObject(iterated); // target
+ this._i = 0; // next index
+ this._k = kind; // kind
+ // 22.1.5.2.1 %ArrayIteratorPrototype%.next()
+ }, function(){
+ var O = this._t
+ , kind = this._k
+ , index = this._i++;
+ if(!O || index >= O.length){
+ this._t = undefined;
+ return step(1);
+ }
+ if(kind == 'keys' )return step(0, index);
+ if(kind == 'values')return step(0, O[index]);
+ return step(0, [index, O[index]]);
+ }, 'values');
+
+ // argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
+ Iterators.Arguments = Iterators.Array;
+
+ addToUnscopables('keys');
+ addToUnscopables('values');
+ addToUnscopables('entries');
+
+/***/ },
+/* 114 */
+/***/ function(module, exports) {
+
+ module.exports = function(){ /* empty */ };
+
+/***/ },
+/* 115 */
+/***/ function(module, exports) {
+
+ module.exports = function(done, value){
+ return {value: value, done: !!done};
+ };
+
+/***/ },
+/* 116 */
+/***/ function(module, exports, __webpack_require__) {
+
+ __webpack_require__(117)('Array');
+
+/***/ },
+/* 117 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var core = __webpack_require__(5)
+ , $ = __webpack_require__(2)
+ , DESCRIPTORS = __webpack_require__(8)
+ , SPECIES = __webpack_require__(29)('species');
+
+ module.exports = function(KEY){
+ var C = core[KEY];
+ if(DESCRIPTORS && C && !C[SPECIES])$.setDesc(C, SPECIES, {
+ configurable: true,
+ get: function(){ return this; }
+ });
+ };
+
+/***/ },
+/* 118 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length)
+ var $export = __webpack_require__(3);
+
+ $export($export.P, 'Array', {copyWithin: __webpack_require__(119)});
+
+ __webpack_require__(114)('copyWithin');
+
+/***/ },
+/* 119 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length)
+ 'use strict';
+ var toObject = __webpack_require__(18)
+ , toIndex = __webpack_require__(23)
+ , toLength = __webpack_require__(24);
+
+ module.exports = [].copyWithin || function copyWithin(target/*= 0*/, start/*= 0, end = @length*/){
+ var O = toObject(this)
+ , len = toLength(O.length)
+ , to = toIndex(target, len)
+ , from = toIndex(start, len)
+ , $$ = arguments
+ , end = $$.length > 2 ? $$[2] : undefined
+ , count = Math.min((end === undefined ? len : toIndex(end, len)) - from, len - to)
+ , inc = 1;
+ if(from < to && to < from + count){
+ inc = -1;
+ from += count - 1;
+ to += count - 1;
+ }
+ while(count-- > 0){
+ if(from in O)O[to] = O[from];
+ else delete O[to];
+ to += inc;
+ from += inc;
+ } return O;
+ };
+
+/***/ },
+/* 120 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)
+ var $export = __webpack_require__(3);
+
+ $export($export.P, 'Array', {fill: __webpack_require__(121)});
+
+ __webpack_require__(114)('fill');
+
+/***/ },
+/* 121 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)
+ 'use strict';
+ var toObject = __webpack_require__(18)
+ , toIndex = __webpack_require__(23)
+ , toLength = __webpack_require__(24);
+ module.exports = [].fill || function fill(value /*, start = 0, end = @length */){
+ var O = toObject(this)
+ , length = toLength(O.length)
+ , $$ = arguments
+ , $$len = $$.length
+ , index = toIndex($$len > 1 ? $$[1] : undefined, length)
+ , end = $$len > 2 ? $$[2] : undefined
+ , endPos = end === undefined ? length : toIndex(end, length);
+ while(endPos > index)O[index++] = value;
+ return O;
+ };
+
+/***/ },
+/* 122 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ // 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined)
+ var $export = __webpack_require__(3)
+ , $find = __webpack_require__(26)(5)
+ , KEY = 'find'
+ , forced = true;
+ // Shouldn't skip holes
+ if(KEY in [])Array(1)[KEY](function(){ forced = false; });
+ $export($export.P + $export.F * forced, 'Array', {
+ find: function find(callbackfn/*, that = undefined */){
+ return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+ }
+ });
+ __webpack_require__(114)(KEY);
+
+/***/ },
+/* 123 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ // 22.1.3.9 Array.prototype.findIndex(predicate, thisArg = undefined)
+ var $export = __webpack_require__(3)
+ , $find = __webpack_require__(26)(6)
+ , KEY = 'findIndex'
+ , forced = true;
+ // Shouldn't skip holes
+ if(KEY in [])Array(1)[KEY](function(){ forced = false; });
+ $export($export.P + $export.F * forced, 'Array', {
+ findIndex: function findIndex(callbackfn/*, that = undefined */){
+ return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+ }
+ });
+ __webpack_require__(114)(KEY);
+
+/***/ },
+/* 124 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $ = __webpack_require__(2)
+ , LIBRARY = __webpack_require__(39)
+ , global = __webpack_require__(4)
+ , ctx = __webpack_require__(6)
+ , classof = __webpack_require__(110)
+ , $export = __webpack_require__(3)
+ , isObject = __webpack_require__(13)
+ , anObject = __webpack_require__(17)
+ , aFunction = __webpack_require__(7)
+ , strictNew = __webpack_require__(125)
+ , forOf = __webpack_require__(126)
+ , setProto = __webpack_require__(45).set
+ , same = __webpack_require__(43)
+ , SPECIES = __webpack_require__(29)('species')
+ , speciesConstructor = __webpack_require__(127)
+ , asap = __webpack_require__(128)
+ , PROMISE = 'Promise'
+ , process = global.process
+ , isNode = classof(process) == 'process'
+ , P = global[PROMISE]
+ , empty = function(){ /* empty */ }
+ , Wrapper;
+
+ var testResolve = function(sub){
+ var test = new P(empty), promise;
+ if(sub)test.constructor = function(exec){
+ exec(empty, empty);
+ };
+ (promise = P.resolve(test))['catch'](empty);
+ return promise === test;
+ };
+
+ var USE_NATIVE = function(){
+ var works = false;
+ function P2(x){
+ var self = new P(x);
+ setProto(self, P2.prototype);
+ return self;
+ }
+ try {
+ works = P && P.resolve && testResolve();
+ setProto(P2, P);
+ P2.prototype = $.create(P.prototype, {constructor: {value: P2}});
+ // actual Firefox has broken subclass support, test that
+ if(!(P2.resolve(5).then(function(){}) instanceof P2)){
+ works = false;
+ }
+ // actual V8 bug, https://code.google.com/p/v8/issues/detail?id=4162
+ if(works && __webpack_require__(8)){
+ var thenableThenGotten = false;
+ P.resolve($.setDesc({}, 'then', {
+ get: function(){ thenableThenGotten = true; }
+ }));
+ works = thenableThenGotten;
+ }
+ } catch(e){ works = false; }
+ return works;
+ }();
+
+ // helpers
+ var sameConstructor = function(a, b){
+ // library wrapper special case
+ if(LIBRARY && a === P && b === Wrapper)return true;
+ return same(a, b);
+ };
+ var getConstructor = function(C){
+ var S = anObject(C)[SPECIES];
+ return S != undefined ? S : C;
+ };
+ var isThenable = function(it){
+ var then;
+ return isObject(it) && typeof (then = it.then) == 'function' ? then : false;
+ };
+ var PromiseCapability = function(C){
+ var resolve, reject;
+ this.promise = new C(function($$resolve, $$reject){
+ if(resolve !== undefined || reject !== undefined)throw TypeError('Bad Promise constructor');
+ resolve = $$resolve;
+ reject = $$reject;
+ });
+ this.resolve = aFunction(resolve),
+ this.reject = aFunction(reject)
+ };
+ var perform = function(exec){
+ try {
+ exec();
+ } catch(e){
+ return {error: e};
+ }
+ };
+ var notify = function(record, isReject){
+ if(record.n)return;
+ record.n = true;
+ var chain = record.c;
+ asap(function(){
+ var value = record.v
+ , ok = record.s == 1
+ , i = 0;
+ var run = function(reaction){
+ var handler = ok ? reaction.ok : reaction.fail
+ , resolve = reaction.resolve
+ , reject = reaction.reject
+ , result, then;
+ try {
+ if(handler){
+ if(!ok)record.h = true;
+ result = handler === true ? value : handler(value);
+ if(result === reaction.promise){
+ reject(TypeError('Promise-chain cycle'));
+ } else if(then = isThenable(result)){
+ then.call(result, resolve, reject);
+ } else resolve(result);
+ } else reject(value);
+ } catch(e){
+ reject(e);
+ }
+ };
+ while(chain.length > i)run(chain[i++]); // variable length - can't use forEach
+ chain.length = 0;
+ record.n = false;
+ if(isReject)setTimeout(function(){
+ var promise = record.p
+ , handler, console;
+ if(isUnhandled(promise)){
+ if(isNode){
+ process.emit('unhandledRejection', value, promise);
+ } else if(handler = global.onunhandledrejection){
+ handler({promise: promise, reason: value});
+ } else if((console = global.console) && console.error){
+ console.error('Unhandled promise rejection', value);
+ }
+ } record.a = undefined;
+ }, 1);
+ });
+ };
+ var isUnhandled = function(promise){
+ var record = promise._d
+ , chain = record.a || record.c
+ , i = 0
+ , reaction;
+ if(record.h)return false;
+ while(chain.length > i){
+ reaction = chain[i++];
+ if(reaction.fail || !isUnhandled(reaction.promise))return false;
+ } return true;
+ };
+ var $reject = function(value){
+ var record = this;
+ if(record.d)return;
+ record.d = true;
+ record = record.r || record; // unwrap
+ record.v = value;
+ record.s = 2;
+ record.a = record.c.slice();
+ notify(record, true);
+ };
+ var $resolve = function(value){
+ var record = this
+ , then;
+ if(record.d)return;
+ record.d = true;
+ record = record.r || record; // unwrap
+ try {
+ if(record.p === value)throw TypeError("Promise can't be resolved itself");
+ if(then = isThenable(value)){
+ asap(function(){
+ var wrapper = {r: record, d: false}; // wrap
+ try {
+ then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));
+ } catch(e){
+ $reject.call(wrapper, e);
+ }
+ });
+ } else {
+ record.v = value;
+ record.s = 1;
+ notify(record, false);
+ }
+ } catch(e){
+ $reject.call({r: record, d: false}, e); // wrap
+ }
+ };
+
+ // constructor polyfill
+ if(!USE_NATIVE){
+ // 25.4.3.1 Promise(executor)
+ P = function Promise(executor){
+ aFunction(executor);
+ var record = this._d = {
+ p: strictNew(this, P, PROMISE), // <- promise
+ c: [], // <- awaiting reactions
+ a: undefined, // <- checked in isUnhandled reactions
+ s: 0, // <- state
+ d: false, // <- done
+ v: undefined, // <- value
+ h: false, // <- handled rejection
+ n: false // <- notify
+ };
+ try {
+ executor(ctx($resolve, record, 1), ctx($reject, record, 1));
+ } catch(err){
+ $reject.call(record, err);
+ }
+ };
+ __webpack_require__(130)(P.prototype, {
+ // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)
+ then: function then(onFulfilled, onRejected){
+ var reaction = new PromiseCapability(speciesConstructor(this, P))
+ , promise = reaction.promise
+ , record = this._d;
+ reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;
+ reaction.fail = typeof onRejected == 'function' && onRejected;
+ record.c.push(reaction);
+ if(record.a)record.a.push(reaction);
+ if(record.s)notify(record, false);
+ return promise;
+ },
+ // 25.4.5.1 Promise.prototype.catch(onRejected)
+ 'catch': function(onRejected){
+ return this.then(undefined, onRejected);
+ }
+ });
+ }
+
+ $export($export.G + $export.W + $export.F * !USE_NATIVE, {Promise: P});
+ __webpack_require__(35)(P, PROMISE);
+ __webpack_require__(117)(PROMISE);
+ Wrapper = __webpack_require__(5)[PROMISE];
+
+ // statics
+ $export($export.S + $export.F * !USE_NATIVE, PROMISE, {
+ // 25.4.4.5 Promise.reject(r)
+ reject: function reject(r){
+ var capability = new PromiseCapability(this)
+ , $$reject = capability.reject;
+ $$reject(r);
+ return capability.promise;
+ }
+ });
+ $export($export.S + $export.F * (!USE_NATIVE || testResolve(true)), PROMISE, {
+ // 25.4.4.6 Promise.resolve(x)
+ resolve: function resolve(x){
+ // instanceof instead of internal slot check because we should fix it without replacement native Promise core
+ if(x instanceof P && sameConstructor(x.constructor, this))return x;
+ var capability = new PromiseCapability(this)
+ , $$resolve = capability.resolve;
+ $$resolve(x);
+ return capability.promise;
+ }
+ });
+ $export($export.S + $export.F * !(USE_NATIVE && __webpack_require__(111)(function(iter){
+ P.all(iter)['catch'](function(){});
+ })), PROMISE, {
+ // 25.4.4.1 Promise.all(iterable)
+ all: function all(iterable){
+ var C = getConstructor(this)
+ , capability = new PromiseCapability(C)
+ , resolve = capability.resolve
+ , reject = capability.reject
+ , values = [];
+ var abrupt = perform(function(){
+ forOf(iterable, false, values.push, values);
+ var remaining = values.length
+ , results = Array(remaining);
+ if(remaining)$.each.call(values, function(promise, index){
+ var alreadyCalled = false;
+ C.resolve(promise).then(function(value){
+ if(alreadyCalled)return;
+ alreadyCalled = true;
+ results[index] = value;
+ --remaining || resolve(results);
+ }, reject);
+ });
+ else resolve(results);
+ });
+ if(abrupt)reject(abrupt.error);
+ return capability.promise;
+ },
+ // 25.4.4.4 Promise.race(iterable)
+ race: function race(iterable){
+ var C = getConstructor(this)
+ , capability = new PromiseCapability(C)
+ , reject = capability.reject;
+ var abrupt = perform(function(){
+ forOf(iterable, false, function(promise){
+ C.resolve(promise).then(capability.resolve, reject);
+ });
+ });
+ if(abrupt)reject(abrupt.error);
+ return capability.promise;
+ }
+ });
+
+/***/ },
+/* 125 */
+/***/ function(module, exports) {
+
+ module.exports = function(it, Constructor, name){
+ if(!(it instanceof Constructor))throw TypeError(name + ": use the 'new' operator!");
+ return it;
+ };
+
+/***/ },
+/* 126 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var ctx = __webpack_require__(6)
+ , call = __webpack_require__(107)
+ , isArrayIter = __webpack_require__(108)
+ , anObject = __webpack_require__(17)
+ , toLength = __webpack_require__(24)
+ , getIterFn = __webpack_require__(109);
+ module.exports = function(iterable, entries, fn, that){
+ var iterFn = getIterFn(iterable)
+ , f = ctx(fn, that, entries ? 2 : 1)
+ , index = 0
+ , length, step, iterator;
+ if(typeof iterFn != 'function')throw TypeError(iterable + ' is not iterable!');
+ // fast case for arrays with default iterator
+ if(isArrayIter(iterFn))for(length = toLength(iterable.length); length > index; index++){
+ entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);
+ } else for(iterator = iterFn.call(iterable); !(step = iterator.next()).done; ){
+ call(iterator, f, step.value, entries);
+ }
+ };
+
+/***/ },
+/* 127 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 7.3.20 SpeciesConstructor(O, defaultConstructor)
+ var anObject = __webpack_require__(17)
+ , aFunction = __webpack_require__(7)
+ , SPECIES = __webpack_require__(29)('species');
+ module.exports = function(O, D){
+ var C = anObject(O).constructor, S;
+ return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);
+ };
+
+/***/ },
+/* 128 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var global = __webpack_require__(4)
+ , macrotask = __webpack_require__(129).set
+ , Observer = global.MutationObserver || global.WebKitMutationObserver
+ , process = global.process
+ , Promise = global.Promise
+ , isNode = __webpack_require__(15)(process) == 'process'
+ , head, last, notify;
+
+ var flush = function(){
+ var parent, domain, fn;
+ if(isNode && (parent = process.domain)){
+ process.domain = null;
+ parent.exit();
+ }
+ while(head){
+ domain = head.domain;
+ fn = head.fn;
+ if(domain)domain.enter();
+ fn(); // <- currently we use it only for Promise - try / catch not required
+ if(domain)domain.exit();
+ head = head.next;
+ } last = undefined;
+ if(parent)parent.enter();
+ };
+
+ // Node.js
+ if(isNode){
+ notify = function(){
+ process.nextTick(flush);
+ };
+ // browsers with MutationObserver
+ } else if(Observer){
+ var toggle = 1
+ , node = document.createTextNode('');
+ new Observer(flush).observe(node, {characterData: true}); // eslint-disable-line no-new
+ notify = function(){
+ node.data = toggle = -toggle;
+ };
+ // environments with maybe non-completely correct, but existent Promise
+ } else if(Promise && Promise.resolve){
+ notify = function(){
+ Promise.resolve().then(flush);
+ };
+ // for other environments - macrotask based on:
+ // - setImmediate
+ // - MessageChannel
+ // - window.postMessag
+ // - onreadystatechange
+ // - setTimeout
+ } else {
+ notify = function(){
+ // strange IE + webpack dev server bug - use .call(global)
+ macrotask.call(global, flush);
+ };
+ }
+
+ module.exports = function asap(fn){
+ var task = {fn: fn, next: undefined, domain: isNode && process.domain};
+ if(last)last.next = task;
+ if(!head){
+ head = task;
+ notify();
+ } last = task;
+ };
+
+/***/ },
+/* 129 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var ctx = __webpack_require__(6)
+ , invoke = __webpack_require__(16)
+ , html = __webpack_require__(11)
+ , cel = __webpack_require__(12)
+ , global = __webpack_require__(4)
+ , process = global.process
+ , setTask = global.setImmediate
+ , clearTask = global.clearImmediate
+ , MessageChannel = global.MessageChannel
+ , counter = 0
+ , queue = {}
+ , ONREADYSTATECHANGE = 'onreadystatechange'
+ , defer, channel, port;
+ var run = function(){
+ var id = +this;
+ if(queue.hasOwnProperty(id)){
+ var fn = queue[id];
+ delete queue[id];
+ fn();
+ }
+ };
+ var listner = function(event){
+ run.call(event.data);
+ };
+ // Node.js 0.9+ & IE10+ has setImmediate, otherwise:
+ if(!setTask || !clearTask){
+ setTask = function setImmediate(fn){
+ var args = [], i = 1;
+ while(arguments.length > i)args.push(arguments[i++]);
+ queue[++counter] = function(){
+ invoke(typeof fn == 'function' ? fn : Function(fn), args);
+ };
+ defer(counter);
+ return counter;
+ };
+ clearTask = function clearImmediate(id){
+ delete queue[id];
+ };
+ // Node.js 0.8-
+ if(__webpack_require__(15)(process) == 'process'){
+ defer = function(id){
+ process.nextTick(ctx(run, id, 1));
+ };
+ // Browsers with MessageChannel, includes WebWorkers
+ } else if(MessageChannel){
+ channel = new MessageChannel;
+ port = channel.port2;
+ channel.port1.onmessage = listner;
+ defer = ctx(port.postMessage, port, 1);
+ // Browsers with postMessage, skip WebWorkers
+ // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'
+ } else if(global.addEventListener && typeof postMessage == 'function' && !global.importScripts){
+ defer = function(id){
+ global.postMessage(id + '', '*');
+ };
+ global.addEventListener('message', listner, false);
+ // IE8-
+ } else if(ONREADYSTATECHANGE in cel('script')){
+ defer = function(id){
+ html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function(){
+ html.removeChild(this);
+ run.call(id);
+ };
+ };
+ // Rest old browsers
+ } else {
+ defer = function(id){
+ setTimeout(ctx(run, id, 1), 0);
+ };
+ }
+ }
+ module.exports = {
+ set: setTask,
+ clear: clearTask
+ };
+
+/***/ },
+/* 130 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var redefine = __webpack_require__(33);
+ module.exports = function(target, src){
+ for(var key in src)redefine(target, key, src[key]);
+ return target;
+ };
+
+/***/ },
+/* 131 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var strong = __webpack_require__(132);
+
+ // 23.1 Map Objects
+ __webpack_require__(133)('Map', function(get){
+ return function Map(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };
+ }, {
+ // 23.1.3.6 Map.prototype.get(key)
+ get: function get(key){
+ var entry = strong.getEntry(this, key);
+ return entry && entry.v;
+ },
+ // 23.1.3.9 Map.prototype.set(key, value)
+ set: function set(key, value){
+ return strong.def(this, key === 0 ? 0 : key, value);
+ }
+ }, strong, true);
+
+/***/ },
+/* 132 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $ = __webpack_require__(2)
+ , hide = __webpack_require__(34)
+ , redefineAll = __webpack_require__(130)
+ , ctx = __webpack_require__(6)
+ , strictNew = __webpack_require__(125)
+ , defined = __webpack_require__(19)
+ , forOf = __webpack_require__(126)
+ , $iterDefine = __webpack_require__(103)
+ , step = __webpack_require__(115)
+ , ID = __webpack_require__(25)('id')
+ , $has = __webpack_require__(14)
+ , isObject = __webpack_require__(13)
+ , setSpecies = __webpack_require__(117)
+ , DESCRIPTORS = __webpack_require__(8)
+ , isExtensible = Object.isExtensible || isObject
+ , SIZE = DESCRIPTORS ? '_s' : 'size'
+ , id = 0;
+
+ var fastKey = function(it, create){
+ // return primitive with prefix
+ if(!isObject(it))return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
+ if(!$has(it, ID)){
+ // can't set id to frozen object
+ if(!isExtensible(it))return 'F';
+ // not necessary to add id
+ if(!create)return 'E';
+ // add missing object id
+ hide(it, ID, ++id);
+ // return object id with prefix
+ } return 'O' + it[ID];
+ };
+
+ var getEntry = function(that, key){
+ // fast case
+ var index = fastKey(key), entry;
+ if(index !== 'F')return that._i[index];
+ // frozen object case
+ for(entry = that._f; entry; entry = entry.n){
+ if(entry.k == key)return entry;
+ }
+ };
+
+ module.exports = {
+ getConstructor: function(wrapper, NAME, IS_MAP, ADDER){
+ var C = wrapper(function(that, iterable){
+ strictNew(that, C, NAME);
+ that._i = $.create(null); // index
+ that._f = undefined; // first entry
+ that._l = undefined; // last entry
+ that[SIZE] = 0; // size
+ if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);
+ });
+ redefineAll(C.prototype, {
+ // 23.1.3.1 Map.prototype.clear()
+ // 23.2.3.2 Set.prototype.clear()
+ clear: function clear(){
+ for(var that = this, data = that._i, entry = that._f; entry; entry = entry.n){
+ entry.r = true;
+ if(entry.p)entry.p = entry.p.n = undefined;
+ delete data[entry.i];
+ }
+ that._f = that._l = undefined;
+ that[SIZE] = 0;
+ },
+ // 23.1.3.3 Map.prototype.delete(key)
+ // 23.2.3.4 Set.prototype.delete(value)
+ 'delete': function(key){
+ var that = this
+ , entry = getEntry(that, key);
+ if(entry){
+ var next = entry.n
+ , prev = entry.p;
+ delete that._i[entry.i];
+ entry.r = true;
+ if(prev)prev.n = next;
+ if(next)next.p = prev;
+ if(that._f == entry)that._f = next;
+ if(that._l == entry)that._l = prev;
+ that[SIZE]--;
+ } return !!entry;
+ },
+ // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)
+ // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)
+ forEach: function forEach(callbackfn /*, that = undefined */){
+ var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3)
+ , entry;
+ while(entry = entry ? entry.n : this._f){
+ f(entry.v, entry.k, this);
+ // revert to the last existing entry
+ while(entry && entry.r)entry = entry.p;
+ }
+ },
+ // 23.1.3.7 Map.prototype.has(key)
+ // 23.2.3.7 Set.prototype.has(value)
+ has: function has(key){
+ return !!getEntry(this, key);
+ }
+ });
+ if(DESCRIPTORS)$.setDesc(C.prototype, 'size', {
+ get: function(){
+ return defined(this[SIZE]);
+ }
+ });
+ return C;
+ },
+ def: function(that, key, value){
+ var entry = getEntry(that, key)
+ , prev, index;
+ // change existing entry
+ if(entry){
+ entry.v = value;
+ // create new entry
+ } else {
+ that._l = entry = {
+ i: index = fastKey(key, true), // <- index
+ k: key, // <- key
+ v: value, // <- value
+ p: prev = that._l, // <- previous entry
+ n: undefined, // <- next entry
+ r: false // <- removed
+ };
+ if(!that._f)that._f = entry;
+ if(prev)prev.n = entry;
+ that[SIZE]++;
+ // add to index
+ if(index !== 'F')that._i[index] = entry;
+ } return that;
+ },
+ getEntry: getEntry,
+ setStrong: function(C, NAME, IS_MAP){
+ // add .keys, .values, .entries, [@@iterator]
+ // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11
+ $iterDefine(C, NAME, function(iterated, kind){
+ this._t = iterated; // target
+ this._k = kind; // kind
+ this._l = undefined; // previous
+ }, function(){
+ var that = this
+ , kind = that._k
+ , entry = that._l;
+ // revert to the last existing entry
+ while(entry && entry.r)entry = entry.p;
+ // get next entry
+ if(!that._t || !(that._l = entry = entry ? entry.n : that._t._f)){
+ // or finish the iteration
+ that._t = undefined;
+ return step(1);
+ }
+ // return step by kind
+ if(kind == 'keys' )return step(0, entry.k);
+ if(kind == 'values')return step(0, entry.v);
+ return step(0, [entry.k, entry.v]);
+ }, IS_MAP ? 'entries' : 'values' , !IS_MAP, true);
+
+ // add [@@species], 23.1.2.2, 23.2.2.2
+ setSpecies(NAME);
+ }
+ };
+
+/***/ },
+/* 133 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $ = __webpack_require__(2)
+ , global = __webpack_require__(4)
+ , $export = __webpack_require__(3)
+ , fails = __webpack_require__(9)
+ , hide = __webpack_require__(34)
+ , redefineAll = __webpack_require__(130)
+ , forOf = __webpack_require__(126)
+ , strictNew = __webpack_require__(125)
+ , isObject = __webpack_require__(13)
+ , setToStringTag = __webpack_require__(35)
+ , DESCRIPTORS = __webpack_require__(8);
+
+ module.exports = function(NAME, wrapper, methods, common, IS_MAP, IS_WEAK){
+ var Base = global[NAME]
+ , C = Base
+ , ADDER = IS_MAP ? 'set' : 'add'
+ , proto = C && C.prototype
+ , O = {};
+ if(!DESCRIPTORS || typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function(){
+ new C().entries().next();
+ }))){
+ // create collection constructor
+ C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);
+ redefineAll(C.prototype, methods);
+ } else {
+ C = wrapper(function(target, iterable){
+ strictNew(target, C, NAME);
+ target._c = new Base;
+ if(iterable != undefined)forOf(iterable, IS_MAP, target[ADDER], target);
+ });
+ $.each.call('add,clear,delete,forEach,get,has,set,keys,values,entries'.split(','),function(KEY){
+ var IS_ADDER = KEY == 'add' || KEY == 'set';
+ if(KEY in proto && !(IS_WEAK && KEY == 'clear'))hide(C.prototype, KEY, function(a, b){
+ if(!IS_ADDER && IS_WEAK && !isObject(a))return KEY == 'get' ? undefined : false;
+ var result = this._c[KEY](a === 0 ? 0 : a, b);
+ return IS_ADDER ? this : result;
+ });
+ });
+ if('size' in proto)$.setDesc(C.prototype, 'size', {
+ get: function(){
+ return this._c.size;
+ }
+ });
+ }
+
+ setToStringTag(C, NAME);
+
+ O[NAME] = C;
+ $export($export.G + $export.W + $export.F, O);
+
+ if(!IS_WEAK)common.setStrong(C, NAME, IS_MAP);
+
+ return C;
+ };
+
+/***/ },
+/* 134 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var strong = __webpack_require__(132);
+
+ // 23.2 Set Objects
+ __webpack_require__(133)('Set', function(get){
+ return function Set(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };
+ }, {
+ // 23.2.3.1 Set.prototype.add(value)
+ add: function add(value){
+ return strong.def(this, value = value === 0 ? 0 : value, value);
+ }
+ }, strong);
+
+/***/ },
+/* 135 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $ = __webpack_require__(2)
+ , redefine = __webpack_require__(33)
+ , weak = __webpack_require__(136)
+ , isObject = __webpack_require__(13)
+ , has = __webpack_require__(14)
+ , frozenStore = weak.frozenStore
+ , WEAK = weak.WEAK
+ , isExtensible = Object.isExtensible || isObject
+ , tmp = {};
+
+ // 23.3 WeakMap Objects
+ var $WeakMap = __webpack_require__(133)('WeakMap', function(get){
+ return function WeakMap(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };
+ }, {
+ // 23.3.3.3 WeakMap.prototype.get(key)
+ get: function get(key){
+ if(isObject(key)){
+ if(!isExtensible(key))return frozenStore(this).get(key);
+ if(has(key, WEAK))return key[WEAK][this._i];
+ }
+ },
+ // 23.3.3.5 WeakMap.prototype.set(key, value)
+ set: function set(key, value){
+ return weak.def(this, key, value);
+ }
+ }, weak, true, true);
+
+ // IE11 WeakMap frozen keys fix
+ if(new $WeakMap().set((Object.freeze || Object)(tmp), 7).get(tmp) != 7){
+ $.each.call(['delete', 'has', 'get', 'set'], function(key){
+ var proto = $WeakMap.prototype
+ , method = proto[key];
+ redefine(proto, key, function(a, b){
+ // store frozen objects on leaky map
+ if(isObject(a) && !isExtensible(a)){
+ var result = frozenStore(this)[key](a, b);
+ return key == 'set' ? this : result;
+ // store all the rest on native weakmap
+ } return method.call(this, a, b);
+ });
+ });
+ }
+
+/***/ },
+/* 136 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var hide = __webpack_require__(34)
+ , redefineAll = __webpack_require__(130)
+ , anObject = __webpack_require__(17)
+ , isObject = __webpack_require__(13)
+ , strictNew = __webpack_require__(125)
+ , forOf = __webpack_require__(126)
+ , createArrayMethod = __webpack_require__(26)
+ , $has = __webpack_require__(14)
+ , WEAK = __webpack_require__(25)('weak')
+ , isExtensible = Object.isExtensible || isObject
+ , arrayFind = createArrayMethod(5)
+ , arrayFindIndex = createArrayMethod(6)
+ , id = 0;
+
+ // fallback for frozen keys
+ var frozenStore = function(that){
+ return that._l || (that._l = new FrozenStore);
+ };
+ var FrozenStore = function(){
+ this.a = [];
+ };
+ var findFrozen = function(store, key){
+ return arrayFind(store.a, function(it){
+ return it[0] === key;
+ });
+ };
+ FrozenStore.prototype = {
+ get: function(key){
+ var entry = findFrozen(this, key);
+ if(entry)return entry[1];
+ },
+ has: function(key){
+ return !!findFrozen(this, key);
+ },
+ set: function(key, value){
+ var entry = findFrozen(this, key);
+ if(entry)entry[1] = value;
+ else this.a.push([key, value]);
+ },
+ 'delete': function(key){
+ var index = arrayFindIndex(this.a, function(it){
+ return it[0] === key;
+ });
+ if(~index)this.a.splice(index, 1);
+ return !!~index;
+ }
+ };
+
+ module.exports = {
+ getConstructor: function(wrapper, NAME, IS_MAP, ADDER){
+ var C = wrapper(function(that, iterable){
+ strictNew(that, C, NAME);
+ that._i = id++; // collection id
+ that._l = undefined; // leak store for frozen objects
+ if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);
+ });
+ redefineAll(C.prototype, {
+ // 23.3.3.2 WeakMap.prototype.delete(key)
+ // 23.4.3.3 WeakSet.prototype.delete(value)
+ 'delete': function(key){
+ if(!isObject(key))return false;
+ if(!isExtensible(key))return frozenStore(this)['delete'](key);
+ return $has(key, WEAK) && $has(key[WEAK], this._i) && delete key[WEAK][this._i];
+ },
+ // 23.3.3.4 WeakMap.prototype.has(key)
+ // 23.4.3.4 WeakSet.prototype.has(value)
+ has: function has(key){
+ if(!isObject(key))return false;
+ if(!isExtensible(key))return frozenStore(this).has(key);
+ return $has(key, WEAK) && $has(key[WEAK], this._i);
+ }
+ });
+ return C;
+ },
+ def: function(that, key, value){
+ if(!isExtensible(anObject(key))){
+ frozenStore(that).set(key, value);
+ } else {
+ $has(key, WEAK) || hide(key, WEAK, {});
+ key[WEAK][that._i] = value;
+ } return that;
+ },
+ frozenStore: frozenStore,
+ WEAK: WEAK
+ };
+
+/***/ },
+/* 137 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var weak = __webpack_require__(136);
+
+ // 23.4 WeakSet Objects
+ __webpack_require__(133)('WeakSet', function(get){
+ return function WeakSet(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };
+ }, {
+ // 23.4.3.1 WeakSet.prototype.add(value)
+ add: function add(value){
+ return weak.def(this, value, true);
+ }
+ }, weak, false, true);
+
+/***/ },
+/* 138 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.1 Reflect.apply(target, thisArgument, argumentsList)
+ var $export = __webpack_require__(3)
+ , _apply = Function.apply
+ , anObject = __webpack_require__(17);
+
+ $export($export.S, 'Reflect', {
+ apply: function apply(target, thisArgument, argumentsList){
+ return _apply.call(target, thisArgument, anObject(argumentsList));
+ }
+ });
+
+/***/ },
+/* 139 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.2 Reflect.construct(target, argumentsList [, newTarget])
+ var $ = __webpack_require__(2)
+ , $export = __webpack_require__(3)
+ , aFunction = __webpack_require__(7)
+ , anObject = __webpack_require__(17)
+ , isObject = __webpack_require__(13)
+ , bind = Function.bind || __webpack_require__(5).Function.prototype.bind;
+
+ // MS Edge supports only 2 arguments
+ // FF Nightly sets third argument as `new.target`, but does not create `this` from it
+ $export($export.S + $export.F * __webpack_require__(9)(function(){
+ function F(){}
+ return !(Reflect.construct(function(){}, [], F) instanceof F);
+ }), 'Reflect', {
+ construct: function construct(Target, args /*, newTarget*/){
+ aFunction(Target);
+ anObject(args);
+ var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);
+ if(Target == newTarget){
+ // w/o altered newTarget, optimization for 0-4 arguments
+ switch(args.length){
+ case 0: return new Target;
+ case 1: return new Target(args[0]);
+ case 2: return new Target(args[0], args[1]);
+ case 3: return new Target(args[0], args[1], args[2]);
+ case 4: return new Target(args[0], args[1], args[2], args[3]);
+ }
+ // w/o altered newTarget, lot of arguments case
+ var $args = [null];
+ $args.push.apply($args, args);
+ return new (bind.apply(Target, $args));
+ }
+ // with altered newTarget, not support built-in constructors
+ var proto = newTarget.prototype
+ , instance = $.create(isObject(proto) ? proto : Object.prototype)
+ , result = Function.apply.call(Target, instance, args);
+ return isObject(result) ? result : instance;
+ }
+ });
+
+/***/ },
+/* 140 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.3 Reflect.defineProperty(target, propertyKey, attributes)
+ var $ = __webpack_require__(2)
+ , $export = __webpack_require__(3)
+ , anObject = __webpack_require__(17);
+
+ // MS Edge has broken Reflect.defineProperty - throwing instead of returning false
+ $export($export.S + $export.F * __webpack_require__(9)(function(){
+ Reflect.defineProperty($.setDesc({}, 1, {value: 1}), 1, {value: 2});
+ }), 'Reflect', {
+ defineProperty: function defineProperty(target, propertyKey, attributes){
+ anObject(target);
+ try {
+ $.setDesc(target, propertyKey, attributes);
+ return true;
+ } catch(e){
+ return false;
+ }
+ }
+ });
+
+/***/ },
+/* 141 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.4 Reflect.deleteProperty(target, propertyKey)
+ var $export = __webpack_require__(3)
+ , getDesc = __webpack_require__(2).getDesc
+ , anObject = __webpack_require__(17);
+
+ $export($export.S, 'Reflect', {
+ deleteProperty: function deleteProperty(target, propertyKey){
+ var desc = getDesc(anObject(target), propertyKey);
+ return desc && !desc.configurable ? false : delete target[propertyKey];
+ }
+ });
+
+/***/ },
+/* 142 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ // 26.1.5 Reflect.enumerate(target)
+ var $export = __webpack_require__(3)
+ , anObject = __webpack_require__(17);
+ var Enumerate = function(iterated){
+ this._t = anObject(iterated); // target
+ this._i = 0; // next index
+ var keys = this._k = [] // keys
+ , key;
+ for(key in iterated)keys.push(key);
+ };
+ __webpack_require__(105)(Enumerate, 'Object', function(){
+ var that = this
+ , keys = that._k
+ , key;
+ do {
+ if(that._i >= keys.length)return {value: undefined, done: true};
+ } while(!((key = keys[that._i++]) in that._t));
+ return {value: key, done: false};
+ });
+
+ $export($export.S, 'Reflect', {
+ enumerate: function enumerate(target){
+ return new Enumerate(target);
+ }
+ });
+
+/***/ },
+/* 143 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.6 Reflect.get(target, propertyKey [, receiver])
+ var $ = __webpack_require__(2)
+ , has = __webpack_require__(14)
+ , $export = __webpack_require__(3)
+ , isObject = __webpack_require__(13)
+ , anObject = __webpack_require__(17);
+
+ function get(target, propertyKey/*, receiver*/){
+ var receiver = arguments.length < 3 ? target : arguments[2]
+ , desc, proto;
+ if(anObject(target) === receiver)return target[propertyKey];
+ if(desc = $.getDesc(target, propertyKey))return has(desc, 'value')
+ ? desc.value
+ : desc.get !== undefined
+ ? desc.get.call(receiver)
+ : undefined;
+ if(isObject(proto = $.getProto(target)))return get(proto, propertyKey, receiver);
+ }
+
+ $export($export.S, 'Reflect', {get: get});
+
+/***/ },
+/* 144 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.7 Reflect.getOwnPropertyDescriptor(target, propertyKey)
+ var $ = __webpack_require__(2)
+ , $export = __webpack_require__(3)
+ , anObject = __webpack_require__(17);
+
+ $export($export.S, 'Reflect', {
+ getOwnPropertyDescriptor: function getOwnPropertyDescriptor(target, propertyKey){
+ return $.getDesc(anObject(target), propertyKey);
+ }
+ });
+
+/***/ },
+/* 145 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.8 Reflect.getPrototypeOf(target)
+ var $export = __webpack_require__(3)
+ , getProto = __webpack_require__(2).getProto
+ , anObject = __webpack_require__(17);
+
+ $export($export.S, 'Reflect', {
+ getPrototypeOf: function getPrototypeOf(target){
+ return getProto(anObject(target));
+ }
+ });
+
+/***/ },
+/* 146 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.9 Reflect.has(target, propertyKey)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Reflect', {
+ has: function has(target, propertyKey){
+ return propertyKey in target;
+ }
+ });
+
+/***/ },
+/* 147 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.10 Reflect.isExtensible(target)
+ var $export = __webpack_require__(3)
+ , anObject = __webpack_require__(17)
+ , $isExtensible = Object.isExtensible;
+
+ $export($export.S, 'Reflect', {
+ isExtensible: function isExtensible(target){
+ anObject(target);
+ return $isExtensible ? $isExtensible(target) : true;
+ }
+ });
+
+/***/ },
+/* 148 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.11 Reflect.ownKeys(target)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Reflect', {ownKeys: __webpack_require__(149)});
+
+/***/ },
+/* 149 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // all object keys, includes non-enumerable and symbols
+ var $ = __webpack_require__(2)
+ , anObject = __webpack_require__(17)
+ , Reflect = __webpack_require__(4).Reflect;
+ module.exports = Reflect && Reflect.ownKeys || function ownKeys(it){
+ var keys = $.getNames(anObject(it))
+ , getSymbols = $.getSymbols;
+ return getSymbols ? keys.concat(getSymbols(it)) : keys;
+ };
+
+/***/ },
+/* 150 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.12 Reflect.preventExtensions(target)
+ var $export = __webpack_require__(3)
+ , anObject = __webpack_require__(17)
+ , $preventExtensions = Object.preventExtensions;
+
+ $export($export.S, 'Reflect', {
+ preventExtensions: function preventExtensions(target){
+ anObject(target);
+ try {
+ if($preventExtensions)$preventExtensions(target);
+ return true;
+ } catch(e){
+ return false;
+ }
+ }
+ });
+
+/***/ },
+/* 151 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.13 Reflect.set(target, propertyKey, V [, receiver])
+ var $ = __webpack_require__(2)
+ , has = __webpack_require__(14)
+ , $export = __webpack_require__(3)
+ , createDesc = __webpack_require__(10)
+ , anObject = __webpack_require__(17)
+ , isObject = __webpack_require__(13);
+
+ function set(target, propertyKey, V/*, receiver*/){
+ var receiver = arguments.length < 4 ? target : arguments[3]
+ , ownDesc = $.getDesc(anObject(target), propertyKey)
+ , existingDescriptor, proto;
+ if(!ownDesc){
+ if(isObject(proto = $.getProto(target))){
+ return set(proto, propertyKey, V, receiver);
+ }
+ ownDesc = createDesc(0);
+ }
+ if(has(ownDesc, 'value')){
+ if(ownDesc.writable === false || !isObject(receiver))return false;
+ existingDescriptor = $.getDesc(receiver, propertyKey) || createDesc(0);
+ existingDescriptor.value = V;
+ $.setDesc(receiver, propertyKey, existingDescriptor);
+ return true;
+ }
+ return ownDesc.set === undefined ? false : (ownDesc.set.call(receiver, V), true);
+ }
+
+ $export($export.S, 'Reflect', {set: set});
+
+/***/ },
+/* 152 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.14 Reflect.setPrototypeOf(target, proto)
+ var $export = __webpack_require__(3)
+ , setProto = __webpack_require__(45);
+
+ if(setProto)$export($export.S, 'Reflect', {
+ setPrototypeOf: function setPrototypeOf(target, proto){
+ setProto.check(target, proto);
+ try {
+ setProto.set(target, proto);
+ return true;
+ } catch(e){
+ return false;
+ }
+ }
+ });
+
+/***/ },
+/* 153 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $export = __webpack_require__(3)
+ , $includes = __webpack_require__(31)(true);
+
+ $export($export.P, 'Array', {
+ // https://github.com/domenic/Array.prototype.includes
+ includes: function includes(el /*, fromIndex = 0 */){
+ return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);
+ }
+ });
+
+ __webpack_require__(114)('includes');
+
+/***/ },
+/* 154 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ // https://github.com/mathiasbynens/String.prototype.at
+ var $export = __webpack_require__(3)
+ , $at = __webpack_require__(93)(true);
+
+ $export($export.P, 'String', {
+ at: function at(pos){
+ return $at(this, pos);
+ }
+ });
+
+/***/ },
+/* 155 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $export = __webpack_require__(3)
+ , $pad = __webpack_require__(156);
+
+ $export($export.P, 'String', {
+ padLeft: function padLeft(maxLength /*, fillString = ' ' */){
+ return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, true);
+ }
+ });
+
+/***/ },
+/* 156 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // https://github.com/ljharb/proposal-string-pad-left-right
+ var toLength = __webpack_require__(24)
+ , repeat = __webpack_require__(100)
+ , defined = __webpack_require__(19);
+
+ module.exports = function(that, maxLength, fillString, left){
+ var S = String(defined(that))
+ , stringLength = S.length
+ , fillStr = fillString === undefined ? ' ' : String(fillString)
+ , intMaxLength = toLength(maxLength);
+ if(intMaxLength <= stringLength)return S;
+ if(fillStr == '')fillStr = ' ';
+ var fillLen = intMaxLength - stringLength
+ , stringFiller = repeat.call(fillStr, Math.ceil(fillLen / fillStr.length));
+ if(stringFiller.length > fillLen)stringFiller = stringFiller.slice(0, fillLen);
+ return left ? stringFiller + S : S + stringFiller;
+ };
+
+/***/ },
+/* 157 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $export = __webpack_require__(3)
+ , $pad = __webpack_require__(156);
+
+ $export($export.P, 'String', {
+ padRight: function padRight(maxLength /*, fillString = ' ' */){
+ return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, false);
+ }
+ });
+
+/***/ },
+/* 158 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ // https://github.com/sebmarkbage/ecmascript-string-left-right-trim
+ __webpack_require__(91)('trimLeft', function($trim){
+ return function trimLeft(){
+ return $trim(this, 1);
+ };
+ });
+
+/***/ },
+/* 159 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ // https://github.com/sebmarkbage/ecmascript-string-left-right-trim
+ __webpack_require__(91)('trimRight', function($trim){
+ return function trimRight(){
+ return $trim(this, 2);
+ };
+ });
+
+/***/ },
+/* 160 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // https://github.com/benjamingr/RexExp.escape
+ var $export = __webpack_require__(3)
+ , $re = __webpack_require__(161)(/[\\^$*+?.()|[\]{}]/g, '\\$&');
+
+ $export($export.S, 'RegExp', {escape: function escape(it){ return $re(it); }});
+
+
+/***/ },
+/* 161 */
+/***/ function(module, exports) {
+
+ module.exports = function(regExp, replace){
+ var replacer = replace === Object(replace) ? function(part){
+ return replace[part];
+ } : replace;
+ return function(it){
+ return String(it).replace(regExp, replacer);
+ };
+ };
+
+/***/ },
+/* 162 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // https://gist.github.com/WebReflection/9353781
+ var $ = __webpack_require__(2)
+ , $export = __webpack_require__(3)
+ , ownKeys = __webpack_require__(149)
+ , toIObject = __webpack_require__(20)
+ , createDesc = __webpack_require__(10);
+
+ $export($export.S, 'Object', {
+ getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object){
+ var O = toIObject(object)
+ , setDesc = $.setDesc
+ , getDesc = $.getDesc
+ , keys = ownKeys(O)
+ , result = {}
+ , i = 0
+ , key, D;
+ while(keys.length > i){
+ D = getDesc(O, key = keys[i++]);
+ if(key in result)setDesc(result, key, createDesc(0, D));
+ else result[key] = D;
+ } return result;
+ }
+ });
+
+/***/ },
+/* 163 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // http://goo.gl/XkBrjD
+ var $export = __webpack_require__(3)
+ , $values = __webpack_require__(164)(false);
+
+ $export($export.S, 'Object', {
+ values: function values(it){
+ return $values(it);
+ }
+ });
+
+/***/ },
+/* 164 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $ = __webpack_require__(2)
+ , toIObject = __webpack_require__(20)
+ , isEnum = $.isEnum;
+ module.exports = function(isEntries){
+ return function(it){
+ var O = toIObject(it)
+ , keys = $.getKeys(O)
+ , length = keys.length
+ , i = 0
+ , result = []
+ , key;
+ while(length > i)if(isEnum.call(O, key = keys[i++])){
+ result.push(isEntries ? [key, O[key]] : O[key]);
+ } return result;
+ };
+ };
+
+/***/ },
+/* 165 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // http://goo.gl/XkBrjD
+ var $export = __webpack_require__(3)
+ , $entries = __webpack_require__(164)(true);
+
+ $export($export.S, 'Object', {
+ entries: function entries(it){
+ return $entries(it);
+ }
+ });
+
+/***/ },
+/* 166 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // https://github.com/DavidBruant/Map-Set.prototype.toJSON
+ var $export = __webpack_require__(3);
+
+ $export($export.P, 'Map', {toJSON: __webpack_require__(167)('Map')});
+
+/***/ },
+/* 167 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // https://github.com/DavidBruant/Map-Set.prototype.toJSON
+ var forOf = __webpack_require__(126)
+ , classof = __webpack_require__(110);
+ module.exports = function(NAME){
+ return function toJSON(){
+ if(classof(this) != NAME)throw TypeError(NAME + "#toJSON isn't generic");
+ var arr = [];
+ forOf(this, false, arr.push, arr);
+ return arr;
+ };
+ };
+
+/***/ },
+/* 168 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // https://github.com/DavidBruant/Map-Set.prototype.toJSON
+ var $export = __webpack_require__(3);
+
+ $export($export.P, 'Set', {toJSON: __webpack_require__(167)('Set')});
+
+/***/ },
+/* 169 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $export = __webpack_require__(3)
+ , $task = __webpack_require__(129);
+ $export($export.G + $export.B, {
+ setImmediate: $task.set,
+ clearImmediate: $task.clear
+ });
+
+/***/ },
+/* 170 */
+/***/ function(module, exports, __webpack_require__) {
+
+ __webpack_require__(113);
+ var Iterators = __webpack_require__(104);
+ Iterators.NodeList = Iterators.HTMLCollection = Iterators.Array;
+
+/***/ },
+/* 171 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // ie9- setTimeout & setInterval additional parameters fix
+ var global = __webpack_require__(4)
+ , $export = __webpack_require__(3)
+ , invoke = __webpack_require__(16)
+ , partial = __webpack_require__(172)
+ , navigator = global.navigator
+ , MSIE = !!navigator && /MSIE .\./.test(navigator.userAgent); // <- dirty ie9- check
+ var wrap = function(set){
+ return MSIE ? function(fn, time /*, ...args */){
+ return set(invoke(
+ partial,
+ [].slice.call(arguments, 2),
+ typeof fn == 'function' ? fn : Function(fn)
+ ), time);
+ } : set;
+ };
+ $export($export.G + $export.B + $export.F * MSIE, {
+ setTimeout: wrap(global.setTimeout),
+ setInterval: wrap(global.setInterval)
+ });
+
+/***/ },
+/* 172 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var path = __webpack_require__(173)
+ , invoke = __webpack_require__(16)
+ , aFunction = __webpack_require__(7);
+ module.exports = function(/* ...pargs */){
+ var fn = aFunction(this)
+ , length = arguments.length
+ , pargs = Array(length)
+ , i = 0
+ , _ = path._
+ , holder = false;
+ while(length > i)if((pargs[i] = arguments[i++]) === _)holder = true;
+ return function(/* ...args */){
+ var that = this
+ , $$ = arguments
+ , $$len = $$.length
+ , j = 0, k = 0, args;
+ if(!holder && !$$len)return invoke(fn, pargs, that);
+ args = pargs.slice();
+ if(holder)for(;length > j; j++)if(args[j] === _)args[j] = $$[k++];
+ while($$len > k)args.push($$[k++]);
+ return invoke(fn, args, that);
+ };
+ };
+
+/***/ },
+/* 173 */
+/***/ function(module, exports, __webpack_require__) {
+
+ module.exports = __webpack_require__(5);
+
+/***/ },
+/* 174 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $ = __webpack_require__(2)
+ , ctx = __webpack_require__(6)
+ , $export = __webpack_require__(3)
+ , createDesc = __webpack_require__(10)
+ , assign = __webpack_require__(41)
+ , keyOf = __webpack_require__(36)
+ , aFunction = __webpack_require__(7)
+ , forOf = __webpack_require__(126)
+ , isIterable = __webpack_require__(175)
+ , $iterCreate = __webpack_require__(105)
+ , step = __webpack_require__(115)
+ , isObject = __webpack_require__(13)
+ , toIObject = __webpack_require__(20)
+ , DESCRIPTORS = __webpack_require__(8)
+ , has = __webpack_require__(14)
+ , getKeys = $.getKeys;
+
+ // 0 -> Dict.forEach
+ // 1 -> Dict.map
+ // 2 -> Dict.filter
+ // 3 -> Dict.some
+ // 4 -> Dict.every
+ // 5 -> Dict.find
+ // 6 -> Dict.findKey
+ // 7 -> Dict.mapPairs
+ var createDictMethod = function(TYPE){
+ var IS_MAP = TYPE == 1
+ , IS_EVERY = TYPE == 4;
+ return function(object, callbackfn, that /* = undefined */){
+ var f = ctx(callbackfn, that, 3)
+ , O = toIObject(object)
+ , result = IS_MAP || TYPE == 7 || TYPE == 2
+ ? new (typeof this == 'function' ? this : Dict) : undefined
+ , key, val, res;
+ for(key in O)if(has(O, key)){
+ val = O[key];
+ res = f(val, key, object);
+ if(TYPE){
+ if(IS_MAP)result[key] = res; // map
+ else if(res)switch(TYPE){
+ case 2: result[key] = val; break; // filter
+ case 3: return true; // some
+ case 5: return val; // find
+ case 6: return key; // findKey
+ case 7: result[res[0]] = res[1]; // mapPairs
+ } else if(IS_EVERY)return false; // every
+ }
+ }
+ return TYPE == 3 || IS_EVERY ? IS_EVERY : result;
+ };
+ };
+ var findKey = createDictMethod(6);
+
+ var createDictIter = function(kind){
+ return function(it){
+ return new DictIterator(it, kind);
+ };
+ };
+ var DictIterator = function(iterated, kind){
+ this._t = toIObject(iterated); // target
+ this._a = getKeys(iterated); // keys
+ this._i = 0; // next index
+ this._k = kind; // kind
+ };
+ $iterCreate(DictIterator, 'Dict', function(){
+ var that = this
+ , O = that._t
+ , keys = that._a
+ , kind = that._k
+ , key;
+ do {
+ if(that._i >= keys.length){
+ that._t = undefined;
+ return step(1);
+ }
+ } while(!has(O, key = keys[that._i++]));
+ if(kind == 'keys' )return step(0, key);
+ if(kind == 'values')return step(0, O[key]);
+ return step(0, [key, O[key]]);
+ });
+
+ function Dict(iterable){
+ var dict = $.create(null);
+ if(iterable != undefined){
+ if(isIterable(iterable)){
+ forOf(iterable, true, function(key, value){
+ dict[key] = value;
+ });
+ } else assign(dict, iterable);
+ }
+ return dict;
+ }
+ Dict.prototype = null;
+
+ function reduce(object, mapfn, init){
+ aFunction(mapfn);
+ var O = toIObject(object)
+ , keys = getKeys(O)
+ , length = keys.length
+ , i = 0
+ , memo, key;
+ if(arguments.length < 3){
+ if(!length)throw TypeError('Reduce of empty object with no initial value');
+ memo = O[keys[i++]];
+ } else memo = Object(init);
+ while(length > i)if(has(O, key = keys[i++])){
+ memo = mapfn(memo, O[key], key, object);
+ }
+ return memo;
+ }
+
+ function includes(object, el){
+ return (el == el ? keyOf(object, el) : findKey(object, function(it){
+ return it != it;
+ })) !== undefined;
+ }
+
+ function get(object, key){
+ if(has(object, key))return object[key];
+ }
+ function set(object, key, value){
+ if(DESCRIPTORS && key in Object)$.setDesc(object, key, createDesc(0, value));
+ else object[key] = value;
+ return object;
+ }
+
+ function isDict(it){
+ return isObject(it) && $.getProto(it) === Dict.prototype;
+ }
+
+ $export($export.G + $export.F, {Dict: Dict});
+
+ $export($export.S, 'Dict', {
+ keys: createDictIter('keys'),
+ values: createDictIter('values'),
+ entries: createDictIter('entries'),
+ forEach: createDictMethod(0),
+ map: createDictMethod(1),
+ filter: createDictMethod(2),
+ some: createDictMethod(3),
+ every: createDictMethod(4),
+ find: createDictMethod(5),
+ findKey: findKey,
+ mapPairs: createDictMethod(7),
+ reduce: reduce,
+ keyOf: keyOf,
+ includes: includes,
+ has: has,
+ get: get,
+ set: set,
+ isDict: isDict
+ });
+
+/***/ },
+/* 175 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var classof = __webpack_require__(110)
+ , ITERATOR = __webpack_require__(29)('iterator')
+ , Iterators = __webpack_require__(104);
+ module.exports = __webpack_require__(5).isIterable = function(it){
+ var O = Object(it);
+ return O[ITERATOR] !== undefined
+ || '@@iterator' in O
+ || Iterators.hasOwnProperty(classof(O));
+ };
+
+/***/ },
+/* 176 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var anObject = __webpack_require__(17)
+ , get = __webpack_require__(109);
+ module.exports = __webpack_require__(5).getIterator = function(it){
+ var iterFn = get(it);
+ if(typeof iterFn != 'function')throw TypeError(it + ' is not iterable!');
+ return anObject(iterFn.call(it));
+ };
+
+/***/ },
+/* 177 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var global = __webpack_require__(4)
+ , core = __webpack_require__(5)
+ , $export = __webpack_require__(3)
+ , partial = __webpack_require__(172);
+ // https://esdiscuss.org/topic/promise-returning-delay-function
+ $export($export.G + $export.F, {
+ delay: function delay(time){
+ return new (core.Promise || global.Promise)(function(resolve){
+ setTimeout(partial.call(resolve, true), time);
+ });
+ }
+ });
+
+/***/ },
+/* 178 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var path = __webpack_require__(173)
+ , $export = __webpack_require__(3);
+
+ // Placeholder
+ __webpack_require__(5)._ = path._ = path._ || {};
+
+ $export($export.P + $export.F, 'Function', {part: __webpack_require__(172)});
+
+/***/ },
+/* 179 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $export = __webpack_require__(3);
+
+ $export($export.S + $export.F, 'Object', {isObject: __webpack_require__(13)});
+
+/***/ },
+/* 180 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $export = __webpack_require__(3);
+
+ $export($export.S + $export.F, 'Object', {classof: __webpack_require__(110)});
+
+/***/ },
+/* 181 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $export = __webpack_require__(3)
+ , define = __webpack_require__(182);
+
+ $export($export.S + $export.F, 'Object', {define: define});
+
+/***/ },
+/* 182 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $ = __webpack_require__(2)
+ , ownKeys = __webpack_require__(149)
+ , toIObject = __webpack_require__(20);
+
+ module.exports = function define(target, mixin){
+ var keys = ownKeys(toIObject(mixin))
+ , length = keys.length
+ , i = 0, key;
+ while(length > i)$.setDesc(target, key = keys[i++], $.getDesc(mixin, key));
+ return target;
+ };
+
+/***/ },
+/* 183 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $export = __webpack_require__(3)
+ , define = __webpack_require__(182)
+ , create = __webpack_require__(2).create;
+
+ $export($export.S + $export.F, 'Object', {
+ make: function(proto, mixin){
+ return define(create(proto), mixin);
+ }
+ });
+
+/***/ },
+/* 184 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ __webpack_require__(103)(Number, 'Number', function(iterated){
+ this._l = +iterated;
+ this._i = 0;
+ }, function(){
+ var i = this._i++
+ , done = !(i < this._l);
+ return {done: done, value: done ? undefined : i};
+ });
+
+/***/ },
+/* 185 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $export = __webpack_require__(3);
+ var $re = __webpack_require__(161)(/[&<>"']/g, {
+ '&': '&',
+ '<': '<',
+ '>': '>',
+ '"': '"',
+ "'": '''
+ });
+
+ $export($export.P + $export.F, 'String', {escapeHTML: function escapeHTML(){ return $re(this); }});
+
+/***/ },
+/* 186 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $export = __webpack_require__(3);
+ var $re = __webpack_require__(161)(/&(?:amp|lt|gt|quot|apos);/g, {
+ '&': '&',
+ '<': '<',
+ '>': '>',
+ '"': '"',
+ ''': "'"
+ });
+
+ $export($export.P + $export.F, 'String', {unescapeHTML: function unescapeHTML(){ return $re(this); }});
+
+/***/ },
+/* 187 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $ = __webpack_require__(2)
+ , global = __webpack_require__(4)
+ , $export = __webpack_require__(3)
+ , log = {}
+ , enabled = true;
+ // Methods from https://github.com/DeveloperToolsWG/console-object/blob/master/api.md
+ $.each.call((
+ 'assert,clear,count,debug,dir,dirxml,error,exception,group,groupCollapsed,groupEnd,' +
+ 'info,isIndependentlyComposed,log,markTimeline,profile,profileEnd,table,' +
+ 'time,timeEnd,timeline,timelineEnd,timeStamp,trace,warn'
+ ).split(','), function(key){
+ log[key] = function(){
+ var $console = global.console;
+ if(enabled && $console && $console[key]){
+ return Function.apply.call($console[key], $console, arguments);
+ }
+ };
+ });
+ $export($export.G + $export.F, {log: __webpack_require__(41)(log.log, log, {
+ enable: function(){
+ enabled = true;
+ },
+ disable: function(){
+ enabled = false;
+ }
+ })});
+
+/***/ },
+/* 188 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // JavaScript 1.6 / Strawman array statics shim
+ var $ = __webpack_require__(2)
+ , $export = __webpack_require__(3)
+ , $ctx = __webpack_require__(6)
+ , $Array = __webpack_require__(5).Array || Array
+ , statics = {};
+ var setStatics = function(keys, length){
+ $.each.call(keys.split(','), function(key){
+ if(length == undefined && key in $Array)statics[key] = $Array[key];
+ else if(key in [])statics[key] = $ctx(Function.call, [][key], length);
+ });
+ };
+ setStatics('pop,reverse,shift,keys,values,entries', 1);
+ setStatics('indexOf,every,some,forEach,map,filter,find,findIndex,includes', 3);
+ setStatics('join,slice,concat,push,splice,unshift,sort,lastIndexOf,' +
+ 'reduce,reduceRight,copyWithin,fill');
+ $export($export.S, 'Array', statics);
+
+/***/ }
+/******/ ]);
+// CommonJS export
+if(typeof module != 'undefined' && module.exports)module.exports = __e;
+// RequireJS export
+else if(typeof define == 'function' && define.amd)define(function(){return __e});
+// Export to global object
+else __g.core = __e;
+}(1, 1);
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/client/library.min.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/client/library.min.js
new file mode 100644
index 00000000..f665bedf
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/client/library.min.js
@@ -0,0 +1,9 @@
+/**
+ * core-js 1.2.7
+ * https://github.com/zloirock/core-js
+ * License: http://rock.mit-license.org
+ * © 2016 Denis Pushkarev
+ */
+!function(b,c,a){"use strict";!function(b){function __webpack_require__(c){if(a[c])return a[c].exports;var d=a[c]={exports:{},id:c,loaded:!1};return b[c].call(d.exports,d,d.exports,__webpack_require__),d.loaded=!0,d.exports}var a={};return __webpack_require__.m=b,__webpack_require__.c=a,__webpack_require__.p="",__webpack_require__(0)}([function(b,c,a){a(1),a(32),a(40),a(42),a(44),a(46),a(48),a(49),a(50),a(51),a(52),a(53),a(54),a(55),a(56),a(57),a(58),a(59),a(60),a(62),a(63),a(64),a(65),a(66),a(67),a(68),a(70),a(71),a(72),a(74),a(75),a(76),a(78),a(79),a(80),a(81),a(82),a(83),a(84),a(85),a(86),a(87),a(88),a(89),a(90),a(92),a(94),a(98),a(99),a(101),a(102),a(106),a(112),a(113),a(116),a(118),a(120),a(122),a(123),a(124),a(131),a(134),a(135),a(137),a(138),a(139),a(140),a(141),a(142),a(143),a(144),a(145),a(146),a(147),a(148),a(150),a(151),a(152),a(153),a(154),a(155),a(157),a(158),a(159),a(160),a(162),a(163),a(165),a(166),a(168),a(169),a(170),a(171),a(174),a(109),a(176),a(175),a(177),a(178),a(179),a(180),a(181),a(183),a(184),a(185),a(186),a(187),b.exports=a(188)},function(S,R,b){var r,d=b(2),c=b(3),x=b(8),O=b(10),o=b(11),E=b(12),n=b(14),N=b(15),J=b(16),j=b(9),p=b(17),v=b(7),I=b(13),Q=b(18),y=b(20),K=b(22),w=b(23),h=b(24),s=b(21),m=b(25)("__proto__"),g=b(26),A=b(31)(!1),B=Object.prototype,C=Array.prototype,k=C.slice,M=C.join,F=d.setDesc,L=d.getDesc,q=d.setDescs,u={};x||(r=!j(function(){return 7!=F(E("div"),"a",{get:function(){return 7}}).a}),d.setDesc=function(b,c,a){if(r)try{return F(b,c,a)}catch(d){}if("get"in a||"set"in a)throw TypeError("Accessors not supported!");return"value"in a&&(p(b)[c]=a.value),b},d.getDesc=function(a,b){if(r)try{return L(a,b)}catch(c){}return n(a,b)?O(!B.propertyIsEnumerable.call(a,b),a[b]):void 0},d.setDescs=q=function(a,b){p(a);for(var c,e=d.getKeys(b),g=e.length,f=0;g>f;)d.setDesc(a,c=e[f++],b[c]);return a}),c(c.S+c.F*!x,"Object",{getOwnPropertyDescriptor:d.getDesc,defineProperty:d.setDesc,defineProperties:q});var i="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(","),H=i.concat("length","prototype"),G=i.length,l=function(){var a,b=E("iframe"),c=G,d=">";for(b.style.display="none",o.appendChild(b),b.src="javascript:",a=b.contentWindow.document,a.open(),a.write("f;)n(e,c=a[f++])&&(~A(d,c)||d.push(c));return d}},t=function(){};c(c.S,"Object",{getPrototypeOf:d.getProto=d.getProto||function(a){return a=Q(a),n(a,m)?a[m]:"function"==typeof a.constructor&&a instanceof a.constructor?a.constructor.prototype:a instanceof Object?B:null},getOwnPropertyNames:d.getNames=d.getNames||D(H,H.length,!0),create:d.create=d.create||function(c,d){var b;return null!==c?(t.prototype=p(c),b=new t,t.prototype=null,b[m]=c):b=l(),d===a?b:q(b,d)},keys:d.getKeys=d.getKeys||D(i,G,!1)});var P=function(d,a,e){if(!(a in u)){for(var c=[],b=0;a>b;b++)c[b]="a["+b+"]";u[a]=Function("F,a","return new F("+c.join(",")+")")}return u[a](d,e)};c(c.P,"Function",{bind:function bind(c){var a=v(this),d=k.call(arguments,1),b=function(){var e=d.concat(k.call(arguments));return this instanceof b?P(a,e.length,e):J(a,e,c)};return I(a.prototype)&&(b.prototype=a.prototype),b}}),c(c.P+c.F*j(function(){o&&k.call(o)}),"Array",{slice:function(f,b){var d=h(this.length),g=N(this);if(b=b===a?d:b,"Array"==g)return k.call(this,f,b);for(var e=w(f,d),l=w(b,d),i=h(l-e),j=Array(i),c=0;i>c;c++)j[c]="String"==g?this.charAt(e+c):this[e+c];return j}}),c(c.P+c.F*(s!=Object),"Array",{join:function join(b){return M.call(s(this),b===a?",":b)}}),c(c.S,"Array",{isArray:b(28)});var z=function(a){return function(g,d){v(g);var c=s(this),e=h(c.length),b=a?e-1:0,f=a?-1:1;if(arguments.length<2)for(;;){if(b in c){d=c[b],b+=f;break}if(b+=f,a?0>b:b>=e)throw TypeError("Reduce of empty array with no initial value")}for(;a?b>=0:e>b;b+=f)b in c&&(d=g(d,c[b],b,this));return d}},f=function(a){return function(b){return a(this,b,arguments[1])}};c(c.P,"Array",{forEach:d.each=d.each||f(g(0)),map:f(g(1)),filter:f(g(2)),some:f(g(3)),every:f(g(4)),reduce:z(!1),reduceRight:z(!0),indexOf:f(A),lastIndexOf:function(d,e){var b=y(this),c=h(b.length),a=c-1;for(arguments.length>1&&(a=Math.min(a,K(e))),0>a&&(a=h(c+a));a>=0;a--)if(a in b&&b[a]===d)return a;return-1}}),c(c.S,"Date",{now:function(){return+new Date}});var e=function(a){return a>9?a:"0"+a};c(c.P+c.F*(j(function(){return"0385-07-25T07:06:39.999Z"!=new Date(-5e13-1).toISOString()})||!j(function(){new Date(NaN).toISOString()})),"Date",{toISOString:function toISOString(){if(!isFinite(this))throw RangeError("Invalid time value");var a=this,b=a.getUTCFullYear(),c=a.getUTCMilliseconds(),d=0>b?"-":b>9999?"+":"";return d+("00000"+Math.abs(b)).slice(d?-6:-4)+"-"+e(a.getUTCMonth()+1)+"-"+e(a.getUTCDate())+"T"+e(a.getUTCHours())+":"+e(a.getUTCMinutes())+":"+e(a.getUTCSeconds())+"."+(c>99?c:"0"+e(c))+"Z"}})},function(b,c){var a=Object;b.exports={create:a.create,getProto:a.getPrototypeOf,isEnum:{}.propertyIsEnumerable,getDesc:a.getOwnPropertyDescriptor,setDesc:a.defineProperty,setDescs:a.defineProperties,getKeys:a.keys,getNames:a.getOwnPropertyNames,getSymbols:a.getOwnPropertySymbols,each:[].forEach}},function(g,h,d){var c=d(4),e=d(5),f=d(6),b="prototype",a=function(h,j,l){var d,k,g,p=h&a.F,n=h&a.G,q=h&a.S,o=h&a.P,r=h&a.B,s=h&a.W,m=n?e:e[j]||(e[j]={}),i=n?c:q?c[j]:(c[j]||{})[b];n&&(l=j);for(d in l)k=!p&&i&&d in i,k&&d in m||(g=k?i[d]:l[d],m[d]=n&&"function"!=typeof i[d]?l[d]:r&&k?f(g,c):s&&i[d]==g?function(a){var c=function(b){return this instanceof a?new a(b):a(b)};return c[b]=a[b],c}(g):o&&"function"==typeof g?f(Function.call,g):g,o&&((m[b]||(m[b]={}))[d]=g))};a.F=1,a.G=2,a.S=4,a.P=8,a.B=16,a.W=32,g.exports=a},function(a,d){var b=a.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof c&&(c=b)},function(a,d){var c=a.exports={version:"1.2.6"};"number"==typeof b&&(b=c)},function(b,e,c){var d=c(7);b.exports=function(b,c,e){if(d(b),c===a)return b;switch(e){case 1:return function(a){return b.call(c,a)};case 2:return function(a,d){return b.call(c,a,d)};case 3:return function(a,d,e){return b.call(c,a,d,e)}}return function(){return b.apply(c,arguments)}}},function(a,b){a.exports=function(a){if("function"!=typeof a)throw TypeError(a+" is not a function!");return a}},function(a,c,b){a.exports=!b(9)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},function(a,b){a.exports=function(a){try{return!!a()}catch(b){return!0}}},function(a,b){a.exports=function(a,b){return{enumerable:!(1&a),configurable:!(2&a),writable:!(4&a),value:b}}},function(a,c,b){a.exports=b(4).document&&document.documentElement},function(d,f,b){var c=b(13),a=b(4).document,e=c(a)&&c(a.createElement);d.exports=function(b){return e?a.createElement(b):{}}},function(a,b){a.exports=function(a){return"object"==typeof a?null!==a:"function"==typeof a}},function(a,c){var b={}.hasOwnProperty;a.exports=function(a,c){return b.call(a,c)}},function(a,c){var b={}.toString;a.exports=function(a){return b.call(a).slice(8,-1)}},function(b,c){b.exports=function(c,b,d){var e=d===a;switch(b.length){case 0:return e?c():c.call(d);case 1:return e?c(b[0]):c.call(d,b[0]);case 2:return e?c(b[0],b[1]):c.call(d,b[0],b[1]);case 3:return e?c(b[0],b[1],b[2]):c.call(d,b[0],b[1],b[2]);case 4:return e?c(b[0],b[1],b[2],b[3]):c.call(d,b[0],b[1],b[2],b[3])}return c.apply(d,b)}},function(a,d,b){var c=b(13);a.exports=function(a){if(!c(a))throw TypeError(a+" is not an object!");return a}},function(a,d,b){var c=b(19);a.exports=function(a){return Object(c(a))}},function(b,c){b.exports=function(b){if(b==a)throw TypeError("Can't call method on "+b);return b}},function(b,e,a){var c=a(21),d=a(19);b.exports=function(a){return c(d(a))}},function(a,d,b){var c=b(15);a.exports=Object("z").propertyIsEnumerable(0)?Object:function(a){return"String"==c(a)?a.split(""):Object(a)}},function(a,d){var b=Math.ceil,c=Math.floor;a.exports=function(a){return isNaN(a=+a)?0:(a>0?c:b)(a)}},function(a,f,b){var c=b(22),d=Math.max,e=Math.min;a.exports=function(a,b){return a=c(a),0>a?d(a+b,0):e(a,b)}},function(a,e,b){var c=b(22),d=Math.min;a.exports=function(a){return a>0?d(c(a),9007199254740991):0}},function(b,e){var c=0,d=Math.random();b.exports=function(b){return"Symbol(".concat(b===a?"":b,")_",(++c+d).toString(36))}},function(d,i,b){var e=b(6),f=b(21),g=b(18),h=b(24),c=b(27);d.exports=function(b){var i=1==b,k=2==b,l=3==b,d=4==b,j=6==b,m=5==b||j;return function(p,v,x){for(var o,r,u=g(p),s=f(u),w=e(v,x,3),t=h(s.length),n=0,q=i?c(p,t):k?c(p,0):a;t>n;n++)if((m||n in s)&&(o=s[n],r=w(o,n,u),b))if(i)q[n]=r;else if(r)switch(b){case 3:return!0;case 5:return o;case 6:return n;case 2:q.push(o)}else if(d)return!1;return j?-1:l||d?d:q}}},function(d,g,b){var e=b(13),c=b(28),f=b(29)("species");d.exports=function(d,g){var b;return c(d)&&(b=d.constructor,"function"!=typeof b||b!==Array&&!c(b.prototype)||(b=a),e(b)&&(b=b[f],null===b&&(b=a))),new(b===a?Array:b)(g)}},function(a,d,b){var c=b(15);a.exports=Array.isArray||function(a){return"Array"==c(a)}},function(d,f,a){var c=a(30)("wks"),e=a(25),b=a(4).Symbol;d.exports=function(a){return c[a]||(c[a]=b&&b[a]||(b||e)("Symbol."+a))}},function(d,f,e){var a=e(4),b="__core-js_shared__",c=a[b]||(a[b]={});d.exports=function(a){return c[a]||(c[a]={})}},function(b,f,a){var c=a(20),d=a(24),e=a(23);b.exports=function(a){return function(j,g,k){var h,f=c(j),i=d(f.length),b=e(k,i);if(a&&g!=g){for(;i>b;)if(h=f[b++],h!=h)return!0}else for(;i>b;b++)if((a||b in f)&&f[b]===g)return a||b;return!a&&-1}}},function(W,V,b){var e=b(2),x=b(4),d=b(14),w=b(8),f=b(3),G=b(33),H=b(9),J=b(30),s=b(35),S=b(25),A=b(29),R=b(36),C=b(37),Q=b(38),P=b(28),O=b(17),p=b(20),v=b(10),I=e.getDesc,i=e.setDesc,k=e.create,z=C.get,g=x.Symbol,l=x.JSON,m=l&&l.stringify,n=!1,c=A("_hidden"),N=e.isEnum,o=J("symbol-registry"),h=J("symbols"),q="function"==typeof g,j=Object.prototype,y=w&&H(function(){return 7!=k(i({},"a",{get:function(){return i(this,"a",{value:7}).a}})).a})?function(c,a,d){var b=I(j,a);b&&delete j[a],i(c,a,d),b&&c!==j&&i(j,a,b)}:i,L=function(a){var b=h[a]=k(g.prototype);return b._k=a,w&&n&&y(j,a,{configurable:!0,set:function(b){d(this,c)&&d(this[c],a)&&(this[c][a]=!1),y(this,a,v(1,b))}}),b},r=function(a){return"symbol"==typeof a},t=function defineProperty(a,b,e){return e&&d(h,b)?(e.enumerable?(d(a,c)&&a[c][b]&&(a[c][b]=!1),e=k(e,{enumerable:v(0,!1)})):(d(a,c)||i(a,c,v(1,{})),a[c][b]=!0),y(a,b,e)):i(a,b,e)},u=function defineProperties(a,b){O(a);for(var c,d=Q(b=p(b)),e=0,f=d.length;f>e;)t(a,c=d[e++],b[c]);return a},F=function create(b,c){return c===a?k(b):u(k(b),c)},E=function propertyIsEnumerable(a){var b=N.call(this,a);return b||!d(this,a)||!d(h,a)||d(this,c)&&this[c][a]?b:!0},D=function getOwnPropertyDescriptor(a,b){var e=I(a=p(a),b);return!e||!d(h,b)||d(a,c)&&a[c][b]||(e.enumerable=!0),e},B=function getOwnPropertyNames(g){for(var a,b=z(p(g)),e=[],f=0;b.length>f;)d(h,a=b[f++])||a==c||e.push(a);return e},M=function getOwnPropertySymbols(f){for(var a,b=z(p(f)),c=[],e=0;b.length>e;)d(h,a=b[e++])&&c.push(h[a]);return c},T=function stringify(e){if(e!==a&&!r(e)){for(var b,c,d=[e],f=1,g=arguments;g.length>f;)d.push(g[f++]);return b=d[1],"function"==typeof b&&(c=b),(c||!P(b))&&(b=function(b,a){return c&&(a=c.call(this,b,a)),r(a)?void 0:a}),d[1]=b,m.apply(l,d)}},U=H(function(){var a=g();return"[null]"!=m([a])||"{}"!=m({a:a})||"{}"!=m(Object(a))});q||(g=function Symbol(){if(r(this))throw TypeError("Symbol is not a constructor");return L(S(arguments.length>0?arguments[0]:a))},G(g.prototype,"toString",function toString(){return this._k}),r=function(a){return a instanceof g},e.create=F,e.isEnum=E,e.getDesc=D,e.setDesc=t,e.setDescs=u,e.getNames=C.get=B,e.getSymbols=M,w&&!b(39)&&G(j,"propertyIsEnumerable",E,!0));var K={"for":function(a){return d(o,a+="")?o[a]:o[a]=g(a)},keyFor:function keyFor(a){return R(o,a)},useSetter:function(){n=!0},useSimple:function(){n=!1}};e.each.call("hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),function(a){var b=A(a);K[a]=q?b:L(b)}),n=!0,f(f.G+f.W,{Symbol:g}),f(f.S,"Symbol",K),f(f.S+f.F*!q,"Object",{create:F,defineProperty:t,defineProperties:u,getOwnPropertyDescriptor:D,getOwnPropertyNames:B,getOwnPropertySymbols:M}),l&&f(f.S+f.F*(!q||U),"JSON",{stringify:T}),s(g,"Symbol"),s(Math,"Math",!0),s(x.JSON,"JSON",!0)},function(a,c,b){a.exports=b(34)},function(b,e,a){var c=a(2),d=a(10);b.exports=a(8)?function(a,b,e){return c.setDesc(a,b,d(1,e))}:function(a,b,c){return a[b]=c,a}},function(c,f,a){var d=a(2).setDesc,e=a(14),b=a(29)("toStringTag");c.exports=function(a,c,f){a&&!e(a=f?a:a.prototype,b)&&d(a,b,{configurable:!0,value:c})}},function(b,e,a){var c=a(2),d=a(20);b.exports=function(g,h){for(var a,b=d(g),e=c.getKeys(b),i=e.length,f=0;i>f;)if(b[a=e[f++]]===h)return a}},function(d,h,a){var e=a(20),b=a(2).getNames,f={}.toString,c="object"==typeof window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],g=function(a){try{return b(a)}catch(d){return c.slice()}};d.exports.get=function getOwnPropertyNames(a){return c&&"[object Window]"==f.call(a)?g(a):b(e(a))}},function(b,d,c){var a=c(2);b.exports=function(b){var c=a.getKeys(b),d=a.getSymbols;if(d)for(var e,f=d(b),h=a.isEnum,g=0;f.length>g;)h.call(b,e=f[g++])&&c.push(e);return c}},function(a,b){a.exports=!0},function(c,d,b){var a=b(3);a(a.S+a.F,"Object",{assign:b(41)})},function(c,f,a){var b=a(2),d=a(18),e=a(21);c.exports=a(9)(function(){var a=Object.assign,b={},c={},d=Symbol(),e="abcdefghijklmnopqrst";return b[d]=7,e.split("").forEach(function(a){c[a]=a}),7!=a({},b)[d]||Object.keys(a({},c)).join("")!=e})?function assign(n,q){for(var g=d(n),h=arguments,o=h.length,j=1,f=b.getKeys,l=b.getSymbols,m=b.isEnum;o>j;)for(var c,a=e(h[j++]),k=l?f(a).concat(l(a)):f(a),p=k.length,i=0;p>i;)m.call(a,c=k[i++])&&(g[c]=a[c]);return g}:Object.assign},function(c,d,a){var b=a(3);b(b.S,"Object",{is:a(43)})},function(a,b){a.exports=Object.is||function is(a,b){return a===b?0!==a||1/a===1/b:a!=a&&b!=b}},function(c,d,a){var b=a(3);b(b.S,"Object",{setPrototypeOf:a(45).set})},function(d,h,b){var e=b(2).getDesc,f=b(13),g=b(17),c=function(b,a){if(g(b),!f(a)&&null!==a)throw TypeError(a+": can't set as prototype!")};d.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(f,a,d){try{d=b(6)(Function.call,e(Object.prototype,"__proto__").set,2),d(f,[]),a=!(f instanceof Array)}catch(g){a=!0}return function setPrototypeOf(b,e){return c(b,e),a?b.__proto__=e:d(b,e),b}}({},!1):a),check:c}},function(c,d,a){var b=a(13);a(47)("freeze",function(a){return function freeze(c){return a&&b(c)?a(c):c}})},function(c,f,a){var b=a(3),d=a(5),e=a(9);c.exports=function(a,g){var c=(d.Object||{})[a]||Object[a],f={};f[a]=g(c),b(b.S+b.F*e(function(){c(1)}),"Object",f)}},function(c,d,a){var b=a(13);a(47)("seal",function(a){return function seal(c){return a&&b(c)?a(c):c}})},function(c,d,a){var b=a(13);a(47)("preventExtensions",function(a){return function preventExtensions(c){return a&&b(c)?a(c):c}})},function(c,d,a){var b=a(13);a(47)("isFrozen",function(a){return function isFrozen(c){return b(c)?a?a(c):!1:!0}})},function(c,d,a){var b=a(13);a(47)("isSealed",function(a){return function isSealed(c){return b(c)?a?a(c):!1:!0}})},function(c,d,a){var b=a(13);a(47)("isExtensible",function(a){return function isExtensible(c){return b(c)?a?a(c):!0:!1}})},function(c,d,a){var b=a(20);a(47)("getOwnPropertyDescriptor",function(a){return function getOwnPropertyDescriptor(c,d){return a(b(c),d)}})},function(c,d,a){var b=a(18);a(47)("getPrototypeOf",function(a){return function getPrototypeOf(c){return a(b(c))}})},function(c,d,a){var b=a(18);a(47)("keys",function(a){return function keys(c){return a(b(c))}})},function(b,c,a){a(47)("getOwnPropertyNames",function(){return a(37).get})},function(f,g,a){var b=a(2),c=a(13),d=a(29)("hasInstance"),e=Function.prototype;d in e||b.setDesc(e,d,{value:function(a){if("function"!=typeof this||!c(a))return!1;if(!c(this.prototype))return a instanceof this;for(;a=b.getProto(a);)if(this.prototype===a)return!0;return!1}})},function(c,d,b){var a=b(3);a(a.S,"Number",{EPSILON:Math.pow(2,-52)})},function(d,e,a){var b=a(3),c=a(4).isFinite;b(b.S,"Number",{isFinite:function isFinite(a){return"number"==typeof a&&c(a)}})},function(c,d,a){var b=a(3);b(b.S,"Number",{isInteger:a(61)})},function(a,e,b){var c=b(13),d=Math.floor;a.exports=function isInteger(a){return!c(a)&&isFinite(a)&&d(a)===a}},function(c,d,b){var a=b(3);a(a.S,"Number",{isNaN:function isNaN(a){return a!=a}})},function(e,f,a){var b=a(3),c=a(61),d=Math.abs;b(b.S,"Number",{isSafeInteger:function isSafeInteger(a){return c(a)&&d(a)<=9007199254740991}})},function(c,d,b){var a=b(3);a(a.S,"Number",{MAX_SAFE_INTEGER:9007199254740991})},function(c,d,b){var a=b(3);a(a.S,"Number",{MIN_SAFE_INTEGER:-9007199254740991})},function(c,d,b){var a=b(3);a(a.S,"Number",{parseFloat:parseFloat})},function(c,d,b){var a=b(3);a(a.S,"Number",{parseInt:parseInt})},function(f,g,b){var a=b(3),e=b(69),c=Math.sqrt,d=Math.acosh;a(a.S+a.F*!(d&&710==Math.floor(d(Number.MAX_VALUE))),"Math",{acosh:function acosh(a){return(a=+a)<1?NaN:a>94906265.62425156?Math.log(a)+Math.LN2:e(a-1+c(a-1)*c(a+1))}})},function(a,b){a.exports=Math.log1p||function log1p(a){return(a=+a)>-1e-8&&1e-8>a?a-a*a/2:Math.log(1+a)}},function(c,d,b){function asinh(a){return isFinite(a=+a)&&0!=a?0>a?-asinh(-a):Math.log(a+Math.sqrt(a*a+1)):a}var a=b(3);a(a.S,"Math",{asinh:asinh})},function(c,d,b){var a=b(3);a(a.S,"Math",{atanh:function atanh(a){return 0==(a=+a)?a:Math.log((1+a)/(1-a))/2}})},function(d,e,a){var b=a(3),c=a(73);b(b.S,"Math",{cbrt:function cbrt(a){return c(a=+a)*Math.pow(Math.abs(a),1/3)}})},function(a,b){a.exports=Math.sign||function sign(a){return 0==(a=+a)||a!=a?a:0>a?-1:1}},function(c,d,b){var a=b(3);a(a.S,"Math",{clz32:function clz32(a){return(a>>>=0)?31-Math.floor(Math.log(a+.5)*Math.LOG2E):32}})},function(d,e,c){var a=c(3),b=Math.exp;a(a.S,"Math",{cosh:function cosh(a){return(b(a=+a)+b(-a))/2}})},function(c,d,a){var b=a(3);b(b.S,"Math",{expm1:a(77)})},function(a,b){a.exports=Math.expm1||function expm1(a){return 0==(a=+a)?a:a>-1e-6&&1e-6>a?a+a*a/2:Math.exp(a)-1}},function(k,j,e){var f=e(3),g=e(73),a=Math.pow,d=a(2,-52),b=a(2,-23),i=a(2,127)*(2-b),c=a(2,-126),h=function(a){return a+1/d-1/d};f(f.S,"Math",{fround:function fround(k){var f,a,e=Math.abs(k),j=g(k);return c>e?j*h(e/c/b)*c*b:(f=(1+b/d)*e,a=f-(f-e),a>i||a!=a?j*(1/0):j*a)}})},function(d,e,b){var a=b(3),c=Math.abs;a(a.S,"Math",{hypot:function hypot(i,j){for(var a,b,e=0,f=0,g=arguments,h=g.length,d=0;h>f;)a=c(g[f++]),a>d?(b=d/a,e=e*b*b+1,d=a):a>0?(b=a/d,e+=b*b):e+=a;return d===1/0?1/0:d*Math.sqrt(e)}})},function(d,e,b){var a=b(3),c=Math.imul;a(a.S+a.F*b(9)(function(){return-5!=c(4294967295,5)||2!=c.length}),"Math",{imul:function imul(f,g){var a=65535,b=+f,c=+g,d=a&b,e=a&c;return 0|d*e+((a&b>>>16)*e+d*(a&c>>>16)<<16>>>0)}})},function(c,d,b){var a=b(3);a(a.S,"Math",{log10:function log10(a){return Math.log(a)/Math.LN10}})},function(c,d,a){var b=a(3);b(b.S,"Math",{log1p:a(69)})},function(c,d,b){var a=b(3);a(a.S,"Math",{log2:function log2(a){return Math.log(a)/Math.LN2}})},function(c,d,a){var b=a(3);b(b.S,"Math",{sign:a(73)})},function(e,f,a){var b=a(3),c=a(77),d=Math.exp;b(b.S+b.F*a(9)(function(){return-2e-17!=!Math.sinh(-2e-17)}),"Math",{sinh:function sinh(a){return Math.abs(a=+a)<1?(c(a)-c(-a))/2:(d(a-1)-d(-a-1))*(Math.E/2)}})},function(e,f,a){var b=a(3),c=a(77),d=Math.exp;b(b.S,"Math",{tanh:function tanh(a){var b=c(a=+a),e=c(-a);return b==1/0?1:e==1/0?-1:(b-e)/(d(a)+d(-a))}})},function(c,d,b){var a=b(3);a(a.S,"Math",{trunc:function trunc(a){return(a>0?Math.floor:Math.ceil)(a)}})},function(f,g,b){var a=b(3),e=b(23),c=String.fromCharCode,d=String.fromCodePoint;a(a.S+a.F*(!!d&&1!=d.length),"String",{fromCodePoint:function fromCodePoint(h){for(var a,b=[],d=arguments,g=d.length,f=0;g>f;){if(a=+d[f++],e(a,1114111)!==a)throw RangeError(a+" is not a valid code point");b.push(65536>a?c(a):c(((a-=65536)>>10)+55296,a%1024+56320))}return b.join("")}})},function(e,f,a){var b=a(3),c=a(20),d=a(24);b(b.S,"String",{raw:function raw(g){for(var e=c(g.raw),h=d(e.length),f=arguments,i=f.length,b=[],a=0;h>a;)b.push(String(e[a++])),i>a&&b.push(String(f[a]));return b.join("")}})},function(b,c,a){a(91)("trim",function(a){return function trim(){return a(this,3)}})},function(g,m,b){var c=b(3),h=b(19),i=b(9),d=" \n\f\r \u2028\u2029\ufeff",a="["+d+"]",f="
",j=RegExp("^"+a+a+"*"),k=RegExp(a+a+"*$"),e=function(a,e){var b={};b[a]=e(l),c(c.P+c.F*i(function(){return!!d[a]()||f[a]()!=f}),"String",b)},l=e.trim=function(a,b){return a=String(h(a)),1&b&&(a=a.replace(j,"")),2&b&&(a=a.replace(k,"")),a};g.exports=e},function(d,e,a){var b=a(3),c=a(93)(!1);b(b.P,"String",{codePointAt:function codePointAt(a){return c(this,a)}})},function(c,f,b){var d=b(22),e=b(19);c.exports=function(b){return function(j,k){var f,h,g=String(e(j)),c=d(k),i=g.length;return 0>c||c>=i?b?"":a:(f=g.charCodeAt(c),55296>f||f>56319||c+1===i||(h=g.charCodeAt(c+1))<56320||h>57343?b?g.charAt(c):f:b?g.slice(c,c+2):(f-55296<<10)+(h-56320)+65536)}}},function(h,i,b){var c=b(3),e=b(24),g=b(95),d="endsWith",f=""[d];c(c.P+c.F*b(97)(d),"String",{endsWith:function endsWith(i){var b=g(this,i,d),j=arguments,k=j.length>1?j[1]:a,l=e(b.length),c=k===a?l:Math.min(e(k),l),h=String(i);return f?f.call(b,h,c):b.slice(c-h.length,c)===h}})},function(b,e,a){var c=a(96),d=a(19);b.exports=function(a,b,e){if(c(b))throw TypeError("String#"+e+" doesn't accept regex!");return String(d(a))}},function(c,g,b){var d=b(13),e=b(15),f=b(29)("match");c.exports=function(b){var c;return d(b)&&((c=b[f])!==a?!!c:"RegExp"==e(b))}},function(a,d,b){var c=b(29)("match");a.exports=function(b){var a=/./;try{"/./"[b](a)}catch(d){try{return a[c]=!1,!"/./"[b](a)}catch(e){}}return!0}},function(f,g,b){var c=b(3),e=b(95),d="includes";c(c.P+c.F*b(97)(d),"String",{includes:function includes(b){return!!~e(this,b,d).indexOf(b,arguments.length>1?arguments[1]:a)}})},function(c,d,a){var b=a(3);b(b.P,"String",{repeat:a(100)})},function(b,e,a){var c=a(22),d=a(19);b.exports=function repeat(f){var b=String(d(this)),e="",a=c(f);if(0>a||a==1/0)throw RangeError("Count can't be negative");for(;a>0;(a>>>=1)&&(b+=b))1&a&&(e+=b);return e}},function(h,i,b){var c=b(3),f=b(24),g=b(95),d="startsWith",e=""[d];c(c.P+c.F*b(97)(d),"String",{startsWith:function startsWith(i){var b=g(this,i,d),j=arguments,c=f(Math.min(j.length>1?j[1]:a,b.length)),h=String(i);return e?e.call(b,h,c):b.slice(c,c+h.length)===h}})},function(d,e,b){var c=b(93)(!0);b(103)(String,"String",function(a){this._t=String(a),this._i=0},function(){var b,d=this._t,e=this._i;return e>=d.length?{value:a,done:!0}:(b=c(d,e),this._i+=b.length,{value:b,done:!1})})},function(o,r,a){var i=a(39),d=a(3),n=a(33),h=a(34),m=a(14),f=a(104),q=a(105),p=a(35),l=a(2).getProto,c=a(29)("iterator"),e=!([].keys&&"next"in[].keys()),j="@@iterator",k="keys",b="values",g=function(){return this};o.exports=function(B,v,u,F,s,E,A){q(u,v,F);var r,x,w=function(c){if(!e&&c in a)return a[c];switch(c){case k:return function keys(){return new u(this,c)};case b:return function values(){return new u(this,c)}}return function entries(){return new u(this,c)}},C=v+" Iterator",y=s==b,z=!1,a=B.prototype,t=a[c]||a[j]||s&&a[s],o=t||w(s);if(t){var D=l(o.call(new B));p(D,C,!0),!i&&m(a,j)&&h(D,c,g),y&&t.name!==b&&(z=!0,o=function values(){return t.call(this)})}if(i&&!A||!e&&!z&&a[c]||h(a,c,o),f[v]=o,f[C]=g,s)if(r={values:y?o:w(b),keys:E?o:w(k),entries:y?w("entries"):o},A)for(x in r)x in a||n(a,x,r[x]);else d(d.P+d.F*(e||z),v,r);return r}},function(a,b){a.exports={}},function(c,g,a){var d=a(2),e=a(10),f=a(35),b={};a(34)(b,a(29)("iterator"),function(){return this}),c.exports=function(a,c,g){a.prototype=d.create(b,{next:e(1,g)}),f(a,c+" Iterator")}},function(j,k,b){var d=b(6),c=b(3),e=b(18),f=b(107),g=b(108),h=b(24),i=b(109);c(c.S+c.F*!b(111)(function(a){Array.from(a)}),"Array",{from:function from(t){var n,c,r,m,j=e(t),l="function"==typeof this?this:Array,p=arguments,s=p.length,k=s>1?p[1]:a,q=k!==a,b=0,o=i(j);if(q&&(k=d(k,s>2?p[2]:a,2)),o==a||l==Array&&g(o))for(n=h(j.length),c=new l(n);n>b;b++)c[b]=q?k(j[b],b):j[b];else for(m=o.call(j),c=new l;!(r=m.next()).done;b++)c[b]=q?f(m,k,[r.value,b],!0):r.value;return c.length=b,c}})},function(c,e,d){var b=d(17);c.exports=function(d,e,c,g){try{return g?e(b(c)[0],c[1]):e(c)}catch(h){var f=d["return"];throw f!==a&&b(f.call(d)),h}}},function(c,g,b){var d=b(104),e=b(29)("iterator"),f=Array.prototype;c.exports=function(b){return b!==a&&(d.Array===b||f[e]===b)}},function(c,g,b){var d=b(110),e=b(29)("iterator"),f=b(104);c.exports=b(5).getIteratorMethod=function(b){return b!=a?b[e]||b["@@iterator"]||f[d(b)]:void 0}},function(d,g,c){var b=c(15),e=c(29)("toStringTag"),f="Arguments"==b(function(){return arguments}());d.exports=function(d){var c,g,h;return d===a?"Undefined":null===d?"Null":"string"==typeof(g=(c=Object(d))[e])?g:f?b(c):"Object"==(h=b(c))&&"function"==typeof c.callee?"Arguments":h}},function(d,f,e){var a=e(29)("iterator"),b=!1;try{var c=[7][a]();c["return"]=function(){b=!0},Array.from(c,function(){throw 2})}catch(g){}d.exports=function(f,g){if(!g&&!b)return!1;var d=!1;try{var c=[7],e=c[a]();e.next=function(){return{done:d=!0}},c[a]=function(){return e},f(c)}catch(h){}return d}},function(c,d,b){var a=b(3);a(a.S+a.F*b(9)(function(){function F(){}return!(Array.of.call(F)instanceof F)}),"Array",{of:function of(){for(var a=0,d=arguments,b=d.length,c=new("function"==typeof this?this:Array)(b);b>a;)c[a]=d[a++];return c.length=b,c}})},function(f,h,b){var d=b(114),c=b(115),e=b(104),g=b(20);f.exports=b(103)(Array,"Array",function(a,b){this._t=g(a),this._i=0,this._k=b},function(){var d=this._t,e=this._k,b=this._i++;return!d||b>=d.length?(this._t=a,c(1)):"keys"==e?c(0,b):"values"==e?c(0,d[b]):c(0,[b,d[b]])},"values"),e.Arguments=e.Array,d("keys"),d("values"),d("entries")},function(a,b){a.exports=function(){}},function(a,b){a.exports=function(a,b){return{value:b,done:!!a}}},function(b,c,a){a(117)("Array")},function(c,g,a){var d=a(5),e=a(2),f=a(8),b=a(29)("species");c.exports=function(c){var a=d[c];f&&a&&!a[b]&&e.setDesc(a,b,{configurable:!0,get:function(){return this}})}},function(c,d,a){var b=a(3);b(b.P,"Array",{copyWithin:a(119)}),a(114)("copyWithin")},function(d,g,b){var e=b(18),c=b(23),f=b(24);d.exports=[].copyWithin||function copyWithin(m,n){var g=e(this),h=f(g.length),b=c(m,h),d=c(n,h),k=arguments,l=k.length>2?k[2]:a,i=Math.min((l===a?h:c(l,h))-d,h-b),j=1;for(b>d&&d+i>b&&(j=-1,d+=i-1,b+=i-1);i-->0;)d in g?g[b]=g[d]:delete g[b],b+=j,d+=j;return g}},function(c,d,a){var b=a(3);b(b.P,"Array",{fill:a(121)}),a(114)("fill")},function(d,g,b){var e=b(18),c=b(23),f=b(24);d.exports=[].fill||function fill(k){for(var b=e(this),d=f(b.length),g=arguments,h=g.length,i=c(h>1?g[1]:a,d),j=h>2?g[2]:a,l=j===a?d:c(j,d);l>i;)b[i++]=k;return b}},function(g,h,b){var c=b(3),f=b(26)(5),d="find",e=!0;d in[]&&Array(1)[d](function(){e=!1}),c(c.P+c.F*e,"Array",{find:function find(b){return f(this,b,arguments.length>1?arguments[1]:a)}}),b(114)(d)},function(g,h,b){var c=b(3),f=b(26)(6),d="findIndex",e=!0;d in[]&&Array(1)[d](function(){e=!1}),c(c.P+c.F*e,"Array",{findIndex:function findIndex(b){return f(this,b,arguments.length>1?arguments[1]:a)}}),b(114)(d)},function(K,J,b){var s,l=b(2),F=b(39),k=b(4),j=b(6),I=b(110),d=b(3),D=b(13),E=b(17),m=b(7),G=b(125),p=b(126),q=b(45).set,A=b(43),B=b(29)("species"),z=b(127),v=b(128),e="Promise",o=k.process,H="process"==I(o),c=k[e],i=function(){},r=function(d){var b,a=new c(i);return d&&(a.constructor=function(a){a(i,i)}),(b=c.resolve(a))["catch"](i),b===a},h=function(){function P2(b){var a=new c(b);return q(a,P2.prototype),a}var a=!1;try{if(a=c&&c.resolve&&r(),q(P2,c),P2.prototype=l.create(c.prototype,{constructor:{value:P2}}),P2.resolve(5).then(function(){})instanceof P2||(a=!1),a&&b(8)){var d=!1;c.resolve(l.setDesc({},"then",{get:function(){d=!0}})),a=d}}catch(e){a=!1}return a}(),C=function(a,b){return F&&a===c&&b===s?!0:A(a,b)},t=function(b){var c=E(b)[B];return c!=a?c:b},u=function(a){var b;return D(a)&&"function"==typeof(b=a.then)?b:!1},g=function(d){var b,c;this.promise=new d(function(d,e){if(b!==a||c!==a)throw TypeError("Bad Promise constructor");b=d,c=e}),this.resolve=m(b),this.reject=m(c)},w=function(a){try{a()}catch(b){return{error:b}}},n=function(b,d){if(!b.n){b.n=!0;var c=b.c;v(function(){for(var e=b.v,f=1==b.s,g=0,h=function(a){var c,h,g=f?a.ok:a.fail,i=a.resolve,d=a.reject;try{g?(f||(b.h=!0),c=g===!0?e:g(e),c===a.promise?d(TypeError("Promise-chain cycle")):(h=u(c))?h.call(c,i,d):i(c)):d(e)}catch(j){d(j)}};c.length>g;)h(c[g++]);c.length=0,b.n=!1,d&&setTimeout(function(){var f,c,d=b.p;y(d)&&(H?o.emit("unhandledRejection",e,d):(f=k.onunhandledrejection)?f({promise:d,reason:e}):(c=k.console)&&c.error&&c.error("Unhandled promise rejection",e)),b.a=a},1)})}},y=function(e){var a,b=e._d,c=b.a||b.c,d=0;if(b.h)return!1;for(;c.length>d;)if(a=c[d++],a.fail||!y(a.promise))return!1;return!0},f=function(b){var a=this;a.d||(a.d=!0,a=a.r||a,a.v=b,a.s=2,a.a=a.c.slice(),n(a,!0))},x=function(b){var c,a=this;if(!a.d){a.d=!0,a=a.r||a;try{if(a.p===b)throw TypeError("Promise can't be resolved itself");(c=u(b))?v(function(){var d={r:a,d:!1};try{c.call(b,j(x,d,1),j(f,d,1))}catch(e){f.call(d,e)}}):(a.v=b,a.s=1,n(a,!1))}catch(d){f.call({r:a,d:!1},d)}}};h||(c=function Promise(d){m(d);var b=this._d={p:G(this,c,e),c:[],a:a,s:0,d:!1,v:a,h:!1,n:!1};try{d(j(x,b,1),j(f,b,1))}catch(g){f.call(b,g)}},b(130)(c.prototype,{then:function then(d,e){var a=new g(z(this,c)),f=a.promise,b=this._d;return a.ok="function"==typeof d?d:!0,a.fail="function"==typeof e&&e,b.c.push(a),b.a&&b.a.push(a),b.s&&n(b,!1),f},"catch":function(b){return this.then(a,b)}})),d(d.G+d.W+d.F*!h,{Promise:c}),b(35)(c,e),b(117)(e),s=b(5)[e],d(d.S+d.F*!h,e,{reject:function reject(b){var a=new g(this),c=a.reject;return c(b),a.promise}}),d(d.S+d.F*(!h||r(!0)),e,{resolve:function resolve(a){if(a instanceof c&&C(a.constructor,this))return a;var b=new g(this),d=b.resolve;return d(a),b.promise}}),d(d.S+d.F*!(h&&b(111)(function(a){c.all(a)["catch"](function(){})})),e,{all:function all(h){var c=t(this),b=new g(c),d=b.resolve,e=b.reject,a=[],f=w(function(){p(h,!1,a.push,a);var b=a.length,f=Array(b);b?l.each.call(a,function(g,h){var a=!1;c.resolve(g).then(function(c){a||(a=!0,f[h]=c,--b||d(f))},e)}):d(f)});return f&&e(f.error),b.promise},race:function race(e){var b=t(this),a=new g(b),c=a.reject,d=w(function(){p(e,!1,function(d){b.resolve(d).then(a.resolve,c)})});return d&&c(d.error),a.promise}})},function(a,b){a.exports=function(a,b,c){if(!(a instanceof b))throw TypeError(c+": use the 'new' operator!");return a}},function(b,i,a){var c=a(6),d=a(107),e=a(108),f=a(17),g=a(24),h=a(109);b.exports=function(a,j,o,p){var n,b,k,l=h(a),m=c(o,p,j?2:1),i=0;if("function"!=typeof l)throw TypeError(a+" is not iterable!");if(e(l))for(n=g(a.length);n>i;i++)j?m(f(b=a[i])[0],b[1]):m(a[i]);else for(k=l.call(a);!(b=k.next()).done;)d(k,m,b.value,j)}},function(d,g,b){var c=b(17),e=b(7),f=b(29)("species");d.exports=function(g,h){var b,d=c(g).constructor;return d===a||(b=c(d)[f])==a?h:e(b)}},function(n,p,h){var b,f,g,c=h(4),o=h(129).set,k=c.MutationObserver||c.WebKitMutationObserver,d=c.process,i=c.Promise,j="process"==h(15)(d),e=function(){var e,c,g;for(j&&(e=d.domain)&&(d.domain=null,e.exit());b;)c=b.domain,g=b.fn,c&&c.enter(),g(),c&&c.exit(),b=b.next;f=a,e&&e.enter()};if(j)g=function(){d.nextTick(e)};else if(k){var m=1,l=document.createTextNode("");new k(e).observe(l,{characterData:!0}),g=function(){l.data=m=-m}}else g=i&&i.resolve?function(){i.resolve().then(e)}:function(){o.call(c,e)};n.exports=function asap(e){var c={fn:e,next:a,domain:j&&d.domain};f&&(f.next=c),b||(b=c,g()),f=c}},function(s,t,b){var c,g,f,k=b(6),r=b(16),n=b(11),p=b(12),a=b(4),l=a.process,h=a.setImmediate,i=a.clearImmediate,o=a.MessageChannel,j=0,d={},q="onreadystatechange",e=function(){
+var a=+this;if(d.hasOwnProperty(a)){var b=d[a];delete d[a],b()}},m=function(a){e.call(a.data)};h&&i||(h=function setImmediate(a){for(var b=[],e=1;arguments.length>e;)b.push(arguments[e++]);return d[++j]=function(){r("function"==typeof a?a:Function(a),b)},c(j),j},i=function clearImmediate(a){delete d[a]},"process"==b(15)(l)?c=function(a){l.nextTick(k(e,a,1))}:o?(g=new o,f=g.port2,g.port1.onmessage=m,c=k(f.postMessage,f,1)):a.addEventListener&&"function"==typeof postMessage&&!a.importScripts?(c=function(b){a.postMessage(b+"","*")},a.addEventListener("message",m,!1)):c=q in p("script")?function(a){n.appendChild(p("script"))[q]=function(){n.removeChild(this),e.call(a)}}:function(a){setTimeout(k(e,a,1),0)}),s.exports={set:h,clear:i}},function(a,d,b){var c=b(33);a.exports=function(a,b){for(var d in b)c(a,d,b[d]);return a}},function(d,e,c){var b=c(132);c(133)("Map",function(b){return function Map(){return b(this,arguments.length>0?arguments[0]:a)}},{get:function get(c){var a=b.getEntry(this,c);return a&&a.v},set:function set(a,c){return b.def(this,0===a?0:a,c)}},b,!0)},function(v,w,b){var j=b(2),m=b(34),o=b(130),n=b(6),p=b(125),r=b(19),t=b(126),l=b(103),d=b(115),f=b(25)("id"),k=b(14),h=b(13),q=b(117),i=b(8),s=Object.isExtensible||h,c=i?"_s":"size",u=0,g=function(a,b){if(!h(a))return"symbol"==typeof a?a:("string"==typeof a?"S":"P")+a;if(!k(a,f)){if(!s(a))return"F";if(!b)return"E";m(a,f,++u)}return"O"+a[f]},e=function(b,c){var a,d=g(c);if("F"!==d)return b._i[d];for(a=b._f;a;a=a.n)if(a.k==c)return a};v.exports={getConstructor:function(d,f,g,h){var b=d(function(d,e){p(d,b,f),d._i=j.create(null),d._f=a,d._l=a,d[c]=0,e!=a&&t(e,g,d[h],d)});return o(b.prototype,{clear:function clear(){for(var d=this,e=d._i,b=d._f;b;b=b.n)b.r=!0,b.p&&(b.p=b.p.n=a),delete e[b.i];d._f=d._l=a,d[c]=0},"delete":function(g){var b=this,a=e(b,g);if(a){var d=a.n,f=a.p;delete b._i[a.i],a.r=!0,f&&(f.n=d),d&&(d.p=f),b._f==a&&(b._f=d),b._l==a&&(b._l=f),b[c]--}return!!a},forEach:function forEach(c){for(var b,d=n(c,arguments.length>1?arguments[1]:a,3);b=b?b.n:this._f;)for(d(b.v,b.k,this);b&&b.r;)b=b.p},has:function has(a){return!!e(this,a)}}),i&&j.setDesc(b.prototype,"size",{get:function(){return r(this[c])}}),b},def:function(b,f,j){var h,i,d=e(b,f);return d?d.v=j:(b._l=d={i:i=g(f,!0),k:f,v:j,p:h=b._l,n:a,r:!1},b._f||(b._f=d),h&&(h.n=d),b[c]++,"F"!==i&&(b._i[i]=d)),b},getEntry:e,setStrong:function(e,b,c){l(e,b,function(b,c){this._t=b,this._k=c,this._l=a},function(){for(var c=this,e=c._k,b=c._l;b&&b.r;)b=b.p;return c._t&&(c._l=b=b?b.n:c._t._f)?"keys"==e?d(0,b.k):"values"==e?d(0,b.v):d(0,[b.k,b.v]):(c._t=a,d(1))},c?"entries":"values",!c,!0),q(b)}}},function(g,o,b){var d=b(2),f=b(4),c=b(3),h=b(9),e=b(34),j=b(130),k=b(126),l=b(125),m=b(13),i=b(35),n=b(8);g.exports=function(g,s,w,r,p,o){var t=f[g],b=t,u=p?"set":"add",q=b&&b.prototype,v={};return n&&"function"==typeof b&&(o||q.forEach&&!h(function(){(new b).entries().next()}))?(b=s(function(c,d){l(c,b,g),c._c=new t,d!=a&&k(d,p,c[u],c)}),d.each.call("add,clear,delete,forEach,get,has,set,keys,values,entries".split(","),function(c){var d="add"==c||"set"==c;c in q&&(!o||"clear"!=c)&&e(b.prototype,c,function(b,e){if(!d&&o&&!m(b))return"get"==c?a:!1;var f=this._c[c](0===b?0:b,e);return d?this:f})}),"size"in q&&d.setDesc(b.prototype,"size",{get:function(){return this._c.size}})):(b=r.getConstructor(s,g,p,u),j(b.prototype,w)),i(b,g),v[g]=b,c(c.G+c.W+c.F,v),o||r.setStrong(b,g,p),b}},function(d,e,b){var c=b(132);b(133)("Set",function(b){return function Set(){return b(this,arguments.length>0?arguments[0]:a)}},{add:function add(a){return c.def(this,a=0===a?0:a,a)}},c)},function(n,m,b){var l=b(2),k=b(33),c=b(136),d=b(13),j=b(14),i=c.frozenStore,h=c.WEAK,f=Object.isExtensible||d,e={},g=b(133)("WeakMap",function(b){return function WeakMap(){return b(this,arguments.length>0?arguments[0]:a)}},{get:function get(a){if(d(a)){if(!f(a))return i(this).get(a);if(j(a,h))return a[h][this._i]}},set:function set(a,b){return c.def(this,a,b)}},c,!0,!0);7!=(new g).set((Object.freeze||Object)(e),7).get(e)&&l.each.call(["delete","has","get","set"],function(a){var b=g.prototype,c=b[a];k(b,a,function(b,e){if(d(b)&&!f(b)){var g=i(this)[a](b,e);return"set"==a?this:g}return c.call(this,b,e)})})},function(s,t,b){var r=b(34),q=b(130),m=b(17),h=b(13),l=b(125),k=b(126),j=b(26),d=b(14),c=b(25)("weak"),g=Object.isExtensible||h,n=j(5),o=j(6),p=0,e=function(a){return a._l||(a._l=new i)},i=function(){this.a=[]},f=function(a,b){return n(a.a,function(a){return a[0]===b})};i.prototype={get:function(b){var a=f(this,b);return a?a[1]:void 0},has:function(a){return!!f(this,a)},set:function(a,b){var c=f(this,a);c?c[1]=b:this.a.push([a,b])},"delete":function(b){var a=o(this.a,function(a){return a[0]===b});return~a&&this.a.splice(a,1),!!~a}},s.exports={getConstructor:function(f,i,j,m){var b=f(function(c,d){l(c,b,i),c._i=p++,c._l=a,d!=a&&k(d,j,c[m],c)});return q(b.prototype,{"delete":function(a){return h(a)?g(a)?d(a,c)&&d(a[c],this._i)&&delete a[c][this._i]:e(this)["delete"](a):!1},has:function has(a){return h(a)?g(a)?d(a,c)&&d(a[c],this._i):e(this).has(a):!1}}),b},def:function(b,a,f){return g(m(a))?(d(a,c)||r(a,c,{}),a[c][b._i]=f):e(b).set(a,f),b},frozenStore:e,WEAK:c}},function(d,e,b){var c=b(136);b(133)("WeakSet",function(b){return function WeakSet(){return b(this,arguments.length>0?arguments[0]:a)}},{add:function add(a){return c.def(this,a,!0)}},c,!1,!0)},function(e,f,a){var b=a(3),c=Function.apply,d=a(17);b(b.S,"Reflect",{apply:function apply(a,b,e){return c.call(a,b,d(e))}})},function(h,i,a){var e=a(2),b=a(3),c=a(7),f=a(17),d=a(13),g=Function.bind||a(5).Function.prototype.bind;b(b.S+b.F*a(9)(function(){function F(){}return!(Reflect.construct(function(){},[],F)instanceof F)}),"Reflect",{construct:function construct(b,a){c(b),f(a);var i=arguments.length<3?b:c(arguments[2]);if(b==i){switch(a.length){case 0:return new b;case 1:return new b(a[0]);case 2:return new b(a[0],a[1]);case 3:return new b(a[0],a[1],a[2]);case 4:return new b(a[0],a[1],a[2],a[3])}var h=[null];return h.push.apply(h,a),new(g.apply(b,h))}var j=i.prototype,k=e.create(d(j)?j:Object.prototype),l=Function.apply.call(b,k,a);return d(l)?l:k}})},function(e,f,a){var c=a(2),b=a(3),d=a(17);b(b.S+b.F*a(9)(function(){Reflect.defineProperty(c.setDesc({},1,{value:1}),1,{value:2})}),"Reflect",{defineProperty:function defineProperty(a,b,e){d(a);try{return c.setDesc(a,b,e),!0}catch(f){return!1}}})},function(e,f,a){var b=a(3),c=a(2).getDesc,d=a(17);b(b.S,"Reflect",{deleteProperty:function deleteProperty(a,b){var e=c(d(a),b);return e&&!e.configurable?!1:delete a[b]}})},function(f,g,b){var c=b(3),e=b(17),d=function(a){this._t=e(a),this._i=0;var b,c=this._k=[];for(b in a)c.push(b)};b(105)(d,"Object",function(){var c,b=this,d=b._k;do if(b._i>=d.length)return{value:a,done:!0};while(!((c=d[b._i++])in b._t));return{value:c,done:!1}}),c(c.S,"Reflect",{enumerate:function enumerate(a){return new d(a)}})},function(h,i,b){function get(b,h){var d,j,i=arguments.length<3?b:arguments[2];return g(b)===i?b[h]:(d=c.getDesc(b,h))?e(d,"value")?d.value:d.get!==a?d.get.call(i):a:f(j=c.getProto(b))?get(j,h,i):void 0}var c=b(2),e=b(14),d=b(3),f=b(13),g=b(17);d(d.S,"Reflect",{get:get})},function(e,f,a){var c=a(2),b=a(3),d=a(17);b(b.S,"Reflect",{getOwnPropertyDescriptor:function getOwnPropertyDescriptor(a,b){return c.getDesc(d(a),b)}})},function(e,f,a){var b=a(3),c=a(2).getProto,d=a(17);b(b.S,"Reflect",{getPrototypeOf:function getPrototypeOf(a){return c(d(a))}})},function(c,d,b){var a=b(3);a(a.S,"Reflect",{has:function has(a,b){return b in a}})},function(e,f,a){var b=a(3),d=a(17),c=Object.isExtensible;b(b.S,"Reflect",{isExtensible:function isExtensible(a){return d(a),c?c(a):!0}})},function(c,d,a){var b=a(3);b(b.S,"Reflect",{ownKeys:a(149)})},function(d,f,a){var b=a(2),e=a(17),c=a(4).Reflect;d.exports=c&&c.ownKeys||function ownKeys(a){var c=b.getNames(e(a)),d=b.getSymbols;return d?c.concat(d(a)):c}},function(e,f,a){var b=a(3),d=a(17),c=Object.preventExtensions;b(b.S,"Reflect",{preventExtensions:function preventExtensions(a){d(a);try{return c&&c(a),!0}catch(b){return!1}}})},function(i,j,b){function set(j,i,k){var l,m,d=arguments.length<4?j:arguments[3],b=c.getDesc(h(j),i);if(!b){if(f(m=c.getProto(j)))return set(m,i,k,d);b=e(0)}return g(b,"value")?b.writable!==!1&&f(d)?(l=c.getDesc(d,i)||e(0),l.value=k,c.setDesc(d,i,l),!0):!1:b.set===a?!1:(b.set.call(d,k),!0)}var c=b(2),g=b(14),d=b(3),e=b(10),h=b(17),f=b(13);d(d.S,"Reflect",{set:set})},function(d,e,b){var c=b(3),a=b(45);a&&c(c.S,"Reflect",{setPrototypeOf:function setPrototypeOf(b,c){a.check(b,c);try{return a.set(b,c),!0}catch(d){return!1}}})},function(e,f,b){var c=b(3),d=b(31)(!0);c(c.P,"Array",{includes:function includes(b){return d(this,b,arguments.length>1?arguments[1]:a)}}),b(114)("includes")},function(d,e,a){var b=a(3),c=a(93)(!0);b(b.P,"String",{at:function at(a){return c(this,a)}})},function(e,f,b){var c=b(3),d=b(156);c(c.P,"String",{padLeft:function padLeft(b){return d(this,b,arguments.length>1?arguments[1]:a,!0)}})},function(c,g,b){var d=b(24),e=b(100),f=b(19);c.exports=function(l,m,i,n){var c=String(f(l)),j=c.length,g=i===a?" ":String(i),k=d(m);if(j>=k)return c;""==g&&(g=" ");var h=k-j,b=e.call(g,Math.ceil(h/g.length));return b.length>h&&(b=b.slice(0,h)),n?b+c:c+b}},function(e,f,b){var c=b(3),d=b(156);c(c.P,"String",{padRight:function padRight(b){return d(this,b,arguments.length>1?arguments[1]:a,!1)}})},function(b,c,a){a(91)("trimLeft",function(a){return function trimLeft(){return a(this,1)}})},function(b,c,a){a(91)("trimRight",function(a){return function trimRight(){return a(this,2)}})},function(d,e,a){var b=a(3),c=a(161)(/[\\^$*+?.()|[\]{}]/g,"\\$&");b(b.S,"RegExp",{escape:function escape(a){return c(a)}})},function(a,b){a.exports=function(b,a){var c=a===Object(a)?function(b){return a[b]}:a;return function(a){return String(a).replace(b,c)}}},function(g,h,a){var b=a(2),c=a(3),d=a(149),e=a(20),f=a(10);c(c.S,"Object",{getOwnPropertyDescriptors:function getOwnPropertyDescriptors(k){for(var a,g,h=e(k),l=b.setDesc,m=b.getDesc,i=d(h),c={},j=0;i.length>j;)g=m(h,a=i[j++]),a in c?l(c,a,f(0,g)):c[a]=g;return c}})},function(d,e,a){var b=a(3),c=a(164)(!1);b(b.S,"Object",{values:function values(a){return c(a)}})},function(c,f,a){var b=a(2),d=a(20),e=b.isEnum;c.exports=function(a){return function(j){for(var c,f=d(j),g=b.getKeys(f),k=g.length,h=0,i=[];k>h;)e.call(f,c=g[h++])&&i.push(a?[c,f[c]]:f[c]);return i}}},function(d,e,a){var b=a(3),c=a(164)(!0);b(b.S,"Object",{entries:function entries(a){return c(a)}})},function(c,d,a){var b=a(3);b(b.P,"Map",{toJSON:a(167)("Map")})},function(b,e,a){var c=a(126),d=a(110);b.exports=function(a){return function toJSON(){if(d(this)!=a)throw TypeError(a+"#toJSON isn't generic");var b=[];return c(this,!1,b.push,b),b}}},function(c,d,a){var b=a(3);b(b.P,"Set",{toJSON:a(167)("Set")})},function(d,e,b){var a=b(3),c=b(129);a(a.G+a.B,{setImmediate:c.set,clearImmediate:c.clear})},function(c,d,b){b(113);var a=b(104);a.NodeList=a.HTMLCollection=a.Array},function(i,j,a){var c=a(4),b=a(3),g=a(16),h=a(172),d=c.navigator,e=!!d&&/MSIE .\./.test(d.userAgent),f=function(a){return e?function(b,c){return a(g(h,[].slice.call(arguments,2),"function"==typeof b?b:Function(b)),c)}:a};b(b.G+b.B+b.F*e,{setTimeout:f(c.setTimeout),setInterval:f(c.setInterval)})},function(c,f,a){var d=a(173),b=a(16),e=a(7);c.exports=function(){for(var h=e(this),a=arguments.length,c=Array(a),f=0,i=d._,g=!1;a>f;)(c[f]=arguments[f++])===i&&(g=!0);return function(){var d,k=this,f=arguments,l=f.length,e=0,j=0;if(!g&&!l)return b(h,c,k);if(d=c.slice(),g)for(;a>e;e++)d[e]===i&&(d[e]=f[j++]);for(;l>j;)d.push(f[j++]);return b(h,d,k)}}},function(a,c,b){a.exports=b(5)},function(x,w,b){function Dict(b){var c=f.create(null);return b!=a&&(r(b)?q(b,!0,function(a,b){c[a]=b}):o(c,b)),c}function reduce(g,h,l){p(h);var a,c,b=i(g),e=k(b),j=e.length,f=0;if(arguments.length<3){if(!j)throw TypeError("Reduce of empty object with no initial value");a=b[e[f++]]}else a=Object(l);for(;j>f;)d(b,c=e[f++])&&(a=h(a,b[c],c,g));return a}function includes(c,b){return(b==b?j(c,b):l(c,function(a){return a!=a}))!==a}function get(a,b){return d(a,b)?a[b]:void 0}function set(a,b,c){return v&&b in Object?f.setDesc(a,b,t(0,c)):a[b]=c,a}function isDict(a){return u(a)&&f.getProto(a)===Dict.prototype}var f=b(2),n=b(6),e=b(3),t=b(10),o=b(41),j=b(36),p=b(7),q=b(126),r=b(175),s=b(105),g=b(115),u=b(13),i=b(20),v=b(8),d=b(14),k=f.getKeys,c=function(b){var e=1==b,c=4==b;return function(l,m,o){var f,h,g,p=n(m,o,3),k=i(l),j=e||7==b||2==b?new("function"==typeof this?this:Dict):a;for(f in k)if(d(k,f)&&(h=k[f],g=p(h,f,l),b))if(e)j[f]=g;else if(g)switch(b){case 2:j[f]=h;break;case 3:return!0;case 5:return h;case 6:return f;case 7:j[g[0]]=g[1]}else if(c)return!1;return 3==b||c?c:j}},l=c(6),h=function(a){return function(b){return new m(b,a)}},m=function(a,b){this._t=i(a),this._a=k(a),this._i=0,this._k=b};s(m,"Dict",function(){var c,b=this,e=b._t,f=b._a,h=b._k;do if(b._i>=f.length)return b._t=a,g(1);while(!d(e,c=f[b._i++]));return"keys"==h?g(0,c):"values"==h?g(0,e[c]):g(0,[c,e[c]])}),Dict.prototype=null,e(e.G+e.F,{Dict:Dict}),e(e.S,"Dict",{keys:h("keys"),values:h("values"),entries:h("entries"),forEach:c(0),map:c(1),filter:c(2),some:c(3),every:c(4),find:c(5),findKey:l,mapPairs:c(7),reduce:reduce,keyOf:j,includes:includes,has:d,get:get,set:set,isDict:isDict})},function(c,g,b){var d=b(110),e=b(29)("iterator"),f=b(104);c.exports=b(5).isIterable=function(c){var b=Object(c);return b[e]!==a||"@@iterator"in b||f.hasOwnProperty(d(b))}},function(b,e,a){var c=a(17),d=a(109);b.exports=a(5).getIterator=function(a){var b=d(a);if("function"!=typeof b)throw TypeError(a+" is not iterable!");return c(b.call(a))}},function(f,g,a){var c=a(4),d=a(5),b=a(3),e=a(172);b(b.G+b.F,{delay:function delay(a){return new(d.Promise||c.Promise)(function(b){setTimeout(e.call(b,!0),a)})}})},function(d,e,a){var c=a(173),b=a(3);a(5)._=c._=c._||{},b(b.P+b.F,"Function",{part:a(172)})},function(c,d,b){var a=b(3);a(a.S+a.F,"Object",{isObject:b(13)})},function(c,d,b){var a=b(3);a(a.S+a.F,"Object",{classof:b(110)})},function(d,e,b){var a=b(3),c=b(182);a(a.S+a.F,"Object",{define:c})},function(c,f,a){var b=a(2),d=a(149),e=a(20);c.exports=function define(a,c){for(var f,g=d(e(c)),i=g.length,h=0;i>h;)b.setDesc(a,f=g[h++],b.getDesc(c,f));return a}},function(e,f,a){var b=a(3),c=a(182),d=a(2).create;b(b.S+b.F,"Object",{make:function(a,b){return c(d(a),b)}})},function(c,d,b){b(103)(Number,"Number",function(a){this._l=+a,this._i=0},function(){var b=this._i++,c=!(this._l>b);return{done:c,value:c?a:b}})},function(d,e,b){var a=b(3),c=b(161)(/[&<>"']/g,{"&":"&","<":"<",">":">",'"':""","'":"'"});a(a.P+a.F,"String",{escapeHTML:function escapeHTML(){return c(this)}})},function(d,e,b){var a=b(3),c=b(161)(/&(?:amp|lt|gt|quot|apos);/g,{"&":"&","<":"<",">":">",""":'"',"'":"'"});a(a.P+a.F,"String",{unescapeHTML:function unescapeHTML(){return c(this)}})},function(g,h,a){var e=a(2),f=a(4),b=a(3),c={},d=!0;e.each.call("assert,clear,count,debug,dir,dirxml,error,exception,group,groupCollapsed,groupEnd,info,isIndependentlyComposed,log,markTimeline,profile,profileEnd,table,time,timeEnd,timeline,timelineEnd,timeStamp,trace,warn".split(","),function(a){c[a]=function(){var b=f.console;return d&&b&&b[a]?Function.apply.call(b[a],b,arguments):void 0}}),b(b.G+b.F,{log:a(41)(c.log,c,{enable:function(){d=!0},disable:function(){d=!1}})})},function(i,j,b){var g=b(2),e=b(3),h=b(6),f=b(5).Array||Array,c={},d=function(d,b){g.each.call(d.split(","),function(d){b==a&&d in f?c[d]=f[d]:d in[]&&(c[d]=h(Function.call,[][d],b))})};d("pop,reverse,shift,keys,values,entries",1),d("indexOf,every,some,forEach,map,filter,find,findIndex,includes",3),d("join,slice,concat,push,splice,unshift,sort,lastIndexOf,reduce,reduceRight,copyWithin,fill"),e(e.S,"Array",c)}]),"undefined"!=typeof module&&module.exports?module.exports=b:"function"==typeof define&&define.amd?define(function(){return b}):c.core=b}(1,1);
+//# sourceMappingURL=library.min.js.map
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/client/library.min.js.map b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/client/library.min.js.map
new file mode 100644
index 00000000..56305ad6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/client/library.min.js.map
@@ -0,0 +1 @@
+{"version":3,"sources":["library.js"],"names":["__e","__g","undefined","modules","__webpack_require__","moduleId","installedModules","exports","module","id","loaded","call","m","c","p","IE8_DOM_DEFINE","$","$export","DESCRIPTORS","createDesc","html","cel","has","cof","invoke","fails","anObject","aFunction","isObject","toObject","toIObject","toInteger","toIndex","toLength","IObject","IE_PROTO","createArrayMethod","arrayIndexOf","ObjectProto","Object","prototype","ArrayProto","Array","arraySlice","slice","arrayJoin","join","defineProperty","setDesc","getOwnDescriptor","getDesc","defineProperties","setDescs","factories","get","a","O","P","Attributes","e","TypeError","value","propertyIsEnumerable","Properties","keys","getKeys","length","i","S","F","getOwnPropertyDescriptor","keys1","split","keys2","concat","keysLen1","createDict","iframeDocument","iframe","gt","style","display","appendChild","src","contentWindow","document","open","write","close","createGetKeys","names","object","key","result","push","Empty","getPrototypeOf","getProto","constructor","getOwnPropertyNames","getNames","create","construct","len","args","n","Function","bind","that","fn","this","partArgs","arguments","bound","begin","end","klass","start","upTo","size","cloned","charAt","separator","isArray","createArrayReduce","isRight","callbackfn","memo","index","methodize","$fn","arg1","forEach","each","map","filter","some","every","reduce","reduceRight","indexOf","lastIndexOf","el","fromIndex","Math","min","now","Date","lz","num","toISOString","NaN","isFinite","RangeError","d","y","getUTCFullYear","getUTCMilliseconds","s","abs","getUTCMonth","getUTCDate","getUTCHours","getUTCMinutes","getUTCSeconds","$Object","isEnum","getSymbols","getOwnPropertySymbols","global","core","ctx","PROTOTYPE","type","name","source","own","out","IS_FORCED","IS_GLOBAL","G","IS_STATIC","IS_PROTO","IS_BIND","B","IS_WRAP","W","target","C","param","window","self","version","b","apply","it","exec","bitmap","enumerable","configurable","writable","documentElement","is","createElement","hasOwnProperty","toString","un","defined","ceil","floor","isNaN","max","px","random","asc","TYPE","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","NO_HOLES","$this","val","res","f","SPECIES","original","arg","store","uid","Symbol","SHARED","IS_INCLUDES","redefine","$fails","shared","setToStringTag","wks","keyOf","$names","enumKeys","_create","$Symbol","$JSON","JSON","_stringify","stringify","setter","HIDDEN","SymbolRegistry","AllSymbols","useNative","setSymbolDesc","D","protoDesc","wrap","tag","sym","_k","set","isSymbol","$defineProperty","$defineProperties","l","$create","$propertyIsEnumerable","E","$getOwnPropertyDescriptor","$getOwnPropertyNames","$getOwnPropertySymbols","$stringify","replacer","$replacer","$$","buggyJSON","symbolStatics","for","keyFor","useSetter","useSimple","def","TAG","stat","windowNames","getWindowNames","symbols","assign","A","K","k","T","$$len","j","x","setPrototypeOf","check","proto","test","buggy","__proto__","$freeze","freeze","KEY","exp","$seal","seal","$preventExtensions","preventExtensions","$isFrozen","isFrozen","$isSealed","isSealed","$isExtensible","isExtensible","$getPrototypeOf","$keys","HAS_INSTANCE","FunctionProto","EPSILON","pow","_isFinite","isInteger","number","isSafeInteger","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","parseFloat","parseInt","log1p","sqrt","$acosh","acosh","Number","MAX_VALUE","log","LN2","asinh","atanh","sign","cbrt","clz32","LOG2E","cosh","expm1","EPSILON32","MAX32","MIN32","roundTiesToEven","fround","$abs","$sign","Infinity","hypot","value1","value2","div","sum","larg","$imul","imul","UINT16","xn","yn","xl","yl","log10","LN10","log2","sinh","tanh","trunc","fromCharCode","String","$fromCodePoint","fromCodePoint","code","raw","callSite","tpl","$trim","trim","spaces","space","non","ltrim","RegExp","rtrim","exporter","string","replace","$at","codePointAt","pos","TO_STRING","charCodeAt","context","ENDS_WITH","$endsWith","endsWith","searchString","endPosition","search","isRegExp","NAME","MATCH","re","INCLUDES","includes","repeat","count","str","STARTS_WITH","$startsWith","startsWith","iterated","_t","_i","point","done","LIBRARY","hide","Iterators","$iterCreate","ITERATOR","BUGGY","FF_ITERATOR","KEYS","VALUES","returnThis","Base","Constructor","next","DEFAULT","IS_SET","FORCED","methods","getMethod","kind","values","entries","DEF_VALUES","VALUES_BUG","$native","$default","IteratorPrototype","descriptor","isArrayIter","getIterFn","iter","from","arrayLike","step","iterator","mapfn","mapping","iterFn","ret","classof","getIteratorMethod","ARG","callee","SAFE_CLOSING","riter","skipClosing","safe","arr","of","addToUnscopables","Arguments","copyWithin","to","inc","fill","endPos","$find","forced","find","findIndex","Wrapper","strictNew","forOf","setProto","same","speciesConstructor","asap","PROMISE","process","isNode","empty","testResolve","sub","promise","resolve","USE_NATIVE","P2","works","then","thenableThenGotten","sameConstructor","getConstructor","isThenable","PromiseCapability","reject","$$resolve","$$reject","perform","error","notify","record","isReject","chain","v","ok","run","reaction","handler","fail","h","setTimeout","console","isUnhandled","emit","onunhandledrejection","reason","_d","$reject","r","$resolve","wrapper","Promise","executor","err","onFulfilled","onRejected","catch","capability","all","iterable","abrupt","remaining","results","alreadyCalled","race","head","last","macrotask","Observer","MutationObserver","WebKitMutationObserver","flush","parent","domain","exit","enter","nextTick","toggle","node","createTextNode","observe","characterData","data","task","defer","channel","port","setTask","setImmediate","clearTask","clearImmediate","MessageChannel","counter","queue","ONREADYSTATECHANGE","listner","event","port2","port1","onmessage","postMessage","addEventListener","importScripts","removeChild","clear","strong","Map","entry","getEntry","redefineAll","$iterDefine","ID","$has","setSpecies","SIZE","fastKey","_f","ADDER","_l","delete","prev","setStrong","common","IS_WEAK","_c","IS_ADDER","Set","add","weak","frozenStore","WEAK","tmp","$WeakMap","WeakMap","method","arrayFind","arrayFindIndex","FrozenStore","findFrozen","splice","WeakSet","_apply","thisArgument","argumentsList","Reflect","Target","newTarget","$args","instance","propertyKey","attributes","deleteProperty","desc","Enumerate","enumerate","receiver","ownKeys","V","existingDescriptor","ownDesc","$includes","at","$pad","padLeft","maxLength","fillString","left","stringLength","fillStr","intMaxLength","fillLen","stringFiller","padRight","trimLeft","trimRight","$re","escape","regExp","part","getOwnPropertyDescriptors","$values","isEntries","$entries","toJSON","$task","NodeList","HTMLCollection","partial","navigator","MSIE","userAgent","time","setInterval","path","pargs","_","holder","Dict","dict","isIterable","init","findKey","isDict","createDictMethod","createDictIter","DictIterator","_a","mapPairs","getIterator","delay","define","mixin","make","&","<",">","\"","'","escapeHTML","&","<",">",""","'","unescapeHTML","enabled","$console","enable","disable","$ctx","$Array","statics","setStatics","amd"],"mappings":"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","file":"library.min.js"}
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/client/shim.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/client/shim.js
new file mode 100644
index 00000000..7a24843d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/client/shim.js
@@ -0,0 +1,4551 @@
+/**
+ * core-js 1.2.7
+ * https://github.com/zloirock/core-js
+ * License: http://rock.mit-license.org
+ * © 2016 Denis Pushkarev
+ */
+!function(__e, __g, undefined){
+'use strict';
+/******/ (function(modules) { // webpackBootstrap
+/******/ // The module cache
+/******/ var installedModules = {};
+
+/******/ // The require function
+/******/ function __webpack_require__(moduleId) {
+
+/******/ // Check if module is in cache
+/******/ if(installedModules[moduleId])
+/******/ return installedModules[moduleId].exports;
+
+/******/ // Create a new module (and put it into the cache)
+/******/ var module = installedModules[moduleId] = {
+/******/ exports: {},
+/******/ id: moduleId,
+/******/ loaded: false
+/******/ };
+
+/******/ // Execute the module function
+/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
+
+/******/ // Flag the module as loaded
+/******/ module.loaded = true;
+
+/******/ // Return the exports of the module
+/******/ return module.exports;
+/******/ }
+
+
+/******/ // expose the modules object (__webpack_modules__)
+/******/ __webpack_require__.m = modules;
+
+/******/ // expose the module cache
+/******/ __webpack_require__.c = installedModules;
+
+/******/ // __webpack_public_path__
+/******/ __webpack_require__.p = "";
+
+/******/ // Load entry module and return exports
+/******/ return __webpack_require__(0);
+/******/ })
+/************************************************************************/
+/******/ ([
+/* 0 */
+/***/ function(module, exports, __webpack_require__) {
+
+ __webpack_require__(1);
+ __webpack_require__(34);
+ __webpack_require__(40);
+ __webpack_require__(42);
+ __webpack_require__(44);
+ __webpack_require__(46);
+ __webpack_require__(48);
+ __webpack_require__(50);
+ __webpack_require__(51);
+ __webpack_require__(52);
+ __webpack_require__(53);
+ __webpack_require__(54);
+ __webpack_require__(55);
+ __webpack_require__(56);
+ __webpack_require__(57);
+ __webpack_require__(58);
+ __webpack_require__(59);
+ __webpack_require__(60);
+ __webpack_require__(61);
+ __webpack_require__(64);
+ __webpack_require__(65);
+ __webpack_require__(66);
+ __webpack_require__(68);
+ __webpack_require__(69);
+ __webpack_require__(70);
+ __webpack_require__(71);
+ __webpack_require__(72);
+ __webpack_require__(73);
+ __webpack_require__(74);
+ __webpack_require__(76);
+ __webpack_require__(77);
+ __webpack_require__(78);
+ __webpack_require__(80);
+ __webpack_require__(81);
+ __webpack_require__(82);
+ __webpack_require__(84);
+ __webpack_require__(85);
+ __webpack_require__(86);
+ __webpack_require__(87);
+ __webpack_require__(88);
+ __webpack_require__(89);
+ __webpack_require__(90);
+ __webpack_require__(91);
+ __webpack_require__(92);
+ __webpack_require__(93);
+ __webpack_require__(94);
+ __webpack_require__(95);
+ __webpack_require__(96);
+ __webpack_require__(97);
+ __webpack_require__(99);
+ __webpack_require__(103);
+ __webpack_require__(104);
+ __webpack_require__(106);
+ __webpack_require__(107);
+ __webpack_require__(111);
+ __webpack_require__(116);
+ __webpack_require__(117);
+ __webpack_require__(120);
+ __webpack_require__(122);
+ __webpack_require__(124);
+ __webpack_require__(126);
+ __webpack_require__(127);
+ __webpack_require__(128);
+ __webpack_require__(130);
+ __webpack_require__(131);
+ __webpack_require__(133);
+ __webpack_require__(134);
+ __webpack_require__(135);
+ __webpack_require__(136);
+ __webpack_require__(143);
+ __webpack_require__(146);
+ __webpack_require__(147);
+ __webpack_require__(149);
+ __webpack_require__(150);
+ __webpack_require__(151);
+ __webpack_require__(152);
+ __webpack_require__(153);
+ __webpack_require__(154);
+ __webpack_require__(155);
+ __webpack_require__(156);
+ __webpack_require__(157);
+ __webpack_require__(158);
+ __webpack_require__(159);
+ __webpack_require__(160);
+ __webpack_require__(162);
+ __webpack_require__(163);
+ __webpack_require__(164);
+ __webpack_require__(165);
+ __webpack_require__(166);
+ __webpack_require__(167);
+ __webpack_require__(169);
+ __webpack_require__(170);
+ __webpack_require__(171);
+ __webpack_require__(172);
+ __webpack_require__(174);
+ __webpack_require__(175);
+ __webpack_require__(177);
+ __webpack_require__(178);
+ __webpack_require__(180);
+ __webpack_require__(181);
+ __webpack_require__(182);
+ __webpack_require__(183);
+ module.exports = __webpack_require__(186);
+
+
+/***/ },
+/* 1 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $ = __webpack_require__(2)
+ , $export = __webpack_require__(3)
+ , DESCRIPTORS = __webpack_require__(8)
+ , createDesc = __webpack_require__(7)
+ , html = __webpack_require__(14)
+ , cel = __webpack_require__(15)
+ , has = __webpack_require__(17)
+ , cof = __webpack_require__(18)
+ , invoke = __webpack_require__(19)
+ , fails = __webpack_require__(9)
+ , anObject = __webpack_require__(20)
+ , aFunction = __webpack_require__(13)
+ , isObject = __webpack_require__(16)
+ , toObject = __webpack_require__(21)
+ , toIObject = __webpack_require__(23)
+ , toInteger = __webpack_require__(25)
+ , toIndex = __webpack_require__(26)
+ , toLength = __webpack_require__(27)
+ , IObject = __webpack_require__(24)
+ , IE_PROTO = __webpack_require__(11)('__proto__')
+ , createArrayMethod = __webpack_require__(28)
+ , arrayIndexOf = __webpack_require__(33)(false)
+ , ObjectProto = Object.prototype
+ , ArrayProto = Array.prototype
+ , arraySlice = ArrayProto.slice
+ , arrayJoin = ArrayProto.join
+ , defineProperty = $.setDesc
+ , getOwnDescriptor = $.getDesc
+ , defineProperties = $.setDescs
+ , factories = {}
+ , IE8_DOM_DEFINE;
+
+ if(!DESCRIPTORS){
+ IE8_DOM_DEFINE = !fails(function(){
+ return defineProperty(cel('div'), 'a', {get: function(){ return 7; }}).a != 7;
+ });
+ $.setDesc = function(O, P, Attributes){
+ if(IE8_DOM_DEFINE)try {
+ return defineProperty(O, P, Attributes);
+ } catch(e){ /* empty */ }
+ if('get' in Attributes || 'set' in Attributes)throw TypeError('Accessors not supported!');
+ if('value' in Attributes)anObject(O)[P] = Attributes.value;
+ return O;
+ };
+ $.getDesc = function(O, P){
+ if(IE8_DOM_DEFINE)try {
+ return getOwnDescriptor(O, P);
+ } catch(e){ /* empty */ }
+ if(has(O, P))return createDesc(!ObjectProto.propertyIsEnumerable.call(O, P), O[P]);
+ };
+ $.setDescs = defineProperties = function(O, Properties){
+ anObject(O);
+ var keys = $.getKeys(Properties)
+ , length = keys.length
+ , i = 0
+ , P;
+ while(length > i)$.setDesc(O, P = keys[i++], Properties[P]);
+ return O;
+ };
+ }
+ $export($export.S + $export.F * !DESCRIPTORS, 'Object', {
+ // 19.1.2.6 / 15.2.3.3 Object.getOwnPropertyDescriptor(O, P)
+ getOwnPropertyDescriptor: $.getDesc,
+ // 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)
+ defineProperty: $.setDesc,
+ // 19.1.2.3 / 15.2.3.7 Object.defineProperties(O, Properties)
+ defineProperties: defineProperties
+ });
+
+ // IE 8- don't enum bug keys
+ var keys1 = ('constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,' +
+ 'toLocaleString,toString,valueOf').split(',')
+ // Additional keys for getOwnPropertyNames
+ , keys2 = keys1.concat('length', 'prototype')
+ , keysLen1 = keys1.length;
+
+ // Create object with `null` prototype: use iframe Object with cleared prototype
+ var createDict = function(){
+ // Thrash, waste and sodomy: IE GC bug
+ var iframe = cel('iframe')
+ , i = keysLen1
+ , gt = '>'
+ , iframeDocument;
+ iframe.style.display = 'none';
+ html.appendChild(iframe);
+ iframe.src = 'javascript:'; // eslint-disable-line no-script-url
+ // createDict = iframe.contentWindow.Object;
+ // html.removeChild(iframe);
+ iframeDocument = iframe.contentWindow.document;
+ iframeDocument.open();
+ iframeDocument.write(' i)if(has(O, key = names[i++])){
+ ~arrayIndexOf(result, key) || result.push(key);
+ }
+ return result;
+ };
+ };
+ var Empty = function(){};
+ $export($export.S, 'Object', {
+ // 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
+ getPrototypeOf: $.getProto = $.getProto || function(O){
+ O = toObject(O);
+ if(has(O, IE_PROTO))return O[IE_PROTO];
+ if(typeof O.constructor == 'function' && O instanceof O.constructor){
+ return O.constructor.prototype;
+ } return O instanceof Object ? ObjectProto : null;
+ },
+ // 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
+ getOwnPropertyNames: $.getNames = $.getNames || createGetKeys(keys2, keys2.length, true),
+ // 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
+ create: $.create = $.create || function(O, /*?*/Properties){
+ var result;
+ if(O !== null){
+ Empty.prototype = anObject(O);
+ result = new Empty();
+ Empty.prototype = null;
+ // add "__proto__" for Object.getPrototypeOf shim
+ result[IE_PROTO] = O;
+ } else result = createDict();
+ return Properties === undefined ? result : defineProperties(result, Properties);
+ },
+ // 19.1.2.14 / 15.2.3.14 Object.keys(O)
+ keys: $.getKeys = $.getKeys || createGetKeys(keys1, keysLen1, false)
+ });
+
+ var construct = function(F, len, args){
+ if(!(len in factories)){
+ for(var n = [], i = 0; i < len; i++)n[i] = 'a[' + i + ']';
+ factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')');
+ }
+ return factories[len](F, args);
+ };
+
+ // 19.2.3.2 / 15.3.4.5 Function.prototype.bind(thisArg, args...)
+ $export($export.P, 'Function', {
+ bind: function bind(that /*, args... */){
+ var fn = aFunction(this)
+ , partArgs = arraySlice.call(arguments, 1);
+ var bound = function(/* args... */){
+ var args = partArgs.concat(arraySlice.call(arguments));
+ return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that);
+ };
+ if(isObject(fn.prototype))bound.prototype = fn.prototype;
+ return bound;
+ }
+ });
+
+ // fallback for not array-like ES3 strings and DOM objects
+ $export($export.P + $export.F * fails(function(){
+ if(html)arraySlice.call(html);
+ }), 'Array', {
+ slice: function(begin, end){
+ var len = toLength(this.length)
+ , klass = cof(this);
+ end = end === undefined ? len : end;
+ if(klass == 'Array')return arraySlice.call(this, begin, end);
+ var start = toIndex(begin, len)
+ , upTo = toIndex(end, len)
+ , size = toLength(upTo - start)
+ , cloned = Array(size)
+ , i = 0;
+ for(; i < size; i++)cloned[i] = klass == 'String'
+ ? this.charAt(start + i)
+ : this[start + i];
+ return cloned;
+ }
+ });
+ $export($export.P + $export.F * (IObject != Object), 'Array', {
+ join: function join(separator){
+ return arrayJoin.call(IObject(this), separator === undefined ? ',' : separator);
+ }
+ });
+
+ // 22.1.2.2 / 15.4.3.2 Array.isArray(arg)
+ $export($export.S, 'Array', {isArray: __webpack_require__(30)});
+
+ var createArrayReduce = function(isRight){
+ return function(callbackfn, memo){
+ aFunction(callbackfn);
+ var O = IObject(this)
+ , length = toLength(O.length)
+ , index = isRight ? length - 1 : 0
+ , i = isRight ? -1 : 1;
+ if(arguments.length < 2)for(;;){
+ if(index in O){
+ memo = O[index];
+ index += i;
+ break;
+ }
+ index += i;
+ if(isRight ? index < 0 : length <= index){
+ throw TypeError('Reduce of empty array with no initial value');
+ }
+ }
+ for(;isRight ? index >= 0 : length > index; index += i)if(index in O){
+ memo = callbackfn(memo, O[index], index, this);
+ }
+ return memo;
+ };
+ };
+
+ var methodize = function($fn){
+ return function(arg1/*, arg2 = undefined */){
+ return $fn(this, arg1, arguments[1]);
+ };
+ };
+
+ $export($export.P, 'Array', {
+ // 22.1.3.10 / 15.4.4.18 Array.prototype.forEach(callbackfn [, thisArg])
+ forEach: $.each = $.each || methodize(createArrayMethod(0)),
+ // 22.1.3.15 / 15.4.4.19 Array.prototype.map(callbackfn [, thisArg])
+ map: methodize(createArrayMethod(1)),
+ // 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg])
+ filter: methodize(createArrayMethod(2)),
+ // 22.1.3.23 / 15.4.4.17 Array.prototype.some(callbackfn [, thisArg])
+ some: methodize(createArrayMethod(3)),
+ // 22.1.3.5 / 15.4.4.16 Array.prototype.every(callbackfn [, thisArg])
+ every: methodize(createArrayMethod(4)),
+ // 22.1.3.18 / 15.4.4.21 Array.prototype.reduce(callbackfn [, initialValue])
+ reduce: createArrayReduce(false),
+ // 22.1.3.19 / 15.4.4.22 Array.prototype.reduceRight(callbackfn [, initialValue])
+ reduceRight: createArrayReduce(true),
+ // 22.1.3.11 / 15.4.4.14 Array.prototype.indexOf(searchElement [, fromIndex])
+ indexOf: methodize(arrayIndexOf),
+ // 22.1.3.14 / 15.4.4.15 Array.prototype.lastIndexOf(searchElement [, fromIndex])
+ lastIndexOf: function(el, fromIndex /* = @[*-1] */){
+ var O = toIObject(this)
+ , length = toLength(O.length)
+ , index = length - 1;
+ if(arguments.length > 1)index = Math.min(index, toInteger(fromIndex));
+ if(index < 0)index = toLength(length + index);
+ for(;index >= 0; index--)if(index in O)if(O[index] === el)return index;
+ return -1;
+ }
+ });
+
+ // 20.3.3.1 / 15.9.4.4 Date.now()
+ $export($export.S, 'Date', {now: function(){ return +new Date; }});
+
+ var lz = function(num){
+ return num > 9 ? num : '0' + num;
+ };
+
+ // 20.3.4.36 / 15.9.5.43 Date.prototype.toISOString()
+ // PhantomJS / old WebKit has a broken implementations
+ $export($export.P + $export.F * (fails(function(){
+ return new Date(-5e13 - 1).toISOString() != '0385-07-25T07:06:39.999Z';
+ }) || !fails(function(){
+ new Date(NaN).toISOString();
+ })), 'Date', {
+ toISOString: function toISOString(){
+ if(!isFinite(this))throw RangeError('Invalid time value');
+ var d = this
+ , y = d.getUTCFullYear()
+ , m = d.getUTCMilliseconds()
+ , s = y < 0 ? '-' : y > 9999 ? '+' : '';
+ return s + ('00000' + Math.abs(y)).slice(s ? -6 : -4) +
+ '-' + lz(d.getUTCMonth() + 1) + '-' + lz(d.getUTCDate()) +
+ 'T' + lz(d.getUTCHours()) + ':' + lz(d.getUTCMinutes()) +
+ ':' + lz(d.getUTCSeconds()) + '.' + (m > 99 ? m : '0' + lz(m)) + 'Z';
+ }
+ });
+
+/***/ },
+/* 2 */
+/***/ function(module, exports) {
+
+ var $Object = Object;
+ module.exports = {
+ create: $Object.create,
+ getProto: $Object.getPrototypeOf,
+ isEnum: {}.propertyIsEnumerable,
+ getDesc: $Object.getOwnPropertyDescriptor,
+ setDesc: $Object.defineProperty,
+ setDescs: $Object.defineProperties,
+ getKeys: $Object.keys,
+ getNames: $Object.getOwnPropertyNames,
+ getSymbols: $Object.getOwnPropertySymbols,
+ each: [].forEach
+ };
+
+/***/ },
+/* 3 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var global = __webpack_require__(4)
+ , core = __webpack_require__(5)
+ , hide = __webpack_require__(6)
+ , redefine = __webpack_require__(10)
+ , ctx = __webpack_require__(12)
+ , PROTOTYPE = 'prototype';
+
+ var $export = function(type, name, source){
+ var IS_FORCED = type & $export.F
+ , IS_GLOBAL = type & $export.G
+ , IS_STATIC = type & $export.S
+ , IS_PROTO = type & $export.P
+ , IS_BIND = type & $export.B
+ , target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE]
+ , exports = IS_GLOBAL ? core : core[name] || (core[name] = {})
+ , expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {})
+ , key, own, out, exp;
+ if(IS_GLOBAL)source = name;
+ for(key in source){
+ // contains in native
+ own = !IS_FORCED && target && key in target;
+ // export native or passed
+ out = (own ? target : source)[key];
+ // bind timers to global for call from export context
+ exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
+ // extend global
+ if(target && !own)redefine(target, key, out);
+ // export
+ if(exports[key] != out)hide(exports, key, exp);
+ if(IS_PROTO && expProto[key] != out)expProto[key] = out;
+ }
+ };
+ global.core = core;
+ // type bitmap
+ $export.F = 1; // forced
+ $export.G = 2; // global
+ $export.S = 4; // static
+ $export.P = 8; // proto
+ $export.B = 16; // bind
+ $export.W = 32; // wrap
+ module.exports = $export;
+
+/***/ },
+/* 4 */
+/***/ function(module, exports) {
+
+ // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
+ var global = module.exports = typeof window != 'undefined' && window.Math == Math
+ ? window : typeof self != 'undefined' && self.Math == Math ? self : Function('return this')();
+ if(typeof __g == 'number')__g = global; // eslint-disable-line no-undef
+
+/***/ },
+/* 5 */
+/***/ function(module, exports) {
+
+ var core = module.exports = {version: '1.2.6'};
+ if(typeof __e == 'number')__e = core; // eslint-disable-line no-undef
+
+/***/ },
+/* 6 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $ = __webpack_require__(2)
+ , createDesc = __webpack_require__(7);
+ module.exports = __webpack_require__(8) ? function(object, key, value){
+ return $.setDesc(object, key, createDesc(1, value));
+ } : function(object, key, value){
+ object[key] = value;
+ return object;
+ };
+
+/***/ },
+/* 7 */
+/***/ function(module, exports) {
+
+ module.exports = function(bitmap, value){
+ return {
+ enumerable : !(bitmap & 1),
+ configurable: !(bitmap & 2),
+ writable : !(bitmap & 4),
+ value : value
+ };
+ };
+
+/***/ },
+/* 8 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // Thank's IE8 for his funny defineProperty
+ module.exports = !__webpack_require__(9)(function(){
+ return Object.defineProperty({}, 'a', {get: function(){ return 7; }}).a != 7;
+ });
+
+/***/ },
+/* 9 */
+/***/ function(module, exports) {
+
+ module.exports = function(exec){
+ try {
+ return !!exec();
+ } catch(e){
+ return true;
+ }
+ };
+
+/***/ },
+/* 10 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // add fake Function#toString
+ // for correct work wrapped methods / constructors with methods like LoDash isNative
+ var global = __webpack_require__(4)
+ , hide = __webpack_require__(6)
+ , SRC = __webpack_require__(11)('src')
+ , TO_STRING = 'toString'
+ , $toString = Function[TO_STRING]
+ , TPL = ('' + $toString).split(TO_STRING);
+
+ __webpack_require__(5).inspectSource = function(it){
+ return $toString.call(it);
+ };
+
+ (module.exports = function(O, key, val, safe){
+ if(typeof val == 'function'){
+ val.hasOwnProperty(SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));
+ val.hasOwnProperty('name') || hide(val, 'name', key);
+ }
+ if(O === global){
+ O[key] = val;
+ } else {
+ if(!safe)delete O[key];
+ hide(O, key, val);
+ }
+ })(Function.prototype, TO_STRING, function toString(){
+ return typeof this == 'function' && this[SRC] || $toString.call(this);
+ });
+
+/***/ },
+/* 11 */
+/***/ function(module, exports) {
+
+ var id = 0
+ , px = Math.random();
+ module.exports = function(key){
+ return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
+ };
+
+/***/ },
+/* 12 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // optional / simple context binding
+ var aFunction = __webpack_require__(13);
+ module.exports = function(fn, that, length){
+ aFunction(fn);
+ if(that === undefined)return fn;
+ switch(length){
+ case 1: return function(a){
+ return fn.call(that, a);
+ };
+ case 2: return function(a, b){
+ return fn.call(that, a, b);
+ };
+ case 3: return function(a, b, c){
+ return fn.call(that, a, b, c);
+ };
+ }
+ return function(/* ...args */){
+ return fn.apply(that, arguments);
+ };
+ };
+
+/***/ },
+/* 13 */
+/***/ function(module, exports) {
+
+ module.exports = function(it){
+ if(typeof it != 'function')throw TypeError(it + ' is not a function!');
+ return it;
+ };
+
+/***/ },
+/* 14 */
+/***/ function(module, exports, __webpack_require__) {
+
+ module.exports = __webpack_require__(4).document && document.documentElement;
+
+/***/ },
+/* 15 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var isObject = __webpack_require__(16)
+ , document = __webpack_require__(4).document
+ // in old IE typeof document.createElement is 'object'
+ , is = isObject(document) && isObject(document.createElement);
+ module.exports = function(it){
+ return is ? document.createElement(it) : {};
+ };
+
+/***/ },
+/* 16 */
+/***/ function(module, exports) {
+
+ module.exports = function(it){
+ return typeof it === 'object' ? it !== null : typeof it === 'function';
+ };
+
+/***/ },
+/* 17 */
+/***/ function(module, exports) {
+
+ var hasOwnProperty = {}.hasOwnProperty;
+ module.exports = function(it, key){
+ return hasOwnProperty.call(it, key);
+ };
+
+/***/ },
+/* 18 */
+/***/ function(module, exports) {
+
+ var toString = {}.toString;
+
+ module.exports = function(it){
+ return toString.call(it).slice(8, -1);
+ };
+
+/***/ },
+/* 19 */
+/***/ function(module, exports) {
+
+ // fast apply, http://jsperf.lnkit.com/fast-apply/5
+ module.exports = function(fn, args, that){
+ var un = that === undefined;
+ switch(args.length){
+ case 0: return un ? fn()
+ : fn.call(that);
+ case 1: return un ? fn(args[0])
+ : fn.call(that, args[0]);
+ case 2: return un ? fn(args[0], args[1])
+ : fn.call(that, args[0], args[1]);
+ case 3: return un ? fn(args[0], args[1], args[2])
+ : fn.call(that, args[0], args[1], args[2]);
+ case 4: return un ? fn(args[0], args[1], args[2], args[3])
+ : fn.call(that, args[0], args[1], args[2], args[3]);
+ } return fn.apply(that, args);
+ };
+
+/***/ },
+/* 20 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var isObject = __webpack_require__(16);
+ module.exports = function(it){
+ if(!isObject(it))throw TypeError(it + ' is not an object!');
+ return it;
+ };
+
+/***/ },
+/* 21 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 7.1.13 ToObject(argument)
+ var defined = __webpack_require__(22);
+ module.exports = function(it){
+ return Object(defined(it));
+ };
+
+/***/ },
+/* 22 */
+/***/ function(module, exports) {
+
+ // 7.2.1 RequireObjectCoercible(argument)
+ module.exports = function(it){
+ if(it == undefined)throw TypeError("Can't call method on " + it);
+ return it;
+ };
+
+/***/ },
+/* 23 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // to indexed object, toObject with fallback for non-array-like ES3 strings
+ var IObject = __webpack_require__(24)
+ , defined = __webpack_require__(22);
+ module.exports = function(it){
+ return IObject(defined(it));
+ };
+
+/***/ },
+/* 24 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // fallback for non-array-like ES3 and non-enumerable old V8 strings
+ var cof = __webpack_require__(18);
+ module.exports = Object('z').propertyIsEnumerable(0) ? Object : function(it){
+ return cof(it) == 'String' ? it.split('') : Object(it);
+ };
+
+/***/ },
+/* 25 */
+/***/ function(module, exports) {
+
+ // 7.1.4 ToInteger
+ var ceil = Math.ceil
+ , floor = Math.floor;
+ module.exports = function(it){
+ return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
+ };
+
+/***/ },
+/* 26 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var toInteger = __webpack_require__(25)
+ , max = Math.max
+ , min = Math.min;
+ module.exports = function(index, length){
+ index = toInteger(index);
+ return index < 0 ? max(index + length, 0) : min(index, length);
+ };
+
+/***/ },
+/* 27 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 7.1.15 ToLength
+ var toInteger = __webpack_require__(25)
+ , min = Math.min;
+ module.exports = function(it){
+ return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
+ };
+
+/***/ },
+/* 28 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 0 -> Array#forEach
+ // 1 -> Array#map
+ // 2 -> Array#filter
+ // 3 -> Array#some
+ // 4 -> Array#every
+ // 5 -> Array#find
+ // 6 -> Array#findIndex
+ var ctx = __webpack_require__(12)
+ , IObject = __webpack_require__(24)
+ , toObject = __webpack_require__(21)
+ , toLength = __webpack_require__(27)
+ , asc = __webpack_require__(29);
+ module.exports = function(TYPE){
+ var IS_MAP = TYPE == 1
+ , IS_FILTER = TYPE == 2
+ , IS_SOME = TYPE == 3
+ , IS_EVERY = TYPE == 4
+ , IS_FIND_INDEX = TYPE == 6
+ , NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
+ return function($this, callbackfn, that){
+ var O = toObject($this)
+ , self = IObject(O)
+ , f = ctx(callbackfn, that, 3)
+ , length = toLength(self.length)
+ , index = 0
+ , result = IS_MAP ? asc($this, length) : IS_FILTER ? asc($this, 0) : undefined
+ , val, res;
+ for(;length > index; index++)if(NO_HOLES || index in self){
+ val = self[index];
+ res = f(val, index, O);
+ if(TYPE){
+ if(IS_MAP)result[index] = res; // map
+ else if(res)switch(TYPE){
+ case 3: return true; // some
+ case 5: return val; // find
+ case 6: return index; // findIndex
+ case 2: result.push(val); // filter
+ } else if(IS_EVERY)return false; // every
+ }
+ }
+ return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
+ };
+ };
+
+/***/ },
+/* 29 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 9.4.2.3 ArraySpeciesCreate(originalArray, length)
+ var isObject = __webpack_require__(16)
+ , isArray = __webpack_require__(30)
+ , SPECIES = __webpack_require__(31)('species');
+ module.exports = function(original, length){
+ var C;
+ if(isArray(original)){
+ C = original.constructor;
+ // cross-realm fallback
+ if(typeof C == 'function' && (C === Array || isArray(C.prototype)))C = undefined;
+ if(isObject(C)){
+ C = C[SPECIES];
+ if(C === null)C = undefined;
+ }
+ } return new (C === undefined ? Array : C)(length);
+ };
+
+/***/ },
+/* 30 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 7.2.2 IsArray(argument)
+ var cof = __webpack_require__(18);
+ module.exports = Array.isArray || function(arg){
+ return cof(arg) == 'Array';
+ };
+
+/***/ },
+/* 31 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var store = __webpack_require__(32)('wks')
+ , uid = __webpack_require__(11)
+ , Symbol = __webpack_require__(4).Symbol;
+ module.exports = function(name){
+ return store[name] || (store[name] =
+ Symbol && Symbol[name] || (Symbol || uid)('Symbol.' + name));
+ };
+
+/***/ },
+/* 32 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var global = __webpack_require__(4)
+ , SHARED = '__core-js_shared__'
+ , store = global[SHARED] || (global[SHARED] = {});
+ module.exports = function(key){
+ return store[key] || (store[key] = {});
+ };
+
+/***/ },
+/* 33 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // false -> Array#indexOf
+ // true -> Array#includes
+ var toIObject = __webpack_require__(23)
+ , toLength = __webpack_require__(27)
+ , toIndex = __webpack_require__(26);
+ module.exports = function(IS_INCLUDES){
+ return function($this, el, fromIndex){
+ var O = toIObject($this)
+ , length = toLength(O.length)
+ , index = toIndex(fromIndex, length)
+ , value;
+ // Array#includes uses SameValueZero equality algorithm
+ if(IS_INCLUDES && el != el)while(length > index){
+ value = O[index++];
+ if(value != value)return true;
+ // Array#toIndex ignores holes, Array#includes - not
+ } else for(;length > index; index++)if(IS_INCLUDES || index in O){
+ if(O[index] === el)return IS_INCLUDES || index;
+ } return !IS_INCLUDES && -1;
+ };
+ };
+
+/***/ },
+/* 34 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ // ECMAScript 6 symbols shim
+ var $ = __webpack_require__(2)
+ , global = __webpack_require__(4)
+ , has = __webpack_require__(17)
+ , DESCRIPTORS = __webpack_require__(8)
+ , $export = __webpack_require__(3)
+ , redefine = __webpack_require__(10)
+ , $fails = __webpack_require__(9)
+ , shared = __webpack_require__(32)
+ , setToStringTag = __webpack_require__(35)
+ , uid = __webpack_require__(11)
+ , wks = __webpack_require__(31)
+ , keyOf = __webpack_require__(36)
+ , $names = __webpack_require__(37)
+ , enumKeys = __webpack_require__(38)
+ , isArray = __webpack_require__(30)
+ , anObject = __webpack_require__(20)
+ , toIObject = __webpack_require__(23)
+ , createDesc = __webpack_require__(7)
+ , getDesc = $.getDesc
+ , setDesc = $.setDesc
+ , _create = $.create
+ , getNames = $names.get
+ , $Symbol = global.Symbol
+ , $JSON = global.JSON
+ , _stringify = $JSON && $JSON.stringify
+ , setter = false
+ , HIDDEN = wks('_hidden')
+ , isEnum = $.isEnum
+ , SymbolRegistry = shared('symbol-registry')
+ , AllSymbols = shared('symbols')
+ , useNative = typeof $Symbol == 'function'
+ , ObjectProto = Object.prototype;
+
+ // fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
+ var setSymbolDesc = DESCRIPTORS && $fails(function(){
+ return _create(setDesc({}, 'a', {
+ get: function(){ return setDesc(this, 'a', {value: 7}).a; }
+ })).a != 7;
+ }) ? function(it, key, D){
+ var protoDesc = getDesc(ObjectProto, key);
+ if(protoDesc)delete ObjectProto[key];
+ setDesc(it, key, D);
+ if(protoDesc && it !== ObjectProto)setDesc(ObjectProto, key, protoDesc);
+ } : setDesc;
+
+ var wrap = function(tag){
+ var sym = AllSymbols[tag] = _create($Symbol.prototype);
+ sym._k = tag;
+ DESCRIPTORS && setter && setSymbolDesc(ObjectProto, tag, {
+ configurable: true,
+ set: function(value){
+ if(has(this, HIDDEN) && has(this[HIDDEN], tag))this[HIDDEN][tag] = false;
+ setSymbolDesc(this, tag, createDesc(1, value));
+ }
+ });
+ return sym;
+ };
+
+ var isSymbol = function(it){
+ return typeof it == 'symbol';
+ };
+
+ var $defineProperty = function defineProperty(it, key, D){
+ if(D && has(AllSymbols, key)){
+ if(!D.enumerable){
+ if(!has(it, HIDDEN))setDesc(it, HIDDEN, createDesc(1, {}));
+ it[HIDDEN][key] = true;
+ } else {
+ if(has(it, HIDDEN) && it[HIDDEN][key])it[HIDDEN][key] = false;
+ D = _create(D, {enumerable: createDesc(0, false)});
+ } return setSymbolDesc(it, key, D);
+ } return setDesc(it, key, D);
+ };
+ var $defineProperties = function defineProperties(it, P){
+ anObject(it);
+ var keys = enumKeys(P = toIObject(P))
+ , i = 0
+ , l = keys.length
+ , key;
+ while(l > i)$defineProperty(it, key = keys[i++], P[key]);
+ return it;
+ };
+ var $create = function create(it, P){
+ return P === undefined ? _create(it) : $defineProperties(_create(it), P);
+ };
+ var $propertyIsEnumerable = function propertyIsEnumerable(key){
+ var E = isEnum.call(this, key);
+ return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key]
+ ? E : true;
+ };
+ var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key){
+ var D = getDesc(it = toIObject(it), key);
+ if(D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key]))D.enumerable = true;
+ return D;
+ };
+ var $getOwnPropertyNames = function getOwnPropertyNames(it){
+ var names = getNames(toIObject(it))
+ , result = []
+ , i = 0
+ , key;
+ while(names.length > i)if(!has(AllSymbols, key = names[i++]) && key != HIDDEN)result.push(key);
+ return result;
+ };
+ var $getOwnPropertySymbols = function getOwnPropertySymbols(it){
+ var names = getNames(toIObject(it))
+ , result = []
+ , i = 0
+ , key;
+ while(names.length > i)if(has(AllSymbols, key = names[i++]))result.push(AllSymbols[key]);
+ return result;
+ };
+ var $stringify = function stringify(it){
+ if(it === undefined || isSymbol(it))return; // IE8 returns string on undefined
+ var args = [it]
+ , i = 1
+ , $$ = arguments
+ , replacer, $replacer;
+ while($$.length > i)args.push($$[i++]);
+ replacer = args[1];
+ if(typeof replacer == 'function')$replacer = replacer;
+ if($replacer || !isArray(replacer))replacer = function(key, value){
+ if($replacer)value = $replacer.call(this, key, value);
+ if(!isSymbol(value))return value;
+ };
+ args[1] = replacer;
+ return _stringify.apply($JSON, args);
+ };
+ var buggyJSON = $fails(function(){
+ var S = $Symbol();
+ // MS Edge converts symbol values to JSON as {}
+ // WebKit converts symbol values to JSON as null
+ // V8 throws on boxed symbols
+ return _stringify([S]) != '[null]' || _stringify({a: S}) != '{}' || _stringify(Object(S)) != '{}';
+ });
+
+ // 19.4.1.1 Symbol([description])
+ if(!useNative){
+ $Symbol = function Symbol(){
+ if(isSymbol(this))throw TypeError('Symbol is not a constructor');
+ return wrap(uid(arguments.length > 0 ? arguments[0] : undefined));
+ };
+ redefine($Symbol.prototype, 'toString', function toString(){
+ return this._k;
+ });
+
+ isSymbol = function(it){
+ return it instanceof $Symbol;
+ };
+
+ $.create = $create;
+ $.isEnum = $propertyIsEnumerable;
+ $.getDesc = $getOwnPropertyDescriptor;
+ $.setDesc = $defineProperty;
+ $.setDescs = $defineProperties;
+ $.getNames = $names.get = $getOwnPropertyNames;
+ $.getSymbols = $getOwnPropertySymbols;
+
+ if(DESCRIPTORS && !__webpack_require__(39)){
+ redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
+ }
+ }
+
+ var symbolStatics = {
+ // 19.4.2.1 Symbol.for(key)
+ 'for': function(key){
+ return has(SymbolRegistry, key += '')
+ ? SymbolRegistry[key]
+ : SymbolRegistry[key] = $Symbol(key);
+ },
+ // 19.4.2.5 Symbol.keyFor(sym)
+ keyFor: function keyFor(key){
+ return keyOf(SymbolRegistry, key);
+ },
+ useSetter: function(){ setter = true; },
+ useSimple: function(){ setter = false; }
+ };
+ // 19.4.2.2 Symbol.hasInstance
+ // 19.4.2.3 Symbol.isConcatSpreadable
+ // 19.4.2.4 Symbol.iterator
+ // 19.4.2.6 Symbol.match
+ // 19.4.2.8 Symbol.replace
+ // 19.4.2.9 Symbol.search
+ // 19.4.2.10 Symbol.species
+ // 19.4.2.11 Symbol.split
+ // 19.4.2.12 Symbol.toPrimitive
+ // 19.4.2.13 Symbol.toStringTag
+ // 19.4.2.14 Symbol.unscopables
+ $.each.call((
+ 'hasInstance,isConcatSpreadable,iterator,match,replace,search,' +
+ 'species,split,toPrimitive,toStringTag,unscopables'
+ ).split(','), function(it){
+ var sym = wks(it);
+ symbolStatics[it] = useNative ? sym : wrap(sym);
+ });
+
+ setter = true;
+
+ $export($export.G + $export.W, {Symbol: $Symbol});
+
+ $export($export.S, 'Symbol', symbolStatics);
+
+ $export($export.S + $export.F * !useNative, 'Object', {
+ // 19.1.2.2 Object.create(O [, Properties])
+ create: $create,
+ // 19.1.2.4 Object.defineProperty(O, P, Attributes)
+ defineProperty: $defineProperty,
+ // 19.1.2.3 Object.defineProperties(O, Properties)
+ defineProperties: $defineProperties,
+ // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
+ getOwnPropertyDescriptor: $getOwnPropertyDescriptor,
+ // 19.1.2.7 Object.getOwnPropertyNames(O)
+ getOwnPropertyNames: $getOwnPropertyNames,
+ // 19.1.2.8 Object.getOwnPropertySymbols(O)
+ getOwnPropertySymbols: $getOwnPropertySymbols
+ });
+
+ // 24.3.2 JSON.stringify(value [, replacer [, space]])
+ $JSON && $export($export.S + $export.F * (!useNative || buggyJSON), 'JSON', {stringify: $stringify});
+
+ // 19.4.3.5 Symbol.prototype[@@toStringTag]
+ setToStringTag($Symbol, 'Symbol');
+ // 20.2.1.9 Math[@@toStringTag]
+ setToStringTag(Math, 'Math', true);
+ // 24.3.3 JSON[@@toStringTag]
+ setToStringTag(global.JSON, 'JSON', true);
+
+/***/ },
+/* 35 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var def = __webpack_require__(2).setDesc
+ , has = __webpack_require__(17)
+ , TAG = __webpack_require__(31)('toStringTag');
+
+ module.exports = function(it, tag, stat){
+ if(it && !has(it = stat ? it : it.prototype, TAG))def(it, TAG, {configurable: true, value: tag});
+ };
+
+/***/ },
+/* 36 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $ = __webpack_require__(2)
+ , toIObject = __webpack_require__(23);
+ module.exports = function(object, el){
+ var O = toIObject(object)
+ , keys = $.getKeys(O)
+ , length = keys.length
+ , index = 0
+ , key;
+ while(length > index)if(O[key = keys[index++]] === el)return key;
+ };
+
+/***/ },
+/* 37 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
+ var toIObject = __webpack_require__(23)
+ , getNames = __webpack_require__(2).getNames
+ , toString = {}.toString;
+
+ var windowNames = typeof window == 'object' && Object.getOwnPropertyNames
+ ? Object.getOwnPropertyNames(window) : [];
+
+ var getWindowNames = function(it){
+ try {
+ return getNames(it);
+ } catch(e){
+ return windowNames.slice();
+ }
+ };
+
+ module.exports.get = function getOwnPropertyNames(it){
+ if(windowNames && toString.call(it) == '[object Window]')return getWindowNames(it);
+ return getNames(toIObject(it));
+ };
+
+/***/ },
+/* 38 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // all enumerable object keys, includes symbols
+ var $ = __webpack_require__(2);
+ module.exports = function(it){
+ var keys = $.getKeys(it)
+ , getSymbols = $.getSymbols;
+ if(getSymbols){
+ var symbols = getSymbols(it)
+ , isEnum = $.isEnum
+ , i = 0
+ , key;
+ while(symbols.length > i)if(isEnum.call(it, key = symbols[i++]))keys.push(key);
+ }
+ return keys;
+ };
+
+/***/ },
+/* 39 */
+/***/ function(module, exports) {
+
+ module.exports = false;
+
+/***/ },
+/* 40 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.3.1 Object.assign(target, source)
+ var $export = __webpack_require__(3);
+
+ $export($export.S + $export.F, 'Object', {assign: __webpack_require__(41)});
+
+/***/ },
+/* 41 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.1 Object.assign(target, source, ...)
+ var $ = __webpack_require__(2)
+ , toObject = __webpack_require__(21)
+ , IObject = __webpack_require__(24);
+
+ // should work with symbols and should have deterministic property order (V8 bug)
+ module.exports = __webpack_require__(9)(function(){
+ var a = Object.assign
+ , A = {}
+ , B = {}
+ , S = Symbol()
+ , K = 'abcdefghijklmnopqrst';
+ A[S] = 7;
+ K.split('').forEach(function(k){ B[k] = k; });
+ return a({}, A)[S] != 7 || Object.keys(a({}, B)).join('') != K;
+ }) ? function assign(target, source){ // eslint-disable-line no-unused-vars
+ var T = toObject(target)
+ , $$ = arguments
+ , $$len = $$.length
+ , index = 1
+ , getKeys = $.getKeys
+ , getSymbols = $.getSymbols
+ , isEnum = $.isEnum;
+ while($$len > index){
+ var S = IObject($$[index++])
+ , keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S)
+ , length = keys.length
+ , j = 0
+ , key;
+ while(length > j)if(isEnum.call(S, key = keys[j++]))T[key] = S[key];
+ }
+ return T;
+ } : Object.assign;
+
+/***/ },
+/* 42 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.3.10 Object.is(value1, value2)
+ var $export = __webpack_require__(3);
+ $export($export.S, 'Object', {is: __webpack_require__(43)});
+
+/***/ },
+/* 43 */
+/***/ function(module, exports) {
+
+ // 7.2.9 SameValue(x, y)
+ module.exports = Object.is || function is(x, y){
+ return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;
+ };
+
+/***/ },
+/* 44 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.3.19 Object.setPrototypeOf(O, proto)
+ var $export = __webpack_require__(3);
+ $export($export.S, 'Object', {setPrototypeOf: __webpack_require__(45).set});
+
+/***/ },
+/* 45 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // Works with __proto__ only. Old v8 can't work with null proto objects.
+ /* eslint-disable no-proto */
+ var getDesc = __webpack_require__(2).getDesc
+ , isObject = __webpack_require__(16)
+ , anObject = __webpack_require__(20);
+ var check = function(O, proto){
+ anObject(O);
+ if(!isObject(proto) && proto !== null)throw TypeError(proto + ": can't set as prototype!");
+ };
+ module.exports = {
+ set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
+ function(test, buggy, set){
+ try {
+ set = __webpack_require__(12)(Function.call, getDesc(Object.prototype, '__proto__').set, 2);
+ set(test, []);
+ buggy = !(test instanceof Array);
+ } catch(e){ buggy = true; }
+ return function setPrototypeOf(O, proto){
+ check(O, proto);
+ if(buggy)O.__proto__ = proto;
+ else set(O, proto);
+ return O;
+ };
+ }({}, false) : undefined),
+ check: check
+ };
+
+/***/ },
+/* 46 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ // 19.1.3.6 Object.prototype.toString()
+ var classof = __webpack_require__(47)
+ , test = {};
+ test[__webpack_require__(31)('toStringTag')] = 'z';
+ if(test + '' != '[object z]'){
+ __webpack_require__(10)(Object.prototype, 'toString', function toString(){
+ return '[object ' + classof(this) + ']';
+ }, true);
+ }
+
+/***/ },
+/* 47 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // getting tag from 19.1.3.6 Object.prototype.toString()
+ var cof = __webpack_require__(18)
+ , TAG = __webpack_require__(31)('toStringTag')
+ // ES3 wrong here
+ , ARG = cof(function(){ return arguments; }()) == 'Arguments';
+
+ module.exports = function(it){
+ var O, T, B;
+ return it === undefined ? 'Undefined' : it === null ? 'Null'
+ // @@toStringTag case
+ : typeof (T = (O = Object(it))[TAG]) == 'string' ? T
+ // builtinTag case
+ : ARG ? cof(O)
+ // ES3 arguments fallback
+ : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
+ };
+
+/***/ },
+/* 48 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.5 Object.freeze(O)
+ var isObject = __webpack_require__(16);
+
+ __webpack_require__(49)('freeze', function($freeze){
+ return function freeze(it){
+ return $freeze && isObject(it) ? $freeze(it) : it;
+ };
+ });
+
+/***/ },
+/* 49 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // most Object methods by ES6 should accept primitives
+ var $export = __webpack_require__(3)
+ , core = __webpack_require__(5)
+ , fails = __webpack_require__(9);
+ module.exports = function(KEY, exec){
+ var fn = (core.Object || {})[KEY] || Object[KEY]
+ , exp = {};
+ exp[KEY] = exec(fn);
+ $export($export.S + $export.F * fails(function(){ fn(1); }), 'Object', exp);
+ };
+
+/***/ },
+/* 50 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.17 Object.seal(O)
+ var isObject = __webpack_require__(16);
+
+ __webpack_require__(49)('seal', function($seal){
+ return function seal(it){
+ return $seal && isObject(it) ? $seal(it) : it;
+ };
+ });
+
+/***/ },
+/* 51 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.15 Object.preventExtensions(O)
+ var isObject = __webpack_require__(16);
+
+ __webpack_require__(49)('preventExtensions', function($preventExtensions){
+ return function preventExtensions(it){
+ return $preventExtensions && isObject(it) ? $preventExtensions(it) : it;
+ };
+ });
+
+/***/ },
+/* 52 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.12 Object.isFrozen(O)
+ var isObject = __webpack_require__(16);
+
+ __webpack_require__(49)('isFrozen', function($isFrozen){
+ return function isFrozen(it){
+ return isObject(it) ? $isFrozen ? $isFrozen(it) : false : true;
+ };
+ });
+
+/***/ },
+/* 53 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.13 Object.isSealed(O)
+ var isObject = __webpack_require__(16);
+
+ __webpack_require__(49)('isSealed', function($isSealed){
+ return function isSealed(it){
+ return isObject(it) ? $isSealed ? $isSealed(it) : false : true;
+ };
+ });
+
+/***/ },
+/* 54 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.11 Object.isExtensible(O)
+ var isObject = __webpack_require__(16);
+
+ __webpack_require__(49)('isExtensible', function($isExtensible){
+ return function isExtensible(it){
+ return isObject(it) ? $isExtensible ? $isExtensible(it) : true : false;
+ };
+ });
+
+/***/ },
+/* 55 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
+ var toIObject = __webpack_require__(23);
+
+ __webpack_require__(49)('getOwnPropertyDescriptor', function($getOwnPropertyDescriptor){
+ return function getOwnPropertyDescriptor(it, key){
+ return $getOwnPropertyDescriptor(toIObject(it), key);
+ };
+ });
+
+/***/ },
+/* 56 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.9 Object.getPrototypeOf(O)
+ var toObject = __webpack_require__(21);
+
+ __webpack_require__(49)('getPrototypeOf', function($getPrototypeOf){
+ return function getPrototypeOf(it){
+ return $getPrototypeOf(toObject(it));
+ };
+ });
+
+/***/ },
+/* 57 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.14 Object.keys(O)
+ var toObject = __webpack_require__(21);
+
+ __webpack_require__(49)('keys', function($keys){
+ return function keys(it){
+ return $keys(toObject(it));
+ };
+ });
+
+/***/ },
+/* 58 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 19.1.2.7 Object.getOwnPropertyNames(O)
+ __webpack_require__(49)('getOwnPropertyNames', function(){
+ return __webpack_require__(37).get;
+ });
+
+/***/ },
+/* 59 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var setDesc = __webpack_require__(2).setDesc
+ , createDesc = __webpack_require__(7)
+ , has = __webpack_require__(17)
+ , FProto = Function.prototype
+ , nameRE = /^\s*function ([^ (]*)/
+ , NAME = 'name';
+ // 19.2.4.2 name
+ NAME in FProto || __webpack_require__(8) && setDesc(FProto, NAME, {
+ configurable: true,
+ get: function(){
+ var match = ('' + this).match(nameRE)
+ , name = match ? match[1] : '';
+ has(this, NAME) || setDesc(this, NAME, createDesc(5, name));
+ return name;
+ }
+ });
+
+/***/ },
+/* 60 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $ = __webpack_require__(2)
+ , isObject = __webpack_require__(16)
+ , HAS_INSTANCE = __webpack_require__(31)('hasInstance')
+ , FunctionProto = Function.prototype;
+ // 19.2.3.6 Function.prototype[@@hasInstance](V)
+ if(!(HAS_INSTANCE in FunctionProto))$.setDesc(FunctionProto, HAS_INSTANCE, {value: function(O){
+ if(typeof this != 'function' || !isObject(O))return false;
+ if(!isObject(this.prototype))return O instanceof this;
+ // for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this:
+ while(O = $.getProto(O))if(this.prototype === O)return true;
+ return false;
+ }});
+
+/***/ },
+/* 61 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $ = __webpack_require__(2)
+ , global = __webpack_require__(4)
+ , has = __webpack_require__(17)
+ , cof = __webpack_require__(18)
+ , toPrimitive = __webpack_require__(62)
+ , fails = __webpack_require__(9)
+ , $trim = __webpack_require__(63).trim
+ , NUMBER = 'Number'
+ , $Number = global[NUMBER]
+ , Base = $Number
+ , proto = $Number.prototype
+ // Opera ~12 has broken Object#toString
+ , BROKEN_COF = cof($.create(proto)) == NUMBER
+ , TRIM = 'trim' in String.prototype;
+
+ // 7.1.3 ToNumber(argument)
+ var toNumber = function(argument){
+ var it = toPrimitive(argument, false);
+ if(typeof it == 'string' && it.length > 2){
+ it = TRIM ? it.trim() : $trim(it, 3);
+ var first = it.charCodeAt(0)
+ , third, radix, maxCode;
+ if(first === 43 || first === 45){
+ third = it.charCodeAt(2);
+ if(third === 88 || third === 120)return NaN; // Number('+0x1') should be NaN, old V8 fix
+ } else if(first === 48){
+ switch(it.charCodeAt(1)){
+ case 66 : case 98 : radix = 2; maxCode = 49; break; // fast equal /^0b[01]+$/i
+ case 79 : case 111 : radix = 8; maxCode = 55; break; // fast equal /^0o[0-7]+$/i
+ default : return +it;
+ }
+ for(var digits = it.slice(2), i = 0, l = digits.length, code; i < l; i++){
+ code = digits.charCodeAt(i);
+ // parseInt parses a string to a first unavailable symbol
+ // but ToNumber should return NaN if a string contains unavailable symbols
+ if(code < 48 || code > maxCode)return NaN;
+ } return parseInt(digits, radix);
+ }
+ } return +it;
+ };
+
+ if(!$Number(' 0o1') || !$Number('0b1') || $Number('+0x1')){
+ $Number = function Number(value){
+ var it = arguments.length < 1 ? 0 : value
+ , that = this;
+ return that instanceof $Number
+ // check on 1..constructor(foo) case
+ && (BROKEN_COF ? fails(function(){ proto.valueOf.call(that); }) : cof(that) != NUMBER)
+ ? new Base(toNumber(it)) : toNumber(it);
+ };
+ $.each.call(__webpack_require__(8) ? $.getNames(Base) : (
+ // ES3:
+ 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +
+ // ES6 (in case, if modules with ES6 Number statics required before):
+ 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +
+ 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'
+ ).split(','), function(key){
+ if(has(Base, key) && !has($Number, key)){
+ $.setDesc($Number, key, $.getDesc(Base, key));
+ }
+ });
+ $Number.prototype = proto;
+ proto.constructor = $Number;
+ __webpack_require__(10)(global, NUMBER, $Number);
+ }
+
+/***/ },
+/* 62 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 7.1.1 ToPrimitive(input [, PreferredType])
+ var isObject = __webpack_require__(16);
+ // instead of the ES6 spec version, we didn't implement @@toPrimitive case
+ // and the second argument - flag - preferred type is a string
+ module.exports = function(it, S){
+ if(!isObject(it))return it;
+ var fn, val;
+ if(S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it)))return val;
+ if(typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it)))return val;
+ if(!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it)))return val;
+ throw TypeError("Can't convert object to primitive value");
+ };
+
+/***/ },
+/* 63 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $export = __webpack_require__(3)
+ , defined = __webpack_require__(22)
+ , fails = __webpack_require__(9)
+ , spaces = '\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003' +
+ '\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF'
+ , space = '[' + spaces + ']'
+ , non = '\u200b\u0085'
+ , ltrim = RegExp('^' + space + space + '*')
+ , rtrim = RegExp(space + space + '*$');
+
+ var exporter = function(KEY, exec){
+ var exp = {};
+ exp[KEY] = exec(trim);
+ $export($export.P + $export.F * fails(function(){
+ return !!spaces[KEY]() || non[KEY]() != non;
+ }), 'String', exp);
+ };
+
+ // 1 -> String#trimLeft
+ // 2 -> String#trimRight
+ // 3 -> String#trim
+ var trim = exporter.trim = function(string, TYPE){
+ string = String(defined(string));
+ if(TYPE & 1)string = string.replace(ltrim, '');
+ if(TYPE & 2)string = string.replace(rtrim, '');
+ return string;
+ };
+
+ module.exports = exporter;
+
+/***/ },
+/* 64 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.1 Number.EPSILON
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Number', {EPSILON: Math.pow(2, -52)});
+
+/***/ },
+/* 65 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.2 Number.isFinite(number)
+ var $export = __webpack_require__(3)
+ , _isFinite = __webpack_require__(4).isFinite;
+
+ $export($export.S, 'Number', {
+ isFinite: function isFinite(it){
+ return typeof it == 'number' && _isFinite(it);
+ }
+ });
+
+/***/ },
+/* 66 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.3 Number.isInteger(number)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Number', {isInteger: __webpack_require__(67)});
+
+/***/ },
+/* 67 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.3 Number.isInteger(number)
+ var isObject = __webpack_require__(16)
+ , floor = Math.floor;
+ module.exports = function isInteger(it){
+ return !isObject(it) && isFinite(it) && floor(it) === it;
+ };
+
+/***/ },
+/* 68 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.4 Number.isNaN(number)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Number', {
+ isNaN: function isNaN(number){
+ return number != number;
+ }
+ });
+
+/***/ },
+/* 69 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.5 Number.isSafeInteger(number)
+ var $export = __webpack_require__(3)
+ , isInteger = __webpack_require__(67)
+ , abs = Math.abs;
+
+ $export($export.S, 'Number', {
+ isSafeInteger: function isSafeInteger(number){
+ return isInteger(number) && abs(number) <= 0x1fffffffffffff;
+ }
+ });
+
+/***/ },
+/* 70 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.6 Number.MAX_SAFE_INTEGER
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Number', {MAX_SAFE_INTEGER: 0x1fffffffffffff});
+
+/***/ },
+/* 71 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.10 Number.MIN_SAFE_INTEGER
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Number', {MIN_SAFE_INTEGER: -0x1fffffffffffff});
+
+/***/ },
+/* 72 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.12 Number.parseFloat(string)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Number', {parseFloat: parseFloat});
+
+/***/ },
+/* 73 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.1.2.13 Number.parseInt(string, radix)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Number', {parseInt: parseInt});
+
+/***/ },
+/* 74 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.3 Math.acosh(x)
+ var $export = __webpack_require__(3)
+ , log1p = __webpack_require__(75)
+ , sqrt = Math.sqrt
+ , $acosh = Math.acosh;
+
+ // V8 bug https://code.google.com/p/v8/issues/detail?id=3509
+ $export($export.S + $export.F * !($acosh && Math.floor($acosh(Number.MAX_VALUE)) == 710), 'Math', {
+ acosh: function acosh(x){
+ return (x = +x) < 1 ? NaN : x > 94906265.62425156
+ ? Math.log(x) + Math.LN2
+ : log1p(x - 1 + sqrt(x - 1) * sqrt(x + 1));
+ }
+ });
+
+/***/ },
+/* 75 */
+/***/ function(module, exports) {
+
+ // 20.2.2.20 Math.log1p(x)
+ module.exports = Math.log1p || function log1p(x){
+ return (x = +x) > -1e-8 && x < 1e-8 ? x - x * x / 2 : Math.log(1 + x);
+ };
+
+/***/ },
+/* 76 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.5 Math.asinh(x)
+ var $export = __webpack_require__(3);
+
+ function asinh(x){
+ return !isFinite(x = +x) || x == 0 ? x : x < 0 ? -asinh(-x) : Math.log(x + Math.sqrt(x * x + 1));
+ }
+
+ $export($export.S, 'Math', {asinh: asinh});
+
+/***/ },
+/* 77 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.7 Math.atanh(x)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Math', {
+ atanh: function atanh(x){
+ return (x = +x) == 0 ? x : Math.log((1 + x) / (1 - x)) / 2;
+ }
+ });
+
+/***/ },
+/* 78 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.9 Math.cbrt(x)
+ var $export = __webpack_require__(3)
+ , sign = __webpack_require__(79);
+
+ $export($export.S, 'Math', {
+ cbrt: function cbrt(x){
+ return sign(x = +x) * Math.pow(Math.abs(x), 1 / 3);
+ }
+ });
+
+/***/ },
+/* 79 */
+/***/ function(module, exports) {
+
+ // 20.2.2.28 Math.sign(x)
+ module.exports = Math.sign || function sign(x){
+ return (x = +x) == 0 || x != x ? x : x < 0 ? -1 : 1;
+ };
+
+/***/ },
+/* 80 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.11 Math.clz32(x)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Math', {
+ clz32: function clz32(x){
+ return (x >>>= 0) ? 31 - Math.floor(Math.log(x + 0.5) * Math.LOG2E) : 32;
+ }
+ });
+
+/***/ },
+/* 81 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.12 Math.cosh(x)
+ var $export = __webpack_require__(3)
+ , exp = Math.exp;
+
+ $export($export.S, 'Math', {
+ cosh: function cosh(x){
+ return (exp(x = +x) + exp(-x)) / 2;
+ }
+ });
+
+/***/ },
+/* 82 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.14 Math.expm1(x)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Math', {expm1: __webpack_require__(83)});
+
+/***/ },
+/* 83 */
+/***/ function(module, exports) {
+
+ // 20.2.2.14 Math.expm1(x)
+ module.exports = Math.expm1 || function expm1(x){
+ return (x = +x) == 0 ? x : x > -1e-6 && x < 1e-6 ? x + x * x / 2 : Math.exp(x) - 1;
+ };
+
+/***/ },
+/* 84 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.16 Math.fround(x)
+ var $export = __webpack_require__(3)
+ , sign = __webpack_require__(79)
+ , pow = Math.pow
+ , EPSILON = pow(2, -52)
+ , EPSILON32 = pow(2, -23)
+ , MAX32 = pow(2, 127) * (2 - EPSILON32)
+ , MIN32 = pow(2, -126);
+
+ var roundTiesToEven = function(n){
+ return n + 1 / EPSILON - 1 / EPSILON;
+ };
+
+
+ $export($export.S, 'Math', {
+ fround: function fround(x){
+ var $abs = Math.abs(x)
+ , $sign = sign(x)
+ , a, result;
+ if($abs < MIN32)return $sign * roundTiesToEven($abs / MIN32 / EPSILON32) * MIN32 * EPSILON32;
+ a = (1 + EPSILON32 / EPSILON) * $abs;
+ result = a - (a - $abs);
+ if(result > MAX32 || result != result)return $sign * Infinity;
+ return $sign * result;
+ }
+ });
+
+/***/ },
+/* 85 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.17 Math.hypot([value1[, value2[, … ]]])
+ var $export = __webpack_require__(3)
+ , abs = Math.abs;
+
+ $export($export.S, 'Math', {
+ hypot: function hypot(value1, value2){ // eslint-disable-line no-unused-vars
+ var sum = 0
+ , i = 0
+ , $$ = arguments
+ , $$len = $$.length
+ , larg = 0
+ , arg, div;
+ while(i < $$len){
+ arg = abs($$[i++]);
+ if(larg < arg){
+ div = larg / arg;
+ sum = sum * div * div + 1;
+ larg = arg;
+ } else if(arg > 0){
+ div = arg / larg;
+ sum += div * div;
+ } else sum += arg;
+ }
+ return larg === Infinity ? Infinity : larg * Math.sqrt(sum);
+ }
+ });
+
+/***/ },
+/* 86 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.18 Math.imul(x, y)
+ var $export = __webpack_require__(3)
+ , $imul = Math.imul;
+
+ // some WebKit versions fails with big numbers, some has wrong arity
+ $export($export.S + $export.F * __webpack_require__(9)(function(){
+ return $imul(0xffffffff, 5) != -5 || $imul.length != 2;
+ }), 'Math', {
+ imul: function imul(x, y){
+ var UINT16 = 0xffff
+ , xn = +x
+ , yn = +y
+ , xl = UINT16 & xn
+ , yl = UINT16 & yn;
+ return 0 | xl * yl + ((UINT16 & xn >>> 16) * yl + xl * (UINT16 & yn >>> 16) << 16 >>> 0);
+ }
+ });
+
+/***/ },
+/* 87 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.21 Math.log10(x)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Math', {
+ log10: function log10(x){
+ return Math.log(x) / Math.LN10;
+ }
+ });
+
+/***/ },
+/* 88 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.20 Math.log1p(x)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Math', {log1p: __webpack_require__(75)});
+
+/***/ },
+/* 89 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.22 Math.log2(x)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Math', {
+ log2: function log2(x){
+ return Math.log(x) / Math.LN2;
+ }
+ });
+
+/***/ },
+/* 90 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.28 Math.sign(x)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Math', {sign: __webpack_require__(79)});
+
+/***/ },
+/* 91 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.30 Math.sinh(x)
+ var $export = __webpack_require__(3)
+ , expm1 = __webpack_require__(83)
+ , exp = Math.exp;
+
+ // V8 near Chromium 38 has a problem with very small numbers
+ $export($export.S + $export.F * __webpack_require__(9)(function(){
+ return !Math.sinh(-2e-17) != -2e-17;
+ }), 'Math', {
+ sinh: function sinh(x){
+ return Math.abs(x = +x) < 1
+ ? (expm1(x) - expm1(-x)) / 2
+ : (exp(x - 1) - exp(-x - 1)) * (Math.E / 2);
+ }
+ });
+
+/***/ },
+/* 92 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.33 Math.tanh(x)
+ var $export = __webpack_require__(3)
+ , expm1 = __webpack_require__(83)
+ , exp = Math.exp;
+
+ $export($export.S, 'Math', {
+ tanh: function tanh(x){
+ var a = expm1(x = +x)
+ , b = expm1(-x);
+ return a == Infinity ? 1 : b == Infinity ? -1 : (a - b) / (exp(x) + exp(-x));
+ }
+ });
+
+/***/ },
+/* 93 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 20.2.2.34 Math.trunc(x)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Math', {
+ trunc: function trunc(it){
+ return (it > 0 ? Math.floor : Math.ceil)(it);
+ }
+ });
+
+/***/ },
+/* 94 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $export = __webpack_require__(3)
+ , toIndex = __webpack_require__(26)
+ , fromCharCode = String.fromCharCode
+ , $fromCodePoint = String.fromCodePoint;
+
+ // length should be 1, old FF problem
+ $export($export.S + $export.F * (!!$fromCodePoint && $fromCodePoint.length != 1), 'String', {
+ // 21.1.2.2 String.fromCodePoint(...codePoints)
+ fromCodePoint: function fromCodePoint(x){ // eslint-disable-line no-unused-vars
+ var res = []
+ , $$ = arguments
+ , $$len = $$.length
+ , i = 0
+ , code;
+ while($$len > i){
+ code = +$$[i++];
+ if(toIndex(code, 0x10ffff) !== code)throw RangeError(code + ' is not a valid code point');
+ res.push(code < 0x10000
+ ? fromCharCode(code)
+ : fromCharCode(((code -= 0x10000) >> 10) + 0xd800, code % 0x400 + 0xdc00)
+ );
+ } return res.join('');
+ }
+ });
+
+/***/ },
+/* 95 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $export = __webpack_require__(3)
+ , toIObject = __webpack_require__(23)
+ , toLength = __webpack_require__(27);
+
+ $export($export.S, 'String', {
+ // 21.1.2.4 String.raw(callSite, ...substitutions)
+ raw: function raw(callSite){
+ var tpl = toIObject(callSite.raw)
+ , len = toLength(tpl.length)
+ , $$ = arguments
+ , $$len = $$.length
+ , res = []
+ , i = 0;
+ while(len > i){
+ res.push(String(tpl[i++]));
+ if(i < $$len)res.push(String($$[i]));
+ } return res.join('');
+ }
+ });
+
+/***/ },
+/* 96 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ // 21.1.3.25 String.prototype.trim()
+ __webpack_require__(63)('trim', function($trim){
+ return function trim(){
+ return $trim(this, 3);
+ };
+ });
+
+/***/ },
+/* 97 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $export = __webpack_require__(3)
+ , $at = __webpack_require__(98)(false);
+ $export($export.P, 'String', {
+ // 21.1.3.3 String.prototype.codePointAt(pos)
+ codePointAt: function codePointAt(pos){
+ return $at(this, pos);
+ }
+ });
+
+/***/ },
+/* 98 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var toInteger = __webpack_require__(25)
+ , defined = __webpack_require__(22);
+ // true -> String#at
+ // false -> String#codePointAt
+ module.exports = function(TO_STRING){
+ return function(that, pos){
+ var s = String(defined(that))
+ , i = toInteger(pos)
+ , l = s.length
+ , a, b;
+ if(i < 0 || i >= l)return TO_STRING ? '' : undefined;
+ a = s.charCodeAt(i);
+ return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
+ ? TO_STRING ? s.charAt(i) : a
+ : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
+ };
+ };
+
+/***/ },
+/* 99 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 21.1.3.6 String.prototype.endsWith(searchString [, endPosition])
+ 'use strict';
+ var $export = __webpack_require__(3)
+ , toLength = __webpack_require__(27)
+ , context = __webpack_require__(100)
+ , ENDS_WITH = 'endsWith'
+ , $endsWith = ''[ENDS_WITH];
+
+ $export($export.P + $export.F * __webpack_require__(102)(ENDS_WITH), 'String', {
+ endsWith: function endsWith(searchString /*, endPosition = @length */){
+ var that = context(this, searchString, ENDS_WITH)
+ , $$ = arguments
+ , endPosition = $$.length > 1 ? $$[1] : undefined
+ , len = toLength(that.length)
+ , end = endPosition === undefined ? len : Math.min(toLength(endPosition), len)
+ , search = String(searchString);
+ return $endsWith
+ ? $endsWith.call(that, search, end)
+ : that.slice(end - search.length, end) === search;
+ }
+ });
+
+/***/ },
+/* 100 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // helper for String#{startsWith, endsWith, includes}
+ var isRegExp = __webpack_require__(101)
+ , defined = __webpack_require__(22);
+
+ module.exports = function(that, searchString, NAME){
+ if(isRegExp(searchString))throw TypeError('String#' + NAME + " doesn't accept regex!");
+ return String(defined(that));
+ };
+
+/***/ },
+/* 101 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 7.2.8 IsRegExp(argument)
+ var isObject = __webpack_require__(16)
+ , cof = __webpack_require__(18)
+ , MATCH = __webpack_require__(31)('match');
+ module.exports = function(it){
+ var isRegExp;
+ return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');
+ };
+
+/***/ },
+/* 102 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var MATCH = __webpack_require__(31)('match');
+ module.exports = function(KEY){
+ var re = /./;
+ try {
+ '/./'[KEY](re);
+ } catch(e){
+ try {
+ re[MATCH] = false;
+ return !'/./'[KEY](re);
+ } catch(f){ /* empty */ }
+ } return true;
+ };
+
+/***/ },
+/* 103 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 21.1.3.7 String.prototype.includes(searchString, position = 0)
+ 'use strict';
+ var $export = __webpack_require__(3)
+ , context = __webpack_require__(100)
+ , INCLUDES = 'includes';
+
+ $export($export.P + $export.F * __webpack_require__(102)(INCLUDES), 'String', {
+ includes: function includes(searchString /*, position = 0 */){
+ return !!~context(this, searchString, INCLUDES)
+ .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);
+ }
+ });
+
+/***/ },
+/* 104 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $export = __webpack_require__(3);
+
+ $export($export.P, 'String', {
+ // 21.1.3.13 String.prototype.repeat(count)
+ repeat: __webpack_require__(105)
+ });
+
+/***/ },
+/* 105 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var toInteger = __webpack_require__(25)
+ , defined = __webpack_require__(22);
+
+ module.exports = function repeat(count){
+ var str = String(defined(this))
+ , res = ''
+ , n = toInteger(count);
+ if(n < 0 || n == Infinity)throw RangeError("Count can't be negative");
+ for(;n > 0; (n >>>= 1) && (str += str))if(n & 1)res += str;
+ return res;
+ };
+
+/***/ },
+/* 106 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 21.1.3.18 String.prototype.startsWith(searchString [, position ])
+ 'use strict';
+ var $export = __webpack_require__(3)
+ , toLength = __webpack_require__(27)
+ , context = __webpack_require__(100)
+ , STARTS_WITH = 'startsWith'
+ , $startsWith = ''[STARTS_WITH];
+
+ $export($export.P + $export.F * __webpack_require__(102)(STARTS_WITH), 'String', {
+ startsWith: function startsWith(searchString /*, position = 0 */){
+ var that = context(this, searchString, STARTS_WITH)
+ , $$ = arguments
+ , index = toLength(Math.min($$.length > 1 ? $$[1] : undefined, that.length))
+ , search = String(searchString);
+ return $startsWith
+ ? $startsWith.call(that, search, index)
+ : that.slice(index, index + search.length) === search;
+ }
+ });
+
+/***/ },
+/* 107 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $at = __webpack_require__(98)(true);
+
+ // 21.1.3.27 String.prototype[@@iterator]()
+ __webpack_require__(108)(String, 'String', function(iterated){
+ this._t = String(iterated); // target
+ this._i = 0; // next index
+ // 21.1.5.2.1 %StringIteratorPrototype%.next()
+ }, function(){
+ var O = this._t
+ , index = this._i
+ , point;
+ if(index >= O.length)return {value: undefined, done: true};
+ point = $at(O, index);
+ this._i += point.length;
+ return {value: point, done: false};
+ });
+
+/***/ },
+/* 108 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var LIBRARY = __webpack_require__(39)
+ , $export = __webpack_require__(3)
+ , redefine = __webpack_require__(10)
+ , hide = __webpack_require__(6)
+ , has = __webpack_require__(17)
+ , Iterators = __webpack_require__(109)
+ , $iterCreate = __webpack_require__(110)
+ , setToStringTag = __webpack_require__(35)
+ , getProto = __webpack_require__(2).getProto
+ , ITERATOR = __webpack_require__(31)('iterator')
+ , BUGGY = !([].keys && 'next' in [].keys()) // Safari has buggy iterators w/o `next`
+ , FF_ITERATOR = '@@iterator'
+ , KEYS = 'keys'
+ , VALUES = 'values';
+
+ var returnThis = function(){ return this; };
+
+ module.exports = function(Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED){
+ $iterCreate(Constructor, NAME, next);
+ var getMethod = function(kind){
+ if(!BUGGY && kind in proto)return proto[kind];
+ switch(kind){
+ case KEYS: return function keys(){ return new Constructor(this, kind); };
+ case VALUES: return function values(){ return new Constructor(this, kind); };
+ } return function entries(){ return new Constructor(this, kind); };
+ };
+ var TAG = NAME + ' Iterator'
+ , DEF_VALUES = DEFAULT == VALUES
+ , VALUES_BUG = false
+ , proto = Base.prototype
+ , $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT]
+ , $default = $native || getMethod(DEFAULT)
+ , methods, key;
+ // Fix native
+ if($native){
+ var IteratorPrototype = getProto($default.call(new Base));
+ // Set @@toStringTag to native iterators
+ setToStringTag(IteratorPrototype, TAG, true);
+ // FF fix
+ if(!LIBRARY && has(proto, FF_ITERATOR))hide(IteratorPrototype, ITERATOR, returnThis);
+ // fix Array#{values, @@iterator}.name in V8 / FF
+ if(DEF_VALUES && $native.name !== VALUES){
+ VALUES_BUG = true;
+ $default = function values(){ return $native.call(this); };
+ }
+ }
+ // Define iterator
+ if((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])){
+ hide(proto, ITERATOR, $default);
+ }
+ // Plug for library
+ Iterators[NAME] = $default;
+ Iterators[TAG] = returnThis;
+ if(DEFAULT){
+ methods = {
+ values: DEF_VALUES ? $default : getMethod(VALUES),
+ keys: IS_SET ? $default : getMethod(KEYS),
+ entries: !DEF_VALUES ? $default : getMethod('entries')
+ };
+ if(FORCED)for(key in methods){
+ if(!(key in proto))redefine(proto, key, methods[key]);
+ } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
+ }
+ return methods;
+ };
+
+/***/ },
+/* 109 */
+/***/ function(module, exports) {
+
+ module.exports = {};
+
+/***/ },
+/* 110 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $ = __webpack_require__(2)
+ , descriptor = __webpack_require__(7)
+ , setToStringTag = __webpack_require__(35)
+ , IteratorPrototype = {};
+
+ // 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
+ __webpack_require__(6)(IteratorPrototype, __webpack_require__(31)('iterator'), function(){ return this; });
+
+ module.exports = function(Constructor, NAME, next){
+ Constructor.prototype = $.create(IteratorPrototype, {next: descriptor(1, next)});
+ setToStringTag(Constructor, NAME + ' Iterator');
+ };
+
+/***/ },
+/* 111 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var ctx = __webpack_require__(12)
+ , $export = __webpack_require__(3)
+ , toObject = __webpack_require__(21)
+ , call = __webpack_require__(112)
+ , isArrayIter = __webpack_require__(113)
+ , toLength = __webpack_require__(27)
+ , getIterFn = __webpack_require__(114);
+ $export($export.S + $export.F * !__webpack_require__(115)(function(iter){ Array.from(iter); }), 'Array', {
+ // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)
+ from: function from(arrayLike/*, mapfn = undefined, thisArg = undefined*/){
+ var O = toObject(arrayLike)
+ , C = typeof this == 'function' ? this : Array
+ , $$ = arguments
+ , $$len = $$.length
+ , mapfn = $$len > 1 ? $$[1] : undefined
+ , mapping = mapfn !== undefined
+ , index = 0
+ , iterFn = getIterFn(O)
+ , length, result, step, iterator;
+ if(mapping)mapfn = ctx(mapfn, $$len > 2 ? $$[2] : undefined, 2);
+ // if object isn't iterable or it's array with default iterator - use simple case
+ if(iterFn != undefined && !(C == Array && isArrayIter(iterFn))){
+ for(iterator = iterFn.call(O), result = new C; !(step = iterator.next()).done; index++){
+ result[index] = mapping ? call(iterator, mapfn, [step.value, index], true) : step.value;
+ }
+ } else {
+ length = toLength(O.length);
+ for(result = new C(length); length > index; index++){
+ result[index] = mapping ? mapfn(O[index], index) : O[index];
+ }
+ }
+ result.length = index;
+ return result;
+ }
+ });
+
+
+/***/ },
+/* 112 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // call something on iterator step with safe closing on error
+ var anObject = __webpack_require__(20);
+ module.exports = function(iterator, fn, value, entries){
+ try {
+ return entries ? fn(anObject(value)[0], value[1]) : fn(value);
+ // 7.4.6 IteratorClose(iterator, completion)
+ } catch(e){
+ var ret = iterator['return'];
+ if(ret !== undefined)anObject(ret.call(iterator));
+ throw e;
+ }
+ };
+
+/***/ },
+/* 113 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // check on default Array iterator
+ var Iterators = __webpack_require__(109)
+ , ITERATOR = __webpack_require__(31)('iterator')
+ , ArrayProto = Array.prototype;
+
+ module.exports = function(it){
+ return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);
+ };
+
+/***/ },
+/* 114 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var classof = __webpack_require__(47)
+ , ITERATOR = __webpack_require__(31)('iterator')
+ , Iterators = __webpack_require__(109);
+ module.exports = __webpack_require__(5).getIteratorMethod = function(it){
+ if(it != undefined)return it[ITERATOR]
+ || it['@@iterator']
+ || Iterators[classof(it)];
+ };
+
+/***/ },
+/* 115 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var ITERATOR = __webpack_require__(31)('iterator')
+ , SAFE_CLOSING = false;
+
+ try {
+ var riter = [7][ITERATOR]();
+ riter['return'] = function(){ SAFE_CLOSING = true; };
+ Array.from(riter, function(){ throw 2; });
+ } catch(e){ /* empty */ }
+
+ module.exports = function(exec, skipClosing){
+ if(!skipClosing && !SAFE_CLOSING)return false;
+ var safe = false;
+ try {
+ var arr = [7]
+ , iter = arr[ITERATOR]();
+ iter.next = function(){ return {done: safe = true}; };
+ arr[ITERATOR] = function(){ return iter; };
+ exec(arr);
+ } catch(e){ /* empty */ }
+ return safe;
+ };
+
+/***/ },
+/* 116 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $export = __webpack_require__(3);
+
+ // WebKit Array.of isn't generic
+ $export($export.S + $export.F * __webpack_require__(9)(function(){
+ function F(){}
+ return !(Array.of.call(F) instanceof F);
+ }), 'Array', {
+ // 22.1.2.3 Array.of( ...items)
+ of: function of(/* ...args */){
+ var index = 0
+ , $$ = arguments
+ , $$len = $$.length
+ , result = new (typeof this == 'function' ? this : Array)($$len);
+ while($$len > index)result[index] = $$[index++];
+ result.length = $$len;
+ return result;
+ }
+ });
+
+/***/ },
+/* 117 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var addToUnscopables = __webpack_require__(118)
+ , step = __webpack_require__(119)
+ , Iterators = __webpack_require__(109)
+ , toIObject = __webpack_require__(23);
+
+ // 22.1.3.4 Array.prototype.entries()
+ // 22.1.3.13 Array.prototype.keys()
+ // 22.1.3.29 Array.prototype.values()
+ // 22.1.3.30 Array.prototype[@@iterator]()
+ module.exports = __webpack_require__(108)(Array, 'Array', function(iterated, kind){
+ this._t = toIObject(iterated); // target
+ this._i = 0; // next index
+ this._k = kind; // kind
+ // 22.1.5.2.1 %ArrayIteratorPrototype%.next()
+ }, function(){
+ var O = this._t
+ , kind = this._k
+ , index = this._i++;
+ if(!O || index >= O.length){
+ this._t = undefined;
+ return step(1);
+ }
+ if(kind == 'keys' )return step(0, index);
+ if(kind == 'values')return step(0, O[index]);
+ return step(0, [index, O[index]]);
+ }, 'values');
+
+ // argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
+ Iterators.Arguments = Iterators.Array;
+
+ addToUnscopables('keys');
+ addToUnscopables('values');
+ addToUnscopables('entries');
+
+/***/ },
+/* 118 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 22.1.3.31 Array.prototype[@@unscopables]
+ var UNSCOPABLES = __webpack_require__(31)('unscopables')
+ , ArrayProto = Array.prototype;
+ if(ArrayProto[UNSCOPABLES] == undefined)__webpack_require__(6)(ArrayProto, UNSCOPABLES, {});
+ module.exports = function(key){
+ ArrayProto[UNSCOPABLES][key] = true;
+ };
+
+/***/ },
+/* 119 */
+/***/ function(module, exports) {
+
+ module.exports = function(done, value){
+ return {value: value, done: !!done};
+ };
+
+/***/ },
+/* 120 */
+/***/ function(module, exports, __webpack_require__) {
+
+ __webpack_require__(121)('Array');
+
+/***/ },
+/* 121 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var global = __webpack_require__(4)
+ , $ = __webpack_require__(2)
+ , DESCRIPTORS = __webpack_require__(8)
+ , SPECIES = __webpack_require__(31)('species');
+
+ module.exports = function(KEY){
+ var C = global[KEY];
+ if(DESCRIPTORS && C && !C[SPECIES])$.setDesc(C, SPECIES, {
+ configurable: true,
+ get: function(){ return this; }
+ });
+ };
+
+/***/ },
+/* 122 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length)
+ var $export = __webpack_require__(3);
+
+ $export($export.P, 'Array', {copyWithin: __webpack_require__(123)});
+
+ __webpack_require__(118)('copyWithin');
+
+/***/ },
+/* 123 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length)
+ 'use strict';
+ var toObject = __webpack_require__(21)
+ , toIndex = __webpack_require__(26)
+ , toLength = __webpack_require__(27);
+
+ module.exports = [].copyWithin || function copyWithin(target/*= 0*/, start/*= 0, end = @length*/){
+ var O = toObject(this)
+ , len = toLength(O.length)
+ , to = toIndex(target, len)
+ , from = toIndex(start, len)
+ , $$ = arguments
+ , end = $$.length > 2 ? $$[2] : undefined
+ , count = Math.min((end === undefined ? len : toIndex(end, len)) - from, len - to)
+ , inc = 1;
+ if(from < to && to < from + count){
+ inc = -1;
+ from += count - 1;
+ to += count - 1;
+ }
+ while(count-- > 0){
+ if(from in O)O[to] = O[from];
+ else delete O[to];
+ to += inc;
+ from += inc;
+ } return O;
+ };
+
+/***/ },
+/* 124 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)
+ var $export = __webpack_require__(3);
+
+ $export($export.P, 'Array', {fill: __webpack_require__(125)});
+
+ __webpack_require__(118)('fill');
+
+/***/ },
+/* 125 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)
+ 'use strict';
+ var toObject = __webpack_require__(21)
+ , toIndex = __webpack_require__(26)
+ , toLength = __webpack_require__(27);
+ module.exports = [].fill || function fill(value /*, start = 0, end = @length */){
+ var O = toObject(this)
+ , length = toLength(O.length)
+ , $$ = arguments
+ , $$len = $$.length
+ , index = toIndex($$len > 1 ? $$[1] : undefined, length)
+ , end = $$len > 2 ? $$[2] : undefined
+ , endPos = end === undefined ? length : toIndex(end, length);
+ while(endPos > index)O[index++] = value;
+ return O;
+ };
+
+/***/ },
+/* 126 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ // 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined)
+ var $export = __webpack_require__(3)
+ , $find = __webpack_require__(28)(5)
+ , KEY = 'find'
+ , forced = true;
+ // Shouldn't skip holes
+ if(KEY in [])Array(1)[KEY](function(){ forced = false; });
+ $export($export.P + $export.F * forced, 'Array', {
+ find: function find(callbackfn/*, that = undefined */){
+ return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+ }
+ });
+ __webpack_require__(118)(KEY);
+
+/***/ },
+/* 127 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ // 22.1.3.9 Array.prototype.findIndex(predicate, thisArg = undefined)
+ var $export = __webpack_require__(3)
+ , $find = __webpack_require__(28)(6)
+ , KEY = 'findIndex'
+ , forced = true;
+ // Shouldn't skip holes
+ if(KEY in [])Array(1)[KEY](function(){ forced = false; });
+ $export($export.P + $export.F * forced, 'Array', {
+ findIndex: function findIndex(callbackfn/*, that = undefined */){
+ return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+ }
+ });
+ __webpack_require__(118)(KEY);
+
+/***/ },
+/* 128 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $ = __webpack_require__(2)
+ , global = __webpack_require__(4)
+ , isRegExp = __webpack_require__(101)
+ , $flags = __webpack_require__(129)
+ , $RegExp = global.RegExp
+ , Base = $RegExp
+ , proto = $RegExp.prototype
+ , re1 = /a/g
+ , re2 = /a/g
+ // "new" creates a new object, old webkit buggy here
+ , CORRECT_NEW = new $RegExp(re1) !== re1;
+
+ if(__webpack_require__(8) && (!CORRECT_NEW || __webpack_require__(9)(function(){
+ re2[__webpack_require__(31)('match')] = false;
+ // RegExp constructor can alter flags and IsRegExp works correct with @@match
+ return $RegExp(re1) != re1 || $RegExp(re2) == re2 || $RegExp(re1, 'i') != '/a/i';
+ }))){
+ $RegExp = function RegExp(p, f){
+ var piRE = isRegExp(p)
+ , fiU = f === undefined;
+ return !(this instanceof $RegExp) && piRE && p.constructor === $RegExp && fiU ? p
+ : CORRECT_NEW
+ ? new Base(piRE && !fiU ? p.source : p, f)
+ : Base((piRE = p instanceof $RegExp) ? p.source : p, piRE && fiU ? $flags.call(p) : f);
+ };
+ $.each.call($.getNames(Base), function(key){
+ key in $RegExp || $.setDesc($RegExp, key, {
+ configurable: true,
+ get: function(){ return Base[key]; },
+ set: function(it){ Base[key] = it; }
+ });
+ });
+ proto.constructor = $RegExp;
+ $RegExp.prototype = proto;
+ __webpack_require__(10)(global, 'RegExp', $RegExp);
+ }
+
+ __webpack_require__(121)('RegExp');
+
+/***/ },
+/* 129 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ // 21.2.5.3 get RegExp.prototype.flags
+ var anObject = __webpack_require__(20);
+ module.exports = function(){
+ var that = anObject(this)
+ , result = '';
+ if(that.global) result += 'g';
+ if(that.ignoreCase) result += 'i';
+ if(that.multiline) result += 'm';
+ if(that.unicode) result += 'u';
+ if(that.sticky) result += 'y';
+ return result;
+ };
+
+/***/ },
+/* 130 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 21.2.5.3 get RegExp.prototype.flags()
+ var $ = __webpack_require__(2);
+ if(__webpack_require__(8) && /./g.flags != 'g')$.setDesc(RegExp.prototype, 'flags', {
+ configurable: true,
+ get: __webpack_require__(129)
+ });
+
+/***/ },
+/* 131 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // @@match logic
+ __webpack_require__(132)('match', 1, function(defined, MATCH){
+ // 21.1.3.11 String.prototype.match(regexp)
+ return function match(regexp){
+ 'use strict';
+ var O = defined(this)
+ , fn = regexp == undefined ? undefined : regexp[MATCH];
+ return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));
+ };
+ });
+
+/***/ },
+/* 132 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var hide = __webpack_require__(6)
+ , redefine = __webpack_require__(10)
+ , fails = __webpack_require__(9)
+ , defined = __webpack_require__(22)
+ , wks = __webpack_require__(31);
+
+ module.exports = function(KEY, length, exec){
+ var SYMBOL = wks(KEY)
+ , original = ''[KEY];
+ if(fails(function(){
+ var O = {};
+ O[SYMBOL] = function(){ return 7; };
+ return ''[KEY](O) != 7;
+ })){
+ redefine(String.prototype, KEY, exec(defined, SYMBOL, original));
+ hide(RegExp.prototype, SYMBOL, length == 2
+ // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)
+ // 21.2.5.11 RegExp.prototype[@@split](string, limit)
+ ? function(string, arg){ return original.call(string, this, arg); }
+ // 21.2.5.6 RegExp.prototype[@@match](string)
+ // 21.2.5.9 RegExp.prototype[@@search](string)
+ : function(string){ return original.call(string, this); }
+ );
+ }
+ };
+
+/***/ },
+/* 133 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // @@replace logic
+ __webpack_require__(132)('replace', 2, function(defined, REPLACE, $replace){
+ // 21.1.3.14 String.prototype.replace(searchValue, replaceValue)
+ return function replace(searchValue, replaceValue){
+ 'use strict';
+ var O = defined(this)
+ , fn = searchValue == undefined ? undefined : searchValue[REPLACE];
+ return fn !== undefined
+ ? fn.call(searchValue, O, replaceValue)
+ : $replace.call(String(O), searchValue, replaceValue);
+ };
+ });
+
+/***/ },
+/* 134 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // @@search logic
+ __webpack_require__(132)('search', 1, function(defined, SEARCH){
+ // 21.1.3.15 String.prototype.search(regexp)
+ return function search(regexp){
+ 'use strict';
+ var O = defined(this)
+ , fn = regexp == undefined ? undefined : regexp[SEARCH];
+ return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O));
+ };
+ });
+
+/***/ },
+/* 135 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // @@split logic
+ __webpack_require__(132)('split', 2, function(defined, SPLIT, $split){
+ // 21.1.3.17 String.prototype.split(separator, limit)
+ return function split(separator, limit){
+ 'use strict';
+ var O = defined(this)
+ , fn = separator == undefined ? undefined : separator[SPLIT];
+ return fn !== undefined
+ ? fn.call(separator, O, limit)
+ : $split.call(String(O), separator, limit);
+ };
+ });
+
+/***/ },
+/* 136 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $ = __webpack_require__(2)
+ , LIBRARY = __webpack_require__(39)
+ , global = __webpack_require__(4)
+ , ctx = __webpack_require__(12)
+ , classof = __webpack_require__(47)
+ , $export = __webpack_require__(3)
+ , isObject = __webpack_require__(16)
+ , anObject = __webpack_require__(20)
+ , aFunction = __webpack_require__(13)
+ , strictNew = __webpack_require__(137)
+ , forOf = __webpack_require__(138)
+ , setProto = __webpack_require__(45).set
+ , same = __webpack_require__(43)
+ , SPECIES = __webpack_require__(31)('species')
+ , speciesConstructor = __webpack_require__(139)
+ , asap = __webpack_require__(140)
+ , PROMISE = 'Promise'
+ , process = global.process
+ , isNode = classof(process) == 'process'
+ , P = global[PROMISE]
+ , empty = function(){ /* empty */ }
+ , Wrapper;
+
+ var testResolve = function(sub){
+ var test = new P(empty), promise;
+ if(sub)test.constructor = function(exec){
+ exec(empty, empty);
+ };
+ (promise = P.resolve(test))['catch'](empty);
+ return promise === test;
+ };
+
+ var USE_NATIVE = function(){
+ var works = false;
+ function P2(x){
+ var self = new P(x);
+ setProto(self, P2.prototype);
+ return self;
+ }
+ try {
+ works = P && P.resolve && testResolve();
+ setProto(P2, P);
+ P2.prototype = $.create(P.prototype, {constructor: {value: P2}});
+ // actual Firefox has broken subclass support, test that
+ if(!(P2.resolve(5).then(function(){}) instanceof P2)){
+ works = false;
+ }
+ // actual V8 bug, https://code.google.com/p/v8/issues/detail?id=4162
+ if(works && __webpack_require__(8)){
+ var thenableThenGotten = false;
+ P.resolve($.setDesc({}, 'then', {
+ get: function(){ thenableThenGotten = true; }
+ }));
+ works = thenableThenGotten;
+ }
+ } catch(e){ works = false; }
+ return works;
+ }();
+
+ // helpers
+ var sameConstructor = function(a, b){
+ // library wrapper special case
+ if(LIBRARY && a === P && b === Wrapper)return true;
+ return same(a, b);
+ };
+ var getConstructor = function(C){
+ var S = anObject(C)[SPECIES];
+ return S != undefined ? S : C;
+ };
+ var isThenable = function(it){
+ var then;
+ return isObject(it) && typeof (then = it.then) == 'function' ? then : false;
+ };
+ var PromiseCapability = function(C){
+ var resolve, reject;
+ this.promise = new C(function($$resolve, $$reject){
+ if(resolve !== undefined || reject !== undefined)throw TypeError('Bad Promise constructor');
+ resolve = $$resolve;
+ reject = $$reject;
+ });
+ this.resolve = aFunction(resolve),
+ this.reject = aFunction(reject)
+ };
+ var perform = function(exec){
+ try {
+ exec();
+ } catch(e){
+ return {error: e};
+ }
+ };
+ var notify = function(record, isReject){
+ if(record.n)return;
+ record.n = true;
+ var chain = record.c;
+ asap(function(){
+ var value = record.v
+ , ok = record.s == 1
+ , i = 0;
+ var run = function(reaction){
+ var handler = ok ? reaction.ok : reaction.fail
+ , resolve = reaction.resolve
+ , reject = reaction.reject
+ , result, then;
+ try {
+ if(handler){
+ if(!ok)record.h = true;
+ result = handler === true ? value : handler(value);
+ if(result === reaction.promise){
+ reject(TypeError('Promise-chain cycle'));
+ } else if(then = isThenable(result)){
+ then.call(result, resolve, reject);
+ } else resolve(result);
+ } else reject(value);
+ } catch(e){
+ reject(e);
+ }
+ };
+ while(chain.length > i)run(chain[i++]); // variable length - can't use forEach
+ chain.length = 0;
+ record.n = false;
+ if(isReject)setTimeout(function(){
+ var promise = record.p
+ , handler, console;
+ if(isUnhandled(promise)){
+ if(isNode){
+ process.emit('unhandledRejection', value, promise);
+ } else if(handler = global.onunhandledrejection){
+ handler({promise: promise, reason: value});
+ } else if((console = global.console) && console.error){
+ console.error('Unhandled promise rejection', value);
+ }
+ } record.a = undefined;
+ }, 1);
+ });
+ };
+ var isUnhandled = function(promise){
+ var record = promise._d
+ , chain = record.a || record.c
+ , i = 0
+ , reaction;
+ if(record.h)return false;
+ while(chain.length > i){
+ reaction = chain[i++];
+ if(reaction.fail || !isUnhandled(reaction.promise))return false;
+ } return true;
+ };
+ var $reject = function(value){
+ var record = this;
+ if(record.d)return;
+ record.d = true;
+ record = record.r || record; // unwrap
+ record.v = value;
+ record.s = 2;
+ record.a = record.c.slice();
+ notify(record, true);
+ };
+ var $resolve = function(value){
+ var record = this
+ , then;
+ if(record.d)return;
+ record.d = true;
+ record = record.r || record; // unwrap
+ try {
+ if(record.p === value)throw TypeError("Promise can't be resolved itself");
+ if(then = isThenable(value)){
+ asap(function(){
+ var wrapper = {r: record, d: false}; // wrap
+ try {
+ then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));
+ } catch(e){
+ $reject.call(wrapper, e);
+ }
+ });
+ } else {
+ record.v = value;
+ record.s = 1;
+ notify(record, false);
+ }
+ } catch(e){
+ $reject.call({r: record, d: false}, e); // wrap
+ }
+ };
+
+ // constructor polyfill
+ if(!USE_NATIVE){
+ // 25.4.3.1 Promise(executor)
+ P = function Promise(executor){
+ aFunction(executor);
+ var record = this._d = {
+ p: strictNew(this, P, PROMISE), // <- promise
+ c: [], // <- awaiting reactions
+ a: undefined, // <- checked in isUnhandled reactions
+ s: 0, // <- state
+ d: false, // <- done
+ v: undefined, // <- value
+ h: false, // <- handled rejection
+ n: false // <- notify
+ };
+ try {
+ executor(ctx($resolve, record, 1), ctx($reject, record, 1));
+ } catch(err){
+ $reject.call(record, err);
+ }
+ };
+ __webpack_require__(142)(P.prototype, {
+ // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)
+ then: function then(onFulfilled, onRejected){
+ var reaction = new PromiseCapability(speciesConstructor(this, P))
+ , promise = reaction.promise
+ , record = this._d;
+ reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;
+ reaction.fail = typeof onRejected == 'function' && onRejected;
+ record.c.push(reaction);
+ if(record.a)record.a.push(reaction);
+ if(record.s)notify(record, false);
+ return promise;
+ },
+ // 25.4.5.1 Promise.prototype.catch(onRejected)
+ 'catch': function(onRejected){
+ return this.then(undefined, onRejected);
+ }
+ });
+ }
+
+ $export($export.G + $export.W + $export.F * !USE_NATIVE, {Promise: P});
+ __webpack_require__(35)(P, PROMISE);
+ __webpack_require__(121)(PROMISE);
+ Wrapper = __webpack_require__(5)[PROMISE];
+
+ // statics
+ $export($export.S + $export.F * !USE_NATIVE, PROMISE, {
+ // 25.4.4.5 Promise.reject(r)
+ reject: function reject(r){
+ var capability = new PromiseCapability(this)
+ , $$reject = capability.reject;
+ $$reject(r);
+ return capability.promise;
+ }
+ });
+ $export($export.S + $export.F * (!USE_NATIVE || testResolve(true)), PROMISE, {
+ // 25.4.4.6 Promise.resolve(x)
+ resolve: function resolve(x){
+ // instanceof instead of internal slot check because we should fix it without replacement native Promise core
+ if(x instanceof P && sameConstructor(x.constructor, this))return x;
+ var capability = new PromiseCapability(this)
+ , $$resolve = capability.resolve;
+ $$resolve(x);
+ return capability.promise;
+ }
+ });
+ $export($export.S + $export.F * !(USE_NATIVE && __webpack_require__(115)(function(iter){
+ P.all(iter)['catch'](function(){});
+ })), PROMISE, {
+ // 25.4.4.1 Promise.all(iterable)
+ all: function all(iterable){
+ var C = getConstructor(this)
+ , capability = new PromiseCapability(C)
+ , resolve = capability.resolve
+ , reject = capability.reject
+ , values = [];
+ var abrupt = perform(function(){
+ forOf(iterable, false, values.push, values);
+ var remaining = values.length
+ , results = Array(remaining);
+ if(remaining)$.each.call(values, function(promise, index){
+ var alreadyCalled = false;
+ C.resolve(promise).then(function(value){
+ if(alreadyCalled)return;
+ alreadyCalled = true;
+ results[index] = value;
+ --remaining || resolve(results);
+ }, reject);
+ });
+ else resolve(results);
+ });
+ if(abrupt)reject(abrupt.error);
+ return capability.promise;
+ },
+ // 25.4.4.4 Promise.race(iterable)
+ race: function race(iterable){
+ var C = getConstructor(this)
+ , capability = new PromiseCapability(C)
+ , reject = capability.reject;
+ var abrupt = perform(function(){
+ forOf(iterable, false, function(promise){
+ C.resolve(promise).then(capability.resolve, reject);
+ });
+ });
+ if(abrupt)reject(abrupt.error);
+ return capability.promise;
+ }
+ });
+
+/***/ },
+/* 137 */
+/***/ function(module, exports) {
+
+ module.exports = function(it, Constructor, name){
+ if(!(it instanceof Constructor))throw TypeError(name + ": use the 'new' operator!");
+ return it;
+ };
+
+/***/ },
+/* 138 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var ctx = __webpack_require__(12)
+ , call = __webpack_require__(112)
+ , isArrayIter = __webpack_require__(113)
+ , anObject = __webpack_require__(20)
+ , toLength = __webpack_require__(27)
+ , getIterFn = __webpack_require__(114);
+ module.exports = function(iterable, entries, fn, that){
+ var iterFn = getIterFn(iterable)
+ , f = ctx(fn, that, entries ? 2 : 1)
+ , index = 0
+ , length, step, iterator;
+ if(typeof iterFn != 'function')throw TypeError(iterable + ' is not iterable!');
+ // fast case for arrays with default iterator
+ if(isArrayIter(iterFn))for(length = toLength(iterable.length); length > index; index++){
+ entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);
+ } else for(iterator = iterFn.call(iterable); !(step = iterator.next()).done; ){
+ call(iterator, f, step.value, entries);
+ }
+ };
+
+/***/ },
+/* 139 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 7.3.20 SpeciesConstructor(O, defaultConstructor)
+ var anObject = __webpack_require__(20)
+ , aFunction = __webpack_require__(13)
+ , SPECIES = __webpack_require__(31)('species');
+ module.exports = function(O, D){
+ var C = anObject(O).constructor, S;
+ return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);
+ };
+
+/***/ },
+/* 140 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var global = __webpack_require__(4)
+ , macrotask = __webpack_require__(141).set
+ , Observer = global.MutationObserver || global.WebKitMutationObserver
+ , process = global.process
+ , Promise = global.Promise
+ , isNode = __webpack_require__(18)(process) == 'process'
+ , head, last, notify;
+
+ var flush = function(){
+ var parent, domain, fn;
+ if(isNode && (parent = process.domain)){
+ process.domain = null;
+ parent.exit();
+ }
+ while(head){
+ domain = head.domain;
+ fn = head.fn;
+ if(domain)domain.enter();
+ fn(); // <- currently we use it only for Promise - try / catch not required
+ if(domain)domain.exit();
+ head = head.next;
+ } last = undefined;
+ if(parent)parent.enter();
+ };
+
+ // Node.js
+ if(isNode){
+ notify = function(){
+ process.nextTick(flush);
+ };
+ // browsers with MutationObserver
+ } else if(Observer){
+ var toggle = 1
+ , node = document.createTextNode('');
+ new Observer(flush).observe(node, {characterData: true}); // eslint-disable-line no-new
+ notify = function(){
+ node.data = toggle = -toggle;
+ };
+ // environments with maybe non-completely correct, but existent Promise
+ } else if(Promise && Promise.resolve){
+ notify = function(){
+ Promise.resolve().then(flush);
+ };
+ // for other environments - macrotask based on:
+ // - setImmediate
+ // - MessageChannel
+ // - window.postMessag
+ // - onreadystatechange
+ // - setTimeout
+ } else {
+ notify = function(){
+ // strange IE + webpack dev server bug - use .call(global)
+ macrotask.call(global, flush);
+ };
+ }
+
+ module.exports = function asap(fn){
+ var task = {fn: fn, next: undefined, domain: isNode && process.domain};
+ if(last)last.next = task;
+ if(!head){
+ head = task;
+ notify();
+ } last = task;
+ };
+
+/***/ },
+/* 141 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var ctx = __webpack_require__(12)
+ , invoke = __webpack_require__(19)
+ , html = __webpack_require__(14)
+ , cel = __webpack_require__(15)
+ , global = __webpack_require__(4)
+ , process = global.process
+ , setTask = global.setImmediate
+ , clearTask = global.clearImmediate
+ , MessageChannel = global.MessageChannel
+ , counter = 0
+ , queue = {}
+ , ONREADYSTATECHANGE = 'onreadystatechange'
+ , defer, channel, port;
+ var run = function(){
+ var id = +this;
+ if(queue.hasOwnProperty(id)){
+ var fn = queue[id];
+ delete queue[id];
+ fn();
+ }
+ };
+ var listner = function(event){
+ run.call(event.data);
+ };
+ // Node.js 0.9+ & IE10+ has setImmediate, otherwise:
+ if(!setTask || !clearTask){
+ setTask = function setImmediate(fn){
+ var args = [], i = 1;
+ while(arguments.length > i)args.push(arguments[i++]);
+ queue[++counter] = function(){
+ invoke(typeof fn == 'function' ? fn : Function(fn), args);
+ };
+ defer(counter);
+ return counter;
+ };
+ clearTask = function clearImmediate(id){
+ delete queue[id];
+ };
+ // Node.js 0.8-
+ if(__webpack_require__(18)(process) == 'process'){
+ defer = function(id){
+ process.nextTick(ctx(run, id, 1));
+ };
+ // Browsers with MessageChannel, includes WebWorkers
+ } else if(MessageChannel){
+ channel = new MessageChannel;
+ port = channel.port2;
+ channel.port1.onmessage = listner;
+ defer = ctx(port.postMessage, port, 1);
+ // Browsers with postMessage, skip WebWorkers
+ // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'
+ } else if(global.addEventListener && typeof postMessage == 'function' && !global.importScripts){
+ defer = function(id){
+ global.postMessage(id + '', '*');
+ };
+ global.addEventListener('message', listner, false);
+ // IE8-
+ } else if(ONREADYSTATECHANGE in cel('script')){
+ defer = function(id){
+ html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function(){
+ html.removeChild(this);
+ run.call(id);
+ };
+ };
+ // Rest old browsers
+ } else {
+ defer = function(id){
+ setTimeout(ctx(run, id, 1), 0);
+ };
+ }
+ }
+ module.exports = {
+ set: setTask,
+ clear: clearTask
+ };
+
+/***/ },
+/* 142 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var redefine = __webpack_require__(10);
+ module.exports = function(target, src){
+ for(var key in src)redefine(target, key, src[key]);
+ return target;
+ };
+
+/***/ },
+/* 143 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var strong = __webpack_require__(144);
+
+ // 23.1 Map Objects
+ __webpack_require__(145)('Map', function(get){
+ return function Map(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };
+ }, {
+ // 23.1.3.6 Map.prototype.get(key)
+ get: function get(key){
+ var entry = strong.getEntry(this, key);
+ return entry && entry.v;
+ },
+ // 23.1.3.9 Map.prototype.set(key, value)
+ set: function set(key, value){
+ return strong.def(this, key === 0 ? 0 : key, value);
+ }
+ }, strong, true);
+
+/***/ },
+/* 144 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $ = __webpack_require__(2)
+ , hide = __webpack_require__(6)
+ , redefineAll = __webpack_require__(142)
+ , ctx = __webpack_require__(12)
+ , strictNew = __webpack_require__(137)
+ , defined = __webpack_require__(22)
+ , forOf = __webpack_require__(138)
+ , $iterDefine = __webpack_require__(108)
+ , step = __webpack_require__(119)
+ , ID = __webpack_require__(11)('id')
+ , $has = __webpack_require__(17)
+ , isObject = __webpack_require__(16)
+ , setSpecies = __webpack_require__(121)
+ , DESCRIPTORS = __webpack_require__(8)
+ , isExtensible = Object.isExtensible || isObject
+ , SIZE = DESCRIPTORS ? '_s' : 'size'
+ , id = 0;
+
+ var fastKey = function(it, create){
+ // return primitive with prefix
+ if(!isObject(it))return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
+ if(!$has(it, ID)){
+ // can't set id to frozen object
+ if(!isExtensible(it))return 'F';
+ // not necessary to add id
+ if(!create)return 'E';
+ // add missing object id
+ hide(it, ID, ++id);
+ // return object id with prefix
+ } return 'O' + it[ID];
+ };
+
+ var getEntry = function(that, key){
+ // fast case
+ var index = fastKey(key), entry;
+ if(index !== 'F')return that._i[index];
+ // frozen object case
+ for(entry = that._f; entry; entry = entry.n){
+ if(entry.k == key)return entry;
+ }
+ };
+
+ module.exports = {
+ getConstructor: function(wrapper, NAME, IS_MAP, ADDER){
+ var C = wrapper(function(that, iterable){
+ strictNew(that, C, NAME);
+ that._i = $.create(null); // index
+ that._f = undefined; // first entry
+ that._l = undefined; // last entry
+ that[SIZE] = 0; // size
+ if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);
+ });
+ redefineAll(C.prototype, {
+ // 23.1.3.1 Map.prototype.clear()
+ // 23.2.3.2 Set.prototype.clear()
+ clear: function clear(){
+ for(var that = this, data = that._i, entry = that._f; entry; entry = entry.n){
+ entry.r = true;
+ if(entry.p)entry.p = entry.p.n = undefined;
+ delete data[entry.i];
+ }
+ that._f = that._l = undefined;
+ that[SIZE] = 0;
+ },
+ // 23.1.3.3 Map.prototype.delete(key)
+ // 23.2.3.4 Set.prototype.delete(value)
+ 'delete': function(key){
+ var that = this
+ , entry = getEntry(that, key);
+ if(entry){
+ var next = entry.n
+ , prev = entry.p;
+ delete that._i[entry.i];
+ entry.r = true;
+ if(prev)prev.n = next;
+ if(next)next.p = prev;
+ if(that._f == entry)that._f = next;
+ if(that._l == entry)that._l = prev;
+ that[SIZE]--;
+ } return !!entry;
+ },
+ // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)
+ // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)
+ forEach: function forEach(callbackfn /*, that = undefined */){
+ var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3)
+ , entry;
+ while(entry = entry ? entry.n : this._f){
+ f(entry.v, entry.k, this);
+ // revert to the last existing entry
+ while(entry && entry.r)entry = entry.p;
+ }
+ },
+ // 23.1.3.7 Map.prototype.has(key)
+ // 23.2.3.7 Set.prototype.has(value)
+ has: function has(key){
+ return !!getEntry(this, key);
+ }
+ });
+ if(DESCRIPTORS)$.setDesc(C.prototype, 'size', {
+ get: function(){
+ return defined(this[SIZE]);
+ }
+ });
+ return C;
+ },
+ def: function(that, key, value){
+ var entry = getEntry(that, key)
+ , prev, index;
+ // change existing entry
+ if(entry){
+ entry.v = value;
+ // create new entry
+ } else {
+ that._l = entry = {
+ i: index = fastKey(key, true), // <- index
+ k: key, // <- key
+ v: value, // <- value
+ p: prev = that._l, // <- previous entry
+ n: undefined, // <- next entry
+ r: false // <- removed
+ };
+ if(!that._f)that._f = entry;
+ if(prev)prev.n = entry;
+ that[SIZE]++;
+ // add to index
+ if(index !== 'F')that._i[index] = entry;
+ } return that;
+ },
+ getEntry: getEntry,
+ setStrong: function(C, NAME, IS_MAP){
+ // add .keys, .values, .entries, [@@iterator]
+ // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11
+ $iterDefine(C, NAME, function(iterated, kind){
+ this._t = iterated; // target
+ this._k = kind; // kind
+ this._l = undefined; // previous
+ }, function(){
+ var that = this
+ , kind = that._k
+ , entry = that._l;
+ // revert to the last existing entry
+ while(entry && entry.r)entry = entry.p;
+ // get next entry
+ if(!that._t || !(that._l = entry = entry ? entry.n : that._t._f)){
+ // or finish the iteration
+ that._t = undefined;
+ return step(1);
+ }
+ // return step by kind
+ if(kind == 'keys' )return step(0, entry.k);
+ if(kind == 'values')return step(0, entry.v);
+ return step(0, [entry.k, entry.v]);
+ }, IS_MAP ? 'entries' : 'values' , !IS_MAP, true);
+
+ // add [@@species], 23.1.2.2, 23.2.2.2
+ setSpecies(NAME);
+ }
+ };
+
+/***/ },
+/* 145 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var global = __webpack_require__(4)
+ , $export = __webpack_require__(3)
+ , redefine = __webpack_require__(10)
+ , redefineAll = __webpack_require__(142)
+ , forOf = __webpack_require__(138)
+ , strictNew = __webpack_require__(137)
+ , isObject = __webpack_require__(16)
+ , fails = __webpack_require__(9)
+ , $iterDetect = __webpack_require__(115)
+ , setToStringTag = __webpack_require__(35);
+
+ module.exports = function(NAME, wrapper, methods, common, IS_MAP, IS_WEAK){
+ var Base = global[NAME]
+ , C = Base
+ , ADDER = IS_MAP ? 'set' : 'add'
+ , proto = C && C.prototype
+ , O = {};
+ var fixMethod = function(KEY){
+ var fn = proto[KEY];
+ redefine(proto, KEY,
+ KEY == 'delete' ? function(a){
+ return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);
+ } : KEY == 'has' ? function has(a){
+ return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);
+ } : KEY == 'get' ? function get(a){
+ return IS_WEAK && !isObject(a) ? undefined : fn.call(this, a === 0 ? 0 : a);
+ } : KEY == 'add' ? function add(a){ fn.call(this, a === 0 ? 0 : a); return this; }
+ : function set(a, b){ fn.call(this, a === 0 ? 0 : a, b); return this; }
+ );
+ };
+ if(typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function(){
+ new C().entries().next();
+ }))){
+ // create collection constructor
+ C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);
+ redefineAll(C.prototype, methods);
+ } else {
+ var instance = new C
+ // early implementations not supports chaining
+ , HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) != instance
+ // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false
+ , THROWS_ON_PRIMITIVES = fails(function(){ instance.has(1); })
+ // most early implementations doesn't supports iterables, most modern - not close it correctly
+ , ACCEPT_ITERABLES = $iterDetect(function(iter){ new C(iter); }) // eslint-disable-line no-new
+ // for early implementations -0 and +0 not the same
+ , BUGGY_ZERO;
+ if(!ACCEPT_ITERABLES){
+ C = wrapper(function(target, iterable){
+ strictNew(target, C, NAME);
+ var that = new Base;
+ if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);
+ return that;
+ });
+ C.prototype = proto;
+ proto.constructor = C;
+ }
+ IS_WEAK || instance.forEach(function(val, key){
+ BUGGY_ZERO = 1 / key === -Infinity;
+ });
+ if(THROWS_ON_PRIMITIVES || BUGGY_ZERO){
+ fixMethod('delete');
+ fixMethod('has');
+ IS_MAP && fixMethod('get');
+ }
+ if(BUGGY_ZERO || HASNT_CHAINING)fixMethod(ADDER);
+ // weak collections should not contains .clear method
+ if(IS_WEAK && proto.clear)delete proto.clear;
+ }
+
+ setToStringTag(C, NAME);
+
+ O[NAME] = C;
+ $export($export.G + $export.W + $export.F * (C != Base), O);
+
+ if(!IS_WEAK)common.setStrong(C, NAME, IS_MAP);
+
+ return C;
+ };
+
+/***/ },
+/* 146 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var strong = __webpack_require__(144);
+
+ // 23.2 Set Objects
+ __webpack_require__(145)('Set', function(get){
+ return function Set(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };
+ }, {
+ // 23.2.3.1 Set.prototype.add(value)
+ add: function add(value){
+ return strong.def(this, value = value === 0 ? 0 : value, value);
+ }
+ }, strong);
+
+/***/ },
+/* 147 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $ = __webpack_require__(2)
+ , redefine = __webpack_require__(10)
+ , weak = __webpack_require__(148)
+ , isObject = __webpack_require__(16)
+ , has = __webpack_require__(17)
+ , frozenStore = weak.frozenStore
+ , WEAK = weak.WEAK
+ , isExtensible = Object.isExtensible || isObject
+ , tmp = {};
+
+ // 23.3 WeakMap Objects
+ var $WeakMap = __webpack_require__(145)('WeakMap', function(get){
+ return function WeakMap(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };
+ }, {
+ // 23.3.3.3 WeakMap.prototype.get(key)
+ get: function get(key){
+ if(isObject(key)){
+ if(!isExtensible(key))return frozenStore(this).get(key);
+ if(has(key, WEAK))return key[WEAK][this._i];
+ }
+ },
+ // 23.3.3.5 WeakMap.prototype.set(key, value)
+ set: function set(key, value){
+ return weak.def(this, key, value);
+ }
+ }, weak, true, true);
+
+ // IE11 WeakMap frozen keys fix
+ if(new $WeakMap().set((Object.freeze || Object)(tmp), 7).get(tmp) != 7){
+ $.each.call(['delete', 'has', 'get', 'set'], function(key){
+ var proto = $WeakMap.prototype
+ , method = proto[key];
+ redefine(proto, key, function(a, b){
+ // store frozen objects on leaky map
+ if(isObject(a) && !isExtensible(a)){
+ var result = frozenStore(this)[key](a, b);
+ return key == 'set' ? this : result;
+ // store all the rest on native weakmap
+ } return method.call(this, a, b);
+ });
+ });
+ }
+
+/***/ },
+/* 148 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var hide = __webpack_require__(6)
+ , redefineAll = __webpack_require__(142)
+ , anObject = __webpack_require__(20)
+ , isObject = __webpack_require__(16)
+ , strictNew = __webpack_require__(137)
+ , forOf = __webpack_require__(138)
+ , createArrayMethod = __webpack_require__(28)
+ , $has = __webpack_require__(17)
+ , WEAK = __webpack_require__(11)('weak')
+ , isExtensible = Object.isExtensible || isObject
+ , arrayFind = createArrayMethod(5)
+ , arrayFindIndex = createArrayMethod(6)
+ , id = 0;
+
+ // fallback for frozen keys
+ var frozenStore = function(that){
+ return that._l || (that._l = new FrozenStore);
+ };
+ var FrozenStore = function(){
+ this.a = [];
+ };
+ var findFrozen = function(store, key){
+ return arrayFind(store.a, function(it){
+ return it[0] === key;
+ });
+ };
+ FrozenStore.prototype = {
+ get: function(key){
+ var entry = findFrozen(this, key);
+ if(entry)return entry[1];
+ },
+ has: function(key){
+ return !!findFrozen(this, key);
+ },
+ set: function(key, value){
+ var entry = findFrozen(this, key);
+ if(entry)entry[1] = value;
+ else this.a.push([key, value]);
+ },
+ 'delete': function(key){
+ var index = arrayFindIndex(this.a, function(it){
+ return it[0] === key;
+ });
+ if(~index)this.a.splice(index, 1);
+ return !!~index;
+ }
+ };
+
+ module.exports = {
+ getConstructor: function(wrapper, NAME, IS_MAP, ADDER){
+ var C = wrapper(function(that, iterable){
+ strictNew(that, C, NAME);
+ that._i = id++; // collection id
+ that._l = undefined; // leak store for frozen objects
+ if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);
+ });
+ redefineAll(C.prototype, {
+ // 23.3.3.2 WeakMap.prototype.delete(key)
+ // 23.4.3.3 WeakSet.prototype.delete(value)
+ 'delete': function(key){
+ if(!isObject(key))return false;
+ if(!isExtensible(key))return frozenStore(this)['delete'](key);
+ return $has(key, WEAK) && $has(key[WEAK], this._i) && delete key[WEAK][this._i];
+ },
+ // 23.3.3.4 WeakMap.prototype.has(key)
+ // 23.4.3.4 WeakSet.prototype.has(value)
+ has: function has(key){
+ if(!isObject(key))return false;
+ if(!isExtensible(key))return frozenStore(this).has(key);
+ return $has(key, WEAK) && $has(key[WEAK], this._i);
+ }
+ });
+ return C;
+ },
+ def: function(that, key, value){
+ if(!isExtensible(anObject(key))){
+ frozenStore(that).set(key, value);
+ } else {
+ $has(key, WEAK) || hide(key, WEAK, {});
+ key[WEAK][that._i] = value;
+ } return that;
+ },
+ frozenStore: frozenStore,
+ WEAK: WEAK
+ };
+
+/***/ },
+/* 149 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var weak = __webpack_require__(148);
+
+ // 23.4 WeakSet Objects
+ __webpack_require__(145)('WeakSet', function(get){
+ return function WeakSet(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };
+ }, {
+ // 23.4.3.1 WeakSet.prototype.add(value)
+ add: function add(value){
+ return weak.def(this, value, true);
+ }
+ }, weak, false, true);
+
+/***/ },
+/* 150 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.1 Reflect.apply(target, thisArgument, argumentsList)
+ var $export = __webpack_require__(3)
+ , _apply = Function.apply
+ , anObject = __webpack_require__(20);
+
+ $export($export.S, 'Reflect', {
+ apply: function apply(target, thisArgument, argumentsList){
+ return _apply.call(target, thisArgument, anObject(argumentsList));
+ }
+ });
+
+/***/ },
+/* 151 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.2 Reflect.construct(target, argumentsList [, newTarget])
+ var $ = __webpack_require__(2)
+ , $export = __webpack_require__(3)
+ , aFunction = __webpack_require__(13)
+ , anObject = __webpack_require__(20)
+ , isObject = __webpack_require__(16)
+ , bind = Function.bind || __webpack_require__(5).Function.prototype.bind;
+
+ // MS Edge supports only 2 arguments
+ // FF Nightly sets third argument as `new.target`, but does not create `this` from it
+ $export($export.S + $export.F * __webpack_require__(9)(function(){
+ function F(){}
+ return !(Reflect.construct(function(){}, [], F) instanceof F);
+ }), 'Reflect', {
+ construct: function construct(Target, args /*, newTarget*/){
+ aFunction(Target);
+ anObject(args);
+ var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);
+ if(Target == newTarget){
+ // w/o altered newTarget, optimization for 0-4 arguments
+ switch(args.length){
+ case 0: return new Target;
+ case 1: return new Target(args[0]);
+ case 2: return new Target(args[0], args[1]);
+ case 3: return new Target(args[0], args[1], args[2]);
+ case 4: return new Target(args[0], args[1], args[2], args[3]);
+ }
+ // w/o altered newTarget, lot of arguments case
+ var $args = [null];
+ $args.push.apply($args, args);
+ return new (bind.apply(Target, $args));
+ }
+ // with altered newTarget, not support built-in constructors
+ var proto = newTarget.prototype
+ , instance = $.create(isObject(proto) ? proto : Object.prototype)
+ , result = Function.apply.call(Target, instance, args);
+ return isObject(result) ? result : instance;
+ }
+ });
+
+/***/ },
+/* 152 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.3 Reflect.defineProperty(target, propertyKey, attributes)
+ var $ = __webpack_require__(2)
+ , $export = __webpack_require__(3)
+ , anObject = __webpack_require__(20);
+
+ // MS Edge has broken Reflect.defineProperty - throwing instead of returning false
+ $export($export.S + $export.F * __webpack_require__(9)(function(){
+ Reflect.defineProperty($.setDesc({}, 1, {value: 1}), 1, {value: 2});
+ }), 'Reflect', {
+ defineProperty: function defineProperty(target, propertyKey, attributes){
+ anObject(target);
+ try {
+ $.setDesc(target, propertyKey, attributes);
+ return true;
+ } catch(e){
+ return false;
+ }
+ }
+ });
+
+/***/ },
+/* 153 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.4 Reflect.deleteProperty(target, propertyKey)
+ var $export = __webpack_require__(3)
+ , getDesc = __webpack_require__(2).getDesc
+ , anObject = __webpack_require__(20);
+
+ $export($export.S, 'Reflect', {
+ deleteProperty: function deleteProperty(target, propertyKey){
+ var desc = getDesc(anObject(target), propertyKey);
+ return desc && !desc.configurable ? false : delete target[propertyKey];
+ }
+ });
+
+/***/ },
+/* 154 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ // 26.1.5 Reflect.enumerate(target)
+ var $export = __webpack_require__(3)
+ , anObject = __webpack_require__(20);
+ var Enumerate = function(iterated){
+ this._t = anObject(iterated); // target
+ this._i = 0; // next index
+ var keys = this._k = [] // keys
+ , key;
+ for(key in iterated)keys.push(key);
+ };
+ __webpack_require__(110)(Enumerate, 'Object', function(){
+ var that = this
+ , keys = that._k
+ , key;
+ do {
+ if(that._i >= keys.length)return {value: undefined, done: true};
+ } while(!((key = keys[that._i++]) in that._t));
+ return {value: key, done: false};
+ });
+
+ $export($export.S, 'Reflect', {
+ enumerate: function enumerate(target){
+ return new Enumerate(target);
+ }
+ });
+
+/***/ },
+/* 155 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.6 Reflect.get(target, propertyKey [, receiver])
+ var $ = __webpack_require__(2)
+ , has = __webpack_require__(17)
+ , $export = __webpack_require__(3)
+ , isObject = __webpack_require__(16)
+ , anObject = __webpack_require__(20);
+
+ function get(target, propertyKey/*, receiver*/){
+ var receiver = arguments.length < 3 ? target : arguments[2]
+ , desc, proto;
+ if(anObject(target) === receiver)return target[propertyKey];
+ if(desc = $.getDesc(target, propertyKey))return has(desc, 'value')
+ ? desc.value
+ : desc.get !== undefined
+ ? desc.get.call(receiver)
+ : undefined;
+ if(isObject(proto = $.getProto(target)))return get(proto, propertyKey, receiver);
+ }
+
+ $export($export.S, 'Reflect', {get: get});
+
+/***/ },
+/* 156 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.7 Reflect.getOwnPropertyDescriptor(target, propertyKey)
+ var $ = __webpack_require__(2)
+ , $export = __webpack_require__(3)
+ , anObject = __webpack_require__(20);
+
+ $export($export.S, 'Reflect', {
+ getOwnPropertyDescriptor: function getOwnPropertyDescriptor(target, propertyKey){
+ return $.getDesc(anObject(target), propertyKey);
+ }
+ });
+
+/***/ },
+/* 157 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.8 Reflect.getPrototypeOf(target)
+ var $export = __webpack_require__(3)
+ , getProto = __webpack_require__(2).getProto
+ , anObject = __webpack_require__(20);
+
+ $export($export.S, 'Reflect', {
+ getPrototypeOf: function getPrototypeOf(target){
+ return getProto(anObject(target));
+ }
+ });
+
+/***/ },
+/* 158 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.9 Reflect.has(target, propertyKey)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Reflect', {
+ has: function has(target, propertyKey){
+ return propertyKey in target;
+ }
+ });
+
+/***/ },
+/* 159 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.10 Reflect.isExtensible(target)
+ var $export = __webpack_require__(3)
+ , anObject = __webpack_require__(20)
+ , $isExtensible = Object.isExtensible;
+
+ $export($export.S, 'Reflect', {
+ isExtensible: function isExtensible(target){
+ anObject(target);
+ return $isExtensible ? $isExtensible(target) : true;
+ }
+ });
+
+/***/ },
+/* 160 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.11 Reflect.ownKeys(target)
+ var $export = __webpack_require__(3);
+
+ $export($export.S, 'Reflect', {ownKeys: __webpack_require__(161)});
+
+/***/ },
+/* 161 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // all object keys, includes non-enumerable and symbols
+ var $ = __webpack_require__(2)
+ , anObject = __webpack_require__(20)
+ , Reflect = __webpack_require__(4).Reflect;
+ module.exports = Reflect && Reflect.ownKeys || function ownKeys(it){
+ var keys = $.getNames(anObject(it))
+ , getSymbols = $.getSymbols;
+ return getSymbols ? keys.concat(getSymbols(it)) : keys;
+ };
+
+/***/ },
+/* 162 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.12 Reflect.preventExtensions(target)
+ var $export = __webpack_require__(3)
+ , anObject = __webpack_require__(20)
+ , $preventExtensions = Object.preventExtensions;
+
+ $export($export.S, 'Reflect', {
+ preventExtensions: function preventExtensions(target){
+ anObject(target);
+ try {
+ if($preventExtensions)$preventExtensions(target);
+ return true;
+ } catch(e){
+ return false;
+ }
+ }
+ });
+
+/***/ },
+/* 163 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.13 Reflect.set(target, propertyKey, V [, receiver])
+ var $ = __webpack_require__(2)
+ , has = __webpack_require__(17)
+ , $export = __webpack_require__(3)
+ , createDesc = __webpack_require__(7)
+ , anObject = __webpack_require__(20)
+ , isObject = __webpack_require__(16);
+
+ function set(target, propertyKey, V/*, receiver*/){
+ var receiver = arguments.length < 4 ? target : arguments[3]
+ , ownDesc = $.getDesc(anObject(target), propertyKey)
+ , existingDescriptor, proto;
+ if(!ownDesc){
+ if(isObject(proto = $.getProto(target))){
+ return set(proto, propertyKey, V, receiver);
+ }
+ ownDesc = createDesc(0);
+ }
+ if(has(ownDesc, 'value')){
+ if(ownDesc.writable === false || !isObject(receiver))return false;
+ existingDescriptor = $.getDesc(receiver, propertyKey) || createDesc(0);
+ existingDescriptor.value = V;
+ $.setDesc(receiver, propertyKey, existingDescriptor);
+ return true;
+ }
+ return ownDesc.set === undefined ? false : (ownDesc.set.call(receiver, V), true);
+ }
+
+ $export($export.S, 'Reflect', {set: set});
+
+/***/ },
+/* 164 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // 26.1.14 Reflect.setPrototypeOf(target, proto)
+ var $export = __webpack_require__(3)
+ , setProto = __webpack_require__(45);
+
+ if(setProto)$export($export.S, 'Reflect', {
+ setPrototypeOf: function setPrototypeOf(target, proto){
+ setProto.check(target, proto);
+ try {
+ setProto.set(target, proto);
+ return true;
+ } catch(e){
+ return false;
+ }
+ }
+ });
+
+/***/ },
+/* 165 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $export = __webpack_require__(3)
+ , $includes = __webpack_require__(33)(true);
+
+ $export($export.P, 'Array', {
+ // https://github.com/domenic/Array.prototype.includes
+ includes: function includes(el /*, fromIndex = 0 */){
+ return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);
+ }
+ });
+
+ __webpack_require__(118)('includes');
+
+/***/ },
+/* 166 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ // https://github.com/mathiasbynens/String.prototype.at
+ var $export = __webpack_require__(3)
+ , $at = __webpack_require__(98)(true);
+
+ $export($export.P, 'String', {
+ at: function at(pos){
+ return $at(this, pos);
+ }
+ });
+
+/***/ },
+/* 167 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $export = __webpack_require__(3)
+ , $pad = __webpack_require__(168);
+
+ $export($export.P, 'String', {
+ padLeft: function padLeft(maxLength /*, fillString = ' ' */){
+ return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, true);
+ }
+ });
+
+/***/ },
+/* 168 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // https://github.com/ljharb/proposal-string-pad-left-right
+ var toLength = __webpack_require__(27)
+ , repeat = __webpack_require__(105)
+ , defined = __webpack_require__(22);
+
+ module.exports = function(that, maxLength, fillString, left){
+ var S = String(defined(that))
+ , stringLength = S.length
+ , fillStr = fillString === undefined ? ' ' : String(fillString)
+ , intMaxLength = toLength(maxLength);
+ if(intMaxLength <= stringLength)return S;
+ if(fillStr == '')fillStr = ' ';
+ var fillLen = intMaxLength - stringLength
+ , stringFiller = repeat.call(fillStr, Math.ceil(fillLen / fillStr.length));
+ if(stringFiller.length > fillLen)stringFiller = stringFiller.slice(0, fillLen);
+ return left ? stringFiller + S : S + stringFiller;
+ };
+
+/***/ },
+/* 169 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var $export = __webpack_require__(3)
+ , $pad = __webpack_require__(168);
+
+ $export($export.P, 'String', {
+ padRight: function padRight(maxLength /*, fillString = ' ' */){
+ return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, false);
+ }
+ });
+
+/***/ },
+/* 170 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ // https://github.com/sebmarkbage/ecmascript-string-left-right-trim
+ __webpack_require__(63)('trimLeft', function($trim){
+ return function trimLeft(){
+ return $trim(this, 1);
+ };
+ });
+
+/***/ },
+/* 171 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ // https://github.com/sebmarkbage/ecmascript-string-left-right-trim
+ __webpack_require__(63)('trimRight', function($trim){
+ return function trimRight(){
+ return $trim(this, 2);
+ };
+ });
+
+/***/ },
+/* 172 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // https://github.com/benjamingr/RexExp.escape
+ var $export = __webpack_require__(3)
+ , $re = __webpack_require__(173)(/[\\^$*+?.()|[\]{}]/g, '\\$&');
+
+ $export($export.S, 'RegExp', {escape: function escape(it){ return $re(it); }});
+
+
+/***/ },
+/* 173 */
+/***/ function(module, exports) {
+
+ module.exports = function(regExp, replace){
+ var replacer = replace === Object(replace) ? function(part){
+ return replace[part];
+ } : replace;
+ return function(it){
+ return String(it).replace(regExp, replacer);
+ };
+ };
+
+/***/ },
+/* 174 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // https://gist.github.com/WebReflection/9353781
+ var $ = __webpack_require__(2)
+ , $export = __webpack_require__(3)
+ , ownKeys = __webpack_require__(161)
+ , toIObject = __webpack_require__(23)
+ , createDesc = __webpack_require__(7);
+
+ $export($export.S, 'Object', {
+ getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object){
+ var O = toIObject(object)
+ , setDesc = $.setDesc
+ , getDesc = $.getDesc
+ , keys = ownKeys(O)
+ , result = {}
+ , i = 0
+ , key, D;
+ while(keys.length > i){
+ D = getDesc(O, key = keys[i++]);
+ if(key in result)setDesc(result, key, createDesc(0, D));
+ else result[key] = D;
+ } return result;
+ }
+ });
+
+/***/ },
+/* 175 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // http://goo.gl/XkBrjD
+ var $export = __webpack_require__(3)
+ , $values = __webpack_require__(176)(false);
+
+ $export($export.S, 'Object', {
+ values: function values(it){
+ return $values(it);
+ }
+ });
+
+/***/ },
+/* 176 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $ = __webpack_require__(2)
+ , toIObject = __webpack_require__(23)
+ , isEnum = $.isEnum;
+ module.exports = function(isEntries){
+ return function(it){
+ var O = toIObject(it)
+ , keys = $.getKeys(O)
+ , length = keys.length
+ , i = 0
+ , result = []
+ , key;
+ while(length > i)if(isEnum.call(O, key = keys[i++])){
+ result.push(isEntries ? [key, O[key]] : O[key]);
+ } return result;
+ };
+ };
+
+/***/ },
+/* 177 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // http://goo.gl/XkBrjD
+ var $export = __webpack_require__(3)
+ , $entries = __webpack_require__(176)(true);
+
+ $export($export.S, 'Object', {
+ entries: function entries(it){
+ return $entries(it);
+ }
+ });
+
+/***/ },
+/* 178 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // https://github.com/DavidBruant/Map-Set.prototype.toJSON
+ var $export = __webpack_require__(3);
+
+ $export($export.P, 'Map', {toJSON: __webpack_require__(179)('Map')});
+
+/***/ },
+/* 179 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // https://github.com/DavidBruant/Map-Set.prototype.toJSON
+ var forOf = __webpack_require__(138)
+ , classof = __webpack_require__(47);
+ module.exports = function(NAME){
+ return function toJSON(){
+ if(classof(this) != NAME)throw TypeError(NAME + "#toJSON isn't generic");
+ var arr = [];
+ forOf(this, false, arr.push, arr);
+ return arr;
+ };
+ };
+
+/***/ },
+/* 180 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // https://github.com/DavidBruant/Map-Set.prototype.toJSON
+ var $export = __webpack_require__(3);
+
+ $export($export.P, 'Set', {toJSON: __webpack_require__(179)('Set')});
+
+/***/ },
+/* 181 */
+/***/ function(module, exports, __webpack_require__) {
+
+ var $export = __webpack_require__(3)
+ , $task = __webpack_require__(141);
+ $export($export.G + $export.B, {
+ setImmediate: $task.set,
+ clearImmediate: $task.clear
+ });
+
+/***/ },
+/* 182 */
+/***/ function(module, exports, __webpack_require__) {
+
+ __webpack_require__(117);
+ var global = __webpack_require__(4)
+ , hide = __webpack_require__(6)
+ , Iterators = __webpack_require__(109)
+ , ITERATOR = __webpack_require__(31)('iterator')
+ , NL = global.NodeList
+ , HTC = global.HTMLCollection
+ , NLProto = NL && NL.prototype
+ , HTCProto = HTC && HTC.prototype
+ , ArrayValues = Iterators.NodeList = Iterators.HTMLCollection = Iterators.Array;
+ if(NLProto && !NLProto[ITERATOR])hide(NLProto, ITERATOR, ArrayValues);
+ if(HTCProto && !HTCProto[ITERATOR])hide(HTCProto, ITERATOR, ArrayValues);
+
+/***/ },
+/* 183 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // ie9- setTimeout & setInterval additional parameters fix
+ var global = __webpack_require__(4)
+ , $export = __webpack_require__(3)
+ , invoke = __webpack_require__(19)
+ , partial = __webpack_require__(184)
+ , navigator = global.navigator
+ , MSIE = !!navigator && /MSIE .\./.test(navigator.userAgent); // <- dirty ie9- check
+ var wrap = function(set){
+ return MSIE ? function(fn, time /*, ...args */){
+ return set(invoke(
+ partial,
+ [].slice.call(arguments, 2),
+ typeof fn == 'function' ? fn : Function(fn)
+ ), time);
+ } : set;
+ };
+ $export($export.G + $export.B + $export.F * MSIE, {
+ setTimeout: wrap(global.setTimeout),
+ setInterval: wrap(global.setInterval)
+ });
+
+/***/ },
+/* 184 */
+/***/ function(module, exports, __webpack_require__) {
+
+ 'use strict';
+ var path = __webpack_require__(185)
+ , invoke = __webpack_require__(19)
+ , aFunction = __webpack_require__(13);
+ module.exports = function(/* ...pargs */){
+ var fn = aFunction(this)
+ , length = arguments.length
+ , pargs = Array(length)
+ , i = 0
+ , _ = path._
+ , holder = false;
+ while(length > i)if((pargs[i] = arguments[i++]) === _)holder = true;
+ return function(/* ...args */){
+ var that = this
+ , $$ = arguments
+ , $$len = $$.length
+ , j = 0, k = 0, args;
+ if(!holder && !$$len)return invoke(fn, pargs, that);
+ args = pargs.slice();
+ if(holder)for(;length > j; j++)if(args[j] === _)args[j] = $$[k++];
+ while($$len > k)args.push($$[k++]);
+ return invoke(fn, args, that);
+ };
+ };
+
+/***/ },
+/* 185 */
+/***/ function(module, exports, __webpack_require__) {
+
+ module.exports = __webpack_require__(4);
+
+/***/ },
+/* 186 */
+/***/ function(module, exports, __webpack_require__) {
+
+ // JavaScript 1.6 / Strawman array statics shim
+ var $ = __webpack_require__(2)
+ , $export = __webpack_require__(3)
+ , $ctx = __webpack_require__(12)
+ , $Array = __webpack_require__(5).Array || Array
+ , statics = {};
+ var setStatics = function(keys, length){
+ $.each.call(keys.split(','), function(key){
+ if(length == undefined && key in $Array)statics[key] = $Array[key];
+ else if(key in [])statics[key] = $ctx(Function.call, [][key], length);
+ });
+ };
+ setStatics('pop,reverse,shift,keys,values,entries', 1);
+ setStatics('indexOf,every,some,forEach,map,filter,find,findIndex,includes', 3);
+ setStatics('join,slice,concat,push,splice,unshift,sort,lastIndexOf,' +
+ 'reduce,reduceRight,copyWithin,fill');
+ $export($export.S, 'Array', statics);
+
+/***/ }
+/******/ ]);
+// CommonJS export
+if(typeof module != 'undefined' && module.exports)module.exports = __e;
+// RequireJS export
+else if(typeof define == 'function' && define.amd)define(function(){return __e});
+// Export to global object
+else __g.core = __e;
+}(1, 1);
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/client/shim.min.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/client/shim.min.js
new file mode 100644
index 00000000..bdfd6632
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/client/shim.min.js
@@ -0,0 +1,9 @@
+/**
+ * core-js 1.2.7
+ * https://github.com/zloirock/core-js
+ * License: http://rock.mit-license.org
+ * © 2016 Denis Pushkarev
+ */
+!function(b,c,a){"use strict";!function(b){function __webpack_require__(c){if(a[c])return a[c].exports;var d=a[c]={exports:{},id:c,loaded:!1};return b[c].call(d.exports,d,d.exports,__webpack_require__),d.loaded=!0,d.exports}var a={};return __webpack_require__.m=b,__webpack_require__.c=a,__webpack_require__.p="",__webpack_require__(0)}([function(b,c,a){a(1),a(34),a(40),a(42),a(44),a(46),a(48),a(50),a(51),a(52),a(53),a(54),a(55),a(56),a(57),a(58),a(59),a(60),a(61),a(64),a(65),a(66),a(68),a(69),a(70),a(71),a(72),a(73),a(74),a(76),a(77),a(78),a(80),a(81),a(82),a(84),a(85),a(86),a(87),a(88),a(89),a(90),a(91),a(92),a(93),a(94),a(95),a(96),a(97),a(99),a(103),a(104),a(106),a(107),a(111),a(116),a(117),a(120),a(122),a(124),a(126),a(127),a(128),a(130),a(131),a(133),a(134),a(135),a(136),a(143),a(146),a(147),a(149),a(150),a(151),a(152),a(153),a(154),a(155),a(156),a(157),a(158),a(159),a(160),a(162),a(163),a(164),a(165),a(166),a(167),a(169),a(170),a(171),a(172),a(174),a(175),a(177),a(178),a(180),a(181),a(182),a(183),b.exports=a(186)},function(S,R,b){var r,d=b(2),c=b(3),x=b(8),O=b(7),o=b(14),E=b(15),n=b(17),N=b(18),J=b(19),j=b(9),p=b(20),v=b(13),I=b(16),Q=b(21),y=b(23),K=b(25),w=b(26),h=b(27),s=b(24),m=b(11)("__proto__"),g=b(28),A=b(33)(!1),B=Object.prototype,C=Array.prototype,k=C.slice,M=C.join,F=d.setDesc,L=d.getDesc,q=d.setDescs,u={};x||(r=!j(function(){return 7!=F(E("div"),"a",{get:function(){return 7}}).a}),d.setDesc=function(b,c,a){if(r)try{return F(b,c,a)}catch(d){}if("get"in a||"set"in a)throw TypeError("Accessors not supported!");return"value"in a&&(p(b)[c]=a.value),b},d.getDesc=function(a,b){if(r)try{return L(a,b)}catch(c){}return n(a,b)?O(!B.propertyIsEnumerable.call(a,b),a[b]):void 0},d.setDescs=q=function(a,b){p(a);for(var c,e=d.getKeys(b),g=e.length,f=0;g>f;)d.setDesc(a,c=e[f++],b[c]);return a}),c(c.S+c.F*!x,"Object",{getOwnPropertyDescriptor:d.getDesc,defineProperty:d.setDesc,defineProperties:q});var i="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(","),H=i.concat("length","prototype"),G=i.length,l=function(){var a,b=E("iframe"),c=G,d=">";for(b.style.display="none",o.appendChild(b),b.src="javascript:",a=b.contentWindow.document,a.open(),a.write("f;)n(e,c=a[f++])&&(~A(d,c)||d.push(c));return d}},t=function(){};c(c.S,"Object",{getPrototypeOf:d.getProto=d.getProto||function(a){return a=Q(a),n(a,m)?a[m]:"function"==typeof a.constructor&&a instanceof a.constructor?a.constructor.prototype:a instanceof Object?B:null},getOwnPropertyNames:d.getNames=d.getNames||D(H,H.length,!0),create:d.create=d.create||function(c,d){var b;return null!==c?(t.prototype=p(c),b=new t,t.prototype=null,b[m]=c):b=l(),d===a?b:q(b,d)},keys:d.getKeys=d.getKeys||D(i,G,!1)});var P=function(d,a,e){if(!(a in u)){for(var c=[],b=0;a>b;b++)c[b]="a["+b+"]";u[a]=Function("F,a","return new F("+c.join(",")+")")}return u[a](d,e)};c(c.P,"Function",{bind:function bind(c){var a=v(this),d=k.call(arguments,1),b=function(){var e=d.concat(k.call(arguments));return this instanceof b?P(a,e.length,e):J(a,e,c)};return I(a.prototype)&&(b.prototype=a.prototype),b}}),c(c.P+c.F*j(function(){o&&k.call(o)}),"Array",{slice:function(f,b){var d=h(this.length),g=N(this);if(b=b===a?d:b,"Array"==g)return k.call(this,f,b);for(var e=w(f,d),l=w(b,d),i=h(l-e),j=Array(i),c=0;i>c;c++)j[c]="String"==g?this.charAt(e+c):this[e+c];return j}}),c(c.P+c.F*(s!=Object),"Array",{join:function join(b){return M.call(s(this),b===a?",":b)}}),c(c.S,"Array",{isArray:b(30)});var z=function(a){return function(g,d){v(g);var c=s(this),e=h(c.length),b=a?e-1:0,f=a?-1:1;if(arguments.length<2)for(;;){if(b in c){d=c[b],b+=f;break}if(b+=f,a?0>b:b>=e)throw TypeError("Reduce of empty array with no initial value")}for(;a?b>=0:e>b;b+=f)b in c&&(d=g(d,c[b],b,this));return d}},f=function(a){return function(b){return a(this,b,arguments[1])}};c(c.P,"Array",{forEach:d.each=d.each||f(g(0)),map:f(g(1)),filter:f(g(2)),some:f(g(3)),every:f(g(4)),reduce:z(!1),reduceRight:z(!0),indexOf:f(A),lastIndexOf:function(d,e){var b=y(this),c=h(b.length),a=c-1;for(arguments.length>1&&(a=Math.min(a,K(e))),0>a&&(a=h(c+a));a>=0;a--)if(a in b&&b[a]===d)return a;return-1}}),c(c.S,"Date",{now:function(){return+new Date}});var e=function(a){return a>9?a:"0"+a};c(c.P+c.F*(j(function(){return"0385-07-25T07:06:39.999Z"!=new Date(-5e13-1).toISOString()})||!j(function(){new Date(NaN).toISOString()})),"Date",{toISOString:function toISOString(){if(!isFinite(this))throw RangeError("Invalid time value");var a=this,b=a.getUTCFullYear(),c=a.getUTCMilliseconds(),d=0>b?"-":b>9999?"+":"";return d+("00000"+Math.abs(b)).slice(d?-6:-4)+"-"+e(a.getUTCMonth()+1)+"-"+e(a.getUTCDate())+"T"+e(a.getUTCHours())+":"+e(a.getUTCMinutes())+":"+e(a.getUTCSeconds())+"."+(c>99?c:"0"+e(c))+"Z"}})},function(b,c){var a=Object;b.exports={create:a.create,getProto:a.getPrototypeOf,isEnum:{}.propertyIsEnumerable,getDesc:a.getOwnPropertyDescriptor,setDesc:a.defineProperty,setDescs:a.defineProperties,getKeys:a.keys,getNames:a.getOwnPropertyNames,getSymbols:a.getOwnPropertySymbols,each:[].forEach}},function(g,j,c){var b=c(4),d=c(5),h=c(6),i=c(10),f=c(12),e="prototype",a=function(k,j,o){var g,m,c,s,v=k&a.F,p=k&a.G,u=k&a.S,r=k&a.P,t=k&a.B,l=p?b:u?b[j]||(b[j]={}):(b[j]||{})[e],n=p?d:d[j]||(d[j]={}),q=n[e]||(n[e]={});p&&(o=j);for(g in o)m=!v&&l&&g in l,c=(m?l:o)[g],s=t&&m?f(c,b):r&&"function"==typeof c?f(Function.call,c):c,l&&!m&&i(l,g,c),n[g]!=c&&h(n,g,s),r&&q[g]!=c&&(q[g]=c)};b.core=d,a.F=1,a.G=2,a.S=4,a.P=8,a.B=16,a.W=32,g.exports=a},function(a,d){var b=a.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof c&&(c=b)},function(a,d){var c=a.exports={version:"1.2.6"};"number"==typeof b&&(b=c)},function(b,e,a){var c=a(2),d=a(7);b.exports=a(8)?function(a,b,e){return c.setDesc(a,b,d(1,e))}:function(a,b,c){return a[b]=c,a}},function(a,b){a.exports=function(a,b){return{enumerable:!(1&a),configurable:!(2&a),writable:!(4&a),value:b}}},function(a,c,b){a.exports=!b(9)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},function(a,b){a.exports=function(a){try{return!!a()}catch(b){return!0}}},function(f,i,a){var g=a(4),b=a(6),c=a(11)("src"),d="toString",e=Function[d],h=(""+e).split(d);a(5).inspectSource=function(a){return e.call(a)},(f.exports=function(e,a,d,f){"function"==typeof d&&(d.hasOwnProperty(c)||b(d,c,e[a]?""+e[a]:h.join(String(a))),d.hasOwnProperty("name")||b(d,"name",a)),e===g?e[a]=d:(f||delete e[a],b(e,a,d))})(Function.prototype,d,function toString(){return"function"==typeof this&&this[c]||e.call(this)})},function(b,e){var c=0,d=Math.random();b.exports=function(b){return"Symbol(".concat(b===a?"":b,")_",(++c+d).toString(36))}},function(b,e,c){var d=c(13);b.exports=function(b,c,e){if(d(b),c===a)return b;switch(e){case 1:return function(a){return b.call(c,a)};case 2:return function(a,d){return b.call(c,a,d)};case 3:return function(a,d,e){return b.call(c,a,d,e)}}return function(){return b.apply(c,arguments)}}},function(a,b){a.exports=function(a){if("function"!=typeof a)throw TypeError(a+" is not a function!");return a}},function(a,c,b){a.exports=b(4).document&&document.documentElement},function(d,f,b){var c=b(16),a=b(4).document,e=c(a)&&c(a.createElement);d.exports=function(b){return e?a.createElement(b):{}}},function(a,b){a.exports=function(a){return"object"==typeof a?null!==a:"function"==typeof a}},function(a,c){var b={}.hasOwnProperty;a.exports=function(a,c){return b.call(a,c)}},function(a,c){var b={}.toString;a.exports=function(a){return b.call(a).slice(8,-1)}},function(b,c){b.exports=function(c,b,d){var e=d===a;switch(b.length){case 0:return e?c():c.call(d);case 1:return e?c(b[0]):c.call(d,b[0]);case 2:return e?c(b[0],b[1]):c.call(d,b[0],b[1]);case 3:return e?c(b[0],b[1],b[2]):c.call(d,b[0],b[1],b[2]);case 4:return e?c(b[0],b[1],b[2],b[3]):c.call(d,b[0],b[1],b[2],b[3])}return c.apply(d,b)}},function(a,d,b){var c=b(16);a.exports=function(a){if(!c(a))throw TypeError(a+" is not an object!");return a}},function(a,d,b){var c=b(22);a.exports=function(a){return Object(c(a))}},function(b,c){b.exports=function(b){if(b==a)throw TypeError("Can't call method on "+b);return b}},function(b,e,a){var c=a(24),d=a(22);b.exports=function(a){return c(d(a))}},function(a,d,b){var c=b(18);a.exports=Object("z").propertyIsEnumerable(0)?Object:function(a){return"String"==c(a)?a.split(""):Object(a)}},function(a,d){var b=Math.ceil,c=Math.floor;a.exports=function(a){return isNaN(a=+a)?0:(a>0?c:b)(a)}},function(a,f,b){var c=b(25),d=Math.max,e=Math.min;a.exports=function(a,b){return a=c(a),0>a?d(a+b,0):e(a,b)}},function(a,e,b){var c=b(25),d=Math.min;a.exports=function(a){return a>0?d(c(a),9007199254740991):0}},function(d,i,b){var e=b(12),f=b(24),g=b(21),h=b(27),c=b(29);d.exports=function(b){var i=1==b,k=2==b,l=3==b,d=4==b,j=6==b,m=5==b||j;return function(p,v,x){for(var o,r,u=g(p),s=f(u),w=e(v,x,3),t=h(s.length),n=0,q=i?c(p,t):k?c(p,0):a;t>n;n++)if((m||n in s)&&(o=s[n],r=w(o,n,u),b))if(i)q[n]=r;else if(r)switch(b){case 3:return!0;case 5:return o;case 6:return n;case 2:q.push(o)}else if(d)return!1;return j?-1:l||d?d:q}}},function(d,g,b){var e=b(16),c=b(30),f=b(31)("species");d.exports=function(d,g){var b;return c(d)&&(b=d.constructor,"function"!=typeof b||b!==Array&&!c(b.prototype)||(b=a),e(b)&&(b=b[f],null===b&&(b=a))),new(b===a?Array:b)(g)}},function(a,d,b){var c=b(18);a.exports=Array.isArray||function(a){return"Array"==c(a)}},function(d,f,a){var c=a(32)("wks"),e=a(11),b=a(4).Symbol;d.exports=function(a){return c[a]||(c[a]=b&&b[a]||(b||e)("Symbol."+a))}},function(d,f,e){var a=e(4),b="__core-js_shared__",c=a[b]||(a[b]={});d.exports=function(a){return c[a]||(c[a]={})}},function(b,f,a){var c=a(23),d=a(27),e=a(26);b.exports=function(a){return function(j,g,k){var h,f=c(j),i=d(f.length),b=e(k,i);if(a&&g!=g){for(;i>b;)if(h=f[b++],h!=h)return!0}else for(;i>b;b++)if((a||b in f)&&f[b]===g)return a||b;return!a&&-1}}},function(W,V,b){var e=b(2),x=b(4),d=b(17),w=b(8),f=b(3),G=b(10),H=b(9),J=b(32),s=b(35),S=b(11),A=b(31),R=b(36),C=b(37),Q=b(38),P=b(30),O=b(20),p=b(23),v=b(7),I=e.getDesc,i=e.setDesc,k=e.create,z=C.get,g=x.Symbol,l=x.JSON,m=l&&l.stringify,n=!1,c=A("_hidden"),N=e.isEnum,o=J("symbol-registry"),h=J("symbols"),q="function"==typeof g,j=Object.prototype,y=w&&H(function(){return 7!=k(i({},"a",{get:function(){return i(this,"a",{value:7}).a}})).a})?function(c,a,d){var b=I(j,a);b&&delete j[a],i(c,a,d),b&&c!==j&&i(j,a,b)}:i,L=function(a){var b=h[a]=k(g.prototype);return b._k=a,w&&n&&y(j,a,{configurable:!0,set:function(b){d(this,c)&&d(this[c],a)&&(this[c][a]=!1),y(this,a,v(1,b))}}),b},r=function(a){return"symbol"==typeof a},t=function defineProperty(a,b,e){return e&&d(h,b)?(e.enumerable?(d(a,c)&&a[c][b]&&(a[c][b]=!1),e=k(e,{enumerable:v(0,!1)})):(d(a,c)||i(a,c,v(1,{})),a[c][b]=!0),y(a,b,e)):i(a,b,e)},u=function defineProperties(a,b){O(a);for(var c,d=Q(b=p(b)),e=0,f=d.length;f>e;)t(a,c=d[e++],b[c]);return a},F=function create(b,c){return c===a?k(b):u(k(b),c)},E=function propertyIsEnumerable(a){var b=N.call(this,a);return b||!d(this,a)||!d(h,a)||d(this,c)&&this[c][a]?b:!0},D=function getOwnPropertyDescriptor(a,b){var e=I(a=p(a),b);return!e||!d(h,b)||d(a,c)&&a[c][b]||(e.enumerable=!0),e},B=function getOwnPropertyNames(g){for(var a,b=z(p(g)),e=[],f=0;b.length>f;)d(h,a=b[f++])||a==c||e.push(a);return e},M=function getOwnPropertySymbols(f){for(var a,b=z(p(f)),c=[],e=0;b.length>e;)d(h,a=b[e++])&&c.push(h[a]);return c},T=function stringify(e){if(e!==a&&!r(e)){for(var b,c,d=[e],f=1,g=arguments;g.length>f;)d.push(g[f++]);return b=d[1],"function"==typeof b&&(c=b),(c||!P(b))&&(b=function(b,a){return c&&(a=c.call(this,b,a)),r(a)?void 0:a}),d[1]=b,m.apply(l,d)}},U=H(function(){var a=g();return"[null]"!=m([a])||"{}"!=m({a:a})||"{}"!=m(Object(a))});q||(g=function Symbol(){if(r(this))throw TypeError("Symbol is not a constructor");return L(S(arguments.length>0?arguments[0]:a))},G(g.prototype,"toString",function toString(){return this._k}),r=function(a){return a instanceof g},e.create=F,e.isEnum=E,e.getDesc=D,e.setDesc=t,e.setDescs=u,e.getNames=C.get=B,e.getSymbols=M,w&&!b(39)&&G(j,"propertyIsEnumerable",E,!0));var K={"for":function(a){return d(o,a+="")?o[a]:o[a]=g(a)},keyFor:function keyFor(a){return R(o,a)},useSetter:function(){n=!0},useSimple:function(){n=!1}};e.each.call("hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),function(a){var b=A(a);K[a]=q?b:L(b)}),n=!0,f(f.G+f.W,{Symbol:g}),f(f.S,"Symbol",K),f(f.S+f.F*!q,"Object",{create:F,defineProperty:t,defineProperties:u,getOwnPropertyDescriptor:D,getOwnPropertyNames:B,getOwnPropertySymbols:M}),l&&f(f.S+f.F*(!q||U),"JSON",{stringify:T}),s(g,"Symbol"),s(Math,"Math",!0),s(x.JSON,"JSON",!0)},function(c,f,a){var d=a(2).setDesc,e=a(17),b=a(31)("toStringTag");c.exports=function(a,c,f){a&&!e(a=f?a:a.prototype,b)&&d(a,b,{configurable:!0,value:c})}},function(b,e,a){var c=a(2),d=a(23);b.exports=function(g,h){for(var a,b=d(g),e=c.getKeys(b),i=e.length,f=0;i>f;)if(b[a=e[f++]]===h)return a}},function(d,h,a){var e=a(23),b=a(2).getNames,f={}.toString,c="object"==typeof window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],g=function(a){try{return b(a)}catch(d){return c.slice()}};d.exports.get=function getOwnPropertyNames(a){return c&&"[object Window]"==f.call(a)?g(a):b(e(a))}},function(b,d,c){var a=c(2);b.exports=function(b){var c=a.getKeys(b),d=a.getSymbols;if(d)for(var e,f=d(b),h=a.isEnum,g=0;f.length>g;)h.call(b,e=f[g++])&&c.push(e);return c}},function(a,b){a.exports=!1},function(c,d,b){var a=b(3);a(a.S+a.F,"Object",{assign:b(41)})},function(c,f,a){var b=a(2),d=a(21),e=a(24);c.exports=a(9)(function(){var a=Object.assign,b={},c={},d=Symbol(),e="abcdefghijklmnopqrst";return b[d]=7,e.split("").forEach(function(a){c[a]=a}),7!=a({},b)[d]||Object.keys(a({},c)).join("")!=e})?function assign(n,q){for(var g=d(n),h=arguments,o=h.length,j=1,f=b.getKeys,l=b.getSymbols,m=b.isEnum;o>j;)for(var c,a=e(h[j++]),k=l?f(a).concat(l(a)):f(a),p=k.length,i=0;p>i;)m.call(a,c=k[i++])&&(g[c]=a[c]);return g}:Object.assign},function(c,d,a){var b=a(3);b(b.S,"Object",{is:a(43)})},function(a,b){a.exports=Object.is||function is(a,b){return a===b?0!==a||1/a===1/b:a!=a&&b!=b}},function(c,d,a){var b=a(3);b(b.S,"Object",{setPrototypeOf:a(45).set})},function(d,h,b){var e=b(2).getDesc,f=b(16),g=b(20),c=function(b,a){if(g(b),!f(a)&&null!==a)throw TypeError(a+": can't set as prototype!")};d.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(f,a,d){try{d=b(12)(Function.call,e(Object.prototype,"__proto__").set,2),d(f,[]),a=!(f instanceof Array)}catch(g){a=!0}return function setPrototypeOf(b,e){return c(b,e),a?b.__proto__=e:d(b,e),b}}({},!1):a),check:c}},function(d,e,a){var c=a(47),b={};b[a(31)("toStringTag")]="z",b+""!="[object z]"&&a(10)(Object.prototype,"toString",function toString(){return"[object "+c(this)+"]"},!0)},function(d,g,c){var b=c(18),e=c(31)("toStringTag"),f="Arguments"==b(function(){return arguments}());d.exports=function(d){var c,g,h;return d===a?"Undefined":null===d?"Null":"string"==typeof(g=(c=Object(d))[e])?g:f?b(c):"Object"==(h=b(c))&&"function"==typeof c.callee?"Arguments":h}},function(c,d,a){var b=a(16);a(49)("freeze",function(a){return function freeze(c){return a&&b(c)?a(c):c}})},function(c,f,a){var b=a(3),d=a(5),e=a(9);c.exports=function(a,g){var c=(d.Object||{})[a]||Object[a],f={};f[a]=g(c),b(b.S+b.F*e(function(){c(1)}),"Object",f)}},function(c,d,a){var b=a(16);a(49)("seal",function(a){return function seal(c){return a&&b(c)?a(c):c}})},function(c,d,a){var b=a(16);a(49)("preventExtensions",function(a){return function preventExtensions(c){return a&&b(c)?a(c):c}})},function(c,d,a){var b=a(16);a(49)("isFrozen",function(a){return function isFrozen(c){return b(c)?a?a(c):!1:!0}})},function(c,d,a){var b=a(16);a(49)("isSealed",function(a){return function isSealed(c){return b(c)?a?a(c):!1:!0}})},function(c,d,a){var b=a(16);a(49)("isExtensible",function(a){return function isExtensible(c){return b(c)?a?a(c):!0:!1}})},function(c,d,a){var b=a(23);a(49)("getOwnPropertyDescriptor",function(a){return function getOwnPropertyDescriptor(c,d){return a(b(c),d)}})},function(c,d,a){var b=a(21);a(49)("getPrototypeOf",function(a){return function getPrototypeOf(c){return a(b(c))}})},function(c,d,a){var b=a(21);a(49)("keys",function(a){return function keys(c){return a(b(c))}})},function(b,c,a){a(49)("getOwnPropertyNames",function(){return a(37).get})},function(h,i,a){var c=a(2).setDesc,e=a(7),f=a(17),d=Function.prototype,g=/^\s*function ([^ (]*)/,b="name";b in d||a(8)&&c(d,b,{configurable:!0,get:function(){var a=(""+this).match(g),d=a?a[1]:"";return f(this,b)||c(this,b,e(5,d)),d}})},function(f,g,a){var b=a(2),c=a(16),d=a(31)("hasInstance"),e=Function.prototype;d in e||b.setDesc(e,d,{value:function(a){if("function"!=typeof this||!c(a))return!1;if(!c(this.prototype))return a instanceof this;for(;a=b.getProto(a);)if(this.prototype===a)return!0;return!1}})},function(q,p,b){var c=b(2),h=b(4),i=b(17),j=b(18),l=b(62),k=b(9),n=b(63).trim,d="Number",a=h[d],e=a,f=a.prototype,o=j(c.create(f))==d,m="trim"in String.prototype,g=function(i){var a=l(i,!1);if("string"==typeof a&&a.length>2){a=m?a.trim():n(a,3);var b,c,d,e=a.charCodeAt(0);if(43===e||45===e){if(b=a.charCodeAt(2),88===b||120===b)return NaN}else if(48===e){switch(a.charCodeAt(1)){case 66:case 98:c=2,d=49;break;case 79:case 111:c=8,d=55;break;default:return+a}for(var f,g=a.slice(2),h=0,j=g.length;j>h;h++)if(f=g.charCodeAt(h),48>f||f>d)return NaN;return parseInt(g,c)}}return+a};a(" 0o1")&&a("0b1")&&!a("+0x1")||(a=function Number(h){var c=arguments.length<1?0:h,b=this;return b instanceof a&&(o?k(function(){f.valueOf.call(b)}):j(b)!=d)?new e(g(c)):g(c)},c.each.call(b(8)?c.getNames(e):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),function(b){i(e,b)&&!i(a,b)&&c.setDesc(a,b,c.getDesc(e,b))}),a.prototype=f,f.constructor=a,b(10)(h,d,a))},function(b,d,c){var a=c(16);b.exports=function(b,e){if(!a(b))return b;var c,d;if(e&&"function"==typeof(c=b.toString)&&!a(d=c.call(b)))return d;if("function"==typeof(c=b.valueOf)&&!a(d=c.call(b)))return d;if(!e&&"function"==typeof(c=b.toString)&&!a(d=c.call(b)))return d;throw TypeError("Can't convert object to primitive value")}},function(g,m,b){var c=b(3),h=b(22),i=b(9),d=" \n\f\r \u2028\u2029\ufeff",a="["+d+"]",f="
",j=RegExp("^"+a+a+"*"),k=RegExp(a+a+"*$"),e=function(a,e){var b={};b[a]=e(l),c(c.P+c.F*i(function(){return!!d[a]()||f[a]()!=f}),"String",b)},l=e.trim=function(a,b){return a=String(h(a)),1&b&&(a=a.replace(j,"")),2&b&&(a=a.replace(k,"")),a};g.exports=e},function(c,d,b){var a=b(3);a(a.S,"Number",{EPSILON:Math.pow(2,-52)})},function(d,e,a){var b=a(3),c=a(4).isFinite;b(b.S,"Number",{isFinite:function isFinite(a){return"number"==typeof a&&c(a)}})},function(c,d,a){var b=a(3);b(b.S,"Number",{isInteger:a(67)})},function(a,e,b){var c=b(16),d=Math.floor;a.exports=function isInteger(a){return!c(a)&&isFinite(a)&&d(a)===a}},function(c,d,b){var a=b(3);a(a.S,"Number",{isNaN:function isNaN(a){return a!=a}})},function(e,f,a){var b=a(3),c=a(67),d=Math.abs;b(b.S,"Number",{isSafeInteger:function isSafeInteger(a){return c(a)&&d(a)<=9007199254740991}})},function(c,d,b){var a=b(3);a(a.S,"Number",{MAX_SAFE_INTEGER:9007199254740991})},function(c,d,b){var a=b(3);a(a.S,"Number",{MIN_SAFE_INTEGER:-9007199254740991})},function(c,d,b){var a=b(3);a(a.S,"Number",{parseFloat:parseFloat})},function(c,d,b){var a=b(3);a(a.S,"Number",{parseInt:parseInt})},function(f,g,b){var a=b(3),e=b(75),c=Math.sqrt,d=Math.acosh;a(a.S+a.F*!(d&&710==Math.floor(d(Number.MAX_VALUE))),"Math",{acosh:function acosh(a){return(a=+a)<1?NaN:a>94906265.62425156?Math.log(a)+Math.LN2:e(a-1+c(a-1)*c(a+1))}})},function(a,b){a.exports=Math.log1p||function log1p(a){return(a=+a)>-1e-8&&1e-8>a?a-a*a/2:Math.log(1+a)}},function(c,d,b){function asinh(a){return isFinite(a=+a)&&0!=a?0>a?-asinh(-a):Math.log(a+Math.sqrt(a*a+1)):a}var a=b(3);a(a.S,"Math",{asinh:asinh})},function(c,d,b){var a=b(3);a(a.S,"Math",{atanh:function atanh(a){return 0==(a=+a)?a:Math.log((1+a)/(1-a))/2}})},function(d,e,a){var b=a(3),c=a(79);b(b.S,"Math",{cbrt:function cbrt(a){return c(a=+a)*Math.pow(Math.abs(a),1/3)}})},function(a,b){a.exports=Math.sign||function sign(a){return 0==(a=+a)||a!=a?a:0>a?-1:1}},function(c,d,b){var a=b(3);a(a.S,"Math",{clz32:function clz32(a){return(a>>>=0)?31-Math.floor(Math.log(a+.5)*Math.LOG2E):32}})},function(d,e,c){var a=c(3),b=Math.exp;a(a.S,"Math",{cosh:function cosh(a){return(b(a=+a)+b(-a))/2}})},function(c,d,a){var b=a(3);b(b.S,"Math",{expm1:a(83)})},function(a,b){a.exports=Math.expm1||function expm1(a){return 0==(a=+a)?a:a>-1e-6&&1e-6>a?a+a*a/2:Math.exp(a)-1}},function(k,j,e){var f=e(3),g=e(79),a=Math.pow,d=a(2,-52),b=a(2,-23),i=a(2,127)*(2-b),c=a(2,-126),h=function(a){return a+1/d-1/d};f(f.S,"Math",{fround:function fround(k){var f,a,e=Math.abs(k),j=g(k);return c>e?j*h(e/c/b)*c*b:(f=(1+b/d)*e,a=f-(f-e),a>i||a!=a?j*(1/0):j*a)}})},function(d,e,b){var a=b(3),c=Math.abs;a(a.S,"Math",{hypot:function hypot(i,j){for(var a,b,e=0,f=0,g=arguments,h=g.length,d=0;h>f;)a=c(g[f++]),a>d?(b=d/a,e=e*b*b+1,d=a):a>0?(b=a/d,e+=b*b):e+=a;return d===1/0?1/0:d*Math.sqrt(e)}})},function(d,e,b){var a=b(3),c=Math.imul;a(a.S+a.F*b(9)(function(){return-5!=c(4294967295,5)||2!=c.length}),"Math",{imul:function imul(f,g){var a=65535,b=+f,c=+g,d=a&b,e=a&c;return 0|d*e+((a&b>>>16)*e+d*(a&c>>>16)<<16>>>0)}})},function(c,d,b){var a=b(3);a(a.S,"Math",{log10:function log10(a){return Math.log(a)/Math.LN10}})},function(c,d,a){var b=a(3);b(b.S,"Math",{log1p:a(75)})},function(c,d,b){var a=b(3);a(a.S,"Math",{log2:function log2(a){return Math.log(a)/Math.LN2}})},function(c,d,a){var b=a(3);b(b.S,"Math",{sign:a(79)})},function(e,f,a){var b=a(3),c=a(83),d=Math.exp;b(b.S+b.F*a(9)(function(){return-2e-17!=!Math.sinh(-2e-17)}),"Math",{sinh:function sinh(a){return Math.abs(a=+a)<1?(c(a)-c(-a))/2:(d(a-1)-d(-a-1))*(Math.E/2)}})},function(e,f,a){var b=a(3),c=a(83),d=Math.exp;b(b.S,"Math",{tanh:function tanh(a){var b=c(a=+a),e=c(-a);return b==1/0?1:e==1/0?-1:(b-e)/(d(a)+d(-a))}})},function(c,d,b){var a=b(3);a(a.S,"Math",{trunc:function trunc(a){return(a>0?Math.floor:Math.ceil)(a)}})},function(f,g,b){var a=b(3),e=b(26),c=String.fromCharCode,d=String.fromCodePoint;a(a.S+a.F*(!!d&&1!=d.length),"String",{fromCodePoint:function fromCodePoint(h){for(var a,b=[],d=arguments,g=d.length,f=0;g>f;){if(a=+d[f++],e(a,1114111)!==a)throw RangeError(a+" is not a valid code point");b.push(65536>a?c(a):c(((a-=65536)>>10)+55296,a%1024+56320))}return b.join("")}})},function(e,f,a){var b=a(3),c=a(23),d=a(27);b(b.S,"String",{raw:function raw(g){for(var e=c(g.raw),h=d(e.length),f=arguments,i=f.length,b=[],a=0;h>a;)b.push(String(e[a++])),i>a&&b.push(String(f[a]));return b.join("")}})},function(b,c,a){a(63)("trim",function(a){return function trim(){return a(this,3)}})},function(d,e,a){var b=a(3),c=a(98)(!1);b(b.P,"String",{codePointAt:function codePointAt(a){return c(this,a)}})},function(c,f,b){var d=b(25),e=b(22);c.exports=function(b){return function(j,k){var f,h,g=String(e(j)),c=d(k),i=g.length;return 0>c||c>=i?b?"":a:(f=g.charCodeAt(c),55296>f||f>56319||c+1===i||(h=g.charCodeAt(c+1))<56320||h>57343?b?g.charAt(c):f:b?g.slice(c,c+2):(f-55296<<10)+(h-56320)+65536)}}},function(h,i,b){var c=b(3),e=b(27),g=b(100),d="endsWith",f=""[d];c(c.P+c.F*b(102)(d),"String",{endsWith:function endsWith(i){var b=g(this,i,d),j=arguments,k=j.length>1?j[1]:a,l=e(b.length),c=k===a?l:Math.min(e(k),l),h=String(i);return f?f.call(b,h,c):b.slice(c-h.length,c)===h}})},function(b,e,a){var c=a(101),d=a(22);b.exports=function(a,b,e){if(c(b))throw TypeError("String#"+e+" doesn't accept regex!");return String(d(a))}},function(c,g,b){var d=b(16),e=b(18),f=b(31)("match");c.exports=function(b){var c;return d(b)&&((c=b[f])!==a?!!c:"RegExp"==e(b))}},function(a,d,b){var c=b(31)("match");a.exports=function(b){var a=/./;try{"/./"[b](a)}catch(d){try{return a[c]=!1,!"/./"[b](a)}catch(e){}}return!0}},function(f,g,b){var c=b(3),e=b(100),d="includes";c(c.P+c.F*b(102)(d),"String",{includes:function includes(b){return!!~e(this,b,d).indexOf(b,arguments.length>1?arguments[1]:a)}})},function(c,d,a){var b=a(3);b(b.P,"String",{repeat:a(105)})},function(b,e,a){var c=a(25),d=a(22);b.exports=function repeat(f){var b=String(d(this)),e="",a=c(f);if(0>a||a==1/0)throw RangeError("Count can't be negative");for(;a>0;(a>>>=1)&&(b+=b))1&a&&(e+=b);return e}},function(h,i,b){var c=b(3),f=b(27),g=b(100),d="startsWith",e=""[d];c(c.P+c.F*b(102)(d),"String",{startsWith:function startsWith(i){var b=g(this,i,d),j=arguments,c=f(Math.min(j.length>1?j[1]:a,b.length)),h=String(i);return e?e.call(b,h,c):b.slice(c,c+h.length)===h}})},function(d,e,b){var c=b(98)(!0);b(108)(String,"String",function(a){this._t=String(a),this._i=0},function(){var b,d=this._t,e=this._i;return e>=d.length?{value:a,done:!0}:(b=c(d,e),this._i+=b.length,{value:b,done:!1})})},function(o,r,a){var i=a(39),d=a(3),n=a(10),h=a(6),m=a(17),f=a(109),q=a(110),p=a(35),l=a(2).getProto,c=a(31)("iterator"),e=!([].keys&&"next"in[].keys()),j="@@iterator",k="keys",b="values",g=function(){return this};o.exports=function(B,v,u,F,s,E,A){q(u,v,F);var r,x,w=function(c){if(!e&&c in a)return a[c];switch(c){case k:return function keys(){return new u(this,c)};case b:return function values(){return new u(this,c)}}return function entries(){return new u(this,c)}},C=v+" Iterator",y=s==b,z=!1,a=B.prototype,t=a[c]||a[j]||s&&a[s],o=t||w(s);if(t){var D=l(o.call(new B));p(D,C,!0),!i&&m(a,j)&&h(D,c,g),y&&t.name!==b&&(z=!0,o=function values(){return t.call(this)})}if(i&&!A||!e&&!z&&a[c]||h(a,c,o),f[v]=o,f[C]=g,s)if(r={values:y?o:w(b),keys:E?o:w(k),entries:y?w("entries"):o},A)for(x in r)x in a||n(a,x,r[x]);else d(d.P+d.F*(e||z),v,r);return r}},function(a,b){a.exports={}},function(c,g,a){var d=a(2),e=a(7),f=a(35),b={};a(6)(b,a(31)("iterator"),function(){return this}),c.exports=function(a,c,g){a.prototype=d.create(b,{next:e(1,g)}),f(a,c+" Iterator")}},function(j,k,b){var d=b(12),c=b(3),e=b(21),f=b(112),g=b(113),h=b(27),i=b(114);c(c.S+c.F*!b(115)(function(a){Array.from(a)}),"Array",{from:function from(t){var n,c,r,m,j=e(t),l="function"==typeof this?this:Array,p=arguments,s=p.length,k=s>1?p[1]:a,q=k!==a,b=0,o=i(j);if(q&&(k=d(k,s>2?p[2]:a,2)),o==a||l==Array&&g(o))for(n=h(j.length),c=new l(n);n>b;b++)c[b]=q?k(j[b],b):j[b];else for(m=o.call(j),c=new l;!(r=m.next()).done;b++)c[b]=q?f(m,k,[r.value,b],!0):r.value;return c.length=b,c}})},function(c,e,d){var b=d(20);c.exports=function(d,e,c,g){try{return g?e(b(c)[0],c[1]):e(c)}catch(h){var f=d["return"];throw f!==a&&b(f.call(d)),h}}},function(c,g,b){var d=b(109),e=b(31)("iterator"),f=Array.prototype;c.exports=function(b){return b!==a&&(d.Array===b||f[e]===b)}},function(c,g,b){var d=b(47),e=b(31)("iterator"),f=b(109);c.exports=b(5).getIteratorMethod=function(b){return b!=a?b[e]||b["@@iterator"]||f[d(b)]:void 0}},function(d,f,e){var a=e(31)("iterator"),b=!1;try{var c=[7][a]();c["return"]=function(){b=!0},Array.from(c,function(){throw 2})}catch(g){}d.exports=function(f,g){if(!g&&!b)return!1;var d=!1;try{var c=[7],e=c[a]();e.next=function(){return{done:d=!0}},c[a]=function(){return e},f(c)}catch(h){}return d}},function(c,d,b){var a=b(3);a(a.S+a.F*b(9)(function(){function F(){}return!(Array.of.call(F)instanceof F)}),"Array",{of:function of(){for(var a=0,d=arguments,b=d.length,c=new("function"==typeof this?this:Array)(b);b>a;)c[a]=d[a++];return c.length=b,c}})},function(f,h,b){var d=b(118),c=b(119),e=b(109),g=b(23);f.exports=b(108)(Array,"Array",function(a,b){this._t=g(a),this._i=0,this._k=b},function(){var d=this._t,e=this._k,b=this._i++;return!d||b>=d.length?(this._t=a,c(1)):"keys"==e?c(0,b):"values"==e?c(0,d[b]):c(0,[b,d[b]])},"values"),e.Arguments=e.Array,d("keys"),d("values"),d("entries")},function(e,f,d){var b=d(31)("unscopables"),c=Array.prototype;c[b]==a&&d(6)(c,b,{}),e.exports=function(a){c[b][a]=!0}},function(a,b){a.exports=function(a,b){return{value:b,done:!!a}}},function(b,c,a){a(121)("Array")},function(c,g,a){var d=a(4),e=a(2),f=a(8),b=a(31)("species");c.exports=function(c){var a=d[c];f&&a&&!a[b]&&e.setDesc(a,b,{configurable:!0,get:function(){return this}})}},function(c,d,a){var b=a(3);b(b.P,"Array",{copyWithin:a(123)}),a(118)("copyWithin")},function(d,g,b){var e=b(21),c=b(26),f=b(27);d.exports=[].copyWithin||function copyWithin(m,n){var g=e(this),h=f(g.length),b=c(m,h),d=c(n,h),k=arguments,l=k.length>2?k[2]:a,i=Math.min((l===a?h:c(l,h))-d,h-b),j=1;for(b>d&&d+i>b&&(j=-1,d+=i-1,b+=i-1);i-->0;)d in g?g[b]=g[d]:delete g[b],b+=j,d+=j;return g}},function(c,d,a){var b=a(3);b(b.P,"Array",{fill:a(125)}),a(118)("fill")},function(d,g,b){var e=b(21),c=b(26),f=b(27);d.exports=[].fill||function fill(k){for(var b=e(this),d=f(b.length),g=arguments,h=g.length,i=c(h>1?g[1]:a,d),j=h>2?g[2]:a,l=j===a?d:c(j,d);l>i;)b[i++]=k;return b}},function(g,h,b){var c=b(3),f=b(28)(5),d="find",e=!0;d in[]&&Array(1)[d](function(){e=!1}),c(c.P+c.F*e,"Array",{find:function find(b){return f(this,b,arguments.length>1?arguments[1]:a)}}),b(118)(d)},function(g,h,b){var c=b(3),f=b(28)(6),d="findIndex",e=!0;d in[]&&Array(1)[d](function(){e=!1}),c(c.P+c.F*e,"Array",{findIndex:function findIndex(b){return f(this,b,arguments.length>1?arguments[1]:a)}}),b(118)(d)},function(n,m,c){var f=c(2),i=c(4),k=c(101),l=c(129),b=i.RegExp,d=b,j=b.prototype,e=/a/g,g=/a/g,h=new b(e)!==e;!c(8)||h&&!c(9)(function(){return g[c(31)("match")]=!1,b(e)!=e||b(g)==g||"/a/i"!=b(e,"i")})||(b=function RegExp(c,f){var e=k(c),g=f===a;return this instanceof b||!e||c.constructor!==b||!g?h?new d(e&&!g?c.source:c,f):d((e=c instanceof b)?c.source:c,e&&g?l.call(c):f):c},f.each.call(f.getNames(d),function(a){a in b||f.setDesc(b,a,{configurable:!0,get:function(){return d[a]},set:function(b){d[a]=b}})}),j.constructor=b,b.prototype=j,c(10)(i,"RegExp",b)),c(121)("RegExp")},function(a,d,b){var c=b(20);a.exports=function(){var b=c(this),a="";return b.global&&(a+="g"),b.ignoreCase&&(a+="i"),b.multiline&&(a+="m"),b.unicode&&(a+="u"),b.sticky&&(a+="y"),a}},function(c,d,a){var b=a(2);a(8)&&"g"!=/./g.flags&&b.setDesc(RegExp.prototype,"flags",{configurable:!0,get:a(129)})},function(c,d,b){b(132)("match",1,function(c,b){return function match(d){var e=c(this),f=d==a?a:d[b];return f!==a?f.call(d,e):new RegExp(d)[b](String(e))}})},function(b,h,a){var c=a(6),d=a(10),e=a(9),f=a(22),g=a(31);b.exports=function(a,i,j){var b=g(a),h=""[a];e(function(){var c={};return c[b]=function(){return 7},7!=""[a](c)})&&(d(String.prototype,a,j(f,b,h)),c(RegExp.prototype,b,2==i?function(a,b){return h.call(a,this,b)}:function(a){return h.call(a,this)}))}},function(c,d,b){b(132)("replace",2,function(b,c,d){return function replace(e,f){var g=b(this),h=e==a?a:e[c];return h!==a?h.call(e,g,f):d.call(String(g),e,f)}})},function(c,d,b){b(132)("search",1,function(c,b){return function search(d){var e=c(this),f=d==a?a:d[b];return f!==a?f.call(d,e):new RegExp(d)[b](String(e))}})},function(c,d,b){b(132)("split",2,function(b,c,d){return function split(e,f){var g=b(this),h=e==a?a:e[c];return h!==a?h.call(e,g,f):d.call(String(g),e,f)}})},function(K,J,b){var s,l=b(2),F=b(39),k=b(4),j=b(12),I=b(47),d=b(3),D=b(16),E=b(20),m=b(13),G=b(137),p=b(138),q=b(45).set,A=b(43),B=b(31)("species"),z=b(139),v=b(140),e="Promise",o=k.process,H="process"==I(o),c=k[e],i=function(){},r=function(d){var b,a=new c(i);return d&&(a.constructor=function(a){a(i,i)}),(b=c.resolve(a))["catch"](i),b===a},h=function(){function P2(b){var a=new c(b);return q(a,P2.prototype),a}var a=!1;try{if(a=c&&c.resolve&&r(),q(P2,c),P2.prototype=l.create(c.prototype,{constructor:{value:P2}}),P2.resolve(5).then(function(){})instanceof P2||(a=!1),
+a&&b(8)){var d=!1;c.resolve(l.setDesc({},"then",{get:function(){d=!0}})),a=d}}catch(e){a=!1}return a}(),C=function(a,b){return F&&a===c&&b===s?!0:A(a,b)},t=function(b){var c=E(b)[B];return c!=a?c:b},u=function(a){var b;return D(a)&&"function"==typeof(b=a.then)?b:!1},g=function(d){var b,c;this.promise=new d(function(d,e){if(b!==a||c!==a)throw TypeError("Bad Promise constructor");b=d,c=e}),this.resolve=m(b),this.reject=m(c)},w=function(a){try{a()}catch(b){return{error:b}}},n=function(b,d){if(!b.n){b.n=!0;var c=b.c;v(function(){for(var e=b.v,f=1==b.s,g=0,h=function(a){var c,h,g=f?a.ok:a.fail,i=a.resolve,d=a.reject;try{g?(f||(b.h=!0),c=g===!0?e:g(e),c===a.promise?d(TypeError("Promise-chain cycle")):(h=u(c))?h.call(c,i,d):i(c)):d(e)}catch(j){d(j)}};c.length>g;)h(c[g++]);c.length=0,b.n=!1,d&&setTimeout(function(){var f,c,d=b.p;y(d)&&(H?o.emit("unhandledRejection",e,d):(f=k.onunhandledrejection)?f({promise:d,reason:e}):(c=k.console)&&c.error&&c.error("Unhandled promise rejection",e)),b.a=a},1)})}},y=function(e){var a,b=e._d,c=b.a||b.c,d=0;if(b.h)return!1;for(;c.length>d;)if(a=c[d++],a.fail||!y(a.promise))return!1;return!0},f=function(b){var a=this;a.d||(a.d=!0,a=a.r||a,a.v=b,a.s=2,a.a=a.c.slice(),n(a,!0))},x=function(b){var c,a=this;if(!a.d){a.d=!0,a=a.r||a;try{if(a.p===b)throw TypeError("Promise can't be resolved itself");(c=u(b))?v(function(){var d={r:a,d:!1};try{c.call(b,j(x,d,1),j(f,d,1))}catch(e){f.call(d,e)}}):(a.v=b,a.s=1,n(a,!1))}catch(d){f.call({r:a,d:!1},d)}}};h||(c=function Promise(d){m(d);var b=this._d={p:G(this,c,e),c:[],a:a,s:0,d:!1,v:a,h:!1,n:!1};try{d(j(x,b,1),j(f,b,1))}catch(g){f.call(b,g)}},b(142)(c.prototype,{then:function then(d,e){var a=new g(z(this,c)),f=a.promise,b=this._d;return a.ok="function"==typeof d?d:!0,a.fail="function"==typeof e&&e,b.c.push(a),b.a&&b.a.push(a),b.s&&n(b,!1),f},"catch":function(b){return this.then(a,b)}})),d(d.G+d.W+d.F*!h,{Promise:c}),b(35)(c,e),b(121)(e),s=b(5)[e],d(d.S+d.F*!h,e,{reject:function reject(b){var a=new g(this),c=a.reject;return c(b),a.promise}}),d(d.S+d.F*(!h||r(!0)),e,{resolve:function resolve(a){if(a instanceof c&&C(a.constructor,this))return a;var b=new g(this),d=b.resolve;return d(a),b.promise}}),d(d.S+d.F*!(h&&b(115)(function(a){c.all(a)["catch"](function(){})})),e,{all:function all(h){var c=t(this),b=new g(c),d=b.resolve,e=b.reject,a=[],f=w(function(){p(h,!1,a.push,a);var b=a.length,f=Array(b);b?l.each.call(a,function(g,h){var a=!1;c.resolve(g).then(function(c){a||(a=!0,f[h]=c,--b||d(f))},e)}):d(f)});return f&&e(f.error),b.promise},race:function race(e){var b=t(this),a=new g(b),c=a.reject,d=w(function(){p(e,!1,function(d){b.resolve(d).then(a.resolve,c)})});return d&&c(d.error),a.promise}})},function(a,b){a.exports=function(a,b,c){if(!(a instanceof b))throw TypeError(c+": use the 'new' operator!");return a}},function(b,i,a){var c=a(12),d=a(112),e=a(113),f=a(20),g=a(27),h=a(114);b.exports=function(a,j,o,p){var n,b,k,l=h(a),m=c(o,p,j?2:1),i=0;if("function"!=typeof l)throw TypeError(a+" is not iterable!");if(e(l))for(n=g(a.length);n>i;i++)j?m(f(b=a[i])[0],b[1]):m(a[i]);else for(k=l.call(a);!(b=k.next()).done;)d(k,m,b.value,j)}},function(d,g,b){var c=b(20),e=b(13),f=b(31)("species");d.exports=function(g,h){var b,d=c(g).constructor;return d===a||(b=c(d)[f])==a?h:e(b)}},function(n,p,h){var b,f,g,c=h(4),o=h(141).set,k=c.MutationObserver||c.WebKitMutationObserver,d=c.process,i=c.Promise,j="process"==h(18)(d),e=function(){var e,c,g;for(j&&(e=d.domain)&&(d.domain=null,e.exit());b;)c=b.domain,g=b.fn,c&&c.enter(),g(),c&&c.exit(),b=b.next;f=a,e&&e.enter()};if(j)g=function(){d.nextTick(e)};else if(k){var m=1,l=document.createTextNode("");new k(e).observe(l,{characterData:!0}),g=function(){l.data=m=-m}}else g=i&&i.resolve?function(){i.resolve().then(e)}:function(){o.call(c,e)};n.exports=function asap(e){var c={fn:e,next:a,domain:j&&d.domain};f&&(f.next=c),b||(b=c,g()),f=c}},function(s,t,b){var c,g,f,k=b(12),r=b(19),n=b(14),p=b(15),a=b(4),l=a.process,h=a.setImmediate,i=a.clearImmediate,o=a.MessageChannel,j=0,d={},q="onreadystatechange",e=function(){var a=+this;if(d.hasOwnProperty(a)){var b=d[a];delete d[a],b()}},m=function(a){e.call(a.data)};h&&i||(h=function setImmediate(a){for(var b=[],e=1;arguments.length>e;)b.push(arguments[e++]);return d[++j]=function(){r("function"==typeof a?a:Function(a),b)},c(j),j},i=function clearImmediate(a){delete d[a]},"process"==b(18)(l)?c=function(a){l.nextTick(k(e,a,1))}:o?(g=new o,f=g.port2,g.port1.onmessage=m,c=k(f.postMessage,f,1)):a.addEventListener&&"function"==typeof postMessage&&!a.importScripts?(c=function(b){a.postMessage(b+"","*")},a.addEventListener("message",m,!1)):c=q in p("script")?function(a){n.appendChild(p("script"))[q]=function(){n.removeChild(this),e.call(a)}}:function(a){setTimeout(k(e,a,1),0)}),s.exports={set:h,clear:i}},function(a,d,b){var c=b(10);a.exports=function(a,b){for(var d in b)c(a,d,b[d]);return a}},function(d,e,c){var b=c(144);c(145)("Map",function(b){return function Map(){return b(this,arguments.length>0?arguments[0]:a)}},{get:function get(c){var a=b.getEntry(this,c);return a&&a.v},set:function set(a,c){return b.def(this,0===a?0:a,c)}},b,!0)},function(v,w,b){var j=b(2),m=b(6),o=b(142),n=b(12),p=b(137),r=b(22),t=b(138),l=b(108),d=b(119),f=b(11)("id"),k=b(17),h=b(16),q=b(121),i=b(8),s=Object.isExtensible||h,c=i?"_s":"size",u=0,g=function(a,b){if(!h(a))return"symbol"==typeof a?a:("string"==typeof a?"S":"P")+a;if(!k(a,f)){if(!s(a))return"F";if(!b)return"E";m(a,f,++u)}return"O"+a[f]},e=function(b,c){var a,d=g(c);if("F"!==d)return b._i[d];for(a=b._f;a;a=a.n)if(a.k==c)return a};v.exports={getConstructor:function(d,f,g,h){var b=d(function(d,e){p(d,b,f),d._i=j.create(null),d._f=a,d._l=a,d[c]=0,e!=a&&t(e,g,d[h],d)});return o(b.prototype,{clear:function clear(){for(var d=this,e=d._i,b=d._f;b;b=b.n)b.r=!0,b.p&&(b.p=b.p.n=a),delete e[b.i];d._f=d._l=a,d[c]=0},"delete":function(g){var b=this,a=e(b,g);if(a){var d=a.n,f=a.p;delete b._i[a.i],a.r=!0,f&&(f.n=d),d&&(d.p=f),b._f==a&&(b._f=d),b._l==a&&(b._l=f),b[c]--}return!!a},forEach:function forEach(c){for(var b,d=n(c,arguments.length>1?arguments[1]:a,3);b=b?b.n:this._f;)for(d(b.v,b.k,this);b&&b.r;)b=b.p},has:function has(a){return!!e(this,a)}}),i&&j.setDesc(b.prototype,"size",{get:function(){return r(this[c])}}),b},def:function(b,f,j){var h,i,d=e(b,f);return d?d.v=j:(b._l=d={i:i=g(f,!0),k:f,v:j,p:h=b._l,n:a,r:!1},b._f||(b._f=d),h&&(h.n=d),b[c]++,"F"!==i&&(b._i[i]=d)),b},getEntry:e,setStrong:function(e,b,c){l(e,b,function(b,c){this._t=b,this._k=c,this._l=a},function(){for(var c=this,e=c._k,b=c._l;b&&b.r;)b=b.p;return c._t&&(c._l=b=b?b.n:c._t._f)?"keys"==e?d(0,b.k):"values"==e?d(0,b.v):d(0,[b.k,b.v]):(c._t=a,d(1))},c?"entries":"values",!c,!0),q(b)}}},function(l,n,b){var k=b(4),c=b(3),g=b(10),f=b(142),i=b(138),j=b(137),d=b(16),e=b(9),h=b(115),m=b(35);l.exports=function(o,v,y,x,p,l){var t=k[o],b=t,s=p?"set":"add",n=b&&b.prototype,w={},r=function(b){var c=n[b];g(n,b,"delete"==b?function(a){return l&&!d(a)?!1:c.call(this,0===a?0:a)}:"has"==b?function has(a){return l&&!d(a)?!1:c.call(this,0===a?0:a)}:"get"==b?function get(b){return l&&!d(b)?a:c.call(this,0===b?0:b)}:"add"==b?function add(a){return c.call(this,0===a?0:a),this}:function set(a,b){return c.call(this,0===a?0:a,b),this})};if("function"==typeof b&&(l||n.forEach&&!e(function(){(new b).entries().next()}))){var u,q=new b,z=q[s](l?{}:-0,1)!=q,A=e(function(){q.has(1)}),B=h(function(a){new b(a)});B||(b=v(function(e,d){j(e,b,o);var c=new t;return d!=a&&i(d,p,c[s],c),c}),b.prototype=n,n.constructor=b),l||q.forEach(function(b,a){u=1/a===-(1/0)}),(A||u)&&(r("delete"),r("has"),p&&r("get")),(u||z)&&r(s),l&&n.clear&&delete n.clear}else b=x.getConstructor(v,o,p,s),f(b.prototype,y);return m(b,o),w[o]=b,c(c.G+c.W+c.F*(b!=t),w),l||x.setStrong(b,o,p),b}},function(d,e,b){var c=b(144);b(145)("Set",function(b){return function Set(){return b(this,arguments.length>0?arguments[0]:a)}},{add:function add(a){return c.def(this,a=0===a?0:a,a)}},c)},function(n,m,b){var l=b(2),k=b(10),c=b(148),d=b(16),j=b(17),i=c.frozenStore,h=c.WEAK,f=Object.isExtensible||d,e={},g=b(145)("WeakMap",function(b){return function WeakMap(){return b(this,arguments.length>0?arguments[0]:a)}},{get:function get(a){if(d(a)){if(!f(a))return i(this).get(a);if(j(a,h))return a[h][this._i]}},set:function set(a,b){return c.def(this,a,b)}},c,!0,!0);7!=(new g).set((Object.freeze||Object)(e),7).get(e)&&l.each.call(["delete","has","get","set"],function(a){var b=g.prototype,c=b[a];k(b,a,function(b,e){if(d(b)&&!f(b)){var g=i(this)[a](b,e);return"set"==a?this:g}return c.call(this,b,e)})})},function(s,t,b){var r=b(6),q=b(142),m=b(20),h=b(16),l=b(137),k=b(138),j=b(28),d=b(17),c=b(11)("weak"),g=Object.isExtensible||h,n=j(5),o=j(6),p=0,e=function(a){return a._l||(a._l=new i)},i=function(){this.a=[]},f=function(a,b){return n(a.a,function(a){return a[0]===b})};i.prototype={get:function(b){var a=f(this,b);return a?a[1]:void 0},has:function(a){return!!f(this,a)},set:function(a,b){var c=f(this,a);c?c[1]=b:this.a.push([a,b])},"delete":function(b){var a=o(this.a,function(a){return a[0]===b});return~a&&this.a.splice(a,1),!!~a}},s.exports={getConstructor:function(f,i,j,m){var b=f(function(c,d){l(c,b,i),c._i=p++,c._l=a,d!=a&&k(d,j,c[m],c)});return q(b.prototype,{"delete":function(a){return h(a)?g(a)?d(a,c)&&d(a[c],this._i)&&delete a[c][this._i]:e(this)["delete"](a):!1},has:function has(a){return h(a)?g(a)?d(a,c)&&d(a[c],this._i):e(this).has(a):!1}}),b},def:function(b,a,f){return g(m(a))?(d(a,c)||r(a,c,{}),a[c][b._i]=f):e(b).set(a,f),b},frozenStore:e,WEAK:c}},function(d,e,b){var c=b(148);b(145)("WeakSet",function(b){return function WeakSet(){return b(this,arguments.length>0?arguments[0]:a)}},{add:function add(a){return c.def(this,a,!0)}},c,!1,!0)},function(e,f,a){var b=a(3),c=Function.apply,d=a(20);b(b.S,"Reflect",{apply:function apply(a,b,e){return c.call(a,b,d(e))}})},function(h,i,a){var e=a(2),b=a(3),c=a(13),f=a(20),d=a(16),g=Function.bind||a(5).Function.prototype.bind;b(b.S+b.F*a(9)(function(){function F(){}return!(Reflect.construct(function(){},[],F)instanceof F)}),"Reflect",{construct:function construct(b,a){c(b),f(a);var i=arguments.length<3?b:c(arguments[2]);if(b==i){switch(a.length){case 0:return new b;case 1:return new b(a[0]);case 2:return new b(a[0],a[1]);case 3:return new b(a[0],a[1],a[2]);case 4:return new b(a[0],a[1],a[2],a[3])}var h=[null];return h.push.apply(h,a),new(g.apply(b,h))}var j=i.prototype,k=e.create(d(j)?j:Object.prototype),l=Function.apply.call(b,k,a);return d(l)?l:k}})},function(e,f,a){var c=a(2),b=a(3),d=a(20);b(b.S+b.F*a(9)(function(){Reflect.defineProperty(c.setDesc({},1,{value:1}),1,{value:2})}),"Reflect",{defineProperty:function defineProperty(a,b,e){d(a);try{return c.setDesc(a,b,e),!0}catch(f){return!1}}})},function(e,f,a){var b=a(3),c=a(2).getDesc,d=a(20);b(b.S,"Reflect",{deleteProperty:function deleteProperty(a,b){var e=c(d(a),b);return e&&!e.configurable?!1:delete a[b]}})},function(f,g,b){var c=b(3),e=b(20),d=function(a){this._t=e(a),this._i=0;var b,c=this._k=[];for(b in a)c.push(b)};b(110)(d,"Object",function(){var c,b=this,d=b._k;do if(b._i>=d.length)return{value:a,done:!0};while(!((c=d[b._i++])in b._t));return{value:c,done:!1}}),c(c.S,"Reflect",{enumerate:function enumerate(a){return new d(a)}})},function(h,i,b){function get(b,h){var d,j,i=arguments.length<3?b:arguments[2];return g(b)===i?b[h]:(d=c.getDesc(b,h))?e(d,"value")?d.value:d.get!==a?d.get.call(i):a:f(j=c.getProto(b))?get(j,h,i):void 0}var c=b(2),e=b(17),d=b(3),f=b(16),g=b(20);d(d.S,"Reflect",{get:get})},function(e,f,a){var c=a(2),b=a(3),d=a(20);b(b.S,"Reflect",{getOwnPropertyDescriptor:function getOwnPropertyDescriptor(a,b){return c.getDesc(d(a),b)}})},function(e,f,a){var b=a(3),c=a(2).getProto,d=a(20);b(b.S,"Reflect",{getPrototypeOf:function getPrototypeOf(a){return c(d(a))}})},function(c,d,b){var a=b(3);a(a.S,"Reflect",{has:function has(a,b){return b in a}})},function(e,f,a){var b=a(3),d=a(20),c=Object.isExtensible;b(b.S,"Reflect",{isExtensible:function isExtensible(a){return d(a),c?c(a):!0}})},function(c,d,a){var b=a(3);b(b.S,"Reflect",{ownKeys:a(161)})},function(d,f,a){var b=a(2),e=a(20),c=a(4).Reflect;d.exports=c&&c.ownKeys||function ownKeys(a){var c=b.getNames(e(a)),d=b.getSymbols;return d?c.concat(d(a)):c}},function(e,f,a){var b=a(3),d=a(20),c=Object.preventExtensions;b(b.S,"Reflect",{preventExtensions:function preventExtensions(a){d(a);try{return c&&c(a),!0}catch(b){return!1}}})},function(i,j,b){function set(j,i,k){var l,m,d=arguments.length<4?j:arguments[3],b=c.getDesc(h(j),i);if(!b){if(f(m=c.getProto(j)))return set(m,i,k,d);b=e(0)}return g(b,"value")?b.writable!==!1&&f(d)?(l=c.getDesc(d,i)||e(0),l.value=k,c.setDesc(d,i,l),!0):!1:b.set===a?!1:(b.set.call(d,k),!0)}var c=b(2),g=b(17),d=b(3),e=b(7),h=b(20),f=b(16);d(d.S,"Reflect",{set:set})},function(d,e,b){var c=b(3),a=b(45);a&&c(c.S,"Reflect",{setPrototypeOf:function setPrototypeOf(b,c){a.check(b,c);try{return a.set(b,c),!0}catch(d){return!1}}})},function(e,f,b){var c=b(3),d=b(33)(!0);c(c.P,"Array",{includes:function includes(b){return d(this,b,arguments.length>1?arguments[1]:a)}}),b(118)("includes")},function(d,e,a){var b=a(3),c=a(98)(!0);b(b.P,"String",{at:function at(a){return c(this,a)}})},function(e,f,b){var c=b(3),d=b(168);c(c.P,"String",{padLeft:function padLeft(b){return d(this,b,arguments.length>1?arguments[1]:a,!0)}})},function(c,g,b){var d=b(27),e=b(105),f=b(22);c.exports=function(l,m,i,n){var c=String(f(l)),j=c.length,g=i===a?" ":String(i),k=d(m);if(j>=k)return c;""==g&&(g=" ");var h=k-j,b=e.call(g,Math.ceil(h/g.length));return b.length>h&&(b=b.slice(0,h)),n?b+c:c+b}},function(e,f,b){var c=b(3),d=b(168);c(c.P,"String",{padRight:function padRight(b){return d(this,b,arguments.length>1?arguments[1]:a,!1)}})},function(b,c,a){a(63)("trimLeft",function(a){return function trimLeft(){return a(this,1)}})},function(b,c,a){a(63)("trimRight",function(a){return function trimRight(){return a(this,2)}})},function(d,e,a){var b=a(3),c=a(173)(/[\\^$*+?.()|[\]{}]/g,"\\$&");b(b.S,"RegExp",{escape:function escape(a){return c(a)}})},function(a,b){a.exports=function(b,a){var c=a===Object(a)?function(b){return a[b]}:a;return function(a){return String(a).replace(b,c)}}},function(g,h,a){var b=a(2),c=a(3),d=a(161),e=a(23),f=a(7);c(c.S,"Object",{getOwnPropertyDescriptors:function getOwnPropertyDescriptors(k){for(var a,g,h=e(k),l=b.setDesc,m=b.getDesc,i=d(h),c={},j=0;i.length>j;)g=m(h,a=i[j++]),a in c?l(c,a,f(0,g)):c[a]=g;return c}})},function(d,e,a){var b=a(3),c=a(176)(!1);b(b.S,"Object",{values:function values(a){return c(a)}})},function(c,f,a){var b=a(2),d=a(23),e=b.isEnum;c.exports=function(a){return function(j){for(var c,f=d(j),g=b.getKeys(f),k=g.length,h=0,i=[];k>h;)e.call(f,c=g[h++])&&i.push(a?[c,f[c]]:f[c]);return i}}},function(d,e,a){var b=a(3),c=a(176)(!0);b(b.S,"Object",{entries:function entries(a){return c(a)}})},function(c,d,a){var b=a(3);b(b.P,"Map",{toJSON:a(179)("Map")})},function(b,e,a){var c=a(138),d=a(47);b.exports=function(a){return function toJSON(){if(d(this)!=a)throw TypeError(a+"#toJSON isn't generic");var b=[];return c(this,!1,b.push,b),b}}},function(c,d,a){var b=a(3);b(b.P,"Set",{toJSON:a(179)("Set")})},function(d,e,b){var a=b(3),c=b(141);a(a.G+a.B,{setImmediate:c.set,clearImmediate:c.clear})},function(l,k,a){a(117);var g=a(4),j=a(6),c=a(109),b=a(31)("iterator"),h=g.NodeList,i=g.HTMLCollection,e=h&&h.prototype,d=i&&i.prototype,f=c.NodeList=c.HTMLCollection=c.Array;e&&!e[b]&&j(e,b,f),d&&!d[b]&&j(d,b,f)},function(i,j,a){var c=a(4),b=a(3),g=a(19),h=a(184),d=c.navigator,e=!!d&&/MSIE .\./.test(d.userAgent),f=function(a){return e?function(b,c){return a(g(h,[].slice.call(arguments,2),"function"==typeof b?b:Function(b)),c)}:a};b(b.G+b.B+b.F*e,{setTimeout:f(c.setTimeout),setInterval:f(c.setInterval)})},function(c,f,a){var d=a(185),b=a(19),e=a(13);c.exports=function(){for(var h=e(this),a=arguments.length,c=Array(a),f=0,i=d._,g=!1;a>f;)(c[f]=arguments[f++])===i&&(g=!0);return function(){var d,k=this,f=arguments,l=f.length,e=0,j=0;if(!g&&!l)return b(h,c,k);if(d=c.slice(),g)for(;a>e;e++)d[e]===i&&(d[e]=f[j++]);for(;l>j;)d.push(f[j++]);return b(h,d,k)}}},function(a,c,b){a.exports=b(4)},function(i,j,b){var g=b(2),e=b(3),h=b(12),f=b(5).Array||Array,c={},d=function(d,b){g.each.call(d.split(","),function(d){b==a&&d in f?c[d]=f[d]:d in[]&&(c[d]=h(Function.call,[][d],b))})};d("pop,reverse,shift,keys,values,entries",1),d("indexOf,every,some,forEach,map,filter,find,findIndex,includes",3),d("join,slice,concat,push,splice,unshift,sort,lastIndexOf,reduce,reduceRight,copyWithin,fill"),e(e.S,"Array",c)}]),"undefined"!=typeof module&&module.exports?module.exports=b:"function"==typeof define&&define.amd?define(function(){return b}):c.core=b}(1,1);
+//# sourceMappingURL=shim.min.js.map
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/client/shim.min.js.map b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/client/shim.min.js.map
new file mode 100644
index 00000000..60b23fa2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/client/shim.min.js.map
@@ -0,0 +1 @@
+{"version":3,"sources":["shim.js"],"names":["__e","__g","undefined","modules","__webpack_require__","moduleId","installedModules","exports","module","id","loaded","call","m","c","p","IE8_DOM_DEFINE","$","$export","DESCRIPTORS","createDesc","html","cel","has","cof","invoke","fails","anObject","aFunction","isObject","toObject","toIObject","toInteger","toIndex","toLength","IObject","IE_PROTO","createArrayMethod","arrayIndexOf","ObjectProto","Object","prototype","ArrayProto","Array","arraySlice","slice","arrayJoin","join","defineProperty","setDesc","getOwnDescriptor","getDesc","defineProperties","setDescs","factories","get","a","O","P","Attributes","e","TypeError","value","propertyIsEnumerable","Properties","keys","getKeys","length","i","S","F","getOwnPropertyDescriptor","keys1","split","keys2","concat","keysLen1","createDict","iframeDocument","iframe","gt","style","display","appendChild","src","contentWindow","document","open","write","close","createGetKeys","names","object","key","result","push","Empty","getPrototypeOf","getProto","constructor","getOwnPropertyNames","getNames","create","construct","len","args","n","Function","bind","that","fn","this","partArgs","arguments","bound","begin","end","klass","start","upTo","size","cloned","charAt","separator","isArray","createArrayReduce","isRight","callbackfn","memo","index","methodize","$fn","arg1","forEach","each","map","filter","some","every","reduce","reduceRight","indexOf","lastIndexOf","el","fromIndex","Math","min","now","Date","lz","num","toISOString","NaN","isFinite","RangeError","d","y","getUTCFullYear","getUTCMilliseconds","s","abs","getUTCMonth","getUTCDate","getUTCHours","getUTCMinutes","getUTCSeconds","$Object","isEnum","getSymbols","getOwnPropertySymbols","global","core","hide","redefine","ctx","PROTOTYPE","type","name","source","own","out","exp","IS_FORCED","IS_GLOBAL","G","IS_STATIC","IS_PROTO","IS_BIND","B","target","expProto","W","window","self","version","bitmap","enumerable","configurable","writable","exec","SRC","TO_STRING","$toString","TPL","inspectSource","it","val","safe","hasOwnProperty","String","toString","px","random","b","apply","documentElement","is","createElement","un","defined","ceil","floor","isNaN","max","asc","TYPE","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","NO_HOLES","$this","res","f","SPECIES","original","C","arg","store","uid","Symbol","SHARED","IS_INCLUDES","$fails","shared","setToStringTag","wks","keyOf","$names","enumKeys","_create","$Symbol","$JSON","JSON","_stringify","stringify","setter","HIDDEN","SymbolRegistry","AllSymbols","useNative","setSymbolDesc","D","protoDesc","wrap","tag","sym","_k","set","isSymbol","$defineProperty","$defineProperties","l","$create","$propertyIsEnumerable","E","$getOwnPropertyDescriptor","$getOwnPropertyNames","$getOwnPropertySymbols","$stringify","replacer","$replacer","$$","buggyJSON","symbolStatics","for","keyFor","useSetter","useSimple","def","TAG","stat","windowNames","getWindowNames","symbols","assign","A","K","k","T","$$len","j","x","setPrototypeOf","check","proto","test","buggy","__proto__","classof","ARG","callee","$freeze","freeze","KEY","$seal","seal","$preventExtensions","preventExtensions","$isFrozen","isFrozen","$isSealed","isSealed","$isExtensible","isExtensible","$getPrototypeOf","$keys","FProto","nameRE","NAME","match","HAS_INSTANCE","FunctionProto","toPrimitive","$trim","trim","NUMBER","$Number","Base","BROKEN_COF","TRIM","toNumber","argument","third","radix","maxCode","first","charCodeAt","code","digits","parseInt","Number","valueOf","spaces","space","non","ltrim","RegExp","rtrim","exporter","string","replace","EPSILON","pow","_isFinite","isInteger","number","isSafeInteger","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","parseFloat","log1p","sqrt","$acosh","acosh","MAX_VALUE","log","LN2","asinh","atanh","sign","cbrt","clz32","LOG2E","cosh","expm1","EPSILON32","MAX32","MIN32","roundTiesToEven","fround","$abs","$sign","Infinity","hypot","value1","value2","div","sum","larg","$imul","imul","UINT16","xn","yn","xl","yl","log10","LN10","log2","sinh","tanh","trunc","fromCharCode","$fromCodePoint","fromCodePoint","raw","callSite","tpl","$at","codePointAt","pos","context","ENDS_WITH","$endsWith","endsWith","searchString","endPosition","search","isRegExp","MATCH","re","INCLUDES","includes","repeat","count","str","STARTS_WITH","$startsWith","startsWith","iterated","_t","_i","point","done","LIBRARY","Iterators","$iterCreate","ITERATOR","BUGGY","FF_ITERATOR","KEYS","VALUES","returnThis","Constructor","next","DEFAULT","IS_SET","FORCED","methods","getMethod","kind","values","entries","DEF_VALUES","VALUES_BUG","$native","$default","IteratorPrototype","descriptor","isArrayIter","getIterFn","iter","from","arrayLike","step","iterator","mapfn","mapping","iterFn","ret","getIteratorMethod","SAFE_CLOSING","riter","skipClosing","arr","of","addToUnscopables","Arguments","UNSCOPABLES","copyWithin","to","inc","fill","endPos","$find","forced","find","findIndex","$flags","$RegExp","re1","re2","CORRECT_NEW","piRE","fiU","ignoreCase","multiline","unicode","sticky","flags","regexp","SYMBOL","REPLACE","$replace","searchValue","replaceValue","SEARCH","SPLIT","$split","limit","Wrapper","strictNew","forOf","setProto","same","speciesConstructor","asap","PROMISE","process","isNode","empty","testResolve","sub","promise","resolve","USE_NATIVE","P2","works","then","thenableThenGotten","sameConstructor","getConstructor","isThenable","PromiseCapability","reject","$$resolve","$$reject","perform","error","notify","record","isReject","chain","v","ok","run","reaction","handler","fail","h","setTimeout","console","isUnhandled","emit","onunhandledrejection","reason","_d","$reject","r","$resolve","wrapper","Promise","executor","err","onFulfilled","onRejected","catch","capability","all","iterable","abrupt","remaining","results","alreadyCalled","race","head","last","macrotask","Observer","MutationObserver","WebKitMutationObserver","flush","parent","domain","exit","enter","nextTick","toggle","node","createTextNode","observe","characterData","data","task","defer","channel","port","setTask","setImmediate","clearTask","clearImmediate","MessageChannel","counter","queue","ONREADYSTATECHANGE","listner","event","port2","port1","onmessage","postMessage","addEventListener","importScripts","removeChild","clear","strong","Map","entry","getEntry","redefineAll","$iterDefine","ID","$has","setSpecies","SIZE","fastKey","_f","ADDER","_l","delete","prev","setStrong","$iterDetect","common","IS_WEAK","fixMethod","add","BUGGY_ZERO","instance","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","Set","weak","frozenStore","WEAK","tmp","$WeakMap","WeakMap","method","arrayFind","arrayFindIndex","FrozenStore","findFrozen","splice","WeakSet","_apply","thisArgument","argumentsList","Reflect","Target","newTarget","$args","propertyKey","attributes","deleteProperty","desc","Enumerate","enumerate","receiver","ownKeys","V","existingDescriptor","ownDesc","$includes","at","$pad","padLeft","maxLength","fillString","left","stringLength","fillStr","intMaxLength","fillLen","stringFiller","padRight","trimLeft","trimRight","$re","escape","regExp","part","getOwnPropertyDescriptors","$values","isEntries","$entries","toJSON","$task","NL","NodeList","HTC","HTMLCollection","NLProto","HTCProto","ArrayValues","partial","navigator","MSIE","userAgent","time","setInterval","path","pargs","_","holder","$ctx","$Array","statics","setStatics","define","amd"],"mappings":"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","file":"shim.min.js"}
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/core/_.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/core/_.js
new file mode 100644
index 00000000..475a66cd
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/core/_.js
@@ -0,0 +1,2 @@
+require('../modules/core.function.part');
+module.exports = require('../modules/$.core')._;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/core/delay.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/core/delay.js
new file mode 100644
index 00000000..1ff9a56d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/core/delay.js
@@ -0,0 +1,2 @@
+require('../modules/core.delay');
+module.exports = require('../modules/$.core').delay;
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/core/dict.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/core/dict.js
new file mode 100644
index 00000000..ed848e2c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/core/dict.js
@@ -0,0 +1,2 @@
+require('../modules/core.dict');
+module.exports = require('../modules/$.core').Dict;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/core/function.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/core/function.js
new file mode 100644
index 00000000..42b6dbb8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/core/function.js
@@ -0,0 +1,2 @@
+require('../modules/core.function.part');
+module.exports = require('../modules/$.core').Function;
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/core/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/core/index.js
new file mode 100644
index 00000000..3d50bdb6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/core/index.js
@@ -0,0 +1,15 @@
+require('../modules/core.dict');
+require('../modules/core.get-iterator-method');
+require('../modules/core.get-iterator');
+require('../modules/core.is-iterable');
+require('../modules/core.delay');
+require('../modules/core.function.part');
+require('../modules/core.object.is-object');
+require('../modules/core.object.classof');
+require('../modules/core.object.define');
+require('../modules/core.object.make');
+require('../modules/core.number.iterator');
+require('../modules/core.string.escape-html');
+require('../modules/core.string.unescape-html');
+require('../modules/core.log');
+module.exports = require('../modules/$.core');
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/core/log.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/core/log.js
new file mode 100644
index 00000000..899d6ed0
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/core/log.js
@@ -0,0 +1,2 @@
+require('../modules/core.log');
+module.exports = require('../modules/$.core').log;
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/core/number.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/core/number.js
new file mode 100644
index 00000000..6e3cdbf6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/core/number.js
@@ -0,0 +1,2 @@
+require('../modules/core.number.iterator');
+module.exports = require('../modules/$.core').Number;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/core/object.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/core/object.js
new file mode 100644
index 00000000..63325663
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/core/object.js
@@ -0,0 +1,5 @@
+require('../modules/core.object.is-object');
+require('../modules/core.object.classof');
+require('../modules/core.object.define');
+require('../modules/core.object.make');
+module.exports = require('../modules/$.core').Object;
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/core/string.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/core/string.js
new file mode 100644
index 00000000..829e0c61
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/core/string.js
@@ -0,0 +1,3 @@
+require('../modules/core.string.escape-html');
+require('../modules/core.string.unescape-html');
+module.exports = require('../modules/$.core').String;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es5/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es5/index.js
new file mode 100644
index 00000000..3c23364a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es5/index.js
@@ -0,0 +1,9 @@
+require('../modules/es5');
+require('../modules/es6.object.freeze');
+require('../modules/es6.object.seal');
+require('../modules/es6.object.prevent-extensions');
+require('../modules/es6.object.is-frozen');
+require('../modules/es6.object.is-sealed');
+require('../modules/es6.object.is-extensible');
+require('../modules/es6.string.trim');
+module.exports = require('../modules/$.core');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/array.js
new file mode 100644
index 00000000..36629ca0
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/array.js
@@ -0,0 +1,10 @@
+require('../modules/es6.string.iterator');
+require('../modules/es6.array.from');
+require('../modules/es6.array.of');
+require('../modules/es6.array.species');
+require('../modules/es6.array.iterator');
+require('../modules/es6.array.copy-within');
+require('../modules/es6.array.fill');
+require('../modules/es6.array.find');
+require('../modules/es6.array.find-index');
+module.exports = require('../modules/$.core').Array;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/function.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/function.js
new file mode 100644
index 00000000..3e61dcd4
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/function.js
@@ -0,0 +1,3 @@
+require('../modules/es6.function.name');
+require('../modules/es6.function.has-instance');
+module.exports = require('../modules/$.core').Function;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/index.js
new file mode 100644
index 00000000..b9fc80be
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/index.js
@@ -0,0 +1,87 @@
+require('../modules/es6.symbol');
+require('../modules/es6.object.assign');
+require('../modules/es6.object.is');
+require('../modules/es6.object.set-prototype-of');
+require('../modules/es6.object.to-string');
+require('../modules/es6.object.freeze');
+require('../modules/es6.object.seal');
+require('../modules/es6.object.prevent-extensions');
+require('../modules/es6.object.is-frozen');
+require('../modules/es6.object.is-sealed');
+require('../modules/es6.object.is-extensible');
+require('../modules/es6.object.get-own-property-descriptor');
+require('../modules/es6.object.get-prototype-of');
+require('../modules/es6.object.keys');
+require('../modules/es6.object.get-own-property-names');
+require('../modules/es6.function.name');
+require('../modules/es6.function.has-instance');
+require('../modules/es6.number.constructor');
+require('../modules/es6.number.epsilon');
+require('../modules/es6.number.is-finite');
+require('../modules/es6.number.is-integer');
+require('../modules/es6.number.is-nan');
+require('../modules/es6.number.is-safe-integer');
+require('../modules/es6.number.max-safe-integer');
+require('../modules/es6.number.min-safe-integer');
+require('../modules/es6.number.parse-float');
+require('../modules/es6.number.parse-int');
+require('../modules/es6.math.acosh');
+require('../modules/es6.math.asinh');
+require('../modules/es6.math.atanh');
+require('../modules/es6.math.cbrt');
+require('../modules/es6.math.clz32');
+require('../modules/es6.math.cosh');
+require('../modules/es6.math.expm1');
+require('../modules/es6.math.fround');
+require('../modules/es6.math.hypot');
+require('../modules/es6.math.imul');
+require('../modules/es6.math.log10');
+require('../modules/es6.math.log1p');
+require('../modules/es6.math.log2');
+require('../modules/es6.math.sign');
+require('../modules/es6.math.sinh');
+require('../modules/es6.math.tanh');
+require('../modules/es6.math.trunc');
+require('../modules/es6.string.from-code-point');
+require('../modules/es6.string.raw');
+require('../modules/es6.string.trim');
+require('../modules/es6.string.iterator');
+require('../modules/es6.string.code-point-at');
+require('../modules/es6.string.ends-with');
+require('../modules/es6.string.includes');
+require('../modules/es6.string.repeat');
+require('../modules/es6.string.starts-with');
+require('../modules/es6.array.from');
+require('../modules/es6.array.of');
+require('../modules/es6.array.species');
+require('../modules/es6.array.iterator');
+require('../modules/es6.array.copy-within');
+require('../modules/es6.array.fill');
+require('../modules/es6.array.find');
+require('../modules/es6.array.find-index');
+require('../modules/es6.regexp.constructor');
+require('../modules/es6.regexp.flags');
+require('../modules/es6.regexp.match');
+require('../modules/es6.regexp.replace');
+require('../modules/es6.regexp.search');
+require('../modules/es6.regexp.split');
+require('../modules/es6.promise');
+require('../modules/es6.map');
+require('../modules/es6.set');
+require('../modules/es6.weak-map');
+require('../modules/es6.weak-set');
+require('../modules/es6.reflect.apply');
+require('../modules/es6.reflect.construct');
+require('../modules/es6.reflect.define-property');
+require('../modules/es6.reflect.delete-property');
+require('../modules/es6.reflect.enumerate');
+require('../modules/es6.reflect.get');
+require('../modules/es6.reflect.get-own-property-descriptor');
+require('../modules/es6.reflect.get-prototype-of');
+require('../modules/es6.reflect.has');
+require('../modules/es6.reflect.is-extensible');
+require('../modules/es6.reflect.own-keys');
+require('../modules/es6.reflect.prevent-extensions');
+require('../modules/es6.reflect.set');
+require('../modules/es6.reflect.set-prototype-of');
+module.exports = require('../modules/$.core');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/map.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/map.js
new file mode 100644
index 00000000..521a192e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/map.js
@@ -0,0 +1,5 @@
+require('../modules/es6.object.to-string');
+require('../modules/es6.string.iterator');
+require('../modules/web.dom.iterable');
+require('../modules/es6.map');
+module.exports = require('../modules/$.core').Map;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/math.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/math.js
new file mode 100644
index 00000000..8b5a2e79
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/math.js
@@ -0,0 +1,18 @@
+require('../modules/es6.math.acosh');
+require('../modules/es6.math.asinh');
+require('../modules/es6.math.atanh');
+require('../modules/es6.math.cbrt');
+require('../modules/es6.math.clz32');
+require('../modules/es6.math.cosh');
+require('../modules/es6.math.expm1');
+require('../modules/es6.math.fround');
+require('../modules/es6.math.hypot');
+require('../modules/es6.math.imul');
+require('../modules/es6.math.log10');
+require('../modules/es6.math.log1p');
+require('../modules/es6.math.log2');
+require('../modules/es6.math.sign');
+require('../modules/es6.math.sinh');
+require('../modules/es6.math.tanh');
+require('../modules/es6.math.trunc');
+module.exports = require('../modules/$.core').Math;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/number.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/number.js
new file mode 100644
index 00000000..8f487703
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/number.js
@@ -0,0 +1,11 @@
+require('../modules/es6.number.constructor');
+require('../modules/es6.number.epsilon');
+require('../modules/es6.number.is-finite');
+require('../modules/es6.number.is-integer');
+require('../modules/es6.number.is-nan');
+require('../modules/es6.number.is-safe-integer');
+require('../modules/es6.number.max-safe-integer');
+require('../modules/es6.number.min-safe-integer');
+require('../modules/es6.number.parse-float');
+require('../modules/es6.number.parse-int');
+module.exports = require('../modules/$.core').Number;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/object.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/object.js
new file mode 100644
index 00000000..94af189f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/object.js
@@ -0,0 +1,17 @@
+require('../modules/es6.symbol');
+require('../modules/es6.object.assign');
+require('../modules/es6.object.is');
+require('../modules/es6.object.set-prototype-of');
+require('../modules/es6.object.to-string');
+require('../modules/es6.object.freeze');
+require('../modules/es6.object.seal');
+require('../modules/es6.object.prevent-extensions');
+require('../modules/es6.object.is-frozen');
+require('../modules/es6.object.is-sealed');
+require('../modules/es6.object.is-extensible');
+require('../modules/es6.object.get-own-property-descriptor');
+require('../modules/es6.object.get-prototype-of');
+require('../modules/es6.object.keys');
+require('../modules/es6.object.get-own-property-names');
+
+module.exports = require('../modules/$.core').Object;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/promise.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/promise.js
new file mode 100644
index 00000000..0a099613
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/promise.js
@@ -0,0 +1,5 @@
+require('../modules/es6.object.to-string');
+require('../modules/es6.string.iterator');
+require('../modules/web.dom.iterable');
+require('../modules/es6.promise');
+module.exports = require('../modules/$.core').Promise;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/reflect.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/reflect.js
new file mode 100644
index 00000000..3c2f74eb
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/reflect.js
@@ -0,0 +1,15 @@
+require('../modules/es6.reflect.apply');
+require('../modules/es6.reflect.construct');
+require('../modules/es6.reflect.define-property');
+require('../modules/es6.reflect.delete-property');
+require('../modules/es6.reflect.enumerate');
+require('../modules/es6.reflect.get');
+require('../modules/es6.reflect.get-own-property-descriptor');
+require('../modules/es6.reflect.get-prototype-of');
+require('../modules/es6.reflect.has');
+require('../modules/es6.reflect.is-extensible');
+require('../modules/es6.reflect.own-keys');
+require('../modules/es6.reflect.prevent-extensions');
+require('../modules/es6.reflect.set');
+require('../modules/es6.reflect.set-prototype-of');
+module.exports = require('../modules/$.core').Reflect;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/regexp.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/regexp.js
new file mode 100644
index 00000000..195d36d4
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/regexp.js
@@ -0,0 +1,7 @@
+require('../modules/es6.regexp.constructor');
+require('../modules/es6.regexp.flags');
+require('../modules/es6.regexp.match');
+require('../modules/es6.regexp.replace');
+require('../modules/es6.regexp.search');
+require('../modules/es6.regexp.split');
+module.exports = require('../modules/$.core').RegExp;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/set.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/set.js
new file mode 100644
index 00000000..6a84f589
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/set.js
@@ -0,0 +1,5 @@
+require('../modules/es6.object.to-string');
+require('../modules/es6.string.iterator');
+require('../modules/web.dom.iterable');
+require('../modules/es6.set');
+module.exports = require('../modules/$.core').Set;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/string.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/string.js
new file mode 100644
index 00000000..bc7a1ab1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/string.js
@@ -0,0 +1,14 @@
+require('../modules/es6.string.from-code-point');
+require('../modules/es6.string.raw');
+require('../modules/es6.string.trim');
+require('../modules/es6.string.iterator');
+require('../modules/es6.string.code-point-at');
+require('../modules/es6.string.ends-with');
+require('../modules/es6.string.includes');
+require('../modules/es6.string.repeat');
+require('../modules/es6.string.starts-with');
+require('../modules/es6.regexp.match');
+require('../modules/es6.regexp.replace');
+require('../modules/es6.regexp.search');
+require('../modules/es6.regexp.split');
+module.exports = require('../modules/$.core').String;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/symbol.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/symbol.js
new file mode 100644
index 00000000..ae2405b5
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/symbol.js
@@ -0,0 +1,3 @@
+require('../modules/es6.symbol');
+require('../modules/es6.object.to-string');
+module.exports = require('../modules/$.core').Symbol;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/weak-map.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/weak-map.js
new file mode 100644
index 00000000..f2c6db89
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/weak-map.js
@@ -0,0 +1,4 @@
+require('../modules/es6.object.to-string');
+require('../modules/es6.array.iterator');
+require('../modules/es6.weak-map');
+module.exports = require('../modules/$.core').WeakMap;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/weak-set.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/weak-set.js
new file mode 100644
index 00000000..a058c8a6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es6/weak-set.js
@@ -0,0 +1,4 @@
+require('../modules/es6.object.to-string');
+require('../modules/web.dom.iterable');
+require('../modules/es6.weak-set');
+module.exports = require('../modules/$.core').WeakSet;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es7/array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es7/array.js
new file mode 100644
index 00000000..e58f9057
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es7/array.js
@@ -0,0 +1,2 @@
+require('../modules/es7.array.includes');
+module.exports = require('../modules/$.core').Array;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es7/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es7/index.js
new file mode 100644
index 00000000..a277b639
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es7/index.js
@@ -0,0 +1,13 @@
+require('../modules/es7.array.includes');
+require('../modules/es7.string.at');
+require('../modules/es7.string.pad-left');
+require('../modules/es7.string.pad-right');
+require('../modules/es7.string.trim-left');
+require('../modules/es7.string.trim-right');
+require('../modules/es7.regexp.escape');
+require('../modules/es7.object.get-own-property-descriptors');
+require('../modules/es7.object.values');
+require('../modules/es7.object.entries');
+require('../modules/es7.map.to-json');
+require('../modules/es7.set.to-json');
+module.exports = require('../modules/$.core');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es7/map.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es7/map.js
new file mode 100644
index 00000000..fe519992
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es7/map.js
@@ -0,0 +1,2 @@
+require('../modules/es7.map.to-json');
+module.exports = require('../modules/$.core').Map;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es7/object.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es7/object.js
new file mode 100644
index 00000000..b0585303
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es7/object.js
@@ -0,0 +1,4 @@
+require('../modules/es7.object.get-own-property-descriptors');
+require('../modules/es7.object.values');
+require('../modules/es7.object.entries');
+module.exports = require('../modules/$.core').Object;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es7/regexp.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es7/regexp.js
new file mode 100644
index 00000000..cb24f98b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es7/regexp.js
@@ -0,0 +1,2 @@
+require('../modules/es7.regexp.escape');
+module.exports = require('../modules/$.core').RegExp;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es7/set.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es7/set.js
new file mode 100644
index 00000000..16e94528
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es7/set.js
@@ -0,0 +1,2 @@
+require('../modules/es7.set.to-json');
+module.exports = require('../modules/$.core').Set;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es7/string.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es7/string.js
new file mode 100644
index 00000000..bca0886c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/es7/string.js
@@ -0,0 +1,6 @@
+require('../modules/es7.string.at');
+require('../modules/es7.string.pad-left');
+require('../modules/es7.string.pad-right');
+require('../modules/es7.string.trim-left');
+require('../modules/es7.string.trim-right');
+module.exports = require('../modules/$.core').String;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/_.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/_.js
new file mode 100644
index 00000000..475a66cd
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/_.js
@@ -0,0 +1,2 @@
+require('../modules/core.function.part');
+module.exports = require('../modules/$.core')._;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/concat.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/concat.js
new file mode 100644
index 00000000..176ecffe
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/concat.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.concat;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/copy-within.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/copy-within.js
new file mode 100644
index 00000000..8a011319
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/copy-within.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.array.copy-within');
+module.exports = require('../../modules/$.core').Array.copyWithin;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/entries.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/entries.js
new file mode 100644
index 00000000..bcdbc33f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/entries.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.array.iterator');
+module.exports = require('../../modules/$.core').Array.entries;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/every.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/every.js
new file mode 100644
index 00000000..0c7d0b7e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/every.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.every;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/fill.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/fill.js
new file mode 100644
index 00000000..f5362120
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/fill.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.array.fill');
+module.exports = require('../../modules/$.core').Array.fill;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/filter.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/filter.js
new file mode 100644
index 00000000..3f5b17ff
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/filter.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.filter;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/find-index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/find-index.js
new file mode 100644
index 00000000..7ec6cf7a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/find-index.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.array.find-index');
+module.exports = require('../../modules/$.core').Array.findIndex;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/find.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/find.js
new file mode 100644
index 00000000..9c3a6b31
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/find.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.array.find');
+module.exports = require('../../modules/$.core').Array.find;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/for-each.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/for-each.js
new file mode 100644
index 00000000..b2e79f0b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/for-each.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.forEach;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/from.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/from.js
new file mode 100644
index 00000000..f0483ccf
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/from.js
@@ -0,0 +1,3 @@
+require('../../modules/es6.string.iterator');
+require('../../modules/es6.array.from');
+module.exports = require('../../modules/$.core').Array.from;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/includes.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/includes.js
new file mode 100644
index 00000000..420c8318
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/includes.js
@@ -0,0 +1,2 @@
+require('../../modules/es7.array.includes');
+module.exports = require('../../modules/$.core').Array.includes;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/index-of.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/index-of.js
new file mode 100644
index 00000000..9f2cd14b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/index-of.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.indexOf;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/index.js
new file mode 100644
index 00000000..2707be21
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/index.js
@@ -0,0 +1,12 @@
+require('../../modules/es6.string.iterator');
+require('../../modules/es6.array.from');
+require('../../modules/es6.array.of');
+require('../../modules/es6.array.species');
+require('../../modules/es6.array.iterator');
+require('../../modules/es6.array.copy-within');
+require('../../modules/es6.array.fill');
+require('../../modules/es6.array.find');
+require('../../modules/es6.array.find-index');
+require('../../modules/es7.array.includes');
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/iterator.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/iterator.js
new file mode 100644
index 00000000..662f3b5c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/iterator.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.array.iterator');
+module.exports = require('../../modules/$.core').Array.values;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/join.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/join.js
new file mode 100644
index 00000000..44363922
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/join.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.join;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/keys.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/keys.js
new file mode 100644
index 00000000..e55d356e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/keys.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.array.iterator');
+module.exports = require('../../modules/$.core').Array.keys;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/last-index-of.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/last-index-of.js
new file mode 100644
index 00000000..678d0072
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/last-index-of.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.lastIndexOf;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/map.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/map.js
new file mode 100644
index 00000000..a1457c7a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/map.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.map;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/of.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/of.js
new file mode 100644
index 00000000..07bb5a4a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/of.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.array.of');
+module.exports = require('../../modules/$.core').Array.of;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/pop.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/pop.js
new file mode 100644
index 00000000..bd8f8610
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/pop.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.pop;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/push.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/push.js
new file mode 100644
index 00000000..3ccf0707
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/push.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.push;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/reduce-right.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/reduce-right.js
new file mode 100644
index 00000000..c592207c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/reduce-right.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.reduceRight;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/reduce.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/reduce.js
new file mode 100644
index 00000000..b8368406
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/reduce.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.reduce;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/reverse.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/reverse.js
new file mode 100644
index 00000000..4d8d235c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/reverse.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.reverse;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/shift.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/shift.js
new file mode 100644
index 00000000..806c87cd
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/shift.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.shift;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/slice.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/slice.js
new file mode 100644
index 00000000..913f7ef2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/slice.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.slice;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/some.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/some.js
new file mode 100644
index 00000000..4f7c7654
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/some.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.some;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/sort.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/sort.js
new file mode 100644
index 00000000..61beed04
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/sort.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.sort;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/splice.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/splice.js
new file mode 100644
index 00000000..5f5eab07
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/splice.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.splice;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/unshift.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/unshift.js
new file mode 100644
index 00000000..a11de528
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/unshift.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.unshift;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/values.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/values.js
new file mode 100644
index 00000000..662f3b5c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/array/values.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.array.iterator');
+module.exports = require('../../modules/$.core').Array.values;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/clear-immediate.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/clear-immediate.js
new file mode 100644
index 00000000..06a97502
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/clear-immediate.js
@@ -0,0 +1,2 @@
+require('../modules/web.immediate');
+module.exports = require('../modules/$.core').clearImmediate;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/delay.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/delay.js
new file mode 100644
index 00000000..1ff9a56d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/delay.js
@@ -0,0 +1,2 @@
+require('../modules/core.delay');
+module.exports = require('../modules/$.core').delay;
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/dict.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/dict.js
new file mode 100644
index 00000000..ed848e2c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/dict.js
@@ -0,0 +1,2 @@
+require('../modules/core.dict');
+module.exports = require('../modules/$.core').Dict;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/function/has-instance.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/function/has-instance.js
new file mode 100644
index 00000000..78c8221c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/function/has-instance.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.function.has-instance');
+module.exports = Function[require('../../modules/$.wks')('hasInstance')];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/function/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/function/index.js
new file mode 100644
index 00000000..7422fca3
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/function/index.js
@@ -0,0 +1,4 @@
+require('../../modules/es6.function.name');
+require('../../modules/es6.function.has-instance');
+require('../../modules/core.function.part');
+module.exports = require('../../modules/$.core').Function;
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/function/name.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/function/name.js
new file mode 100644
index 00000000..cb70bf15
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/function/name.js
@@ -0,0 +1 @@
+require('../../modules/es6.function.name');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/function/part.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/function/part.js
new file mode 100644
index 00000000..26271d6a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/function/part.js
@@ -0,0 +1,2 @@
+require('../../modules/core.function.part');
+module.exports = require('../../modules/$.core').Function.part;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/get-iterator-method.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/get-iterator-method.js
new file mode 100644
index 00000000..5543cbbf
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/get-iterator-method.js
@@ -0,0 +1,3 @@
+require('../modules/web.dom.iterable');
+require('../modules/es6.string.iterator');
+module.exports = require('../modules/core.get-iterator-method');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/get-iterator.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/get-iterator.js
new file mode 100644
index 00000000..762350ff
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/get-iterator.js
@@ -0,0 +1,3 @@
+require('../modules/web.dom.iterable');
+require('../modules/es6.string.iterator');
+module.exports = require('../modules/core.get-iterator');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/html-collection/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/html-collection/index.js
new file mode 100644
index 00000000..510156b8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/html-collection/index.js
@@ -0,0 +1,2 @@
+require('../../modules/web.dom.iterable');
+module.exports = require('../../modules/$.core');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/html-collection/iterator.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/html-collection/iterator.js
new file mode 100644
index 00000000..c01119b1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/html-collection/iterator.js
@@ -0,0 +1,2 @@
+require('../../modules/web.dom.iterable');
+module.exports = require('../../modules/$.core').Array.values;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/is-iterable.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/is-iterable.js
new file mode 100644
index 00000000..4c654e87
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/is-iterable.js
@@ -0,0 +1,3 @@
+require('../modules/web.dom.iterable');
+require('../modules/es6.string.iterator');
+module.exports = require('../modules/core.is-iterable');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/json/stringify.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/json/stringify.js
new file mode 100644
index 00000000..fef24250
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/json/stringify.js
@@ -0,0 +1,4 @@
+var core = require('../../modules/$.core');
+module.exports = function stringify(it){ // eslint-disable-line no-unused-vars
+ return (core.JSON && core.JSON.stringify || JSON.stringify).apply(JSON, arguments);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/log.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/log.js
new file mode 100644
index 00000000..899d6ed0
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/log.js
@@ -0,0 +1,2 @@
+require('../modules/core.log');
+module.exports = require('../modules/$.core').log;
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/map.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/map.js
new file mode 100644
index 00000000..70998924
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/map.js
@@ -0,0 +1,6 @@
+require('../modules/es6.object.to-string');
+require('../modules/es6.string.iterator');
+require('../modules/web.dom.iterable');
+require('../modules/es6.map');
+require('../modules/es7.map.to-json');
+module.exports = require('../modules/$.core').Map;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/acosh.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/acosh.js
new file mode 100644
index 00000000..d29a88cc
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/acosh.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.acosh');
+module.exports = require('../../modules/$.core').Math.acosh;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/asinh.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/asinh.js
new file mode 100644
index 00000000..7eac2e83
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/asinh.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.asinh');
+module.exports = require('../../modules/$.core').Math.asinh;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/atanh.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/atanh.js
new file mode 100644
index 00000000..a66a47d8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/atanh.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.atanh');
+module.exports = require('../../modules/$.core').Math.atanh;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/cbrt.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/cbrt.js
new file mode 100644
index 00000000..199f5cd8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/cbrt.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.cbrt');
+module.exports = require('../../modules/$.core').Math.cbrt;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/clz32.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/clz32.js
new file mode 100644
index 00000000..2025c6e4
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/clz32.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.clz32');
+module.exports = require('../../modules/$.core').Math.clz32;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/cosh.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/cosh.js
new file mode 100644
index 00000000..17a7ddc0
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/cosh.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.cosh');
+module.exports = require('../../modules/$.core').Math.cosh;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/expm1.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/expm1.js
new file mode 100644
index 00000000..732facb3
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/expm1.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.expm1');
+module.exports = require('../../modules/$.core').Math.expm1;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/fround.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/fround.js
new file mode 100644
index 00000000..37f87069
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/fround.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.fround');
+module.exports = require('../../modules/$.core').Math.fround;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/hypot.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/hypot.js
new file mode 100644
index 00000000..9676c073
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/hypot.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.hypot');
+module.exports = require('../../modules/$.core').Math.hypot;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/imul.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/imul.js
new file mode 100644
index 00000000..2ea2913e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/imul.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.imul');
+module.exports = require('../../modules/$.core').Math.imul;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/index.js
new file mode 100644
index 00000000..14628ae5
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/index.js
@@ -0,0 +1,18 @@
+require('../../modules/es6.math.acosh');
+require('../../modules/es6.math.asinh');
+require('../../modules/es6.math.atanh');
+require('../../modules/es6.math.cbrt');
+require('../../modules/es6.math.clz32');
+require('../../modules/es6.math.cosh');
+require('../../modules/es6.math.expm1');
+require('../../modules/es6.math.fround');
+require('../../modules/es6.math.hypot');
+require('../../modules/es6.math.imul');
+require('../../modules/es6.math.log10');
+require('../../modules/es6.math.log1p');
+require('../../modules/es6.math.log2');
+require('../../modules/es6.math.sign');
+require('../../modules/es6.math.sinh');
+require('../../modules/es6.math.tanh');
+require('../../modules/es6.math.trunc');
+module.exports = require('../../modules/$.core').Math;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/log10.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/log10.js
new file mode 100644
index 00000000..ecf7b9b2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/log10.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.log10');
+module.exports = require('../../modules/$.core').Math.log10;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/log1p.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/log1p.js
new file mode 100644
index 00000000..6db73292
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/log1p.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.log1p');
+module.exports = require('../../modules/$.core').Math.log1p;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/log2.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/log2.js
new file mode 100644
index 00000000..63c74d7b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/log2.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.log2');
+module.exports = require('../../modules/$.core').Math.log2;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/sign.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/sign.js
new file mode 100644
index 00000000..47ab74f2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/sign.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.sign');
+module.exports = require('../../modules/$.core').Math.sign;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/sinh.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/sinh.js
new file mode 100644
index 00000000..72c6e857
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/sinh.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.sinh');
+module.exports = require('../../modules/$.core').Math.sinh;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/tanh.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/tanh.js
new file mode 100644
index 00000000..30ddbcc8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/tanh.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.tanh');
+module.exports = require('../../modules/$.core').Math.tanh;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/trunc.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/trunc.js
new file mode 100644
index 00000000..b084efa7
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/math/trunc.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.trunc');
+module.exports = require('../../modules/$.core').Math.trunc;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/node-list/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/node-list/index.js
new file mode 100644
index 00000000..510156b8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/node-list/index.js
@@ -0,0 +1,2 @@
+require('../../modules/web.dom.iterable');
+module.exports = require('../../modules/$.core');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/node-list/iterator.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/node-list/iterator.js
new file mode 100644
index 00000000..c01119b1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/node-list/iterator.js
@@ -0,0 +1,2 @@
+require('../../modules/web.dom.iterable');
+module.exports = require('../../modules/$.core').Array.values;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/epsilon.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/epsilon.js
new file mode 100644
index 00000000..56c93521
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/epsilon.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.number.epsilon');
+module.exports = Math.pow(2, -52);
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/index.js
new file mode 100644
index 00000000..d048d590
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/index.js
@@ -0,0 +1,12 @@
+require('../../modules/es6.number.constructor');
+require('../../modules/es6.number.epsilon');
+require('../../modules/es6.number.is-finite');
+require('../../modules/es6.number.is-integer');
+require('../../modules/es6.number.is-nan');
+require('../../modules/es6.number.is-safe-integer');
+require('../../modules/es6.number.max-safe-integer');
+require('../../modules/es6.number.min-safe-integer');
+require('../../modules/es6.number.parse-float');
+require('../../modules/es6.number.parse-int');
+require('../../modules/core.number.iterator');
+module.exports = require('../../modules/$.core').Number;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/is-finite.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/is-finite.js
new file mode 100644
index 00000000..ff666503
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/is-finite.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.number.is-finite');
+module.exports = require('../../modules/$.core').Number.isFinite;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/is-integer.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/is-integer.js
new file mode 100644
index 00000000..682e1e34
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/is-integer.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.number.is-integer');
+module.exports = require('../../modules/$.core').Number.isInteger;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/is-nan.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/is-nan.js
new file mode 100644
index 00000000..6ad6923b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/is-nan.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.number.is-nan');
+module.exports = require('../../modules/$.core').Number.isNaN;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/is-safe-integer.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/is-safe-integer.js
new file mode 100644
index 00000000..a47fd42e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/is-safe-integer.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.number.is-safe-integer');
+module.exports = require('../../modules/$.core').Number.isSafeInteger;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/iterator.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/iterator.js
new file mode 100644
index 00000000..57cb7906
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/iterator.js
@@ -0,0 +1,5 @@
+require('../../modules/core.number.iterator');
+var get = require('../../modules/$.iterators').Number;
+module.exports = function(it){
+ return get.call(it);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/max-safe-integer.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/max-safe-integer.js
new file mode 100644
index 00000000..c9b43b04
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/max-safe-integer.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.number.max-safe-integer');
+module.exports = 0x1fffffffffffff;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/min-safe-integer.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/min-safe-integer.js
new file mode 100644
index 00000000..8b5e0728
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/min-safe-integer.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.number.min-safe-integer');
+module.exports = -0x1fffffffffffff;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/parse-float.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/parse-float.js
new file mode 100644
index 00000000..62f89774
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/parse-float.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.number.parse-float');
+module.exports = parseFloat;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/parse-int.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/parse-int.js
new file mode 100644
index 00000000..c197da5b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/number/parse-int.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.number.parse-int');
+module.exports = parseInt;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/assign.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/assign.js
new file mode 100644
index 00000000..a57c54aa
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/assign.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.object.assign');
+module.exports = require('../../modules/$.core').Object.assign;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/classof.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/classof.js
new file mode 100644
index 00000000..3afc8268
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/classof.js
@@ -0,0 +1,2 @@
+require('../../modules/core.object.classof');
+module.exports = require('../../modules/$.core').Object.classof;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/create.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/create.js
new file mode 100644
index 00000000..8f5f3263
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/create.js
@@ -0,0 +1,4 @@
+var $ = require('../../modules/$');
+module.exports = function create(P, D){
+ return $.create(P, D);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/define-properties.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/define-properties.js
new file mode 100644
index 00000000..a857aab8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/define-properties.js
@@ -0,0 +1,4 @@
+var $ = require('../../modules/$');
+module.exports = function defineProperties(T, D){
+ return $.setDescs(T, D);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/define-property.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/define-property.js
new file mode 100644
index 00000000..7384315d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/define-property.js
@@ -0,0 +1,4 @@
+var $ = require('../../modules/$');
+module.exports = function defineProperty(it, key, desc){
+ return $.setDesc(it, key, desc);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/define.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/define.js
new file mode 100644
index 00000000..690773e2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/define.js
@@ -0,0 +1,2 @@
+require('../../modules/core.object.define');
+module.exports = require('../../modules/$.core').Object.define;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/entries.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/entries.js
new file mode 100644
index 00000000..a32fe391
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/entries.js
@@ -0,0 +1,2 @@
+require('../../modules/es7.object.entries');
+module.exports = require('../../modules/$.core').Object.entries;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/freeze.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/freeze.js
new file mode 100644
index 00000000..566eec51
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/freeze.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.object.freeze');
+module.exports = require('../../modules/$.core').Object.freeze;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/get-own-property-descriptor.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/get-own-property-descriptor.js
new file mode 100644
index 00000000..2e1845cf
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/get-own-property-descriptor.js
@@ -0,0 +1,5 @@
+var $ = require('../../modules/$');
+require('../../modules/es6.object.get-own-property-descriptor');
+module.exports = function getOwnPropertyDescriptor(it, key){
+ return $.getDesc(it, key);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/get-own-property-descriptors.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/get-own-property-descriptors.js
new file mode 100644
index 00000000..f26341d5
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/get-own-property-descriptors.js
@@ -0,0 +1,2 @@
+require('../../modules/es7.object.get-own-property-descriptors');
+module.exports = require('../../modules/$.core').Object.getOwnPropertyDescriptors;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/get-own-property-names.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/get-own-property-names.js
new file mode 100644
index 00000000..496eb197
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/get-own-property-names.js
@@ -0,0 +1,5 @@
+var $ = require('../../modules/$');
+require('../../modules/es6.object.get-own-property-names');
+module.exports = function getOwnPropertyNames(it){
+ return $.getNames(it);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/get-own-property-symbols.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/get-own-property-symbols.js
new file mode 100644
index 00000000..f78921b5
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/get-own-property-symbols.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.symbol');
+module.exports = require('../../modules/$.core').Object.getOwnPropertySymbols;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/get-prototype-of.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/get-prototype-of.js
new file mode 100644
index 00000000..9a495afe
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/get-prototype-of.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.object.get-prototype-of');
+module.exports = require('../../modules/$.core').Object.getPrototypeOf;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/index.js
new file mode 100644
index 00000000..0fb75bc5
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/index.js
@@ -0,0 +1,23 @@
+require('../../modules/es6.symbol');
+require('../../modules/es6.object.assign');
+require('../../modules/es6.object.is');
+require('../../modules/es6.object.set-prototype-of');
+require('../../modules/es6.object.to-string');
+require('../../modules/es6.object.freeze');
+require('../../modules/es6.object.seal');
+require('../../modules/es6.object.prevent-extensions');
+require('../../modules/es6.object.is-frozen');
+require('../../modules/es6.object.is-sealed');
+require('../../modules/es6.object.is-extensible');
+require('../../modules/es6.object.get-own-property-descriptor');
+require('../../modules/es6.object.get-prototype-of');
+require('../../modules/es6.object.keys');
+require('../../modules/es6.object.get-own-property-names');
+require('../../modules/es7.object.get-own-property-descriptors');
+require('../../modules/es7.object.values');
+require('../../modules/es7.object.entries');
+require('../../modules/core.object.is-object');
+require('../../modules/core.object.classof');
+require('../../modules/core.object.define');
+require('../../modules/core.object.make');
+module.exports = require('../../modules/$.core').Object;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/is-extensible.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/is-extensible.js
new file mode 100644
index 00000000..8bb0cf9f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/is-extensible.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.object.is-extensible');
+module.exports = require('../../modules/$.core').Object.isExtensible;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/is-frozen.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/is-frozen.js
new file mode 100644
index 00000000..7bf1f127
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/is-frozen.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.object.is-frozen');
+module.exports = require('../../modules/$.core').Object.isFrozen;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/is-object.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/is-object.js
new file mode 100644
index 00000000..935cb6ec
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/is-object.js
@@ -0,0 +1,2 @@
+require('../../modules/core.object.is-object');
+module.exports = require('../../modules/$.core').Object.isObject;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/is-sealed.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/is-sealed.js
new file mode 100644
index 00000000..05416f37
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/is-sealed.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.object.is-sealed');
+module.exports = require('../../modules/$.core').Object.isSealed;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/is.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/is.js
new file mode 100644
index 00000000..d07c3ae1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/is.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.object.is');
+module.exports = require('../../modules/$.core').Object.is;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/keys.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/keys.js
new file mode 100644
index 00000000..ebfb8c65
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/keys.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.object.keys');
+module.exports = require('../../modules/$.core').Object.keys;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/make.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/make.js
new file mode 100644
index 00000000..fbfb2f85
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/make.js
@@ -0,0 +1,2 @@
+require('../../modules/core.object.make');
+module.exports = require('../../modules/$.core').Object.make;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/prevent-extensions.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/prevent-extensions.js
new file mode 100644
index 00000000..01d82fcb
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/prevent-extensions.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.object.prevent-extensions');
+module.exports = require('../../modules/$.core').Object.preventExtensions;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/seal.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/seal.js
new file mode 100644
index 00000000..fdf84b82
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/seal.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.object.seal');
+module.exports = require('../../modules/$.core').Object.seal;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/set-prototype-of.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/set-prototype-of.js
new file mode 100644
index 00000000..cd94d875
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/set-prototype-of.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.object.set-prototype-of');
+module.exports = require('../../modules/$.core').Object.setPrototypeOf;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/values.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/values.js
new file mode 100644
index 00000000..b96071ff
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/object/values.js
@@ -0,0 +1,2 @@
+require('../../modules/es7.object.values');
+module.exports = require('../../modules/$.core').Object.values;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/promise.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/promise.js
new file mode 100644
index 00000000..0a099613
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/promise.js
@@ -0,0 +1,5 @@
+require('../modules/es6.object.to-string');
+require('../modules/es6.string.iterator');
+require('../modules/web.dom.iterable');
+require('../modules/es6.promise');
+module.exports = require('../modules/$.core').Promise;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/apply.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/apply.js
new file mode 100644
index 00000000..75e5ff5b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/apply.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.reflect.apply');
+module.exports = require('../../modules/$.core').Reflect.apply;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/construct.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/construct.js
new file mode 100644
index 00000000..adc40ea8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/construct.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.reflect.construct');
+module.exports = require('../../modules/$.core').Reflect.construct;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/define-property.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/define-property.js
new file mode 100644
index 00000000..da78d62e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/define-property.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.reflect.define-property');
+module.exports = require('../../modules/$.core').Reflect.defineProperty;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/delete-property.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/delete-property.js
new file mode 100644
index 00000000..411225f6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/delete-property.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.reflect.delete-property');
+module.exports = require('../../modules/$.core').Reflect.deleteProperty;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/enumerate.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/enumerate.js
new file mode 100644
index 00000000..c19e0b6b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/enumerate.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.reflect.enumerate');
+module.exports = require('../../modules/$.core').Reflect.enumerate;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/get-own-property-descriptor.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/get-own-property-descriptor.js
new file mode 100644
index 00000000..22e2aa66
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/get-own-property-descriptor.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.reflect.get-own-property-descriptor');
+module.exports = require('../../modules/$.core').Reflect.getOwnPropertyDescriptor;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/get-prototype-of.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/get-prototype-of.js
new file mode 100644
index 00000000..2ff331a4
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/get-prototype-of.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.reflect.get-prototype-of');
+module.exports = require('../../modules/$.core').Reflect.getPrototypeOf;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/get.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/get.js
new file mode 100644
index 00000000..266508c6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/get.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.reflect.get');
+module.exports = require('../../modules/$.core').Reflect.get;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/has.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/has.js
new file mode 100644
index 00000000..db14fa11
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/has.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.reflect.has');
+module.exports = require('../../modules/$.core').Reflect.has;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/index.js
new file mode 100644
index 00000000..5b216653
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/index.js
@@ -0,0 +1,15 @@
+require('../../modules/es6.reflect.apply');
+require('../../modules/es6.reflect.construct');
+require('../../modules/es6.reflect.define-property');
+require('../../modules/es6.reflect.delete-property');
+require('../../modules/es6.reflect.enumerate');
+require('../../modules/es6.reflect.get');
+require('../../modules/es6.reflect.get-own-property-descriptor');
+require('../../modules/es6.reflect.get-prototype-of');
+require('../../modules/es6.reflect.has');
+require('../../modules/es6.reflect.is-extensible');
+require('../../modules/es6.reflect.own-keys');
+require('../../modules/es6.reflect.prevent-extensions');
+require('../../modules/es6.reflect.set');
+require('../../modules/es6.reflect.set-prototype-of');
+module.exports = require('../../modules/$.core').Reflect;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/is-extensible.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/is-extensible.js
new file mode 100644
index 00000000..f0329e28
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/is-extensible.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.reflect.is-extensible');
+module.exports = require('../../modules/$.core').Reflect.isExtensible;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/own-keys.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/own-keys.js
new file mode 100644
index 00000000..6da1136d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/own-keys.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.reflect.own-keys');
+module.exports = require('../../modules/$.core').Reflect.ownKeys;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/prevent-extensions.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/prevent-extensions.js
new file mode 100644
index 00000000..48fb5d5a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/prevent-extensions.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.reflect.prevent-extensions');
+module.exports = require('../../modules/$.core').Reflect.preventExtensions;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/set-prototype-of.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/set-prototype-of.js
new file mode 100644
index 00000000..09cddebc
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/set-prototype-of.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.reflect.set-prototype-of');
+module.exports = require('../../modules/$.core').Reflect.setPrototypeOf;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/set.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/set.js
new file mode 100644
index 00000000..d1afec9c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/reflect/set.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.reflect.set');
+module.exports = require('../../modules/$.core').Reflect.set;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/regexp/escape.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/regexp/escape.js
new file mode 100644
index 00000000..0c8d06b4
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/regexp/escape.js
@@ -0,0 +1,2 @@
+require('../../modules/es7.regexp.escape');
+module.exports = require('../../modules/$.core').RegExp.escape;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/regexp/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/regexp/index.js
new file mode 100644
index 00000000..7d905d67
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/regexp/index.js
@@ -0,0 +1,8 @@
+require('../../modules/es6.regexp.constructor');
+require('../../modules/es6.regexp.flags');
+require('../../modules/es6.regexp.match');
+require('../../modules/es6.regexp.replace');
+require('../../modules/es6.regexp.search');
+require('../../modules/es6.regexp.split');
+require('../../modules/es7.regexp.escape');
+module.exports = require('../../modules/$.core').RegExp;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/set-immediate.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/set-immediate.js
new file mode 100644
index 00000000..2dd87df2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/set-immediate.js
@@ -0,0 +1,2 @@
+require('../modules/web.immediate');
+module.exports = require('../modules/$.core').setImmediate;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/set-interval.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/set-interval.js
new file mode 100644
index 00000000..4c7dd8e9
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/set-interval.js
@@ -0,0 +1,2 @@
+require('../modules/web.timers');
+module.exports = require('../modules/$.core').setInterval;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/set-timeout.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/set-timeout.js
new file mode 100644
index 00000000..4e786194
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/set-timeout.js
@@ -0,0 +1,2 @@
+require('../modules/web.timers');
+module.exports = require('../modules/$.core').setTimeout;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/set.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/set.js
new file mode 100644
index 00000000..34615f1d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/set.js
@@ -0,0 +1,6 @@
+require('../modules/es6.object.to-string');
+require('../modules/es6.string.iterator');
+require('../modules/web.dom.iterable');
+require('../modules/es6.set');
+require('../modules/es7.set.to-json');
+module.exports = require('../modules/$.core').Set;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/at.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/at.js
new file mode 100644
index 00000000..d59d2aff
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/at.js
@@ -0,0 +1,2 @@
+require('../../modules/es7.string.at');
+module.exports = require('../../modules/$.core').String.at;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/code-point-at.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/code-point-at.js
new file mode 100644
index 00000000..74e933aa
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/code-point-at.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.string.code-point-at');
+module.exports = require('../../modules/$.core').String.codePointAt;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/ends-with.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/ends-with.js
new file mode 100644
index 00000000..7fe5cb74
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/ends-with.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.string.ends-with');
+module.exports = require('../../modules/$.core').String.endsWith;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/escape-html.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/escape-html.js
new file mode 100644
index 00000000..a6c62faf
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/escape-html.js
@@ -0,0 +1,2 @@
+require('../../modules/core.string.escape-html');
+module.exports = require('../../modules/$.core').String.escapeHTML;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/from-code-point.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/from-code-point.js
new file mode 100644
index 00000000..0b42e7ae
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/from-code-point.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.string.from-code-point');
+module.exports = require('../../modules/$.core').String.fromCodePoint;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/includes.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/includes.js
new file mode 100644
index 00000000..441bc594
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/includes.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.string.includes');
+module.exports = require('../../modules/$.core').String.includes;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/index.js
new file mode 100644
index 00000000..6be228ca
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/index.js
@@ -0,0 +1,21 @@
+require('../../modules/es6.string.from-code-point');
+require('../../modules/es6.string.raw');
+require('../../modules/es6.string.trim');
+require('../../modules/es6.string.iterator');
+require('../../modules/es6.string.code-point-at');
+require('../../modules/es6.string.ends-with');
+require('../../modules/es6.string.includes');
+require('../../modules/es6.string.repeat');
+require('../../modules/es6.string.starts-with');
+require('../../modules/es6.regexp.match');
+require('../../modules/es6.regexp.replace');
+require('../../modules/es6.regexp.search');
+require('../../modules/es6.regexp.split');
+require('../../modules/es7.string.at');
+require('../../modules/es7.string.pad-left');
+require('../../modules/es7.string.pad-right');
+require('../../modules/es7.string.trim-left');
+require('../../modules/es7.string.trim-right');
+require('../../modules/core.string.escape-html');
+require('../../modules/core.string.unescape-html');
+module.exports = require('../../modules/$.core').String;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/iterator.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/iterator.js
new file mode 100644
index 00000000..15733645
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/iterator.js
@@ -0,0 +1,5 @@
+require('../../modules/es6.string.iterator');
+var get = require('../../modules/$.iterators').String;
+module.exports = function(it){
+ return get.call(it);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/pad-left.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/pad-left.js
new file mode 100644
index 00000000..e89419c9
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/pad-left.js
@@ -0,0 +1,2 @@
+require('../../modules/es7.string.pad-left');
+module.exports = require('../../modules/$.core').String.padLeft;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/pad-right.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/pad-right.js
new file mode 100644
index 00000000..a87a412e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/pad-right.js
@@ -0,0 +1,2 @@
+require('../../modules/es7.string.pad-right');
+module.exports = require('../../modules/$.core').String.padRight;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/raw.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/raw.js
new file mode 100644
index 00000000..0c04fd34
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/raw.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.string.raw');
+module.exports = require('../../modules/$.core').String.raw;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/repeat.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/repeat.js
new file mode 100644
index 00000000..36107095
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/repeat.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.string.repeat');
+module.exports = require('../../modules/$.core').String.repeat;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/starts-with.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/starts-with.js
new file mode 100644
index 00000000..edee8311
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/starts-with.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.string.starts-with');
+module.exports = require('../../modules/$.core').String.startsWith;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/trim-left.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/trim-left.js
new file mode 100644
index 00000000..579ad397
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/trim-left.js
@@ -0,0 +1,2 @@
+require('../../modules/es7.string.trim-left');
+module.exports = require('../../modules/$.core').String.trimLeft;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/trim-right.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/trim-right.js
new file mode 100644
index 00000000..2168d945
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/trim-right.js
@@ -0,0 +1,2 @@
+require('../../modules/es7.string.trim-right');
+module.exports = require('../../modules/$.core').String.trimRight;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/trim.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/trim.js
new file mode 100644
index 00000000..61c64701
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/trim.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.string.trim');
+module.exports = require('../../modules/$.core').String.trim;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/unescape-html.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/unescape-html.js
new file mode 100644
index 00000000..de09d98b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/string/unescape-html.js
@@ -0,0 +1,2 @@
+require('../../modules/core.string.unescape-html');
+module.exports = require('../../modules/$.core').String.unescapeHTML;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/for.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/for.js
new file mode 100644
index 00000000..1b05275d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/for.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.symbol');
+module.exports = require('../../modules/$.core').Symbol['for'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/has-instance.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/has-instance.js
new file mode 100644
index 00000000..b264f990
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/has-instance.js
@@ -0,0 +1 @@
+module.exports = require('../../modules/$.wks')('hasInstance');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/index.js
new file mode 100644
index 00000000..c8f81d18
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/index.js
@@ -0,0 +1,3 @@
+require('../../modules/es6.symbol');
+require('../../modules/es6.object.to-string');
+module.exports = require('../../modules/$.core').Symbol;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/is-concat-spreadable.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/is-concat-spreadable.js
new file mode 100644
index 00000000..17d5a266
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/is-concat-spreadable.js
@@ -0,0 +1 @@
+module.exports = require('../../modules/$.wks')('isConcatSpreadable');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/iterator.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/iterator.js
new file mode 100644
index 00000000..7e1b7985
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/iterator.js
@@ -0,0 +1,3 @@
+require('../../modules/es6.string.iterator');
+require('../../modules/web.dom.iterable');
+module.exports = require('../../modules/$.wks')('iterator');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/key-for.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/key-for.js
new file mode 100644
index 00000000..e62b1abd
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/key-for.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.symbol');
+module.exports = require('../../modules/$.core').Symbol.keyFor;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/match.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/match.js
new file mode 100644
index 00000000..d25c1196
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/match.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.regexp.match');
+module.exports = require('../../modules/$.wks')('match');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/replace.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/replace.js
new file mode 100644
index 00000000..ce3154b9
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/replace.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.regexp.replace');
+module.exports = require('../../modules/$.wks')('replace');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/search.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/search.js
new file mode 100644
index 00000000..ad781d40
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/search.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.regexp.search');
+module.exports = require('../../modules/$.wks')('search');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/species.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/species.js
new file mode 100644
index 00000000..de937d75
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/species.js
@@ -0,0 +1 @@
+module.exports = require('../../modules/$.wks')('species');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/split.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/split.js
new file mode 100644
index 00000000..27c51667
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/split.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.regexp.split');
+module.exports = require('../../modules/$.wks')('split');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/to-primitive.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/to-primitive.js
new file mode 100644
index 00000000..129eb8b2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/to-primitive.js
@@ -0,0 +1 @@
+module.exports = require('../../modules/$.wks')('toPrimitive');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/to-string-tag.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/to-string-tag.js
new file mode 100644
index 00000000..fc22c861
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/to-string-tag.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.object.to-string');
+module.exports = require('../../modules/$.wks')('toStringTag');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/unscopables.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/unscopables.js
new file mode 100644
index 00000000..39939700
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/symbol/unscopables.js
@@ -0,0 +1 @@
+module.exports = require('../../modules/$.wks')('unscopables');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/weak-map.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/weak-map.js
new file mode 100644
index 00000000..ebf46e6a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/weak-map.js
@@ -0,0 +1,4 @@
+require('../modules/es6.object.to-string');
+require('../modules/web.dom.iterable');
+require('../modules/es6.weak-map');
+module.exports = require('../modules/$.core').WeakMap;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/weak-set.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/weak-set.js
new file mode 100644
index 00000000..a058c8a6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/fn/weak-set.js
@@ -0,0 +1,4 @@
+require('../modules/es6.object.to-string');
+require('../modules/web.dom.iterable');
+require('../modules/es6.weak-set');
+module.exports = require('../modules/$.core').WeakSet;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/index.js
new file mode 100644
index 00000000..9acb1b4a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/index.js
@@ -0,0 +1,16 @@
+require('./shim');
+require('./modules/core.dict');
+require('./modules/core.get-iterator-method');
+require('./modules/core.get-iterator');
+require('./modules/core.is-iterable');
+require('./modules/core.delay');
+require('./modules/core.function.part');
+require('./modules/core.object.is-object');
+require('./modules/core.object.classof');
+require('./modules/core.object.define');
+require('./modules/core.object.make');
+require('./modules/core.number.iterator');
+require('./modules/core.string.escape-html');
+require('./modules/core.string.unescape-html');
+require('./modules/core.log');
+module.exports = require('./modules/$.core');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/js/array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/js/array.js
new file mode 100644
index 00000000..99a53add
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/js/array.js
@@ -0,0 +1,2 @@
+require('../modules/js.array.statics');
+module.exports = require('../modules/$.core').Array;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/js/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/js/index.js
new file mode 100644
index 00000000..47cb5ab5
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/js/index.js
@@ -0,0 +1,2 @@
+require('../modules/js.array.statics');
+module.exports = require('../modules/$.core');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/core/_.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/core/_.js
new file mode 100644
index 00000000..475a66cd
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/core/_.js
@@ -0,0 +1,2 @@
+require('../modules/core.function.part');
+module.exports = require('../modules/$.core')._;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/core/delay.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/core/delay.js
new file mode 100644
index 00000000..1ff9a56d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/core/delay.js
@@ -0,0 +1,2 @@
+require('../modules/core.delay');
+module.exports = require('../modules/$.core').delay;
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/core/dict.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/core/dict.js
new file mode 100644
index 00000000..ed848e2c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/core/dict.js
@@ -0,0 +1,2 @@
+require('../modules/core.dict');
+module.exports = require('../modules/$.core').Dict;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/core/function.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/core/function.js
new file mode 100644
index 00000000..42b6dbb8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/core/function.js
@@ -0,0 +1,2 @@
+require('../modules/core.function.part');
+module.exports = require('../modules/$.core').Function;
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/core/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/core/index.js
new file mode 100644
index 00000000..3d50bdb6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/core/index.js
@@ -0,0 +1,15 @@
+require('../modules/core.dict');
+require('../modules/core.get-iterator-method');
+require('../modules/core.get-iterator');
+require('../modules/core.is-iterable');
+require('../modules/core.delay');
+require('../modules/core.function.part');
+require('../modules/core.object.is-object');
+require('../modules/core.object.classof');
+require('../modules/core.object.define');
+require('../modules/core.object.make');
+require('../modules/core.number.iterator');
+require('../modules/core.string.escape-html');
+require('../modules/core.string.unescape-html');
+require('../modules/core.log');
+module.exports = require('../modules/$.core');
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/core/log.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/core/log.js
new file mode 100644
index 00000000..899d6ed0
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/core/log.js
@@ -0,0 +1,2 @@
+require('../modules/core.log');
+module.exports = require('../modules/$.core').log;
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/core/number.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/core/number.js
new file mode 100644
index 00000000..6e3cdbf6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/core/number.js
@@ -0,0 +1,2 @@
+require('../modules/core.number.iterator');
+module.exports = require('../modules/$.core').Number;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/core/object.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/core/object.js
new file mode 100644
index 00000000..63325663
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/core/object.js
@@ -0,0 +1,5 @@
+require('../modules/core.object.is-object');
+require('../modules/core.object.classof');
+require('../modules/core.object.define');
+require('../modules/core.object.make');
+module.exports = require('../modules/$.core').Object;
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/core/string.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/core/string.js
new file mode 100644
index 00000000..829e0c61
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/core/string.js
@@ -0,0 +1,3 @@
+require('../modules/core.string.escape-html');
+require('../modules/core.string.unescape-html');
+module.exports = require('../modules/$.core').String;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es5/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es5/index.js
new file mode 100644
index 00000000..3c23364a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es5/index.js
@@ -0,0 +1,9 @@
+require('../modules/es5');
+require('../modules/es6.object.freeze');
+require('../modules/es6.object.seal');
+require('../modules/es6.object.prevent-extensions');
+require('../modules/es6.object.is-frozen');
+require('../modules/es6.object.is-sealed');
+require('../modules/es6.object.is-extensible');
+require('../modules/es6.string.trim');
+module.exports = require('../modules/$.core');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/array.js
new file mode 100644
index 00000000..36629ca0
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/array.js
@@ -0,0 +1,10 @@
+require('../modules/es6.string.iterator');
+require('../modules/es6.array.from');
+require('../modules/es6.array.of');
+require('../modules/es6.array.species');
+require('../modules/es6.array.iterator');
+require('../modules/es6.array.copy-within');
+require('../modules/es6.array.fill');
+require('../modules/es6.array.find');
+require('../modules/es6.array.find-index');
+module.exports = require('../modules/$.core').Array;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/function.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/function.js
new file mode 100644
index 00000000..3e61dcd4
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/function.js
@@ -0,0 +1,3 @@
+require('../modules/es6.function.name');
+require('../modules/es6.function.has-instance');
+module.exports = require('../modules/$.core').Function;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/index.js
new file mode 100644
index 00000000..b9fc80be
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/index.js
@@ -0,0 +1,87 @@
+require('../modules/es6.symbol');
+require('../modules/es6.object.assign');
+require('../modules/es6.object.is');
+require('../modules/es6.object.set-prototype-of');
+require('../modules/es6.object.to-string');
+require('../modules/es6.object.freeze');
+require('../modules/es6.object.seal');
+require('../modules/es6.object.prevent-extensions');
+require('../modules/es6.object.is-frozen');
+require('../modules/es6.object.is-sealed');
+require('../modules/es6.object.is-extensible');
+require('../modules/es6.object.get-own-property-descriptor');
+require('../modules/es6.object.get-prototype-of');
+require('../modules/es6.object.keys');
+require('../modules/es6.object.get-own-property-names');
+require('../modules/es6.function.name');
+require('../modules/es6.function.has-instance');
+require('../modules/es6.number.constructor');
+require('../modules/es6.number.epsilon');
+require('../modules/es6.number.is-finite');
+require('../modules/es6.number.is-integer');
+require('../modules/es6.number.is-nan');
+require('../modules/es6.number.is-safe-integer');
+require('../modules/es6.number.max-safe-integer');
+require('../modules/es6.number.min-safe-integer');
+require('../modules/es6.number.parse-float');
+require('../modules/es6.number.parse-int');
+require('../modules/es6.math.acosh');
+require('../modules/es6.math.asinh');
+require('../modules/es6.math.atanh');
+require('../modules/es6.math.cbrt');
+require('../modules/es6.math.clz32');
+require('../modules/es6.math.cosh');
+require('../modules/es6.math.expm1');
+require('../modules/es6.math.fround');
+require('../modules/es6.math.hypot');
+require('../modules/es6.math.imul');
+require('../modules/es6.math.log10');
+require('../modules/es6.math.log1p');
+require('../modules/es6.math.log2');
+require('../modules/es6.math.sign');
+require('../modules/es6.math.sinh');
+require('../modules/es6.math.tanh');
+require('../modules/es6.math.trunc');
+require('../modules/es6.string.from-code-point');
+require('../modules/es6.string.raw');
+require('../modules/es6.string.trim');
+require('../modules/es6.string.iterator');
+require('../modules/es6.string.code-point-at');
+require('../modules/es6.string.ends-with');
+require('../modules/es6.string.includes');
+require('../modules/es6.string.repeat');
+require('../modules/es6.string.starts-with');
+require('../modules/es6.array.from');
+require('../modules/es6.array.of');
+require('../modules/es6.array.species');
+require('../modules/es6.array.iterator');
+require('../modules/es6.array.copy-within');
+require('../modules/es6.array.fill');
+require('../modules/es6.array.find');
+require('../modules/es6.array.find-index');
+require('../modules/es6.regexp.constructor');
+require('../modules/es6.regexp.flags');
+require('../modules/es6.regexp.match');
+require('../modules/es6.regexp.replace');
+require('../modules/es6.regexp.search');
+require('../modules/es6.regexp.split');
+require('../modules/es6.promise');
+require('../modules/es6.map');
+require('../modules/es6.set');
+require('../modules/es6.weak-map');
+require('../modules/es6.weak-set');
+require('../modules/es6.reflect.apply');
+require('../modules/es6.reflect.construct');
+require('../modules/es6.reflect.define-property');
+require('../modules/es6.reflect.delete-property');
+require('../modules/es6.reflect.enumerate');
+require('../modules/es6.reflect.get');
+require('../modules/es6.reflect.get-own-property-descriptor');
+require('../modules/es6.reflect.get-prototype-of');
+require('../modules/es6.reflect.has');
+require('../modules/es6.reflect.is-extensible');
+require('../modules/es6.reflect.own-keys');
+require('../modules/es6.reflect.prevent-extensions');
+require('../modules/es6.reflect.set');
+require('../modules/es6.reflect.set-prototype-of');
+module.exports = require('../modules/$.core');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/map.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/map.js
new file mode 100644
index 00000000..521a192e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/map.js
@@ -0,0 +1,5 @@
+require('../modules/es6.object.to-string');
+require('../modules/es6.string.iterator');
+require('../modules/web.dom.iterable');
+require('../modules/es6.map');
+module.exports = require('../modules/$.core').Map;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/math.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/math.js
new file mode 100644
index 00000000..8b5a2e79
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/math.js
@@ -0,0 +1,18 @@
+require('../modules/es6.math.acosh');
+require('../modules/es6.math.asinh');
+require('../modules/es6.math.atanh');
+require('../modules/es6.math.cbrt');
+require('../modules/es6.math.clz32');
+require('../modules/es6.math.cosh');
+require('../modules/es6.math.expm1');
+require('../modules/es6.math.fround');
+require('../modules/es6.math.hypot');
+require('../modules/es6.math.imul');
+require('../modules/es6.math.log10');
+require('../modules/es6.math.log1p');
+require('../modules/es6.math.log2');
+require('../modules/es6.math.sign');
+require('../modules/es6.math.sinh');
+require('../modules/es6.math.tanh');
+require('../modules/es6.math.trunc');
+module.exports = require('../modules/$.core').Math;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/number.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/number.js
new file mode 100644
index 00000000..8f487703
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/number.js
@@ -0,0 +1,11 @@
+require('../modules/es6.number.constructor');
+require('../modules/es6.number.epsilon');
+require('../modules/es6.number.is-finite');
+require('../modules/es6.number.is-integer');
+require('../modules/es6.number.is-nan');
+require('../modules/es6.number.is-safe-integer');
+require('../modules/es6.number.max-safe-integer');
+require('../modules/es6.number.min-safe-integer');
+require('../modules/es6.number.parse-float');
+require('../modules/es6.number.parse-int');
+module.exports = require('../modules/$.core').Number;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/object.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/object.js
new file mode 100644
index 00000000..94af189f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/object.js
@@ -0,0 +1,17 @@
+require('../modules/es6.symbol');
+require('../modules/es6.object.assign');
+require('../modules/es6.object.is');
+require('../modules/es6.object.set-prototype-of');
+require('../modules/es6.object.to-string');
+require('../modules/es6.object.freeze');
+require('../modules/es6.object.seal');
+require('../modules/es6.object.prevent-extensions');
+require('../modules/es6.object.is-frozen');
+require('../modules/es6.object.is-sealed');
+require('../modules/es6.object.is-extensible');
+require('../modules/es6.object.get-own-property-descriptor');
+require('../modules/es6.object.get-prototype-of');
+require('../modules/es6.object.keys');
+require('../modules/es6.object.get-own-property-names');
+
+module.exports = require('../modules/$.core').Object;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/promise.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/promise.js
new file mode 100644
index 00000000..0a099613
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/promise.js
@@ -0,0 +1,5 @@
+require('../modules/es6.object.to-string');
+require('../modules/es6.string.iterator');
+require('../modules/web.dom.iterable');
+require('../modules/es6.promise');
+module.exports = require('../modules/$.core').Promise;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/reflect.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/reflect.js
new file mode 100644
index 00000000..3c2f74eb
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/reflect.js
@@ -0,0 +1,15 @@
+require('../modules/es6.reflect.apply');
+require('../modules/es6.reflect.construct');
+require('../modules/es6.reflect.define-property');
+require('../modules/es6.reflect.delete-property');
+require('../modules/es6.reflect.enumerate');
+require('../modules/es6.reflect.get');
+require('../modules/es6.reflect.get-own-property-descriptor');
+require('../modules/es6.reflect.get-prototype-of');
+require('../modules/es6.reflect.has');
+require('../modules/es6.reflect.is-extensible');
+require('../modules/es6.reflect.own-keys');
+require('../modules/es6.reflect.prevent-extensions');
+require('../modules/es6.reflect.set');
+require('../modules/es6.reflect.set-prototype-of');
+module.exports = require('../modules/$.core').Reflect;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/regexp.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/regexp.js
new file mode 100644
index 00000000..195d36d4
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/regexp.js
@@ -0,0 +1,7 @@
+require('../modules/es6.regexp.constructor');
+require('../modules/es6.regexp.flags');
+require('../modules/es6.regexp.match');
+require('../modules/es6.regexp.replace');
+require('../modules/es6.regexp.search');
+require('../modules/es6.regexp.split');
+module.exports = require('../modules/$.core').RegExp;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/set.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/set.js
new file mode 100644
index 00000000..6a84f589
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/set.js
@@ -0,0 +1,5 @@
+require('../modules/es6.object.to-string');
+require('../modules/es6.string.iterator');
+require('../modules/web.dom.iterable');
+require('../modules/es6.set');
+module.exports = require('../modules/$.core').Set;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/string.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/string.js
new file mode 100644
index 00000000..bc7a1ab1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/string.js
@@ -0,0 +1,14 @@
+require('../modules/es6.string.from-code-point');
+require('../modules/es6.string.raw');
+require('../modules/es6.string.trim');
+require('../modules/es6.string.iterator');
+require('../modules/es6.string.code-point-at');
+require('../modules/es6.string.ends-with');
+require('../modules/es6.string.includes');
+require('../modules/es6.string.repeat');
+require('../modules/es6.string.starts-with');
+require('../modules/es6.regexp.match');
+require('../modules/es6.regexp.replace');
+require('../modules/es6.regexp.search');
+require('../modules/es6.regexp.split');
+module.exports = require('../modules/$.core').String;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/symbol.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/symbol.js
new file mode 100644
index 00000000..ae2405b5
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/symbol.js
@@ -0,0 +1,3 @@
+require('../modules/es6.symbol');
+require('../modules/es6.object.to-string');
+module.exports = require('../modules/$.core').Symbol;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/weak-map.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/weak-map.js
new file mode 100644
index 00000000..f2c6db89
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/weak-map.js
@@ -0,0 +1,4 @@
+require('../modules/es6.object.to-string');
+require('../modules/es6.array.iterator');
+require('../modules/es6.weak-map');
+module.exports = require('../modules/$.core').WeakMap;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/weak-set.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/weak-set.js
new file mode 100644
index 00000000..a058c8a6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es6/weak-set.js
@@ -0,0 +1,4 @@
+require('../modules/es6.object.to-string');
+require('../modules/web.dom.iterable');
+require('../modules/es6.weak-set');
+module.exports = require('../modules/$.core').WeakSet;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es7/array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es7/array.js
new file mode 100644
index 00000000..e58f9057
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es7/array.js
@@ -0,0 +1,2 @@
+require('../modules/es7.array.includes');
+module.exports = require('../modules/$.core').Array;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es7/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es7/index.js
new file mode 100644
index 00000000..a277b639
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es7/index.js
@@ -0,0 +1,13 @@
+require('../modules/es7.array.includes');
+require('../modules/es7.string.at');
+require('../modules/es7.string.pad-left');
+require('../modules/es7.string.pad-right');
+require('../modules/es7.string.trim-left');
+require('../modules/es7.string.trim-right');
+require('../modules/es7.regexp.escape');
+require('../modules/es7.object.get-own-property-descriptors');
+require('../modules/es7.object.values');
+require('../modules/es7.object.entries');
+require('../modules/es7.map.to-json');
+require('../modules/es7.set.to-json');
+module.exports = require('../modules/$.core');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es7/map.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es7/map.js
new file mode 100644
index 00000000..fe519992
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es7/map.js
@@ -0,0 +1,2 @@
+require('../modules/es7.map.to-json');
+module.exports = require('../modules/$.core').Map;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es7/object.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es7/object.js
new file mode 100644
index 00000000..b0585303
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es7/object.js
@@ -0,0 +1,4 @@
+require('../modules/es7.object.get-own-property-descriptors');
+require('../modules/es7.object.values');
+require('../modules/es7.object.entries');
+module.exports = require('../modules/$.core').Object;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es7/regexp.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es7/regexp.js
new file mode 100644
index 00000000..cb24f98b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es7/regexp.js
@@ -0,0 +1,2 @@
+require('../modules/es7.regexp.escape');
+module.exports = require('../modules/$.core').RegExp;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es7/set.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es7/set.js
new file mode 100644
index 00000000..16e94528
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es7/set.js
@@ -0,0 +1,2 @@
+require('../modules/es7.set.to-json');
+module.exports = require('../modules/$.core').Set;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es7/string.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es7/string.js
new file mode 100644
index 00000000..bca0886c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/es7/string.js
@@ -0,0 +1,6 @@
+require('../modules/es7.string.at');
+require('../modules/es7.string.pad-left');
+require('../modules/es7.string.pad-right');
+require('../modules/es7.string.trim-left');
+require('../modules/es7.string.trim-right');
+module.exports = require('../modules/$.core').String;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/_.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/_.js
new file mode 100644
index 00000000..475a66cd
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/_.js
@@ -0,0 +1,2 @@
+require('../modules/core.function.part');
+module.exports = require('../modules/$.core')._;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/concat.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/concat.js
new file mode 100644
index 00000000..176ecffe
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/concat.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.concat;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/copy-within.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/copy-within.js
new file mode 100644
index 00000000..8a011319
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/copy-within.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.array.copy-within');
+module.exports = require('../../modules/$.core').Array.copyWithin;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/entries.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/entries.js
new file mode 100644
index 00000000..bcdbc33f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/entries.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.array.iterator');
+module.exports = require('../../modules/$.core').Array.entries;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/every.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/every.js
new file mode 100644
index 00000000..0c7d0b7e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/every.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.every;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/fill.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/fill.js
new file mode 100644
index 00000000..f5362120
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/fill.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.array.fill');
+module.exports = require('../../modules/$.core').Array.fill;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/filter.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/filter.js
new file mode 100644
index 00000000..3f5b17ff
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/filter.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.filter;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/find-index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/find-index.js
new file mode 100644
index 00000000..7ec6cf7a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/find-index.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.array.find-index');
+module.exports = require('../../modules/$.core').Array.findIndex;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/find.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/find.js
new file mode 100644
index 00000000..9c3a6b31
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/find.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.array.find');
+module.exports = require('../../modules/$.core').Array.find;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/for-each.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/for-each.js
new file mode 100644
index 00000000..b2e79f0b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/for-each.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.forEach;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/from.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/from.js
new file mode 100644
index 00000000..f0483ccf
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/from.js
@@ -0,0 +1,3 @@
+require('../../modules/es6.string.iterator');
+require('../../modules/es6.array.from');
+module.exports = require('../../modules/$.core').Array.from;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/includes.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/includes.js
new file mode 100644
index 00000000..420c8318
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/includes.js
@@ -0,0 +1,2 @@
+require('../../modules/es7.array.includes');
+module.exports = require('../../modules/$.core').Array.includes;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/index-of.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/index-of.js
new file mode 100644
index 00000000..9f2cd14b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/index-of.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.indexOf;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/index.js
new file mode 100644
index 00000000..2707be21
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/index.js
@@ -0,0 +1,12 @@
+require('../../modules/es6.string.iterator');
+require('../../modules/es6.array.from');
+require('../../modules/es6.array.of');
+require('../../modules/es6.array.species');
+require('../../modules/es6.array.iterator');
+require('../../modules/es6.array.copy-within');
+require('../../modules/es6.array.fill');
+require('../../modules/es6.array.find');
+require('../../modules/es6.array.find-index');
+require('../../modules/es7.array.includes');
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/iterator.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/iterator.js
new file mode 100644
index 00000000..662f3b5c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/iterator.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.array.iterator');
+module.exports = require('../../modules/$.core').Array.values;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/join.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/join.js
new file mode 100644
index 00000000..44363922
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/join.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.join;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/keys.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/keys.js
new file mode 100644
index 00000000..e55d356e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/keys.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.array.iterator');
+module.exports = require('../../modules/$.core').Array.keys;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/last-index-of.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/last-index-of.js
new file mode 100644
index 00000000..678d0072
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/last-index-of.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.lastIndexOf;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/map.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/map.js
new file mode 100644
index 00000000..a1457c7a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/map.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.map;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/of.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/of.js
new file mode 100644
index 00000000..07bb5a4a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/of.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.array.of');
+module.exports = require('../../modules/$.core').Array.of;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/pop.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/pop.js
new file mode 100644
index 00000000..bd8f8610
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/pop.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.pop;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/push.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/push.js
new file mode 100644
index 00000000..3ccf0707
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/push.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.push;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/reduce-right.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/reduce-right.js
new file mode 100644
index 00000000..c592207c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/reduce-right.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.reduceRight;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/reduce.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/reduce.js
new file mode 100644
index 00000000..b8368406
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/reduce.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.reduce;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/reverse.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/reverse.js
new file mode 100644
index 00000000..4d8d235c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/reverse.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.reverse;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/shift.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/shift.js
new file mode 100644
index 00000000..806c87cd
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/shift.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.shift;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/slice.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/slice.js
new file mode 100644
index 00000000..913f7ef2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/slice.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.slice;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/some.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/some.js
new file mode 100644
index 00000000..4f7c7654
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/some.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.some;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/sort.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/sort.js
new file mode 100644
index 00000000..61beed04
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/sort.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.sort;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/splice.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/splice.js
new file mode 100644
index 00000000..5f5eab07
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/splice.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.splice;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/unshift.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/unshift.js
new file mode 100644
index 00000000..a11de528
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/unshift.js
@@ -0,0 +1,2 @@
+require('../../modules/js.array.statics');
+module.exports = require('../../modules/$.core').Array.unshift;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/values.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/values.js
new file mode 100644
index 00000000..662f3b5c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/array/values.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.array.iterator');
+module.exports = require('../../modules/$.core').Array.values;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/clear-immediate.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/clear-immediate.js
new file mode 100644
index 00000000..06a97502
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/clear-immediate.js
@@ -0,0 +1,2 @@
+require('../modules/web.immediate');
+module.exports = require('../modules/$.core').clearImmediate;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/delay.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/delay.js
new file mode 100644
index 00000000..1ff9a56d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/delay.js
@@ -0,0 +1,2 @@
+require('../modules/core.delay');
+module.exports = require('../modules/$.core').delay;
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/dict.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/dict.js
new file mode 100644
index 00000000..ed848e2c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/dict.js
@@ -0,0 +1,2 @@
+require('../modules/core.dict');
+module.exports = require('../modules/$.core').Dict;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/function/has-instance.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/function/has-instance.js
new file mode 100644
index 00000000..78c8221c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/function/has-instance.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.function.has-instance');
+module.exports = Function[require('../../modules/$.wks')('hasInstance')];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/function/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/function/index.js
new file mode 100644
index 00000000..7422fca3
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/function/index.js
@@ -0,0 +1,4 @@
+require('../../modules/es6.function.name');
+require('../../modules/es6.function.has-instance');
+require('../../modules/core.function.part');
+module.exports = require('../../modules/$.core').Function;
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/function/name.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/function/name.js
new file mode 100644
index 00000000..cb70bf15
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/function/name.js
@@ -0,0 +1 @@
+require('../../modules/es6.function.name');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/function/part.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/function/part.js
new file mode 100644
index 00000000..26271d6a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/function/part.js
@@ -0,0 +1,2 @@
+require('../../modules/core.function.part');
+module.exports = require('../../modules/$.core').Function.part;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/get-iterator-method.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/get-iterator-method.js
new file mode 100644
index 00000000..5543cbbf
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/get-iterator-method.js
@@ -0,0 +1,3 @@
+require('../modules/web.dom.iterable');
+require('../modules/es6.string.iterator');
+module.exports = require('../modules/core.get-iterator-method');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/get-iterator.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/get-iterator.js
new file mode 100644
index 00000000..762350ff
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/get-iterator.js
@@ -0,0 +1,3 @@
+require('../modules/web.dom.iterable');
+require('../modules/es6.string.iterator');
+module.exports = require('../modules/core.get-iterator');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/html-collection/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/html-collection/index.js
new file mode 100644
index 00000000..510156b8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/html-collection/index.js
@@ -0,0 +1,2 @@
+require('../../modules/web.dom.iterable');
+module.exports = require('../../modules/$.core');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/html-collection/iterator.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/html-collection/iterator.js
new file mode 100644
index 00000000..c01119b1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/html-collection/iterator.js
@@ -0,0 +1,2 @@
+require('../../modules/web.dom.iterable');
+module.exports = require('../../modules/$.core').Array.values;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/is-iterable.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/is-iterable.js
new file mode 100644
index 00000000..4c654e87
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/is-iterable.js
@@ -0,0 +1,3 @@
+require('../modules/web.dom.iterable');
+require('../modules/es6.string.iterator');
+module.exports = require('../modules/core.is-iterable');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/json/stringify.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/json/stringify.js
new file mode 100644
index 00000000..fef24250
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/json/stringify.js
@@ -0,0 +1,4 @@
+var core = require('../../modules/$.core');
+module.exports = function stringify(it){ // eslint-disable-line no-unused-vars
+ return (core.JSON && core.JSON.stringify || JSON.stringify).apply(JSON, arguments);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/log.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/log.js
new file mode 100644
index 00000000..899d6ed0
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/log.js
@@ -0,0 +1,2 @@
+require('../modules/core.log');
+module.exports = require('../modules/$.core').log;
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/map.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/map.js
new file mode 100644
index 00000000..70998924
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/map.js
@@ -0,0 +1,6 @@
+require('../modules/es6.object.to-string');
+require('../modules/es6.string.iterator');
+require('../modules/web.dom.iterable');
+require('../modules/es6.map');
+require('../modules/es7.map.to-json');
+module.exports = require('../modules/$.core').Map;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/acosh.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/acosh.js
new file mode 100644
index 00000000..d29a88cc
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/acosh.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.acosh');
+module.exports = require('../../modules/$.core').Math.acosh;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/asinh.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/asinh.js
new file mode 100644
index 00000000..7eac2e83
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/asinh.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.asinh');
+module.exports = require('../../modules/$.core').Math.asinh;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/atanh.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/atanh.js
new file mode 100644
index 00000000..a66a47d8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/atanh.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.atanh');
+module.exports = require('../../modules/$.core').Math.atanh;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/cbrt.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/cbrt.js
new file mode 100644
index 00000000..199f5cd8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/cbrt.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.cbrt');
+module.exports = require('../../modules/$.core').Math.cbrt;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/clz32.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/clz32.js
new file mode 100644
index 00000000..2025c6e4
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/clz32.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.clz32');
+module.exports = require('../../modules/$.core').Math.clz32;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/cosh.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/cosh.js
new file mode 100644
index 00000000..17a7ddc0
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/cosh.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.cosh');
+module.exports = require('../../modules/$.core').Math.cosh;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/expm1.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/expm1.js
new file mode 100644
index 00000000..732facb3
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/expm1.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.expm1');
+module.exports = require('../../modules/$.core').Math.expm1;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/fround.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/fround.js
new file mode 100644
index 00000000..37f87069
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/fround.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.fround');
+module.exports = require('../../modules/$.core').Math.fround;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/hypot.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/hypot.js
new file mode 100644
index 00000000..9676c073
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/hypot.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.hypot');
+module.exports = require('../../modules/$.core').Math.hypot;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/imul.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/imul.js
new file mode 100644
index 00000000..2ea2913e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/imul.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.imul');
+module.exports = require('../../modules/$.core').Math.imul;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/index.js
new file mode 100644
index 00000000..14628ae5
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/index.js
@@ -0,0 +1,18 @@
+require('../../modules/es6.math.acosh');
+require('../../modules/es6.math.asinh');
+require('../../modules/es6.math.atanh');
+require('../../modules/es6.math.cbrt');
+require('../../modules/es6.math.clz32');
+require('../../modules/es6.math.cosh');
+require('../../modules/es6.math.expm1');
+require('../../modules/es6.math.fround');
+require('../../modules/es6.math.hypot');
+require('../../modules/es6.math.imul');
+require('../../modules/es6.math.log10');
+require('../../modules/es6.math.log1p');
+require('../../modules/es6.math.log2');
+require('../../modules/es6.math.sign');
+require('../../modules/es6.math.sinh');
+require('../../modules/es6.math.tanh');
+require('../../modules/es6.math.trunc');
+module.exports = require('../../modules/$.core').Math;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/log10.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/log10.js
new file mode 100644
index 00000000..ecf7b9b2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/log10.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.log10');
+module.exports = require('../../modules/$.core').Math.log10;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/log1p.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/log1p.js
new file mode 100644
index 00000000..6db73292
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/log1p.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.log1p');
+module.exports = require('../../modules/$.core').Math.log1p;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/log2.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/log2.js
new file mode 100644
index 00000000..63c74d7b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/log2.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.log2');
+module.exports = require('../../modules/$.core').Math.log2;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/sign.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/sign.js
new file mode 100644
index 00000000..47ab74f2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/sign.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.sign');
+module.exports = require('../../modules/$.core').Math.sign;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/sinh.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/sinh.js
new file mode 100644
index 00000000..72c6e857
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/sinh.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.sinh');
+module.exports = require('../../modules/$.core').Math.sinh;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/tanh.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/tanh.js
new file mode 100644
index 00000000..30ddbcc8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/tanh.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.tanh');
+module.exports = require('../../modules/$.core').Math.tanh;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/trunc.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/trunc.js
new file mode 100644
index 00000000..b084efa7
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/math/trunc.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.math.trunc');
+module.exports = require('../../modules/$.core').Math.trunc;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/node-list/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/node-list/index.js
new file mode 100644
index 00000000..510156b8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/node-list/index.js
@@ -0,0 +1,2 @@
+require('../../modules/web.dom.iterable');
+module.exports = require('../../modules/$.core');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/node-list/iterator.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/node-list/iterator.js
new file mode 100644
index 00000000..c01119b1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/node-list/iterator.js
@@ -0,0 +1,2 @@
+require('../../modules/web.dom.iterable');
+module.exports = require('../../modules/$.core').Array.values;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/epsilon.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/epsilon.js
new file mode 100644
index 00000000..56c93521
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/epsilon.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.number.epsilon');
+module.exports = Math.pow(2, -52);
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/index.js
new file mode 100644
index 00000000..d048d590
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/index.js
@@ -0,0 +1,12 @@
+require('../../modules/es6.number.constructor');
+require('../../modules/es6.number.epsilon');
+require('../../modules/es6.number.is-finite');
+require('../../modules/es6.number.is-integer');
+require('../../modules/es6.number.is-nan');
+require('../../modules/es6.number.is-safe-integer');
+require('../../modules/es6.number.max-safe-integer');
+require('../../modules/es6.number.min-safe-integer');
+require('../../modules/es6.number.parse-float');
+require('../../modules/es6.number.parse-int');
+require('../../modules/core.number.iterator');
+module.exports = require('../../modules/$.core').Number;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/is-finite.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/is-finite.js
new file mode 100644
index 00000000..ff666503
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/is-finite.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.number.is-finite');
+module.exports = require('../../modules/$.core').Number.isFinite;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/is-integer.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/is-integer.js
new file mode 100644
index 00000000..682e1e34
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/is-integer.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.number.is-integer');
+module.exports = require('../../modules/$.core').Number.isInteger;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/is-nan.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/is-nan.js
new file mode 100644
index 00000000..6ad6923b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/is-nan.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.number.is-nan');
+module.exports = require('../../modules/$.core').Number.isNaN;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/is-safe-integer.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/is-safe-integer.js
new file mode 100644
index 00000000..a47fd42e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/is-safe-integer.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.number.is-safe-integer');
+module.exports = require('../../modules/$.core').Number.isSafeInteger;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/iterator.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/iterator.js
new file mode 100644
index 00000000..57cb7906
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/iterator.js
@@ -0,0 +1,5 @@
+require('../../modules/core.number.iterator');
+var get = require('../../modules/$.iterators').Number;
+module.exports = function(it){
+ return get.call(it);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/max-safe-integer.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/max-safe-integer.js
new file mode 100644
index 00000000..c9b43b04
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/max-safe-integer.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.number.max-safe-integer');
+module.exports = 0x1fffffffffffff;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/min-safe-integer.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/min-safe-integer.js
new file mode 100644
index 00000000..8b5e0728
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/min-safe-integer.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.number.min-safe-integer');
+module.exports = -0x1fffffffffffff;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/parse-float.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/parse-float.js
new file mode 100644
index 00000000..62f89774
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/parse-float.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.number.parse-float');
+module.exports = parseFloat;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/parse-int.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/parse-int.js
new file mode 100644
index 00000000..c197da5b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/number/parse-int.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.number.parse-int');
+module.exports = parseInt;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/assign.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/assign.js
new file mode 100644
index 00000000..a57c54aa
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/assign.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.object.assign');
+module.exports = require('../../modules/$.core').Object.assign;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/classof.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/classof.js
new file mode 100644
index 00000000..3afc8268
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/classof.js
@@ -0,0 +1,2 @@
+require('../../modules/core.object.classof');
+module.exports = require('../../modules/$.core').Object.classof;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/create.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/create.js
new file mode 100644
index 00000000..8f5f3263
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/create.js
@@ -0,0 +1,4 @@
+var $ = require('../../modules/$');
+module.exports = function create(P, D){
+ return $.create(P, D);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/define-properties.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/define-properties.js
new file mode 100644
index 00000000..a857aab8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/define-properties.js
@@ -0,0 +1,4 @@
+var $ = require('../../modules/$');
+module.exports = function defineProperties(T, D){
+ return $.setDescs(T, D);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/define-property.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/define-property.js
new file mode 100644
index 00000000..7384315d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/define-property.js
@@ -0,0 +1,4 @@
+var $ = require('../../modules/$');
+module.exports = function defineProperty(it, key, desc){
+ return $.setDesc(it, key, desc);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/define.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/define.js
new file mode 100644
index 00000000..690773e2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/define.js
@@ -0,0 +1,2 @@
+require('../../modules/core.object.define');
+module.exports = require('../../modules/$.core').Object.define;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/entries.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/entries.js
new file mode 100644
index 00000000..a32fe391
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/entries.js
@@ -0,0 +1,2 @@
+require('../../modules/es7.object.entries');
+module.exports = require('../../modules/$.core').Object.entries;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/freeze.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/freeze.js
new file mode 100644
index 00000000..566eec51
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/freeze.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.object.freeze');
+module.exports = require('../../modules/$.core').Object.freeze;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/get-own-property-descriptor.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/get-own-property-descriptor.js
new file mode 100644
index 00000000..2e1845cf
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/get-own-property-descriptor.js
@@ -0,0 +1,5 @@
+var $ = require('../../modules/$');
+require('../../modules/es6.object.get-own-property-descriptor');
+module.exports = function getOwnPropertyDescriptor(it, key){
+ return $.getDesc(it, key);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/get-own-property-descriptors.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/get-own-property-descriptors.js
new file mode 100644
index 00000000..f26341d5
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/get-own-property-descriptors.js
@@ -0,0 +1,2 @@
+require('../../modules/es7.object.get-own-property-descriptors');
+module.exports = require('../../modules/$.core').Object.getOwnPropertyDescriptors;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/get-own-property-names.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/get-own-property-names.js
new file mode 100644
index 00000000..496eb197
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/get-own-property-names.js
@@ -0,0 +1,5 @@
+var $ = require('../../modules/$');
+require('../../modules/es6.object.get-own-property-names');
+module.exports = function getOwnPropertyNames(it){
+ return $.getNames(it);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/get-own-property-symbols.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/get-own-property-symbols.js
new file mode 100644
index 00000000..f78921b5
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/get-own-property-symbols.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.symbol');
+module.exports = require('../../modules/$.core').Object.getOwnPropertySymbols;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/get-prototype-of.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/get-prototype-of.js
new file mode 100644
index 00000000..9a495afe
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/get-prototype-of.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.object.get-prototype-of');
+module.exports = require('../../modules/$.core').Object.getPrototypeOf;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/index.js
new file mode 100644
index 00000000..0fb75bc5
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/index.js
@@ -0,0 +1,23 @@
+require('../../modules/es6.symbol');
+require('../../modules/es6.object.assign');
+require('../../modules/es6.object.is');
+require('../../modules/es6.object.set-prototype-of');
+require('../../modules/es6.object.to-string');
+require('../../modules/es6.object.freeze');
+require('../../modules/es6.object.seal');
+require('../../modules/es6.object.prevent-extensions');
+require('../../modules/es6.object.is-frozen');
+require('../../modules/es6.object.is-sealed');
+require('../../modules/es6.object.is-extensible');
+require('../../modules/es6.object.get-own-property-descriptor');
+require('../../modules/es6.object.get-prototype-of');
+require('../../modules/es6.object.keys');
+require('../../modules/es6.object.get-own-property-names');
+require('../../modules/es7.object.get-own-property-descriptors');
+require('../../modules/es7.object.values');
+require('../../modules/es7.object.entries');
+require('../../modules/core.object.is-object');
+require('../../modules/core.object.classof');
+require('../../modules/core.object.define');
+require('../../modules/core.object.make');
+module.exports = require('../../modules/$.core').Object;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/is-extensible.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/is-extensible.js
new file mode 100644
index 00000000..8bb0cf9f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/is-extensible.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.object.is-extensible');
+module.exports = require('../../modules/$.core').Object.isExtensible;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/is-frozen.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/is-frozen.js
new file mode 100644
index 00000000..7bf1f127
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/is-frozen.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.object.is-frozen');
+module.exports = require('../../modules/$.core').Object.isFrozen;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/is-object.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/is-object.js
new file mode 100644
index 00000000..935cb6ec
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/is-object.js
@@ -0,0 +1,2 @@
+require('../../modules/core.object.is-object');
+module.exports = require('../../modules/$.core').Object.isObject;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/is-sealed.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/is-sealed.js
new file mode 100644
index 00000000..05416f37
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/is-sealed.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.object.is-sealed');
+module.exports = require('../../modules/$.core').Object.isSealed;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/is.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/is.js
new file mode 100644
index 00000000..d07c3ae1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/is.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.object.is');
+module.exports = require('../../modules/$.core').Object.is;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/keys.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/keys.js
new file mode 100644
index 00000000..ebfb8c65
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/keys.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.object.keys');
+module.exports = require('../../modules/$.core').Object.keys;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/make.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/make.js
new file mode 100644
index 00000000..fbfb2f85
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/make.js
@@ -0,0 +1,2 @@
+require('../../modules/core.object.make');
+module.exports = require('../../modules/$.core').Object.make;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/prevent-extensions.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/prevent-extensions.js
new file mode 100644
index 00000000..01d82fcb
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/prevent-extensions.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.object.prevent-extensions');
+module.exports = require('../../modules/$.core').Object.preventExtensions;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/seal.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/seal.js
new file mode 100644
index 00000000..fdf84b82
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/seal.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.object.seal');
+module.exports = require('../../modules/$.core').Object.seal;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/set-prototype-of.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/set-prototype-of.js
new file mode 100644
index 00000000..cd94d875
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/set-prototype-of.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.object.set-prototype-of');
+module.exports = require('../../modules/$.core').Object.setPrototypeOf;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/values.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/values.js
new file mode 100644
index 00000000..b96071ff
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/object/values.js
@@ -0,0 +1,2 @@
+require('../../modules/es7.object.values');
+module.exports = require('../../modules/$.core').Object.values;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/promise.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/promise.js
new file mode 100644
index 00000000..0a099613
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/promise.js
@@ -0,0 +1,5 @@
+require('../modules/es6.object.to-string');
+require('../modules/es6.string.iterator');
+require('../modules/web.dom.iterable');
+require('../modules/es6.promise');
+module.exports = require('../modules/$.core').Promise;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/apply.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/apply.js
new file mode 100644
index 00000000..75e5ff5b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/apply.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.reflect.apply');
+module.exports = require('../../modules/$.core').Reflect.apply;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/construct.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/construct.js
new file mode 100644
index 00000000..adc40ea8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/construct.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.reflect.construct');
+module.exports = require('../../modules/$.core').Reflect.construct;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/define-property.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/define-property.js
new file mode 100644
index 00000000..da78d62e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/define-property.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.reflect.define-property');
+module.exports = require('../../modules/$.core').Reflect.defineProperty;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/delete-property.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/delete-property.js
new file mode 100644
index 00000000..411225f6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/delete-property.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.reflect.delete-property');
+module.exports = require('../../modules/$.core').Reflect.deleteProperty;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/enumerate.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/enumerate.js
new file mode 100644
index 00000000..c19e0b6b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/enumerate.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.reflect.enumerate');
+module.exports = require('../../modules/$.core').Reflect.enumerate;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/get-own-property-descriptor.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/get-own-property-descriptor.js
new file mode 100644
index 00000000..22e2aa66
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/get-own-property-descriptor.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.reflect.get-own-property-descriptor');
+module.exports = require('../../modules/$.core').Reflect.getOwnPropertyDescriptor;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/get-prototype-of.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/get-prototype-of.js
new file mode 100644
index 00000000..2ff331a4
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/get-prototype-of.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.reflect.get-prototype-of');
+module.exports = require('../../modules/$.core').Reflect.getPrototypeOf;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/get.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/get.js
new file mode 100644
index 00000000..266508c6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/get.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.reflect.get');
+module.exports = require('../../modules/$.core').Reflect.get;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/has.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/has.js
new file mode 100644
index 00000000..db14fa11
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/has.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.reflect.has');
+module.exports = require('../../modules/$.core').Reflect.has;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/index.js
new file mode 100644
index 00000000..5b216653
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/index.js
@@ -0,0 +1,15 @@
+require('../../modules/es6.reflect.apply');
+require('../../modules/es6.reflect.construct');
+require('../../modules/es6.reflect.define-property');
+require('../../modules/es6.reflect.delete-property');
+require('../../modules/es6.reflect.enumerate');
+require('../../modules/es6.reflect.get');
+require('../../modules/es6.reflect.get-own-property-descriptor');
+require('../../modules/es6.reflect.get-prototype-of');
+require('../../modules/es6.reflect.has');
+require('../../modules/es6.reflect.is-extensible');
+require('../../modules/es6.reflect.own-keys');
+require('../../modules/es6.reflect.prevent-extensions');
+require('../../modules/es6.reflect.set');
+require('../../modules/es6.reflect.set-prototype-of');
+module.exports = require('../../modules/$.core').Reflect;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/is-extensible.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/is-extensible.js
new file mode 100644
index 00000000..f0329e28
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/is-extensible.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.reflect.is-extensible');
+module.exports = require('../../modules/$.core').Reflect.isExtensible;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/own-keys.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/own-keys.js
new file mode 100644
index 00000000..6da1136d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/own-keys.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.reflect.own-keys');
+module.exports = require('../../modules/$.core').Reflect.ownKeys;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/prevent-extensions.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/prevent-extensions.js
new file mode 100644
index 00000000..48fb5d5a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/prevent-extensions.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.reflect.prevent-extensions');
+module.exports = require('../../modules/$.core').Reflect.preventExtensions;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/set-prototype-of.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/set-prototype-of.js
new file mode 100644
index 00000000..09cddebc
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/set-prototype-of.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.reflect.set-prototype-of');
+module.exports = require('../../modules/$.core').Reflect.setPrototypeOf;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/set.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/set.js
new file mode 100644
index 00000000..d1afec9c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/reflect/set.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.reflect.set');
+module.exports = require('../../modules/$.core').Reflect.set;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/regexp/escape.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/regexp/escape.js
new file mode 100644
index 00000000..0c8d06b4
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/regexp/escape.js
@@ -0,0 +1,2 @@
+require('../../modules/es7.regexp.escape');
+module.exports = require('../../modules/$.core').RegExp.escape;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/regexp/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/regexp/index.js
new file mode 100644
index 00000000..7d905d67
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/regexp/index.js
@@ -0,0 +1,8 @@
+require('../../modules/es6.regexp.constructor');
+require('../../modules/es6.regexp.flags');
+require('../../modules/es6.regexp.match');
+require('../../modules/es6.regexp.replace');
+require('../../modules/es6.regexp.search');
+require('../../modules/es6.regexp.split');
+require('../../modules/es7.regexp.escape');
+module.exports = require('../../modules/$.core').RegExp;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/set-immediate.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/set-immediate.js
new file mode 100644
index 00000000..2dd87df2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/set-immediate.js
@@ -0,0 +1,2 @@
+require('../modules/web.immediate');
+module.exports = require('../modules/$.core').setImmediate;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/set-interval.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/set-interval.js
new file mode 100644
index 00000000..4c7dd8e9
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/set-interval.js
@@ -0,0 +1,2 @@
+require('../modules/web.timers');
+module.exports = require('../modules/$.core').setInterval;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/set-timeout.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/set-timeout.js
new file mode 100644
index 00000000..4e786194
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/set-timeout.js
@@ -0,0 +1,2 @@
+require('../modules/web.timers');
+module.exports = require('../modules/$.core').setTimeout;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/set.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/set.js
new file mode 100644
index 00000000..34615f1d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/set.js
@@ -0,0 +1,6 @@
+require('../modules/es6.object.to-string');
+require('../modules/es6.string.iterator');
+require('../modules/web.dom.iterable');
+require('../modules/es6.set');
+require('../modules/es7.set.to-json');
+module.exports = require('../modules/$.core').Set;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/at.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/at.js
new file mode 100644
index 00000000..d59d2aff
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/at.js
@@ -0,0 +1,2 @@
+require('../../modules/es7.string.at');
+module.exports = require('../../modules/$.core').String.at;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/code-point-at.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/code-point-at.js
new file mode 100644
index 00000000..74e933aa
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/code-point-at.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.string.code-point-at');
+module.exports = require('../../modules/$.core').String.codePointAt;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/ends-with.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/ends-with.js
new file mode 100644
index 00000000..7fe5cb74
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/ends-with.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.string.ends-with');
+module.exports = require('../../modules/$.core').String.endsWith;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/escape-html.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/escape-html.js
new file mode 100644
index 00000000..a6c62faf
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/escape-html.js
@@ -0,0 +1,2 @@
+require('../../modules/core.string.escape-html');
+module.exports = require('../../modules/$.core').String.escapeHTML;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/from-code-point.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/from-code-point.js
new file mode 100644
index 00000000..0b42e7ae
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/from-code-point.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.string.from-code-point');
+module.exports = require('../../modules/$.core').String.fromCodePoint;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/includes.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/includes.js
new file mode 100644
index 00000000..441bc594
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/includes.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.string.includes');
+module.exports = require('../../modules/$.core').String.includes;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/index.js
new file mode 100644
index 00000000..6be228ca
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/index.js
@@ -0,0 +1,21 @@
+require('../../modules/es6.string.from-code-point');
+require('../../modules/es6.string.raw');
+require('../../modules/es6.string.trim');
+require('../../modules/es6.string.iterator');
+require('../../modules/es6.string.code-point-at');
+require('../../modules/es6.string.ends-with');
+require('../../modules/es6.string.includes');
+require('../../modules/es6.string.repeat');
+require('../../modules/es6.string.starts-with');
+require('../../modules/es6.regexp.match');
+require('../../modules/es6.regexp.replace');
+require('../../modules/es6.regexp.search');
+require('../../modules/es6.regexp.split');
+require('../../modules/es7.string.at');
+require('../../modules/es7.string.pad-left');
+require('../../modules/es7.string.pad-right');
+require('../../modules/es7.string.trim-left');
+require('../../modules/es7.string.trim-right');
+require('../../modules/core.string.escape-html');
+require('../../modules/core.string.unescape-html');
+module.exports = require('../../modules/$.core').String;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/iterator.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/iterator.js
new file mode 100644
index 00000000..15733645
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/iterator.js
@@ -0,0 +1,5 @@
+require('../../modules/es6.string.iterator');
+var get = require('../../modules/$.iterators').String;
+module.exports = function(it){
+ return get.call(it);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/pad-left.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/pad-left.js
new file mode 100644
index 00000000..e89419c9
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/pad-left.js
@@ -0,0 +1,2 @@
+require('../../modules/es7.string.pad-left');
+module.exports = require('../../modules/$.core').String.padLeft;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/pad-right.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/pad-right.js
new file mode 100644
index 00000000..a87a412e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/pad-right.js
@@ -0,0 +1,2 @@
+require('../../modules/es7.string.pad-right');
+module.exports = require('../../modules/$.core').String.padRight;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/raw.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/raw.js
new file mode 100644
index 00000000..0c04fd34
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/raw.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.string.raw');
+module.exports = require('../../modules/$.core').String.raw;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/repeat.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/repeat.js
new file mode 100644
index 00000000..36107095
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/repeat.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.string.repeat');
+module.exports = require('../../modules/$.core').String.repeat;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/starts-with.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/starts-with.js
new file mode 100644
index 00000000..edee8311
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/starts-with.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.string.starts-with');
+module.exports = require('../../modules/$.core').String.startsWith;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/trim-left.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/trim-left.js
new file mode 100644
index 00000000..579ad397
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/trim-left.js
@@ -0,0 +1,2 @@
+require('../../modules/es7.string.trim-left');
+module.exports = require('../../modules/$.core').String.trimLeft;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/trim-right.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/trim-right.js
new file mode 100644
index 00000000..2168d945
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/trim-right.js
@@ -0,0 +1,2 @@
+require('../../modules/es7.string.trim-right');
+module.exports = require('../../modules/$.core').String.trimRight;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/trim.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/trim.js
new file mode 100644
index 00000000..61c64701
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/trim.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.string.trim');
+module.exports = require('../../modules/$.core').String.trim;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/unescape-html.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/unescape-html.js
new file mode 100644
index 00000000..de09d98b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/string/unescape-html.js
@@ -0,0 +1,2 @@
+require('../../modules/core.string.unescape-html');
+module.exports = require('../../modules/$.core').String.unescapeHTML;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/for.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/for.js
new file mode 100644
index 00000000..1b05275d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/for.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.symbol');
+module.exports = require('../../modules/$.core').Symbol['for'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/has-instance.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/has-instance.js
new file mode 100644
index 00000000..b264f990
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/has-instance.js
@@ -0,0 +1 @@
+module.exports = require('../../modules/$.wks')('hasInstance');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/index.js
new file mode 100644
index 00000000..c8f81d18
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/index.js
@@ -0,0 +1,3 @@
+require('../../modules/es6.symbol');
+require('../../modules/es6.object.to-string');
+module.exports = require('../../modules/$.core').Symbol;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/is-concat-spreadable.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/is-concat-spreadable.js
new file mode 100644
index 00000000..17d5a266
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/is-concat-spreadable.js
@@ -0,0 +1 @@
+module.exports = require('../../modules/$.wks')('isConcatSpreadable');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/iterator.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/iterator.js
new file mode 100644
index 00000000..7e1b7985
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/iterator.js
@@ -0,0 +1,3 @@
+require('../../modules/es6.string.iterator');
+require('../../modules/web.dom.iterable');
+module.exports = require('../../modules/$.wks')('iterator');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/key-for.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/key-for.js
new file mode 100644
index 00000000..e62b1abd
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/key-for.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.symbol');
+module.exports = require('../../modules/$.core').Symbol.keyFor;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/match.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/match.js
new file mode 100644
index 00000000..d25c1196
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/match.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.regexp.match');
+module.exports = require('../../modules/$.wks')('match');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/replace.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/replace.js
new file mode 100644
index 00000000..ce3154b9
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/replace.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.regexp.replace');
+module.exports = require('../../modules/$.wks')('replace');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/search.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/search.js
new file mode 100644
index 00000000..ad781d40
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/search.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.regexp.search');
+module.exports = require('../../modules/$.wks')('search');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/species.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/species.js
new file mode 100644
index 00000000..de937d75
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/species.js
@@ -0,0 +1 @@
+module.exports = require('../../modules/$.wks')('species');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/split.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/split.js
new file mode 100644
index 00000000..27c51667
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/split.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.regexp.split');
+module.exports = require('../../modules/$.wks')('split');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/to-primitive.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/to-primitive.js
new file mode 100644
index 00000000..129eb8b2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/to-primitive.js
@@ -0,0 +1 @@
+module.exports = require('../../modules/$.wks')('toPrimitive');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/to-string-tag.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/to-string-tag.js
new file mode 100644
index 00000000..fc22c861
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/to-string-tag.js
@@ -0,0 +1,2 @@
+require('../../modules/es6.object.to-string');
+module.exports = require('../../modules/$.wks')('toStringTag');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/unscopables.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/unscopables.js
new file mode 100644
index 00000000..39939700
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/symbol/unscopables.js
@@ -0,0 +1 @@
+module.exports = require('../../modules/$.wks')('unscopables');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/weak-map.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/weak-map.js
new file mode 100644
index 00000000..ebf46e6a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/weak-map.js
@@ -0,0 +1,4 @@
+require('../modules/es6.object.to-string');
+require('../modules/web.dom.iterable');
+require('../modules/es6.weak-map');
+module.exports = require('../modules/$.core').WeakMap;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/weak-set.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/weak-set.js
new file mode 100644
index 00000000..a058c8a6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/fn/weak-set.js
@@ -0,0 +1,4 @@
+require('../modules/es6.object.to-string');
+require('../modules/web.dom.iterable');
+require('../modules/es6.weak-set');
+module.exports = require('../modules/$.core').WeakSet;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/index.js
new file mode 100644
index 00000000..9acb1b4a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/index.js
@@ -0,0 +1,16 @@
+require('./shim');
+require('./modules/core.dict');
+require('./modules/core.get-iterator-method');
+require('./modules/core.get-iterator');
+require('./modules/core.is-iterable');
+require('./modules/core.delay');
+require('./modules/core.function.part');
+require('./modules/core.object.is-object');
+require('./modules/core.object.classof');
+require('./modules/core.object.define');
+require('./modules/core.object.make');
+require('./modules/core.number.iterator');
+require('./modules/core.string.escape-html');
+require('./modules/core.string.unescape-html');
+require('./modules/core.log');
+module.exports = require('./modules/$.core');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/js/array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/js/array.js
new file mode 100644
index 00000000..99a53add
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/js/array.js
@@ -0,0 +1,2 @@
+require('../modules/js.array.statics');
+module.exports = require('../modules/$.core').Array;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/js/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/js/index.js
new file mode 100644
index 00000000..47cb5ab5
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/js/index.js
@@ -0,0 +1,2 @@
+require('../modules/js.array.statics');
+module.exports = require('../modules/$.core');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.a-function.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.a-function.js
new file mode 100644
index 00000000..8c35f451
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.a-function.js
@@ -0,0 +1,4 @@
+module.exports = function(it){
+ if(typeof it != 'function')throw TypeError(it + ' is not a function!');
+ return it;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.add-to-unscopables.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.add-to-unscopables.js
new file mode 100644
index 00000000..faf87af3
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.add-to-unscopables.js
@@ -0,0 +1 @@
+module.exports = function(){ /* empty */ };
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.an-object.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.an-object.js
new file mode 100644
index 00000000..e5c808fd
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.an-object.js
@@ -0,0 +1,5 @@
+var isObject = require('./$.is-object');
+module.exports = function(it){
+ if(!isObject(it))throw TypeError(it + ' is not an object!');
+ return it;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.array-copy-within.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.array-copy-within.js
new file mode 100644
index 00000000..58563065
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.array-copy-within.js
@@ -0,0 +1,27 @@
+// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length)
+'use strict';
+var toObject = require('./$.to-object')
+ , toIndex = require('./$.to-index')
+ , toLength = require('./$.to-length');
+
+module.exports = [].copyWithin || function copyWithin(target/*= 0*/, start/*= 0, end = @length*/){
+ var O = toObject(this)
+ , len = toLength(O.length)
+ , to = toIndex(target, len)
+ , from = toIndex(start, len)
+ , $$ = arguments
+ , end = $$.length > 2 ? $$[2] : undefined
+ , count = Math.min((end === undefined ? len : toIndex(end, len)) - from, len - to)
+ , inc = 1;
+ if(from < to && to < from + count){
+ inc = -1;
+ from += count - 1;
+ to += count - 1;
+ }
+ while(count-- > 0){
+ if(from in O)O[to] = O[from];
+ else delete O[to];
+ to += inc;
+ from += inc;
+ } return O;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.array-fill.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.array-fill.js
new file mode 100644
index 00000000..6b699df7
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.array-fill.js
@@ -0,0 +1,16 @@
+// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)
+'use strict';
+var toObject = require('./$.to-object')
+ , toIndex = require('./$.to-index')
+ , toLength = require('./$.to-length');
+module.exports = [].fill || function fill(value /*, start = 0, end = @length */){
+ var O = toObject(this)
+ , length = toLength(O.length)
+ , $$ = arguments
+ , $$len = $$.length
+ , index = toIndex($$len > 1 ? $$[1] : undefined, length)
+ , end = $$len > 2 ? $$[2] : undefined
+ , endPos = end === undefined ? length : toIndex(end, length);
+ while(endPos > index)O[index++] = value;
+ return O;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.array-includes.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.array-includes.js
new file mode 100644
index 00000000..9781fca7
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.array-includes.js
@@ -0,0 +1,21 @@
+// false -> Array#indexOf
+// true -> Array#includes
+var toIObject = require('./$.to-iobject')
+ , toLength = require('./$.to-length')
+ , toIndex = require('./$.to-index');
+module.exports = function(IS_INCLUDES){
+ return function($this, el, fromIndex){
+ var O = toIObject($this)
+ , length = toLength(O.length)
+ , index = toIndex(fromIndex, length)
+ , value;
+ // Array#includes uses SameValueZero equality algorithm
+ if(IS_INCLUDES && el != el)while(length > index){
+ value = O[index++];
+ if(value != value)return true;
+ // Array#toIndex ignores holes, Array#includes - not
+ } else for(;length > index; index++)if(IS_INCLUDES || index in O){
+ if(O[index] === el)return IS_INCLUDES || index;
+ } return !IS_INCLUDES && -1;
+ };
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.array-methods.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.array-methods.js
new file mode 100644
index 00000000..e70b99f4
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.array-methods.js
@@ -0,0 +1,43 @@
+// 0 -> Array#forEach
+// 1 -> Array#map
+// 2 -> Array#filter
+// 3 -> Array#some
+// 4 -> Array#every
+// 5 -> Array#find
+// 6 -> Array#findIndex
+var ctx = require('./$.ctx')
+ , IObject = require('./$.iobject')
+ , toObject = require('./$.to-object')
+ , toLength = require('./$.to-length')
+ , asc = require('./$.array-species-create');
+module.exports = function(TYPE){
+ var IS_MAP = TYPE == 1
+ , IS_FILTER = TYPE == 2
+ , IS_SOME = TYPE == 3
+ , IS_EVERY = TYPE == 4
+ , IS_FIND_INDEX = TYPE == 6
+ , NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
+ return function($this, callbackfn, that){
+ var O = toObject($this)
+ , self = IObject(O)
+ , f = ctx(callbackfn, that, 3)
+ , length = toLength(self.length)
+ , index = 0
+ , result = IS_MAP ? asc($this, length) : IS_FILTER ? asc($this, 0) : undefined
+ , val, res;
+ for(;length > index; index++)if(NO_HOLES || index in self){
+ val = self[index];
+ res = f(val, index, O);
+ if(TYPE){
+ if(IS_MAP)result[index] = res; // map
+ else if(res)switch(TYPE){
+ case 3: return true; // some
+ case 5: return val; // find
+ case 6: return index; // findIndex
+ case 2: result.push(val); // filter
+ } else if(IS_EVERY)return false; // every
+ }
+ }
+ return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
+ };
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.array-species-create.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.array-species-create.js
new file mode 100644
index 00000000..d809cae6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.array-species-create.js
@@ -0,0 +1,16 @@
+// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
+var isObject = require('./$.is-object')
+ , isArray = require('./$.is-array')
+ , SPECIES = require('./$.wks')('species');
+module.exports = function(original, length){
+ var C;
+ if(isArray(original)){
+ C = original.constructor;
+ // cross-realm fallback
+ if(typeof C == 'function' && (C === Array || isArray(C.prototype)))C = undefined;
+ if(isObject(C)){
+ C = C[SPECIES];
+ if(C === null)C = undefined;
+ }
+ } return new (C === undefined ? Array : C)(length);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.buffer.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.buffer.js
new file mode 100644
index 00000000..d1aae58a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.buffer.js
@@ -0,0 +1,288 @@
+'use strict';
+var $ = require('./$')
+ , global = require('./$.global')
+ , $typed = require('./$.typed')
+ , redefineAll = require('./$.redefine-all')
+ , strictNew = require('./$.strict-new')
+ , toInteger = require('./$.to-integer')
+ , toLength = require('./$.to-length')
+ , arrayFill = require('./$.array-fill')
+ , $ArrayBuffer = global.ArrayBuffer
+ , $DataView = global.DataView
+ , Math = global.Math
+ , parseInt = global.parseInt
+ , abs = Math.abs
+ , pow = Math.pow
+ , min = Math.min
+ , floor = Math.floor
+ , log = Math.log
+ , LN2 = Math.LN2
+ , BYTE_LENGTH = 'byteLength';
+
+// pack / unpack based on
+// https://github.com/inexorabletash/polyfill/blob/v0.1.11/typedarray.js#L123-L264
+// TODO: simplify
+var signed = function(value, bits){
+ var s = 32 - bits;
+ return value << s >> s;
+};
+var unsigned = function(value, bits){
+ var s = 32 - bits;
+ return value << s >>> s;
+};
+var roundToEven = function(n){
+ var w = floor(n)
+ , f = n - w;
+ return f < .5 ? w : f > .5 ? w + 1 : w % 2 ? w + 1 : w;
+};
+var packI8 = function(n){
+ return [n & 0xff];
+};
+var unpackI8 = function(bytes){
+ return signed(bytes[0], 8);
+};
+var packU8 = function(n){
+ return [n & 0xff];
+};
+var unpackU8 = function(bytes){
+ return unsigned(bytes[0], 8);
+};
+var packI16 = function(n){
+ return [n & 0xff, n >> 8 & 0xff];
+};
+var unpackI16 = function(bytes){
+ return signed(bytes[1] << 8 | bytes[0], 16);
+};
+var packU16 = function(n){
+ return [n & 0xff, n >> 8 & 0xff];
+};
+var unpackU16 = function(bytes){
+ return unsigned(bytes[1] << 8 | bytes[0], 16);
+};
+var packI32 = function(n){
+ return [n & 0xff, n >> 8 & 0xff, n >> 16 & 0xff, n >> 24 & 0xff];
+};
+var unpackI32 = function(bytes){
+ return signed(bytes[3] << 24 | bytes[2] << 16 | bytes[1] << 8 | bytes[0], 32);
+};
+var packU32 = function(n){
+ return [n & 0xff, n >> 8 & 0xff, n >> 16 & 0xff, n >> 24 & 0xff];
+};
+var unpackU32 = function(bytes){
+ return unsigned(bytes[3] << 24 | bytes[2] << 16 | bytes[1] << 8 | bytes[0], 32);
+};
+var packIEEE754 = function(v, ebits, fbits) {
+ var bias = (1 << ebits - 1) - 1
+ , s, e, f, i, bits, str, bytes;
+ // Compute sign, exponent, fraction
+ if (v !== v) {
+ // NaN
+ // http://dev.w3.org/2006/webapi/WebIDL/#es-type-mapping
+ e = (1 << ebits) - 1;
+ f = pow(2, fbits - 1);
+ s = 0;
+ } else if(v === Infinity || v === -Infinity){
+ e = (1 << ebits) - 1;
+ f = 0;
+ s = v < 0 ? 1 : 0;
+ } else if(v === 0){
+ e = 0;
+ f = 0;
+ s = 1 / v === -Infinity ? 1 : 0;
+ } else {
+ s = v < 0;
+ v = abs(v);
+ if(v >= pow(2, 1 - bias)){
+ e = min(floor(log(v) / LN2), 1023);
+ var significand = v / pow(2, e);
+ if(significand < 1){
+ e -= 1;
+ significand *= 2;
+ }
+ if(significand >= 2){
+ e += 1;
+ significand /= 2;
+ }
+ f = roundToEven(significand * pow(2, fbits));
+ if(f / pow(2, fbits) >= 2){
+ e = e + 1;
+ f = 1;
+ }
+ if(e > bias){
+ // Overflow
+ e = (1 << ebits) - 1;
+ f = 0;
+ } else {
+ // Normalized
+ e = e + bias;
+ f = f - pow(2, fbits);
+ }
+ } else {
+ // Denormalized
+ e = 0;
+ f = roundToEven(v / pow(2, 1 - bias - fbits));
+ }
+ }
+ // Pack sign, exponent, fraction
+ bits = [];
+ for(i = fbits; i; i -= 1){
+ bits.push(f % 2 ? 1 : 0);
+ f = floor(f / 2);
+ }
+ for(i = ebits; i; i -= 1){
+ bits.push(e % 2 ? 1 : 0);
+ e = floor(e / 2);
+ }
+ bits.push(s ? 1 : 0);
+ bits.reverse();
+ str = bits.join('');
+ // Bits to bytes
+ bytes = [];
+ while(str.length){
+ bytes.unshift(parseInt(str.slice(0, 8), 2));
+ str = str.slice(8);
+ }
+ return bytes;
+};
+var unpackIEEE754 = function(bytes, ebits, fbits){
+ var bits = []
+ , i, j, b, str, bias, s, e, f;
+ for(i = 0; i < bytes.length; ++i)for(b = bytes[i], j = 8; j; --j){
+ bits.push(b % 2 ? 1 : 0);
+ b = b >> 1;
+ }
+ bits.reverse();
+ str = bits.join('');
+ // Unpack sign, exponent, fraction
+ bias = (1 << ebits - 1) - 1;
+ s = parseInt(str.slice(0, 1), 2) ? -1 : 1;
+ e = parseInt(str.slice(1, 1 + ebits), 2);
+ f = parseInt(str.slice(1 + ebits), 2);
+ // Produce number
+ if(e === (1 << ebits) - 1)return f !== 0 ? NaN : s * Infinity;
+ // Normalized
+ else if(e > 0)return s * pow(2, e - bias) * (1 + f / pow(2, fbits));
+ // Denormalized
+ else if(f !== 0)return s * pow(2, -(bias - 1)) * (f / pow(2, fbits));
+ return s < 0 ? -0 : 0;
+};
+var unpackF64 = function(b){
+ return unpackIEEE754(b, 11, 52);
+};
+var packF64 = function(v){
+ return packIEEE754(v, 11, 52);
+};
+var unpackF32 = function(b){
+ return unpackIEEE754(b, 8, 23);
+};
+var packF32 = function(v){
+ return packIEEE754(v, 8, 23);
+};
+
+var addGetter = function(C, key, internal){
+ $.setDesc(C.prototype, key, {get: function(){ return this[internal]; }});
+};
+
+var get = function(view, bytes, index, conversion, isLittleEndian){
+ var numIndex = +index
+ , intIndex = toInteger(numIndex);
+ if(numIndex != intIndex || intIndex < 0 || intIndex + bytes > view._l)throw RangeError();
+ var store = view._b._b
+ , start = intIndex + view._o
+ , pack = store.slice(start, start + bytes);
+ isLittleEndian || pack.reverse();
+ return conversion(pack);
+};
+var set = function(view, bytes, index, conversion, value, isLittleEndian){
+ var numIndex = +index
+ , intIndex = toInteger(numIndex);
+ if(numIndex != intIndex || intIndex < 0 || intIndex + bytes > view._l)throw RangeError();
+ var store = view._b._b
+ , start = intIndex + view._o
+ , pack = conversion(+value);
+ isLittleEndian || pack.reverse();
+ for(var i = 0; i < bytes; i++)store[start + i] = pack[i];
+};
+
+if(!$typed.ABV){
+ $ArrayBuffer = function ArrayBuffer(length){
+ strictNew(this, $ArrayBuffer, 'ArrayBuffer');
+ var numberLength = +length
+ , byteLength = toLength(numberLength);
+ if(numberLength != byteLength)throw RangeError();
+ this._b = arrayFill.call(Array(byteLength), 0);
+ this._l = byteLength;
+ };
+ addGetter($ArrayBuffer, BYTE_LENGTH, '_l');
+
+ $DataView = function DataView(buffer, byteOffset, byteLength){
+ strictNew(this, $DataView, 'DataView');
+ if(!(buffer instanceof $ArrayBuffer))throw TypeError();
+ var bufferLength = buffer._l
+ , offset = toInteger(byteOffset);
+ if(offset < 0 || offset > bufferLength)throw RangeError();
+ byteLength = byteLength === undefined ? bufferLength - offset : toLength(byteLength);
+ if(offset + byteLength > bufferLength)throw RangeError();
+ this._b = buffer;
+ this._o = offset;
+ this._l = byteLength;
+ };
+ addGetter($DataView, 'buffer', '_b');
+ addGetter($DataView, BYTE_LENGTH, '_l');
+ addGetter($DataView, 'byteOffset', '_o');
+ redefineAll($DataView.prototype, {
+ getInt8: function getInt8(byteOffset){
+ return get(this, 1, byteOffset, unpackI8);
+ },
+ getUint8: function getUint8(byteOffset){
+ return get(this, 1, byteOffset, unpackU8);
+ },
+ getInt16: function getInt16(byteOffset /*, littleEndian */){
+ return get(this, 2, byteOffset, unpackI16, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ getUint16: function getUint16(byteOffset /*, littleEndian */){
+ return get(this, 2, byteOffset, unpackU16, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ getInt32: function getInt32(byteOffset /*, littleEndian */){
+ return get(this, 4, byteOffset, unpackI32, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ getUint32: function getUint32(byteOffset /*, littleEndian */){
+ return get(this, 4, byteOffset, unpackU32, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ getFloat32: function getFloat32(byteOffset /*, littleEndian */){
+ return get(this, 4, byteOffset, unpackF32, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ getFloat64: function getFloat64(byteOffset /*, littleEndian */){
+ return get(this, 8, byteOffset, unpackF64, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ setInt8: function setInt8(byteOffset, value){
+ return set(this, 1, byteOffset, packI8, value);
+ },
+ setUint8: function setUint8(byteOffset, value){
+ return set(this, 1, byteOffset, packU8, value);
+ },
+ setInt16: function setInt16(byteOffset, value /*, littleEndian */){
+ return set(this, 2, byteOffset, packI16, value, arguments.length > 2 ? arguments[2] : undefined);
+ },
+ setUint16: function setUint16(byteOffset, value /*, littleEndian */){
+ return set(this, 2, byteOffset, packU16, value, arguments.length > 2 ? arguments[2] : undefined);
+ },
+ setInt32: function setInt32(byteOffset, value /*, littleEndian */){
+ return set(this, 4, byteOffset, packI32, value, arguments.length > 2 ? arguments[2] : undefined);
+ },
+ setUint32: function setUint32(byteOffset, value /*, littleEndian */){
+ return set(this, 4, byteOffset, packU32, value, arguments.length > 2 ? arguments[2] : undefined);
+ },
+ setFloat32: function setFloat32(byteOffset, value /*, littleEndian */){
+ return set(this, 4, byteOffset, packF32, value, arguments.length > 2 ? arguments[2] : undefined);
+ },
+ setFloat64: function setFloat64(byteOffset, value /*, littleEndian */){
+ return set(this, 8, byteOffset, packF64, value, arguments.length > 2 ? arguments[2] : undefined);
+ }
+ });
+}
+require('./$.hide')($DataView.prototype, $typed.VIEW, true);
+module.exports = {
+ ArrayBuffer: $ArrayBuffer,
+ DataView: $DataView
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.classof.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.classof.js
new file mode 100644
index 00000000..905c61f7
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.classof.js
@@ -0,0 +1,16 @@
+// getting tag from 19.1.3.6 Object.prototype.toString()
+var cof = require('./$.cof')
+ , TAG = require('./$.wks')('toStringTag')
+ // ES3 wrong here
+ , ARG = cof(function(){ return arguments; }()) == 'Arguments';
+
+module.exports = function(it){
+ var O, T, B;
+ return it === undefined ? 'Undefined' : it === null ? 'Null'
+ // @@toStringTag case
+ : typeof (T = (O = Object(it))[TAG]) == 'string' ? T
+ // builtinTag case
+ : ARG ? cof(O)
+ // ES3 arguments fallback
+ : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.cof.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.cof.js
new file mode 100644
index 00000000..1dd2779a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.cof.js
@@ -0,0 +1,5 @@
+var toString = {}.toString;
+
+module.exports = function(it){
+ return toString.call(it).slice(8, -1);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.collection-strong.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.collection-strong.js
new file mode 100644
index 00000000..54df55a6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.collection-strong.js
@@ -0,0 +1,159 @@
+'use strict';
+var $ = require('./$')
+ , hide = require('./$.hide')
+ , redefineAll = require('./$.redefine-all')
+ , ctx = require('./$.ctx')
+ , strictNew = require('./$.strict-new')
+ , defined = require('./$.defined')
+ , forOf = require('./$.for-of')
+ , $iterDefine = require('./$.iter-define')
+ , step = require('./$.iter-step')
+ , ID = require('./$.uid')('id')
+ , $has = require('./$.has')
+ , isObject = require('./$.is-object')
+ , setSpecies = require('./$.set-species')
+ , DESCRIPTORS = require('./$.descriptors')
+ , isExtensible = Object.isExtensible || isObject
+ , SIZE = DESCRIPTORS ? '_s' : 'size'
+ , id = 0;
+
+var fastKey = function(it, create){
+ // return primitive with prefix
+ if(!isObject(it))return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
+ if(!$has(it, ID)){
+ // can't set id to frozen object
+ if(!isExtensible(it))return 'F';
+ // not necessary to add id
+ if(!create)return 'E';
+ // add missing object id
+ hide(it, ID, ++id);
+ // return object id with prefix
+ } return 'O' + it[ID];
+};
+
+var getEntry = function(that, key){
+ // fast case
+ var index = fastKey(key), entry;
+ if(index !== 'F')return that._i[index];
+ // frozen object case
+ for(entry = that._f; entry; entry = entry.n){
+ if(entry.k == key)return entry;
+ }
+};
+
+module.exports = {
+ getConstructor: function(wrapper, NAME, IS_MAP, ADDER){
+ var C = wrapper(function(that, iterable){
+ strictNew(that, C, NAME);
+ that._i = $.create(null); // index
+ that._f = undefined; // first entry
+ that._l = undefined; // last entry
+ that[SIZE] = 0; // size
+ if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);
+ });
+ redefineAll(C.prototype, {
+ // 23.1.3.1 Map.prototype.clear()
+ // 23.2.3.2 Set.prototype.clear()
+ clear: function clear(){
+ for(var that = this, data = that._i, entry = that._f; entry; entry = entry.n){
+ entry.r = true;
+ if(entry.p)entry.p = entry.p.n = undefined;
+ delete data[entry.i];
+ }
+ that._f = that._l = undefined;
+ that[SIZE] = 0;
+ },
+ // 23.1.3.3 Map.prototype.delete(key)
+ // 23.2.3.4 Set.prototype.delete(value)
+ 'delete': function(key){
+ var that = this
+ , entry = getEntry(that, key);
+ if(entry){
+ var next = entry.n
+ , prev = entry.p;
+ delete that._i[entry.i];
+ entry.r = true;
+ if(prev)prev.n = next;
+ if(next)next.p = prev;
+ if(that._f == entry)that._f = next;
+ if(that._l == entry)that._l = prev;
+ that[SIZE]--;
+ } return !!entry;
+ },
+ // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)
+ // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)
+ forEach: function forEach(callbackfn /*, that = undefined */){
+ var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3)
+ , entry;
+ while(entry = entry ? entry.n : this._f){
+ f(entry.v, entry.k, this);
+ // revert to the last existing entry
+ while(entry && entry.r)entry = entry.p;
+ }
+ },
+ // 23.1.3.7 Map.prototype.has(key)
+ // 23.2.3.7 Set.prototype.has(value)
+ has: function has(key){
+ return !!getEntry(this, key);
+ }
+ });
+ if(DESCRIPTORS)$.setDesc(C.prototype, 'size', {
+ get: function(){
+ return defined(this[SIZE]);
+ }
+ });
+ return C;
+ },
+ def: function(that, key, value){
+ var entry = getEntry(that, key)
+ , prev, index;
+ // change existing entry
+ if(entry){
+ entry.v = value;
+ // create new entry
+ } else {
+ that._l = entry = {
+ i: index = fastKey(key, true), // <- index
+ k: key, // <- key
+ v: value, // <- value
+ p: prev = that._l, // <- previous entry
+ n: undefined, // <- next entry
+ r: false // <- removed
+ };
+ if(!that._f)that._f = entry;
+ if(prev)prev.n = entry;
+ that[SIZE]++;
+ // add to index
+ if(index !== 'F')that._i[index] = entry;
+ } return that;
+ },
+ getEntry: getEntry,
+ setStrong: function(C, NAME, IS_MAP){
+ // add .keys, .values, .entries, [@@iterator]
+ // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11
+ $iterDefine(C, NAME, function(iterated, kind){
+ this._t = iterated; // target
+ this._k = kind; // kind
+ this._l = undefined; // previous
+ }, function(){
+ var that = this
+ , kind = that._k
+ , entry = that._l;
+ // revert to the last existing entry
+ while(entry && entry.r)entry = entry.p;
+ // get next entry
+ if(!that._t || !(that._l = entry = entry ? entry.n : that._t._f)){
+ // or finish the iteration
+ that._t = undefined;
+ return step(1);
+ }
+ // return step by kind
+ if(kind == 'keys' )return step(0, entry.k);
+ if(kind == 'values')return step(0, entry.v);
+ return step(0, [entry.k, entry.v]);
+ }, IS_MAP ? 'entries' : 'values' , !IS_MAP, true);
+
+ // add [@@species], 23.1.2.2, 23.2.2.2
+ setSpecies(NAME);
+ }
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.collection-to-json.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.collection-to-json.js
new file mode 100644
index 00000000..41f2e6ec
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.collection-to-json.js
@@ -0,0 +1,11 @@
+// https://github.com/DavidBruant/Map-Set.prototype.toJSON
+var forOf = require('./$.for-of')
+ , classof = require('./$.classof');
+module.exports = function(NAME){
+ return function toJSON(){
+ if(classof(this) != NAME)throw TypeError(NAME + "#toJSON isn't generic");
+ var arr = [];
+ forOf(this, false, arr.push, arr);
+ return arr;
+ };
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.collection-weak.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.collection-weak.js
new file mode 100644
index 00000000..384fb39d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.collection-weak.js
@@ -0,0 +1,86 @@
+'use strict';
+var hide = require('./$.hide')
+ , redefineAll = require('./$.redefine-all')
+ , anObject = require('./$.an-object')
+ , isObject = require('./$.is-object')
+ , strictNew = require('./$.strict-new')
+ , forOf = require('./$.for-of')
+ , createArrayMethod = require('./$.array-methods')
+ , $has = require('./$.has')
+ , WEAK = require('./$.uid')('weak')
+ , isExtensible = Object.isExtensible || isObject
+ , arrayFind = createArrayMethod(5)
+ , arrayFindIndex = createArrayMethod(6)
+ , id = 0;
+
+// fallback for frozen keys
+var frozenStore = function(that){
+ return that._l || (that._l = new FrozenStore);
+};
+var FrozenStore = function(){
+ this.a = [];
+};
+var findFrozen = function(store, key){
+ return arrayFind(store.a, function(it){
+ return it[0] === key;
+ });
+};
+FrozenStore.prototype = {
+ get: function(key){
+ var entry = findFrozen(this, key);
+ if(entry)return entry[1];
+ },
+ has: function(key){
+ return !!findFrozen(this, key);
+ },
+ set: function(key, value){
+ var entry = findFrozen(this, key);
+ if(entry)entry[1] = value;
+ else this.a.push([key, value]);
+ },
+ 'delete': function(key){
+ var index = arrayFindIndex(this.a, function(it){
+ return it[0] === key;
+ });
+ if(~index)this.a.splice(index, 1);
+ return !!~index;
+ }
+};
+
+module.exports = {
+ getConstructor: function(wrapper, NAME, IS_MAP, ADDER){
+ var C = wrapper(function(that, iterable){
+ strictNew(that, C, NAME);
+ that._i = id++; // collection id
+ that._l = undefined; // leak store for frozen objects
+ if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);
+ });
+ redefineAll(C.prototype, {
+ // 23.3.3.2 WeakMap.prototype.delete(key)
+ // 23.4.3.3 WeakSet.prototype.delete(value)
+ 'delete': function(key){
+ if(!isObject(key))return false;
+ if(!isExtensible(key))return frozenStore(this)['delete'](key);
+ return $has(key, WEAK) && $has(key[WEAK], this._i) && delete key[WEAK][this._i];
+ },
+ // 23.3.3.4 WeakMap.prototype.has(key)
+ // 23.4.3.4 WeakSet.prototype.has(value)
+ has: function has(key){
+ if(!isObject(key))return false;
+ if(!isExtensible(key))return frozenStore(this).has(key);
+ return $has(key, WEAK) && $has(key[WEAK], this._i);
+ }
+ });
+ return C;
+ },
+ def: function(that, key, value){
+ if(!isExtensible(anObject(key))){
+ frozenStore(that).set(key, value);
+ } else {
+ $has(key, WEAK) || hide(key, WEAK, {});
+ key[WEAK][that._i] = value;
+ } return that;
+ },
+ frozenStore: frozenStore,
+ WEAK: WEAK
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.collection.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.collection.js
new file mode 100644
index 00000000..9d234d13
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.collection.js
@@ -0,0 +1,55 @@
+'use strict';
+var $ = require('./$')
+ , global = require('./$.global')
+ , $export = require('./$.export')
+ , fails = require('./$.fails')
+ , hide = require('./$.hide')
+ , redefineAll = require('./$.redefine-all')
+ , forOf = require('./$.for-of')
+ , strictNew = require('./$.strict-new')
+ , isObject = require('./$.is-object')
+ , setToStringTag = require('./$.set-to-string-tag')
+ , DESCRIPTORS = require('./$.descriptors');
+
+module.exports = function(NAME, wrapper, methods, common, IS_MAP, IS_WEAK){
+ var Base = global[NAME]
+ , C = Base
+ , ADDER = IS_MAP ? 'set' : 'add'
+ , proto = C && C.prototype
+ , O = {};
+ if(!DESCRIPTORS || typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function(){
+ new C().entries().next();
+ }))){
+ // create collection constructor
+ C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);
+ redefineAll(C.prototype, methods);
+ } else {
+ C = wrapper(function(target, iterable){
+ strictNew(target, C, NAME);
+ target._c = new Base;
+ if(iterable != undefined)forOf(iterable, IS_MAP, target[ADDER], target);
+ });
+ $.each.call('add,clear,delete,forEach,get,has,set,keys,values,entries'.split(','),function(KEY){
+ var IS_ADDER = KEY == 'add' || KEY == 'set';
+ if(KEY in proto && !(IS_WEAK && KEY == 'clear'))hide(C.prototype, KEY, function(a, b){
+ if(!IS_ADDER && IS_WEAK && !isObject(a))return KEY == 'get' ? undefined : false;
+ var result = this._c[KEY](a === 0 ? 0 : a, b);
+ return IS_ADDER ? this : result;
+ });
+ });
+ if('size' in proto)$.setDesc(C.prototype, 'size', {
+ get: function(){
+ return this._c.size;
+ }
+ });
+ }
+
+ setToStringTag(C, NAME);
+
+ O[NAME] = C;
+ $export($export.G + $export.W + $export.F, O);
+
+ if(!IS_WEAK)common.setStrong(C, NAME, IS_MAP);
+
+ return C;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.core.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.core.js
new file mode 100644
index 00000000..4e2a0b59
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.core.js
@@ -0,0 +1,2 @@
+var core = module.exports = {version: '1.2.6'};
+if(typeof __e == 'number')__e = core; // eslint-disable-line no-undef
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.ctx.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.ctx.js
new file mode 100644
index 00000000..d233574a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.ctx.js
@@ -0,0 +1,20 @@
+// optional / simple context binding
+var aFunction = require('./$.a-function');
+module.exports = function(fn, that, length){
+ aFunction(fn);
+ if(that === undefined)return fn;
+ switch(length){
+ case 1: return function(a){
+ return fn.call(that, a);
+ };
+ case 2: return function(a, b){
+ return fn.call(that, a, b);
+ };
+ case 3: return function(a, b, c){
+ return fn.call(that, a, b, c);
+ };
+ }
+ return function(/* ...args */){
+ return fn.apply(that, arguments);
+ };
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.defined.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.defined.js
new file mode 100644
index 00000000..cfa476b9
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.defined.js
@@ -0,0 +1,5 @@
+// 7.2.1 RequireObjectCoercible(argument)
+module.exports = function(it){
+ if(it == undefined)throw TypeError("Can't call method on " + it);
+ return it;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.descriptors.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.descriptors.js
new file mode 100644
index 00000000..9cd47b7d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.descriptors.js
@@ -0,0 +1,4 @@
+// Thank's IE8 for his funny defineProperty
+module.exports = !require('./$.fails')(function(){
+ return Object.defineProperty({}, 'a', {get: function(){ return 7; }}).a != 7;
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.dom-create.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.dom-create.js
new file mode 100644
index 00000000..240842d2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.dom-create.js
@@ -0,0 +1,7 @@
+var isObject = require('./$.is-object')
+ , document = require('./$.global').document
+ // in old IE typeof document.createElement is 'object'
+ , is = isObject(document) && isObject(document.createElement);
+module.exports = function(it){
+ return is ? document.createElement(it) : {};
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.enum-keys.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.enum-keys.js
new file mode 100644
index 00000000..06f7de7a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.enum-keys.js
@@ -0,0 +1,14 @@
+// all enumerable object keys, includes symbols
+var $ = require('./$');
+module.exports = function(it){
+ var keys = $.getKeys(it)
+ , getSymbols = $.getSymbols;
+ if(getSymbols){
+ var symbols = getSymbols(it)
+ , isEnum = $.isEnum
+ , i = 0
+ , key;
+ while(symbols.length > i)if(isEnum.call(it, key = symbols[i++]))keys.push(key);
+ }
+ return keys;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.export.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.export.js
new file mode 100644
index 00000000..507b5a22
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.export.js
@@ -0,0 +1,46 @@
+var global = require('./$.global')
+ , core = require('./$.core')
+ , ctx = require('./$.ctx')
+ , PROTOTYPE = 'prototype';
+
+var $export = function(type, name, source){
+ var IS_FORCED = type & $export.F
+ , IS_GLOBAL = type & $export.G
+ , IS_STATIC = type & $export.S
+ , IS_PROTO = type & $export.P
+ , IS_BIND = type & $export.B
+ , IS_WRAP = type & $export.W
+ , exports = IS_GLOBAL ? core : core[name] || (core[name] = {})
+ , target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE]
+ , key, own, out;
+ if(IS_GLOBAL)source = name;
+ for(key in source){
+ // contains in native
+ own = !IS_FORCED && target && key in target;
+ if(own && key in exports)continue;
+ // export native or passed
+ out = own ? target[key] : source[key];
+ // prevent global pollution for namespaces
+ exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]
+ // bind timers to global for call from export context
+ : IS_BIND && own ? ctx(out, global)
+ // wrap global constructors for prevent change them in library
+ : IS_WRAP && target[key] == out ? (function(C){
+ var F = function(param){
+ return this instanceof C ? new C(param) : C(param);
+ };
+ F[PROTOTYPE] = C[PROTOTYPE];
+ return F;
+ // make static versions for prototype methods
+ })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
+ if(IS_PROTO)(exports[PROTOTYPE] || (exports[PROTOTYPE] = {}))[key] = out;
+ }
+};
+// type bitmap
+$export.F = 1; // forced
+$export.G = 2; // global
+$export.S = 4; // static
+$export.P = 8; // proto
+$export.B = 16; // bind
+$export.W = 32; // wrap
+module.exports = $export;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.fails-is-regexp.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.fails-is-regexp.js
new file mode 100644
index 00000000..c459a77a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.fails-is-regexp.js
@@ -0,0 +1,12 @@
+var MATCH = require('./$.wks')('match');
+module.exports = function(KEY){
+ var re = /./;
+ try {
+ '/./'[KEY](re);
+ } catch(e){
+ try {
+ re[MATCH] = false;
+ return !'/./'[KEY](re);
+ } catch(f){ /* empty */ }
+ } return true;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.fails.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.fails.js
new file mode 100644
index 00000000..184e5ea8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.fails.js
@@ -0,0 +1,7 @@
+module.exports = function(exec){
+ try {
+ return !!exec();
+ } catch(e){
+ return true;
+ }
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.fix-re-wks.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.fix-re-wks.js
new file mode 100644
index 00000000..3597a898
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.fix-re-wks.js
@@ -0,0 +1,26 @@
+'use strict';
+var hide = require('./$.hide')
+ , redefine = require('./$.redefine')
+ , fails = require('./$.fails')
+ , defined = require('./$.defined')
+ , wks = require('./$.wks');
+
+module.exports = function(KEY, length, exec){
+ var SYMBOL = wks(KEY)
+ , original = ''[KEY];
+ if(fails(function(){
+ var O = {};
+ O[SYMBOL] = function(){ return 7; };
+ return ''[KEY](O) != 7;
+ })){
+ redefine(String.prototype, KEY, exec(defined, SYMBOL, original));
+ hide(RegExp.prototype, SYMBOL, length == 2
+ // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)
+ // 21.2.5.11 RegExp.prototype[@@split](string, limit)
+ ? function(string, arg){ return original.call(string, this, arg); }
+ // 21.2.5.6 RegExp.prototype[@@match](string)
+ // 21.2.5.9 RegExp.prototype[@@search](string)
+ : function(string){ return original.call(string, this); }
+ );
+ }
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.flags.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.flags.js
new file mode 100644
index 00000000..fc20e5de
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.flags.js
@@ -0,0 +1,13 @@
+'use strict';
+// 21.2.5.3 get RegExp.prototype.flags
+var anObject = require('./$.an-object');
+module.exports = function(){
+ var that = anObject(this)
+ , result = '';
+ if(that.global) result += 'g';
+ if(that.ignoreCase) result += 'i';
+ if(that.multiline) result += 'm';
+ if(that.unicode) result += 'u';
+ if(that.sticky) result += 'y';
+ return result;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.for-of.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.for-of.js
new file mode 100644
index 00000000..0f2d8e97
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.for-of.js
@@ -0,0 +1,19 @@
+var ctx = require('./$.ctx')
+ , call = require('./$.iter-call')
+ , isArrayIter = require('./$.is-array-iter')
+ , anObject = require('./$.an-object')
+ , toLength = require('./$.to-length')
+ , getIterFn = require('./core.get-iterator-method');
+module.exports = function(iterable, entries, fn, that){
+ var iterFn = getIterFn(iterable)
+ , f = ctx(fn, that, entries ? 2 : 1)
+ , index = 0
+ , length, step, iterator;
+ if(typeof iterFn != 'function')throw TypeError(iterable + ' is not iterable!');
+ // fast case for arrays with default iterator
+ if(isArrayIter(iterFn))for(length = toLength(iterable.length); length > index; index++){
+ entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);
+ } else for(iterator = iterFn.call(iterable); !(step = iterator.next()).done; ){
+ call(iterator, f, step.value, entries);
+ }
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.get-names.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.get-names.js
new file mode 100644
index 00000000..28209714
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.get-names.js
@@ -0,0 +1,20 @@
+// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
+var toIObject = require('./$.to-iobject')
+ , getNames = require('./$').getNames
+ , toString = {}.toString;
+
+var windowNames = typeof window == 'object' && Object.getOwnPropertyNames
+ ? Object.getOwnPropertyNames(window) : [];
+
+var getWindowNames = function(it){
+ try {
+ return getNames(it);
+ } catch(e){
+ return windowNames.slice();
+ }
+};
+
+module.exports.get = function getOwnPropertyNames(it){
+ if(windowNames && toString.call(it) == '[object Window]')return getWindowNames(it);
+ return getNames(toIObject(it));
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.global.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.global.js
new file mode 100644
index 00000000..df6efb47
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.global.js
@@ -0,0 +1,4 @@
+// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
+var global = module.exports = typeof window != 'undefined' && window.Math == Math
+ ? window : typeof self != 'undefined' && self.Math == Math ? self : Function('return this')();
+if(typeof __g == 'number')__g = global; // eslint-disable-line no-undef
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.has.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.has.js
new file mode 100644
index 00000000..870b40e7
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.has.js
@@ -0,0 +1,4 @@
+var hasOwnProperty = {}.hasOwnProperty;
+module.exports = function(it, key){
+ return hasOwnProperty.call(it, key);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.hide.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.hide.js
new file mode 100644
index 00000000..ba025d81
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.hide.js
@@ -0,0 +1,8 @@
+var $ = require('./$')
+ , createDesc = require('./$.property-desc');
+module.exports = require('./$.descriptors') ? function(object, key, value){
+ return $.setDesc(object, key, createDesc(1, value));
+} : function(object, key, value){
+ object[key] = value;
+ return object;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.html.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.html.js
new file mode 100644
index 00000000..499bd2f3
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.html.js
@@ -0,0 +1 @@
+module.exports = require('./$.global').document && document.documentElement;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.invoke.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.invoke.js
new file mode 100644
index 00000000..08e307fd
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.invoke.js
@@ -0,0 +1,16 @@
+// fast apply, http://jsperf.lnkit.com/fast-apply/5
+module.exports = function(fn, args, that){
+ var un = that === undefined;
+ switch(args.length){
+ case 0: return un ? fn()
+ : fn.call(that);
+ case 1: return un ? fn(args[0])
+ : fn.call(that, args[0]);
+ case 2: return un ? fn(args[0], args[1])
+ : fn.call(that, args[0], args[1]);
+ case 3: return un ? fn(args[0], args[1], args[2])
+ : fn.call(that, args[0], args[1], args[2]);
+ case 4: return un ? fn(args[0], args[1], args[2], args[3])
+ : fn.call(that, args[0], args[1], args[2], args[3]);
+ } return fn.apply(that, args);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.iobject.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.iobject.js
new file mode 100644
index 00000000..cea38fab
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.iobject.js
@@ -0,0 +1,5 @@
+// fallback for non-array-like ES3 and non-enumerable old V8 strings
+var cof = require('./$.cof');
+module.exports = Object('z').propertyIsEnumerable(0) ? Object : function(it){
+ return cof(it) == 'String' ? it.split('') : Object(it);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.is-array-iter.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.is-array-iter.js
new file mode 100644
index 00000000..b6ef7017
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.is-array-iter.js
@@ -0,0 +1,8 @@
+// check on default Array iterator
+var Iterators = require('./$.iterators')
+ , ITERATOR = require('./$.wks')('iterator')
+ , ArrayProto = Array.prototype;
+
+module.exports = function(it){
+ return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.is-array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.is-array.js
new file mode 100644
index 00000000..8168b21c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.is-array.js
@@ -0,0 +1,5 @@
+// 7.2.2 IsArray(argument)
+var cof = require('./$.cof');
+module.exports = Array.isArray || function(arg){
+ return cof(arg) == 'Array';
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.is-integer.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.is-integer.js
new file mode 100644
index 00000000..b51e1317
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.is-integer.js
@@ -0,0 +1,6 @@
+// 20.1.2.3 Number.isInteger(number)
+var isObject = require('./$.is-object')
+ , floor = Math.floor;
+module.exports = function isInteger(it){
+ return !isObject(it) && isFinite(it) && floor(it) === it;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.is-object.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.is-object.js
new file mode 100644
index 00000000..ee694be2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.is-object.js
@@ -0,0 +1,3 @@
+module.exports = function(it){
+ return typeof it === 'object' ? it !== null : typeof it === 'function';
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.is-regexp.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.is-regexp.js
new file mode 100644
index 00000000..9ea2aad7
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.is-regexp.js
@@ -0,0 +1,8 @@
+// 7.2.8 IsRegExp(argument)
+var isObject = require('./$.is-object')
+ , cof = require('./$.cof')
+ , MATCH = require('./$.wks')('match');
+module.exports = function(it){
+ var isRegExp;
+ return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.iter-call.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.iter-call.js
new file mode 100644
index 00000000..e6b9d1b1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.iter-call.js
@@ -0,0 +1,12 @@
+// call something on iterator step with safe closing on error
+var anObject = require('./$.an-object');
+module.exports = function(iterator, fn, value, entries){
+ try {
+ return entries ? fn(anObject(value)[0], value[1]) : fn(value);
+ // 7.4.6 IteratorClose(iterator, completion)
+ } catch(e){
+ var ret = iterator['return'];
+ if(ret !== undefined)anObject(ret.call(iterator));
+ throw e;
+ }
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.iter-create.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.iter-create.js
new file mode 100644
index 00000000..adebcf9a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.iter-create.js
@@ -0,0 +1,13 @@
+'use strict';
+var $ = require('./$')
+ , descriptor = require('./$.property-desc')
+ , setToStringTag = require('./$.set-to-string-tag')
+ , IteratorPrototype = {};
+
+// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
+require('./$.hide')(IteratorPrototype, require('./$.wks')('iterator'), function(){ return this; });
+
+module.exports = function(Constructor, NAME, next){
+ Constructor.prototype = $.create(IteratorPrototype, {next: descriptor(1, next)});
+ setToStringTag(Constructor, NAME + ' Iterator');
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.iter-define.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.iter-define.js
new file mode 100644
index 00000000..630cdf38
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.iter-define.js
@@ -0,0 +1,66 @@
+'use strict';
+var LIBRARY = require('./$.library')
+ , $export = require('./$.export')
+ , redefine = require('./$.redefine')
+ , hide = require('./$.hide')
+ , has = require('./$.has')
+ , Iterators = require('./$.iterators')
+ , $iterCreate = require('./$.iter-create')
+ , setToStringTag = require('./$.set-to-string-tag')
+ , getProto = require('./$').getProto
+ , ITERATOR = require('./$.wks')('iterator')
+ , BUGGY = !([].keys && 'next' in [].keys()) // Safari has buggy iterators w/o `next`
+ , FF_ITERATOR = '@@iterator'
+ , KEYS = 'keys'
+ , VALUES = 'values';
+
+var returnThis = function(){ return this; };
+
+module.exports = function(Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED){
+ $iterCreate(Constructor, NAME, next);
+ var getMethod = function(kind){
+ if(!BUGGY && kind in proto)return proto[kind];
+ switch(kind){
+ case KEYS: return function keys(){ return new Constructor(this, kind); };
+ case VALUES: return function values(){ return new Constructor(this, kind); };
+ } return function entries(){ return new Constructor(this, kind); };
+ };
+ var TAG = NAME + ' Iterator'
+ , DEF_VALUES = DEFAULT == VALUES
+ , VALUES_BUG = false
+ , proto = Base.prototype
+ , $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT]
+ , $default = $native || getMethod(DEFAULT)
+ , methods, key;
+ // Fix native
+ if($native){
+ var IteratorPrototype = getProto($default.call(new Base));
+ // Set @@toStringTag to native iterators
+ setToStringTag(IteratorPrototype, TAG, true);
+ // FF fix
+ if(!LIBRARY && has(proto, FF_ITERATOR))hide(IteratorPrototype, ITERATOR, returnThis);
+ // fix Array#{values, @@iterator}.name in V8 / FF
+ if(DEF_VALUES && $native.name !== VALUES){
+ VALUES_BUG = true;
+ $default = function values(){ return $native.call(this); };
+ }
+ }
+ // Define iterator
+ if((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])){
+ hide(proto, ITERATOR, $default);
+ }
+ // Plug for library
+ Iterators[NAME] = $default;
+ Iterators[TAG] = returnThis;
+ if(DEFAULT){
+ methods = {
+ values: DEF_VALUES ? $default : getMethod(VALUES),
+ keys: IS_SET ? $default : getMethod(KEYS),
+ entries: !DEF_VALUES ? $default : getMethod('entries')
+ };
+ if(FORCED)for(key in methods){
+ if(!(key in proto))redefine(proto, key, methods[key]);
+ } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
+ }
+ return methods;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.iter-detect.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.iter-detect.js
new file mode 100644
index 00000000..bff5fffb
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.iter-detect.js
@@ -0,0 +1,21 @@
+var ITERATOR = require('./$.wks')('iterator')
+ , SAFE_CLOSING = false;
+
+try {
+ var riter = [7][ITERATOR]();
+ riter['return'] = function(){ SAFE_CLOSING = true; };
+ Array.from(riter, function(){ throw 2; });
+} catch(e){ /* empty */ }
+
+module.exports = function(exec, skipClosing){
+ if(!skipClosing && !SAFE_CLOSING)return false;
+ var safe = false;
+ try {
+ var arr = [7]
+ , iter = arr[ITERATOR]();
+ iter.next = function(){ return {done: safe = true}; };
+ arr[ITERATOR] = function(){ return iter; };
+ exec(arr);
+ } catch(e){ /* empty */ }
+ return safe;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.iter-step.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.iter-step.js
new file mode 100644
index 00000000..6ff0dc51
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.iter-step.js
@@ -0,0 +1,3 @@
+module.exports = function(done, value){
+ return {value: value, done: !!done};
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.iterators.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.iterators.js
new file mode 100644
index 00000000..a0995453
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.iterators.js
@@ -0,0 +1 @@
+module.exports = {};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.js
new file mode 100644
index 00000000..053bae48
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.js
@@ -0,0 +1,13 @@
+var $Object = Object;
+module.exports = {
+ create: $Object.create,
+ getProto: $Object.getPrototypeOf,
+ isEnum: {}.propertyIsEnumerable,
+ getDesc: $Object.getOwnPropertyDescriptor,
+ setDesc: $Object.defineProperty,
+ setDescs: $Object.defineProperties,
+ getKeys: $Object.keys,
+ getNames: $Object.getOwnPropertyNames,
+ getSymbols: $Object.getOwnPropertySymbols,
+ each: [].forEach
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.keyof.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.keyof.js
new file mode 100644
index 00000000..09d183a7
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.keyof.js
@@ -0,0 +1,10 @@
+var $ = require('./$')
+ , toIObject = require('./$.to-iobject');
+module.exports = function(object, el){
+ var O = toIObject(object)
+ , keys = $.getKeys(O)
+ , length = keys.length
+ , index = 0
+ , key;
+ while(length > index)if(O[key = keys[index++]] === el)return key;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.library.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.library.js
new file mode 100644
index 00000000..73f737c5
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.library.js
@@ -0,0 +1 @@
+module.exports = true;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.math-expm1.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.math-expm1.js
new file mode 100644
index 00000000..9d91be93
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.math-expm1.js
@@ -0,0 +1,4 @@
+// 20.2.2.14 Math.expm1(x)
+module.exports = Math.expm1 || function expm1(x){
+ return (x = +x) == 0 ? x : x > -1e-6 && x < 1e-6 ? x + x * x / 2 : Math.exp(x) - 1;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.math-log1p.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.math-log1p.js
new file mode 100644
index 00000000..a92bf463
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.math-log1p.js
@@ -0,0 +1,4 @@
+// 20.2.2.20 Math.log1p(x)
+module.exports = Math.log1p || function log1p(x){
+ return (x = +x) > -1e-8 && x < 1e-8 ? x - x * x / 2 : Math.log(1 + x);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.math-sign.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.math-sign.js
new file mode 100644
index 00000000..a4848df6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.math-sign.js
@@ -0,0 +1,4 @@
+// 20.2.2.28 Math.sign(x)
+module.exports = Math.sign || function sign(x){
+ return (x = +x) == 0 || x != x ? x : x < 0 ? -1 : 1;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.microtask.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.microtask.js
new file mode 100644
index 00000000..1f9ebeb5
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.microtask.js
@@ -0,0 +1,64 @@
+var global = require('./$.global')
+ , macrotask = require('./$.task').set
+ , Observer = global.MutationObserver || global.WebKitMutationObserver
+ , process = global.process
+ , Promise = global.Promise
+ , isNode = require('./$.cof')(process) == 'process'
+ , head, last, notify;
+
+var flush = function(){
+ var parent, domain, fn;
+ if(isNode && (parent = process.domain)){
+ process.domain = null;
+ parent.exit();
+ }
+ while(head){
+ domain = head.domain;
+ fn = head.fn;
+ if(domain)domain.enter();
+ fn(); // <- currently we use it only for Promise - try / catch not required
+ if(domain)domain.exit();
+ head = head.next;
+ } last = undefined;
+ if(parent)parent.enter();
+};
+
+// Node.js
+if(isNode){
+ notify = function(){
+ process.nextTick(flush);
+ };
+// browsers with MutationObserver
+} else if(Observer){
+ var toggle = 1
+ , node = document.createTextNode('');
+ new Observer(flush).observe(node, {characterData: true}); // eslint-disable-line no-new
+ notify = function(){
+ node.data = toggle = -toggle;
+ };
+// environments with maybe non-completely correct, but existent Promise
+} else if(Promise && Promise.resolve){
+ notify = function(){
+ Promise.resolve().then(flush);
+ };
+// for other environments - macrotask based on:
+// - setImmediate
+// - MessageChannel
+// - window.postMessag
+// - onreadystatechange
+// - setTimeout
+} else {
+ notify = function(){
+ // strange IE + webpack dev server bug - use .call(global)
+ macrotask.call(global, flush);
+ };
+}
+
+module.exports = function asap(fn){
+ var task = {fn: fn, next: undefined, domain: isNode && process.domain};
+ if(last)last.next = task;
+ if(!head){
+ head = task;
+ notify();
+ } last = task;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.object-assign.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.object-assign.js
new file mode 100644
index 00000000..5ce43f78
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.object-assign.js
@@ -0,0 +1,33 @@
+// 19.1.2.1 Object.assign(target, source, ...)
+var $ = require('./$')
+ , toObject = require('./$.to-object')
+ , IObject = require('./$.iobject');
+
+// should work with symbols and should have deterministic property order (V8 bug)
+module.exports = require('./$.fails')(function(){
+ var a = Object.assign
+ , A = {}
+ , B = {}
+ , S = Symbol()
+ , K = 'abcdefghijklmnopqrst';
+ A[S] = 7;
+ K.split('').forEach(function(k){ B[k] = k; });
+ return a({}, A)[S] != 7 || Object.keys(a({}, B)).join('') != K;
+}) ? function assign(target, source){ // eslint-disable-line no-unused-vars
+ var T = toObject(target)
+ , $$ = arguments
+ , $$len = $$.length
+ , index = 1
+ , getKeys = $.getKeys
+ , getSymbols = $.getSymbols
+ , isEnum = $.isEnum;
+ while($$len > index){
+ var S = IObject($$[index++])
+ , keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S)
+ , length = keys.length
+ , j = 0
+ , key;
+ while(length > j)if(isEnum.call(S, key = keys[j++]))T[key] = S[key];
+ }
+ return T;
+} : Object.assign;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.object-define.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.object-define.js
new file mode 100644
index 00000000..2fff248f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.object-define.js
@@ -0,0 +1,11 @@
+var $ = require('./$')
+ , ownKeys = require('./$.own-keys')
+ , toIObject = require('./$.to-iobject');
+
+module.exports = function define(target, mixin){
+ var keys = ownKeys(toIObject(mixin))
+ , length = keys.length
+ , i = 0, key;
+ while(length > i)$.setDesc(target, key = keys[i++], $.getDesc(mixin, key));
+ return target;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.object-sap.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.object-sap.js
new file mode 100644
index 00000000..5fa7288a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.object-sap.js
@@ -0,0 +1,10 @@
+// most Object methods by ES6 should accept primitives
+var $export = require('./$.export')
+ , core = require('./$.core')
+ , fails = require('./$.fails');
+module.exports = function(KEY, exec){
+ var fn = (core.Object || {})[KEY] || Object[KEY]
+ , exp = {};
+ exp[KEY] = exec(fn);
+ $export($export.S + $export.F * fails(function(){ fn(1); }), 'Object', exp);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.object-to-array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.object-to-array.js
new file mode 100644
index 00000000..d46425ba
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.object-to-array.js
@@ -0,0 +1,16 @@
+var $ = require('./$')
+ , toIObject = require('./$.to-iobject')
+ , isEnum = $.isEnum;
+module.exports = function(isEntries){
+ return function(it){
+ var O = toIObject(it)
+ , keys = $.getKeys(O)
+ , length = keys.length
+ , i = 0
+ , result = []
+ , key;
+ while(length > i)if(isEnum.call(O, key = keys[i++])){
+ result.push(isEntries ? [key, O[key]] : O[key]);
+ } return result;
+ };
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.own-keys.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.own-keys.js
new file mode 100644
index 00000000..0218c4bd
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.own-keys.js
@@ -0,0 +1,9 @@
+// all object keys, includes non-enumerable and symbols
+var $ = require('./$')
+ , anObject = require('./$.an-object')
+ , Reflect = require('./$.global').Reflect;
+module.exports = Reflect && Reflect.ownKeys || function ownKeys(it){
+ var keys = $.getNames(anObject(it))
+ , getSymbols = $.getSymbols;
+ return getSymbols ? keys.concat(getSymbols(it)) : keys;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.partial.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.partial.js
new file mode 100644
index 00000000..53f97aa9
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.partial.js
@@ -0,0 +1,24 @@
+'use strict';
+var path = require('./$.path')
+ , invoke = require('./$.invoke')
+ , aFunction = require('./$.a-function');
+module.exports = function(/* ...pargs */){
+ var fn = aFunction(this)
+ , length = arguments.length
+ , pargs = Array(length)
+ , i = 0
+ , _ = path._
+ , holder = false;
+ while(length > i)if((pargs[i] = arguments[i++]) === _)holder = true;
+ return function(/* ...args */){
+ var that = this
+ , $$ = arguments
+ , $$len = $$.length
+ , j = 0, k = 0, args;
+ if(!holder && !$$len)return invoke(fn, pargs, that);
+ args = pargs.slice();
+ if(holder)for(;length > j; j++)if(args[j] === _)args[j] = $$[k++];
+ while($$len > k)args.push($$[k++]);
+ return invoke(fn, args, that);
+ };
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.path.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.path.js
new file mode 100644
index 00000000..27bb24b8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.path.js
@@ -0,0 +1 @@
+module.exports = require('./$.core');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.property-desc.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.property-desc.js
new file mode 100644
index 00000000..e3f7ab2d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.property-desc.js
@@ -0,0 +1,8 @@
+module.exports = function(bitmap, value){
+ return {
+ enumerable : !(bitmap & 1),
+ configurable: !(bitmap & 2),
+ writable : !(bitmap & 4),
+ value : value
+ };
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.redefine-all.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.redefine-all.js
new file mode 100644
index 00000000..01fe55ba
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.redefine-all.js
@@ -0,0 +1,5 @@
+var redefine = require('./$.redefine');
+module.exports = function(target, src){
+ for(var key in src)redefine(target, key, src[key]);
+ return target;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.redefine.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.redefine.js
new file mode 100644
index 00000000..57453fd1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.redefine.js
@@ -0,0 +1 @@
+module.exports = require('./$.hide');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.replacer.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.replacer.js
new file mode 100644
index 00000000..5360a3d3
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.replacer.js
@@ -0,0 +1,8 @@
+module.exports = function(regExp, replace){
+ var replacer = replace === Object(replace) ? function(part){
+ return replace[part];
+ } : replace;
+ return function(it){
+ return String(it).replace(regExp, replacer);
+ };
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.same-value.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.same-value.js
new file mode 100644
index 00000000..8c2b8c7f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.same-value.js
@@ -0,0 +1,4 @@
+// 7.2.9 SameValue(x, y)
+module.exports = Object.is || function is(x, y){
+ return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.set-proto.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.set-proto.js
new file mode 100644
index 00000000..b1edd681
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.set-proto.js
@@ -0,0 +1,26 @@
+// Works with __proto__ only. Old v8 can't work with null proto objects.
+/* eslint-disable no-proto */
+var getDesc = require('./$').getDesc
+ , isObject = require('./$.is-object')
+ , anObject = require('./$.an-object');
+var check = function(O, proto){
+ anObject(O);
+ if(!isObject(proto) && proto !== null)throw TypeError(proto + ": can't set as prototype!");
+};
+module.exports = {
+ set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
+ function(test, buggy, set){
+ try {
+ set = require('./$.ctx')(Function.call, getDesc(Object.prototype, '__proto__').set, 2);
+ set(test, []);
+ buggy = !(test instanceof Array);
+ } catch(e){ buggy = true; }
+ return function setPrototypeOf(O, proto){
+ check(O, proto);
+ if(buggy)O.__proto__ = proto;
+ else set(O, proto);
+ return O;
+ };
+ }({}, false) : undefined),
+ check: check
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.set-species.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.set-species.js
new file mode 100644
index 00000000..f6720c36
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.set-species.js
@@ -0,0 +1,13 @@
+'use strict';
+var core = require('./$.core')
+ , $ = require('./$')
+ , DESCRIPTORS = require('./$.descriptors')
+ , SPECIES = require('./$.wks')('species');
+
+module.exports = function(KEY){
+ var C = core[KEY];
+ if(DESCRIPTORS && C && !C[SPECIES])$.setDesc(C, SPECIES, {
+ configurable: true,
+ get: function(){ return this; }
+ });
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.set-to-string-tag.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.set-to-string-tag.js
new file mode 100644
index 00000000..22b34244
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.set-to-string-tag.js
@@ -0,0 +1,7 @@
+var def = require('./$').setDesc
+ , has = require('./$.has')
+ , TAG = require('./$.wks')('toStringTag');
+
+module.exports = function(it, tag, stat){
+ if(it && !has(it = stat ? it : it.prototype, TAG))def(it, TAG, {configurable: true, value: tag});
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.shared.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.shared.js
new file mode 100644
index 00000000..8dea827a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.shared.js
@@ -0,0 +1,6 @@
+var global = require('./$.global')
+ , SHARED = '__core-js_shared__'
+ , store = global[SHARED] || (global[SHARED] = {});
+module.exports = function(key){
+ return store[key] || (store[key] = {});
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.species-constructor.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.species-constructor.js
new file mode 100644
index 00000000..f71168b7
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.species-constructor.js
@@ -0,0 +1,8 @@
+// 7.3.20 SpeciesConstructor(O, defaultConstructor)
+var anObject = require('./$.an-object')
+ , aFunction = require('./$.a-function')
+ , SPECIES = require('./$.wks')('species');
+module.exports = function(O, D){
+ var C = anObject(O).constructor, S;
+ return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.strict-new.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.strict-new.js
new file mode 100644
index 00000000..8bab9ed1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.strict-new.js
@@ -0,0 +1,4 @@
+module.exports = function(it, Constructor, name){
+ if(!(it instanceof Constructor))throw TypeError(name + ": use the 'new' operator!");
+ return it;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.string-at.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.string-at.js
new file mode 100644
index 00000000..3d344bba
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.string-at.js
@@ -0,0 +1,17 @@
+var toInteger = require('./$.to-integer')
+ , defined = require('./$.defined');
+// true -> String#at
+// false -> String#codePointAt
+module.exports = function(TO_STRING){
+ return function(that, pos){
+ var s = String(defined(that))
+ , i = toInteger(pos)
+ , l = s.length
+ , a, b;
+ if(i < 0 || i >= l)return TO_STRING ? '' : undefined;
+ a = s.charCodeAt(i);
+ return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
+ ? TO_STRING ? s.charAt(i) : a
+ : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
+ };
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.string-context.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.string-context.js
new file mode 100644
index 00000000..d6485a43
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.string-context.js
@@ -0,0 +1,8 @@
+// helper for String#{startsWith, endsWith, includes}
+var isRegExp = require('./$.is-regexp')
+ , defined = require('./$.defined');
+
+module.exports = function(that, searchString, NAME){
+ if(isRegExp(searchString))throw TypeError('String#' + NAME + " doesn't accept regex!");
+ return String(defined(that));
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.string-pad.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.string-pad.js
new file mode 100644
index 00000000..f0507d93
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.string-pad.js
@@ -0,0 +1,17 @@
+// https://github.com/ljharb/proposal-string-pad-left-right
+var toLength = require('./$.to-length')
+ , repeat = require('./$.string-repeat')
+ , defined = require('./$.defined');
+
+module.exports = function(that, maxLength, fillString, left){
+ var S = String(defined(that))
+ , stringLength = S.length
+ , fillStr = fillString === undefined ? ' ' : String(fillString)
+ , intMaxLength = toLength(maxLength);
+ if(intMaxLength <= stringLength)return S;
+ if(fillStr == '')fillStr = ' ';
+ var fillLen = intMaxLength - stringLength
+ , stringFiller = repeat.call(fillStr, Math.ceil(fillLen / fillStr.length));
+ if(stringFiller.length > fillLen)stringFiller = stringFiller.slice(0, fillLen);
+ return left ? stringFiller + S : S + stringFiller;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.string-repeat.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.string-repeat.js
new file mode 100644
index 00000000..491d0853
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.string-repeat.js
@@ -0,0 +1,12 @@
+'use strict';
+var toInteger = require('./$.to-integer')
+ , defined = require('./$.defined');
+
+module.exports = function repeat(count){
+ var str = String(defined(this))
+ , res = ''
+ , n = toInteger(count);
+ if(n < 0 || n == Infinity)throw RangeError("Count can't be negative");
+ for(;n > 0; (n >>>= 1) && (str += str))if(n & 1)res += str;
+ return res;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.string-trim.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.string-trim.js
new file mode 100644
index 00000000..04423f4d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.string-trim.js
@@ -0,0 +1,29 @@
+var $export = require('./$.export')
+ , defined = require('./$.defined')
+ , fails = require('./$.fails')
+ , spaces = '\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003' +
+ '\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF'
+ , space = '[' + spaces + ']'
+ , non = '\u200b\u0085'
+ , ltrim = RegExp('^' + space + space + '*')
+ , rtrim = RegExp(space + space + '*$');
+
+var exporter = function(KEY, exec){
+ var exp = {};
+ exp[KEY] = exec(trim);
+ $export($export.P + $export.F * fails(function(){
+ return !!spaces[KEY]() || non[KEY]() != non;
+ }), 'String', exp);
+};
+
+// 1 -> String#trimLeft
+// 2 -> String#trimRight
+// 3 -> String#trim
+var trim = exporter.trim = function(string, TYPE){
+ string = String(defined(string));
+ if(TYPE & 1)string = string.replace(ltrim, '');
+ if(TYPE & 2)string = string.replace(rtrim, '');
+ return string;
+};
+
+module.exports = exporter;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.task.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.task.js
new file mode 100644
index 00000000..5d7759e6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.task.js
@@ -0,0 +1,75 @@
+var ctx = require('./$.ctx')
+ , invoke = require('./$.invoke')
+ , html = require('./$.html')
+ , cel = require('./$.dom-create')
+ , global = require('./$.global')
+ , process = global.process
+ , setTask = global.setImmediate
+ , clearTask = global.clearImmediate
+ , MessageChannel = global.MessageChannel
+ , counter = 0
+ , queue = {}
+ , ONREADYSTATECHANGE = 'onreadystatechange'
+ , defer, channel, port;
+var run = function(){
+ var id = +this;
+ if(queue.hasOwnProperty(id)){
+ var fn = queue[id];
+ delete queue[id];
+ fn();
+ }
+};
+var listner = function(event){
+ run.call(event.data);
+};
+// Node.js 0.9+ & IE10+ has setImmediate, otherwise:
+if(!setTask || !clearTask){
+ setTask = function setImmediate(fn){
+ var args = [], i = 1;
+ while(arguments.length > i)args.push(arguments[i++]);
+ queue[++counter] = function(){
+ invoke(typeof fn == 'function' ? fn : Function(fn), args);
+ };
+ defer(counter);
+ return counter;
+ };
+ clearTask = function clearImmediate(id){
+ delete queue[id];
+ };
+ // Node.js 0.8-
+ if(require('./$.cof')(process) == 'process'){
+ defer = function(id){
+ process.nextTick(ctx(run, id, 1));
+ };
+ // Browsers with MessageChannel, includes WebWorkers
+ } else if(MessageChannel){
+ channel = new MessageChannel;
+ port = channel.port2;
+ channel.port1.onmessage = listner;
+ defer = ctx(port.postMessage, port, 1);
+ // Browsers with postMessage, skip WebWorkers
+ // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'
+ } else if(global.addEventListener && typeof postMessage == 'function' && !global.importScripts){
+ defer = function(id){
+ global.postMessage(id + '', '*');
+ };
+ global.addEventListener('message', listner, false);
+ // IE8-
+ } else if(ONREADYSTATECHANGE in cel('script')){
+ defer = function(id){
+ html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function(){
+ html.removeChild(this);
+ run.call(id);
+ };
+ };
+ // Rest old browsers
+ } else {
+ defer = function(id){
+ setTimeout(ctx(run, id, 1), 0);
+ };
+ }
+}
+module.exports = {
+ set: setTask,
+ clear: clearTask
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.to-index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.to-index.js
new file mode 100644
index 00000000..9346a8ff
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.to-index.js
@@ -0,0 +1,7 @@
+var toInteger = require('./$.to-integer')
+ , max = Math.max
+ , min = Math.min;
+module.exports = function(index, length){
+ index = toInteger(index);
+ return index < 0 ? max(index + length, 0) : min(index, length);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.to-integer.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.to-integer.js
new file mode 100644
index 00000000..f63baaff
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.to-integer.js
@@ -0,0 +1,6 @@
+// 7.1.4 ToInteger
+var ceil = Math.ceil
+ , floor = Math.floor;
+module.exports = function(it){
+ return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.to-iobject.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.to-iobject.js
new file mode 100644
index 00000000..fcf54c82
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.to-iobject.js
@@ -0,0 +1,6 @@
+// to indexed object, toObject with fallback for non-array-like ES3 strings
+var IObject = require('./$.iobject')
+ , defined = require('./$.defined');
+module.exports = function(it){
+ return IObject(defined(it));
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.to-length.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.to-length.js
new file mode 100644
index 00000000..0e15b1b8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.to-length.js
@@ -0,0 +1,6 @@
+// 7.1.15 ToLength
+var toInteger = require('./$.to-integer')
+ , min = Math.min;
+module.exports = function(it){
+ return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.to-object.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.to-object.js
new file mode 100644
index 00000000..2c57a29f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.to-object.js
@@ -0,0 +1,5 @@
+// 7.1.13 ToObject(argument)
+var defined = require('./$.defined');
+module.exports = function(it){
+ return Object(defined(it));
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.to-primitive.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.to-primitive.js
new file mode 100644
index 00000000..6fb4585a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.to-primitive.js
@@ -0,0 +1,12 @@
+// 7.1.1 ToPrimitive(input [, PreferredType])
+var isObject = require('./$.is-object');
+// instead of the ES6 spec version, we didn't implement @@toPrimitive case
+// and the second argument - flag - preferred type is a string
+module.exports = function(it, S){
+ if(!isObject(it))return it;
+ var fn, val;
+ if(S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it)))return val;
+ if(typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it)))return val;
+ if(!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it)))return val;
+ throw TypeError("Can't convert object to primitive value");
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.typed-array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.typed-array.js
new file mode 100644
index 00000000..1bd5cf0e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.typed-array.js
@@ -0,0 +1,365 @@
+'use strict';
+if(require('./$.descriptors')){
+ var LIBRARY = require('./$.library')
+ , global = require('./$.global')
+ , $ = require('./$')
+ , fails = require('./$.fails')
+ , $export = require('./$.export')
+ , $typed = require('./$.typed')
+ , $buffer = require('./$.buffer')
+ , ctx = require('./$.ctx')
+ , strictNew = require('./$.strict-new')
+ , propertyDesc = require('./$.property-desc')
+ , hide = require('./$.hide')
+ , redefineAll = require('./$.redefine-all')
+ , isInteger = require('./$.is-integer')
+ , toInteger = require('./$.to-integer')
+ , toLength = require('./$.to-length')
+ , toIndex = require('./$.to-index')
+ , toPrimitive = require('./$.to-primitive')
+ , isObject = require('./$.is-object')
+ , toObject = require('./$.to-object')
+ , isArrayIter = require('./$.is-array-iter')
+ , isIterable = require('./core.is-iterable')
+ , getIterFn = require('./core.get-iterator-method')
+ , wks = require('./$.wks')
+ , createArrayMethod = require('./$.array-methods')
+ , createArrayIncludes = require('./$.array-includes')
+ , speciesConstructor = require('./$.species-constructor')
+ , ArrayIterators = require('./es6.array.iterator')
+ , Iterators = require('./$.iterators')
+ , $iterDetect = require('./$.iter-detect')
+ , setSpecies = require('./$.set-species')
+ , arrayFill = require('./$.array-fill')
+ , arrayCopyWithin = require('./$.array-copy-within')
+ , ArrayProto = Array.prototype
+ , $ArrayBuffer = $buffer.ArrayBuffer
+ , $DataView = $buffer.DataView
+ , setDesc = $.setDesc
+ , getDesc = $.getDesc
+ , arrayForEach = createArrayMethod(0)
+ , arrayMap = createArrayMethod(1)
+ , arrayFilter = createArrayMethod(2)
+ , arraySome = createArrayMethod(3)
+ , arrayEvery = createArrayMethod(4)
+ , arrayFind = createArrayMethod(5)
+ , arrayFindIndex = createArrayMethod(6)
+ , arrayIncludes = createArrayIncludes(true)
+ , arrayIndexOf = createArrayIncludes(false)
+ , arrayValues = ArrayIterators.values
+ , arrayKeys = ArrayIterators.keys
+ , arrayEntries = ArrayIterators.entries
+ , arrayLastIndexOf = ArrayProto.lastIndexOf
+ , arrayReduce = ArrayProto.reduce
+ , arrayReduceRight = ArrayProto.reduceRight
+ , arrayJoin = ArrayProto.join
+ , arrayReverse = ArrayProto.reverse
+ , arraySort = ArrayProto.sort
+ , arraySlice = ArrayProto.slice
+ , arrayToString = ArrayProto.toString
+ , arrayToLocaleString = ArrayProto.toLocaleString
+ , ITERATOR = wks('iterator')
+ , TAG = wks('toStringTag')
+ , TYPED_CONSTRUCTOR = wks('typed_constructor')
+ , DEF_CONSTRUCTOR = wks('def_constructor')
+ , ALL_ARRAYS = $typed.ARRAYS
+ , TYPED_ARRAY = $typed.TYPED
+ , VIEW = $typed.VIEW
+ , BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT';
+
+ var LITTLE_ENDIAN = fails(function(){
+ return new Uint8Array(new Uint16Array([1]).buffer)[0] === 1;
+ });
+
+ var validate = function(it){
+ if(isObject(it) && TYPED_ARRAY in it)return it;
+ throw TypeError(it + ' is not a typed array!');
+ };
+
+ var fromList = function(O, list){
+ var index = 0
+ , length = list.length
+ , result = allocate(speciesConstructor(O, O[DEF_CONSTRUCTOR]), length);
+ while(length > index)result[index] = list[index++];
+ return result;
+ };
+
+ var allocate = function(C, length){
+ if(!(isObject(C) && TYPED_CONSTRUCTOR in C)){
+ throw TypeError('It is not a typed array constructor!');
+ } return new C(length);
+ };
+
+ var $from = function from(source /*, mapfn, thisArg */){
+ var O = toObject(source)
+ , $$ = arguments
+ , $$len = $$.length
+ , mapfn = $$len > 1 ? $$[1] : undefined
+ , mapping = mapfn !== undefined
+ , iterFn = getIterFn(O)
+ , i, length, values, result, step, iterator;
+ if(iterFn != undefined && !isArrayIter(iterFn)){
+ for(iterator = iterFn.call(O), values = [], i = 0; !(step = iterator.next()).done; i++){
+ values.push(step.value);
+ } O = values;
+ }
+ if(mapping && $$len > 2)mapfn = ctx(mapfn, $$[2], 2);
+ for(i = 0, length = toLength(O.length), result = allocate(this, length); length > i; i++){
+ result[i] = mapping ? mapfn(O[i], i) : O[i];
+ }
+ return result;
+ };
+
+ var addGetter = function(C, key, internal){
+ setDesc(C.prototype, key, {get: function(){ return this._d[internal]; }});
+ };
+
+ var $of = function of(/*...items*/){
+ var index = 0
+ , length = arguments.length
+ , result = allocate(this, length);
+ while(length > index)result[index] = arguments[index++];
+ return result;
+ };
+ var $toLocaleString = function toLocaleString(){
+ return arrayToLocaleString.apply(validate(this), arguments);
+ };
+
+ var proto = {
+ copyWithin: function copyWithin(target, start /*, end */){
+ return arrayCopyWithin.call(validate(this), target, start, arguments.length > 2 ? arguments[2] : undefined);
+ },
+ every: function every(callbackfn /*, thisArg */){
+ return arrayEvery(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ fill: function fill(value /*, start, end */){ // eslint-disable-line no-unused-vars
+ return arrayFill.apply(validate(this), arguments);
+ },
+ filter: function filter(callbackfn /*, thisArg */){
+ return fromList(this, arrayFilter(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined));
+ },
+ find: function find(predicate /*, thisArg */){
+ return arrayFind(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ findIndex: function findIndex(predicate /*, thisArg */){
+ return arrayFindIndex(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ forEach: function forEach(callbackfn /*, thisArg */){
+ arrayForEach(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ indexOf: function indexOf(searchElement /*, fromIndex */){
+ return arrayIndexOf(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ includes: function includes(searchElement /*, fromIndex */){
+ return arrayIncludes(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ join: function join(separator){ // eslint-disable-line no-unused-vars
+ return arrayJoin.apply(validate(this), arguments);
+ },
+ lastIndexOf: function lastIndexOf(searchElement /*, fromIndex */){ // eslint-disable-line no-unused-vars
+ return arrayLastIndexOf.apply(validate(this), arguments);
+ },
+ map: function map(mapfn /*, thisArg */){
+ return fromList(this, arrayMap(validate(this), mapfn, arguments.length > 1 ? arguments[1] : undefined)); // TODO
+ },
+ reduce: function reduce(callbackfn /*, initialValue */){ // eslint-disable-line no-unused-vars
+ return arrayReduce.apply(validate(this), arguments);
+ },
+ reduceRight: function reduceRight(callbackfn /*, initialValue */){ // eslint-disable-line no-unused-vars
+ return arrayReduceRight.apply(validate(this), arguments);
+ },
+ reverse: function reverse(){
+ return arrayReverse.call(validate(this));
+ },
+ set: function set(arrayLike /*, offset */){
+ validate(this);
+ var offset = toInteger(arguments.length > 1 ? arguments[1] : undefined);
+ if(offset < 0)throw RangeError();
+ var length = this.length;
+ var src = toObject(arrayLike);
+ var index = 0;
+ var len = toLength(src.length);
+ if(len + offset > length)throw RangeError();
+ while(index < len)this[offset + index] = src[index++];
+ },
+ slice: function slice(start, end){
+ return fromList(this, arraySlice.call(validate(this), start, end)); // TODO
+ },
+ some: function some(callbackfn /*, thisArg */){
+ return arraySome(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ sort: function sort(comparefn){
+ return arraySort.call(validate(this), comparefn);
+ },
+ subarray: function subarray(begin, end){
+ var O = validate(this)
+ , length = O.length
+ , $begin = toIndex(begin, length);
+ return new (speciesConstructor(O, O[DEF_CONSTRUCTOR]))(
+ O.buffer,
+ O.byteOffset + $begin * O.BYTES_PER_ELEMENT,
+ toLength((end === undefined ? length : toIndex(end, length)) - $begin)
+ );
+ },
+ entries: function entries(){
+ return arrayEntries.call(validate(this));
+ },
+ keys: function keys(){
+ return arrayKeys.call(validate(this));
+ },
+ values: function values(){
+ return arrayValues.call(validate(this));
+ }
+ };
+
+ var isTAIndex = function(target, key){
+ return isObject(target)
+ && TYPED_ARRAY in target
+ && typeof key != 'symbol'
+ && key in target
+ && String(+key) == String(key);
+ };
+ var $getDesc = function getOwnPropertyDescriptor(target, key){
+ return isTAIndex(target, key = toPrimitive(key, true))
+ ? propertyDesc(2, target[key])
+ : getDesc(target, key);
+ };
+ var $setDesc = function defineProperty(target, key, desc){
+ if(isTAIndex(target, key = toPrimitive(key, true)) && isObject(desc)){
+ if('value' in desc)target[key] = desc.value;
+ return target;
+ } else return setDesc(target, key, desc);
+ };
+
+ if(!ALL_ARRAYS){
+ $.getDesc = $getDesc;
+ $.setDesc = $setDesc;
+ }
+
+ $export($export.S + $export.F * !ALL_ARRAYS, 'Object', {
+ getOwnPropertyDescriptor: $getDesc,
+ defineProperty: $setDesc
+ });
+
+ var $TypedArrayPrototype$ = redefineAll({}, proto);
+ redefineAll($TypedArrayPrototype$, {
+ constructor: function(){ /* noop */ },
+ toString: arrayToString,
+ toLocaleString: $toLocaleString
+ });
+ $.setDesc($TypedArrayPrototype$, TAG, {
+ get: function(){ return this[TYPED_ARRAY]; }
+ });
+
+ module.exports = function(KEY, BYTES, wrapper, CLAMPED){
+ CLAMPED = !!CLAMPED;
+ var NAME = KEY + (CLAMPED ? 'Clamped' : '') + 'Array'
+ , GETTER = 'get' + KEY
+ , SETTER = 'set' + KEY
+ , TypedArray = global[NAME]
+ , Base = TypedArray || {}
+ , FORCED = !TypedArray || !$typed.ABV
+ , $iterator = proto.values
+ , O = {};
+ var addElement = function(that, index){
+ setDesc(that, index, {
+ get: function(){
+ var data = this._d;
+ return data.v[GETTER](index * BYTES + data.o, LITTLE_ENDIAN);
+ },
+ set: function(it){
+ var data = this._d;
+ if(CLAMPED)it = (it = Math.round(it)) < 0 ? 0 : it > 0xff ? 0xff : it & 0xff;
+ data.v[SETTER](index * BYTES + data.o, it, LITTLE_ENDIAN);
+ },
+ enumerable: true
+ });
+ };
+ if(!$ArrayBuffer)return;
+ if(FORCED){
+ TypedArray = wrapper(function(that, data, $offset, $length){
+ strictNew(that, TypedArray, NAME);
+ var index = 0
+ , offset = 0
+ , buffer, byteLength, length;
+ if(!isObject(data)){
+ byteLength = toInteger(data) * BYTES;
+ buffer = new $ArrayBuffer(byteLength);
+ // TODO TA case
+ } else if(data instanceof $ArrayBuffer){
+ buffer = data;
+ offset = toInteger($offset);
+ if(offset < 0 || offset % BYTES)throw RangeError();
+ var $len = data.byteLength;
+ if($length === undefined){
+ if($len % BYTES)throw RangeError();
+ byteLength = $len - offset;
+ if(byteLength < 0)throw RangeError();
+ } else {
+ byteLength = toLength($length) * BYTES;
+ if(byteLength + offset > $len)throw RangeError();
+ }
+ } else return $from.call(TypedArray, data);
+ length = byteLength / BYTES;
+ hide(that, '_d', {
+ b: buffer,
+ o: offset,
+ l: byteLength,
+ e: length,
+ v: new $DataView(buffer)
+ });
+ while(index < length)addElement(that, index++);
+ });
+ TypedArray.prototype = $.create($TypedArrayPrototype$);
+ addGetter(TypedArray, 'buffer', 'b');
+ addGetter(TypedArray, 'byteOffset', 'o');
+ addGetter(TypedArray, 'byteLength', 'l');
+ addGetter(TypedArray, 'length', 'e');
+ hide(TypedArray, BYTES_PER_ELEMENT, BYTES);
+ hide(TypedArray.prototype, BYTES_PER_ELEMENT, BYTES);
+ hide(TypedArray.prototype, 'constructor', TypedArray);
+ } else if(!$iterDetect(function(iter){
+ new TypedArray(iter); // eslint-disable-line no-new
+ }, true)){
+ TypedArray = wrapper(function(that, data, $offset, $length){
+ strictNew(that, TypedArray, NAME);
+ if(isObject(data) && isIterable(data))return $from.call(TypedArray, data);
+ return $length === undefined ? new Base(data, $offset) : new Base(data, $offset, $length);
+ });
+ TypedArray.prototype = Base.prototype;
+ if(!LIBRARY)TypedArray.prototype.constructor = TypedArray;
+ }
+ var TypedArrayPrototype = TypedArray.prototype;
+ var $nativeIterator = TypedArrayPrototype[ITERATOR];
+ hide(TypedArray, TYPED_CONSTRUCTOR, true);
+ hide(TypedArrayPrototype, TYPED_ARRAY, NAME);
+ hide(TypedArrayPrototype, VIEW, true);
+ hide(TypedArrayPrototype, DEF_CONSTRUCTOR, TypedArray);
+ TAG in TypedArrayPrototype || $.setDesc(TypedArrayPrototype, TAG, {
+ get: function(){ return NAME; }
+ });
+
+ O[NAME] = TypedArray;
+
+ $export($export.G + $export.W + $export.F * (TypedArray != Base), O);
+
+ $export($export.S + $export.F * (TypedArray != Base), NAME, {
+ BYTES_PER_ELEMENT: BYTES,
+ from: Base.from || $from,
+ of: Base.of || $of
+ });
+
+ $export($export.P + $export.F * FORCED, NAME, proto);
+
+ $export($export.P + $export.F * (TypedArrayPrototype.toString != arrayToString), NAME, {toString: arrayToString});
+
+ $export($export.P + $export.F * fails(function(){
+ return [1, 2].toLocaleString() != new Typed([1, 2]).toLocaleString()
+ }), NAME, {toLocaleString: $toLocaleString});
+
+ Iterators[NAME] = $nativeIterator || $iterator;
+ LIBRARY || $nativeIterator || hide(TypedArrayPrototype, ITERATOR, $iterator);
+
+ setSpecies(NAME);
+ };
+} else module.exports = function(){ /* empty */};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.typed.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.typed.js
new file mode 100644
index 00000000..ced24126
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.typed.js
@@ -0,0 +1,36 @@
+var global = require('./$.global')
+ , hide = require('./$.hide')
+ , uid = require('./$.uid')
+ , TYPED = uid('typed_array')
+ , VIEW = uid('view')
+ , ABV = !!(global.ArrayBuffer && global.DataView)
+ , ARRAYS = true
+ , i = 0, l = 9;
+
+var TypedArrayConstructors = [
+ 'Int8Array',
+ 'Uint8Array',
+ 'Uint8ClampedArray',
+ 'Int16Array',
+ 'Uint16Array',
+ 'Int32Array',
+ 'Uint32Array',
+ 'Float32Array',
+ 'Float64Array'
+];
+
+while(i < l){
+ var Typed = global[TypedArrayConstructors[i++]];
+ if(Typed){
+ hide(Typed.prototype, TYPED, true);
+ hide(Typed.prototype, VIEW, true);
+ } else ARRAYS = false;
+}
+
+module.exports = {
+ ARRAYS: ARRAYS,
+ ABV: ABV,
+ CONSTR: ARRAYS && ABV,
+ TYPED: TYPED,
+ VIEW: VIEW
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.uid.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.uid.js
new file mode 100644
index 00000000..3be4196b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.uid.js
@@ -0,0 +1,5 @@
+var id = 0
+ , px = Math.random();
+module.exports = function(key){
+ return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.wks.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.wks.js
new file mode 100644
index 00000000..87a3d29a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/$.wks.js
@@ -0,0 +1,7 @@
+var store = require('./$.shared')('wks')
+ , uid = require('./$.uid')
+ , Symbol = require('./$.global').Symbol;
+module.exports = function(name){
+ return store[name] || (store[name] =
+ Symbol && Symbol[name] || (Symbol || uid)('Symbol.' + name));
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.delay.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.delay.js
new file mode 100644
index 00000000..3e19ef39
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.delay.js
@@ -0,0 +1,12 @@
+var global = require('./$.global')
+ , core = require('./$.core')
+ , $export = require('./$.export')
+ , partial = require('./$.partial');
+// https://esdiscuss.org/topic/promise-returning-delay-function
+$export($export.G + $export.F, {
+ delay: function delay(time){
+ return new (core.Promise || global.Promise)(function(resolve){
+ setTimeout(partial.call(resolve, true), time);
+ });
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.dict.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.dict.js
new file mode 100644
index 00000000..df314988
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.dict.js
@@ -0,0 +1,153 @@
+'use strict';
+var $ = require('./$')
+ , ctx = require('./$.ctx')
+ , $export = require('./$.export')
+ , createDesc = require('./$.property-desc')
+ , assign = require('./$.object-assign')
+ , keyOf = require('./$.keyof')
+ , aFunction = require('./$.a-function')
+ , forOf = require('./$.for-of')
+ , isIterable = require('./core.is-iterable')
+ , $iterCreate = require('./$.iter-create')
+ , step = require('./$.iter-step')
+ , isObject = require('./$.is-object')
+ , toIObject = require('./$.to-iobject')
+ , DESCRIPTORS = require('./$.descriptors')
+ , has = require('./$.has')
+ , getKeys = $.getKeys;
+
+// 0 -> Dict.forEach
+// 1 -> Dict.map
+// 2 -> Dict.filter
+// 3 -> Dict.some
+// 4 -> Dict.every
+// 5 -> Dict.find
+// 6 -> Dict.findKey
+// 7 -> Dict.mapPairs
+var createDictMethod = function(TYPE){
+ var IS_MAP = TYPE == 1
+ , IS_EVERY = TYPE == 4;
+ return function(object, callbackfn, that /* = undefined */){
+ var f = ctx(callbackfn, that, 3)
+ , O = toIObject(object)
+ , result = IS_MAP || TYPE == 7 || TYPE == 2
+ ? new (typeof this == 'function' ? this : Dict) : undefined
+ , key, val, res;
+ for(key in O)if(has(O, key)){
+ val = O[key];
+ res = f(val, key, object);
+ if(TYPE){
+ if(IS_MAP)result[key] = res; // map
+ else if(res)switch(TYPE){
+ case 2: result[key] = val; break; // filter
+ case 3: return true; // some
+ case 5: return val; // find
+ case 6: return key; // findKey
+ case 7: result[res[0]] = res[1]; // mapPairs
+ } else if(IS_EVERY)return false; // every
+ }
+ }
+ return TYPE == 3 || IS_EVERY ? IS_EVERY : result;
+ };
+};
+var findKey = createDictMethod(6);
+
+var createDictIter = function(kind){
+ return function(it){
+ return new DictIterator(it, kind);
+ };
+};
+var DictIterator = function(iterated, kind){
+ this._t = toIObject(iterated); // target
+ this._a = getKeys(iterated); // keys
+ this._i = 0; // next index
+ this._k = kind; // kind
+};
+$iterCreate(DictIterator, 'Dict', function(){
+ var that = this
+ , O = that._t
+ , keys = that._a
+ , kind = that._k
+ , key;
+ do {
+ if(that._i >= keys.length){
+ that._t = undefined;
+ return step(1);
+ }
+ } while(!has(O, key = keys[that._i++]));
+ if(kind == 'keys' )return step(0, key);
+ if(kind == 'values')return step(0, O[key]);
+ return step(0, [key, O[key]]);
+});
+
+function Dict(iterable){
+ var dict = $.create(null);
+ if(iterable != undefined){
+ if(isIterable(iterable)){
+ forOf(iterable, true, function(key, value){
+ dict[key] = value;
+ });
+ } else assign(dict, iterable);
+ }
+ return dict;
+}
+Dict.prototype = null;
+
+function reduce(object, mapfn, init){
+ aFunction(mapfn);
+ var O = toIObject(object)
+ , keys = getKeys(O)
+ , length = keys.length
+ , i = 0
+ , memo, key;
+ if(arguments.length < 3){
+ if(!length)throw TypeError('Reduce of empty object with no initial value');
+ memo = O[keys[i++]];
+ } else memo = Object(init);
+ while(length > i)if(has(O, key = keys[i++])){
+ memo = mapfn(memo, O[key], key, object);
+ }
+ return memo;
+}
+
+function includes(object, el){
+ return (el == el ? keyOf(object, el) : findKey(object, function(it){
+ return it != it;
+ })) !== undefined;
+}
+
+function get(object, key){
+ if(has(object, key))return object[key];
+}
+function set(object, key, value){
+ if(DESCRIPTORS && key in Object)$.setDesc(object, key, createDesc(0, value));
+ else object[key] = value;
+ return object;
+}
+
+function isDict(it){
+ return isObject(it) && $.getProto(it) === Dict.prototype;
+}
+
+$export($export.G + $export.F, {Dict: Dict});
+
+$export($export.S, 'Dict', {
+ keys: createDictIter('keys'),
+ values: createDictIter('values'),
+ entries: createDictIter('entries'),
+ forEach: createDictMethod(0),
+ map: createDictMethod(1),
+ filter: createDictMethod(2),
+ some: createDictMethod(3),
+ every: createDictMethod(4),
+ find: createDictMethod(5),
+ findKey: findKey,
+ mapPairs: createDictMethod(7),
+ reduce: reduce,
+ keyOf: keyOf,
+ includes: includes,
+ has: has,
+ get: get,
+ set: set,
+ isDict: isDict
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.function.part.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.function.part.js
new file mode 100644
index 00000000..9943b307
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.function.part.js
@@ -0,0 +1,7 @@
+var path = require('./$.path')
+ , $export = require('./$.export');
+
+// Placeholder
+require('./$.core')._ = path._ = path._ || {};
+
+$export($export.P + $export.F, 'Function', {part: require('./$.partial')});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.get-iterator-method.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.get-iterator-method.js
new file mode 100644
index 00000000..02db743c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.get-iterator-method.js
@@ -0,0 +1,8 @@
+var classof = require('./$.classof')
+ , ITERATOR = require('./$.wks')('iterator')
+ , Iterators = require('./$.iterators');
+module.exports = require('./$.core').getIteratorMethod = function(it){
+ if(it != undefined)return it[ITERATOR]
+ || it['@@iterator']
+ || Iterators[classof(it)];
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.get-iterator.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.get-iterator.js
new file mode 100644
index 00000000..7290904a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.get-iterator.js
@@ -0,0 +1,7 @@
+var anObject = require('./$.an-object')
+ , get = require('./core.get-iterator-method');
+module.exports = require('./$.core').getIterator = function(it){
+ var iterFn = get(it);
+ if(typeof iterFn != 'function')throw TypeError(it + ' is not iterable!');
+ return anObject(iterFn.call(it));
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.is-iterable.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.is-iterable.js
new file mode 100644
index 00000000..c27e6588
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.is-iterable.js
@@ -0,0 +1,9 @@
+var classof = require('./$.classof')
+ , ITERATOR = require('./$.wks')('iterator')
+ , Iterators = require('./$.iterators');
+module.exports = require('./$.core').isIterable = function(it){
+ var O = Object(it);
+ return O[ITERATOR] !== undefined
+ || '@@iterator' in O
+ || Iterators.hasOwnProperty(classof(O));
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.log.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.log.js
new file mode 100644
index 00000000..4c0ea53d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.log.js
@@ -0,0 +1,26 @@
+var $ = require('./$')
+ , global = require('./$.global')
+ , $export = require('./$.export')
+ , log = {}
+ , enabled = true;
+// Methods from https://github.com/DeveloperToolsWG/console-object/blob/master/api.md
+$.each.call((
+ 'assert,clear,count,debug,dir,dirxml,error,exception,group,groupCollapsed,groupEnd,' +
+ 'info,isIndependentlyComposed,log,markTimeline,profile,profileEnd,table,' +
+ 'time,timeEnd,timeline,timelineEnd,timeStamp,trace,warn'
+).split(','), function(key){
+ log[key] = function(){
+ var $console = global.console;
+ if(enabled && $console && $console[key]){
+ return Function.apply.call($console[key], $console, arguments);
+ }
+ };
+});
+$export($export.G + $export.F, {log: require('./$.object-assign')(log.log, log, {
+ enable: function(){
+ enabled = true;
+ },
+ disable: function(){
+ enabled = false;
+ }
+})});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.number.iterator.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.number.iterator.js
new file mode 100644
index 00000000..d9273780
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.number.iterator.js
@@ -0,0 +1,9 @@
+'use strict';
+require('./$.iter-define')(Number, 'Number', function(iterated){
+ this._l = +iterated;
+ this._i = 0;
+}, function(){
+ var i = this._i++
+ , done = !(i < this._l);
+ return {done: done, value: done ? undefined : i};
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.object.classof.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.object.classof.js
new file mode 100644
index 00000000..df682e44
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.object.classof.js
@@ -0,0 +1,3 @@
+var $export = require('./$.export');
+
+$export($export.S + $export.F, 'Object', {classof: require('./$.classof')});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.object.define.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.object.define.js
new file mode 100644
index 00000000..fe4cbe9b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.object.define.js
@@ -0,0 +1,4 @@
+var $export = require('./$.export')
+ , define = require('./$.object-define');
+
+$export($export.S + $export.F, 'Object', {define: define});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.object.is-object.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.object.is-object.js
new file mode 100644
index 00000000..c60a977a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.object.is-object.js
@@ -0,0 +1,3 @@
+var $export = require('./$.export');
+
+$export($export.S + $export.F, 'Object', {isObject: require('./$.is-object')});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.object.make.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.object.make.js
new file mode 100644
index 00000000..95b99961
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.object.make.js
@@ -0,0 +1,9 @@
+var $export = require('./$.export')
+ , define = require('./$.object-define')
+ , create = require('./$').create;
+
+$export($export.S + $export.F, 'Object', {
+ make: function(proto, mixin){
+ return define(create(proto), mixin);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.string.escape-html.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.string.escape-html.js
new file mode 100644
index 00000000..81737e75
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.string.escape-html.js
@@ -0,0 +1,11 @@
+'use strict';
+var $export = require('./$.export');
+var $re = require('./$.replacer')(/[&<>"']/g, {
+ '&': '&',
+ '<': '<',
+ '>': '>',
+ '"': '"',
+ "'": '''
+});
+
+$export($export.P + $export.F, 'String', {escapeHTML: function escapeHTML(){ return $re(this); }});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.string.unescape-html.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.string.unescape-html.js
new file mode 100644
index 00000000..9d7a3d2c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/core.string.unescape-html.js
@@ -0,0 +1,11 @@
+'use strict';
+var $export = require('./$.export');
+var $re = require('./$.replacer')(/&(?:amp|lt|gt|quot|apos);/g, {
+ '&': '&',
+ '<': '<',
+ '>': '>',
+ '"': '"',
+ ''': "'"
+});
+
+$export($export.P + $export.F, 'String', {unescapeHTML: function unescapeHTML(){ return $re(this); }});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es5.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es5.js
new file mode 100644
index 00000000..50f72b04
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es5.js
@@ -0,0 +1,276 @@
+'use strict';
+var $ = require('./$')
+ , $export = require('./$.export')
+ , DESCRIPTORS = require('./$.descriptors')
+ , createDesc = require('./$.property-desc')
+ , html = require('./$.html')
+ , cel = require('./$.dom-create')
+ , has = require('./$.has')
+ , cof = require('./$.cof')
+ , invoke = require('./$.invoke')
+ , fails = require('./$.fails')
+ , anObject = require('./$.an-object')
+ , aFunction = require('./$.a-function')
+ , isObject = require('./$.is-object')
+ , toObject = require('./$.to-object')
+ , toIObject = require('./$.to-iobject')
+ , toInteger = require('./$.to-integer')
+ , toIndex = require('./$.to-index')
+ , toLength = require('./$.to-length')
+ , IObject = require('./$.iobject')
+ , IE_PROTO = require('./$.uid')('__proto__')
+ , createArrayMethod = require('./$.array-methods')
+ , arrayIndexOf = require('./$.array-includes')(false)
+ , ObjectProto = Object.prototype
+ , ArrayProto = Array.prototype
+ , arraySlice = ArrayProto.slice
+ , arrayJoin = ArrayProto.join
+ , defineProperty = $.setDesc
+ , getOwnDescriptor = $.getDesc
+ , defineProperties = $.setDescs
+ , factories = {}
+ , IE8_DOM_DEFINE;
+
+if(!DESCRIPTORS){
+ IE8_DOM_DEFINE = !fails(function(){
+ return defineProperty(cel('div'), 'a', {get: function(){ return 7; }}).a != 7;
+ });
+ $.setDesc = function(O, P, Attributes){
+ if(IE8_DOM_DEFINE)try {
+ return defineProperty(O, P, Attributes);
+ } catch(e){ /* empty */ }
+ if('get' in Attributes || 'set' in Attributes)throw TypeError('Accessors not supported!');
+ if('value' in Attributes)anObject(O)[P] = Attributes.value;
+ return O;
+ };
+ $.getDesc = function(O, P){
+ if(IE8_DOM_DEFINE)try {
+ return getOwnDescriptor(O, P);
+ } catch(e){ /* empty */ }
+ if(has(O, P))return createDesc(!ObjectProto.propertyIsEnumerable.call(O, P), O[P]);
+ };
+ $.setDescs = defineProperties = function(O, Properties){
+ anObject(O);
+ var keys = $.getKeys(Properties)
+ , length = keys.length
+ , i = 0
+ , P;
+ while(length > i)$.setDesc(O, P = keys[i++], Properties[P]);
+ return O;
+ };
+}
+$export($export.S + $export.F * !DESCRIPTORS, 'Object', {
+ // 19.1.2.6 / 15.2.3.3 Object.getOwnPropertyDescriptor(O, P)
+ getOwnPropertyDescriptor: $.getDesc,
+ // 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)
+ defineProperty: $.setDesc,
+ // 19.1.2.3 / 15.2.3.7 Object.defineProperties(O, Properties)
+ defineProperties: defineProperties
+});
+
+ // IE 8- don't enum bug keys
+var keys1 = ('constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,' +
+ 'toLocaleString,toString,valueOf').split(',')
+ // Additional keys for getOwnPropertyNames
+ , keys2 = keys1.concat('length', 'prototype')
+ , keysLen1 = keys1.length;
+
+// Create object with `null` prototype: use iframe Object with cleared prototype
+var createDict = function(){
+ // Thrash, waste and sodomy: IE GC bug
+ var iframe = cel('iframe')
+ , i = keysLen1
+ , gt = '>'
+ , iframeDocument;
+ iframe.style.display = 'none';
+ html.appendChild(iframe);
+ iframe.src = 'javascript:'; // eslint-disable-line no-script-url
+ // createDict = iframe.contentWindow.Object;
+ // html.removeChild(iframe);
+ iframeDocument = iframe.contentWindow.document;
+ iframeDocument.open();
+ iframeDocument.write(' i)if(has(O, key = names[i++])){
+ ~arrayIndexOf(result, key) || result.push(key);
+ }
+ return result;
+ };
+};
+var Empty = function(){};
+$export($export.S, 'Object', {
+ // 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
+ getPrototypeOf: $.getProto = $.getProto || function(O){
+ O = toObject(O);
+ if(has(O, IE_PROTO))return O[IE_PROTO];
+ if(typeof O.constructor == 'function' && O instanceof O.constructor){
+ return O.constructor.prototype;
+ } return O instanceof Object ? ObjectProto : null;
+ },
+ // 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
+ getOwnPropertyNames: $.getNames = $.getNames || createGetKeys(keys2, keys2.length, true),
+ // 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
+ create: $.create = $.create || function(O, /*?*/Properties){
+ var result;
+ if(O !== null){
+ Empty.prototype = anObject(O);
+ result = new Empty();
+ Empty.prototype = null;
+ // add "__proto__" for Object.getPrototypeOf shim
+ result[IE_PROTO] = O;
+ } else result = createDict();
+ return Properties === undefined ? result : defineProperties(result, Properties);
+ },
+ // 19.1.2.14 / 15.2.3.14 Object.keys(O)
+ keys: $.getKeys = $.getKeys || createGetKeys(keys1, keysLen1, false)
+});
+
+var construct = function(F, len, args){
+ if(!(len in factories)){
+ for(var n = [], i = 0; i < len; i++)n[i] = 'a[' + i + ']';
+ factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')');
+ }
+ return factories[len](F, args);
+};
+
+// 19.2.3.2 / 15.3.4.5 Function.prototype.bind(thisArg, args...)
+$export($export.P, 'Function', {
+ bind: function bind(that /*, args... */){
+ var fn = aFunction(this)
+ , partArgs = arraySlice.call(arguments, 1);
+ var bound = function(/* args... */){
+ var args = partArgs.concat(arraySlice.call(arguments));
+ return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that);
+ };
+ if(isObject(fn.prototype))bound.prototype = fn.prototype;
+ return bound;
+ }
+});
+
+// fallback for not array-like ES3 strings and DOM objects
+$export($export.P + $export.F * fails(function(){
+ if(html)arraySlice.call(html);
+}), 'Array', {
+ slice: function(begin, end){
+ var len = toLength(this.length)
+ , klass = cof(this);
+ end = end === undefined ? len : end;
+ if(klass == 'Array')return arraySlice.call(this, begin, end);
+ var start = toIndex(begin, len)
+ , upTo = toIndex(end, len)
+ , size = toLength(upTo - start)
+ , cloned = Array(size)
+ , i = 0;
+ for(; i < size; i++)cloned[i] = klass == 'String'
+ ? this.charAt(start + i)
+ : this[start + i];
+ return cloned;
+ }
+});
+$export($export.P + $export.F * (IObject != Object), 'Array', {
+ join: function join(separator){
+ return arrayJoin.call(IObject(this), separator === undefined ? ',' : separator);
+ }
+});
+
+// 22.1.2.2 / 15.4.3.2 Array.isArray(arg)
+$export($export.S, 'Array', {isArray: require('./$.is-array')});
+
+var createArrayReduce = function(isRight){
+ return function(callbackfn, memo){
+ aFunction(callbackfn);
+ var O = IObject(this)
+ , length = toLength(O.length)
+ , index = isRight ? length - 1 : 0
+ , i = isRight ? -1 : 1;
+ if(arguments.length < 2)for(;;){
+ if(index in O){
+ memo = O[index];
+ index += i;
+ break;
+ }
+ index += i;
+ if(isRight ? index < 0 : length <= index){
+ throw TypeError('Reduce of empty array with no initial value');
+ }
+ }
+ for(;isRight ? index >= 0 : length > index; index += i)if(index in O){
+ memo = callbackfn(memo, O[index], index, this);
+ }
+ return memo;
+ };
+};
+
+var methodize = function($fn){
+ return function(arg1/*, arg2 = undefined */){
+ return $fn(this, arg1, arguments[1]);
+ };
+};
+
+$export($export.P, 'Array', {
+ // 22.1.3.10 / 15.4.4.18 Array.prototype.forEach(callbackfn [, thisArg])
+ forEach: $.each = $.each || methodize(createArrayMethod(0)),
+ // 22.1.3.15 / 15.4.4.19 Array.prototype.map(callbackfn [, thisArg])
+ map: methodize(createArrayMethod(1)),
+ // 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg])
+ filter: methodize(createArrayMethod(2)),
+ // 22.1.3.23 / 15.4.4.17 Array.prototype.some(callbackfn [, thisArg])
+ some: methodize(createArrayMethod(3)),
+ // 22.1.3.5 / 15.4.4.16 Array.prototype.every(callbackfn [, thisArg])
+ every: methodize(createArrayMethod(4)),
+ // 22.1.3.18 / 15.4.4.21 Array.prototype.reduce(callbackfn [, initialValue])
+ reduce: createArrayReduce(false),
+ // 22.1.3.19 / 15.4.4.22 Array.prototype.reduceRight(callbackfn [, initialValue])
+ reduceRight: createArrayReduce(true),
+ // 22.1.3.11 / 15.4.4.14 Array.prototype.indexOf(searchElement [, fromIndex])
+ indexOf: methodize(arrayIndexOf),
+ // 22.1.3.14 / 15.4.4.15 Array.prototype.lastIndexOf(searchElement [, fromIndex])
+ lastIndexOf: function(el, fromIndex /* = @[*-1] */){
+ var O = toIObject(this)
+ , length = toLength(O.length)
+ , index = length - 1;
+ if(arguments.length > 1)index = Math.min(index, toInteger(fromIndex));
+ if(index < 0)index = toLength(length + index);
+ for(;index >= 0; index--)if(index in O)if(O[index] === el)return index;
+ return -1;
+ }
+});
+
+// 20.3.3.1 / 15.9.4.4 Date.now()
+$export($export.S, 'Date', {now: function(){ return +new Date; }});
+
+var lz = function(num){
+ return num > 9 ? num : '0' + num;
+};
+
+// 20.3.4.36 / 15.9.5.43 Date.prototype.toISOString()
+// PhantomJS / old WebKit has a broken implementations
+$export($export.P + $export.F * (fails(function(){
+ return new Date(-5e13 - 1).toISOString() != '0385-07-25T07:06:39.999Z';
+}) || !fails(function(){
+ new Date(NaN).toISOString();
+})), 'Date', {
+ toISOString: function toISOString(){
+ if(!isFinite(this))throw RangeError('Invalid time value');
+ var d = this
+ , y = d.getUTCFullYear()
+ , m = d.getUTCMilliseconds()
+ , s = y < 0 ? '-' : y > 9999 ? '+' : '';
+ return s + ('00000' + Math.abs(y)).slice(s ? -6 : -4) +
+ '-' + lz(d.getUTCMonth() + 1) + '-' + lz(d.getUTCDate()) +
+ 'T' + lz(d.getUTCHours()) + ':' + lz(d.getUTCMinutes()) +
+ ':' + lz(d.getUTCSeconds()) + '.' + (m > 99 ? m : '0' + lz(m)) + 'Z';
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.array.copy-within.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.array.copy-within.js
new file mode 100644
index 00000000..930ba78d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.array.copy-within.js
@@ -0,0 +1,6 @@
+// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length)
+var $export = require('./$.export');
+
+$export($export.P, 'Array', {copyWithin: require('./$.array-copy-within')});
+
+require('./$.add-to-unscopables')('copyWithin');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.array.fill.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.array.fill.js
new file mode 100644
index 00000000..c3b3e2e5
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.array.fill.js
@@ -0,0 +1,6 @@
+// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)
+var $export = require('./$.export');
+
+$export($export.P, 'Array', {fill: require('./$.array-fill')});
+
+require('./$.add-to-unscopables')('fill');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.array.find-index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.array.find-index.js
new file mode 100644
index 00000000..7224a606
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.array.find-index.js
@@ -0,0 +1,14 @@
+'use strict';
+// 22.1.3.9 Array.prototype.findIndex(predicate, thisArg = undefined)
+var $export = require('./$.export')
+ , $find = require('./$.array-methods')(6)
+ , KEY = 'findIndex'
+ , forced = true;
+// Shouldn't skip holes
+if(KEY in [])Array(1)[KEY](function(){ forced = false; });
+$export($export.P + $export.F * forced, 'Array', {
+ findIndex: function findIndex(callbackfn/*, that = undefined */){
+ return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+ }
+});
+require('./$.add-to-unscopables')(KEY);
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.array.find.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.array.find.js
new file mode 100644
index 00000000..199e987e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.array.find.js
@@ -0,0 +1,14 @@
+'use strict';
+// 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined)
+var $export = require('./$.export')
+ , $find = require('./$.array-methods')(5)
+ , KEY = 'find'
+ , forced = true;
+// Shouldn't skip holes
+if(KEY in [])Array(1)[KEY](function(){ forced = false; });
+$export($export.P + $export.F * forced, 'Array', {
+ find: function find(callbackfn/*, that = undefined */){
+ return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+ }
+});
+require('./$.add-to-unscopables')(KEY);
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.array.from.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.array.from.js
new file mode 100644
index 00000000..4637d8d2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.array.from.js
@@ -0,0 +1,36 @@
+'use strict';
+var ctx = require('./$.ctx')
+ , $export = require('./$.export')
+ , toObject = require('./$.to-object')
+ , call = require('./$.iter-call')
+ , isArrayIter = require('./$.is-array-iter')
+ , toLength = require('./$.to-length')
+ , getIterFn = require('./core.get-iterator-method');
+$export($export.S + $export.F * !require('./$.iter-detect')(function(iter){ Array.from(iter); }), 'Array', {
+ // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)
+ from: function from(arrayLike/*, mapfn = undefined, thisArg = undefined*/){
+ var O = toObject(arrayLike)
+ , C = typeof this == 'function' ? this : Array
+ , $$ = arguments
+ , $$len = $$.length
+ , mapfn = $$len > 1 ? $$[1] : undefined
+ , mapping = mapfn !== undefined
+ , index = 0
+ , iterFn = getIterFn(O)
+ , length, result, step, iterator;
+ if(mapping)mapfn = ctx(mapfn, $$len > 2 ? $$[2] : undefined, 2);
+ // if object isn't iterable or it's array with default iterator - use simple case
+ if(iterFn != undefined && !(C == Array && isArrayIter(iterFn))){
+ for(iterator = iterFn.call(O), result = new C; !(step = iterator.next()).done; index++){
+ result[index] = mapping ? call(iterator, mapfn, [step.value, index], true) : step.value;
+ }
+ } else {
+ length = toLength(O.length);
+ for(result = new C(length); length > index; index++){
+ result[index] = mapping ? mapfn(O[index], index) : O[index];
+ }
+ }
+ result.length = index;
+ return result;
+ }
+});
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.array.iterator.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.array.iterator.js
new file mode 100644
index 00000000..52a546dd
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.array.iterator.js
@@ -0,0 +1,34 @@
+'use strict';
+var addToUnscopables = require('./$.add-to-unscopables')
+ , step = require('./$.iter-step')
+ , Iterators = require('./$.iterators')
+ , toIObject = require('./$.to-iobject');
+
+// 22.1.3.4 Array.prototype.entries()
+// 22.1.3.13 Array.prototype.keys()
+// 22.1.3.29 Array.prototype.values()
+// 22.1.3.30 Array.prototype[@@iterator]()
+module.exports = require('./$.iter-define')(Array, 'Array', function(iterated, kind){
+ this._t = toIObject(iterated); // target
+ this._i = 0; // next index
+ this._k = kind; // kind
+// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
+}, function(){
+ var O = this._t
+ , kind = this._k
+ , index = this._i++;
+ if(!O || index >= O.length){
+ this._t = undefined;
+ return step(1);
+ }
+ if(kind == 'keys' )return step(0, index);
+ if(kind == 'values')return step(0, O[index]);
+ return step(0, [index, O[index]]);
+}, 'values');
+
+// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
+Iterators.Arguments = Iterators.Array;
+
+addToUnscopables('keys');
+addToUnscopables('values');
+addToUnscopables('entries');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.array.of.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.array.of.js
new file mode 100644
index 00000000..f623f157
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.array.of.js
@@ -0,0 +1,19 @@
+'use strict';
+var $export = require('./$.export');
+
+// WebKit Array.of isn't generic
+$export($export.S + $export.F * require('./$.fails')(function(){
+ function F(){}
+ return !(Array.of.call(F) instanceof F);
+}), 'Array', {
+ // 22.1.2.3 Array.of( ...items)
+ of: function of(/* ...args */){
+ var index = 0
+ , $$ = arguments
+ , $$len = $$.length
+ , result = new (typeof this == 'function' ? this : Array)($$len);
+ while($$len > index)result[index] = $$[index++];
+ result.length = $$len;
+ return result;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.array.species.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.array.species.js
new file mode 100644
index 00000000..543bdfe9
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.array.species.js
@@ -0,0 +1 @@
+require('./$.set-species')('Array');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.date.to-string.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.date.to-string.js
new file mode 100644
index 00000000..e69de29b
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.function.has-instance.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.function.has-instance.js
new file mode 100644
index 00000000..94d840f8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.function.has-instance.js
@@ -0,0 +1,13 @@
+'use strict';
+var $ = require('./$')
+ , isObject = require('./$.is-object')
+ , HAS_INSTANCE = require('./$.wks')('hasInstance')
+ , FunctionProto = Function.prototype;
+// 19.2.3.6 Function.prototype[@@hasInstance](V)
+if(!(HAS_INSTANCE in FunctionProto))$.setDesc(FunctionProto, HAS_INSTANCE, {value: function(O){
+ if(typeof this != 'function' || !isObject(O))return false;
+ if(!isObject(this.prototype))return O instanceof this;
+ // for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this:
+ while(O = $.getProto(O))if(this.prototype === O)return true;
+ return false;
+}});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.function.name.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.function.name.js
new file mode 100644
index 00000000..e69de29b
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.map.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.map.js
new file mode 100644
index 00000000..54fd5c1a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.map.js
@@ -0,0 +1,17 @@
+'use strict';
+var strong = require('./$.collection-strong');
+
+// 23.1 Map Objects
+require('./$.collection')('Map', function(get){
+ return function Map(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };
+}, {
+ // 23.1.3.6 Map.prototype.get(key)
+ get: function get(key){
+ var entry = strong.getEntry(this, key);
+ return entry && entry.v;
+ },
+ // 23.1.3.9 Map.prototype.set(key, value)
+ set: function set(key, value){
+ return strong.def(this, key === 0 ? 0 : key, value);
+ }
+}, strong, true);
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.acosh.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.acosh.js
new file mode 100644
index 00000000..f69282a8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.acosh.js
@@ -0,0 +1,14 @@
+// 20.2.2.3 Math.acosh(x)
+var $export = require('./$.export')
+ , log1p = require('./$.math-log1p')
+ , sqrt = Math.sqrt
+ , $acosh = Math.acosh;
+
+// V8 bug https://code.google.com/p/v8/issues/detail?id=3509
+$export($export.S + $export.F * !($acosh && Math.floor($acosh(Number.MAX_VALUE)) == 710), 'Math', {
+ acosh: function acosh(x){
+ return (x = +x) < 1 ? NaN : x > 94906265.62425156
+ ? Math.log(x) + Math.LN2
+ : log1p(x - 1 + sqrt(x - 1) * sqrt(x + 1));
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.asinh.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.asinh.js
new file mode 100644
index 00000000..bd34adf0
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.asinh.js
@@ -0,0 +1,8 @@
+// 20.2.2.5 Math.asinh(x)
+var $export = require('./$.export');
+
+function asinh(x){
+ return !isFinite(x = +x) || x == 0 ? x : x < 0 ? -asinh(-x) : Math.log(x + Math.sqrt(x * x + 1));
+}
+
+$export($export.S, 'Math', {asinh: asinh});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.atanh.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.atanh.js
new file mode 100644
index 00000000..656ea409
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.atanh.js
@@ -0,0 +1,8 @@
+// 20.2.2.7 Math.atanh(x)
+var $export = require('./$.export');
+
+$export($export.S, 'Math', {
+ atanh: function atanh(x){
+ return (x = +x) == 0 ? x : Math.log((1 + x) / (1 - x)) / 2;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.cbrt.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.cbrt.js
new file mode 100644
index 00000000..79a1fbc8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.cbrt.js
@@ -0,0 +1,9 @@
+// 20.2.2.9 Math.cbrt(x)
+var $export = require('./$.export')
+ , sign = require('./$.math-sign');
+
+$export($export.S, 'Math', {
+ cbrt: function cbrt(x){
+ return sign(x = +x) * Math.pow(Math.abs(x), 1 / 3);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.clz32.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.clz32.js
new file mode 100644
index 00000000..edd11588
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.clz32.js
@@ -0,0 +1,8 @@
+// 20.2.2.11 Math.clz32(x)
+var $export = require('./$.export');
+
+$export($export.S, 'Math', {
+ clz32: function clz32(x){
+ return (x >>>= 0) ? 31 - Math.floor(Math.log(x + 0.5) * Math.LOG2E) : 32;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.cosh.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.cosh.js
new file mode 100644
index 00000000..d1df7490
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.cosh.js
@@ -0,0 +1,9 @@
+// 20.2.2.12 Math.cosh(x)
+var $export = require('./$.export')
+ , exp = Math.exp;
+
+$export($export.S, 'Math', {
+ cosh: function cosh(x){
+ return (exp(x = +x) + exp(-x)) / 2;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.expm1.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.expm1.js
new file mode 100644
index 00000000..e27742fe
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.expm1.js
@@ -0,0 +1,4 @@
+// 20.2.2.14 Math.expm1(x)
+var $export = require('./$.export');
+
+$export($export.S, 'Math', {expm1: require('./$.math-expm1')});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.fround.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.fround.js
new file mode 100644
index 00000000..43cd70c7
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.fround.js
@@ -0,0 +1,26 @@
+// 20.2.2.16 Math.fround(x)
+var $export = require('./$.export')
+ , sign = require('./$.math-sign')
+ , pow = Math.pow
+ , EPSILON = pow(2, -52)
+ , EPSILON32 = pow(2, -23)
+ , MAX32 = pow(2, 127) * (2 - EPSILON32)
+ , MIN32 = pow(2, -126);
+
+var roundTiesToEven = function(n){
+ return n + 1 / EPSILON - 1 / EPSILON;
+};
+
+
+$export($export.S, 'Math', {
+ fround: function fround(x){
+ var $abs = Math.abs(x)
+ , $sign = sign(x)
+ , a, result;
+ if($abs < MIN32)return $sign * roundTiesToEven($abs / MIN32 / EPSILON32) * MIN32 * EPSILON32;
+ a = (1 + EPSILON32 / EPSILON) * $abs;
+ result = a - (a - $abs);
+ if(result > MAX32 || result != result)return $sign * Infinity;
+ return $sign * result;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.hypot.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.hypot.js
new file mode 100644
index 00000000..a8edf7cd
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.hypot.js
@@ -0,0 +1,26 @@
+// 20.2.2.17 Math.hypot([value1[, value2[, … ]]])
+var $export = require('./$.export')
+ , abs = Math.abs;
+
+$export($export.S, 'Math', {
+ hypot: function hypot(value1, value2){ // eslint-disable-line no-unused-vars
+ var sum = 0
+ , i = 0
+ , $$ = arguments
+ , $$len = $$.length
+ , larg = 0
+ , arg, div;
+ while(i < $$len){
+ arg = abs($$[i++]);
+ if(larg < arg){
+ div = larg / arg;
+ sum = sum * div * div + 1;
+ larg = arg;
+ } else if(arg > 0){
+ div = arg / larg;
+ sum += div * div;
+ } else sum += arg;
+ }
+ return larg === Infinity ? Infinity : larg * Math.sqrt(sum);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.imul.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.imul.js
new file mode 100644
index 00000000..926053de
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.imul.js
@@ -0,0 +1,17 @@
+// 20.2.2.18 Math.imul(x, y)
+var $export = require('./$.export')
+ , $imul = Math.imul;
+
+// some WebKit versions fails with big numbers, some has wrong arity
+$export($export.S + $export.F * require('./$.fails')(function(){
+ return $imul(0xffffffff, 5) != -5 || $imul.length != 2;
+}), 'Math', {
+ imul: function imul(x, y){
+ var UINT16 = 0xffff
+ , xn = +x
+ , yn = +y
+ , xl = UINT16 & xn
+ , yl = UINT16 & yn;
+ return 0 | xl * yl + ((UINT16 & xn >>> 16) * yl + xl * (UINT16 & yn >>> 16) << 16 >>> 0);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.log10.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.log10.js
new file mode 100644
index 00000000..ef5ae6a9
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.log10.js
@@ -0,0 +1,8 @@
+// 20.2.2.21 Math.log10(x)
+var $export = require('./$.export');
+
+$export($export.S, 'Math', {
+ log10: function log10(x){
+ return Math.log(x) / Math.LN10;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.log1p.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.log1p.js
new file mode 100644
index 00000000..31c395ec
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.log1p.js
@@ -0,0 +1,4 @@
+// 20.2.2.20 Math.log1p(x)
+var $export = require('./$.export');
+
+$export($export.S, 'Math', {log1p: require('./$.math-log1p')});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.log2.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.log2.js
new file mode 100644
index 00000000..24c0124b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.log2.js
@@ -0,0 +1,8 @@
+// 20.2.2.22 Math.log2(x)
+var $export = require('./$.export');
+
+$export($export.S, 'Math', {
+ log2: function log2(x){
+ return Math.log(x) / Math.LN2;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.sign.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.sign.js
new file mode 100644
index 00000000..fd8d8bc3
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.sign.js
@@ -0,0 +1,4 @@
+// 20.2.2.28 Math.sign(x)
+var $export = require('./$.export');
+
+$export($export.S, 'Math', {sign: require('./$.math-sign')});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.sinh.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.sinh.js
new file mode 100644
index 00000000..a01c4d37
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.sinh.js
@@ -0,0 +1,15 @@
+// 20.2.2.30 Math.sinh(x)
+var $export = require('./$.export')
+ , expm1 = require('./$.math-expm1')
+ , exp = Math.exp;
+
+// V8 near Chromium 38 has a problem with very small numbers
+$export($export.S + $export.F * require('./$.fails')(function(){
+ return !Math.sinh(-2e-17) != -2e-17;
+}), 'Math', {
+ sinh: function sinh(x){
+ return Math.abs(x = +x) < 1
+ ? (expm1(x) - expm1(-x)) / 2
+ : (exp(x - 1) - exp(-x - 1)) * (Math.E / 2);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.tanh.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.tanh.js
new file mode 100644
index 00000000..0d081a5d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.tanh.js
@@ -0,0 +1,12 @@
+// 20.2.2.33 Math.tanh(x)
+var $export = require('./$.export')
+ , expm1 = require('./$.math-expm1')
+ , exp = Math.exp;
+
+$export($export.S, 'Math', {
+ tanh: function tanh(x){
+ var a = expm1(x = +x)
+ , b = expm1(-x);
+ return a == Infinity ? 1 : b == Infinity ? -1 : (a - b) / (exp(x) + exp(-x));
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.trunc.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.trunc.js
new file mode 100644
index 00000000..f3f08559
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.math.trunc.js
@@ -0,0 +1,8 @@
+// 20.2.2.34 Math.trunc(x)
+var $export = require('./$.export');
+
+$export($export.S, 'Math', {
+ trunc: function trunc(it){
+ return (it > 0 ? Math.floor : Math.ceil)(it);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.number.constructor.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.number.constructor.js
new file mode 100644
index 00000000..e69de29b
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.number.epsilon.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.number.epsilon.js
new file mode 100644
index 00000000..45c865cf
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.number.epsilon.js
@@ -0,0 +1,4 @@
+// 20.1.2.1 Number.EPSILON
+var $export = require('./$.export');
+
+$export($export.S, 'Number', {EPSILON: Math.pow(2, -52)});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.number.is-finite.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.number.is-finite.js
new file mode 100644
index 00000000..362a6c80
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.number.is-finite.js
@@ -0,0 +1,9 @@
+// 20.1.2.2 Number.isFinite(number)
+var $export = require('./$.export')
+ , _isFinite = require('./$.global').isFinite;
+
+$export($export.S, 'Number', {
+ isFinite: function isFinite(it){
+ return typeof it == 'number' && _isFinite(it);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.number.is-integer.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.number.is-integer.js
new file mode 100644
index 00000000..189db9a2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.number.is-integer.js
@@ -0,0 +1,4 @@
+// 20.1.2.3 Number.isInteger(number)
+var $export = require('./$.export');
+
+$export($export.S, 'Number', {isInteger: require('./$.is-integer')});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.number.is-nan.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.number.is-nan.js
new file mode 100644
index 00000000..151bb4b2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.number.is-nan.js
@@ -0,0 +1,8 @@
+// 20.1.2.4 Number.isNaN(number)
+var $export = require('./$.export');
+
+$export($export.S, 'Number', {
+ isNaN: function isNaN(number){
+ return number != number;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.number.is-safe-integer.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.number.is-safe-integer.js
new file mode 100644
index 00000000..e23b4cbc
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.number.is-safe-integer.js
@@ -0,0 +1,10 @@
+// 20.1.2.5 Number.isSafeInteger(number)
+var $export = require('./$.export')
+ , isInteger = require('./$.is-integer')
+ , abs = Math.abs;
+
+$export($export.S, 'Number', {
+ isSafeInteger: function isSafeInteger(number){
+ return isInteger(number) && abs(number) <= 0x1fffffffffffff;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.number.max-safe-integer.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.number.max-safe-integer.js
new file mode 100644
index 00000000..a1aaf741
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.number.max-safe-integer.js
@@ -0,0 +1,4 @@
+// 20.1.2.6 Number.MAX_SAFE_INTEGER
+var $export = require('./$.export');
+
+$export($export.S, 'Number', {MAX_SAFE_INTEGER: 0x1fffffffffffff});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.number.min-safe-integer.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.number.min-safe-integer.js
new file mode 100644
index 00000000..ab97cb5d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.number.min-safe-integer.js
@@ -0,0 +1,4 @@
+// 20.1.2.10 Number.MIN_SAFE_INTEGER
+var $export = require('./$.export');
+
+$export($export.S, 'Number', {MIN_SAFE_INTEGER: -0x1fffffffffffff});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.number.parse-float.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.number.parse-float.js
new file mode 100644
index 00000000..1d0c9674
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.number.parse-float.js
@@ -0,0 +1,4 @@
+// 20.1.2.12 Number.parseFloat(string)
+var $export = require('./$.export');
+
+$export($export.S, 'Number', {parseFloat: parseFloat});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.number.parse-int.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.number.parse-int.js
new file mode 100644
index 00000000..813b5b79
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.number.parse-int.js
@@ -0,0 +1,4 @@
+// 20.1.2.13 Number.parseInt(string, radix)
+var $export = require('./$.export');
+
+$export($export.S, 'Number', {parseInt: parseInt});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.assign.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.assign.js
new file mode 100644
index 00000000..b62e7a42
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.assign.js
@@ -0,0 +1,4 @@
+// 19.1.3.1 Object.assign(target, source)
+var $export = require('./$.export');
+
+$export($export.S + $export.F, 'Object', {assign: require('./$.object-assign')});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.freeze.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.freeze.js
new file mode 100644
index 00000000..fa87c951
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.freeze.js
@@ -0,0 +1,8 @@
+// 19.1.2.5 Object.freeze(O)
+var isObject = require('./$.is-object');
+
+require('./$.object-sap')('freeze', function($freeze){
+ return function freeze(it){
+ return $freeze && isObject(it) ? $freeze(it) : it;
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js
new file mode 100644
index 00000000..9b253acd
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js
@@ -0,0 +1,8 @@
+// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
+var toIObject = require('./$.to-iobject');
+
+require('./$.object-sap')('getOwnPropertyDescriptor', function($getOwnPropertyDescriptor){
+ return function getOwnPropertyDescriptor(it, key){
+ return $getOwnPropertyDescriptor(toIObject(it), key);
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.get-own-property-names.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.get-own-property-names.js
new file mode 100644
index 00000000..e87bcf60
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.get-own-property-names.js
@@ -0,0 +1,4 @@
+// 19.1.2.7 Object.getOwnPropertyNames(O)
+require('./$.object-sap')('getOwnPropertyNames', function(){
+ return require('./$.get-names').get;
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.get-prototype-of.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.get-prototype-of.js
new file mode 100644
index 00000000..9ec0405b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.get-prototype-of.js
@@ -0,0 +1,8 @@
+// 19.1.2.9 Object.getPrototypeOf(O)
+var toObject = require('./$.to-object');
+
+require('./$.object-sap')('getPrototypeOf', function($getPrototypeOf){
+ return function getPrototypeOf(it){
+ return $getPrototypeOf(toObject(it));
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.is-extensible.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.is-extensible.js
new file mode 100644
index 00000000..ada2b95a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.is-extensible.js
@@ -0,0 +1,8 @@
+// 19.1.2.11 Object.isExtensible(O)
+var isObject = require('./$.is-object');
+
+require('./$.object-sap')('isExtensible', function($isExtensible){
+ return function isExtensible(it){
+ return isObject(it) ? $isExtensible ? $isExtensible(it) : true : false;
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.is-frozen.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.is-frozen.js
new file mode 100644
index 00000000..b3e44d1b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.is-frozen.js
@@ -0,0 +1,8 @@
+// 19.1.2.12 Object.isFrozen(O)
+var isObject = require('./$.is-object');
+
+require('./$.object-sap')('isFrozen', function($isFrozen){
+ return function isFrozen(it){
+ return isObject(it) ? $isFrozen ? $isFrozen(it) : false : true;
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.is-sealed.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.is-sealed.js
new file mode 100644
index 00000000..423caf33
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.is-sealed.js
@@ -0,0 +1,8 @@
+// 19.1.2.13 Object.isSealed(O)
+var isObject = require('./$.is-object');
+
+require('./$.object-sap')('isSealed', function($isSealed){
+ return function isSealed(it){
+ return isObject(it) ? $isSealed ? $isSealed(it) : false : true;
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.is.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.is.js
new file mode 100644
index 00000000..3ae3b604
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.is.js
@@ -0,0 +1,3 @@
+// 19.1.3.10 Object.is(value1, value2)
+var $export = require('./$.export');
+$export($export.S, 'Object', {is: require('./$.same-value')});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.keys.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.keys.js
new file mode 100644
index 00000000..e3c18c02
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.keys.js
@@ -0,0 +1,8 @@
+// 19.1.2.14 Object.keys(O)
+var toObject = require('./$.to-object');
+
+require('./$.object-sap')('keys', function($keys){
+ return function keys(it){
+ return $keys(toObject(it));
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.prevent-extensions.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.prevent-extensions.js
new file mode 100644
index 00000000..20f879e2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.prevent-extensions.js
@@ -0,0 +1,8 @@
+// 19.1.2.15 Object.preventExtensions(O)
+var isObject = require('./$.is-object');
+
+require('./$.object-sap')('preventExtensions', function($preventExtensions){
+ return function preventExtensions(it){
+ return $preventExtensions && isObject(it) ? $preventExtensions(it) : it;
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.seal.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.seal.js
new file mode 100644
index 00000000..85a7fa98
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.seal.js
@@ -0,0 +1,8 @@
+// 19.1.2.17 Object.seal(O)
+var isObject = require('./$.is-object');
+
+require('./$.object-sap')('seal', function($seal){
+ return function seal(it){
+ return $seal && isObject(it) ? $seal(it) : it;
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.set-prototype-of.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.set-prototype-of.js
new file mode 100644
index 00000000..79a147c3
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.set-prototype-of.js
@@ -0,0 +1,3 @@
+// 19.1.3.19 Object.setPrototypeOf(O, proto)
+var $export = require('./$.export');
+$export($export.S, 'Object', {setPrototypeOf: require('./$.set-proto').set});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.to-string.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.object.to-string.js
new file mode 100644
index 00000000..e69de29b
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.promise.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.promise.js
new file mode 100644
index 00000000..fbf20177
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.promise.js
@@ -0,0 +1,293 @@
+'use strict';
+var $ = require('./$')
+ , LIBRARY = require('./$.library')
+ , global = require('./$.global')
+ , ctx = require('./$.ctx')
+ , classof = require('./$.classof')
+ , $export = require('./$.export')
+ , isObject = require('./$.is-object')
+ , anObject = require('./$.an-object')
+ , aFunction = require('./$.a-function')
+ , strictNew = require('./$.strict-new')
+ , forOf = require('./$.for-of')
+ , setProto = require('./$.set-proto').set
+ , same = require('./$.same-value')
+ , SPECIES = require('./$.wks')('species')
+ , speciesConstructor = require('./$.species-constructor')
+ , asap = require('./$.microtask')
+ , PROMISE = 'Promise'
+ , process = global.process
+ , isNode = classof(process) == 'process'
+ , P = global[PROMISE]
+ , empty = function(){ /* empty */ }
+ , Wrapper;
+
+var testResolve = function(sub){
+ var test = new P(empty), promise;
+ if(sub)test.constructor = function(exec){
+ exec(empty, empty);
+ };
+ (promise = P.resolve(test))['catch'](empty);
+ return promise === test;
+};
+
+var USE_NATIVE = function(){
+ var works = false;
+ function P2(x){
+ var self = new P(x);
+ setProto(self, P2.prototype);
+ return self;
+ }
+ try {
+ works = P && P.resolve && testResolve();
+ setProto(P2, P);
+ P2.prototype = $.create(P.prototype, {constructor: {value: P2}});
+ // actual Firefox has broken subclass support, test that
+ if(!(P2.resolve(5).then(function(){}) instanceof P2)){
+ works = false;
+ }
+ // actual V8 bug, https://code.google.com/p/v8/issues/detail?id=4162
+ if(works && require('./$.descriptors')){
+ var thenableThenGotten = false;
+ P.resolve($.setDesc({}, 'then', {
+ get: function(){ thenableThenGotten = true; }
+ }));
+ works = thenableThenGotten;
+ }
+ } catch(e){ works = false; }
+ return works;
+}();
+
+// helpers
+var sameConstructor = function(a, b){
+ // library wrapper special case
+ if(LIBRARY && a === P && b === Wrapper)return true;
+ return same(a, b);
+};
+var getConstructor = function(C){
+ var S = anObject(C)[SPECIES];
+ return S != undefined ? S : C;
+};
+var isThenable = function(it){
+ var then;
+ return isObject(it) && typeof (then = it.then) == 'function' ? then : false;
+};
+var PromiseCapability = function(C){
+ var resolve, reject;
+ this.promise = new C(function($$resolve, $$reject){
+ if(resolve !== undefined || reject !== undefined)throw TypeError('Bad Promise constructor');
+ resolve = $$resolve;
+ reject = $$reject;
+ });
+ this.resolve = aFunction(resolve),
+ this.reject = aFunction(reject)
+};
+var perform = function(exec){
+ try {
+ exec();
+ } catch(e){
+ return {error: e};
+ }
+};
+var notify = function(record, isReject){
+ if(record.n)return;
+ record.n = true;
+ var chain = record.c;
+ asap(function(){
+ var value = record.v
+ , ok = record.s == 1
+ , i = 0;
+ var run = function(reaction){
+ var handler = ok ? reaction.ok : reaction.fail
+ , resolve = reaction.resolve
+ , reject = reaction.reject
+ , result, then;
+ try {
+ if(handler){
+ if(!ok)record.h = true;
+ result = handler === true ? value : handler(value);
+ if(result === reaction.promise){
+ reject(TypeError('Promise-chain cycle'));
+ } else if(then = isThenable(result)){
+ then.call(result, resolve, reject);
+ } else resolve(result);
+ } else reject(value);
+ } catch(e){
+ reject(e);
+ }
+ };
+ while(chain.length > i)run(chain[i++]); // variable length - can't use forEach
+ chain.length = 0;
+ record.n = false;
+ if(isReject)setTimeout(function(){
+ var promise = record.p
+ , handler, console;
+ if(isUnhandled(promise)){
+ if(isNode){
+ process.emit('unhandledRejection', value, promise);
+ } else if(handler = global.onunhandledrejection){
+ handler({promise: promise, reason: value});
+ } else if((console = global.console) && console.error){
+ console.error('Unhandled promise rejection', value);
+ }
+ } record.a = undefined;
+ }, 1);
+ });
+};
+var isUnhandled = function(promise){
+ var record = promise._d
+ , chain = record.a || record.c
+ , i = 0
+ , reaction;
+ if(record.h)return false;
+ while(chain.length > i){
+ reaction = chain[i++];
+ if(reaction.fail || !isUnhandled(reaction.promise))return false;
+ } return true;
+};
+var $reject = function(value){
+ var record = this;
+ if(record.d)return;
+ record.d = true;
+ record = record.r || record; // unwrap
+ record.v = value;
+ record.s = 2;
+ record.a = record.c.slice();
+ notify(record, true);
+};
+var $resolve = function(value){
+ var record = this
+ , then;
+ if(record.d)return;
+ record.d = true;
+ record = record.r || record; // unwrap
+ try {
+ if(record.p === value)throw TypeError("Promise can't be resolved itself");
+ if(then = isThenable(value)){
+ asap(function(){
+ var wrapper = {r: record, d: false}; // wrap
+ try {
+ then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));
+ } catch(e){
+ $reject.call(wrapper, e);
+ }
+ });
+ } else {
+ record.v = value;
+ record.s = 1;
+ notify(record, false);
+ }
+ } catch(e){
+ $reject.call({r: record, d: false}, e); // wrap
+ }
+};
+
+// constructor polyfill
+if(!USE_NATIVE){
+ // 25.4.3.1 Promise(executor)
+ P = function Promise(executor){
+ aFunction(executor);
+ var record = this._d = {
+ p: strictNew(this, P, PROMISE), // <- promise
+ c: [], // <- awaiting reactions
+ a: undefined, // <- checked in isUnhandled reactions
+ s: 0, // <- state
+ d: false, // <- done
+ v: undefined, // <- value
+ h: false, // <- handled rejection
+ n: false // <- notify
+ };
+ try {
+ executor(ctx($resolve, record, 1), ctx($reject, record, 1));
+ } catch(err){
+ $reject.call(record, err);
+ }
+ };
+ require('./$.redefine-all')(P.prototype, {
+ // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)
+ then: function then(onFulfilled, onRejected){
+ var reaction = new PromiseCapability(speciesConstructor(this, P))
+ , promise = reaction.promise
+ , record = this._d;
+ reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;
+ reaction.fail = typeof onRejected == 'function' && onRejected;
+ record.c.push(reaction);
+ if(record.a)record.a.push(reaction);
+ if(record.s)notify(record, false);
+ return promise;
+ },
+ // 25.4.5.1 Promise.prototype.catch(onRejected)
+ 'catch': function(onRejected){
+ return this.then(undefined, onRejected);
+ }
+ });
+}
+
+$export($export.G + $export.W + $export.F * !USE_NATIVE, {Promise: P});
+require('./$.set-to-string-tag')(P, PROMISE);
+require('./$.set-species')(PROMISE);
+Wrapper = require('./$.core')[PROMISE];
+
+// statics
+$export($export.S + $export.F * !USE_NATIVE, PROMISE, {
+ // 25.4.4.5 Promise.reject(r)
+ reject: function reject(r){
+ var capability = new PromiseCapability(this)
+ , $$reject = capability.reject;
+ $$reject(r);
+ return capability.promise;
+ }
+});
+$export($export.S + $export.F * (!USE_NATIVE || testResolve(true)), PROMISE, {
+ // 25.4.4.6 Promise.resolve(x)
+ resolve: function resolve(x){
+ // instanceof instead of internal slot check because we should fix it without replacement native Promise core
+ if(x instanceof P && sameConstructor(x.constructor, this))return x;
+ var capability = new PromiseCapability(this)
+ , $$resolve = capability.resolve;
+ $$resolve(x);
+ return capability.promise;
+ }
+});
+$export($export.S + $export.F * !(USE_NATIVE && require('./$.iter-detect')(function(iter){
+ P.all(iter)['catch'](function(){});
+})), PROMISE, {
+ // 25.4.4.1 Promise.all(iterable)
+ all: function all(iterable){
+ var C = getConstructor(this)
+ , capability = new PromiseCapability(C)
+ , resolve = capability.resolve
+ , reject = capability.reject
+ , values = [];
+ var abrupt = perform(function(){
+ forOf(iterable, false, values.push, values);
+ var remaining = values.length
+ , results = Array(remaining);
+ if(remaining)$.each.call(values, function(promise, index){
+ var alreadyCalled = false;
+ C.resolve(promise).then(function(value){
+ if(alreadyCalled)return;
+ alreadyCalled = true;
+ results[index] = value;
+ --remaining || resolve(results);
+ }, reject);
+ });
+ else resolve(results);
+ });
+ if(abrupt)reject(abrupt.error);
+ return capability.promise;
+ },
+ // 25.4.4.4 Promise.race(iterable)
+ race: function race(iterable){
+ var C = getConstructor(this)
+ , capability = new PromiseCapability(C)
+ , reject = capability.reject;
+ var abrupt = perform(function(){
+ forOf(iterable, false, function(promise){
+ C.resolve(promise).then(capability.resolve, reject);
+ });
+ });
+ if(abrupt)reject(abrupt.error);
+ return capability.promise;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.apply.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.apply.js
new file mode 100644
index 00000000..361a2e2e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.apply.js
@@ -0,0 +1,10 @@
+// 26.1.1 Reflect.apply(target, thisArgument, argumentsList)
+var $export = require('./$.export')
+ , _apply = Function.apply
+ , anObject = require('./$.an-object');
+
+$export($export.S, 'Reflect', {
+ apply: function apply(target, thisArgument, argumentsList){
+ return _apply.call(target, thisArgument, anObject(argumentsList));
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.construct.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.construct.js
new file mode 100644
index 00000000..c3928cd9
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.construct.js
@@ -0,0 +1,39 @@
+// 26.1.2 Reflect.construct(target, argumentsList [, newTarget])
+var $ = require('./$')
+ , $export = require('./$.export')
+ , aFunction = require('./$.a-function')
+ , anObject = require('./$.an-object')
+ , isObject = require('./$.is-object')
+ , bind = Function.bind || require('./$.core').Function.prototype.bind;
+
+// MS Edge supports only 2 arguments
+// FF Nightly sets third argument as `new.target`, but does not create `this` from it
+$export($export.S + $export.F * require('./$.fails')(function(){
+ function F(){}
+ return !(Reflect.construct(function(){}, [], F) instanceof F);
+}), 'Reflect', {
+ construct: function construct(Target, args /*, newTarget*/){
+ aFunction(Target);
+ anObject(args);
+ var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);
+ if(Target == newTarget){
+ // w/o altered newTarget, optimization for 0-4 arguments
+ switch(args.length){
+ case 0: return new Target;
+ case 1: return new Target(args[0]);
+ case 2: return new Target(args[0], args[1]);
+ case 3: return new Target(args[0], args[1], args[2]);
+ case 4: return new Target(args[0], args[1], args[2], args[3]);
+ }
+ // w/o altered newTarget, lot of arguments case
+ var $args = [null];
+ $args.push.apply($args, args);
+ return new (bind.apply(Target, $args));
+ }
+ // with altered newTarget, not support built-in constructors
+ var proto = newTarget.prototype
+ , instance = $.create(isObject(proto) ? proto : Object.prototype)
+ , result = Function.apply.call(Target, instance, args);
+ return isObject(result) ? result : instance;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.define-property.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.define-property.js
new file mode 100644
index 00000000..5f7fc6a1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.define-property.js
@@ -0,0 +1,19 @@
+// 26.1.3 Reflect.defineProperty(target, propertyKey, attributes)
+var $ = require('./$')
+ , $export = require('./$.export')
+ , anObject = require('./$.an-object');
+
+// MS Edge has broken Reflect.defineProperty - throwing instead of returning false
+$export($export.S + $export.F * require('./$.fails')(function(){
+ Reflect.defineProperty($.setDesc({}, 1, {value: 1}), 1, {value: 2});
+}), 'Reflect', {
+ defineProperty: function defineProperty(target, propertyKey, attributes){
+ anObject(target);
+ try {
+ $.setDesc(target, propertyKey, attributes);
+ return true;
+ } catch(e){
+ return false;
+ }
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.delete-property.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.delete-property.js
new file mode 100644
index 00000000..18526e5b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.delete-property.js
@@ -0,0 +1,11 @@
+// 26.1.4 Reflect.deleteProperty(target, propertyKey)
+var $export = require('./$.export')
+ , getDesc = require('./$').getDesc
+ , anObject = require('./$.an-object');
+
+$export($export.S, 'Reflect', {
+ deleteProperty: function deleteProperty(target, propertyKey){
+ var desc = getDesc(anObject(target), propertyKey);
+ return desc && !desc.configurable ? false : delete target[propertyKey];
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.enumerate.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.enumerate.js
new file mode 100644
index 00000000..73452e2f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.enumerate.js
@@ -0,0 +1,26 @@
+'use strict';
+// 26.1.5 Reflect.enumerate(target)
+var $export = require('./$.export')
+ , anObject = require('./$.an-object');
+var Enumerate = function(iterated){
+ this._t = anObject(iterated); // target
+ this._i = 0; // next index
+ var keys = this._k = [] // keys
+ , key;
+ for(key in iterated)keys.push(key);
+};
+require('./$.iter-create')(Enumerate, 'Object', function(){
+ var that = this
+ , keys = that._k
+ , key;
+ do {
+ if(that._i >= keys.length)return {value: undefined, done: true};
+ } while(!((key = keys[that._i++]) in that._t));
+ return {value: key, done: false};
+});
+
+$export($export.S, 'Reflect', {
+ enumerate: function enumerate(target){
+ return new Enumerate(target);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.get-own-property-descriptor.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.get-own-property-descriptor.js
new file mode 100644
index 00000000..a3a2e016
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.get-own-property-descriptor.js
@@ -0,0 +1,10 @@
+// 26.1.7 Reflect.getOwnPropertyDescriptor(target, propertyKey)
+var $ = require('./$')
+ , $export = require('./$.export')
+ , anObject = require('./$.an-object');
+
+$export($export.S, 'Reflect', {
+ getOwnPropertyDescriptor: function getOwnPropertyDescriptor(target, propertyKey){
+ return $.getDesc(anObject(target), propertyKey);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.get-prototype-of.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.get-prototype-of.js
new file mode 100644
index 00000000..c06bfa45
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.get-prototype-of.js
@@ -0,0 +1,10 @@
+// 26.1.8 Reflect.getPrototypeOf(target)
+var $export = require('./$.export')
+ , getProto = require('./$').getProto
+ , anObject = require('./$.an-object');
+
+$export($export.S, 'Reflect', {
+ getPrototypeOf: function getPrototypeOf(target){
+ return getProto(anObject(target));
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.get.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.get.js
new file mode 100644
index 00000000..cbb0caaf
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.get.js
@@ -0,0 +1,20 @@
+// 26.1.6 Reflect.get(target, propertyKey [, receiver])
+var $ = require('./$')
+ , has = require('./$.has')
+ , $export = require('./$.export')
+ , isObject = require('./$.is-object')
+ , anObject = require('./$.an-object');
+
+function get(target, propertyKey/*, receiver*/){
+ var receiver = arguments.length < 3 ? target : arguments[2]
+ , desc, proto;
+ if(anObject(target) === receiver)return target[propertyKey];
+ if(desc = $.getDesc(target, propertyKey))return has(desc, 'value')
+ ? desc.value
+ : desc.get !== undefined
+ ? desc.get.call(receiver)
+ : undefined;
+ if(isObject(proto = $.getProto(target)))return get(proto, propertyKey, receiver);
+}
+
+$export($export.S, 'Reflect', {get: get});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.has.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.has.js
new file mode 100644
index 00000000..65c9e82f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.has.js
@@ -0,0 +1,8 @@
+// 26.1.9 Reflect.has(target, propertyKey)
+var $export = require('./$.export');
+
+$export($export.S, 'Reflect', {
+ has: function has(target, propertyKey){
+ return propertyKey in target;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.is-extensible.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.is-extensible.js
new file mode 100644
index 00000000..b92c4f66
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.is-extensible.js
@@ -0,0 +1,11 @@
+// 26.1.10 Reflect.isExtensible(target)
+var $export = require('./$.export')
+ , anObject = require('./$.an-object')
+ , $isExtensible = Object.isExtensible;
+
+$export($export.S, 'Reflect', {
+ isExtensible: function isExtensible(target){
+ anObject(target);
+ return $isExtensible ? $isExtensible(target) : true;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.own-keys.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.own-keys.js
new file mode 100644
index 00000000..db79fdab
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.own-keys.js
@@ -0,0 +1,4 @@
+// 26.1.11 Reflect.ownKeys(target)
+var $export = require('./$.export');
+
+$export($export.S, 'Reflect', {ownKeys: require('./$.own-keys')});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.prevent-extensions.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.prevent-extensions.js
new file mode 100644
index 00000000..f5ccfc2a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.prevent-extensions.js
@@ -0,0 +1,16 @@
+// 26.1.12 Reflect.preventExtensions(target)
+var $export = require('./$.export')
+ , anObject = require('./$.an-object')
+ , $preventExtensions = Object.preventExtensions;
+
+$export($export.S, 'Reflect', {
+ preventExtensions: function preventExtensions(target){
+ anObject(target);
+ try {
+ if($preventExtensions)$preventExtensions(target);
+ return true;
+ } catch(e){
+ return false;
+ }
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.set-prototype-of.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.set-prototype-of.js
new file mode 100644
index 00000000..e769436f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.set-prototype-of.js
@@ -0,0 +1,15 @@
+// 26.1.14 Reflect.setPrototypeOf(target, proto)
+var $export = require('./$.export')
+ , setProto = require('./$.set-proto');
+
+if(setProto)$export($export.S, 'Reflect', {
+ setPrototypeOf: function setPrototypeOf(target, proto){
+ setProto.check(target, proto);
+ try {
+ setProto.set(target, proto);
+ return true;
+ } catch(e){
+ return false;
+ }
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.set.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.set.js
new file mode 100644
index 00000000..0a938e78
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.reflect.set.js
@@ -0,0 +1,29 @@
+// 26.1.13 Reflect.set(target, propertyKey, V [, receiver])
+var $ = require('./$')
+ , has = require('./$.has')
+ , $export = require('./$.export')
+ , createDesc = require('./$.property-desc')
+ , anObject = require('./$.an-object')
+ , isObject = require('./$.is-object');
+
+function set(target, propertyKey, V/*, receiver*/){
+ var receiver = arguments.length < 4 ? target : arguments[3]
+ , ownDesc = $.getDesc(anObject(target), propertyKey)
+ , existingDescriptor, proto;
+ if(!ownDesc){
+ if(isObject(proto = $.getProto(target))){
+ return set(proto, propertyKey, V, receiver);
+ }
+ ownDesc = createDesc(0);
+ }
+ if(has(ownDesc, 'value')){
+ if(ownDesc.writable === false || !isObject(receiver))return false;
+ existingDescriptor = $.getDesc(receiver, propertyKey) || createDesc(0);
+ existingDescriptor.value = V;
+ $.setDesc(receiver, propertyKey, existingDescriptor);
+ return true;
+ }
+ return ownDesc.set === undefined ? false : (ownDesc.set.call(receiver, V), true);
+}
+
+$export($export.S, 'Reflect', {set: set});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.regexp.constructor.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.regexp.constructor.js
new file mode 100644
index 00000000..087d9beb
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.regexp.constructor.js
@@ -0,0 +1 @@
+require('./$.set-species')('RegExp');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.regexp.flags.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.regexp.flags.js
new file mode 100644
index 00000000..e69de29b
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.regexp.match.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.regexp.match.js
new file mode 100644
index 00000000..e69de29b
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.regexp.replace.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.regexp.replace.js
new file mode 100644
index 00000000..e69de29b
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.regexp.search.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.regexp.search.js
new file mode 100644
index 00000000..e69de29b
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.regexp.split.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.regexp.split.js
new file mode 100644
index 00000000..e69de29b
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.set.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.set.js
new file mode 100644
index 00000000..8e148c9e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.set.js
@@ -0,0 +1,12 @@
+'use strict';
+var strong = require('./$.collection-strong');
+
+// 23.2 Set Objects
+require('./$.collection')('Set', function(get){
+ return function Set(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };
+}, {
+ // 23.2.3.1 Set.prototype.add(value)
+ add: function add(value){
+ return strong.def(this, value = value === 0 ? 0 : value, value);
+ }
+}, strong);
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.string.code-point-at.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.string.code-point-at.js
new file mode 100644
index 00000000..ebac5518
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.string.code-point-at.js
@@ -0,0 +1,9 @@
+'use strict';
+var $export = require('./$.export')
+ , $at = require('./$.string-at')(false);
+$export($export.P, 'String', {
+ // 21.1.3.3 String.prototype.codePointAt(pos)
+ codePointAt: function codePointAt(pos){
+ return $at(this, pos);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.string.ends-with.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.string.ends-with.js
new file mode 100644
index 00000000..a102da2d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.string.ends-with.js
@@ -0,0 +1,21 @@
+// 21.1.3.6 String.prototype.endsWith(searchString [, endPosition])
+'use strict';
+var $export = require('./$.export')
+ , toLength = require('./$.to-length')
+ , context = require('./$.string-context')
+ , ENDS_WITH = 'endsWith'
+ , $endsWith = ''[ENDS_WITH];
+
+$export($export.P + $export.F * require('./$.fails-is-regexp')(ENDS_WITH), 'String', {
+ endsWith: function endsWith(searchString /*, endPosition = @length */){
+ var that = context(this, searchString, ENDS_WITH)
+ , $$ = arguments
+ , endPosition = $$.length > 1 ? $$[1] : undefined
+ , len = toLength(that.length)
+ , end = endPosition === undefined ? len : Math.min(toLength(endPosition), len)
+ , search = String(searchString);
+ return $endsWith
+ ? $endsWith.call(that, search, end)
+ : that.slice(end - search.length, end) === search;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.string.from-code-point.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.string.from-code-point.js
new file mode 100644
index 00000000..b0bd166b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.string.from-code-point.js
@@ -0,0 +1,24 @@
+var $export = require('./$.export')
+ , toIndex = require('./$.to-index')
+ , fromCharCode = String.fromCharCode
+ , $fromCodePoint = String.fromCodePoint;
+
+// length should be 1, old FF problem
+$export($export.S + $export.F * (!!$fromCodePoint && $fromCodePoint.length != 1), 'String', {
+ // 21.1.2.2 String.fromCodePoint(...codePoints)
+ fromCodePoint: function fromCodePoint(x){ // eslint-disable-line no-unused-vars
+ var res = []
+ , $$ = arguments
+ , $$len = $$.length
+ , i = 0
+ , code;
+ while($$len > i){
+ code = +$$[i++];
+ if(toIndex(code, 0x10ffff) !== code)throw RangeError(code + ' is not a valid code point');
+ res.push(code < 0x10000
+ ? fromCharCode(code)
+ : fromCharCode(((code -= 0x10000) >> 10) + 0xd800, code % 0x400 + 0xdc00)
+ );
+ } return res.join('');
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.string.includes.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.string.includes.js
new file mode 100644
index 00000000..e2ab8db7
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.string.includes.js
@@ -0,0 +1,12 @@
+// 21.1.3.7 String.prototype.includes(searchString, position = 0)
+'use strict';
+var $export = require('./$.export')
+ , context = require('./$.string-context')
+ , INCLUDES = 'includes';
+
+$export($export.P + $export.F * require('./$.fails-is-regexp')(INCLUDES), 'String', {
+ includes: function includes(searchString /*, position = 0 */){
+ return !!~context(this, searchString, INCLUDES)
+ .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.string.iterator.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.string.iterator.js
new file mode 100644
index 00000000..2f4c772c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.string.iterator.js
@@ -0,0 +1,17 @@
+'use strict';
+var $at = require('./$.string-at')(true);
+
+// 21.1.3.27 String.prototype[@@iterator]()
+require('./$.iter-define')(String, 'String', function(iterated){
+ this._t = String(iterated); // target
+ this._i = 0; // next index
+// 21.1.5.2.1 %StringIteratorPrototype%.next()
+}, function(){
+ var O = this._t
+ , index = this._i
+ , point;
+ if(index >= O.length)return {value: undefined, done: true};
+ point = $at(O, index);
+ this._i += point.length;
+ return {value: point, done: false};
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.string.raw.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.string.raw.js
new file mode 100644
index 00000000..64279d23
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.string.raw.js
@@ -0,0 +1,19 @@
+var $export = require('./$.export')
+ , toIObject = require('./$.to-iobject')
+ , toLength = require('./$.to-length');
+
+$export($export.S, 'String', {
+ // 21.1.2.4 String.raw(callSite, ...substitutions)
+ raw: function raw(callSite){
+ var tpl = toIObject(callSite.raw)
+ , len = toLength(tpl.length)
+ , $$ = arguments
+ , $$len = $$.length
+ , res = []
+ , i = 0;
+ while(len > i){
+ res.push(String(tpl[i++]));
+ if(i < $$len)res.push(String($$[i]));
+ } return res.join('');
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.string.repeat.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.string.repeat.js
new file mode 100644
index 00000000..4ec29f66
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.string.repeat.js
@@ -0,0 +1,6 @@
+var $export = require('./$.export');
+
+$export($export.P, 'String', {
+ // 21.1.3.13 String.prototype.repeat(count)
+ repeat: require('./$.string-repeat')
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.string.starts-with.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.string.starts-with.js
new file mode 100644
index 00000000..21143072
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.string.starts-with.js
@@ -0,0 +1,19 @@
+// 21.1.3.18 String.prototype.startsWith(searchString [, position ])
+'use strict';
+var $export = require('./$.export')
+ , toLength = require('./$.to-length')
+ , context = require('./$.string-context')
+ , STARTS_WITH = 'startsWith'
+ , $startsWith = ''[STARTS_WITH];
+
+$export($export.P + $export.F * require('./$.fails-is-regexp')(STARTS_WITH), 'String', {
+ startsWith: function startsWith(searchString /*, position = 0 */){
+ var that = context(this, searchString, STARTS_WITH)
+ , $$ = arguments
+ , index = toLength(Math.min($$.length > 1 ? $$[1] : undefined, that.length))
+ , search = String(searchString);
+ return $startsWith
+ ? $startsWith.call(that, search, index)
+ : that.slice(index, index + search.length) === search;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.string.trim.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.string.trim.js
new file mode 100644
index 00000000..52b75cac
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.string.trim.js
@@ -0,0 +1,7 @@
+'use strict';
+// 21.1.3.25 String.prototype.trim()
+require('./$.string-trim')('trim', function($trim){
+ return function trim(){
+ return $trim(this, 3);
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.symbol.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.symbol.js
new file mode 100644
index 00000000..42b7a3aa
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.symbol.js
@@ -0,0 +1,227 @@
+'use strict';
+// ECMAScript 6 symbols shim
+var $ = require('./$')
+ , global = require('./$.global')
+ , has = require('./$.has')
+ , DESCRIPTORS = require('./$.descriptors')
+ , $export = require('./$.export')
+ , redefine = require('./$.redefine')
+ , $fails = require('./$.fails')
+ , shared = require('./$.shared')
+ , setToStringTag = require('./$.set-to-string-tag')
+ , uid = require('./$.uid')
+ , wks = require('./$.wks')
+ , keyOf = require('./$.keyof')
+ , $names = require('./$.get-names')
+ , enumKeys = require('./$.enum-keys')
+ , isArray = require('./$.is-array')
+ , anObject = require('./$.an-object')
+ , toIObject = require('./$.to-iobject')
+ , createDesc = require('./$.property-desc')
+ , getDesc = $.getDesc
+ , setDesc = $.setDesc
+ , _create = $.create
+ , getNames = $names.get
+ , $Symbol = global.Symbol
+ , $JSON = global.JSON
+ , _stringify = $JSON && $JSON.stringify
+ , setter = false
+ , HIDDEN = wks('_hidden')
+ , isEnum = $.isEnum
+ , SymbolRegistry = shared('symbol-registry')
+ , AllSymbols = shared('symbols')
+ , useNative = typeof $Symbol == 'function'
+ , ObjectProto = Object.prototype;
+
+// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
+var setSymbolDesc = DESCRIPTORS && $fails(function(){
+ return _create(setDesc({}, 'a', {
+ get: function(){ return setDesc(this, 'a', {value: 7}).a; }
+ })).a != 7;
+}) ? function(it, key, D){
+ var protoDesc = getDesc(ObjectProto, key);
+ if(protoDesc)delete ObjectProto[key];
+ setDesc(it, key, D);
+ if(protoDesc && it !== ObjectProto)setDesc(ObjectProto, key, protoDesc);
+} : setDesc;
+
+var wrap = function(tag){
+ var sym = AllSymbols[tag] = _create($Symbol.prototype);
+ sym._k = tag;
+ DESCRIPTORS && setter && setSymbolDesc(ObjectProto, tag, {
+ configurable: true,
+ set: function(value){
+ if(has(this, HIDDEN) && has(this[HIDDEN], tag))this[HIDDEN][tag] = false;
+ setSymbolDesc(this, tag, createDesc(1, value));
+ }
+ });
+ return sym;
+};
+
+var isSymbol = function(it){
+ return typeof it == 'symbol';
+};
+
+var $defineProperty = function defineProperty(it, key, D){
+ if(D && has(AllSymbols, key)){
+ if(!D.enumerable){
+ if(!has(it, HIDDEN))setDesc(it, HIDDEN, createDesc(1, {}));
+ it[HIDDEN][key] = true;
+ } else {
+ if(has(it, HIDDEN) && it[HIDDEN][key])it[HIDDEN][key] = false;
+ D = _create(D, {enumerable: createDesc(0, false)});
+ } return setSymbolDesc(it, key, D);
+ } return setDesc(it, key, D);
+};
+var $defineProperties = function defineProperties(it, P){
+ anObject(it);
+ var keys = enumKeys(P = toIObject(P))
+ , i = 0
+ , l = keys.length
+ , key;
+ while(l > i)$defineProperty(it, key = keys[i++], P[key]);
+ return it;
+};
+var $create = function create(it, P){
+ return P === undefined ? _create(it) : $defineProperties(_create(it), P);
+};
+var $propertyIsEnumerable = function propertyIsEnumerable(key){
+ var E = isEnum.call(this, key);
+ return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key]
+ ? E : true;
+};
+var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key){
+ var D = getDesc(it = toIObject(it), key);
+ if(D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key]))D.enumerable = true;
+ return D;
+};
+var $getOwnPropertyNames = function getOwnPropertyNames(it){
+ var names = getNames(toIObject(it))
+ , result = []
+ , i = 0
+ , key;
+ while(names.length > i)if(!has(AllSymbols, key = names[i++]) && key != HIDDEN)result.push(key);
+ return result;
+};
+var $getOwnPropertySymbols = function getOwnPropertySymbols(it){
+ var names = getNames(toIObject(it))
+ , result = []
+ , i = 0
+ , key;
+ while(names.length > i)if(has(AllSymbols, key = names[i++]))result.push(AllSymbols[key]);
+ return result;
+};
+var $stringify = function stringify(it){
+ if(it === undefined || isSymbol(it))return; // IE8 returns string on undefined
+ var args = [it]
+ , i = 1
+ , $$ = arguments
+ , replacer, $replacer;
+ while($$.length > i)args.push($$[i++]);
+ replacer = args[1];
+ if(typeof replacer == 'function')$replacer = replacer;
+ if($replacer || !isArray(replacer))replacer = function(key, value){
+ if($replacer)value = $replacer.call(this, key, value);
+ if(!isSymbol(value))return value;
+ };
+ args[1] = replacer;
+ return _stringify.apply($JSON, args);
+};
+var buggyJSON = $fails(function(){
+ var S = $Symbol();
+ // MS Edge converts symbol values to JSON as {}
+ // WebKit converts symbol values to JSON as null
+ // V8 throws on boxed symbols
+ return _stringify([S]) != '[null]' || _stringify({a: S}) != '{}' || _stringify(Object(S)) != '{}';
+});
+
+// 19.4.1.1 Symbol([description])
+if(!useNative){
+ $Symbol = function Symbol(){
+ if(isSymbol(this))throw TypeError('Symbol is not a constructor');
+ return wrap(uid(arguments.length > 0 ? arguments[0] : undefined));
+ };
+ redefine($Symbol.prototype, 'toString', function toString(){
+ return this._k;
+ });
+
+ isSymbol = function(it){
+ return it instanceof $Symbol;
+ };
+
+ $.create = $create;
+ $.isEnum = $propertyIsEnumerable;
+ $.getDesc = $getOwnPropertyDescriptor;
+ $.setDesc = $defineProperty;
+ $.setDescs = $defineProperties;
+ $.getNames = $names.get = $getOwnPropertyNames;
+ $.getSymbols = $getOwnPropertySymbols;
+
+ if(DESCRIPTORS && !require('./$.library')){
+ redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
+ }
+}
+
+var symbolStatics = {
+ // 19.4.2.1 Symbol.for(key)
+ 'for': function(key){
+ return has(SymbolRegistry, key += '')
+ ? SymbolRegistry[key]
+ : SymbolRegistry[key] = $Symbol(key);
+ },
+ // 19.4.2.5 Symbol.keyFor(sym)
+ keyFor: function keyFor(key){
+ return keyOf(SymbolRegistry, key);
+ },
+ useSetter: function(){ setter = true; },
+ useSimple: function(){ setter = false; }
+};
+// 19.4.2.2 Symbol.hasInstance
+// 19.4.2.3 Symbol.isConcatSpreadable
+// 19.4.2.4 Symbol.iterator
+// 19.4.2.6 Symbol.match
+// 19.4.2.8 Symbol.replace
+// 19.4.2.9 Symbol.search
+// 19.4.2.10 Symbol.species
+// 19.4.2.11 Symbol.split
+// 19.4.2.12 Symbol.toPrimitive
+// 19.4.2.13 Symbol.toStringTag
+// 19.4.2.14 Symbol.unscopables
+$.each.call((
+ 'hasInstance,isConcatSpreadable,iterator,match,replace,search,' +
+ 'species,split,toPrimitive,toStringTag,unscopables'
+).split(','), function(it){
+ var sym = wks(it);
+ symbolStatics[it] = useNative ? sym : wrap(sym);
+});
+
+setter = true;
+
+$export($export.G + $export.W, {Symbol: $Symbol});
+
+$export($export.S, 'Symbol', symbolStatics);
+
+$export($export.S + $export.F * !useNative, 'Object', {
+ // 19.1.2.2 Object.create(O [, Properties])
+ create: $create,
+ // 19.1.2.4 Object.defineProperty(O, P, Attributes)
+ defineProperty: $defineProperty,
+ // 19.1.2.3 Object.defineProperties(O, Properties)
+ defineProperties: $defineProperties,
+ // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
+ getOwnPropertyDescriptor: $getOwnPropertyDescriptor,
+ // 19.1.2.7 Object.getOwnPropertyNames(O)
+ getOwnPropertyNames: $getOwnPropertyNames,
+ // 19.1.2.8 Object.getOwnPropertySymbols(O)
+ getOwnPropertySymbols: $getOwnPropertySymbols
+});
+
+// 24.3.2 JSON.stringify(value [, replacer [, space]])
+$JSON && $export($export.S + $export.F * (!useNative || buggyJSON), 'JSON', {stringify: $stringify});
+
+// 19.4.3.5 Symbol.prototype[@@toStringTag]
+setToStringTag($Symbol, 'Symbol');
+// 20.2.1.9 Math[@@toStringTag]
+setToStringTag(Math, 'Math', true);
+// 24.3.3 JSON[@@toStringTag]
+setToStringTag(global.JSON, 'JSON', true);
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.array-buffer.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.array-buffer.js
new file mode 100644
index 00000000..a8209bd2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.array-buffer.js
@@ -0,0 +1,43 @@
+'use strict';
+if(require('./$.descriptors')){
+ var $export = require('./$.export')
+ , $typed = require('./$.typed')
+ , buffer = require('./$.buffer')
+ , toIndex = require('./$.to-index')
+ , toLength = require('./$.to-length')
+ , isObject = require('./$.is-object')
+ , TYPED_ARRAY = require('./$.wks')('typed_array')
+ , $ArrayBuffer = buffer.ArrayBuffer
+ , $DataView = buffer.DataView
+ , $slice = $ArrayBuffer && $ArrayBuffer.prototype.slice
+ , VIEW = $typed.VIEW
+ , ARRAY_BUFFER = 'ArrayBuffer';
+
+ $export($export.G + $export.W + $export.F * !$typed.ABV, {ArrayBuffer: $ArrayBuffer});
+
+ $export($export.S + $export.F * !$typed.CONSTR, ARRAY_BUFFER, {
+ // 24.1.3.1 ArrayBuffer.isView(arg)
+ isView: function isView(it){ // not cross-realm
+ return isObject(it) && VIEW in it;
+ }
+ });
+
+ $export($export.P + $export.F * require('./$.fails')(function(){
+ return !new $ArrayBuffer(2).slice(1, undefined).byteLength;
+ }), ARRAY_BUFFER, {
+ // 24.1.4.3 ArrayBuffer.prototype.slice(start, end)
+ slice: function slice(start, end){
+ if($slice !== undefined && end === undefined)return $slice.call(this, start); // FF fix
+ var len = this.byteLength
+ , first = toIndex(start, len)
+ , final = toIndex(end === undefined ? len : end, len)
+ , result = new $ArrayBuffer(toLength(final - first))
+ , viewS = new $DataView(this)
+ , viewT = new $DataView(result)
+ , index = 0;
+ while(first < final){
+ viewT.setUint8(index++, viewS.getUint8(first++));
+ } return result;
+ }
+ });
+}
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.data-view.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.data-view.js
new file mode 100644
index 00000000..44e03532
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.data-view.js
@@ -0,0 +1,4 @@
+if(require('./$.descriptors')){
+ var $export = require('./$.export');
+ $export($export.G + $export.W + $export.F * !require('./$.typed').ABV, {DataView: require('./$.buffer').DataView});
+}
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.float32-array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.float32-array.js
new file mode 100644
index 00000000..95d78a6d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.float32-array.js
@@ -0,0 +1,5 @@
+require('./$.typed-array')('Float32', 4, function(init){
+ return function Float32Array(data, byteOffset, length){
+ return init(this, data, byteOffset, length);
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.float64-array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.float64-array.js
new file mode 100644
index 00000000..16fadec9
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.float64-array.js
@@ -0,0 +1,5 @@
+require('./$.typed-array')('Float64', 8, function(init){
+ return function Float64Array(data, byteOffset, length){
+ return init(this, data, byteOffset, length);
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.int16-array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.int16-array.js
new file mode 100644
index 00000000..a3d04cb6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.int16-array.js
@@ -0,0 +1,5 @@
+require('./$.typed-array')('Int16', 2, function(init){
+ return function Int16Array(data, byteOffset, length){
+ return init(this, data, byteOffset, length);
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.int32-array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.int32-array.js
new file mode 100644
index 00000000..1923463a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.int32-array.js
@@ -0,0 +1,5 @@
+require('./$.typed-array')('Int32', 4, function(init){
+ return function Int32Array(data, byteOffset, length){
+ return init(this, data, byteOffset, length);
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.int8-array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.int8-array.js
new file mode 100644
index 00000000..e9182c4c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.int8-array.js
@@ -0,0 +1,5 @@
+require('./$.typed-array')('Int8', 1, function(init){
+ return function Int8Array(data, byteOffset, length){
+ return init(this, data, byteOffset, length);
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.uint16-array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.uint16-array.js
new file mode 100644
index 00000000..ec6e8347
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.uint16-array.js
@@ -0,0 +1,5 @@
+require('./$.typed-array')('Uint16', 2, function(init){
+ return function Uint16Array(data, byteOffset, length){
+ return init(this, data, byteOffset, length);
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.uint32-array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.uint32-array.js
new file mode 100644
index 00000000..ddfc22d8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.uint32-array.js
@@ -0,0 +1,5 @@
+require('./$.typed-array')('Uint32', 4, function(init){
+ return function Uint32Array(data, byteOffset, length){
+ return init(this, data, byteOffset, length);
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.uint8-array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.uint8-array.js
new file mode 100644
index 00000000..7ab1e4df
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.uint8-array.js
@@ -0,0 +1,5 @@
+require('./$.typed-array')('Uint8', 1, function(init){
+ return function Uint8Array(data, byteOffset, length){
+ return init(this, data, byteOffset, length);
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.uint8-clamped-array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.uint8-clamped-array.js
new file mode 100644
index 00000000..f85f9d5d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.typed.uint8-clamped-array.js
@@ -0,0 +1,5 @@
+require('./$.typed-array')('Uint8', 1, function(init){
+ return function Uint8ClampedArray(data, byteOffset, length){
+ return init(this, data, byteOffset, length);
+ };
+}, true);
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.weak-map.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.weak-map.js
new file mode 100644
index 00000000..72a9b324
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.weak-map.js
@@ -0,0 +1,43 @@
+'use strict';
+var $ = require('./$')
+ , redefine = require('./$.redefine')
+ , weak = require('./$.collection-weak')
+ , isObject = require('./$.is-object')
+ , has = require('./$.has')
+ , frozenStore = weak.frozenStore
+ , WEAK = weak.WEAK
+ , isExtensible = Object.isExtensible || isObject
+ , tmp = {};
+
+// 23.3 WeakMap Objects
+var $WeakMap = require('./$.collection')('WeakMap', function(get){
+ return function WeakMap(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };
+}, {
+ // 23.3.3.3 WeakMap.prototype.get(key)
+ get: function get(key){
+ if(isObject(key)){
+ if(!isExtensible(key))return frozenStore(this).get(key);
+ if(has(key, WEAK))return key[WEAK][this._i];
+ }
+ },
+ // 23.3.3.5 WeakMap.prototype.set(key, value)
+ set: function set(key, value){
+ return weak.def(this, key, value);
+ }
+}, weak, true, true);
+
+// IE11 WeakMap frozen keys fix
+if(new $WeakMap().set((Object.freeze || Object)(tmp), 7).get(tmp) != 7){
+ $.each.call(['delete', 'has', 'get', 'set'], function(key){
+ var proto = $WeakMap.prototype
+ , method = proto[key];
+ redefine(proto, key, function(a, b){
+ // store frozen objects on leaky map
+ if(isObject(a) && !isExtensible(a)){
+ var result = frozenStore(this)[key](a, b);
+ return key == 'set' ? this : result;
+ // store all the rest on native weakmap
+ } return method.call(this, a, b);
+ });
+ });
+}
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.weak-set.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.weak-set.js
new file mode 100644
index 00000000..efdf1d76
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es6.weak-set.js
@@ -0,0 +1,12 @@
+'use strict';
+var weak = require('./$.collection-weak');
+
+// 23.4 WeakSet Objects
+require('./$.collection')('WeakSet', function(get){
+ return function WeakSet(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };
+}, {
+ // 23.4.3.1 WeakSet.prototype.add(value)
+ add: function add(value){
+ return weak.def(this, value, true);
+ }
+}, weak, false, true);
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.array.includes.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.array.includes.js
new file mode 100644
index 00000000..dcfad704
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.array.includes.js
@@ -0,0 +1,12 @@
+'use strict';
+var $export = require('./$.export')
+ , $includes = require('./$.array-includes')(true);
+
+$export($export.P, 'Array', {
+ // https://github.com/domenic/Array.prototype.includes
+ includes: function includes(el /*, fromIndex = 0 */){
+ return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);
+ }
+});
+
+require('./$.add-to-unscopables')('includes');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.map.to-json.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.map.to-json.js
new file mode 100644
index 00000000..80937056
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.map.to-json.js
@@ -0,0 +1,4 @@
+// https://github.com/DavidBruant/Map-Set.prototype.toJSON
+var $export = require('./$.export');
+
+$export($export.P, 'Map', {toJSON: require('./$.collection-to-json')('Map')});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.object.entries.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.object.entries.js
new file mode 100644
index 00000000..fec1bc36
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.object.entries.js
@@ -0,0 +1,9 @@
+// http://goo.gl/XkBrjD
+var $export = require('./$.export')
+ , $entries = require('./$.object-to-array')(true);
+
+$export($export.S, 'Object', {
+ entries: function entries(it){
+ return $entries(it);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.object.get-own-property-descriptors.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.object.get-own-property-descriptors.js
new file mode 100644
index 00000000..e4d80a34
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.object.get-own-property-descriptors.js
@@ -0,0 +1,23 @@
+// https://gist.github.com/WebReflection/9353781
+var $ = require('./$')
+ , $export = require('./$.export')
+ , ownKeys = require('./$.own-keys')
+ , toIObject = require('./$.to-iobject')
+ , createDesc = require('./$.property-desc');
+
+$export($export.S, 'Object', {
+ getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object){
+ var O = toIObject(object)
+ , setDesc = $.setDesc
+ , getDesc = $.getDesc
+ , keys = ownKeys(O)
+ , result = {}
+ , i = 0
+ , key, D;
+ while(keys.length > i){
+ D = getDesc(O, key = keys[i++]);
+ if(key in result)setDesc(result, key, createDesc(0, D));
+ else result[key] = D;
+ } return result;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.object.values.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.object.values.js
new file mode 100644
index 00000000..697e9354
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.object.values.js
@@ -0,0 +1,9 @@
+// http://goo.gl/XkBrjD
+var $export = require('./$.export')
+ , $values = require('./$.object-to-array')(false);
+
+$export($export.S, 'Object', {
+ values: function values(it){
+ return $values(it);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.regexp.escape.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.regexp.escape.js
new file mode 100644
index 00000000..9c4c542a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.regexp.escape.js
@@ -0,0 +1,5 @@
+// https://github.com/benjamingr/RexExp.escape
+var $export = require('./$.export')
+ , $re = require('./$.replacer')(/[\\^$*+?.()|[\]{}]/g, '\\$&');
+
+$export($export.S, 'RegExp', {escape: function escape(it){ return $re(it); }});
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.set.to-json.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.set.to-json.js
new file mode 100644
index 00000000..e632f2a3
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.set.to-json.js
@@ -0,0 +1,4 @@
+// https://github.com/DavidBruant/Map-Set.prototype.toJSON
+var $export = require('./$.export');
+
+$export($export.P, 'Set', {toJSON: require('./$.collection-to-json')('Set')});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.string.at.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.string.at.js
new file mode 100644
index 00000000..fee583bf
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.string.at.js
@@ -0,0 +1,10 @@
+'use strict';
+// https://github.com/mathiasbynens/String.prototype.at
+var $export = require('./$.export')
+ , $at = require('./$.string-at')(true);
+
+$export($export.P, 'String', {
+ at: function at(pos){
+ return $at(this, pos);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.string.pad-left.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.string.pad-left.js
new file mode 100644
index 00000000..643621aa
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.string.pad-left.js
@@ -0,0 +1,9 @@
+'use strict';
+var $export = require('./$.export')
+ , $pad = require('./$.string-pad');
+
+$export($export.P, 'String', {
+ padLeft: function padLeft(maxLength /*, fillString = ' ' */){
+ return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, true);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.string.pad-right.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.string.pad-right.js
new file mode 100644
index 00000000..e4230960
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.string.pad-right.js
@@ -0,0 +1,9 @@
+'use strict';
+var $export = require('./$.export')
+ , $pad = require('./$.string-pad');
+
+$export($export.P, 'String', {
+ padRight: function padRight(maxLength /*, fillString = ' ' */){
+ return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, false);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.string.trim-left.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.string.trim-left.js
new file mode 100644
index 00000000..dbaf6308
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.string.trim-left.js
@@ -0,0 +1,7 @@
+'use strict';
+// https://github.com/sebmarkbage/ecmascript-string-left-right-trim
+require('./$.string-trim')('trimLeft', function($trim){
+ return function trimLeft(){
+ return $trim(this, 1);
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.string.trim-right.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.string.trim-right.js
new file mode 100644
index 00000000..6b02d394
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/es7.string.trim-right.js
@@ -0,0 +1,7 @@
+'use strict';
+// https://github.com/sebmarkbage/ecmascript-string-left-right-trim
+require('./$.string-trim')('trimRight', function($trim){
+ return function trimRight(){
+ return $trim(this, 2);
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/js.array.statics.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/js.array.statics.js
new file mode 100644
index 00000000..9536c2e4
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/js.array.statics.js
@@ -0,0 +1,17 @@
+// JavaScript 1.6 / Strawman array statics shim
+var $ = require('./$')
+ , $export = require('./$.export')
+ , $ctx = require('./$.ctx')
+ , $Array = require('./$.core').Array || Array
+ , statics = {};
+var setStatics = function(keys, length){
+ $.each.call(keys.split(','), function(key){
+ if(length == undefined && key in $Array)statics[key] = $Array[key];
+ else if(key in [])statics[key] = $ctx(Function.call, [][key], length);
+ });
+};
+setStatics('pop,reverse,shift,keys,values,entries', 1);
+setStatics('indexOf,every,some,forEach,map,filter,find,findIndex,includes', 3);
+setStatics('join,slice,concat,push,splice,unshift,sort,lastIndexOf,' +
+ 'reduce,reduceRight,copyWithin,fill');
+$export($export.S, 'Array', statics);
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/web.dom.iterable.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/web.dom.iterable.js
new file mode 100644
index 00000000..988c6da2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/web.dom.iterable.js
@@ -0,0 +1,3 @@
+require('./es6.array.iterator');
+var Iterators = require('./$.iterators');
+Iterators.NodeList = Iterators.HTMLCollection = Iterators.Array;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/web.immediate.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/web.immediate.js
new file mode 100644
index 00000000..fa64f08e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/web.immediate.js
@@ -0,0 +1,6 @@
+var $export = require('./$.export')
+ , $task = require('./$.task');
+$export($export.G + $export.B, {
+ setImmediate: $task.set,
+ clearImmediate: $task.clear
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/web.timers.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/web.timers.js
new file mode 100644
index 00000000..74b72019
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/modules/web.timers.js
@@ -0,0 +1,20 @@
+// ie9- setTimeout & setInterval additional parameters fix
+var global = require('./$.global')
+ , $export = require('./$.export')
+ , invoke = require('./$.invoke')
+ , partial = require('./$.partial')
+ , navigator = global.navigator
+ , MSIE = !!navigator && /MSIE .\./.test(navigator.userAgent); // <- dirty ie9- check
+var wrap = function(set){
+ return MSIE ? function(fn, time /*, ...args */){
+ return set(invoke(
+ partial,
+ [].slice.call(arguments, 2),
+ typeof fn == 'function' ? fn : Function(fn)
+ ), time);
+ } : set;
+};
+$export($export.G + $export.B + $export.F * MSIE, {
+ setTimeout: wrap(global.setTimeout),
+ setInterval: wrap(global.setInterval)
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/shim.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/shim.js
new file mode 100644
index 00000000..6d38d2e2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/shim.js
@@ -0,0 +1,104 @@
+require('./modules/es5');
+require('./modules/es6.symbol');
+require('./modules/es6.object.assign');
+require('./modules/es6.object.is');
+require('./modules/es6.object.set-prototype-of');
+require('./modules/es6.object.to-string');
+require('./modules/es6.object.freeze');
+require('./modules/es6.object.seal');
+require('./modules/es6.object.prevent-extensions');
+require('./modules/es6.object.is-frozen');
+require('./modules/es6.object.is-sealed');
+require('./modules/es6.object.is-extensible');
+require('./modules/es6.object.get-own-property-descriptor');
+require('./modules/es6.object.get-prototype-of');
+require('./modules/es6.object.keys');
+require('./modules/es6.object.get-own-property-names');
+require('./modules/es6.function.name');
+require('./modules/es6.function.has-instance');
+require('./modules/es6.number.constructor');
+require('./modules/es6.number.epsilon');
+require('./modules/es6.number.is-finite');
+require('./modules/es6.number.is-integer');
+require('./modules/es6.number.is-nan');
+require('./modules/es6.number.is-safe-integer');
+require('./modules/es6.number.max-safe-integer');
+require('./modules/es6.number.min-safe-integer');
+require('./modules/es6.number.parse-float');
+require('./modules/es6.number.parse-int');
+require('./modules/es6.math.acosh');
+require('./modules/es6.math.asinh');
+require('./modules/es6.math.atanh');
+require('./modules/es6.math.cbrt');
+require('./modules/es6.math.clz32');
+require('./modules/es6.math.cosh');
+require('./modules/es6.math.expm1');
+require('./modules/es6.math.fround');
+require('./modules/es6.math.hypot');
+require('./modules/es6.math.imul');
+require('./modules/es6.math.log10');
+require('./modules/es6.math.log1p');
+require('./modules/es6.math.log2');
+require('./modules/es6.math.sign');
+require('./modules/es6.math.sinh');
+require('./modules/es6.math.tanh');
+require('./modules/es6.math.trunc');
+require('./modules/es6.string.from-code-point');
+require('./modules/es6.string.raw');
+require('./modules/es6.string.trim');
+require('./modules/es6.string.iterator');
+require('./modules/es6.string.code-point-at');
+require('./modules/es6.string.ends-with');
+require('./modules/es6.string.includes');
+require('./modules/es6.string.repeat');
+require('./modules/es6.string.starts-with');
+require('./modules/es6.array.from');
+require('./modules/es6.array.of');
+require('./modules/es6.array.iterator');
+require('./modules/es6.array.species');
+require('./modules/es6.array.copy-within');
+require('./modules/es6.array.fill');
+require('./modules/es6.array.find');
+require('./modules/es6.array.find-index');
+require('./modules/es6.regexp.constructor');
+require('./modules/es6.regexp.flags');
+require('./modules/es6.regexp.match');
+require('./modules/es6.regexp.replace');
+require('./modules/es6.regexp.search');
+require('./modules/es6.regexp.split');
+require('./modules/es6.promise');
+require('./modules/es6.map');
+require('./modules/es6.set');
+require('./modules/es6.weak-map');
+require('./modules/es6.weak-set');
+require('./modules/es6.reflect.apply');
+require('./modules/es6.reflect.construct');
+require('./modules/es6.reflect.define-property');
+require('./modules/es6.reflect.delete-property');
+require('./modules/es6.reflect.enumerate');
+require('./modules/es6.reflect.get');
+require('./modules/es6.reflect.get-own-property-descriptor');
+require('./modules/es6.reflect.get-prototype-of');
+require('./modules/es6.reflect.has');
+require('./modules/es6.reflect.is-extensible');
+require('./modules/es6.reflect.own-keys');
+require('./modules/es6.reflect.prevent-extensions');
+require('./modules/es6.reflect.set');
+require('./modules/es6.reflect.set-prototype-of');
+require('./modules/es7.array.includes');
+require('./modules/es7.string.at');
+require('./modules/es7.string.pad-left');
+require('./modules/es7.string.pad-right');
+require('./modules/es7.string.trim-left');
+require('./modules/es7.string.trim-right');
+require('./modules/es7.regexp.escape');
+require('./modules/es7.object.get-own-property-descriptors');
+require('./modules/es7.object.values');
+require('./modules/es7.object.entries');
+require('./modules/es7.map.to-json');
+require('./modules/es7.set.to-json');
+require('./modules/js.array.statics');
+require('./modules/web.timers');
+require('./modules/web.immediate');
+require('./modules/web.dom.iterable');
+module.exports = require('./modules/$.core');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/web/dom.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/web/dom.js
new file mode 100644
index 00000000..9b448cfe
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/web/dom.js
@@ -0,0 +1,2 @@
+require('../modules/web.dom.iterable');
+module.exports = require('../modules/$.core');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/web/immediate.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/web/immediate.js
new file mode 100644
index 00000000..e4e5493b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/web/immediate.js
@@ -0,0 +1,2 @@
+require('../modules/web.immediate');
+module.exports = require('../modules/$.core');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/web/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/web/index.js
new file mode 100644
index 00000000..6c3221e2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/web/index.js
@@ -0,0 +1,4 @@
+require('../modules/web.timers');
+require('../modules/web.immediate');
+require('../modules/web.dom.iterable');
+module.exports = require('../modules/$.core');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/web/timers.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/web/timers.js
new file mode 100644
index 00000000..763ea44e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/library/web/timers.js
@@ -0,0 +1,2 @@
+require('../modules/web.timers');
+module.exports = require('../modules/$.core');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.a-function.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.a-function.js
new file mode 100644
index 00000000..8c35f451
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.a-function.js
@@ -0,0 +1,4 @@
+module.exports = function(it){
+ if(typeof it != 'function')throw TypeError(it + ' is not a function!');
+ return it;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.add-to-unscopables.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.add-to-unscopables.js
new file mode 100644
index 00000000..bffd1613
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.add-to-unscopables.js
@@ -0,0 +1,7 @@
+// 22.1.3.31 Array.prototype[@@unscopables]
+var UNSCOPABLES = require('./$.wks')('unscopables')
+ , ArrayProto = Array.prototype;
+if(ArrayProto[UNSCOPABLES] == undefined)require('./$.hide')(ArrayProto, UNSCOPABLES, {});
+module.exports = function(key){
+ ArrayProto[UNSCOPABLES][key] = true;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.an-object.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.an-object.js
new file mode 100644
index 00000000..e5c808fd
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.an-object.js
@@ -0,0 +1,5 @@
+var isObject = require('./$.is-object');
+module.exports = function(it){
+ if(!isObject(it))throw TypeError(it + ' is not an object!');
+ return it;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.array-copy-within.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.array-copy-within.js
new file mode 100644
index 00000000..58563065
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.array-copy-within.js
@@ -0,0 +1,27 @@
+// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length)
+'use strict';
+var toObject = require('./$.to-object')
+ , toIndex = require('./$.to-index')
+ , toLength = require('./$.to-length');
+
+module.exports = [].copyWithin || function copyWithin(target/*= 0*/, start/*= 0, end = @length*/){
+ var O = toObject(this)
+ , len = toLength(O.length)
+ , to = toIndex(target, len)
+ , from = toIndex(start, len)
+ , $$ = arguments
+ , end = $$.length > 2 ? $$[2] : undefined
+ , count = Math.min((end === undefined ? len : toIndex(end, len)) - from, len - to)
+ , inc = 1;
+ if(from < to && to < from + count){
+ inc = -1;
+ from += count - 1;
+ to += count - 1;
+ }
+ while(count-- > 0){
+ if(from in O)O[to] = O[from];
+ else delete O[to];
+ to += inc;
+ from += inc;
+ } return O;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.array-fill.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.array-fill.js
new file mode 100644
index 00000000..6b699df7
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.array-fill.js
@@ -0,0 +1,16 @@
+// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)
+'use strict';
+var toObject = require('./$.to-object')
+ , toIndex = require('./$.to-index')
+ , toLength = require('./$.to-length');
+module.exports = [].fill || function fill(value /*, start = 0, end = @length */){
+ var O = toObject(this)
+ , length = toLength(O.length)
+ , $$ = arguments
+ , $$len = $$.length
+ , index = toIndex($$len > 1 ? $$[1] : undefined, length)
+ , end = $$len > 2 ? $$[2] : undefined
+ , endPos = end === undefined ? length : toIndex(end, length);
+ while(endPos > index)O[index++] = value;
+ return O;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.array-includes.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.array-includes.js
new file mode 100644
index 00000000..9781fca7
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.array-includes.js
@@ -0,0 +1,21 @@
+// false -> Array#indexOf
+// true -> Array#includes
+var toIObject = require('./$.to-iobject')
+ , toLength = require('./$.to-length')
+ , toIndex = require('./$.to-index');
+module.exports = function(IS_INCLUDES){
+ return function($this, el, fromIndex){
+ var O = toIObject($this)
+ , length = toLength(O.length)
+ , index = toIndex(fromIndex, length)
+ , value;
+ // Array#includes uses SameValueZero equality algorithm
+ if(IS_INCLUDES && el != el)while(length > index){
+ value = O[index++];
+ if(value != value)return true;
+ // Array#toIndex ignores holes, Array#includes - not
+ } else for(;length > index; index++)if(IS_INCLUDES || index in O){
+ if(O[index] === el)return IS_INCLUDES || index;
+ } return !IS_INCLUDES && -1;
+ };
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.array-methods.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.array-methods.js
new file mode 100644
index 00000000..e70b99f4
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.array-methods.js
@@ -0,0 +1,43 @@
+// 0 -> Array#forEach
+// 1 -> Array#map
+// 2 -> Array#filter
+// 3 -> Array#some
+// 4 -> Array#every
+// 5 -> Array#find
+// 6 -> Array#findIndex
+var ctx = require('./$.ctx')
+ , IObject = require('./$.iobject')
+ , toObject = require('./$.to-object')
+ , toLength = require('./$.to-length')
+ , asc = require('./$.array-species-create');
+module.exports = function(TYPE){
+ var IS_MAP = TYPE == 1
+ , IS_FILTER = TYPE == 2
+ , IS_SOME = TYPE == 3
+ , IS_EVERY = TYPE == 4
+ , IS_FIND_INDEX = TYPE == 6
+ , NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
+ return function($this, callbackfn, that){
+ var O = toObject($this)
+ , self = IObject(O)
+ , f = ctx(callbackfn, that, 3)
+ , length = toLength(self.length)
+ , index = 0
+ , result = IS_MAP ? asc($this, length) : IS_FILTER ? asc($this, 0) : undefined
+ , val, res;
+ for(;length > index; index++)if(NO_HOLES || index in self){
+ val = self[index];
+ res = f(val, index, O);
+ if(TYPE){
+ if(IS_MAP)result[index] = res; // map
+ else if(res)switch(TYPE){
+ case 3: return true; // some
+ case 5: return val; // find
+ case 6: return index; // findIndex
+ case 2: result.push(val); // filter
+ } else if(IS_EVERY)return false; // every
+ }
+ }
+ return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
+ };
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.array-species-create.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.array-species-create.js
new file mode 100644
index 00000000..d809cae6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.array-species-create.js
@@ -0,0 +1,16 @@
+// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
+var isObject = require('./$.is-object')
+ , isArray = require('./$.is-array')
+ , SPECIES = require('./$.wks')('species');
+module.exports = function(original, length){
+ var C;
+ if(isArray(original)){
+ C = original.constructor;
+ // cross-realm fallback
+ if(typeof C == 'function' && (C === Array || isArray(C.prototype)))C = undefined;
+ if(isObject(C)){
+ C = C[SPECIES];
+ if(C === null)C = undefined;
+ }
+ } return new (C === undefined ? Array : C)(length);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.buffer.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.buffer.js
new file mode 100644
index 00000000..d1aae58a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.buffer.js
@@ -0,0 +1,288 @@
+'use strict';
+var $ = require('./$')
+ , global = require('./$.global')
+ , $typed = require('./$.typed')
+ , redefineAll = require('./$.redefine-all')
+ , strictNew = require('./$.strict-new')
+ , toInteger = require('./$.to-integer')
+ , toLength = require('./$.to-length')
+ , arrayFill = require('./$.array-fill')
+ , $ArrayBuffer = global.ArrayBuffer
+ , $DataView = global.DataView
+ , Math = global.Math
+ , parseInt = global.parseInt
+ , abs = Math.abs
+ , pow = Math.pow
+ , min = Math.min
+ , floor = Math.floor
+ , log = Math.log
+ , LN2 = Math.LN2
+ , BYTE_LENGTH = 'byteLength';
+
+// pack / unpack based on
+// https://github.com/inexorabletash/polyfill/blob/v0.1.11/typedarray.js#L123-L264
+// TODO: simplify
+var signed = function(value, bits){
+ var s = 32 - bits;
+ return value << s >> s;
+};
+var unsigned = function(value, bits){
+ var s = 32 - bits;
+ return value << s >>> s;
+};
+var roundToEven = function(n){
+ var w = floor(n)
+ , f = n - w;
+ return f < .5 ? w : f > .5 ? w + 1 : w % 2 ? w + 1 : w;
+};
+var packI8 = function(n){
+ return [n & 0xff];
+};
+var unpackI8 = function(bytes){
+ return signed(bytes[0], 8);
+};
+var packU8 = function(n){
+ return [n & 0xff];
+};
+var unpackU8 = function(bytes){
+ return unsigned(bytes[0], 8);
+};
+var packI16 = function(n){
+ return [n & 0xff, n >> 8 & 0xff];
+};
+var unpackI16 = function(bytes){
+ return signed(bytes[1] << 8 | bytes[0], 16);
+};
+var packU16 = function(n){
+ return [n & 0xff, n >> 8 & 0xff];
+};
+var unpackU16 = function(bytes){
+ return unsigned(bytes[1] << 8 | bytes[0], 16);
+};
+var packI32 = function(n){
+ return [n & 0xff, n >> 8 & 0xff, n >> 16 & 0xff, n >> 24 & 0xff];
+};
+var unpackI32 = function(bytes){
+ return signed(bytes[3] << 24 | bytes[2] << 16 | bytes[1] << 8 | bytes[0], 32);
+};
+var packU32 = function(n){
+ return [n & 0xff, n >> 8 & 0xff, n >> 16 & 0xff, n >> 24 & 0xff];
+};
+var unpackU32 = function(bytes){
+ return unsigned(bytes[3] << 24 | bytes[2] << 16 | bytes[1] << 8 | bytes[0], 32);
+};
+var packIEEE754 = function(v, ebits, fbits) {
+ var bias = (1 << ebits - 1) - 1
+ , s, e, f, i, bits, str, bytes;
+ // Compute sign, exponent, fraction
+ if (v !== v) {
+ // NaN
+ // http://dev.w3.org/2006/webapi/WebIDL/#es-type-mapping
+ e = (1 << ebits) - 1;
+ f = pow(2, fbits - 1);
+ s = 0;
+ } else if(v === Infinity || v === -Infinity){
+ e = (1 << ebits) - 1;
+ f = 0;
+ s = v < 0 ? 1 : 0;
+ } else if(v === 0){
+ e = 0;
+ f = 0;
+ s = 1 / v === -Infinity ? 1 : 0;
+ } else {
+ s = v < 0;
+ v = abs(v);
+ if(v >= pow(2, 1 - bias)){
+ e = min(floor(log(v) / LN2), 1023);
+ var significand = v / pow(2, e);
+ if(significand < 1){
+ e -= 1;
+ significand *= 2;
+ }
+ if(significand >= 2){
+ e += 1;
+ significand /= 2;
+ }
+ f = roundToEven(significand * pow(2, fbits));
+ if(f / pow(2, fbits) >= 2){
+ e = e + 1;
+ f = 1;
+ }
+ if(e > bias){
+ // Overflow
+ e = (1 << ebits) - 1;
+ f = 0;
+ } else {
+ // Normalized
+ e = e + bias;
+ f = f - pow(2, fbits);
+ }
+ } else {
+ // Denormalized
+ e = 0;
+ f = roundToEven(v / pow(2, 1 - bias - fbits));
+ }
+ }
+ // Pack sign, exponent, fraction
+ bits = [];
+ for(i = fbits; i; i -= 1){
+ bits.push(f % 2 ? 1 : 0);
+ f = floor(f / 2);
+ }
+ for(i = ebits; i; i -= 1){
+ bits.push(e % 2 ? 1 : 0);
+ e = floor(e / 2);
+ }
+ bits.push(s ? 1 : 0);
+ bits.reverse();
+ str = bits.join('');
+ // Bits to bytes
+ bytes = [];
+ while(str.length){
+ bytes.unshift(parseInt(str.slice(0, 8), 2));
+ str = str.slice(8);
+ }
+ return bytes;
+};
+var unpackIEEE754 = function(bytes, ebits, fbits){
+ var bits = []
+ , i, j, b, str, bias, s, e, f;
+ for(i = 0; i < bytes.length; ++i)for(b = bytes[i], j = 8; j; --j){
+ bits.push(b % 2 ? 1 : 0);
+ b = b >> 1;
+ }
+ bits.reverse();
+ str = bits.join('');
+ // Unpack sign, exponent, fraction
+ bias = (1 << ebits - 1) - 1;
+ s = parseInt(str.slice(0, 1), 2) ? -1 : 1;
+ e = parseInt(str.slice(1, 1 + ebits), 2);
+ f = parseInt(str.slice(1 + ebits), 2);
+ // Produce number
+ if(e === (1 << ebits) - 1)return f !== 0 ? NaN : s * Infinity;
+ // Normalized
+ else if(e > 0)return s * pow(2, e - bias) * (1 + f / pow(2, fbits));
+ // Denormalized
+ else if(f !== 0)return s * pow(2, -(bias - 1)) * (f / pow(2, fbits));
+ return s < 0 ? -0 : 0;
+};
+var unpackF64 = function(b){
+ return unpackIEEE754(b, 11, 52);
+};
+var packF64 = function(v){
+ return packIEEE754(v, 11, 52);
+};
+var unpackF32 = function(b){
+ return unpackIEEE754(b, 8, 23);
+};
+var packF32 = function(v){
+ return packIEEE754(v, 8, 23);
+};
+
+var addGetter = function(C, key, internal){
+ $.setDesc(C.prototype, key, {get: function(){ return this[internal]; }});
+};
+
+var get = function(view, bytes, index, conversion, isLittleEndian){
+ var numIndex = +index
+ , intIndex = toInteger(numIndex);
+ if(numIndex != intIndex || intIndex < 0 || intIndex + bytes > view._l)throw RangeError();
+ var store = view._b._b
+ , start = intIndex + view._o
+ , pack = store.slice(start, start + bytes);
+ isLittleEndian || pack.reverse();
+ return conversion(pack);
+};
+var set = function(view, bytes, index, conversion, value, isLittleEndian){
+ var numIndex = +index
+ , intIndex = toInteger(numIndex);
+ if(numIndex != intIndex || intIndex < 0 || intIndex + bytes > view._l)throw RangeError();
+ var store = view._b._b
+ , start = intIndex + view._o
+ , pack = conversion(+value);
+ isLittleEndian || pack.reverse();
+ for(var i = 0; i < bytes; i++)store[start + i] = pack[i];
+};
+
+if(!$typed.ABV){
+ $ArrayBuffer = function ArrayBuffer(length){
+ strictNew(this, $ArrayBuffer, 'ArrayBuffer');
+ var numberLength = +length
+ , byteLength = toLength(numberLength);
+ if(numberLength != byteLength)throw RangeError();
+ this._b = arrayFill.call(Array(byteLength), 0);
+ this._l = byteLength;
+ };
+ addGetter($ArrayBuffer, BYTE_LENGTH, '_l');
+
+ $DataView = function DataView(buffer, byteOffset, byteLength){
+ strictNew(this, $DataView, 'DataView');
+ if(!(buffer instanceof $ArrayBuffer))throw TypeError();
+ var bufferLength = buffer._l
+ , offset = toInteger(byteOffset);
+ if(offset < 0 || offset > bufferLength)throw RangeError();
+ byteLength = byteLength === undefined ? bufferLength - offset : toLength(byteLength);
+ if(offset + byteLength > bufferLength)throw RangeError();
+ this._b = buffer;
+ this._o = offset;
+ this._l = byteLength;
+ };
+ addGetter($DataView, 'buffer', '_b');
+ addGetter($DataView, BYTE_LENGTH, '_l');
+ addGetter($DataView, 'byteOffset', '_o');
+ redefineAll($DataView.prototype, {
+ getInt8: function getInt8(byteOffset){
+ return get(this, 1, byteOffset, unpackI8);
+ },
+ getUint8: function getUint8(byteOffset){
+ return get(this, 1, byteOffset, unpackU8);
+ },
+ getInt16: function getInt16(byteOffset /*, littleEndian */){
+ return get(this, 2, byteOffset, unpackI16, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ getUint16: function getUint16(byteOffset /*, littleEndian */){
+ return get(this, 2, byteOffset, unpackU16, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ getInt32: function getInt32(byteOffset /*, littleEndian */){
+ return get(this, 4, byteOffset, unpackI32, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ getUint32: function getUint32(byteOffset /*, littleEndian */){
+ return get(this, 4, byteOffset, unpackU32, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ getFloat32: function getFloat32(byteOffset /*, littleEndian */){
+ return get(this, 4, byteOffset, unpackF32, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ getFloat64: function getFloat64(byteOffset /*, littleEndian */){
+ return get(this, 8, byteOffset, unpackF64, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ setInt8: function setInt8(byteOffset, value){
+ return set(this, 1, byteOffset, packI8, value);
+ },
+ setUint8: function setUint8(byteOffset, value){
+ return set(this, 1, byteOffset, packU8, value);
+ },
+ setInt16: function setInt16(byteOffset, value /*, littleEndian */){
+ return set(this, 2, byteOffset, packI16, value, arguments.length > 2 ? arguments[2] : undefined);
+ },
+ setUint16: function setUint16(byteOffset, value /*, littleEndian */){
+ return set(this, 2, byteOffset, packU16, value, arguments.length > 2 ? arguments[2] : undefined);
+ },
+ setInt32: function setInt32(byteOffset, value /*, littleEndian */){
+ return set(this, 4, byteOffset, packI32, value, arguments.length > 2 ? arguments[2] : undefined);
+ },
+ setUint32: function setUint32(byteOffset, value /*, littleEndian */){
+ return set(this, 4, byteOffset, packU32, value, arguments.length > 2 ? arguments[2] : undefined);
+ },
+ setFloat32: function setFloat32(byteOffset, value /*, littleEndian */){
+ return set(this, 4, byteOffset, packF32, value, arguments.length > 2 ? arguments[2] : undefined);
+ },
+ setFloat64: function setFloat64(byteOffset, value /*, littleEndian */){
+ return set(this, 8, byteOffset, packF64, value, arguments.length > 2 ? arguments[2] : undefined);
+ }
+ });
+}
+require('./$.hide')($DataView.prototype, $typed.VIEW, true);
+module.exports = {
+ ArrayBuffer: $ArrayBuffer,
+ DataView: $DataView
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.classof.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.classof.js
new file mode 100644
index 00000000..905c61f7
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.classof.js
@@ -0,0 +1,16 @@
+// getting tag from 19.1.3.6 Object.prototype.toString()
+var cof = require('./$.cof')
+ , TAG = require('./$.wks')('toStringTag')
+ // ES3 wrong here
+ , ARG = cof(function(){ return arguments; }()) == 'Arguments';
+
+module.exports = function(it){
+ var O, T, B;
+ return it === undefined ? 'Undefined' : it === null ? 'Null'
+ // @@toStringTag case
+ : typeof (T = (O = Object(it))[TAG]) == 'string' ? T
+ // builtinTag case
+ : ARG ? cof(O)
+ // ES3 arguments fallback
+ : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.cof.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.cof.js
new file mode 100644
index 00000000..1dd2779a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.cof.js
@@ -0,0 +1,5 @@
+var toString = {}.toString;
+
+module.exports = function(it){
+ return toString.call(it).slice(8, -1);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.collection-strong.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.collection-strong.js
new file mode 100644
index 00000000..54df55a6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.collection-strong.js
@@ -0,0 +1,159 @@
+'use strict';
+var $ = require('./$')
+ , hide = require('./$.hide')
+ , redefineAll = require('./$.redefine-all')
+ , ctx = require('./$.ctx')
+ , strictNew = require('./$.strict-new')
+ , defined = require('./$.defined')
+ , forOf = require('./$.for-of')
+ , $iterDefine = require('./$.iter-define')
+ , step = require('./$.iter-step')
+ , ID = require('./$.uid')('id')
+ , $has = require('./$.has')
+ , isObject = require('./$.is-object')
+ , setSpecies = require('./$.set-species')
+ , DESCRIPTORS = require('./$.descriptors')
+ , isExtensible = Object.isExtensible || isObject
+ , SIZE = DESCRIPTORS ? '_s' : 'size'
+ , id = 0;
+
+var fastKey = function(it, create){
+ // return primitive with prefix
+ if(!isObject(it))return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
+ if(!$has(it, ID)){
+ // can't set id to frozen object
+ if(!isExtensible(it))return 'F';
+ // not necessary to add id
+ if(!create)return 'E';
+ // add missing object id
+ hide(it, ID, ++id);
+ // return object id with prefix
+ } return 'O' + it[ID];
+};
+
+var getEntry = function(that, key){
+ // fast case
+ var index = fastKey(key), entry;
+ if(index !== 'F')return that._i[index];
+ // frozen object case
+ for(entry = that._f; entry; entry = entry.n){
+ if(entry.k == key)return entry;
+ }
+};
+
+module.exports = {
+ getConstructor: function(wrapper, NAME, IS_MAP, ADDER){
+ var C = wrapper(function(that, iterable){
+ strictNew(that, C, NAME);
+ that._i = $.create(null); // index
+ that._f = undefined; // first entry
+ that._l = undefined; // last entry
+ that[SIZE] = 0; // size
+ if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);
+ });
+ redefineAll(C.prototype, {
+ // 23.1.3.1 Map.prototype.clear()
+ // 23.2.3.2 Set.prototype.clear()
+ clear: function clear(){
+ for(var that = this, data = that._i, entry = that._f; entry; entry = entry.n){
+ entry.r = true;
+ if(entry.p)entry.p = entry.p.n = undefined;
+ delete data[entry.i];
+ }
+ that._f = that._l = undefined;
+ that[SIZE] = 0;
+ },
+ // 23.1.3.3 Map.prototype.delete(key)
+ // 23.2.3.4 Set.prototype.delete(value)
+ 'delete': function(key){
+ var that = this
+ , entry = getEntry(that, key);
+ if(entry){
+ var next = entry.n
+ , prev = entry.p;
+ delete that._i[entry.i];
+ entry.r = true;
+ if(prev)prev.n = next;
+ if(next)next.p = prev;
+ if(that._f == entry)that._f = next;
+ if(that._l == entry)that._l = prev;
+ that[SIZE]--;
+ } return !!entry;
+ },
+ // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)
+ // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)
+ forEach: function forEach(callbackfn /*, that = undefined */){
+ var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3)
+ , entry;
+ while(entry = entry ? entry.n : this._f){
+ f(entry.v, entry.k, this);
+ // revert to the last existing entry
+ while(entry && entry.r)entry = entry.p;
+ }
+ },
+ // 23.1.3.7 Map.prototype.has(key)
+ // 23.2.3.7 Set.prototype.has(value)
+ has: function has(key){
+ return !!getEntry(this, key);
+ }
+ });
+ if(DESCRIPTORS)$.setDesc(C.prototype, 'size', {
+ get: function(){
+ return defined(this[SIZE]);
+ }
+ });
+ return C;
+ },
+ def: function(that, key, value){
+ var entry = getEntry(that, key)
+ , prev, index;
+ // change existing entry
+ if(entry){
+ entry.v = value;
+ // create new entry
+ } else {
+ that._l = entry = {
+ i: index = fastKey(key, true), // <- index
+ k: key, // <- key
+ v: value, // <- value
+ p: prev = that._l, // <- previous entry
+ n: undefined, // <- next entry
+ r: false // <- removed
+ };
+ if(!that._f)that._f = entry;
+ if(prev)prev.n = entry;
+ that[SIZE]++;
+ // add to index
+ if(index !== 'F')that._i[index] = entry;
+ } return that;
+ },
+ getEntry: getEntry,
+ setStrong: function(C, NAME, IS_MAP){
+ // add .keys, .values, .entries, [@@iterator]
+ // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11
+ $iterDefine(C, NAME, function(iterated, kind){
+ this._t = iterated; // target
+ this._k = kind; // kind
+ this._l = undefined; // previous
+ }, function(){
+ var that = this
+ , kind = that._k
+ , entry = that._l;
+ // revert to the last existing entry
+ while(entry && entry.r)entry = entry.p;
+ // get next entry
+ if(!that._t || !(that._l = entry = entry ? entry.n : that._t._f)){
+ // or finish the iteration
+ that._t = undefined;
+ return step(1);
+ }
+ // return step by kind
+ if(kind == 'keys' )return step(0, entry.k);
+ if(kind == 'values')return step(0, entry.v);
+ return step(0, [entry.k, entry.v]);
+ }, IS_MAP ? 'entries' : 'values' , !IS_MAP, true);
+
+ // add [@@species], 23.1.2.2, 23.2.2.2
+ setSpecies(NAME);
+ }
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.collection-to-json.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.collection-to-json.js
new file mode 100644
index 00000000..41f2e6ec
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.collection-to-json.js
@@ -0,0 +1,11 @@
+// https://github.com/DavidBruant/Map-Set.prototype.toJSON
+var forOf = require('./$.for-of')
+ , classof = require('./$.classof');
+module.exports = function(NAME){
+ return function toJSON(){
+ if(classof(this) != NAME)throw TypeError(NAME + "#toJSON isn't generic");
+ var arr = [];
+ forOf(this, false, arr.push, arr);
+ return arr;
+ };
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.collection-weak.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.collection-weak.js
new file mode 100644
index 00000000..384fb39d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.collection-weak.js
@@ -0,0 +1,86 @@
+'use strict';
+var hide = require('./$.hide')
+ , redefineAll = require('./$.redefine-all')
+ , anObject = require('./$.an-object')
+ , isObject = require('./$.is-object')
+ , strictNew = require('./$.strict-new')
+ , forOf = require('./$.for-of')
+ , createArrayMethod = require('./$.array-methods')
+ , $has = require('./$.has')
+ , WEAK = require('./$.uid')('weak')
+ , isExtensible = Object.isExtensible || isObject
+ , arrayFind = createArrayMethod(5)
+ , arrayFindIndex = createArrayMethod(6)
+ , id = 0;
+
+// fallback for frozen keys
+var frozenStore = function(that){
+ return that._l || (that._l = new FrozenStore);
+};
+var FrozenStore = function(){
+ this.a = [];
+};
+var findFrozen = function(store, key){
+ return arrayFind(store.a, function(it){
+ return it[0] === key;
+ });
+};
+FrozenStore.prototype = {
+ get: function(key){
+ var entry = findFrozen(this, key);
+ if(entry)return entry[1];
+ },
+ has: function(key){
+ return !!findFrozen(this, key);
+ },
+ set: function(key, value){
+ var entry = findFrozen(this, key);
+ if(entry)entry[1] = value;
+ else this.a.push([key, value]);
+ },
+ 'delete': function(key){
+ var index = arrayFindIndex(this.a, function(it){
+ return it[0] === key;
+ });
+ if(~index)this.a.splice(index, 1);
+ return !!~index;
+ }
+};
+
+module.exports = {
+ getConstructor: function(wrapper, NAME, IS_MAP, ADDER){
+ var C = wrapper(function(that, iterable){
+ strictNew(that, C, NAME);
+ that._i = id++; // collection id
+ that._l = undefined; // leak store for frozen objects
+ if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);
+ });
+ redefineAll(C.prototype, {
+ // 23.3.3.2 WeakMap.prototype.delete(key)
+ // 23.4.3.3 WeakSet.prototype.delete(value)
+ 'delete': function(key){
+ if(!isObject(key))return false;
+ if(!isExtensible(key))return frozenStore(this)['delete'](key);
+ return $has(key, WEAK) && $has(key[WEAK], this._i) && delete key[WEAK][this._i];
+ },
+ // 23.3.3.4 WeakMap.prototype.has(key)
+ // 23.4.3.4 WeakSet.prototype.has(value)
+ has: function has(key){
+ if(!isObject(key))return false;
+ if(!isExtensible(key))return frozenStore(this).has(key);
+ return $has(key, WEAK) && $has(key[WEAK], this._i);
+ }
+ });
+ return C;
+ },
+ def: function(that, key, value){
+ if(!isExtensible(anObject(key))){
+ frozenStore(that).set(key, value);
+ } else {
+ $has(key, WEAK) || hide(key, WEAK, {});
+ key[WEAK][that._i] = value;
+ } return that;
+ },
+ frozenStore: frozenStore,
+ WEAK: WEAK
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.collection.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.collection.js
new file mode 100644
index 00000000..61ae123d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.collection.js
@@ -0,0 +1,79 @@
+'use strict';
+var global = require('./$.global')
+ , $export = require('./$.export')
+ , redefine = require('./$.redefine')
+ , redefineAll = require('./$.redefine-all')
+ , forOf = require('./$.for-of')
+ , strictNew = require('./$.strict-new')
+ , isObject = require('./$.is-object')
+ , fails = require('./$.fails')
+ , $iterDetect = require('./$.iter-detect')
+ , setToStringTag = require('./$.set-to-string-tag');
+
+module.exports = function(NAME, wrapper, methods, common, IS_MAP, IS_WEAK){
+ var Base = global[NAME]
+ , C = Base
+ , ADDER = IS_MAP ? 'set' : 'add'
+ , proto = C && C.prototype
+ , O = {};
+ var fixMethod = function(KEY){
+ var fn = proto[KEY];
+ redefine(proto, KEY,
+ KEY == 'delete' ? function(a){
+ return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);
+ } : KEY == 'has' ? function has(a){
+ return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);
+ } : KEY == 'get' ? function get(a){
+ return IS_WEAK && !isObject(a) ? undefined : fn.call(this, a === 0 ? 0 : a);
+ } : KEY == 'add' ? function add(a){ fn.call(this, a === 0 ? 0 : a); return this; }
+ : function set(a, b){ fn.call(this, a === 0 ? 0 : a, b); return this; }
+ );
+ };
+ if(typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function(){
+ new C().entries().next();
+ }))){
+ // create collection constructor
+ C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);
+ redefineAll(C.prototype, methods);
+ } else {
+ var instance = new C
+ // early implementations not supports chaining
+ , HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) != instance
+ // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false
+ , THROWS_ON_PRIMITIVES = fails(function(){ instance.has(1); })
+ // most early implementations doesn't supports iterables, most modern - not close it correctly
+ , ACCEPT_ITERABLES = $iterDetect(function(iter){ new C(iter); }) // eslint-disable-line no-new
+ // for early implementations -0 and +0 not the same
+ , BUGGY_ZERO;
+ if(!ACCEPT_ITERABLES){
+ C = wrapper(function(target, iterable){
+ strictNew(target, C, NAME);
+ var that = new Base;
+ if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);
+ return that;
+ });
+ C.prototype = proto;
+ proto.constructor = C;
+ }
+ IS_WEAK || instance.forEach(function(val, key){
+ BUGGY_ZERO = 1 / key === -Infinity;
+ });
+ if(THROWS_ON_PRIMITIVES || BUGGY_ZERO){
+ fixMethod('delete');
+ fixMethod('has');
+ IS_MAP && fixMethod('get');
+ }
+ if(BUGGY_ZERO || HASNT_CHAINING)fixMethod(ADDER);
+ // weak collections should not contains .clear method
+ if(IS_WEAK && proto.clear)delete proto.clear;
+ }
+
+ setToStringTag(C, NAME);
+
+ O[NAME] = C;
+ $export($export.G + $export.W + $export.F * (C != Base), O);
+
+ if(!IS_WEAK)common.setStrong(C, NAME, IS_MAP);
+
+ return C;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.core.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.core.js
new file mode 100644
index 00000000..4e2a0b59
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.core.js
@@ -0,0 +1,2 @@
+var core = module.exports = {version: '1.2.6'};
+if(typeof __e == 'number')__e = core; // eslint-disable-line no-undef
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.ctx.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.ctx.js
new file mode 100644
index 00000000..d233574a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.ctx.js
@@ -0,0 +1,20 @@
+// optional / simple context binding
+var aFunction = require('./$.a-function');
+module.exports = function(fn, that, length){
+ aFunction(fn);
+ if(that === undefined)return fn;
+ switch(length){
+ case 1: return function(a){
+ return fn.call(that, a);
+ };
+ case 2: return function(a, b){
+ return fn.call(that, a, b);
+ };
+ case 3: return function(a, b, c){
+ return fn.call(that, a, b, c);
+ };
+ }
+ return function(/* ...args */){
+ return fn.apply(that, arguments);
+ };
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.defined.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.defined.js
new file mode 100644
index 00000000..cfa476b9
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.defined.js
@@ -0,0 +1,5 @@
+// 7.2.1 RequireObjectCoercible(argument)
+module.exports = function(it){
+ if(it == undefined)throw TypeError("Can't call method on " + it);
+ return it;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.descriptors.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.descriptors.js
new file mode 100644
index 00000000..9cd47b7d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.descriptors.js
@@ -0,0 +1,4 @@
+// Thank's IE8 for his funny defineProperty
+module.exports = !require('./$.fails')(function(){
+ return Object.defineProperty({}, 'a', {get: function(){ return 7; }}).a != 7;
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.dom-create.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.dom-create.js
new file mode 100644
index 00000000..240842d2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.dom-create.js
@@ -0,0 +1,7 @@
+var isObject = require('./$.is-object')
+ , document = require('./$.global').document
+ // in old IE typeof document.createElement is 'object'
+ , is = isObject(document) && isObject(document.createElement);
+module.exports = function(it){
+ return is ? document.createElement(it) : {};
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.enum-keys.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.enum-keys.js
new file mode 100644
index 00000000..06f7de7a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.enum-keys.js
@@ -0,0 +1,14 @@
+// all enumerable object keys, includes symbols
+var $ = require('./$');
+module.exports = function(it){
+ var keys = $.getKeys(it)
+ , getSymbols = $.getSymbols;
+ if(getSymbols){
+ var symbols = getSymbols(it)
+ , isEnum = $.isEnum
+ , i = 0
+ , key;
+ while(symbols.length > i)if(isEnum.call(it, key = symbols[i++]))keys.push(key);
+ }
+ return keys;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.export.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.export.js
new file mode 100644
index 00000000..5d4fea03
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.export.js
@@ -0,0 +1,41 @@
+var global = require('./$.global')
+ , core = require('./$.core')
+ , hide = require('./$.hide')
+ , redefine = require('./$.redefine')
+ , ctx = require('./$.ctx')
+ , PROTOTYPE = 'prototype';
+
+var $export = function(type, name, source){
+ var IS_FORCED = type & $export.F
+ , IS_GLOBAL = type & $export.G
+ , IS_STATIC = type & $export.S
+ , IS_PROTO = type & $export.P
+ , IS_BIND = type & $export.B
+ , target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE]
+ , exports = IS_GLOBAL ? core : core[name] || (core[name] = {})
+ , expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {})
+ , key, own, out, exp;
+ if(IS_GLOBAL)source = name;
+ for(key in source){
+ // contains in native
+ own = !IS_FORCED && target && key in target;
+ // export native or passed
+ out = (own ? target : source)[key];
+ // bind timers to global for call from export context
+ exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
+ // extend global
+ if(target && !own)redefine(target, key, out);
+ // export
+ if(exports[key] != out)hide(exports, key, exp);
+ if(IS_PROTO && expProto[key] != out)expProto[key] = out;
+ }
+};
+global.core = core;
+// type bitmap
+$export.F = 1; // forced
+$export.G = 2; // global
+$export.S = 4; // static
+$export.P = 8; // proto
+$export.B = 16; // bind
+$export.W = 32; // wrap
+module.exports = $export;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.fails-is-regexp.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.fails-is-regexp.js
new file mode 100644
index 00000000..c459a77a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.fails-is-regexp.js
@@ -0,0 +1,12 @@
+var MATCH = require('./$.wks')('match');
+module.exports = function(KEY){
+ var re = /./;
+ try {
+ '/./'[KEY](re);
+ } catch(e){
+ try {
+ re[MATCH] = false;
+ return !'/./'[KEY](re);
+ } catch(f){ /* empty */ }
+ } return true;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.fails.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.fails.js
new file mode 100644
index 00000000..184e5ea8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.fails.js
@@ -0,0 +1,7 @@
+module.exports = function(exec){
+ try {
+ return !!exec();
+ } catch(e){
+ return true;
+ }
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.fix-re-wks.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.fix-re-wks.js
new file mode 100644
index 00000000..3597a898
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.fix-re-wks.js
@@ -0,0 +1,26 @@
+'use strict';
+var hide = require('./$.hide')
+ , redefine = require('./$.redefine')
+ , fails = require('./$.fails')
+ , defined = require('./$.defined')
+ , wks = require('./$.wks');
+
+module.exports = function(KEY, length, exec){
+ var SYMBOL = wks(KEY)
+ , original = ''[KEY];
+ if(fails(function(){
+ var O = {};
+ O[SYMBOL] = function(){ return 7; };
+ return ''[KEY](O) != 7;
+ })){
+ redefine(String.prototype, KEY, exec(defined, SYMBOL, original));
+ hide(RegExp.prototype, SYMBOL, length == 2
+ // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)
+ // 21.2.5.11 RegExp.prototype[@@split](string, limit)
+ ? function(string, arg){ return original.call(string, this, arg); }
+ // 21.2.5.6 RegExp.prototype[@@match](string)
+ // 21.2.5.9 RegExp.prototype[@@search](string)
+ : function(string){ return original.call(string, this); }
+ );
+ }
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.flags.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.flags.js
new file mode 100644
index 00000000..fc20e5de
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.flags.js
@@ -0,0 +1,13 @@
+'use strict';
+// 21.2.5.3 get RegExp.prototype.flags
+var anObject = require('./$.an-object');
+module.exports = function(){
+ var that = anObject(this)
+ , result = '';
+ if(that.global) result += 'g';
+ if(that.ignoreCase) result += 'i';
+ if(that.multiline) result += 'm';
+ if(that.unicode) result += 'u';
+ if(that.sticky) result += 'y';
+ return result;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.for-of.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.for-of.js
new file mode 100644
index 00000000..0f2d8e97
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.for-of.js
@@ -0,0 +1,19 @@
+var ctx = require('./$.ctx')
+ , call = require('./$.iter-call')
+ , isArrayIter = require('./$.is-array-iter')
+ , anObject = require('./$.an-object')
+ , toLength = require('./$.to-length')
+ , getIterFn = require('./core.get-iterator-method');
+module.exports = function(iterable, entries, fn, that){
+ var iterFn = getIterFn(iterable)
+ , f = ctx(fn, that, entries ? 2 : 1)
+ , index = 0
+ , length, step, iterator;
+ if(typeof iterFn != 'function')throw TypeError(iterable + ' is not iterable!');
+ // fast case for arrays with default iterator
+ if(isArrayIter(iterFn))for(length = toLength(iterable.length); length > index; index++){
+ entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);
+ } else for(iterator = iterFn.call(iterable); !(step = iterator.next()).done; ){
+ call(iterator, f, step.value, entries);
+ }
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.get-names.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.get-names.js
new file mode 100644
index 00000000..28209714
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.get-names.js
@@ -0,0 +1,20 @@
+// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
+var toIObject = require('./$.to-iobject')
+ , getNames = require('./$').getNames
+ , toString = {}.toString;
+
+var windowNames = typeof window == 'object' && Object.getOwnPropertyNames
+ ? Object.getOwnPropertyNames(window) : [];
+
+var getWindowNames = function(it){
+ try {
+ return getNames(it);
+ } catch(e){
+ return windowNames.slice();
+ }
+};
+
+module.exports.get = function getOwnPropertyNames(it){
+ if(windowNames && toString.call(it) == '[object Window]')return getWindowNames(it);
+ return getNames(toIObject(it));
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.global.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.global.js
new file mode 100644
index 00000000..df6efb47
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.global.js
@@ -0,0 +1,4 @@
+// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
+var global = module.exports = typeof window != 'undefined' && window.Math == Math
+ ? window : typeof self != 'undefined' && self.Math == Math ? self : Function('return this')();
+if(typeof __g == 'number')__g = global; // eslint-disable-line no-undef
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.has.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.has.js
new file mode 100644
index 00000000..870b40e7
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.has.js
@@ -0,0 +1,4 @@
+var hasOwnProperty = {}.hasOwnProperty;
+module.exports = function(it, key){
+ return hasOwnProperty.call(it, key);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.hide.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.hide.js
new file mode 100644
index 00000000..ba025d81
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.hide.js
@@ -0,0 +1,8 @@
+var $ = require('./$')
+ , createDesc = require('./$.property-desc');
+module.exports = require('./$.descriptors') ? function(object, key, value){
+ return $.setDesc(object, key, createDesc(1, value));
+} : function(object, key, value){
+ object[key] = value;
+ return object;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.html.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.html.js
new file mode 100644
index 00000000..499bd2f3
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.html.js
@@ -0,0 +1 @@
+module.exports = require('./$.global').document && document.documentElement;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.invoke.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.invoke.js
new file mode 100644
index 00000000..08e307fd
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.invoke.js
@@ -0,0 +1,16 @@
+// fast apply, http://jsperf.lnkit.com/fast-apply/5
+module.exports = function(fn, args, that){
+ var un = that === undefined;
+ switch(args.length){
+ case 0: return un ? fn()
+ : fn.call(that);
+ case 1: return un ? fn(args[0])
+ : fn.call(that, args[0]);
+ case 2: return un ? fn(args[0], args[1])
+ : fn.call(that, args[0], args[1]);
+ case 3: return un ? fn(args[0], args[1], args[2])
+ : fn.call(that, args[0], args[1], args[2]);
+ case 4: return un ? fn(args[0], args[1], args[2], args[3])
+ : fn.call(that, args[0], args[1], args[2], args[3]);
+ } return fn.apply(that, args);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.iobject.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.iobject.js
new file mode 100644
index 00000000..cea38fab
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.iobject.js
@@ -0,0 +1,5 @@
+// fallback for non-array-like ES3 and non-enumerable old V8 strings
+var cof = require('./$.cof');
+module.exports = Object('z').propertyIsEnumerable(0) ? Object : function(it){
+ return cof(it) == 'String' ? it.split('') : Object(it);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.is-array-iter.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.is-array-iter.js
new file mode 100644
index 00000000..b6ef7017
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.is-array-iter.js
@@ -0,0 +1,8 @@
+// check on default Array iterator
+var Iterators = require('./$.iterators')
+ , ITERATOR = require('./$.wks')('iterator')
+ , ArrayProto = Array.prototype;
+
+module.exports = function(it){
+ return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.is-array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.is-array.js
new file mode 100644
index 00000000..8168b21c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.is-array.js
@@ -0,0 +1,5 @@
+// 7.2.2 IsArray(argument)
+var cof = require('./$.cof');
+module.exports = Array.isArray || function(arg){
+ return cof(arg) == 'Array';
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.is-integer.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.is-integer.js
new file mode 100644
index 00000000..b51e1317
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.is-integer.js
@@ -0,0 +1,6 @@
+// 20.1.2.3 Number.isInteger(number)
+var isObject = require('./$.is-object')
+ , floor = Math.floor;
+module.exports = function isInteger(it){
+ return !isObject(it) && isFinite(it) && floor(it) === it;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.is-object.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.is-object.js
new file mode 100644
index 00000000..ee694be2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.is-object.js
@@ -0,0 +1,3 @@
+module.exports = function(it){
+ return typeof it === 'object' ? it !== null : typeof it === 'function';
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.is-regexp.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.is-regexp.js
new file mode 100644
index 00000000..9ea2aad7
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.is-regexp.js
@@ -0,0 +1,8 @@
+// 7.2.8 IsRegExp(argument)
+var isObject = require('./$.is-object')
+ , cof = require('./$.cof')
+ , MATCH = require('./$.wks')('match');
+module.exports = function(it){
+ var isRegExp;
+ return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.iter-call.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.iter-call.js
new file mode 100644
index 00000000..e6b9d1b1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.iter-call.js
@@ -0,0 +1,12 @@
+// call something on iterator step with safe closing on error
+var anObject = require('./$.an-object');
+module.exports = function(iterator, fn, value, entries){
+ try {
+ return entries ? fn(anObject(value)[0], value[1]) : fn(value);
+ // 7.4.6 IteratorClose(iterator, completion)
+ } catch(e){
+ var ret = iterator['return'];
+ if(ret !== undefined)anObject(ret.call(iterator));
+ throw e;
+ }
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.iter-create.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.iter-create.js
new file mode 100644
index 00000000..adebcf9a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.iter-create.js
@@ -0,0 +1,13 @@
+'use strict';
+var $ = require('./$')
+ , descriptor = require('./$.property-desc')
+ , setToStringTag = require('./$.set-to-string-tag')
+ , IteratorPrototype = {};
+
+// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
+require('./$.hide')(IteratorPrototype, require('./$.wks')('iterator'), function(){ return this; });
+
+module.exports = function(Constructor, NAME, next){
+ Constructor.prototype = $.create(IteratorPrototype, {next: descriptor(1, next)});
+ setToStringTag(Constructor, NAME + ' Iterator');
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.iter-define.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.iter-define.js
new file mode 100644
index 00000000..630cdf38
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.iter-define.js
@@ -0,0 +1,66 @@
+'use strict';
+var LIBRARY = require('./$.library')
+ , $export = require('./$.export')
+ , redefine = require('./$.redefine')
+ , hide = require('./$.hide')
+ , has = require('./$.has')
+ , Iterators = require('./$.iterators')
+ , $iterCreate = require('./$.iter-create')
+ , setToStringTag = require('./$.set-to-string-tag')
+ , getProto = require('./$').getProto
+ , ITERATOR = require('./$.wks')('iterator')
+ , BUGGY = !([].keys && 'next' in [].keys()) // Safari has buggy iterators w/o `next`
+ , FF_ITERATOR = '@@iterator'
+ , KEYS = 'keys'
+ , VALUES = 'values';
+
+var returnThis = function(){ return this; };
+
+module.exports = function(Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED){
+ $iterCreate(Constructor, NAME, next);
+ var getMethod = function(kind){
+ if(!BUGGY && kind in proto)return proto[kind];
+ switch(kind){
+ case KEYS: return function keys(){ return new Constructor(this, kind); };
+ case VALUES: return function values(){ return new Constructor(this, kind); };
+ } return function entries(){ return new Constructor(this, kind); };
+ };
+ var TAG = NAME + ' Iterator'
+ , DEF_VALUES = DEFAULT == VALUES
+ , VALUES_BUG = false
+ , proto = Base.prototype
+ , $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT]
+ , $default = $native || getMethod(DEFAULT)
+ , methods, key;
+ // Fix native
+ if($native){
+ var IteratorPrototype = getProto($default.call(new Base));
+ // Set @@toStringTag to native iterators
+ setToStringTag(IteratorPrototype, TAG, true);
+ // FF fix
+ if(!LIBRARY && has(proto, FF_ITERATOR))hide(IteratorPrototype, ITERATOR, returnThis);
+ // fix Array#{values, @@iterator}.name in V8 / FF
+ if(DEF_VALUES && $native.name !== VALUES){
+ VALUES_BUG = true;
+ $default = function values(){ return $native.call(this); };
+ }
+ }
+ // Define iterator
+ if((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])){
+ hide(proto, ITERATOR, $default);
+ }
+ // Plug for library
+ Iterators[NAME] = $default;
+ Iterators[TAG] = returnThis;
+ if(DEFAULT){
+ methods = {
+ values: DEF_VALUES ? $default : getMethod(VALUES),
+ keys: IS_SET ? $default : getMethod(KEYS),
+ entries: !DEF_VALUES ? $default : getMethod('entries')
+ };
+ if(FORCED)for(key in methods){
+ if(!(key in proto))redefine(proto, key, methods[key]);
+ } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
+ }
+ return methods;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.iter-detect.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.iter-detect.js
new file mode 100644
index 00000000..bff5fffb
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.iter-detect.js
@@ -0,0 +1,21 @@
+var ITERATOR = require('./$.wks')('iterator')
+ , SAFE_CLOSING = false;
+
+try {
+ var riter = [7][ITERATOR]();
+ riter['return'] = function(){ SAFE_CLOSING = true; };
+ Array.from(riter, function(){ throw 2; });
+} catch(e){ /* empty */ }
+
+module.exports = function(exec, skipClosing){
+ if(!skipClosing && !SAFE_CLOSING)return false;
+ var safe = false;
+ try {
+ var arr = [7]
+ , iter = arr[ITERATOR]();
+ iter.next = function(){ return {done: safe = true}; };
+ arr[ITERATOR] = function(){ return iter; };
+ exec(arr);
+ } catch(e){ /* empty */ }
+ return safe;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.iter-step.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.iter-step.js
new file mode 100644
index 00000000..6ff0dc51
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.iter-step.js
@@ -0,0 +1,3 @@
+module.exports = function(done, value){
+ return {value: value, done: !!done};
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.iterators.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.iterators.js
new file mode 100644
index 00000000..a0995453
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.iterators.js
@@ -0,0 +1 @@
+module.exports = {};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.js
new file mode 100644
index 00000000..053bae48
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.js
@@ -0,0 +1,13 @@
+var $Object = Object;
+module.exports = {
+ create: $Object.create,
+ getProto: $Object.getPrototypeOf,
+ isEnum: {}.propertyIsEnumerable,
+ getDesc: $Object.getOwnPropertyDescriptor,
+ setDesc: $Object.defineProperty,
+ setDescs: $Object.defineProperties,
+ getKeys: $Object.keys,
+ getNames: $Object.getOwnPropertyNames,
+ getSymbols: $Object.getOwnPropertySymbols,
+ each: [].forEach
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.keyof.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.keyof.js
new file mode 100644
index 00000000..09d183a7
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.keyof.js
@@ -0,0 +1,10 @@
+var $ = require('./$')
+ , toIObject = require('./$.to-iobject');
+module.exports = function(object, el){
+ var O = toIObject(object)
+ , keys = $.getKeys(O)
+ , length = keys.length
+ , index = 0
+ , key;
+ while(length > index)if(O[key = keys[index++]] === el)return key;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.library.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.library.js
new file mode 100644
index 00000000..82e47dd5
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.library.js
@@ -0,0 +1 @@
+module.exports = false;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.math-expm1.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.math-expm1.js
new file mode 100644
index 00000000..9d91be93
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.math-expm1.js
@@ -0,0 +1,4 @@
+// 20.2.2.14 Math.expm1(x)
+module.exports = Math.expm1 || function expm1(x){
+ return (x = +x) == 0 ? x : x > -1e-6 && x < 1e-6 ? x + x * x / 2 : Math.exp(x) - 1;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.math-log1p.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.math-log1p.js
new file mode 100644
index 00000000..a92bf463
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.math-log1p.js
@@ -0,0 +1,4 @@
+// 20.2.2.20 Math.log1p(x)
+module.exports = Math.log1p || function log1p(x){
+ return (x = +x) > -1e-8 && x < 1e-8 ? x - x * x / 2 : Math.log(1 + x);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.math-sign.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.math-sign.js
new file mode 100644
index 00000000..a4848df6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.math-sign.js
@@ -0,0 +1,4 @@
+// 20.2.2.28 Math.sign(x)
+module.exports = Math.sign || function sign(x){
+ return (x = +x) == 0 || x != x ? x : x < 0 ? -1 : 1;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.microtask.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.microtask.js
new file mode 100644
index 00000000..1f9ebeb5
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.microtask.js
@@ -0,0 +1,64 @@
+var global = require('./$.global')
+ , macrotask = require('./$.task').set
+ , Observer = global.MutationObserver || global.WebKitMutationObserver
+ , process = global.process
+ , Promise = global.Promise
+ , isNode = require('./$.cof')(process) == 'process'
+ , head, last, notify;
+
+var flush = function(){
+ var parent, domain, fn;
+ if(isNode && (parent = process.domain)){
+ process.domain = null;
+ parent.exit();
+ }
+ while(head){
+ domain = head.domain;
+ fn = head.fn;
+ if(domain)domain.enter();
+ fn(); // <- currently we use it only for Promise - try / catch not required
+ if(domain)domain.exit();
+ head = head.next;
+ } last = undefined;
+ if(parent)parent.enter();
+};
+
+// Node.js
+if(isNode){
+ notify = function(){
+ process.nextTick(flush);
+ };
+// browsers with MutationObserver
+} else if(Observer){
+ var toggle = 1
+ , node = document.createTextNode('');
+ new Observer(flush).observe(node, {characterData: true}); // eslint-disable-line no-new
+ notify = function(){
+ node.data = toggle = -toggle;
+ };
+// environments with maybe non-completely correct, but existent Promise
+} else if(Promise && Promise.resolve){
+ notify = function(){
+ Promise.resolve().then(flush);
+ };
+// for other environments - macrotask based on:
+// - setImmediate
+// - MessageChannel
+// - window.postMessag
+// - onreadystatechange
+// - setTimeout
+} else {
+ notify = function(){
+ // strange IE + webpack dev server bug - use .call(global)
+ macrotask.call(global, flush);
+ };
+}
+
+module.exports = function asap(fn){
+ var task = {fn: fn, next: undefined, domain: isNode && process.domain};
+ if(last)last.next = task;
+ if(!head){
+ head = task;
+ notify();
+ } last = task;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.object-assign.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.object-assign.js
new file mode 100644
index 00000000..5ce43f78
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.object-assign.js
@@ -0,0 +1,33 @@
+// 19.1.2.1 Object.assign(target, source, ...)
+var $ = require('./$')
+ , toObject = require('./$.to-object')
+ , IObject = require('./$.iobject');
+
+// should work with symbols and should have deterministic property order (V8 bug)
+module.exports = require('./$.fails')(function(){
+ var a = Object.assign
+ , A = {}
+ , B = {}
+ , S = Symbol()
+ , K = 'abcdefghijklmnopqrst';
+ A[S] = 7;
+ K.split('').forEach(function(k){ B[k] = k; });
+ return a({}, A)[S] != 7 || Object.keys(a({}, B)).join('') != K;
+}) ? function assign(target, source){ // eslint-disable-line no-unused-vars
+ var T = toObject(target)
+ , $$ = arguments
+ , $$len = $$.length
+ , index = 1
+ , getKeys = $.getKeys
+ , getSymbols = $.getSymbols
+ , isEnum = $.isEnum;
+ while($$len > index){
+ var S = IObject($$[index++])
+ , keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S)
+ , length = keys.length
+ , j = 0
+ , key;
+ while(length > j)if(isEnum.call(S, key = keys[j++]))T[key] = S[key];
+ }
+ return T;
+} : Object.assign;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.object-define.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.object-define.js
new file mode 100644
index 00000000..2fff248f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.object-define.js
@@ -0,0 +1,11 @@
+var $ = require('./$')
+ , ownKeys = require('./$.own-keys')
+ , toIObject = require('./$.to-iobject');
+
+module.exports = function define(target, mixin){
+ var keys = ownKeys(toIObject(mixin))
+ , length = keys.length
+ , i = 0, key;
+ while(length > i)$.setDesc(target, key = keys[i++], $.getDesc(mixin, key));
+ return target;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.object-sap.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.object-sap.js
new file mode 100644
index 00000000..5fa7288a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.object-sap.js
@@ -0,0 +1,10 @@
+// most Object methods by ES6 should accept primitives
+var $export = require('./$.export')
+ , core = require('./$.core')
+ , fails = require('./$.fails');
+module.exports = function(KEY, exec){
+ var fn = (core.Object || {})[KEY] || Object[KEY]
+ , exp = {};
+ exp[KEY] = exec(fn);
+ $export($export.S + $export.F * fails(function(){ fn(1); }), 'Object', exp);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.object-to-array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.object-to-array.js
new file mode 100644
index 00000000..d46425ba
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.object-to-array.js
@@ -0,0 +1,16 @@
+var $ = require('./$')
+ , toIObject = require('./$.to-iobject')
+ , isEnum = $.isEnum;
+module.exports = function(isEntries){
+ return function(it){
+ var O = toIObject(it)
+ , keys = $.getKeys(O)
+ , length = keys.length
+ , i = 0
+ , result = []
+ , key;
+ while(length > i)if(isEnum.call(O, key = keys[i++])){
+ result.push(isEntries ? [key, O[key]] : O[key]);
+ } return result;
+ };
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.own-keys.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.own-keys.js
new file mode 100644
index 00000000..0218c4bd
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.own-keys.js
@@ -0,0 +1,9 @@
+// all object keys, includes non-enumerable and symbols
+var $ = require('./$')
+ , anObject = require('./$.an-object')
+ , Reflect = require('./$.global').Reflect;
+module.exports = Reflect && Reflect.ownKeys || function ownKeys(it){
+ var keys = $.getNames(anObject(it))
+ , getSymbols = $.getSymbols;
+ return getSymbols ? keys.concat(getSymbols(it)) : keys;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.partial.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.partial.js
new file mode 100644
index 00000000..53f97aa9
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.partial.js
@@ -0,0 +1,24 @@
+'use strict';
+var path = require('./$.path')
+ , invoke = require('./$.invoke')
+ , aFunction = require('./$.a-function');
+module.exports = function(/* ...pargs */){
+ var fn = aFunction(this)
+ , length = arguments.length
+ , pargs = Array(length)
+ , i = 0
+ , _ = path._
+ , holder = false;
+ while(length > i)if((pargs[i] = arguments[i++]) === _)holder = true;
+ return function(/* ...args */){
+ var that = this
+ , $$ = arguments
+ , $$len = $$.length
+ , j = 0, k = 0, args;
+ if(!holder && !$$len)return invoke(fn, pargs, that);
+ args = pargs.slice();
+ if(holder)for(;length > j; j++)if(args[j] === _)args[j] = $$[k++];
+ while($$len > k)args.push($$[k++]);
+ return invoke(fn, args, that);
+ };
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.path.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.path.js
new file mode 100644
index 00000000..11ff15eb
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.path.js
@@ -0,0 +1 @@
+module.exports = require('./$.global');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.property-desc.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.property-desc.js
new file mode 100644
index 00000000..e3f7ab2d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.property-desc.js
@@ -0,0 +1,8 @@
+module.exports = function(bitmap, value){
+ return {
+ enumerable : !(bitmap & 1),
+ configurable: !(bitmap & 2),
+ writable : !(bitmap & 4),
+ value : value
+ };
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.redefine-all.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.redefine-all.js
new file mode 100644
index 00000000..01fe55ba
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.redefine-all.js
@@ -0,0 +1,5 @@
+var redefine = require('./$.redefine');
+module.exports = function(target, src){
+ for(var key in src)redefine(target, key, src[key]);
+ return target;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.redefine.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.redefine.js
new file mode 100644
index 00000000..1783e3a5
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.redefine.js
@@ -0,0 +1,27 @@
+// add fake Function#toString
+// for correct work wrapped methods / constructors with methods like LoDash isNative
+var global = require('./$.global')
+ , hide = require('./$.hide')
+ , SRC = require('./$.uid')('src')
+ , TO_STRING = 'toString'
+ , $toString = Function[TO_STRING]
+ , TPL = ('' + $toString).split(TO_STRING);
+
+require('./$.core').inspectSource = function(it){
+ return $toString.call(it);
+};
+
+(module.exports = function(O, key, val, safe){
+ if(typeof val == 'function'){
+ val.hasOwnProperty(SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));
+ val.hasOwnProperty('name') || hide(val, 'name', key);
+ }
+ if(O === global){
+ O[key] = val;
+ } else {
+ if(!safe)delete O[key];
+ hide(O, key, val);
+ }
+})(Function.prototype, TO_STRING, function toString(){
+ return typeof this == 'function' && this[SRC] || $toString.call(this);
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.replacer.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.replacer.js
new file mode 100644
index 00000000..5360a3d3
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.replacer.js
@@ -0,0 +1,8 @@
+module.exports = function(regExp, replace){
+ var replacer = replace === Object(replace) ? function(part){
+ return replace[part];
+ } : replace;
+ return function(it){
+ return String(it).replace(regExp, replacer);
+ };
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.same-value.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.same-value.js
new file mode 100644
index 00000000..8c2b8c7f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.same-value.js
@@ -0,0 +1,4 @@
+// 7.2.9 SameValue(x, y)
+module.exports = Object.is || function is(x, y){
+ return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.set-proto.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.set-proto.js
new file mode 100644
index 00000000..b1edd681
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.set-proto.js
@@ -0,0 +1,26 @@
+// Works with __proto__ only. Old v8 can't work with null proto objects.
+/* eslint-disable no-proto */
+var getDesc = require('./$').getDesc
+ , isObject = require('./$.is-object')
+ , anObject = require('./$.an-object');
+var check = function(O, proto){
+ anObject(O);
+ if(!isObject(proto) && proto !== null)throw TypeError(proto + ": can't set as prototype!");
+};
+module.exports = {
+ set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
+ function(test, buggy, set){
+ try {
+ set = require('./$.ctx')(Function.call, getDesc(Object.prototype, '__proto__').set, 2);
+ set(test, []);
+ buggy = !(test instanceof Array);
+ } catch(e){ buggy = true; }
+ return function setPrototypeOf(O, proto){
+ check(O, proto);
+ if(buggy)O.__proto__ = proto;
+ else set(O, proto);
+ return O;
+ };
+ }({}, false) : undefined),
+ check: check
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.set-species.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.set-species.js
new file mode 100644
index 00000000..b1d04c6b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.set-species.js
@@ -0,0 +1,13 @@
+'use strict';
+var global = require('./$.global')
+ , $ = require('./$')
+ , DESCRIPTORS = require('./$.descriptors')
+ , SPECIES = require('./$.wks')('species');
+
+module.exports = function(KEY){
+ var C = global[KEY];
+ if(DESCRIPTORS && C && !C[SPECIES])$.setDesc(C, SPECIES, {
+ configurable: true,
+ get: function(){ return this; }
+ });
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.set-to-string-tag.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.set-to-string-tag.js
new file mode 100644
index 00000000..22b34244
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.set-to-string-tag.js
@@ -0,0 +1,7 @@
+var def = require('./$').setDesc
+ , has = require('./$.has')
+ , TAG = require('./$.wks')('toStringTag');
+
+module.exports = function(it, tag, stat){
+ if(it && !has(it = stat ? it : it.prototype, TAG))def(it, TAG, {configurable: true, value: tag});
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.shared.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.shared.js
new file mode 100644
index 00000000..8dea827a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.shared.js
@@ -0,0 +1,6 @@
+var global = require('./$.global')
+ , SHARED = '__core-js_shared__'
+ , store = global[SHARED] || (global[SHARED] = {});
+module.exports = function(key){
+ return store[key] || (store[key] = {});
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.species-constructor.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.species-constructor.js
new file mode 100644
index 00000000..f71168b7
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.species-constructor.js
@@ -0,0 +1,8 @@
+// 7.3.20 SpeciesConstructor(O, defaultConstructor)
+var anObject = require('./$.an-object')
+ , aFunction = require('./$.a-function')
+ , SPECIES = require('./$.wks')('species');
+module.exports = function(O, D){
+ var C = anObject(O).constructor, S;
+ return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.strict-new.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.strict-new.js
new file mode 100644
index 00000000..8bab9ed1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.strict-new.js
@@ -0,0 +1,4 @@
+module.exports = function(it, Constructor, name){
+ if(!(it instanceof Constructor))throw TypeError(name + ": use the 'new' operator!");
+ return it;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.string-at.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.string-at.js
new file mode 100644
index 00000000..3d344bba
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.string-at.js
@@ -0,0 +1,17 @@
+var toInteger = require('./$.to-integer')
+ , defined = require('./$.defined');
+// true -> String#at
+// false -> String#codePointAt
+module.exports = function(TO_STRING){
+ return function(that, pos){
+ var s = String(defined(that))
+ , i = toInteger(pos)
+ , l = s.length
+ , a, b;
+ if(i < 0 || i >= l)return TO_STRING ? '' : undefined;
+ a = s.charCodeAt(i);
+ return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
+ ? TO_STRING ? s.charAt(i) : a
+ : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
+ };
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.string-context.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.string-context.js
new file mode 100644
index 00000000..d6485a43
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.string-context.js
@@ -0,0 +1,8 @@
+// helper for String#{startsWith, endsWith, includes}
+var isRegExp = require('./$.is-regexp')
+ , defined = require('./$.defined');
+
+module.exports = function(that, searchString, NAME){
+ if(isRegExp(searchString))throw TypeError('String#' + NAME + " doesn't accept regex!");
+ return String(defined(that));
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.string-pad.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.string-pad.js
new file mode 100644
index 00000000..f0507d93
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.string-pad.js
@@ -0,0 +1,17 @@
+// https://github.com/ljharb/proposal-string-pad-left-right
+var toLength = require('./$.to-length')
+ , repeat = require('./$.string-repeat')
+ , defined = require('./$.defined');
+
+module.exports = function(that, maxLength, fillString, left){
+ var S = String(defined(that))
+ , stringLength = S.length
+ , fillStr = fillString === undefined ? ' ' : String(fillString)
+ , intMaxLength = toLength(maxLength);
+ if(intMaxLength <= stringLength)return S;
+ if(fillStr == '')fillStr = ' ';
+ var fillLen = intMaxLength - stringLength
+ , stringFiller = repeat.call(fillStr, Math.ceil(fillLen / fillStr.length));
+ if(stringFiller.length > fillLen)stringFiller = stringFiller.slice(0, fillLen);
+ return left ? stringFiller + S : S + stringFiller;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.string-repeat.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.string-repeat.js
new file mode 100644
index 00000000..491d0853
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.string-repeat.js
@@ -0,0 +1,12 @@
+'use strict';
+var toInteger = require('./$.to-integer')
+ , defined = require('./$.defined');
+
+module.exports = function repeat(count){
+ var str = String(defined(this))
+ , res = ''
+ , n = toInteger(count);
+ if(n < 0 || n == Infinity)throw RangeError("Count can't be negative");
+ for(;n > 0; (n >>>= 1) && (str += str))if(n & 1)res += str;
+ return res;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.string-trim.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.string-trim.js
new file mode 100644
index 00000000..04423f4d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.string-trim.js
@@ -0,0 +1,29 @@
+var $export = require('./$.export')
+ , defined = require('./$.defined')
+ , fails = require('./$.fails')
+ , spaces = '\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003' +
+ '\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF'
+ , space = '[' + spaces + ']'
+ , non = '\u200b\u0085'
+ , ltrim = RegExp('^' + space + space + '*')
+ , rtrim = RegExp(space + space + '*$');
+
+var exporter = function(KEY, exec){
+ var exp = {};
+ exp[KEY] = exec(trim);
+ $export($export.P + $export.F * fails(function(){
+ return !!spaces[KEY]() || non[KEY]() != non;
+ }), 'String', exp);
+};
+
+// 1 -> String#trimLeft
+// 2 -> String#trimRight
+// 3 -> String#trim
+var trim = exporter.trim = function(string, TYPE){
+ string = String(defined(string));
+ if(TYPE & 1)string = string.replace(ltrim, '');
+ if(TYPE & 2)string = string.replace(rtrim, '');
+ return string;
+};
+
+module.exports = exporter;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.task.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.task.js
new file mode 100644
index 00000000..5d7759e6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.task.js
@@ -0,0 +1,75 @@
+var ctx = require('./$.ctx')
+ , invoke = require('./$.invoke')
+ , html = require('./$.html')
+ , cel = require('./$.dom-create')
+ , global = require('./$.global')
+ , process = global.process
+ , setTask = global.setImmediate
+ , clearTask = global.clearImmediate
+ , MessageChannel = global.MessageChannel
+ , counter = 0
+ , queue = {}
+ , ONREADYSTATECHANGE = 'onreadystatechange'
+ , defer, channel, port;
+var run = function(){
+ var id = +this;
+ if(queue.hasOwnProperty(id)){
+ var fn = queue[id];
+ delete queue[id];
+ fn();
+ }
+};
+var listner = function(event){
+ run.call(event.data);
+};
+// Node.js 0.9+ & IE10+ has setImmediate, otherwise:
+if(!setTask || !clearTask){
+ setTask = function setImmediate(fn){
+ var args = [], i = 1;
+ while(arguments.length > i)args.push(arguments[i++]);
+ queue[++counter] = function(){
+ invoke(typeof fn == 'function' ? fn : Function(fn), args);
+ };
+ defer(counter);
+ return counter;
+ };
+ clearTask = function clearImmediate(id){
+ delete queue[id];
+ };
+ // Node.js 0.8-
+ if(require('./$.cof')(process) == 'process'){
+ defer = function(id){
+ process.nextTick(ctx(run, id, 1));
+ };
+ // Browsers with MessageChannel, includes WebWorkers
+ } else if(MessageChannel){
+ channel = new MessageChannel;
+ port = channel.port2;
+ channel.port1.onmessage = listner;
+ defer = ctx(port.postMessage, port, 1);
+ // Browsers with postMessage, skip WebWorkers
+ // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'
+ } else if(global.addEventListener && typeof postMessage == 'function' && !global.importScripts){
+ defer = function(id){
+ global.postMessage(id + '', '*');
+ };
+ global.addEventListener('message', listner, false);
+ // IE8-
+ } else if(ONREADYSTATECHANGE in cel('script')){
+ defer = function(id){
+ html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function(){
+ html.removeChild(this);
+ run.call(id);
+ };
+ };
+ // Rest old browsers
+ } else {
+ defer = function(id){
+ setTimeout(ctx(run, id, 1), 0);
+ };
+ }
+}
+module.exports = {
+ set: setTask,
+ clear: clearTask
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.to-index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.to-index.js
new file mode 100644
index 00000000..9346a8ff
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.to-index.js
@@ -0,0 +1,7 @@
+var toInteger = require('./$.to-integer')
+ , max = Math.max
+ , min = Math.min;
+module.exports = function(index, length){
+ index = toInteger(index);
+ return index < 0 ? max(index + length, 0) : min(index, length);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.to-integer.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.to-integer.js
new file mode 100644
index 00000000..f63baaff
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.to-integer.js
@@ -0,0 +1,6 @@
+// 7.1.4 ToInteger
+var ceil = Math.ceil
+ , floor = Math.floor;
+module.exports = function(it){
+ return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.to-iobject.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.to-iobject.js
new file mode 100644
index 00000000..fcf54c82
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.to-iobject.js
@@ -0,0 +1,6 @@
+// to indexed object, toObject with fallback for non-array-like ES3 strings
+var IObject = require('./$.iobject')
+ , defined = require('./$.defined');
+module.exports = function(it){
+ return IObject(defined(it));
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.to-length.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.to-length.js
new file mode 100644
index 00000000..0e15b1b8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.to-length.js
@@ -0,0 +1,6 @@
+// 7.1.15 ToLength
+var toInteger = require('./$.to-integer')
+ , min = Math.min;
+module.exports = function(it){
+ return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.to-object.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.to-object.js
new file mode 100644
index 00000000..2c57a29f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.to-object.js
@@ -0,0 +1,5 @@
+// 7.1.13 ToObject(argument)
+var defined = require('./$.defined');
+module.exports = function(it){
+ return Object(defined(it));
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.to-primitive.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.to-primitive.js
new file mode 100644
index 00000000..6fb4585a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.to-primitive.js
@@ -0,0 +1,12 @@
+// 7.1.1 ToPrimitive(input [, PreferredType])
+var isObject = require('./$.is-object');
+// instead of the ES6 spec version, we didn't implement @@toPrimitive case
+// and the second argument - flag - preferred type is a string
+module.exports = function(it, S){
+ if(!isObject(it))return it;
+ var fn, val;
+ if(S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it)))return val;
+ if(typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it)))return val;
+ if(!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it)))return val;
+ throw TypeError("Can't convert object to primitive value");
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.typed-array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.typed-array.js
new file mode 100644
index 00000000..1bd5cf0e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.typed-array.js
@@ -0,0 +1,365 @@
+'use strict';
+if(require('./$.descriptors')){
+ var LIBRARY = require('./$.library')
+ , global = require('./$.global')
+ , $ = require('./$')
+ , fails = require('./$.fails')
+ , $export = require('./$.export')
+ , $typed = require('./$.typed')
+ , $buffer = require('./$.buffer')
+ , ctx = require('./$.ctx')
+ , strictNew = require('./$.strict-new')
+ , propertyDesc = require('./$.property-desc')
+ , hide = require('./$.hide')
+ , redefineAll = require('./$.redefine-all')
+ , isInteger = require('./$.is-integer')
+ , toInteger = require('./$.to-integer')
+ , toLength = require('./$.to-length')
+ , toIndex = require('./$.to-index')
+ , toPrimitive = require('./$.to-primitive')
+ , isObject = require('./$.is-object')
+ , toObject = require('./$.to-object')
+ , isArrayIter = require('./$.is-array-iter')
+ , isIterable = require('./core.is-iterable')
+ , getIterFn = require('./core.get-iterator-method')
+ , wks = require('./$.wks')
+ , createArrayMethod = require('./$.array-methods')
+ , createArrayIncludes = require('./$.array-includes')
+ , speciesConstructor = require('./$.species-constructor')
+ , ArrayIterators = require('./es6.array.iterator')
+ , Iterators = require('./$.iterators')
+ , $iterDetect = require('./$.iter-detect')
+ , setSpecies = require('./$.set-species')
+ , arrayFill = require('./$.array-fill')
+ , arrayCopyWithin = require('./$.array-copy-within')
+ , ArrayProto = Array.prototype
+ , $ArrayBuffer = $buffer.ArrayBuffer
+ , $DataView = $buffer.DataView
+ , setDesc = $.setDesc
+ , getDesc = $.getDesc
+ , arrayForEach = createArrayMethod(0)
+ , arrayMap = createArrayMethod(1)
+ , arrayFilter = createArrayMethod(2)
+ , arraySome = createArrayMethod(3)
+ , arrayEvery = createArrayMethod(4)
+ , arrayFind = createArrayMethod(5)
+ , arrayFindIndex = createArrayMethod(6)
+ , arrayIncludes = createArrayIncludes(true)
+ , arrayIndexOf = createArrayIncludes(false)
+ , arrayValues = ArrayIterators.values
+ , arrayKeys = ArrayIterators.keys
+ , arrayEntries = ArrayIterators.entries
+ , arrayLastIndexOf = ArrayProto.lastIndexOf
+ , arrayReduce = ArrayProto.reduce
+ , arrayReduceRight = ArrayProto.reduceRight
+ , arrayJoin = ArrayProto.join
+ , arrayReverse = ArrayProto.reverse
+ , arraySort = ArrayProto.sort
+ , arraySlice = ArrayProto.slice
+ , arrayToString = ArrayProto.toString
+ , arrayToLocaleString = ArrayProto.toLocaleString
+ , ITERATOR = wks('iterator')
+ , TAG = wks('toStringTag')
+ , TYPED_CONSTRUCTOR = wks('typed_constructor')
+ , DEF_CONSTRUCTOR = wks('def_constructor')
+ , ALL_ARRAYS = $typed.ARRAYS
+ , TYPED_ARRAY = $typed.TYPED
+ , VIEW = $typed.VIEW
+ , BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT';
+
+ var LITTLE_ENDIAN = fails(function(){
+ return new Uint8Array(new Uint16Array([1]).buffer)[0] === 1;
+ });
+
+ var validate = function(it){
+ if(isObject(it) && TYPED_ARRAY in it)return it;
+ throw TypeError(it + ' is not a typed array!');
+ };
+
+ var fromList = function(O, list){
+ var index = 0
+ , length = list.length
+ , result = allocate(speciesConstructor(O, O[DEF_CONSTRUCTOR]), length);
+ while(length > index)result[index] = list[index++];
+ return result;
+ };
+
+ var allocate = function(C, length){
+ if(!(isObject(C) && TYPED_CONSTRUCTOR in C)){
+ throw TypeError('It is not a typed array constructor!');
+ } return new C(length);
+ };
+
+ var $from = function from(source /*, mapfn, thisArg */){
+ var O = toObject(source)
+ , $$ = arguments
+ , $$len = $$.length
+ , mapfn = $$len > 1 ? $$[1] : undefined
+ , mapping = mapfn !== undefined
+ , iterFn = getIterFn(O)
+ , i, length, values, result, step, iterator;
+ if(iterFn != undefined && !isArrayIter(iterFn)){
+ for(iterator = iterFn.call(O), values = [], i = 0; !(step = iterator.next()).done; i++){
+ values.push(step.value);
+ } O = values;
+ }
+ if(mapping && $$len > 2)mapfn = ctx(mapfn, $$[2], 2);
+ for(i = 0, length = toLength(O.length), result = allocate(this, length); length > i; i++){
+ result[i] = mapping ? mapfn(O[i], i) : O[i];
+ }
+ return result;
+ };
+
+ var addGetter = function(C, key, internal){
+ setDesc(C.prototype, key, {get: function(){ return this._d[internal]; }});
+ };
+
+ var $of = function of(/*...items*/){
+ var index = 0
+ , length = arguments.length
+ , result = allocate(this, length);
+ while(length > index)result[index] = arguments[index++];
+ return result;
+ };
+ var $toLocaleString = function toLocaleString(){
+ return arrayToLocaleString.apply(validate(this), arguments);
+ };
+
+ var proto = {
+ copyWithin: function copyWithin(target, start /*, end */){
+ return arrayCopyWithin.call(validate(this), target, start, arguments.length > 2 ? arguments[2] : undefined);
+ },
+ every: function every(callbackfn /*, thisArg */){
+ return arrayEvery(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ fill: function fill(value /*, start, end */){ // eslint-disable-line no-unused-vars
+ return arrayFill.apply(validate(this), arguments);
+ },
+ filter: function filter(callbackfn /*, thisArg */){
+ return fromList(this, arrayFilter(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined));
+ },
+ find: function find(predicate /*, thisArg */){
+ return arrayFind(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ findIndex: function findIndex(predicate /*, thisArg */){
+ return arrayFindIndex(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ forEach: function forEach(callbackfn /*, thisArg */){
+ arrayForEach(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ indexOf: function indexOf(searchElement /*, fromIndex */){
+ return arrayIndexOf(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ includes: function includes(searchElement /*, fromIndex */){
+ return arrayIncludes(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ join: function join(separator){ // eslint-disable-line no-unused-vars
+ return arrayJoin.apply(validate(this), arguments);
+ },
+ lastIndexOf: function lastIndexOf(searchElement /*, fromIndex */){ // eslint-disable-line no-unused-vars
+ return arrayLastIndexOf.apply(validate(this), arguments);
+ },
+ map: function map(mapfn /*, thisArg */){
+ return fromList(this, arrayMap(validate(this), mapfn, arguments.length > 1 ? arguments[1] : undefined)); // TODO
+ },
+ reduce: function reduce(callbackfn /*, initialValue */){ // eslint-disable-line no-unused-vars
+ return arrayReduce.apply(validate(this), arguments);
+ },
+ reduceRight: function reduceRight(callbackfn /*, initialValue */){ // eslint-disable-line no-unused-vars
+ return arrayReduceRight.apply(validate(this), arguments);
+ },
+ reverse: function reverse(){
+ return arrayReverse.call(validate(this));
+ },
+ set: function set(arrayLike /*, offset */){
+ validate(this);
+ var offset = toInteger(arguments.length > 1 ? arguments[1] : undefined);
+ if(offset < 0)throw RangeError();
+ var length = this.length;
+ var src = toObject(arrayLike);
+ var index = 0;
+ var len = toLength(src.length);
+ if(len + offset > length)throw RangeError();
+ while(index < len)this[offset + index] = src[index++];
+ },
+ slice: function slice(start, end){
+ return fromList(this, arraySlice.call(validate(this), start, end)); // TODO
+ },
+ some: function some(callbackfn /*, thisArg */){
+ return arraySome(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+ },
+ sort: function sort(comparefn){
+ return arraySort.call(validate(this), comparefn);
+ },
+ subarray: function subarray(begin, end){
+ var O = validate(this)
+ , length = O.length
+ , $begin = toIndex(begin, length);
+ return new (speciesConstructor(O, O[DEF_CONSTRUCTOR]))(
+ O.buffer,
+ O.byteOffset + $begin * O.BYTES_PER_ELEMENT,
+ toLength((end === undefined ? length : toIndex(end, length)) - $begin)
+ );
+ },
+ entries: function entries(){
+ return arrayEntries.call(validate(this));
+ },
+ keys: function keys(){
+ return arrayKeys.call(validate(this));
+ },
+ values: function values(){
+ return arrayValues.call(validate(this));
+ }
+ };
+
+ var isTAIndex = function(target, key){
+ return isObject(target)
+ && TYPED_ARRAY in target
+ && typeof key != 'symbol'
+ && key in target
+ && String(+key) == String(key);
+ };
+ var $getDesc = function getOwnPropertyDescriptor(target, key){
+ return isTAIndex(target, key = toPrimitive(key, true))
+ ? propertyDesc(2, target[key])
+ : getDesc(target, key);
+ };
+ var $setDesc = function defineProperty(target, key, desc){
+ if(isTAIndex(target, key = toPrimitive(key, true)) && isObject(desc)){
+ if('value' in desc)target[key] = desc.value;
+ return target;
+ } else return setDesc(target, key, desc);
+ };
+
+ if(!ALL_ARRAYS){
+ $.getDesc = $getDesc;
+ $.setDesc = $setDesc;
+ }
+
+ $export($export.S + $export.F * !ALL_ARRAYS, 'Object', {
+ getOwnPropertyDescriptor: $getDesc,
+ defineProperty: $setDesc
+ });
+
+ var $TypedArrayPrototype$ = redefineAll({}, proto);
+ redefineAll($TypedArrayPrototype$, {
+ constructor: function(){ /* noop */ },
+ toString: arrayToString,
+ toLocaleString: $toLocaleString
+ });
+ $.setDesc($TypedArrayPrototype$, TAG, {
+ get: function(){ return this[TYPED_ARRAY]; }
+ });
+
+ module.exports = function(KEY, BYTES, wrapper, CLAMPED){
+ CLAMPED = !!CLAMPED;
+ var NAME = KEY + (CLAMPED ? 'Clamped' : '') + 'Array'
+ , GETTER = 'get' + KEY
+ , SETTER = 'set' + KEY
+ , TypedArray = global[NAME]
+ , Base = TypedArray || {}
+ , FORCED = !TypedArray || !$typed.ABV
+ , $iterator = proto.values
+ , O = {};
+ var addElement = function(that, index){
+ setDesc(that, index, {
+ get: function(){
+ var data = this._d;
+ return data.v[GETTER](index * BYTES + data.o, LITTLE_ENDIAN);
+ },
+ set: function(it){
+ var data = this._d;
+ if(CLAMPED)it = (it = Math.round(it)) < 0 ? 0 : it > 0xff ? 0xff : it & 0xff;
+ data.v[SETTER](index * BYTES + data.o, it, LITTLE_ENDIAN);
+ },
+ enumerable: true
+ });
+ };
+ if(!$ArrayBuffer)return;
+ if(FORCED){
+ TypedArray = wrapper(function(that, data, $offset, $length){
+ strictNew(that, TypedArray, NAME);
+ var index = 0
+ , offset = 0
+ , buffer, byteLength, length;
+ if(!isObject(data)){
+ byteLength = toInteger(data) * BYTES;
+ buffer = new $ArrayBuffer(byteLength);
+ // TODO TA case
+ } else if(data instanceof $ArrayBuffer){
+ buffer = data;
+ offset = toInteger($offset);
+ if(offset < 0 || offset % BYTES)throw RangeError();
+ var $len = data.byteLength;
+ if($length === undefined){
+ if($len % BYTES)throw RangeError();
+ byteLength = $len - offset;
+ if(byteLength < 0)throw RangeError();
+ } else {
+ byteLength = toLength($length) * BYTES;
+ if(byteLength + offset > $len)throw RangeError();
+ }
+ } else return $from.call(TypedArray, data);
+ length = byteLength / BYTES;
+ hide(that, '_d', {
+ b: buffer,
+ o: offset,
+ l: byteLength,
+ e: length,
+ v: new $DataView(buffer)
+ });
+ while(index < length)addElement(that, index++);
+ });
+ TypedArray.prototype = $.create($TypedArrayPrototype$);
+ addGetter(TypedArray, 'buffer', 'b');
+ addGetter(TypedArray, 'byteOffset', 'o');
+ addGetter(TypedArray, 'byteLength', 'l');
+ addGetter(TypedArray, 'length', 'e');
+ hide(TypedArray, BYTES_PER_ELEMENT, BYTES);
+ hide(TypedArray.prototype, BYTES_PER_ELEMENT, BYTES);
+ hide(TypedArray.prototype, 'constructor', TypedArray);
+ } else if(!$iterDetect(function(iter){
+ new TypedArray(iter); // eslint-disable-line no-new
+ }, true)){
+ TypedArray = wrapper(function(that, data, $offset, $length){
+ strictNew(that, TypedArray, NAME);
+ if(isObject(data) && isIterable(data))return $from.call(TypedArray, data);
+ return $length === undefined ? new Base(data, $offset) : new Base(data, $offset, $length);
+ });
+ TypedArray.prototype = Base.prototype;
+ if(!LIBRARY)TypedArray.prototype.constructor = TypedArray;
+ }
+ var TypedArrayPrototype = TypedArray.prototype;
+ var $nativeIterator = TypedArrayPrototype[ITERATOR];
+ hide(TypedArray, TYPED_CONSTRUCTOR, true);
+ hide(TypedArrayPrototype, TYPED_ARRAY, NAME);
+ hide(TypedArrayPrototype, VIEW, true);
+ hide(TypedArrayPrototype, DEF_CONSTRUCTOR, TypedArray);
+ TAG in TypedArrayPrototype || $.setDesc(TypedArrayPrototype, TAG, {
+ get: function(){ return NAME; }
+ });
+
+ O[NAME] = TypedArray;
+
+ $export($export.G + $export.W + $export.F * (TypedArray != Base), O);
+
+ $export($export.S + $export.F * (TypedArray != Base), NAME, {
+ BYTES_PER_ELEMENT: BYTES,
+ from: Base.from || $from,
+ of: Base.of || $of
+ });
+
+ $export($export.P + $export.F * FORCED, NAME, proto);
+
+ $export($export.P + $export.F * (TypedArrayPrototype.toString != arrayToString), NAME, {toString: arrayToString});
+
+ $export($export.P + $export.F * fails(function(){
+ return [1, 2].toLocaleString() != new Typed([1, 2]).toLocaleString()
+ }), NAME, {toLocaleString: $toLocaleString});
+
+ Iterators[NAME] = $nativeIterator || $iterator;
+ LIBRARY || $nativeIterator || hide(TypedArrayPrototype, ITERATOR, $iterator);
+
+ setSpecies(NAME);
+ };
+} else module.exports = function(){ /* empty */};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.typed.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.typed.js
new file mode 100644
index 00000000..ced24126
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.typed.js
@@ -0,0 +1,36 @@
+var global = require('./$.global')
+ , hide = require('./$.hide')
+ , uid = require('./$.uid')
+ , TYPED = uid('typed_array')
+ , VIEW = uid('view')
+ , ABV = !!(global.ArrayBuffer && global.DataView)
+ , ARRAYS = true
+ , i = 0, l = 9;
+
+var TypedArrayConstructors = [
+ 'Int8Array',
+ 'Uint8Array',
+ 'Uint8ClampedArray',
+ 'Int16Array',
+ 'Uint16Array',
+ 'Int32Array',
+ 'Uint32Array',
+ 'Float32Array',
+ 'Float64Array'
+];
+
+while(i < l){
+ var Typed = global[TypedArrayConstructors[i++]];
+ if(Typed){
+ hide(Typed.prototype, TYPED, true);
+ hide(Typed.prototype, VIEW, true);
+ } else ARRAYS = false;
+}
+
+module.exports = {
+ ARRAYS: ARRAYS,
+ ABV: ABV,
+ CONSTR: ARRAYS && ABV,
+ TYPED: TYPED,
+ VIEW: VIEW
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.uid.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.uid.js
new file mode 100644
index 00000000..3be4196b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.uid.js
@@ -0,0 +1,5 @@
+var id = 0
+ , px = Math.random();
+module.exports = function(key){
+ return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.wks.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.wks.js
new file mode 100644
index 00000000..87a3d29a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/$.wks.js
@@ -0,0 +1,7 @@
+var store = require('./$.shared')('wks')
+ , uid = require('./$.uid')
+ , Symbol = require('./$.global').Symbol;
+module.exports = function(name){
+ return store[name] || (store[name] =
+ Symbol && Symbol[name] || (Symbol || uid)('Symbol.' + name));
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.delay.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.delay.js
new file mode 100644
index 00000000..3e19ef39
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.delay.js
@@ -0,0 +1,12 @@
+var global = require('./$.global')
+ , core = require('./$.core')
+ , $export = require('./$.export')
+ , partial = require('./$.partial');
+// https://esdiscuss.org/topic/promise-returning-delay-function
+$export($export.G + $export.F, {
+ delay: function delay(time){
+ return new (core.Promise || global.Promise)(function(resolve){
+ setTimeout(partial.call(resolve, true), time);
+ });
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.dict.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.dict.js
new file mode 100644
index 00000000..df314988
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.dict.js
@@ -0,0 +1,153 @@
+'use strict';
+var $ = require('./$')
+ , ctx = require('./$.ctx')
+ , $export = require('./$.export')
+ , createDesc = require('./$.property-desc')
+ , assign = require('./$.object-assign')
+ , keyOf = require('./$.keyof')
+ , aFunction = require('./$.a-function')
+ , forOf = require('./$.for-of')
+ , isIterable = require('./core.is-iterable')
+ , $iterCreate = require('./$.iter-create')
+ , step = require('./$.iter-step')
+ , isObject = require('./$.is-object')
+ , toIObject = require('./$.to-iobject')
+ , DESCRIPTORS = require('./$.descriptors')
+ , has = require('./$.has')
+ , getKeys = $.getKeys;
+
+// 0 -> Dict.forEach
+// 1 -> Dict.map
+// 2 -> Dict.filter
+// 3 -> Dict.some
+// 4 -> Dict.every
+// 5 -> Dict.find
+// 6 -> Dict.findKey
+// 7 -> Dict.mapPairs
+var createDictMethod = function(TYPE){
+ var IS_MAP = TYPE == 1
+ , IS_EVERY = TYPE == 4;
+ return function(object, callbackfn, that /* = undefined */){
+ var f = ctx(callbackfn, that, 3)
+ , O = toIObject(object)
+ , result = IS_MAP || TYPE == 7 || TYPE == 2
+ ? new (typeof this == 'function' ? this : Dict) : undefined
+ , key, val, res;
+ for(key in O)if(has(O, key)){
+ val = O[key];
+ res = f(val, key, object);
+ if(TYPE){
+ if(IS_MAP)result[key] = res; // map
+ else if(res)switch(TYPE){
+ case 2: result[key] = val; break; // filter
+ case 3: return true; // some
+ case 5: return val; // find
+ case 6: return key; // findKey
+ case 7: result[res[0]] = res[1]; // mapPairs
+ } else if(IS_EVERY)return false; // every
+ }
+ }
+ return TYPE == 3 || IS_EVERY ? IS_EVERY : result;
+ };
+};
+var findKey = createDictMethod(6);
+
+var createDictIter = function(kind){
+ return function(it){
+ return new DictIterator(it, kind);
+ };
+};
+var DictIterator = function(iterated, kind){
+ this._t = toIObject(iterated); // target
+ this._a = getKeys(iterated); // keys
+ this._i = 0; // next index
+ this._k = kind; // kind
+};
+$iterCreate(DictIterator, 'Dict', function(){
+ var that = this
+ , O = that._t
+ , keys = that._a
+ , kind = that._k
+ , key;
+ do {
+ if(that._i >= keys.length){
+ that._t = undefined;
+ return step(1);
+ }
+ } while(!has(O, key = keys[that._i++]));
+ if(kind == 'keys' )return step(0, key);
+ if(kind == 'values')return step(0, O[key]);
+ return step(0, [key, O[key]]);
+});
+
+function Dict(iterable){
+ var dict = $.create(null);
+ if(iterable != undefined){
+ if(isIterable(iterable)){
+ forOf(iterable, true, function(key, value){
+ dict[key] = value;
+ });
+ } else assign(dict, iterable);
+ }
+ return dict;
+}
+Dict.prototype = null;
+
+function reduce(object, mapfn, init){
+ aFunction(mapfn);
+ var O = toIObject(object)
+ , keys = getKeys(O)
+ , length = keys.length
+ , i = 0
+ , memo, key;
+ if(arguments.length < 3){
+ if(!length)throw TypeError('Reduce of empty object with no initial value');
+ memo = O[keys[i++]];
+ } else memo = Object(init);
+ while(length > i)if(has(O, key = keys[i++])){
+ memo = mapfn(memo, O[key], key, object);
+ }
+ return memo;
+}
+
+function includes(object, el){
+ return (el == el ? keyOf(object, el) : findKey(object, function(it){
+ return it != it;
+ })) !== undefined;
+}
+
+function get(object, key){
+ if(has(object, key))return object[key];
+}
+function set(object, key, value){
+ if(DESCRIPTORS && key in Object)$.setDesc(object, key, createDesc(0, value));
+ else object[key] = value;
+ return object;
+}
+
+function isDict(it){
+ return isObject(it) && $.getProto(it) === Dict.prototype;
+}
+
+$export($export.G + $export.F, {Dict: Dict});
+
+$export($export.S, 'Dict', {
+ keys: createDictIter('keys'),
+ values: createDictIter('values'),
+ entries: createDictIter('entries'),
+ forEach: createDictMethod(0),
+ map: createDictMethod(1),
+ filter: createDictMethod(2),
+ some: createDictMethod(3),
+ every: createDictMethod(4),
+ find: createDictMethod(5),
+ findKey: findKey,
+ mapPairs: createDictMethod(7),
+ reduce: reduce,
+ keyOf: keyOf,
+ includes: includes,
+ has: has,
+ get: get,
+ set: set,
+ isDict: isDict
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.function.part.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.function.part.js
new file mode 100644
index 00000000..9943b307
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.function.part.js
@@ -0,0 +1,7 @@
+var path = require('./$.path')
+ , $export = require('./$.export');
+
+// Placeholder
+require('./$.core')._ = path._ = path._ || {};
+
+$export($export.P + $export.F, 'Function', {part: require('./$.partial')});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.get-iterator-method.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.get-iterator-method.js
new file mode 100644
index 00000000..02db743c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.get-iterator-method.js
@@ -0,0 +1,8 @@
+var classof = require('./$.classof')
+ , ITERATOR = require('./$.wks')('iterator')
+ , Iterators = require('./$.iterators');
+module.exports = require('./$.core').getIteratorMethod = function(it){
+ if(it != undefined)return it[ITERATOR]
+ || it['@@iterator']
+ || Iterators[classof(it)];
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.get-iterator.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.get-iterator.js
new file mode 100644
index 00000000..7290904a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.get-iterator.js
@@ -0,0 +1,7 @@
+var anObject = require('./$.an-object')
+ , get = require('./core.get-iterator-method');
+module.exports = require('./$.core').getIterator = function(it){
+ var iterFn = get(it);
+ if(typeof iterFn != 'function')throw TypeError(it + ' is not iterable!');
+ return anObject(iterFn.call(it));
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.is-iterable.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.is-iterable.js
new file mode 100644
index 00000000..c27e6588
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.is-iterable.js
@@ -0,0 +1,9 @@
+var classof = require('./$.classof')
+ , ITERATOR = require('./$.wks')('iterator')
+ , Iterators = require('./$.iterators');
+module.exports = require('./$.core').isIterable = function(it){
+ var O = Object(it);
+ return O[ITERATOR] !== undefined
+ || '@@iterator' in O
+ || Iterators.hasOwnProperty(classof(O));
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.log.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.log.js
new file mode 100644
index 00000000..4c0ea53d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.log.js
@@ -0,0 +1,26 @@
+var $ = require('./$')
+ , global = require('./$.global')
+ , $export = require('./$.export')
+ , log = {}
+ , enabled = true;
+// Methods from https://github.com/DeveloperToolsWG/console-object/blob/master/api.md
+$.each.call((
+ 'assert,clear,count,debug,dir,dirxml,error,exception,group,groupCollapsed,groupEnd,' +
+ 'info,isIndependentlyComposed,log,markTimeline,profile,profileEnd,table,' +
+ 'time,timeEnd,timeline,timelineEnd,timeStamp,trace,warn'
+).split(','), function(key){
+ log[key] = function(){
+ var $console = global.console;
+ if(enabled && $console && $console[key]){
+ return Function.apply.call($console[key], $console, arguments);
+ }
+ };
+});
+$export($export.G + $export.F, {log: require('./$.object-assign')(log.log, log, {
+ enable: function(){
+ enabled = true;
+ },
+ disable: function(){
+ enabled = false;
+ }
+})});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.number.iterator.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.number.iterator.js
new file mode 100644
index 00000000..d9273780
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.number.iterator.js
@@ -0,0 +1,9 @@
+'use strict';
+require('./$.iter-define')(Number, 'Number', function(iterated){
+ this._l = +iterated;
+ this._i = 0;
+}, function(){
+ var i = this._i++
+ , done = !(i < this._l);
+ return {done: done, value: done ? undefined : i};
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.object.classof.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.object.classof.js
new file mode 100644
index 00000000..df682e44
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.object.classof.js
@@ -0,0 +1,3 @@
+var $export = require('./$.export');
+
+$export($export.S + $export.F, 'Object', {classof: require('./$.classof')});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.object.define.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.object.define.js
new file mode 100644
index 00000000..fe4cbe9b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.object.define.js
@@ -0,0 +1,4 @@
+var $export = require('./$.export')
+ , define = require('./$.object-define');
+
+$export($export.S + $export.F, 'Object', {define: define});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.object.is-object.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.object.is-object.js
new file mode 100644
index 00000000..c60a977a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.object.is-object.js
@@ -0,0 +1,3 @@
+var $export = require('./$.export');
+
+$export($export.S + $export.F, 'Object', {isObject: require('./$.is-object')});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.object.make.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.object.make.js
new file mode 100644
index 00000000..95b99961
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.object.make.js
@@ -0,0 +1,9 @@
+var $export = require('./$.export')
+ , define = require('./$.object-define')
+ , create = require('./$').create;
+
+$export($export.S + $export.F, 'Object', {
+ make: function(proto, mixin){
+ return define(create(proto), mixin);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.string.escape-html.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.string.escape-html.js
new file mode 100644
index 00000000..81737e75
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.string.escape-html.js
@@ -0,0 +1,11 @@
+'use strict';
+var $export = require('./$.export');
+var $re = require('./$.replacer')(/[&<>"']/g, {
+ '&': '&',
+ '<': '<',
+ '>': '>',
+ '"': '"',
+ "'": '''
+});
+
+$export($export.P + $export.F, 'String', {escapeHTML: function escapeHTML(){ return $re(this); }});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.string.unescape-html.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.string.unescape-html.js
new file mode 100644
index 00000000..9d7a3d2c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/core.string.unescape-html.js
@@ -0,0 +1,11 @@
+'use strict';
+var $export = require('./$.export');
+var $re = require('./$.replacer')(/&(?:amp|lt|gt|quot|apos);/g, {
+ '&': '&',
+ '<': '<',
+ '>': '>',
+ '"': '"',
+ ''': "'"
+});
+
+$export($export.P + $export.F, 'String', {unescapeHTML: function unescapeHTML(){ return $re(this); }});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es5.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es5.js
new file mode 100644
index 00000000..50f72b04
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es5.js
@@ -0,0 +1,276 @@
+'use strict';
+var $ = require('./$')
+ , $export = require('./$.export')
+ , DESCRIPTORS = require('./$.descriptors')
+ , createDesc = require('./$.property-desc')
+ , html = require('./$.html')
+ , cel = require('./$.dom-create')
+ , has = require('./$.has')
+ , cof = require('./$.cof')
+ , invoke = require('./$.invoke')
+ , fails = require('./$.fails')
+ , anObject = require('./$.an-object')
+ , aFunction = require('./$.a-function')
+ , isObject = require('./$.is-object')
+ , toObject = require('./$.to-object')
+ , toIObject = require('./$.to-iobject')
+ , toInteger = require('./$.to-integer')
+ , toIndex = require('./$.to-index')
+ , toLength = require('./$.to-length')
+ , IObject = require('./$.iobject')
+ , IE_PROTO = require('./$.uid')('__proto__')
+ , createArrayMethod = require('./$.array-methods')
+ , arrayIndexOf = require('./$.array-includes')(false)
+ , ObjectProto = Object.prototype
+ , ArrayProto = Array.prototype
+ , arraySlice = ArrayProto.slice
+ , arrayJoin = ArrayProto.join
+ , defineProperty = $.setDesc
+ , getOwnDescriptor = $.getDesc
+ , defineProperties = $.setDescs
+ , factories = {}
+ , IE8_DOM_DEFINE;
+
+if(!DESCRIPTORS){
+ IE8_DOM_DEFINE = !fails(function(){
+ return defineProperty(cel('div'), 'a', {get: function(){ return 7; }}).a != 7;
+ });
+ $.setDesc = function(O, P, Attributes){
+ if(IE8_DOM_DEFINE)try {
+ return defineProperty(O, P, Attributes);
+ } catch(e){ /* empty */ }
+ if('get' in Attributes || 'set' in Attributes)throw TypeError('Accessors not supported!');
+ if('value' in Attributes)anObject(O)[P] = Attributes.value;
+ return O;
+ };
+ $.getDesc = function(O, P){
+ if(IE8_DOM_DEFINE)try {
+ return getOwnDescriptor(O, P);
+ } catch(e){ /* empty */ }
+ if(has(O, P))return createDesc(!ObjectProto.propertyIsEnumerable.call(O, P), O[P]);
+ };
+ $.setDescs = defineProperties = function(O, Properties){
+ anObject(O);
+ var keys = $.getKeys(Properties)
+ , length = keys.length
+ , i = 0
+ , P;
+ while(length > i)$.setDesc(O, P = keys[i++], Properties[P]);
+ return O;
+ };
+}
+$export($export.S + $export.F * !DESCRIPTORS, 'Object', {
+ // 19.1.2.6 / 15.2.3.3 Object.getOwnPropertyDescriptor(O, P)
+ getOwnPropertyDescriptor: $.getDesc,
+ // 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)
+ defineProperty: $.setDesc,
+ // 19.1.2.3 / 15.2.3.7 Object.defineProperties(O, Properties)
+ defineProperties: defineProperties
+});
+
+ // IE 8- don't enum bug keys
+var keys1 = ('constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,' +
+ 'toLocaleString,toString,valueOf').split(',')
+ // Additional keys for getOwnPropertyNames
+ , keys2 = keys1.concat('length', 'prototype')
+ , keysLen1 = keys1.length;
+
+// Create object with `null` prototype: use iframe Object with cleared prototype
+var createDict = function(){
+ // Thrash, waste and sodomy: IE GC bug
+ var iframe = cel('iframe')
+ , i = keysLen1
+ , gt = '>'
+ , iframeDocument;
+ iframe.style.display = 'none';
+ html.appendChild(iframe);
+ iframe.src = 'javascript:'; // eslint-disable-line no-script-url
+ // createDict = iframe.contentWindow.Object;
+ // html.removeChild(iframe);
+ iframeDocument = iframe.contentWindow.document;
+ iframeDocument.open();
+ iframeDocument.write(' i)if(has(O, key = names[i++])){
+ ~arrayIndexOf(result, key) || result.push(key);
+ }
+ return result;
+ };
+};
+var Empty = function(){};
+$export($export.S, 'Object', {
+ // 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
+ getPrototypeOf: $.getProto = $.getProto || function(O){
+ O = toObject(O);
+ if(has(O, IE_PROTO))return O[IE_PROTO];
+ if(typeof O.constructor == 'function' && O instanceof O.constructor){
+ return O.constructor.prototype;
+ } return O instanceof Object ? ObjectProto : null;
+ },
+ // 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
+ getOwnPropertyNames: $.getNames = $.getNames || createGetKeys(keys2, keys2.length, true),
+ // 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
+ create: $.create = $.create || function(O, /*?*/Properties){
+ var result;
+ if(O !== null){
+ Empty.prototype = anObject(O);
+ result = new Empty();
+ Empty.prototype = null;
+ // add "__proto__" for Object.getPrototypeOf shim
+ result[IE_PROTO] = O;
+ } else result = createDict();
+ return Properties === undefined ? result : defineProperties(result, Properties);
+ },
+ // 19.1.2.14 / 15.2.3.14 Object.keys(O)
+ keys: $.getKeys = $.getKeys || createGetKeys(keys1, keysLen1, false)
+});
+
+var construct = function(F, len, args){
+ if(!(len in factories)){
+ for(var n = [], i = 0; i < len; i++)n[i] = 'a[' + i + ']';
+ factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')');
+ }
+ return factories[len](F, args);
+};
+
+// 19.2.3.2 / 15.3.4.5 Function.prototype.bind(thisArg, args...)
+$export($export.P, 'Function', {
+ bind: function bind(that /*, args... */){
+ var fn = aFunction(this)
+ , partArgs = arraySlice.call(arguments, 1);
+ var bound = function(/* args... */){
+ var args = partArgs.concat(arraySlice.call(arguments));
+ return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that);
+ };
+ if(isObject(fn.prototype))bound.prototype = fn.prototype;
+ return bound;
+ }
+});
+
+// fallback for not array-like ES3 strings and DOM objects
+$export($export.P + $export.F * fails(function(){
+ if(html)arraySlice.call(html);
+}), 'Array', {
+ slice: function(begin, end){
+ var len = toLength(this.length)
+ , klass = cof(this);
+ end = end === undefined ? len : end;
+ if(klass == 'Array')return arraySlice.call(this, begin, end);
+ var start = toIndex(begin, len)
+ , upTo = toIndex(end, len)
+ , size = toLength(upTo - start)
+ , cloned = Array(size)
+ , i = 0;
+ for(; i < size; i++)cloned[i] = klass == 'String'
+ ? this.charAt(start + i)
+ : this[start + i];
+ return cloned;
+ }
+});
+$export($export.P + $export.F * (IObject != Object), 'Array', {
+ join: function join(separator){
+ return arrayJoin.call(IObject(this), separator === undefined ? ',' : separator);
+ }
+});
+
+// 22.1.2.2 / 15.4.3.2 Array.isArray(arg)
+$export($export.S, 'Array', {isArray: require('./$.is-array')});
+
+var createArrayReduce = function(isRight){
+ return function(callbackfn, memo){
+ aFunction(callbackfn);
+ var O = IObject(this)
+ , length = toLength(O.length)
+ , index = isRight ? length - 1 : 0
+ , i = isRight ? -1 : 1;
+ if(arguments.length < 2)for(;;){
+ if(index in O){
+ memo = O[index];
+ index += i;
+ break;
+ }
+ index += i;
+ if(isRight ? index < 0 : length <= index){
+ throw TypeError('Reduce of empty array with no initial value');
+ }
+ }
+ for(;isRight ? index >= 0 : length > index; index += i)if(index in O){
+ memo = callbackfn(memo, O[index], index, this);
+ }
+ return memo;
+ };
+};
+
+var methodize = function($fn){
+ return function(arg1/*, arg2 = undefined */){
+ return $fn(this, arg1, arguments[1]);
+ };
+};
+
+$export($export.P, 'Array', {
+ // 22.1.3.10 / 15.4.4.18 Array.prototype.forEach(callbackfn [, thisArg])
+ forEach: $.each = $.each || methodize(createArrayMethod(0)),
+ // 22.1.3.15 / 15.4.4.19 Array.prototype.map(callbackfn [, thisArg])
+ map: methodize(createArrayMethod(1)),
+ // 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg])
+ filter: methodize(createArrayMethod(2)),
+ // 22.1.3.23 / 15.4.4.17 Array.prototype.some(callbackfn [, thisArg])
+ some: methodize(createArrayMethod(3)),
+ // 22.1.3.5 / 15.4.4.16 Array.prototype.every(callbackfn [, thisArg])
+ every: methodize(createArrayMethod(4)),
+ // 22.1.3.18 / 15.4.4.21 Array.prototype.reduce(callbackfn [, initialValue])
+ reduce: createArrayReduce(false),
+ // 22.1.3.19 / 15.4.4.22 Array.prototype.reduceRight(callbackfn [, initialValue])
+ reduceRight: createArrayReduce(true),
+ // 22.1.3.11 / 15.4.4.14 Array.prototype.indexOf(searchElement [, fromIndex])
+ indexOf: methodize(arrayIndexOf),
+ // 22.1.3.14 / 15.4.4.15 Array.prototype.lastIndexOf(searchElement [, fromIndex])
+ lastIndexOf: function(el, fromIndex /* = @[*-1] */){
+ var O = toIObject(this)
+ , length = toLength(O.length)
+ , index = length - 1;
+ if(arguments.length > 1)index = Math.min(index, toInteger(fromIndex));
+ if(index < 0)index = toLength(length + index);
+ for(;index >= 0; index--)if(index in O)if(O[index] === el)return index;
+ return -1;
+ }
+});
+
+// 20.3.3.1 / 15.9.4.4 Date.now()
+$export($export.S, 'Date', {now: function(){ return +new Date; }});
+
+var lz = function(num){
+ return num > 9 ? num : '0' + num;
+};
+
+// 20.3.4.36 / 15.9.5.43 Date.prototype.toISOString()
+// PhantomJS / old WebKit has a broken implementations
+$export($export.P + $export.F * (fails(function(){
+ return new Date(-5e13 - 1).toISOString() != '0385-07-25T07:06:39.999Z';
+}) || !fails(function(){
+ new Date(NaN).toISOString();
+})), 'Date', {
+ toISOString: function toISOString(){
+ if(!isFinite(this))throw RangeError('Invalid time value');
+ var d = this
+ , y = d.getUTCFullYear()
+ , m = d.getUTCMilliseconds()
+ , s = y < 0 ? '-' : y > 9999 ? '+' : '';
+ return s + ('00000' + Math.abs(y)).slice(s ? -6 : -4) +
+ '-' + lz(d.getUTCMonth() + 1) + '-' + lz(d.getUTCDate()) +
+ 'T' + lz(d.getUTCHours()) + ':' + lz(d.getUTCMinutes()) +
+ ':' + lz(d.getUTCSeconds()) + '.' + (m > 99 ? m : '0' + lz(m)) + 'Z';
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.array.copy-within.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.array.copy-within.js
new file mode 100644
index 00000000..930ba78d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.array.copy-within.js
@@ -0,0 +1,6 @@
+// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length)
+var $export = require('./$.export');
+
+$export($export.P, 'Array', {copyWithin: require('./$.array-copy-within')});
+
+require('./$.add-to-unscopables')('copyWithin');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.array.fill.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.array.fill.js
new file mode 100644
index 00000000..c3b3e2e5
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.array.fill.js
@@ -0,0 +1,6 @@
+// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)
+var $export = require('./$.export');
+
+$export($export.P, 'Array', {fill: require('./$.array-fill')});
+
+require('./$.add-to-unscopables')('fill');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.array.find-index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.array.find-index.js
new file mode 100644
index 00000000..7224a606
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.array.find-index.js
@@ -0,0 +1,14 @@
+'use strict';
+// 22.1.3.9 Array.prototype.findIndex(predicate, thisArg = undefined)
+var $export = require('./$.export')
+ , $find = require('./$.array-methods')(6)
+ , KEY = 'findIndex'
+ , forced = true;
+// Shouldn't skip holes
+if(KEY in [])Array(1)[KEY](function(){ forced = false; });
+$export($export.P + $export.F * forced, 'Array', {
+ findIndex: function findIndex(callbackfn/*, that = undefined */){
+ return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+ }
+});
+require('./$.add-to-unscopables')(KEY);
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.array.find.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.array.find.js
new file mode 100644
index 00000000..199e987e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.array.find.js
@@ -0,0 +1,14 @@
+'use strict';
+// 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined)
+var $export = require('./$.export')
+ , $find = require('./$.array-methods')(5)
+ , KEY = 'find'
+ , forced = true;
+// Shouldn't skip holes
+if(KEY in [])Array(1)[KEY](function(){ forced = false; });
+$export($export.P + $export.F * forced, 'Array', {
+ find: function find(callbackfn/*, that = undefined */){
+ return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
+ }
+});
+require('./$.add-to-unscopables')(KEY);
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.array.from.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.array.from.js
new file mode 100644
index 00000000..4637d8d2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.array.from.js
@@ -0,0 +1,36 @@
+'use strict';
+var ctx = require('./$.ctx')
+ , $export = require('./$.export')
+ , toObject = require('./$.to-object')
+ , call = require('./$.iter-call')
+ , isArrayIter = require('./$.is-array-iter')
+ , toLength = require('./$.to-length')
+ , getIterFn = require('./core.get-iterator-method');
+$export($export.S + $export.F * !require('./$.iter-detect')(function(iter){ Array.from(iter); }), 'Array', {
+ // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)
+ from: function from(arrayLike/*, mapfn = undefined, thisArg = undefined*/){
+ var O = toObject(arrayLike)
+ , C = typeof this == 'function' ? this : Array
+ , $$ = arguments
+ , $$len = $$.length
+ , mapfn = $$len > 1 ? $$[1] : undefined
+ , mapping = mapfn !== undefined
+ , index = 0
+ , iterFn = getIterFn(O)
+ , length, result, step, iterator;
+ if(mapping)mapfn = ctx(mapfn, $$len > 2 ? $$[2] : undefined, 2);
+ // if object isn't iterable or it's array with default iterator - use simple case
+ if(iterFn != undefined && !(C == Array && isArrayIter(iterFn))){
+ for(iterator = iterFn.call(O), result = new C; !(step = iterator.next()).done; index++){
+ result[index] = mapping ? call(iterator, mapfn, [step.value, index], true) : step.value;
+ }
+ } else {
+ length = toLength(O.length);
+ for(result = new C(length); length > index; index++){
+ result[index] = mapping ? mapfn(O[index], index) : O[index];
+ }
+ }
+ result.length = index;
+ return result;
+ }
+});
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.array.iterator.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.array.iterator.js
new file mode 100644
index 00000000..52a546dd
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.array.iterator.js
@@ -0,0 +1,34 @@
+'use strict';
+var addToUnscopables = require('./$.add-to-unscopables')
+ , step = require('./$.iter-step')
+ , Iterators = require('./$.iterators')
+ , toIObject = require('./$.to-iobject');
+
+// 22.1.3.4 Array.prototype.entries()
+// 22.1.3.13 Array.prototype.keys()
+// 22.1.3.29 Array.prototype.values()
+// 22.1.3.30 Array.prototype[@@iterator]()
+module.exports = require('./$.iter-define')(Array, 'Array', function(iterated, kind){
+ this._t = toIObject(iterated); // target
+ this._i = 0; // next index
+ this._k = kind; // kind
+// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
+}, function(){
+ var O = this._t
+ , kind = this._k
+ , index = this._i++;
+ if(!O || index >= O.length){
+ this._t = undefined;
+ return step(1);
+ }
+ if(kind == 'keys' )return step(0, index);
+ if(kind == 'values')return step(0, O[index]);
+ return step(0, [index, O[index]]);
+}, 'values');
+
+// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
+Iterators.Arguments = Iterators.Array;
+
+addToUnscopables('keys');
+addToUnscopables('values');
+addToUnscopables('entries');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.array.of.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.array.of.js
new file mode 100644
index 00000000..f623f157
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.array.of.js
@@ -0,0 +1,19 @@
+'use strict';
+var $export = require('./$.export');
+
+// WebKit Array.of isn't generic
+$export($export.S + $export.F * require('./$.fails')(function(){
+ function F(){}
+ return !(Array.of.call(F) instanceof F);
+}), 'Array', {
+ // 22.1.2.3 Array.of( ...items)
+ of: function of(/* ...args */){
+ var index = 0
+ , $$ = arguments
+ , $$len = $$.length
+ , result = new (typeof this == 'function' ? this : Array)($$len);
+ while($$len > index)result[index] = $$[index++];
+ result.length = $$len;
+ return result;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.array.species.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.array.species.js
new file mode 100644
index 00000000..543bdfe9
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.array.species.js
@@ -0,0 +1 @@
+require('./$.set-species')('Array');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.date.to-string.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.date.to-string.js
new file mode 100644
index 00000000..59bf8365
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.date.to-string.js
@@ -0,0 +1,10 @@
+var DateProto = Date.prototype
+ , INVALID_DATE = 'Invalid Date'
+ , TO_STRING = 'toString'
+ , $toString = DateProto[TO_STRING];
+if(new Date(NaN) + '' != INVALID_DATE){
+ require('./$.redefine')(DateProto, TO_STRING, function toString(){
+ var value = +this;
+ return value === value ? $toString.call(this) : INVALID_DATE;
+ });
+}
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.function.has-instance.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.function.has-instance.js
new file mode 100644
index 00000000..94d840f8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.function.has-instance.js
@@ -0,0 +1,13 @@
+'use strict';
+var $ = require('./$')
+ , isObject = require('./$.is-object')
+ , HAS_INSTANCE = require('./$.wks')('hasInstance')
+ , FunctionProto = Function.prototype;
+// 19.2.3.6 Function.prototype[@@hasInstance](V)
+if(!(HAS_INSTANCE in FunctionProto))$.setDesc(FunctionProto, HAS_INSTANCE, {value: function(O){
+ if(typeof this != 'function' || !isObject(O))return false;
+ if(!isObject(this.prototype))return O instanceof this;
+ // for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this:
+ while(O = $.getProto(O))if(this.prototype === O)return true;
+ return false;
+}});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.function.name.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.function.name.js
new file mode 100644
index 00000000..0f10fc11
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.function.name.js
@@ -0,0 +1,16 @@
+var setDesc = require('./$').setDesc
+ , createDesc = require('./$.property-desc')
+ , has = require('./$.has')
+ , FProto = Function.prototype
+ , nameRE = /^\s*function ([^ (]*)/
+ , NAME = 'name';
+// 19.2.4.2 name
+NAME in FProto || require('./$.descriptors') && setDesc(FProto, NAME, {
+ configurable: true,
+ get: function(){
+ var match = ('' + this).match(nameRE)
+ , name = match ? match[1] : '';
+ has(this, NAME) || setDesc(this, NAME, createDesc(5, name));
+ return name;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.map.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.map.js
new file mode 100644
index 00000000..54fd5c1a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.map.js
@@ -0,0 +1,17 @@
+'use strict';
+var strong = require('./$.collection-strong');
+
+// 23.1 Map Objects
+require('./$.collection')('Map', function(get){
+ return function Map(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };
+}, {
+ // 23.1.3.6 Map.prototype.get(key)
+ get: function get(key){
+ var entry = strong.getEntry(this, key);
+ return entry && entry.v;
+ },
+ // 23.1.3.9 Map.prototype.set(key, value)
+ set: function set(key, value){
+ return strong.def(this, key === 0 ? 0 : key, value);
+ }
+}, strong, true);
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.acosh.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.acosh.js
new file mode 100644
index 00000000..f69282a8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.acosh.js
@@ -0,0 +1,14 @@
+// 20.2.2.3 Math.acosh(x)
+var $export = require('./$.export')
+ , log1p = require('./$.math-log1p')
+ , sqrt = Math.sqrt
+ , $acosh = Math.acosh;
+
+// V8 bug https://code.google.com/p/v8/issues/detail?id=3509
+$export($export.S + $export.F * !($acosh && Math.floor($acosh(Number.MAX_VALUE)) == 710), 'Math', {
+ acosh: function acosh(x){
+ return (x = +x) < 1 ? NaN : x > 94906265.62425156
+ ? Math.log(x) + Math.LN2
+ : log1p(x - 1 + sqrt(x - 1) * sqrt(x + 1));
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.asinh.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.asinh.js
new file mode 100644
index 00000000..bd34adf0
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.asinh.js
@@ -0,0 +1,8 @@
+// 20.2.2.5 Math.asinh(x)
+var $export = require('./$.export');
+
+function asinh(x){
+ return !isFinite(x = +x) || x == 0 ? x : x < 0 ? -asinh(-x) : Math.log(x + Math.sqrt(x * x + 1));
+}
+
+$export($export.S, 'Math', {asinh: asinh});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.atanh.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.atanh.js
new file mode 100644
index 00000000..656ea409
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.atanh.js
@@ -0,0 +1,8 @@
+// 20.2.2.7 Math.atanh(x)
+var $export = require('./$.export');
+
+$export($export.S, 'Math', {
+ atanh: function atanh(x){
+ return (x = +x) == 0 ? x : Math.log((1 + x) / (1 - x)) / 2;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.cbrt.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.cbrt.js
new file mode 100644
index 00000000..79a1fbc8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.cbrt.js
@@ -0,0 +1,9 @@
+// 20.2.2.9 Math.cbrt(x)
+var $export = require('./$.export')
+ , sign = require('./$.math-sign');
+
+$export($export.S, 'Math', {
+ cbrt: function cbrt(x){
+ return sign(x = +x) * Math.pow(Math.abs(x), 1 / 3);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.clz32.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.clz32.js
new file mode 100644
index 00000000..edd11588
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.clz32.js
@@ -0,0 +1,8 @@
+// 20.2.2.11 Math.clz32(x)
+var $export = require('./$.export');
+
+$export($export.S, 'Math', {
+ clz32: function clz32(x){
+ return (x >>>= 0) ? 31 - Math.floor(Math.log(x + 0.5) * Math.LOG2E) : 32;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.cosh.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.cosh.js
new file mode 100644
index 00000000..d1df7490
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.cosh.js
@@ -0,0 +1,9 @@
+// 20.2.2.12 Math.cosh(x)
+var $export = require('./$.export')
+ , exp = Math.exp;
+
+$export($export.S, 'Math', {
+ cosh: function cosh(x){
+ return (exp(x = +x) + exp(-x)) / 2;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.expm1.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.expm1.js
new file mode 100644
index 00000000..e27742fe
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.expm1.js
@@ -0,0 +1,4 @@
+// 20.2.2.14 Math.expm1(x)
+var $export = require('./$.export');
+
+$export($export.S, 'Math', {expm1: require('./$.math-expm1')});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.fround.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.fround.js
new file mode 100644
index 00000000..43cd70c7
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.fround.js
@@ -0,0 +1,26 @@
+// 20.2.2.16 Math.fround(x)
+var $export = require('./$.export')
+ , sign = require('./$.math-sign')
+ , pow = Math.pow
+ , EPSILON = pow(2, -52)
+ , EPSILON32 = pow(2, -23)
+ , MAX32 = pow(2, 127) * (2 - EPSILON32)
+ , MIN32 = pow(2, -126);
+
+var roundTiesToEven = function(n){
+ return n + 1 / EPSILON - 1 / EPSILON;
+};
+
+
+$export($export.S, 'Math', {
+ fround: function fround(x){
+ var $abs = Math.abs(x)
+ , $sign = sign(x)
+ , a, result;
+ if($abs < MIN32)return $sign * roundTiesToEven($abs / MIN32 / EPSILON32) * MIN32 * EPSILON32;
+ a = (1 + EPSILON32 / EPSILON) * $abs;
+ result = a - (a - $abs);
+ if(result > MAX32 || result != result)return $sign * Infinity;
+ return $sign * result;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.hypot.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.hypot.js
new file mode 100644
index 00000000..a8edf7cd
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.hypot.js
@@ -0,0 +1,26 @@
+// 20.2.2.17 Math.hypot([value1[, value2[, … ]]])
+var $export = require('./$.export')
+ , abs = Math.abs;
+
+$export($export.S, 'Math', {
+ hypot: function hypot(value1, value2){ // eslint-disable-line no-unused-vars
+ var sum = 0
+ , i = 0
+ , $$ = arguments
+ , $$len = $$.length
+ , larg = 0
+ , arg, div;
+ while(i < $$len){
+ arg = abs($$[i++]);
+ if(larg < arg){
+ div = larg / arg;
+ sum = sum * div * div + 1;
+ larg = arg;
+ } else if(arg > 0){
+ div = arg / larg;
+ sum += div * div;
+ } else sum += arg;
+ }
+ return larg === Infinity ? Infinity : larg * Math.sqrt(sum);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.imul.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.imul.js
new file mode 100644
index 00000000..926053de
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.imul.js
@@ -0,0 +1,17 @@
+// 20.2.2.18 Math.imul(x, y)
+var $export = require('./$.export')
+ , $imul = Math.imul;
+
+// some WebKit versions fails with big numbers, some has wrong arity
+$export($export.S + $export.F * require('./$.fails')(function(){
+ return $imul(0xffffffff, 5) != -5 || $imul.length != 2;
+}), 'Math', {
+ imul: function imul(x, y){
+ var UINT16 = 0xffff
+ , xn = +x
+ , yn = +y
+ , xl = UINT16 & xn
+ , yl = UINT16 & yn;
+ return 0 | xl * yl + ((UINT16 & xn >>> 16) * yl + xl * (UINT16 & yn >>> 16) << 16 >>> 0);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.log10.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.log10.js
new file mode 100644
index 00000000..ef5ae6a9
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.log10.js
@@ -0,0 +1,8 @@
+// 20.2.2.21 Math.log10(x)
+var $export = require('./$.export');
+
+$export($export.S, 'Math', {
+ log10: function log10(x){
+ return Math.log(x) / Math.LN10;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.log1p.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.log1p.js
new file mode 100644
index 00000000..31c395ec
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.log1p.js
@@ -0,0 +1,4 @@
+// 20.2.2.20 Math.log1p(x)
+var $export = require('./$.export');
+
+$export($export.S, 'Math', {log1p: require('./$.math-log1p')});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.log2.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.log2.js
new file mode 100644
index 00000000..24c0124b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.log2.js
@@ -0,0 +1,8 @@
+// 20.2.2.22 Math.log2(x)
+var $export = require('./$.export');
+
+$export($export.S, 'Math', {
+ log2: function log2(x){
+ return Math.log(x) / Math.LN2;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.sign.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.sign.js
new file mode 100644
index 00000000..fd8d8bc3
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.sign.js
@@ -0,0 +1,4 @@
+// 20.2.2.28 Math.sign(x)
+var $export = require('./$.export');
+
+$export($export.S, 'Math', {sign: require('./$.math-sign')});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.sinh.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.sinh.js
new file mode 100644
index 00000000..a01c4d37
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.sinh.js
@@ -0,0 +1,15 @@
+// 20.2.2.30 Math.sinh(x)
+var $export = require('./$.export')
+ , expm1 = require('./$.math-expm1')
+ , exp = Math.exp;
+
+// V8 near Chromium 38 has a problem with very small numbers
+$export($export.S + $export.F * require('./$.fails')(function(){
+ return !Math.sinh(-2e-17) != -2e-17;
+}), 'Math', {
+ sinh: function sinh(x){
+ return Math.abs(x = +x) < 1
+ ? (expm1(x) - expm1(-x)) / 2
+ : (exp(x - 1) - exp(-x - 1)) * (Math.E / 2);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.tanh.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.tanh.js
new file mode 100644
index 00000000..0d081a5d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.tanh.js
@@ -0,0 +1,12 @@
+// 20.2.2.33 Math.tanh(x)
+var $export = require('./$.export')
+ , expm1 = require('./$.math-expm1')
+ , exp = Math.exp;
+
+$export($export.S, 'Math', {
+ tanh: function tanh(x){
+ var a = expm1(x = +x)
+ , b = expm1(-x);
+ return a == Infinity ? 1 : b == Infinity ? -1 : (a - b) / (exp(x) + exp(-x));
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.trunc.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.trunc.js
new file mode 100644
index 00000000..f3f08559
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.math.trunc.js
@@ -0,0 +1,8 @@
+// 20.2.2.34 Math.trunc(x)
+var $export = require('./$.export');
+
+$export($export.S, 'Math', {
+ trunc: function trunc(it){
+ return (it > 0 ? Math.floor : Math.ceil)(it);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.constructor.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.constructor.js
new file mode 100644
index 00000000..065af1a9
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.constructor.js
@@ -0,0 +1,66 @@
+'use strict';
+var $ = require('./$')
+ , global = require('./$.global')
+ , has = require('./$.has')
+ , cof = require('./$.cof')
+ , toPrimitive = require('./$.to-primitive')
+ , fails = require('./$.fails')
+ , $trim = require('./$.string-trim').trim
+ , NUMBER = 'Number'
+ , $Number = global[NUMBER]
+ , Base = $Number
+ , proto = $Number.prototype
+ // Opera ~12 has broken Object#toString
+ , BROKEN_COF = cof($.create(proto)) == NUMBER
+ , TRIM = 'trim' in String.prototype;
+
+// 7.1.3 ToNumber(argument)
+var toNumber = function(argument){
+ var it = toPrimitive(argument, false);
+ if(typeof it == 'string' && it.length > 2){
+ it = TRIM ? it.trim() : $trim(it, 3);
+ var first = it.charCodeAt(0)
+ , third, radix, maxCode;
+ if(first === 43 || first === 45){
+ third = it.charCodeAt(2);
+ if(third === 88 || third === 120)return NaN; // Number('+0x1') should be NaN, old V8 fix
+ } else if(first === 48){
+ switch(it.charCodeAt(1)){
+ case 66 : case 98 : radix = 2; maxCode = 49; break; // fast equal /^0b[01]+$/i
+ case 79 : case 111 : radix = 8; maxCode = 55; break; // fast equal /^0o[0-7]+$/i
+ default : return +it;
+ }
+ for(var digits = it.slice(2), i = 0, l = digits.length, code; i < l; i++){
+ code = digits.charCodeAt(i);
+ // parseInt parses a string to a first unavailable symbol
+ // but ToNumber should return NaN if a string contains unavailable symbols
+ if(code < 48 || code > maxCode)return NaN;
+ } return parseInt(digits, radix);
+ }
+ } return +it;
+};
+
+if(!$Number(' 0o1') || !$Number('0b1') || $Number('+0x1')){
+ $Number = function Number(value){
+ var it = arguments.length < 1 ? 0 : value
+ , that = this;
+ return that instanceof $Number
+ // check on 1..constructor(foo) case
+ && (BROKEN_COF ? fails(function(){ proto.valueOf.call(that); }) : cof(that) != NUMBER)
+ ? new Base(toNumber(it)) : toNumber(it);
+ };
+ $.each.call(require('./$.descriptors') ? $.getNames(Base) : (
+ // ES3:
+ 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +
+ // ES6 (in case, if modules with ES6 Number statics required before):
+ 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +
+ 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'
+ ).split(','), function(key){
+ if(has(Base, key) && !has($Number, key)){
+ $.setDesc($Number, key, $.getDesc(Base, key));
+ }
+ });
+ $Number.prototype = proto;
+ proto.constructor = $Number;
+ require('./$.redefine')(global, NUMBER, $Number);
+}
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.epsilon.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.epsilon.js
new file mode 100644
index 00000000..45c865cf
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.epsilon.js
@@ -0,0 +1,4 @@
+// 20.1.2.1 Number.EPSILON
+var $export = require('./$.export');
+
+$export($export.S, 'Number', {EPSILON: Math.pow(2, -52)});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.is-finite.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.is-finite.js
new file mode 100644
index 00000000..362a6c80
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.is-finite.js
@@ -0,0 +1,9 @@
+// 20.1.2.2 Number.isFinite(number)
+var $export = require('./$.export')
+ , _isFinite = require('./$.global').isFinite;
+
+$export($export.S, 'Number', {
+ isFinite: function isFinite(it){
+ return typeof it == 'number' && _isFinite(it);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.is-integer.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.is-integer.js
new file mode 100644
index 00000000..189db9a2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.is-integer.js
@@ -0,0 +1,4 @@
+// 20.1.2.3 Number.isInteger(number)
+var $export = require('./$.export');
+
+$export($export.S, 'Number', {isInteger: require('./$.is-integer')});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.is-nan.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.is-nan.js
new file mode 100644
index 00000000..151bb4b2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.is-nan.js
@@ -0,0 +1,8 @@
+// 20.1.2.4 Number.isNaN(number)
+var $export = require('./$.export');
+
+$export($export.S, 'Number', {
+ isNaN: function isNaN(number){
+ return number != number;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.is-safe-integer.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.is-safe-integer.js
new file mode 100644
index 00000000..e23b4cbc
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.is-safe-integer.js
@@ -0,0 +1,10 @@
+// 20.1.2.5 Number.isSafeInteger(number)
+var $export = require('./$.export')
+ , isInteger = require('./$.is-integer')
+ , abs = Math.abs;
+
+$export($export.S, 'Number', {
+ isSafeInteger: function isSafeInteger(number){
+ return isInteger(number) && abs(number) <= 0x1fffffffffffff;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.max-safe-integer.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.max-safe-integer.js
new file mode 100644
index 00000000..a1aaf741
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.max-safe-integer.js
@@ -0,0 +1,4 @@
+// 20.1.2.6 Number.MAX_SAFE_INTEGER
+var $export = require('./$.export');
+
+$export($export.S, 'Number', {MAX_SAFE_INTEGER: 0x1fffffffffffff});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.min-safe-integer.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.min-safe-integer.js
new file mode 100644
index 00000000..ab97cb5d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.min-safe-integer.js
@@ -0,0 +1,4 @@
+// 20.1.2.10 Number.MIN_SAFE_INTEGER
+var $export = require('./$.export');
+
+$export($export.S, 'Number', {MIN_SAFE_INTEGER: -0x1fffffffffffff});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.parse-float.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.parse-float.js
new file mode 100644
index 00000000..1d0c9674
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.parse-float.js
@@ -0,0 +1,4 @@
+// 20.1.2.12 Number.parseFloat(string)
+var $export = require('./$.export');
+
+$export($export.S, 'Number', {parseFloat: parseFloat});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.parse-int.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.parse-int.js
new file mode 100644
index 00000000..813b5b79
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.number.parse-int.js
@@ -0,0 +1,4 @@
+// 20.1.2.13 Number.parseInt(string, radix)
+var $export = require('./$.export');
+
+$export($export.S, 'Number', {parseInt: parseInt});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.assign.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.assign.js
new file mode 100644
index 00000000..b62e7a42
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.assign.js
@@ -0,0 +1,4 @@
+// 19.1.3.1 Object.assign(target, source)
+var $export = require('./$.export');
+
+$export($export.S + $export.F, 'Object', {assign: require('./$.object-assign')});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.freeze.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.freeze.js
new file mode 100644
index 00000000..fa87c951
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.freeze.js
@@ -0,0 +1,8 @@
+// 19.1.2.5 Object.freeze(O)
+var isObject = require('./$.is-object');
+
+require('./$.object-sap')('freeze', function($freeze){
+ return function freeze(it){
+ return $freeze && isObject(it) ? $freeze(it) : it;
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.get-own-property-descriptor.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.get-own-property-descriptor.js
new file mode 100644
index 00000000..9b253acd
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.get-own-property-descriptor.js
@@ -0,0 +1,8 @@
+// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
+var toIObject = require('./$.to-iobject');
+
+require('./$.object-sap')('getOwnPropertyDescriptor', function($getOwnPropertyDescriptor){
+ return function getOwnPropertyDescriptor(it, key){
+ return $getOwnPropertyDescriptor(toIObject(it), key);
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.get-own-property-names.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.get-own-property-names.js
new file mode 100644
index 00000000..e87bcf60
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.get-own-property-names.js
@@ -0,0 +1,4 @@
+// 19.1.2.7 Object.getOwnPropertyNames(O)
+require('./$.object-sap')('getOwnPropertyNames', function(){
+ return require('./$.get-names').get;
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.get-prototype-of.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.get-prototype-of.js
new file mode 100644
index 00000000..9ec0405b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.get-prototype-of.js
@@ -0,0 +1,8 @@
+// 19.1.2.9 Object.getPrototypeOf(O)
+var toObject = require('./$.to-object');
+
+require('./$.object-sap')('getPrototypeOf', function($getPrototypeOf){
+ return function getPrototypeOf(it){
+ return $getPrototypeOf(toObject(it));
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.is-extensible.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.is-extensible.js
new file mode 100644
index 00000000..ada2b95a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.is-extensible.js
@@ -0,0 +1,8 @@
+// 19.1.2.11 Object.isExtensible(O)
+var isObject = require('./$.is-object');
+
+require('./$.object-sap')('isExtensible', function($isExtensible){
+ return function isExtensible(it){
+ return isObject(it) ? $isExtensible ? $isExtensible(it) : true : false;
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.is-frozen.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.is-frozen.js
new file mode 100644
index 00000000..b3e44d1b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.is-frozen.js
@@ -0,0 +1,8 @@
+// 19.1.2.12 Object.isFrozen(O)
+var isObject = require('./$.is-object');
+
+require('./$.object-sap')('isFrozen', function($isFrozen){
+ return function isFrozen(it){
+ return isObject(it) ? $isFrozen ? $isFrozen(it) : false : true;
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.is-sealed.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.is-sealed.js
new file mode 100644
index 00000000..423caf33
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.is-sealed.js
@@ -0,0 +1,8 @@
+// 19.1.2.13 Object.isSealed(O)
+var isObject = require('./$.is-object');
+
+require('./$.object-sap')('isSealed', function($isSealed){
+ return function isSealed(it){
+ return isObject(it) ? $isSealed ? $isSealed(it) : false : true;
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.is.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.is.js
new file mode 100644
index 00000000..3ae3b604
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.is.js
@@ -0,0 +1,3 @@
+// 19.1.3.10 Object.is(value1, value2)
+var $export = require('./$.export');
+$export($export.S, 'Object', {is: require('./$.same-value')});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.keys.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.keys.js
new file mode 100644
index 00000000..e3c18c02
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.keys.js
@@ -0,0 +1,8 @@
+// 19.1.2.14 Object.keys(O)
+var toObject = require('./$.to-object');
+
+require('./$.object-sap')('keys', function($keys){
+ return function keys(it){
+ return $keys(toObject(it));
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.prevent-extensions.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.prevent-extensions.js
new file mode 100644
index 00000000..20f879e2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.prevent-extensions.js
@@ -0,0 +1,8 @@
+// 19.1.2.15 Object.preventExtensions(O)
+var isObject = require('./$.is-object');
+
+require('./$.object-sap')('preventExtensions', function($preventExtensions){
+ return function preventExtensions(it){
+ return $preventExtensions && isObject(it) ? $preventExtensions(it) : it;
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.seal.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.seal.js
new file mode 100644
index 00000000..85a7fa98
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.seal.js
@@ -0,0 +1,8 @@
+// 19.1.2.17 Object.seal(O)
+var isObject = require('./$.is-object');
+
+require('./$.object-sap')('seal', function($seal){
+ return function seal(it){
+ return $seal && isObject(it) ? $seal(it) : it;
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.set-prototype-of.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.set-prototype-of.js
new file mode 100644
index 00000000..79a147c3
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.set-prototype-of.js
@@ -0,0 +1,3 @@
+// 19.1.3.19 Object.setPrototypeOf(O, proto)
+var $export = require('./$.export');
+$export($export.S, 'Object', {setPrototypeOf: require('./$.set-proto').set});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.to-string.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.to-string.js
new file mode 100644
index 00000000..409d5193
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.object.to-string.js
@@ -0,0 +1,10 @@
+'use strict';
+// 19.1.3.6 Object.prototype.toString()
+var classof = require('./$.classof')
+ , test = {};
+test[require('./$.wks')('toStringTag')] = 'z';
+if(test + '' != '[object z]'){
+ require('./$.redefine')(Object.prototype, 'toString', function toString(){
+ return '[object ' + classof(this) + ']';
+ }, true);
+}
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.promise.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.promise.js
new file mode 100644
index 00000000..fbf20177
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.promise.js
@@ -0,0 +1,293 @@
+'use strict';
+var $ = require('./$')
+ , LIBRARY = require('./$.library')
+ , global = require('./$.global')
+ , ctx = require('./$.ctx')
+ , classof = require('./$.classof')
+ , $export = require('./$.export')
+ , isObject = require('./$.is-object')
+ , anObject = require('./$.an-object')
+ , aFunction = require('./$.a-function')
+ , strictNew = require('./$.strict-new')
+ , forOf = require('./$.for-of')
+ , setProto = require('./$.set-proto').set
+ , same = require('./$.same-value')
+ , SPECIES = require('./$.wks')('species')
+ , speciesConstructor = require('./$.species-constructor')
+ , asap = require('./$.microtask')
+ , PROMISE = 'Promise'
+ , process = global.process
+ , isNode = classof(process) == 'process'
+ , P = global[PROMISE]
+ , empty = function(){ /* empty */ }
+ , Wrapper;
+
+var testResolve = function(sub){
+ var test = new P(empty), promise;
+ if(sub)test.constructor = function(exec){
+ exec(empty, empty);
+ };
+ (promise = P.resolve(test))['catch'](empty);
+ return promise === test;
+};
+
+var USE_NATIVE = function(){
+ var works = false;
+ function P2(x){
+ var self = new P(x);
+ setProto(self, P2.prototype);
+ return self;
+ }
+ try {
+ works = P && P.resolve && testResolve();
+ setProto(P2, P);
+ P2.prototype = $.create(P.prototype, {constructor: {value: P2}});
+ // actual Firefox has broken subclass support, test that
+ if(!(P2.resolve(5).then(function(){}) instanceof P2)){
+ works = false;
+ }
+ // actual V8 bug, https://code.google.com/p/v8/issues/detail?id=4162
+ if(works && require('./$.descriptors')){
+ var thenableThenGotten = false;
+ P.resolve($.setDesc({}, 'then', {
+ get: function(){ thenableThenGotten = true; }
+ }));
+ works = thenableThenGotten;
+ }
+ } catch(e){ works = false; }
+ return works;
+}();
+
+// helpers
+var sameConstructor = function(a, b){
+ // library wrapper special case
+ if(LIBRARY && a === P && b === Wrapper)return true;
+ return same(a, b);
+};
+var getConstructor = function(C){
+ var S = anObject(C)[SPECIES];
+ return S != undefined ? S : C;
+};
+var isThenable = function(it){
+ var then;
+ return isObject(it) && typeof (then = it.then) == 'function' ? then : false;
+};
+var PromiseCapability = function(C){
+ var resolve, reject;
+ this.promise = new C(function($$resolve, $$reject){
+ if(resolve !== undefined || reject !== undefined)throw TypeError('Bad Promise constructor');
+ resolve = $$resolve;
+ reject = $$reject;
+ });
+ this.resolve = aFunction(resolve),
+ this.reject = aFunction(reject)
+};
+var perform = function(exec){
+ try {
+ exec();
+ } catch(e){
+ return {error: e};
+ }
+};
+var notify = function(record, isReject){
+ if(record.n)return;
+ record.n = true;
+ var chain = record.c;
+ asap(function(){
+ var value = record.v
+ , ok = record.s == 1
+ , i = 0;
+ var run = function(reaction){
+ var handler = ok ? reaction.ok : reaction.fail
+ , resolve = reaction.resolve
+ , reject = reaction.reject
+ , result, then;
+ try {
+ if(handler){
+ if(!ok)record.h = true;
+ result = handler === true ? value : handler(value);
+ if(result === reaction.promise){
+ reject(TypeError('Promise-chain cycle'));
+ } else if(then = isThenable(result)){
+ then.call(result, resolve, reject);
+ } else resolve(result);
+ } else reject(value);
+ } catch(e){
+ reject(e);
+ }
+ };
+ while(chain.length > i)run(chain[i++]); // variable length - can't use forEach
+ chain.length = 0;
+ record.n = false;
+ if(isReject)setTimeout(function(){
+ var promise = record.p
+ , handler, console;
+ if(isUnhandled(promise)){
+ if(isNode){
+ process.emit('unhandledRejection', value, promise);
+ } else if(handler = global.onunhandledrejection){
+ handler({promise: promise, reason: value});
+ } else if((console = global.console) && console.error){
+ console.error('Unhandled promise rejection', value);
+ }
+ } record.a = undefined;
+ }, 1);
+ });
+};
+var isUnhandled = function(promise){
+ var record = promise._d
+ , chain = record.a || record.c
+ , i = 0
+ , reaction;
+ if(record.h)return false;
+ while(chain.length > i){
+ reaction = chain[i++];
+ if(reaction.fail || !isUnhandled(reaction.promise))return false;
+ } return true;
+};
+var $reject = function(value){
+ var record = this;
+ if(record.d)return;
+ record.d = true;
+ record = record.r || record; // unwrap
+ record.v = value;
+ record.s = 2;
+ record.a = record.c.slice();
+ notify(record, true);
+};
+var $resolve = function(value){
+ var record = this
+ , then;
+ if(record.d)return;
+ record.d = true;
+ record = record.r || record; // unwrap
+ try {
+ if(record.p === value)throw TypeError("Promise can't be resolved itself");
+ if(then = isThenable(value)){
+ asap(function(){
+ var wrapper = {r: record, d: false}; // wrap
+ try {
+ then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));
+ } catch(e){
+ $reject.call(wrapper, e);
+ }
+ });
+ } else {
+ record.v = value;
+ record.s = 1;
+ notify(record, false);
+ }
+ } catch(e){
+ $reject.call({r: record, d: false}, e); // wrap
+ }
+};
+
+// constructor polyfill
+if(!USE_NATIVE){
+ // 25.4.3.1 Promise(executor)
+ P = function Promise(executor){
+ aFunction(executor);
+ var record = this._d = {
+ p: strictNew(this, P, PROMISE), // <- promise
+ c: [], // <- awaiting reactions
+ a: undefined, // <- checked in isUnhandled reactions
+ s: 0, // <- state
+ d: false, // <- done
+ v: undefined, // <- value
+ h: false, // <- handled rejection
+ n: false // <- notify
+ };
+ try {
+ executor(ctx($resolve, record, 1), ctx($reject, record, 1));
+ } catch(err){
+ $reject.call(record, err);
+ }
+ };
+ require('./$.redefine-all')(P.prototype, {
+ // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)
+ then: function then(onFulfilled, onRejected){
+ var reaction = new PromiseCapability(speciesConstructor(this, P))
+ , promise = reaction.promise
+ , record = this._d;
+ reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;
+ reaction.fail = typeof onRejected == 'function' && onRejected;
+ record.c.push(reaction);
+ if(record.a)record.a.push(reaction);
+ if(record.s)notify(record, false);
+ return promise;
+ },
+ // 25.4.5.1 Promise.prototype.catch(onRejected)
+ 'catch': function(onRejected){
+ return this.then(undefined, onRejected);
+ }
+ });
+}
+
+$export($export.G + $export.W + $export.F * !USE_NATIVE, {Promise: P});
+require('./$.set-to-string-tag')(P, PROMISE);
+require('./$.set-species')(PROMISE);
+Wrapper = require('./$.core')[PROMISE];
+
+// statics
+$export($export.S + $export.F * !USE_NATIVE, PROMISE, {
+ // 25.4.4.5 Promise.reject(r)
+ reject: function reject(r){
+ var capability = new PromiseCapability(this)
+ , $$reject = capability.reject;
+ $$reject(r);
+ return capability.promise;
+ }
+});
+$export($export.S + $export.F * (!USE_NATIVE || testResolve(true)), PROMISE, {
+ // 25.4.4.6 Promise.resolve(x)
+ resolve: function resolve(x){
+ // instanceof instead of internal slot check because we should fix it without replacement native Promise core
+ if(x instanceof P && sameConstructor(x.constructor, this))return x;
+ var capability = new PromiseCapability(this)
+ , $$resolve = capability.resolve;
+ $$resolve(x);
+ return capability.promise;
+ }
+});
+$export($export.S + $export.F * !(USE_NATIVE && require('./$.iter-detect')(function(iter){
+ P.all(iter)['catch'](function(){});
+})), PROMISE, {
+ // 25.4.4.1 Promise.all(iterable)
+ all: function all(iterable){
+ var C = getConstructor(this)
+ , capability = new PromiseCapability(C)
+ , resolve = capability.resolve
+ , reject = capability.reject
+ , values = [];
+ var abrupt = perform(function(){
+ forOf(iterable, false, values.push, values);
+ var remaining = values.length
+ , results = Array(remaining);
+ if(remaining)$.each.call(values, function(promise, index){
+ var alreadyCalled = false;
+ C.resolve(promise).then(function(value){
+ if(alreadyCalled)return;
+ alreadyCalled = true;
+ results[index] = value;
+ --remaining || resolve(results);
+ }, reject);
+ });
+ else resolve(results);
+ });
+ if(abrupt)reject(abrupt.error);
+ return capability.promise;
+ },
+ // 25.4.4.4 Promise.race(iterable)
+ race: function race(iterable){
+ var C = getConstructor(this)
+ , capability = new PromiseCapability(C)
+ , reject = capability.reject;
+ var abrupt = perform(function(){
+ forOf(iterable, false, function(promise){
+ C.resolve(promise).then(capability.resolve, reject);
+ });
+ });
+ if(abrupt)reject(abrupt.error);
+ return capability.promise;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.apply.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.apply.js
new file mode 100644
index 00000000..361a2e2e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.apply.js
@@ -0,0 +1,10 @@
+// 26.1.1 Reflect.apply(target, thisArgument, argumentsList)
+var $export = require('./$.export')
+ , _apply = Function.apply
+ , anObject = require('./$.an-object');
+
+$export($export.S, 'Reflect', {
+ apply: function apply(target, thisArgument, argumentsList){
+ return _apply.call(target, thisArgument, anObject(argumentsList));
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.construct.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.construct.js
new file mode 100644
index 00000000..c3928cd9
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.construct.js
@@ -0,0 +1,39 @@
+// 26.1.2 Reflect.construct(target, argumentsList [, newTarget])
+var $ = require('./$')
+ , $export = require('./$.export')
+ , aFunction = require('./$.a-function')
+ , anObject = require('./$.an-object')
+ , isObject = require('./$.is-object')
+ , bind = Function.bind || require('./$.core').Function.prototype.bind;
+
+// MS Edge supports only 2 arguments
+// FF Nightly sets third argument as `new.target`, but does not create `this` from it
+$export($export.S + $export.F * require('./$.fails')(function(){
+ function F(){}
+ return !(Reflect.construct(function(){}, [], F) instanceof F);
+}), 'Reflect', {
+ construct: function construct(Target, args /*, newTarget*/){
+ aFunction(Target);
+ anObject(args);
+ var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);
+ if(Target == newTarget){
+ // w/o altered newTarget, optimization for 0-4 arguments
+ switch(args.length){
+ case 0: return new Target;
+ case 1: return new Target(args[0]);
+ case 2: return new Target(args[0], args[1]);
+ case 3: return new Target(args[0], args[1], args[2]);
+ case 4: return new Target(args[0], args[1], args[2], args[3]);
+ }
+ // w/o altered newTarget, lot of arguments case
+ var $args = [null];
+ $args.push.apply($args, args);
+ return new (bind.apply(Target, $args));
+ }
+ // with altered newTarget, not support built-in constructors
+ var proto = newTarget.prototype
+ , instance = $.create(isObject(proto) ? proto : Object.prototype)
+ , result = Function.apply.call(Target, instance, args);
+ return isObject(result) ? result : instance;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.define-property.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.define-property.js
new file mode 100644
index 00000000..5f7fc6a1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.define-property.js
@@ -0,0 +1,19 @@
+// 26.1.3 Reflect.defineProperty(target, propertyKey, attributes)
+var $ = require('./$')
+ , $export = require('./$.export')
+ , anObject = require('./$.an-object');
+
+// MS Edge has broken Reflect.defineProperty - throwing instead of returning false
+$export($export.S + $export.F * require('./$.fails')(function(){
+ Reflect.defineProperty($.setDesc({}, 1, {value: 1}), 1, {value: 2});
+}), 'Reflect', {
+ defineProperty: function defineProperty(target, propertyKey, attributes){
+ anObject(target);
+ try {
+ $.setDesc(target, propertyKey, attributes);
+ return true;
+ } catch(e){
+ return false;
+ }
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.delete-property.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.delete-property.js
new file mode 100644
index 00000000..18526e5b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.delete-property.js
@@ -0,0 +1,11 @@
+// 26.1.4 Reflect.deleteProperty(target, propertyKey)
+var $export = require('./$.export')
+ , getDesc = require('./$').getDesc
+ , anObject = require('./$.an-object');
+
+$export($export.S, 'Reflect', {
+ deleteProperty: function deleteProperty(target, propertyKey){
+ var desc = getDesc(anObject(target), propertyKey);
+ return desc && !desc.configurable ? false : delete target[propertyKey];
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.enumerate.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.enumerate.js
new file mode 100644
index 00000000..73452e2f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.enumerate.js
@@ -0,0 +1,26 @@
+'use strict';
+// 26.1.5 Reflect.enumerate(target)
+var $export = require('./$.export')
+ , anObject = require('./$.an-object');
+var Enumerate = function(iterated){
+ this._t = anObject(iterated); // target
+ this._i = 0; // next index
+ var keys = this._k = [] // keys
+ , key;
+ for(key in iterated)keys.push(key);
+};
+require('./$.iter-create')(Enumerate, 'Object', function(){
+ var that = this
+ , keys = that._k
+ , key;
+ do {
+ if(that._i >= keys.length)return {value: undefined, done: true};
+ } while(!((key = keys[that._i++]) in that._t));
+ return {value: key, done: false};
+});
+
+$export($export.S, 'Reflect', {
+ enumerate: function enumerate(target){
+ return new Enumerate(target);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.get-own-property-descriptor.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.get-own-property-descriptor.js
new file mode 100644
index 00000000..a3a2e016
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.get-own-property-descriptor.js
@@ -0,0 +1,10 @@
+// 26.1.7 Reflect.getOwnPropertyDescriptor(target, propertyKey)
+var $ = require('./$')
+ , $export = require('./$.export')
+ , anObject = require('./$.an-object');
+
+$export($export.S, 'Reflect', {
+ getOwnPropertyDescriptor: function getOwnPropertyDescriptor(target, propertyKey){
+ return $.getDesc(anObject(target), propertyKey);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.get-prototype-of.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.get-prototype-of.js
new file mode 100644
index 00000000..c06bfa45
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.get-prototype-of.js
@@ -0,0 +1,10 @@
+// 26.1.8 Reflect.getPrototypeOf(target)
+var $export = require('./$.export')
+ , getProto = require('./$').getProto
+ , anObject = require('./$.an-object');
+
+$export($export.S, 'Reflect', {
+ getPrototypeOf: function getPrototypeOf(target){
+ return getProto(anObject(target));
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.get.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.get.js
new file mode 100644
index 00000000..cbb0caaf
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.get.js
@@ -0,0 +1,20 @@
+// 26.1.6 Reflect.get(target, propertyKey [, receiver])
+var $ = require('./$')
+ , has = require('./$.has')
+ , $export = require('./$.export')
+ , isObject = require('./$.is-object')
+ , anObject = require('./$.an-object');
+
+function get(target, propertyKey/*, receiver*/){
+ var receiver = arguments.length < 3 ? target : arguments[2]
+ , desc, proto;
+ if(anObject(target) === receiver)return target[propertyKey];
+ if(desc = $.getDesc(target, propertyKey))return has(desc, 'value')
+ ? desc.value
+ : desc.get !== undefined
+ ? desc.get.call(receiver)
+ : undefined;
+ if(isObject(proto = $.getProto(target)))return get(proto, propertyKey, receiver);
+}
+
+$export($export.S, 'Reflect', {get: get});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.has.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.has.js
new file mode 100644
index 00000000..65c9e82f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.has.js
@@ -0,0 +1,8 @@
+// 26.1.9 Reflect.has(target, propertyKey)
+var $export = require('./$.export');
+
+$export($export.S, 'Reflect', {
+ has: function has(target, propertyKey){
+ return propertyKey in target;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.is-extensible.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.is-extensible.js
new file mode 100644
index 00000000..b92c4f66
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.is-extensible.js
@@ -0,0 +1,11 @@
+// 26.1.10 Reflect.isExtensible(target)
+var $export = require('./$.export')
+ , anObject = require('./$.an-object')
+ , $isExtensible = Object.isExtensible;
+
+$export($export.S, 'Reflect', {
+ isExtensible: function isExtensible(target){
+ anObject(target);
+ return $isExtensible ? $isExtensible(target) : true;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.own-keys.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.own-keys.js
new file mode 100644
index 00000000..db79fdab
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.own-keys.js
@@ -0,0 +1,4 @@
+// 26.1.11 Reflect.ownKeys(target)
+var $export = require('./$.export');
+
+$export($export.S, 'Reflect', {ownKeys: require('./$.own-keys')});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.prevent-extensions.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.prevent-extensions.js
new file mode 100644
index 00000000..f5ccfc2a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.prevent-extensions.js
@@ -0,0 +1,16 @@
+// 26.1.12 Reflect.preventExtensions(target)
+var $export = require('./$.export')
+ , anObject = require('./$.an-object')
+ , $preventExtensions = Object.preventExtensions;
+
+$export($export.S, 'Reflect', {
+ preventExtensions: function preventExtensions(target){
+ anObject(target);
+ try {
+ if($preventExtensions)$preventExtensions(target);
+ return true;
+ } catch(e){
+ return false;
+ }
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.set-prototype-of.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.set-prototype-of.js
new file mode 100644
index 00000000..e769436f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.set-prototype-of.js
@@ -0,0 +1,15 @@
+// 26.1.14 Reflect.setPrototypeOf(target, proto)
+var $export = require('./$.export')
+ , setProto = require('./$.set-proto');
+
+if(setProto)$export($export.S, 'Reflect', {
+ setPrototypeOf: function setPrototypeOf(target, proto){
+ setProto.check(target, proto);
+ try {
+ setProto.set(target, proto);
+ return true;
+ } catch(e){
+ return false;
+ }
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.set.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.set.js
new file mode 100644
index 00000000..0a938e78
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.reflect.set.js
@@ -0,0 +1,29 @@
+// 26.1.13 Reflect.set(target, propertyKey, V [, receiver])
+var $ = require('./$')
+ , has = require('./$.has')
+ , $export = require('./$.export')
+ , createDesc = require('./$.property-desc')
+ , anObject = require('./$.an-object')
+ , isObject = require('./$.is-object');
+
+function set(target, propertyKey, V/*, receiver*/){
+ var receiver = arguments.length < 4 ? target : arguments[3]
+ , ownDesc = $.getDesc(anObject(target), propertyKey)
+ , existingDescriptor, proto;
+ if(!ownDesc){
+ if(isObject(proto = $.getProto(target))){
+ return set(proto, propertyKey, V, receiver);
+ }
+ ownDesc = createDesc(0);
+ }
+ if(has(ownDesc, 'value')){
+ if(ownDesc.writable === false || !isObject(receiver))return false;
+ existingDescriptor = $.getDesc(receiver, propertyKey) || createDesc(0);
+ existingDescriptor.value = V;
+ $.setDesc(receiver, propertyKey, existingDescriptor);
+ return true;
+ }
+ return ownDesc.set === undefined ? false : (ownDesc.set.call(receiver, V), true);
+}
+
+$export($export.S, 'Reflect', {set: set});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.regexp.constructor.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.regexp.constructor.js
new file mode 100644
index 00000000..c7ef61c2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.regexp.constructor.js
@@ -0,0 +1,38 @@
+var $ = require('./$')
+ , global = require('./$.global')
+ , isRegExp = require('./$.is-regexp')
+ , $flags = require('./$.flags')
+ , $RegExp = global.RegExp
+ , Base = $RegExp
+ , proto = $RegExp.prototype
+ , re1 = /a/g
+ , re2 = /a/g
+ // "new" creates a new object, old webkit buggy here
+ , CORRECT_NEW = new $RegExp(re1) !== re1;
+
+if(require('./$.descriptors') && (!CORRECT_NEW || require('./$.fails')(function(){
+ re2[require('./$.wks')('match')] = false;
+ // RegExp constructor can alter flags and IsRegExp works correct with @@match
+ return $RegExp(re1) != re1 || $RegExp(re2) == re2 || $RegExp(re1, 'i') != '/a/i';
+}))){
+ $RegExp = function RegExp(p, f){
+ var piRE = isRegExp(p)
+ , fiU = f === undefined;
+ return !(this instanceof $RegExp) && piRE && p.constructor === $RegExp && fiU ? p
+ : CORRECT_NEW
+ ? new Base(piRE && !fiU ? p.source : p, f)
+ : Base((piRE = p instanceof $RegExp) ? p.source : p, piRE && fiU ? $flags.call(p) : f);
+ };
+ $.each.call($.getNames(Base), function(key){
+ key in $RegExp || $.setDesc($RegExp, key, {
+ configurable: true,
+ get: function(){ return Base[key]; },
+ set: function(it){ Base[key] = it; }
+ });
+ });
+ proto.constructor = $RegExp;
+ $RegExp.prototype = proto;
+ require('./$.redefine')(global, 'RegExp', $RegExp);
+}
+
+require('./$.set-species')('RegExp');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.regexp.flags.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.regexp.flags.js
new file mode 100644
index 00000000..5984c214
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.regexp.flags.js
@@ -0,0 +1,6 @@
+// 21.2.5.3 get RegExp.prototype.flags()
+var $ = require('./$');
+if(require('./$.descriptors') && /./g.flags != 'g')$.setDesc(RegExp.prototype, 'flags', {
+ configurable: true,
+ get: require('./$.flags')
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.regexp.match.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.regexp.match.js
new file mode 100644
index 00000000..5cd194c2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.regexp.match.js
@@ -0,0 +1,10 @@
+// @@match logic
+require('./$.fix-re-wks')('match', 1, function(defined, MATCH){
+ // 21.1.3.11 String.prototype.match(regexp)
+ return function match(regexp){
+ 'use strict';
+ var O = defined(this)
+ , fn = regexp == undefined ? undefined : regexp[MATCH];
+ return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.regexp.replace.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.regexp.replace.js
new file mode 100644
index 00000000..140c5072
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.regexp.replace.js
@@ -0,0 +1,12 @@
+// @@replace logic
+require('./$.fix-re-wks')('replace', 2, function(defined, REPLACE, $replace){
+ // 21.1.3.14 String.prototype.replace(searchValue, replaceValue)
+ return function replace(searchValue, replaceValue){
+ 'use strict';
+ var O = defined(this)
+ , fn = searchValue == undefined ? undefined : searchValue[REPLACE];
+ return fn !== undefined
+ ? fn.call(searchValue, O, replaceValue)
+ : $replace.call(String(O), searchValue, replaceValue);
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.regexp.search.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.regexp.search.js
new file mode 100644
index 00000000..adfd5c9c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.regexp.search.js
@@ -0,0 +1,10 @@
+// @@search logic
+require('./$.fix-re-wks')('search', 1, function(defined, SEARCH){
+ // 21.1.3.15 String.prototype.search(regexp)
+ return function search(regexp){
+ 'use strict';
+ var O = defined(this)
+ , fn = regexp == undefined ? undefined : regexp[SEARCH];
+ return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O));
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.regexp.split.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.regexp.split.js
new file mode 100644
index 00000000..0607fb06
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.regexp.split.js
@@ -0,0 +1,12 @@
+// @@split logic
+require('./$.fix-re-wks')('split', 2, function(defined, SPLIT, $split){
+ // 21.1.3.17 String.prototype.split(separator, limit)
+ return function split(separator, limit){
+ 'use strict';
+ var O = defined(this)
+ , fn = separator == undefined ? undefined : separator[SPLIT];
+ return fn !== undefined
+ ? fn.call(separator, O, limit)
+ : $split.call(String(O), separator, limit);
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.set.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.set.js
new file mode 100644
index 00000000..8e148c9e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.set.js
@@ -0,0 +1,12 @@
+'use strict';
+var strong = require('./$.collection-strong');
+
+// 23.2 Set Objects
+require('./$.collection')('Set', function(get){
+ return function Set(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };
+}, {
+ // 23.2.3.1 Set.prototype.add(value)
+ add: function add(value){
+ return strong.def(this, value = value === 0 ? 0 : value, value);
+ }
+}, strong);
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.string.code-point-at.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.string.code-point-at.js
new file mode 100644
index 00000000..ebac5518
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.string.code-point-at.js
@@ -0,0 +1,9 @@
+'use strict';
+var $export = require('./$.export')
+ , $at = require('./$.string-at')(false);
+$export($export.P, 'String', {
+ // 21.1.3.3 String.prototype.codePointAt(pos)
+ codePointAt: function codePointAt(pos){
+ return $at(this, pos);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.string.ends-with.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.string.ends-with.js
new file mode 100644
index 00000000..a102da2d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.string.ends-with.js
@@ -0,0 +1,21 @@
+// 21.1.3.6 String.prototype.endsWith(searchString [, endPosition])
+'use strict';
+var $export = require('./$.export')
+ , toLength = require('./$.to-length')
+ , context = require('./$.string-context')
+ , ENDS_WITH = 'endsWith'
+ , $endsWith = ''[ENDS_WITH];
+
+$export($export.P + $export.F * require('./$.fails-is-regexp')(ENDS_WITH), 'String', {
+ endsWith: function endsWith(searchString /*, endPosition = @length */){
+ var that = context(this, searchString, ENDS_WITH)
+ , $$ = arguments
+ , endPosition = $$.length > 1 ? $$[1] : undefined
+ , len = toLength(that.length)
+ , end = endPosition === undefined ? len : Math.min(toLength(endPosition), len)
+ , search = String(searchString);
+ return $endsWith
+ ? $endsWith.call(that, search, end)
+ : that.slice(end - search.length, end) === search;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.string.from-code-point.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.string.from-code-point.js
new file mode 100644
index 00000000..b0bd166b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.string.from-code-point.js
@@ -0,0 +1,24 @@
+var $export = require('./$.export')
+ , toIndex = require('./$.to-index')
+ , fromCharCode = String.fromCharCode
+ , $fromCodePoint = String.fromCodePoint;
+
+// length should be 1, old FF problem
+$export($export.S + $export.F * (!!$fromCodePoint && $fromCodePoint.length != 1), 'String', {
+ // 21.1.2.2 String.fromCodePoint(...codePoints)
+ fromCodePoint: function fromCodePoint(x){ // eslint-disable-line no-unused-vars
+ var res = []
+ , $$ = arguments
+ , $$len = $$.length
+ , i = 0
+ , code;
+ while($$len > i){
+ code = +$$[i++];
+ if(toIndex(code, 0x10ffff) !== code)throw RangeError(code + ' is not a valid code point');
+ res.push(code < 0x10000
+ ? fromCharCode(code)
+ : fromCharCode(((code -= 0x10000) >> 10) + 0xd800, code % 0x400 + 0xdc00)
+ );
+ } return res.join('');
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.string.includes.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.string.includes.js
new file mode 100644
index 00000000..e2ab8db7
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.string.includes.js
@@ -0,0 +1,12 @@
+// 21.1.3.7 String.prototype.includes(searchString, position = 0)
+'use strict';
+var $export = require('./$.export')
+ , context = require('./$.string-context')
+ , INCLUDES = 'includes';
+
+$export($export.P + $export.F * require('./$.fails-is-regexp')(INCLUDES), 'String', {
+ includes: function includes(searchString /*, position = 0 */){
+ return !!~context(this, searchString, INCLUDES)
+ .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.string.iterator.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.string.iterator.js
new file mode 100644
index 00000000..2f4c772c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.string.iterator.js
@@ -0,0 +1,17 @@
+'use strict';
+var $at = require('./$.string-at')(true);
+
+// 21.1.3.27 String.prototype[@@iterator]()
+require('./$.iter-define')(String, 'String', function(iterated){
+ this._t = String(iterated); // target
+ this._i = 0; // next index
+// 21.1.5.2.1 %StringIteratorPrototype%.next()
+}, function(){
+ var O = this._t
+ , index = this._i
+ , point;
+ if(index >= O.length)return {value: undefined, done: true};
+ point = $at(O, index);
+ this._i += point.length;
+ return {value: point, done: false};
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.string.raw.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.string.raw.js
new file mode 100644
index 00000000..64279d23
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.string.raw.js
@@ -0,0 +1,19 @@
+var $export = require('./$.export')
+ , toIObject = require('./$.to-iobject')
+ , toLength = require('./$.to-length');
+
+$export($export.S, 'String', {
+ // 21.1.2.4 String.raw(callSite, ...substitutions)
+ raw: function raw(callSite){
+ var tpl = toIObject(callSite.raw)
+ , len = toLength(tpl.length)
+ , $$ = arguments
+ , $$len = $$.length
+ , res = []
+ , i = 0;
+ while(len > i){
+ res.push(String(tpl[i++]));
+ if(i < $$len)res.push(String($$[i]));
+ } return res.join('');
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.string.repeat.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.string.repeat.js
new file mode 100644
index 00000000..4ec29f66
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.string.repeat.js
@@ -0,0 +1,6 @@
+var $export = require('./$.export');
+
+$export($export.P, 'String', {
+ // 21.1.3.13 String.prototype.repeat(count)
+ repeat: require('./$.string-repeat')
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.string.starts-with.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.string.starts-with.js
new file mode 100644
index 00000000..21143072
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.string.starts-with.js
@@ -0,0 +1,19 @@
+// 21.1.3.18 String.prototype.startsWith(searchString [, position ])
+'use strict';
+var $export = require('./$.export')
+ , toLength = require('./$.to-length')
+ , context = require('./$.string-context')
+ , STARTS_WITH = 'startsWith'
+ , $startsWith = ''[STARTS_WITH];
+
+$export($export.P + $export.F * require('./$.fails-is-regexp')(STARTS_WITH), 'String', {
+ startsWith: function startsWith(searchString /*, position = 0 */){
+ var that = context(this, searchString, STARTS_WITH)
+ , $$ = arguments
+ , index = toLength(Math.min($$.length > 1 ? $$[1] : undefined, that.length))
+ , search = String(searchString);
+ return $startsWith
+ ? $startsWith.call(that, search, index)
+ : that.slice(index, index + search.length) === search;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.string.trim.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.string.trim.js
new file mode 100644
index 00000000..52b75cac
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.string.trim.js
@@ -0,0 +1,7 @@
+'use strict';
+// 21.1.3.25 String.prototype.trim()
+require('./$.string-trim')('trim', function($trim){
+ return function trim(){
+ return $trim(this, 3);
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.symbol.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.symbol.js
new file mode 100644
index 00000000..42b7a3aa
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.symbol.js
@@ -0,0 +1,227 @@
+'use strict';
+// ECMAScript 6 symbols shim
+var $ = require('./$')
+ , global = require('./$.global')
+ , has = require('./$.has')
+ , DESCRIPTORS = require('./$.descriptors')
+ , $export = require('./$.export')
+ , redefine = require('./$.redefine')
+ , $fails = require('./$.fails')
+ , shared = require('./$.shared')
+ , setToStringTag = require('./$.set-to-string-tag')
+ , uid = require('./$.uid')
+ , wks = require('./$.wks')
+ , keyOf = require('./$.keyof')
+ , $names = require('./$.get-names')
+ , enumKeys = require('./$.enum-keys')
+ , isArray = require('./$.is-array')
+ , anObject = require('./$.an-object')
+ , toIObject = require('./$.to-iobject')
+ , createDesc = require('./$.property-desc')
+ , getDesc = $.getDesc
+ , setDesc = $.setDesc
+ , _create = $.create
+ , getNames = $names.get
+ , $Symbol = global.Symbol
+ , $JSON = global.JSON
+ , _stringify = $JSON && $JSON.stringify
+ , setter = false
+ , HIDDEN = wks('_hidden')
+ , isEnum = $.isEnum
+ , SymbolRegistry = shared('symbol-registry')
+ , AllSymbols = shared('symbols')
+ , useNative = typeof $Symbol == 'function'
+ , ObjectProto = Object.prototype;
+
+// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
+var setSymbolDesc = DESCRIPTORS && $fails(function(){
+ return _create(setDesc({}, 'a', {
+ get: function(){ return setDesc(this, 'a', {value: 7}).a; }
+ })).a != 7;
+}) ? function(it, key, D){
+ var protoDesc = getDesc(ObjectProto, key);
+ if(protoDesc)delete ObjectProto[key];
+ setDesc(it, key, D);
+ if(protoDesc && it !== ObjectProto)setDesc(ObjectProto, key, protoDesc);
+} : setDesc;
+
+var wrap = function(tag){
+ var sym = AllSymbols[tag] = _create($Symbol.prototype);
+ sym._k = tag;
+ DESCRIPTORS && setter && setSymbolDesc(ObjectProto, tag, {
+ configurable: true,
+ set: function(value){
+ if(has(this, HIDDEN) && has(this[HIDDEN], tag))this[HIDDEN][tag] = false;
+ setSymbolDesc(this, tag, createDesc(1, value));
+ }
+ });
+ return sym;
+};
+
+var isSymbol = function(it){
+ return typeof it == 'symbol';
+};
+
+var $defineProperty = function defineProperty(it, key, D){
+ if(D && has(AllSymbols, key)){
+ if(!D.enumerable){
+ if(!has(it, HIDDEN))setDesc(it, HIDDEN, createDesc(1, {}));
+ it[HIDDEN][key] = true;
+ } else {
+ if(has(it, HIDDEN) && it[HIDDEN][key])it[HIDDEN][key] = false;
+ D = _create(D, {enumerable: createDesc(0, false)});
+ } return setSymbolDesc(it, key, D);
+ } return setDesc(it, key, D);
+};
+var $defineProperties = function defineProperties(it, P){
+ anObject(it);
+ var keys = enumKeys(P = toIObject(P))
+ , i = 0
+ , l = keys.length
+ , key;
+ while(l > i)$defineProperty(it, key = keys[i++], P[key]);
+ return it;
+};
+var $create = function create(it, P){
+ return P === undefined ? _create(it) : $defineProperties(_create(it), P);
+};
+var $propertyIsEnumerable = function propertyIsEnumerable(key){
+ var E = isEnum.call(this, key);
+ return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key]
+ ? E : true;
+};
+var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key){
+ var D = getDesc(it = toIObject(it), key);
+ if(D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key]))D.enumerable = true;
+ return D;
+};
+var $getOwnPropertyNames = function getOwnPropertyNames(it){
+ var names = getNames(toIObject(it))
+ , result = []
+ , i = 0
+ , key;
+ while(names.length > i)if(!has(AllSymbols, key = names[i++]) && key != HIDDEN)result.push(key);
+ return result;
+};
+var $getOwnPropertySymbols = function getOwnPropertySymbols(it){
+ var names = getNames(toIObject(it))
+ , result = []
+ , i = 0
+ , key;
+ while(names.length > i)if(has(AllSymbols, key = names[i++]))result.push(AllSymbols[key]);
+ return result;
+};
+var $stringify = function stringify(it){
+ if(it === undefined || isSymbol(it))return; // IE8 returns string on undefined
+ var args = [it]
+ , i = 1
+ , $$ = arguments
+ , replacer, $replacer;
+ while($$.length > i)args.push($$[i++]);
+ replacer = args[1];
+ if(typeof replacer == 'function')$replacer = replacer;
+ if($replacer || !isArray(replacer))replacer = function(key, value){
+ if($replacer)value = $replacer.call(this, key, value);
+ if(!isSymbol(value))return value;
+ };
+ args[1] = replacer;
+ return _stringify.apply($JSON, args);
+};
+var buggyJSON = $fails(function(){
+ var S = $Symbol();
+ // MS Edge converts symbol values to JSON as {}
+ // WebKit converts symbol values to JSON as null
+ // V8 throws on boxed symbols
+ return _stringify([S]) != '[null]' || _stringify({a: S}) != '{}' || _stringify(Object(S)) != '{}';
+});
+
+// 19.4.1.1 Symbol([description])
+if(!useNative){
+ $Symbol = function Symbol(){
+ if(isSymbol(this))throw TypeError('Symbol is not a constructor');
+ return wrap(uid(arguments.length > 0 ? arguments[0] : undefined));
+ };
+ redefine($Symbol.prototype, 'toString', function toString(){
+ return this._k;
+ });
+
+ isSymbol = function(it){
+ return it instanceof $Symbol;
+ };
+
+ $.create = $create;
+ $.isEnum = $propertyIsEnumerable;
+ $.getDesc = $getOwnPropertyDescriptor;
+ $.setDesc = $defineProperty;
+ $.setDescs = $defineProperties;
+ $.getNames = $names.get = $getOwnPropertyNames;
+ $.getSymbols = $getOwnPropertySymbols;
+
+ if(DESCRIPTORS && !require('./$.library')){
+ redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
+ }
+}
+
+var symbolStatics = {
+ // 19.4.2.1 Symbol.for(key)
+ 'for': function(key){
+ return has(SymbolRegistry, key += '')
+ ? SymbolRegistry[key]
+ : SymbolRegistry[key] = $Symbol(key);
+ },
+ // 19.4.2.5 Symbol.keyFor(sym)
+ keyFor: function keyFor(key){
+ return keyOf(SymbolRegistry, key);
+ },
+ useSetter: function(){ setter = true; },
+ useSimple: function(){ setter = false; }
+};
+// 19.4.2.2 Symbol.hasInstance
+// 19.4.2.3 Symbol.isConcatSpreadable
+// 19.4.2.4 Symbol.iterator
+// 19.4.2.6 Symbol.match
+// 19.4.2.8 Symbol.replace
+// 19.4.2.9 Symbol.search
+// 19.4.2.10 Symbol.species
+// 19.4.2.11 Symbol.split
+// 19.4.2.12 Symbol.toPrimitive
+// 19.4.2.13 Symbol.toStringTag
+// 19.4.2.14 Symbol.unscopables
+$.each.call((
+ 'hasInstance,isConcatSpreadable,iterator,match,replace,search,' +
+ 'species,split,toPrimitive,toStringTag,unscopables'
+).split(','), function(it){
+ var sym = wks(it);
+ symbolStatics[it] = useNative ? sym : wrap(sym);
+});
+
+setter = true;
+
+$export($export.G + $export.W, {Symbol: $Symbol});
+
+$export($export.S, 'Symbol', symbolStatics);
+
+$export($export.S + $export.F * !useNative, 'Object', {
+ // 19.1.2.2 Object.create(O [, Properties])
+ create: $create,
+ // 19.1.2.4 Object.defineProperty(O, P, Attributes)
+ defineProperty: $defineProperty,
+ // 19.1.2.3 Object.defineProperties(O, Properties)
+ defineProperties: $defineProperties,
+ // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
+ getOwnPropertyDescriptor: $getOwnPropertyDescriptor,
+ // 19.1.2.7 Object.getOwnPropertyNames(O)
+ getOwnPropertyNames: $getOwnPropertyNames,
+ // 19.1.2.8 Object.getOwnPropertySymbols(O)
+ getOwnPropertySymbols: $getOwnPropertySymbols
+});
+
+// 24.3.2 JSON.stringify(value [, replacer [, space]])
+$JSON && $export($export.S + $export.F * (!useNative || buggyJSON), 'JSON', {stringify: $stringify});
+
+// 19.4.3.5 Symbol.prototype[@@toStringTag]
+setToStringTag($Symbol, 'Symbol');
+// 20.2.1.9 Math[@@toStringTag]
+setToStringTag(Math, 'Math', true);
+// 24.3.3 JSON[@@toStringTag]
+setToStringTag(global.JSON, 'JSON', true);
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.array-buffer.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.array-buffer.js
new file mode 100644
index 00000000..a8209bd2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.array-buffer.js
@@ -0,0 +1,43 @@
+'use strict';
+if(require('./$.descriptors')){
+ var $export = require('./$.export')
+ , $typed = require('./$.typed')
+ , buffer = require('./$.buffer')
+ , toIndex = require('./$.to-index')
+ , toLength = require('./$.to-length')
+ , isObject = require('./$.is-object')
+ , TYPED_ARRAY = require('./$.wks')('typed_array')
+ , $ArrayBuffer = buffer.ArrayBuffer
+ , $DataView = buffer.DataView
+ , $slice = $ArrayBuffer && $ArrayBuffer.prototype.slice
+ , VIEW = $typed.VIEW
+ , ARRAY_BUFFER = 'ArrayBuffer';
+
+ $export($export.G + $export.W + $export.F * !$typed.ABV, {ArrayBuffer: $ArrayBuffer});
+
+ $export($export.S + $export.F * !$typed.CONSTR, ARRAY_BUFFER, {
+ // 24.1.3.1 ArrayBuffer.isView(arg)
+ isView: function isView(it){ // not cross-realm
+ return isObject(it) && VIEW in it;
+ }
+ });
+
+ $export($export.P + $export.F * require('./$.fails')(function(){
+ return !new $ArrayBuffer(2).slice(1, undefined).byteLength;
+ }), ARRAY_BUFFER, {
+ // 24.1.4.3 ArrayBuffer.prototype.slice(start, end)
+ slice: function slice(start, end){
+ if($slice !== undefined && end === undefined)return $slice.call(this, start); // FF fix
+ var len = this.byteLength
+ , first = toIndex(start, len)
+ , final = toIndex(end === undefined ? len : end, len)
+ , result = new $ArrayBuffer(toLength(final - first))
+ , viewS = new $DataView(this)
+ , viewT = new $DataView(result)
+ , index = 0;
+ while(first < final){
+ viewT.setUint8(index++, viewS.getUint8(first++));
+ } return result;
+ }
+ });
+}
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.data-view.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.data-view.js
new file mode 100644
index 00000000..44e03532
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.data-view.js
@@ -0,0 +1,4 @@
+if(require('./$.descriptors')){
+ var $export = require('./$.export');
+ $export($export.G + $export.W + $export.F * !require('./$.typed').ABV, {DataView: require('./$.buffer').DataView});
+}
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.float32-array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.float32-array.js
new file mode 100644
index 00000000..95d78a6d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.float32-array.js
@@ -0,0 +1,5 @@
+require('./$.typed-array')('Float32', 4, function(init){
+ return function Float32Array(data, byteOffset, length){
+ return init(this, data, byteOffset, length);
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.float64-array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.float64-array.js
new file mode 100644
index 00000000..16fadec9
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.float64-array.js
@@ -0,0 +1,5 @@
+require('./$.typed-array')('Float64', 8, function(init){
+ return function Float64Array(data, byteOffset, length){
+ return init(this, data, byteOffset, length);
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.int16-array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.int16-array.js
new file mode 100644
index 00000000..a3d04cb6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.int16-array.js
@@ -0,0 +1,5 @@
+require('./$.typed-array')('Int16', 2, function(init){
+ return function Int16Array(data, byteOffset, length){
+ return init(this, data, byteOffset, length);
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.int32-array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.int32-array.js
new file mode 100644
index 00000000..1923463a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.int32-array.js
@@ -0,0 +1,5 @@
+require('./$.typed-array')('Int32', 4, function(init){
+ return function Int32Array(data, byteOffset, length){
+ return init(this, data, byteOffset, length);
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.int8-array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.int8-array.js
new file mode 100644
index 00000000..e9182c4c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.int8-array.js
@@ -0,0 +1,5 @@
+require('./$.typed-array')('Int8', 1, function(init){
+ return function Int8Array(data, byteOffset, length){
+ return init(this, data, byteOffset, length);
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.uint16-array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.uint16-array.js
new file mode 100644
index 00000000..ec6e8347
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.uint16-array.js
@@ -0,0 +1,5 @@
+require('./$.typed-array')('Uint16', 2, function(init){
+ return function Uint16Array(data, byteOffset, length){
+ return init(this, data, byteOffset, length);
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.uint32-array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.uint32-array.js
new file mode 100644
index 00000000..ddfc22d8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.uint32-array.js
@@ -0,0 +1,5 @@
+require('./$.typed-array')('Uint32', 4, function(init){
+ return function Uint32Array(data, byteOffset, length){
+ return init(this, data, byteOffset, length);
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.uint8-array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.uint8-array.js
new file mode 100644
index 00000000..7ab1e4df
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.uint8-array.js
@@ -0,0 +1,5 @@
+require('./$.typed-array')('Uint8', 1, function(init){
+ return function Uint8Array(data, byteOffset, length){
+ return init(this, data, byteOffset, length);
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.uint8-clamped-array.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.uint8-clamped-array.js
new file mode 100644
index 00000000..f85f9d5d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.typed.uint8-clamped-array.js
@@ -0,0 +1,5 @@
+require('./$.typed-array')('Uint8', 1, function(init){
+ return function Uint8ClampedArray(data, byteOffset, length){
+ return init(this, data, byteOffset, length);
+ };
+}, true);
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.weak-map.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.weak-map.js
new file mode 100644
index 00000000..72a9b324
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.weak-map.js
@@ -0,0 +1,43 @@
+'use strict';
+var $ = require('./$')
+ , redefine = require('./$.redefine')
+ , weak = require('./$.collection-weak')
+ , isObject = require('./$.is-object')
+ , has = require('./$.has')
+ , frozenStore = weak.frozenStore
+ , WEAK = weak.WEAK
+ , isExtensible = Object.isExtensible || isObject
+ , tmp = {};
+
+// 23.3 WeakMap Objects
+var $WeakMap = require('./$.collection')('WeakMap', function(get){
+ return function WeakMap(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };
+}, {
+ // 23.3.3.3 WeakMap.prototype.get(key)
+ get: function get(key){
+ if(isObject(key)){
+ if(!isExtensible(key))return frozenStore(this).get(key);
+ if(has(key, WEAK))return key[WEAK][this._i];
+ }
+ },
+ // 23.3.3.5 WeakMap.prototype.set(key, value)
+ set: function set(key, value){
+ return weak.def(this, key, value);
+ }
+}, weak, true, true);
+
+// IE11 WeakMap frozen keys fix
+if(new $WeakMap().set((Object.freeze || Object)(tmp), 7).get(tmp) != 7){
+ $.each.call(['delete', 'has', 'get', 'set'], function(key){
+ var proto = $WeakMap.prototype
+ , method = proto[key];
+ redefine(proto, key, function(a, b){
+ // store frozen objects on leaky map
+ if(isObject(a) && !isExtensible(a)){
+ var result = frozenStore(this)[key](a, b);
+ return key == 'set' ? this : result;
+ // store all the rest on native weakmap
+ } return method.call(this, a, b);
+ });
+ });
+}
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.weak-set.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.weak-set.js
new file mode 100644
index 00000000..efdf1d76
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es6.weak-set.js
@@ -0,0 +1,12 @@
+'use strict';
+var weak = require('./$.collection-weak');
+
+// 23.4 WeakSet Objects
+require('./$.collection')('WeakSet', function(get){
+ return function WeakSet(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };
+}, {
+ // 23.4.3.1 WeakSet.prototype.add(value)
+ add: function add(value){
+ return weak.def(this, value, true);
+ }
+}, weak, false, true);
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.array.includes.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.array.includes.js
new file mode 100644
index 00000000..dcfad704
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.array.includes.js
@@ -0,0 +1,12 @@
+'use strict';
+var $export = require('./$.export')
+ , $includes = require('./$.array-includes')(true);
+
+$export($export.P, 'Array', {
+ // https://github.com/domenic/Array.prototype.includes
+ includes: function includes(el /*, fromIndex = 0 */){
+ return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);
+ }
+});
+
+require('./$.add-to-unscopables')('includes');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.map.to-json.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.map.to-json.js
new file mode 100644
index 00000000..80937056
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.map.to-json.js
@@ -0,0 +1,4 @@
+// https://github.com/DavidBruant/Map-Set.prototype.toJSON
+var $export = require('./$.export');
+
+$export($export.P, 'Map', {toJSON: require('./$.collection-to-json')('Map')});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.object.entries.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.object.entries.js
new file mode 100644
index 00000000..fec1bc36
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.object.entries.js
@@ -0,0 +1,9 @@
+// http://goo.gl/XkBrjD
+var $export = require('./$.export')
+ , $entries = require('./$.object-to-array')(true);
+
+$export($export.S, 'Object', {
+ entries: function entries(it){
+ return $entries(it);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.object.get-own-property-descriptors.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.object.get-own-property-descriptors.js
new file mode 100644
index 00000000..e4d80a34
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.object.get-own-property-descriptors.js
@@ -0,0 +1,23 @@
+// https://gist.github.com/WebReflection/9353781
+var $ = require('./$')
+ , $export = require('./$.export')
+ , ownKeys = require('./$.own-keys')
+ , toIObject = require('./$.to-iobject')
+ , createDesc = require('./$.property-desc');
+
+$export($export.S, 'Object', {
+ getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object){
+ var O = toIObject(object)
+ , setDesc = $.setDesc
+ , getDesc = $.getDesc
+ , keys = ownKeys(O)
+ , result = {}
+ , i = 0
+ , key, D;
+ while(keys.length > i){
+ D = getDesc(O, key = keys[i++]);
+ if(key in result)setDesc(result, key, createDesc(0, D));
+ else result[key] = D;
+ } return result;
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.object.values.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.object.values.js
new file mode 100644
index 00000000..697e9354
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.object.values.js
@@ -0,0 +1,9 @@
+// http://goo.gl/XkBrjD
+var $export = require('./$.export')
+ , $values = require('./$.object-to-array')(false);
+
+$export($export.S, 'Object', {
+ values: function values(it){
+ return $values(it);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.regexp.escape.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.regexp.escape.js
new file mode 100644
index 00000000..9c4c542a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.regexp.escape.js
@@ -0,0 +1,5 @@
+// https://github.com/benjamingr/RexExp.escape
+var $export = require('./$.export')
+ , $re = require('./$.replacer')(/[\\^$*+?.()|[\]{}]/g, '\\$&');
+
+$export($export.S, 'RegExp', {escape: function escape(it){ return $re(it); }});
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.set.to-json.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.set.to-json.js
new file mode 100644
index 00000000..e632f2a3
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.set.to-json.js
@@ -0,0 +1,4 @@
+// https://github.com/DavidBruant/Map-Set.prototype.toJSON
+var $export = require('./$.export');
+
+$export($export.P, 'Set', {toJSON: require('./$.collection-to-json')('Set')});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.string.at.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.string.at.js
new file mode 100644
index 00000000..fee583bf
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.string.at.js
@@ -0,0 +1,10 @@
+'use strict';
+// https://github.com/mathiasbynens/String.prototype.at
+var $export = require('./$.export')
+ , $at = require('./$.string-at')(true);
+
+$export($export.P, 'String', {
+ at: function at(pos){
+ return $at(this, pos);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.string.pad-left.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.string.pad-left.js
new file mode 100644
index 00000000..643621aa
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.string.pad-left.js
@@ -0,0 +1,9 @@
+'use strict';
+var $export = require('./$.export')
+ , $pad = require('./$.string-pad');
+
+$export($export.P, 'String', {
+ padLeft: function padLeft(maxLength /*, fillString = ' ' */){
+ return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, true);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.string.pad-right.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.string.pad-right.js
new file mode 100644
index 00000000..e4230960
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.string.pad-right.js
@@ -0,0 +1,9 @@
+'use strict';
+var $export = require('./$.export')
+ , $pad = require('./$.string-pad');
+
+$export($export.P, 'String', {
+ padRight: function padRight(maxLength /*, fillString = ' ' */){
+ return $pad(this, maxLength, arguments.length > 1 ? arguments[1] : undefined, false);
+ }
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.string.trim-left.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.string.trim-left.js
new file mode 100644
index 00000000..dbaf6308
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.string.trim-left.js
@@ -0,0 +1,7 @@
+'use strict';
+// https://github.com/sebmarkbage/ecmascript-string-left-right-trim
+require('./$.string-trim')('trimLeft', function($trim){
+ return function trimLeft(){
+ return $trim(this, 1);
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.string.trim-right.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.string.trim-right.js
new file mode 100644
index 00000000..6b02d394
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/es7.string.trim-right.js
@@ -0,0 +1,7 @@
+'use strict';
+// https://github.com/sebmarkbage/ecmascript-string-left-right-trim
+require('./$.string-trim')('trimRight', function($trim){
+ return function trimRight(){
+ return $trim(this, 2);
+ };
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/js.array.statics.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/js.array.statics.js
new file mode 100644
index 00000000..9536c2e4
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/js.array.statics.js
@@ -0,0 +1,17 @@
+// JavaScript 1.6 / Strawman array statics shim
+var $ = require('./$')
+ , $export = require('./$.export')
+ , $ctx = require('./$.ctx')
+ , $Array = require('./$.core').Array || Array
+ , statics = {};
+var setStatics = function(keys, length){
+ $.each.call(keys.split(','), function(key){
+ if(length == undefined && key in $Array)statics[key] = $Array[key];
+ else if(key in [])statics[key] = $ctx(Function.call, [][key], length);
+ });
+};
+setStatics('pop,reverse,shift,keys,values,entries', 1);
+setStatics('indexOf,every,some,forEach,map,filter,find,findIndex,includes', 3);
+setStatics('join,slice,concat,push,splice,unshift,sort,lastIndexOf,' +
+ 'reduce,reduceRight,copyWithin,fill');
+$export($export.S, 'Array', statics);
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/$.add-to-unscopables.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/$.add-to-unscopables.js
new file mode 100644
index 00000000..faf87af3
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/$.add-to-unscopables.js
@@ -0,0 +1 @@
+module.exports = function(){ /* empty */ };
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/$.collection.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/$.collection.js
new file mode 100644
index 00000000..9d234d13
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/$.collection.js
@@ -0,0 +1,55 @@
+'use strict';
+var $ = require('./$')
+ , global = require('./$.global')
+ , $export = require('./$.export')
+ , fails = require('./$.fails')
+ , hide = require('./$.hide')
+ , redefineAll = require('./$.redefine-all')
+ , forOf = require('./$.for-of')
+ , strictNew = require('./$.strict-new')
+ , isObject = require('./$.is-object')
+ , setToStringTag = require('./$.set-to-string-tag')
+ , DESCRIPTORS = require('./$.descriptors');
+
+module.exports = function(NAME, wrapper, methods, common, IS_MAP, IS_WEAK){
+ var Base = global[NAME]
+ , C = Base
+ , ADDER = IS_MAP ? 'set' : 'add'
+ , proto = C && C.prototype
+ , O = {};
+ if(!DESCRIPTORS || typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function(){
+ new C().entries().next();
+ }))){
+ // create collection constructor
+ C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);
+ redefineAll(C.prototype, methods);
+ } else {
+ C = wrapper(function(target, iterable){
+ strictNew(target, C, NAME);
+ target._c = new Base;
+ if(iterable != undefined)forOf(iterable, IS_MAP, target[ADDER], target);
+ });
+ $.each.call('add,clear,delete,forEach,get,has,set,keys,values,entries'.split(','),function(KEY){
+ var IS_ADDER = KEY == 'add' || KEY == 'set';
+ if(KEY in proto && !(IS_WEAK && KEY == 'clear'))hide(C.prototype, KEY, function(a, b){
+ if(!IS_ADDER && IS_WEAK && !isObject(a))return KEY == 'get' ? undefined : false;
+ var result = this._c[KEY](a === 0 ? 0 : a, b);
+ return IS_ADDER ? this : result;
+ });
+ });
+ if('size' in proto)$.setDesc(C.prototype, 'size', {
+ get: function(){
+ return this._c.size;
+ }
+ });
+ }
+
+ setToStringTag(C, NAME);
+
+ O[NAME] = C;
+ $export($export.G + $export.W + $export.F, O);
+
+ if(!IS_WEAK)common.setStrong(C, NAME, IS_MAP);
+
+ return C;
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/$.export.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/$.export.js
new file mode 100644
index 00000000..507b5a22
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/$.export.js
@@ -0,0 +1,46 @@
+var global = require('./$.global')
+ , core = require('./$.core')
+ , ctx = require('./$.ctx')
+ , PROTOTYPE = 'prototype';
+
+var $export = function(type, name, source){
+ var IS_FORCED = type & $export.F
+ , IS_GLOBAL = type & $export.G
+ , IS_STATIC = type & $export.S
+ , IS_PROTO = type & $export.P
+ , IS_BIND = type & $export.B
+ , IS_WRAP = type & $export.W
+ , exports = IS_GLOBAL ? core : core[name] || (core[name] = {})
+ , target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE]
+ , key, own, out;
+ if(IS_GLOBAL)source = name;
+ for(key in source){
+ // contains in native
+ own = !IS_FORCED && target && key in target;
+ if(own && key in exports)continue;
+ // export native or passed
+ out = own ? target[key] : source[key];
+ // prevent global pollution for namespaces
+ exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]
+ // bind timers to global for call from export context
+ : IS_BIND && own ? ctx(out, global)
+ // wrap global constructors for prevent change them in library
+ : IS_WRAP && target[key] == out ? (function(C){
+ var F = function(param){
+ return this instanceof C ? new C(param) : C(param);
+ };
+ F[PROTOTYPE] = C[PROTOTYPE];
+ return F;
+ // make static versions for prototype methods
+ })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
+ if(IS_PROTO)(exports[PROTOTYPE] || (exports[PROTOTYPE] = {}))[key] = out;
+ }
+};
+// type bitmap
+$export.F = 1; // forced
+$export.G = 2; // global
+$export.S = 4; // static
+$export.P = 8; // proto
+$export.B = 16; // bind
+$export.W = 32; // wrap
+module.exports = $export;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/$.library.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/$.library.js
new file mode 100644
index 00000000..73f737c5
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/$.library.js
@@ -0,0 +1 @@
+module.exports = true;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/$.path.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/$.path.js
new file mode 100644
index 00000000..27bb24b8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/$.path.js
@@ -0,0 +1 @@
+module.exports = require('./$.core');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/$.redefine.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/$.redefine.js
new file mode 100644
index 00000000..57453fd1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/$.redefine.js
@@ -0,0 +1 @@
+module.exports = require('./$.hide');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/$.set-species.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/$.set-species.js
new file mode 100644
index 00000000..f6720c36
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/$.set-species.js
@@ -0,0 +1,13 @@
+'use strict';
+var core = require('./$.core')
+ , $ = require('./$')
+ , DESCRIPTORS = require('./$.descriptors')
+ , SPECIES = require('./$.wks')('species');
+
+module.exports = function(KEY){
+ var C = core[KEY];
+ if(DESCRIPTORS && C && !C[SPECIES])$.setDesc(C, SPECIES, {
+ configurable: true,
+ get: function(){ return this; }
+ });
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/es6.date.to-string.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/es6.date.to-string.js
new file mode 100644
index 00000000..e69de29b
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/es6.function.name.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/es6.function.name.js
new file mode 100644
index 00000000..e69de29b
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/es6.number.constructor.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/es6.number.constructor.js
new file mode 100644
index 00000000..e69de29b
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/es6.object.to-string.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/es6.object.to-string.js
new file mode 100644
index 00000000..e69de29b
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/es6.regexp.constructor.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/es6.regexp.constructor.js
new file mode 100644
index 00000000..087d9beb
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/es6.regexp.constructor.js
@@ -0,0 +1 @@
+require('./$.set-species')('RegExp');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/es6.regexp.flags.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/es6.regexp.flags.js
new file mode 100644
index 00000000..e69de29b
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/es6.regexp.match.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/es6.regexp.match.js
new file mode 100644
index 00000000..e69de29b
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/es6.regexp.replace.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/es6.regexp.replace.js
new file mode 100644
index 00000000..e69de29b
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/es6.regexp.search.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/es6.regexp.search.js
new file mode 100644
index 00000000..e69de29b
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/es6.regexp.split.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/es6.regexp.split.js
new file mode 100644
index 00000000..e69de29b
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/web.dom.iterable.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/web.dom.iterable.js
new file mode 100644
index 00000000..988c6da2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/library/web.dom.iterable.js
@@ -0,0 +1,3 @@
+require('./es6.array.iterator');
+var Iterators = require('./$.iterators');
+Iterators.NodeList = Iterators.HTMLCollection = Iterators.Array;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/web.dom.iterable.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/web.dom.iterable.js
new file mode 100644
index 00000000..94099b8f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/web.dom.iterable.js
@@ -0,0 +1,12 @@
+require('./es6.array.iterator');
+var global = require('./$.global')
+ , hide = require('./$.hide')
+ , Iterators = require('./$.iterators')
+ , ITERATOR = require('./$.wks')('iterator')
+ , NL = global.NodeList
+ , HTC = global.HTMLCollection
+ , NLProto = NL && NL.prototype
+ , HTCProto = HTC && HTC.prototype
+ , ArrayValues = Iterators.NodeList = Iterators.HTMLCollection = Iterators.Array;
+if(NLProto && !NLProto[ITERATOR])hide(NLProto, ITERATOR, ArrayValues);
+if(HTCProto && !HTCProto[ITERATOR])hide(HTCProto, ITERATOR, ArrayValues);
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/web.immediate.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/web.immediate.js
new file mode 100644
index 00000000..fa64f08e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/web.immediate.js
@@ -0,0 +1,6 @@
+var $export = require('./$.export')
+ , $task = require('./$.task');
+$export($export.G + $export.B, {
+ setImmediate: $task.set,
+ clearImmediate: $task.clear
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/web.timers.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/web.timers.js
new file mode 100644
index 00000000..74b72019
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/modules/web.timers.js
@@ -0,0 +1,20 @@
+// ie9- setTimeout & setInterval additional parameters fix
+var global = require('./$.global')
+ , $export = require('./$.export')
+ , invoke = require('./$.invoke')
+ , partial = require('./$.partial')
+ , navigator = global.navigator
+ , MSIE = !!navigator && /MSIE .\./.test(navigator.userAgent); // <- dirty ie9- check
+var wrap = function(set){
+ return MSIE ? function(fn, time /*, ...args */){
+ return set(invoke(
+ partial,
+ [].slice.call(arguments, 2),
+ typeof fn == 'function' ? fn : Function(fn)
+ ), time);
+ } : set;
+};
+$export($export.G + $export.B + $export.F * MSIE, {
+ setTimeout: wrap(global.setTimeout),
+ setInterval: wrap(global.setInterval)
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/package.json b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/package.json
new file mode 100644
index 00000000..6b5b5c10
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/package.json
@@ -0,0 +1,88 @@
+{
+ "_from": "core-js@^1.0.0",
+ "_id": "core-js@1.2.7",
+ "_inBundle": false,
+ "_integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=",
+ "_location": "/react-toastify/core-js",
+ "_phantomChildren": {},
+ "_requested": {
+ "type": "range",
+ "registry": true,
+ "raw": "core-js@^1.0.0",
+ "name": "core-js",
+ "escapedName": "core-js",
+ "rawSpec": "^1.0.0",
+ "saveSpec": null,
+ "fetchSpec": "^1.0.0"
+ },
+ "_requiredBy": [
+ "/react-toastify/fbjs"
+ ],
+ "_resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz",
+ "_shasum": "652294c14651db28fa93bd2d5ff2983a4f08c636",
+ "_spec": "core-js@^1.0.0",
+ "_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI\\node_modules\\react-toastify\\node_modules\\fbjs",
+ "bugs": {
+ "url": "https://github.com/zloirock/core-js/issues"
+ },
+ "bundleDependencies": false,
+ "deprecated": false,
+ "description": "Standard library",
+ "devDependencies": {
+ "LiveScript": "1.3.x",
+ "eslint": "1.9.x",
+ "grunt": "0.4.x",
+ "grunt-cli": "0.1.x",
+ "grunt-contrib-clean": "0.6.x",
+ "grunt-contrib-copy": "0.8.x",
+ "grunt-contrib-uglify": "0.10.x",
+ "grunt-contrib-watch": "0.6.x",
+ "grunt-karma": "0.12.x",
+ "grunt-livescript": "0.5.x",
+ "karma": "0.13.x",
+ "karma-chrome-launcher": "0.2.x",
+ "karma-firefox-launcher": "0.1.x",
+ "karma-ie-launcher": "0.2.x",
+ "karma-phantomjs-launcher": "0.2.x",
+ "karma-qunit": "0.1.x",
+ "phantomjs": "1.9.x",
+ "promises-aplus-tests": "2.1.x",
+ "qunitjs": "1.23.x",
+ "webpack": "1.12.x"
+ },
+ "homepage": "https://github.com/zloirock/core-js#readme",
+ "keywords": [
+ "ES5",
+ "ECMAScript 5",
+ "ES6",
+ "ECMAScript 6",
+ "ES7",
+ "ECMAScript 7",
+ "Harmony",
+ "Strawman",
+ "Map",
+ "Set",
+ "WeakMap",
+ "WeakSet",
+ "Promise",
+ "Symbol",
+ "Array generics",
+ "setImmediate",
+ "Dict",
+ "partial application"
+ ],
+ "license": "MIT",
+ "main": "index.js",
+ "name": "core-js",
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/zloirock/core-js.git"
+ },
+ "scripts": {
+ "grunt": "grunt",
+ "lint": "eslint es5 es6 es7 js web core fn modules",
+ "promises-tests": "promises-aplus-tests tests/promises-aplus/adapter",
+ "test": "npm run lint && npm run grunt livescript client karma:continuous library karma:continuous-library && npm run promises-tests && lsc tests/commonjs"
+ },
+ "version": "1.2.7"
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/shim.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/shim.js
new file mode 100644
index 00000000..6d38d2e2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/shim.js
@@ -0,0 +1,104 @@
+require('./modules/es5');
+require('./modules/es6.symbol');
+require('./modules/es6.object.assign');
+require('./modules/es6.object.is');
+require('./modules/es6.object.set-prototype-of');
+require('./modules/es6.object.to-string');
+require('./modules/es6.object.freeze');
+require('./modules/es6.object.seal');
+require('./modules/es6.object.prevent-extensions');
+require('./modules/es6.object.is-frozen');
+require('./modules/es6.object.is-sealed');
+require('./modules/es6.object.is-extensible');
+require('./modules/es6.object.get-own-property-descriptor');
+require('./modules/es6.object.get-prototype-of');
+require('./modules/es6.object.keys');
+require('./modules/es6.object.get-own-property-names');
+require('./modules/es6.function.name');
+require('./modules/es6.function.has-instance');
+require('./modules/es6.number.constructor');
+require('./modules/es6.number.epsilon');
+require('./modules/es6.number.is-finite');
+require('./modules/es6.number.is-integer');
+require('./modules/es6.number.is-nan');
+require('./modules/es6.number.is-safe-integer');
+require('./modules/es6.number.max-safe-integer');
+require('./modules/es6.number.min-safe-integer');
+require('./modules/es6.number.parse-float');
+require('./modules/es6.number.parse-int');
+require('./modules/es6.math.acosh');
+require('./modules/es6.math.asinh');
+require('./modules/es6.math.atanh');
+require('./modules/es6.math.cbrt');
+require('./modules/es6.math.clz32');
+require('./modules/es6.math.cosh');
+require('./modules/es6.math.expm1');
+require('./modules/es6.math.fround');
+require('./modules/es6.math.hypot');
+require('./modules/es6.math.imul');
+require('./modules/es6.math.log10');
+require('./modules/es6.math.log1p');
+require('./modules/es6.math.log2');
+require('./modules/es6.math.sign');
+require('./modules/es6.math.sinh');
+require('./modules/es6.math.tanh');
+require('./modules/es6.math.trunc');
+require('./modules/es6.string.from-code-point');
+require('./modules/es6.string.raw');
+require('./modules/es6.string.trim');
+require('./modules/es6.string.iterator');
+require('./modules/es6.string.code-point-at');
+require('./modules/es6.string.ends-with');
+require('./modules/es6.string.includes');
+require('./modules/es6.string.repeat');
+require('./modules/es6.string.starts-with');
+require('./modules/es6.array.from');
+require('./modules/es6.array.of');
+require('./modules/es6.array.iterator');
+require('./modules/es6.array.species');
+require('./modules/es6.array.copy-within');
+require('./modules/es6.array.fill');
+require('./modules/es6.array.find');
+require('./modules/es6.array.find-index');
+require('./modules/es6.regexp.constructor');
+require('./modules/es6.regexp.flags');
+require('./modules/es6.regexp.match');
+require('./modules/es6.regexp.replace');
+require('./modules/es6.regexp.search');
+require('./modules/es6.regexp.split');
+require('./modules/es6.promise');
+require('./modules/es6.map');
+require('./modules/es6.set');
+require('./modules/es6.weak-map');
+require('./modules/es6.weak-set');
+require('./modules/es6.reflect.apply');
+require('./modules/es6.reflect.construct');
+require('./modules/es6.reflect.define-property');
+require('./modules/es6.reflect.delete-property');
+require('./modules/es6.reflect.enumerate');
+require('./modules/es6.reflect.get');
+require('./modules/es6.reflect.get-own-property-descriptor');
+require('./modules/es6.reflect.get-prototype-of');
+require('./modules/es6.reflect.has');
+require('./modules/es6.reflect.is-extensible');
+require('./modules/es6.reflect.own-keys');
+require('./modules/es6.reflect.prevent-extensions');
+require('./modules/es6.reflect.set');
+require('./modules/es6.reflect.set-prototype-of');
+require('./modules/es7.array.includes');
+require('./modules/es7.string.at');
+require('./modules/es7.string.pad-left');
+require('./modules/es7.string.pad-right');
+require('./modules/es7.string.trim-left');
+require('./modules/es7.string.trim-right');
+require('./modules/es7.regexp.escape');
+require('./modules/es7.object.get-own-property-descriptors');
+require('./modules/es7.object.values');
+require('./modules/es7.object.entries');
+require('./modules/es7.map.to-json');
+require('./modules/es7.set.to-json');
+require('./modules/js.array.statics');
+require('./modules/web.timers');
+require('./modules/web.immediate');
+require('./modules/web.dom.iterable');
+module.exports = require('./modules/$.core');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/web/dom.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/web/dom.js
new file mode 100644
index 00000000..9b448cfe
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/web/dom.js
@@ -0,0 +1,2 @@
+require('../modules/web.dom.iterable');
+module.exports = require('../modules/$.core');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/web/immediate.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/web/immediate.js
new file mode 100644
index 00000000..e4e5493b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/web/immediate.js
@@ -0,0 +1,2 @@
+require('../modules/web.immediate');
+module.exports = require('../modules/$.core');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/web/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/web/index.js
new file mode 100644
index 00000000..6c3221e2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/web/index.js
@@ -0,0 +1,4 @@
+require('../modules/web.timers');
+require('../modules/web.immediate');
+require('../modules/web.dom.iterable');
+module.exports = require('../modules/$.core');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/web/timers.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/web/timers.js
new file mode 100644
index 00000000..763ea44e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/core-js/web/timers.js
@@ -0,0 +1,2 @@
+require('../modules/web.timers');
+module.exports = require('../modules/$.core');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/Changelog.md b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/Changelog.md
new file mode 100644
index 00000000..8fadc9f7
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/Changelog.md
@@ -0,0 +1,16 @@
+# Changelog
+
+### 2.0.0
+* improve `assignStyle` to replace arrays
+
+### 1.0.3
+* performance improvements
+
+### 1.0.2
+* added `resolveArrayValue` and `assignStyle`
+
+### 1.0.1
+* added `cssifyDeclaration` and `cssifyObject`
+
+### 1.0.0
+Initial version
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/LICENSE b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/LICENSE
new file mode 100644
index 00000000..76f632ab
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/LICENSE
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2017 Robin Frischmann
+
+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/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/README.md b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/README.md
new file mode 100644
index 00000000..bab77932
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/README.md
@@ -0,0 +1,241 @@
+# CSS-in-JS Utilities
+A library that provides useful utilities functions for CSS-in-JS solutions.
+They are intended to be used by CSS-in-JS library authors rather used directly.
+
+
+
+
+## Installation
+```sh
+yarn add css-in-js-utils
+```
+
+## Why?
+By now I have authored and collaborated on many different libraries and found I would rewrite the very same utility functions every time. That's why this repository is hosting small utilities especially built for CSS-in-JS solutions and tools. Even if there are tons of different libraries already, they all basically use the same mechanisms and utilities.
+
+## Utilities
+* [`assignStyle(base, ...extend)`](#assignstylebase-extend)
+* [`camelCaseProperty(property)`](#camelcasepropertyproperty)
+* [`cssifyDeclaration(property, value)`](#cssifydeclarationproperty-value)
+* [`cssifyObject(object)`](#cssifyobjectobject)
+* [`hyphenateProperty(property)`](#hyphenatepropertyproperty)
+* [`isPrefixedProperty(property)`](#isprefixedpropertyproperty)
+* [`isPrefixedValue(value)`](#isprefixedvaluevalue)
+* [`isUnitlessProperty(property)`](#isunitlesspropertyproperty)
+* [`normalizeProperty(property)`](#normalizepropertyproperty)
+* [`resolveArrayValue(property, value)`](#resolvearrayvalueproperty-value)
+* [`unprefixProperty(property)`](#unprefixpropertyproperty)
+* [`unprefixValue(value)`](#unprefixvaluevalue)
+*
+------
+
+### `assignStyle(base, ...extend)`
+Merges deep style objects similar to `Object.assign`.
+
+```javascript
+import { assignStyle } from 'css-in-js-utils'
+
+assignStyle(
+ { color: 'red', backgroundColor: 'black' },
+ { color: 'blue' }
+)
+// => { color: 'blue', backgroundColor: 'black' }
+
+assignStyle(
+ {
+ color: 'red',
+ ':hover': {
+ backgroundColor: 'black'
+ }
+ },
+ {
+ ':hover': {
+ backgroundColor: 'blue'
+ }
+ }
+)
+// => { color: 'red', ':hover': { backgroundColor: 'blue' }}
+```
+
+------
+
+### `camelCaseProperty(property)`
+Converts the `property` to camelCase.
+
+```javascript
+import { camelCaseProperty } from 'css-in-js-utils'
+
+camelCaseProperty('padding-top')
+// => 'paddingTop'
+
+camelCaseProperty('-webkit-transition')
+// => 'WebkitTransition'
+```
+
+------
+
+### `cssifyDeclaration(property, value)`
+Generates a CSS declaration (`property`:`value`) string.
+
+```javascript
+import { cssifyDeclaration } from 'css-in-js-utils'
+
+cssifyDeclaration('paddingTop', '400px')
+// => 'padding-top:400px'
+
+cssifyDeclaration('WebkitFlex', 3)
+// => '-webkit-flex:3'
+```
+
+------
+
+### `cssifyObject(object)`
+Generates a CSS string using all key-property pairs in `object`.
+It automatically removes declarations with value types other than `number` and `string`.
+
+```javascript
+import { cssifyObject } from 'css-in-js-utils'
+
+cssifyObject({
+ paddingTop: '400px',
+ paddingBottom: undefined,
+ WebkitFlex: 3,
+ _anyKey: [1, 2, 4]
+})
+// => 'padding-top:400px;-webkit-flex:3'
+```
+
+------
+
+### `hyphenateProperty(property)`
+Converts the `property` to hyphen-case.
+> Directly mirrors [hyphenate-style-name](https://github.com/rexxars/hyphenate-style-name).
+
+```javascript
+import { hyphenateProperty } from 'css-in-js-utils'
+
+hyphenateProperty('paddingTop')
+// => 'padding-top'
+
+hyphenateProperty('WebkitTransition')
+// => '-webkit-transition'
+```
+
+------
+
+### `isPrefixedProperty(property)`
+Checks if a `property` includes a vendor prefix.
+
+```javascript
+import { isPrefixedProperty } from 'css-in-js-utils'
+
+isPrefixedProperty('paddingTop')
+// => false
+
+isPrefixedProperty('WebkitTransition')
+// => true
+```
+
+------
+### `isPrefixedValue(value)`
+Checks if a `value` includes vendor prefixes.
+
+```javascript
+import { isPrefixedValue } from 'css-in-js-utils'
+
+isPrefixedValue('200px')
+isPrefixedValue(200)
+// => false
+
+isPrefixedValue('-webkit-calc(100% - 50px)')
+// => true
+```
+
+------
+
+### `isUnitlessProperty(property)`
+Checks if a `property` accepts unitless values.
+
+```javascript
+import { isUnitlessProperty } from 'css-in-js-utils'
+
+isUnitlessProperty('width')
+// => false
+
+isUnitlessProperty('flexGrow')
+isUnitlessProperty('lineHeight')
+isUnitlessProperty('line-height')
+// => true
+```
+
+------
+
+### `normalizeProperty(property)`
+Normalizes the `property` by unprefixing **and** camelCasing it.
+> Uses the [`camelCaseProperty`](#camelcasepropertyproperty) and [`unprefixProperty`](#unprefixpropertyproperty)-methods.
+
+```javascript
+import { normalizeProperty } from 'css-in-js-utils'
+
+normalizeProperty('-webkit-transition-delay')
+// => 'transitionDelay'
+```
+
+------
+
+### `resolveArrayValue(property, value)`
+Concatenates array values to single CSS value.
+> Uses the [`hyphenateProperty`](#hyphenatepropertyproperty)-method.
+
+
+```javascript
+import { resolveArrayValue } from 'css-in-js-utils'
+
+resolveArrayValue('display', [ '-webkit-flex', 'flex' ])
+// => '-webkit-flex;display:flex'
+
+resolveArrayValue('paddingTop', [ 'calc(100% - 50px)', '100px' ])
+// => 'calc(100% - 50px);padding-top:100px'
+```
+
+------
+
+### `unprefixProperty(property)`
+Removes the vendor prefix (if set) from the `property`.
+
+```javascript
+import { unprefixProperty } from 'css-in-js-utils'
+
+unprefixProperty('WebkitTransition')
+// => 'transition'
+
+unprefixProperty('transitionDelay')
+// => 'transitionDelay'
+```
+
+------
+
+### `unprefixValue(value)`
+Removes all vendor prefixes (if any) from the `value`.
+
+```javascript
+import { unprefixValue } from 'css-in-js-utils'
+
+unprefixValue('-webkit-calc(-moz-calc(100% - 50px)/2)')
+// => 'calc(calc(100% - 50px)/2)'
+
+unprefixValue('100px')
+// => '100px'
+```
+
+## Direct Import
+Every utility function may be imported directly to save bundle size.
+
+```javascript
+import camelCaseProperty from 'css-in-js-utils/lib/camelCaseProperty'
+```
+
+## License
+css-in-js-utils is licensed under the [MIT License](http://opensource.org/licenses/MIT).
+Documentation is licensed under [Creative Common License](http://creativecommons.org/licenses/by/4.0/).
+Created with ♥ by [@rofrischmann](http://rofrischmann.de).
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/assignStyle-test.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/assignStyle-test.js
new file mode 100644
index 00000000..e685d48b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/assignStyle-test.js
@@ -0,0 +1,105 @@
+'use strict';
+
+var _assignStyle = require('../assignStyle');
+
+var _assignStyle2 = _interopRequireDefault(_assignStyle);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+describe('Assinging styles', function () {
+ it('should merge properties', function () {
+ expect((0, _assignStyle2.default)({ color: 'red' }, { fontSize: 12 }, { lineHeight: 1 })).toEqual({
+ color: 'red',
+ fontSize: 12,
+ lineHeight: 1
+ });
+ });
+
+ it('should overwrite properties from right to left', function () {
+ expect((0, _assignStyle2.default)({ fontSize: 12 }, { fontSize: 16 }, { fontSize: 11 })).toEqual({ fontSize: 11 });
+ });
+
+ it('should merge nested objects', function () {
+ expect((0, _assignStyle2.default)({
+ fontSize: 12,
+ ob2: { color: 'red' },
+ ob3: { color: 'red' }
+ }, {
+ fontSize: 16,
+ ob2: { fontSize: 12 }
+ }, {
+ fontSize: 11,
+ ob3: { color: 'blue' }
+ })).toEqual({
+ fontSize: 11,
+ ob2: {
+ color: 'red',
+ fontSize: 12
+ },
+ ob3: { color: 'blue' }
+ });
+ });
+
+ it('should not overwrite objects other than the first one', function () {
+ var ob1 = { color: 'red' };
+ var ob2 = { fontSize: 12 };
+
+ var newOb = (0, _assignStyle2.default)({}, ob1, ob2);
+
+ expect(newOb).toEqual({
+ color: 'red',
+ fontSize: 12
+ });
+
+ newOb.foo = 'bar';
+ expect(ob1).toEqual({ color: 'red' });
+ expect(ob2).toEqual({ fontSize: 12 });
+ });
+
+ it('should use the first object as base', function () {
+ var ob1 = { color: 'red' };
+ var ob2 = { fontSize: 12 };
+
+ var newOb = (0, _assignStyle2.default)(ob1, ob2);
+
+ expect(newOb).toEqual({
+ color: 'red',
+ fontSize: 12
+ });
+ expect(ob1).toEqual(newOb);
+
+ newOb.foo = 'bar';
+ expect(ob1).toEqual({
+ color: 'red',
+ fontSize: 12,
+ foo: 'bar'
+ });
+ });
+
+ it('should overwrite previous values when both values are array', function () {
+ var ob1 = { fontSize: ['10px', '10rem'] };
+ var ob2 = { fontSize: ['10px', '20vw'] };
+
+ var newOb = (0, _assignStyle2.default)({}, ob1, ob2);
+
+ expect(newOb).toEqual({ fontSize: ['10px', '20vw'] });
+ });
+
+ it('should overwrite previous values when only the last value is an array', function () {
+ var ob1 = { fontSize: 10 };
+ var ob2 = { fontSize: ['10px', '20vw'] };
+
+ var newOb = (0, _assignStyle2.default)({}, ob1, ob2);
+
+ expect(newOb).toEqual({ fontSize: ['10px', '20vw'] });
+ });
+
+ it('should overwrite previous values when only the first value is an array', function () {
+ var ob1 = { fontSize: ['10px', '10rem'] };
+ var ob2 = { fontSize: 20 };
+
+ var newOb = (0, _assignStyle2.default)({}, ob1, ob2);
+
+ expect(newOb).toEqual({ fontSize: 20 });
+ });
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/camelCaseProperty-test.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/camelCaseProperty-test.js
new file mode 100644
index 00000000..1c8517a1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/camelCaseProperty-test.js
@@ -0,0 +1,15 @@
+'use strict';
+
+var _camelCaseProperty = require('../camelCaseProperty');
+
+var _camelCaseProperty2 = _interopRequireDefault(_camelCaseProperty);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+describe('Camel casing properties', function () {
+ it('should camel case properties', function () {
+ expect((0, _camelCaseProperty2.default)('transition-delay')).toEqual('transitionDelay');
+ expect((0, _camelCaseProperty2.default)('-webkit-transition-delay')).toEqual('WebkitTransitionDelay');
+ expect((0, _camelCaseProperty2.default)('-ms-transition')).toEqual('msTransition');
+ });
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/cssifyDeclaration-test.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/cssifyDeclaration-test.js
new file mode 100644
index 00000000..6068d2af
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/cssifyDeclaration-test.js
@@ -0,0 +1,15 @@
+'use strict';
+
+var _cssifyDeclaration = require('../cssifyDeclaration');
+
+var _cssifyDeclaration2 = _interopRequireDefault(_cssifyDeclaration);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+describe('Cssifying declarations', function () {
+ it('should return a valid css declaration', function () {
+ expect((0, _cssifyDeclaration2.default)('width', '300px')).toEqual('width:300px');
+ expect((0, _cssifyDeclaration2.default)('WebkitFlex', '1')).toEqual('-webkit-flex:1');
+ expect((0, _cssifyDeclaration2.default)('msTransitionDuration', '3s')).toEqual('-ms-transition-duration:3s');
+ });
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/cssifyObject-test.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/cssifyObject-test.js
new file mode 100644
index 00000000..c2d23e9f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/cssifyObject-test.js
@@ -0,0 +1,31 @@
+'use strict';
+
+var _cssifyObject = require('../cssifyObject');
+
+var _cssifyObject2 = _interopRequireDefault(_cssifyObject);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+describe('Cssifying objects', function () {
+ it('should generate a valid CSS string', function () {
+ expect((0, _cssifyObject2.default)({ color: 'red' })).toEqual('color:red');
+ });
+
+ it('should convert properties to dash case', function () {
+ expect((0, _cssifyObject2.default)({ fontSize: '12px' })).toEqual('font-size:12px');
+ });
+
+ it('should separate declarations with semicolons', function () {
+ expect((0, _cssifyObject2.default)({
+ fontSize: '12px',
+ color: 'red'
+ })).toEqual('font-size:12px;color:red');
+ });
+
+ it('should convert vendor prefixes', function () {
+ expect((0, _cssifyObject2.default)({
+ WebkitJustifyContent: 'center',
+ msFlexAlign: 'center'
+ })).toEqual('-webkit-justify-content:center;-ms-flex-align:center');
+ });
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/isPrefixedProperty-test.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/isPrefixedProperty-test.js
new file mode 100644
index 00000000..07cb00ec
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/isPrefixedProperty-test.js
@@ -0,0 +1,19 @@
+'use strict';
+
+var _isPrefixedProperty = require('../isPrefixedProperty');
+
+var _isPrefixedProperty2 = _interopRequireDefault(_isPrefixedProperty);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+describe('Checking for prefixed properties', function () {
+ it('should return true', function () {
+ expect((0, _isPrefixedProperty2.default)('WebkitTransition')).toEqual(true);
+ expect((0, _isPrefixedProperty2.default)('msTransitionDelay')).toEqual(true);
+ });
+
+ it('should return false', function () {
+ expect((0, _isPrefixedProperty2.default)('transition')).toEqual(false);
+ expect((0, _isPrefixedProperty2.default)('transitionDelay')).toEqual(false);
+ });
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/isPrefixedValue-test.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/isPrefixedValue-test.js
new file mode 100644
index 00000000..1f291778
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/isPrefixedValue-test.js
@@ -0,0 +1,19 @@
+'use strict';
+
+var _isPrefixedValue = require('../isPrefixedValue');
+
+var _isPrefixedValue2 = _interopRequireDefault(_isPrefixedValue);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+describe('Checking for prefixed values', function () {
+ it('should return true', function () {
+ expect((0, _isPrefixedValue2.default)('-webkit-calc(100% - 20px)')).toEqual(true);
+ expect((0, _isPrefixedValue2.default)('-ms-transition')).toEqual(true);
+ });
+
+ it('should return false', function () {
+ expect((0, _isPrefixedValue2.default)('200px')).toEqual(false);
+ expect((0, _isPrefixedValue2.default)('calc(100% - 20px)')).toEqual(false);
+ });
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/isUnitlessProperty-test.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/isUnitlessProperty-test.js
new file mode 100644
index 00000000..206f6ebb
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/isUnitlessProperty-test.js
@@ -0,0 +1,43 @@
+'use strict';
+
+var _isUnitlessProperty = require('../isUnitlessProperty');
+
+var _isUnitlessProperty2 = _interopRequireDefault(_isUnitlessProperty);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+describe('Checking for unitless CSS properties', function () {
+ it('should return true for unitless properties', function () {
+ expect((0, _isUnitlessProperty2.default)('fontWeight')).toEqual(true);
+ expect((0, _isUnitlessProperty2.default)('flex')).toEqual(true);
+ expect((0, _isUnitlessProperty2.default)('gridColumn')).toEqual(true);
+ });
+
+ it('should return true for hypenated unitless properties', function () {
+ expect((0, _isUnitlessProperty2.default)('font-weight')).toEqual(true);
+ expect((0, _isUnitlessProperty2.default)('grid-column')).toEqual(true);
+ });
+
+ it('should return true for prefixed unitless properties', function () {
+ expect((0, _isUnitlessProperty2.default)('WebkitFlex')).toEqual(true);
+ expect((0, _isUnitlessProperty2.default)('msFlex')).toEqual(true);
+ expect((0, _isUnitlessProperty2.default)('WebkitColumnCount')).toEqual(true);
+ expect((0, _isUnitlessProperty2.default)('msColumnCount')).toEqual(true);
+ });
+
+ it('should return true for hypenated prefixed unitless properties', function () {
+ expect((0, _isUnitlessProperty2.default)('-webkit-flex')).toEqual(true);
+ expect((0, _isUnitlessProperty2.default)('-ms-flex')).toEqual(true);
+ expect((0, _isUnitlessProperty2.default)('-webkit-column-count')).toEqual(true);
+ expect((0, _isUnitlessProperty2.default)('-ms-column-count')).toEqual(true);
+ });
+
+ it('should equal false for other properties', function () {
+ expect((0, _isUnitlessProperty2.default)('fontSize')).toEqual(false);
+ expect((0, _isUnitlessProperty2.default)('font-size')).toEqual(false);
+ expect((0, _isUnitlessProperty2.default)('-webkit-border-radius')).toEqual(false);
+ expect((0, _isUnitlessProperty2.default)('-ms-border-radius')).toEqual(false);
+ expect((0, _isUnitlessProperty2.default)('WebkitBorderRadius')).toEqual(false);
+ expect((0, _isUnitlessProperty2.default)('msBorderRadius')).toEqual(false);
+ });
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/normalizeProperty-test.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/normalizeProperty-test.js
new file mode 100644
index 00000000..fb8d3071
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/normalizeProperty-test.js
@@ -0,0 +1,21 @@
+'use strict';
+
+var _normalizeProperty = require('../normalizeProperty');
+
+var _normalizeProperty2 = _interopRequireDefault(_normalizeProperty);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+describe('Normalizing properties', function () {
+ it('should camel case hypenated properties', function () {
+ expect((0, _normalizeProperty2.default)('transition-delay')).toEqual('transitionDelay');
+ });
+
+ it('should unprefix properties', function () {
+ expect((0, _normalizeProperty2.default)('WebkitTransitionDelay')).toEqual('transitionDelay');
+ });
+
+ it('should unprefix and camel case properties', function () {
+ expect((0, _normalizeProperty2.default)('-webkit-transition-delay')).toEqual('transitionDelay');
+ });
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/resolveArrayValue-test.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/resolveArrayValue-test.js
new file mode 100644
index 00000000..3a92612f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/resolveArrayValue-test.js
@@ -0,0 +1,17 @@
+'use strict';
+
+var _resolveArrayValue = require('../resolveArrayValue');
+
+var _resolveArrayValue2 = _interopRequireDefault(_resolveArrayValue);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+describe('Resolving array values', function () {
+ it('should return a concatenated css value', function () {
+ expect((0, _resolveArrayValue2.default)('width', ['300px', '100px'])).toEqual('300px;width:100px');
+ });
+
+ it('should hyphenate property names', function () {
+ expect((0, _resolveArrayValue2.default)('WebkitFlex', [1, 2, 3])).toEqual('1;-webkit-flex:2;-webkit-flex:3');
+ });
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/unprefixProperty-test.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/unprefixProperty-test.js
new file mode 100644
index 00000000..508102ca
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/unprefixProperty-test.js
@@ -0,0 +1,19 @@
+'use strict';
+
+var _unprefixProperty = require('../unprefixProperty');
+
+var _unprefixProperty2 = _interopRequireDefault(_unprefixProperty);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+describe('Unprefixing properties', function () {
+ it('should unprefix the property', function () {
+ expect((0, _unprefixProperty2.default)('msFlex')).toEqual('flex');
+ expect((0, _unprefixProperty2.default)('WebkitFlex')).toEqual('flex');
+ });
+
+ it('should keep an unprefixed property', function () {
+ expect((0, _unprefixProperty2.default)('flex')).toEqual('flex');
+ expect((0, _unprefixProperty2.default)('padding')).toEqual('padding');
+ });
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/unprefixValue-test.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/unprefixValue-test.js
new file mode 100644
index 00000000..1a84f2d4
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/__tests__/unprefixValue-test.js
@@ -0,0 +1,20 @@
+'use strict';
+
+var _unprefixValue = require('../unprefixValue');
+
+var _unprefixValue2 = _interopRequireDefault(_unprefixValue);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+describe('Unprefixing values', function () {
+ it('should unprefix the value', function () {
+ expect((0, _unprefixValue2.default)('-webkit-calc(100% - 20px)')).toEqual('calc(100% - 20px)');
+ expect((0, _unprefixValue2.default)('-ms-transition')).toEqual('transition');
+ });
+
+ it('should keep an unprefixed value', function () {
+ expect((0, _unprefixValue2.default)('300px')).toEqual('300px');
+ expect((0, _unprefixValue2.default)(300)).toEqual(300);
+ expect((0, _unprefixValue2.default)('calc(100% - 20px)')).toEqual('calc(100% - 20px)');
+ });
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/assignStyle.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/assignStyle.js
new file mode 100644
index 00000000..fe329341
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/assignStyle.js
@@ -0,0 +1,33 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
+
+exports.default = assignStyle;
+function assignStyle(base) {
+ for (var _len = arguments.length, extendingStyles = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
+ extendingStyles[_key - 1] = arguments[_key];
+ }
+
+ for (var i = 0, len = extendingStyles.length; i < len; ++i) {
+ var style = extendingStyles[i];
+
+ for (var property in style) {
+ var value = style[property];
+ var baseValue = base[property];
+
+ if ((typeof value === 'undefined' ? 'undefined' : _typeof(value)) === 'object' && !Array.isArray(value)) {
+ base[property] = assignStyle({}, baseValue, value);
+ continue;
+ }
+
+ base[property] = value;
+ }
+ }
+
+ return base;
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/camelCaseProperty.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/camelCaseProperty.js
new file mode 100644
index 00000000..10a6f23b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/camelCaseProperty.js
@@ -0,0 +1,15 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = camelCaseProperty;
+var dashRegex = /-([a-z])/g;
+var msRegex = /^Ms/g;
+
+function camelCaseProperty(property) {
+ return property.replace(dashRegex, function (match) {
+ return match[1].toUpperCase();
+ }).replace(msRegex, 'ms');
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/cssifyDeclaration.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/cssifyDeclaration.js
new file mode 100644
index 00000000..097c4e5e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/cssifyDeclaration.js
@@ -0,0 +1,17 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = cssifyDeclaration;
+
+var _hyphenateProperty = require('./hyphenateProperty');
+
+var _hyphenateProperty2 = _interopRequireDefault(_hyphenateProperty);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function cssifyDeclaration(property, value) {
+ return (0, _hyphenateProperty2.default)(property) + ':' + value;
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/cssifyObject.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/cssifyObject.js
new file mode 100644
index 00000000..c9479df4
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/cssifyObject.js
@@ -0,0 +1,34 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = cssifyObject;
+
+var _cssifyDeclaration = require('./cssifyDeclaration');
+
+var _cssifyDeclaration2 = _interopRequireDefault(_cssifyDeclaration);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function cssifyObject(style) {
+ var css = '';
+
+ for (var property in style) {
+ var value = style[property];
+ if (typeof value !== 'string' && typeof value !== 'number') {
+ continue;
+ }
+
+ // prevents the semicolon after
+ // the last rule declaration
+ if (css) {
+ css += ';';
+ }
+
+ css += (0, _cssifyDeclaration2.default)(property, value);
+ }
+
+ return css;
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/hyphenateProperty.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/hyphenateProperty.js
new file mode 100644
index 00000000..ff4d455c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/hyphenateProperty.js
@@ -0,0 +1,17 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = hyphenateProperty;
+
+var _hyphenateStyleName = require('hyphenate-style-name');
+
+var _hyphenateStyleName2 = _interopRequireDefault(_hyphenateStyleName);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function hyphenateProperty(property) {
+ return (0, _hyphenateStyleName2.default)(property);
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/index.js
new file mode 100644
index 00000000..bad8abb2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/index.js
@@ -0,0 +1,71 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _assignStyle = require('./assignStyle');
+
+var _assignStyle2 = _interopRequireDefault(_assignStyle);
+
+var _camelCaseProperty = require('./camelCaseProperty');
+
+var _camelCaseProperty2 = _interopRequireDefault(_camelCaseProperty);
+
+var _cssifyDeclaration = require('./cssifyDeclaration');
+
+var _cssifyDeclaration2 = _interopRequireDefault(_cssifyDeclaration);
+
+var _cssifyObject = require('./cssifyObject');
+
+var _cssifyObject2 = _interopRequireDefault(_cssifyObject);
+
+var _hyphenateProperty = require('./hyphenateProperty');
+
+var _hyphenateProperty2 = _interopRequireDefault(_hyphenateProperty);
+
+var _isPrefixedProperty = require('./isPrefixedProperty');
+
+var _isPrefixedProperty2 = _interopRequireDefault(_isPrefixedProperty);
+
+var _isPrefixedValue = require('./isPrefixedValue');
+
+var _isPrefixedValue2 = _interopRequireDefault(_isPrefixedValue);
+
+var _isUnitlessProperty = require('./isUnitlessProperty');
+
+var _isUnitlessProperty2 = _interopRequireDefault(_isUnitlessProperty);
+
+var _normalizeProperty = require('./normalizeProperty');
+
+var _normalizeProperty2 = _interopRequireDefault(_normalizeProperty);
+
+var _resolveArrayValue = require('./resolveArrayValue');
+
+var _resolveArrayValue2 = _interopRequireDefault(_resolveArrayValue);
+
+var _unprefixProperty = require('./unprefixProperty');
+
+var _unprefixProperty2 = _interopRequireDefault(_unprefixProperty);
+
+var _unprefixValue = require('./unprefixValue');
+
+var _unprefixValue2 = _interopRequireDefault(_unprefixValue);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+exports.default = {
+ assignStyle: _assignStyle2.default,
+ camelCaseProperty: _camelCaseProperty2.default,
+ cssifyDeclaration: _cssifyDeclaration2.default,
+ cssifyObject: _cssifyObject2.default,
+ hyphenateProperty: _hyphenateProperty2.default,
+ isPrefixedProperty: _isPrefixedProperty2.default,
+ isPrefixedValue: _isPrefixedValue2.default,
+ isUnitlessProperty: _isUnitlessProperty2.default,
+ normalizeProperty: _normalizeProperty2.default,
+ resolveArrayValue: _resolveArrayValue2.default,
+ unprefixProperty: _unprefixProperty2.default,
+ unprefixValue: _unprefixValue2.default
+};
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/isPrefixedProperty.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/isPrefixedProperty.js
new file mode 100644
index 00000000..6d12fe9c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/isPrefixedProperty.js
@@ -0,0 +1,12 @@
+"use strict";
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = isPrefixedProperty;
+var regex = /^(Webkit|Moz|O|ms)/;
+
+function isPrefixedProperty(property) {
+ return regex.test(property);
+}
+module.exports = exports["default"];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/isPrefixedValue.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/isPrefixedValue.js
new file mode 100644
index 00000000..c05fa331
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/isPrefixedValue.js
@@ -0,0 +1,12 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = isPrefixedValue;
+var regex = /-webkit-|-moz-|-ms-/;
+
+function isPrefixedValue(value) {
+ return typeof value === 'string' && regex.test(value);
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/isUnitlessProperty.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/isUnitlessProperty.js
new file mode 100644
index 00000000..720a3fb3
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/isUnitlessProperty.js
@@ -0,0 +1,64 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = isUnitlessProperty;
+
+var _hyphenateProperty = require('./hyphenateProperty');
+
+var _hyphenateProperty2 = _interopRequireDefault(_hyphenateProperty);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var unitlessProperties = {
+ borderImageOutset: true,
+ borderImageSlice: true,
+ borderImageWidth: true,
+ fontWeight: true,
+ lineHeight: true,
+ opacity: true,
+ orphans: true,
+ tabSize: true,
+ widows: true,
+ zIndex: true,
+ zoom: true,
+ // SVG-related properties
+ fillOpacity: true,
+ floodOpacity: true,
+ stopOpacity: true,
+ strokeDasharray: true,
+ strokeDashoffset: true,
+ strokeMiterlimit: true,
+ strokeOpacity: true,
+ strokeWidth: true
+};
+
+
+var prefixedUnitlessProperties = ['animationIterationCount', 'boxFlex', 'boxFlexGroup', 'boxOrdinalGroup', 'columnCount', 'flex', 'flexGrow', 'flexPositive', 'flexShrink', 'flexNegative', 'flexOrder', 'gridRow', 'gridColumn', 'order', 'lineClamp'];
+
+var prefixes = ['Webkit', 'ms', 'Moz', 'O'];
+
+function getPrefixedProperty(prefix, property) {
+ return prefix + property.charAt(0).toUpperCase() + property.slice(1);
+}
+
+// add all prefixed properties to the unitless properties
+for (var i = 0, len = prefixedUnitlessProperties.length; i < len; ++i) {
+ var property = prefixedUnitlessProperties[i];
+ unitlessProperties[property] = true;
+
+ for (var j = 0, jLen = prefixes.length; j < jLen; ++j) {
+ unitlessProperties[getPrefixedProperty(prefixes[j], property)] = true;
+ }
+}
+
+// add all hypenated properties as well
+for (var _property in unitlessProperties) {
+ unitlessProperties[(0, _hyphenateProperty2.default)(_property)] = true;
+}
+
+function isUnitlessProperty(property) {
+ return unitlessProperties.hasOwnProperty(property);
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/normalizeProperty.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/normalizeProperty.js
new file mode 100644
index 00000000..57cf5a03
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/normalizeProperty.js
@@ -0,0 +1,21 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = normalizeProperty;
+
+var _camelCaseProperty = require('./camelCaseProperty');
+
+var _camelCaseProperty2 = _interopRequireDefault(_camelCaseProperty);
+
+var _unprefixProperty = require('./unprefixProperty');
+
+var _unprefixProperty2 = _interopRequireDefault(_unprefixProperty);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function normalizeProperty(property) {
+ return (0, _unprefixProperty2.default)((0, _camelCaseProperty2.default)(property));
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/resolveArrayValue.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/resolveArrayValue.js
new file mode 100644
index 00000000..746530fa
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/resolveArrayValue.js
@@ -0,0 +1,19 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = resolveArrayValue;
+
+var _hyphenateProperty = require('./hyphenateProperty');
+
+var _hyphenateProperty2 = _interopRequireDefault(_hyphenateProperty);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function resolveArrayValue(property, value) {
+ var hyphenatedProperty = (0, _hyphenateProperty2.default)(property);
+
+ return value.join(';' + hyphenatedProperty + ':');
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/sortObject.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/sortObject.js
new file mode 100644
index 00000000..9a390c31
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/sortObject.js
@@ -0,0 +1 @@
+"use strict";
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/unprefixProperty.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/unprefixProperty.js
new file mode 100644
index 00000000..a4a51f59
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/unprefixProperty.js
@@ -0,0 +1,13 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = unprefixProperty;
+var prefixRegex = /^(ms|Webkit|Moz|O)/;
+
+function unprefixProperty(property) {
+ var propertyWithoutPrefix = property.replace(prefixRegex, '');
+ return propertyWithoutPrefix.charAt(0).toLowerCase() + propertyWithoutPrefix.slice(1);
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/unprefixValue.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/unprefixValue.js
new file mode 100644
index 00000000..8272b232
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/lib/unprefixValue.js
@@ -0,0 +1,16 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = unprefixValue;
+var prefixRegex = /(-ms-|-webkit-|-moz-|-o-)/g;
+
+function unprefixValue(value) {
+ if (typeof value === 'string') {
+ return value.replace(prefixRegex, '');
+ }
+
+ return value;
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/package.json b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/package.json
new file mode 100644
index 00000000..0c3f7664
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/css-in-js-utils/package.json
@@ -0,0 +1,90 @@
+{
+ "_from": "css-in-js-utils@^2.0.0",
+ "_id": "css-in-js-utils@2.0.0",
+ "_inBundle": false,
+ "_integrity": "sha512-yuWmPMD9FLi50Xf3k8W8oO3WM1eVnxEGCldCLyfusQ+CgivFk0s23yst4ooW6tfxMuSa03S6uUEga9UhX6GRrA==",
+ "_location": "/react-toastify/css-in-js-utils",
+ "_phantomChildren": {},
+ "_requested": {
+ "type": "range",
+ "registry": true,
+ "raw": "css-in-js-utils@^2.0.0",
+ "name": "css-in-js-utils",
+ "escapedName": "css-in-js-utils",
+ "rawSpec": "^2.0.0",
+ "saveSpec": null,
+ "fetchSpec": "^2.0.0"
+ },
+ "_requiredBy": [
+ "/react-toastify/inline-style-prefixer"
+ ],
+ "_resolved": "https://registry.npmjs.org/css-in-js-utils/-/css-in-js-utils-2.0.0.tgz",
+ "_shasum": "5af1dd70f4b06b331f48d22a3d86e0786c0b9435",
+ "_spec": "css-in-js-utils@^2.0.0",
+ "_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI\\node_modules\\react-toastify\\node_modules\\inline-style-prefixer",
+ "author": {
+ "name": "Robin Frischmann",
+ "email": "robin@rofrischmann.de"
+ },
+ "bugs": {
+ "url": "https://github.com/rofrischmann/css-in-js-utils/issues"
+ },
+ "bundleDependencies": false,
+ "dependencies": {
+ "hyphenate-style-name": "^1.0.2"
+ },
+ "deprecated": false,
+ "description": "Useful utility functions for CSS in JS solutions",
+ "devDependencies": {
+ "babel-cli": "^6.22.1",
+ "babel-core": "^6.22.1",
+ "babel-eslint": "^7.1.1",
+ "babel-jest": "^18.0.0",
+ "babel-plugin-add-module-exports": "^0.2.1",
+ "babel-preset-es2015": "^6.22.0",
+ "babel-preset-react": "^6.22.0",
+ "babel-preset-stage-0": "^6.22.0",
+ "codeclimate-test-reporter": "^0.4.0",
+ "eslint": "^3.14.1",
+ "eslint-config-airbnb": "^14.0.0",
+ "eslint-plugin-flowtype": "^2.30.0",
+ "eslint-plugin-import": "^2.2.0",
+ "eslint-plugin-jsx-a11y": "^3.0.2",
+ "eslint-plugin-react": "^6.9.0",
+ "flow-bin": "^0.38.0",
+ "jest": "^18.1.0",
+ "prettier-eslint-cli": "^1.1.0"
+ },
+ "files": [
+ "LICENSE",
+ "README.md",
+ "lib/"
+ ],
+ "homepage": "https://github.com/rofrischmann/css-in-js-utils#readme",
+ "jest": {
+ "rootDir": "modules"
+ },
+ "keywords": [
+ "css",
+ "cssinjs",
+ "utils"
+ ],
+ "license": "MIT",
+ "main": "lib/index.js",
+ "name": "css-in-js-utils",
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/rofrischmann/css-in-js-utils.git"
+ },
+ "scripts": {
+ "babel": "babel -d lib modules",
+ "check": "npm run format && npm run lint && npm run test:coverage && npm run flow",
+ "flow": "flow",
+ "format": "prettier-eslint modules",
+ "lint": "eslint modules",
+ "release": "npm run check && npm run babel && npm publish",
+ "test": "jest",
+ "test:coverage": "jest --coverage"
+ },
+ "version": "2.0.0"
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/README.md b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/README.md
new file mode 100644
index 00000000..3d0a4926
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/README.md
@@ -0,0 +1,90 @@
+# dom-helpers
+
+tiny modular DOM lib for ie8+
+
+## Install
+
+```sh
+npm i -S dom-helpers
+```
+
+
+Mostly just naive wrappers around common DOM API inconsistencies, Cross browser work is minimal and mostly taken from jQuery. This library doesn't do a lot to normalize behavior across browsers, it mostly seeks to provide a common interface, and eliminate the need to write the same damn `if (ie8)` statements in every project.
+
+For example `events.on` works in all browsers ie8+ but it uses the native event system so actual event oddities will continue to exist. If you need __robust__ cross-browser support, use jQuery. If you are just tired of rewriting:
+
+```js
+if (document.addEventListener)
+ return (node, eventName, handler, capture) =>
+ node.addEventListener(eventName, handler, capture || false);
+else if (document.attachEvent)
+ return (node, eventName, handler) =>
+ node.attachEvent('on' + eventName, handler);
+```
+
+over and over again, or you need a ok `getComputedStyle` polyfill but don't want to include all of jQuery, use this.
+
+dom-helpers does expect certain, polyfillable, es5 features to be present for which you can use `es5-shim` for ie8
+
+The real advantage to this collection is that any method can be required individually, meaning tools like Browserify or webpack will only include the exact methods you use. This is great for environments where jQuery doesn't make sense, such as `React` where you only occasionally need to do direct DOM manipulation.
+
+Each level of the module can be required as a whole or you can drill down for a specific method or section:
+
+```js
+ var helpers = require('dom-helpers')
+ var query = require('dom-helpers/query')
+ var offset = require('dom-helpers/query/offset')
+
+ // style is a function
+ require('dom-helpers/style')(node, { width: '40px' })
+
+ //and a namespace
+ var gcs = require('dom-helpers/style/getComputedStyle')
+```
+
+- dom-helpers
+ - `ownerDocument(element)`: returns the element's document owner
+ - `ownerWindow(element)`: returns the element's document window
+ - `activeElement`: return focused element safely
+ - query
+ + `querySelectorAll(element, selector)`: optimized qsa, uses `getElementBy{Id|TagName|ClassName}` if it can.
+ + `contains(container, element)`
+ + `height(element, useClientHeight)`
+ + `width(element, useClientWidth)`
+ + `matches(element, selector)`: `matches()` polyfill that works in ie8
+ + `offset(element)` -> `{ top: Number, left: Number, top: height, width: Number}`
+ + `offsetParent(element)`: return the parent node that the element is offset from
+ + `position(element, [offsetParent]`: return "offset" of the node to its offsetParent, optionally you can specify the offset parent if different than the "real" one
+ + `scrollTop(element, [value])`
+ + `scrollLeft(element, [value])`
+ + `scrollParent(element)`
+ - class
+ - `addClass(element, className)`
+ - `removeClass(element, className)`
+ - `hasClass(element, className)`
+ - `style(element, propName, [value])` or `style(element, objectOfPropValues)`
+ + `removeStyle(element, styleName)`
+ + `getComputedStyle(element)` -> `getPropertyValue(name)`
+ - transition
+ + `animate(node, properties, duration, easing, callback)` programmatically start css transitions
+ + `end(node, handler, [duration])` listens for transition end, and ensures that the handler if called even if the transition fails to fire its end event. Will attempt to read duration from the element, otherwise one can be provided
+ + `properties`: Object containing the various vendor specific transition and transform properties for your browser
+ ```js
+ {
+ transform: // transform property: 'transform'
+ end: // transitionend
+ property: // transition-property
+ timing: // transition-timing
+ delay: // transition-delay
+ duration: // transition-duration
+ }
+ ```
+ - events
+ + `on(node, eventName, handler, [capture])`: capture is silently ignored in ie8
+ + `off(node, eventName, handler, [capture])`: capture is silently ignored in ie8
+ + `listen(node, eventName, handler, [capture])`: wraps `on` and returns a function that calls `off` for you
+ + `filter(selector, fn)`: returns a function handler that only fires when the target matches or is contained in the selector ex: `events.on(list, 'click', events.filter('li > a', handler))`
+ - util
+ + `requestAnimationFrame(cb)` returns an ID for canceling
+ * `requestAnimationFrame.cancel(id)`
+ + `scrollTo(element, [scrollParent])`
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/activeElement.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/activeElement.js
new file mode 100644
index 00000000..18d40bd9
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/activeElement.js
@@ -0,0 +1,21 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = activeElement;
+
+var _ownerDocument = require('./ownerDocument');
+
+var _ownerDocument2 = _interopRequireDefault(_ownerDocument);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function activeElement() {
+ var doc = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : (0, _ownerDocument2.default)();
+
+ try {
+ return doc.activeElement;
+ } catch (e) {/* ie throws if no active element */}
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/class/addClass.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/class/addClass.js
new file mode 100644
index 00000000..0e195d0f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/class/addClass.js
@@ -0,0 +1,17 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = addClass;
+
+var _hasClass = require('./hasClass');
+
+var _hasClass2 = _interopRequireDefault(_hasClass);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function addClass(element, className) {
+ if (element.classList) element.classList.add(className);else if (!(0, _hasClass2.default)(element, className)) if (typeof element.className === 'string') element.className = element.className + ' ' + className;else element.setAttribute('class', (element.className && element.className.baseVal || '') + ' ' + className);
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/class/hasClass.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/class/hasClass.js
new file mode 100644
index 00000000..9135557a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/class/hasClass.js
@@ -0,0 +1,10 @@
+"use strict";
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = hasClass;
+function hasClass(element, className) {
+ if (element.classList) return !!className && element.classList.contains(className);else return (" " + (element.className.baseVal || element.className) + " ").indexOf(" " + className + " ") !== -1;
+}
+module.exports = exports["default"];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/class/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/class/index.js
new file mode 100644
index 00000000..2e8e6c4c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/class/index.js
@@ -0,0 +1,25 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.hasClass = exports.removeClass = exports.addClass = undefined;
+
+var _addClass = require('./addClass');
+
+var _addClass2 = _interopRequireDefault(_addClass);
+
+var _removeClass = require('./removeClass');
+
+var _removeClass2 = _interopRequireDefault(_removeClass);
+
+var _hasClass = require('./hasClass');
+
+var _hasClass2 = _interopRequireDefault(_hasClass);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+exports.addClass = _addClass2.default;
+exports.removeClass = _removeClass2.default;
+exports.hasClass = _hasClass2.default;
+exports.default = { addClass: _addClass2.default, removeClass: _removeClass2.default, hasClass: _hasClass2.default };
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/class/removeClass.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/class/removeClass.js
new file mode 100644
index 00000000..545a1b12
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/class/removeClass.js
@@ -0,0 +1,9 @@
+'use strict';
+
+function replaceClassName(origClass, classToRemove) {
+ return origClass.replace(new RegExp('(^|\\s)' + classToRemove + '(?:\\s|$)', 'g'), '$1').replace(/\s+/g, ' ').replace(/^\s*|\s*$/g, '');
+}
+
+module.exports = function removeClass(element, className) {
+ if (element.classList) element.classList.remove(className);else if (typeof element.className === 'string') element.className = replaceClassName(element.className, className);else element.setAttribute('class', replaceClassName(element.className && element.className.baseVal || '', className));
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/events/filter.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/events/filter.js
new file mode 100644
index 00000000..aa4373c6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/events/filter.js
@@ -0,0 +1,29 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = filterEvents;
+
+var _contains = require('../query/contains');
+
+var _contains2 = _interopRequireDefault(_contains);
+
+var _querySelectorAll = require('../query/querySelectorAll');
+
+var _querySelectorAll2 = _interopRequireDefault(_querySelectorAll);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function filterEvents(selector, handler) {
+ return function filterHandler(e) {
+ var top = e.currentTarget,
+ target = e.target,
+ matches = (0, _querySelectorAll2.default)(top, selector);
+
+ if (matches.some(function (match) {
+ return (0, _contains2.default)(match, target);
+ })) handler.call(this, e);
+ };
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/events/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/events/index.js
new file mode 100644
index 00000000..1fc041e0
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/events/index.js
@@ -0,0 +1,30 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.listen = exports.filter = exports.off = exports.on = undefined;
+
+var _on = require('./on');
+
+var _on2 = _interopRequireDefault(_on);
+
+var _off = require('./off');
+
+var _off2 = _interopRequireDefault(_off);
+
+var _filter = require('./filter');
+
+var _filter2 = _interopRequireDefault(_filter);
+
+var _listen = require('./listen');
+
+var _listen2 = _interopRequireDefault(_listen);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+exports.on = _on2.default;
+exports.off = _off2.default;
+exports.filter = _filter2.default;
+exports.listen = _listen2.default;
+exports.default = { on: _on2.default, off: _off2.default, filter: _filter2.default, listen: _listen2.default };
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/events/listen.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/events/listen.js
new file mode 100644
index 00000000..c38e7989
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/events/listen.js
@@ -0,0 +1,33 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _inDOM = require('../util/inDOM');
+
+var _inDOM2 = _interopRequireDefault(_inDOM);
+
+var _on = require('./on');
+
+var _on2 = _interopRequireDefault(_on);
+
+var _off = require('./off');
+
+var _off2 = _interopRequireDefault(_off);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var listen = function listen() {};
+
+if (_inDOM2.default) {
+ listen = function listen(node, eventName, handler, capture) {
+ (0, _on2.default)(node, eventName, handler, capture);
+ return function () {
+ (0, _off2.default)(node, eventName, handler, capture);
+ };
+ };
+}
+
+exports.default = listen;
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/events/off.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/events/off.js
new file mode 100644
index 00000000..437732c6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/events/off.js
@@ -0,0 +1,25 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _inDOM = require('../util/inDOM');
+
+var _inDOM2 = _interopRequireDefault(_inDOM);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var off = function off() {};
+if (_inDOM2.default) {
+ off = function () {
+ if (document.addEventListener) return function (node, eventName, handler, capture) {
+ return node.removeEventListener(eventName, handler, capture || false);
+ };else if (document.attachEvent) return function (node, eventName, handler) {
+ return node.detachEvent('on' + eventName, handler);
+ };
+ }();
+}
+
+exports.default = off;
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/events/on.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/events/on.js
new file mode 100644
index 00000000..7d70e482
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/events/on.js
@@ -0,0 +1,31 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _inDOM = require('../util/inDOM');
+
+var _inDOM2 = _interopRequireDefault(_inDOM);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var on = function on() {};
+if (_inDOM2.default) {
+ on = function () {
+
+ if (document.addEventListener) return function (node, eventName, handler, capture) {
+ return node.addEventListener(eventName, handler, capture || false);
+ };else if (document.attachEvent) return function (node, eventName, handler) {
+ return node.attachEvent('on' + eventName, function (e) {
+ e = e || window.event;
+ e.target = e.target || e.srcElement;
+ e.currentTarget = node;
+ handler.call(node, e);
+ });
+ };
+ }();
+}
+
+exports.default = on;
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/index.js
new file mode 100644
index 00000000..8c3339c9
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/index.js
@@ -0,0 +1,53 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.requestAnimationFrame = exports.ownerWindow = exports.ownerDocument = exports.activeElement = exports.query = exports.events = exports.style = undefined;
+
+var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+var _style = require('./style');
+
+var _style2 = _interopRequireDefault(_style);
+
+var _events = require('./events');
+
+var _events2 = _interopRequireDefault(_events);
+
+var _query = require('./query');
+
+var _query2 = _interopRequireDefault(_query);
+
+var _activeElement = require('./activeElement');
+
+var _activeElement2 = _interopRequireDefault(_activeElement);
+
+var _ownerDocument = require('./ownerDocument');
+
+var _ownerDocument2 = _interopRequireDefault(_ownerDocument);
+
+var _ownerWindow = require('./ownerWindow');
+
+var _ownerWindow2 = _interopRequireDefault(_ownerWindow);
+
+var _requestAnimationFrame = require('./util/requestAnimationFrame');
+
+var _requestAnimationFrame2 = _interopRequireDefault(_requestAnimationFrame);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+exports.style = _style2.default;
+exports.events = _events2.default;
+exports.query = _query2.default;
+exports.activeElement = _activeElement2.default;
+exports.ownerDocument = _ownerDocument2.default;
+exports.ownerWindow = _ownerWindow2.default;
+exports.requestAnimationFrame = _requestAnimationFrame2.default;
+exports.default = _extends({}, _events2.default, _query2.default, {
+ style: _style2.default,
+ activeElement: _activeElement2.default,
+ ownerDocument: _ownerDocument2.default,
+ ownerWindow: _ownerWindow2.default,
+ requestAnimationFrame: _requestAnimationFrame2.default
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/ownerDocument.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/ownerDocument.js
new file mode 100644
index 00000000..71a68306
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/ownerDocument.js
@@ -0,0 +1,10 @@
+"use strict";
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = ownerDocument;
+function ownerDocument(node) {
+ return node && node.ownerDocument || document;
+}
+module.exports = exports["default"];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/ownerWindow.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/ownerWindow.js
new file mode 100644
index 00000000..4b6e7c89
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/ownerWindow.js
@@ -0,0 +1,18 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = ownerWindow;
+
+var _ownerDocument = require('./ownerDocument');
+
+var _ownerDocument2 = _interopRequireDefault(_ownerDocument);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function ownerWindow(node) {
+ var doc = (0, _ownerDocument2.default)(node);
+ return doc && doc.defaultView || doc.parentWindow;
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/package.json b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/package.json
new file mode 100644
index 00000000..17ef5685
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/package.json
@@ -0,0 +1,59 @@
+{
+ "_from": "dom-helpers@^3.2.0",
+ "_id": "dom-helpers@3.3.1",
+ "_inBundle": false,
+ "_integrity": "sha512-2Sm+JaYn74OiTM2wHvxJOo3roiq/h25Yi69Fqk269cNUwIXsCvATB6CRSFC9Am/20G2b28hGv/+7NiWydIrPvg==",
+ "_location": "/react-toastify/dom-helpers",
+ "_phantomChildren": {},
+ "_requested": {
+ "type": "range",
+ "registry": true,
+ "raw": "dom-helpers@^3.2.0",
+ "name": "dom-helpers",
+ "escapedName": "dom-helpers",
+ "rawSpec": "^3.2.0",
+ "saveSpec": null,
+ "fetchSpec": "^3.2.0"
+ },
+ "_requiredBy": [
+ "/react-toastify/react-transition-group"
+ ],
+ "_resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-3.3.1.tgz",
+ "_shasum": "fc1a4e15ffdf60ddde03a480a9c0fece821dd4a6",
+ "_spec": "dom-helpers@^3.2.0",
+ "_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI\\node_modules\\react-toastify\\node_modules\\react-transition-group",
+ "author": {
+ "name": "Jason Quense",
+ "email": "monastic.panic@gmail.com"
+ },
+ "bugs": {
+ "url": "https://github.com/jquense/dom-helpers/issues"
+ },
+ "bundleDependencies": false,
+ "deprecated": false,
+ "description": "tiny modular DOM lib for ie8+ ",
+ "homepage": "https://github.com/jquense/dom-helpers#readme",
+ "keywords": [
+ "dom-helpers",
+ "react-component",
+ "dom",
+ "api",
+ "cross-browser",
+ "style",
+ "event",
+ "height",
+ "width",
+ "dom-helpers",
+ "class",
+ "classlist",
+ "css"
+ ],
+ "license": "MIT",
+ "main": "index.js",
+ "name": "dom-helpers",
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/jquense/dom-helpers.git"
+ },
+ "version": "3.3.1"
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/closest.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/closest.js
new file mode 100644
index 00000000..efba1ae1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/closest.js
@@ -0,0 +1,24 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = closest;
+
+var _matches = require('./matches');
+
+var _matches2 = _interopRequireDefault(_matches);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var isDoc = function isDoc(obj) {
+ return obj != null && obj.nodeType === obj.DOCUMENT_NODE;
+};
+
+function closest(node, selector, context) {
+ while (node && (isDoc(node) || !(0, _matches2.default)(node, selector))) {
+ node = node !== context && !isDoc(node) ? node.parentNode : undefined;
+ }
+ return node;
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/contains.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/contains.js
new file mode 100644
index 00000000..780bf67e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/contains.js
@@ -0,0 +1,34 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _inDOM = require('../util/inDOM');
+
+var _inDOM2 = _interopRequireDefault(_inDOM);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+exports.default = function () {
+ // HTML DOM and SVG DOM may have different support levels,
+ // so we need to check on context instead of a document root element.
+ return _inDOM2.default ? function (context, node) {
+ if (context.contains) {
+ return context.contains(node);
+ } else if (context.compareDocumentPosition) {
+ return context === node || !!(context.compareDocumentPosition(node) & 16);
+ } else {
+ return fallback(context, node);
+ }
+ } : fallback;
+}();
+
+function fallback(context, node) {
+ if (node) do {
+ if (node === context) return true;
+ } while (node = node.parentNode);
+
+ return false;
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/height.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/height.js
new file mode 100644
index 00000000..c15976ca
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/height.js
@@ -0,0 +1,22 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = height;
+
+var _offset = require('./offset');
+
+var _offset2 = _interopRequireDefault(_offset);
+
+var _isWindow = require('./isWindow');
+
+var _isWindow2 = _interopRequireDefault(_isWindow);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function height(node, client) {
+ var win = (0, _isWindow2.default)(node);
+ return win ? win.innerHeight : client ? node.clientHeight : (0, _offset2.default)(node).height;
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/index.js
new file mode 100644
index 00000000..a45df27e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/index.js
@@ -0,0 +1,77 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.closest = exports.querySelectorAll = exports.scrollTop = exports.scrollParent = exports.contains = exports.position = exports.offsetParent = exports.offset = exports.width = exports.height = exports.matches = undefined;
+
+var _matches = require('./matches');
+
+var _matches2 = _interopRequireDefault(_matches);
+
+var _height = require('./height');
+
+var _height2 = _interopRequireDefault(_height);
+
+var _width = require('./width');
+
+var _width2 = _interopRequireDefault(_width);
+
+var _offset = require('./offset');
+
+var _offset2 = _interopRequireDefault(_offset);
+
+var _offsetParent = require('./offsetParent');
+
+var _offsetParent2 = _interopRequireDefault(_offsetParent);
+
+var _position = require('./position');
+
+var _position2 = _interopRequireDefault(_position);
+
+var _contains = require('./contains');
+
+var _contains2 = _interopRequireDefault(_contains);
+
+var _scrollParent = require('./scrollParent');
+
+var _scrollParent2 = _interopRequireDefault(_scrollParent);
+
+var _scrollTop = require('./scrollTop');
+
+var _scrollTop2 = _interopRequireDefault(_scrollTop);
+
+var _querySelectorAll = require('./querySelectorAll');
+
+var _querySelectorAll2 = _interopRequireDefault(_querySelectorAll);
+
+var _closest = require('./closest');
+
+var _closest2 = _interopRequireDefault(_closest);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+exports.matches = _matches2.default;
+exports.height = _height2.default;
+exports.width = _width2.default;
+exports.offset = _offset2.default;
+exports.offsetParent = _offsetParent2.default;
+exports.position = _position2.default;
+exports.contains = _contains2.default;
+exports.scrollParent = _scrollParent2.default;
+exports.scrollTop = _scrollTop2.default;
+exports.querySelectorAll = _querySelectorAll2.default;
+exports.closest = _closest2.default;
+exports.default = {
+ matches: _matches2.default,
+ height: _height2.default,
+ width: _width2.default,
+ offset: _offset2.default,
+ offsetParent: _offsetParent2.default,
+ position: _position2.default,
+ contains: _contains2.default,
+ scrollParent: _scrollParent2.default,
+ scrollTop: _scrollTop2.default,
+ querySelectorAll: _querySelectorAll2.default,
+ closest: _closest2.default
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/isWindow.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/isWindow.js
new file mode 100644
index 00000000..f7da9c63
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/isWindow.js
@@ -0,0 +1,10 @@
+"use strict";
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = getWindow;
+function getWindow(node) {
+ return node === node.window ? node : node.nodeType === 9 ? node.defaultView || node.parentWindow : false;
+}
+module.exports = exports["default"];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/matches.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/matches.js
new file mode 100644
index 00000000..fbc56147
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/matches.js
@@ -0,0 +1,43 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = matches;
+
+var _inDOM = require('../util/inDOM');
+
+var _inDOM2 = _interopRequireDefault(_inDOM);
+
+var _querySelectorAll = require('./querySelectorAll');
+
+var _querySelectorAll2 = _interopRequireDefault(_querySelectorAll);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var matchesCache = void 0;
+
+function matches(node, selector) {
+ if (!matchesCache && _inDOM2.default) {
+ (function () {
+ var body = document.body;
+ var nativeMatch = body.matches || body.matchesSelector || body.webkitMatchesSelector || body.mozMatchesSelector || body.msMatchesSelector;
+
+ matchesCache = nativeMatch ? function (node, selector) {
+ return nativeMatch.call(node, selector);
+ } : ie8MatchesSelector;
+ })();
+ }
+
+ return matchesCache ? matchesCache(node, selector) : null;
+}
+
+function ie8MatchesSelector(node, selector) {
+ var matches = (0, _querySelectorAll2.default)(node.document || node.ownerDocument, selector),
+ i = 0;
+
+ while (matches[i] && matches[i] !== node) {
+ i++;
+ }return !!matches[i];
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/offset.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/offset.js
new file mode 100644
index 00000000..3df8eadc
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/offset.js
@@ -0,0 +1,45 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = offset;
+
+var _contains = require('./contains');
+
+var _contains2 = _interopRequireDefault(_contains);
+
+var _isWindow = require('./isWindow');
+
+var _isWindow2 = _interopRequireDefault(_isWindow);
+
+var _ownerDocument = require('../ownerDocument');
+
+var _ownerDocument2 = _interopRequireDefault(_ownerDocument);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function offset(node) {
+ var doc = (0, _ownerDocument2.default)(node),
+ win = (0, _isWindow2.default)(doc),
+ docElem = doc && doc.documentElement,
+ box = { top: 0, left: 0, height: 0, width: 0 };
+
+ if (!doc) return;
+
+ // Make sure it's not a disconnected DOM node
+ if (!(0, _contains2.default)(docElem, node)) return box;
+
+ if (node.getBoundingClientRect !== undefined) box = node.getBoundingClientRect();
+
+ // IE8 getBoundingClientRect doesn't support width & height
+ box = {
+ top: box.top + (win.pageYOffset || docElem.scrollTop) - (docElem.clientTop || 0),
+ left: box.left + (win.pageXOffset || docElem.scrollLeft) - (docElem.clientLeft || 0),
+ width: (box.width == null ? node.offsetWidth : box.width) || 0,
+ height: (box.height == null ? node.offsetHeight : box.height) || 0
+ };
+
+ return box;
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/offsetParent.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/offsetParent.js
new file mode 100644
index 00000000..236f93a1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/offsetParent.js
@@ -0,0 +1,32 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = offsetParent;
+
+var _ownerDocument = require('../ownerDocument');
+
+var _ownerDocument2 = _interopRequireDefault(_ownerDocument);
+
+var _style = require('../style');
+
+var _style2 = _interopRequireDefault(_style);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function nodeName(node) {
+ return node.nodeName && node.nodeName.toLowerCase();
+}
+
+function offsetParent(node) {
+ var doc = (0, _ownerDocument2.default)(node),
+ offsetParent = node && node.offsetParent;
+
+ while (offsetParent && nodeName(node) !== 'html' && (0, _style2.default)(offsetParent, 'position') === 'static') {
+ offsetParent = offsetParent.offsetParent;
+ }
+
+ return offsetParent || doc.documentElement;
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/position.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/position.js
new file mode 100644
index 00000000..46db4a17
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/position.js
@@ -0,0 +1,61 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+exports.default = position;
+
+var _offset = require('./offset');
+
+var _offset2 = _interopRequireDefault(_offset);
+
+var _offsetParent = require('./offsetParent');
+
+var _offsetParent2 = _interopRequireDefault(_offsetParent);
+
+var _scrollTop = require('./scrollTop');
+
+var _scrollTop2 = _interopRequireDefault(_scrollTop);
+
+var _scrollLeft = require('./scrollLeft');
+
+var _scrollLeft2 = _interopRequireDefault(_scrollLeft);
+
+var _style = require('../style');
+
+var _style2 = _interopRequireDefault(_style);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function nodeName(node) {
+ return node.nodeName && node.nodeName.toLowerCase();
+}
+
+function position(node, offsetParent) {
+ var parentOffset = { top: 0, left: 0 },
+ offset;
+
+ // Fixed elements are offset from window (parentOffset = {top:0, left: 0},
+ // because it is its only offset parent
+ if ((0, _style2.default)(node, 'position') === 'fixed') {
+ offset = node.getBoundingClientRect();
+ } else {
+ offsetParent = offsetParent || (0, _offsetParent2.default)(node);
+ offset = (0, _offset2.default)(node);
+
+ if (nodeName(offsetParent) !== 'html') parentOffset = (0, _offset2.default)(offsetParent);
+
+ parentOffset.top += parseInt((0, _style2.default)(offsetParent, 'borderTopWidth'), 10) - (0, _scrollTop2.default)(offsetParent) || 0;
+ parentOffset.left += parseInt((0, _style2.default)(offsetParent, 'borderLeftWidth'), 10) - (0, _scrollLeft2.default)(offsetParent) || 0;
+ }
+
+ // Subtract parent offsets and node margins
+ return _extends({}, offset, {
+ top: offset.top - parentOffset.top - (parseInt((0, _style2.default)(node, 'marginTop'), 10) || 0),
+ left: offset.left - parentOffset.left - (parseInt((0, _style2.default)(node, 'marginLeft'), 10) || 0)
+ });
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/querySelectorAll.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/querySelectorAll.js
new file mode 100644
index 00000000..caa43a0c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/querySelectorAll.js
@@ -0,0 +1,33 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = qsa;
+// Zepto.js
+// (c) 2010-2015 Thomas Fuchs
+// Zepto.js may be freely distributed under the MIT license.
+var simpleSelectorRE = /^[\w-]*$/;
+var toArray = Function.prototype.bind.call(Function.prototype.call, [].slice);
+
+function qsa(element, selector) {
+ var maybeID = selector[0] === '#',
+ maybeClass = selector[0] === '.',
+ nameOnly = maybeID || maybeClass ? selector.slice(1) : selector,
+ isSimple = simpleSelectorRE.test(nameOnly),
+ found;
+
+ if (isSimple) {
+ if (maybeID) {
+ element = element.getElementById ? element : document;
+ return (found = element.getElementById(nameOnly)) ? [found] : [];
+ }
+
+ if (element.getElementsByClassName && maybeClass) return toArray(element.getElementsByClassName(nameOnly));
+
+ return toArray(element.getElementsByTagName(selector));
+ }
+
+ return toArray(element.querySelectorAll(selector));
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/scrollLeft.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/scrollLeft.js
new file mode 100644
index 00000000..80411bfb
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/scrollLeft.js
@@ -0,0 +1,21 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = scrollTop;
+
+var _isWindow = require('./isWindow');
+
+var _isWindow2 = _interopRequireDefault(_isWindow);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function scrollTop(node, val) {
+ var win = (0, _isWindow2.default)(node);
+
+ if (val === undefined) return win ? 'pageXOffset' in win ? win.pageXOffset : win.document.documentElement.scrollLeft : node.scrollLeft;
+
+ if (win) win.scrollTo(val, 'pageYOffset' in win ? win.pageYOffset : win.document.documentElement.scrollTop);else node.scrollLeft = val;
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/scrollParent.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/scrollParent.js
new file mode 100644
index 00000000..d6bcf4cb
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/scrollParent.js
@@ -0,0 +1,37 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = scrollPrarent;
+
+var _style = require('../style');
+
+var _style2 = _interopRequireDefault(_style);
+
+var _height = require('./height');
+
+var _height2 = _interopRequireDefault(_height);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function scrollPrarent(node) {
+ var position = (0, _style2.default)(node, 'position'),
+ excludeStatic = position === 'absolute',
+ ownerDoc = node.ownerDocument;
+
+ if (position === 'fixed') return ownerDoc || document;
+
+ while ((node = node.parentNode) && node.nodeType !== 9) {
+
+ var isStatic = excludeStatic && (0, _style2.default)(node, 'position') === 'static',
+ style = (0, _style2.default)(node, 'overflow') + (0, _style2.default)(node, 'overflow-y') + (0, _style2.default)(node, 'overflow-x');
+
+ if (isStatic) continue;
+
+ if (/(auto|scroll)/.test(style) && (0, _height2.default)(node) < node.scrollHeight) return node;
+ }
+
+ return document;
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/scrollTop.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/scrollTop.js
new file mode 100644
index 00000000..fdc5038f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/scrollTop.js
@@ -0,0 +1,21 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = scrollTop;
+
+var _isWindow = require('./isWindow');
+
+var _isWindow2 = _interopRequireDefault(_isWindow);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function scrollTop(node, val) {
+ var win = (0, _isWindow2.default)(node);
+
+ if (val === undefined) return win ? 'pageYOffset' in win ? win.pageYOffset : win.document.documentElement.scrollTop : node.scrollTop;
+
+ if (win) win.scrollTo('pageXOffset' in win ? win.pageXOffset : win.document.documentElement.scrollLeft, val);else node.scrollTop = val;
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/width.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/width.js
new file mode 100644
index 00000000..b19df1ab
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/query/width.js
@@ -0,0 +1,22 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = width;
+
+var _offset = require('./offset');
+
+var _offset2 = _interopRequireDefault(_offset);
+
+var _isWindow = require('./isWindow');
+
+var _isWindow2 = _interopRequireDefault(_isWindow);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function width(node, client) {
+ var win = (0, _isWindow2.default)(node);
+ return win ? win.innerWidth : client ? node.clientWidth : (0, _offset2.default)(node).width;
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/style/getComputedStyle.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/style/getComputedStyle.js
new file mode 100644
index 00000000..f15ee9ed
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/style/getComputedStyle.js
@@ -0,0 +1,55 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = _getComputedStyle;
+
+var _camelizeStyle = require('../util/camelizeStyle');
+
+var _camelizeStyle2 = _interopRequireDefault(_camelizeStyle);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var rposition = /^(top|right|bottom|left)$/;
+var rnumnonpx = /^([+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|))(?!px)[a-z%]+$/i;
+
+function _getComputedStyle(node) {
+ if (!node) throw new TypeError('No Element passed to `getComputedStyle()`');
+ var doc = node.ownerDocument;
+
+ return 'defaultView' in doc ? doc.defaultView.opener ? node.ownerDocument.defaultView.getComputedStyle(node, null) : window.getComputedStyle(node, null) : {
+ //ie 8 "magic" from: https://github.com/jquery/jquery/blob/1.11-stable/src/css/curCSS.js#L72
+ getPropertyValue: function getPropertyValue(prop) {
+ var style = node.style;
+
+ prop = (0, _camelizeStyle2.default)(prop);
+
+ if (prop == 'float') prop = 'styleFloat';
+
+ var current = node.currentStyle[prop] || null;
+
+ if (current == null && style && style[prop]) current = style[prop];
+
+ if (rnumnonpx.test(current) && !rposition.test(prop)) {
+ // Remember the original values
+ var left = style.left;
+ var runStyle = node.runtimeStyle;
+ var rsLeft = runStyle && runStyle.left;
+
+ // Put in the new values to get a computed value out
+ if (rsLeft) runStyle.left = node.currentStyle.left;
+
+ style.left = prop === 'fontSize' ? '1em' : current;
+ current = style.pixelLeft + 'px';
+
+ // Revert the changed values
+ style.left = left;
+ if (rsLeft) runStyle.left = rsLeft;
+ }
+
+ return current;
+ }
+ };
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/style/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/style/index.js
new file mode 100644
index 00000000..289fe4b5
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/style/index.js
@@ -0,0 +1,62 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = style;
+
+var _camelizeStyle = require('../util/camelizeStyle');
+
+var _camelizeStyle2 = _interopRequireDefault(_camelizeStyle);
+
+var _hyphenateStyle = require('../util/hyphenateStyle');
+
+var _hyphenateStyle2 = _interopRequireDefault(_hyphenateStyle);
+
+var _getComputedStyle2 = require('./getComputedStyle');
+
+var _getComputedStyle3 = _interopRequireDefault(_getComputedStyle2);
+
+var _removeStyle = require('./removeStyle');
+
+var _removeStyle2 = _interopRequireDefault(_removeStyle);
+
+var _properties = require('../transition/properties');
+
+var _isTransform = require('../transition/isTransform');
+
+var _isTransform2 = _interopRequireDefault(_isTransform);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function style(node, property, value) {
+ var css = '';
+ var transforms = '';
+ var props = property;
+
+ if (typeof property === 'string') {
+ if (value === undefined) {
+ return node.style[(0, _camelizeStyle2.default)(property)] || (0, _getComputedStyle3.default)(node).getPropertyValue((0, _hyphenateStyle2.default)(property));
+ } else {
+ (props = {})[property] = value;
+ }
+ }
+
+ Object.keys(props).forEach(function (key) {
+ var value = props[key];
+ if (!value && value !== 0) {
+ (0, _removeStyle2.default)(node, (0, _hyphenateStyle2.default)(key));
+ } else if ((0, _isTransform2.default)(key)) {
+ transforms += key + '(' + value + ') ';
+ } else {
+ css += (0, _hyphenateStyle2.default)(key) + ': ' + value + ';';
+ }
+ });
+
+ if (transforms) {
+ css += _properties.transform + ': ' + transforms + ';';
+ }
+
+ node.style.cssText += ';' + css;
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/style/removeStyle.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/style/removeStyle.js
new file mode 100644
index 00000000..6dfa15ea
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/style/removeStyle.js
@@ -0,0 +1,10 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = removeStyle;
+function removeStyle(node, key) {
+ return 'removeProperty' in node.style ? node.style.removeProperty(key) : node.style.removeAttribute(key);
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/transition/animate.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/transition/animate.js
new file mode 100644
index 00000000..2f2e9397
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/transition/animate.js
@@ -0,0 +1,124 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
+
+var _hyphenate = require('../util/hyphenate');
+
+var _hyphenate2 = _interopRequireDefault(_hyphenate);
+
+var _style = require('../style');
+
+var _style2 = _interopRequireDefault(_style);
+
+var _on = require('../events/on');
+
+var _on2 = _interopRequireDefault(_on);
+
+var _off = require('../events/off');
+
+var _off2 = _interopRequireDefault(_off);
+
+var _properties = require('./properties');
+
+var _properties2 = _interopRequireDefault(_properties);
+
+var _isTransform = require('./isTransform');
+
+var _isTransform2 = _interopRequireDefault(_isTransform);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var reset = {};
+reset[_properties2.default.property] = reset[_properties2.default.duration] = reset[_properties2.default.delay] = reset[_properties2.default.timing] = '';
+
+// super lean animate function for transitions
+// doesn't support all translations to keep it matching the jquery API
+/**
+ * code in part from: Zepto 1.1.4 | zeptojs.com/license
+ */
+function _animate(_ref) {
+ var node = _ref.node;
+ var properties = _ref.properties;
+ var _ref$duration = _ref.duration;
+ var duration = _ref$duration === undefined ? 200 : _ref$duration;
+ var easing = _ref.easing;
+ var callback = _ref.callback;
+
+ var cssProperties = [],
+ fakeEvent = { target: node, currentTarget: node },
+ cssValues = {},
+ transforms = '',
+ fired = void 0;
+
+ if (!_properties2.default.end) duration = 0;
+
+ Object.keys(properties).forEach(function (key) {
+ if ((0, _isTransform2.default)(key)) transforms += key + '(' + properties[key] + ') ';else {
+ cssValues[key] = properties[key];
+ cssProperties.push((0, _hyphenate2.default)(key));
+ }
+ });
+
+ if (transforms) {
+ cssValues[_properties2.default.transform] = transforms;
+ cssProperties.push(_properties2.default.transform);
+ }
+
+ if (duration > 0) {
+ cssValues[_properties2.default.property] = cssProperties.join(', ');
+ cssValues[_properties2.default.duration] = duration / 1000 + 's';
+ cssValues[_properties2.default.delay] = 0 + 's';
+ cssValues[_properties2.default.timing] = easing || 'linear';
+
+ (0, _on2.default)(node, _properties2.default.end, done);
+
+ setTimeout(function () {
+ if (!fired) done(fakeEvent);
+ }, duration + 500);
+ }
+
+ //eslint-disable-next-line no-unused-expressions
+ node.clientLeft; // trigger page reflow
+
+ (0, _style2.default)(node, cssValues);
+
+ if (duration <= 0) setTimeout(done.bind(null, fakeEvent), 0);
+
+ return {
+ cancel: function cancel() {
+ if (fired) return;
+ fired = true;
+ (0, _off2.default)(node, _properties2.default.end, done);
+ (0, _style2.default)(node, reset);
+ }
+ };
+
+ function done(event) {
+ if (event.target !== event.currentTarget) return;
+
+ fired = true;
+ (0, _off2.default)(event.target, _properties2.default.end, done);
+ (0, _style2.default)(node, reset);
+ callback && callback.call(this);
+ }
+}
+
+function animate(node, properties, duration, easing, callback) {
+ if (arguments.length === 1 && (typeof node === 'undefined' ? 'undefined' : _typeof(node)) === 'object') {
+ return _animate(node);
+ }
+
+ if (typeof easing === 'function') {
+ callback = easing;
+ easing = null;
+ }
+
+ return _animate({ node: node, properties: properties, duration: duration, easing: easing, callback: callback });
+}
+
+exports.default = animate;
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/transition/end.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/transition/end.js
new file mode 100644
index 00000000..c25be9f0
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/transition/end.js
@@ -0,0 +1,53 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _properties = require('./properties');
+
+var _properties2 = _interopRequireDefault(_properties);
+
+var _style = require('../style');
+
+var _style2 = _interopRequireDefault(_style);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function onEnd(node, handler, duration) {
+ var fakeEvent = {
+ target: node,
+ currentTarget: node
+ },
+ backup;
+
+ if (!_properties2.default.end) duration = 0;else if (duration == null) duration = parseDuration(node) || 0;
+
+ if (_properties2.default.end) {
+ node.addEventListener(_properties2.default.end, done, false);
+
+ backup = setTimeout(function () {
+ return done(fakeEvent);
+ }, (duration || 100) * 1.5);
+ } else setTimeout(done.bind(null, fakeEvent), 0);
+
+ function done(event) {
+ if (event.target !== event.currentTarget) return;
+ clearTimeout(backup);
+ event.target.removeEventListener(_properties2.default.end, done);
+ handler.call(this);
+ }
+}
+
+onEnd._parseDuration = parseDuration;
+
+exports.default = onEnd;
+
+
+function parseDuration(node) {
+ var str = (0, _style2.default)(node, _properties2.default.duration),
+ mult = str.indexOf('ms') === -1 ? 1000 : 1;
+
+ return parseFloat(str) * mult;
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/transition/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/transition/index.js
new file mode 100644
index 00000000..61790e3d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/transition/index.js
@@ -0,0 +1,20 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.properties = exports.end = undefined;
+
+var _end = require('./end');
+
+var _end2 = _interopRequireDefault(_end);
+
+var _properties = require('./properties');
+
+var _properties2 = _interopRequireDefault(_properties);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+exports.end = _end2.default;
+exports.properties = _properties2.default;
+exports.default = { end: _end2.default, properties: _properties2.default };
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/transition/isTransform.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/transition/isTransform.js
new file mode 100644
index 00000000..2f001958
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/transition/isTransform.js
@@ -0,0 +1,12 @@
+"use strict";
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = isTransform;
+var supportedTransforms = /^((translate|rotate|scale)(X|Y|Z|3d)?|matrix(3d)?|perspective|skew(X|Y)?)$/i;
+
+function isTransform(property) {
+ return !!(property && supportedTransforms.test(property));
+}
+module.exports = exports["default"];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/transition/properties.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/transition/properties.js
new file mode 100644
index 00000000..b87735f2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/transition/properties.js
@@ -0,0 +1,110 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.animationEnd = exports.animationDelay = exports.animationTiming = exports.animationDuration = exports.animationName = exports.transitionEnd = exports.transitionDuration = exports.transitionDelay = exports.transitionTiming = exports.transitionProperty = exports.transform = undefined;
+
+var _inDOM = require('../util/inDOM');
+
+var _inDOM2 = _interopRequireDefault(_inDOM);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var transform = 'transform';
+var prefix = void 0,
+ transitionEnd = void 0,
+ animationEnd = void 0;
+var transitionProperty = void 0,
+ transitionDuration = void 0,
+ transitionTiming = void 0,
+ transitionDelay = void 0;
+var animationName = void 0,
+ animationDuration = void 0,
+ animationTiming = void 0,
+ animationDelay = void 0;
+
+if (_inDOM2.default) {
+ var _getTransitionPropert = getTransitionProperties();
+
+ prefix = _getTransitionPropert.prefix;
+ exports.transitionEnd = transitionEnd = _getTransitionPropert.transitionEnd;
+ exports.animationEnd = animationEnd = _getTransitionPropert.animationEnd;
+
+
+ exports.transform = transform = prefix + '-' + transform;
+ exports.transitionProperty = transitionProperty = prefix + '-transition-property';
+ exports.transitionDuration = transitionDuration = prefix + '-transition-duration';
+ exports.transitionDelay = transitionDelay = prefix + '-transition-delay';
+ exports.transitionTiming = transitionTiming = prefix + '-transition-timing-function';
+
+ exports.animationName = animationName = prefix + '-animation-name';
+ exports.animationDuration = animationDuration = prefix + '-animation-duration';
+ exports.animationTiming = animationTiming = prefix + '-animation-delay';
+ exports.animationDelay = animationDelay = prefix + '-animation-timing-function';
+}
+
+exports.transform = transform;
+exports.transitionProperty = transitionProperty;
+exports.transitionTiming = transitionTiming;
+exports.transitionDelay = transitionDelay;
+exports.transitionDuration = transitionDuration;
+exports.transitionEnd = transitionEnd;
+exports.animationName = animationName;
+exports.animationDuration = animationDuration;
+exports.animationTiming = animationTiming;
+exports.animationDelay = animationDelay;
+exports.animationEnd = animationEnd;
+exports.default = {
+ transform: transform,
+ end: transitionEnd,
+ property: transitionProperty,
+ timing: transitionTiming,
+ delay: transitionDelay,
+ duration: transitionDuration
+};
+
+
+function getTransitionProperties() {
+ var style = document.createElement('div').style;
+
+ var vendorMap = {
+ O: function O(e) {
+ return 'o' + e.toLowerCase();
+ },
+ Moz: function Moz(e) {
+ return e.toLowerCase();
+ },
+ Webkit: function Webkit(e) {
+ return 'webkit' + e;
+ },
+ ms: function ms(e) {
+ return 'MS' + e;
+ }
+ };
+
+ var vendors = Object.keys(vendorMap);
+
+ var transitionEnd = void 0,
+ animationEnd = void 0;
+ var prefix = '';
+
+ for (var i = 0; i < vendors.length; i++) {
+ var vendor = vendors[i];
+
+ if (vendor + 'TransitionProperty' in style) {
+ prefix = '-' + vendor.toLowerCase();
+ transitionEnd = vendorMap[vendor]('TransitionEnd');
+ animationEnd = vendorMap[vendor]('AnimationEnd');
+ break;
+ }
+ }
+
+ if (!transitionEnd && 'transitionProperty' in style) transitionEnd = 'transitionend';
+
+ if (!animationEnd && 'animationName' in style) animationEnd = 'animationend';
+
+ style = null;
+
+ return { animationEnd: animationEnd, transitionEnd: transitionEnd, prefix: prefix };
+}
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/util/camelize.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/util/camelize.js
new file mode 100644
index 00000000..fcbda483
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/util/camelize.js
@@ -0,0 +1,14 @@
+"use strict";
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = camelize;
+var rHyphen = /-(.)/g;
+
+function camelize(string) {
+ return string.replace(rHyphen, function (_, chr) {
+ return chr.toUpperCase();
+ });
+}
+module.exports = exports["default"];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/util/camelizeStyle.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/util/camelizeStyle.js
new file mode 100644
index 00000000..30723cf2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/util/camelizeStyle.js
@@ -0,0 +1,22 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = camelizeStyleName;
+
+var _camelize = require('./camelize');
+
+var _camelize2 = _interopRequireDefault(_camelize);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var msPattern = /^-ms-/; /**
+ * Copyright 2014-2015, Facebook, Inc.
+ * All rights reserved.
+ * https://github.com/facebook/react/blob/2aeb8a2a6beb00617a4217f7f8284924fa2ad819/src/vendor/core/camelizeStyleName.js
+ */
+function camelizeStyleName(string) {
+ return (0, _camelize2.default)(string.replace(msPattern, 'ms-'));
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/util/hyphenate.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/util/hyphenate.js
new file mode 100644
index 00000000..5b1d52c8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/util/hyphenate.js
@@ -0,0 +1,13 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = hyphenate;
+
+var rUpper = /([A-Z])/g;
+
+function hyphenate(string) {
+ return string.replace(rUpper, '-$1').toLowerCase();
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/util/hyphenateStyle.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/util/hyphenateStyle.js
new file mode 100644
index 00000000..65904dea
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/util/hyphenateStyle.js
@@ -0,0 +1,23 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = hyphenateStyleName;
+
+var _hyphenate = require('./hyphenate');
+
+var _hyphenate2 = _interopRequireDefault(_hyphenate);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var msPattern = /^ms-/; /**
+ * Copyright 2013-2014, Facebook, Inc.
+ * All rights reserved.
+ * https://github.com/facebook/react/blob/2aeb8a2a6beb00617a4217f7f8284924fa2ad819/src/vendor/core/hyphenateStyleName.js
+ */
+
+function hyphenateStyleName(string) {
+ return (0, _hyphenate2.default)(string).replace(msPattern, '-ms-');
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/util/inDOM.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/util/inDOM.js
new file mode 100644
index 00000000..b4135733
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/util/inDOM.js
@@ -0,0 +1,7 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = !!(typeof window !== 'undefined' && window.document && window.document.createElement);
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/util/requestAnimationFrame.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/util/requestAnimationFrame.js
new file mode 100644
index 00000000..0035a4d1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/util/requestAnimationFrame.js
@@ -0,0 +1,53 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _inDOM = require('./inDOM');
+
+var _inDOM2 = _interopRequireDefault(_inDOM);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var vendors = ['', 'webkit', 'moz', 'o', 'ms'];
+var cancel = 'clearTimeout';
+var raf = fallback;
+var compatRaf = void 0;
+
+var getKey = function getKey(vendor, k) {
+ return vendor + (!vendor ? k : k[0].toUpperCase() + k.substr(1)) + 'AnimationFrame';
+};
+
+if (_inDOM2.default) {
+ vendors.some(function (vendor) {
+ var rafKey = getKey(vendor, 'request');
+
+ if (rafKey in window) {
+ cancel = getKey(vendor, 'cancel');
+ return raf = function raf(cb) {
+ return window[rafKey](cb);
+ };
+ }
+ });
+}
+
+/* https://github.com/component/raf */
+var prev = new Date().getTime();
+function fallback(fn) {
+ var curr = new Date().getTime(),
+ ms = Math.max(0, 16 - (curr - prev)),
+ req = setTimeout(fn, ms);
+
+ prev = curr;
+ return req;
+}
+
+compatRaf = function compatRaf(cb) {
+ return raf(cb);
+};
+compatRaf.cancel = function (id) {
+ window[cancel] && typeof window[cancel] === 'function' && window[cancel](id);
+};
+exports.default = compatRaf;
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/util/scrollTo.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/util/scrollTo.js
new file mode 100644
index 00000000..07294c38
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/util/scrollTo.js
@@ -0,0 +1,76 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = scrollTo;
+
+var _offset = require('../query/offset');
+
+var _offset2 = _interopRequireDefault(_offset);
+
+var _height = require('../query/height');
+
+var _height2 = _interopRequireDefault(_height);
+
+var _scrollParent = require('../query/scrollParent');
+
+var _scrollParent2 = _interopRequireDefault(_scrollParent);
+
+var _scrollTop = require('../query/scrollTop');
+
+var _scrollTop2 = _interopRequireDefault(_scrollTop);
+
+var _requestAnimationFrame = require('./requestAnimationFrame');
+
+var _requestAnimationFrame2 = _interopRequireDefault(_requestAnimationFrame);
+
+var _isWindow = require('../query/isWindow');
+
+var _isWindow2 = _interopRequireDefault(_isWindow);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function scrollTo(selected, scrollParent) {
+ var offset = (0, _offset2.default)(selected);
+ var poff = { top: 0, left: 0 };
+ var list = void 0,
+ listScrollTop = void 0,
+ selectedTop = void 0,
+ isWin = void 0;
+ var selectedHeight = void 0,
+ listHeight = void 0,
+ bottom = void 0;
+
+ if (!selected) return;
+
+ list = scrollParent || (0, _scrollParent2.default)(selected);
+ isWin = (0, _isWindow2.default)(list);
+ listScrollTop = (0, _scrollTop2.default)(list);
+
+ listHeight = (0, _height2.default)(list, true);
+ isWin = (0, _isWindow2.default)(list);
+
+ if (!isWin) poff = (0, _offset2.default)(list);
+
+ offset = {
+ top: offset.top - poff.top,
+ left: offset.left - poff.left,
+ height: offset.height,
+ width: offset.width
+ };
+
+ selectedHeight = offset.height;
+ selectedTop = offset.top + (isWin ? 0 : listScrollTop);
+ bottom = selectedTop + selectedHeight;
+
+ listScrollTop = listScrollTop > selectedTop ? selectedTop : bottom > listScrollTop + listHeight ? bottom - listHeight : listScrollTop;
+
+ var id = (0, _requestAnimationFrame2.default)(function () {
+ return (0, _scrollTop2.default)(list, listScrollTop);
+ });
+ return function () {
+ return _requestAnimationFrame2.default.cancel(id);
+ };
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/util/scrollbarSize.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/util/scrollbarSize.js
new file mode 100644
index 00000000..54971e1c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/dom-helpers/util/scrollbarSize.js
@@ -0,0 +1,35 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+exports.default = function (recalc) {
+ if (!size && size !== 0 || recalc) {
+ if (_inDOM2.default) {
+ var scrollDiv = document.createElement('div');
+
+ scrollDiv.style.position = 'absolute';
+ scrollDiv.style.top = '-9999px';
+ scrollDiv.style.width = '50px';
+ scrollDiv.style.height = '50px';
+ scrollDiv.style.overflow = 'scroll';
+
+ document.body.appendChild(scrollDiv);
+ size = scrollDiv.offsetWidth - scrollDiv.clientWidth;
+ document.body.removeChild(scrollDiv);
+ }
+ }
+
+ return size;
+};
+
+var _inDOM = require('./inDOM');
+
+var _inDOM2 = _interopRequireDefault(_inDOM);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var size = void 0;
+
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/encoding/.npmignore b/goTorrentWebUI/node_modules/react-toastify/node_modules/encoding/.npmignore
new file mode 100644
index 00000000..b512c09d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/encoding/.npmignore
@@ -0,0 +1 @@
+node_modules
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/encoding/.travis.yml b/goTorrentWebUI/node_modules/react-toastify/node_modules/encoding/.travis.yml
new file mode 100644
index 00000000..abc4f48c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/encoding/.travis.yml
@@ -0,0 +1,25 @@
+language: node_js
+sudo: false
+node_js:
+ - "0.10"
+ - 0.12
+ - iojs
+ - 4
+ - 5
+env:
+ - CXX=g++-4.8
+addons:
+ apt:
+ sources:
+ - ubuntu-toolchain-r-test
+ packages:
+ - g++-4.8
+notifications:
+ email:
+ - andris@kreata.ee
+ webhooks:
+ urls:
+ - https://webhooks.gitter.im/e/0ed18fd9b3e529b3c2cc
+ on_success: change # options: [always|never|change] default: always
+ on_failure: always # options: [always|never|change] default: always
+ on_start: false # default: false
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/encoding/LICENSE b/goTorrentWebUI/node_modules/react-toastify/node_modules/encoding/LICENSE
new file mode 100644
index 00000000..33f5a9a3
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/encoding/LICENSE
@@ -0,0 +1,16 @@
+Copyright (c) 2012-2014 Andris Reinman
+
+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 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/goTorrentWebUI/node_modules/react-toastify/node_modules/encoding/README.md b/goTorrentWebUI/node_modules/react-toastify/node_modules/encoding/README.md
new file mode 100644
index 00000000..62e6bf88
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/encoding/README.md
@@ -0,0 +1,52 @@
+# Encoding
+
+**encoding** is a simple wrapper around [node-iconv](https://github.com/bnoordhuis/node-iconv) and [iconv-lite](https://github.com/ashtuchkin/iconv-lite/) to convert strings from one encoding to another. If node-iconv is not available for some reason,
+iconv-lite will be used instead of it as a fallback.
+
+[](http://travis-ci.org/andris9/Nodemailer)
+[](http://badge.fury.io/js/encoding)
+
+## Install
+
+Install through npm
+
+ npm install encoding
+
+## Usage
+
+Require the module
+
+ var encoding = require("encoding");
+
+Convert with encoding.convert()
+
+ var resultBuffer = encoding.convert(text, toCharset, fromCharset);
+
+Where
+
+ * **text** is either a Buffer or a String to be converted
+ * **toCharset** is the characterset to convert the string
+ * **fromCharset** (*optional*, defaults to UTF-8) is the source charset
+
+Output of the conversion is always a Buffer object.
+
+Example
+
+ var result = encoding.convert("ÕÄÖÜ", "Latin_1");
+ console.log(result); //
+
+## iconv support
+
+By default only iconv-lite is bundled. If you need node-iconv support, you need to add it
+as an additional dependency for your project:
+
+ ...,
+ "dependencies":{
+ "encoding": "*",
+ "iconv": "*"
+ },
+ ...
+
+## License
+
+**MIT**
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/encoding/lib/encoding.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/encoding/lib/encoding.js
new file mode 100644
index 00000000..cbea3ced
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/encoding/lib/encoding.js
@@ -0,0 +1,113 @@
+'use strict';
+
+var iconvLite = require('iconv-lite');
+// Load Iconv from an external file to be able to disable Iconv for webpack
+// Add /\/iconv-loader$/ to webpack.IgnorePlugin to ignore it
+var Iconv = require('./iconv-loader');
+
+// Expose to the world
+module.exports.convert = convert;
+
+/**
+ * Convert encoding of an UTF-8 string or a buffer
+ *
+ * @param {String|Buffer} str String to be converted
+ * @param {String} to Encoding to be converted to
+ * @param {String} [from='UTF-8'] Encoding to be converted from
+ * @param {Boolean} useLite If set to ture, force to use iconvLite
+ * @return {Buffer} Encoded string
+ */
+function convert(str, to, from, useLite) {
+ from = checkEncoding(from || 'UTF-8');
+ to = checkEncoding(to || 'UTF-8');
+ str = str || '';
+
+ var result;
+
+ if (from !== 'UTF-8' && typeof str === 'string') {
+ str = new Buffer(str, 'binary');
+ }
+
+ if (from === to) {
+ if (typeof str === 'string') {
+ result = new Buffer(str);
+ } else {
+ result = str;
+ }
+ } else if (Iconv && !useLite) {
+ try {
+ result = convertIconv(str, to, from);
+ } catch (E) {
+ console.error(E);
+ try {
+ result = convertIconvLite(str, to, from);
+ } catch (E) {
+ console.error(E);
+ result = str;
+ }
+ }
+ } else {
+ try {
+ result = convertIconvLite(str, to, from);
+ } catch (E) {
+ console.error(E);
+ result = str;
+ }
+ }
+
+
+ if (typeof result === 'string') {
+ result = new Buffer(result, 'utf-8');
+ }
+
+ return result;
+}
+
+/**
+ * Convert encoding of a string with node-iconv (if available)
+ *
+ * @param {String|Buffer} str String to be converted
+ * @param {String} to Encoding to be converted to
+ * @param {String} [from='UTF-8'] Encoding to be converted from
+ * @return {Buffer} Encoded string
+ */
+function convertIconv(str, to, from) {
+ var response, iconv;
+ iconv = new Iconv(from, to + '//TRANSLIT//IGNORE');
+ response = iconv.convert(str);
+ return response.slice(0, response.length);
+}
+
+/**
+ * Convert encoding of astring with iconv-lite
+ *
+ * @param {String|Buffer} str String to be converted
+ * @param {String} to Encoding to be converted to
+ * @param {String} [from='UTF-8'] Encoding to be converted from
+ * @return {Buffer} Encoded string
+ */
+function convertIconvLite(str, to, from) {
+ if (to === 'UTF-8') {
+ return iconvLite.decode(str, from);
+ } else if (from === 'UTF-8') {
+ return iconvLite.encode(str, to);
+ } else {
+ return iconvLite.encode(iconvLite.decode(str, from), to);
+ }
+}
+
+/**
+ * Converts charset name if needed
+ *
+ * @param {String} name Character set
+ * @return {String} Character set name
+ */
+function checkEncoding(name) {
+ return (name || '').toString().trim().
+ replace(/^latin[\-_]?(\d+)$/i, 'ISO-8859-$1').
+ replace(/^win(?:dows)?[\-_]?(\d+)$/i, 'WINDOWS-$1').
+ replace(/^utf[\-_]?(\d+)$/i, 'UTF-$1').
+ replace(/^ks_c_5601\-1987$/i, 'CP949').
+ replace(/^us[\-_]?ascii$/i, 'ASCII').
+ toUpperCase();
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/encoding/lib/iconv-loader.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/encoding/lib/iconv-loader.js
new file mode 100644
index 00000000..8e925fd8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/encoding/lib/iconv-loader.js
@@ -0,0 +1,14 @@
+'use strict';
+
+var iconv_package;
+var Iconv;
+
+try {
+ // this is to fool browserify so it doesn't try (in vain) to install iconv.
+ iconv_package = 'iconv';
+ Iconv = require(iconv_package).Iconv;
+} catch (E) {
+ // node-iconv not present
+}
+
+module.exports = Iconv;
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/encoding/package.json b/goTorrentWebUI/node_modules/react-toastify/node_modules/encoding/package.json
new file mode 100644
index 00000000..b0914b52
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/encoding/package.json
@@ -0,0 +1,53 @@
+{
+ "_from": "encoding@^0.1.11",
+ "_id": "encoding@0.1.12",
+ "_inBundle": false,
+ "_integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=",
+ "_location": "/react-toastify/encoding",
+ "_phantomChildren": {},
+ "_requested": {
+ "type": "range",
+ "registry": true,
+ "raw": "encoding@^0.1.11",
+ "name": "encoding",
+ "escapedName": "encoding",
+ "rawSpec": "^0.1.11",
+ "saveSpec": null,
+ "fetchSpec": "^0.1.11"
+ },
+ "_requiredBy": [
+ "/react-toastify/node-fetch"
+ ],
+ "_resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz",
+ "_shasum": "538b66f3ee62cd1ab51ec323829d1f9480c74beb",
+ "_spec": "encoding@^0.1.11",
+ "_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI\\node_modules\\react-toastify\\node_modules\\node-fetch",
+ "author": {
+ "name": "Andris Reinman"
+ },
+ "bugs": {
+ "url": "https://github.com/andris9/encoding/issues"
+ },
+ "bundleDependencies": false,
+ "dependencies": {
+ "iconv-lite": "~0.4.13"
+ },
+ "deprecated": false,
+ "description": "Convert encodings, uses iconv by default and fallbacks to iconv-lite if needed",
+ "devDependencies": {
+ "iconv": "~2.1.11",
+ "nodeunit": "~0.9.1"
+ },
+ "homepage": "https://github.com/andris9/encoding#readme",
+ "license": "MIT",
+ "main": "lib/encoding.js",
+ "name": "encoding",
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/andris9/encoding.git"
+ },
+ "scripts": {
+ "test": "nodeunit test"
+ },
+ "version": "0.1.12"
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/encoding/test/test.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/encoding/test/test.js
new file mode 100644
index 00000000..0de4dcb1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/encoding/test/test.js
@@ -0,0 +1,75 @@
+'use strict';
+
+var Iconv = require('../lib/iconv-loader');
+var encoding = require('../lib/encoding');
+
+exports['General tests'] = {
+
+ 'Iconv is available': function (test) {
+ test.ok(Iconv);
+ test.done();
+ },
+
+ 'From UTF-8 to Latin_1 with Iconv': function (test) {
+ var input = 'ÕÄÖÜ',
+ expected = new Buffer([0xd5, 0xc4, 0xd6, 0xdc]);
+ test.deepEqual(encoding.convert(input, 'latin1'), expected);
+ test.done();
+ },
+
+ 'From Latin_1 to UTF-8 with Iconv': function (test) {
+ var input = new Buffer([0xd5, 0xc4, 0xd6, 0xdc]),
+ expected = 'ÕÄÖÜ';
+ test.deepEqual(encoding.convert(input, 'utf-8', 'latin1').toString(), expected);
+ test.done();
+ },
+
+ 'From UTF-8 to UTF-8 with Iconv': function (test) {
+ var input = 'ÕÄÖÜ',
+ expected = new Buffer('ÕÄÖÜ');
+ test.deepEqual(encoding.convert(input, 'utf-8', 'utf-8'), expected);
+ test.done();
+ },
+
+ 'From Latin_13 to Latin_15 with Iconv': function (test) {
+ var input = new Buffer([0xd5, 0xc4, 0xd6, 0xdc, 0xd0]),
+ expected = new Buffer([0xd5, 0xc4, 0xd6, 0xdc, 0xA6]);
+ test.deepEqual(encoding.convert(input, 'latin_15', 'latin13'), expected);
+ test.done();
+ },
+
+ 'From ISO-2022-JP to UTF-8 with Iconv': function (test) {
+ var input = new Buffer('GyRCM1g5OzU7PVEwdzgmPSQ4IUYkMnFKczlwGyhC', 'base64'),
+ expected = new Buffer('5a2m5qCh5oqA6KGT5ZOh56CU5L+u5qSc6KiO5Lya5aCx5ZGK', 'base64');
+ test.deepEqual(encoding.convert(input, 'utf-8', 'ISO-2022-JP'), expected);
+ test.done();
+ },
+
+ 'From UTF-8 to Latin_1 with iconv-lite': function (test) {
+ var input = 'ÕÄÖÜ',
+ expected = new Buffer([0xd5, 0xc4, 0xd6, 0xdc]);
+ test.deepEqual(encoding.convert(input, 'latin1', false, true), expected);
+ test.done();
+ },
+
+ 'From Latin_1 to UTF-8 with iconv-lite': function (test) {
+ var input = new Buffer([0xd5, 0xc4, 0xd6, 0xdc]),
+ expected = 'ÕÄÖÜ';
+ test.deepEqual(encoding.convert(input, 'utf-8', 'latin1', true).toString(), expected);
+ test.done();
+ },
+
+ 'From UTF-8 to UTF-8 with iconv-lite': function (test) {
+ var input = 'ÕÄÖÜ',
+ expected = new Buffer('ÕÄÖÜ');
+ test.deepEqual(encoding.convert(input, 'utf-8', 'utf-8', true), expected);
+ test.done();
+ },
+
+ 'From Latin_13 to Latin_15 with iconv-lite': function (test) {
+ var input = new Buffer([0xd5, 0xc4, 0xd6, 0xdc, 0xd0]),
+ expected = new Buffer([0xd5, 0xc4, 0xd6, 0xdc, 0xA6]);
+ test.deepEqual(encoding.convert(input, 'latin_15', 'latin13', true), expected);
+ test.done();
+ }
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/CHANGELOG.md b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/CHANGELOG.md
new file mode 100644
index 00000000..eabaf001
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/CHANGELOG.md
@@ -0,0 +1,214 @@
+## [Unreleased]
+
+
+## [0.8.16] - 2017-09-25
+
+### Changed
+- Relicense to MIT as part of React relicense.
+
+
+## [0.8.15] - 2017-09-07
+
+### Fixed
+- `getDocumentScrollElement` now correctly returns the `` element in Chrome 61 instead of ``.
+
+
+## [0.8.14] - 2017-07-25
+
+### Removed
+- Flow annotations for `keyMirror` module. The annotation generates a syntax error after being re-printed by Babel.
+
+
+## [0.8.13] - 2017-07-25
+
+### Added
+- Flow annotations for `keyMirror` module.
+
+### Fixed
+- Fixed strict argument arity issues with `Deferred` module.
+- Corrected License header in `EventListener`.
+
+
+## [0.8.12] - 2017-03-29
+
+### Fixed
+- Fix use of `global` working inconsistently.
+
+
+## [0.8.11] - 2017-03-21
+
+### Fixed
+- Fixed a regression resulting from making DOM utilities work in nested browsing contexts.
+
+
+## [0.8.10] - 2017-03-20
+
+### Changed
+- Made DOM utilities work in nested browsing contexts.
+
+
+## [0.8.9] - 2017-01-31
+
+### Fixed
+- Updated `partitionObjectByKey` Flow annotations for Flow 0.38.
+
+
+## [0.8.8] - 2016-12-20
+
+### Changed
+- `invariant`: Moved `process.env.NODE_ENV` check to module scope, eliminating check on each call.
+
+
+## [0.8.7] - 2016-12-19
+
+### Added
+- New module: `setImmediate`.
+
+
+## [0.8.6] - 2016-11-09
+
+### Removed
+- Removed runtime dependency on immutable, reducing package size.
+
+
+## [0.8.5] - 2016-09-27
+
+### Fixed
+- Fixed all remaining issues resulting in Flow errors when `fbjs` is a dependency of a dependency.
+
+### Removed
+- Removed now extraneous `flow/lib/Promise.js`.
+
+## [0.8.4] - 2016-08-19
+
+### Changed
+- Moved `try/catch` in `warning` module to helper function to prevent deopts.
+
+
+## [0.8.3] - 2016-05-25
+
+### Added
+- `Deferred`: added `Deferred.prototype.catch` to avoid having to call this directly on the Promise.
+- `UnicodeUtilsExtra`: added several methods for escaping strings.
+
+### Changed
+- More Flow annotations: `containsNode`, `emptyFunction`, `memoizeStringOnly`
+- Added explicit `` type arguments to in anticipation of a future Flow change requiring them.
+- `Object.assign` calls now replaced with usage of `object-assign` module.
+
+### Fixed
+- Type imports in .js.flow files are now properly using relative paths.
+- `DataTransfer`: handle Firefox better
+
+
+## [0.8.2] - 2016-05-05
+
+### Removed
+- Removed extraneous production dependency
+
+
+## [0.8.1] - 2016-04-18
+
+### Added
+- We now include a `Promise` class definition in `flow/lib` to account for the changes in Flow v0.23 which removed non-spec methods. This will allow our code to continue typechecking while using these methods.
+
+
+## [0.8.0] - 2016-04-04
+
+### Added
+- Several additional modules. Notably, a collection of Unicode utilities and many new `functional` helpers.
+- `CSSCore`: added `matchesSelector` method
+
+### Changed
+- Copyright headers updated to reflect current boilerplate
+- `@providesModule` headers removed from generated source code
+- Flow files now contain relative requires, improving compatibility with Haste and CommonJS module systems
+
+### Fixed
+- `isEmpty`: Protect from breaking in environments without `Symbol` defined
+
+
+## [0.7.2] - 2016-02-05
+
+### Fixed
+- `URI`: correctly store reference to value in constructor and return it when stringifying
+
+### Removed
+- Backed out rejection tracking for React Native `Promise` implementation. That code now lives in React Native.
+
+
+## [0.7.1] - 2016-02-02
+
+### Fixed
+
+- Corrected require path issue for native `Promise` module
+
+
+## [0.7.0] - 2016-01-27
+
+### Added
+- `Promise` for React Native with rejection tracking in `__DEV__` and a `finally` method
+- `_shouldPolyfillES6Collection`: check if ES6 Collections need to be polyfilled.
+
+### Removed
+- `toArray`: removed in favor of using `Array.from` directly.
+
+### Changed
+- `ErrorUtils`: Re-uses any global instance that already exists
+- `fetch`: Switched to `isomorphic-fetch` when a global implementation is missing
+- `shallowEqual`: handles `NaN` values appropriately (as equal), now using `Object.is` semantics
+
+
+## [0.6.1] - 2016-01-06
+
+### Changed
+- `getActiveElement`: no longer throws in non-browser environment (again)
+
+
+## [0.6.0] - 2015-12-29
+
+### Changed
+- Flow: Original source files in `fbjs/flow/include` have been removed in favor of placing original files alongside compiled files in lib with a `.flow` suffix. This requires Flow version 0.19 or greater and a change to `.flowconfig` files to remove the include path.
+
+
+## [0.5.1] - 2015-12-13
+
+### Added
+- `base62` module
+
+
+## [0.5.0] - 2015-12-04
+
+### Changed
+
+- `getActiveElement`: No longer handles a non-existent `document`
+
+
+## [0.4.0] - 2015-10-16
+
+### Changed
+
+- `invariant`: Message is no longer prefixed with "Invariant Violation: ".
+
+
+## [0.3.2] - 2015-10-12
+
+### Added
+- Apply appropriate transform (`loose-envify`) when bundling with `browserify`
+
+
+## [0.3.1] - 2015-10-01
+
+### Fixed
+- Ensure the build completes correctly before packaging
+
+
+## [0.3.0] - 2015-10-01
+
+### Added
+- More modules: `memoizeStringOnly`, `joinClasses`
+- `UserAgent`: Query information about current user agent
+
+### Changed
+- `fetchWithRetries`: Reject failure with an Error, not the response
+- `getActiveElement`: no longer throws in non-browser environment
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/LICENSE b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/LICENSE
new file mode 100644
index 00000000..29e2bc21
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/LICENSE
@@ -0,0 +1,20 @@
+MIT License
+
+Copyright (c) 2013-present, Facebook, Inc.
+
+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/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/README.md b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/README.md
new file mode 100644
index 00000000..50dcfaa3
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/README.md
@@ -0,0 +1,46 @@
+# FBJS
+
+## Purpose
+
+To make it easier for Facebook to share and consume our own JavaScript. Primarily this will allow us to ship code without worrying too much about where it lives, keeping with the spirit of `@providesModule` but working in the broader JavaScript ecosystem.
+
+**Note:** If you are consuming the code here and you are not also a Facebook project, be prepared for a bad time. APIs may appear or disappear and we may not follow semver strictly, though we will do our best to. This library is being published with our use cases in mind and is not necessarily meant to be consumed by the broader public. In order for us to move fast and ship projects like React and Relay, we've made the decision to not support everybody. We probably won't take your feature requests unless they align with our needs. There will be overlap in functionality here and in other open source projects.
+
+## Usage
+
+Any `@providesModule` modules that are used by your project should be added to `src/`. They will be built and added to `module-map.json`. This file will contain a map from `@providesModule` name to what will be published as `fbjs`. The `module-map.json` file can then be consumed in your own project, along with the [rewrite-modules](https://github.com/facebook/fbjs/blob/master/babel-preset/plugins/rewrite-modules.js) Babel plugin (which we'll publish with this), to rewrite requires in your own project. Then, just make sure `fbjs` is a dependency in your `package.json` and your package will consume the shared code.
+
+```js
+// Before transform
+const emptyFunction = require('emptyFunction');
+// After transform
+const emptyFunction = require('fbjs/lib/emptyFunction');
+```
+
+See React for an example of this. *Coming soon!*
+
+## Building
+
+It's as easy as just running gulp. This assumes you've also done `npm install -g gulp`.
+
+```sh
+gulp
+```
+
+Alternatively `npm run build` will also work.
+
+### Layout
+
+Right now these packages represent a subset of packages that we use internally at Facebook. Mostly these are support libraries used when shipping larger libraries, like React and Relay, or products. Each of these packages is in its own directory under `src/`.
+
+### Process
+
+Since we use `@providesModule`, we need to rewrite requires to be relative. Thanks to `@providesModule` requiring global uniqueness, we can do this easily. Eventually we'll try to make this part of the process go away by making more projects use CommonJS.
+
+
+## TODO
+
+- Flow: Ideally we'd ship our original files with type annotations, however that's not doable right now. We have a couple options:
+ - Make sure our transpilation step converts inline type annotations to the comment format.
+ - Make our build process also build Flow interface files which we can ship to npm.
+- Split into multiple packages. This will be better for more concise versioning, otherwise we'll likely just be shipping lots of major versions.
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/flow/lib/dev.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/flow/lib/dev.js
new file mode 100644
index 00000000..01c75f73
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/flow/lib/dev.js
@@ -0,0 +1,8 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+declare var __DEV__: boolean;
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/index.js
new file mode 100644
index 00000000..80626fa6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/index.js
@@ -0,0 +1,10 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+'use strict';
+
+throw new Error('The fbjs package should not be required without a full path.');
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/CSSCore.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/CSSCore.js
new file mode 100644
index 00000000..75d10bd2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/CSSCore.js
@@ -0,0 +1,119 @@
+'use strict';
+
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @typechecks
+ */
+
+var invariant = require('./invariant');
+
+/**
+ * The CSSCore module specifies the API (and implements most of the methods)
+ * that should be used when dealing with the display of elements (via their
+ * CSS classes and visibility on screen. It is an API focused on mutating the
+ * display and not reading it as no logical state should be encoded in the
+ * display of elements.
+ */
+
+/* Slow implementation for browsers that don't natively support .matches() */
+function matchesSelector_SLOW(element, selector) {
+ var root = element;
+ while (root.parentNode) {
+ root = root.parentNode;
+ }
+
+ var all = root.querySelectorAll(selector);
+ return Array.prototype.indexOf.call(all, element) !== -1;
+}
+
+var CSSCore = {
+
+ /**
+ * Adds the class passed in to the element if it doesn't already have it.
+ *
+ * @param {DOMElement} element the element to set the class on
+ * @param {string} className the CSS className
+ * @return {DOMElement} the element passed in
+ */
+ addClass: function addClass(element, className) {
+ !!/\s/.test(className) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'CSSCore.addClass takes only a single class name. "%s" contains ' + 'multiple classes.', className) : invariant(false) : void 0;
+
+ if (className) {
+ if (element.classList) {
+ element.classList.add(className);
+ } else if (!CSSCore.hasClass(element, className)) {
+ element.className = element.className + ' ' + className;
+ }
+ }
+ return element;
+ },
+
+ /**
+ * Removes the class passed in from the element
+ *
+ * @param {DOMElement} element the element to set the class on
+ * @param {string} className the CSS className
+ * @return {DOMElement} the element passed in
+ */
+ removeClass: function removeClass(element, className) {
+ !!/\s/.test(className) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'CSSCore.removeClass takes only a single class name. "%s" contains ' + 'multiple classes.', className) : invariant(false) : void 0;
+
+ if (className) {
+ if (element.classList) {
+ element.classList.remove(className);
+ } else if (CSSCore.hasClass(element, className)) {
+ element.className = element.className.replace(new RegExp('(^|\\s)' + className + '(?:\\s|$)', 'g'), '$1').replace(/\s+/g, ' ') // multiple spaces to one
+ .replace(/^\s*|\s*$/g, ''); // trim the ends
+ }
+ }
+ return element;
+ },
+
+ /**
+ * Helper to add or remove a class from an element based on a condition.
+ *
+ * @param {DOMElement} element the element to set the class on
+ * @param {string} className the CSS className
+ * @param {*} bool condition to whether to add or remove the class
+ * @return {DOMElement} the element passed in
+ */
+ conditionClass: function conditionClass(element, className, bool) {
+ return (bool ? CSSCore.addClass : CSSCore.removeClass)(element, className);
+ },
+
+ /**
+ * Tests whether the element has the class specified.
+ *
+ * @param {DOMNode|DOMWindow} element the element to check the class on
+ * @param {string} className the CSS className
+ * @return {boolean} true if the element has the class, false if not
+ */
+ hasClass: function hasClass(element, className) {
+ !!/\s/.test(className) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'CSS.hasClass takes only a single class name.') : invariant(false) : void 0;
+ if (element.classList) {
+ return !!className && element.classList.contains(className);
+ }
+ return (' ' + element.className + ' ').indexOf(' ' + className + ' ') > -1;
+ },
+
+ /**
+ * Tests whether the element matches the selector specified
+ *
+ * @param {DOMNode|DOMWindow} element the element that we are querying
+ * @param {string} selector the CSS selector
+ * @return {boolean} true if the element matches the selector, false if not
+ */
+ matchesSelector: function matchesSelector(element, selector) {
+ var matchesImpl = element.matches || element.webkitMatchesSelector || element.mozMatchesSelector || element.msMatchesSelector || function (s) {
+ return matchesSelector_SLOW(element, s);
+ };
+ return matchesImpl.call(element, selector);
+ }
+
+};
+
+module.exports = CSSCore;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/CSSCore.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/CSSCore.js.flow
new file mode 100644
index 00000000..967aa189
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/CSSCore.js.flow
@@ -0,0 +1,116 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule CSSCore
+ * @typechecks
+ */
+
+const invariant = require('./invariant');
+
+/**
+ * The CSSCore module specifies the API (and implements most of the methods)
+ * that should be used when dealing with the display of elements (via their
+ * CSS classes and visibility on screen. It is an API focused on mutating the
+ * display and not reading it as no logical state should be encoded in the
+ * display of elements.
+ */
+
+/* Slow implementation for browsers that don't natively support .matches() */
+function matchesSelector_SLOW(element, selector) {
+ let root = element;
+ while (root.parentNode) {
+ root = root.parentNode;
+ }
+
+ const all = root.querySelectorAll(selector);
+ return Array.prototype.indexOf.call(all, element) !== -1;
+}
+
+const CSSCore = {
+
+ /**
+ * Adds the class passed in to the element if it doesn't already have it.
+ *
+ * @param {DOMElement} element the element to set the class on
+ * @param {string} className the CSS className
+ * @return {DOMElement} the element passed in
+ */
+ addClass: function (element, className) {
+ invariant(!/\s/.test(className), 'CSSCore.addClass takes only a single class name. "%s" contains ' + 'multiple classes.', className);
+
+ if (className) {
+ if (element.classList) {
+ element.classList.add(className);
+ } else if (!CSSCore.hasClass(element, className)) {
+ element.className = element.className + ' ' + className;
+ }
+ }
+ return element;
+ },
+
+ /**
+ * Removes the class passed in from the element
+ *
+ * @param {DOMElement} element the element to set the class on
+ * @param {string} className the CSS className
+ * @return {DOMElement} the element passed in
+ */
+ removeClass: function (element, className) {
+ invariant(!/\s/.test(className), 'CSSCore.removeClass takes only a single class name. "%s" contains ' + 'multiple classes.', className);
+
+ if (className) {
+ if (element.classList) {
+ element.classList.remove(className);
+ } else if (CSSCore.hasClass(element, className)) {
+ element.className = element.className.replace(new RegExp('(^|\\s)' + className + '(?:\\s|$)', 'g'), '$1').replace(/\s+/g, ' ') // multiple spaces to one
+ .replace(/^\s*|\s*$/g, ''); // trim the ends
+ }
+ }
+ return element;
+ },
+
+ /**
+ * Helper to add or remove a class from an element based on a condition.
+ *
+ * @param {DOMElement} element the element to set the class on
+ * @param {string} className the CSS className
+ * @param {*} bool condition to whether to add or remove the class
+ * @return {DOMElement} the element passed in
+ */
+ conditionClass: function (element, className, bool) {
+ return (bool ? CSSCore.addClass : CSSCore.removeClass)(element, className);
+ },
+
+ /**
+ * Tests whether the element has the class specified.
+ *
+ * @param {DOMNode|DOMWindow} element the element to check the class on
+ * @param {string} className the CSS className
+ * @return {boolean} true if the element has the class, false if not
+ */
+ hasClass: function (element, className) {
+ invariant(!/\s/.test(className), 'CSS.hasClass takes only a single class name.');
+ if (element.classList) {
+ return !!className && element.classList.contains(className);
+ }
+ return (' ' + element.className + ' ').indexOf(' ' + className + ' ') > -1;
+ },
+
+ /**
+ * Tests whether the element matches the selector specified
+ *
+ * @param {DOMNode|DOMWindow} element the element that we are querying
+ * @param {string} selector the CSS selector
+ * @return {boolean} true if the element matches the selector, false if not
+ */
+ matchesSelector: function (element, selector) {
+ const matchesImpl = element.matches || element.webkitMatchesSelector || element.mozMatchesSelector || element.msMatchesSelector || (s => matchesSelector_SLOW(element, s));
+ return matchesImpl.call(element, selector);
+ }
+
+};
+
+module.exports = CSSCore;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/DataTransfer.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/DataTransfer.js
new file mode 100644
index 00000000..6875d9a0
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/DataTransfer.js
@@ -0,0 +1,219 @@
+'use strict';
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @typechecks
+ */
+
+var PhotosMimeType = require('./PhotosMimeType');
+
+var createArrayFromMixed = require('./createArrayFromMixed');
+var emptyFunction = require('./emptyFunction');
+
+var CR_LF_REGEX = new RegExp('\r\n', 'g');
+var LF_ONLY = '\n';
+
+var RICH_TEXT_TYPES = {
+ 'text/rtf': 1,
+ 'text/html': 1
+};
+
+/**
+ * If DataTransferItem is a file then return the Blob of data.
+ *
+ * @param {object} item
+ * @return {?blob}
+ */
+function getFileFromDataTransfer(item) {
+ if (item.kind == 'file') {
+ return item.getAsFile();
+ }
+}
+
+var DataTransfer = function () {
+ /**
+ * @param {object} data
+ */
+ function DataTransfer(data) {
+ _classCallCheck(this, DataTransfer);
+
+ this.data = data;
+
+ // Types could be DOMStringList or array
+ this.types = data.types ? createArrayFromMixed(data.types) : [];
+ }
+
+ /**
+ * Is this likely to be a rich text data transfer?
+ *
+ * @return {boolean}
+ */
+
+
+ DataTransfer.prototype.isRichText = function isRichText() {
+ // If HTML is available, treat this data as rich text. This way, we avoid
+ // using a pasted image if it is packaged with HTML -- this may occur with
+ // pastes from MS Word, for example. However this is only rich text if
+ // there's accompanying text.
+ if (this.getHTML() && this.getText()) {
+ return true;
+ }
+
+ // When an image is copied from a preview window, you end up with two
+ // DataTransferItems one of which is a file's metadata as text. Skip those.
+ if (this.isImage()) {
+ return false;
+ }
+
+ return this.types.some(function (type) {
+ return RICH_TEXT_TYPES[type];
+ });
+ };
+
+ /**
+ * Get raw text.
+ *
+ * @return {?string}
+ */
+
+
+ DataTransfer.prototype.getText = function getText() {
+ var text;
+ if (this.data.getData) {
+ if (!this.types.length) {
+ text = this.data.getData('Text');
+ } else if (this.types.indexOf('text/plain') != -1) {
+ text = this.data.getData('text/plain');
+ }
+ }
+ return text ? text.replace(CR_LF_REGEX, LF_ONLY) : null;
+ };
+
+ /**
+ * Get HTML paste data
+ *
+ * @return {?string}
+ */
+
+
+ DataTransfer.prototype.getHTML = function getHTML() {
+ if (this.data.getData) {
+ if (!this.types.length) {
+ return this.data.getData('Text');
+ } else if (this.types.indexOf('text/html') != -1) {
+ return this.data.getData('text/html');
+ }
+ }
+ };
+
+ /**
+ * Is this a link data transfer?
+ *
+ * @return {boolean}
+ */
+
+
+ DataTransfer.prototype.isLink = function isLink() {
+ return this.types.some(function (type) {
+ return type.indexOf('Url') != -1 || type.indexOf('text/uri-list') != -1 || type.indexOf('text/x-moz-url');
+ });
+ };
+
+ /**
+ * Get a link url.
+ *
+ * @return {?string}
+ */
+
+
+ DataTransfer.prototype.getLink = function getLink() {
+ if (this.data.getData) {
+ if (this.types.indexOf('text/x-moz-url') != -1) {
+ var url = this.data.getData('text/x-moz-url').split('\n');
+ return url[0];
+ }
+ return this.types.indexOf('text/uri-list') != -1 ? this.data.getData('text/uri-list') : this.data.getData('url');
+ }
+
+ return null;
+ };
+
+ /**
+ * Is this an image data transfer?
+ *
+ * @return {boolean}
+ */
+
+
+ DataTransfer.prototype.isImage = function isImage() {
+ var isImage = this.types.some(function (type) {
+ // Firefox will have a type of application/x-moz-file for images during
+ // dragging
+ return type.indexOf('application/x-moz-file') != -1;
+ });
+
+ if (isImage) {
+ return true;
+ }
+
+ var items = this.getFiles();
+ for (var i = 0; i < items.length; i++) {
+ var type = items[i].type;
+ if (!PhotosMimeType.isImage(type)) {
+ return false;
+ }
+ }
+
+ return true;
+ };
+
+ DataTransfer.prototype.getCount = function getCount() {
+ if (this.data.hasOwnProperty('items')) {
+ return this.data.items.length;
+ } else if (this.data.hasOwnProperty('mozItemCount')) {
+ return this.data.mozItemCount;
+ } else if (this.data.files) {
+ return this.data.files.length;
+ }
+ return null;
+ };
+
+ /**
+ * Get files.
+ *
+ * @return {array}
+ */
+
+
+ DataTransfer.prototype.getFiles = function getFiles() {
+ if (this.data.items) {
+ // createArrayFromMixed doesn't properly handle DataTransferItemLists.
+ return Array.prototype.slice.call(this.data.items).map(getFileFromDataTransfer).filter(emptyFunction.thatReturnsArgument);
+ } else if (this.data.files) {
+ return Array.prototype.slice.call(this.data.files);
+ } else {
+ return [];
+ }
+ };
+
+ /**
+ * Are there any files to fetch?
+ *
+ * @return {boolean}
+ */
+
+
+ DataTransfer.prototype.hasFiles = function hasFiles() {
+ return this.getFiles().length > 0;
+ };
+
+ return DataTransfer;
+}();
+
+module.exports = DataTransfer;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/DataTransfer.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/DataTransfer.js.flow
new file mode 100644
index 00000000..3588a193
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/DataTransfer.js.flow
@@ -0,0 +1,194 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule DataTransfer
+ * @typechecks
+ */
+
+var PhotosMimeType = require('./PhotosMimeType');
+
+var createArrayFromMixed = require('./createArrayFromMixed');
+var emptyFunction = require('./emptyFunction');
+
+var CR_LF_REGEX = new RegExp('\u000D\u000A', 'g');
+var LF_ONLY = '\u000A';
+
+var RICH_TEXT_TYPES = {
+ 'text/rtf': 1,
+ 'text/html': 1
+};
+
+/**
+ * If DataTransferItem is a file then return the Blob of data.
+ *
+ * @param {object} item
+ * @return {?blob}
+ */
+function getFileFromDataTransfer(item) {
+ if (item.kind == 'file') {
+ return item.getAsFile();
+ }
+}
+
+class DataTransfer {
+ /**
+ * @param {object} data
+ */
+ constructor(data) {
+ this.data = data;
+
+ // Types could be DOMStringList or array
+ this.types = data.types ? createArrayFromMixed(data.types) : [];
+ }
+
+ /**
+ * Is this likely to be a rich text data transfer?
+ *
+ * @return {boolean}
+ */
+ isRichText() {
+ // If HTML is available, treat this data as rich text. This way, we avoid
+ // using a pasted image if it is packaged with HTML -- this may occur with
+ // pastes from MS Word, for example. However this is only rich text if
+ // there's accompanying text.
+ if (this.getHTML() && this.getText()) {
+ return true;
+ }
+
+ // When an image is copied from a preview window, you end up with two
+ // DataTransferItems one of which is a file's metadata as text. Skip those.
+ if (this.isImage()) {
+ return false;
+ }
+
+ return this.types.some(type => RICH_TEXT_TYPES[type]);
+ }
+
+ /**
+ * Get raw text.
+ *
+ * @return {?string}
+ */
+ getText() {
+ var text;
+ if (this.data.getData) {
+ if (!this.types.length) {
+ text = this.data.getData('Text');
+ } else if (this.types.indexOf('text/plain') != -1) {
+ text = this.data.getData('text/plain');
+ }
+ }
+ return text ? text.replace(CR_LF_REGEX, LF_ONLY) : null;
+ }
+
+ /**
+ * Get HTML paste data
+ *
+ * @return {?string}
+ */
+ getHTML() {
+ if (this.data.getData) {
+ if (!this.types.length) {
+ return this.data.getData('Text');
+ } else if (this.types.indexOf('text/html') != -1) {
+ return this.data.getData('text/html');
+ }
+ }
+ }
+
+ /**
+ * Is this a link data transfer?
+ *
+ * @return {boolean}
+ */
+ isLink() {
+ return this.types.some(type => {
+ return type.indexOf('Url') != -1 || type.indexOf('text/uri-list') != -1 || type.indexOf('text/x-moz-url');
+ });
+ }
+
+ /**
+ * Get a link url.
+ *
+ * @return {?string}
+ */
+ getLink() {
+ if (this.data.getData) {
+ if (this.types.indexOf('text/x-moz-url') != -1) {
+ let url = this.data.getData('text/x-moz-url').split('\n');
+ return url[0];
+ }
+ return this.types.indexOf('text/uri-list') != -1 ? this.data.getData('text/uri-list') : this.data.getData('url');
+ }
+
+ return null;
+ }
+
+ /**
+ * Is this an image data transfer?
+ *
+ * @return {boolean}
+ */
+ isImage() {
+ var isImage = this.types.some(type => {
+ // Firefox will have a type of application/x-moz-file for images during
+ // dragging
+ return type.indexOf('application/x-moz-file') != -1;
+ });
+
+ if (isImage) {
+ return true;
+ }
+
+ var items = this.getFiles();
+ for (var i = 0; i < items.length; i++) {
+ var type = items[i].type;
+ if (!PhotosMimeType.isImage(type)) {
+ return false;
+ }
+ }
+
+ return true;
+ }
+
+ getCount() {
+ if (this.data.hasOwnProperty('items')) {
+ return this.data.items.length;
+ } else if (this.data.hasOwnProperty('mozItemCount')) {
+ return this.data.mozItemCount;
+ } else if (this.data.files) {
+ return this.data.files.length;
+ }
+ return null;
+ }
+
+ /**
+ * Get files.
+ *
+ * @return {array}
+ */
+ getFiles() {
+ if (this.data.items) {
+ // createArrayFromMixed doesn't properly handle DataTransferItemLists.
+ return Array.prototype.slice.call(this.data.items).map(getFileFromDataTransfer).filter(emptyFunction.thatReturnsArgument);
+ } else if (this.data.files) {
+ return Array.prototype.slice.call(this.data.files);
+ } else {
+ return [];
+ }
+ }
+
+ /**
+ * Are there any files to fetch?
+ *
+ * @return {boolean}
+ */
+ hasFiles() {
+ return this.getFiles().length > 0;
+ }
+}
+
+module.exports = DataTransfer;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Deferred.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Deferred.js
new file mode 100644
index 00000000..8ec65ccf
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Deferred.js
@@ -0,0 +1,79 @@
+"use strict";
+
+var Promise = require("./Promise");
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @typechecks
+ *
+ */
+
+/**
+ * Deferred provides a Promise-like API that exposes methods to resolve and
+ * reject the Promise. It is most useful when converting non-Promise code to use
+ * Promises.
+ *
+ * If you want to export the Promise without exposing access to the resolve and
+ * reject methods, you should export `getPromise` which returns a Promise with
+ * the same semantics excluding those methods.
+ */
+var Deferred = function () {
+ function Deferred() {
+ var _this = this;
+
+ _classCallCheck(this, Deferred);
+
+ this._settled = false;
+ this._promise = new Promise(function (resolve, reject) {
+ _this._resolve = resolve;
+ _this._reject = reject;
+ });
+ }
+
+ Deferred.prototype.getPromise = function getPromise() {
+ return this._promise;
+ };
+
+ Deferred.prototype.resolve = function resolve(value) {
+ this._settled = true;
+ this._resolve(value);
+ };
+
+ Deferred.prototype.reject = function reject(reason) {
+ this._settled = true;
+ this._reject(reason);
+ };
+
+ Deferred.prototype["catch"] = function _catch(onReject) {
+ return Promise.prototype["catch"].apply(this._promise, arguments);
+ };
+
+ Deferred.prototype.then = function then(onFulfill, onReject) {
+ return Promise.prototype.then.apply(this._promise, arguments);
+ };
+
+ Deferred.prototype.done = function done(onFulfill, onReject) {
+ // Embed the polyfill for the non-standard Promise.prototype.done so that
+ // users of the open source fbjs don't need a custom lib for Promise
+ var promise = arguments.length ? this._promise.then.apply(this._promise, arguments) : this._promise;
+ promise.then(undefined, function (err) {
+ setTimeout(function () {
+ throw err;
+ }, 0);
+ });
+ };
+
+ Deferred.prototype.isSettled = function isSettled() {
+ return this._settled;
+ };
+
+ return Deferred;
+}();
+
+module.exports = Deferred;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Deferred.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Deferred.js.flow
new file mode 100644
index 00000000..26bce875
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Deferred.js.flow
@@ -0,0 +1,73 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule Deferred
+ * @typechecks
+ * @flow
+ */
+
+/**
+ * Deferred provides a Promise-like API that exposes methods to resolve and
+ * reject the Promise. It is most useful when converting non-Promise code to use
+ * Promises.
+ *
+ * If you want to export the Promise without exposing access to the resolve and
+ * reject methods, you should export `getPromise` which returns a Promise with
+ * the same semantics excluding those methods.
+ */
+class Deferred {
+ _settled: boolean;
+ _promise: Promise;
+ _resolve: (value: Tvalue) => void;
+ _reject: (reason: Treason) => void;
+
+ constructor() {
+ this._settled = false;
+ this._promise = new Promise((resolve, reject) => {
+ this._resolve = (resolve: any);
+ this._reject = (reject: any);
+ });
+ }
+
+ getPromise(): Promise {
+ return this._promise;
+ }
+
+ resolve(value: Tvalue): void {
+ this._settled = true;
+ this._resolve(value);
+ }
+
+ reject(reason: Treason): void {
+ this._settled = true;
+ this._reject(reason);
+ }
+
+ catch(onReject?: ?(error: any) => mixed): Promise {
+ return Promise.prototype.catch.apply(this._promise, arguments);
+ }
+
+ then(onFulfill?: ?(value: any) => mixed, onReject?: ?(error: any) => mixed): Promise {
+ return Promise.prototype.then.apply(this._promise, arguments);
+ }
+
+ done(onFulfill?: ?(value: any) => mixed, onReject?: ?(error: any) => mixed): void {
+ // Embed the polyfill for the non-standard Promise.prototype.done so that
+ // users of the open source fbjs don't need a custom lib for Promise
+ const promise = arguments.length ? this._promise.then.apply(this._promise, arguments) : this._promise;
+ promise.then(undefined, function (err) {
+ setTimeout(function () {
+ throw err;
+ }, 0);
+ });
+ }
+
+ isSettled(): boolean {
+ return this._settled;
+ }
+}
+
+module.exports = Deferred;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/ErrorUtils.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/ErrorUtils.js
new file mode 100644
index 00000000..0ebdcbc4
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/ErrorUtils.js
@@ -0,0 +1,26 @@
+"use strict";
+
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ */
+
+/* jslint unused:false */
+
+if (global.ErrorUtils) {
+ module.exports = global.ErrorUtils;
+} else {
+ var ErrorUtils = {
+ applyWithGuard: function applyWithGuard(callback, context, args, onError, name) {
+ return callback.apply(context, args);
+ },
+ guard: function guard(callback, name) {
+ return callback;
+ }
+ };
+
+ module.exports = ErrorUtils;
+}
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/ErrorUtils.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/ErrorUtils.js.flow
new file mode 100644
index 00000000..8a8e5cd4
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/ErrorUtils.js.flow
@@ -0,0 +1,25 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule ErrorUtils
+ */
+
+/* jslint unused:false */
+
+if (global.ErrorUtils) {
+ module.exports = global.ErrorUtils;
+} else {
+ var ErrorUtils = {
+ applyWithGuard(callback, context, args, onError, name) {
+ return callback.apply(context, args);
+ },
+ guard(callback, name) {
+ return callback;
+ }
+ };
+
+ module.exports = ErrorUtils;
+}
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/EventListener.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/EventListener.js
new file mode 100644
index 00000000..61c2220c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/EventListener.js
@@ -0,0 +1,74 @@
+'use strict';
+
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @typechecks
+ */
+
+var emptyFunction = require('./emptyFunction');
+
+/**
+ * Upstream version of event listener. Does not take into account specific
+ * nature of platform.
+ */
+var EventListener = {
+ /**
+ * Listen to DOM events during the bubble phase.
+ *
+ * @param {DOMEventTarget} target DOM element to register listener on.
+ * @param {string} eventType Event type, e.g. 'click' or 'mouseover'.
+ * @param {function} callback Callback function.
+ * @return {object} Object with a `remove` method.
+ */
+ listen: function listen(target, eventType, callback) {
+ if (target.addEventListener) {
+ target.addEventListener(eventType, callback, false);
+ return {
+ remove: function remove() {
+ target.removeEventListener(eventType, callback, false);
+ }
+ };
+ } else if (target.attachEvent) {
+ target.attachEvent('on' + eventType, callback);
+ return {
+ remove: function remove() {
+ target.detachEvent('on' + eventType, callback);
+ }
+ };
+ }
+ },
+
+ /**
+ * Listen to DOM events during the capture phase.
+ *
+ * @param {DOMEventTarget} target DOM element to register listener on.
+ * @param {string} eventType Event type, e.g. 'click' or 'mouseover'.
+ * @param {function} callback Callback function.
+ * @return {object} Object with a `remove` method.
+ */
+ capture: function capture(target, eventType, callback) {
+ if (target.addEventListener) {
+ target.addEventListener(eventType, callback, true);
+ return {
+ remove: function remove() {
+ target.removeEventListener(eventType, callback, true);
+ }
+ };
+ } else {
+ if (process.env.NODE_ENV !== 'production') {
+ console.error('Attempted to listen to events during the capture phase on a ' + 'browser that does not support the capture phase. Your application ' + 'will not receive some events.');
+ }
+ return {
+ remove: emptyFunction
+ };
+ }
+ },
+
+ registerDefault: function registerDefault() {}
+};
+
+module.exports = EventListener;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/EventListener.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/EventListener.js.flow
new file mode 100644
index 00000000..283a3fa9
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/EventListener.js.flow
@@ -0,0 +1,73 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule EventListener
+ * @typechecks
+ */
+
+var emptyFunction = require('./emptyFunction');
+
+/**
+ * Upstream version of event listener. Does not take into account specific
+ * nature of platform.
+ */
+var EventListener = {
+ /**
+ * Listen to DOM events during the bubble phase.
+ *
+ * @param {DOMEventTarget} target DOM element to register listener on.
+ * @param {string} eventType Event type, e.g. 'click' or 'mouseover'.
+ * @param {function} callback Callback function.
+ * @return {object} Object with a `remove` method.
+ */
+ listen: function (target, eventType, callback) {
+ if (target.addEventListener) {
+ target.addEventListener(eventType, callback, false);
+ return {
+ remove: function () {
+ target.removeEventListener(eventType, callback, false);
+ }
+ };
+ } else if (target.attachEvent) {
+ target.attachEvent('on' + eventType, callback);
+ return {
+ remove: function () {
+ target.detachEvent('on' + eventType, callback);
+ }
+ };
+ }
+ },
+
+ /**
+ * Listen to DOM events during the capture phase.
+ *
+ * @param {DOMEventTarget} target DOM element to register listener on.
+ * @param {string} eventType Event type, e.g. 'click' or 'mouseover'.
+ * @param {function} callback Callback function.
+ * @return {object} Object with a `remove` method.
+ */
+ capture: function (target, eventType, callback) {
+ if (target.addEventListener) {
+ target.addEventListener(eventType, callback, true);
+ return {
+ remove: function () {
+ target.removeEventListener(eventType, callback, true);
+ }
+ };
+ } else {
+ if (__DEV__) {
+ console.error('Attempted to listen to events during the capture phase on a ' + 'browser that does not support the capture phase. Your application ' + 'will not receive some events.');
+ }
+ return {
+ remove: emptyFunction
+ };
+ }
+ },
+
+ registerDefault: function () {}
+};
+
+module.exports = EventListener;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/ExecutionEnvironment.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/ExecutionEnvironment.js
new file mode 100644
index 00000000..32936fdc
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/ExecutionEnvironment.js
@@ -0,0 +1,33 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ */
+
+'use strict';
+
+var canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);
+
+/**
+ * Simple, lightweight module assisting with the detection and context of
+ * Worker. Helps avoid circular dependencies and allows code to reason about
+ * whether or not they are in a Worker, even if they never include the main
+ * `ReactWorker` dependency.
+ */
+var ExecutionEnvironment = {
+
+ canUseDOM: canUseDOM,
+
+ canUseWorkers: typeof Worker !== 'undefined',
+
+ canUseEventListeners: canUseDOM && !!(window.addEventListener || window.attachEvent),
+
+ canUseViewport: canUseDOM && !!window.screen,
+
+ isInWorker: !canUseDOM // For now, this is true - might change in the future.
+
+};
+
+module.exports = ExecutionEnvironment;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/ExecutionEnvironment.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/ExecutionEnvironment.js.flow
new file mode 100644
index 00000000..fbea7e1b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/ExecutionEnvironment.js.flow
@@ -0,0 +1,34 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule ExecutionEnvironment
+ */
+
+'use strict';
+
+const canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);
+
+/**
+ * Simple, lightweight module assisting with the detection and context of
+ * Worker. Helps avoid circular dependencies and allows code to reason about
+ * whether or not they are in a Worker, even if they never include the main
+ * `ReactWorker` dependency.
+ */
+const ExecutionEnvironment = {
+
+ canUseDOM: canUseDOM,
+
+ canUseWorkers: typeof Worker !== 'undefined',
+
+ canUseEventListeners: canUseDOM && !!(window.addEventListener || window.attachEvent),
+
+ canUseViewport: canUseDOM && !!window.screen,
+
+ isInWorker: !canUseDOM // For now, this is true - might change in the future.
+
+};
+
+module.exports = ExecutionEnvironment;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Keys.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Keys.js
new file mode 100644
index 00000000..f2f0d9ca
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Keys.js
@@ -0,0 +1,34 @@
+"use strict";
+
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ */
+
+module.exports = {
+ BACKSPACE: 8,
+ TAB: 9,
+ RETURN: 13,
+ ALT: 18,
+ ESC: 27,
+ SPACE: 32,
+ PAGE_UP: 33,
+ PAGE_DOWN: 34,
+ END: 35,
+ HOME: 36,
+ LEFT: 37,
+ UP: 38,
+ RIGHT: 39,
+ DOWN: 40,
+ DELETE: 46,
+ COMMA: 188,
+ PERIOD: 190,
+ A: 65,
+ Z: 90,
+ ZERO: 48,
+ NUMPAD_0: 96,
+ NUMPAD_9: 105
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Keys.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Keys.js.flow
new file mode 100644
index 00000000..22f57f38
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Keys.js.flow
@@ -0,0 +1,33 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule Keys
+ */
+
+module.exports = {
+ BACKSPACE: 8,
+ TAB: 9,
+ RETURN: 13,
+ ALT: 18,
+ ESC: 27,
+ SPACE: 32,
+ PAGE_UP: 33,
+ PAGE_DOWN: 34,
+ END: 35,
+ HOME: 36,
+ LEFT: 37,
+ UP: 38,
+ RIGHT: 39,
+ DOWN: 40,
+ DELETE: 46,
+ COMMA: 188,
+ PERIOD: 190,
+ A: 65,
+ Z: 90,
+ ZERO: 48,
+ NUMPAD_0: 96,
+ NUMPAD_9: 105
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Map.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Map.js
new file mode 100644
index 00000000..c224b891
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Map.js
@@ -0,0 +1,11 @@
+'use strict';
+
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ */
+
+module.exports = require('core-js/library/es6/map');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Map.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Map.js.flow
new file mode 100644
index 00000000..f0a6e2c1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Map.js.flow
@@ -0,0 +1,10 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule Map
+ */
+
+module.exports = require('core-js/library/es6/map');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/PhotosMimeType.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/PhotosMimeType.js
new file mode 100644
index 00000000..467892a7
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/PhotosMimeType.js
@@ -0,0 +1,26 @@
+'use strict';
+
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ */
+var PhotosMimeType = {
+ isImage: function isImage(mimeString) {
+ return getParts(mimeString)[0] === 'image';
+ },
+ isJpeg: function isJpeg(mimeString) {
+ var parts = getParts(mimeString);
+ return PhotosMimeType.isImage(mimeString) && (
+ // see http://fburl.com/10972194
+ parts[1] === 'jpeg' || parts[1] === 'pjpeg');
+ }
+};
+
+function getParts(mimeString) {
+ return mimeString.split('/');
+}
+
+module.exports = PhotosMimeType;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/PhotosMimeType.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/PhotosMimeType.js.flow
new file mode 100644
index 00000000..a6c3ae13
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/PhotosMimeType.js.flow
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule PhotosMimeType
+ */
+const PhotosMimeType = {
+ isImage(mimeString) {
+ return getParts(mimeString)[0] === 'image';
+ },
+
+ isJpeg(mimeString) {
+ const parts = getParts(mimeString);
+ return PhotosMimeType.isImage(mimeString) && (
+ // see http://fburl.com/10972194
+ parts[1] === 'jpeg' || parts[1] === 'pjpeg');
+ }
+};
+
+function getParts(mimeString) {
+ return mimeString.split('/');
+}
+
+module.exports = PhotosMimeType;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Promise.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Promise.js
new file mode 100644
index 00000000..3ce10a0e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Promise.js
@@ -0,0 +1,11 @@
+'use strict';
+
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ */
+
+module.exports = require('promise');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Promise.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Promise.js.flow
new file mode 100644
index 00000000..1b421ef6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Promise.js.flow
@@ -0,0 +1,10 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule Promise
+ */
+
+module.exports = require('promise');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Promise.native.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Promise.native.js
new file mode 100644
index 00000000..27aa673f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Promise.native.js
@@ -0,0 +1,25 @@
+/**
+ *
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * This module wraps and augments the minimally ES6-compliant Promise
+ * implementation provided by the promise npm package.
+ *
+ */
+
+'use strict';
+
+var Promise = require('promise/setimmediate/es6-extensions');
+require('promise/setimmediate/done');
+
+/**
+ * Handle either fulfillment or rejection with the same callback.
+ */
+Promise.prototype['finally'] = function (onSettled) {
+ return this.then(onSettled, onSettled);
+};
+
+module.exports = Promise;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Promise.native.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Promise.native.js.flow
new file mode 100644
index 00000000..a988e5b3
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Promise.native.js.flow
@@ -0,0 +1,25 @@
+/**
+ *
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * This module wraps and augments the minimally ES6-compliant Promise
+ * implementation provided by the promise npm package.
+ *
+ */
+
+'use strict';
+
+var Promise = require('promise/setimmediate/es6-extensions');
+require('promise/setimmediate/done');
+
+/**
+ * Handle either fulfillment or rejection with the same callback.
+ */
+Promise.prototype.finally = function (onSettled) {
+ return this.then(onSettled, onSettled);
+};
+
+module.exports = Promise;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/PromiseMap.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/PromiseMap.js
new file mode 100644
index 00000000..467060a8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/PromiseMap.js
@@ -0,0 +1,57 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ *
+ */
+
+'use strict';
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+var Deferred = require('./Deferred');
+
+var invariant = require('./invariant');
+
+/**
+ * A map of asynchronous values that can be get or set in any order. Unlike a
+ * normal map, setting the value for a particular key more than once throws.
+ * Also unlike a normal map, a key can either be resolved or rejected.
+ */
+
+var PromiseMap = function () {
+ function PromiseMap() {
+ _classCallCheck(this, PromiseMap);
+
+ this._deferred = {};
+ }
+
+ PromiseMap.prototype.get = function get(key) {
+ return getDeferred(this._deferred, key).getPromise();
+ };
+
+ PromiseMap.prototype.resolveKey = function resolveKey(key, value) {
+ var entry = getDeferred(this._deferred, key);
+ !!entry.isSettled() ? process.env.NODE_ENV !== 'production' ? invariant(false, 'PromiseMap: Already settled `%s`.', key) : invariant(false) : void 0;
+ entry.resolve(value);
+ };
+
+ PromiseMap.prototype.rejectKey = function rejectKey(key, reason) {
+ var entry = getDeferred(this._deferred, key);
+ !!entry.isSettled() ? process.env.NODE_ENV !== 'production' ? invariant(false, 'PromiseMap: Already settled `%s`.', key) : invariant(false) : void 0;
+ entry.reject(reason);
+ };
+
+ return PromiseMap;
+}();
+
+function getDeferred(entries, key) {
+ if (!entries.hasOwnProperty(key)) {
+ entries[key] = new Deferred();
+ }
+ return entries[key];
+}
+
+module.exports = PromiseMap;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/PromiseMap.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/PromiseMap.js.flow
new file mode 100644
index 00000000..5ae135a4
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/PromiseMap.js.flow
@@ -0,0 +1,53 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule PromiseMap
+ * @flow
+ */
+
+'use strict';
+
+const Deferred = require('./Deferred');
+
+const invariant = require('./invariant');
+
+/**
+ * A map of asynchronous values that can be get or set in any order. Unlike a
+ * normal map, setting the value for a particular key more than once throws.
+ * Also unlike a normal map, a key can either be resolved or rejected.
+ */
+class PromiseMap {
+ _deferred: { [key: string]: Deferred };
+
+ constructor() {
+ this._deferred = {};
+ }
+
+ get(key: string): Promise {
+ return getDeferred(this._deferred, key).getPromise();
+ }
+
+ resolveKey(key: string, value: Tvalue): void {
+ const entry = getDeferred(this._deferred, key);
+ invariant(!entry.isSettled(), 'PromiseMap: Already settled `%s`.', key);
+ entry.resolve(value);
+ }
+
+ rejectKey(key: string, reason: Treason): void {
+ const entry = getDeferred(this._deferred, key);
+ invariant(!entry.isSettled(), 'PromiseMap: Already settled `%s`.', key);
+ entry.reject(reason);
+ }
+}
+
+function getDeferred(entries: { [key: string]: Deferred }, key: string): Deferred {
+ if (!entries.hasOwnProperty(key)) {
+ entries[key] = new Deferred();
+ }
+ return entries[key];
+}
+
+module.exports = PromiseMap;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Scroll.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Scroll.js
new file mode 100644
index 00000000..85dd4fd2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Scroll.js
@@ -0,0 +1,83 @@
+"use strict";
+
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ */
+
+/**
+ * @param {DOMElement} element
+ * @param {DOMDocument} doc
+ * @return {boolean}
+ */
+function _isViewportScrollElement(element, doc) {
+ return !!doc && (element === doc.documentElement || element === doc.body);
+}
+
+/**
+ * Scroll Module. This class contains 4 simple static functions
+ * to be used to access Element.scrollTop/scrollLeft properties.
+ * To solve the inconsistencies between browsers when either
+ * document.body or document.documentElement is supplied,
+ * below logic will be used to alleviate the issue:
+ *
+ * 1. If 'element' is either 'document.body' or 'document.documentElement,
+ * get whichever element's 'scroll{Top,Left}' is larger.
+ * 2. If 'element' is either 'document.body' or 'document.documentElement',
+ * set the 'scroll{Top,Left}' on both elements.
+ */
+
+var Scroll = {
+ /**
+ * @param {DOMElement} element
+ * @return {number}
+ */
+ getTop: function getTop(element) {
+ var doc = element.ownerDocument;
+ return _isViewportScrollElement(element, doc) ?
+ // In practice, they will either both have the same value,
+ // or one will be zero and the other will be the scroll position
+ // of the viewport. So we can use `X || Y` instead of `Math.max(X, Y)`
+ doc.body.scrollTop || doc.documentElement.scrollTop : element.scrollTop;
+ },
+
+ /**
+ * @param {DOMElement} element
+ * @param {number} newTop
+ */
+ setTop: function setTop(element, newTop) {
+ var doc = element.ownerDocument;
+ if (_isViewportScrollElement(element, doc)) {
+ doc.body.scrollTop = doc.documentElement.scrollTop = newTop;
+ } else {
+ element.scrollTop = newTop;
+ }
+ },
+
+ /**
+ * @param {DOMElement} element
+ * @return {number}
+ */
+ getLeft: function getLeft(element) {
+ var doc = element.ownerDocument;
+ return _isViewportScrollElement(element, doc) ? doc.body.scrollLeft || doc.documentElement.scrollLeft : element.scrollLeft;
+ },
+
+ /**
+ * @param {DOMElement} element
+ * @param {number} newLeft
+ */
+ setLeft: function setLeft(element, newLeft) {
+ var doc = element.ownerDocument;
+ if (_isViewportScrollElement(element, doc)) {
+ doc.body.scrollLeft = doc.documentElement.scrollLeft = newLeft;
+ } else {
+ element.scrollLeft = newLeft;
+ }
+ }
+};
+
+module.exports = Scroll;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Scroll.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Scroll.js.flow
new file mode 100644
index 00000000..1d65bcbd
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Scroll.js.flow
@@ -0,0 +1,82 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule Scroll
+ */
+
+/**
+ * @param {DOMElement} element
+ * @param {DOMDocument} doc
+ * @return {boolean}
+ */
+function _isViewportScrollElement(element, doc) {
+ return !!doc && (element === doc.documentElement || element === doc.body);
+}
+
+/**
+ * Scroll Module. This class contains 4 simple static functions
+ * to be used to access Element.scrollTop/scrollLeft properties.
+ * To solve the inconsistencies between browsers when either
+ * document.body or document.documentElement is supplied,
+ * below logic will be used to alleviate the issue:
+ *
+ * 1. If 'element' is either 'document.body' or 'document.documentElement,
+ * get whichever element's 'scroll{Top,Left}' is larger.
+ * 2. If 'element' is either 'document.body' or 'document.documentElement',
+ * set the 'scroll{Top,Left}' on both elements.
+ */
+
+const Scroll = {
+ /**
+ * @param {DOMElement} element
+ * @return {number}
+ */
+ getTop: function (element) {
+ const doc = element.ownerDocument;
+ return _isViewportScrollElement(element, doc) ?
+ // In practice, they will either both have the same value,
+ // or one will be zero and the other will be the scroll position
+ // of the viewport. So we can use `X || Y` instead of `Math.max(X, Y)`
+ doc.body.scrollTop || doc.documentElement.scrollTop : element.scrollTop;
+ },
+
+ /**
+ * @param {DOMElement} element
+ * @param {number} newTop
+ */
+ setTop: function (element, newTop) {
+ const doc = element.ownerDocument;
+ if (_isViewportScrollElement(element, doc)) {
+ doc.body.scrollTop = doc.documentElement.scrollTop = newTop;
+ } else {
+ element.scrollTop = newTop;
+ }
+ },
+
+ /**
+ * @param {DOMElement} element
+ * @return {number}
+ */
+ getLeft: function (element) {
+ const doc = element.ownerDocument;
+ return _isViewportScrollElement(element, doc) ? doc.body.scrollLeft || doc.documentElement.scrollLeft : element.scrollLeft;
+ },
+
+ /**
+ * @param {DOMElement} element
+ * @param {number} newLeft
+ */
+ setLeft: function (element, newLeft) {
+ const doc = element.ownerDocument;
+ if (_isViewportScrollElement(element, doc)) {
+ doc.body.scrollLeft = doc.documentElement.scrollLeft = newLeft;
+ } else {
+ element.scrollLeft = newLeft;
+ }
+ }
+};
+
+module.exports = Scroll;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Set.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Set.js
new file mode 100644
index 00000000..43470f1e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Set.js
@@ -0,0 +1,11 @@
+'use strict';
+
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ */
+
+module.exports = require('core-js/library/es6/set');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Set.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Set.js.flow
new file mode 100644
index 00000000..d1a48d90
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Set.js.flow
@@ -0,0 +1,10 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule Set
+ */
+
+module.exports = require('core-js/library/es6/set');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Style.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Style.js
new file mode 100644
index 00000000..28071b91
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Style.js
@@ -0,0 +1,62 @@
+'use strict';
+
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @typechecks
+ */
+
+var getStyleProperty = require('./getStyleProperty');
+
+/**
+ * @param {DOMNode} element [description]
+ * @param {string} name Overflow style property name.
+ * @return {boolean} True if the supplied ndoe is scrollable.
+ */
+function _isNodeScrollable(element, name) {
+ var overflow = Style.get(element, name);
+ return overflow === 'auto' || overflow === 'scroll';
+}
+
+/**
+ * Utilities for querying and mutating style properties.
+ */
+var Style = {
+ /**
+ * Gets the style property for the supplied node. This will return either the
+ * computed style, if available, or the declared style.
+ *
+ * @param {DOMNode} node
+ * @param {string} name Style property name.
+ * @return {?string} Style property value.
+ */
+ get: getStyleProperty,
+
+ /**
+ * Determines the nearest ancestor of a node that is scrollable.
+ *
+ * NOTE: This can be expensive if used repeatedly or on a node nested deeply.
+ *
+ * @param {?DOMNode} node Node from which to start searching.
+ * @return {?DOMWindow|DOMElement} Scroll parent of the supplied node.
+ */
+ getScrollParent: function getScrollParent(node) {
+ if (!node) {
+ return null;
+ }
+ var ownerDocument = node.ownerDocument;
+ while (node && node !== ownerDocument.body) {
+ if (_isNodeScrollable(node, 'overflow') || _isNodeScrollable(node, 'overflowY') || _isNodeScrollable(node, 'overflowX')) {
+ return node;
+ }
+ node = node.parentNode;
+ }
+ return ownerDocument.defaultView || ownerDocument.parentWindow;
+ }
+
+};
+
+module.exports = Style;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Style.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Style.js.flow
new file mode 100644
index 00000000..d90db8c3
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/Style.js.flow
@@ -0,0 +1,61 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule Style
+ * @typechecks
+ */
+
+var getStyleProperty = require('./getStyleProperty');
+
+/**
+ * @param {DOMNode} element [description]
+ * @param {string} name Overflow style property name.
+ * @return {boolean} True if the supplied ndoe is scrollable.
+ */
+function _isNodeScrollable(element, name) {
+ var overflow = Style.get(element, name);
+ return overflow === 'auto' || overflow === 'scroll';
+}
+
+/**
+ * Utilities for querying and mutating style properties.
+ */
+var Style = {
+ /**
+ * Gets the style property for the supplied node. This will return either the
+ * computed style, if available, or the declared style.
+ *
+ * @param {DOMNode} node
+ * @param {string} name Style property name.
+ * @return {?string} Style property value.
+ */
+ get: getStyleProperty,
+
+ /**
+ * Determines the nearest ancestor of a node that is scrollable.
+ *
+ * NOTE: This can be expensive if used repeatedly or on a node nested deeply.
+ *
+ * @param {?DOMNode} node Node from which to start searching.
+ * @return {?DOMWindow|DOMElement} Scroll parent of the supplied node.
+ */
+ getScrollParent: function (node) {
+ if (!node) {
+ return null;
+ }
+ var ownerDocument = node.ownerDocument;
+ while (node && node !== ownerDocument.body) {
+ if (_isNodeScrollable(node, 'overflow') || _isNodeScrollable(node, 'overflowY') || _isNodeScrollable(node, 'overflowX')) {
+ return node;
+ }
+ node = node.parentNode;
+ }
+ return ownerDocument.defaultView || ownerDocument.parentWindow;
+ }
+
+};
+
+module.exports = Style;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/TokenizeUtil.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/TokenizeUtil.js
new file mode 100644
index 00000000..74567c87
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/TokenizeUtil.js
@@ -0,0 +1,35 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @typechecks
+ * @stub
+ *
+ */
+
+'use strict';
+
+// \u00a1-\u00b1\u00b4-\u00b8\u00ba\u00bb\u00bf
+// is latin supplement punctuation except fractions and superscript
+// numbers
+// \u2010-\u2027\u2030-\u205e
+// is punctuation from the general punctuation block:
+// weird quotes, commas, bullets, dashes, etc.
+// \u30fb\u3001\u3002\u3008-\u3011\u3014-\u301f
+// is CJK punctuation
+// \uff1a-\uff1f\uff01-\uff0f\uff3b-\uff40\uff5b-\uff65
+// is some full-width/half-width punctuation
+// \u2E2E\u061f\u066a-\u066c\u061b\u060c\u060d\uFD3e\uFD3F
+// is some Arabic punctuation marks
+// \u1801\u0964\u104a\u104b
+// is misc. other language punctuation marks
+
+var PUNCTUATION = '[.,+*?$|#{}()\'\\^\\-\\[\\]\\\\\\/!@%"~=<>_:;' + '\u30FB\u3001\u3002\u3008-\u3011\u3014-\u301F\uFF1A-\uFF1F\uFF01-\uFF0F' + '\uFF3B-\uFF40\uFF5B-\uFF65\u2E2E\u061F\u066A-\u066C\u061B\u060C\u060D' + '\uFD3E\uFD3F\u1801\u0964\u104A\u104B\u2010-\u2027\u2030-\u205E' + '\xA1-\xB1\xB4-\xB8\xBA\xBB\xBF]';
+
+module.exports = {
+ getPunctuation: function getPunctuation() {
+ return PUNCTUATION;
+ }
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/TokenizeUtil.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/TokenizeUtil.js.flow
new file mode 100644
index 00000000..642590ad
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/TokenizeUtil.js.flow
@@ -0,0 +1,34 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule TokenizeUtil
+ * @typechecks
+ * @stub
+ * @flow
+ */
+
+'use strict';
+
+// \u00a1-\u00b1\u00b4-\u00b8\u00ba\u00bb\u00bf
+// is latin supplement punctuation except fractions and superscript
+// numbers
+// \u2010-\u2027\u2030-\u205e
+// is punctuation from the general punctuation block:
+// weird quotes, commas, bullets, dashes, etc.
+// \u30fb\u3001\u3002\u3008-\u3011\u3014-\u301f
+// is CJK punctuation
+// \uff1a-\uff1f\uff01-\uff0f\uff3b-\uff40\uff5b-\uff65
+// is some full-width/half-width punctuation
+// \u2E2E\u061f\u066a-\u066c\u061b\u060c\u060d\uFD3e\uFD3F
+// is some Arabic punctuation marks
+// \u1801\u0964\u104a\u104b
+// is misc. other language punctuation marks
+
+var PUNCTUATION = '[.,+*?$|#{}()\'\\^\\-\\[\\]\\\\\\/!@%"~=<>_:;' + '\u30fb\u3001\u3002\u3008-\u3011\u3014-\u301f\uff1a-\uff1f\uff01-\uff0f' + '\uff3b-\uff40\uff5b-\uff65\u2E2E\u061f\u066a-\u066c\u061b\u060c\u060d' + '\uFD3e\uFD3F\u1801\u0964\u104a\u104b\u2010-\u2027\u2030-\u205e' + '\u00a1-\u00b1\u00b4-\u00b8\u00ba\u00bb\u00bf]';
+
+module.exports = {
+ getPunctuation: (): string => PUNCTUATION
+};
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/TouchEventUtils.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/TouchEventUtils.js
new file mode 100644
index 00000000..1125d80c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/TouchEventUtils.js
@@ -0,0 +1,32 @@
+"use strict";
+
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ */
+
+var TouchEventUtils = {
+ /**
+ * Utility function for common case of extracting out the primary touch from a
+ * touch event.
+ * - `touchEnd` events usually do not have the `touches` property.
+ * http://stackoverflow.com/questions/3666929/
+ * mobile-sarai-touchend-event-not-firing-when-last-touch-is-removed
+ *
+ * @param {Event} nativeEvent Native event that may or may not be a touch.
+ * @return {TouchesObject?} an object with pageX and pageY or null.
+ */
+ extractSingleTouch: function extractSingleTouch(nativeEvent) {
+ var touches = nativeEvent.touches;
+ var changedTouches = nativeEvent.changedTouches;
+ var hasTouches = touches && touches.length > 0;
+ var hasChangedTouches = changedTouches && changedTouches.length > 0;
+
+ return !hasTouches && hasChangedTouches ? changedTouches[0] : hasTouches ? touches[0] : nativeEvent;
+ }
+};
+
+module.exports = TouchEventUtils;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/TouchEventUtils.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/TouchEventUtils.js.flow
new file mode 100644
index 00000000..cff75f16
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/TouchEventUtils.js.flow
@@ -0,0 +1,31 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule TouchEventUtils
+ */
+
+const TouchEventUtils = {
+ /**
+ * Utility function for common case of extracting out the primary touch from a
+ * touch event.
+ * - `touchEnd` events usually do not have the `touches` property.
+ * http://stackoverflow.com/questions/3666929/
+ * mobile-sarai-touchend-event-not-firing-when-last-touch-is-removed
+ *
+ * @param {Event} nativeEvent Native event that may or may not be a touch.
+ * @return {TouchesObject?} an object with pageX and pageY or null.
+ */
+ extractSingleTouch: function (nativeEvent) {
+ const touches = nativeEvent.touches;
+ const changedTouches = nativeEvent.changedTouches;
+ const hasTouches = touches && touches.length > 0;
+ const hasChangedTouches = changedTouches && changedTouches.length > 0;
+
+ return !hasTouches && hasChangedTouches ? changedTouches[0] : hasTouches ? touches[0] : nativeEvent;
+ }
+};
+
+module.exports = TouchEventUtils;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/URI.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/URI.js
new file mode 100644
index 00000000..fdd0d7ba
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/URI.js
@@ -0,0 +1,28 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ *
+ */
+
+'use strict';
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+var URI = function () {
+ function URI(uri) {
+ _classCallCheck(this, URI);
+
+ this._uri = uri;
+ }
+
+ URI.prototype.toString = function toString() {
+ return this._uri;
+ };
+
+ return URI;
+}();
+
+module.exports = URI;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/URI.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/URI.js.flow
new file mode 100644
index 00000000..e5988e9e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/URI.js.flow
@@ -0,0 +1,25 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule URI
+ * @flow
+ */
+
+'use strict';
+
+class URI {
+ _uri: string;
+
+ constructor(uri: string) {
+ this._uri = uri;
+ }
+
+ toString(): string {
+ return this._uri;
+ }
+}
+
+module.exports = URI;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeBidi.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeBidi.js
new file mode 100644
index 00000000..2cfbc586
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeBidi.js
@@ -0,0 +1,154 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @typechecks
+ *
+ */
+
+/**
+ * Basic (stateless) API for text direction detection
+ *
+ * Part of our implementation of Unicode Bidirectional Algorithm (UBA)
+ * Unicode Standard Annex #9 (UAX9)
+ * http://www.unicode.org/reports/tr9/
+ */
+
+'use strict';
+
+var UnicodeBidiDirection = require('./UnicodeBidiDirection');
+
+var invariant = require('./invariant');
+
+/**
+ * RegExp ranges of characters with a *Strong* Bidi_Class value.
+ *
+ * Data is based on DerivedBidiClass.txt in UCD version 7.0.0.
+ *
+ * NOTE: For performance reasons, we only support Unicode's
+ * Basic Multilingual Plane (BMP) for now.
+ */
+var RANGE_BY_BIDI_TYPE = {
+
+ L: 'A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u01BA\u01BB' + '\u01BC-\u01BF\u01C0-\u01C3\u01C4-\u0293\u0294\u0295-\u02AF\u02B0-\u02B8' + '\u02BB-\u02C1\u02D0-\u02D1\u02E0-\u02E4\u02EE\u0370-\u0373\u0376-\u0377' + '\u037A\u037B-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1' + '\u03A3-\u03F5\u03F7-\u0481\u0482\u048A-\u052F\u0531-\u0556\u0559' + '\u055A-\u055F\u0561-\u0587\u0589\u0903\u0904-\u0939\u093B\u093D' + '\u093E-\u0940\u0949-\u094C\u094E-\u094F\u0950\u0958-\u0961\u0964-\u0965' + '\u0966-\u096F\u0970\u0971\u0972-\u0980\u0982-\u0983\u0985-\u098C' + '\u098F-\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD' + '\u09BE-\u09C0\u09C7-\u09C8\u09CB-\u09CC\u09CE\u09D7\u09DC-\u09DD' + '\u09DF-\u09E1\u09E6-\u09EF\u09F0-\u09F1\u09F4-\u09F9\u09FA\u0A03' + '\u0A05-\u0A0A\u0A0F-\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32-\u0A33' + '\u0A35-\u0A36\u0A38-\u0A39\u0A3E-\u0A40\u0A59-\u0A5C\u0A5E\u0A66-\u0A6F' + '\u0A72-\u0A74\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0' + '\u0AB2-\u0AB3\u0AB5-\u0AB9\u0ABD\u0ABE-\u0AC0\u0AC9\u0ACB-\u0ACC\u0AD0' + '\u0AE0-\u0AE1\u0AE6-\u0AEF\u0AF0\u0B02-\u0B03\u0B05-\u0B0C\u0B0F-\u0B10' + '\u0B13-\u0B28\u0B2A-\u0B30\u0B32-\u0B33\u0B35-\u0B39\u0B3D\u0B3E\u0B40' + '\u0B47-\u0B48\u0B4B-\u0B4C\u0B57\u0B5C-\u0B5D\u0B5F-\u0B61\u0B66-\u0B6F' + '\u0B70\u0B71\u0B72-\u0B77\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95' + '\u0B99-\u0B9A\u0B9C\u0B9E-\u0B9F\u0BA3-\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9' + '\u0BBE-\u0BBF\u0BC1-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCC\u0BD0\u0BD7' + '\u0BE6-\u0BEF\u0BF0-\u0BF2\u0C01-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10' + '\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C41-\u0C44\u0C58-\u0C59\u0C60-\u0C61' + '\u0C66-\u0C6F\u0C7F\u0C82-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8' + '\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CBE\u0CBF\u0CC0-\u0CC4\u0CC6' + '\u0CC7-\u0CC8\u0CCA-\u0CCB\u0CD5-\u0CD6\u0CDE\u0CE0-\u0CE1\u0CE6-\u0CEF' + '\u0CF1-\u0CF2\u0D02-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D' + '\u0D3E-\u0D40\u0D46-\u0D48\u0D4A-\u0D4C\u0D4E\u0D57\u0D60-\u0D61' + '\u0D66-\u0D6F\u0D70-\u0D75\u0D79\u0D7A-\u0D7F\u0D82-\u0D83\u0D85-\u0D96' + '\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCF-\u0DD1\u0DD8-\u0DDF' + '\u0DE6-\u0DEF\u0DF2-\u0DF3\u0DF4\u0E01-\u0E30\u0E32-\u0E33\u0E40-\u0E45' + '\u0E46\u0E4F\u0E50-\u0E59\u0E5A-\u0E5B\u0E81-\u0E82\u0E84\u0E87-\u0E88' + '\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7' + '\u0EAA-\u0EAB\u0EAD-\u0EB0\u0EB2-\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6' + '\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F01-\u0F03\u0F04-\u0F12\u0F13\u0F14' + '\u0F15-\u0F17\u0F1A-\u0F1F\u0F20-\u0F29\u0F2A-\u0F33\u0F34\u0F36\u0F38' + '\u0F3E-\u0F3F\u0F40-\u0F47\u0F49-\u0F6C\u0F7F\u0F85\u0F88-\u0F8C' + '\u0FBE-\u0FC5\u0FC7-\u0FCC\u0FCE-\u0FCF\u0FD0-\u0FD4\u0FD5-\u0FD8' + '\u0FD9-\u0FDA\u1000-\u102A\u102B-\u102C\u1031\u1038\u103B-\u103C\u103F' + '\u1040-\u1049\u104A-\u104F\u1050-\u1055\u1056-\u1057\u105A-\u105D\u1061' + '\u1062-\u1064\u1065-\u1066\u1067-\u106D\u106E-\u1070\u1075-\u1081' + '\u1083-\u1084\u1087-\u108C\u108E\u108F\u1090-\u1099\u109A-\u109C' + '\u109E-\u109F\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FB\u10FC' + '\u10FD-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288' + '\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5' + '\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1360-\u1368' + '\u1369-\u137C\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166D-\u166E' + '\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EB-\u16ED\u16EE-\u16F0' + '\u16F1-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1735-\u1736' + '\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17B6\u17BE-\u17C5' + '\u17C7-\u17C8\u17D4-\u17D6\u17D7\u17D8-\u17DA\u17DC\u17E0-\u17E9' + '\u1810-\u1819\u1820-\u1842\u1843\u1844-\u1877\u1880-\u18A8\u18AA' + '\u18B0-\u18F5\u1900-\u191E\u1923-\u1926\u1929-\u192B\u1930-\u1931' + '\u1933-\u1938\u1946-\u194F\u1950-\u196D\u1970-\u1974\u1980-\u19AB' + '\u19B0-\u19C0\u19C1-\u19C7\u19C8-\u19C9\u19D0-\u19D9\u19DA\u1A00-\u1A16' + '\u1A19-\u1A1A\u1A1E-\u1A1F\u1A20-\u1A54\u1A55\u1A57\u1A61\u1A63-\u1A64' + '\u1A6D-\u1A72\u1A80-\u1A89\u1A90-\u1A99\u1AA0-\u1AA6\u1AA7\u1AA8-\u1AAD' + '\u1B04\u1B05-\u1B33\u1B35\u1B3B\u1B3D-\u1B41\u1B43-\u1B44\u1B45-\u1B4B' + '\u1B50-\u1B59\u1B5A-\u1B60\u1B61-\u1B6A\u1B74-\u1B7C\u1B82\u1B83-\u1BA0' + '\u1BA1\u1BA6-\u1BA7\u1BAA\u1BAE-\u1BAF\u1BB0-\u1BB9\u1BBA-\u1BE5\u1BE7' + '\u1BEA-\u1BEC\u1BEE\u1BF2-\u1BF3\u1BFC-\u1BFF\u1C00-\u1C23\u1C24-\u1C2B' + '\u1C34-\u1C35\u1C3B-\u1C3F\u1C40-\u1C49\u1C4D-\u1C4F\u1C50-\u1C59' + '\u1C5A-\u1C77\u1C78-\u1C7D\u1C7E-\u1C7F\u1CC0-\u1CC7\u1CD3\u1CE1' + '\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF2-\u1CF3\u1CF5-\u1CF6\u1D00-\u1D2B' + '\u1D2C-\u1D6A\u1D6B-\u1D77\u1D78\u1D79-\u1D9A\u1D9B-\u1DBF\u1E00-\u1F15' + '\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D' + '\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC' + '\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200E' + '\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D' + '\u2124\u2126\u2128\u212A-\u212D\u212F-\u2134\u2135-\u2138\u2139' + '\u213C-\u213F\u2145-\u2149\u214E\u214F\u2160-\u2182\u2183-\u2184' + '\u2185-\u2188\u2336-\u237A\u2395\u249C-\u24E9\u26AC\u2800-\u28FF' + '\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2C7B\u2C7C-\u2C7D\u2C7E-\u2CE4' + '\u2CEB-\u2CEE\u2CF2-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F' + '\u2D70\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE' + '\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005\u3006\u3007' + '\u3021-\u3029\u302E-\u302F\u3031-\u3035\u3038-\u303A\u303B\u303C' + '\u3041-\u3096\u309D-\u309E\u309F\u30A1-\u30FA\u30FC-\u30FE\u30FF' + '\u3105-\u312D\u3131-\u318E\u3190-\u3191\u3192-\u3195\u3196-\u319F' + '\u31A0-\u31BA\u31F0-\u31FF\u3200-\u321C\u3220-\u3229\u322A-\u3247' + '\u3248-\u324F\u3260-\u327B\u327F\u3280-\u3289\u328A-\u32B0\u32C0-\u32CB' + '\u32D0-\u32FE\u3300-\u3376\u337B-\u33DD\u33E0-\u33FE\u3400-\u4DB5' + '\u4E00-\u9FCC\uA000-\uA014\uA015\uA016-\uA48C\uA4D0-\uA4F7\uA4F8-\uA4FD' + '\uA4FE-\uA4FF\uA500-\uA60B\uA60C\uA610-\uA61F\uA620-\uA629\uA62A-\uA62B' + '\uA640-\uA66D\uA66E\uA680-\uA69B\uA69C-\uA69D\uA6A0-\uA6E5\uA6E6-\uA6EF' + '\uA6F2-\uA6F7\uA722-\uA76F\uA770\uA771-\uA787\uA789-\uA78A\uA78B-\uA78E' + '\uA790-\uA7AD\uA7B0-\uA7B1\uA7F7\uA7F8-\uA7F9\uA7FA\uA7FB-\uA801' + '\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA823-\uA824\uA827\uA830-\uA835' + '\uA836-\uA837\uA840-\uA873\uA880-\uA881\uA882-\uA8B3\uA8B4-\uA8C3' + '\uA8CE-\uA8CF\uA8D0-\uA8D9\uA8F2-\uA8F7\uA8F8-\uA8FA\uA8FB\uA900-\uA909' + '\uA90A-\uA925\uA92E-\uA92F\uA930-\uA946\uA952-\uA953\uA95F\uA960-\uA97C' + '\uA983\uA984-\uA9B2\uA9B4-\uA9B5\uA9BA-\uA9BB\uA9BD-\uA9C0\uA9C1-\uA9CD' + '\uA9CF\uA9D0-\uA9D9\uA9DE-\uA9DF\uA9E0-\uA9E4\uA9E6\uA9E7-\uA9EF' + '\uA9F0-\uA9F9\uA9FA-\uA9FE\uAA00-\uAA28\uAA2F-\uAA30\uAA33-\uAA34' + '\uAA40-\uAA42\uAA44-\uAA4B\uAA4D\uAA50-\uAA59\uAA5C-\uAA5F\uAA60-\uAA6F' + '\uAA70\uAA71-\uAA76\uAA77-\uAA79\uAA7A\uAA7B\uAA7D\uAA7E-\uAAAF\uAAB1' + '\uAAB5-\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADC\uAADD\uAADE-\uAADF' + '\uAAE0-\uAAEA\uAAEB\uAAEE-\uAAEF\uAAF0-\uAAF1\uAAF2\uAAF3-\uAAF4\uAAF5' + '\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E' + '\uAB30-\uAB5A\uAB5B\uAB5C-\uAB5F\uAB64-\uAB65\uABC0-\uABE2\uABE3-\uABE4' + '\uABE6-\uABE7\uABE9-\uABEA\uABEB\uABEC\uABF0-\uABF9\uAC00-\uD7A3' + '\uD7B0-\uD7C6\uD7CB-\uD7FB\uE000-\uF8FF\uF900-\uFA6D\uFA70-\uFAD9' + '\uFB00-\uFB06\uFB13-\uFB17\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFF6F\uFF70' + '\uFF71-\uFF9D\uFF9E-\uFF9F\uFFA0-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF' + '\uFFD2-\uFFD7\uFFDA-\uFFDC',
+
+ R: '\u0590\u05BE\u05C0\u05C3\u05C6\u05C8-\u05CF\u05D0-\u05EA\u05EB-\u05EF' + '\u05F0-\u05F2\u05F3-\u05F4\u05F5-\u05FF\u07C0-\u07C9\u07CA-\u07EA' + '\u07F4-\u07F5\u07FA\u07FB-\u07FF\u0800-\u0815\u081A\u0824\u0828' + '\u082E-\u082F\u0830-\u083E\u083F\u0840-\u0858\u085C-\u085D\u085E' + '\u085F-\u089F\u200F\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB37\uFB38-\uFB3C' + '\uFB3D\uFB3E\uFB3F\uFB40-\uFB41\uFB42\uFB43-\uFB44\uFB45\uFB46-\uFB4F',
+
+ AL: '\u0608\u060B\u060D\u061B\u061C\u061D\u061E-\u061F\u0620-\u063F\u0640' + '\u0641-\u064A\u066D\u066E-\u066F\u0671-\u06D3\u06D4\u06D5\u06E5-\u06E6' + '\u06EE-\u06EF\u06FA-\u06FC\u06FD-\u06FE\u06FF\u0700-\u070D\u070E\u070F' + '\u0710\u0712-\u072F\u074B-\u074C\u074D-\u07A5\u07B1\u07B2-\u07BF' + '\u08A0-\u08B2\u08B3-\u08E3\uFB50-\uFBB1\uFBB2-\uFBC1\uFBC2-\uFBD2' + '\uFBD3-\uFD3D\uFD40-\uFD4F\uFD50-\uFD8F\uFD90-\uFD91\uFD92-\uFDC7' + '\uFDC8-\uFDCF\uFDF0-\uFDFB\uFDFC\uFDFE-\uFDFF\uFE70-\uFE74\uFE75' + '\uFE76-\uFEFC\uFEFD-\uFEFE'
+
+};
+
+var REGEX_STRONG = new RegExp('[' + RANGE_BY_BIDI_TYPE.L + RANGE_BY_BIDI_TYPE.R + RANGE_BY_BIDI_TYPE.AL + ']');
+
+var REGEX_RTL = new RegExp('[' + RANGE_BY_BIDI_TYPE.R + RANGE_BY_BIDI_TYPE.AL + ']');
+
+/**
+ * Returns the first strong character (has Bidi_Class value of L, R, or AL).
+ *
+ * @param str A text block; e.g. paragraph, table cell, tag
+ * @return A character with strong bidi direction, or null if not found
+ */
+function firstStrongChar(str) {
+ var match = REGEX_STRONG.exec(str);
+ return match == null ? null : match[0];
+}
+
+/**
+ * Returns the direction of a block of text, based on the direction of its
+ * first strong character (has Bidi_Class value of L, R, or AL).
+ *
+ * @param str A text block; e.g. paragraph, table cell, tag
+ * @return The resolved direction
+ */
+function firstStrongCharDir(str) {
+ var strongChar = firstStrongChar(str);
+ if (strongChar == null) {
+ return UnicodeBidiDirection.NEUTRAL;
+ }
+ return REGEX_RTL.exec(strongChar) ? UnicodeBidiDirection.RTL : UnicodeBidiDirection.LTR;
+}
+
+/**
+ * Returns the direction of a block of text, based on the direction of its
+ * first strong character (has Bidi_Class value of L, R, or AL), or a fallback
+ * direction, if no strong character is found.
+ *
+ * This function is supposed to be used in respect to Higher-Level Protocol
+ * rule HL1. (http://www.unicode.org/reports/tr9/#HL1)
+ *
+ * @param str A text block; e.g. paragraph, table cell, tag
+ * @param fallback Fallback direction, used if no strong direction detected
+ * for the block (default = NEUTRAL)
+ * @return The resolved direction
+ */
+function resolveBlockDir(str, fallback) {
+ fallback = fallback || UnicodeBidiDirection.NEUTRAL;
+ if (!str.length) {
+ return fallback;
+ }
+ var blockDir = firstStrongCharDir(str);
+ return blockDir === UnicodeBidiDirection.NEUTRAL ? fallback : blockDir;
+}
+
+/**
+ * Returns the direction of a block of text, based on the direction of its
+ * first strong character (has Bidi_Class value of L, R, or AL), or a fallback
+ * direction, if no strong character is found.
+ *
+ * NOTE: This function is similar to resolveBlockDir(), but uses the global
+ * direction as the fallback, so it *always* returns a Strong direction,
+ * making it useful for integration in places that you need to make the final
+ * decision, like setting some CSS class.
+ *
+ * This function is supposed to be used in respect to Higher-Level Protocol
+ * rule HL1. (http://www.unicode.org/reports/tr9/#HL1)
+ *
+ * @param str A text block; e.g. paragraph, table cell
+ * @param strongFallback Fallback direction, used if no strong direction
+ * detected for the block (default = global direction)
+ * @return The resolved Strong direction
+ */
+function getDirection(str, strongFallback) {
+ if (!strongFallback) {
+ strongFallback = UnicodeBidiDirection.getGlobalDir();
+ }
+ !UnicodeBidiDirection.isStrong(strongFallback) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'Fallback direction must be a strong direction') : invariant(false) : void 0;
+ return resolveBlockDir(str, strongFallback);
+}
+
+/**
+ * Returns true if getDirection(arguments...) returns LTR.
+ *
+ * @param str A text block; e.g. paragraph, table cell
+ * @param strongFallback Fallback direction, used if no strong direction
+ * detected for the block (default = global direction)
+ * @return True if the resolved direction is LTR
+ */
+function isDirectionLTR(str, strongFallback) {
+ return getDirection(str, strongFallback) === UnicodeBidiDirection.LTR;
+}
+
+/**
+ * Returns true if getDirection(arguments...) returns RTL.
+ *
+ * @param str A text block; e.g. paragraph, table cell
+ * @param strongFallback Fallback direction, used if no strong direction
+ * detected for the block (default = global direction)
+ * @return True if the resolved direction is RTL
+ */
+function isDirectionRTL(str, strongFallback) {
+ return getDirection(str, strongFallback) === UnicodeBidiDirection.RTL;
+}
+
+var UnicodeBidi = {
+ firstStrongChar: firstStrongChar,
+ firstStrongCharDir: firstStrongCharDir,
+ resolveBlockDir: resolveBlockDir,
+ getDirection: getDirection,
+ isDirectionLTR: isDirectionLTR,
+ isDirectionRTL: isDirectionRTL
+};
+
+module.exports = UnicodeBidi;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeBidi.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeBidi.js.flow
new file mode 100644
index 00000000..5e824a5d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeBidi.js.flow
@@ -0,0 +1,157 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule UnicodeBidi
+ * @typechecks
+ * @flow
+ */
+
+/**
+ * Basic (stateless) API for text direction detection
+ *
+ * Part of our implementation of Unicode Bidirectional Algorithm (UBA)
+ * Unicode Standard Annex #9 (UAX9)
+ * http://www.unicode.org/reports/tr9/
+ */
+
+'use strict';
+
+const UnicodeBidiDirection = require('./UnicodeBidiDirection');
+
+const invariant = require('./invariant');
+
+import type { BidiDirection } from './UnicodeBidiDirection';
+
+/**
+ * RegExp ranges of characters with a *Strong* Bidi_Class value.
+ *
+ * Data is based on DerivedBidiClass.txt in UCD version 7.0.0.
+ *
+ * NOTE: For performance reasons, we only support Unicode's
+ * Basic Multilingual Plane (BMP) for now.
+ */
+const RANGE_BY_BIDI_TYPE = {
+
+ L: 'A-Za-z\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u01BA\u01BB' + '\u01BC-\u01BF\u01C0-\u01C3\u01C4-\u0293\u0294\u0295-\u02AF\u02B0-\u02B8' + '\u02BB-\u02C1\u02D0-\u02D1\u02E0-\u02E4\u02EE\u0370-\u0373\u0376-\u0377' + '\u037A\u037B-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1' + '\u03A3-\u03F5\u03F7-\u0481\u0482\u048A-\u052F\u0531-\u0556\u0559' + '\u055A-\u055F\u0561-\u0587\u0589\u0903\u0904-\u0939\u093B\u093D' + '\u093E-\u0940\u0949-\u094C\u094E-\u094F\u0950\u0958-\u0961\u0964-\u0965' + '\u0966-\u096F\u0970\u0971\u0972-\u0980\u0982-\u0983\u0985-\u098C' + '\u098F-\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD' + '\u09BE-\u09C0\u09C7-\u09C8\u09CB-\u09CC\u09CE\u09D7\u09DC-\u09DD' + '\u09DF-\u09E1\u09E6-\u09EF\u09F0-\u09F1\u09F4-\u09F9\u09FA\u0A03' + '\u0A05-\u0A0A\u0A0F-\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32-\u0A33' + '\u0A35-\u0A36\u0A38-\u0A39\u0A3E-\u0A40\u0A59-\u0A5C\u0A5E\u0A66-\u0A6F' + '\u0A72-\u0A74\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0' + '\u0AB2-\u0AB3\u0AB5-\u0AB9\u0ABD\u0ABE-\u0AC0\u0AC9\u0ACB-\u0ACC\u0AD0' + '\u0AE0-\u0AE1\u0AE6-\u0AEF\u0AF0\u0B02-\u0B03\u0B05-\u0B0C\u0B0F-\u0B10' + '\u0B13-\u0B28\u0B2A-\u0B30\u0B32-\u0B33\u0B35-\u0B39\u0B3D\u0B3E\u0B40' + '\u0B47-\u0B48\u0B4B-\u0B4C\u0B57\u0B5C-\u0B5D\u0B5F-\u0B61\u0B66-\u0B6F' + '\u0B70\u0B71\u0B72-\u0B77\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95' + '\u0B99-\u0B9A\u0B9C\u0B9E-\u0B9F\u0BA3-\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9' + '\u0BBE-\u0BBF\u0BC1-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCC\u0BD0\u0BD7' + '\u0BE6-\u0BEF\u0BF0-\u0BF2\u0C01-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10' + '\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C41-\u0C44\u0C58-\u0C59\u0C60-\u0C61' + '\u0C66-\u0C6F\u0C7F\u0C82-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8' + '\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CBE\u0CBF\u0CC0-\u0CC4\u0CC6' + '\u0CC7-\u0CC8\u0CCA-\u0CCB\u0CD5-\u0CD6\u0CDE\u0CE0-\u0CE1\u0CE6-\u0CEF' + '\u0CF1-\u0CF2\u0D02-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D' + '\u0D3E-\u0D40\u0D46-\u0D48\u0D4A-\u0D4C\u0D4E\u0D57\u0D60-\u0D61' + '\u0D66-\u0D6F\u0D70-\u0D75\u0D79\u0D7A-\u0D7F\u0D82-\u0D83\u0D85-\u0D96' + '\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCF-\u0DD1\u0DD8-\u0DDF' + '\u0DE6-\u0DEF\u0DF2-\u0DF3\u0DF4\u0E01-\u0E30\u0E32-\u0E33\u0E40-\u0E45' + '\u0E46\u0E4F\u0E50-\u0E59\u0E5A-\u0E5B\u0E81-\u0E82\u0E84\u0E87-\u0E88' + '\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7' + '\u0EAA-\u0EAB\u0EAD-\u0EB0\u0EB2-\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6' + '\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F01-\u0F03\u0F04-\u0F12\u0F13\u0F14' + '\u0F15-\u0F17\u0F1A-\u0F1F\u0F20-\u0F29\u0F2A-\u0F33\u0F34\u0F36\u0F38' + '\u0F3E-\u0F3F\u0F40-\u0F47\u0F49-\u0F6C\u0F7F\u0F85\u0F88-\u0F8C' + '\u0FBE-\u0FC5\u0FC7-\u0FCC\u0FCE-\u0FCF\u0FD0-\u0FD4\u0FD5-\u0FD8' + '\u0FD9-\u0FDA\u1000-\u102A\u102B-\u102C\u1031\u1038\u103B-\u103C\u103F' + '\u1040-\u1049\u104A-\u104F\u1050-\u1055\u1056-\u1057\u105A-\u105D\u1061' + '\u1062-\u1064\u1065-\u1066\u1067-\u106D\u106E-\u1070\u1075-\u1081' + '\u1083-\u1084\u1087-\u108C\u108E\u108F\u1090-\u1099\u109A-\u109C' + '\u109E-\u109F\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FB\u10FC' + '\u10FD-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288' + '\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5' + '\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1360-\u1368' + '\u1369-\u137C\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166D-\u166E' + '\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EB-\u16ED\u16EE-\u16F0' + '\u16F1-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1735-\u1736' + '\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17B6\u17BE-\u17C5' + '\u17C7-\u17C8\u17D4-\u17D6\u17D7\u17D8-\u17DA\u17DC\u17E0-\u17E9' + '\u1810-\u1819\u1820-\u1842\u1843\u1844-\u1877\u1880-\u18A8\u18AA' + '\u18B0-\u18F5\u1900-\u191E\u1923-\u1926\u1929-\u192B\u1930-\u1931' + '\u1933-\u1938\u1946-\u194F\u1950-\u196D\u1970-\u1974\u1980-\u19AB' + '\u19B0-\u19C0\u19C1-\u19C7\u19C8-\u19C9\u19D0-\u19D9\u19DA\u1A00-\u1A16' + '\u1A19-\u1A1A\u1A1E-\u1A1F\u1A20-\u1A54\u1A55\u1A57\u1A61\u1A63-\u1A64' + '\u1A6D-\u1A72\u1A80-\u1A89\u1A90-\u1A99\u1AA0-\u1AA6\u1AA7\u1AA8-\u1AAD' + '\u1B04\u1B05-\u1B33\u1B35\u1B3B\u1B3D-\u1B41\u1B43-\u1B44\u1B45-\u1B4B' + '\u1B50-\u1B59\u1B5A-\u1B60\u1B61-\u1B6A\u1B74-\u1B7C\u1B82\u1B83-\u1BA0' + '\u1BA1\u1BA6-\u1BA7\u1BAA\u1BAE-\u1BAF\u1BB0-\u1BB9\u1BBA-\u1BE5\u1BE7' + '\u1BEA-\u1BEC\u1BEE\u1BF2-\u1BF3\u1BFC-\u1BFF\u1C00-\u1C23\u1C24-\u1C2B' + '\u1C34-\u1C35\u1C3B-\u1C3F\u1C40-\u1C49\u1C4D-\u1C4F\u1C50-\u1C59' + '\u1C5A-\u1C77\u1C78-\u1C7D\u1C7E-\u1C7F\u1CC0-\u1CC7\u1CD3\u1CE1' + '\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF2-\u1CF3\u1CF5-\u1CF6\u1D00-\u1D2B' + '\u1D2C-\u1D6A\u1D6B-\u1D77\u1D78\u1D79-\u1D9A\u1D9B-\u1DBF\u1E00-\u1F15' + '\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D' + '\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC' + '\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200E' + '\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D' + '\u2124\u2126\u2128\u212A-\u212D\u212F-\u2134\u2135-\u2138\u2139' + '\u213C-\u213F\u2145-\u2149\u214E\u214F\u2160-\u2182\u2183-\u2184' + '\u2185-\u2188\u2336-\u237A\u2395\u249C-\u24E9\u26AC\u2800-\u28FF' + '\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2C7B\u2C7C-\u2C7D\u2C7E-\u2CE4' + '\u2CEB-\u2CEE\u2CF2-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F' + '\u2D70\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE' + '\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005\u3006\u3007' + '\u3021-\u3029\u302E-\u302F\u3031-\u3035\u3038-\u303A\u303B\u303C' + '\u3041-\u3096\u309D-\u309E\u309F\u30A1-\u30FA\u30FC-\u30FE\u30FF' + '\u3105-\u312D\u3131-\u318E\u3190-\u3191\u3192-\u3195\u3196-\u319F' + '\u31A0-\u31BA\u31F0-\u31FF\u3200-\u321C\u3220-\u3229\u322A-\u3247' + '\u3248-\u324F\u3260-\u327B\u327F\u3280-\u3289\u328A-\u32B0\u32C0-\u32CB' + '\u32D0-\u32FE\u3300-\u3376\u337B-\u33DD\u33E0-\u33FE\u3400-\u4DB5' + '\u4E00-\u9FCC\uA000-\uA014\uA015\uA016-\uA48C\uA4D0-\uA4F7\uA4F8-\uA4FD' + '\uA4FE-\uA4FF\uA500-\uA60B\uA60C\uA610-\uA61F\uA620-\uA629\uA62A-\uA62B' + '\uA640-\uA66D\uA66E\uA680-\uA69B\uA69C-\uA69D\uA6A0-\uA6E5\uA6E6-\uA6EF' + '\uA6F2-\uA6F7\uA722-\uA76F\uA770\uA771-\uA787\uA789-\uA78A\uA78B-\uA78E' + '\uA790-\uA7AD\uA7B0-\uA7B1\uA7F7\uA7F8-\uA7F9\uA7FA\uA7FB-\uA801' + '\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA823-\uA824\uA827\uA830-\uA835' + '\uA836-\uA837\uA840-\uA873\uA880-\uA881\uA882-\uA8B3\uA8B4-\uA8C3' + '\uA8CE-\uA8CF\uA8D0-\uA8D9\uA8F2-\uA8F7\uA8F8-\uA8FA\uA8FB\uA900-\uA909' + '\uA90A-\uA925\uA92E-\uA92F\uA930-\uA946\uA952-\uA953\uA95F\uA960-\uA97C' + '\uA983\uA984-\uA9B2\uA9B4-\uA9B5\uA9BA-\uA9BB\uA9BD-\uA9C0\uA9C1-\uA9CD' + '\uA9CF\uA9D0-\uA9D9\uA9DE-\uA9DF\uA9E0-\uA9E4\uA9E6\uA9E7-\uA9EF' + '\uA9F0-\uA9F9\uA9FA-\uA9FE\uAA00-\uAA28\uAA2F-\uAA30\uAA33-\uAA34' + '\uAA40-\uAA42\uAA44-\uAA4B\uAA4D\uAA50-\uAA59\uAA5C-\uAA5F\uAA60-\uAA6F' + '\uAA70\uAA71-\uAA76\uAA77-\uAA79\uAA7A\uAA7B\uAA7D\uAA7E-\uAAAF\uAAB1' + '\uAAB5-\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADC\uAADD\uAADE-\uAADF' + '\uAAE0-\uAAEA\uAAEB\uAAEE-\uAAEF\uAAF0-\uAAF1\uAAF2\uAAF3-\uAAF4\uAAF5' + '\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E' + '\uAB30-\uAB5A\uAB5B\uAB5C-\uAB5F\uAB64-\uAB65\uABC0-\uABE2\uABE3-\uABE4' + '\uABE6-\uABE7\uABE9-\uABEA\uABEB\uABEC\uABF0-\uABF9\uAC00-\uD7A3' + '\uD7B0-\uD7C6\uD7CB-\uD7FB\uE000-\uF8FF\uF900-\uFA6D\uFA70-\uFAD9' + '\uFB00-\uFB06\uFB13-\uFB17\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFF6F\uFF70' + '\uFF71-\uFF9D\uFF9E-\uFF9F\uFFA0-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF' + '\uFFD2-\uFFD7\uFFDA-\uFFDC',
+
+ R: '\u0590\u05BE\u05C0\u05C3\u05C6\u05C8-\u05CF\u05D0-\u05EA\u05EB-\u05EF' + '\u05F0-\u05F2\u05F3-\u05F4\u05F5-\u05FF\u07C0-\u07C9\u07CA-\u07EA' + '\u07F4-\u07F5\u07FA\u07FB-\u07FF\u0800-\u0815\u081A\u0824\u0828' + '\u082E-\u082F\u0830-\u083E\u083F\u0840-\u0858\u085C-\u085D\u085E' + '\u085F-\u089F\u200F\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB37\uFB38-\uFB3C' + '\uFB3D\uFB3E\uFB3F\uFB40-\uFB41\uFB42\uFB43-\uFB44\uFB45\uFB46-\uFB4F',
+
+ AL: '\u0608\u060B\u060D\u061B\u061C\u061D\u061E-\u061F\u0620-\u063F\u0640' + '\u0641-\u064A\u066D\u066E-\u066F\u0671-\u06D3\u06D4\u06D5\u06E5-\u06E6' + '\u06EE-\u06EF\u06FA-\u06FC\u06FD-\u06FE\u06FF\u0700-\u070D\u070E\u070F' + '\u0710\u0712-\u072F\u074B-\u074C\u074D-\u07A5\u07B1\u07B2-\u07BF' + '\u08A0-\u08B2\u08B3-\u08E3\uFB50-\uFBB1\uFBB2-\uFBC1\uFBC2-\uFBD2' + '\uFBD3-\uFD3D\uFD40-\uFD4F\uFD50-\uFD8F\uFD90-\uFD91\uFD92-\uFDC7' + '\uFDC8-\uFDCF\uFDF0-\uFDFB\uFDFC\uFDFE-\uFDFF\uFE70-\uFE74\uFE75' + '\uFE76-\uFEFC\uFEFD-\uFEFE'
+
+};
+
+const REGEX_STRONG = new RegExp('[' + RANGE_BY_BIDI_TYPE.L + RANGE_BY_BIDI_TYPE.R + RANGE_BY_BIDI_TYPE.AL + ']');
+
+const REGEX_RTL = new RegExp('[' + RANGE_BY_BIDI_TYPE.R + RANGE_BY_BIDI_TYPE.AL + ']');
+
+/**
+ * Returns the first strong character (has Bidi_Class value of L, R, or AL).
+ *
+ * @param str A text block; e.g. paragraph, table cell, tag
+ * @return A character with strong bidi direction, or null if not found
+ */
+function firstStrongChar(str: string): ?string {
+ const match = REGEX_STRONG.exec(str);
+ return match == null ? null : match[0];
+}
+
+/**
+ * Returns the direction of a block of text, based on the direction of its
+ * first strong character (has Bidi_Class value of L, R, or AL).
+ *
+ * @param str A text block; e.g. paragraph, table cell, tag
+ * @return The resolved direction
+ */
+function firstStrongCharDir(str: string): BidiDirection {
+ const strongChar = firstStrongChar(str);
+ if (strongChar == null) {
+ return UnicodeBidiDirection.NEUTRAL;
+ }
+ return REGEX_RTL.exec(strongChar) ? UnicodeBidiDirection.RTL : UnicodeBidiDirection.LTR;
+}
+
+/**
+ * Returns the direction of a block of text, based on the direction of its
+ * first strong character (has Bidi_Class value of L, R, or AL), or a fallback
+ * direction, if no strong character is found.
+ *
+ * This function is supposed to be used in respect to Higher-Level Protocol
+ * rule HL1. (http://www.unicode.org/reports/tr9/#HL1)
+ *
+ * @param str A text block; e.g. paragraph, table cell, tag
+ * @param fallback Fallback direction, used if no strong direction detected
+ * for the block (default = NEUTRAL)
+ * @return The resolved direction
+ */
+function resolveBlockDir(str: string, fallback: ?BidiDirection): BidiDirection {
+ fallback = fallback || UnicodeBidiDirection.NEUTRAL;
+ if (!str.length) {
+ return fallback;
+ }
+ const blockDir = firstStrongCharDir(str);
+ return blockDir === UnicodeBidiDirection.NEUTRAL ? fallback : blockDir;
+}
+
+/**
+ * Returns the direction of a block of text, based on the direction of its
+ * first strong character (has Bidi_Class value of L, R, or AL), or a fallback
+ * direction, if no strong character is found.
+ *
+ * NOTE: This function is similar to resolveBlockDir(), but uses the global
+ * direction as the fallback, so it *always* returns a Strong direction,
+ * making it useful for integration in places that you need to make the final
+ * decision, like setting some CSS class.
+ *
+ * This function is supposed to be used in respect to Higher-Level Protocol
+ * rule HL1. (http://www.unicode.org/reports/tr9/#HL1)
+ *
+ * @param str A text block; e.g. paragraph, table cell
+ * @param strongFallback Fallback direction, used if no strong direction
+ * detected for the block (default = global direction)
+ * @return The resolved Strong direction
+ */
+function getDirection(str: string, strongFallback: ?BidiDirection): BidiDirection {
+ if (!strongFallback) {
+ strongFallback = UnicodeBidiDirection.getGlobalDir();
+ }
+ invariant(UnicodeBidiDirection.isStrong(strongFallback), 'Fallback direction must be a strong direction');
+ return resolveBlockDir(str, strongFallback);
+}
+
+/**
+ * Returns true if getDirection(arguments...) returns LTR.
+ *
+ * @param str A text block; e.g. paragraph, table cell
+ * @param strongFallback Fallback direction, used if no strong direction
+ * detected for the block (default = global direction)
+ * @return True if the resolved direction is LTR
+ */
+function isDirectionLTR(str: string, strongFallback: ?BidiDirection): boolean {
+ return getDirection(str, strongFallback) === UnicodeBidiDirection.LTR;
+}
+
+/**
+ * Returns true if getDirection(arguments...) returns RTL.
+ *
+ * @param str A text block; e.g. paragraph, table cell
+ * @param strongFallback Fallback direction, used if no strong direction
+ * detected for the block (default = global direction)
+ * @return True if the resolved direction is RTL
+ */
+function isDirectionRTL(str: string, strongFallback: ?BidiDirection): boolean {
+ return getDirection(str, strongFallback) === UnicodeBidiDirection.RTL;
+}
+
+const UnicodeBidi = {
+ firstStrongChar: firstStrongChar,
+ firstStrongCharDir: firstStrongCharDir,
+ resolveBlockDir: resolveBlockDir,
+ getDirection: getDirection,
+ isDirectionLTR: isDirectionLTR,
+ isDirectionRTL: isDirectionRTL
+};
+
+module.exports = UnicodeBidi;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeBidiDirection.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeBidiDirection.js
new file mode 100644
index 00000000..c62febea
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeBidiDirection.js
@@ -0,0 +1,106 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @typechecks
+ *
+ */
+
+/**
+ * Constants to represent text directionality
+ *
+ * Also defines a *global* direciton, to be used in bidi algorithms as a
+ * default fallback direciton, when no better direction is found or provided.
+ *
+ * NOTE: Use `setGlobalDir()`, or update `initGlobalDir()`, to set the initial
+ * global direction value based on the application.
+ *
+ * Part of the implementation of Unicode Bidirectional Algorithm (UBA)
+ * Unicode Standard Annex #9 (UAX9)
+ * http://www.unicode.org/reports/tr9/
+ */
+
+'use strict';
+
+var invariant = require('./invariant');
+
+var NEUTRAL = 'NEUTRAL'; // No strong direction
+var LTR = 'LTR'; // Left-to-Right direction
+var RTL = 'RTL'; // Right-to-Left direction
+
+var globalDir = null;
+
+// == Helpers ==
+
+/**
+ * Check if a directionality value is a Strong one
+ */
+function isStrong(dir) {
+ return dir === LTR || dir === RTL;
+}
+
+/**
+ * Get string value to be used for `dir` HTML attribute or `direction` CSS
+ * property.
+ */
+function getHTMLDir(dir) {
+ !isStrong(dir) ? process.env.NODE_ENV !== 'production' ? invariant(false, '`dir` must be a strong direction to be converted to HTML Direction') : invariant(false) : void 0;
+ return dir === LTR ? 'ltr' : 'rtl';
+}
+
+/**
+ * Get string value to be used for `dir` HTML attribute or `direction` CSS
+ * property, but returns null if `dir` has same value as `otherDir`.
+ * `null`.
+ */
+function getHTMLDirIfDifferent(dir, otherDir) {
+ !isStrong(dir) ? process.env.NODE_ENV !== 'production' ? invariant(false, '`dir` must be a strong direction to be converted to HTML Direction') : invariant(false) : void 0;
+ !isStrong(otherDir) ? process.env.NODE_ENV !== 'production' ? invariant(false, '`otherDir` must be a strong direction to be converted to HTML Direction') : invariant(false) : void 0;
+ return dir === otherDir ? null : getHTMLDir(dir);
+}
+
+// == Global Direction ==
+
+/**
+ * Set the global direction.
+ */
+function setGlobalDir(dir) {
+ globalDir = dir;
+}
+
+/**
+ * Initialize the global direction
+ */
+function initGlobalDir() {
+ setGlobalDir(LTR);
+}
+
+/**
+ * Get the global direction
+ */
+function getGlobalDir() {
+ if (!globalDir) {
+ this.initGlobalDir();
+ }
+ !globalDir ? process.env.NODE_ENV !== 'production' ? invariant(false, 'Global direction not set.') : invariant(false) : void 0;
+ return globalDir;
+}
+
+var UnicodeBidiDirection = {
+ // Values
+ NEUTRAL: NEUTRAL,
+ LTR: LTR,
+ RTL: RTL,
+ // Helpers
+ isStrong: isStrong,
+ getHTMLDir: getHTMLDir,
+ getHTMLDirIfDifferent: getHTMLDirIfDifferent,
+ // Global Direction
+ setGlobalDir: setGlobalDir,
+ initGlobalDir: initGlobalDir,
+ getGlobalDir: getGlobalDir
+};
+
+module.exports = UnicodeBidiDirection;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeBidiDirection.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeBidiDirection.js.flow
new file mode 100644
index 00000000..1301fedd
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeBidiDirection.js.flow
@@ -0,0 +1,110 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule UnicodeBidiDirection
+ * @typechecks
+ * @flow
+ */
+
+/**
+ * Constants to represent text directionality
+ *
+ * Also defines a *global* direciton, to be used in bidi algorithms as a
+ * default fallback direciton, when no better direction is found or provided.
+ *
+ * NOTE: Use `setGlobalDir()`, or update `initGlobalDir()`, to set the initial
+ * global direction value based on the application.
+ *
+ * Part of the implementation of Unicode Bidirectional Algorithm (UBA)
+ * Unicode Standard Annex #9 (UAX9)
+ * http://www.unicode.org/reports/tr9/
+ */
+
+'use strict';
+
+const invariant = require('./invariant');
+
+export type BidiDirection = 'LTR' | 'RTL' | 'NEUTRAL';
+export type HTMLDir = 'ltr' | 'rtl';
+
+const NEUTRAL = 'NEUTRAL'; // No strong direction
+const LTR = 'LTR'; // Left-to-Right direction
+const RTL = 'RTL'; // Right-to-Left direction
+
+let globalDir: ?BidiDirection = null;
+
+// == Helpers ==
+
+/**
+ * Check if a directionality value is a Strong one
+ */
+function isStrong(dir: BidiDirection): boolean {
+ return dir === LTR || dir === RTL;
+}
+
+/**
+ * Get string value to be used for `dir` HTML attribute or `direction` CSS
+ * property.
+ */
+function getHTMLDir(dir: BidiDirection): HTMLDir {
+ invariant(isStrong(dir), '`dir` must be a strong direction to be converted to HTML Direction');
+ return dir === LTR ? 'ltr' : 'rtl';
+}
+
+/**
+ * Get string value to be used for `dir` HTML attribute or `direction` CSS
+ * property, but returns null if `dir` has same value as `otherDir`.
+ * `null`.
+ */
+function getHTMLDirIfDifferent(dir: BidiDirection, otherDir: BidiDirection): ?HTMLDir {
+ invariant(isStrong(dir), '`dir` must be a strong direction to be converted to HTML Direction');
+ invariant(isStrong(otherDir), '`otherDir` must be a strong direction to be converted to HTML Direction');
+ return dir === otherDir ? null : getHTMLDir(dir);
+}
+
+// == Global Direction ==
+
+/**
+ * Set the global direction.
+ */
+function setGlobalDir(dir: BidiDirection): void {
+ globalDir = dir;
+}
+
+/**
+ * Initialize the global direction
+ */
+function initGlobalDir(): void {
+ setGlobalDir(LTR);
+}
+
+/**
+ * Get the global direction
+ */
+function getGlobalDir(): BidiDirection {
+ if (!globalDir) {
+ this.initGlobalDir();
+ }
+ invariant(globalDir, 'Global direction not set.');
+ return globalDir;
+}
+
+const UnicodeBidiDirection = {
+ // Values
+ NEUTRAL,
+ LTR,
+ RTL,
+ // Helpers
+ isStrong,
+ getHTMLDir,
+ getHTMLDirIfDifferent,
+ // Global Direction
+ setGlobalDir,
+ initGlobalDir,
+ getGlobalDir
+};
+
+module.exports = UnicodeBidiDirection;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeBidiService.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeBidiService.js
new file mode 100644
index 00000000..ae9764ab
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeBidiService.js
@@ -0,0 +1,98 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @typechecks
+ *
+ */
+
+/**
+ * Stateful API for text direction detection
+ *
+ * This class can be used in applications where you need to detect the
+ * direction of a sequence of text blocks, where each direction shall be used
+ * as the fallback direction for the next one.
+ *
+ * NOTE: A default direction, if not provided, is set based on the global
+ * direction, as defined by `UnicodeBidiDirection`.
+ *
+ * == Example ==
+ * ```
+ * var UnicodeBidiService = require('UnicodeBidiService');
+ *
+ * var bidiService = new UnicodeBidiService();
+ *
+ * ...
+ *
+ * bidiService.reset();
+ * for (var para in paragraphs) {
+ * var dir = bidiService.getDirection(para);
+ * ...
+ * }
+ * ```
+ *
+ * Part of our implementation of Unicode Bidirectional Algorithm (UBA)
+ * Unicode Standard Annex #9 (UAX9)
+ * http://www.unicode.org/reports/tr9/
+ */
+
+'use strict';
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+var UnicodeBidi = require('./UnicodeBidi');
+var UnicodeBidiDirection = require('./UnicodeBidiDirection');
+
+var invariant = require('./invariant');
+
+var UnicodeBidiService = function () {
+
+ /**
+ * Stateful class for paragraph direction detection
+ *
+ * @param defaultDir Default direction of the service
+ */
+ function UnicodeBidiService(defaultDir) {
+ _classCallCheck(this, UnicodeBidiService);
+
+ if (!defaultDir) {
+ defaultDir = UnicodeBidiDirection.getGlobalDir();
+ } else {
+ !UnicodeBidiDirection.isStrong(defaultDir) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'Default direction must be a strong direction (LTR or RTL)') : invariant(false) : void 0;
+ }
+ this._defaultDir = defaultDir;
+ this.reset();
+ }
+
+ /**
+ * Reset the internal state
+ *
+ * Instead of creating a new instance, you can just reset() your instance
+ * everytime you start a new loop.
+ */
+
+
+ UnicodeBidiService.prototype.reset = function reset() {
+ this._lastDir = this._defaultDir;
+ };
+
+ /**
+ * Returns the direction of a block of text, and remembers it as the
+ * fall-back direction for the next paragraph.
+ *
+ * @param str A text block, e.g. paragraph, table cell, tag
+ * @return The resolved direction
+ */
+
+
+ UnicodeBidiService.prototype.getDirection = function getDirection(str) {
+ this._lastDir = UnicodeBidi.getDirection(str, this._lastDir);
+ return this._lastDir;
+ };
+
+ return UnicodeBidiService;
+}();
+
+module.exports = UnicodeBidiService;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeBidiService.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeBidiService.js.flow
new file mode 100644
index 00000000..7999a422
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeBidiService.js.flow
@@ -0,0 +1,95 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule UnicodeBidiService
+ * @typechecks
+ * @flow
+ */
+
+/**
+ * Stateful API for text direction detection
+ *
+ * This class can be used in applications where you need to detect the
+ * direction of a sequence of text blocks, where each direction shall be used
+ * as the fallback direction for the next one.
+ *
+ * NOTE: A default direction, if not provided, is set based on the global
+ * direction, as defined by `UnicodeBidiDirection`.
+ *
+ * == Example ==
+ * ```
+ * var UnicodeBidiService = require('UnicodeBidiService');
+ *
+ * var bidiService = new UnicodeBidiService();
+ *
+ * ...
+ *
+ * bidiService.reset();
+ * for (var para in paragraphs) {
+ * var dir = bidiService.getDirection(para);
+ * ...
+ * }
+ * ```
+ *
+ * Part of our implementation of Unicode Bidirectional Algorithm (UBA)
+ * Unicode Standard Annex #9 (UAX9)
+ * http://www.unicode.org/reports/tr9/
+ */
+
+'use strict';
+
+const UnicodeBidi = require('./UnicodeBidi');
+const UnicodeBidiDirection = require('./UnicodeBidiDirection');
+
+const invariant = require('./invariant');
+
+import type { BidiDirection } from './UnicodeBidiDirection';
+
+class UnicodeBidiService {
+
+ _defaultDir: BidiDirection;
+ _lastDir: BidiDirection;
+
+ /**
+ * Stateful class for paragraph direction detection
+ *
+ * @param defaultDir Default direction of the service
+ */
+ constructor(defaultDir: ?BidiDirection) {
+ if (!defaultDir) {
+ defaultDir = UnicodeBidiDirection.getGlobalDir();
+ } else {
+ invariant(UnicodeBidiDirection.isStrong(defaultDir), 'Default direction must be a strong direction (LTR or RTL)');
+ }
+ this._defaultDir = defaultDir;
+ this.reset();
+ }
+
+ /**
+ * Reset the internal state
+ *
+ * Instead of creating a new instance, you can just reset() your instance
+ * everytime you start a new loop.
+ */
+ reset(): void {
+ this._lastDir = this._defaultDir;
+ }
+
+ /**
+ * Returns the direction of a block of text, and remembers it as the
+ * fall-back direction for the next paragraph.
+ *
+ * @param str A text block, e.g. paragraph, table cell, tag
+ * @return The resolved direction
+ */
+ getDirection(str: string): BidiDirection {
+ this._lastDir = UnicodeBidi.getDirection(str, this._lastDir);
+ return this._lastDir;
+ }
+
+}
+
+module.exports = UnicodeBidiService;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeCJK.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeCJK.js
new file mode 100644
index 00000000..27d08bd8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeCJK.js
@@ -0,0 +1,172 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @typechecks
+ */
+
+/**
+ * Unicode algorithms for CJK (Chinese, Japanese, Korean) writing systems.
+ *
+ * Utilities for Hanzi/Kanji/Hanja logographs and Kanas (Katakana and Hiragana)
+ * syllables.
+ *
+ * For Korean Hangul see module `UnicodeHangulKorean`.
+ */
+
+'use strict';
+
+/**
+ * Latin
+ *
+ * NOTE: The code assumes these sets include only BMP characters.
+ */
+
+var R_LATIN_ASCII = 'a-zA-Z';
+var R_LATIN_FULLWIDTH = '\uFF21-\uFF3A\uFF41-\uFF5A';
+var R_LATIN = R_LATIN_ASCII + R_LATIN_FULLWIDTH;
+
+/**
+ * Hiragana & Katakana
+ *
+ * NOTE: Some ranges include non-BMP characters. We do not support those ranges
+ * for now.
+ */
+var R_HIRAGANA = '\u3040-\u309F';
+var R_KATAKANA = '\u30A0-\u30FF';
+var R_KATAKANA_PHONETIC = '\u31F0-\u31FF';
+var R_KATAKANA_HALFWIDTH = '\uFF65-\uFF9F';
+// var R_KANA_SUPPLEMENT = '\U0001B000-\U0001B0FF';
+var R_KATAKANA_ALL = R_KATAKANA + R_KATAKANA_PHONETIC + R_KATAKANA_HALFWIDTH;
+var R_KANA = R_HIRAGANA + R_KATAKANA_ALL;
+
+var I_HIRAGANA = [0x3040, 0x309F];
+var I_KATAKANA = [0x30A0, 0x30FF];
+var I_HIRAGANA_TO_KATAKANA = I_KATAKANA[0] - I_HIRAGANA[0];
+
+/**
+ * Hanzi/Kanji/Hanja
+ *
+ * NOTE: Some ranges include non-BMP characters. We do not support those ranges
+ * for now.
+ */
+var R_IDEO_MAIN = '\u4E00-\u9FCF';
+var R_IDEO_EXT_A = '\u3400-\u4DBF';
+// var R_IDEO_EXT_B = '\U00020000-\U0002A6DF';
+// var R_IDEO_EXT_C = '\U0002A700-\U0002B73F';
+// var R_IDEO_EXT_D = '\U0002B740-\U0002B81F';
+var R_IDEO = R_IDEO_MAIN + R_IDEO_EXT_A;
+
+/**
+ * Hangul
+ */
+// var R_HANGUL_JAMO = '\u1100-\u11FF';
+// var R_HANGUL_JAMO_EXT_A = '\uA960-\uA97F';
+// var R_HANGUL_JAMO_EXT_B = '\uD7B0-\uD7FF';
+// var R_HANGUL_COMPATIBILITY = '\u3130-\u318F';
+// var R_HANGUL_COMP_HALFWIDTH = '\uFFA0-\uFFDF';
+var R_HANGUL_SYLLABLES = '\uAC00-\uD7AF';
+
+/**
+ * Globals
+ */
+var R_IDEO_OR_SYLL = R_IDEO + R_KANA + R_HANGUL_SYLLABLES;
+
+var REGEX_IDEO = null;
+var REGEX_KANA = null;
+var REGEX_IDEO_OR_SYLL = null;
+var REGEX_IS_KANA_WITH_TRAILING_LATIN = null;
+
+/**
+ * Whether the string includes any Katakana or Hiragana characters.
+ *
+ * @param {string} str
+ * @return {boolean}
+ */
+function hasKana(str) {
+ REGEX_KANA = REGEX_KANA || new RegExp('[' + R_KANA + ']');
+ return REGEX_KANA.test(str);
+}
+
+/**
+ * Whether the string includes any CJK Ideograph characters.
+ *
+ * @param {string} str
+ * @return {boolean}
+ */
+function hasIdeograph(str) {
+ REGEX_IDEO = REGEX_IDEO || new RegExp('[' + R_IDEO + ']');
+ return REGEX_IDEO.test(str);
+}
+
+/**
+ * Whether the string includes any CJK Ideograph or Syllable characters.
+ *
+ * @param {string} str
+ * @return {boolean}
+ */
+function hasIdeoOrSyll(str) {
+ REGEX_IDEO_OR_SYLL = REGEX_IDEO_OR_SYLL || new RegExp('[' + R_IDEO_OR_SYLL + ']');
+ return REGEX_IDEO_OR_SYLL.test(str);
+}
+
+/**
+ * @param {string} chr
+ * @output {string}
+ */
+function charCodeToKatakana(chr) {
+ var charCode = chr.charCodeAt(0);
+ return String.fromCharCode(charCode < I_HIRAGANA[0] || charCode > I_HIRAGANA[1] ? charCode : charCode + I_HIRAGANA_TO_KATAKANA);
+}
+
+/**
+ * Replace any Hiragana character with the matching Katakana
+ *
+ * @param {string} str
+ * @output {string}
+ */
+function hiraganaToKatakana(str) {
+ if (!hasKana(str)) {
+ return str;
+ }
+ return str.split('').map(charCodeToKatakana).join('');
+}
+
+/**
+ * Whether the string is exactly a sequence of Kana characters followed by one
+ * Latin character.
+ *
+ * @param {string} str
+ * @output {string}
+ */
+function isKanaWithTrailingLatin(str) {
+ REGEX_IS_KANA_WITH_TRAILING_LATIN = REGEX_IS_KANA_WITH_TRAILING_LATIN || new RegExp('^' + '[' + R_KANA + ']+' + '[' + R_LATIN + ']' + '$');
+ return REGEX_IS_KANA_WITH_TRAILING_LATIN.test(str);
+}
+
+/**
+ * Drops the trailing Latin character from a string that is exactly a sequence
+ * of Kana characters followed by one Latin character.
+ *
+ * @param {string} str
+ * @output {string}
+ */
+function kanaRemoveTrailingLatin(str) {
+ if (isKanaWithTrailingLatin(str)) {
+ return str.substr(0, str.length - 1);
+ }
+ return str;
+}
+
+var UnicodeCJK = {
+ hasKana: hasKana,
+ hasIdeograph: hasIdeograph,
+ hasIdeoOrSyll: hasIdeoOrSyll,
+ hiraganaToKatakana: hiraganaToKatakana,
+ isKanaWithTrailingLatin: isKanaWithTrailingLatin,
+ kanaRemoveTrailingLatin: kanaRemoveTrailingLatin
+};
+
+module.exports = UnicodeCJK;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeCJK.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeCJK.js.flow
new file mode 100644
index 00000000..d1b47cac
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeCJK.js.flow
@@ -0,0 +1,173 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule UnicodeCJK
+ * @typechecks
+ */
+
+/**
+ * Unicode algorithms for CJK (Chinese, Japanese, Korean) writing systems.
+ *
+ * Utilities for Hanzi/Kanji/Hanja logographs and Kanas (Katakana and Hiragana)
+ * syllables.
+ *
+ * For Korean Hangul see module `UnicodeHangulKorean`.
+ */
+
+'use strict';
+
+/**
+ * Latin
+ *
+ * NOTE: The code assumes these sets include only BMP characters.
+ */
+
+const R_LATIN_ASCII = 'a-zA-Z';
+const R_LATIN_FULLWIDTH = '\uFF21-\uFF3A\uFF41-\uFF5A';
+const R_LATIN = R_LATIN_ASCII + R_LATIN_FULLWIDTH;
+
+/**
+ * Hiragana & Katakana
+ *
+ * NOTE: Some ranges include non-BMP characters. We do not support those ranges
+ * for now.
+ */
+const R_HIRAGANA = '\u3040-\u309F';
+const R_KATAKANA = '\u30A0-\u30FF';
+const R_KATAKANA_PHONETIC = '\u31F0-\u31FF';
+const R_KATAKANA_HALFWIDTH = '\uFF65-\uFF9F';
+// var R_KANA_SUPPLEMENT = '\U0001B000-\U0001B0FF';
+const R_KATAKANA_ALL = R_KATAKANA + R_KATAKANA_PHONETIC + R_KATAKANA_HALFWIDTH;
+const R_KANA = R_HIRAGANA + R_KATAKANA_ALL;
+
+const I_HIRAGANA = [0x3040, 0x309F];
+const I_KATAKANA = [0x30A0, 0x30FF];
+const I_HIRAGANA_TO_KATAKANA = I_KATAKANA[0] - I_HIRAGANA[0];
+
+/**
+ * Hanzi/Kanji/Hanja
+ *
+ * NOTE: Some ranges include non-BMP characters. We do not support those ranges
+ * for now.
+ */
+const R_IDEO_MAIN = '\u4E00-\u9FCF';
+const R_IDEO_EXT_A = '\u3400-\u4DBF';
+// var R_IDEO_EXT_B = '\U00020000-\U0002A6DF';
+// var R_IDEO_EXT_C = '\U0002A700-\U0002B73F';
+// var R_IDEO_EXT_D = '\U0002B740-\U0002B81F';
+const R_IDEO = R_IDEO_MAIN + R_IDEO_EXT_A;
+
+/**
+ * Hangul
+ */
+// var R_HANGUL_JAMO = '\u1100-\u11FF';
+// var R_HANGUL_JAMO_EXT_A = '\uA960-\uA97F';
+// var R_HANGUL_JAMO_EXT_B = '\uD7B0-\uD7FF';
+// var R_HANGUL_COMPATIBILITY = '\u3130-\u318F';
+// var R_HANGUL_COMP_HALFWIDTH = '\uFFA0-\uFFDF';
+const R_HANGUL_SYLLABLES = '\uAC00-\uD7AF';
+
+/**
+ * Globals
+ */
+const R_IDEO_OR_SYLL = R_IDEO + R_KANA + R_HANGUL_SYLLABLES;
+
+let REGEX_IDEO = null;
+let REGEX_KANA = null;
+let REGEX_IDEO_OR_SYLL = null;
+let REGEX_IS_KANA_WITH_TRAILING_LATIN = null;
+
+/**
+ * Whether the string includes any Katakana or Hiragana characters.
+ *
+ * @param {string} str
+ * @return {boolean}
+ */
+function hasKana(str) {
+ REGEX_KANA = REGEX_KANA || new RegExp('[' + R_KANA + ']');
+ return REGEX_KANA.test(str);
+}
+
+/**
+ * Whether the string includes any CJK Ideograph characters.
+ *
+ * @param {string} str
+ * @return {boolean}
+ */
+function hasIdeograph(str) {
+ REGEX_IDEO = REGEX_IDEO || new RegExp('[' + R_IDEO + ']');
+ return REGEX_IDEO.test(str);
+}
+
+/**
+ * Whether the string includes any CJK Ideograph or Syllable characters.
+ *
+ * @param {string} str
+ * @return {boolean}
+ */
+function hasIdeoOrSyll(str) {
+ REGEX_IDEO_OR_SYLL = REGEX_IDEO_OR_SYLL || new RegExp('[' + R_IDEO_OR_SYLL + ']');
+ return REGEX_IDEO_OR_SYLL.test(str);
+}
+
+/**
+ * @param {string} chr
+ * @output {string}
+ */
+function charCodeToKatakana(chr) {
+ const charCode = chr.charCodeAt(0);
+ return String.fromCharCode(charCode < I_HIRAGANA[0] || charCode > I_HIRAGANA[1] ? charCode : charCode + I_HIRAGANA_TO_KATAKANA);
+}
+
+/**
+ * Replace any Hiragana character with the matching Katakana
+ *
+ * @param {string} str
+ * @output {string}
+ */
+function hiraganaToKatakana(str) {
+ if (!hasKana(str)) {
+ return str;
+ }
+ return str.split('').map(charCodeToKatakana).join('');
+}
+
+/**
+ * Whether the string is exactly a sequence of Kana characters followed by one
+ * Latin character.
+ *
+ * @param {string} str
+ * @output {string}
+ */
+function isKanaWithTrailingLatin(str) {
+ REGEX_IS_KANA_WITH_TRAILING_LATIN = REGEX_IS_KANA_WITH_TRAILING_LATIN || new RegExp('^' + '[' + R_KANA + ']+' + '[' + R_LATIN + ']' + '$');
+ return REGEX_IS_KANA_WITH_TRAILING_LATIN.test(str);
+}
+
+/**
+ * Drops the trailing Latin character from a string that is exactly a sequence
+ * of Kana characters followed by one Latin character.
+ *
+ * @param {string} str
+ * @output {string}
+ */
+function kanaRemoveTrailingLatin(str) {
+ if (isKanaWithTrailingLatin(str)) {
+ return str.substr(0, str.length - 1);
+ }
+ return str;
+}
+
+const UnicodeCJK = {
+ hasKana: hasKana,
+ hasIdeograph: hasIdeograph,
+ hasIdeoOrSyll: hasIdeoOrSyll,
+ hiraganaToKatakana: hiraganaToKatakana,
+ isKanaWithTrailingLatin: isKanaWithTrailingLatin,
+ kanaRemoveTrailingLatin: kanaRemoveTrailingLatin
+};
+
+module.exports = UnicodeCJK;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeHangulKorean.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeHangulKorean.js
new file mode 100644
index 00000000..f67bd3ce
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeHangulKorean.js
@@ -0,0 +1,135 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @typechecks
+ */
+
+/**
+ * Unicode algorithms for Hangul script, the Korean writing system
+ *
+ * Hangul script has three encoded models in Unicode:
+ *
+ * A) Conjoining Jamo (covers modern and historic elements)
+ * * U+1100..U+11FF ; Hangul Jamo
+ * * U+A960..U+A97F ; Hangul Jamo Extended-A
+ * * U+D7B0..U+D7FF ; Hangul Jamo Extended-B
+ *
+ * B) Conjoined Syllables (only covers modern Korean language)
+ * * U+AC00..U+D7AF ; Hangul Syllables
+ *
+ * C) Compatibility Jamo (one code-point for each "shape")
+ * * U+3130..U+318F ; Hangul Compatibility Jamo
+ *
+ * This modules helps you convert characters from one model to another.
+ * Primary functionalities are:
+ *
+ * 1) Convert from any encodings to Conjoining Jamo characters (A),
+ * e.g. for prefix matching
+ *
+ * 2) Convert from any encodings to Syllable characters, when possible (B),
+ * e.g. to reach the normal Unicode form (NFC)
+ */
+
+'use strict';
+
+var HANGUL_COMPATIBILITY_OR_SYLLABLE_REGEX = /[\u3130-\u318F\uAC00-\uD7AF]/;
+
+/**
+ * Returns true if the input includes any Hangul Compatibility Jamo or
+ * Hangul Conjoined Syllable.
+ *
+ * @param {string} str
+ */
+function hasCompatibilityOrSyllable(str) {
+ return HANGUL_COMPATIBILITY_OR_SYLLABLE_REGEX.test(str);
+}
+
+/* Compatibility Jamo -> Conjoining Jamo
+ *
+ * Maps a compatibility character to the Conjoining Jamo character,
+ * positioned at (compatibilityCodePoint - 0x3131).
+ *
+ * Generated by:
+ * $ grep '^31[3-8].;' UnicodeData.txt |\
+ * awk -F';' '{print $6}' | awk '{print " 0x"$2","}'
+ */
+var CMAP = [0x1100, 0x1101, 0x11AA, 0x1102, 0x11AC, 0x11AD, 0x1103, 0x1104, 0x1105, 0x11B0, 0x11B1, 0x11B2, 0x11B3, 0x11B4, 0x11B5, 0x111A, 0x1106, 0x1107, 0x1108, 0x1121, 0x1109, 0x110A, 0x110B, 0x110C, 0x110D, 0x110E, 0x110F, 0x1110, 0x1111, 0x1112, 0x1161, 0x1162, 0x1163, 0x1164, 0x1165, 0x1166, 0x1167, 0x1168, 0x1169, 0x116A, 0x116B, 0x116C, 0x116D, 0x116E, 0x116F, 0x1170, 0x1171, 0x1172, 0x1173, 0x1174, 0x1175, 0x1160, 0x1114, 0x1115, 0x11C7, 0x11C8, 0x11CC, 0x11CE, 0x11D3, 0x11D7, 0x11D9, 0x111C, 0x11DD, 0x11DF, 0x111D, 0x111E, 0x1120, 0x1122, 0x1123, 0x1127, 0x1129, 0x112B, 0x112C, 0x112D, 0x112E, 0x112F, 0x1132, 0x1136, 0x1140, 0x1147, 0x114C, 0x11F1, 0x11F2, 0x1157, 0x1158, 0x1159, 0x1184, 0x1185, 0x1188, 0x1191, 0x1192, 0x1194, 0x119E, 0x11A1];
+
+var CBASE = 0x3131;
+var CCOUNT = CMAP.length;
+var CTOP = CBASE + CCOUNT;
+
+/**
+ * Maps one Hangul Compatibility Jamo code-point to the equivalent Hangul
+ * Conjoining Jamo characters, as defined in UnicodeData.txt.
+ *
+ * @param {number} codePoint One Unicode code-point
+ * @output {string}
+ */
+function fromCompatibility(codePoint) {
+ return String.fromCharCode(CMAP[codePoint - CBASE]);
+}
+
+/**
+ * Conjoined Syllable -> Conjoining Jamo
+ *
+ * Based on the "Hangul Syllable Decomposition" algorithm provided in
+ * 3.12 Conjoining Jamo Behavior, The Unicode Standard, Version 6.3.0.
+ *
+ */
+
+var LBASE = 0x1100;
+var VBASE = 0x1161;
+var TBASE = 0x11A7;
+var SBASE = 0xAC00;
+var LCOUNT = 19;
+var VCOUNT = 21;
+var TCOUNT = 28;
+var NCOUNT = VCOUNT * TCOUNT;
+var SCOUNT = LCOUNT * NCOUNT;
+var STOP = SBASE + SCOUNT;
+
+/**
+ * Maps one Hangul Syllable code-point to the equivalent Hangul
+ * Conjoining Jamo characters, as defined in UnicodeData.txt.
+ *
+ * @param {number} codePoint One Unicode character
+ * @output {string}
+ */
+function decomposeSyllable(codePoint) {
+ var sylSIndex = codePoint - SBASE;
+ var sylTIndex = sylSIndex % TCOUNT;
+ return String.fromCharCode(LBASE + sylSIndex / NCOUNT) + String.fromCharCode(VBASE + sylSIndex % NCOUNT / TCOUNT) + (sylTIndex > 0 ? String.fromCharCode(TBASE + sylTIndex) : '');
+}
+
+/* To Conjoining Jamo */
+
+/**
+ * Return Unicode characters as they are, except for Hangul characters, which
+ * will be converted to the Conjoining Jamo form.
+ *
+ * @param {string} string
+ * @output {string}
+ */
+function toConjoiningJamo(string) {
+ if (!hasCompatibilityOrSyllable(string)) {
+ return string;
+ }
+
+ var result = [];
+ for (var i = 0; i < string.length; i++) {
+ var charStr = string.charAt(i);
+ var codeUnit = charStr.charCodeAt(0);
+ result.push(CBASE <= codeUnit && codeUnit < CTOP ? fromCompatibility(codeUnit) : SBASE <= codeUnit && codeUnit < STOP ? decomposeSyllable(codeUnit) : charStr);
+ }
+ return result.join('');
+}
+
+var UnicodeHangulKorean = {
+ toConjoiningJamo: toConjoiningJamo
+};
+
+module.exports = UnicodeHangulKorean;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeHangulKorean.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeHangulKorean.js.flow
new file mode 100644
index 00000000..d184b580
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeHangulKorean.js.flow
@@ -0,0 +1,136 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule UnicodeHangulKorean
+ * @typechecks
+ */
+
+/**
+ * Unicode algorithms for Hangul script, the Korean writing system
+ *
+ * Hangul script has three encoded models in Unicode:
+ *
+ * A) Conjoining Jamo (covers modern and historic elements)
+ * * U+1100..U+11FF ; Hangul Jamo
+ * * U+A960..U+A97F ; Hangul Jamo Extended-A
+ * * U+D7B0..U+D7FF ; Hangul Jamo Extended-B
+ *
+ * B) Conjoined Syllables (only covers modern Korean language)
+ * * U+AC00..U+D7AF ; Hangul Syllables
+ *
+ * C) Compatibility Jamo (one code-point for each "shape")
+ * * U+3130..U+318F ; Hangul Compatibility Jamo
+ *
+ * This modules helps you convert characters from one model to another.
+ * Primary functionalities are:
+ *
+ * 1) Convert from any encodings to Conjoining Jamo characters (A),
+ * e.g. for prefix matching
+ *
+ * 2) Convert from any encodings to Syllable characters, when possible (B),
+ * e.g. to reach the normal Unicode form (NFC)
+ */
+
+'use strict';
+
+const HANGUL_COMPATIBILITY_OR_SYLLABLE_REGEX = /[\u3130-\u318F\uAC00-\uD7AF]/;
+
+/**
+ * Returns true if the input includes any Hangul Compatibility Jamo or
+ * Hangul Conjoined Syllable.
+ *
+ * @param {string} str
+ */
+function hasCompatibilityOrSyllable(str) {
+ return HANGUL_COMPATIBILITY_OR_SYLLABLE_REGEX.test(str);
+}
+
+/* Compatibility Jamo -> Conjoining Jamo
+ *
+ * Maps a compatibility character to the Conjoining Jamo character,
+ * positioned at (compatibilityCodePoint - 0x3131).
+ *
+ * Generated by:
+ * $ grep '^31[3-8].;' UnicodeData.txt |\
+ * awk -F';' '{print $6}' | awk '{print " 0x"$2","}'
+ */
+const CMAP = [0x1100, 0x1101, 0x11AA, 0x1102, 0x11AC, 0x11AD, 0x1103, 0x1104, 0x1105, 0x11B0, 0x11B1, 0x11B2, 0x11B3, 0x11B4, 0x11B5, 0x111A, 0x1106, 0x1107, 0x1108, 0x1121, 0x1109, 0x110A, 0x110B, 0x110C, 0x110D, 0x110E, 0x110F, 0x1110, 0x1111, 0x1112, 0x1161, 0x1162, 0x1163, 0x1164, 0x1165, 0x1166, 0x1167, 0x1168, 0x1169, 0x116A, 0x116B, 0x116C, 0x116D, 0x116E, 0x116F, 0x1170, 0x1171, 0x1172, 0x1173, 0x1174, 0x1175, 0x1160, 0x1114, 0x1115, 0x11C7, 0x11C8, 0x11CC, 0x11CE, 0x11D3, 0x11D7, 0x11D9, 0x111C, 0x11DD, 0x11DF, 0x111D, 0x111E, 0x1120, 0x1122, 0x1123, 0x1127, 0x1129, 0x112B, 0x112C, 0x112D, 0x112E, 0x112F, 0x1132, 0x1136, 0x1140, 0x1147, 0x114C, 0x11F1, 0x11F2, 0x1157, 0x1158, 0x1159, 0x1184, 0x1185, 0x1188, 0x1191, 0x1192, 0x1194, 0x119E, 0x11A1];
+
+const CBASE = 0x3131;
+const CCOUNT = CMAP.length;
+const CTOP = CBASE + CCOUNT;
+
+/**
+ * Maps one Hangul Compatibility Jamo code-point to the equivalent Hangul
+ * Conjoining Jamo characters, as defined in UnicodeData.txt.
+ *
+ * @param {number} codePoint One Unicode code-point
+ * @output {string}
+ */
+function fromCompatibility(codePoint) {
+ return String.fromCharCode(CMAP[codePoint - CBASE]);
+}
+
+/**
+ * Conjoined Syllable -> Conjoining Jamo
+ *
+ * Based on the "Hangul Syllable Decomposition" algorithm provided in
+ * 3.12 Conjoining Jamo Behavior, The Unicode Standard, Version 6.3.0.
+ *
+ */
+
+const LBASE = 0x1100;
+const VBASE = 0x1161;
+const TBASE = 0x11A7;
+const SBASE = 0xAC00;
+const LCOUNT = 19;
+const VCOUNT = 21;
+const TCOUNT = 28;
+const NCOUNT = VCOUNT * TCOUNT;
+const SCOUNT = LCOUNT * NCOUNT;
+const STOP = SBASE + SCOUNT;
+
+/**
+ * Maps one Hangul Syllable code-point to the equivalent Hangul
+ * Conjoining Jamo characters, as defined in UnicodeData.txt.
+ *
+ * @param {number} codePoint One Unicode character
+ * @output {string}
+ */
+function decomposeSyllable(codePoint) {
+ const sylSIndex = codePoint - SBASE;
+ const sylTIndex = sylSIndex % TCOUNT;
+ return String.fromCharCode(LBASE + sylSIndex / NCOUNT) + String.fromCharCode(VBASE + sylSIndex % NCOUNT / TCOUNT) + (sylTIndex > 0 ? String.fromCharCode(TBASE + sylTIndex) : '');
+}
+
+/* To Conjoining Jamo */
+
+/**
+ * Return Unicode characters as they are, except for Hangul characters, which
+ * will be converted to the Conjoining Jamo form.
+ *
+ * @param {string} string
+ * @output {string}
+ */
+function toConjoiningJamo(string) {
+ if (!hasCompatibilityOrSyllable(string)) {
+ return string;
+ }
+
+ const result = [];
+ for (let i = 0; i < string.length; i++) {
+ const charStr = string.charAt(i);
+ const codeUnit = charStr.charCodeAt(0);
+ result.push(CBASE <= codeUnit && codeUnit < CTOP ? fromCompatibility(codeUnit) : SBASE <= codeUnit && codeUnit < STOP ? decomposeSyllable(codeUnit) : charStr);
+ }
+ return result.join('');
+}
+
+const UnicodeHangulKorean = {
+ toConjoiningJamo: toConjoiningJamo
+};
+
+module.exports = UnicodeHangulKorean;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeUtils.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeUtils.js
new file mode 100644
index 00000000..72bb75d0
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeUtils.js
@@ -0,0 +1,212 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @typechecks
+ */
+
+/**
+ * Unicode-enabled replacesments for basic String functions.
+ *
+ * All the functions in this module assume that the input string is a valid
+ * UTF-16 encoding of a Unicode sequence. If it's not the case, the behavior
+ * will be undefined.
+ *
+ * WARNING: Since this module is typechecks-enforced, you may find new bugs
+ * when replacing normal String functions with ones provided here.
+ */
+
+'use strict';
+
+var invariant = require('./invariant');
+
+// These two ranges are consecutive so anything in [HIGH_START, LOW_END] is a
+// surrogate code unit.
+var SURROGATE_HIGH_START = 0xD800;
+var SURROGATE_HIGH_END = 0xDBFF;
+var SURROGATE_LOW_START = 0xDC00;
+var SURROGATE_LOW_END = 0xDFFF;
+var SURROGATE_UNITS_REGEX = /[\uD800-\uDFFF]/;
+
+/**
+ * @param {number} codeUnit A Unicode code-unit, in range [0, 0x10FFFF]
+ * @return {boolean} Whether code-unit is in a surrogate (hi/low) range
+ */
+function isCodeUnitInSurrogateRange(codeUnit) {
+ return SURROGATE_HIGH_START <= codeUnit && codeUnit <= SURROGATE_LOW_END;
+}
+
+/**
+ * Returns whether the two characters starting at `index` form a surrogate pair.
+ * For example, given the string s = "\uD83D\uDE0A", (s, 0) returns true and
+ * (s, 1) returns false.
+ *
+ * @param {string} str
+ * @param {number} index
+ * @return {boolean}
+ */
+function isSurrogatePair(str, index) {
+ !(0 <= index && index < str.length) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'isSurrogatePair: Invalid index %s for string length %s.', index, str.length) : invariant(false) : void 0;
+ if (index + 1 === str.length) {
+ return false;
+ }
+ var first = str.charCodeAt(index);
+ var second = str.charCodeAt(index + 1);
+ return SURROGATE_HIGH_START <= first && first <= SURROGATE_HIGH_END && SURROGATE_LOW_START <= second && second <= SURROGATE_LOW_END;
+}
+
+/**
+ * @param {string} str Non-empty string
+ * @return {boolean} True if the input includes any surrogate code units
+ */
+function hasSurrogateUnit(str) {
+ return SURROGATE_UNITS_REGEX.test(str);
+}
+
+/**
+ * Return the length of the original Unicode character at given position in the
+ * String by looking into the UTF-16 code unit; that is equal to 1 for any
+ * non-surrogate characters in BMP ([U+0000..U+D7FF] and [U+E000, U+FFFF]); and
+ * returns 2 for the hi/low surrogates ([U+D800..U+DFFF]), which are in fact
+ * representing non-BMP characters ([U+10000..U+10FFFF]).
+ *
+ * Examples:
+ * - '\u0020' => 1
+ * - '\u3020' => 1
+ * - '\uD835' => 2
+ * - '\uD835\uDDEF' => 2
+ * - '\uDDEF' => 2
+ *
+ * @param {string} str Non-empty string
+ * @param {number} pos Position in the string to look for one code unit
+ * @return {number} Number 1 or 2
+ */
+function getUTF16Length(str, pos) {
+ return 1 + isCodeUnitInSurrogateRange(str.charCodeAt(pos));
+}
+
+/**
+ * Fully Unicode-enabled replacement for String#length
+ *
+ * @param {string} str Valid Unicode string
+ * @return {number} The number of Unicode characters in the string
+ */
+function strlen(str) {
+ // Call the native functions if there's no surrogate char
+ if (!hasSurrogateUnit(str)) {
+ return str.length;
+ }
+
+ var len = 0;
+ for (var pos = 0; pos < str.length; pos += getUTF16Length(str, pos)) {
+ len++;
+ }
+ return len;
+}
+
+/**
+ * Fully Unicode-enabled replacement for String#substr()
+ *
+ * @param {string} str Valid Unicode string
+ * @param {number} start Location in Unicode sequence to begin extracting
+ * @param {?number} length The number of Unicode characters to extract
+ * (default: to the end of the string)
+ * @return {string} Extracted sub-string
+ */
+function substr(str, start, length) {
+ start = start || 0;
+ length = length === undefined ? Infinity : length || 0;
+
+ // Call the native functions if there's no surrogate char
+ if (!hasSurrogateUnit(str)) {
+ return str.substr(start, length);
+ }
+
+ // Obvious cases
+ var size = str.length;
+ if (size <= 0 || start > size || length <= 0) {
+ return '';
+ }
+
+ // Find the actual starting position
+ var posA = 0;
+ if (start > 0) {
+ for (; start > 0 && posA < size; start--) {
+ posA += getUTF16Length(str, posA);
+ }
+ if (posA >= size) {
+ return '';
+ }
+ } else if (start < 0) {
+ for (posA = size; start < 0 && 0 < posA; start++) {
+ posA -= getUTF16Length(str, posA - 1);
+ }
+ if (posA < 0) {
+ posA = 0;
+ }
+ }
+
+ // Find the actual ending position
+ var posB = size;
+ if (length < size) {
+ for (posB = posA; length > 0 && posB < size; length--) {
+ posB += getUTF16Length(str, posB);
+ }
+ }
+
+ return str.substring(posA, posB);
+}
+
+/**
+ * Fully Unicode-enabled replacement for String#substring()
+ *
+ * @param {string} str Valid Unicode string
+ * @param {number} start Location in Unicode sequence to begin extracting
+ * @param {?number} end Location in Unicode sequence to end extracting
+ * (default: end of the string)
+ * @return {string} Extracted sub-string
+ */
+function substring(str, start, end) {
+ start = start || 0;
+ end = end === undefined ? Infinity : end || 0;
+
+ if (start < 0) {
+ start = 0;
+ }
+ if (end < 0) {
+ end = 0;
+ }
+
+ var length = Math.abs(end - start);
+ start = start < end ? start : end;
+ return substr(str, start, length);
+}
+
+/**
+ * Get a list of Unicode code-points from a String
+ *
+ * @param {string} str Valid Unicode string
+ * @return {array} A list of code-points in [0..0x10FFFF]
+ */
+function getCodePoints(str) {
+ var codePoints = [];
+ for (var pos = 0; pos < str.length; pos += getUTF16Length(str, pos)) {
+ codePoints.push(str.codePointAt(pos));
+ }
+ return codePoints;
+}
+
+var UnicodeUtils = {
+ getCodePoints: getCodePoints,
+ getUTF16Length: getUTF16Length,
+ hasSurrogateUnit: hasSurrogateUnit,
+ isCodeUnitInSurrogateRange: isCodeUnitInSurrogateRange,
+ isSurrogatePair: isSurrogatePair,
+ strlen: strlen,
+ substring: substring,
+ substr: substr
+};
+
+module.exports = UnicodeUtils;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeUtils.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeUtils.js.flow
new file mode 100644
index 00000000..a0eebbc8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeUtils.js.flow
@@ -0,0 +1,213 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule UnicodeUtils
+ * @typechecks
+ */
+
+/**
+ * Unicode-enabled replacesments for basic String functions.
+ *
+ * All the functions in this module assume that the input string is a valid
+ * UTF-16 encoding of a Unicode sequence. If it's not the case, the behavior
+ * will be undefined.
+ *
+ * WARNING: Since this module is typechecks-enforced, you may find new bugs
+ * when replacing normal String functions with ones provided here.
+ */
+
+'use strict';
+
+const invariant = require('./invariant');
+
+// These two ranges are consecutive so anything in [HIGH_START, LOW_END] is a
+// surrogate code unit.
+const SURROGATE_HIGH_START = 0xD800;
+const SURROGATE_HIGH_END = 0xDBFF;
+const SURROGATE_LOW_START = 0xDC00;
+const SURROGATE_LOW_END = 0xDFFF;
+const SURROGATE_UNITS_REGEX = /[\uD800-\uDFFF]/;
+
+/**
+ * @param {number} codeUnit A Unicode code-unit, in range [0, 0x10FFFF]
+ * @return {boolean} Whether code-unit is in a surrogate (hi/low) range
+ */
+function isCodeUnitInSurrogateRange(codeUnit) {
+ return SURROGATE_HIGH_START <= codeUnit && codeUnit <= SURROGATE_LOW_END;
+}
+
+/**
+ * Returns whether the two characters starting at `index` form a surrogate pair.
+ * For example, given the string s = "\uD83D\uDE0A", (s, 0) returns true and
+ * (s, 1) returns false.
+ *
+ * @param {string} str
+ * @param {number} index
+ * @return {boolean}
+ */
+function isSurrogatePair(str, index) {
+ invariant(0 <= index && index < str.length, 'isSurrogatePair: Invalid index %s for string length %s.', index, str.length);
+ if (index + 1 === str.length) {
+ return false;
+ }
+ const first = str.charCodeAt(index);
+ const second = str.charCodeAt(index + 1);
+ return SURROGATE_HIGH_START <= first && first <= SURROGATE_HIGH_END && SURROGATE_LOW_START <= second && second <= SURROGATE_LOW_END;
+}
+
+/**
+ * @param {string} str Non-empty string
+ * @return {boolean} True if the input includes any surrogate code units
+ */
+function hasSurrogateUnit(str) {
+ return SURROGATE_UNITS_REGEX.test(str);
+}
+
+/**
+ * Return the length of the original Unicode character at given position in the
+ * String by looking into the UTF-16 code unit; that is equal to 1 for any
+ * non-surrogate characters in BMP ([U+0000..U+D7FF] and [U+E000, U+FFFF]); and
+ * returns 2 for the hi/low surrogates ([U+D800..U+DFFF]), which are in fact
+ * representing non-BMP characters ([U+10000..U+10FFFF]).
+ *
+ * Examples:
+ * - '\u0020' => 1
+ * - '\u3020' => 1
+ * - '\uD835' => 2
+ * - '\uD835\uDDEF' => 2
+ * - '\uDDEF' => 2
+ *
+ * @param {string} str Non-empty string
+ * @param {number} pos Position in the string to look for one code unit
+ * @return {number} Number 1 or 2
+ */
+function getUTF16Length(str, pos) {
+ return 1 + isCodeUnitInSurrogateRange(str.charCodeAt(pos));
+}
+
+/**
+ * Fully Unicode-enabled replacement for String#length
+ *
+ * @param {string} str Valid Unicode string
+ * @return {number} The number of Unicode characters in the string
+ */
+function strlen(str) {
+ // Call the native functions if there's no surrogate char
+ if (!hasSurrogateUnit(str)) {
+ return str.length;
+ }
+
+ let len = 0;
+ for (let pos = 0; pos < str.length; pos += getUTF16Length(str, pos)) {
+ len++;
+ }
+ return len;
+}
+
+/**
+ * Fully Unicode-enabled replacement for String#substr()
+ *
+ * @param {string} str Valid Unicode string
+ * @param {number} start Location in Unicode sequence to begin extracting
+ * @param {?number} length The number of Unicode characters to extract
+ * (default: to the end of the string)
+ * @return {string} Extracted sub-string
+ */
+function substr(str, start, length) {
+ start = start || 0;
+ length = length === undefined ? Infinity : length || 0;
+
+ // Call the native functions if there's no surrogate char
+ if (!hasSurrogateUnit(str)) {
+ return str.substr(start, length);
+ }
+
+ // Obvious cases
+ const size = str.length;
+ if (size <= 0 || start > size || length <= 0) {
+ return '';
+ }
+
+ // Find the actual starting position
+ let posA = 0;
+ if (start > 0) {
+ for (; start > 0 && posA < size; start--) {
+ posA += getUTF16Length(str, posA);
+ }
+ if (posA >= size) {
+ return '';
+ }
+ } else if (start < 0) {
+ for (posA = size; start < 0 && 0 < posA; start++) {
+ posA -= getUTF16Length(str, posA - 1);
+ }
+ if (posA < 0) {
+ posA = 0;
+ }
+ }
+
+ // Find the actual ending position
+ let posB = size;
+ if (length < size) {
+ for (posB = posA; length > 0 && posB < size; length--) {
+ posB += getUTF16Length(str, posB);
+ }
+ }
+
+ return str.substring(posA, posB);
+}
+
+/**
+ * Fully Unicode-enabled replacement for String#substring()
+ *
+ * @param {string} str Valid Unicode string
+ * @param {number} start Location in Unicode sequence to begin extracting
+ * @param {?number} end Location in Unicode sequence to end extracting
+ * (default: end of the string)
+ * @return {string} Extracted sub-string
+ */
+function substring(str, start, end) {
+ start = start || 0;
+ end = end === undefined ? Infinity : end || 0;
+
+ if (start < 0) {
+ start = 0;
+ }
+ if (end < 0) {
+ end = 0;
+ }
+
+ const length = Math.abs(end - start);
+ start = start < end ? start : end;
+ return substr(str, start, length);
+}
+
+/**
+ * Get a list of Unicode code-points from a String
+ *
+ * @param {string} str Valid Unicode string
+ * @return {array} A list of code-points in [0..0x10FFFF]
+ */
+function getCodePoints(str) {
+ const codePoints = [];
+ for (let pos = 0; pos < str.length; pos += getUTF16Length(str, pos)) {
+ codePoints.push(str.codePointAt(pos));
+ }
+ return codePoints;
+}
+
+const UnicodeUtils = {
+ getCodePoints: getCodePoints,
+ getUTF16Length: getUTF16Length,
+ hasSurrogateUnit: hasSurrogateUnit,
+ isCodeUnitInSurrogateRange: isCodeUnitInSurrogateRange,
+ isSurrogatePair: isSurrogatePair,
+ strlen: strlen,
+ substring: substring,
+ substr: substr
+};
+
+module.exports = UnicodeUtils;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeUtilsExtra.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeUtilsExtra.js
new file mode 100644
index 00000000..d5fb9444
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeUtilsExtra.js
@@ -0,0 +1,227 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @typechecks
+ */
+
+/**
+ * Unicode-enabled extra utility functions not always needed.
+ */
+
+'use strict';
+
+var UnicodeUtils = require('./UnicodeUtils');
+
+/**
+ * @param {number} codePoint Valid Unicode code-point
+ * @param {number} len Zero-padded minimum width of result
+ * @return {string} A zero-padded hexadecimal string (00XXXX)
+ */
+function zeroPaddedHex(codePoint, len) {
+ var codePointHex = codePoint.toString(16).toUpperCase();
+ var numZeros = Math.max(0, len - codePointHex.length);
+ var result = '';
+ for (var i = 0; i < numZeros; i++) {
+ result += '0';
+ }
+ result += codePointHex;
+ return result;
+}
+
+/**
+ * @param {number} codePoint Valid Unicode code-point
+ * @return {string} A formatted Unicode code-point string
+ * of the format U+XXXX, U+XXXXX, or U+XXXXXX
+ */
+function formatCodePoint(codePoint) {
+ codePoint = codePoint || 0; // NaN --> 0
+ var formatted = '';
+ if (codePoint <= 0xFFFF) {
+ formatted = zeroPaddedHex(codePoint, 4);
+ } else {
+ formatted = codePoint.toString(16).toUpperCase();
+ }
+ return 'U+' + formatted;
+}
+
+/**
+ * Get a list of formatted (string) Unicode code-points from a String
+ *
+ * @param {string} str Valid Unicode string
+ * @return {array} A list of formatted code-point strings
+ */
+function getCodePointsFormatted(str) {
+ var codePoints = UnicodeUtils.getCodePoints(str);
+ return codePoints.map(formatCodePoint);
+}
+
+var specialEscape = {
+ 0x07: '\\a',
+ 0x08: '\\b',
+ 0x0C: '\\f',
+ 0x0A: '\\n',
+ 0x0D: '\\r',
+ 0x09: '\\t',
+ 0x0B: '\\v',
+ 0x22: '\\"',
+ 0x5c: '\\\\'
+};
+
+/**
+ * Returns a double-quoted PHP string with all non-printable and
+ * non-US-ASCII sequences escaped.
+ *
+ * @param {string} str Valid Unicode string
+ * @return {string} Double-quoted string with Unicode sequences escaped
+ */
+function phpEscape(s) {
+ var result = '"';
+ var _iteratorNormalCompletion = true;
+ var _didIteratorError = false;
+ var _iteratorError = undefined;
+
+ try {
+ for (var _iterator = UnicodeUtils.getCodePoints(s)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
+ var cp = _step.value;
+
+ var special = specialEscape[cp];
+ if (special !== undefined) {
+ result += special;
+ } else if (cp >= 0x20 && cp <= 0x7e) {
+ result += String.fromCodePoint(cp);
+ } else if (cp <= 0xFFFF) {
+ result += '\\u{' + zeroPaddedHex(cp, 4) + '}';
+ } else {
+ result += '\\u{' + zeroPaddedHex(cp, 6) + '}';
+ }
+ }
+ } catch (err) {
+ _didIteratorError = true;
+ _iteratorError = err;
+ } finally {
+ try {
+ if (!_iteratorNormalCompletion && _iterator['return']) {
+ _iterator['return']();
+ }
+ } finally {
+ if (_didIteratorError) {
+ throw _iteratorError;
+ }
+ }
+ }
+
+ result += '"';
+ return result;
+}
+
+/**
+ * Returns a double-quoted Java or JavaScript string with all
+ * non-printable and non-US-ASCII sequences escaped.
+ *
+ * @param {string} str Valid Unicode string
+ * @return {string} Double-quoted string with Unicode sequences escaped
+ */
+function jsEscape(s) {
+ var result = '"';
+ for (var i = 0; i < s.length; i++) {
+ var cp = s.charCodeAt(i);
+ var special = specialEscape[cp];
+ if (special !== undefined) {
+ result += special;
+ } else if (cp >= 0x20 && cp <= 0x7e) {
+ result += String.fromCodePoint(cp);
+ } else {
+ result += '\\u' + zeroPaddedHex(cp, 4);
+ }
+ }
+ result += '"';
+ return result;
+}
+
+function c11Escape(s) {
+ var result = '';
+ var _iteratorNormalCompletion2 = true;
+ var _didIteratorError2 = false;
+ var _iteratorError2 = undefined;
+
+ try {
+ for (var _iterator2 = UnicodeUtils.getCodePoints(s)[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
+ var cp = _step2.value;
+
+ var special = specialEscape[cp];
+ if (special !== undefined) {
+ result += special;
+ } else if (cp >= 0x20 && cp <= 0x7e) {
+ result += String.fromCodePoint(cp);
+ } else if (cp <= 0xFFFF) {
+ result += '\\u' + zeroPaddedHex(cp, 4);
+ } else {
+ result += '\\U' + zeroPaddedHex(cp, 8);
+ }
+ }
+ } catch (err) {
+ _didIteratorError2 = true;
+ _iteratorError2 = err;
+ } finally {
+ try {
+ if (!_iteratorNormalCompletion2 && _iterator2['return']) {
+ _iterator2['return']();
+ }
+ } finally {
+ if (_didIteratorError2) {
+ throw _iteratorError2;
+ }
+ }
+ }
+
+ return result;
+}
+
+/**
+ * Returns a double-quoted C string with all non-printable and
+ * non-US-ASCII sequences escaped.
+ *
+ * @param {string} str Valid Unicode string
+ * @return {string} Double-quoted string with Unicode sequences escaped
+ */
+function cEscape(s) {
+ return 'u8"' + c11Escape(s) + '"';
+}
+
+/**
+ * Returns a double-quoted Objective-C string with all non-printable
+ * and non-US-ASCII sequences escaped.
+ *
+ * @param {string} str Valid Unicode string
+ * @return {string} Double-quoted string with Unicode sequences escaped
+ */
+function objcEscape(s) {
+ return '@"' + c11Escape(s) + '"';
+}
+
+/**
+ * Returns a double-quoted Python string with all non-printable
+ * and non-US-ASCII sequences escaped.
+ *
+ * @param {string} str Valid Unicode string
+ * @return {string} Double-quoted string with Unicode sequences escaped
+ */
+function pyEscape(s) {
+ return 'u"' + c11Escape(s) + '"';
+}
+
+var UnicodeUtilsExtra = {
+ formatCodePoint: formatCodePoint,
+ getCodePointsFormatted: getCodePointsFormatted,
+ zeroPaddedHex: zeroPaddedHex,
+ phpEscape: phpEscape,
+ jsEscape: jsEscape,
+ cEscape: cEscape,
+ objcEscape: objcEscape,
+ pyEscape: pyEscape
+};
+
+module.exports = UnicodeUtilsExtra;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeUtilsExtra.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeUtilsExtra.js.flow
new file mode 100644
index 00000000..dc3ecb70
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UnicodeUtilsExtra.js.flow
@@ -0,0 +1,184 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule UnicodeUtilsExtra
+ * @typechecks
+ */
+
+/**
+ * Unicode-enabled extra utility functions not always needed.
+ */
+
+'use strict';
+
+const UnicodeUtils = require('./UnicodeUtils');
+
+/**
+ * @param {number} codePoint Valid Unicode code-point
+ * @param {number} len Zero-padded minimum width of result
+ * @return {string} A zero-padded hexadecimal string (00XXXX)
+ */
+function zeroPaddedHex(codePoint, len) {
+ let codePointHex = codePoint.toString(16).toUpperCase();
+ let numZeros = Math.max(0, len - codePointHex.length);
+ var result = '';
+ for (var i = 0; i < numZeros; i++) {
+ result += '0';
+ }
+ result += codePointHex;
+ return result;
+}
+
+/**
+ * @param {number} codePoint Valid Unicode code-point
+ * @return {string} A formatted Unicode code-point string
+ * of the format U+XXXX, U+XXXXX, or U+XXXXXX
+ */
+function formatCodePoint(codePoint) {
+ codePoint = codePoint || 0; // NaN --> 0
+ var formatted = '';
+ if (codePoint <= 0xFFFF) {
+ formatted = zeroPaddedHex(codePoint, 4);
+ } else {
+ formatted = codePoint.toString(16).toUpperCase();
+ }
+ return 'U+' + formatted;
+}
+
+/**
+ * Get a list of formatted (string) Unicode code-points from a String
+ *
+ * @param {string} str Valid Unicode string
+ * @return {array} A list of formatted code-point strings
+ */
+function getCodePointsFormatted(str) {
+ const codePoints = UnicodeUtils.getCodePoints(str);
+ return codePoints.map(formatCodePoint);
+}
+
+const specialEscape = {
+ 0x07: '\\a',
+ 0x08: '\\b',
+ 0x0C: '\\f',
+ 0x0A: '\\n',
+ 0x0D: '\\r',
+ 0x09: '\\t',
+ 0x0B: '\\v',
+ 0x22: '\\"',
+ 0x5c: '\\\\'
+};
+
+/**
+ * Returns a double-quoted PHP string with all non-printable and
+ * non-US-ASCII sequences escaped.
+ *
+ * @param {string} str Valid Unicode string
+ * @return {string} Double-quoted string with Unicode sequences escaped
+ */
+function phpEscape(s) {
+ var result = '"';
+ for (let cp of UnicodeUtils.getCodePoints(s)) {
+ let special = specialEscape[cp];
+ if (special !== undefined) {
+ result += special;
+ } else if (cp >= 0x20 && cp <= 0x7e) {
+ result += String.fromCodePoint(cp);
+ } else if (cp <= 0xFFFF) {
+ result += '\\u{' + zeroPaddedHex(cp, 4) + '}';
+ } else {
+ result += '\\u{' + zeroPaddedHex(cp, 6) + '}';
+ }
+ }
+ result += '"';
+ return result;
+}
+
+/**
+ * Returns a double-quoted Java or JavaScript string with all
+ * non-printable and non-US-ASCII sequences escaped.
+ *
+ * @param {string} str Valid Unicode string
+ * @return {string} Double-quoted string with Unicode sequences escaped
+ */
+function jsEscape(s) {
+ var result = '"';
+ for (var i = 0; i < s.length; i++) {
+ let cp = s.charCodeAt(i);
+ let special = specialEscape[cp];
+ if (special !== undefined) {
+ result += special;
+ } else if (cp >= 0x20 && cp <= 0x7e) {
+ result += String.fromCodePoint(cp);
+ } else {
+ result += '\\u' + zeroPaddedHex(cp, 4);
+ }
+ }
+ result += '"';
+ return result;
+}
+
+function c11Escape(s) {
+ var result = '';
+ for (let cp of UnicodeUtils.getCodePoints(s)) {
+ let special = specialEscape[cp];
+ if (special !== undefined) {
+ result += special;
+ } else if (cp >= 0x20 && cp <= 0x7e) {
+ result += String.fromCodePoint(cp);
+ } else if (cp <= 0xFFFF) {
+ result += '\\u' + zeroPaddedHex(cp, 4);
+ } else {
+ result += '\\U' + zeroPaddedHex(cp, 8);
+ }
+ }
+ return result;
+}
+
+/**
+ * Returns a double-quoted C string with all non-printable and
+ * non-US-ASCII sequences escaped.
+ *
+ * @param {string} str Valid Unicode string
+ * @return {string} Double-quoted string with Unicode sequences escaped
+ */
+function cEscape(s) {
+ return 'u8"' + c11Escape(s) + '"';
+}
+
+/**
+ * Returns a double-quoted Objective-C string with all non-printable
+ * and non-US-ASCII sequences escaped.
+ *
+ * @param {string} str Valid Unicode string
+ * @return {string} Double-quoted string with Unicode sequences escaped
+ */
+function objcEscape(s) {
+ return '@"' + c11Escape(s) + '"';
+}
+
+/**
+ * Returns a double-quoted Python string with all non-printable
+ * and non-US-ASCII sequences escaped.
+ *
+ * @param {string} str Valid Unicode string
+ * @return {string} Double-quoted string with Unicode sequences escaped
+ */
+function pyEscape(s) {
+ return 'u"' + c11Escape(s) + '"';
+}
+
+const UnicodeUtilsExtra = {
+ formatCodePoint: formatCodePoint,
+ getCodePointsFormatted: getCodePointsFormatted,
+ zeroPaddedHex: zeroPaddedHex,
+ phpEscape: phpEscape,
+ jsEscape: jsEscape,
+ cEscape: cEscape,
+ objcEscape: objcEscape,
+ pyEscape: pyEscape
+};
+
+module.exports = UnicodeUtilsExtra;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UserAgent.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UserAgent.js
new file mode 100644
index 00000000..24030781
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UserAgent.js
@@ -0,0 +1,239 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ */
+
+'use strict';
+
+var UserAgentData = require('./UserAgentData');
+var VersionRange = require('./VersionRange');
+
+var mapObject = require('./mapObject');
+var memoizeStringOnly = require('./memoizeStringOnly');
+
+/**
+ * Checks to see whether `name` and `version` satisfy `query`.
+ *
+ * @param {string} name Name of the browser, device, engine or platform
+ * @param {?string} version Version of the browser, engine or platform
+ * @param {string} query Query of form "Name [range expression]"
+ * @param {?function} normalizer Optional pre-processor for range expression
+ * @return {boolean}
+ */
+function compare(name, version, query, normalizer) {
+ // check for exact match with no version
+ if (name === query) {
+ return true;
+ }
+
+ // check for non-matching names
+ if (!query.startsWith(name)) {
+ return false;
+ }
+
+ // full comparison with version
+ var range = query.slice(name.length);
+ if (version) {
+ range = normalizer ? normalizer(range) : range;
+ return VersionRange.contains(range, version);
+ }
+
+ return false;
+}
+
+/**
+ * Normalizes `version` by stripping any "NT" prefix, but only on the Windows
+ * platform.
+ *
+ * Mimics the stripping performed by the `UserAgentWindowsPlatform` PHP class.
+ *
+ * @param {string} version
+ * @return {string}
+ */
+function normalizePlatformVersion(version) {
+ if (UserAgentData.platformName === 'Windows') {
+ return version.replace(/^\s*NT/, '');
+ }
+
+ return version;
+}
+
+/**
+ * Provides client-side access to the authoritative PHP-generated User Agent
+ * information supplied by the server.
+ */
+var UserAgent = {
+ /**
+ * Check if the User Agent browser matches `query`.
+ *
+ * `query` should be a string like "Chrome" or "Chrome > 33".
+ *
+ * Valid browser names include:
+ *
+ * - ACCESS NetFront
+ * - AOL
+ * - Amazon Silk
+ * - Android
+ * - BlackBerry
+ * - BlackBerry PlayBook
+ * - Chrome
+ * - Chrome for iOS
+ * - Chrome frame
+ * - Facebook PHP SDK
+ * - Facebook for iOS
+ * - Firefox
+ * - IE
+ * - IE Mobile
+ * - Mobile Safari
+ * - Motorola Internet Browser
+ * - Nokia
+ * - Openwave Mobile Browser
+ * - Opera
+ * - Opera Mini
+ * - Opera Mobile
+ * - Safari
+ * - UIWebView
+ * - Unknown
+ * - webOS
+ * - etc...
+ *
+ * An authoritative list can be found in the PHP `BrowserDetector` class and
+ * related classes in the same file (see calls to `new UserAgentBrowser` here:
+ * https://fburl.com/50728104).
+ *
+ * @note Function results are memoized
+ *
+ * @param {string} query Query of the form "Name [range expression]"
+ * @return {boolean}
+ */
+ isBrowser: function isBrowser(query) {
+ return compare(UserAgentData.browserName, UserAgentData.browserFullVersion, query);
+ },
+
+
+ /**
+ * Check if the User Agent browser uses a 32 or 64 bit architecture.
+ *
+ * @note Function results are memoized
+ *
+ * @param {string} query Query of the form "32" or "64".
+ * @return {boolean}
+ */
+ isBrowserArchitecture: function isBrowserArchitecture(query) {
+ return compare(UserAgentData.browserArchitecture, null, query);
+ },
+
+
+ /**
+ * Check if the User Agent device matches `query`.
+ *
+ * `query` should be a string like "iPhone" or "iPad".
+ *
+ * Valid device names include:
+ *
+ * - Kindle
+ * - Kindle Fire
+ * - Unknown
+ * - iPad
+ * - iPhone
+ * - iPod
+ * - etc...
+ *
+ * An authoritative list can be found in the PHP `DeviceDetector` class and
+ * related classes in the same file (see calls to `new UserAgentDevice` here:
+ * https://fburl.com/50728332).
+ *
+ * @note Function results are memoized
+ *
+ * @param {string} query Query of the form "Name"
+ * @return {boolean}
+ */
+ isDevice: function isDevice(query) {
+ return compare(UserAgentData.deviceName, null, query);
+ },
+
+
+ /**
+ * Check if the User Agent rendering engine matches `query`.
+ *
+ * `query` should be a string like "WebKit" or "WebKit >= 537".
+ *
+ * Valid engine names include:
+ *
+ * - Gecko
+ * - Presto
+ * - Trident
+ * - WebKit
+ * - etc...
+ *
+ * An authoritative list can be found in the PHP `RenderingEngineDetector`
+ * class related classes in the same file (see calls to `new
+ * UserAgentRenderingEngine` here: https://fburl.com/50728617).
+ *
+ * @note Function results are memoized
+ *
+ * @param {string} query Query of the form "Name [range expression]"
+ * @return {boolean}
+ */
+ isEngine: function isEngine(query) {
+ return compare(UserAgentData.engineName, UserAgentData.engineVersion, query);
+ },
+
+
+ /**
+ * Check if the User Agent platform matches `query`.
+ *
+ * `query` should be a string like "Windows" or "iOS 5 - 6".
+ *
+ * Valid platform names include:
+ *
+ * - Android
+ * - BlackBerry OS
+ * - Java ME
+ * - Linux
+ * - Mac OS X
+ * - Mac OS X Calendar
+ * - Mac OS X Internet Account
+ * - Symbian
+ * - SymbianOS
+ * - Windows
+ * - Windows Mobile
+ * - Windows Phone
+ * - iOS
+ * - iOS Facebook Integration Account
+ * - iOS Facebook Social Sharing UI
+ * - webOS
+ * - Chrome OS
+ * - etc...
+ *
+ * An authoritative list can be found in the PHP `PlatformDetector` class and
+ * related classes in the same file (see calls to `new UserAgentPlatform`
+ * here: https://fburl.com/50729226).
+ *
+ * @note Function results are memoized
+ *
+ * @param {string} query Query of the form "Name [range expression]"
+ * @return {boolean}
+ */
+ isPlatform: function isPlatform(query) {
+ return compare(UserAgentData.platformName, UserAgentData.platformFullVersion, query, normalizePlatformVersion);
+ },
+
+
+ /**
+ * Check if the User Agent platform is a 32 or 64 bit architecture.
+ *
+ * @note Function results are memoized
+ *
+ * @param {string} query Query of the form "32" or "64".
+ * @return {boolean}
+ */
+ isPlatformArchitecture: function isPlatformArchitecture(query) {
+ return compare(UserAgentData.platformArchitecture, null, query);
+ }
+};
+
+module.exports = mapObject(UserAgent, memoizeStringOnly);
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UserAgent.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UserAgent.js.flow
new file mode 100644
index 00000000..61ec1286
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UserAgent.js.flow
@@ -0,0 +1,236 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule UserAgent
+ */
+
+'use strict';
+
+const UserAgentData = require('./UserAgentData');
+const VersionRange = require('./VersionRange');
+
+const mapObject = require('./mapObject');
+const memoizeStringOnly = require('./memoizeStringOnly');
+
+/**
+ * Checks to see whether `name` and `version` satisfy `query`.
+ *
+ * @param {string} name Name of the browser, device, engine or platform
+ * @param {?string} version Version of the browser, engine or platform
+ * @param {string} query Query of form "Name [range expression]"
+ * @param {?function} normalizer Optional pre-processor for range expression
+ * @return {boolean}
+ */
+function compare(name, version, query, normalizer) {
+ // check for exact match with no version
+ if (name === query) {
+ return true;
+ }
+
+ // check for non-matching names
+ if (!query.startsWith(name)) {
+ return false;
+ }
+
+ // full comparison with version
+ let range = query.slice(name.length);
+ if (version) {
+ range = normalizer ? normalizer(range) : range;
+ return VersionRange.contains(range, version);
+ }
+
+ return false;
+}
+
+/**
+ * Normalizes `version` by stripping any "NT" prefix, but only on the Windows
+ * platform.
+ *
+ * Mimics the stripping performed by the `UserAgentWindowsPlatform` PHP class.
+ *
+ * @param {string} version
+ * @return {string}
+ */
+function normalizePlatformVersion(version) {
+ if (UserAgentData.platformName === 'Windows') {
+ return version.replace(/^\s*NT/, '');
+ }
+
+ return version;
+}
+
+/**
+ * Provides client-side access to the authoritative PHP-generated User Agent
+ * information supplied by the server.
+ */
+const UserAgent = {
+ /**
+ * Check if the User Agent browser matches `query`.
+ *
+ * `query` should be a string like "Chrome" or "Chrome > 33".
+ *
+ * Valid browser names include:
+ *
+ * - ACCESS NetFront
+ * - AOL
+ * - Amazon Silk
+ * - Android
+ * - BlackBerry
+ * - BlackBerry PlayBook
+ * - Chrome
+ * - Chrome for iOS
+ * - Chrome frame
+ * - Facebook PHP SDK
+ * - Facebook for iOS
+ * - Firefox
+ * - IE
+ * - IE Mobile
+ * - Mobile Safari
+ * - Motorola Internet Browser
+ * - Nokia
+ * - Openwave Mobile Browser
+ * - Opera
+ * - Opera Mini
+ * - Opera Mobile
+ * - Safari
+ * - UIWebView
+ * - Unknown
+ * - webOS
+ * - etc...
+ *
+ * An authoritative list can be found in the PHP `BrowserDetector` class and
+ * related classes in the same file (see calls to `new UserAgentBrowser` here:
+ * https://fburl.com/50728104).
+ *
+ * @note Function results are memoized
+ *
+ * @param {string} query Query of the form "Name [range expression]"
+ * @return {boolean}
+ */
+ isBrowser(query) {
+ return compare(UserAgentData.browserName, UserAgentData.browserFullVersion, query);
+ },
+
+ /**
+ * Check if the User Agent browser uses a 32 or 64 bit architecture.
+ *
+ * @note Function results are memoized
+ *
+ * @param {string} query Query of the form "32" or "64".
+ * @return {boolean}
+ */
+ isBrowserArchitecture(query) {
+ return compare(UserAgentData.browserArchitecture, null, query);
+ },
+
+ /**
+ * Check if the User Agent device matches `query`.
+ *
+ * `query` should be a string like "iPhone" or "iPad".
+ *
+ * Valid device names include:
+ *
+ * - Kindle
+ * - Kindle Fire
+ * - Unknown
+ * - iPad
+ * - iPhone
+ * - iPod
+ * - etc...
+ *
+ * An authoritative list can be found in the PHP `DeviceDetector` class and
+ * related classes in the same file (see calls to `new UserAgentDevice` here:
+ * https://fburl.com/50728332).
+ *
+ * @note Function results are memoized
+ *
+ * @param {string} query Query of the form "Name"
+ * @return {boolean}
+ */
+ isDevice(query) {
+ return compare(UserAgentData.deviceName, null, query);
+ },
+
+ /**
+ * Check if the User Agent rendering engine matches `query`.
+ *
+ * `query` should be a string like "WebKit" or "WebKit >= 537".
+ *
+ * Valid engine names include:
+ *
+ * - Gecko
+ * - Presto
+ * - Trident
+ * - WebKit
+ * - etc...
+ *
+ * An authoritative list can be found in the PHP `RenderingEngineDetector`
+ * class related classes in the same file (see calls to `new
+ * UserAgentRenderingEngine` here: https://fburl.com/50728617).
+ *
+ * @note Function results are memoized
+ *
+ * @param {string} query Query of the form "Name [range expression]"
+ * @return {boolean}
+ */
+ isEngine(query) {
+ return compare(UserAgentData.engineName, UserAgentData.engineVersion, query);
+ },
+
+ /**
+ * Check if the User Agent platform matches `query`.
+ *
+ * `query` should be a string like "Windows" or "iOS 5 - 6".
+ *
+ * Valid platform names include:
+ *
+ * - Android
+ * - BlackBerry OS
+ * - Java ME
+ * - Linux
+ * - Mac OS X
+ * - Mac OS X Calendar
+ * - Mac OS X Internet Account
+ * - Symbian
+ * - SymbianOS
+ * - Windows
+ * - Windows Mobile
+ * - Windows Phone
+ * - iOS
+ * - iOS Facebook Integration Account
+ * - iOS Facebook Social Sharing UI
+ * - webOS
+ * - Chrome OS
+ * - etc...
+ *
+ * An authoritative list can be found in the PHP `PlatformDetector` class and
+ * related classes in the same file (see calls to `new UserAgentPlatform`
+ * here: https://fburl.com/50729226).
+ *
+ * @note Function results are memoized
+ *
+ * @param {string} query Query of the form "Name [range expression]"
+ * @return {boolean}
+ */
+ isPlatform(query) {
+ return compare(UserAgentData.platformName, UserAgentData.platformFullVersion, query, normalizePlatformVersion);
+ },
+
+ /**
+ * Check if the User Agent platform is a 32 or 64 bit architecture.
+ *
+ * @note Function results are memoized
+ *
+ * @param {string} query Query of the form "32" or "64".
+ * @return {boolean}
+ */
+ isPlatformArchitecture(query) {
+ return compare(UserAgentData.platformArchitecture, null, query);
+ }
+
+};
+
+module.exports = mapObject(UserAgent, memoizeStringOnly);
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UserAgentData.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UserAgentData.js
new file mode 100644
index 00000000..928fbe3d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UserAgentData.js
@@ -0,0 +1,80 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ */
+
+/**
+ * Usage note:
+ * This module makes a best effort to export the same data we would internally.
+ * At Facebook we use a server-generated module that does the parsing and
+ * exports the data for the client to use. We can't rely on a server-side
+ * implementation in open source so instead we make use of an open source
+ * library to do the heavy lifting and then make some adjustments as necessary.
+ * It's likely there will be some differences. Some we can smooth over.
+ * Others are going to be harder.
+ */
+
+'use strict';
+
+var UAParser = require('ua-parser-js');
+
+var UNKNOWN = 'Unknown';
+
+var PLATFORM_MAP = {
+ 'Mac OS': 'Mac OS X'
+};
+
+/**
+ * Convert from UAParser platform name to what we expect.
+ */
+function convertPlatformName(name) {
+ return PLATFORM_MAP[name] || name;
+}
+
+/**
+ * Get the version number in parts. This is very naive. We actually get major
+ * version as a part of UAParser already, which is generally good enough, but
+ * let's get the minor just in case.
+ */
+function getBrowserVersion(version) {
+ if (!version) {
+ return {
+ major: '',
+ minor: ''
+ };
+ }
+ var parts = version.split('.');
+ return {
+ major: parts[0],
+ minor: parts[1]
+ };
+}
+
+/**
+ * Get the UA data fom UAParser and then convert it to the format we're
+ * expecting for our APIS.
+ */
+var parser = new UAParser();
+var results = parser.getResult();
+
+// Do some conversion first.
+var browserVersionData = getBrowserVersion(results.browser.version);
+var uaData = {
+ browserArchitecture: results.cpu.architecture || UNKNOWN,
+ browserFullVersion: results.browser.version || UNKNOWN,
+ browserMinorVersion: browserVersionData.minor || UNKNOWN,
+ browserName: results.browser.name || UNKNOWN,
+ browserVersion: results.browser.major || UNKNOWN,
+ deviceName: results.device.model || UNKNOWN,
+ engineName: results.engine.name || UNKNOWN,
+ engineVersion: results.engine.version || UNKNOWN,
+ platformArchitecture: results.cpu.architecture || UNKNOWN,
+ platformName: convertPlatformName(results.os.name) || UNKNOWN,
+ platformVersion: results.os.version || UNKNOWN,
+ platformFullVersion: results.os.version || UNKNOWN
+};
+
+module.exports = uaData;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UserAgentData.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UserAgentData.js.flow
new file mode 100644
index 00000000..bc2e027c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/UserAgentData.js.flow
@@ -0,0 +1,81 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule UserAgentData
+ */
+
+/**
+ * Usage note:
+ * This module makes a best effort to export the same data we would internally.
+ * At Facebook we use a server-generated module that does the parsing and
+ * exports the data for the client to use. We can't rely on a server-side
+ * implementation in open source so instead we make use of an open source
+ * library to do the heavy lifting and then make some adjustments as necessary.
+ * It's likely there will be some differences. Some we can smooth over.
+ * Others are going to be harder.
+ */
+
+'use strict';
+
+var UAParser = require('ua-parser-js');
+
+var UNKNOWN = 'Unknown';
+
+var PLATFORM_MAP = {
+ 'Mac OS': 'Mac OS X'
+};
+
+/**
+ * Convert from UAParser platform name to what we expect.
+ */
+function convertPlatformName(name) {
+ return PLATFORM_MAP[name] || name;
+}
+
+/**
+ * Get the version number in parts. This is very naive. We actually get major
+ * version as a part of UAParser already, which is generally good enough, but
+ * let's get the minor just in case.
+ */
+function getBrowserVersion(version) {
+ if (!version) {
+ return {
+ major: '',
+ minor: ''
+ };
+ }
+ var parts = version.split('.');
+ return {
+ major: parts[0],
+ minor: parts[1]
+ };
+}
+
+/**
+ * Get the UA data fom UAParser and then convert it to the format we're
+ * expecting for our APIS.
+ */
+var parser = new UAParser();
+var results = parser.getResult();
+
+// Do some conversion first.
+var browserVersionData = getBrowserVersion(results.browser.version);
+var uaData = {
+ browserArchitecture: results.cpu.architecture || UNKNOWN,
+ browserFullVersion: results.browser.version || UNKNOWN,
+ browserMinorVersion: browserVersionData.minor || UNKNOWN,
+ browserName: results.browser.name || UNKNOWN,
+ browserVersion: results.browser.major || UNKNOWN,
+ deviceName: results.device.model || UNKNOWN,
+ engineName: results.engine.name || UNKNOWN,
+ engineVersion: results.engine.version || UNKNOWN,
+ platformArchitecture: results.cpu.architecture || UNKNOWN,
+ platformName: convertPlatformName(results.os.name) || UNKNOWN,
+ platformVersion: results.os.version || UNKNOWN,
+ platformFullVersion: results.os.version || UNKNOWN
+};
+
+module.exports = uaData;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/VersionRange.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/VersionRange.js
new file mode 100644
index 00000000..93e3e53d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/VersionRange.js
@@ -0,0 +1,380 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ */
+
+'use strict';
+
+var invariant = require('./invariant');
+
+var componentRegex = /\./;
+var orRegex = /\|\|/;
+var rangeRegex = /\s+\-\s+/;
+var modifierRegex = /^(<=|<|=|>=|~>|~|>|)?\s*(.+)/;
+var numericRegex = /^(\d*)(.*)/;
+
+/**
+ * Splits input `range` on "||" and returns true if any subrange matches
+ * `version`.
+ *
+ * @param {string} range
+ * @param {string} version
+ * @returns {boolean}
+ */
+function checkOrExpression(range, version) {
+ var expressions = range.split(orRegex);
+
+ if (expressions.length > 1) {
+ return expressions.some(function (range) {
+ return VersionRange.contains(range, version);
+ });
+ } else {
+ range = expressions[0].trim();
+ return checkRangeExpression(range, version);
+ }
+}
+
+/**
+ * Splits input `range` on " - " (the surrounding whitespace is required) and
+ * returns true if version falls between the two operands.
+ *
+ * @param {string} range
+ * @param {string} version
+ * @returns {boolean}
+ */
+function checkRangeExpression(range, version) {
+ var expressions = range.split(rangeRegex);
+
+ !(expressions.length > 0 && expressions.length <= 2) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'the "-" operator expects exactly 2 operands') : invariant(false) : void 0;
+
+ if (expressions.length === 1) {
+ return checkSimpleExpression(expressions[0], version);
+ } else {
+ var startVersion = expressions[0],
+ endVersion = expressions[1];
+
+ !(isSimpleVersion(startVersion) && isSimpleVersion(endVersion)) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'operands to the "-" operator must be simple (no modifiers)') : invariant(false) : void 0;
+
+ return checkSimpleExpression('>=' + startVersion, version) && checkSimpleExpression('<=' + endVersion, version);
+ }
+}
+
+/**
+ * Checks if `range` matches `version`. `range` should be a "simple" range (ie.
+ * not a compound range using the " - " or "||" operators).
+ *
+ * @param {string} range
+ * @param {string} version
+ * @returns {boolean}
+ */
+function checkSimpleExpression(range, version) {
+ range = range.trim();
+ if (range === '') {
+ return true;
+ }
+
+ var versionComponents = version.split(componentRegex);
+
+ var _getModifierAndCompon = getModifierAndComponents(range),
+ modifier = _getModifierAndCompon.modifier,
+ rangeComponents = _getModifierAndCompon.rangeComponents;
+
+ switch (modifier) {
+ case '<':
+ return checkLessThan(versionComponents, rangeComponents);
+ case '<=':
+ return checkLessThanOrEqual(versionComponents, rangeComponents);
+ case '>=':
+ return checkGreaterThanOrEqual(versionComponents, rangeComponents);
+ case '>':
+ return checkGreaterThan(versionComponents, rangeComponents);
+ case '~':
+ case '~>':
+ return checkApproximateVersion(versionComponents, rangeComponents);
+ default:
+ return checkEqual(versionComponents, rangeComponents);
+ }
+}
+
+/**
+ * Checks whether `a` is less than `b`.
+ *
+ * @param {array} a
+ * @param {array} b
+ * @returns {boolean}
+ */
+function checkLessThan(a, b) {
+ return compareComponents(a, b) === -1;
+}
+
+/**
+ * Checks whether `a` is less than or equal to `b`.
+ *
+ * @param {array} a
+ * @param {array} b
+ * @returns {boolean}
+ */
+function checkLessThanOrEqual(a, b) {
+ var result = compareComponents(a, b);
+ return result === -1 || result === 0;
+}
+
+/**
+ * Checks whether `a` is equal to `b`.
+ *
+ * @param {array} a
+ * @param {array} b
+ * @returns {boolean}
+ */
+function checkEqual(a, b) {
+ return compareComponents(a, b) === 0;
+}
+
+/**
+ * Checks whether `a` is greater than or equal to `b`.
+ *
+ * @param {array} a
+ * @param {array} b
+ * @returns {boolean}
+ */
+function checkGreaterThanOrEqual(a, b) {
+ var result = compareComponents(a, b);
+ return result === 1 || result === 0;
+}
+
+/**
+ * Checks whether `a` is greater than `b`.
+ *
+ * @param {array} a
+ * @param {array} b
+ * @returns {boolean}
+ */
+function checkGreaterThan(a, b) {
+ return compareComponents(a, b) === 1;
+}
+
+/**
+ * Checks whether `a` is "reasonably close" to `b` (as described in
+ * https://www.npmjs.org/doc/misc/semver.html). For example, if `b` is "1.3.1"
+ * then "reasonably close" is defined as ">= 1.3.1 and < 1.4".
+ *
+ * @param {array} a
+ * @param {array} b
+ * @returns {boolean}
+ */
+function checkApproximateVersion(a, b) {
+ var lowerBound = b.slice();
+ var upperBound = b.slice();
+
+ if (upperBound.length > 1) {
+ upperBound.pop();
+ }
+ var lastIndex = upperBound.length - 1;
+ var numeric = parseInt(upperBound[lastIndex], 10);
+ if (isNumber(numeric)) {
+ upperBound[lastIndex] = numeric + 1 + '';
+ }
+
+ return checkGreaterThanOrEqual(a, lowerBound) && checkLessThan(a, upperBound);
+}
+
+/**
+ * Extracts the optional modifier (<, <=, =, >=, >, ~, ~>) and version
+ * components from `range`.
+ *
+ * For example, given `range` ">= 1.2.3" returns an object with a `modifier` of
+ * `">="` and `components` of `[1, 2, 3]`.
+ *
+ * @param {string} range
+ * @returns {object}
+ */
+function getModifierAndComponents(range) {
+ var rangeComponents = range.split(componentRegex);
+ var matches = rangeComponents[0].match(modifierRegex);
+ !matches ? process.env.NODE_ENV !== 'production' ? invariant(false, 'expected regex to match but it did not') : invariant(false) : void 0;
+
+ return {
+ modifier: matches[1],
+ rangeComponents: [matches[2]].concat(rangeComponents.slice(1))
+ };
+}
+
+/**
+ * Determines if `number` is a number.
+ *
+ * @param {mixed} number
+ * @returns {boolean}
+ */
+function isNumber(number) {
+ return !isNaN(number) && isFinite(number);
+}
+
+/**
+ * Tests whether `range` is a "simple" version number without any modifiers
+ * (">", "~" etc).
+ *
+ * @param {string} range
+ * @returns {boolean}
+ */
+function isSimpleVersion(range) {
+ return !getModifierAndComponents(range).modifier;
+}
+
+/**
+ * Zero-pads array `array` until it is at least `length` long.
+ *
+ * @param {array} array
+ * @param {number} length
+ */
+function zeroPad(array, length) {
+ for (var i = array.length; i < length; i++) {
+ array[i] = '0';
+ }
+}
+
+/**
+ * Normalizes `a` and `b` in preparation for comparison by doing the following:
+ *
+ * - zero-pads `a` and `b`
+ * - marks any "x", "X" or "*" component in `b` as equivalent by zero-ing it out
+ * in both `a` and `b`
+ * - marks any final "*" component in `b` as a greedy wildcard by zero-ing it
+ * and all of its successors in `a`
+ *
+ * @param {array} a
+ * @param {array} b
+ * @returns {array>}
+ */
+function normalizeVersions(a, b) {
+ a = a.slice();
+ b = b.slice();
+
+ zeroPad(a, b.length);
+
+ // mark "x" and "*" components as equal
+ for (var i = 0; i < b.length; i++) {
+ var matches = b[i].match(/^[x*]$/i);
+ if (matches) {
+ b[i] = a[i] = '0';
+
+ // final "*" greedily zeros all remaining components
+ if (matches[0] === '*' && i === b.length - 1) {
+ for (var j = i; j < a.length; j++) {
+ a[j] = '0';
+ }
+ }
+ }
+ }
+
+ zeroPad(b, a.length);
+
+ return [a, b];
+}
+
+/**
+ * Returns the numerical -- not the lexicographical -- ordering of `a` and `b`.
+ *
+ * For example, `10-alpha` is greater than `2-beta`.
+ *
+ * @param {string} a
+ * @param {string} b
+ * @returns {number} -1, 0 or 1 to indicate whether `a` is less than, equal to,
+ * or greater than `b`, respectively
+ */
+function compareNumeric(a, b) {
+ var aPrefix = a.match(numericRegex)[1];
+ var bPrefix = b.match(numericRegex)[1];
+ var aNumeric = parseInt(aPrefix, 10);
+ var bNumeric = parseInt(bPrefix, 10);
+
+ if (isNumber(aNumeric) && isNumber(bNumeric) && aNumeric !== bNumeric) {
+ return compare(aNumeric, bNumeric);
+ } else {
+ return compare(a, b);
+ }
+}
+
+/**
+ * Returns the ordering of `a` and `b`.
+ *
+ * @param {string|number} a
+ * @param {string|number} b
+ * @returns {number} -1, 0 or 1 to indicate whether `a` is less than, equal to,
+ * or greater than `b`, respectively
+ */
+function compare(a, b) {
+ !(typeof a === typeof b) ? process.env.NODE_ENV !== 'production' ? invariant(false, '"a" and "b" must be of the same type') : invariant(false) : void 0;
+
+ if (a > b) {
+ return 1;
+ } else if (a < b) {
+ return -1;
+ } else {
+ return 0;
+ }
+}
+
+/**
+ * Compares arrays of version components.
+ *
+ * @param {array} a
+ * @param {array} b
+ * @returns {number} -1, 0 or 1 to indicate whether `a` is less than, equal to,
+ * or greater than `b`, respectively
+ */
+function compareComponents(a, b) {
+ var _normalizeVersions = normalizeVersions(a, b),
+ aNormalized = _normalizeVersions[0],
+ bNormalized = _normalizeVersions[1];
+
+ for (var i = 0; i < bNormalized.length; i++) {
+ var result = compareNumeric(aNormalized[i], bNormalized[i]);
+ if (result) {
+ return result;
+ }
+ }
+
+ return 0;
+}
+
+var VersionRange = {
+ /**
+ * Checks whether `version` satisfies the `range` specification.
+ *
+ * We support a subset of the expressions defined in
+ * https://www.npmjs.org/doc/misc/semver.html:
+ *
+ * version Must match version exactly
+ * =version Same as just version
+ * >version Must be greater than version
+ * >=version Must be greater than or equal to version
+ * = 1.2.3 and < 1.3"
+ * ~>version Equivalent to ~version
+ * 1.2.x Must match "1.2.x", where "x" is a wildcard that matches
+ * anything
+ * 1.2.* Similar to "1.2.x", but "*" in the trailing position is a
+ * "greedy" wildcard, so will match any number of additional
+ * components:
+ * "1.2.*" will match "1.2.1", "1.2.1.1", "1.2.1.1.1" etc
+ * * Any version
+ * "" (Empty string) Same as *
+ * v1 - v2 Equivalent to ">= v1 and <= v2"
+ * r1 || r2 Passes if either r1 or r2 are satisfied
+ *
+ * @param {string} range
+ * @param {string} version
+ * @returns {boolean}
+ */
+ contains: function contains(range, version) {
+ return checkOrExpression(range.trim(), version.trim());
+ }
+};
+
+module.exports = VersionRange;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/VersionRange.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/VersionRange.js.flow
new file mode 100644
index 00000000..ad64790f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/VersionRange.js.flow
@@ -0,0 +1,371 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule VersionRange
+ */
+
+'use strict';
+
+const invariant = require('./invariant');
+
+const componentRegex = /\./;
+const orRegex = /\|\|/;
+const rangeRegex = /\s+\-\s+/;
+const modifierRegex = /^(<=|<|=|>=|~>|~|>|)?\s*(.+)/;
+const numericRegex = /^(\d*)(.*)/;
+
+/**
+ * Splits input `range` on "||" and returns true if any subrange matches
+ * `version`.
+ *
+ * @param {string} range
+ * @param {string} version
+ * @returns {boolean}
+ */
+function checkOrExpression(range, version) {
+ const expressions = range.split(orRegex);
+
+ if (expressions.length > 1) {
+ return expressions.some(range => VersionRange.contains(range, version));
+ } else {
+ range = expressions[0].trim();
+ return checkRangeExpression(range, version);
+ }
+}
+
+/**
+ * Splits input `range` on " - " (the surrounding whitespace is required) and
+ * returns true if version falls between the two operands.
+ *
+ * @param {string} range
+ * @param {string} version
+ * @returns {boolean}
+ */
+function checkRangeExpression(range, version) {
+ const expressions = range.split(rangeRegex);
+
+ invariant(expressions.length > 0 && expressions.length <= 2, 'the "-" operator expects exactly 2 operands');
+
+ if (expressions.length === 1) {
+ return checkSimpleExpression(expressions[0], version);
+ } else {
+ const [startVersion, endVersion] = expressions;
+ invariant(isSimpleVersion(startVersion) && isSimpleVersion(endVersion), 'operands to the "-" operator must be simple (no modifiers)');
+
+ return checkSimpleExpression('>=' + startVersion, version) && checkSimpleExpression('<=' + endVersion, version);
+ }
+}
+
+/**
+ * Checks if `range` matches `version`. `range` should be a "simple" range (ie.
+ * not a compound range using the " - " or "||" operators).
+ *
+ * @param {string} range
+ * @param {string} version
+ * @returns {boolean}
+ */
+function checkSimpleExpression(range, version) {
+ range = range.trim();
+ if (range === '') {
+ return true;
+ }
+
+ const versionComponents = version.split(componentRegex);
+ const { modifier, rangeComponents } = getModifierAndComponents(range);
+ switch (modifier) {
+ case '<':
+ return checkLessThan(versionComponents, rangeComponents);
+ case '<=':
+ return checkLessThanOrEqual(versionComponents, rangeComponents);
+ case '>=':
+ return checkGreaterThanOrEqual(versionComponents, rangeComponents);
+ case '>':
+ return checkGreaterThan(versionComponents, rangeComponents);
+ case '~':
+ case '~>':
+ return checkApproximateVersion(versionComponents, rangeComponents);
+ default:
+ return checkEqual(versionComponents, rangeComponents);
+ }
+}
+
+/**
+ * Checks whether `a` is less than `b`.
+ *
+ * @param {array} a
+ * @param {array} b
+ * @returns {boolean}
+ */
+function checkLessThan(a, b) {
+ return compareComponents(a, b) === -1;
+}
+
+/**
+ * Checks whether `a` is less than or equal to `b`.
+ *
+ * @param {array} a
+ * @param {array} b
+ * @returns {boolean}
+ */
+function checkLessThanOrEqual(a, b) {
+ const result = compareComponents(a, b);
+ return result === -1 || result === 0;
+}
+
+/**
+ * Checks whether `a` is equal to `b`.
+ *
+ * @param {array} a
+ * @param {array} b
+ * @returns {boolean}
+ */
+function checkEqual(a, b) {
+ return compareComponents(a, b) === 0;
+}
+
+/**
+ * Checks whether `a` is greater than or equal to `b`.
+ *
+ * @param {array} a
+ * @param {array} b
+ * @returns {boolean}
+ */
+function checkGreaterThanOrEqual(a, b) {
+ const result = compareComponents(a, b);
+ return result === 1 || result === 0;
+}
+
+/**
+ * Checks whether `a` is greater than `b`.
+ *
+ * @param {array} a
+ * @param {array} b
+ * @returns {boolean}
+ */
+function checkGreaterThan(a, b) {
+ return compareComponents(a, b) === 1;
+}
+
+/**
+ * Checks whether `a` is "reasonably close" to `b` (as described in
+ * https://www.npmjs.org/doc/misc/semver.html). For example, if `b` is "1.3.1"
+ * then "reasonably close" is defined as ">= 1.3.1 and < 1.4".
+ *
+ * @param {array} a
+ * @param {array} b
+ * @returns {boolean}
+ */
+function checkApproximateVersion(a, b) {
+ const lowerBound = b.slice();
+ const upperBound = b.slice();
+
+ if (upperBound.length > 1) {
+ upperBound.pop();
+ }
+ const lastIndex = upperBound.length - 1;
+ const numeric = parseInt(upperBound[lastIndex], 10);
+ if (isNumber(numeric)) {
+ upperBound[lastIndex] = numeric + 1 + '';
+ }
+
+ return checkGreaterThanOrEqual(a, lowerBound) && checkLessThan(a, upperBound);
+}
+
+/**
+ * Extracts the optional modifier (<, <=, =, >=, >, ~, ~>) and version
+ * components from `range`.
+ *
+ * For example, given `range` ">= 1.2.3" returns an object with a `modifier` of
+ * `">="` and `components` of `[1, 2, 3]`.
+ *
+ * @param {string} range
+ * @returns {object}
+ */
+function getModifierAndComponents(range) {
+ const rangeComponents = range.split(componentRegex);
+ const matches = rangeComponents[0].match(modifierRegex);
+ invariant(matches, 'expected regex to match but it did not');
+
+ return {
+ modifier: matches[1],
+ rangeComponents: [matches[2]].concat(rangeComponents.slice(1))
+ };
+}
+
+/**
+ * Determines if `number` is a number.
+ *
+ * @param {mixed} number
+ * @returns {boolean}
+ */
+function isNumber(number) {
+ return !isNaN(number) && isFinite(number);
+}
+
+/**
+ * Tests whether `range` is a "simple" version number without any modifiers
+ * (">", "~" etc).
+ *
+ * @param {string} range
+ * @returns {boolean}
+ */
+function isSimpleVersion(range) {
+ return !getModifierAndComponents(range).modifier;
+}
+
+/**
+ * Zero-pads array `array` until it is at least `length` long.
+ *
+ * @param {array} array
+ * @param {number} length
+ */
+function zeroPad(array, length) {
+ for (let i = array.length; i < length; i++) {
+ array[i] = '0';
+ }
+}
+
+/**
+ * Normalizes `a` and `b` in preparation for comparison by doing the following:
+ *
+ * - zero-pads `a` and `b`
+ * - marks any "x", "X" or "*" component in `b` as equivalent by zero-ing it out
+ * in both `a` and `b`
+ * - marks any final "*" component in `b` as a greedy wildcard by zero-ing it
+ * and all of its successors in `a`
+ *
+ * @param {array} a
+ * @param {array} b
+ * @returns {array>}
+ */
+function normalizeVersions(a, b) {
+ a = a.slice();
+ b = b.slice();
+
+ zeroPad(a, b.length);
+
+ // mark "x" and "*" components as equal
+ for (let i = 0; i < b.length; i++) {
+ const matches = b[i].match(/^[x*]$/i);
+ if (matches) {
+ b[i] = a[i] = '0';
+
+ // final "*" greedily zeros all remaining components
+ if (matches[0] === '*' && i === b.length - 1) {
+ for (let j = i; j < a.length; j++) {
+ a[j] = '0';
+ }
+ }
+ }
+ }
+
+ zeroPad(b, a.length);
+
+ return [a, b];
+}
+
+/**
+ * Returns the numerical -- not the lexicographical -- ordering of `a` and `b`.
+ *
+ * For example, `10-alpha` is greater than `2-beta`.
+ *
+ * @param {string} a
+ * @param {string} b
+ * @returns {number} -1, 0 or 1 to indicate whether `a` is less than, equal to,
+ * or greater than `b`, respectively
+ */
+function compareNumeric(a, b) {
+ const aPrefix = a.match(numericRegex)[1];
+ const bPrefix = b.match(numericRegex)[1];
+ const aNumeric = parseInt(aPrefix, 10);
+ const bNumeric = parseInt(bPrefix, 10);
+
+ if (isNumber(aNumeric) && isNumber(bNumeric) && aNumeric !== bNumeric) {
+ return compare(aNumeric, bNumeric);
+ } else {
+ return compare(a, b);
+ }
+}
+
+/**
+ * Returns the ordering of `a` and `b`.
+ *
+ * @param {string|number} a
+ * @param {string|number} b
+ * @returns {number} -1, 0 or 1 to indicate whether `a` is less than, equal to,
+ * or greater than `b`, respectively
+ */
+function compare(a, b) {
+ invariant(typeof a === typeof b, '"a" and "b" must be of the same type');
+
+ if (a > b) {
+ return 1;
+ } else if (a < b) {
+ return -1;
+ } else {
+ return 0;
+ }
+}
+
+/**
+ * Compares arrays of version components.
+ *
+ * @param {array} a
+ * @param {array} b
+ * @returns {number} -1, 0 or 1 to indicate whether `a` is less than, equal to,
+ * or greater than `b`, respectively
+ */
+function compareComponents(a, b) {
+ const [aNormalized, bNormalized] = normalizeVersions(a, b);
+
+ for (let i = 0; i < bNormalized.length; i++) {
+ const result = compareNumeric(aNormalized[i], bNormalized[i]);
+ if (result) {
+ return result;
+ }
+ }
+
+ return 0;
+}
+
+var VersionRange = {
+ /**
+ * Checks whether `version` satisfies the `range` specification.
+ *
+ * We support a subset of the expressions defined in
+ * https://www.npmjs.org/doc/misc/semver.html:
+ *
+ * version Must match version exactly
+ * =version Same as just version
+ * >version Must be greater than version
+ * >=version Must be greater than or equal to version
+ * = 1.2.3 and < 1.3"
+ * ~>version Equivalent to ~version
+ * 1.2.x Must match "1.2.x", where "x" is a wildcard that matches
+ * anything
+ * 1.2.* Similar to "1.2.x", but "*" in the trailing position is a
+ * "greedy" wildcard, so will match any number of additional
+ * components:
+ * "1.2.*" will match "1.2.1", "1.2.1.1", "1.2.1.1.1" etc
+ * * Any version
+ * "" (Empty string) Same as *
+ * v1 - v2 Equivalent to ">= v1 and <= v2"
+ * r1 || r2 Passes if either r1 or r2 are satisfied
+ *
+ * @param {string} range
+ * @param {string} version
+ * @returns {boolean}
+ */
+ contains(range, version) {
+ return checkOrExpression(range.trim(), version.trim());
+ }
+};
+
+module.exports = VersionRange;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/__mocks__/ErrorUtils.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/__mocks__/ErrorUtils.js
new file mode 100644
index 00000000..5140ac44
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/__mocks__/ErrorUtils.js
@@ -0,0 +1,20 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+'use strict';
+
+var ErrorUtils = jest.genMockFromModule('../ErrorUtils');
+
+ErrorUtils.applyWithGuard.mockImplementation(function (callback, context, args) {
+ return callback.apply(context, args);
+});
+
+ErrorUtils.guard.mockImplementation(function (callback) {
+ return callback;
+});
+
+module.exports = ErrorUtils;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/__mocks__/base62.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/__mocks__/base62.js
new file mode 100644
index 00000000..24cc91c7
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/__mocks__/base62.js
@@ -0,0 +1,10 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+'use strict';
+
+module.exports = require.requireActual('../base62');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/__mocks__/crc32.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/__mocks__/crc32.js
new file mode 100644
index 00000000..259e4c73
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/__mocks__/crc32.js
@@ -0,0 +1,10 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+'use strict';
+
+module.exports = require.requireActual('../crc32');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/__mocks__/fetch.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/__mocks__/fetch.js
new file mode 100644
index 00000000..2ae49d6a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/__mocks__/fetch.js
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @noflow
+ */
+
+'use strict';
+
+var Deferred = require.requireActual('../Deferred');
+
+function fetch(uri, options) {
+ var deferred = new Deferred();
+ fetch.mock.calls.push([uri, options]);
+ fetch.mock.deferreds.push(deferred);
+ return deferred.getPromise();
+}
+
+fetch.mock = {
+ calls: [],
+ deferreds: []
+};
+
+module.exports = fetch;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/__mocks__/fetchWithRetries.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/__mocks__/fetchWithRetries.js
new file mode 100644
index 00000000..f87746b2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/__mocks__/fetchWithRetries.js
@@ -0,0 +1,31 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @noflow
+ */
+
+'use strict';
+
+var Deferred = require.requireActual('../Deferred');
+
+function fetchWithRetries() {
+ var deferred = new Deferred();
+
+ for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
+ args[_key] = arguments[_key];
+ }
+
+ fetchWithRetries.mock.calls.push(args);
+ fetchWithRetries.mock.deferreds.push(deferred);
+ return deferred.getPromise();
+}
+
+fetchWithRetries.mock = {
+ calls: [],
+ deferreds: []
+};
+
+module.exports = fetchWithRetries;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/__mocks__/nullthrows.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/__mocks__/nullthrows.js
new file mode 100644
index 00000000..43422839
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/__mocks__/nullthrows.js
@@ -0,0 +1,12 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+'use strict';
+
+jest.dontMock('../nullthrows');
+
+module.exports = require('../nullthrows');
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/_shouldPolyfillES6Collection.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/_shouldPolyfillES6Collection.js
new file mode 100644
index 00000000..86b177f4
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/_shouldPolyfillES6Collection.js
@@ -0,0 +1,39 @@
+'use strict';
+
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @preventMunge
+ *
+ */
+
+/**
+ * Checks whether a collection name (e.g. "Map" or "Set") has a native polyfill
+ * that is safe to be used.
+ */
+function shouldPolyfillES6Collection(collectionName) {
+ var Collection = global[collectionName];
+ if (Collection == null) {
+ return true;
+ }
+
+ // The iterator protocol depends on `Symbol.iterator`. If a collection is
+ // implemented, but `Symbol` is not, it's going to break iteration because
+ // we'll be using custom "@@iterator" instead, which is not implemented on
+ // native collections.
+ if (typeof global.Symbol !== 'function') {
+ return true;
+ }
+
+ var proto = Collection.prototype;
+
+ // These checks are adapted from es6-shim: https://fburl.com/34437854
+ // NOTE: `isCallableWithoutNew` and `!supportsSubclassing` are not checked
+ // because they make debugging with "break on exceptions" difficult.
+ return Collection == null || typeof Collection !== 'function' || typeof proto.clear !== 'function' || new Collection().size !== 0 || typeof proto.keys !== 'function' || typeof proto.forEach !== 'function';
+}
+
+module.exports = shouldPolyfillES6Collection;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/_shouldPolyfillES6Collection.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/_shouldPolyfillES6Collection.js.flow
new file mode 100644
index 00000000..672b5f1f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/_shouldPolyfillES6Collection.js.flow
@@ -0,0 +1,38 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule _shouldPolyfillES6Collection
+ * @preventMunge
+ * @flow
+ */
+
+/**
+ * Checks whether a collection name (e.g. "Map" or "Set") has a native polyfill
+ * that is safe to be used.
+ */
+function shouldPolyfillES6Collection(collectionName: string): boolean {
+ const Collection = global[collectionName];
+ if (Collection == null) {
+ return true;
+ }
+
+ // The iterator protocol depends on `Symbol.iterator`. If a collection is
+ // implemented, but `Symbol` is not, it's going to break iteration because
+ // we'll be using custom "@@iterator" instead, which is not implemented on
+ // native collections.
+ if (typeof global.Symbol !== 'function') {
+ return true;
+ }
+
+ const proto = Collection.prototype;
+
+ // These checks are adapted from es6-shim: https://fburl.com/34437854
+ // NOTE: `isCallableWithoutNew` and `!supportsSubclassing` are not checked
+ // because they make debugging with "break on exceptions" difficult.
+ return Collection == null || typeof Collection !== 'function' || typeof proto.clear !== 'function' || new Collection().size !== 0 || typeof proto.keys !== 'function' || typeof proto.forEach !== 'function';
+}
+
+module.exports = shouldPolyfillES6Collection;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/areEqual.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/areEqual.js
new file mode 100644
index 00000000..e6a7da3b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/areEqual.js
@@ -0,0 +1,106 @@
+'use strict';
+
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ *
+ */
+
+var aStackPool = [];
+var bStackPool = [];
+
+/**
+ * Checks if two values are equal. Values may be primitives, arrays, or objects.
+ * Returns true if both arguments have the same keys and values.
+ *
+ * @see http://underscorejs.org
+ * @copyright 2009-2013 Jeremy Ashkenas, DocumentCloud Inc.
+ * @license MIT
+ */
+function areEqual(a, b) {
+ var aStack = aStackPool.length ? aStackPool.pop() : [];
+ var bStack = bStackPool.length ? bStackPool.pop() : [];
+ var result = eq(a, b, aStack, bStack);
+ aStack.length = 0;
+ bStack.length = 0;
+ aStackPool.push(aStack);
+ bStackPool.push(bStack);
+ return result;
+}
+
+function eq(a, b, aStack, bStack) {
+ if (a === b) {
+ // Identical objects are equal. `0 === -0`, but they aren't identical.
+ return a !== 0 || 1 / a == 1 / b;
+ }
+ if (a == null || b == null) {
+ // a or b can be `null` or `undefined`
+ return false;
+ }
+ if (typeof a != 'object' || typeof b != 'object') {
+ return false;
+ }
+ var objToStr = Object.prototype.toString;
+ var className = objToStr.call(a);
+ if (className != objToStr.call(b)) {
+ return false;
+ }
+ switch (className) {
+ case '[object String]':
+ return a == String(b);
+ case '[object Number]':
+ return isNaN(a) || isNaN(b) ? false : a == Number(b);
+ case '[object Date]':
+ case '[object Boolean]':
+ return +a == +b;
+ case '[object RegExp]':
+ return a.source == b.source && a.global == b.global && a.multiline == b.multiline && a.ignoreCase == b.ignoreCase;
+ }
+ // Assume equality for cyclic structures.
+ var length = aStack.length;
+ while (length--) {
+ if (aStack[length] == a) {
+ return bStack[length] == b;
+ }
+ }
+ aStack.push(a);
+ bStack.push(b);
+ var size = 0;
+ // Recursively compare objects and arrays.
+ if (className === '[object Array]') {
+ size = a.length;
+ if (size !== b.length) {
+ return false;
+ }
+ // Deep compare the contents, ignoring non-numeric properties.
+ while (size--) {
+ if (!eq(a[size], b[size], aStack, bStack)) {
+ return false;
+ }
+ }
+ } else {
+ if (a.constructor !== b.constructor) {
+ return false;
+ }
+ if (a.hasOwnProperty('valueOf') && b.hasOwnProperty('valueOf')) {
+ return a.valueOf() == b.valueOf();
+ }
+ var keys = Object.keys(a);
+ if (keys.length != Object.keys(b).length) {
+ return false;
+ }
+ for (var i = 0; i < keys.length; i++) {
+ if (!eq(a[keys[i]], b[keys[i]], aStack, bStack)) {
+ return false;
+ }
+ }
+ }
+ aStack.pop();
+ bStack.pop();
+ return true;
+}
+
+module.exports = areEqual;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/areEqual.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/areEqual.js.flow
new file mode 100644
index 00000000..06e53ec6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/areEqual.js.flow
@@ -0,0 +1,105 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule areEqual
+ * @flow
+ */
+
+const aStackPool = [];
+const bStackPool = [];
+
+/**
+ * Checks if two values are equal. Values may be primitives, arrays, or objects.
+ * Returns true if both arguments have the same keys and values.
+ *
+ * @see http://underscorejs.org
+ * @copyright 2009-2013 Jeremy Ashkenas, DocumentCloud Inc.
+ * @license MIT
+ */
+function areEqual(a: any, b: any): boolean {
+ const aStack = aStackPool.length ? aStackPool.pop() : [];
+ const bStack = bStackPool.length ? bStackPool.pop() : [];
+ const result = eq(a, b, aStack, bStack);
+ aStack.length = 0;
+ bStack.length = 0;
+ aStackPool.push(aStack);
+ bStackPool.push(bStack);
+ return result;
+}
+
+function eq(a: any, b: any, aStack: Array, bStack: Array): boolean {
+ if (a === b) {
+ // Identical objects are equal. `0 === -0`, but they aren't identical.
+ return a !== 0 || 1 / a == 1 / b;
+ }
+ if (a == null || b == null) {
+ // a or b can be `null` or `undefined`
+ return false;
+ }
+ if (typeof a != 'object' || typeof b != 'object') {
+ return false;
+ }
+ const objToStr = Object.prototype.toString;
+ const className = objToStr.call(a);
+ if (className != objToStr.call(b)) {
+ return false;
+ }
+ switch (className) {
+ case '[object String]':
+ return a == String(b);
+ case '[object Number]':
+ return isNaN(a) || isNaN(b) ? false : a == Number(b);
+ case '[object Date]':
+ case '[object Boolean]':
+ return +a == +b;
+ case '[object RegExp]':
+ return a.source == b.source && a.global == b.global && a.multiline == b.multiline && a.ignoreCase == b.ignoreCase;
+ }
+ // Assume equality for cyclic structures.
+ let length = aStack.length;
+ while (length--) {
+ if (aStack[length] == a) {
+ return bStack[length] == b;
+ }
+ }
+ aStack.push(a);
+ bStack.push(b);
+ let size = 0;
+ // Recursively compare objects and arrays.
+ if (className === '[object Array]') {
+ size = a.length;
+ if (size !== b.length) {
+ return false;
+ }
+ // Deep compare the contents, ignoring non-numeric properties.
+ while (size--) {
+ if (!eq(a[size], b[size], aStack, bStack)) {
+ return false;
+ }
+ }
+ } else {
+ if (a.constructor !== b.constructor) {
+ return false;
+ }
+ if (a.hasOwnProperty('valueOf') && b.hasOwnProperty('valueOf')) {
+ return a.valueOf() == b.valueOf();
+ }
+ const keys = Object.keys(a);
+ if (keys.length != Object.keys(b).length) {
+ return false;
+ }
+ for (let i = 0; i < keys.length; i++) {
+ if (!eq(a[keys[i]], b[keys[i]], aStack, bStack)) {
+ return false;
+ }
+ }
+ }
+ aStack.pop();
+ bStack.pop();
+ return true;
+}
+
+module.exports = areEqual;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/base62.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/base62.js
new file mode 100644
index 00000000..e2e4d82b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/base62.js
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ *
+ */
+
+'use strict';
+
+var BASE62 = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
+
+function base62(number) {
+ if (!number) {
+ return '0';
+ }
+ var string = '';
+ while (number > 0) {
+ string = BASE62[number % 62] + string;
+ number = Math.floor(number / 62);
+ }
+ return string;
+}
+
+module.exports = base62;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/base62.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/base62.js.flow
new file mode 100644
index 00000000..f8151201
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/base62.js.flow
@@ -0,0 +1,27 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule base62
+ * @flow
+ */
+
+'use strict';
+
+const BASE62 = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
+
+function base62(number: number): string {
+ if (!number) {
+ return '0';
+ }
+ let string = '';
+ while (number > 0) {
+ string = BASE62[number % 62] + string;
+ number = Math.floor(number / 62);
+ }
+ return string;
+}
+
+module.exports = base62;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/camelize.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/camelize.js
new file mode 100644
index 00000000..ca010a29
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/camelize.js
@@ -0,0 +1,29 @@
+"use strict";
+
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @typechecks
+ */
+
+var _hyphenPattern = /-(.)/g;
+
+/**
+ * Camelcases a hyphenated string, for example:
+ *
+ * > camelize('background-color')
+ * < "backgroundColor"
+ *
+ * @param {string} string
+ * @return {string}
+ */
+function camelize(string) {
+ return string.replace(_hyphenPattern, function (_, character) {
+ return character.toUpperCase();
+ });
+}
+
+module.exports = camelize;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/camelize.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/camelize.js.flow
new file mode 100644
index 00000000..9b0b4234
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/camelize.js.flow
@@ -0,0 +1,28 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule camelize
+ * @typechecks
+ */
+
+const _hyphenPattern = /-(.)/g;
+
+/**
+ * Camelcases a hyphenated string, for example:
+ *
+ * > camelize('background-color')
+ * < "backgroundColor"
+ *
+ * @param {string} string
+ * @return {string}
+ */
+function camelize(string) {
+ return string.replace(_hyphenPattern, function (_, character) {
+ return character.toUpperCase();
+ });
+}
+
+module.exports = camelize;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/camelizeStyleName.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/camelizeStyleName.js
new file mode 100644
index 00000000..6b076a37
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/camelizeStyleName.js
@@ -0,0 +1,37 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @typechecks
+ */
+
+'use strict';
+
+var camelize = require('./camelize');
+
+var msPattern = /^-ms-/;
+
+/**
+ * Camelcases a hyphenated CSS property name, for example:
+ *
+ * > camelizeStyleName('background-color')
+ * < "backgroundColor"
+ * > camelizeStyleName('-moz-transition')
+ * < "MozTransition"
+ * > camelizeStyleName('-ms-transition')
+ * < "msTransition"
+ *
+ * As Andi Smith suggests
+ * (http://www.andismith.com/blog/2012/02/modernizr-prefixed/), an `-ms` prefix
+ * is converted to lowercase `ms`.
+ *
+ * @param {string} string
+ * @return {string}
+ */
+function camelizeStyleName(string) {
+ return camelize(string.replace(msPattern, 'ms-'));
+}
+
+module.exports = camelizeStyleName;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/camelizeStyleName.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/camelizeStyleName.js.flow
new file mode 100644
index 00000000..8883feac
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/camelizeStyleName.js.flow
@@ -0,0 +1,38 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule camelizeStyleName
+ * @typechecks
+ */
+
+'use strict';
+
+const camelize = require('./camelize');
+
+const msPattern = /^-ms-/;
+
+/**
+ * Camelcases a hyphenated CSS property name, for example:
+ *
+ * > camelizeStyleName('background-color')
+ * < "backgroundColor"
+ * > camelizeStyleName('-moz-transition')
+ * < "MozTransition"
+ * > camelizeStyleName('-ms-transition')
+ * < "msTransition"
+ *
+ * As Andi Smith suggests
+ * (http://www.andismith.com/blog/2012/02/modernizr-prefixed/), an `-ms` prefix
+ * is converted to lowercase `ms`.
+ *
+ * @param {string} string
+ * @return {string}
+ */
+function camelizeStyleName(string) {
+ return camelize(string.replace(msPattern, 'ms-'));
+}
+
+module.exports = camelizeStyleName;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/compactArray.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/compactArray.js
new file mode 100644
index 00000000..5db77540
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/compactArray.js
@@ -0,0 +1,27 @@
+/**
+ * Copyright 2015-present Facebook. All Rights Reserved.
+ *
+ * @typechecks
+ *
+ */
+
+'use strict';
+
+/**
+ * Returns a new Array containing all the element of the source array except
+ * `null` and `undefined` ones. This brings the benefit of strong typing over
+ * `Array.prototype.filter`.
+ */
+
+function compactArray(array) {
+ var result = [];
+ for (var i = 0; i < array.length; ++i) {
+ var elem = array[i];
+ if (elem != null) {
+ result.push(elem);
+ }
+ }
+ return result;
+}
+
+module.exports = compactArray;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/compactArray.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/compactArray.js.flow
new file mode 100644
index 00000000..5b8ccbec
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/compactArray.js.flow
@@ -0,0 +1,28 @@
+/**
+ * Copyright 2015-present Facebook. All Rights Reserved.
+ *
+ * @providesModule compactArray
+ * @typechecks
+ * @flow
+ */
+
+'use strict';
+
+/**
+ * Returns a new Array containing all the element of the source array except
+ * `null` and `undefined` ones. This brings the benefit of strong typing over
+ * `Array.prototype.filter`.
+ */
+
+function compactArray(array: Array): Array {
+ var result = [];
+ for (var i = 0; i < array.length; ++i) {
+ var elem = array[i];
+ if (elem != null) {
+ result.push(elem);
+ }
+ }
+ return result;
+}
+
+module.exports = compactArray;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/concatAllArray.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/concatAllArray.js
new file mode 100644
index 00000000..a9649824
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/concatAllArray.js
@@ -0,0 +1,33 @@
+'use strict';
+
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @typechecks
+ */
+
+var push = Array.prototype.push;
+
+/**
+ * Concats an array of arrays into a single flat array.
+ *
+ * @param {array} array
+ * @return {array}
+ */
+function concatAllArray(array) {
+ var ret = [];
+ for (var ii = 0; ii < array.length; ii++) {
+ var value = array[ii];
+ if (Array.isArray(value)) {
+ push.apply(ret, value);
+ } else if (value != null) {
+ throw new TypeError('concatAllArray: All items in the array must be an array or null, ' + 'got "' + value + '" at index "' + ii + '" instead');
+ }
+ }
+ return ret;
+}
+
+module.exports = concatAllArray;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/concatAllArray.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/concatAllArray.js.flow
new file mode 100644
index 00000000..41103ff2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/concatAllArray.js.flow
@@ -0,0 +1,32 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule concatAllArray
+ * @typechecks
+ */
+
+var push = Array.prototype.push;
+
+/**
+ * Concats an array of arrays into a single flat array.
+ *
+ * @param {array} array
+ * @return {array}
+ */
+function concatAllArray(array) {
+ var ret = [];
+ for (var ii = 0; ii < array.length; ii++) {
+ var value = array[ii];
+ if (Array.isArray(value)) {
+ push.apply(ret, value);
+ } else if (value != null) {
+ throw new TypeError('concatAllArray: All items in the array must be an array or null, ' + 'got "' + value + '" at index "' + ii + '" instead');
+ }
+ }
+ return ret;
+}
+
+module.exports = concatAllArray;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/containsNode.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/containsNode.js
new file mode 100644
index 00000000..bee5085e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/containsNode.js
@@ -0,0 +1,37 @@
+'use strict';
+
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ *
+ */
+
+var isTextNode = require('./isTextNode');
+
+/*eslint-disable no-bitwise */
+
+/**
+ * Checks if a given DOM node contains or is another DOM node.
+ */
+function containsNode(outerNode, innerNode) {
+ if (!outerNode || !innerNode) {
+ return false;
+ } else if (outerNode === innerNode) {
+ return true;
+ } else if (isTextNode(outerNode)) {
+ return false;
+ } else if (isTextNode(innerNode)) {
+ return containsNode(outerNode, innerNode.parentNode);
+ } else if ('contains' in outerNode) {
+ return outerNode.contains(innerNode);
+ } else if (outerNode.compareDocumentPosition) {
+ return !!(outerNode.compareDocumentPosition(innerNode) & 16);
+ } else {
+ return false;
+ }
+}
+
+module.exports = containsNode;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/containsNode.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/containsNode.js.flow
new file mode 100644
index 00000000..b2117f31
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/containsNode.js.flow
@@ -0,0 +1,36 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule containsNode
+ * @flow
+ */
+
+const isTextNode = require('./isTextNode');
+
+/*eslint-disable no-bitwise */
+
+/**
+ * Checks if a given DOM node contains or is another DOM node.
+ */
+function containsNode(outerNode: ?Node, innerNode: ?Node): boolean {
+ if (!outerNode || !innerNode) {
+ return false;
+ } else if (outerNode === innerNode) {
+ return true;
+ } else if (isTextNode(outerNode)) {
+ return false;
+ } else if (isTextNode(innerNode)) {
+ return containsNode(outerNode, innerNode.parentNode);
+ } else if ('contains' in outerNode) {
+ return outerNode.contains(innerNode);
+ } else if (outerNode.compareDocumentPosition) {
+ return !!(outerNode.compareDocumentPosition(innerNode) & 16);
+ } else {
+ return false;
+ }
+}
+
+module.exports = containsNode;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/countDistinct.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/countDistinct.js
new file mode 100644
index 00000000..c8aa925f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/countDistinct.js
@@ -0,0 +1,51 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ *
+ */
+
+'use strict';
+
+var Set = require('./Set');
+
+var emptyFunction = require('./emptyFunction');
+
+/**
+ * Returns the count of distinct elements selected from an array.
+ */
+function countDistinct(iter, selector) {
+ selector = selector || emptyFunction.thatReturnsArgument;
+
+ var set = new Set();
+ var _iteratorNormalCompletion = true;
+ var _didIteratorError = false;
+ var _iteratorError = undefined;
+
+ try {
+ for (var _iterator = iter[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
+ var val = _step.value;
+
+ set.add(selector(val));
+ }
+ } catch (err) {
+ _didIteratorError = true;
+ _iteratorError = err;
+ } finally {
+ try {
+ if (!_iteratorNormalCompletion && _iterator['return']) {
+ _iterator['return']();
+ }
+ } finally {
+ if (_didIteratorError) {
+ throw _iteratorError;
+ }
+ }
+ }
+
+ return set.size;
+}
+
+module.exports = countDistinct;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/countDistinct.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/countDistinct.js.flow
new file mode 100644
index 00000000..25676aa8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/countDistinct.js.flow
@@ -0,0 +1,31 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule countDistinct
+ * @flow
+ */
+
+'use strict';
+
+var Set = require('./Set');
+
+var emptyFunction = require('./emptyFunction');
+
+/**
+ * Returns the count of distinct elements selected from an array.
+ */
+function countDistinct(iter: Iterable, selector: (item: T1) => T2): number {
+ selector = selector || emptyFunction.thatReturnsArgument;
+
+ var set = new Set();
+ for (var val of iter) {
+ set.add(selector(val));
+ }
+
+ return set.size;
+}
+
+module.exports = countDistinct;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/crc32.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/crc32.js
new file mode 100644
index 00000000..806694ca
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/crc32.js
@@ -0,0 +1,27 @@
+"use strict";
+
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ *
+ */
+
+function crc32(str) {
+ /* jslint bitwise: true */
+ var crc = -1;
+ for (var i = 0, len = str.length; i < len; i++) {
+ crc = crc >>> 8 ^ table[(crc ^ str.charCodeAt(i)) & 0xFF];
+ }
+ return ~crc;
+}
+
+var table = [0x00000000, 0x77073096, 0xEE0E612C, 0x990951BA, 0x076DC419, 0x706AF48F, 0xE963A535, 0x9E6495A3, 0x0EDB8832, 0x79DCB8A4, 0xE0D5E91E, 0x97D2D988, 0x09B64C2B, 0x7EB17CBD, 0xE7B82D07, 0x90BF1D91, 0x1DB71064, 0x6AB020F2, 0xF3B97148, 0x84BE41DE, 0x1ADAD47D, 0x6DDDE4EB, 0xF4D4B551, 0x83D385C7, 0x136C9856, 0x646BA8C0, 0xFD62F97A, 0x8A65C9EC, 0x14015C4F, 0x63066CD9, 0xFA0F3D63, 0x8D080DF5, 0x3B6E20C8, 0x4C69105E, 0xD56041E4, 0xA2677172, 0x3C03E4D1, 0x4B04D447, 0xD20D85FD, 0xA50AB56B, 0x35B5A8FA, 0x42B2986C, 0xDBBBC9D6, 0xACBCF940, 0x32D86CE3, 0x45DF5C75, 0xDCD60DCF, 0xABD13D59, 0x26D930AC, 0x51DE003A, 0xC8D75180, 0xBFD06116, 0x21B4F4B5, 0x56B3C423, 0xCFBA9599, 0xB8BDA50F, 0x2802B89E, 0x5F058808, 0xC60CD9B2, 0xB10BE924, 0x2F6F7C87, 0x58684C11, 0xC1611DAB, 0xB6662D3D, 0x76DC4190, 0x01DB7106, 0x98D220BC, 0xEFD5102A, 0x71B18589, 0x06B6B51F, 0x9FBFE4A5, 0xE8B8D433, 0x7807C9A2, 0x0F00F934, 0x9609A88E, 0xE10E9818, 0x7F6A0DBB, 0x086D3D2D, 0x91646C97, 0xE6635C01, 0x6B6B51F4, 0x1C6C6162, 0x856530D8, 0xF262004E, 0x6C0695ED, 0x1B01A57B, 0x8208F4C1, 0xF50FC457, 0x65B0D9C6, 0x12B7E950, 0x8BBEB8EA, 0xFCB9887C, 0x62DD1DDF, 0x15DA2D49, 0x8CD37CF3, 0xFBD44C65, 0x4DB26158, 0x3AB551CE, 0xA3BC0074, 0xD4BB30E2, 0x4ADFA541, 0x3DD895D7, 0xA4D1C46D, 0xD3D6F4FB, 0x4369E96A, 0x346ED9FC, 0xAD678846, 0xDA60B8D0, 0x44042D73, 0x33031DE5, 0xAA0A4C5F, 0xDD0D7CC9, 0x5005713C, 0x270241AA, 0xBE0B1010, 0xC90C2086, 0x5768B525, 0x206F85B3, 0xB966D409, 0xCE61E49F, 0x5EDEF90E, 0x29D9C998, 0xB0D09822, 0xC7D7A8B4, 0x59B33D17, 0x2EB40D81, 0xB7BD5C3B, 0xC0BA6CAD, 0xEDB88320, 0x9ABFB3B6, 0x03B6E20C, 0x74B1D29A, 0xEAD54739, 0x9DD277AF, 0x04DB2615, 0x73DC1683, 0xE3630B12, 0x94643B84, 0x0D6D6A3E, 0x7A6A5AA8, 0xE40ECF0B, 0x9309FF9D, 0x0A00AE27, 0x7D079EB1, 0xF00F9344, 0x8708A3D2, 0x1E01F268, 0x6906C2FE, 0xF762575D, 0x806567CB, 0x196C3671, 0x6E6B06E7, 0xFED41B76, 0x89D32BE0, 0x10DA7A5A, 0x67DD4ACC, 0xF9B9DF6F, 0x8EBEEFF9, 0x17B7BE43, 0x60B08ED5, 0xD6D6A3E8, 0xA1D1937E, 0x38D8C2C4, 0x4FDFF252, 0xD1BB67F1, 0xA6BC5767, 0x3FB506DD, 0x48B2364B, 0xD80D2BDA, 0xAF0A1B4C, 0x36034AF6, 0x41047A60, 0xDF60EFC3, 0xA867DF55, 0x316E8EEF, 0x4669BE79, 0xCB61B38C, 0xBC66831A, 0x256FD2A0, 0x5268E236, 0xCC0C7795, 0xBB0B4703, 0x220216B9, 0x5505262F, 0xC5BA3BBE, 0xB2BD0B28, 0x2BB45A92, 0x5CB36A04, 0xC2D7FFA7, 0xB5D0CF31, 0x2CD99E8B, 0x5BDEAE1D, 0x9B64C2B0, 0xEC63F226, 0x756AA39C, 0x026D930A, 0x9C0906A9, 0xEB0E363F, 0x72076785, 0x05005713, 0x95BF4A82, 0xE2B87A14, 0x7BB12BAE, 0x0CB61B38, 0x92D28E9B, 0xE5D5BE0D, 0x7CDCEFB7, 0x0BDBDF21, 0x86D3D2D4, 0xF1D4E242, 0x68DDB3F8, 0x1FDA836E, 0x81BE16CD, 0xF6B9265B, 0x6FB077E1, 0x18B74777, 0x88085AE6, 0xFF0F6A70, 0x66063BCA, 0x11010B5C, 0x8F659EFF, 0xF862AE69, 0x616BFFD3, 0x166CCF45, 0xA00AE278, 0xD70DD2EE, 0x4E048354, 0x3903B3C2, 0xA7672661, 0xD06016F7, 0x4969474D, 0x3E6E77DB, 0xAED16A4A, 0xD9D65ADC, 0x40DF0B66, 0x37D83BF0, 0xA9BCAE53, 0xDEBB9EC5, 0x47B2CF7F, 0x30B5FFE9, 0xBDBDF21C, 0xCABAC28A, 0x53B39330, 0x24B4A3A6, 0xBAD03605, 0xCDD70693, 0x54DE5729, 0x23D967BF, 0xB3667A2E, 0xC4614AB8, 0x5D681B02, 0x2A6F2B94, 0xB40BBE37, 0xC30C8EA1, 0x5A05DF1B, 0x2D02EF8D];
+
+if (global.Int32Array !== undefined) {
+ table = new Int32Array(table);
+}
+
+module.exports = crc32;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/crc32.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/crc32.js.flow
new file mode 100644
index 00000000..00cab448
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/crc32.js.flow
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule crc32
+ * @flow
+ */
+
+function crc32(str: string): number {
+ /* jslint bitwise: true */
+ var crc = -1;
+ for (var i = 0, len = str.length; i < len; i++) {
+ crc = crc >>> 8 ^ table[(crc ^ str.charCodeAt(i)) & 0xFF];
+ }
+ return ~crc;
+}
+
+var table = [0x00000000, 0x77073096, 0xEE0E612C, 0x990951BA, 0x076DC419, 0x706AF48F, 0xE963A535, 0x9E6495A3, 0x0EDB8832, 0x79DCB8A4, 0xE0D5E91E, 0x97D2D988, 0x09B64C2B, 0x7EB17CBD, 0xE7B82D07, 0x90BF1D91, 0x1DB71064, 0x6AB020F2, 0xF3B97148, 0x84BE41DE, 0x1ADAD47D, 0x6DDDE4EB, 0xF4D4B551, 0x83D385C7, 0x136C9856, 0x646BA8C0, 0xFD62F97A, 0x8A65C9EC, 0x14015C4F, 0x63066CD9, 0xFA0F3D63, 0x8D080DF5, 0x3B6E20C8, 0x4C69105E, 0xD56041E4, 0xA2677172, 0x3C03E4D1, 0x4B04D447, 0xD20D85FD, 0xA50AB56B, 0x35B5A8FA, 0x42B2986C, 0xDBBBC9D6, 0xACBCF940, 0x32D86CE3, 0x45DF5C75, 0xDCD60DCF, 0xABD13D59, 0x26D930AC, 0x51DE003A, 0xC8D75180, 0xBFD06116, 0x21B4F4B5, 0x56B3C423, 0xCFBA9599, 0xB8BDA50F, 0x2802B89E, 0x5F058808, 0xC60CD9B2, 0xB10BE924, 0x2F6F7C87, 0x58684C11, 0xC1611DAB, 0xB6662D3D, 0x76DC4190, 0x01DB7106, 0x98D220BC, 0xEFD5102A, 0x71B18589, 0x06B6B51F, 0x9FBFE4A5, 0xE8B8D433, 0x7807C9A2, 0x0F00F934, 0x9609A88E, 0xE10E9818, 0x7F6A0DBB, 0x086D3D2D, 0x91646C97, 0xE6635C01, 0x6B6B51F4, 0x1C6C6162, 0x856530D8, 0xF262004E, 0x6C0695ED, 0x1B01A57B, 0x8208F4C1, 0xF50FC457, 0x65B0D9C6, 0x12B7E950, 0x8BBEB8EA, 0xFCB9887C, 0x62DD1DDF, 0x15DA2D49, 0x8CD37CF3, 0xFBD44C65, 0x4DB26158, 0x3AB551CE, 0xA3BC0074, 0xD4BB30E2, 0x4ADFA541, 0x3DD895D7, 0xA4D1C46D, 0xD3D6F4FB, 0x4369E96A, 0x346ED9FC, 0xAD678846, 0xDA60B8D0, 0x44042D73, 0x33031DE5, 0xAA0A4C5F, 0xDD0D7CC9, 0x5005713C, 0x270241AA, 0xBE0B1010, 0xC90C2086, 0x5768B525, 0x206F85B3, 0xB966D409, 0xCE61E49F, 0x5EDEF90E, 0x29D9C998, 0xB0D09822, 0xC7D7A8B4, 0x59B33D17, 0x2EB40D81, 0xB7BD5C3B, 0xC0BA6CAD, 0xEDB88320, 0x9ABFB3B6, 0x03B6E20C, 0x74B1D29A, 0xEAD54739, 0x9DD277AF, 0x04DB2615, 0x73DC1683, 0xE3630B12, 0x94643B84, 0x0D6D6A3E, 0x7A6A5AA8, 0xE40ECF0B, 0x9309FF9D, 0x0A00AE27, 0x7D079EB1, 0xF00F9344, 0x8708A3D2, 0x1E01F268, 0x6906C2FE, 0xF762575D, 0x806567CB, 0x196C3671, 0x6E6B06E7, 0xFED41B76, 0x89D32BE0, 0x10DA7A5A, 0x67DD4ACC, 0xF9B9DF6F, 0x8EBEEFF9, 0x17B7BE43, 0x60B08ED5, 0xD6D6A3E8, 0xA1D1937E, 0x38D8C2C4, 0x4FDFF252, 0xD1BB67F1, 0xA6BC5767, 0x3FB506DD, 0x48B2364B, 0xD80D2BDA, 0xAF0A1B4C, 0x36034AF6, 0x41047A60, 0xDF60EFC3, 0xA867DF55, 0x316E8EEF, 0x4669BE79, 0xCB61B38C, 0xBC66831A, 0x256FD2A0, 0x5268E236, 0xCC0C7795, 0xBB0B4703, 0x220216B9, 0x5505262F, 0xC5BA3BBE, 0xB2BD0B28, 0x2BB45A92, 0x5CB36A04, 0xC2D7FFA7, 0xB5D0CF31, 0x2CD99E8B, 0x5BDEAE1D, 0x9B64C2B0, 0xEC63F226, 0x756AA39C, 0x026D930A, 0x9C0906A9, 0xEB0E363F, 0x72076785, 0x05005713, 0x95BF4A82, 0xE2B87A14, 0x7BB12BAE, 0x0CB61B38, 0x92D28E9B, 0xE5D5BE0D, 0x7CDCEFB7, 0x0BDBDF21, 0x86D3D2D4, 0xF1D4E242, 0x68DDB3F8, 0x1FDA836E, 0x81BE16CD, 0xF6B9265B, 0x6FB077E1, 0x18B74777, 0x88085AE6, 0xFF0F6A70, 0x66063BCA, 0x11010B5C, 0x8F659EFF, 0xF862AE69, 0x616BFFD3, 0x166CCF45, 0xA00AE278, 0xD70DD2EE, 0x4E048354, 0x3903B3C2, 0xA7672661, 0xD06016F7, 0x4969474D, 0x3E6E77DB, 0xAED16A4A, 0xD9D65ADC, 0x40DF0B66, 0x37D83BF0, 0xA9BCAE53, 0xDEBB9EC5, 0x47B2CF7F, 0x30B5FFE9, 0xBDBDF21C, 0xCABAC28A, 0x53B39330, 0x24B4A3A6, 0xBAD03605, 0xCDD70693, 0x54DE5729, 0x23D967BF, 0xB3667A2E, 0xC4614AB8, 0x5D681B02, 0x2A6F2B94, 0xB40BBE37, 0xC30C8EA1, 0x5A05DF1B, 0x2D02EF8D];
+
+if (global.Int32Array !== undefined) {
+ table = new Int32Array(table);
+}
+
+module.exports = crc32;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/createArrayFromMixed.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/createArrayFromMixed.js
new file mode 100644
index 00000000..879141ae
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/createArrayFromMixed.js
@@ -0,0 +1,124 @@
+'use strict';
+
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @typechecks
+ */
+
+var invariant = require('./invariant');
+
+/**
+ * Convert array-like objects to arrays.
+ *
+ * This API assumes the caller knows the contents of the data type. For less
+ * well defined inputs use createArrayFromMixed.
+ *
+ * @param {object|function|filelist} obj
+ * @return {array}
+ */
+function toArray(obj) {
+ var length = obj.length;
+
+ // Some browsers builtin objects can report typeof 'function' (e.g. NodeList
+ // in old versions of Safari).
+ !(!Array.isArray(obj) && (typeof obj === 'object' || typeof obj === 'function')) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'toArray: Array-like object expected') : invariant(false) : void 0;
+
+ !(typeof length === 'number') ? process.env.NODE_ENV !== 'production' ? invariant(false, 'toArray: Object needs a length property') : invariant(false) : void 0;
+
+ !(length === 0 || length - 1 in obj) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'toArray: Object should have keys for indices') : invariant(false) : void 0;
+
+ !(typeof obj.callee !== 'function') ? process.env.NODE_ENV !== 'production' ? invariant(false, 'toArray: Object can\'t be `arguments`. Use rest params ' + '(function(...args) {}) or Array.from() instead.') : invariant(false) : void 0;
+
+ // Old IE doesn't give collections access to hasOwnProperty. Assume inputs
+ // without method will throw during the slice call and skip straight to the
+ // fallback.
+ if (obj.hasOwnProperty) {
+ try {
+ return Array.prototype.slice.call(obj);
+ } catch (e) {
+ // IE < 9 does not support Array#slice on collections objects
+ }
+ }
+
+ // Fall back to copying key by key. This assumes all keys have a value,
+ // so will not preserve sparsely populated inputs.
+ var ret = Array(length);
+ for (var ii = 0; ii < length; ii++) {
+ ret[ii] = obj[ii];
+ }
+ return ret;
+}
+
+/**
+ * Perform a heuristic test to determine if an object is "array-like".
+ *
+ * A monk asked Joshu, a Zen master, "Has a dog Buddha nature?"
+ * Joshu replied: "Mu."
+ *
+ * This function determines if its argument has "array nature": it returns
+ * true if the argument is an actual array, an `arguments' object, or an
+ * HTMLCollection (e.g. node.childNodes or node.getElementsByTagName()).
+ *
+ * It will return false for other array-like objects like Filelist.
+ *
+ * @param {*} obj
+ * @return {boolean}
+ */
+function hasArrayNature(obj) {
+ return (
+ // not null/false
+ !!obj && (
+ // arrays are objects, NodeLists are functions in Safari
+ typeof obj == 'object' || typeof obj == 'function') &&
+ // quacks like an array
+ 'length' in obj &&
+ // not window
+ !('setInterval' in obj) &&
+ // no DOM node should be considered an array-like
+ // a 'select' element has 'length' and 'item' properties on IE8
+ typeof obj.nodeType != 'number' && (
+ // a real array
+ Array.isArray(obj) ||
+ // arguments
+ 'callee' in obj ||
+ // HTMLCollection/NodeList
+ 'item' in obj)
+ );
+}
+
+/**
+ * Ensure that the argument is an array by wrapping it in an array if it is not.
+ * Creates a copy of the argument if it is already an array.
+ *
+ * This is mostly useful idiomatically:
+ *
+ * var createArrayFromMixed = require('createArrayFromMixed');
+ *
+ * function takesOneOrMoreThings(things) {
+ * things = createArrayFromMixed(things);
+ * ...
+ * }
+ *
+ * This allows you to treat `things' as an array, but accept scalars in the API.
+ *
+ * If you need to convert an array-like object, like `arguments`, into an array
+ * use toArray instead.
+ *
+ * @param {*} obj
+ * @return {array}
+ */
+function createArrayFromMixed(obj) {
+ if (!hasArrayNature(obj)) {
+ return [obj];
+ } else if (Array.isArray(obj)) {
+ return obj.slice();
+ } else {
+ return toArray(obj);
+ }
+}
+
+module.exports = createArrayFromMixed;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/createArrayFromMixed.js.flow b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/createArrayFromMixed.js.flow
new file mode 100644
index 00000000..1448db10
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/createArrayFromMixed.js.flow
@@ -0,0 +1,123 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @providesModule createArrayFromMixed
+ * @typechecks
+ */
+
+const invariant = require('./invariant');
+
+/**
+ * Convert array-like objects to arrays.
+ *
+ * This API assumes the caller knows the contents of the data type. For less
+ * well defined inputs use createArrayFromMixed.
+ *
+ * @param {object|function|filelist} obj
+ * @return {array}
+ */
+function toArray(obj) {
+ const length = obj.length;
+
+ // Some browsers builtin objects can report typeof 'function' (e.g. NodeList
+ // in old versions of Safari).
+ invariant(!Array.isArray(obj) && (typeof obj === 'object' || typeof obj === 'function'), 'toArray: Array-like object expected');
+
+ invariant(typeof length === 'number', 'toArray: Object needs a length property');
+
+ invariant(length === 0 || length - 1 in obj, 'toArray: Object should have keys for indices');
+
+ invariant(typeof obj.callee !== 'function', 'toArray: Object can\'t be `arguments`. Use rest params ' + '(function(...args) {}) or Array.from() instead.');
+
+ // Old IE doesn't give collections access to hasOwnProperty. Assume inputs
+ // without method will throw during the slice call and skip straight to the
+ // fallback.
+ if (obj.hasOwnProperty) {
+ try {
+ return Array.prototype.slice.call(obj);
+ } catch (e) {
+ // IE < 9 does not support Array#slice on collections objects
+ }
+ }
+
+ // Fall back to copying key by key. This assumes all keys have a value,
+ // so will not preserve sparsely populated inputs.
+ const ret = Array(length);
+ for (let ii = 0; ii < length; ii++) {
+ ret[ii] = obj[ii];
+ }
+ return ret;
+}
+
+/**
+ * Perform a heuristic test to determine if an object is "array-like".
+ *
+ * A monk asked Joshu, a Zen master, "Has a dog Buddha nature?"
+ * Joshu replied: "Mu."
+ *
+ * This function determines if its argument has "array nature": it returns
+ * true if the argument is an actual array, an `arguments' object, or an
+ * HTMLCollection (e.g. node.childNodes or node.getElementsByTagName()).
+ *
+ * It will return false for other array-like objects like Filelist.
+ *
+ * @param {*} obj
+ * @return {boolean}
+ */
+function hasArrayNature(obj) {
+ return (
+ // not null/false
+ !!obj && (
+ // arrays are objects, NodeLists are functions in Safari
+ typeof obj == 'object' || typeof obj == 'function') &&
+ // quacks like an array
+ 'length' in obj &&
+ // not window
+ !('setInterval' in obj) &&
+ // no DOM node should be considered an array-like
+ // a 'select' element has 'length' and 'item' properties on IE8
+ typeof obj.nodeType != 'number' && (
+ // a real array
+ Array.isArray(obj) ||
+ // arguments
+ 'callee' in obj ||
+ // HTMLCollection/NodeList
+ 'item' in obj)
+ );
+}
+
+/**
+ * Ensure that the argument is an array by wrapping it in an array if it is not.
+ * Creates a copy of the argument if it is already an array.
+ *
+ * This is mostly useful idiomatically:
+ *
+ * var createArrayFromMixed = require('createArrayFromMixed');
+ *
+ * function takesOneOrMoreThings(things) {
+ * things = createArrayFromMixed(things);
+ * ...
+ * }
+ *
+ * This allows you to treat `things' as an array, but accept scalars in the API.
+ *
+ * If you need to convert an array-like object, like `arguments`, into an array
+ * use toArray instead.
+ *
+ * @param {*} obj
+ * @return {array}
+ */
+function createArrayFromMixed(obj) {
+ if (!hasArrayNature(obj)) {
+ return [obj];
+ } else if (Array.isArray(obj)) {
+ return obj.slice();
+ } else {
+ return toArray(obj);
+ }
+}
+
+module.exports = createArrayFromMixed;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/createNodesFromMarkup.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/createNodesFromMarkup.js
new file mode 100644
index 00000000..a0c21611
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/fbjs/lib/createNodesFromMarkup.js
@@ -0,0 +1,81 @@
+'use strict';
+
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
+ * @typechecks
+ */
+
+/*eslint-disable fb-www/unsafe-html*/
+
+var ExecutionEnvironment = require('./ExecutionEnvironment');
+
+var createArrayFromMixed = require('./createArrayFromMixed');
+var getMarkupWrap = require('./getMarkupWrap');
+var invariant = require('./invariant');
+
+/**
+ * Dummy container used to render all markup.
+ */
+var dummyNode = ExecutionEnvironment.canUseDOM ? document.createElement('div') : null;
+
+/**
+ * Pattern used by `getNodeName`.
+ */
+var nodeNamePattern = /^\s*<(\w+)/;
+
+/**
+ * Extracts the `nodeName` of the first element in a string of markup.
+ *
+ * @param {string} markup String of markup.
+ * @return {?string} Node name of the supplied markup.
+ */
+function getNodeName(markup) {
+ var nodeNameMatch = markup.match(nodeNamePattern);
+ return nodeNameMatch && nodeNameMatch[1].toLowerCase();
+}
+
+/**
+ * Creates an array containing the nodes rendered from the supplied markup. The
+ * optionally supplied `handleScript` function will be invoked once for each
+ *
+
+
+
+
+```
+
+## Browser Support
+It supports all major browsers with the following versions. For other, unsupported browses, we automatically use a fallback.
+* Chrome: 46+
+* Android (Chrome): 46+
+* Android (Stock Browser): 4+
+* Android (UC): 9+
+* Firefox: 40+
+* Safari: 8+
+* iOS (Safari): 8+
+* Opera: 16+
+* Opera (Mini): 12+
+* IE: 11+
+* IE (Mobile): 11+
+* Edge: 12+
+
+It will **only** add prefixes if a property still needs them in one of the above mentioned versions. Therefore, e.g. `border-radius` will not be prefixed at all.
+
+> **Need to support legacy browser versions?**
+Don't worry - we got you covered. Check [this guide](https://github.com/rofrischmann/inline-style-prefixer/blob/master/docs/guides/CustomPrefixer.md).
+
+
+## Dynamic vs. Static
+Before using the prefixer, you have to decide which one you want to use. We ship two different versions - a dynamic and a static version.
+
+The **dynamic prefixer** evaluates the `userAgent` to identify the browser environment. Using this technique, we are able to only add the bare minimum of prefixes. Browser detection is quite accurate (~90% correctness), but yet also expensive which is why the package is almost 3 times as big as the static version.
+
+> It uses the static prefixer as a fallback.
+
+
+
+```javascript
+import Prefixer from 'inline-style-prefixer'
+
+const style = {
+ transition: '200ms all linear',
+ userSelect: 'none',
+ boxSizing: 'border-box',
+ display: 'flex',
+ color: 'blue'
+}
+
+const prefixer = new Prefixer()
+const prefixedStyle = prefixer.prefix(style)
+
+// prefixedStyle === output
+const output = {
+ transition: '200ms all linear',
+ WebkitUserSelect: 'none',
+ boxSizing: 'border-box',
+ display: '-webkit-flex',
+ color: 'blue'
+}
+```
+
+The **static prefixer**, on the other hand, adds all required prefixes according the above mentioned browser versions. Removing the browser detection makes it both smaller and fast, but also drastically increases the output.
+
+
+
+```javascript
+import prefixAll from 'inline-style-prefixer/static'
+
+const style = {
+ transition: '200ms all linear',
+ boxSizing: 'border-box',
+ display: 'flex',
+ color: 'blue'
+}
+
+const prefixedStyle = prefixAll(style)
+
+// prefixedStyle === output
+const output = {
+ WebkitTransition: '200ms all linear',
+ transition: '200ms all linear',
+ MozBoxSizing: 'border-box',
+ boxSizing: 'border-box',
+ display: [ '-webkit-box', '-moz-box', '-ms-flexbox', '-webkit-flex', 'flex' ]
+ color: 'blue'
+}
+```
+
+## Usage with TypeScript
+You can use TypeScript definition from [DefinitelyTyped](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/inline-style-prefixer) using [@types/inline-style-prefixer](https://www.npmjs.com/package/@types/inline-style-prefixer)
+
+```sh
+npm install --save @types/inline-style-prefixer
+```
+
+Then import in your code:
+
+```typescript
+import prefixAll = require('inline-style-prefixer/static');
+
+const prefixedStyle = prefixAll({
+ transition: '200ms all linear',
+ boxSizing: 'border-box',
+ display: 'flex',
+ color: 'blue'
+});
+```
+
+## Documentation
+If you got any issue using this prefixer, please first check the FAQ's. Most cases are already covered and provide a solid solution.
+
+* [Usage Guides](https://inline-style-prefixer.js.org/docs/UsageGuides.html)
+* [Data Reference](https://inline-style-prefixer.js.org/docs/DataReference.html)
+* [API Reference](https://inline-style-prefixer.js.org/docs/API.html)
+* [FAQ](https://inline-style-prefixer.js.org/docs/FAQ.html)
+
+## Community
+Here are some popular users of this library:
+
+* [Aphrodite](https://github.com/Khan/aphrodite)
+* [Fela](https://github.com/rofrischmann/fela)
+* [Glamor](https://github.com/threepointone/glamor)
+* [Material UI](https://github.com/callemall/material-ui)
+* [Radium](https://github.com/FormidableLabs/radium)
+* [react-native-web](https://github.com/necolas/react-native-web)
+* [styled-components](https://github.com/styled-components/styled-components)
+* [Styletron](https://github.com/rtsao/styletron)
+
+> PS: Feel free to add your solution!
+
+## Support
+Join us on [Gitter](https://gitter.im/rofrischmann/fela). We highly appreciate any contribution.
+We also love to get feedback.
+
+## License
+**inline-style-prefixer** is licensed under the [MIT License](http://opensource.org/licenses/MIT).
+Documentation is licensed under [Creative Common License](http://creativecommons.org/licenses/by/4.0/).
+Created with ♥ by [@rofrischmann](http://rofrischmann.de) and all contributors.
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/createPrefixer.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/createPrefixer.js
new file mode 100644
index 00000000..c00ee541
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/createPrefixer.js
@@ -0,0 +1,175 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+exports.default = createPrefixer;
+
+var _getBrowserInformation = require('../utils/getBrowserInformation');
+
+var _getBrowserInformation2 = _interopRequireDefault(_getBrowserInformation);
+
+var _getPrefixedKeyframes = require('../utils/getPrefixedKeyframes');
+
+var _getPrefixedKeyframes2 = _interopRequireDefault(_getPrefixedKeyframes);
+
+var _capitalizeString = require('../utils/capitalizeString');
+
+var _capitalizeString2 = _interopRequireDefault(_capitalizeString);
+
+var _addNewValuesOnly = require('../utils/addNewValuesOnly');
+
+var _addNewValuesOnly2 = _interopRequireDefault(_addNewValuesOnly);
+
+var _isObject = require('../utils/isObject');
+
+var _isObject2 = _interopRequireDefault(_isObject);
+
+var _prefixValue = require('../utils/prefixValue');
+
+var _prefixValue2 = _interopRequireDefault(_prefixValue);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+function createPrefixer(_ref) {
+ var prefixMap = _ref.prefixMap,
+ plugins = _ref.plugins;
+ var fallback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : function (style) {
+ return style;
+ };
+
+ return function () {
+ /**
+ * Instantiante a new prefixer
+ * @param {string} userAgent - userAgent to gather prefix information according to caniuse.com
+ * @param {string} keepUnprefixed - keeps unprefixed properties and values
+ */
+ function Prefixer() {
+ var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
+
+ _classCallCheck(this, Prefixer);
+
+ var defaultUserAgent = typeof navigator !== 'undefined' ? navigator.userAgent : undefined;
+
+ this._userAgent = options.userAgent || defaultUserAgent;
+ this._keepUnprefixed = options.keepUnprefixed || false;
+
+ if (this._userAgent) {
+ this._browserInfo = (0, _getBrowserInformation2.default)(this._userAgent);
+ }
+
+ // Checks if the userAgent was resolved correctly
+ if (this._browserInfo && this._browserInfo.cssPrefix) {
+ this.prefixedKeyframes = (0, _getPrefixedKeyframes2.default)(this._browserInfo.browserName, this._browserInfo.browserVersion, this._browserInfo.cssPrefix);
+ } else {
+ this._useFallback = true;
+ return false;
+ }
+
+ var prefixData = this._browserInfo.browserName && prefixMap[this._browserInfo.browserName];
+ if (prefixData) {
+ this._requiresPrefix = {};
+
+ for (var property in prefixData) {
+ if (prefixData[property] >= this._browserInfo.browserVersion) {
+ this._requiresPrefix[property] = true;
+ }
+ }
+
+ this._hasPropsRequiringPrefix = Object.keys(this._requiresPrefix).length > 0;
+ } else {
+ this._useFallback = true;
+ }
+
+ this._metaData = {
+ browserVersion: this._browserInfo.browserVersion,
+ browserName: this._browserInfo.browserName,
+ cssPrefix: this._browserInfo.cssPrefix,
+ jsPrefix: this._browserInfo.jsPrefix,
+ keepUnprefixed: this._keepUnprefixed,
+ requiresPrefix: this._requiresPrefix
+ };
+ }
+
+ _createClass(Prefixer, [{
+ key: 'prefix',
+ value: function prefix(style) {
+ // use static prefixer as fallback if userAgent can not be resolved
+ if (this._useFallback) {
+ return fallback(style);
+ }
+
+ // only add prefixes if needed
+ if (!this._hasPropsRequiringPrefix) {
+ return style;
+ }
+
+ return this._prefixStyle(style);
+ }
+ }, {
+ key: '_prefixStyle',
+ value: function _prefixStyle(style) {
+ for (var property in style) {
+ var value = style[property];
+
+ // handle nested objects
+ if ((0, _isObject2.default)(value)) {
+ style[property] = this.prefix(value);
+ // handle array values
+ } else if (Array.isArray(value)) {
+ var combinedValue = [];
+
+ for (var i = 0, len = value.length; i < len; ++i) {
+ var processedValue = (0, _prefixValue2.default)(plugins, property, value[i], style, this._metaData);
+ (0, _addNewValuesOnly2.default)(combinedValue, processedValue || value[i]);
+ }
+
+ // only modify the value if it was touched
+ // by any plugin to prevent unnecessary mutations
+ if (combinedValue.length > 0) {
+ style[property] = combinedValue;
+ }
+ } else {
+ var _processedValue = (0, _prefixValue2.default)(plugins, property, value, style, this._metaData);
+
+ // only modify the value if it was touched
+ // by any plugin to prevent unnecessary mutations
+ if (_processedValue) {
+ style[property] = _processedValue;
+ }
+
+ // add prefixes to properties
+ if (this._requiresPrefix.hasOwnProperty(property)) {
+ style[this._browserInfo.jsPrefix + (0, _capitalizeString2.default)(property)] = value;
+ if (!this._keepUnprefixed) {
+ delete style[property];
+ }
+ }
+ }
+ }
+
+ return style;
+ }
+
+ /**
+ * Returns a prefixed version of the style object using all vendor prefixes
+ * @param {Object} styles - Style object that gets prefixed properties added
+ * @returns {Object} - Style object with prefixed properties and values
+ */
+
+ }], [{
+ key: 'prefixAll',
+ value: function prefixAll(styles) {
+ return fallback(styles);
+ }
+ }]);
+
+ return Prefixer;
+ }();
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/dynamicData.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/dynamicData.js
new file mode 100644
index 00000000..21dd1662
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/dynamicData.js
@@ -0,0 +1,10 @@
+"use strict";
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = {
+ plugins: [],
+ prefixMap: { "chrome": { "appearance": 64, "userSelect": 53, "textEmphasisPosition": 64, "textEmphasis": 64, "textEmphasisStyle": 64, "textEmphasisColor": 64, "boxDecorationBreak": 64, "clipPath": 54, "maskImage": 64, "maskMode": 64, "maskRepeat": 64, "maskPosition": 64, "maskClip": 64, "maskOrigin": 64, "maskSize": 64, "maskComposite": 64, "mask": 64, "maskBorderSource": 64, "maskBorderMode": 64, "maskBorderSlice": 64, "maskBorderWidth": 64, "maskBorderOutset": 64, "maskBorderRepeat": 64, "maskBorder": 64, "maskType": 64, "textDecorationStyle": 56, "textDecorationSkip": 56, "textDecorationLine": 56, "textDecorationColor": 56, "filter": 52, "fontFeatureSettings": 47, "breakAfter": 49, "breakBefore": 49, "breakInside": 49, "columnCount": 49, "columnFill": 49, "columnGap": 49, "columnRule": 49, "columnRuleColor": 49, "columnRuleStyle": 49, "columnRuleWidth": 49, "columns": 49, "columnSpan": 49, "columnWidth": 49, "writingMode": 47 }, "safari": { "flex": 8, "flexBasis": 8, "flexDirection": 8, "flexGrow": 8, "flexFlow": 8, "flexShrink": 8, "flexWrap": 8, "alignContent": 8, "alignItems": 8, "alignSelf": 8, "justifyContent": 8, "order": 8, "transform": 8, "transformOrigin": 8, "transformOriginX": 8, "transformOriginY": 8, "backfaceVisibility": 8, "perspective": 8, "perspectiveOrigin": 8, "transformStyle": 8, "transformOriginZ": 8, "animation": 8, "animationDelay": 8, "animationDirection": 8, "animationFillMode": 8, "animationDuration": 8, "animationIterationCount": 8, "animationName": 8, "animationPlayState": 8, "animationTimingFunction": 8, "appearance": 11, "userSelect": 11, "backdropFilter": 11, "fontKerning": 9, "scrollSnapType": 10.1, "scrollSnapPointsX": 10.1, "scrollSnapPointsY": 10.1, "scrollSnapDestination": 10.1, "scrollSnapCoordinate": 10.1, "boxDecorationBreak": 11, "clipPath": 11, "maskImage": 11, "maskMode": 11, "maskRepeat": 11, "maskPosition": 11, "maskClip": 11, "maskOrigin": 11, "maskSize": 11, "maskComposite": 11, "mask": 11, "maskBorderSource": 11, "maskBorderMode": 11, "maskBorderSlice": 11, "maskBorderWidth": 11, "maskBorderOutset": 11, "maskBorderRepeat": 11, "maskBorder": 11, "maskType": 11, "textDecorationStyle": 11, "textDecorationSkip": 11, "textDecorationLine": 11, "textDecorationColor": 11, "shapeImageThreshold": 10, "shapeImageMargin": 10, "shapeImageOutside": 10, "filter": 9, "hyphens": 11, "flowInto": 11, "flowFrom": 11, "breakBefore": 8, "breakAfter": 8, "breakInside": 8, "regionFragment": 11, "columnCount": 8, "columnFill": 8, "columnGap": 8, "columnRule": 8, "columnRuleColor": 8, "columnRuleStyle": 8, "columnRuleWidth": 8, "columns": 8, "columnSpan": 8, "columnWidth": 8, "writingMode": 11 }, "firefox": { "appearance": 58, "userSelect": 58, "textAlignLast": 48, "tabSize": 58, "hyphens": 42, "breakAfter": 51, "breakBefore": 51, "breakInside": 51, "columnCount": 51, "columnFill": 51, "columnGap": 51, "columnRule": 51, "columnRuleColor": 51, "columnRuleStyle": 51, "columnRuleWidth": 51, "columns": 51, "columnSpan": 51, "columnWidth": 51 }, "opera": { "flex": 16, "flexBasis": 16, "flexDirection": 16, "flexGrow": 16, "flexFlow": 16, "flexShrink": 16, "flexWrap": 16, "alignContent": 16, "alignItems": 16, "alignSelf": 16, "justifyContent": 16, "order": 16, "transform": 22, "transformOrigin": 22, "transformOriginX": 22, "transformOriginY": 22, "backfaceVisibility": 22, "perspective": 22, "perspectiveOrigin": 22, "transformStyle": 22, "transformOriginZ": 22, "animation": 29, "animationDelay": 29, "animationDirection": 29, "animationFillMode": 29, "animationDuration": 29, "animationIterationCount": 29, "animationName": 29, "animationPlayState": 29, "animationTimingFunction": 29, "appearance": 49, "userSelect": 40, "fontKerning": 19, "textEmphasisPosition": 49, "textEmphasis": 49, "textEmphasisStyle": 49, "textEmphasisColor": 49, "boxDecorationBreak": 49, "clipPath": 41, "maskImage": 49, "maskMode": 49, "maskRepeat": 49, "maskPosition": 49, "maskClip": 49, "maskOrigin": 49, "maskSize": 49, "maskComposite": 49, "mask": 49, "maskBorderSource": 49, "maskBorderMode": 49, "maskBorderSlice": 49, "maskBorderWidth": 49, "maskBorderOutset": 49, "maskBorderRepeat": 49, "maskBorder": 49, "maskType": 49, "textDecorationStyle": 43, "textDecorationSkip": 43, "textDecorationLine": 43, "textDecorationColor": 43, "filter": 39, "fontFeatureSettings": 34, "breakAfter": 36, "breakBefore": 36, "breakInside": 36, "columnCount": 36, "columnFill": 36, "columnGap": 36, "columnRule": 36, "columnRuleColor": 36, "columnRuleStyle": 36, "columnRuleWidth": 36, "columns": 36, "columnSpan": 36, "columnWidth": 36, "writingMode": 34 }, "ie": { "userSelect": 11, "wrapFlow": 11, "wrapThrough": 11, "wrapMargin": 11, "scrollSnapType": 11, "scrollSnapPointsX": 11, "scrollSnapPointsY": 11, "scrollSnapDestination": 11, "scrollSnapCoordinate": 11, "hyphens": 11, "flowInto": 11, "flowFrom": 11, "breakBefore": 11, "breakAfter": 11, "breakInside": 11, "regionFragment": 11, "gridTemplateColumns": 11, "gridTemplateRows": 11, "gridTemplateAreas": 11, "gridTemplate": 11, "gridAutoColumns": 11, "gridAutoRows": 11, "gridAutoFlow": 11, "grid": 11, "gridRowStart": 11, "gridColumnStart": 11, "gridRowEnd": 11, "gridRow": 11, "gridColumn": 11, "gridColumnEnd": 11, "gridColumnGap": 11, "gridRowGap": 11, "gridArea": 11, "gridGap": 11, "textSizeAdjust": 11, "writingMode": 11 }, "edge": { "userSelect": 16, "wrapFlow": 16, "wrapThrough": 16, "wrapMargin": 16, "scrollSnapType": 16, "scrollSnapPointsX": 16, "scrollSnapPointsY": 16, "scrollSnapDestination": 16, "scrollSnapCoordinate": 16, "hyphens": 16, "flowInto": 16, "flowFrom": 16, "breakBefore": 16, "breakAfter": 16, "breakInside": 16, "regionFragment": 16, "gridTemplateColumns": 15, "gridTemplateRows": 15, "gridTemplateAreas": 15, "gridTemplate": 15, "gridAutoColumns": 15, "gridAutoRows": 15, "gridAutoFlow": 15, "grid": 15, "gridRowStart": 15, "gridColumnStart": 15, "gridRowEnd": 15, "gridRow": 15, "gridColumn": 15, "gridColumnEnd": 15, "gridColumnGap": 15, "gridRowGap": 15, "gridArea": 15, "gridGap": 15 }, "ios_saf": { "flex": 8.1, "flexBasis": 8.1, "flexDirection": 8.1, "flexGrow": 8.1, "flexFlow": 8.1, "flexShrink": 8.1, "flexWrap": 8.1, "alignContent": 8.1, "alignItems": 8.1, "alignSelf": 8.1, "justifyContent": 8.1, "order": 8.1, "transform": 8.1, "transformOrigin": 8.1, "transformOriginX": 8.1, "transformOriginY": 8.1, "backfaceVisibility": 8.1, "perspective": 8.1, "perspectiveOrigin": 8.1, "transformStyle": 8.1, "transformOriginZ": 8.1, "animation": 8.1, "animationDelay": 8.1, "animationDirection": 8.1, "animationFillMode": 8.1, "animationDuration": 8.1, "animationIterationCount": 8.1, "animationName": 8.1, "animationPlayState": 8.1, "animationTimingFunction": 8.1, "appearance": 11, "userSelect": 11, "backdropFilter": 11, "fontKerning": 11, "scrollSnapType": 11, "scrollSnapPointsX": 11, "scrollSnapPointsY": 11, "scrollSnapDestination": 11, "scrollSnapCoordinate": 11, "boxDecorationBreak": 11, "clipPath": 11, "maskImage": 11, "maskMode": 11, "maskRepeat": 11, "maskPosition": 11, "maskClip": 11, "maskOrigin": 11, "maskSize": 11, "maskComposite": 11, "mask": 11, "maskBorderSource": 11, "maskBorderMode": 11, "maskBorderSlice": 11, "maskBorderWidth": 11, "maskBorderOutset": 11, "maskBorderRepeat": 11, "maskBorder": 11, "maskType": 11, "textSizeAdjust": 11, "textDecorationStyle": 11, "textDecorationSkip": 11, "textDecorationLine": 11, "textDecorationColor": 11, "shapeImageThreshold": 10, "shapeImageMargin": 10, "shapeImageOutside": 10, "filter": 9, "hyphens": 11, "flowInto": 11, "flowFrom": 11, "breakBefore": 8.1, "breakAfter": 8.1, "breakInside": 8.1, "regionFragment": 11, "columnCount": 8.1, "columnFill": 8.1, "columnGap": 8.1, "columnRule": 8.1, "columnRuleColor": 8.1, "columnRuleStyle": 8.1, "columnRuleWidth": 8.1, "columns": 8.1, "columnSpan": 8.1, "columnWidth": 8.1, "writingMode": 11 }, "android": { "borderImage": 4.2, "borderImageOutset": 4.2, "borderImageRepeat": 4.2, "borderImageSlice": 4.2, "borderImageSource": 4.2, "borderImageWidth": 4.2, "flex": 4.2, "flexBasis": 4.2, "flexDirection": 4.2, "flexGrow": 4.2, "flexFlow": 4.2, "flexShrink": 4.2, "flexWrap": 4.2, "alignContent": 4.2, "alignItems": 4.2, "alignSelf": 4.2, "justifyContent": 4.2, "order": 4.2, "transition": 4.2, "transitionDelay": 4.2, "transitionDuration": 4.2, "transitionProperty": 4.2, "transitionTimingFunction": 4.2, "transform": 4.4, "transformOrigin": 4.4, "transformOriginX": 4.4, "transformOriginY": 4.4, "backfaceVisibility": 4.4, "perspective": 4.4, "perspectiveOrigin": 4.4, "transformStyle": 4.4, "transformOriginZ": 4.4, "animation": 4.4, "animationDelay": 4.4, "animationDirection": 4.4, "animationFillMode": 4.4, "animationDuration": 4.4, "animationIterationCount": 4.4, "animationName": 4.4, "animationPlayState": 4.4, "animationTimingFunction": 4.4, "appearance": 56, "userSelect": 4.4, "fontKerning": 4.4, "textEmphasisPosition": 56, "textEmphasis": 56, "textEmphasisStyle": 56, "textEmphasisColor": 56, "boxDecorationBreak": 56, "clipPath": 4.4, "maskImage": 56, "maskMode": 56, "maskRepeat": 56, "maskPosition": 56, "maskClip": 56, "maskOrigin": 56, "maskSize": 56, "maskComposite": 56, "mask": 56, "maskBorderSource": 56, "maskBorderMode": 56, "maskBorderSlice": 56, "maskBorderWidth": 56, "maskBorderOutset": 56, "maskBorderRepeat": 56, "maskBorder": 56, "maskType": 56, "filter": 4.4, "fontFeatureSettings": 4.4, "breakAfter": 4.4, "breakBefore": 4.4, "breakInside": 4.4, "columnCount": 4.4, "columnFill": 4.4, "columnGap": 4.4, "columnRule": 4.4, "columnRuleColor": 4.4, "columnRuleStyle": 4.4, "columnRuleWidth": 4.4, "columns": 4.4, "columnSpan": 4.4, "columnWidth": 4.4, "writingMode": 4.4 }, "and_chr": { "appearance": 61, "textEmphasisPosition": 61, "textEmphasis": 61, "textEmphasisStyle": 61, "textEmphasisColor": 61, "boxDecorationBreak": 61, "maskImage": 61, "maskMode": 61, "maskRepeat": 61, "maskPosition": 61, "maskClip": 61, "maskOrigin": 61, "maskSize": 61, "maskComposite": 61, "mask": 61, "maskBorderSource": 61, "maskBorderMode": 61, "maskBorderSlice": 61, "maskBorderWidth": 61, "maskBorderOutset": 61, "maskBorderRepeat": 61, "maskBorder": 61, "maskType": 61 }, "and_uc": { "flex": 11.4, "flexBasis": 11.4, "flexDirection": 11.4, "flexGrow": 11.4, "flexFlow": 11.4, "flexShrink": 11.4, "flexWrap": 11.4, "alignContent": 11.4, "alignItems": 11.4, "alignSelf": 11.4, "justifyContent": 11.4, "order": 11.4, "transform": 11.4, "transformOrigin": 11.4, "transformOriginX": 11.4, "transformOriginY": 11.4, "backfaceVisibility": 11.4, "perspective": 11.4, "perspectiveOrigin": 11.4, "transformStyle": 11.4, "transformOriginZ": 11.4, "animation": 11.4, "animationDelay": 11.4, "animationDirection": 11.4, "animationFillMode": 11.4, "animationDuration": 11.4, "animationIterationCount": 11.4, "animationName": 11.4, "animationPlayState": 11.4, "animationTimingFunction": 11.4, "appearance": 11.4, "userSelect": 11.4, "textEmphasisPosition": 11.4, "textEmphasis": 11.4, "textEmphasisStyle": 11.4, "textEmphasisColor": 11.4, "clipPath": 11.4, "maskImage": 11.4, "maskMode": 11.4, "maskRepeat": 11.4, "maskPosition": 11.4, "maskClip": 11.4, "maskOrigin": 11.4, "maskSize": 11.4, "maskComposite": 11.4, "mask": 11.4, "maskBorderSource": 11.4, "maskBorderMode": 11.4, "maskBorderSlice": 11.4, "maskBorderWidth": 11.4, "maskBorderOutset": 11.4, "maskBorderRepeat": 11.4, "maskBorder": 11.4, "maskType": 11.4, "textSizeAdjust": 11.4, "filter": 11.4, "hyphens": 11.4, "fontFeatureSettings": 11.4, "breakAfter": 11.4, "breakBefore": 11.4, "breakInside": 11.4, "columnCount": 11.4, "columnFill": 11.4, "columnGap": 11.4, "columnRule": 11.4, "columnRuleColor": 11.4, "columnRuleStyle": 11.4, "columnRuleWidth": 11.4, "columns": 11.4, "columnSpan": 11.4, "columnWidth": 11.4, "writingMode": 11.4 }, "op_mini": {} }
+};
+module.exports = exports["default"];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/index.js
new file mode 100644
index 00000000..4ed7de8d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/index.js
@@ -0,0 +1,68 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _createPrefixer = require('./createPrefixer');
+
+var _createPrefixer2 = _interopRequireDefault(_createPrefixer);
+
+var _cursor = require('./plugins/cursor');
+
+var _cursor2 = _interopRequireDefault(_cursor);
+
+var _crossFade = require('./plugins/crossFade');
+
+var _crossFade2 = _interopRequireDefault(_crossFade);
+
+var _filter = require('./plugins/filter');
+
+var _filter2 = _interopRequireDefault(_filter);
+
+var _flex = require('./plugins/flex');
+
+var _flex2 = _interopRequireDefault(_flex);
+
+var _flexboxOld = require('./plugins/flexboxOld');
+
+var _flexboxOld2 = _interopRequireDefault(_flexboxOld);
+
+var _gradient = require('./plugins/gradient');
+
+var _gradient2 = _interopRequireDefault(_gradient);
+
+var _imageSet = require('./plugins/imageSet');
+
+var _imageSet2 = _interopRequireDefault(_imageSet);
+
+var _position = require('./plugins/position');
+
+var _position2 = _interopRequireDefault(_position);
+
+var _sizing = require('./plugins/sizing');
+
+var _sizing2 = _interopRequireDefault(_sizing);
+
+var _transition = require('./plugins/transition');
+
+var _transition2 = _interopRequireDefault(_transition);
+
+var _static = require('../static');
+
+var _static2 = _interopRequireDefault(_static);
+
+var _dynamicData = require('./dynamicData');
+
+var _dynamicData2 = _interopRequireDefault(_dynamicData);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var plugins = [_crossFade2.default, _cursor2.default, _filter2.default, _flexboxOld2.default, _gradient2.default, _imageSet2.default, _position2.default, _sizing2.default, _transition2.default, _flex2.default];
+
+var Prefixer = (0, _createPrefixer2.default)({
+ prefixMap: _dynamicData2.default.prefixMap,
+ plugins: plugins
+}, _static2.default);
+exports.default = Prefixer;
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/calc.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/calc.js
new file mode 100644
index 00000000..e1dc923f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/calc.js
@@ -0,0 +1,24 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = calc;
+
+var _getPrefixedValue = require('../../utils/getPrefixedValue');
+
+var _getPrefixedValue2 = _interopRequireDefault(_getPrefixedValue);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function calc(property, value, style, _ref) {
+ var browserName = _ref.browserName,
+ browserVersion = _ref.browserVersion,
+ cssPrefix = _ref.cssPrefix,
+ keepUnprefixed = _ref.keepUnprefixed;
+
+ if (typeof value === 'string' && value.indexOf('calc(') > -1 && (browserName === 'firefox' && browserVersion < 15 || browserName === 'chrome' && browserVersion < 25 || browserName === 'safari' && browserVersion < 6.1 || browserName === 'ios_saf' && browserVersion < 7)) {
+ return (0, _getPrefixedValue2.default)(value.replace(/calc\(/g, cssPrefix + 'calc('), value, keepUnprefixed);
+ }
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/crossFade.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/crossFade.js
new file mode 100644
index 00000000..c57393a8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/crossFade.js
@@ -0,0 +1,24 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = crossFade;
+
+var _getPrefixedValue = require('../../utils/getPrefixedValue');
+
+var _getPrefixedValue2 = _interopRequireDefault(_getPrefixedValue);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function crossFade(property, value, style, _ref) {
+ var browserName = _ref.browserName,
+ browserVersion = _ref.browserVersion,
+ cssPrefix = _ref.cssPrefix,
+ keepUnprefixed = _ref.keepUnprefixed;
+
+ if (typeof value === 'string' && value.indexOf('cross-fade(') > -1 && (browserName === 'chrome' || browserName === 'opera' || browserName === 'and_chr' || (browserName === 'ios_saf' || browserName === 'safari') && browserVersion < 10)) {
+ return (0, _getPrefixedValue2.default)(value.replace(/cross-fade\(/g, cssPrefix + 'cross-fade('), value, keepUnprefixed);
+ }
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/cursor.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/cursor.js
new file mode 100644
index 00000000..83fe8db1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/cursor.js
@@ -0,0 +1,42 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = cursor;
+
+var _getPrefixedValue = require('../../utils/getPrefixedValue');
+
+var _getPrefixedValue2 = _interopRequireDefault(_getPrefixedValue);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var grabValues = {
+ grab: true,
+ grabbing: true
+};
+
+
+var zoomValues = {
+ 'zoom-in': true,
+ 'zoom-out': true
+};
+
+function cursor(property, value, style, _ref) {
+ var browserName = _ref.browserName,
+ browserVersion = _ref.browserVersion,
+ cssPrefix = _ref.cssPrefix,
+ keepUnprefixed = _ref.keepUnprefixed;
+
+ // adds prefixes for firefox, chrome, safari, and opera regardless of
+ // version until a reliable browser support info can be found
+ // see: https://github.com/rofrischmann/inline-style-prefixer/issues/79
+ if (property === 'cursor' && grabValues[value] && (browserName === 'firefox' || browserName === 'chrome' || browserName === 'safari' || browserName === 'opera')) {
+ return (0, _getPrefixedValue2.default)(cssPrefix + value, value, keepUnprefixed);
+ }
+
+ if (property === 'cursor' && zoomValues[value] && (browserName === 'firefox' && browserVersion < 24 || browserName === 'chrome' && browserVersion < 37 || browserName === 'safari' && browserVersion < 9 || browserName === 'opera' && browserVersion < 24)) {
+ return (0, _getPrefixedValue2.default)(cssPrefix + value, value, keepUnprefixed);
+ }
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/filter.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/filter.js
new file mode 100644
index 00000000..1e1ea4be
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/filter.js
@@ -0,0 +1,24 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = filter;
+
+var _getPrefixedValue = require('../../utils/getPrefixedValue');
+
+var _getPrefixedValue2 = _interopRequireDefault(_getPrefixedValue);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function filter(property, value, style, _ref) {
+ var browserName = _ref.browserName,
+ browserVersion = _ref.browserVersion,
+ cssPrefix = _ref.cssPrefix,
+ keepUnprefixed = _ref.keepUnprefixed;
+
+ if (typeof value === 'string' && value.indexOf('filter(') > -1 && (browserName === 'ios_saf' || browserName === 'safari' && browserVersion < 9.1)) {
+ return (0, _getPrefixedValue2.default)(value.replace(/filter\(/g, cssPrefix + 'filter('), value, keepUnprefixed);
+ }
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/flex.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/flex.js
new file mode 100644
index 00000000..95564079
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/flex.js
@@ -0,0 +1,28 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = flex;
+
+var _getPrefixedValue = require('../../utils/getPrefixedValue');
+
+var _getPrefixedValue2 = _interopRequireDefault(_getPrefixedValue);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var values = {
+ flex: true,
+ 'inline-flex': true
+};
+function flex(property, value, style, _ref) {
+ var browserName = _ref.browserName,
+ browserVersion = _ref.browserVersion,
+ cssPrefix = _ref.cssPrefix,
+ keepUnprefixed = _ref.keepUnprefixed;
+
+ if (property === 'display' && values[value] && (browserName === 'chrome' && browserVersion < 29 && browserVersion > 20 || (browserName === 'safari' || browserName === 'ios_saf') && browserVersion < 9 && browserVersion > 6 || browserName === 'opera' && (browserVersion === 15 || browserVersion === 16))) {
+ return (0, _getPrefixedValue2.default)(cssPrefix + value, value, keepUnprefixed);
+ }
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/flexboxIE.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/flexboxIE.js
new file mode 100644
index 00000000..a99a9b7e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/flexboxIE.js
@@ -0,0 +1,55 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = flexboxIE;
+
+var _getPrefixedValue = require('../../utils/getPrefixedValue');
+
+var _getPrefixedValue2 = _interopRequireDefault(_getPrefixedValue);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var alternativeValues = {
+ 'space-around': 'distribute',
+ 'space-between': 'justify',
+ 'flex-start': 'start',
+ 'flex-end': 'end',
+ flex: 'flexbox',
+ 'inline-flex': 'inline-flexbox'
+};
+
+var alternativeProps = {
+ alignContent: 'msFlexLinePack',
+ alignSelf: 'msFlexItemAlign',
+ alignItems: 'msFlexAlign',
+ justifyContent: 'msFlexPack',
+ order: 'msFlexOrder',
+ flexGrow: 'msFlexPositive',
+ flexShrink: 'msFlexNegative',
+ flexBasis: 'msFlexPreferredSize'
+};
+
+function flexboxIE(property, value, style, _ref) {
+ var browserName = _ref.browserName,
+ browserVersion = _ref.browserVersion,
+ cssPrefix = _ref.cssPrefix,
+ keepUnprefixed = _ref.keepUnprefixed,
+ requiresPrefix = _ref.requiresPrefix;
+
+ if ((alternativeProps.hasOwnProperty(property) || property === 'display' && typeof value === 'string' && value.indexOf('flex') > -1) && (browserName === 'ie_mob' || browserName === 'ie') && browserVersion === 10) {
+ delete requiresPrefix[property];
+
+ if (!keepUnprefixed && !Array.isArray(style[property])) {
+ delete style[property];
+ }
+ if (property === 'display' && alternativeValues.hasOwnProperty(value)) {
+ return (0, _getPrefixedValue2.default)(cssPrefix + alternativeValues[value], value, keepUnprefixed);
+ }
+ if (alternativeProps.hasOwnProperty(property)) {
+ style[alternativeProps[property]] = alternativeValues[value] || value;
+ }
+ }
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/flexboxOld.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/flexboxOld.js
new file mode 100644
index 00000000..3f1a61c6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/flexboxOld.js
@@ -0,0 +1,68 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = flexboxOld;
+
+var _getPrefixedValue = require('../../utils/getPrefixedValue');
+
+var _getPrefixedValue2 = _interopRequireDefault(_getPrefixedValue);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var alternativeValues = {
+ 'space-around': 'justify',
+ 'space-between': 'justify',
+ 'flex-start': 'start',
+ 'flex-end': 'end',
+ 'wrap-reverse': 'multiple',
+ wrap: 'multiple',
+ flex: 'box',
+ 'inline-flex': 'inline-box'
+};
+
+
+var alternativeProps = {
+ alignItems: 'WebkitBoxAlign',
+ justifyContent: 'WebkitBoxPack',
+ flexWrap: 'WebkitBoxLines'
+};
+
+var otherProps = ['alignContent', 'alignSelf', 'order', 'flexGrow', 'flexShrink', 'flexBasis', 'flexDirection'];
+var properties = Object.keys(alternativeProps).concat(otherProps);
+
+function flexboxOld(property, value, style, _ref) {
+ var browserName = _ref.browserName,
+ browserVersion = _ref.browserVersion,
+ cssPrefix = _ref.cssPrefix,
+ keepUnprefixed = _ref.keepUnprefixed,
+ requiresPrefix = _ref.requiresPrefix;
+
+ if ((properties.indexOf(property) > -1 || property === 'display' && typeof value === 'string' && value.indexOf('flex') > -1) && (browserName === 'firefox' && browserVersion < 22 || browserName === 'chrome' && browserVersion < 21 || (browserName === 'safari' || browserName === 'ios_saf') && browserVersion <= 6.1 || browserName === 'android' && browserVersion < 4.4 || browserName === 'and_uc')) {
+ delete requiresPrefix[property];
+
+ if (!keepUnprefixed && !Array.isArray(style[property])) {
+ delete style[property];
+ }
+ if (property === 'flexDirection' && typeof value === 'string') {
+ if (value.indexOf('column') > -1) {
+ style.WebkitBoxOrient = 'vertical';
+ } else {
+ style.WebkitBoxOrient = 'horizontal';
+ }
+ if (value.indexOf('reverse') > -1) {
+ style.WebkitBoxDirection = 'reverse';
+ } else {
+ style.WebkitBoxDirection = 'normal';
+ }
+ }
+ if (property === 'display' && alternativeValues.hasOwnProperty(value)) {
+ return (0, _getPrefixedValue2.default)(cssPrefix + alternativeValues[value], value, keepUnprefixed);
+ }
+ if (alternativeProps.hasOwnProperty(property)) {
+ style[alternativeProps[property]] = alternativeValues[value] || value;
+ }
+ }
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/gradient.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/gradient.js
new file mode 100644
index 00000000..bbd66dab
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/gradient.js
@@ -0,0 +1,25 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = gradient;
+
+var _getPrefixedValue = require('../../utils/getPrefixedValue');
+
+var _getPrefixedValue2 = _interopRequireDefault(_getPrefixedValue);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var values = /linear-gradient|radial-gradient|repeating-linear-gradient|repeating-radial-gradient/;
+function gradient(property, value, style, _ref) {
+ var browserName = _ref.browserName,
+ browserVersion = _ref.browserVersion,
+ cssPrefix = _ref.cssPrefix,
+ keepUnprefixed = _ref.keepUnprefixed;
+
+ if (typeof value === 'string' && values.test(value) && (browserName === 'firefox' && browserVersion < 16 || browserName === 'chrome' && browserVersion < 26 || (browserName === 'safari' || browserName === 'ios_saf') && browserVersion < 7 || (browserName === 'opera' || browserName === 'op_mini') && browserVersion < 12.1 || browserName === 'android' && browserVersion < 4.4 || browserName === 'and_uc')) {
+ return (0, _getPrefixedValue2.default)(cssPrefix + value, value, keepUnprefixed);
+ }
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/imageSet.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/imageSet.js
new file mode 100644
index 00000000..991f4603
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/imageSet.js
@@ -0,0 +1,23 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = imageSet;
+
+var _getPrefixedValue = require('../../utils/getPrefixedValue');
+
+var _getPrefixedValue2 = _interopRequireDefault(_getPrefixedValue);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function imageSet(property, value, style, _ref) {
+ var browserName = _ref.browserName,
+ cssPrefix = _ref.cssPrefix,
+ keepUnprefixed = _ref.keepUnprefixed;
+
+ if (typeof value === 'string' && value.indexOf('image-set(') > -1 && (browserName === 'chrome' || browserName === 'opera' || browserName === 'and_chr' || browserName === 'and_uc' || browserName === 'ios_saf' || browserName === 'safari')) {
+ return (0, _getPrefixedValue2.default)(value.replace(/image-set\(/g, cssPrefix + 'image-set('), value, keepUnprefixed);
+ }
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/index.js
new file mode 100644
index 00000000..7919315c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/index.js
@@ -0,0 +1,58 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _calc = require('./calc');
+
+var _calc2 = _interopRequireDefault(_calc);
+
+var _cursor = require('./cursor');
+
+var _cursor2 = _interopRequireDefault(_cursor);
+
+var _crossFade = require('./crossFade');
+
+var _crossFade2 = _interopRequireDefault(_crossFade);
+
+var _filter = require('./filter');
+
+var _filter2 = _interopRequireDefault(_filter);
+
+var _flex = require('./flex');
+
+var _flex2 = _interopRequireDefault(_flex);
+
+var _flexboxIE = require('./flexboxIE');
+
+var _flexboxIE2 = _interopRequireDefault(_flexboxIE);
+
+var _flexboxOld = require('./flexboxOld');
+
+var _flexboxOld2 = _interopRequireDefault(_flexboxOld);
+
+var _gradient = require('./gradient');
+
+var _gradient2 = _interopRequireDefault(_gradient);
+
+var _imageSet = require('./imageSet');
+
+var _imageSet2 = _interopRequireDefault(_imageSet);
+
+var _position = require('./position');
+
+var _position2 = _interopRequireDefault(_position);
+
+var _sizing = require('./sizing');
+
+var _sizing2 = _interopRequireDefault(_sizing);
+
+var _transition = require('./transition');
+
+var _transition2 = _interopRequireDefault(_transition);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+exports.default = [_position2.default, _calc2.default, _cursor2.default, _imageSet2.default, _crossFade2.default, _filter2.default, _sizing2.default, _gradient2.default, _transition2.default, _flexboxIE2.default, _flexboxOld2.default, _flex2.default];
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/position.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/position.js
new file mode 100644
index 00000000..70149812
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/position.js
@@ -0,0 +1,23 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = position;
+
+var _getPrefixedValue = require('../../utils/getPrefixedValue');
+
+var _getPrefixedValue2 = _interopRequireDefault(_getPrefixedValue);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function position(property, value, style, _ref) {
+ var browserName = _ref.browserName,
+ cssPrefix = _ref.cssPrefix,
+ keepUnprefixed = _ref.keepUnprefixed;
+
+ if (property === 'position' && value === 'sticky' && (browserName === 'safari' || browserName === 'ios_saf')) {
+ return (0, _getPrefixedValue2.default)(cssPrefix + value, value, keepUnprefixed);
+ }
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/sizing.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/sizing.js
new file mode 100644
index 00000000..91a02c14
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/sizing.js
@@ -0,0 +1,42 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = sizing;
+
+var _getPrefixedValue = require('../../utils/getPrefixedValue');
+
+var _getPrefixedValue2 = _interopRequireDefault(_getPrefixedValue);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var properties = {
+ maxHeight: true,
+ maxWidth: true,
+ width: true,
+ height: true,
+ columnWidth: true,
+ minWidth: true,
+ minHeight: true
+};
+
+var values = {
+ 'min-content': true,
+ 'max-content': true,
+ 'fill-available': true,
+ 'fit-content': true,
+ 'contain-floats': true
+
+ // TODO: chrome & opera support it
+};function sizing(property, value, style, _ref) {
+ var cssPrefix = _ref.cssPrefix,
+ keepUnprefixed = _ref.keepUnprefixed;
+
+ // This might change in the future
+ // Keep an eye on it
+ if (properties.hasOwnProperty(property) && values.hasOwnProperty(value)) {
+ return (0, _getPrefixedValue2.default)(cssPrefix + value, value, keepUnprefixed);
+ }
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/transition.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/transition.js
new file mode 100644
index 00000000..f9175edc
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/dynamic/plugins/transition.js
@@ -0,0 +1,53 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = transition;
+
+var _hyphenateProperty = require('css-in-js-utils/lib/hyphenateProperty');
+
+var _hyphenateProperty2 = _interopRequireDefault(_hyphenateProperty);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var properties = {
+ transition: true,
+ transitionProperty: true,
+ WebkitTransition: true,
+ WebkitTransitionProperty: true,
+ MozTransition: true,
+ MozTransitionProperty: true
+};
+
+
+var requiresPrefixDashCased = void 0;
+
+function transition(property, value, style, _ref) {
+ var cssPrefix = _ref.cssPrefix,
+ keepUnprefixed = _ref.keepUnprefixed,
+ requiresPrefix = _ref.requiresPrefix;
+
+ if (typeof value === 'string' && properties.hasOwnProperty(property)) {
+ // memoize the prefix array for later use
+ if (!requiresPrefixDashCased) {
+ requiresPrefixDashCased = Object.keys(requiresPrefix).map(function (prop) {
+ return (0, _hyphenateProperty2.default)(prop);
+ });
+ }
+
+ // only split multi values, not cubic beziers
+ var multipleValues = value.split(/,(?![^()]*(?:\([^()]*\))?\))/g);
+
+ requiresPrefixDashCased.forEach(function (prop) {
+ multipleValues.forEach(function (val, index) {
+ if (val.indexOf(prop) > -1 && prop !== 'order') {
+ multipleValues[index] = val.replace(prop, cssPrefix + prop) + (keepUnprefixed ? ',' + val : '');
+ }
+ });
+ });
+
+ return multipleValues.join(',');
+ }
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/generator/generateDynamicPrefixMap.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/generator/generateDynamicPrefixMap.js
new file mode 100644
index 00000000..6e563926
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/generator/generateDynamicPrefixMap.js
@@ -0,0 +1,71 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+exports.default = generateDynamicPrefixMap;
+
+var _caniuseApi = require('caniuse-api');
+
+var _propertyMap = require('./maps/propertyMap');
+
+var _propertyMap2 = _interopRequireDefault(_propertyMap);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var prefixBrowserMap = {
+ chrome: 'Webkit',
+ safari: 'Webkit',
+ firefox: 'Moz',
+ opera: 'Webkit',
+ ie: 'ms',
+ edge: 'ms',
+ ios_saf: 'Webkit',
+ android: 'Webkit',
+ and_chr: 'Webkit',
+ and_uc: 'Webkit',
+ op_mini: 'Webkit',
+ ie_mob: 'ms'
+};
+
+var browsers = Object.keys(prefixBrowserMap);
+
+// remove flexprops from IE
+var flexPropsIE = ['alignContent', 'alignSelf', 'alignItems', 'justifyContent', 'order', 'flexGrow', 'flexShrink', 'flexBasis'];
+
+function generateDynamicPrefixMap(browserList) {
+ var prefixMap = {};
+
+ for (var i = 0, len = browsers.length; i < len; ++i) {
+ var browser = browsers[i];
+ if (!prefixMap.hasOwnProperty(browser)) {
+ prefixMap[browser] = {};
+ }
+
+ for (var keyword in _propertyMap2.default) {
+ var keywordProperties = [].concat(_propertyMap2.default[keyword]);
+ var versions = (0, _caniuseApi.getSupport)(keyword);
+
+ for (var j = 0, kLen = keywordProperties.length; j < kLen; ++j) {
+ if (versions[browser].x >= browserList[browser]) {
+ prefixMap[browser][keywordProperties[j]] = versions[browser].x;
+ }
+ }
+ }
+ }
+
+ prefixMap.ie = _extends({}, prefixMap.ie, prefixMap.ie_mob);
+
+ delete prefixMap.ie_mob;
+
+ // remove flexProps from IE due to alternative syntax
+ for (var _i = 0, _len = flexPropsIE.length; _i < _len; ++_i) {
+ delete prefixMap.ie[flexPropsIE[_i]];
+ }
+
+ return prefixMap;
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/generator/generatePluginList.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/generator/generatePluginList.js
new file mode 100644
index 00000000..c0e32f58
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/generator/generatePluginList.js
@@ -0,0 +1,33 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = getRecommendedPlugins;
+
+var _pluginMap = require('./maps/pluginMap');
+
+var _pluginMap2 = _interopRequireDefault(_pluginMap);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function getRecommendedPlugins(browserList) {
+ var recommendedPlugins = {};
+
+ for (var plugin in _pluginMap2.default) {
+ var browserSupportByPlugin = _pluginMap2.default[plugin];
+
+ for (var browser in browserSupportByPlugin) {
+ if (browserList.hasOwnProperty(browser)) {
+ var browserVersion = browserSupportByPlugin[browser];
+
+ if (browserList[browser] < browserVersion) {
+ recommendedPlugins[plugin] = true;
+ }
+ }
+ }
+ }
+
+ return Object.keys(recommendedPlugins);
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/generator/generateStaticPrefixMap.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/generator/generateStaticPrefixMap.js
new file mode 100644
index 00000000..2e385a7b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/generator/generateStaticPrefixMap.js
@@ -0,0 +1,86 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = generateStaticPrefixMap;
+
+var _caniuseApi = require('caniuse-api');
+
+var _propertyMap = require('./maps/propertyMap');
+
+var _propertyMap2 = _interopRequireDefault(_propertyMap);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var prefixBrowserMap = {
+ chrome: 'Webkit',
+ safari: 'Webkit',
+ firefox: 'Moz',
+ opera: 'Webkit',
+ ie: 'ms',
+ edge: 'ms',
+ ios_saf: 'Webkit',
+ android: 'Webkit',
+ and_chr: 'Webkit',
+ and_uc: 'Webkit',
+ op_mini: 'Webkit',
+ ie_mob: 'ms'
+
+ // remove flexprops from IE
+};var flexPropsIE = ['alignContent', 'alignSelf', 'alignItems', 'justifyContent', 'order', 'flexGrow', 'flexShrink', 'flexBasis'];
+
+function filterAndRemoveIfEmpty(map, property, filter) {
+ map[property] = map[property].filter(filter);
+
+ if (map[property].length === 0) {
+ delete map[property];
+ }
+}
+
+function generateStaticPrefixMap(browserList) {
+ var prefixMap = {};
+
+ for (var browser in prefixBrowserMap) {
+ var prefix = prefixBrowserMap[browser];
+
+ for (var keyword in _propertyMap2.default) {
+ var keywordProperties = [].concat(_propertyMap2.default[keyword]);
+ var versions = (0, _caniuseApi.getSupport)(keyword);
+
+ for (var i = 0, len = keywordProperties.length; i < len; ++i) {
+ if (versions[browser].x >= browserList[browser]) {
+ var property = keywordProperties[i];
+ if (!prefixMap[property]) {
+ prefixMap[property] = [];
+ }
+
+ if (prefixMap[property].indexOf(prefix) === -1) {
+ prefixMap[property].push(prefix);
+ }
+ }
+ }
+ }
+ }
+
+ // remove flexProps from IE and Firefox due to alternative syntax
+ for (var _i = 0, _len = flexPropsIE.length; _i < _len; ++_i) {
+ filterAndRemoveIfEmpty(prefixMap, flexPropsIE[_i], function (prefix) {
+ return prefix !== 'ms' && prefix !== 'Moz';
+ });
+ }
+
+ // remove transition from Moz and Webkit as they are handled
+ // specially by the transition plugins
+ filterAndRemoveIfEmpty(prefixMap, 'transition', function (prefix) {
+ return prefix !== 'Moz' && prefix !== 'Webkit';
+ });
+
+ // remove WebkitFlexDirection as it does not exist
+ filterAndRemoveIfEmpty(prefixMap, 'flexDirection', function (prefix) {
+ return prefix !== 'Moz';
+ });
+
+ return prefixMap;
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/generator/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/generator/index.js
new file mode 100644
index 00000000..b2f3ba35
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/generator/index.js
@@ -0,0 +1,93 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = generateData;
+
+var _generateStaticPrefixMap = require('./generateStaticPrefixMap');
+
+var _generateStaticPrefixMap2 = _interopRequireDefault(_generateStaticPrefixMap);
+
+var _generateDynamicPrefixMap = require('./generateDynamicPrefixMap');
+
+var _generateDynamicPrefixMap2 = _interopRequireDefault(_generateDynamicPrefixMap);
+
+var _generatePluginList = require('./generatePluginList');
+
+var _generatePluginList2 = _interopRequireDefault(_generatePluginList);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function generateImportString(plugin, pluginPath, compatibility) {
+ if (compatibility) {
+ return 'var ' + plugin + ' = require(\'inline-style-prefixer/' + pluginPath + '/plugins/' + plugin + '\')';
+ }
+ return 'import ' + plugin + ' from \'inline-style-prefixer/' + pluginPath + '/plugins/' + plugin + '\'';
+}
+
+
+function generateFile(prefixMap, pluginList, compatibility, pluginPath) {
+ var pluginImports = pluginList.map(function (plugin) {
+ return generateImportString(plugin, pluginPath, compatibility);
+ }).join('\n');
+
+ var moduleExporter = compatibility ? 'module.exports = ' : 'export default';
+ var pluginExport = '[' + pluginList.join(',') + ']';
+ var prefixMapExport = JSON.stringify(prefixMap);
+
+ if (pluginPath === 'static') {
+ var prefixVariables = ['var w = ["Webkit"];', 'var m = ["Moz"];', 'var ms = ["ms"];', 'var wm = ["Webkit","Moz"];', 'var wms = ["Webkit","ms"];', 'var wmms = ["Webkit","Moz","ms"];'].join('\n');
+
+ return pluginImports + '\n' + prefixVariables + '\n\n' + moduleExporter + ' {\n plugins: ' + pluginExport + ',\n prefixMap: ' + prefixMapExport.replace(/\["Webkit"\]/g, 'w').replace(/\["Moz"\]/g, 'm').replace(/\["ms"\]/g, 'ms').replace(/\["Webkit","Moz"\]/g, 'wm').replace(/\["Webkit","ms"\]/g, 'wms').replace(/\["Webkit","Moz","ms"\]/g, 'wmms') + '\n}';
+ }
+
+ return pluginImports + '\n\n' + moduleExporter + ' {\n plugins: ' + pluginExport + ',\n prefixMap: ' + prefixMapExport + '\n}';
+}
+
+function saveFile(fileContent, path) {
+ /* eslint-disable global-require */
+ var fs = require('fs');
+ /* eslint-enable global-require */
+
+ fs.writeFile(path, fileContent, function (err) {
+ if (err) {
+ throw err;
+ }
+
+ console.log('Successfully saved data to "' + path + '".');
+ });
+}
+
+function generateData(browserList) {
+ var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
+ compatibility = _ref.compatibility,
+ plugins = _ref.plugins,
+ staticPath = _ref.staticPath,
+ dynamicPath = _ref.dynamicPath,
+ prefixMap = _ref.prefixMap;
+
+ var shouldRenderPlugins = plugins !== undefined ? plugins : true;
+ var shouldRenderPrefixMap = prefixMap !== undefined ? prefixMap : true;
+
+ var data = {
+ static: shouldRenderPrefixMap ? (0, _generateStaticPrefixMap2.default)(browserList) : {},
+ dynamic: shouldRenderPrefixMap ? (0, _generateDynamicPrefixMap2.default)(browserList) : {},
+ plugins: shouldRenderPlugins ? (0, _generatePluginList2.default)(browserList) : []
+ };
+
+ if (staticPath) {
+ var fileContent = generateFile(data.static, data.plugins, compatibility, 'static');
+
+ saveFile(fileContent, staticPath);
+ }
+
+ if (dynamicPath) {
+ var _fileContent = generateFile(data.dynamic, data.plugins, compatibility, 'dynamic');
+
+ saveFile(_fileContent, dynamicPath);
+ }
+
+ return data;
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/generator/maps/pluginMap.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/generator/maps/pluginMap.js
new file mode 100644
index 00000000..1fb0bc89
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/generator/maps/pluginMap.js
@@ -0,0 +1,94 @@
+"use strict";
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+// values are "up-to"
+var maximumVersion = 9999;
+
+exports.default = {
+ calc: {
+ firefox: 15,
+ chrome: 25,
+ safari: 6.1,
+ ios_saf: 7
+ },
+ crossFade: {
+ chrome: maximumVersion,
+ opera: maximumVersion,
+ and_chr: maximumVersion,
+ ios_saf: 10,
+ safari: 10
+ },
+ cursor: {
+ firefox: maximumVersion,
+ chrome: maximumVersion,
+ safari: maximumVersion,
+ opera: maximumVersion
+ },
+ filter: {
+ ios_saf: maximumVersion,
+ safari: 9.1
+ },
+ flex: {
+ chrome: 29,
+ safari: 9,
+ ios_saf: 9,
+ opera: 16
+ },
+ flexboxIE: {
+ ie_mob: 11,
+ ie: 11
+ },
+ flexboxOld: {
+ firefox: 22,
+ chrome: 21,
+ safari: 6.2,
+ ios_saf: 6.2,
+ android: 4.4,
+ and_uc: maximumVersion
+ },
+ gradient: {
+ firefox: 16,
+ chrome: 26,
+ safari: 7,
+ ios_saf: 7,
+ opera: 12.1,
+ op_mini: 12.1,
+ android: 4.4,
+ and_uc: maximumVersion
+ },
+ imageSet: {
+ chrome: maximumVersion,
+ safari: maximumVersion,
+ opera: maximumVersion,
+ and_chr: maximumVersion,
+ and_uc: maximumVersion,
+ ios_saf: maximumVersion
+ },
+ position: {
+ safari: maximumVersion,
+ ios_saf: maximumVersion
+ },
+ sizing: {
+ chrome: 46,
+ safari: maximumVersion,
+ opera: 33,
+ and_chr: 53,
+ ios_saf: maximumVersion
+ },
+ transition: {
+ chrome: maximumVersion,
+ safari: maximumVersion,
+ opera: maximumVersion,
+ and_chr: maximumVersion,
+ and_uc: maximumVersion,
+ ios_saf: maximumVersion,
+ msie: maximumVersion,
+ ie_mob: maximumVersion,
+ edge: maximumVersion,
+ firefox: maximumVersion,
+ op_mini: maximumVersion
+ }
+};
+module.exports = exports["default"];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/generator/maps/propertyMap.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/generator/maps/propertyMap.js
new file mode 100644
index 00000000..2e251bb5
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/generator/maps/propertyMap.js
@@ -0,0 +1,44 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = {
+ 'border-radius': 'borderRadius',
+ 'border-image': ['borderImage', 'borderImageOutset', 'borderImageRepeat', 'borderImageSlice', 'borderImageSource', 'borderImageWidth'],
+ flexbox: ['flex', 'flexBasis', 'flexDirection', 'flexGrow', 'flexFlow', 'flexShrink', 'flexWrap', 'alignContent', 'alignItems', 'alignSelf', 'justifyContent', 'order'],
+ 'css-transitions': ['transition', 'transitionDelay', 'transitionDuration', 'transitionProperty', 'transitionTimingFunction'],
+ transforms2d: ['transform', 'transformOrigin', 'transformOriginX', 'transformOriginY'],
+ transforms3d: ['backfaceVisibility', 'perspective', 'perspectiveOrigin', 'transform', 'transformOrigin', 'transformStyle', 'transformOriginX', 'transformOriginY', 'transformOriginZ'],
+ 'css-animation': ['animation', 'animationDelay', 'animationDirection', 'animationFillMode', 'animationDuration', 'animationIterationCount', 'animationName', 'animationPlayState', 'animationTimingFunction'],
+ 'css-appearance': 'appearance',
+ 'user-select-none': 'userSelect',
+ 'css-backdrop-filter': 'backdropFilter',
+ 'css3-boxsizing': 'boxSizing',
+ 'font-kerning': 'fontKerning',
+ 'css-exclusions': ['wrapFlow', 'wrapThrough', 'wrapMargin'],
+ 'css-snappoints': ['scrollSnapType', 'scrollSnapPointsX', 'scrollSnapPointsY', 'scrollSnapDestination', 'scrollSnapCoordinate'],
+ 'text-emphasis': ['textEmphasisPosition', 'textEmphasis', 'textEmphasisStyle', 'textEmphasisColor'],
+ 'css-text-align-last': 'textAlignLast',
+ 'css-boxdecorationbreak': 'boxDecorationBreak',
+ 'css-clip-path': 'clipPath',
+ 'css-masks': ['maskImage', 'maskMode', 'maskRepeat', 'maskPosition', 'maskClip', 'maskOrigin', 'maskSize', 'maskComposite', 'mask', 'maskBorderSource', 'maskBorderMode', 'maskBorderSlice', 'maskBorderWidth', 'maskBorderOutset', 'maskBorderRepeat', 'maskBorder', 'maskType'],
+ 'css-touch-action': 'touchAction',
+ 'text-size-adjust': 'textSizeAdjust',
+ 'text-decoration': ['textDecorationStyle', 'textDecorationSkip', 'textDecorationLine', 'textDecorationColor'],
+ 'css-shapes': ['shapeImageThreshold', 'shapeImageMargin', 'shapeImageOutside'],
+ 'css3-tabsize': 'tabSize',
+ 'css-filters': 'filter',
+ 'css-resize': 'resize',
+ 'css-hyphens': 'hyphens',
+ 'css-regions': ['flowInto', 'flowFrom', 'breakBefore', 'breakAfter', 'breakInside', 'regionFragment'],
+ 'css-grid': ['gridTemplateColumns', 'gridTemplateRows', 'gridTemplateAreas', 'gridTemplate', 'gridAutoColumns', 'gridAutoRows', 'gridAutoFlow', 'grid', 'gridRowStart', 'gridColumnStart', 'gridRowEnd', 'gridRow', 'gridColumn', 'gridColumnEnd', 'gridColumnGap', 'gridRowGap', 'gridArea', 'gridGap'],
+ 'object-fit': ['objectFit', 'objectPosition'],
+ 'text-overflow': 'textOverflow',
+ 'background-img-opts': ['backgroundClip', 'backgroundOrigin', 'backgroundSize'],
+ 'font-feature': 'fontFeatureSettings',
+ 'css-boxshadow': 'boxShadow',
+ multicolumn: ['breakAfter', 'breakBefore', 'breakInside', 'columnCount', 'columnFill', 'columnGap', 'columnRule', 'columnRuleColor', 'columnRuleStyle', 'columnRuleWidth', 'columns', 'columnSpan', 'columnWidth', 'columnGap'],
+ 'css-writing-mode': ['writingMode']
+};
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/package.json b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/package.json
new file mode 100644
index 00000000..a6dfd16c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/package.json
@@ -0,0 +1,117 @@
+{
+ "_from": "inline-style-prefixer@^3.0.6",
+ "_id": "inline-style-prefixer@3.0.8",
+ "_inBundle": false,
+ "_integrity": "sha1-hVG45bTVcyROZqNLBPfTIHaitTQ=",
+ "_location": "/react-toastify/inline-style-prefixer",
+ "_phantomChildren": {},
+ "_requested": {
+ "type": "range",
+ "registry": true,
+ "raw": "inline-style-prefixer@^3.0.6",
+ "name": "inline-style-prefixer",
+ "escapedName": "inline-style-prefixer",
+ "rawSpec": "^3.0.6",
+ "saveSpec": null,
+ "fetchSpec": "^3.0.6"
+ },
+ "_requiredBy": [
+ "/react-toastify/glamor"
+ ],
+ "_resolved": "https://registry.npmjs.org/inline-style-prefixer/-/inline-style-prefixer-3.0.8.tgz",
+ "_shasum": "8551b8e5b4d573244e66a34b04f7d32076a2b534",
+ "_spec": "inline-style-prefixer@^3.0.6",
+ "_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI\\node_modules\\react-toastify\\node_modules\\glamor",
+ "author": {
+ "name": "Robin Frischmann"
+ },
+ "bugs": {
+ "url": "https://github.com/rofrischmann/inline-style-prefixer/issues"
+ },
+ "bundleDependencies": false,
+ "dependencies": {
+ "bowser": "^1.7.3",
+ "css-in-js-utils": "^2.0.0"
+ },
+ "deprecated": false,
+ "description": "Run-time Autoprefixer for JavaScript style objects",
+ "devDependencies": {
+ "babel": "^6.5.2",
+ "babel-cli": "^6.6.0",
+ "babel-core": "^6.6.0",
+ "babel-eslint": "^7.1.1",
+ "babel-plugin-add-module-exports": "^0.2.1",
+ "babel-plugin-transform-class-properties": "^6.9.1",
+ "babel-preset-es2015": "^6.6.0",
+ "babel-preset-es2015-rollup": "^1.1.1",
+ "babel-preset-react": "^6.5.0",
+ "babel-preset-stage-0": "^6.5.0",
+ "caniuse-api": "^2.0.0",
+ "chai": "^3.2.0",
+ "codeclimate-test-reporter": "^0.1.1",
+ "cross-env": "^1.0.8",
+ "eslint": "^3.14.0",
+ "eslint-config-airbnb": "^14.0.0",
+ "eslint-plugin-flowtype": "^2.30.0",
+ "eslint-plugin-import": "^2.2.0",
+ "eslint-plugin-jsx-a11y": "^3.0.2",
+ "eslint-plugin-react": "^6.9.0",
+ "flow-bin": "^0.38.0",
+ "gh-pages": "^0.12.0",
+ "gitbook": "^3.2.2",
+ "gitbook-cli": "^2.3.0",
+ "gitbook-plugin-anker-enable": "0.0.4",
+ "gitbook-plugin-edit-link": "^2.0.2",
+ "gitbook-plugin-github": "^2.0.0",
+ "gitbook-plugin-prism": "^2.2.1",
+ "istanbul": "1.0.0-alpha.2",
+ "mocha": "^2.4.5",
+ "prettier": "^1.3.1",
+ "rimraf": "^2.4.2",
+ "rollup": "0.26.3",
+ "rollup-plugin-babel": "2.4.0",
+ "rollup-plugin-commonjs": "2.2.1",
+ "rollup-plugin-node-resolve": "1.5.0",
+ "rollup-plugin-uglify": "0.3.1"
+ },
+ "files": [
+ "LICENSE",
+ "README.md",
+ "dist/",
+ "static/",
+ "generator/",
+ "dynamic/",
+ "utils/"
+ ],
+ "homepage": "https://github.com/rofrischmann/inline-style-prefixer#readme",
+ "keywords": [
+ "react",
+ "react styling",
+ "prefixer",
+ "inline styles",
+ "autoprefixer",
+ "vendor prefix",
+ "userAgent"
+ ],
+ "license": "MIT",
+ "main": "dynamic/index.js",
+ "name": "inline-style-prefixer",
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/rofrischmann/inline-style-prefixer.git"
+ },
+ "scripts": {
+ "babel": "babel modules/ --out-dir .",
+ "build": "npm run check && mkdir dist && npm run generate && npm run babel && npm run dist",
+ "check": "npm run clean && npm run lint && npm test && npm run flow",
+ "clean": "rimraf static dynamic generator utils dist coverage",
+ "dist": "cross-env NODE_ENV=production babel-node buildPackage && cross-env NODE_ENV=development babel-node buildPackage",
+ "docs": "gitbook install && gitbook build && gh-pages -d _book",
+ "flow": "flow",
+ "generate": "babel-node generateDefaultData",
+ "lint": "eslint .",
+ "release": "npm run build && npm publish && npm run docs",
+ "test": "istanbul cover node_modules/mocha/bin/_mocha -- --opts test/_setup/mocha.opts"
+ },
+ "version": "3.0.8"
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/createPrefixer.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/createPrefixer.js
new file mode 100644
index 00000000..6408958c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/createPrefixer.js
@@ -0,0 +1,69 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = createPrefixer;
+
+var _prefixProperty = require('../utils/prefixProperty');
+
+var _prefixProperty2 = _interopRequireDefault(_prefixProperty);
+
+var _prefixValue = require('../utils/prefixValue');
+
+var _prefixValue2 = _interopRequireDefault(_prefixValue);
+
+var _addNewValuesOnly = require('../utils/addNewValuesOnly');
+
+var _addNewValuesOnly2 = _interopRequireDefault(_addNewValuesOnly);
+
+var _isObject = require('../utils/isObject');
+
+var _isObject2 = _interopRequireDefault(_isObject);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function createPrefixer(_ref) {
+ var prefixMap = _ref.prefixMap,
+ plugins = _ref.plugins;
+
+ function prefixAll(style) {
+ for (var property in style) {
+ var value = style[property];
+
+ // handle nested objects
+ if ((0, _isObject2.default)(value)) {
+ style[property] = prefixAll(value);
+ // handle array values
+ } else if (Array.isArray(value)) {
+ var combinedValue = [];
+
+ for (var i = 0, len = value.length; i < len; ++i) {
+ var processedValue = (0, _prefixValue2.default)(plugins, property, value[i], style, prefixMap);
+ (0, _addNewValuesOnly2.default)(combinedValue, processedValue || value[i]);
+ }
+
+ // only modify the value if it was touched
+ // by any plugin to prevent unnecessary mutations
+ if (combinedValue.length > 0) {
+ style[property] = combinedValue;
+ }
+ } else {
+ var _processedValue = (0, _prefixValue2.default)(plugins, property, value, style, prefixMap);
+
+ // only modify the value if it was touched
+ // by any plugin to prevent unnecessary mutations
+ if (_processedValue) {
+ style[property] = _processedValue;
+ }
+
+ (0, _prefixProperty2.default)(prefixMap, property, style);
+ }
+ }
+
+ return style;
+ }
+
+ return prefixAll;
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/index.js
new file mode 100644
index 00000000..e0716bc9
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/index.js
@@ -0,0 +1,63 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _createPrefixer = require('./createPrefixer');
+
+var _createPrefixer2 = _interopRequireDefault(_createPrefixer);
+
+var _staticData = require('./staticData');
+
+var _staticData2 = _interopRequireDefault(_staticData);
+
+var _cursor = require('./plugins/cursor');
+
+var _cursor2 = _interopRequireDefault(_cursor);
+
+var _crossFade = require('./plugins/crossFade');
+
+var _crossFade2 = _interopRequireDefault(_crossFade);
+
+var _filter = require('./plugins/filter');
+
+var _filter2 = _interopRequireDefault(_filter);
+
+var _flex = require('./plugins/flex');
+
+var _flex2 = _interopRequireDefault(_flex);
+
+var _flexboxOld = require('./plugins/flexboxOld');
+
+var _flexboxOld2 = _interopRequireDefault(_flexboxOld);
+
+var _gradient = require('./plugins/gradient');
+
+var _gradient2 = _interopRequireDefault(_gradient);
+
+var _imageSet = require('./plugins/imageSet');
+
+var _imageSet2 = _interopRequireDefault(_imageSet);
+
+var _position = require('./plugins/position');
+
+var _position2 = _interopRequireDefault(_position);
+
+var _sizing = require('./plugins/sizing');
+
+var _sizing2 = _interopRequireDefault(_sizing);
+
+var _transition = require('./plugins/transition');
+
+var _transition2 = _interopRequireDefault(_transition);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var plugins = [_crossFade2.default, _cursor2.default, _filter2.default, _flexboxOld2.default, _gradient2.default, _imageSet2.default, _position2.default, _sizing2.default, _transition2.default, _flex2.default];
+
+exports.default = (0, _createPrefixer2.default)({
+ prefixMap: _staticData2.default.prefixMap,
+ plugins: plugins
+});
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/calc.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/calc.js
new file mode 100644
index 00000000..9f92b23d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/calc.js
@@ -0,0 +1,22 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = calc;
+
+var _isPrefixedValue = require('css-in-js-utils/lib/isPrefixedValue');
+
+var _isPrefixedValue2 = _interopRequireDefault(_isPrefixedValue);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var prefixes = ['-webkit-', '-moz-', ''];
+function calc(property, value) {
+ if (typeof value === 'string' && !(0, _isPrefixedValue2.default)(value) && value.indexOf('calc(') > -1) {
+ return prefixes.map(function (prefix) {
+ return value.replace(/calc\(/g, prefix + 'calc(');
+ });
+ }
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/crossFade.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/crossFade.js
new file mode 100644
index 00000000..d12da03f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/crossFade.js
@@ -0,0 +1,23 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = crossFade;
+
+var _isPrefixedValue = require('css-in-js-utils/lib/isPrefixedValue');
+
+var _isPrefixedValue2 = _interopRequireDefault(_isPrefixedValue);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+// http://caniuse.com/#search=cross-fade
+var prefixes = ['-webkit-', ''];
+function crossFade(property, value) {
+ if (typeof value === 'string' && !(0, _isPrefixedValue2.default)(value) && value.indexOf('cross-fade(') > -1) {
+ return prefixes.map(function (prefix) {
+ return value.replace(/cross-fade\(/g, prefix + 'cross-fade(');
+ });
+ }
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/cursor.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/cursor.js
new file mode 100644
index 00000000..2f9df299
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/cursor.js
@@ -0,0 +1,23 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = cursor;
+var prefixes = ['-webkit-', '-moz-', ''];
+
+var values = {
+ 'zoom-in': true,
+ 'zoom-out': true,
+ grab: true,
+ grabbing: true
+};
+
+function cursor(property, value) {
+ if (property === 'cursor' && values.hasOwnProperty(value)) {
+ return prefixes.map(function (prefix) {
+ return prefix + value;
+ });
+ }
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/filter.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/filter.js
new file mode 100644
index 00000000..aded0fed
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/filter.js
@@ -0,0 +1,23 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = filter;
+
+var _isPrefixedValue = require('css-in-js-utils/lib/isPrefixedValue');
+
+var _isPrefixedValue2 = _interopRequireDefault(_isPrefixedValue);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+// http://caniuse.com/#feat=css-filter-function
+var prefixes = ['-webkit-', ''];
+function filter(property, value) {
+ if (typeof value === 'string' && !(0, _isPrefixedValue2.default)(value) && value.indexOf('filter(') > -1) {
+ return prefixes.map(function (prefix) {
+ return value.replace(/filter\(/g, prefix + 'filter(');
+ });
+ }
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/flex.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/flex.js
new file mode 100644
index 00000000..dba0c19a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/flex.js
@@ -0,0 +1,17 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = flex;
+var values = {
+ flex: ['-webkit-box', '-moz-box', '-ms-flexbox', '-webkit-flex', 'flex'],
+ 'inline-flex': ['-webkit-inline-box', '-moz-inline-box', '-ms-inline-flexbox', '-webkit-inline-flex', 'inline-flex']
+};
+
+function flex(property, value) {
+ if (property === 'display' && values.hasOwnProperty(value)) {
+ return values[value];
+ }
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/flexboxIE.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/flexboxIE.js
new file mode 100644
index 00000000..ff2f55a7
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/flexboxIE.js
@@ -0,0 +1,29 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = flexboxIE;
+var alternativeValues = {
+ 'space-around': 'distribute',
+ 'space-between': 'justify',
+ 'flex-start': 'start',
+ 'flex-end': 'end'
+};
+var alternativeProps = {
+ alignContent: 'msFlexLinePack',
+ alignSelf: 'msFlexItemAlign',
+ alignItems: 'msFlexAlign',
+ justifyContent: 'msFlexPack',
+ order: 'msFlexOrder',
+ flexGrow: 'msFlexPositive',
+ flexShrink: 'msFlexNegative',
+ flexBasis: 'msFlexPreferredSize'
+};
+
+function flexboxIE(property, value, style) {
+ if (alternativeProps.hasOwnProperty(property)) {
+ style[alternativeProps[property]] = alternativeValues[value] || value;
+ }
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/flexboxOld.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/flexboxOld.js
new file mode 100644
index 00000000..f2801742
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/flexboxOld.js
@@ -0,0 +1,39 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = flexboxOld;
+var alternativeValues = {
+ 'space-around': 'justify',
+ 'space-between': 'justify',
+ 'flex-start': 'start',
+ 'flex-end': 'end',
+ 'wrap-reverse': 'multiple',
+ wrap: 'multiple'
+};
+
+var alternativeProps = {
+ alignItems: 'WebkitBoxAlign',
+ justifyContent: 'WebkitBoxPack',
+ flexWrap: 'WebkitBoxLines'
+};
+
+function flexboxOld(property, value, style) {
+ if (property === 'flexDirection' && typeof value === 'string') {
+ if (value.indexOf('column') > -1) {
+ style.WebkitBoxOrient = 'vertical';
+ } else {
+ style.WebkitBoxOrient = 'horizontal';
+ }
+ if (value.indexOf('reverse') > -1) {
+ style.WebkitBoxDirection = 'reverse';
+ } else {
+ style.WebkitBoxDirection = 'normal';
+ }
+ }
+ if (alternativeProps.hasOwnProperty(property)) {
+ style[alternativeProps[property]] = alternativeValues[value] || value;
+ }
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/gradient.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/gradient.js
new file mode 100644
index 00000000..a772c0fc
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/gradient.js
@@ -0,0 +1,25 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = gradient;
+
+var _isPrefixedValue = require('css-in-js-utils/lib/isPrefixedValue');
+
+var _isPrefixedValue2 = _interopRequireDefault(_isPrefixedValue);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var prefixes = ['-webkit-', '-moz-', ''];
+
+var values = /linear-gradient|radial-gradient|repeating-linear-gradient|repeating-radial-gradient/;
+
+function gradient(property, value) {
+ if (typeof value === 'string' && !(0, _isPrefixedValue2.default)(value) && values.test(value)) {
+ return prefixes.map(function (prefix) {
+ return prefix + value;
+ });
+ }
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/imageSet.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/imageSet.js
new file mode 100644
index 00000000..e990e209
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/imageSet.js
@@ -0,0 +1,23 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = imageSet;
+
+var _isPrefixedValue = require('css-in-js-utils/lib/isPrefixedValue');
+
+var _isPrefixedValue2 = _interopRequireDefault(_isPrefixedValue);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+// http://caniuse.com/#feat=css-image-set
+var prefixes = ['-webkit-', ''];
+function imageSet(property, value) {
+ if (typeof value === 'string' && !(0, _isPrefixedValue2.default)(value) && value.indexOf('image-set(') > -1) {
+ return prefixes.map(function (prefix) {
+ return value.replace(/image-set\(/g, prefix + 'image-set(');
+ });
+ }
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/index.js
new file mode 100644
index 00000000..9e89691c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/index.js
@@ -0,0 +1,58 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var _calc = require('./calc');
+
+var _calc2 = _interopRequireDefault(_calc);
+
+var _cursor = require('./cursor');
+
+var _cursor2 = _interopRequireDefault(_cursor);
+
+var _crossFade = require('./crossFade');
+
+var _crossFade2 = _interopRequireDefault(_crossFade);
+
+var _filter = require('./filter');
+
+var _filter2 = _interopRequireDefault(_filter);
+
+var _flex = require('./flex');
+
+var _flex2 = _interopRequireDefault(_flex);
+
+var _flexboxIE = require('./flexboxIE');
+
+var _flexboxIE2 = _interopRequireDefault(_flexboxIE);
+
+var _flexboxOld = require('./flexboxOld');
+
+var _flexboxOld2 = _interopRequireDefault(_flexboxOld);
+
+var _gradient = require('./gradient');
+
+var _gradient2 = _interopRequireDefault(_gradient);
+
+var _imageSet = require('./imageSet');
+
+var _imageSet2 = _interopRequireDefault(_imageSet);
+
+var _position = require('./position');
+
+var _position2 = _interopRequireDefault(_position);
+
+var _sizing = require('./sizing');
+
+var _sizing2 = _interopRequireDefault(_sizing);
+
+var _transition = require('./transition');
+
+var _transition2 = _interopRequireDefault(_transition);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+exports.default = [_position2.default, _calc2.default, _imageSet2.default, _crossFade2.default, _filter2.default, _cursor2.default, _sizing2.default, _gradient2.default, _transition2.default, _flexboxIE2.default, _flexboxOld2.default, _flex2.default];
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/position.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/position.js
new file mode 100644
index 00000000..fb83922a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/position.js
@@ -0,0 +1,12 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = position;
+function position(property, value) {
+ if (property === 'position' && value === 'sticky') {
+ return ['-webkit-sticky', 'sticky'];
+ }
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/sizing.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/sizing.js
new file mode 100644
index 00000000..5b2a4de5
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/sizing.js
@@ -0,0 +1,33 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = sizing;
+var prefixes = ['-webkit-', '-moz-', ''];
+
+var properties = {
+ maxHeight: true,
+ maxWidth: true,
+ width: true,
+ height: true,
+ columnWidth: true,
+ minWidth: true,
+ minHeight: true
+};
+var values = {
+ 'min-content': true,
+ 'max-content': true,
+ 'fill-available': true,
+ 'fit-content': true,
+ 'contain-floats': true
+};
+
+function sizing(property, value) {
+ if (properties.hasOwnProperty(property) && values.hasOwnProperty(value)) {
+ return prefixes.map(function (prefix) {
+ return prefix + value;
+ });
+ }
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/transition.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/transition.js
new file mode 100644
index 00000000..e9d8fae4
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/plugins/transition.js
@@ -0,0 +1,93 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = transition;
+
+var _hyphenateProperty = require('css-in-js-utils/lib/hyphenateProperty');
+
+var _hyphenateProperty2 = _interopRequireDefault(_hyphenateProperty);
+
+var _isPrefixedValue = require('css-in-js-utils/lib/isPrefixedValue');
+
+var _isPrefixedValue2 = _interopRequireDefault(_isPrefixedValue);
+
+var _capitalizeString = require('../../utils/capitalizeString');
+
+var _capitalizeString2 = _interopRequireDefault(_capitalizeString);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var properties = {
+ transition: true,
+ transitionProperty: true,
+ WebkitTransition: true,
+ WebkitTransitionProperty: true,
+ MozTransition: true,
+ MozTransitionProperty: true
+};
+
+
+var prefixMapping = {
+ Webkit: '-webkit-',
+ Moz: '-moz-',
+ ms: '-ms-'
+};
+
+function prefixValue(value, propertyPrefixMap) {
+ if ((0, _isPrefixedValue2.default)(value)) {
+ return value;
+ }
+
+ // only split multi values, not cubic beziers
+ var multipleValues = value.split(/,(?![^()]*(?:\([^()]*\))?\))/g);
+
+ for (var i = 0, len = multipleValues.length; i < len; ++i) {
+ var singleValue = multipleValues[i];
+ var values = [singleValue];
+ for (var property in propertyPrefixMap) {
+ var dashCaseProperty = (0, _hyphenateProperty2.default)(property);
+
+ if (singleValue.indexOf(dashCaseProperty) > -1 && dashCaseProperty !== 'order') {
+ var prefixes = propertyPrefixMap[property];
+ for (var j = 0, pLen = prefixes.length; j < pLen; ++j) {
+ // join all prefixes and create a new value
+ values.unshift(singleValue.replace(dashCaseProperty, prefixMapping[prefixes[j]] + dashCaseProperty));
+ }
+ }
+ }
+
+ multipleValues[i] = values.join(',');
+ }
+
+ return multipleValues.join(',');
+}
+
+function transition(property, value, style, propertyPrefixMap) {
+ // also check for already prefixed transitions
+ if (typeof value === 'string' && properties.hasOwnProperty(property)) {
+ var outputValue = prefixValue(value, propertyPrefixMap);
+ // if the property is already prefixed
+ var webkitOutput = outputValue.split(/,(?![^()]*(?:\([^()]*\))?\))/g).filter(function (val) {
+ return !/-moz-|-ms-/.test(val);
+ }).join(',');
+
+ if (property.indexOf('Webkit') > -1) {
+ return webkitOutput;
+ }
+
+ var mozOutput = outputValue.split(/,(?![^()]*(?:\([^()]*\))?\))/g).filter(function (val) {
+ return !/-webkit-|-ms-/.test(val);
+ }).join(',');
+
+ if (property.indexOf('Moz') > -1) {
+ return mozOutput;
+ }
+
+ style['Webkit' + (0, _capitalizeString2.default)(property)] = webkitOutput;
+ style['Moz' + (0, _capitalizeString2.default)(property)] = mozOutput;
+ return outputValue;
+ }
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/staticData.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/staticData.js
new file mode 100644
index 00000000..db5163a4
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/static/staticData.js
@@ -0,0 +1,18 @@
+"use strict";
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+
+var w = ["Webkit"];
+var m = ["Moz"];
+var ms = ["ms"];
+var wm = ["Webkit", "Moz"];
+var wms = ["Webkit", "ms"];
+var wmms = ["Webkit", "Moz", "ms"];
+
+exports.default = {
+ plugins: [],
+ prefixMap: { "appearance": wm, "userSelect": wmms, "textEmphasisPosition": w, "textEmphasis": w, "textEmphasisStyle": w, "textEmphasisColor": w, "boxDecorationBreak": w, "clipPath": w, "maskImage": w, "maskMode": w, "maskRepeat": w, "maskPosition": w, "maskClip": w, "maskOrigin": w, "maskSize": w, "maskComposite": w, "mask": w, "maskBorderSource": w, "maskBorderMode": w, "maskBorderSlice": w, "maskBorderWidth": w, "maskBorderOutset": w, "maskBorderRepeat": w, "maskBorder": w, "maskType": w, "textDecorationStyle": w, "textDecorationSkip": w, "textDecorationLine": w, "textDecorationColor": w, "filter": w, "fontFeatureSettings": w, "breakAfter": wmms, "breakBefore": wmms, "breakInside": wmms, "columnCount": wm, "columnFill": wm, "columnGap": wm, "columnRule": wm, "columnRuleColor": wm, "columnRuleStyle": wm, "columnRuleWidth": wm, "columns": wm, "columnSpan": wm, "columnWidth": wm, "writingMode": wms, "flex": w, "flexBasis": w, "flexDirection": w, "flexGrow": w, "flexFlow": w, "flexShrink": w, "flexWrap": w, "alignContent": w, "alignItems": w, "alignSelf": w, "justifyContent": w, "order": w, "transform": w, "transformOrigin": w, "transformOriginX": w, "transformOriginY": w, "backfaceVisibility": w, "perspective": w, "perspectiveOrigin": w, "transformStyle": w, "transformOriginZ": w, "animation": w, "animationDelay": w, "animationDirection": w, "animationFillMode": w, "animationDuration": w, "animationIterationCount": w, "animationName": w, "animationPlayState": w, "animationTimingFunction": w, "backdropFilter": w, "fontKerning": w, "scrollSnapType": wms, "scrollSnapPointsX": wms, "scrollSnapPointsY": wms, "scrollSnapDestination": wms, "scrollSnapCoordinate": wms, "shapeImageThreshold": w, "shapeImageMargin": w, "shapeImageOutside": w, "hyphens": wmms, "flowInto": wms, "flowFrom": wms, "regionFragment": wms, "textAlignLast": m, "tabSize": m, "wrapFlow": ms, "wrapThrough": ms, "wrapMargin": ms, "gridTemplateColumns": ms, "gridTemplateRows": ms, "gridTemplateAreas": ms, "gridTemplate": ms, "gridAutoColumns": ms, "gridAutoRows": ms, "gridAutoFlow": ms, "grid": ms, "gridRowStart": ms, "gridColumnStart": ms, "gridRowEnd": ms, "gridRow": ms, "gridColumn": ms, "gridColumnEnd": ms, "gridColumnGap": ms, "gridRowGap": ms, "gridArea": ms, "gridGap": ms, "textSizeAdjust": wms, "borderImage": w, "borderImageOutset": w, "borderImageRepeat": w, "borderImageSlice": w, "borderImageSource": w, "borderImageWidth": w, "transitionDelay": w, "transitionDuration": w, "transitionProperty": w, "transitionTimingFunction": w }
+};
+module.exports = exports["default"];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/utils/addNewValuesOnly.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/utils/addNewValuesOnly.js
new file mode 100644
index 00000000..34dd0e1d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/utils/addNewValuesOnly.js
@@ -0,0 +1,22 @@
+"use strict";
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = addNewValuesOnly;
+function addIfNew(list, value) {
+ if (list.indexOf(value) === -1) {
+ list.push(value);
+ }
+}
+
+function addNewValuesOnly(list, values) {
+ if (Array.isArray(values)) {
+ for (var i = 0, len = values.length; i < len; ++i) {
+ addIfNew(list, values[i]);
+ }
+ } else {
+ addIfNew(list, values);
+ }
+}
+module.exports = exports["default"];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/utils/capitalizeString.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/utils/capitalizeString.js
new file mode 100644
index 00000000..5a872bc5
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/utils/capitalizeString.js
@@ -0,0 +1,10 @@
+"use strict";
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = capitalizeString;
+function capitalizeString(str) {
+ return str.charAt(0).toUpperCase() + str.slice(1);
+}
+module.exports = exports["default"];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/utils/getBrowserInformation.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/utils/getBrowserInformation.js
new file mode 100644
index 00000000..fb25f78a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/utils/getBrowserInformation.js
@@ -0,0 +1,131 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = getBrowserInformation;
+
+var _bowser = require('bowser');
+
+var _bowser2 = _interopRequireDefault(_bowser);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+var prefixByBrowser = {
+ chrome: 'Webkit',
+ safari: 'Webkit',
+ ios: 'Webkit',
+ android: 'Webkit',
+ phantom: 'Webkit',
+ opera: 'Webkit',
+ webos: 'Webkit',
+ blackberry: 'Webkit',
+ bada: 'Webkit',
+ tizen: 'Webkit',
+ chromium: 'Webkit',
+ vivaldi: 'Webkit',
+ firefox: 'Moz',
+ seamoney: 'Moz',
+ sailfish: 'Moz',
+ msie: 'ms',
+ msedge: 'ms'
+};
+
+
+var browserByCanIuseAlias = {
+ chrome: 'chrome',
+ chromium: 'chrome',
+ safari: 'safari',
+ firfox: 'firefox',
+ msedge: 'edge',
+ opera: 'opera',
+ vivaldi: 'opera',
+ msie: 'ie'
+};
+
+function getBrowserName(browserInfo) {
+ if (browserInfo.firefox) {
+ return 'firefox';
+ }
+
+ if (browserInfo.mobile || browserInfo.tablet) {
+ if (browserInfo.ios) {
+ return 'ios_saf';
+ } else if (browserInfo.android) {
+ return 'android';
+ } else if (browserInfo.opera) {
+ return 'op_mini';
+ }
+ }
+
+ for (var browser in browserByCanIuseAlias) {
+ if (browserInfo.hasOwnProperty(browser)) {
+ return browserByCanIuseAlias[browser];
+ }
+ }
+}
+
+/**
+ * Uses bowser to get default browser browserInformation such as version and name
+ * Evaluates bowser browserInfo and adds vendorPrefix browserInformation
+ * @param {string} userAgent - userAgent that gets evaluated
+ */
+function getBrowserInformation(userAgent) {
+ var browserInfo = _bowser2.default._detect(userAgent);
+
+ if (browserInfo.yandexbrowser) {
+ browserInfo = _bowser2.default._detect(userAgent.replace(/YaBrowser\/[0-9.]*/, ''));
+ }
+
+ for (var browser in prefixByBrowser) {
+ if (browserInfo.hasOwnProperty(browser)) {
+ var prefix = prefixByBrowser[browser];
+
+ browserInfo.jsPrefix = prefix;
+ browserInfo.cssPrefix = '-' + prefix.toLowerCase() + '-';
+ break;
+ }
+ }
+
+ browserInfo.browserName = getBrowserName(browserInfo);
+
+ // For cordova IOS 8 the version is missing, set truncated osversion to prevent NaN
+ if (browserInfo.version) {
+ browserInfo.browserVersion = parseFloat(browserInfo.version);
+ } else {
+ browserInfo.browserVersion = parseInt(parseFloat(browserInfo.osversion), 10);
+ }
+
+ browserInfo.osVersion = parseFloat(browserInfo.osversion);
+
+ // iOS forces all browsers to use Safari under the hood
+ // as the Safari version seems to match the iOS version
+ // we just explicitely use the osversion instead
+ // https://github.com/rofrischmann/inline-style-prefixer/issues/72
+ if (browserInfo.browserName === 'ios_saf' && browserInfo.browserVersion > browserInfo.osVersion) {
+ browserInfo.browserVersion = browserInfo.osVersion;
+ }
+
+ // seperate native android chrome
+ // https://github.com/rofrischmann/inline-style-prefixer/issues/45
+ if (browserInfo.browserName === 'android' && browserInfo.chrome && browserInfo.browserVersion > 37) {
+ browserInfo.browserName = 'and_chr';
+ }
+
+ // For android < 4.4 we want to check the osversion
+ // not the chrome version, see issue #26
+ // https://github.com/rofrischmann/inline-style-prefixer/issues/26
+ if (browserInfo.browserName === 'android' && browserInfo.osVersion < 5) {
+ browserInfo.browserVersion = browserInfo.osVersion;
+ }
+
+ // Samsung browser are basically build on Chrome > 44
+ // https://github.com/rofrischmann/inline-style-prefixer/issues/102
+ if (browserInfo.browserName === 'android' && browserInfo.samsungBrowser) {
+ browserInfo.browserName = 'and_chr';
+ browserInfo.browserVersion = 44;
+ }
+
+ return browserInfo;
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/utils/getPrefixedKeyframes.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/utils/getPrefixedKeyframes.js
new file mode 100644
index 00000000..06fb5d59
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/utils/getPrefixedKeyframes.js
@@ -0,0 +1,15 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = getPrefixedKeyframes;
+function getPrefixedKeyframes(browserName, browserVersion, cssPrefix) {
+ var prefixedKeyframes = 'keyframes';
+
+ if (browserName === 'chrome' && browserVersion < 43 || (browserName === 'safari' || browserName === 'ios_saf') && browserVersion < 9 || browserName === 'opera' && browserVersion < 30 || browserName === 'android' && browserVersion <= 4.4 || browserName === 'and_uc') {
+ return cssPrefix + prefixedKeyframes;
+ }
+ return prefixedKeyframes;
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/utils/getPrefixedValue.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/utils/getPrefixedValue.js
new file mode 100644
index 00000000..9e23b82b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/utils/getPrefixedValue.js
@@ -0,0 +1,13 @@
+"use strict";
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = getPrefixedValue;
+function getPrefixedValue(prefixedValue, value, keepUnprefixed) {
+ if (keepUnprefixed) {
+ return [prefixedValue, value];
+ }
+ return prefixedValue;
+}
+module.exports = exports["default"];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/utils/isObject.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/utils/isObject.js
new file mode 100644
index 00000000..dd48b07a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/utils/isObject.js
@@ -0,0 +1,10 @@
+"use strict";
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = isObject;
+function isObject(value) {
+ return value instanceof Object && !Array.isArray(value);
+}
+module.exports = exports["default"];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/utils/prefixProperty.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/utils/prefixProperty.js
new file mode 100644
index 00000000..2249bbf1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/utils/prefixProperty.js
@@ -0,0 +1,22 @@
+'use strict';
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = prefixProperty;
+
+var _capitalizeString = require('./capitalizeString');
+
+var _capitalizeString2 = _interopRequireDefault(_capitalizeString);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+function prefixProperty(prefixProperties, property, style) {
+ if (prefixProperties.hasOwnProperty(property)) {
+ var requiredPrefixes = prefixProperties[property];
+ for (var i = 0, len = requiredPrefixes.length; i < len; ++i) {
+ style[requiredPrefixes[i] + (0, _capitalizeString2.default)(property)] = style[property];
+ }
+ }
+}
+module.exports = exports['default'];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/utils/prefixValue.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/utils/prefixValue.js
new file mode 100644
index 00000000..9ce9b352
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/inline-style-prefixer/utils/prefixValue.js
@@ -0,0 +1,18 @@
+"use strict";
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+});
+exports.default = prefixValue;
+function prefixValue(plugins, property, value, style, metaData) {
+ for (var i = 0, len = plugins.length; i < len; ++i) {
+ var processedValue = plugins[i](property, value, style, metaData);
+
+ // we can stop processing if a value is returned
+ // as all plugin criteria are unique
+ if (processedValue) {
+ return processedValue;
+ }
+ }
+}
+module.exports = exports["default"];
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/is-stream/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/is-stream/index.js
new file mode 100644
index 00000000..6f7ec91a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/is-stream/index.js
@@ -0,0 +1,21 @@
+'use strict';
+
+var isStream = module.exports = function (stream) {
+ return stream !== null && typeof stream === 'object' && typeof stream.pipe === 'function';
+};
+
+isStream.writable = function (stream) {
+ return isStream(stream) && stream.writable !== false && typeof stream._write === 'function' && typeof stream._writableState === 'object';
+};
+
+isStream.readable = function (stream) {
+ return isStream(stream) && stream.readable !== false && typeof stream._read === 'function' && typeof stream._readableState === 'object';
+};
+
+isStream.duplex = function (stream) {
+ return isStream.writable(stream) && isStream.readable(stream);
+};
+
+isStream.transform = function (stream) {
+ return isStream.duplex(stream) && typeof stream._transform === 'function' && typeof stream._transformState === 'object';
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/is-stream/license b/goTorrentWebUI/node_modules/react-toastify/node_modules/is-stream/license
new file mode 100644
index 00000000..654d0bfe
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/is-stream/license
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) Sindre Sorhus (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/goTorrentWebUI/node_modules/react-toastify/node_modules/is-stream/package.json b/goTorrentWebUI/node_modules/react-toastify/node_modules/is-stream/package.json
new file mode 100644
index 00000000..5eac8a3c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/is-stream/package.json
@@ -0,0 +1,70 @@
+{
+ "_from": "is-stream@^1.0.1",
+ "_id": "is-stream@1.1.0",
+ "_inBundle": false,
+ "_integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=",
+ "_location": "/react-toastify/is-stream",
+ "_phantomChildren": {},
+ "_requested": {
+ "type": "range",
+ "registry": true,
+ "raw": "is-stream@^1.0.1",
+ "name": "is-stream",
+ "escapedName": "is-stream",
+ "rawSpec": "^1.0.1",
+ "saveSpec": null,
+ "fetchSpec": "^1.0.1"
+ },
+ "_requiredBy": [
+ "/react-toastify/node-fetch"
+ ],
+ "_resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
+ "_shasum": "12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44",
+ "_spec": "is-stream@^1.0.1",
+ "_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI\\node_modules\\react-toastify\\node_modules\\node-fetch",
+ "author": {
+ "name": "Sindre Sorhus",
+ "email": "sindresorhus@gmail.com",
+ "url": "sindresorhus.com"
+ },
+ "bugs": {
+ "url": "https://github.com/sindresorhus/is-stream/issues"
+ },
+ "bundleDependencies": false,
+ "deprecated": false,
+ "description": "Check if something is a Node.js stream",
+ "devDependencies": {
+ "ava": "*",
+ "tempfile": "^1.1.0",
+ "xo": "*"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ },
+ "files": [
+ "index.js"
+ ],
+ "homepage": "https://github.com/sindresorhus/is-stream#readme",
+ "keywords": [
+ "stream",
+ "type",
+ "streams",
+ "writable",
+ "readable",
+ "duplex",
+ "transform",
+ "check",
+ "detect",
+ "is"
+ ],
+ "license": "MIT",
+ "name": "is-stream",
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/sindresorhus/is-stream.git"
+ },
+ "scripts": {
+ "test": "xo && ava"
+ },
+ "version": "1.1.0"
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/is-stream/readme.md b/goTorrentWebUI/node_modules/react-toastify/node_modules/is-stream/readme.md
new file mode 100644
index 00000000..d8afce81
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/is-stream/readme.md
@@ -0,0 +1,42 @@
+# is-stream [](https://travis-ci.org/sindresorhus/is-stream)
+
+> Check if something is a [Node.js stream](https://nodejs.org/api/stream.html)
+
+
+## Install
+
+```
+$ npm install --save is-stream
+```
+
+
+## Usage
+
+```js
+const fs = require('fs');
+const isStream = require('is-stream');
+
+isStream(fs.createReadStream('unicorn.png'));
+//=> true
+
+isStream({});
+//=> false
+```
+
+
+## API
+
+### isStream(stream)
+
+#### isStream.writable(stream)
+
+#### isStream.readable(stream)
+
+#### isStream.duplex(stream)
+
+#### isStream.transform(stream)
+
+
+## License
+
+MIT © [Sindre Sorhus](https://sindresorhus.com)
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/.editorconfig b/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/.editorconfig
new file mode 100644
index 00000000..7bfa0f2d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/.editorconfig
@@ -0,0 +1,12 @@
+root=true
+
+[*]
+end_of_line = lf
+insert_final_newline = true
+
+[*.js]
+indent_style = tab
+
+[*.json]
+indent_style = space
+indent_size = 2
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/.jshintrc b/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/.jshintrc
new file mode 100644
index 00000000..3686db75
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/.jshintrc
@@ -0,0 +1,5 @@
+{
+ "node": true,
+ "browser": true,
+ "predef": ["describe", "it", "before"]
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/.npmignore b/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/.npmignore
new file mode 100644
index 00000000..5bbff155
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/.npmignore
@@ -0,0 +1,2 @@
+/node_modules/
+/bower_components/
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/.travis.yml b/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/.travis.yml
new file mode 100644
index 00000000..225affa5
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/.travis.yml
@@ -0,0 +1,15 @@
+sudo: false
+language: node_js
+node_js:
+ - "0.10"
+before_deploy:
+ - npm-prepublish --verbose
+deploy:
+ provider: npm
+ email: matt@mattandre.ws
+ api_key:
+ secure: eEeb1aG7phF4X5z+CQ3yzTdXtHf71Dk4ec6v5iAjRYNh/s6GLxfZS7c4qocZI8YXW3YmmsJR5zGZ2l88k2iqTtlBn0Mrp6ytwIa/jO00kDpR8V11eW9i47KRQq25eA1YW+SrLM5V/fh+s9u3VU7jhbax5eeViqVdwORI85kZrZE=
+ on:
+ all_branches: true
+ tags: true
+ repo: matthew-andrews/isomorphic-fetch
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/LICENSE b/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/LICENSE
new file mode 100644
index 00000000..2385aa96
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/LICENSE
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) 2015 Matt Andrews
+
+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/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/README.md b/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/README.md
new file mode 100644
index 00000000..270a3e39
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/README.md
@@ -0,0 +1,45 @@
+isomorphic-fetch [](https://travis-ci.org/matthew-andrews/isomorphic-fetch)
+================
+
+Fetch for node and Browserify. Built on top of [GitHub's WHATWG Fetch polyfill](https://github.com/github/fetch).
+
+## Warnings
+
+- This adds `fetch` as a global so that its API is consistent between client and server.
+- You must bring your own ES6 Promise compatible polyfill, I suggest [es6-promise](https://github.com/jakearchibald/es6-promise).
+
+## Installation
+
+### NPM
+
+```sh
+npm install --save isomorphic-fetch es6-promise
+```
+
+### Bower
+
+```sh
+bower install --save isomorphic-fetch es6-promise
+```
+
+## Usage
+
+```js
+require('es6-promise').polyfill();
+require('isomorphic-fetch');
+
+fetch('//offline-news-api.herokuapp.com/stories')
+ .then(function(response) {
+ if (response.status >= 400) {
+ throw new Error("Bad response from server");
+ }
+ return response.json();
+ })
+ .then(function(stories) {
+ console.log(stories);
+ });
+```
+
+## License
+
+All open source code released by FT Labs is licenced under the MIT licence. Based on [the fine work by](https://github.com/github/fetch/pull/31) **[jxck](https://github.com/Jxck)**.
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/bower.json b/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/bower.json
new file mode 100644
index 00000000..dcefb046
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/bower.json
@@ -0,0 +1,7 @@
+{
+ "name": "isomorphic-fetch",
+ "main": ["fetch-bower.js"],
+ "dependencies": {
+ "fetch": "github/fetch#>=0.10.0"
+ }
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/fetch-bower.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/fetch-bower.js
new file mode 100644
index 00000000..557a2fe4
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/fetch-bower.js
@@ -0,0 +1 @@
+module.exports = require('fetch');
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/fetch-npm-browserify.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/fetch-npm-browserify.js
new file mode 100644
index 00000000..7f16e231
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/fetch-npm-browserify.js
@@ -0,0 +1,6 @@
+// the whatwg-fetch polyfill installs the fetch() function
+// on the global object (window or self)
+//
+// Return that as the export for use in Webpack, Browserify etc.
+require('whatwg-fetch');
+module.exports = self.fetch.bind(self);
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/fetch-npm-node.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/fetch-npm-node.js
new file mode 100644
index 00000000..bbd3dd1d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/fetch-npm-node.js
@@ -0,0 +1,16 @@
+"use strict";
+
+var realFetch = require('node-fetch');
+module.exports = function(url, options) {
+ if (/^\/\//.test(url)) {
+ url = 'https:' + url;
+ }
+ return realFetch.call(this, url, options);
+};
+
+if (!global.fetch) {
+ global.fetch = module.exports;
+ global.Response = realFetch.Response;
+ global.Headers = realFetch.Headers;
+ global.Request = realFetch.Request;
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/package.json b/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/package.json
new file mode 100644
index 00000000..b88d81ac
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/package.json
@@ -0,0 +1,62 @@
+{
+ "_from": "isomorphic-fetch@^2.1.1",
+ "_id": "isomorphic-fetch@2.2.1",
+ "_inBundle": false,
+ "_integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=",
+ "_location": "/react-toastify/isomorphic-fetch",
+ "_phantomChildren": {},
+ "_requested": {
+ "type": "range",
+ "registry": true,
+ "raw": "isomorphic-fetch@^2.1.1",
+ "name": "isomorphic-fetch",
+ "escapedName": "isomorphic-fetch",
+ "rawSpec": "^2.1.1",
+ "saveSpec": null,
+ "fetchSpec": "^2.1.1"
+ },
+ "_requiredBy": [
+ "/react-toastify/fbjs"
+ ],
+ "_resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz",
+ "_shasum": "611ae1acf14f5e81f729507472819fe9733558a9",
+ "_spec": "isomorphic-fetch@^2.1.1",
+ "_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI\\node_modules\\react-toastify\\node_modules\\fbjs",
+ "author": {
+ "name": "Matt Andrews",
+ "email": "matt@mattandre.ws"
+ },
+ "browser": "fetch-npm-browserify.js",
+ "bugs": {
+ "url": "https://github.com/matthew-andrews/isomorphic-fetch/issues"
+ },
+ "bundleDependencies": false,
+ "dependencies": {
+ "node-fetch": "^1.0.1",
+ "whatwg-fetch": ">=0.10.0"
+ },
+ "deprecated": false,
+ "description": "Isomorphic WHATWG Fetch API, for Node & Browserify",
+ "devDependencies": {
+ "chai": "^1.10.0",
+ "es6-promise": "^2.0.1",
+ "jshint": "^2.5.11",
+ "lintspaces-cli": "0.0.4",
+ "mocha": "^2.1.0",
+ "nock": "^0.56.0",
+ "npm-prepublish": "^1.0.2"
+ },
+ "homepage": "https://github.com/matthew-andrews/isomorphic-fetch/issues",
+ "license": "MIT",
+ "main": "fetch-npm-node.js",
+ "name": "isomorphic-fetch",
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/matthew-andrews/isomorphic-fetch.git"
+ },
+ "scripts": {
+ "files": "find . -name '*.js' ! -path './node_modules/*' ! -path './bower_components/*'",
+ "test": "jshint `npm run -s files` && lintspaces -i js-comments -e .editorconfig `npm run -s files` && mocha"
+ },
+ "version": "2.2.1"
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/test/api.test.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/test/api.test.js
new file mode 100644
index 00000000..c25a5cbe
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/isomorphic-fetch/test/api.test.js
@@ -0,0 +1,51 @@
+/*global fetch*/
+"use strict";
+
+require('es6-promise').polyfill();
+require('../fetch-npm-node');
+var expect = require('chai').expect;
+var nock = require('nock');
+var good = 'hello world. 你好世界。';
+var bad = 'good bye cruel world. 再见残酷的世界。';
+
+function responseToText(response) {
+ if (response.status >= 400) throw new Error("Bad server response");
+ return response.text();
+}
+
+describe('fetch', function() {
+
+ before(function() {
+ nock('https://mattandre.ws')
+ .get('/succeed.txt')
+ .reply(200, good);
+ nock('https://mattandre.ws')
+ .get('/fail.txt')
+ .reply(404, bad);
+ });
+
+ it('should be defined', function() {
+ expect(fetch).to.be.a('function');
+ });
+
+ it('should facilitate the making of requests', function(done) {
+ fetch('//mattandre.ws/succeed.txt')
+ .then(responseToText)
+ .then(function(data) {
+ expect(data).to.equal(good);
+ done();
+ })
+ .catch(done);
+ });
+
+ it('should do the right thing with bad requests', function(done) {
+ fetch('//mattandre.ws/fail.txt')
+ .then(responseToText)
+ .catch(function(err) {
+ expect(err.toString()).to.equal("Error: Bad server response");
+ done();
+ })
+ .catch(done);
+ });
+
+});
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/js-tokens/CHANGELOG.md b/goTorrentWebUI/node_modules/react-toastify/node_modules/js-tokens/CHANGELOG.md
new file mode 100644
index 00000000..208304b3
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/js-tokens/CHANGELOG.md
@@ -0,0 +1,134 @@
+### Version 3.0.2 (2017-06-28) ###
+
+- No code changes. Just updates to the readme.
+
+
+### Version 3.0.1 (2017-01-30) ###
+
+- Fixed: ES2015 unicode escapes with more than 6 hex digits are now matched
+ correctly.
+
+
+### Version 3.0.0 (2017-01-11) ###
+
+This release contains one breaking change, that should [improve performance in
+V8][v8-perf]:
+
+> So how can you, as a JavaScript developer, ensure that your RegExps are fast?
+> If you are not interested in hooking into RegExp internals, make sure that
+> neither the RegExp instance, nor its prototype is modified in order to get the
+> best performance:
+>
+> ```js
+> var re = /./g;
+> re.exec(''); // Fast path.
+> re.new_property = 'slow';
+> ```
+
+This module used to export a single regex, with `.matchToToken` bolted
+on, just like in the above example. This release changes the exports of
+the module to avoid this issue.
+
+Before:
+
+```js
+import jsTokens from "js-tokens"
+// or:
+var jsTokens = require("js-tokens")
+var matchToToken = jsTokens.matchToToken
+```
+
+After:
+
+```js
+import jsTokens, {matchToToken} from "js-tokens"
+// or:
+var jsTokens = require("js-tokens").default
+var matchToToken = require("js-tokens").matchToToken
+```
+
+[v8-perf]: http://v8project.blogspot.se/2017/01/speeding-up-v8-regular-expressions.html
+
+
+### Version 2.0.0 (2016-06-19) ###
+
+- Added: Support for ES2016. In other words, support for the `**` exponentiation
+ operator.
+
+These are the breaking changes:
+
+- `'**'.match(jsTokens)` no longer returns `['*', '*']`, but `['**']`.
+- `'**='.match(jsTokens)` no longer returns `['*', '*=']`, but `['**=']`.
+
+
+### Version 1.0.3 (2016-03-27) ###
+
+- Improved: Made the regex ever so slightly smaller.
+- Updated: The readme.
+
+
+### Version 1.0.2 (2015-10-18) ###
+
+- Improved: Limited npm package contents for a smaller download. Thanks to
+ @zertosh!
+
+
+### Version 1.0.1 (2015-06-20) ###
+
+- Fixed: Declared an undeclared variable.
+
+
+### Version 1.0.0 (2015-02-26) ###
+
+- Changed: Merged the 'operator' and 'punctuation' types into 'punctuator'. That
+ type is now equivalent to the Punctuator token in the ECMAScript
+ specification. (Backwards-incompatible change.)
+- Fixed: A `-` followed by a number is now correctly matched as a punctuator
+ followed by a number. It used to be matched as just a number, but there is no
+ such thing as negative number literals. (Possibly backwards-incompatible
+ change.)
+
+
+### Version 0.4.1 (2015-02-21) ###
+
+- Added: Support for the regex `u` flag.
+
+
+### Version 0.4.0 (2015-02-21) ###
+
+- Improved: `jsTokens.matchToToken` performance.
+- Added: Support for octal and binary number literals.
+- Added: Support for template strings.
+
+
+### Version 0.3.1 (2015-01-06) ###
+
+- Fixed: Support for unicode spaces. They used to be allowed in names (which is
+ very confusing), and some unicode newlines were wrongly allowed in strings and
+ regexes.
+
+
+### Version 0.3.0 (2014-12-19) ###
+
+- Changed: The `jsTokens.names` array has been replaced with the
+ `jsTokens.matchToToken` function. The capturing groups of `jsTokens` are no
+ longer part of the public API; instead use said function. See this [gist] for
+ an example. (Backwards-incompatible change.)
+- Changed: The empty string is now considered an “invalid” token, instead an
+ “empty” token (its own group). (Backwards-incompatible change.)
+- Removed: component support. (Backwards-incompatible change.)
+
+[gist]: https://gist.github.com/lydell/be49dbf80c382c473004
+
+
+### Version 0.2.0 (2014-06-19) ###
+
+- Changed: Match ES6 function arrows (`=>`) as an operator, instead of its own
+ category (“functionArrow”), for simplicity. (Backwards-incompatible change.)
+- Added: ES6 splats (`...`) are now matched as an operator (instead of three
+ punctuations). (Backwards-incompatible change.)
+
+
+### Version 0.1.0 (2014-03-08) ###
+
+- Initial release.
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/js-tokens/LICENSE b/goTorrentWebUI/node_modules/react-toastify/node_modules/js-tokens/LICENSE
new file mode 100644
index 00000000..748f42e8
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/js-tokens/LICENSE
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) 2014, 2015, 2016, 2017 Simon Lydell
+
+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/goTorrentWebUI/node_modules/react-toastify/node_modules/js-tokens/README.md b/goTorrentWebUI/node_modules/react-toastify/node_modules/js-tokens/README.md
new file mode 100644
index 00000000..5c93a888
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/js-tokens/README.md
@@ -0,0 +1,222 @@
+Overview [](https://travis-ci.org/lydell/js-tokens)
+========
+
+A regex that tokenizes JavaScript.
+
+```js
+var jsTokens = require("js-tokens").default
+
+var jsString = "var foo=opts.foo;\n..."
+
+jsString.match(jsTokens)
+// ["var", " ", "foo", "=", "opts", ".", "foo", ";", "\n", ...]
+```
+
+
+Installation
+============
+
+`npm install js-tokens`
+
+```js
+import jsTokens from "js-tokens"
+// or:
+var jsTokens = require("js-tokens").default
+```
+
+
+Usage
+=====
+
+### `jsTokens` ###
+
+A regex with the `g` flag that matches JavaScript tokens.
+
+The regex _always_ matches, even invalid JavaScript and the empty string.
+
+The next match is always directly after the previous.
+
+### `var token = matchToToken(match)` ###
+
+```js
+import {matchToToken} from "js-tokens"
+// or:
+var matchToToken = require("js-tokens").matchToToken
+```
+
+Takes a `match` returned by `jsTokens.exec(string)`, and returns a `{type:
+String, value: String}` object. The following types are available:
+
+- string
+- comment
+- regex
+- number
+- name
+- punctuator
+- whitespace
+- invalid
+
+Multi-line comments and strings also have a `closed` property indicating if the
+token was closed or not (see below).
+
+Comments and strings both come in several flavors. To distinguish them, check if
+the token starts with `//`, `/*`, `'`, `"` or `` ` ``.
+
+Names are ECMAScript IdentifierNames, that is, including both identifiers and
+keywords. You may use [is-keyword-js] to tell them apart.
+
+Whitespace includes both line terminators and other whitespace.
+
+[is-keyword-js]: https://github.com/crissdev/is-keyword-js
+
+
+ECMAScript support
+==================
+
+The intention is to always support the latest stable ECMAScript version.
+
+If adding support for a newer version requires changes, a new version with a
+major verion bump will be released.
+
+Currently, [ECMAScript 2017] is supported.
+
+[ECMAScript 2017]: https://www.ecma-international.org/ecma-262/8.0/index.html
+
+
+Invalid code handling
+=====================
+
+Unterminated strings are still matched as strings. JavaScript strings cannot
+contain (unescaped) newlines, so unterminated strings simply end at the end of
+the line. Unterminated template strings can contain unescaped newlines, though,
+so they go on to the end of input.
+
+Unterminated multi-line comments are also still matched as comments. They
+simply go on to the end of the input.
+
+Unterminated regex literals are likely matched as division and whatever is
+inside the regex.
+
+Invalid ASCII characters have their own capturing group.
+
+Invalid non-ASCII characters are treated as names, to simplify the matching of
+names (except unicode spaces which are treated as whitespace).
+
+Regex literals may contain invalid regex syntax. They are still matched as
+regex literals. They may also contain repeated regex flags, to keep the regex
+simple.
+
+Strings may contain invalid escape sequences.
+
+
+Limitations
+===========
+
+Tokenizing JavaScript using regexes—in fact, _one single regex_—won’t be
+perfect. But that’s not the point either.
+
+You may compare jsTokens with [esprima] by using `esprima-compare.js`.
+See `npm run esprima-compare`!
+
+[esprima]: http://esprima.org/
+
+### Template string interpolation ###
+
+Template strings are matched as single tokens, from the starting `` ` `` to the
+ending `` ` ``, including interpolations (whose tokens are not matched
+individually).
+
+Matching template string interpolations requires recursive balancing of `{` and
+`}`—something that JavaScript regexes cannot do. Only one level of nesting is
+supported.
+
+### Division and regex literals collision ###
+
+Consider this example:
+
+```js
+var g = 9.82
+var number = bar / 2/g
+
+var regex = / 2/g
+```
+
+A human can easily understand that in the `number` line we’re dealing with
+division, and in the `regex` line we’re dealing with a regex literal. How come?
+Because humans can look at the whole code to put the `/` characters in context.
+A JavaScript regex cannot. It only sees forwards.
+
+When the `jsTokens` regex scans throught the above, it will see the following
+at the end of both the `number` and `regex` rows:
+
+```js
+/ 2/g
+```
+
+It is then impossible to know if that is a regex literal, or part of an
+expression dealing with division.
+
+Here is a similar case:
+
+```js
+foo /= 2/g
+foo(/= 2/g)
+```
+
+The first line divides the `foo` variable with `2/g`. The second line calls the
+`foo` function with the regex literal `/= 2/g`. Again, since `jsTokens` only
+sees forwards, it cannot tell the two cases apart.
+
+There are some cases where we _can_ tell division and regex literals apart,
+though.
+
+First off, we have the simple cases where there’s only one slash in the line:
+
+```js
+var foo = 2/g
+foo /= 2
+```
+
+Regex literals cannot contain newlines, so the above cases are correctly
+identified as division. Things are only problematic when there are more than
+one non-comment slash in a single line.
+
+Secondly, not every character is a valid regex flag.
+
+```js
+var number = bar / 2/e
+```
+
+The above example is also correctly identified as division, because `e` is not a
+valid regex flag. I initially wanted to future-proof by allowing `[a-zA-Z]*`
+(any letter) as flags, but it is not worth it since it increases the amount of
+ambigous cases. So only the standard `g`, `m`, `i`, `y` and `u` flags are
+allowed. This means that the above example will be identified as division as
+long as you don’t rename the `e` variable to some permutation of `gmiyu` 1 to 5
+characters long.
+
+Lastly, we can look _forward_ for information.
+
+- If the token following what looks like a regex literal is not valid after a
+ regex literal, but is valid in a division expression, then the regex literal
+ is treated as division instead. For example, a flagless regex cannot be
+ followed by a string, number or name, but all of those three can be the
+ denominator of a division.
+- Generally, if what looks like a regex literal is followed by an operator, the
+ regex literal is treated as division instead. This is because regexes are
+ seldomly used with operators (such as `+`, `*`, `&&` and `==`), but division
+ could likely be part of such an expression.
+
+Please consult the regex source and the test cases for precise information on
+when regex or division is matched (should you need to know). In short, you
+could sum it up as:
+
+If the end of a statement looks like a regex literal (even if it isn’t), it
+will be treated as one. Otherwise it should work as expected (if you write sane
+code).
+
+
+License
+=======
+
+[MIT](LICENSE).
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/js-tokens/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/js-tokens/index.js
new file mode 100644
index 00000000..a3c8a0d7
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/js-tokens/index.js
@@ -0,0 +1,23 @@
+// Copyright 2014, 2015, 2016, 2017 Simon Lydell
+// License: MIT. (See LICENSE.)
+
+Object.defineProperty(exports, "__esModule", {
+ value: true
+})
+
+// This regex comes from regex.coffee, and is inserted here by generate-index.js
+// (run `npm run build`).
+exports.default = /((['"])(?:(?!\2|\\).|\\(?:\r\n|[\s\S]))*(\2)?|`(?:[^`\\$]|\\[\s\S]|\$(?!\{)|\$\{(?:[^{}]|\{[^}]*\}?)*\}?)*(`)?)|(\/\/.*)|(\/\*(?:[^*]|\*(?!\/))*(\*\/)?)|(\/(?!\*)(?:\[(?:(?![\]\\]).|\\.)*\]|(?![\/\]\\]).|\\.)+\/(?:(?!\s*(?:\b|[\u0080-\uFFFF$\\'"~({]|[+\-!](?!=)|\.?\d))|[gmiyu]{1,5}\b(?![\u0080-\uFFFF$\\]|\s*(?:[+\-*%&|^<>!=?({]|\/(?![\/*])))))|(0[xX][\da-fA-F]+|0[oO][0-7]+|0[bB][01]+|(?:\d*\.\d+|\d+\.?)(?:[eE][+-]?\d+)?)|((?!\d)(?:(?!\s)[$\w\u0080-\uFFFF]|\\u[\da-fA-F]{4}|\\u\{[\da-fA-F]+\})+)|(--|\+\+|&&|\|\||=>|\.{3}|(?:[+\-\/%&|^]|\*{1,2}|<{1,2}|>{1,3}|!=?|={1,2})=?|[?~.,:;[\](){}])|(\s+)|(^$|[\s\S])/g
+
+exports.matchToToken = function(match) {
+ var token = {type: "invalid", value: match[0]}
+ if (match[ 1]) token.type = "string" , token.closed = !!(match[3] || match[4])
+ else if (match[ 5]) token.type = "comment"
+ else if (match[ 6]) token.type = "comment", token.closed = !!match[7]
+ else if (match[ 8]) token.type = "regex"
+ else if (match[ 9]) token.type = "number"
+ else if (match[10]) token.type = "name"
+ else if (match[11]) token.type = "punctuator"
+ else if (match[12]) token.type = "whitespace"
+ return token
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/js-tokens/package.json b/goTorrentWebUI/node_modules/react-toastify/node_modules/js-tokens/package.json
new file mode 100644
index 00000000..63a0877c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/js-tokens/package.json
@@ -0,0 +1,64 @@
+{
+ "_from": "js-tokens@^3.0.0",
+ "_id": "js-tokens@3.0.2",
+ "_inBundle": false,
+ "_integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=",
+ "_location": "/react-toastify/js-tokens",
+ "_phantomChildren": {},
+ "_requested": {
+ "type": "range",
+ "registry": true,
+ "raw": "js-tokens@^3.0.0",
+ "name": "js-tokens",
+ "escapedName": "js-tokens",
+ "rawSpec": "^3.0.0",
+ "saveSpec": null,
+ "fetchSpec": "^3.0.0"
+ },
+ "_requiredBy": [
+ "/react-toastify/loose-envify"
+ ],
+ "_resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz",
+ "_shasum": "9866df395102130e38f7f996bceb65443209c25b",
+ "_spec": "js-tokens@^3.0.0",
+ "_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI\\node_modules\\react-toastify\\node_modules\\loose-envify",
+ "author": {
+ "name": "Simon Lydell"
+ },
+ "bugs": {
+ "url": "https://github.com/lydell/js-tokens/issues"
+ },
+ "bundleDependencies": false,
+ "deprecated": false,
+ "description": "A regex that tokenizes JavaScript.",
+ "devDependencies": {
+ "coffee-script": "~1.12.6",
+ "esprima": "^4.0.0",
+ "everything.js": "^1.0.3",
+ "mocha": "^3.4.2"
+ },
+ "files": [
+ "index.js"
+ ],
+ "homepage": "https://github.com/lydell/js-tokens#readme",
+ "keywords": [
+ "JavaScript",
+ "js",
+ "token",
+ "tokenize",
+ "regex"
+ ],
+ "license": "MIT",
+ "name": "js-tokens",
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/lydell/js-tokens.git"
+ },
+ "scripts": {
+ "build": "node generate-index.js",
+ "dev": "npm run build && npm test",
+ "esprima-compare": "node esprima-compare ./index.js everything.js/es5.js",
+ "test": "mocha --ui tdd"
+ },
+ "version": "3.0.2"
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/loose-envify/.npmignore b/goTorrentWebUI/node_modules/react-toastify/node_modules/loose-envify/.npmignore
new file mode 100644
index 00000000..cbc25dac
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/loose-envify/.npmignore
@@ -0,0 +1,3 @@
+bench/
+test/
+.travis.yml
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/loose-envify/LICENSE b/goTorrentWebUI/node_modules/react-toastify/node_modules/loose-envify/LICENSE
new file mode 100644
index 00000000..fbafb487
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/loose-envify/LICENSE
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) 2015 Andres Suarez
+
+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/goTorrentWebUI/node_modules/react-toastify/node_modules/loose-envify/README.md b/goTorrentWebUI/node_modules/react-toastify/node_modules/loose-envify/README.md
new file mode 100644
index 00000000..7f4e07b0
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/loose-envify/README.md
@@ -0,0 +1,45 @@
+# loose-envify
+
+[](https://travis-ci.org/zertosh/loose-envify)
+
+Fast (and loose) selective `process.env` replacer using [js-tokens](https://github.com/lydell/js-tokens) instead of an AST. Works just like [envify](https://github.com/hughsk/envify) but much faster.
+
+## Gotchas
+
+* Doesn't handle broken syntax.
+* Doesn't look inside embedded expressions in template strings.
+ - **this won't work:**
+ ```js
+ console.log(`the current env is ${process.env.NODE_ENV}`);
+ ```
+* Doesn't replace oddly-spaced or oddly-commented expressions.
+ - **this won't work:**
+ ```js
+ console.log(process./*won't*/env./*work*/NODE_ENV);
+ ```
+
+## Usage/Options
+
+loose-envify has the exact same interface as [envify](https://github.com/hughsk/envify), including the CLI.
+
+## Benchmark
+
+```
+envify:
+
+ $ for i in {1..5}; do node bench/bench.js 'envify'; done
+ 708ms
+ 727ms
+ 791ms
+ 719ms
+ 720ms
+
+loose-envify:
+
+ $ for i in {1..5}; do node bench/bench.js '../'; done
+ 51ms
+ 52ms
+ 52ms
+ 52ms
+ 52ms
+```
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/loose-envify/cli.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/loose-envify/cli.js
new file mode 100644
index 00000000..c0b63cb1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/loose-envify/cli.js
@@ -0,0 +1,16 @@
+#!/usr/bin/env node
+'use strict';
+
+var looseEnvify = require('./');
+var fs = require('fs');
+
+if (process.argv[2]) {
+ fs.createReadStream(process.argv[2], {encoding: 'utf8'})
+ .pipe(looseEnvify(process.argv[2]))
+ .pipe(process.stdout);
+} else {
+ process.stdin.resume()
+ process.stdin
+ .pipe(looseEnvify(__filename))
+ .pipe(process.stdout);
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/loose-envify/custom.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/loose-envify/custom.js
new file mode 100644
index 00000000..6389bfac
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/loose-envify/custom.js
@@ -0,0 +1,4 @@
+// envify compatibility
+'use strict';
+
+module.exports = require('./loose-envify');
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/loose-envify/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/loose-envify/index.js
new file mode 100644
index 00000000..8cd8305d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/loose-envify/index.js
@@ -0,0 +1,3 @@
+'use strict';
+
+module.exports = require('./loose-envify')(process.env);
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/loose-envify/loose-envify.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/loose-envify/loose-envify.js
new file mode 100644
index 00000000..b5a5be22
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/loose-envify/loose-envify.js
@@ -0,0 +1,36 @@
+'use strict';
+
+var stream = require('stream');
+var util = require('util');
+var replace = require('./replace');
+
+var jsonExtRe = /\.json$/;
+
+module.exports = function(rootEnv) {
+ rootEnv = rootEnv || process.env;
+ return function (file, trOpts) {
+ if (jsonExtRe.test(file)) {
+ return stream.PassThrough();
+ }
+ var envs = trOpts ? [rootEnv, trOpts] : [rootEnv];
+ return new LooseEnvify(envs);
+ };
+};
+
+function LooseEnvify(envs) {
+ stream.Transform.call(this);
+ this._data = '';
+ this._envs = envs;
+}
+util.inherits(LooseEnvify, stream.Transform);
+
+LooseEnvify.prototype._transform = function(buf, enc, cb) {
+ this._data += buf;
+ cb();
+};
+
+LooseEnvify.prototype._flush = function(cb) {
+ var replaced = replace(this._data, this._envs);
+ this.push(replaced);
+ cb();
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/loose-envify/package.json b/goTorrentWebUI/node_modules/react-toastify/node_modules/loose-envify/package.json
new file mode 100644
index 00000000..6e814f7d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/loose-envify/package.json
@@ -0,0 +1,70 @@
+{
+ "_from": "loose-envify@^1.0.0",
+ "_id": "loose-envify@1.3.1",
+ "_inBundle": false,
+ "_integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=",
+ "_location": "/react-toastify/loose-envify",
+ "_phantomChildren": {},
+ "_requested": {
+ "type": "range",
+ "registry": true,
+ "raw": "loose-envify@^1.0.0",
+ "name": "loose-envify",
+ "escapedName": "loose-envify",
+ "rawSpec": "^1.0.0",
+ "saveSpec": null,
+ "fetchSpec": "^1.0.0"
+ },
+ "_requiredBy": [
+ "/react-toastify/fbjs",
+ "/react-toastify/prop-types",
+ "/react-toastify/react-transition-group",
+ "/react-toastify/warning"
+ ],
+ "_resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz",
+ "_shasum": "d1a8ad33fa9ce0e713d65fdd0ac8b748d478c848",
+ "_spec": "loose-envify@^1.0.0",
+ "_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI\\node_modules\\react-toastify\\node_modules\\fbjs",
+ "author": {
+ "name": "Andres Suarez",
+ "email": "zertosh@gmail.com"
+ },
+ "bin": {
+ "loose-envify": "cli.js"
+ },
+ "bugs": {
+ "url": "https://github.com/zertosh/loose-envify/issues"
+ },
+ "bundleDependencies": false,
+ "dependencies": {
+ "js-tokens": "^3.0.0"
+ },
+ "deprecated": false,
+ "description": "Fast (and loose) selective `process.env` replacer using js-tokens instead of an AST",
+ "devDependencies": {
+ "browserify": "^13.1.1",
+ "envify": "^3.4.0",
+ "tap": "^8.0.0"
+ },
+ "homepage": "https://github.com/zertosh/loose-envify",
+ "keywords": [
+ "environment",
+ "variables",
+ "browserify",
+ "browserify-transform",
+ "transform",
+ "source",
+ "configuration"
+ ],
+ "license": "MIT",
+ "main": "index.js",
+ "name": "loose-envify",
+ "repository": {
+ "type": "git",
+ "url": "git://github.com/zertosh/loose-envify.git"
+ },
+ "scripts": {
+ "test": "tap test/*.js"
+ },
+ "version": "1.3.1"
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/loose-envify/replace.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/loose-envify/replace.js
new file mode 100644
index 00000000..ec15e81c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/loose-envify/replace.js
@@ -0,0 +1,65 @@
+'use strict';
+
+var jsTokens = require('js-tokens').default;
+
+var processEnvRe = /\bprocess\.env\.[_$a-zA-Z][$\w]+\b/;
+var spaceOrCommentRe = /^(?:\s|\/[/*])/;
+
+function replace(src, envs) {
+ if (!processEnvRe.test(src)) {
+ return src;
+ }
+
+ var out = [];
+ var purge = envs.some(function(env) {
+ return env._ && env._.indexOf('purge') !== -1;
+ });
+
+ jsTokens.lastIndex = 0
+ var parts = src.match(jsTokens);
+
+ for (var i = 0; i < parts.length; i++) {
+ if (parts[i ] === 'process' &&
+ parts[i + 1] === '.' &&
+ parts[i + 2] === 'env' &&
+ parts[i + 3] === '.') {
+ var prevCodeToken = getAdjacentCodeToken(-1, parts, i);
+ var nextCodeToken = getAdjacentCodeToken(1, parts, i + 4);
+ var replacement = getReplacementString(envs, parts[i + 4], purge);
+ if (prevCodeToken !== '.' &&
+ nextCodeToken !== '.' &&
+ nextCodeToken !== '=' &&
+ typeof replacement === 'string') {
+ out.push(replacement);
+ i += 4;
+ continue;
+ }
+ }
+ out.push(parts[i]);
+ }
+
+ return out.join('');
+}
+
+function getAdjacentCodeToken(dir, parts, i) {
+ while (true) {
+ var part = parts[i += dir];
+ if (!spaceOrCommentRe.test(part)) {
+ return part;
+ }
+ }
+}
+
+function getReplacementString(envs, name, purge) {
+ for (var j = 0; j < envs.length; j++) {
+ var env = envs[j];
+ if (typeof env[name] !== 'undefined') {
+ return JSON.stringify(env[name]);
+ }
+ }
+ if (purge) {
+ return 'undefined';
+ }
+}
+
+module.exports = replace;
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/.npmignore b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/.npmignore
new file mode 100644
index 00000000..a9cb2544
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/.npmignore
@@ -0,0 +1,41 @@
+# Logs
+logs
+*.log
+
+# Runtime data
+pids
+*.pid
+*.seed
+
+# Directory for instrumented libs generated by jscoverage/JSCover
+lib-cov
+
+# Coverage directory used by tools like istanbul
+coverage
+
+# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
+.grunt
+
+# Compiled binary addons (http://nodejs.org/api/addons.html)
+build/Release
+
+# Dependency directory
+# Commenting this out is preferred by some people, see
+# https://www.npmjs.org/doc/misc/npm-faq.html#should-i-check-my-node_modules-folder-into-git-
+node_modules
+
+# Users Environment Variables
+.lock-wscript
+
+# OS files
+.DS_Store
+
+# Coveralls token files
+.coveralls.yml
+
+## ignore some files from 2.x branch
+
+.nyc_output
+lib/index.js
+lib/index.es.js
+package-lock.json
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/.travis.yml b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/.travis.yml
new file mode 100644
index 00000000..44b72f02
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/.travis.yml
@@ -0,0 +1,12 @@
+language: node_js
+node_js:
+ - "0.10"
+ - "0.12"
+ - "node"
+env:
+ - FORMDATA_VERSION=1.0.0
+ - FORMDATA_VERSION=2.1.0
+before_script:
+ - 'if [ "$FORMDATA_VERSION" ]; then npm install form-data@^$FORMDATA_VERSION; fi'
+before_install: if [[ `npm -v` < 3 ]]; then npm install -g npm@1.4.28; fi
+script: npm run coverage
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/CHANGELOG.md b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/CHANGELOG.md
new file mode 100644
index 00000000..e298b1b1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/CHANGELOG.md
@@ -0,0 +1,162 @@
+
+Changelog
+=========
+
+
+# 1.x release
+
+(Note: `1.x` will only have backported bugfix releases beyond `1.7.0`)
+
+## v1.7.3
+
+- Enhance: `FetchError` now gives a correct trace stack (backport from v2.x relese).
+
+## v1.7.2
+
+- Fix: when using node-fetch with test framework such as `jest`, `instanceof` check could fail in `Headers` class. This is causing some header values, such as `set-cookie`, to be dropped incorrectly.
+
+## v1.7.1
+
+- Fix: close local test server properly under Node 8.
+
+## v1.7.0
+
+- Fix: revert change in `v1.6.2` where 204 no-content response is handled with a special case, this conflicts with browser Fetch implementation (as browsers always throw when res.json() parses an empty string). Since this is an operational error, it's wrapped in a `FetchError` for easier error handling.
+- Fix: move code coverage tool to codecov platform and update travis config
+
+## v1.6.3
+
+- Enhance: error handling document to explain `FetchError` design
+- Fix: support `form-data` 2.x releases (requires `form-data` >= 2.1.0)
+
+## v1.6.2
+
+- Enhance: minor document update
+- Fix: response.json() returns empty object on 204 no-content response instead of throwing a syntax error
+
+## v1.6.1
+
+- Fix: if `res.body` is a non-stream non-formdata object, we will call `body.toString` and send it as a string
+- Fix: `counter` value is incorrectly set to `follow` value when wrapping Request instance
+- Fix: documentation update
+
+## v1.6.0
+
+- Enhance: added `res.buffer()` api for convenience, it returns body as a Node.js buffer
+- Enhance: better old server support by handling raw deflate response
+- Enhance: skip encoding detection for non-HTML/XML response
+- Enhance: minor document update
+- Fix: HEAD request doesn't need decompression, as body is empty
+- Fix: `req.body` now accepts a Node.js buffer
+
+## v1.5.3
+
+- Fix: handle 204 and 304 responses when body is empty but content-encoding is gzip/deflate
+- Fix: allow resolving response and cloned response in any order
+- Fix: avoid setting `content-length` when `form-data` body use streams
+- Fix: send DELETE request with content-length when body is present
+- Fix: allow any url when calling new Request, but still reject non-http(s) url in fetch
+
+## v1.5.2
+
+- Fix: allow node.js core to handle keep-alive connection pool when passing a custom agent
+
+## v1.5.1
+
+- Fix: redirect mode `manual` should work even when there is no redirection or broken redirection
+
+## v1.5.0
+
+- Enhance: rejected promise now use custom `Error` (thx to @pekeler)
+- Enhance: `FetchError` contains `err.type` and `err.code`, allows for better error handling (thx to @pekeler)
+- Enhance: basic support for redirect mode `manual` and `error`, allows for location header extraction (thx to @jimmywarting for the initial PR)
+
+## v1.4.1
+
+- Fix: wrapping Request instance with FormData body again should preserve the body as-is
+
+## v1.4.0
+
+- Enhance: Request and Response now have `clone` method (thx to @kirill-konshin for the initial PR)
+- Enhance: Request and Response now have proper string and buffer body support (thx to @kirill-konshin)
+- Enhance: Body constructor has been refactored out (thx to @kirill-konshin)
+- Enhance: Headers now has `forEach` method (thx to @tricoder42)
+- Enhance: back to 100% code coverage
+- Fix: better form-data support (thx to @item4)
+- Fix: better character encoding detection under chunked encoding (thx to @dsuket for the initial PR)
+
+## v1.3.3
+
+- Fix: make sure `Content-Length` header is set when body is string for POST/PUT/PATCH requests
+- Fix: handle body stream error, for cases such as incorrect `Content-Encoding` header
+- Fix: when following certain redirects, use `GET` on subsequent request per Fetch Spec
+- Fix: `Request` and `Response` constructors now parse headers input using `Headers`
+
+## v1.3.2
+
+- Enhance: allow auto detect of form-data input (no `FormData` spec on node.js, this is form-data specific feature)
+
+## v1.3.1
+
+- Enhance: allow custom host header to be set (server-side only feature, as it's a forbidden header on client-side)
+
+## v1.3.0
+
+- Enhance: now `fetch.Request` is exposed as well
+
+## v1.2.1
+
+- Enhance: `Headers` now normalized `Number` value to `String`, prevent common mistakes
+
+## v1.2.0
+
+- Enhance: now fetch.Headers and fetch.Response are exposed, making testing easier
+
+## v1.1.2
+
+- Fix: `Headers` should only support `String` and `Array` properties, and ignore others
+
+## v1.1.1
+
+- Enhance: now req.headers accept both plain object and `Headers` instance
+
+## v1.1.0
+
+- Enhance: timeout now also applies to response body (in case of slow response)
+- Fix: timeout is now cleared properly when fetch is done/has failed
+
+## v1.0.6
+
+- Fix: less greedy content-type charset matching
+
+## v1.0.5
+
+- Fix: when `follow = 0`, fetch should not follow redirect
+- Enhance: update tests for better coverage
+- Enhance: code formatting
+- Enhance: clean up doc
+
+## v1.0.4
+
+- Enhance: test iojs support
+- Enhance: timeout attached to socket event only fire once per redirect
+
+## v1.0.3
+
+- Fix: response size limit should reject large chunk
+- Enhance: added character encoding detection for xml, such as rss/atom feed (encoding in DTD)
+
+## v1.0.2
+
+- Fix: added res.ok per spec change
+
+## v1.0.0
+
+- Enhance: better test coverage and doc
+
+
+# 0.x release
+
+## v0.1
+
+- Major: initial public release
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/ERROR-HANDLING.md b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/ERROR-HANDLING.md
new file mode 100644
index 00000000..0e4025d1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/ERROR-HANDLING.md
@@ -0,0 +1,21 @@
+
+Error handling with node-fetch
+==============================
+
+Because `window.fetch` isn't designed to transparent about the cause of request errors, we have to come up with our own solutions.
+
+The basics:
+
+- All [operational errors](https://www.joyent.com/node-js/production/design/errors) are rejected as [FetchError](https://github.com/bitinn/node-fetch/blob/master/lib/fetch-error.js), you can handle them all through promise `catch` clause.
+
+- All errors comes with `err.message` detailing the cause of errors.
+
+- All errors originated from `node-fetch` are marked with custom `err.type`.
+
+- All errors originated from Node.js core are marked with `err.type = system`, and contains addition `err.code` and `err.errno` for error handling, they are alias to error codes thrown by Node.js core.
+
+- [Programmer errors](https://www.joyent.com/node-js/production/design/errors) are either thrown as soon as possible, or rejected with default `Error` with `err.message` for ease of troubleshooting.
+
+List of error types:
+
+- Because we maintain 100% coverage, see [test.js](https://github.com/bitinn/node-fetch/blob/master/test/test.js) for a full list of custom `FetchError` types, as well as some of the common errors from Node.js
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/LICENSE.md b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/LICENSE.md
new file mode 100644
index 00000000..660ffecb
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/LICENSE.md
@@ -0,0 +1,22 @@
+The MIT License (MIT)
+
+Copyright (c) 2016 David Frank
+
+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/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/LIMITS.md b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/LIMITS.md
new file mode 100644
index 00000000..d0d41fcb
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/LIMITS.md
@@ -0,0 +1,27 @@
+
+Known differences
+=================
+
+*As of 1.x release*
+
+- Topics such as Cross-Origin, Content Security Policy, Mixed Content, Service Workers are ignored, given our server-side context.
+
+- URL input must be an absolute URL, using either `http` or `https` as scheme.
+
+- On the upside, there are no forbidden headers, and `res.url` contains the final url when following redirects.
+
+- For convenience, `res.body` is a transform stream, so decoding can be handled independently.
+
+- Similarly, `req.body` can either be a string, a buffer or a readable stream.
+
+- Also, you can handle rejected fetch requests through checking `err.type` and `err.code`.
+
+- Only support `res.text()`, `res.json()`, `res.buffer()` at the moment, until there are good use-cases for blob/arrayBuffer.
+
+- There is currently no built-in caching, as server-side caching varies by use-cases.
+
+- Current implementation lacks server-side cookie store, you will need to extract `Set-Cookie` headers manually.
+
+- If you are using `res.clone()` and writing an isomorphic app, note that stream on Node.js have a smaller internal buffer size (16Kb, aka `highWaterMark`) from client-side browsers (>1Mb, not consistent across browsers).
+
+- ES6 features such as `headers.entries()` are missing at the moment, but you can use `headers.raw()` to retrieve the raw headers object.
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/README.md b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/README.md
new file mode 100644
index 00000000..0bfb3875
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/README.md
@@ -0,0 +1,210 @@
+
+node-fetch
+==========
+
+[![npm version][npm-image]][npm-url]
+[![build status][travis-image]][travis-url]
+[![coverage status][codecov-image]][codecov-url]
+
+A light-weight module that brings `window.fetch` to Node.js
+
+
+# Motivation
+
+Instead of implementing `XMLHttpRequest` in Node.js to run browser-specific [Fetch polyfill](https://github.com/github/fetch), why not go from native `http` to `Fetch` API directly? Hence `node-fetch`, minimal code for a `window.fetch` compatible API on Node.js runtime.
+
+See Matt Andrews' [isomorphic-fetch](https://github.com/matthew-andrews/isomorphic-fetch) for isomorphic usage (exports `node-fetch` for server-side, `whatwg-fetch` for client-side).
+
+
+# Features
+
+- Stay consistent with `window.fetch` API.
+- Make conscious trade-off when following [whatwg fetch spec](https://fetch.spec.whatwg.org/) and [stream spec](https://streams.spec.whatwg.org/) implementation details, document known difference.
+- Use native promise, but allow substituting it with [insert your favorite promise library].
+- Use native stream for body, on both request and response.
+- Decode content encoding (gzip/deflate) properly, and convert string output (such as `res.text()` and `res.json()`) to UTF-8 automatically.
+- Useful extensions such as timeout, redirect limit, response size limit, [explicit errors](https://github.com/bitinn/node-fetch/blob/master/ERROR-HANDLING.md) for troubleshooting.
+
+
+# Difference from client-side fetch
+
+- See [Known Differences](https://github.com/bitinn/node-fetch/blob/master/LIMITS.md) for details.
+- If you happen to use a missing feature that `window.fetch` offers, feel free to open an issue.
+- Pull requests are welcomed too!
+
+
+# Install
+
+`npm install node-fetch --save`
+
+
+# Usage
+
+```javascript
+var fetch = require('node-fetch');
+
+// if you are on node v0.10, set a Promise library first, eg.
+// fetch.Promise = require('bluebird');
+
+// plain text or html
+
+fetch('https://github.com/')
+ .then(function(res) {
+ return res.text();
+ }).then(function(body) {
+ console.log(body);
+ });
+
+// json
+
+fetch('https://api.github.com/users/github')
+ .then(function(res) {
+ return res.json();
+ }).then(function(json) {
+ console.log(json);
+ });
+
+// catching network error
+// 3xx-5xx responses are NOT network errors, and should be handled in then()
+// you only need one catch() at the end of your promise chain
+
+fetch('http://domain.invalid/')
+ .catch(function(err) {
+ console.log(err);
+ });
+
+// stream
+// the node.js way is to use stream when possible
+
+fetch('https://assets-cdn.github.com/images/modules/logos_page/Octocat.png')
+ .then(function(res) {
+ var dest = fs.createWriteStream('./octocat.png');
+ res.body.pipe(dest);
+ });
+
+// buffer
+// if you prefer to cache binary data in full, use buffer()
+// note that buffer() is a node-fetch only API
+
+var fileType = require('file-type');
+fetch('https://assets-cdn.github.com/images/modules/logos_page/Octocat.png')
+ .then(function(res) {
+ return res.buffer();
+ }).then(function(buffer) {
+ fileType(buffer);
+ });
+
+// meta
+
+fetch('https://github.com/')
+ .then(function(res) {
+ console.log(res.ok);
+ console.log(res.status);
+ console.log(res.statusText);
+ console.log(res.headers.raw());
+ console.log(res.headers.get('content-type'));
+ });
+
+// post
+
+fetch('http://httpbin.org/post', { method: 'POST', body: 'a=1' })
+ .then(function(res) {
+ return res.json();
+ }).then(function(json) {
+ console.log(json);
+ });
+
+// post with stream from resumer
+
+var resumer = require('resumer');
+var stream = resumer().queue('a=1').end();
+fetch('http://httpbin.org/post', { method: 'POST', body: stream })
+ .then(function(res) {
+ return res.json();
+ }).then(function(json) {
+ console.log(json);
+ });
+
+// post with form-data (detect multipart)
+
+var FormData = require('form-data');
+var form = new FormData();
+form.append('a', 1);
+fetch('http://httpbin.org/post', { method: 'POST', body: form })
+ .then(function(res) {
+ return res.json();
+ }).then(function(json) {
+ console.log(json);
+ });
+
+// post with form-data (custom headers)
+// note that getHeaders() is non-standard API
+
+var FormData = require('form-data');
+var form = new FormData();
+form.append('a', 1);
+fetch('http://httpbin.org/post', { method: 'POST', body: form, headers: form.getHeaders() })
+ .then(function(res) {
+ return res.json();
+ }).then(function(json) {
+ console.log(json);
+ });
+
+// node 0.12+, yield with co
+
+var co = require('co');
+co(function *() {
+ var res = yield fetch('https://api.github.com/users/github');
+ var json = yield res.json();
+ console.log(res);
+});
+```
+
+See [test cases](https://github.com/bitinn/node-fetch/blob/master/test/test.js) for more examples.
+
+
+# API
+
+## fetch(url, options)
+
+Returns a `Promise`
+
+### Url
+
+Should be an absolute url, eg `http://example.com/`
+
+### Options
+
+default values are shown, note that only `method`, `headers`, `redirect` and `body` are allowed in `window.fetch`, others are node.js extensions.
+
+```
+{
+ method: 'GET'
+ , headers: {} // request header. format {a:'1'} or {b:['1','2','3']}
+ , redirect: 'follow' // set to `manual` to extract redirect headers, `error` to reject redirect
+ , follow: 20 // maximum redirect count. 0 to not follow redirect
+ , timeout: 0 // req/res timeout in ms, it resets on redirect. 0 to disable (OS limit applies)
+ , compress: true // support gzip/deflate content encoding. false to disable
+ , size: 0 // maximum response body size in bytes. 0 to disable
+ , body: empty // request body. can be a string, buffer, readable stream
+ , agent: null // http.Agent instance, allows custom proxy, certificate etc.
+}
+```
+
+
+# License
+
+MIT
+
+
+# Acknowledgement
+
+Thanks to [github/fetch](https://github.com/github/fetch) for providing a solid implementation reference.
+
+
+[npm-image]: https://img.shields.io/npm/v/node-fetch.svg?style=flat-square
+[npm-url]: https://www.npmjs.com/package/node-fetch
+[travis-image]: https://img.shields.io/travis/bitinn/node-fetch.svg?style=flat-square
+[travis-url]: https://travis-ci.org/bitinn/node-fetch
+[codecov-image]: https://img.shields.io/codecov/c/github/bitinn/node-fetch.svg?style=flat-square
+[codecov-url]: https://codecov.io/gh/bitinn/node-fetch
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/index.js
new file mode 100644
index 00000000..8f6730d3
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/index.js
@@ -0,0 +1,271 @@
+
+/**
+ * index.js
+ *
+ * a request API compatible with window.fetch
+ */
+
+var parse_url = require('url').parse;
+var resolve_url = require('url').resolve;
+var http = require('http');
+var https = require('https');
+var zlib = require('zlib');
+var stream = require('stream');
+
+var Body = require('./lib/body');
+var Response = require('./lib/response');
+var Headers = require('./lib/headers');
+var Request = require('./lib/request');
+var FetchError = require('./lib/fetch-error');
+
+// commonjs
+module.exports = Fetch;
+// es6 default export compatibility
+module.exports.default = module.exports;
+
+/**
+ * Fetch class
+ *
+ * @param Mixed url Absolute url or Request instance
+ * @param Object opts Fetch options
+ * @return Promise
+ */
+function Fetch(url, opts) {
+
+ // allow call as function
+ if (!(this instanceof Fetch))
+ return new Fetch(url, opts);
+
+ // allow custom promise
+ if (!Fetch.Promise) {
+ throw new Error('native promise missing, set Fetch.Promise to your favorite alternative');
+ }
+
+ Body.Promise = Fetch.Promise;
+
+ var self = this;
+
+ // wrap http.request into fetch
+ return new Fetch.Promise(function(resolve, reject) {
+ // build request object
+ var options = new Request(url, opts);
+
+ if (!options.protocol || !options.hostname) {
+ throw new Error('only absolute urls are supported');
+ }
+
+ if (options.protocol !== 'http:' && options.protocol !== 'https:') {
+ throw new Error('only http(s) protocols are supported');
+ }
+
+ var send;
+ if (options.protocol === 'https:') {
+ send = https.request;
+ } else {
+ send = http.request;
+ }
+
+ // normalize headers
+ var headers = new Headers(options.headers);
+
+ if (options.compress) {
+ headers.set('accept-encoding', 'gzip,deflate');
+ }
+
+ if (!headers.has('user-agent')) {
+ headers.set('user-agent', 'node-fetch/1.0 (+https://github.com/bitinn/node-fetch)');
+ }
+
+ if (!headers.has('connection') && !options.agent) {
+ headers.set('connection', 'close');
+ }
+
+ if (!headers.has('accept')) {
+ headers.set('accept', '*/*');
+ }
+
+ // detect form data input from form-data module, this hack avoid the need to pass multipart header manually
+ if (!headers.has('content-type') && options.body && typeof options.body.getBoundary === 'function') {
+ headers.set('content-type', 'multipart/form-data; boundary=' + options.body.getBoundary());
+ }
+
+ // bring node-fetch closer to browser behavior by setting content-length automatically
+ if (!headers.has('content-length') && /post|put|patch|delete/i.test(options.method)) {
+ if (typeof options.body === 'string') {
+ headers.set('content-length', Buffer.byteLength(options.body));
+ // detect form data input from form-data module, this hack avoid the need to add content-length header manually
+ } else if (options.body && typeof options.body.getLengthSync === 'function') {
+ // for form-data 1.x
+ if (options.body._lengthRetrievers && options.body._lengthRetrievers.length == 0) {
+ headers.set('content-length', options.body.getLengthSync().toString());
+ // for form-data 2.x
+ } else if (options.body.hasKnownLength && options.body.hasKnownLength()) {
+ headers.set('content-length', options.body.getLengthSync().toString());
+ }
+ // this is only necessary for older nodejs releases (before iojs merge)
+ } else if (options.body === undefined || options.body === null) {
+ headers.set('content-length', '0');
+ }
+ }
+
+ options.headers = headers.raw();
+
+ // http.request only support string as host header, this hack make custom host header possible
+ if (options.headers.host) {
+ options.headers.host = options.headers.host[0];
+ }
+
+ // send request
+ var req = send(options);
+ var reqTimeout;
+
+ if (options.timeout) {
+ req.once('socket', function(socket) {
+ reqTimeout = setTimeout(function() {
+ req.abort();
+ reject(new FetchError('network timeout at: ' + options.url, 'request-timeout'));
+ }, options.timeout);
+ });
+ }
+
+ req.on('error', function(err) {
+ clearTimeout(reqTimeout);
+ reject(new FetchError('request to ' + options.url + ' failed, reason: ' + err.message, 'system', err));
+ });
+
+ req.on('response', function(res) {
+ clearTimeout(reqTimeout);
+
+ // handle redirect
+ if (self.isRedirect(res.statusCode) && options.redirect !== 'manual') {
+ if (options.redirect === 'error') {
+ reject(new FetchError('redirect mode is set to error: ' + options.url, 'no-redirect'));
+ return;
+ }
+
+ if (options.counter >= options.follow) {
+ reject(new FetchError('maximum redirect reached at: ' + options.url, 'max-redirect'));
+ return;
+ }
+
+ if (!res.headers.location) {
+ reject(new FetchError('redirect location header missing at: ' + options.url, 'invalid-redirect'));
+ return;
+ }
+
+ // per fetch spec, for POST request with 301/302 response, or any request with 303 response, use GET when following redirect
+ if (res.statusCode === 303
+ || ((res.statusCode === 301 || res.statusCode === 302) && options.method === 'POST'))
+ {
+ options.method = 'GET';
+ delete options.body;
+ delete options.headers['content-length'];
+ }
+
+ options.counter++;
+
+ resolve(Fetch(resolve_url(options.url, res.headers.location), options));
+ return;
+ }
+
+ // normalize location header for manual redirect mode
+ var headers = new Headers(res.headers);
+ if (options.redirect === 'manual' && headers.has('location')) {
+ headers.set('location', resolve_url(options.url, headers.get('location')));
+ }
+
+ // prepare response
+ var body = res.pipe(new stream.PassThrough());
+ var response_options = {
+ url: options.url
+ , status: res.statusCode
+ , statusText: res.statusMessage
+ , headers: headers
+ , size: options.size
+ , timeout: options.timeout
+ };
+
+ // response object
+ var output;
+
+ // in following scenarios we ignore compression support
+ // 1. compression support is disabled
+ // 2. HEAD request
+ // 3. no content-encoding header
+ // 4. no content response (204)
+ // 5. content not modified response (304)
+ if (!options.compress || options.method === 'HEAD' || !headers.has('content-encoding') || res.statusCode === 204 || res.statusCode === 304) {
+ output = new Response(body, response_options);
+ resolve(output);
+ return;
+ }
+
+ // otherwise, check for gzip or deflate
+ var name = headers.get('content-encoding');
+
+ // for gzip
+ if (name == 'gzip' || name == 'x-gzip') {
+ body = body.pipe(zlib.createGunzip());
+ output = new Response(body, response_options);
+ resolve(output);
+ return;
+
+ // for deflate
+ } else if (name == 'deflate' || name == 'x-deflate') {
+ // handle the infamous raw deflate response from old servers
+ // a hack for old IIS and Apache servers
+ var raw = res.pipe(new stream.PassThrough());
+ raw.once('data', function(chunk) {
+ // see http://stackoverflow.com/questions/37519828
+ if ((chunk[0] & 0x0F) === 0x08) {
+ body = body.pipe(zlib.createInflate());
+ } else {
+ body = body.pipe(zlib.createInflateRaw());
+ }
+ output = new Response(body, response_options);
+ resolve(output);
+ });
+ return;
+ }
+
+ // otherwise, use response as-is
+ output = new Response(body, response_options);
+ resolve(output);
+ return;
+ });
+
+ // accept string, buffer or readable stream as body
+ // per spec we will call tostring on non-stream objects
+ if (typeof options.body === 'string') {
+ req.write(options.body);
+ req.end();
+ } else if (options.body instanceof Buffer) {
+ req.write(options.body);
+ req.end();
+ } else if (typeof options.body === 'object' && options.body.pipe) {
+ options.body.pipe(req);
+ } else if (typeof options.body === 'object') {
+ req.write(options.body.toString());
+ req.end();
+ } else {
+ req.end();
+ }
+ });
+
+};
+
+/**
+ * Redirect code matching
+ *
+ * @param Number code Status code
+ * @return Boolean
+ */
+Fetch.prototype.isRedirect = function(code) {
+ return code === 301 || code === 302 || code === 303 || code === 307 || code === 308;
+}
+
+// expose Promise
+Fetch.Promise = global.Promise;
+Fetch.Response = Response;
+Fetch.Headers = Headers;
+Fetch.Request = Request;
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/lib/body.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/lib/body.js
new file mode 100644
index 00000000..19bc003f
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/lib/body.js
@@ -0,0 +1,261 @@
+
+/**
+ * body.js
+ *
+ * Body interface provides common methods for Request and Response
+ */
+
+var convert = require('encoding').convert;
+var bodyStream = require('is-stream');
+var PassThrough = require('stream').PassThrough;
+var FetchError = require('./fetch-error');
+
+module.exports = Body;
+
+/**
+ * Body class
+ *
+ * @param Stream body Readable stream
+ * @param Object opts Response options
+ * @return Void
+ */
+function Body(body, opts) {
+
+ opts = opts || {};
+
+ this.body = body;
+ this.bodyUsed = false;
+ this.size = opts.size || 0;
+ this.timeout = opts.timeout || 0;
+ this._raw = [];
+ this._abort = false;
+
+}
+
+/**
+ * Decode response as json
+ *
+ * @return Promise
+ */
+Body.prototype.json = function() {
+
+ var self = this;
+
+ return this._decode().then(function(buffer) {
+ try {
+ return JSON.parse(buffer.toString());
+ } catch (err) {
+ return Body.Promise.reject(new FetchError('invalid json response body at ' + self.url + ' reason: ' + err.message, 'invalid-json'));
+ }
+ });
+
+};
+
+/**
+ * Decode response as text
+ *
+ * @return Promise
+ */
+Body.prototype.text = function() {
+
+ return this._decode().then(function(buffer) {
+ return buffer.toString();
+ });
+
+};
+
+/**
+ * Decode response as buffer (non-spec api)
+ *
+ * @return Promise
+ */
+Body.prototype.buffer = function() {
+
+ return this._decode();
+
+};
+
+/**
+ * Decode buffers into utf-8 string
+ *
+ * @return Promise
+ */
+Body.prototype._decode = function() {
+
+ var self = this;
+
+ if (this.bodyUsed) {
+ return Body.Promise.reject(new Error('body used already for: ' + this.url));
+ }
+
+ this.bodyUsed = true;
+ this._bytes = 0;
+ this._abort = false;
+ this._raw = [];
+
+ return new Body.Promise(function(resolve, reject) {
+ var resTimeout;
+
+ // body is string
+ if (typeof self.body === 'string') {
+ self._bytes = self.body.length;
+ self._raw = [new Buffer(self.body)];
+ return resolve(self._convert());
+ }
+
+ // body is buffer
+ if (self.body instanceof Buffer) {
+ self._bytes = self.body.length;
+ self._raw = [self.body];
+ return resolve(self._convert());
+ }
+
+ // allow timeout on slow response body
+ if (self.timeout) {
+ resTimeout = setTimeout(function() {
+ self._abort = true;
+ reject(new FetchError('response timeout at ' + self.url + ' over limit: ' + self.timeout, 'body-timeout'));
+ }, self.timeout);
+ }
+
+ // handle stream error, such as incorrect content-encoding
+ self.body.on('error', function(err) {
+ reject(new FetchError('invalid response body at: ' + self.url + ' reason: ' + err.message, 'system', err));
+ });
+
+ // body is stream
+ self.body.on('data', function(chunk) {
+ if (self._abort || chunk === null) {
+ return;
+ }
+
+ if (self.size && self._bytes + chunk.length > self.size) {
+ self._abort = true;
+ reject(new FetchError('content size at ' + self.url + ' over limit: ' + self.size, 'max-size'));
+ return;
+ }
+
+ self._bytes += chunk.length;
+ self._raw.push(chunk);
+ });
+
+ self.body.on('end', function() {
+ if (self._abort) {
+ return;
+ }
+
+ clearTimeout(resTimeout);
+ resolve(self._convert());
+ });
+ });
+
+};
+
+/**
+ * Detect buffer encoding and convert to target encoding
+ * ref: http://www.w3.org/TR/2011/WD-html5-20110113/parsing.html#determining-the-character-encoding
+ *
+ * @param String encoding Target encoding
+ * @return String
+ */
+Body.prototype._convert = function(encoding) {
+
+ encoding = encoding || 'utf-8';
+
+ var ct = this.headers.get('content-type');
+ var charset = 'utf-8';
+ var res, str;
+
+ // header
+ if (ct) {
+ // skip encoding detection altogether if not html/xml/plain text
+ if (!/text\/html|text\/plain|\+xml|\/xml/i.test(ct)) {
+ return Buffer.concat(this._raw);
+ }
+
+ res = /charset=([^;]*)/i.exec(ct);
+ }
+
+ // no charset in content type, peek at response body for at most 1024 bytes
+ if (!res && this._raw.length > 0) {
+ for (var i = 0; i < this._raw.length; i++) {
+ str += this._raw[i].toString()
+ if (str.length > 1024) {
+ break;
+ }
+ }
+ str = str.substr(0, 1024);
+ }
+
+ // html5
+ if (!res && str) {
+ res = / 1 && arguments[1] !== undefined ? arguments[1] : {},
+ _ref$size = _ref.size;
+
+ let size = _ref$size === undefined ? 0 : _ref$size;
+ var _ref$timeout = _ref.timeout;
+ let timeout = _ref$timeout === undefined ? 0 : _ref$timeout;
+
+ if (body == null) {
+ // body is undefined or null
+ body = null;
+ } else if (typeof body === 'string') {
+ // body is string
+ } else if (isURLSearchParams(body)) {
+ // body is a URLSearchParams
+ } else if (body instanceof Blob) {
+ // body is blob
+ } else if (Buffer.isBuffer(body)) {
+ // body is buffer
+ } else if (body instanceof Stream) {
+ // body is stream
+ } else {
+ // none of the above
+ // coerce to string
+ body = String(body);
+ }
+ this.body = body;
+ this[DISTURBED] = false;
+ this.size = size;
+ this.timeout = timeout;
+}
+
+Body.prototype = {
+ get bodyUsed() {
+ return this[DISTURBED];
+ },
+
+ /**
+ * Decode response as ArrayBuffer
+ *
+ * @return Promise
+ */
+ arrayBuffer() {
+ return consumeBody.call(this).then(function (buf) {
+ return buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);
+ });
+ },
+
+ /**
+ * Return raw response as Blob
+ *
+ * @return Promise
+ */
+ blob() {
+ let ct = this.headers && this.headers.get('content-type') || '';
+ return consumeBody.call(this).then(function (buf) {
+ return Object.assign(
+ // Prevent copying
+ new Blob([], {
+ type: ct.toLowerCase()
+ }), {
+ [BUFFER]: buf
+ });
+ });
+ },
+
+ /**
+ * Decode response as json
+ *
+ * @return Promise
+ */
+ json() {
+ var _this = this;
+
+ return consumeBody.call(this).then(function (buffer) {
+ try {
+ return JSON.parse(buffer.toString());
+ } catch (err) {
+ return Body.Promise.reject(new FetchError(`invalid json response body at ${_this.url} reason: ${err.message}`, 'invalid-json'));
+ }
+ });
+ },
+
+ /**
+ * Decode response as text
+ *
+ * @return Promise
+ */
+ text() {
+ return consumeBody.call(this).then(function (buffer) {
+ return buffer.toString();
+ });
+ },
+
+ /**
+ * Decode response as buffer (non-spec api)
+ *
+ * @return Promise
+ */
+ buffer() {
+ return consumeBody.call(this);
+ },
+
+ /**
+ * Decode response as text, while automatically detecting the encoding and
+ * trying to decode to UTF-8 (non-spec api)
+ *
+ * @return Promise
+ */
+ textConverted() {
+ var _this2 = this;
+
+ return consumeBody.call(this).then(function (buffer) {
+ return convertBody(buffer, _this2.headers);
+ });
+ }
+
+};
+
+Body.mixIn = function (proto) {
+ for (const name of Object.getOwnPropertyNames(Body.prototype)) {
+ // istanbul ignore else: future proof
+ if (!(name in proto)) {
+ const desc = Object.getOwnPropertyDescriptor(Body.prototype, name);
+ Object.defineProperty(proto, name, desc);
+ }
+ }
+};
+
+/**
+ * Decode buffers into utf-8 string
+ *
+ * @return Promise
+ */
+function consumeBody(body) {
+ var _this3 = this;
+
+ if (this[DISTURBED]) {
+ return Body.Promise.reject(new Error(`body used already for: ${this.url}`));
+ }
+
+ this[DISTURBED] = true;
+
+ // body is null
+ if (this.body === null) {
+ return Body.Promise.resolve(Buffer.alloc(0));
+ }
+
+ // body is string
+ if (typeof this.body === 'string') {
+ return Body.Promise.resolve(Buffer.from(this.body));
+ }
+
+ // body is blob
+ if (this.body instanceof Blob) {
+ return Body.Promise.resolve(this.body[BUFFER]);
+ }
+
+ // body is buffer
+ if (Buffer.isBuffer(this.body)) {
+ return Body.Promise.resolve(this.body);
+ }
+
+ // istanbul ignore if: should never happen
+ if (!(this.body instanceof Stream)) {
+ return Body.Promise.resolve(Buffer.alloc(0));
+ }
+
+ // body is stream
+ // get ready to actually consume the body
+ let accum = [];
+ let accumBytes = 0;
+ let abort = false;
+
+ return new Body.Promise(function (resolve, reject) {
+ let resTimeout;
+
+ // allow timeout on slow response body
+ if (_this3.timeout) {
+ resTimeout = setTimeout(function () {
+ abort = true;
+ reject(new FetchError(`Response timeout while trying to fetch ${_this3.url} (over ${_this3.timeout}ms)`, 'body-timeout'));
+ }, _this3.timeout);
+ }
+
+ // handle stream error, such as incorrect content-encoding
+ _this3.body.on('error', function (err) {
+ reject(new FetchError(`Invalid response body while trying to fetch ${_this3.url}: ${err.message}`, 'system', err));
+ });
+
+ _this3.body.on('data', function (chunk) {
+ if (abort || chunk === null) {
+ return;
+ }
+
+ if (_this3.size && accumBytes + chunk.length > _this3.size) {
+ abort = true;
+ reject(new FetchError(`content size at ${_this3.url} over limit: ${_this3.size}`, 'max-size'));
+ return;
+ }
+
+ accumBytes += chunk.length;
+ accum.push(chunk);
+ });
+
+ _this3.body.on('end', function () {
+ if (abort) {
+ return;
+ }
+
+ clearTimeout(resTimeout);
+ resolve(Buffer.concat(accum));
+ });
+ });
+}
+
+/**
+ * Detect buffer encoding and convert to target encoding
+ * ref: http://www.w3.org/TR/2011/WD-html5-20110113/parsing.html#determining-the-character-encoding
+ *
+ * @param Buffer buffer Incoming buffer
+ * @param String encoding Target encoding
+ * @return String
+ */
+function convertBody(buffer, headers) {
+ if (typeof convert !== 'function') {
+ throw new Error('The package `encoding` must be installed to use the textConverted() function');
+ }
+
+ const ct = headers.get('content-type');
+ let charset = 'utf-8';
+ let res, str;
+
+ // header
+ if (ct) {
+ res = /charset=([^;]*)/i.exec(ct);
+ }
+
+ // no charset in content type, peek at response body for at most 1024 bytes
+ str = buffer.slice(0, 1024).toString();
+
+ // html5
+ if (!res && str) {
+ res = /= 94 && ch <= 122) return true;
+ if (ch >= 65 && ch <= 90) return true;
+ if (ch === 45) return true;
+ if (ch >= 48 && ch <= 57) return true;
+ if (ch === 34 || ch === 40 || ch === 41 || ch === 44) return false;
+ if (ch >= 33 && ch <= 46) return true;
+ if (ch === 124 || ch === 126) return true;
+ return false;
+}
+/* istanbul ignore next */
+function checkIsHttpToken(val) {
+ if (typeof val !== 'string' || val.length === 0) return false;
+ if (!isValidTokenChar(val.charCodeAt(0))) return false;
+ const len = val.length;
+ if (len > 1) {
+ if (!isValidTokenChar(val.charCodeAt(1))) return false;
+ if (len > 2) {
+ if (!isValidTokenChar(val.charCodeAt(2))) return false;
+ if (len > 3) {
+ if (!isValidTokenChar(val.charCodeAt(3))) return false;
+ for (var i = 4; i < len; i++) {
+ if (!isValidTokenChar(val.charCodeAt(i))) return false;
+ }
+ }
+ }
+ }
+ return true;
+}
+/**
+ * True if val contains an invalid field-vchar
+ * field-value = *( field-content / obs-fold )
+ * field-content = field-vchar [ 1*( SP / HTAB ) field-vchar ]
+ * field-vchar = VCHAR / obs-text
+ *
+ * checkInvalidHeaderChar() is currently designed to be inlinable by v8,
+ * so take care when making changes to the implementation so that the source
+ * code size does not exceed v8's default max_inlined_source_size setting.
+ **/
+/* istanbul ignore next */
+function checkInvalidHeaderChar(val) {
+ val += '';
+ if (val.length < 1) return false;
+ var c = val.charCodeAt(0);
+ if (c <= 31 && c !== 9 || c > 255 || c === 127) return true;
+ if (val.length < 2) return false;
+ c = val.charCodeAt(1);
+ if (c <= 31 && c !== 9 || c > 255 || c === 127) return true;
+ if (val.length < 3) return false;
+ c = val.charCodeAt(2);
+ if (c <= 31 && c !== 9 || c > 255 || c === 127) return true;
+ for (var i = 3; i < val.length; ++i) {
+ c = val.charCodeAt(i);
+ if (c <= 31 && c !== 9 || c > 255 || c === 127) return true;
+ }
+ return false;
+}
+
+/**
+ * headers.js
+ *
+ * Headers class offers convenient helpers
+ */
+
+function sanitizeName(name) {
+ name += '';
+ if (!checkIsHttpToken(name)) {
+ throw new TypeError(`${name} is not a legal HTTP header name`);
+ }
+ return name.toLowerCase();
+}
+
+function sanitizeValue(value) {
+ value += '';
+ if (checkInvalidHeaderChar(value)) {
+ throw new TypeError(`${value} is not a legal HTTP header value`);
+ }
+ return value;
+}
+
+const MAP = Symbol('map');
+class Headers {
+ /**
+ * Headers class
+ *
+ * @param Object headers Response headers
+ * @return Void
+ */
+ constructor() {
+ let init = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : undefined;
+
+ this[MAP] = Object.create(null);
+
+ if (init instanceof Headers) {
+ const rawHeaders = init.raw();
+ const headerNames = Object.keys(rawHeaders);
+
+ for (const headerName of headerNames) {
+ for (const value of rawHeaders[headerName]) {
+ this.append(headerName, value);
+ }
+ }
+
+ return;
+ }
+
+ // We don't worry about converting prop to ByteString here as append()
+ // will handle it.
+ if (init == null) {
+ // no op
+ } else if (typeof init === 'object') {
+ const method = init[Symbol.iterator];
+ if (method != null) {
+ if (typeof method !== 'function') {
+ throw new TypeError('Header pairs must be iterable');
+ }
+
+ // sequence>
+ // Note: per spec we have to first exhaust the lists then process them
+ const pairs = [];
+ for (const pair of init) {
+ if (typeof pair !== 'object' || typeof pair[Symbol.iterator] !== 'function') {
+ throw new TypeError('Each header pair must be iterable');
+ }
+ pairs.push(Array.from(pair));
+ }
+
+ for (const pair of pairs) {
+ if (pair.length !== 2) {
+ throw new TypeError('Each header pair must be a name/value tuple');
+ }
+ this.append(pair[0], pair[1]);
+ }
+ } else {
+ // record
+ for (const key of Object.keys(init)) {
+ const value = init[key];
+ this.append(key, value);
+ }
+ }
+ } else {
+ throw new TypeError('Provided initializer must be an object');
+ }
+
+ Object.defineProperty(this, Symbol.toStringTag, {
+ value: 'Headers',
+ writable: false,
+ enumerable: false,
+ configurable: true
+ });
+ }
+
+ /**
+ * Return first header value given name
+ *
+ * @param String name Header name
+ * @return Mixed
+ */
+ get(name) {
+ const list = this[MAP][sanitizeName(name)];
+ if (!list) {
+ return null;
+ }
+
+ return list.join(', ');
+ }
+
+ /**
+ * Iterate over all headers
+ *
+ * @param Function callback Executed for each item with parameters (value, name, thisArg)
+ * @param Boolean thisArg `this` context for callback function
+ * @return Void
+ */
+ forEach(callback) {
+ let thisArg = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : undefined;
+
+ let pairs = getHeaderPairs(this);
+ let i = 0;
+ while (i < pairs.length) {
+ var _pairs$i = pairs[i];
+ const name = _pairs$i[0],
+ value = _pairs$i[1];
+
+ callback.call(thisArg, value, name, this);
+ pairs = getHeaderPairs(this);
+ i++;
+ }
+ }
+
+ /**
+ * Overwrite header values given name
+ *
+ * @param String name Header name
+ * @param String value Header value
+ * @return Void
+ */
+ set(name, value) {
+ this[MAP][sanitizeName(name)] = [sanitizeValue(value)];
+ }
+
+ /**
+ * Append a value onto existing header
+ *
+ * @param String name Header name
+ * @param String value Header value
+ * @return Void
+ */
+ append(name, value) {
+ if (!this.has(name)) {
+ this.set(name, value);
+ return;
+ }
+
+ this[MAP][sanitizeName(name)].push(sanitizeValue(value));
+ }
+
+ /**
+ * Check for header name existence
+ *
+ * @param String name Header name
+ * @return Boolean
+ */
+ has(name) {
+ return !!this[MAP][sanitizeName(name)];
+ }
+
+ /**
+ * Delete all header values given name
+ *
+ * @param String name Header name
+ * @return Void
+ */
+ delete(name) {
+ delete this[MAP][sanitizeName(name)];
+ }
+
+ /**
+ * Return raw headers (non-spec api)
+ *
+ * @return Object
+ */
+ raw() {
+ return this[MAP];
+ }
+
+ /**
+ * Get an iterator on keys.
+ *
+ * @return Iterator
+ */
+ keys() {
+ return createHeadersIterator(this, 'key');
+ }
+
+ /**
+ * Get an iterator on values.
+ *
+ * @return Iterator
+ */
+ values() {
+ return createHeadersIterator(this, 'value');
+ }
+
+ /**
+ * Get an iterator on entries.
+ *
+ * This is the default iterator of the Headers object.
+ *
+ * @return Iterator
+ */
+ [Symbol.iterator]() {
+ return createHeadersIterator(this, 'key+value');
+ }
+}
+Headers.prototype.entries = Headers.prototype[Symbol.iterator];
+
+Object.defineProperty(Headers.prototype, Symbol.toStringTag, {
+ value: 'HeadersPrototype',
+ writable: false,
+ enumerable: false,
+ configurable: true
+});
+
+function getHeaderPairs(headers, kind) {
+ const keys = Object.keys(headers[MAP]).sort();
+ return keys.map(kind === 'key' ? function (k) {
+ return [k];
+ } : function (k) {
+ return [k, headers.get(k)];
+ });
+}
+
+const INTERNAL = Symbol('internal');
+
+function createHeadersIterator(target, kind) {
+ const iterator = Object.create(HeadersIteratorPrototype);
+ iterator[INTERNAL] = {
+ target,
+ kind,
+ index: 0
+ };
+ return iterator;
+}
+
+const HeadersIteratorPrototype = Object.setPrototypeOf({
+ next() {
+ // istanbul ignore if
+ if (!this || Object.getPrototypeOf(this) !== HeadersIteratorPrototype) {
+ throw new TypeError('Value of `this` is not a HeadersIterator');
+ }
+
+ var _INTERNAL = this[INTERNAL];
+ const target = _INTERNAL.target,
+ kind = _INTERNAL.kind,
+ index = _INTERNAL.index;
+
+ const values = getHeaderPairs(target, kind);
+ const len = values.length;
+ if (index >= len) {
+ return {
+ value: undefined,
+ done: true
+ };
+ }
+
+ const pair = values[index];
+ this[INTERNAL].index = index + 1;
+
+ let result;
+ if (kind === 'key') {
+ result = pair[0];
+ } else if (kind === 'value') {
+ result = pair[1];
+ } else {
+ result = pair;
+ }
+
+ return {
+ value: result,
+ done: false
+ };
+ }
+}, Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())));
+
+Object.defineProperty(HeadersIteratorPrototype, Symbol.toStringTag, {
+ value: 'HeadersIterator',
+ writable: false,
+ enumerable: false,
+ configurable: true
+});
+
+/**
+ * response.js
+ *
+ * Response class provides content decoding
+ */
+
+var _require$2 = require('http');
+
+const STATUS_CODES = _require$2.STATUS_CODES;
+
+/**
+ * Response class
+ *
+ * @param Stream body Readable stream
+ * @param Object opts Response options
+ * @return Void
+ */
+
+class Response {
+ constructor() {
+ let body = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
+ let opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
+
+ Body.call(this, body, opts);
+
+ this.url = opts.url;
+ this.status = opts.status || 200;
+ this.statusText = opts.statusText || STATUS_CODES[this.status];
+
+ this.headers = new Headers(opts.headers);
+
+ Object.defineProperty(this, Symbol.toStringTag, {
+ value: 'Response',
+ writable: false,
+ enumerable: false,
+ configurable: true
+ });
+ }
+
+ /**
+ * Convenience property representing if the request ended normally
+ */
+ get ok() {
+ return this.status >= 200 && this.status < 300;
+ }
+
+ /**
+ * Clone this response
+ *
+ * @return Response
+ */
+ clone() {
+
+ return new Response(clone(this), {
+ url: this.url,
+ status: this.status,
+ statusText: this.statusText,
+ headers: this.headers,
+ ok: this.ok
+ });
+ }
+}
+
+Body.mixIn(Response.prototype);
+
+Object.defineProperty(Response.prototype, Symbol.toStringTag, {
+ value: 'ResponsePrototype',
+ writable: false,
+ enumerable: false,
+ configurable: true
+});
+
+/**
+ * request.js
+ *
+ * Request class contains server only options
+ */
+
+var _require$3 = require('url');
+
+const format_url = _require$3.format;
+const parse_url = _require$3.parse;
+
+
+const PARSED_URL = Symbol('url');
+
+/**
+ * Request class
+ *
+ * @param Mixed input Url or Request instance
+ * @param Object init Custom options
+ * @return Void
+ */
+class Request {
+ constructor(input) {
+ let init = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
+
+ let parsedURL;
+
+ // normalize input
+ if (!(input instanceof Request)) {
+ if (input && input.href) {
+ // in order to support Node.js' Url objects; though WHATWG's URL objects
+ // will fall into this branch also (since their `toString()` will return
+ // `href` property anyway)
+ parsedURL = parse_url(input.href);
+ } else {
+ // coerce input to a string before attempting to parse
+ parsedURL = parse_url(`${input}`);
+ }
+ input = {};
+ } else {
+ parsedURL = parse_url(input.url);
+ }
+
+ let method = init.method || input.method || 'GET';
+
+ if ((init.body != null || input instanceof Request && input.body !== null) && (method === 'GET' || method === 'HEAD')) {
+ throw new TypeError('Request with GET/HEAD method cannot have body');
+ }
+
+ let inputBody = init.body != null ? init.body : input instanceof Request && input.body !== null ? clone(input) : null;
+
+ Body.call(this, inputBody, {
+ timeout: init.timeout || input.timeout || 0,
+ size: init.size || input.size || 0
+ });
+
+ // fetch spec options
+ this.method = method.toUpperCase();
+ this.redirect = init.redirect || input.redirect || 'follow';
+ this.headers = new Headers(init.headers || input.headers || {});
+
+ if (init.body != null) {
+ const contentType = extractContentType(this);
+ if (contentType !== null && !this.headers.has('Content-Type')) {
+ this.headers.append('Content-Type', contentType);
+ }
+ }
+
+ // server only options
+ this.follow = init.follow !== undefined ? init.follow : input.follow !== undefined ? input.follow : 20;
+ this.compress = init.compress !== undefined ? init.compress : input.compress !== undefined ? input.compress : true;
+ this.counter = init.counter || input.counter || 0;
+ this.agent = init.agent || input.agent;
+
+ this[PARSED_URL] = parsedURL;
+ Object.defineProperty(this, Symbol.toStringTag, {
+ value: 'Request',
+ writable: false,
+ enumerable: false,
+ configurable: true
+ });
+ }
+
+ get url() {
+ return format_url(this[PARSED_URL]);
+ }
+
+ /**
+ * Clone this request
+ *
+ * @return Request
+ */
+ clone() {
+ return new Request(this);
+ }
+}
+
+Body.mixIn(Request.prototype);
+
+Object.defineProperty(Request.prototype, Symbol.toStringTag, {
+ value: 'RequestPrototype',
+ writable: false,
+ enumerable: false,
+ configurable: true
+});
+
+function getNodeRequestOptions(request) {
+ const parsedURL = request[PARSED_URL];
+ const headers = new Headers(request.headers);
+
+ // fetch step 3
+ if (!headers.has('Accept')) {
+ headers.set('Accept', '*/*');
+ }
+
+ // Basic fetch
+ if (!parsedURL.protocol || !parsedURL.hostname) {
+ throw new TypeError('Only absolute URLs are supported');
+ }
+
+ if (!/^https?:$/.test(parsedURL.protocol)) {
+ throw new TypeError('Only HTTP(S) protocols are supported');
+ }
+
+ // HTTP-network-or-cache fetch steps 5-9
+ let contentLengthValue = null;
+ if (request.body == null && /^(POST|PUT)$/i.test(request.method)) {
+ contentLengthValue = '0';
+ }
+ if (request.body != null) {
+ const totalBytes = getTotalBytes(request);
+ if (typeof totalBytes === 'number') {
+ contentLengthValue = String(totalBytes);
+ }
+ }
+ if (contentLengthValue) {
+ headers.set('Content-Length', contentLengthValue);
+ }
+
+ // HTTP-network-or-cache fetch step 12
+ if (!headers.has('User-Agent')) {
+ headers.set('User-Agent', 'node-fetch/1.0 (+https://github.com/bitinn/node-fetch)');
+ }
+
+ // HTTP-network-or-cache fetch step 16
+ if (request.compress) {
+ headers.set('Accept-Encoding', 'gzip,deflate');
+ }
+ if (!headers.has('Connection') && !request.agent) {
+ headers.set('Connection', 'close');
+ }
+
+ // HTTP-network fetch step 4
+ // chunked encoding is handled by Node.js
+
+ return Object.assign({}, parsedURL, {
+ method: request.method,
+ headers: headers.raw(),
+ agent: request.agent
+ });
+}
+
+/**
+ * index.js
+ *
+ * a request API compatible with window.fetch
+ */
+
+const http = require('http');
+const https = require('https');
+
+var _require = require('stream');
+
+const PassThrough = _require.PassThrough;
+
+var _require2 = require('url');
+
+const resolve_url = _require2.resolve;
+
+const zlib = require('zlib');
+
+/**
+ * Fetch function
+ *
+ * @param Mixed url Absolute url or Request instance
+ * @param Object opts Fetch options
+ * @return Promise
+ */
+function fetch(url, opts) {
+
+ // allow custom promise
+ if (!fetch.Promise) {
+ throw new Error('native promise missing, set fetch.Promise to your favorite alternative');
+ }
+
+ Body.Promise = fetch.Promise;
+
+ // wrap http.request into fetch
+ return new fetch.Promise(function (resolve, reject) {
+ // build request object
+ const request = new Request(url, opts);
+ const options = getNodeRequestOptions(request);
+
+ const send = (options.protocol === 'https:' ? https : http).request;
+
+ // http.request only support string as host header, this hack make custom host header possible
+ if (options.headers.host) {
+ options.headers.host = options.headers.host[0];
+ }
+
+ // send request
+ const req = send(options);
+ let reqTimeout;
+
+ if (request.timeout) {
+ req.once('socket', function (socket) {
+ reqTimeout = setTimeout(function () {
+ req.abort();
+ reject(new FetchError(`network timeout at: ${request.url}`, 'request-timeout'));
+ }, request.timeout);
+ });
+ }
+
+ req.on('error', function (err) {
+ clearTimeout(reqTimeout);
+ reject(new FetchError(`request to ${request.url} failed, reason: ${err.message}`, 'system', err));
+ });
+
+ req.on('response', function (res) {
+ clearTimeout(reqTimeout);
+
+ // handle redirect
+ if (fetch.isRedirect(res.statusCode) && request.redirect !== 'manual') {
+ if (request.redirect === 'error') {
+ reject(new FetchError(`redirect mode is set to error: ${request.url}`, 'no-redirect'));
+ return;
+ }
+
+ if (request.counter >= request.follow) {
+ reject(new FetchError(`maximum redirect reached at: ${request.url}`, 'max-redirect'));
+ return;
+ }
+
+ if (!res.headers.location) {
+ reject(new FetchError(`redirect location header missing at: ${request.url}`, 'invalid-redirect'));
+ return;
+ }
+
+ // per fetch spec, for POST request with 301/302 response, or any request with 303 response, use GET when following redirect
+ if (res.statusCode === 303 || (res.statusCode === 301 || res.statusCode === 302) && request.method === 'POST') {
+ request.method = 'GET';
+ request.body = null;
+ request.headers.delete('content-length');
+ }
+
+ request.counter++;
+
+ resolve(fetch(resolve_url(request.url, res.headers.location), request));
+ return;
+ }
+
+ // normalize location header for manual redirect mode
+ const headers = new Headers();
+ for (const name of Object.keys(res.headers)) {
+ if (Array.isArray(res.headers[name])) {
+ for (const val of res.headers[name]) {
+ headers.append(name, val);
+ }
+ } else {
+ headers.append(name, res.headers[name]);
+ }
+ }
+ if (request.redirect === 'manual' && headers.has('location')) {
+ headers.set('location', resolve_url(request.url, headers.get('location')));
+ }
+
+ // prepare response
+ let body = res.pipe(new PassThrough());
+ const response_options = {
+ url: request.url,
+ status: res.statusCode,
+ statusText: res.statusMessage,
+ headers: headers,
+ size: request.size,
+ timeout: request.timeout
+ };
+
+ // HTTP-network fetch step 16.1.2
+ const codings = headers.get('Content-Encoding');
+
+ // HTTP-network fetch step 16.1.3: handle content codings
+
+ // in following scenarios we ignore compression support
+ // 1. compression support is disabled
+ // 2. HEAD request
+ // 3. no Content-Encoding header
+ // 4. no content response (204)
+ // 5. content not modified response (304)
+ if (!request.compress || request.method === 'HEAD' || codings === null || res.statusCode === 204 || res.statusCode === 304) {
+ resolve(new Response(body, response_options));
+ return;
+ }
+
+ // For Node v6+
+ // Be less strict when decoding compressed responses, since sometimes
+ // servers send slightly invalid responses that are still accepted
+ // by common browsers.
+ // Always using Z_SYNC_FLUSH is what cURL does.
+ const zlibOptions = {
+ flush: zlib.Z_SYNC_FLUSH,
+ finishFlush: zlib.Z_SYNC_FLUSH
+ };
+
+ // for gzip
+ if (codings == 'gzip' || codings == 'x-gzip') {
+ body = body.pipe(zlib.createGunzip(zlibOptions));
+ resolve(new Response(body, response_options));
+ return;
+ }
+
+ // for deflate
+ if (codings == 'deflate' || codings == 'x-deflate') {
+ // handle the infamous raw deflate response from old servers
+ // a hack for old IIS and Apache servers
+ const raw = res.pipe(new PassThrough());
+ raw.once('data', function (chunk) {
+ // see http://stackoverflow.com/questions/37519828
+ if ((chunk[0] & 0x0F) === 0x08) {
+ body = body.pipe(zlib.createInflate());
+ } else {
+ body = body.pipe(zlib.createInflateRaw());
+ }
+ resolve(new Response(body, response_options));
+ });
+ return;
+ }
+
+ // otherwise, use response as-is
+ resolve(new Response(body, response_options));
+ });
+
+ writeToStream(req, request);
+ });
+}
+
+/**
+ * Redirect code matching
+ *
+ * @param Number code Status code
+ * @return Boolean
+ */
+fetch.isRedirect = function (code) {
+ return code === 301 || code === 302 || code === 303 || code === 307 || code === 308;
+};
+
+// expose Promise
+fetch.Promise = global.Promise;
+
+module.exports = exports = fetch;
+exports.Headers = Headers;
+exports.Request = Request;
+exports.Response = Response;
+exports.FetchError = FetchError;
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/lib/request.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/lib/request.js
new file mode 100644
index 00000000..1a29c29c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/lib/request.js
@@ -0,0 +1,75 @@
+
+/**
+ * request.js
+ *
+ * Request class contains server only options
+ */
+
+var parse_url = require('url').parse;
+var Headers = require('./headers');
+var Body = require('./body');
+
+module.exports = Request;
+
+/**
+ * Request class
+ *
+ * @param Mixed input Url or Request instance
+ * @param Object init Custom options
+ * @return Void
+ */
+function Request(input, init) {
+ var url, url_parsed;
+
+ // normalize input
+ if (!(input instanceof Request)) {
+ url = input;
+ url_parsed = parse_url(url);
+ input = {};
+ } else {
+ url = input.url;
+ url_parsed = parse_url(url);
+ }
+
+ // normalize init
+ init = init || {};
+
+ // fetch spec options
+ this.method = init.method || input.method || 'GET';
+ this.redirect = init.redirect || input.redirect || 'follow';
+ this.headers = new Headers(init.headers || input.headers || {});
+ this.url = url;
+
+ // server only options
+ this.follow = init.follow !== undefined ?
+ init.follow : input.follow !== undefined ?
+ input.follow : 20;
+ this.compress = init.compress !== undefined ?
+ init.compress : input.compress !== undefined ?
+ input.compress : true;
+ this.counter = init.counter || input.counter || 0;
+ this.agent = init.agent || input.agent;
+
+ Body.call(this, init.body || this._clone(input), {
+ timeout: init.timeout || input.timeout || 0,
+ size: init.size || input.size || 0
+ });
+
+ // server request options
+ this.protocol = url_parsed.protocol;
+ this.hostname = url_parsed.hostname;
+ this.port = url_parsed.port;
+ this.path = url_parsed.path;
+ this.auth = url_parsed.auth;
+}
+
+Request.prototype = Object.create(Body.prototype);
+
+/**
+ * Clone this request
+ *
+ * @return Request
+ */
+Request.prototype.clone = function() {
+ return new Request(this);
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/lib/response.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/lib/response.js
new file mode 100644
index 00000000..f96aa85e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/lib/response.js
@@ -0,0 +1,50 @@
+
+/**
+ * response.js
+ *
+ * Response class provides content decoding
+ */
+
+var http = require('http');
+var Headers = require('./headers');
+var Body = require('./body');
+
+module.exports = Response;
+
+/**
+ * Response class
+ *
+ * @param Stream body Readable stream
+ * @param Object opts Response options
+ * @return Void
+ */
+function Response(body, opts) {
+
+ opts = opts || {};
+
+ this.url = opts.url;
+ this.status = opts.status || 200;
+ this.statusText = opts.statusText || http.STATUS_CODES[this.status];
+ this.headers = new Headers(opts.headers);
+ this.ok = this.status >= 200 && this.status < 300;
+
+ Body.call(this, body, opts);
+
+}
+
+Response.prototype = Object.create(Body.prototype);
+
+/**
+ * Clone this response
+ *
+ * @return Response
+ */
+Response.prototype.clone = function() {
+ return new Response(this._clone(this), {
+ url: this.url
+ , status: this.status
+ , statusText: this.statusText
+ , headers: this.headers
+ , ok: this.ok
+ });
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/package.json b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/package.json
new file mode 100644
index 00000000..0e124710
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/package.json
@@ -0,0 +1,69 @@
+{
+ "_from": "node-fetch@^1.0.1",
+ "_id": "node-fetch@1.7.3",
+ "_inBundle": false,
+ "_integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==",
+ "_location": "/react-toastify/node-fetch",
+ "_phantomChildren": {},
+ "_requested": {
+ "type": "range",
+ "registry": true,
+ "raw": "node-fetch@^1.0.1",
+ "name": "node-fetch",
+ "escapedName": "node-fetch",
+ "rawSpec": "^1.0.1",
+ "saveSpec": null,
+ "fetchSpec": "^1.0.1"
+ },
+ "_requiredBy": [
+ "/react-toastify/isomorphic-fetch"
+ ],
+ "_resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz",
+ "_shasum": "980f6f72d85211a5347c6b2bc18c5b84c3eb47ef",
+ "_spec": "node-fetch@^1.0.1",
+ "_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI\\node_modules\\react-toastify\\node_modules\\isomorphic-fetch",
+ "author": {
+ "name": "David Frank"
+ },
+ "bugs": {
+ "url": "https://github.com/bitinn/node-fetch/issues"
+ },
+ "bundleDependencies": false,
+ "dependencies": {
+ "encoding": "^0.1.11",
+ "is-stream": "^1.0.1"
+ },
+ "deprecated": false,
+ "description": "A light-weight module that brings window.fetch to node.js and io.js",
+ "devDependencies": {
+ "bluebird": "^3.3.4",
+ "chai": "^3.5.0",
+ "chai-as-promised": "^5.2.0",
+ "codecov": "^1.0.1",
+ "form-data": ">=1.0.0",
+ "istanbul": "^0.4.2",
+ "mocha": "^2.1.0",
+ "parted": "^0.1.1",
+ "promise": "^7.1.1",
+ "resumer": "0.0.0"
+ },
+ "homepage": "https://github.com/bitinn/node-fetch",
+ "keywords": [
+ "fetch",
+ "http",
+ "promise"
+ ],
+ "license": "MIT",
+ "main": "index.js",
+ "name": "node-fetch",
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/bitinn/node-fetch.git"
+ },
+ "scripts": {
+ "coverage": "istanbul cover _mocha --report lcovonly -- -R spec test/test.js && codecov",
+ "report": "istanbul cover _mocha -- -R spec test/test.js",
+ "test": "mocha test/test.js"
+ },
+ "version": "1.7.3"
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/test/dummy.txt b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/test/dummy.txt
new file mode 100644
index 00000000..5ca51916
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/test/dummy.txt
@@ -0,0 +1 @@
+i am a dummy
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/test/server.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/test/server.js
new file mode 100644
index 00000000..5b1b3b98
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/test/server.js
@@ -0,0 +1,340 @@
+
+var http = require('http');
+var parse = require('url').parse;
+var zlib = require('zlib');
+var stream = require('stream');
+var convert = require('encoding').convert;
+var Multipart = require('parted').multipart;
+
+module.exports = TestServer;
+
+function TestServer() {
+ this.server = http.createServer(this.router);
+ this.port = 30001;
+ this.hostname = 'localhost';
+ // node 8 default keepalive timeout is 5000ms
+ // make it shorter here as we want to close server quickly at the end of tests
+ this.server.keepAliveTimeout = 1000;
+ this.server.on('error', function(err) {
+ console.log(err.stack);
+ });
+ this.server.on('connection', function(socket) {
+ socket.setTimeout(1500);
+ });
+}
+
+TestServer.prototype.start = function(cb) {
+ this.server.listen(this.port, this.hostname, cb);
+}
+
+TestServer.prototype.stop = function(cb) {
+ this.server.close(cb);
+}
+
+TestServer.prototype.router = function(req, res) {
+
+ var p = parse(req.url).pathname;
+
+ if (p === '/hello') {
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain');
+ res.end('world');
+ }
+
+ if (p === '/plain') {
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain');
+ res.end('text');
+ }
+
+ if (p === '/options') {
+ res.statusCode = 200;
+ res.setHeader('Allow', 'GET, HEAD, OPTIONS');
+ res.end('hello world');
+ }
+
+ if (p === '/html') {
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/html');
+ res.end('');
+ }
+
+ if (p === '/json') {
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'application/json');
+ res.end(JSON.stringify({
+ name: 'value'
+ }));
+ }
+
+ if (p === '/gzip') {
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain');
+ res.setHeader('Content-Encoding', 'gzip');
+ zlib.gzip('hello world', function(err, buffer) {
+ res.end(buffer);
+ });
+ }
+
+ if (p === '/deflate') {
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain');
+ res.setHeader('Content-Encoding', 'deflate');
+ zlib.deflate('hello world', function(err, buffer) {
+ res.end(buffer);
+ });
+ }
+
+ if (p === '/deflate-raw') {
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain');
+ res.setHeader('Content-Encoding', 'deflate');
+ zlib.deflateRaw('hello world', function(err, buffer) {
+ res.end(buffer);
+ });
+ }
+
+ if (p === '/sdch') {
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain');
+ res.setHeader('Content-Encoding', 'sdch');
+ res.end('fake sdch string');
+ }
+
+ if (p === '/invalid-content-encoding') {
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain');
+ res.setHeader('Content-Encoding', 'gzip');
+ res.end('fake gzip string');
+ }
+
+ if (p === '/timeout') {
+ setTimeout(function() {
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain');
+ res.end('text');
+ }, 1000);
+ }
+
+ if (p === '/slow') {
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain');
+ res.write('test');
+ setTimeout(function() {
+ res.end('test');
+ }, 1000);
+ }
+
+ if (p === '/cookie') {
+ res.statusCode = 200;
+ res.setHeader('Set-Cookie', ['a=1', 'b=1']);
+ res.end('cookie');
+ }
+
+ if (p === '/size/chunk') {
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain');
+ setTimeout(function() {
+ res.write('test');
+ }, 50);
+ setTimeout(function() {
+ res.end('test');
+ }, 100);
+ }
+
+ if (p === '/size/long') {
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain');
+ res.end('testtest');
+ }
+
+ if (p === '/encoding/gbk') {
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/html');
+ res.end(convert('中文
', 'gbk'));
+ }
+
+ if (p === '/encoding/gb2312') {
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/html');
+ res.end(convert('中文
', 'gb2312'));
+ }
+
+ if (p === '/encoding/shift-jis') {
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/html; charset=Shift-JIS');
+ res.end(convert('日本語
', 'Shift_JIS'));
+ }
+
+ if (p === '/encoding/euc-jp') {
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/xml');
+ res.end(convert('日本語 ', 'EUC-JP'));
+ }
+
+ if (p === '/encoding/utf8') {
+ res.statusCode = 200;
+ res.end('中文');
+ }
+
+ if (p === '/encoding/order1') {
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'charset=gbk; text/plain');
+ res.end(convert('中文', 'gbk'));
+ }
+
+ if (p === '/encoding/order2') {
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain; charset=gbk; qs=1');
+ res.end(convert('中文', 'gbk'));
+ }
+
+ if (p === '/encoding/chunked') {
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/html');
+ res.setHeader('Transfer-Encoding', 'chunked');
+ var padding = 'a';
+ for (var i = 0; i < 10; i++) {
+ res.write(padding);
+ }
+ res.end(convert('日本語
', 'Shift_JIS'));
+ }
+
+ if (p === '/encoding/invalid') {
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/html');
+ res.setHeader('Transfer-Encoding', 'chunked');
+ // because node v0.12 doesn't have str.repeat
+ var padding = new Array(120 + 1).join('a');
+ for (var i = 0; i < 10; i++) {
+ res.write(padding);
+ }
+ res.end(convert('中文', 'gbk'));
+ }
+
+ if (p === '/redirect/301') {
+ res.statusCode = 301;
+ res.setHeader('Location', '/inspect');
+ res.end();
+ }
+
+ if (p === '/redirect/302') {
+ res.statusCode = 302;
+ res.setHeader('Location', '/inspect');
+ res.end();
+ }
+
+ if (p === '/redirect/303') {
+ res.statusCode = 303;
+ res.setHeader('Location', '/inspect');
+ res.end();
+ }
+
+ if (p === '/redirect/307') {
+ res.statusCode = 307;
+ res.setHeader('Location', '/inspect');
+ res.end();
+ }
+
+ if (p === '/redirect/308') {
+ res.statusCode = 308;
+ res.setHeader('Location', '/inspect');
+ res.end();
+ }
+
+ if (p === '/redirect/chain') {
+ res.statusCode = 301;
+ res.setHeader('Location', '/redirect/301');
+ res.end();
+ }
+
+ if (p === '/error/redirect') {
+ res.statusCode = 301;
+ //res.setHeader('Location', '/inspect');
+ res.end();
+ }
+
+ if (p === '/error/400') {
+ res.statusCode = 400;
+ res.setHeader('Content-Type', 'text/plain');
+ res.end('client error');
+ }
+
+ if (p === '/error/404') {
+ res.statusCode = 404;
+ res.setHeader('Content-Encoding', 'gzip');
+ res.end();
+ }
+
+ if (p === '/error/500') {
+ res.statusCode = 500;
+ res.setHeader('Content-Type', 'text/plain');
+ res.end('server error');
+ }
+
+ if (p === '/error/reset') {
+ res.destroy();
+ }
+
+ if (p === '/error/json') {
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'application/json');
+ res.end('invalid json');
+ }
+
+ if (p === '/no-content') {
+ res.statusCode = 204;
+ res.end();
+ }
+
+ if (p === '/no-content/gzip') {
+ res.statusCode = 204;
+ res.setHeader('Content-Encoding', 'gzip');
+ res.end();
+ }
+
+ if (p === '/not-modified') {
+ res.statusCode = 304;
+ res.end();
+ }
+
+ if (p === '/not-modified/gzip') {
+ res.statusCode = 304;
+ res.setHeader('Content-Encoding', 'gzip');
+ res.end();
+ }
+
+ if (p === '/inspect') {
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'application/json');
+ var body = '';
+ req.on('data', function(c) { body += c });
+ req.on('end', function() {
+ res.end(JSON.stringify({
+ method: req.method,
+ url: req.url,
+ headers: req.headers,
+ body: body
+ }));
+ });
+ }
+
+ if (p === '/multipart') {
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'application/json');
+ var parser = new Multipart(req.headers['content-type']);
+ var body = '';
+ parser.on('part', function(field, part) {
+ body += field + '=' + part;
+ });
+ parser.on('end', function() {
+ res.end(JSON.stringify({
+ method: req.method,
+ url: req.url,
+ headers: req.headers,
+ body: body
+ }));
+ });
+ req.pipe(parser);
+ }
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/test/test.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/test/test.js
new file mode 100644
index 00000000..d1bd3fd4
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/node-fetch/test/test.js
@@ -0,0 +1,1489 @@
+
+// test tools
+var chai = require('chai');
+var cap = require('chai-as-promised');
+chai.use(cap);
+var expect = chai.expect;
+var bluebird = require('bluebird');
+var then = require('promise');
+var spawn = require('child_process').spawn;
+var stream = require('stream');
+var resumer = require('resumer');
+var FormData = require('form-data');
+var http = require('http');
+var fs = require('fs');
+
+var TestServer = require('./server');
+
+// test subjects
+var fetch = require('../index.js');
+var Headers = require('../lib/headers.js');
+var Response = require('../lib/response.js');
+var Request = require('../lib/request.js');
+var Body = require('../lib/body.js');
+var FetchError = require('../lib/fetch-error.js');
+// test with native promise on node 0.11, and bluebird for node 0.10
+fetch.Promise = fetch.Promise || bluebird;
+
+var url, opts, local, base;
+
+describe('node-fetch', function() {
+
+ before(function(done) {
+ local = new TestServer();
+ base = 'http://' + local.hostname + ':' + local.port;
+ local.start(done);
+ });
+
+ after(function(done) {
+ local.stop(done);
+ });
+
+ it('should return a promise', function() {
+ url = 'http://example.com/';
+ var p = fetch(url);
+ expect(p).to.be.an.instanceof(fetch.Promise);
+ expect(p).to.have.property('then');
+ });
+
+ it('should allow custom promise', function() {
+ url = 'http://example.com/';
+ var old = fetch.Promise;
+ fetch.Promise = then;
+ expect(fetch(url)).to.be.an.instanceof(then);
+ expect(fetch(url)).to.not.be.an.instanceof(bluebird);
+ fetch.Promise = old;
+ });
+
+ it('should throw error when no promise implementation are found', function() {
+ url = 'http://example.com/';
+ var old = fetch.Promise;
+ fetch.Promise = undefined;
+ expect(function() {
+ fetch(url)
+ }).to.throw(Error);
+ fetch.Promise = old;
+ });
+
+ it('should expose Headers, Response and Request constructors', function() {
+ expect(fetch.Headers).to.equal(Headers);
+ expect(fetch.Response).to.equal(Response);
+ expect(fetch.Request).to.equal(Request);
+ });
+
+ it('should reject with error if url is protocol relative', function() {
+ url = '//example.com/';
+ return expect(fetch(url)).to.eventually.be.rejectedWith(Error);
+ });
+
+ it('should reject with error if url is relative path', function() {
+ url = '/some/path';
+ return expect(fetch(url)).to.eventually.be.rejectedWith(Error);
+ });
+
+ it('should reject with error if protocol is unsupported', function() {
+ url = 'ftp://example.com/';
+ return expect(fetch(url)).to.eventually.be.rejectedWith(Error);
+ });
+
+ it('should reject with error on network failure', function() {
+ url = 'http://localhost:50000/';
+ return expect(fetch(url)).to.eventually.be.rejected
+ .and.be.an.instanceOf(FetchError)
+ .and.include({ type: 'system', code: 'ECONNREFUSED', errno: 'ECONNREFUSED' });
+ });
+
+ it('should resolve into response', function() {
+ url = base + '/hello';
+ return fetch(url).then(function(res) {
+ expect(res).to.be.an.instanceof(Response);
+ expect(res.headers).to.be.an.instanceof(Headers);
+ expect(res.body).to.be.an.instanceof(stream.Transform);
+ expect(res.bodyUsed).to.be.false;
+
+ expect(res.url).to.equal(url);
+ expect(res.ok).to.be.true;
+ expect(res.status).to.equal(200);
+ expect(res.statusText).to.equal('OK');
+ });
+ });
+
+ it('should accept plain text response', function() {
+ url = base + '/plain';
+ return fetch(url).then(function(res) {
+ expect(res.headers.get('content-type')).to.equal('text/plain');
+ return res.text().then(function(result) {
+ expect(res.bodyUsed).to.be.true;
+ expect(result).to.be.a('string');
+ expect(result).to.equal('text');
+ });
+ });
+ });
+
+ it('should accept html response (like plain text)', function() {
+ url = base + '/html';
+ return fetch(url).then(function(res) {
+ expect(res.headers.get('content-type')).to.equal('text/html');
+ return res.text().then(function(result) {
+ expect(res.bodyUsed).to.be.true;
+ expect(result).to.be.a('string');
+ expect(result).to.equal('');
+ });
+ });
+ });
+
+ it('should accept json response', function() {
+ url = base + '/json';
+ return fetch(url).then(function(res) {
+ expect(res.headers.get('content-type')).to.equal('application/json');
+ return res.json().then(function(result) {
+ expect(res.bodyUsed).to.be.true;
+ expect(result).to.be.an('object');
+ expect(result).to.deep.equal({ name: 'value' });
+ });
+ });
+ });
+
+ it('should send request with custom headers', function() {
+ url = base + '/inspect';
+ opts = {
+ headers: { 'x-custom-header': 'abc' }
+ };
+ return fetch(url, opts).then(function(res) {
+ return res.json();
+ }).then(function(res) {
+ expect(res.headers['x-custom-header']).to.equal('abc');
+ });
+ });
+
+ it('should accept headers instance', function() {
+ url = base + '/inspect';
+ opts = {
+ headers: new Headers({ 'x-custom-header': 'abc' })
+ };
+ return fetch(url, opts).then(function(res) {
+ return res.json();
+ }).then(function(res) {
+ expect(res.headers['x-custom-header']).to.equal('abc');
+ });
+ });
+
+ it('should accept custom host header', function() {
+ url = base + '/inspect';
+ opts = {
+ headers: {
+ host: 'example.com'
+ }
+ };
+ return fetch(url, opts).then(function(res) {
+ return res.json();
+ }).then(function(res) {
+ expect(res.headers['host']).to.equal('example.com');
+ });
+ });
+
+ it('should follow redirect code 301', function() {
+ url = base + '/redirect/301';
+ return fetch(url).then(function(res) {
+ expect(res.url).to.equal(base + '/inspect');
+ expect(res.status).to.equal(200);
+ expect(res.ok).to.be.true;
+ });
+ });
+
+ it('should follow redirect code 302', function() {
+ url = base + '/redirect/302';
+ return fetch(url).then(function(res) {
+ expect(res.url).to.equal(base + '/inspect');
+ expect(res.status).to.equal(200);
+ });
+ });
+
+ it('should follow redirect code 303', function() {
+ url = base + '/redirect/303';
+ return fetch(url).then(function(res) {
+ expect(res.url).to.equal(base + '/inspect');
+ expect(res.status).to.equal(200);
+ });
+ });
+
+ it('should follow redirect code 307', function() {
+ url = base + '/redirect/307';
+ return fetch(url).then(function(res) {
+ expect(res.url).to.equal(base + '/inspect');
+ expect(res.status).to.equal(200);
+ });
+ });
+
+ it('should follow redirect code 308', function() {
+ url = base + '/redirect/308';
+ return fetch(url).then(function(res) {
+ expect(res.url).to.equal(base + '/inspect');
+ expect(res.status).to.equal(200);
+ });
+ });
+
+ it('should follow redirect chain', function() {
+ url = base + '/redirect/chain';
+ return fetch(url).then(function(res) {
+ expect(res.url).to.equal(base + '/inspect');
+ expect(res.status).to.equal(200);
+ });
+ });
+
+ it('should follow POST request redirect code 301 with GET', function() {
+ url = base + '/redirect/301';
+ opts = {
+ method: 'POST'
+ , body: 'a=1'
+ };
+ return fetch(url, opts).then(function(res) {
+ expect(res.url).to.equal(base + '/inspect');
+ expect(res.status).to.equal(200);
+ return res.json().then(function(result) {
+ expect(result.method).to.equal('GET');
+ expect(result.body).to.equal('');
+ });
+ });
+ });
+
+ it('should follow POST request redirect code 302 with GET', function() {
+ url = base + '/redirect/302';
+ opts = {
+ method: 'POST'
+ , body: 'a=1'
+ };
+ return fetch(url, opts).then(function(res) {
+ expect(res.url).to.equal(base + '/inspect');
+ expect(res.status).to.equal(200);
+ return res.json().then(function(result) {
+ expect(result.method).to.equal('GET');
+ expect(result.body).to.equal('');
+ });
+ });
+ });
+
+ it('should follow redirect code 303 with GET', function() {
+ url = base + '/redirect/303';
+ opts = {
+ method: 'PUT'
+ , body: 'a=1'
+ };
+ return fetch(url, opts).then(function(res) {
+ expect(res.url).to.equal(base + '/inspect');
+ expect(res.status).to.equal(200);
+ return res.json().then(function(result) {
+ expect(result.method).to.equal('GET');
+ expect(result.body).to.equal('');
+ });
+ });
+ });
+
+ it('should obey maximum redirect, reject case', function() {
+ url = base + '/redirect/chain';
+ opts = {
+ follow: 1
+ }
+ return expect(fetch(url, opts)).to.eventually.be.rejected
+ .and.be.an.instanceOf(FetchError)
+ .and.have.property('type', 'max-redirect');
+ });
+
+ it('should obey redirect chain, resolve case', function() {
+ url = base + '/redirect/chain';
+ opts = {
+ follow: 2
+ }
+ return fetch(url, opts).then(function(res) {
+ expect(res.url).to.equal(base + '/inspect');
+ expect(res.status).to.equal(200);
+ });
+ });
+
+ it('should allow not following redirect', function() {
+ url = base + '/redirect/301';
+ opts = {
+ follow: 0
+ }
+ return expect(fetch(url, opts)).to.eventually.be.rejected
+ .and.be.an.instanceOf(FetchError)
+ .and.have.property('type', 'max-redirect');
+ });
+
+ it('should support redirect mode, manual flag', function() {
+ url = base + '/redirect/301';
+ opts = {
+ redirect: 'manual'
+ };
+ return fetch(url, opts).then(function(res) {
+ expect(res.url).to.equal(url);
+ expect(res.status).to.equal(301);
+ expect(res.headers.get('location')).to.equal(base + '/inspect');
+ });
+ });
+
+ it('should support redirect mode, error flag', function() {
+ url = base + '/redirect/301';
+ opts = {
+ redirect: 'error'
+ };
+ return expect(fetch(url, opts)).to.eventually.be.rejected
+ .and.be.an.instanceOf(FetchError)
+ .and.have.property('type', 'no-redirect');
+ });
+
+ it('should support redirect mode, manual flag when there is no redirect', function() {
+ url = base + '/hello';
+ opts = {
+ redirect: 'manual'
+ };
+ return fetch(url, opts).then(function(res) {
+ expect(res.url).to.equal(url);
+ expect(res.status).to.equal(200);
+ expect(res.headers.get('location')).to.be.null;
+ });
+ });
+
+ it('should follow redirect code 301 and keep existing headers', function() {
+ url = base + '/redirect/301';
+ opts = {
+ headers: new Headers({ 'x-custom-header': 'abc' })
+ };
+ return fetch(url, opts).then(function(res) {
+ expect(res.url).to.equal(base + '/inspect');
+ return res.json();
+ }).then(function(res) {
+ expect(res.headers['x-custom-header']).to.equal('abc');
+ });
+ });
+
+ it('should reject broken redirect', function() {
+ url = base + '/error/redirect';
+ return expect(fetch(url)).to.eventually.be.rejected
+ .and.be.an.instanceOf(FetchError)
+ .and.have.property('type', 'invalid-redirect');
+ });
+
+ it('should not reject broken redirect under manual redirect', function() {
+ url = base + '/error/redirect';
+ opts = {
+ redirect: 'manual'
+ };
+ return fetch(url, opts).then(function(res) {
+ expect(res.url).to.equal(url);
+ expect(res.status).to.equal(301);
+ expect(res.headers.get('location')).to.be.null;
+ });
+ });
+
+ it('should handle client-error response', function() {
+ url = base + '/error/400';
+ return fetch(url).then(function(res) {
+ expect(res.headers.get('content-type')).to.equal('text/plain');
+ expect(res.status).to.equal(400);
+ expect(res.statusText).to.equal('Bad Request');
+ expect(res.ok).to.be.false;
+ return res.text().then(function(result) {
+ expect(res.bodyUsed).to.be.true;
+ expect(result).to.be.a('string');
+ expect(result).to.equal('client error');
+ });
+ });
+ });
+
+ it('should handle server-error response', function() {
+ url = base + '/error/500';
+ return fetch(url).then(function(res) {
+ expect(res.headers.get('content-type')).to.equal('text/plain');
+ expect(res.status).to.equal(500);
+ expect(res.statusText).to.equal('Internal Server Error');
+ expect(res.ok).to.be.false;
+ return res.text().then(function(result) {
+ expect(res.bodyUsed).to.be.true;
+ expect(result).to.be.a('string');
+ expect(result).to.equal('server error');
+ });
+ });
+ });
+
+ it('should handle network-error response', function() {
+ url = base + '/error/reset';
+ return expect(fetch(url)).to.eventually.be.rejected
+ .and.be.an.instanceOf(FetchError)
+ .and.have.property('code', 'ECONNRESET');
+ });
+
+ it('should handle DNS-error response', function() {
+ url = 'http://domain.invalid';
+ return expect(fetch(url)).to.eventually.be.rejected
+ .and.be.an.instanceOf(FetchError)
+ .and.have.property('code', 'ENOTFOUND');
+ });
+
+ it('should reject invalid json response', function() {
+ url = base + '/error/json';
+ return fetch(url).then(function(res) {
+ expect(res.headers.get('content-type')).to.equal('application/json');
+ return expect(res.json()).to.eventually.be.rejectedWith(Error);
+ });
+ });
+
+ it('should handle no content response', function() {
+ url = base + '/no-content';
+ return fetch(url).then(function(res) {
+ expect(res.status).to.equal(204);
+ expect(res.statusText).to.equal('No Content');
+ expect(res.ok).to.be.true;
+ return res.text().then(function(result) {
+ expect(result).to.be.a('string');
+ expect(result).to.be.empty;
+ });
+ });
+ });
+
+ it('should throw on no-content json response', function() {
+ url = base + '/no-content';
+ return fetch(url).then(function(res) {
+ return expect(res.json()).to.eventually.be.rejectedWith(FetchError);
+ });
+ });
+
+ it('should handle no content response with gzip encoding', function() {
+ url = base + '/no-content/gzip';
+ return fetch(url).then(function(res) {
+ expect(res.status).to.equal(204);
+ expect(res.statusText).to.equal('No Content');
+ expect(res.headers.get('content-encoding')).to.equal('gzip');
+ expect(res.ok).to.be.true;
+ return res.text().then(function(result) {
+ expect(result).to.be.a('string');
+ expect(result).to.be.empty;
+ });
+ });
+ });
+
+ it('should handle not modified response', function() {
+ url = base + '/not-modified';
+ return fetch(url).then(function(res) {
+ expect(res.status).to.equal(304);
+ expect(res.statusText).to.equal('Not Modified');
+ expect(res.ok).to.be.false;
+ return res.text().then(function(result) {
+ expect(result).to.be.a('string');
+ expect(result).to.be.empty;
+ });
+ });
+ });
+
+ it('should handle not modified response with gzip encoding', function() {
+ url = base + '/not-modified/gzip';
+ return fetch(url).then(function(res) {
+ expect(res.status).to.equal(304);
+ expect(res.statusText).to.equal('Not Modified');
+ expect(res.headers.get('content-encoding')).to.equal('gzip');
+ expect(res.ok).to.be.false;
+ return res.text().then(function(result) {
+ expect(result).to.be.a('string');
+ expect(result).to.be.empty;
+ });
+ });
+ });
+
+ it('should decompress gzip response', function() {
+ url = base + '/gzip';
+ return fetch(url).then(function(res) {
+ expect(res.headers.get('content-type')).to.equal('text/plain');
+ return res.text().then(function(result) {
+ expect(result).to.be.a('string');
+ expect(result).to.equal('hello world');
+ });
+ });
+ });
+
+ it('should decompress deflate response', function() {
+ url = base + '/deflate';
+ return fetch(url).then(function(res) {
+ expect(res.headers.get('content-type')).to.equal('text/plain');
+ return res.text().then(function(result) {
+ expect(result).to.be.a('string');
+ expect(result).to.equal('hello world');
+ });
+ });
+ });
+
+ it('should decompress deflate raw response from old apache server', function() {
+ url = base + '/deflate-raw';
+ return fetch(url).then(function(res) {
+ expect(res.headers.get('content-type')).to.equal('text/plain');
+ return res.text().then(function(result) {
+ expect(result).to.be.a('string');
+ expect(result).to.equal('hello world');
+ });
+ });
+ });
+
+ it('should skip decompression if unsupported', function() {
+ url = base + '/sdch';
+ return fetch(url).then(function(res) {
+ expect(res.headers.get('content-type')).to.equal('text/plain');
+ return res.text().then(function(result) {
+ expect(result).to.be.a('string');
+ expect(result).to.equal('fake sdch string');
+ });
+ });
+ });
+
+ it('should reject if response compression is invalid', function() {
+ url = base + '/invalid-content-encoding';
+ return fetch(url).then(function(res) {
+ expect(res.headers.get('content-type')).to.equal('text/plain');
+ return expect(res.text()).to.eventually.be.rejected
+ .and.be.an.instanceOf(FetchError)
+ .and.have.property('code', 'Z_DATA_ERROR');
+ });
+ });
+
+ it('should allow disabling auto decompression', function() {
+ url = base + '/gzip';
+ opts = {
+ compress: false
+ };
+ return fetch(url, opts).then(function(res) {
+ expect(res.headers.get('content-type')).to.equal('text/plain');
+ return res.text().then(function(result) {
+ expect(result).to.be.a('string');
+ expect(result).to.not.equal('hello world');
+ });
+ });
+ });
+
+ it('should allow custom timeout', function() {
+ this.timeout(500);
+ url = base + '/timeout';
+ opts = {
+ timeout: 100
+ };
+ return expect(fetch(url, opts)).to.eventually.be.rejected
+ .and.be.an.instanceOf(FetchError)
+ .and.have.property('type', 'request-timeout');
+ });
+
+ it('should allow custom timeout on response body', function() {
+ this.timeout(500);
+ url = base + '/slow';
+ opts = {
+ timeout: 100
+ };
+ return fetch(url, opts).then(function(res) {
+ expect(res.ok).to.be.true;
+ return expect(res.text()).to.eventually.be.rejected
+ .and.be.an.instanceOf(FetchError)
+ .and.have.property('type', 'body-timeout');
+ });
+ });
+
+ it('should clear internal timeout on fetch response', function (done) {
+ this.timeout(1000);
+ spawn('node', ['-e', 'require("./")("' + base + '/hello", { timeout: 5000 })'])
+ .on('exit', function () {
+ done();
+ });
+ });
+
+ it('should clear internal timeout on fetch redirect', function (done) {
+ this.timeout(1000);
+ spawn('node', ['-e', 'require("./")("' + base + '/redirect/301", { timeout: 5000 })'])
+ .on('exit', function () {
+ done();
+ });
+ });
+
+ it('should clear internal timeout on fetch error', function (done) {
+ this.timeout(1000);
+ spawn('node', ['-e', 'require("./")("' + base + '/error/reset", { timeout: 5000 })'])
+ .on('exit', function () {
+ done();
+ });
+ });
+
+ it('should allow POST request', function() {
+ url = base + '/inspect';
+ opts = {
+ method: 'POST'
+ };
+ return fetch(url, opts).then(function(res) {
+ return res.json();
+ }).then(function(res) {
+ expect(res.method).to.equal('POST');
+ expect(res.headers['transfer-encoding']).to.be.undefined;
+ expect(res.headers['content-length']).to.equal('0');
+ });
+ });
+
+ it('should allow POST request with string body', function() {
+ url = base + '/inspect';
+ opts = {
+ method: 'POST'
+ , body: 'a=1'
+ };
+ return fetch(url, opts).then(function(res) {
+ return res.json();
+ }).then(function(res) {
+ expect(res.method).to.equal('POST');
+ expect(res.body).to.equal('a=1');
+ expect(res.headers['transfer-encoding']).to.be.undefined;
+ expect(res.headers['content-length']).to.equal('3');
+ });
+ });
+
+ it('should allow POST request with buffer body', function() {
+ url = base + '/inspect';
+ opts = {
+ method: 'POST'
+ , body: new Buffer('a=1', 'utf-8')
+ };
+ return fetch(url, opts).then(function(res) {
+ return res.json();
+ }).then(function(res) {
+ expect(res.method).to.equal('POST');
+ expect(res.body).to.equal('a=1');
+ expect(res.headers['transfer-encoding']).to.equal('chunked');
+ expect(res.headers['content-length']).to.be.undefined;
+ });
+ });
+
+ it('should allow POST request with readable stream as body', function() {
+ var body = resumer().queue('a=1').end();
+ body = body.pipe(new stream.PassThrough());
+
+ url = base + '/inspect';
+ opts = {
+ method: 'POST'
+ , body: body
+ };
+ return fetch(url, opts).then(function(res) {
+ return res.json();
+ }).then(function(res) {
+ expect(res.method).to.equal('POST');
+ expect(res.body).to.equal('a=1');
+ expect(res.headers['transfer-encoding']).to.equal('chunked');
+ expect(res.headers['content-length']).to.be.undefined;
+ });
+ });
+
+ it('should allow POST request with form-data as body', function() {
+ var form = new FormData();
+ form.append('a','1');
+
+ url = base + '/multipart';
+ opts = {
+ method: 'POST'
+ , body: form
+ };
+ return fetch(url, opts).then(function(res) {
+ return res.json();
+ }).then(function(res) {
+ expect(res.method).to.equal('POST');
+ expect(res.headers['content-type']).to.contain('multipart/form-data');
+ expect(res.headers['content-length']).to.be.a('string');
+ expect(res.body).to.equal('a=1');
+ });
+ });
+
+ it('should allow POST request with form-data using stream as body', function() {
+ var form = new FormData();
+ form.append('my_field', fs.createReadStream('test/dummy.txt'));
+
+ url = base + '/multipart';
+ opts = {
+ method: 'POST'
+ , body: form
+ };
+
+ return fetch(url, opts).then(function(res) {
+ return res.json();
+ }).then(function(res) {
+ expect(res.method).to.equal('POST');
+ expect(res.headers['content-type']).to.contain('multipart/form-data');
+ expect(res.headers['content-length']).to.be.undefined;
+ expect(res.body).to.contain('my_field=');
+ });
+ });
+
+ it('should allow POST request with form-data as body and custom headers', function() {
+ var form = new FormData();
+ form.append('a','1');
+
+ var headers = form.getHeaders();
+ headers['b'] = '2';
+
+ url = base + '/multipart';
+ opts = {
+ method: 'POST'
+ , body: form
+ , headers: headers
+ };
+ return fetch(url, opts).then(function(res) {
+ return res.json();
+ }).then(function(res) {
+ expect(res.method).to.equal('POST');
+ expect(res.headers['content-type']).to.contain('multipart/form-data');
+ expect(res.headers['content-length']).to.be.a('string');
+ expect(res.headers.b).to.equal('2');
+ expect(res.body).to.equal('a=1');
+ });
+ });
+
+ it('should allow POST request with object body', function() {
+ url = base + '/inspect';
+ // note that fetch simply calls tostring on an object
+ opts = {
+ method: 'POST'
+ , body: { a:1 }
+ };
+ return fetch(url, opts).then(function(res) {
+ return res.json();
+ }).then(function(res) {
+ expect(res.method).to.equal('POST');
+ expect(res.body).to.equal('[object Object]');
+ });
+ });
+
+ it('should allow PUT request', function() {
+ url = base + '/inspect';
+ opts = {
+ method: 'PUT'
+ , body: 'a=1'
+ };
+ return fetch(url, opts).then(function(res) {
+ return res.json();
+ }).then(function(res) {
+ expect(res.method).to.equal('PUT');
+ expect(res.body).to.equal('a=1');
+ });
+ });
+
+ it('should allow DELETE request', function() {
+ url = base + '/inspect';
+ opts = {
+ method: 'DELETE'
+ };
+ return fetch(url, opts).then(function(res) {
+ return res.json();
+ }).then(function(res) {
+ expect(res.method).to.equal('DELETE');
+ });
+ });
+
+ it('should allow POST request with string body', function() {
+ url = base + '/inspect';
+ opts = {
+ method: 'POST'
+ , body: 'a=1'
+ };
+ return fetch(url, opts).then(function(res) {
+ return res.json();
+ }).then(function(res) {
+ expect(res.method).to.equal('POST');
+ expect(res.body).to.equal('a=1');
+ expect(res.headers['transfer-encoding']).to.be.undefined;
+ expect(res.headers['content-length']).to.equal('3');
+ });
+ });
+
+ it('should allow DELETE request with string body', function() {
+ url = base + '/inspect';
+ opts = {
+ method: 'DELETE'
+ , body: 'a=1'
+ };
+ return fetch(url, opts).then(function(res) {
+ return res.json();
+ }).then(function(res) {
+ expect(res.method).to.equal('DELETE');
+ expect(res.body).to.equal('a=1');
+ expect(res.headers['transfer-encoding']).to.be.undefined;
+ expect(res.headers['content-length']).to.equal('3');
+ });
+ });
+
+ it('should allow PATCH request', function() {
+ url = base + '/inspect';
+ opts = {
+ method: 'PATCH'
+ , body: 'a=1'
+ };
+ return fetch(url, opts).then(function(res) {
+ return res.json();
+ }).then(function(res) {
+ expect(res.method).to.equal('PATCH');
+ expect(res.body).to.equal('a=1');
+ });
+ });
+
+ it('should allow HEAD request', function() {
+ url = base + '/hello';
+ opts = {
+ method: 'HEAD'
+ };
+ return fetch(url, opts).then(function(res) {
+ expect(res.status).to.equal(200);
+ expect(res.statusText).to.equal('OK');
+ expect(res.headers.get('content-type')).to.equal('text/plain');
+ expect(res.body).to.be.an.instanceof(stream.Transform);
+ return res.text();
+ }).then(function(text) {
+ expect(text).to.equal('');
+ });
+ });
+
+ it('should allow HEAD request with content-encoding header', function() {
+ url = base + '/error/404';
+ opts = {
+ method: 'HEAD'
+ };
+ return fetch(url, opts).then(function(res) {
+ expect(res.status).to.equal(404);
+ expect(res.headers.get('content-encoding')).to.equal('gzip');
+ return res.text();
+ }).then(function(text) {
+ expect(text).to.equal('');
+ });
+ });
+
+ it('should allow OPTIONS request', function() {
+ url = base + '/options';
+ opts = {
+ method: 'OPTIONS'
+ };
+ return fetch(url, opts).then(function(res) {
+ expect(res.status).to.equal(200);
+ expect(res.statusText).to.equal('OK');
+ expect(res.headers.get('allow')).to.equal('GET, HEAD, OPTIONS');
+ expect(res.body).to.be.an.instanceof(stream.Transform);
+ });
+ });
+
+ it('should reject decoding body twice', function() {
+ url = base + '/plain';
+ return fetch(url).then(function(res) {
+ expect(res.headers.get('content-type')).to.equal('text/plain');
+ return res.text().then(function(result) {
+ expect(res.bodyUsed).to.be.true;
+ return expect(res.text()).to.eventually.be.rejectedWith(Error);
+ });
+ });
+ });
+
+ it('should support maximum response size, multiple chunk', function() {
+ url = base + '/size/chunk';
+ opts = {
+ size: 5
+ };
+ return fetch(url, opts).then(function(res) {
+ expect(res.status).to.equal(200);
+ expect(res.headers.get('content-type')).to.equal('text/plain');
+ return expect(res.text()).to.eventually.be.rejected
+ .and.be.an.instanceOf(FetchError)
+ .and.have.property('type', 'max-size');
+ });
+ });
+
+ it('should support maximum response size, single chunk', function() {
+ url = base + '/size/long';
+ opts = {
+ size: 5
+ };
+ return fetch(url, opts).then(function(res) {
+ expect(res.status).to.equal(200);
+ expect(res.headers.get('content-type')).to.equal('text/plain');
+ return expect(res.text()).to.eventually.be.rejected
+ .and.be.an.instanceOf(FetchError)
+ .and.have.property('type', 'max-size');
+ });
+ });
+
+ it('should support encoding decode, xml dtd detect', function() {
+ url = base + '/encoding/euc-jp';
+ return fetch(url).then(function(res) {
+ expect(res.status).to.equal(200);
+ return res.text().then(function(result) {
+ expect(result).to.equal('日本語 ');
+ });
+ });
+ });
+
+ it('should support encoding decode, content-type detect', function() {
+ url = base + '/encoding/shift-jis';
+ return fetch(url).then(function(res) {
+ expect(res.status).to.equal(200);
+ return res.text().then(function(result) {
+ expect(result).to.equal('日本語
');
+ });
+ });
+ });
+
+ it('should support encoding decode, html5 detect', function() {
+ url = base + '/encoding/gbk';
+ return fetch(url).then(function(res) {
+ expect(res.status).to.equal(200);
+ return res.text().then(function(result) {
+ expect(result).to.equal('中文
');
+ });
+ });
+ });
+
+ it('should support encoding decode, html4 detect', function() {
+ url = base + '/encoding/gb2312';
+ return fetch(url).then(function(res) {
+ expect(res.status).to.equal(200);
+ return res.text().then(function(result) {
+ expect(result).to.equal('中文
');
+ });
+ });
+ });
+
+ it('should default to utf8 encoding', function() {
+ url = base + '/encoding/utf8';
+ return fetch(url).then(function(res) {
+ expect(res.status).to.equal(200);
+ expect(res.headers.get('content-type')).to.be.null;
+ return res.text().then(function(result) {
+ expect(result).to.equal('中文');
+ });
+ });
+ });
+
+ it('should support uncommon content-type order, charset in front', function() {
+ url = base + '/encoding/order1';
+ return fetch(url).then(function(res) {
+ expect(res.status).to.equal(200);
+ return res.text().then(function(result) {
+ expect(result).to.equal('中文');
+ });
+ });
+ });
+
+ it('should support uncommon content-type order, end with qs', function() {
+ url = base + '/encoding/order2';
+ return fetch(url).then(function(res) {
+ expect(res.status).to.equal(200);
+ return res.text().then(function(result) {
+ expect(result).to.equal('中文');
+ });
+ });
+ });
+
+ it('should support chunked encoding, html4 detect', function() {
+ url = base + '/encoding/chunked';
+ return fetch(url).then(function(res) {
+ expect(res.status).to.equal(200);
+ // because node v0.12 doesn't have str.repeat
+ var padding = new Array(10 + 1).join('a');
+ return res.text().then(function(result) {
+ expect(result).to.equal(padding + '日本語
');
+ });
+ });
+ });
+
+ it('should only do encoding detection up to 1024 bytes', function() {
+ url = base + '/encoding/invalid';
+ return fetch(url).then(function(res) {
+ expect(res.status).to.equal(200);
+ // because node v0.12 doesn't have str.repeat
+ var padding = new Array(1200 + 1).join('a');
+ return res.text().then(function(result) {
+ expect(result).to.not.equal(padding + '中文');
+ });
+ });
+ });
+
+ it('should allow piping response body as stream', function(done) {
+ url = base + '/hello';
+ fetch(url).then(function(res) {
+ expect(res.body).to.be.an.instanceof(stream.Transform);
+ res.body.on('data', function(chunk) {
+ if (chunk === null) {
+ return;
+ }
+ expect(chunk.toString()).to.equal('world');
+ });
+ res.body.on('end', function() {
+ done();
+ });
+ });
+ });
+
+ it('should allow cloning a response, and use both as stream', function(done) {
+ url = base + '/hello';
+ return fetch(url).then(function(res) {
+ var counter = 0;
+ var r1 = res.clone();
+ expect(res.body).to.be.an.instanceof(stream.Transform);
+ expect(r1.body).to.be.an.instanceof(stream.Transform);
+ res.body.on('data', function(chunk) {
+ if (chunk === null) {
+ return;
+ }
+ expect(chunk.toString()).to.equal('world');
+ });
+ res.body.on('end', function() {
+ counter++;
+ if (counter == 2) {
+ done();
+ }
+ });
+ r1.body.on('data', function(chunk) {
+ if (chunk === null) {
+ return;
+ }
+ expect(chunk.toString()).to.equal('world');
+ });
+ r1.body.on('end', function() {
+ counter++;
+ if (counter == 2) {
+ done();
+ }
+ });
+ });
+ });
+
+ it('should allow cloning a json response and log it as text response', function() {
+ url = base + '/json';
+ return fetch(url).then(function(res) {
+ var r1 = res.clone();
+ return fetch.Promise.all([res.json(), r1.text()]).then(function(results) {
+ expect(results[0]).to.deep.equal({name: 'value'});
+ expect(results[1]).to.equal('{"name":"value"}');
+ });
+ });
+ });
+
+ it('should allow cloning a json response, and then log it as text response', function() {
+ url = base + '/json';
+ return fetch(url).then(function(res) {
+ var r1 = res.clone();
+ return res.json().then(function(result) {
+ expect(result).to.deep.equal({name: 'value'});
+ return r1.text().then(function(result) {
+ expect(result).to.equal('{"name":"value"}');
+ });
+ });
+ });
+ });
+
+ it('should allow cloning a json response, first log as text response, then return json object', function() {
+ url = base + '/json';
+ return fetch(url).then(function(res) {
+ var r1 = res.clone();
+ return r1.text().then(function(result) {
+ expect(result).to.equal('{"name":"value"}');
+ return res.json().then(function(result) {
+ expect(result).to.deep.equal({name: 'value'});
+ });
+ });
+ });
+ });
+
+ it('should not allow cloning a response after its been used', function() {
+ url = base + '/hello';
+ return fetch(url).then(function(res) {
+ return res.text().then(function(result) {
+ expect(function() {
+ var r1 = res.clone();
+ }).to.throw(Error);
+ });
+ })
+ });
+
+ it('should allow get all responses of a header', function() {
+ url = base + '/cookie';
+ return fetch(url).then(function(res) {
+ expect(res.headers.get('set-cookie')).to.equal('a=1');
+ expect(res.headers.get('Set-Cookie')).to.equal('a=1');
+ expect(res.headers.getAll('set-cookie')).to.deep.equal(['a=1', 'b=1']);
+ expect(res.headers.getAll('Set-Cookie')).to.deep.equal(['a=1', 'b=1']);
+ });
+ });
+
+ it('should allow iterating through all headers', function() {
+ var headers = new Headers({
+ a: 1
+ , b: [2, 3]
+ , c: [4]
+ });
+ expect(headers).to.have.property('forEach');
+
+ var result = [];
+ headers.forEach(function(val, key) {
+ result.push([key, val]);
+ });
+
+ expected = [
+ ["a", "1"]
+ , ["b", "2"]
+ , ["b", "3"]
+ , ["c", "4"]
+ ];
+ expect(result).to.deep.equal(expected);
+ });
+
+ it('should allow deleting header', function() {
+ url = base + '/cookie';
+ return fetch(url).then(function(res) {
+ res.headers.delete('set-cookie');
+ expect(res.headers.get('set-cookie')).to.be.null;
+ expect(res.headers.getAll('set-cookie')).to.be.empty;
+ });
+ });
+
+ it('should send request with connection keep-alive if agent is provided', function() {
+ url = base + '/inspect';
+ opts = {
+ agent: new http.Agent({
+ keepAlive: true
+ })
+ };
+ return fetch(url, opts).then(function(res) {
+ return res.json();
+ }).then(function(res) {
+ expect(res.headers['connection']).to.equal('keep-alive');
+ });
+ });
+
+ it('should ignore unsupported attributes while reading headers', function() {
+ var FakeHeader = function() {};
+ // prototypes are ignored
+ FakeHeader.prototype.z = 'fake';
+
+ var res = new FakeHeader;
+ // valid
+ res.a = 'string';
+ res.b = ['1','2'];
+ res.c = '';
+ res.d = [];
+ // common mistakes, normalized
+ res.e = 1;
+ res.f = [1, 2];
+ // invalid, ignored
+ res.g = { a:1 };
+ res.h = undefined;
+ res.i = null;
+ res.j = NaN;
+ res.k = true;
+ res.l = false;
+ res.m = new Buffer('test');
+
+ var h1 = new Headers(res);
+
+ expect(h1._headers['a']).to.include('string');
+ expect(h1._headers['b']).to.include('1');
+ expect(h1._headers['b']).to.include('2');
+ expect(h1._headers['c']).to.include('');
+ expect(h1._headers['d']).to.be.undefined;
+
+ expect(h1._headers['e']).to.include('1');
+ expect(h1._headers['f']).to.include('1');
+ expect(h1._headers['f']).to.include('2');
+
+ expect(h1._headers['g']).to.be.undefined;
+ expect(h1._headers['h']).to.be.undefined;
+ expect(h1._headers['i']).to.be.undefined;
+ expect(h1._headers['j']).to.be.undefined;
+ expect(h1._headers['k']).to.be.undefined;
+ expect(h1._headers['l']).to.be.undefined;
+ expect(h1._headers['m']).to.be.undefined;
+
+ expect(h1._headers['z']).to.be.undefined;
+ });
+
+ it('should wrap headers', function() {
+ var h1 = new Headers({
+ a: '1'
+ });
+
+ var h2 = new Headers(h1);
+ h2.set('b', '1');
+
+ var h3 = new Headers(h2);
+ h3.append('a', '2');
+
+ expect(h1._headers['a']).to.include('1');
+ expect(h1._headers['a']).to.not.include('2');
+
+ expect(h2._headers['a']).to.include('1');
+ expect(h2._headers['a']).to.not.include('2');
+ expect(h2._headers['b']).to.include('1');
+
+ expect(h3._headers['a']).to.include('1');
+ expect(h3._headers['a']).to.include('2');
+ expect(h3._headers['b']).to.include('1');
+ });
+
+ it('should support fetch with Request instance', function() {
+ url = base + '/hello';
+ var req = new Request(url);
+ return fetch(req).then(function(res) {
+ expect(res.url).to.equal(url);
+ expect(res.ok).to.be.true;
+ expect(res.status).to.equal(200);
+ });
+ });
+
+ it('should support wrapping Request instance', function() {
+ url = base + '/hello';
+
+ var form = new FormData();
+ form.append('a', '1');
+
+ var r1 = new Request(url, {
+ method: 'POST'
+ , follow: 1
+ , body: form
+ });
+ var r2 = new Request(r1, {
+ follow: 2
+ });
+
+ expect(r2.url).to.equal(url);
+ expect(r2.method).to.equal('POST');
+ // note that we didn't clone the body
+ expect(r2.body).to.equal(form);
+ expect(r1.follow).to.equal(1);
+ expect(r2.follow).to.equal(2);
+ expect(r1.counter).to.equal(0);
+ expect(r2.counter).to.equal(0);
+ });
+
+ it('should support overwrite Request instance', function() {
+ url = base + '/inspect';
+ var req = new Request(url, {
+ method: 'POST'
+ , headers: {
+ a: '1'
+ }
+ });
+ return fetch(req, {
+ method: 'GET'
+ , headers: {
+ a: '2'
+ }
+ }).then(function(res) {
+ return res.json();
+ }).then(function(body) {
+ expect(body.method).to.equal('GET');
+ expect(body.headers.a).to.equal('2');
+ });
+ });
+
+ it('should support empty options in Response constructor', function() {
+ var body = resumer().queue('a=1').end();
+ body = body.pipe(new stream.PassThrough());
+ var res = new Response(body);
+ return res.text().then(function(result) {
+ expect(result).to.equal('a=1');
+ });
+ });
+
+ it('should support parsing headers in Response constructor', function() {
+ var res = new Response(null, {
+ headers: {
+ a: '1'
+ }
+ });
+ expect(res.headers.get('a')).to.equal('1');
+ });
+
+ it('should support text() method in Response constructor', function() {
+ var res = new Response('a=1');
+ return res.text().then(function(result) {
+ expect(result).to.equal('a=1');
+ });
+ });
+
+ it('should support json() method in Response constructor', function() {
+ var res = new Response('{"a":1}');
+ return res.json().then(function(result) {
+ expect(result.a).to.equal(1);
+ });
+ });
+
+ it('should support buffer() method in Response constructor', function() {
+ var res = new Response('a=1');
+ return res.buffer().then(function(result) {
+ expect(result.toString()).to.equal('a=1');
+ });
+ });
+
+ it('should support clone() method in Response constructor', function() {
+ var body = resumer().queue('a=1').end();
+ body = body.pipe(new stream.PassThrough());
+ var res = new Response(body, {
+ headers: {
+ a: '1'
+ }
+ , url: base
+ , status: 346
+ , statusText: 'production'
+ });
+ var cl = res.clone();
+ expect(cl.headers.get('a')).to.equal('1');
+ expect(cl.url).to.equal(base);
+ expect(cl.status).to.equal(346);
+ expect(cl.statusText).to.equal('production');
+ expect(cl.ok).to.be.false;
+ // clone body shouldn't be the same body
+ expect(cl.body).to.not.equal(body);
+ return cl.text().then(function(result) {
+ expect(result).to.equal('a=1');
+ });
+ });
+
+ it('should support stream as body in Response constructor', function() {
+ var body = resumer().queue('a=1').end();
+ body = body.pipe(new stream.PassThrough());
+ var res = new Response(body);
+ return res.text().then(function(result) {
+ expect(result).to.equal('a=1');
+ });
+ });
+
+ it('should support string as body in Response constructor', function() {
+ var res = new Response('a=1');
+ return res.text().then(function(result) {
+ expect(result).to.equal('a=1');
+ });
+ });
+
+ it('should support buffer as body in Response constructor', function() {
+ var res = new Response(new Buffer('a=1'));
+ return res.text().then(function(result) {
+ expect(result).to.equal('a=1');
+ });
+ });
+
+ it('should default to 200 as status code', function() {
+ var res = new Response(null);
+ expect(res.status).to.equal(200);
+ });
+
+ it('should support parsing headers in Request constructor', function() {
+ url = base;
+ var req = new Request(url, {
+ headers: {
+ a: '1'
+ }
+ });
+ expect(req.url).to.equal(url);
+ expect(req.headers.get('a')).to.equal('1');
+ });
+
+ it('should support text() method in Request constructor', function() {
+ url = base;
+ var req = new Request(url, {
+ body: 'a=1'
+ });
+ expect(req.url).to.equal(url);
+ return req.text().then(function(result) {
+ expect(result).to.equal('a=1');
+ });
+ });
+
+ it('should support json() method in Request constructor', function() {
+ url = base;
+ var req = new Request(url, {
+ body: '{"a":1}'
+ });
+ expect(req.url).to.equal(url);
+ return req.json().then(function(result) {
+ expect(result.a).to.equal(1);
+ });
+ });
+
+ it('should support buffer() method in Request constructor', function() {
+ url = base;
+ var req = new Request(url, {
+ body: 'a=1'
+ });
+ expect(req.url).to.equal(url);
+ return req.buffer().then(function(result) {
+ expect(result.toString()).to.equal('a=1');
+ });
+ });
+
+ it('should support arbitrary url in Request constructor', function() {
+ url = 'anything';
+ var req = new Request(url);
+ expect(req.url).to.equal('anything');
+ });
+
+ it('should support clone() method in Request constructor', function() {
+ url = base;
+ var body = resumer().queue('a=1').end();
+ body = body.pipe(new stream.PassThrough());
+ var agent = new http.Agent();
+ var req = new Request(url, {
+ body: body
+ , method: 'POST'
+ , redirect: 'manual'
+ , headers: {
+ b: '2'
+ }
+ , follow: 3
+ , compress: false
+ , agent: agent
+ });
+ var cl = req.clone();
+ expect(cl.url).to.equal(url);
+ expect(cl.method).to.equal('POST');
+ expect(cl.redirect).to.equal('manual');
+ expect(cl.headers.get('b')).to.equal('2');
+ expect(cl.follow).to.equal(3);
+ expect(cl.compress).to.equal(false);
+ expect(cl.method).to.equal('POST');
+ expect(cl.counter).to.equal(0);
+ expect(cl.agent).to.equal(agent);
+ // clone body shouldn't be the same body
+ expect(cl.body).to.not.equal(body);
+ return fetch.Promise.all([cl.text(), req.text()]).then(function(results) {
+ expect(results[0]).to.equal('a=1');
+ expect(results[1]).to.equal('a=1');
+ });
+ });
+
+ it('should support text(), json() and buffer() method in Body constructor', function() {
+ var body = new Body('a=1');
+ expect(body).to.have.property('text');
+ expect(body).to.have.property('json');
+ expect(body).to.have.property('buffer');
+ });
+
+ it('should create custom FetchError', function funcName() {
+ var systemError = new Error('system');
+ systemError.code = 'ESOMEERROR';
+
+ var err = new FetchError('test message', 'test-error', systemError);
+ expect(err).to.be.an.instanceof(Error);
+ expect(err).to.be.an.instanceof(FetchError);
+ expect(err.name).to.equal('FetchError');
+ expect(err.message).to.equal('test message');
+ expect(err.type).to.equal('test-error');
+ expect(err.code).to.equal('ESOMEERROR');
+ expect(err.errno).to.equal('ESOMEERROR');
+ expect(err.stack).to.include('funcName');
+ expect(err.stack.split('\n')[0]).to.equal(err.name + ': ' + err.message);
+ });
+
+ it('should support https request', function() {
+ this.timeout(5000);
+ url = 'https://github.com/';
+ opts = {
+ method: 'HEAD'
+ };
+ return fetch(url, opts).then(function(res) {
+ expect(res.status).to.equal(200);
+ expect(res.ok).to.be.true;
+ });
+ });
+
+});
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/object-assign/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/object-assign/index.js
new file mode 100644
index 00000000..0930cf88
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/object-assign/index.js
@@ -0,0 +1,90 @@
+/*
+object-assign
+(c) Sindre Sorhus
+@license MIT
+*/
+
+'use strict';
+/* eslint-disable no-unused-vars */
+var getOwnPropertySymbols = Object.getOwnPropertySymbols;
+var hasOwnProperty = Object.prototype.hasOwnProperty;
+var propIsEnumerable = Object.prototype.propertyIsEnumerable;
+
+function toObject(val) {
+ if (val === null || val === undefined) {
+ throw new TypeError('Object.assign cannot be called with null or undefined');
+ }
+
+ return Object(val);
+}
+
+function shouldUseNative() {
+ try {
+ if (!Object.assign) {
+ return false;
+ }
+
+ // Detect buggy property enumeration order in older V8 versions.
+
+ // https://bugs.chromium.org/p/v8/issues/detail?id=4118
+ var test1 = new String('abc'); // eslint-disable-line no-new-wrappers
+ test1[5] = 'de';
+ if (Object.getOwnPropertyNames(test1)[0] === '5') {
+ return false;
+ }
+
+ // https://bugs.chromium.org/p/v8/issues/detail?id=3056
+ var test2 = {};
+ for (var i = 0; i < 10; i++) {
+ test2['_' + String.fromCharCode(i)] = i;
+ }
+ var order2 = Object.getOwnPropertyNames(test2).map(function (n) {
+ return test2[n];
+ });
+ if (order2.join('') !== '0123456789') {
+ return false;
+ }
+
+ // https://bugs.chromium.org/p/v8/issues/detail?id=3056
+ var test3 = {};
+ 'abcdefghijklmnopqrst'.split('').forEach(function (letter) {
+ test3[letter] = letter;
+ });
+ if (Object.keys(Object.assign({}, test3)).join('') !==
+ 'abcdefghijklmnopqrst') {
+ return false;
+ }
+
+ return true;
+ } catch (err) {
+ // We don't expect any of the above to throw, but better to be safe.
+ return false;
+ }
+}
+
+module.exports = shouldUseNative() ? Object.assign : function (target, source) {
+ var from;
+ var to = toObject(target);
+ var symbols;
+
+ for (var s = 1; s < arguments.length; s++) {
+ from = Object(arguments[s]);
+
+ for (var key in from) {
+ if (hasOwnProperty.call(from, key)) {
+ to[key] = from[key];
+ }
+ }
+
+ if (getOwnPropertySymbols) {
+ symbols = getOwnPropertySymbols(from);
+ for (var i = 0; i < symbols.length; i++) {
+ if (propIsEnumerable.call(from, symbols[i])) {
+ to[symbols[i]] = from[symbols[i]];
+ }
+ }
+ }
+ }
+
+ return to;
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/object-assign/license b/goTorrentWebUI/node_modules/react-toastify/node_modules/object-assign/license
new file mode 100644
index 00000000..654d0bfe
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/object-assign/license
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) Sindre Sorhus (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/goTorrentWebUI/node_modules/react-toastify/node_modules/object-assign/package.json b/goTorrentWebUI/node_modules/react-toastify/node_modules/object-assign/package.json
new file mode 100644
index 00000000..94bddc33
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/object-assign/package.json
@@ -0,0 +1,76 @@
+{
+ "_from": "object-assign@^4.1.1",
+ "_id": "object-assign@4.1.1",
+ "_inBundle": false,
+ "_integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=",
+ "_location": "/react-toastify/object-assign",
+ "_phantomChildren": {},
+ "_requested": {
+ "type": "range",
+ "registry": true,
+ "raw": "object-assign@^4.1.1",
+ "name": "object-assign",
+ "escapedName": "object-assign",
+ "rawSpec": "^4.1.1",
+ "saveSpec": null,
+ "fetchSpec": "^4.1.1"
+ },
+ "_requiredBy": [
+ "/react-toastify/fbjs",
+ "/react-toastify/glamor",
+ "/react-toastify/prop-types"
+ ],
+ "_resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
+ "_shasum": "2109adc7965887cfc05cbbd442cac8bfbb360863",
+ "_spec": "object-assign@^4.1.1",
+ "_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI\\node_modules\\react-toastify\\node_modules\\glamor",
+ "author": {
+ "name": "Sindre Sorhus",
+ "email": "sindresorhus@gmail.com",
+ "url": "sindresorhus.com"
+ },
+ "bugs": {
+ "url": "https://github.com/sindresorhus/object-assign/issues"
+ },
+ "bundleDependencies": false,
+ "deprecated": false,
+ "description": "ES2015 `Object.assign()` ponyfill",
+ "devDependencies": {
+ "ava": "^0.16.0",
+ "lodash": "^4.16.4",
+ "matcha": "^0.7.0",
+ "xo": "^0.16.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ },
+ "files": [
+ "index.js"
+ ],
+ "homepage": "https://github.com/sindresorhus/object-assign#readme",
+ "keywords": [
+ "object",
+ "assign",
+ "extend",
+ "properties",
+ "es2015",
+ "ecmascript",
+ "harmony",
+ "ponyfill",
+ "prollyfill",
+ "polyfill",
+ "shim",
+ "browser"
+ ],
+ "license": "MIT",
+ "name": "object-assign",
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/sindresorhus/object-assign.git"
+ },
+ "scripts": {
+ "bench": "matcha bench.js",
+ "test": "xo && ava"
+ },
+ "version": "4.1.1"
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/object-assign/readme.md b/goTorrentWebUI/node_modules/react-toastify/node_modules/object-assign/readme.md
new file mode 100644
index 00000000..1be09d35
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/object-assign/readme.md
@@ -0,0 +1,61 @@
+# object-assign [](https://travis-ci.org/sindresorhus/object-assign)
+
+> ES2015 [`Object.assign()`](http://www.2ality.com/2014/01/object-assign.html) [ponyfill](https://ponyfill.com)
+
+
+## Use the built-in
+
+Node.js 4 and up, as well as every evergreen browser (Chrome, Edge, Firefox, Opera, Safari),
+support `Object.assign()` :tada:. If you target only those environments, then by all
+means, use `Object.assign()` instead of this package.
+
+
+## Install
+
+```
+$ npm install --save object-assign
+```
+
+
+## Usage
+
+```js
+const objectAssign = require('object-assign');
+
+objectAssign({foo: 0}, {bar: 1});
+//=> {foo: 0, bar: 1}
+
+// multiple sources
+objectAssign({foo: 0}, {bar: 1}, {baz: 2});
+//=> {foo: 0, bar: 1, baz: 2}
+
+// overwrites equal keys
+objectAssign({foo: 0}, {foo: 1}, {foo: 2});
+//=> {foo: 2}
+
+// ignores null and undefined sources
+objectAssign({foo: 0}, null, {bar: 1}, undefined);
+//=> {foo: 0, bar: 1}
+```
+
+
+## API
+
+### objectAssign(target, [source, ...])
+
+Assigns enumerable own properties of `source` objects to the `target` object and returns the `target` object. Additional `source` objects will overwrite previous ones.
+
+
+## Resources
+
+- [ES2015 spec - Object.assign](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.assign)
+
+
+## Related
+
+- [deep-assign](https://github.com/sindresorhus/deep-assign) - Recursive `Object.assign()`
+
+
+## License
+
+MIT © [Sindre Sorhus](https://sindresorhus.com)
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/.jshintrc b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/.jshintrc
new file mode 100644
index 00000000..47c256f0
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/.jshintrc
@@ -0,0 +1,5 @@
+{
+ "asi": true,
+ "node": true,
+ "strict": true
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/.npmignore b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/.npmignore
new file mode 100644
index 00000000..ad5be4a6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/.npmignore
@@ -0,0 +1,7 @@
+components
+node_modules
+test
+.gitignore
+.travis.yml
+component.json
+coverage
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/LICENSE b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/LICENSE
new file mode 100644
index 00000000..7a1f7636
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/LICENSE
@@ -0,0 +1,19 @@
+Copyright (c) 2014 Forbes Lindesay
+
+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/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/Readme.md b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/Readme.md
new file mode 100644
index 00000000..9e281a74
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/Readme.md
@@ -0,0 +1,231 @@
+
+# promise
+
+This is a simple implementation of Promises. It is a super set of ES6 Promises designed to have readable, performant code and to provide just the extensions that are absolutely necessary for using promises today.
+
+For detailed tutorials on its use, see www.promisejs.org
+
+**N.B.** This promise exposes internals via underscore (`_`) prefixed properties. If you use these, your code will break with each new release.
+
+[![travis][travis-image]][travis-url]
+[![dep][dep-image]][dep-url]
+[![npm][npm-image]][npm-url]
+[![downloads][downloads-image]][downloads-url]
+
+[travis-image]: https://img.shields.io/travis/then/promise.svg?style=flat
+[travis-url]: https://travis-ci.org/then/promise
+[dep-image]: https://img.shields.io/david/then/promise.svg?style=flat
+[dep-url]: https://david-dm.org/then/promise
+[npm-image]: https://img.shields.io/npm/v/promise.svg?style=flat
+[npm-url]: https://npmjs.org/package/promise
+[downloads-image]: https://img.shields.io/npm/dm/promise.svg?style=flat
+[downloads-url]: https://npmjs.org/package/promise
+
+## Installation
+
+**Server:**
+
+ $ npm install promise
+
+**Client:**
+
+You can use browserify on the client, or use the pre-compiled script that acts as a polyfill.
+
+```html
+
+```
+
+Note that the [es5-shim](https://github.com/es-shims/es5-shim) must be loaded before this library to support browsers pre IE9.
+
+```html
+
+```
+
+## Usage
+
+The example below shows how you can load the promise library (in a way that works on both client and server using node or browserify). It then demonstrates creating a promise from scratch. You simply call `new Promise(fn)`. There is a complete specification for what is returned by this method in [Promises/A+](http://promises-aplus.github.com/promises-spec/).
+
+```javascript
+var Promise = require('promise');
+
+var promise = new Promise(function (resolve, reject) {
+ get('http://www.google.com', function (err, res) {
+ if (err) reject(err);
+ else resolve(res);
+ });
+});
+```
+
+If you need [domains](https://iojs.org/api/domain.html) support, you should instead use:
+
+```js
+var Promise = require('promise/domains');
+```
+
+If you are in an environment that implements `setImmediate` and don't want the optimisations provided by asap, you can use:
+
+```js
+var Promise = require('promise/setimmediate');
+```
+
+If you only want part of the features, e.g. just a pure ES6 polyfill:
+
+```js
+var Promise = require('promise/lib/es6-extensions');
+// or require('promise/domains/es6-extensions');
+// or require('promise/setimmediate/es6-extensions');
+```
+
+## Unhandled Rejections
+
+By default, promises silence any unhandled rejections.
+
+You can enable logging of unhandled ReferenceErrors and TypeErrors via:
+
+```js
+require('promise/lib/rejection-tracking').enable();
+```
+
+Due to the performance cost, you should only do this during development.
+
+You can enable logging of all unhandled rejections if you need to debug an exception you think is being swallowed by promises:
+
+```js
+require('promise/lib/rejection-tracking').enable(
+ {allRejections: true}
+);
+```
+
+Due to the high probability of false positives, I only recommend using this when debugging specific issues that you think may be being swallowed. For the preferred debugging method, see `Promise#done(onFulfilled, onRejected)`.
+
+`rejection-tracking.enable(options)` takes the following options:
+
+ - allRejections (`boolean`) - track all exceptions, not just reference errors and type errors. Note that this has a high probability of resulting in false positives if your code loads data optimisticly
+ - whitelist (`Array`) - this defaults to `[ReferenceError, TypeError]` but you can override it with your own list of error constructors to track.
+ - `onUnhandled(id, error)` and `onHandled(id, error)` - you can use these to provide your own customised display for errors. Note that if possible you should indicate that the error was a false positive if `onHandled` is called. `onHandled` is only called if `onUnhandled` has already been called.
+
+To reduce the chance of false-positives there is a delay of up to 2 seconds before errors are logged. This means that if you attach an error handler within 2 seconds, it won't be logged as a false positive. ReferenceErrors and TypeErrors are only subject to a 100ms delay due to the higher likelihood that the error is due to programmer error.
+
+## API
+
+Before all examples, you will need:
+
+```js
+var Promise = require('promise');
+```
+
+### new Promise(resolver)
+
+This creates and returns a new promise. `resolver` must be a function. The `resolver` function is passed two arguments:
+
+ 1. `resolve` should be called with a single argument. If it is called with a non-promise value then the promise is fulfilled with that value. If it is called with a promise (A) then the returned promise takes on the state of that new promise (A).
+ 2. `reject` should be called with a single argument. The returned promise will be rejected with that argument.
+
+### Static Functions
+
+ These methods are invoked by calling `Promise.methodName`.
+
+#### Promise.resolve(value)
+
+(deprecated aliases: `Promise.from(value)`, `Promise.cast(value)`)
+
+Converts values and foreign promises into Promises/A+ promises. If you pass it a value then it returns a Promise for that value. If you pass it something that is close to a promise (such as a jQuery attempt at a promise) it returns a Promise that takes on the state of `value` (rejected or fulfilled).
+
+#### Promise.reject(value)
+
+Returns a rejected promise with the given value.
+
+#### Promise.all(array)
+
+Returns a promise for an array. If it is called with a single argument that `Array.isArray` then this returns a promise for a copy of that array with any promises replaced by their fulfilled values. e.g.
+
+```js
+Promise.all([Promise.resolve('a'), 'b', Promise.resolve('c')])
+ .then(function (res) {
+ assert(res[0] === 'a')
+ assert(res[1] === 'b')
+ assert(res[2] === 'c')
+ })
+```
+
+#### Promise.denodeify(fn)
+
+_Non Standard_
+
+Takes a function which accepts a node style callback and returns a new function that returns a promise instead.
+
+e.g.
+
+```javascript
+var fs = require('fs')
+
+var read = Promise.denodeify(fs.readFile)
+var write = Promise.denodeify(fs.writeFile)
+
+var p = read('foo.json', 'utf8')
+ .then(function (str) {
+ return write('foo.json', JSON.stringify(JSON.parse(str), null, ' '), 'utf8')
+ })
+```
+
+#### Promise.nodeify(fn)
+
+_Non Standard_
+
+The twin to `denodeify` is useful when you want to export an API that can be used by people who haven't learnt about the brilliance of promises yet.
+
+```javascript
+module.exports = Promise.nodeify(awesomeAPI)
+function awesomeAPI(a, b) {
+ return download(a, b)
+}
+```
+
+If the last argument passed to `module.exports` is a function, then it will be treated like a node.js callback and not parsed on to the child function, otherwise the API will just return a promise.
+
+### Prototype Methods
+
+These methods are invoked on a promise instance by calling `myPromise.methodName`
+
+### Promise#then(onFulfilled, onRejected)
+
+This method follows the [Promises/A+ spec](http://promises-aplus.github.io/promises-spec/). It explains things very clearly so I recommend you read it.
+
+Either `onFulfilled` or `onRejected` will be called and they will not be called more than once. They will be passed a single argument and will always be called asynchronously (in the next turn of the event loop).
+
+If the promise is fulfilled then `onFulfilled` is called. If the promise is rejected then `onRejected` is called.
+
+The call to `.then` also returns a promise. If the handler that is called returns a promise, the promise returned by `.then` takes on the state of that returned promise. If the handler that is called returns a value that is not a promise, the promise returned by `.then` will be fulfilled with that value. If the handler that is called throws an exception then the promise returned by `.then` is rejected with that exception.
+
+#### Promise#catch(onRejected)
+
+Sugar for `Promise#then(null, onRejected)`, to mirror `catch` in synchronous code.
+
+#### Promise#done(onFulfilled, onRejected)
+
+_Non Standard_
+
+The same semantics as `.then` except that it does not return a promise and any exceptions are re-thrown so that they can be logged (crashing the application in non-browser environments)
+
+#### Promise#nodeify(callback)
+
+_Non Standard_
+
+If `callback` is `null` or `undefined` it just returns `this`. If `callback` is a function it is called with rejection reason as the first argument and result as the second argument (as per the node.js convention).
+
+This lets you write API functions that look like:
+
+```javascript
+function awesomeAPI(foo, bar, callback) {
+ return internalAPI(foo, bar)
+ .then(parseResult)
+ .then(null, retryErrors)
+ .nodeify(callback)
+}
+```
+
+People who use typical node.js style callbacks will be able to just pass a callback and get the expected behavior. The enlightened people can not pass a callback and will get awesome promises.
+
+## License
+
+ MIT
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/build.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/build.js
new file mode 100644
index 00000000..1e028e9a
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/build.js
@@ -0,0 +1,69 @@
+'use strict';
+
+var fs = require('fs');
+var rimraf = require('rimraf');
+var acorn = require('acorn');
+var walk = require('acorn/dist/walk');
+
+var ids = [];
+var names = {};
+
+function getIdFor(name) {
+ if (name in names) return names[name];
+ var id;
+ do {
+ id = '_' + Math.floor(Math.random() * 100);
+ } while (ids.indexOf(id) !== -1)
+ ids.push(id);
+ names[name] = id;
+ return id;
+}
+
+function fixup(src) {
+ var ast = acorn.parse(src);
+ src = src.split('');
+ walk.simple(ast, {
+ MemberExpression: function (node) {
+ if (node.computed) return;
+ if (node.property.type !== 'Identifier') return;
+ if (node.property.name[0] !== '_') return;
+ replace(node.property, getIdFor(node.property.name));
+ }
+ });
+ function source(node) {
+ return src.slice(node.start, node.end).join('');
+ }
+ function replace(node, str) {
+ for (var i = node.start; i < node.end; i++) {
+ src[i] = '';
+ }
+ src[node.start] = str;
+ }
+ return src.join('');
+}
+rimraf.sync(__dirname + '/lib/');
+fs.mkdirSync(__dirname + '/lib/');
+fs.readdirSync(__dirname + '/src').forEach(function (filename) {
+ var src = fs.readFileSync(__dirname + '/src/' + filename, 'utf8');
+ var out = fixup(src);
+ fs.writeFileSync(__dirname + '/lib/' + filename, out);
+});
+
+rimraf.sync(__dirname + '/domains/');
+fs.mkdirSync(__dirname + '/domains/');
+fs.readdirSync(__dirname + '/src').forEach(function (filename) {
+ var src = fs.readFileSync(__dirname + '/src/' + filename, 'utf8');
+ var out = fixup(src);
+ out = out.replace(/require\(\'asap\/raw\'\)/g, "require('asap')");
+ fs.writeFileSync(__dirname + '/domains/' + filename, out);
+});
+
+rimraf.sync(__dirname + '/setimmediate/');
+fs.mkdirSync(__dirname + '/setimmediate/');
+fs.readdirSync(__dirname + '/src').forEach(function (filename) {
+ var src = fs.readFileSync(__dirname + '/src/' + filename, 'utf8');
+ var out = fixup(src);
+ out = out.replace(/var asap \= require\(\'([a-z\/]+)\'\);/g, '');
+ out = out.replace(/asap/g, "setImmediate");
+ fs.writeFileSync(__dirname + '/setimmediate/' + filename, out);
+});
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/core.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/core.js
new file mode 100644
index 00000000..5f332a20
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/core.js
@@ -0,0 +1,5 @@
+'use strict';
+
+module.exports = require('./lib/core.js');
+
+console.error('require("promise/core") is deprecated, use require("promise/lib/core") instead.');
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/domains/core.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/domains/core.js
new file mode 100644
index 00000000..aea44148
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/domains/core.js
@@ -0,0 +1,213 @@
+'use strict';
+
+var asap = require('asap');
+
+function noop() {}
+
+// States:
+//
+// 0 - pending
+// 1 - fulfilled with _value
+// 2 - rejected with _value
+// 3 - adopted the state of another promise, _value
+//
+// once the state is no longer pending (0) it is immutable
+
+// All `_` prefixed properties will be reduced to `_{random number}`
+// at build time to obfuscate them and discourage their use.
+// We don't use symbols or Object.defineProperty to fully hide them
+// because the performance isn't good enough.
+
+
+// to avoid using try/catch inside critical functions, we
+// extract them to here.
+var LAST_ERROR = null;
+var IS_ERROR = {};
+function getThen(obj) {
+ try {
+ return obj.then;
+ } catch (ex) {
+ LAST_ERROR = ex;
+ return IS_ERROR;
+ }
+}
+
+function tryCallOne(fn, a) {
+ try {
+ return fn(a);
+ } catch (ex) {
+ LAST_ERROR = ex;
+ return IS_ERROR;
+ }
+}
+function tryCallTwo(fn, a, b) {
+ try {
+ fn(a, b);
+ } catch (ex) {
+ LAST_ERROR = ex;
+ return IS_ERROR;
+ }
+}
+
+module.exports = Promise;
+
+function Promise(fn) {
+ if (typeof this !== 'object') {
+ throw new TypeError('Promises must be constructed via new');
+ }
+ if (typeof fn !== 'function') {
+ throw new TypeError('Promise constructor\'s argument is not a function');
+ }
+ this._40 = 0;
+ this._65 = 0;
+ this._55 = null;
+ this._72 = null;
+ if (fn === noop) return;
+ doResolve(fn, this);
+}
+Promise._37 = null;
+Promise._87 = null;
+Promise._61 = noop;
+
+Promise.prototype.then = function(onFulfilled, onRejected) {
+ if (this.constructor !== Promise) {
+ return safeThen(this, onFulfilled, onRejected);
+ }
+ var res = new Promise(noop);
+ handle(this, new Handler(onFulfilled, onRejected, res));
+ return res;
+};
+
+function safeThen(self, onFulfilled, onRejected) {
+ return new self.constructor(function (resolve, reject) {
+ var res = new Promise(noop);
+ res.then(resolve, reject);
+ handle(self, new Handler(onFulfilled, onRejected, res));
+ });
+}
+function handle(self, deferred) {
+ while (self._65 === 3) {
+ self = self._55;
+ }
+ if (Promise._37) {
+ Promise._37(self);
+ }
+ if (self._65 === 0) {
+ if (self._40 === 0) {
+ self._40 = 1;
+ self._72 = deferred;
+ return;
+ }
+ if (self._40 === 1) {
+ self._40 = 2;
+ self._72 = [self._72, deferred];
+ return;
+ }
+ self._72.push(deferred);
+ return;
+ }
+ handleResolved(self, deferred);
+}
+
+function handleResolved(self, deferred) {
+ asap(function() {
+ var cb = self._65 === 1 ? deferred.onFulfilled : deferred.onRejected;
+ if (cb === null) {
+ if (self._65 === 1) {
+ resolve(deferred.promise, self._55);
+ } else {
+ reject(deferred.promise, self._55);
+ }
+ return;
+ }
+ var ret = tryCallOne(cb, self._55);
+ if (ret === IS_ERROR) {
+ reject(deferred.promise, LAST_ERROR);
+ } else {
+ resolve(deferred.promise, ret);
+ }
+ });
+}
+function resolve(self, newValue) {
+ // Promise Resolution Procedure: https://github.com/promises-aplus/promises-spec#the-promise-resolution-procedure
+ if (newValue === self) {
+ return reject(
+ self,
+ new TypeError('A promise cannot be resolved with itself.')
+ );
+ }
+ if (
+ newValue &&
+ (typeof newValue === 'object' || typeof newValue === 'function')
+ ) {
+ var then = getThen(newValue);
+ if (then === IS_ERROR) {
+ return reject(self, LAST_ERROR);
+ }
+ if (
+ then === self.then &&
+ newValue instanceof Promise
+ ) {
+ self._65 = 3;
+ self._55 = newValue;
+ finale(self);
+ return;
+ } else if (typeof then === 'function') {
+ doResolve(then.bind(newValue), self);
+ return;
+ }
+ }
+ self._65 = 1;
+ self._55 = newValue;
+ finale(self);
+}
+
+function reject(self, newValue) {
+ self._65 = 2;
+ self._55 = newValue;
+ if (Promise._87) {
+ Promise._87(self, newValue);
+ }
+ finale(self);
+}
+function finale(self) {
+ if (self._40 === 1) {
+ handle(self, self._72);
+ self._72 = null;
+ }
+ if (self._40 === 2) {
+ for (var i = 0; i < self._72.length; i++) {
+ handle(self, self._72[i]);
+ }
+ self._72 = null;
+ }
+}
+
+function Handler(onFulfilled, onRejected, promise){
+ this.onFulfilled = typeof onFulfilled === 'function' ? onFulfilled : null;
+ this.onRejected = typeof onRejected === 'function' ? onRejected : null;
+ this.promise = promise;
+}
+
+/**
+ * Take a potentially misbehaving resolver function and make sure
+ * onFulfilled and onRejected are only called once.
+ *
+ * Makes no guarantees about asynchrony.
+ */
+function doResolve(fn, promise) {
+ var done = false;
+ var res = tryCallTwo(fn, function (value) {
+ if (done) return;
+ done = true;
+ resolve(promise, value);
+ }, function (reason) {
+ if (done) return;
+ done = true;
+ reject(promise, reason);
+ });
+ if (!done && res === IS_ERROR) {
+ done = true;
+ reject(promise, LAST_ERROR);
+ }
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/domains/done.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/domains/done.js
new file mode 100644
index 00000000..f879317d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/domains/done.js
@@ -0,0 +1,13 @@
+'use strict';
+
+var Promise = require('./core.js');
+
+module.exports = Promise;
+Promise.prototype.done = function (onFulfilled, onRejected) {
+ var self = arguments.length ? this.then.apply(this, arguments) : this;
+ self.then(null, function (err) {
+ setTimeout(function () {
+ throw err;
+ }, 0);
+ });
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/domains/es6-extensions.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/domains/es6-extensions.js
new file mode 100644
index 00000000..8ab26669
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/domains/es6-extensions.js
@@ -0,0 +1,107 @@
+'use strict';
+
+//This file contains the ES6 extensions to the core Promises/A+ API
+
+var Promise = require('./core.js');
+
+module.exports = Promise;
+
+/* Static Functions */
+
+var TRUE = valuePromise(true);
+var FALSE = valuePromise(false);
+var NULL = valuePromise(null);
+var UNDEFINED = valuePromise(undefined);
+var ZERO = valuePromise(0);
+var EMPTYSTRING = valuePromise('');
+
+function valuePromise(value) {
+ var p = new Promise(Promise._61);
+ p._65 = 1;
+ p._55 = value;
+ return p;
+}
+Promise.resolve = function (value) {
+ if (value instanceof Promise) return value;
+
+ if (value === null) return NULL;
+ if (value === undefined) return UNDEFINED;
+ if (value === true) return TRUE;
+ if (value === false) return FALSE;
+ if (value === 0) return ZERO;
+ if (value === '') return EMPTYSTRING;
+
+ if (typeof value === 'object' || typeof value === 'function') {
+ try {
+ var then = value.then;
+ if (typeof then === 'function') {
+ return new Promise(then.bind(value));
+ }
+ } catch (ex) {
+ return new Promise(function (resolve, reject) {
+ reject(ex);
+ });
+ }
+ }
+ return valuePromise(value);
+};
+
+Promise.all = function (arr) {
+ var args = Array.prototype.slice.call(arr);
+
+ return new Promise(function (resolve, reject) {
+ if (args.length === 0) return resolve([]);
+ var remaining = args.length;
+ function res(i, val) {
+ if (val && (typeof val === 'object' || typeof val === 'function')) {
+ if (val instanceof Promise && val.then === Promise.prototype.then) {
+ while (val._65 === 3) {
+ val = val._55;
+ }
+ if (val._65 === 1) return res(i, val._55);
+ if (val._65 === 2) reject(val._55);
+ val.then(function (val) {
+ res(i, val);
+ }, reject);
+ return;
+ } else {
+ var then = val.then;
+ if (typeof then === 'function') {
+ var p = new Promise(then.bind(val));
+ p.then(function (val) {
+ res(i, val);
+ }, reject);
+ return;
+ }
+ }
+ }
+ args[i] = val;
+ if (--remaining === 0) {
+ resolve(args);
+ }
+ }
+ for (var i = 0; i < args.length; i++) {
+ res(i, args[i]);
+ }
+ });
+};
+
+Promise.reject = function (value) {
+ return new Promise(function (resolve, reject) {
+ reject(value);
+ });
+};
+
+Promise.race = function (values) {
+ return new Promise(function (resolve, reject) {
+ values.forEach(function(value){
+ Promise.resolve(value).then(resolve, reject);
+ });
+ });
+};
+
+/* Prototype Methods */
+
+Promise.prototype['catch'] = function (onRejected) {
+ return this.then(null, onRejected);
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/domains/finally.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/domains/finally.js
new file mode 100644
index 00000000..f5ee0b98
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/domains/finally.js
@@ -0,0 +1,16 @@
+'use strict';
+
+var Promise = require('./core.js');
+
+module.exports = Promise;
+Promise.prototype['finally'] = function (f) {
+ return this.then(function (value) {
+ return Promise.resolve(f()).then(function () {
+ return value;
+ });
+ }, function (err) {
+ return Promise.resolve(f()).then(function () {
+ throw err;
+ });
+ });
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/domains/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/domains/index.js
new file mode 100644
index 00000000..6e674f38
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/domains/index.js
@@ -0,0 +1,8 @@
+'use strict';
+
+module.exports = require('./core.js');
+require('./done.js');
+require('./finally.js');
+require('./es6-extensions.js');
+require('./node-extensions.js');
+require('./synchronous.js');
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/domains/node-extensions.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/domains/node-extensions.js
new file mode 100644
index 00000000..157cddc2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/domains/node-extensions.js
@@ -0,0 +1,130 @@
+'use strict';
+
+// This file contains then/promise specific extensions that are only useful
+// for node.js interop
+
+var Promise = require('./core.js');
+var asap = require('asap');
+
+module.exports = Promise;
+
+/* Static Functions */
+
+Promise.denodeify = function (fn, argumentCount) {
+ if (
+ typeof argumentCount === 'number' && argumentCount !== Infinity
+ ) {
+ return denodeifyWithCount(fn, argumentCount);
+ } else {
+ return denodeifyWithoutCount(fn);
+ }
+};
+
+var callbackFn = (
+ 'function (err, res) {' +
+ 'if (err) { rj(err); } else { rs(res); }' +
+ '}'
+);
+function denodeifyWithCount(fn, argumentCount) {
+ var args = [];
+ for (var i = 0; i < argumentCount; i++) {
+ args.push('a' + i);
+ }
+ var body = [
+ 'return function (' + args.join(',') + ') {',
+ 'var self = this;',
+ 'return new Promise(function (rs, rj) {',
+ 'var res = fn.call(',
+ ['self'].concat(args).concat([callbackFn]).join(','),
+ ');',
+ 'if (res &&',
+ '(typeof res === "object" || typeof res === "function") &&',
+ 'typeof res.then === "function"',
+ ') {rs(res);}',
+ '});',
+ '};'
+ ].join('');
+ return Function(['Promise', 'fn'], body)(Promise, fn);
+}
+function denodeifyWithoutCount(fn) {
+ var fnLength = Math.max(fn.length - 1, 3);
+ var args = [];
+ for (var i = 0; i < fnLength; i++) {
+ args.push('a' + i);
+ }
+ var body = [
+ 'return function (' + args.join(',') + ') {',
+ 'var self = this;',
+ 'var args;',
+ 'var argLength = arguments.length;',
+ 'if (arguments.length > ' + fnLength + ') {',
+ 'args = new Array(arguments.length + 1);',
+ 'for (var i = 0; i < arguments.length; i++) {',
+ 'args[i] = arguments[i];',
+ '}',
+ '}',
+ 'return new Promise(function (rs, rj) {',
+ 'var cb = ' + callbackFn + ';',
+ 'var res;',
+ 'switch (argLength) {',
+ args.concat(['extra']).map(function (_, index) {
+ return (
+ 'case ' + (index) + ':' +
+ 'res = fn.call(' + ['self'].concat(args.slice(0, index)).concat('cb').join(',') + ');' +
+ 'break;'
+ );
+ }).join(''),
+ 'default:',
+ 'args[argLength] = cb;',
+ 'res = fn.apply(self, args);',
+ '}',
+
+ 'if (res &&',
+ '(typeof res === "object" || typeof res === "function") &&',
+ 'typeof res.then === "function"',
+ ') {rs(res);}',
+ '});',
+ '};'
+ ].join('');
+
+ return Function(
+ ['Promise', 'fn'],
+ body
+ )(Promise, fn);
+}
+
+Promise.nodeify = function (fn) {
+ return function () {
+ var args = Array.prototype.slice.call(arguments);
+ var callback =
+ typeof args[args.length - 1] === 'function' ? args.pop() : null;
+ var ctx = this;
+ try {
+ return fn.apply(this, arguments).nodeify(callback, ctx);
+ } catch (ex) {
+ if (callback === null || typeof callback == 'undefined') {
+ return new Promise(function (resolve, reject) {
+ reject(ex);
+ });
+ } else {
+ asap(function () {
+ callback.call(ctx, ex);
+ })
+ }
+ }
+ }
+};
+
+Promise.prototype.nodeify = function (callback, ctx) {
+ if (typeof callback != 'function') return this;
+
+ this.then(function (value) {
+ asap(function () {
+ callback.call(ctx, null, value);
+ });
+ }, function (err) {
+ asap(function () {
+ callback.call(ctx, err);
+ });
+ });
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/domains/rejection-tracking.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/domains/rejection-tracking.js
new file mode 100644
index 00000000..10ccce30
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/domains/rejection-tracking.js
@@ -0,0 +1,113 @@
+'use strict';
+
+var Promise = require('./core');
+
+var DEFAULT_WHITELIST = [
+ ReferenceError,
+ TypeError,
+ RangeError
+];
+
+var enabled = false;
+exports.disable = disable;
+function disable() {
+ enabled = false;
+ Promise._37 = null;
+ Promise._87 = null;
+}
+
+exports.enable = enable;
+function enable(options) {
+ options = options || {};
+ if (enabled) disable();
+ enabled = true;
+ var id = 0;
+ var displayId = 0;
+ var rejections = {};
+ Promise._37 = function (promise) {
+ if (
+ promise._65 === 2 && // IS REJECTED
+ rejections[promise._51]
+ ) {
+ if (rejections[promise._51].logged) {
+ onHandled(promise._51);
+ } else {
+ clearTimeout(rejections[promise._51].timeout);
+ }
+ delete rejections[promise._51];
+ }
+ };
+ Promise._87 = function (promise, err) {
+ if (promise._40 === 0) { // not yet handled
+ promise._51 = id++;
+ rejections[promise._51] = {
+ displayId: null,
+ error: err,
+ timeout: setTimeout(
+ onUnhandled.bind(null, promise._51),
+ // For reference errors and type errors, this almost always
+ // means the programmer made a mistake, so log them after just
+ // 100ms
+ // otherwise, wait 2 seconds to see if they get handled
+ matchWhitelist(err, DEFAULT_WHITELIST)
+ ? 100
+ : 2000
+ ),
+ logged: false
+ };
+ }
+ };
+ function onUnhandled(id) {
+ if (
+ options.allRejections ||
+ matchWhitelist(
+ rejections[id].error,
+ options.whitelist || DEFAULT_WHITELIST
+ )
+ ) {
+ rejections[id].displayId = displayId++;
+ if (options.onUnhandled) {
+ rejections[id].logged = true;
+ options.onUnhandled(
+ rejections[id].displayId,
+ rejections[id].error
+ );
+ } else {
+ rejections[id].logged = true;
+ logError(
+ rejections[id].displayId,
+ rejections[id].error
+ );
+ }
+ }
+ }
+ function onHandled(id) {
+ if (rejections[id].logged) {
+ if (options.onHandled) {
+ options.onHandled(rejections[id].displayId, rejections[id].error);
+ } else if (!rejections[id].onUnhandled) {
+ console.warn(
+ 'Promise Rejection Handled (id: ' + rejections[id].displayId + '):'
+ );
+ console.warn(
+ ' This means you can ignore any previous messages of the form "Possible Unhandled Promise Rejection" with id ' +
+ rejections[id].displayId + '.'
+ );
+ }
+ }
+ }
+}
+
+function logError(id, error) {
+ console.warn('Possible Unhandled Promise Rejection (id: ' + id + '):');
+ var errStr = (error && (error.stack || error)) + '';
+ errStr.split('\n').forEach(function (line) {
+ console.warn(' ' + line);
+ });
+}
+
+function matchWhitelist(error, list) {
+ return list.some(function (cls) {
+ return error instanceof cls;
+ });
+}
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/domains/synchronous.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/domains/synchronous.js
new file mode 100644
index 00000000..49399644
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/domains/synchronous.js
@@ -0,0 +1,62 @@
+'use strict';
+
+var Promise = require('./core.js');
+
+module.exports = Promise;
+Promise.enableSynchronous = function () {
+ Promise.prototype.isPending = function() {
+ return this.getState() == 0;
+ };
+
+ Promise.prototype.isFulfilled = function() {
+ return this.getState() == 1;
+ };
+
+ Promise.prototype.isRejected = function() {
+ return this.getState() == 2;
+ };
+
+ Promise.prototype.getValue = function () {
+ if (this._65 === 3) {
+ return this._55.getValue();
+ }
+
+ if (!this.isFulfilled()) {
+ throw new Error('Cannot get a value of an unfulfilled promise.');
+ }
+
+ return this._55;
+ };
+
+ Promise.prototype.getReason = function () {
+ if (this._65 === 3) {
+ return this._55.getReason();
+ }
+
+ if (!this.isRejected()) {
+ throw new Error('Cannot get a rejection reason of a non-rejected promise.');
+ }
+
+ return this._55;
+ };
+
+ Promise.prototype.getState = function () {
+ if (this._65 === 3) {
+ return this._55.getState();
+ }
+ if (this._65 === -1 || this._65 === -2) {
+ return 0;
+ }
+
+ return this._65;
+ };
+};
+
+Promise.disableSynchronous = function() {
+ Promise.prototype.isPending = undefined;
+ Promise.prototype.isFulfilled = undefined;
+ Promise.prototype.isRejected = undefined;
+ Promise.prototype.getValue = undefined;
+ Promise.prototype.getReason = undefined;
+ Promise.prototype.getState = undefined;
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/index.d.ts b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/index.d.ts
new file mode 100644
index 00000000..a199cbc9
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/index.d.ts
@@ -0,0 +1,256 @@
+interface Thenable {
+ /**
+ * Attaches callbacks for the resolution and/or rejection of the ThenPromise.
+ * @param onfulfilled The callback to execute when the ThenPromise is resolved.
+ * @param onrejected The callback to execute when the ThenPromise is rejected.
+ * @returns A ThenPromise for the completion of which ever callback is executed.
+ */
+ then(onfulfilled?: ((value: T) => TResult1 | Thenable) | undefined | null, onrejected?: ((reason: any) => TResult2 | Thenable) | undefined | null): Thenable;
+}
+
+/**
+ * Represents the completion of an asynchronous operation
+ */
+interface ThenPromise {
+ /**
+ * Attaches callbacks for the resolution and/or rejection of the ThenPromise.
+ * @param onfulfilled The callback to execute when the ThenPromise is resolved.
+ * @param onrejected The callback to execute when the ThenPromise is rejected.
+ * @returns A ThenPromise for the completion of which ever callback is executed.
+ */
+ then(onfulfilled?: ((value: T) => TResult1 | Thenable) | undefined | null, onrejected?: ((reason: any) => TResult2 | Thenable) | undefined | null): ThenPromise;
+
+ /**
+ * Attaches a callback for only the rejection of the ThenPromise.
+ * @param onrejected The callback to execute when the ThenPromise is rejected.
+ * @returns A ThenPromise for the completion of the callback.
+ */
+ catch(onrejected?: ((reason: any) => TResult | Thenable) | undefined | null): ThenPromise;
+
+ // Extensions specific to then/promise
+
+ /**
+ * Attaches callbacks for the resolution and/or rejection of the ThenPromise, without returning a new promise.
+ * @param onfulfilled The callback to execute when the ThenPromise is resolved.
+ * @param onrejected The callback to execute when the ThenPromise is rejected.
+ */
+ done(onfulfilled?: ((value: T) => any) | undefined | null, onrejected?: ((reason: any) => any) | undefined | null): void;
+
+
+ /**
+ * Calls a node.js style callback. If none is provided, the promise is returned.
+ */
+ nodeify(callback: void | null): ThenPromise;
+ nodeify(callback: (err: Error, value: T) => void): void;
+}
+
+interface ThenPromiseConstructor {
+ /**
+ * A reference to the prototype.
+ */
+ readonly prototype: ThenPromise;
+
+ /**
+ * Creates a new ThenPromise.
+ * @param executor A callback used to initialize the promise. This callback is passed two arguments:
+ * a resolve callback used resolve the promise with a value or the result of another promise,
+ * and a reject callback used to reject the promise with a provided reason or error.
+ */
+ new (executor: (resolve: (value?: T | Thenable) => void, reject: (reason?: any) => void) => any): ThenPromise;
+
+ /**
+ * Creates a ThenPromise that is resolved with an array of results when all of the provided Promises
+ * resolve, or rejected when any ThenPromise is rejected.
+ * @param values An array of Promises.
+ * @returns A new ThenPromise.
+ */
+ all(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable, T4 | Thenable , T5 | Thenable, T6 | Thenable, T7 | Thenable, T8 | Thenable, T9 | Thenable, T10 | Thenable]): ThenPromise<[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]>;
+
+ /**
+ * Creates a ThenPromise that is resolved with an array of results when all of the provided Promises
+ * resolve, or rejected when any ThenPromise is rejected.
+ * @param values An array of Promises.
+ * @returns A new ThenPromise.
+ */
+ all(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable, T4 | Thenable , T5 | Thenable, T6 | Thenable, T7 | Thenable, T8 | Thenable, T9 | Thenable]): ThenPromise<[T1, T2, T3, T4, T5, T6, T7, T8, T9]>;
+
+ /**
+ * Creates a ThenPromise that is resolved with an array of results when all of the provided Promises
+ * resolve, or rejected when any ThenPromise is rejected.
+ * @param values An array of Promises.
+ * @returns A new ThenPromise.
+ */
+ all(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable, T4 | Thenable , T5 | Thenable, T6 | Thenable, T7 | Thenable, T8 | Thenable]): ThenPromise<[T1, T2, T3, T4, T5, T6, T7, T8]>;
+
+ /**
+ * Creates a ThenPromise that is resolved with an array of results when all of the provided Promises
+ * resolve, or rejected when any ThenPromise is rejected.
+ * @param values An array of Promises.
+ * @returns A new ThenPromise.
+ */
+ all(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable, T4 | Thenable , T5 | Thenable, T6 | Thenable, T7 | Thenable]): ThenPromise<[T1, T2, T3, T4, T5, T6, T7]>;
+
+ /**
+ * Creates a ThenPromise that is resolved with an array of results when all of the provided Promises
+ * resolve, or rejected when any ThenPromise is rejected.
+ * @param values An array of Promises.
+ * @returns A new ThenPromise.
+ */
+ all(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable, T4 | Thenable , T5 | Thenable, T6 | Thenable]): ThenPromise<[T1, T2, T3, T4, T5, T6]>;
+
+ /**
+ * Creates a ThenPromise that is resolved with an array of results when all of the provided Promises
+ * resolve, or rejected when any ThenPromise is rejected.
+ * @param values An array of Promises.
+ * @returns A new ThenPromise.
+ */
+ all(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable, T4 | Thenable , T5 | Thenable]): ThenPromise<[T1, T2, T3, T4, T5]>;
+
+ /**
+ * Creates a ThenPromise that is resolved with an array of results when all of the provided Promises
+ * resolve, or rejected when any ThenPromise is rejected.
+ * @param values An array of Promises.
+ * @returns A new ThenPromise.
+ */
+ all(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable, T4 | Thenable ]): ThenPromise<[T1, T2, T3, T4]>;
+
+ /**
+ * Creates a ThenPromise that is resolved with an array of results when all of the provided Promises
+ * resolve, or rejected when any ThenPromise is rejected.
+ * @param values An array of Promises.
+ * @returns A new ThenPromise.
+ */
+ all(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable]): ThenPromise<[T1, T2, T3]>;
+
+ /**
+ * Creates a ThenPromise that is resolved with an array of results when all of the provided Promises
+ * resolve, or rejected when any ThenPromise is rejected.
+ * @param values An array of Promises.
+ * @returns A new ThenPromise.
+ */
+ all(values: [T1 | Thenable, T2 | Thenable]): ThenPromise<[T1, T2]>;
+
+ /**
+ * Creates a ThenPromise that is resolved with an array of results when all of the provided Promises
+ * resolve, or rejected when any ThenPromise is rejected.
+ * @param values An array of Promises.
+ * @returns A new ThenPromise.
+ */
+ all(values: (T | Thenable)[]): ThenPromise;
+
+ /**
+ * Creates a ThenPromise that is resolved or rejected when any of the provided Promises are resolved
+ * or rejected.
+ * @param values An array of Promises.
+ * @returns A new ThenPromise.
+ */
+ race(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable, T4 | Thenable, T5 | Thenable, T6 | Thenable, T7 | Thenable, T8 | Thenable, T9 | Thenable, T10 | Thenable]): ThenPromise;
+
+ /**
+ * Creates a ThenPromise that is resolved or rejected when any of the provided Promises are resolved
+ * or rejected.
+ * @param values An array of Promises.
+ * @returns A new ThenPromise.
+ */
+ race(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable, T4 | Thenable, T5 | Thenable, T6 | Thenable, T7 | Thenable, T8 | Thenable, T9 | Thenable]): ThenPromise;
+
+ /**
+ * Creates a ThenPromise that is resolved or rejected when any of the provided Promises are resolved
+ * or rejected.
+ * @param values An array of Promises.
+ * @returns A new ThenPromise.
+ */
+ race(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable, T4 | Thenable, T5 | Thenable, T6 | Thenable, T7 | Thenable, T8 | Thenable]): ThenPromise;
+
+ /**
+ * Creates a ThenPromise that is resolved or rejected when any of the provided Promises are resolved
+ * or rejected.
+ * @param values An array of Promises.
+ * @returns A new ThenPromise.
+ */
+ race(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable, T4 | Thenable, T5 | Thenable, T6 | Thenable, T7 | Thenable]): ThenPromise;
+
+ /**
+ * Creates a ThenPromise that is resolved or rejected when any of the provided Promises are resolved
+ * or rejected.
+ * @param values An array of Promises.
+ * @returns A new ThenPromise.
+ */
+ race(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable, T4 | Thenable, T5 | Thenable, T6 | Thenable]): ThenPromise;
+
+ /**
+ * Creates a ThenPromise that is resolved or rejected when any of the provided Promises are resolved
+ * or rejected.
+ * @param values An array of Promises.
+ * @returns A new ThenPromise.
+ */
+ race(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable, T4 | Thenable, T5 | Thenable]): ThenPromise;
+
+ /**
+ * Creates a ThenPromise that is resolved or rejected when any of the provided Promises are resolved
+ * or rejected.
+ * @param values An array of Promises.
+ * @returns A new ThenPromise.
+ */
+ race(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable, T4 | Thenable]): ThenPromise;
+
+ /**
+ * Creates a ThenPromise that is resolved or rejected when any of the provided Promises are resolved
+ * or rejected.
+ * @param values An array of Promises.
+ * @returns A new ThenPromise.
+ */
+ race(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable]): ThenPromise;
+
+ /**
+ * Creates a ThenPromise that is resolved or rejected when any of the provided Promises are resolved
+ * or rejected.
+ * @param values An array of Promises.
+ * @returns A new ThenPromise.
+ */
+ race(values: [T1 | Thenable, T2 | Thenable]): ThenPromise;
+
+ /**
+ * Creates a ThenPromise that is resolved or rejected when any of the provided Promises are resolved
+ * or rejected.
+ * @param values An array of Promises.
+ * @returns A new ThenPromise.
+ */
+ race(values: (T | Thenable)[]): ThenPromise;
+
+ /**
+ * Creates a new rejected promise for the provided reason.
+ * @param reason The reason the promise was rejected.
+ * @returns A new rejected ThenPromise.
+ */
+ reject(reason: any): ThenPromise;
+
+ /**
+ * Creates a new rejected promise for the provided reason.
+ * @param reason The reason the promise was rejected.
+ * @returns A new rejected ThenPromise.
+ */
+ reject(reason: any): ThenPromise;
+
+ /**
+ * Creates a new resolved promise for the provided value.
+ * @param value A promise.
+ * @returns A promise whose internal state matches the provided promise.
+ */
+ resolve(value: T | Thenable): ThenPromise;
+
+ /**
+ * Creates a new resolved promise .
+ * @returns A resolved promise.
+ */
+ resolve(): ThenPromise;
+
+ // Extensions specific to then/promise
+
+ denodeify: (fn: Function) => (...args: any[]) => ThenPromise;
+ nodeify: (fn: Function) => Function;
+}
+
+declare var ThenPromise: ThenPromiseConstructor;
+
+export = ThenPromise;
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/index.js
new file mode 100644
index 00000000..1c38e467
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/index.js
@@ -0,0 +1,3 @@
+'use strict';
+
+module.exports = require('./lib')
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/lib/core.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/lib/core.js
new file mode 100644
index 00000000..aefc987b
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/lib/core.js
@@ -0,0 +1,213 @@
+'use strict';
+
+var asap = require('asap/raw');
+
+function noop() {}
+
+// States:
+//
+// 0 - pending
+// 1 - fulfilled with _value
+// 2 - rejected with _value
+// 3 - adopted the state of another promise, _value
+//
+// once the state is no longer pending (0) it is immutable
+
+// All `_` prefixed properties will be reduced to `_{random number}`
+// at build time to obfuscate them and discourage their use.
+// We don't use symbols or Object.defineProperty to fully hide them
+// because the performance isn't good enough.
+
+
+// to avoid using try/catch inside critical functions, we
+// extract them to here.
+var LAST_ERROR = null;
+var IS_ERROR = {};
+function getThen(obj) {
+ try {
+ return obj.then;
+ } catch (ex) {
+ LAST_ERROR = ex;
+ return IS_ERROR;
+ }
+}
+
+function tryCallOne(fn, a) {
+ try {
+ return fn(a);
+ } catch (ex) {
+ LAST_ERROR = ex;
+ return IS_ERROR;
+ }
+}
+function tryCallTwo(fn, a, b) {
+ try {
+ fn(a, b);
+ } catch (ex) {
+ LAST_ERROR = ex;
+ return IS_ERROR;
+ }
+}
+
+module.exports = Promise;
+
+function Promise(fn) {
+ if (typeof this !== 'object') {
+ throw new TypeError('Promises must be constructed via new');
+ }
+ if (typeof fn !== 'function') {
+ throw new TypeError('Promise constructor\'s argument is not a function');
+ }
+ this._40 = 0;
+ this._65 = 0;
+ this._55 = null;
+ this._72 = null;
+ if (fn === noop) return;
+ doResolve(fn, this);
+}
+Promise._37 = null;
+Promise._87 = null;
+Promise._61 = noop;
+
+Promise.prototype.then = function(onFulfilled, onRejected) {
+ if (this.constructor !== Promise) {
+ return safeThen(this, onFulfilled, onRejected);
+ }
+ var res = new Promise(noop);
+ handle(this, new Handler(onFulfilled, onRejected, res));
+ return res;
+};
+
+function safeThen(self, onFulfilled, onRejected) {
+ return new self.constructor(function (resolve, reject) {
+ var res = new Promise(noop);
+ res.then(resolve, reject);
+ handle(self, new Handler(onFulfilled, onRejected, res));
+ });
+}
+function handle(self, deferred) {
+ while (self._65 === 3) {
+ self = self._55;
+ }
+ if (Promise._37) {
+ Promise._37(self);
+ }
+ if (self._65 === 0) {
+ if (self._40 === 0) {
+ self._40 = 1;
+ self._72 = deferred;
+ return;
+ }
+ if (self._40 === 1) {
+ self._40 = 2;
+ self._72 = [self._72, deferred];
+ return;
+ }
+ self._72.push(deferred);
+ return;
+ }
+ handleResolved(self, deferred);
+}
+
+function handleResolved(self, deferred) {
+ asap(function() {
+ var cb = self._65 === 1 ? deferred.onFulfilled : deferred.onRejected;
+ if (cb === null) {
+ if (self._65 === 1) {
+ resolve(deferred.promise, self._55);
+ } else {
+ reject(deferred.promise, self._55);
+ }
+ return;
+ }
+ var ret = tryCallOne(cb, self._55);
+ if (ret === IS_ERROR) {
+ reject(deferred.promise, LAST_ERROR);
+ } else {
+ resolve(deferred.promise, ret);
+ }
+ });
+}
+function resolve(self, newValue) {
+ // Promise Resolution Procedure: https://github.com/promises-aplus/promises-spec#the-promise-resolution-procedure
+ if (newValue === self) {
+ return reject(
+ self,
+ new TypeError('A promise cannot be resolved with itself.')
+ );
+ }
+ if (
+ newValue &&
+ (typeof newValue === 'object' || typeof newValue === 'function')
+ ) {
+ var then = getThen(newValue);
+ if (then === IS_ERROR) {
+ return reject(self, LAST_ERROR);
+ }
+ if (
+ then === self.then &&
+ newValue instanceof Promise
+ ) {
+ self._65 = 3;
+ self._55 = newValue;
+ finale(self);
+ return;
+ } else if (typeof then === 'function') {
+ doResolve(then.bind(newValue), self);
+ return;
+ }
+ }
+ self._65 = 1;
+ self._55 = newValue;
+ finale(self);
+}
+
+function reject(self, newValue) {
+ self._65 = 2;
+ self._55 = newValue;
+ if (Promise._87) {
+ Promise._87(self, newValue);
+ }
+ finale(self);
+}
+function finale(self) {
+ if (self._40 === 1) {
+ handle(self, self._72);
+ self._72 = null;
+ }
+ if (self._40 === 2) {
+ for (var i = 0; i < self._72.length; i++) {
+ handle(self, self._72[i]);
+ }
+ self._72 = null;
+ }
+}
+
+function Handler(onFulfilled, onRejected, promise){
+ this.onFulfilled = typeof onFulfilled === 'function' ? onFulfilled : null;
+ this.onRejected = typeof onRejected === 'function' ? onRejected : null;
+ this.promise = promise;
+}
+
+/**
+ * Take a potentially misbehaving resolver function and make sure
+ * onFulfilled and onRejected are only called once.
+ *
+ * Makes no guarantees about asynchrony.
+ */
+function doResolve(fn, promise) {
+ var done = false;
+ var res = tryCallTwo(fn, function (value) {
+ if (done) return;
+ done = true;
+ resolve(promise, value);
+ }, function (reason) {
+ if (done) return;
+ done = true;
+ reject(promise, reason);
+ });
+ if (!done && res === IS_ERROR) {
+ done = true;
+ reject(promise, LAST_ERROR);
+ }
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/lib/done.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/lib/done.js
new file mode 100644
index 00000000..f879317d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/lib/done.js
@@ -0,0 +1,13 @@
+'use strict';
+
+var Promise = require('./core.js');
+
+module.exports = Promise;
+Promise.prototype.done = function (onFulfilled, onRejected) {
+ var self = arguments.length ? this.then.apply(this, arguments) : this;
+ self.then(null, function (err) {
+ setTimeout(function () {
+ throw err;
+ }, 0);
+ });
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/lib/es6-extensions.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/lib/es6-extensions.js
new file mode 100644
index 00000000..8ab26669
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/lib/es6-extensions.js
@@ -0,0 +1,107 @@
+'use strict';
+
+//This file contains the ES6 extensions to the core Promises/A+ API
+
+var Promise = require('./core.js');
+
+module.exports = Promise;
+
+/* Static Functions */
+
+var TRUE = valuePromise(true);
+var FALSE = valuePromise(false);
+var NULL = valuePromise(null);
+var UNDEFINED = valuePromise(undefined);
+var ZERO = valuePromise(0);
+var EMPTYSTRING = valuePromise('');
+
+function valuePromise(value) {
+ var p = new Promise(Promise._61);
+ p._65 = 1;
+ p._55 = value;
+ return p;
+}
+Promise.resolve = function (value) {
+ if (value instanceof Promise) return value;
+
+ if (value === null) return NULL;
+ if (value === undefined) return UNDEFINED;
+ if (value === true) return TRUE;
+ if (value === false) return FALSE;
+ if (value === 0) return ZERO;
+ if (value === '') return EMPTYSTRING;
+
+ if (typeof value === 'object' || typeof value === 'function') {
+ try {
+ var then = value.then;
+ if (typeof then === 'function') {
+ return new Promise(then.bind(value));
+ }
+ } catch (ex) {
+ return new Promise(function (resolve, reject) {
+ reject(ex);
+ });
+ }
+ }
+ return valuePromise(value);
+};
+
+Promise.all = function (arr) {
+ var args = Array.prototype.slice.call(arr);
+
+ return new Promise(function (resolve, reject) {
+ if (args.length === 0) return resolve([]);
+ var remaining = args.length;
+ function res(i, val) {
+ if (val && (typeof val === 'object' || typeof val === 'function')) {
+ if (val instanceof Promise && val.then === Promise.prototype.then) {
+ while (val._65 === 3) {
+ val = val._55;
+ }
+ if (val._65 === 1) return res(i, val._55);
+ if (val._65 === 2) reject(val._55);
+ val.then(function (val) {
+ res(i, val);
+ }, reject);
+ return;
+ } else {
+ var then = val.then;
+ if (typeof then === 'function') {
+ var p = new Promise(then.bind(val));
+ p.then(function (val) {
+ res(i, val);
+ }, reject);
+ return;
+ }
+ }
+ }
+ args[i] = val;
+ if (--remaining === 0) {
+ resolve(args);
+ }
+ }
+ for (var i = 0; i < args.length; i++) {
+ res(i, args[i]);
+ }
+ });
+};
+
+Promise.reject = function (value) {
+ return new Promise(function (resolve, reject) {
+ reject(value);
+ });
+};
+
+Promise.race = function (values) {
+ return new Promise(function (resolve, reject) {
+ values.forEach(function(value){
+ Promise.resolve(value).then(resolve, reject);
+ });
+ });
+};
+
+/* Prototype Methods */
+
+Promise.prototype['catch'] = function (onRejected) {
+ return this.then(null, onRejected);
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/lib/finally.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/lib/finally.js
new file mode 100644
index 00000000..f5ee0b98
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/lib/finally.js
@@ -0,0 +1,16 @@
+'use strict';
+
+var Promise = require('./core.js');
+
+module.exports = Promise;
+Promise.prototype['finally'] = function (f) {
+ return this.then(function (value) {
+ return Promise.resolve(f()).then(function () {
+ return value;
+ });
+ }, function (err) {
+ return Promise.resolve(f()).then(function () {
+ throw err;
+ });
+ });
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/lib/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/lib/index.js
new file mode 100644
index 00000000..6e674f38
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/lib/index.js
@@ -0,0 +1,8 @@
+'use strict';
+
+module.exports = require('./core.js');
+require('./done.js');
+require('./finally.js');
+require('./es6-extensions.js');
+require('./node-extensions.js');
+require('./synchronous.js');
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/lib/node-extensions.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/lib/node-extensions.js
new file mode 100644
index 00000000..157cddc2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/lib/node-extensions.js
@@ -0,0 +1,130 @@
+'use strict';
+
+// This file contains then/promise specific extensions that are only useful
+// for node.js interop
+
+var Promise = require('./core.js');
+var asap = require('asap');
+
+module.exports = Promise;
+
+/* Static Functions */
+
+Promise.denodeify = function (fn, argumentCount) {
+ if (
+ typeof argumentCount === 'number' && argumentCount !== Infinity
+ ) {
+ return denodeifyWithCount(fn, argumentCount);
+ } else {
+ return denodeifyWithoutCount(fn);
+ }
+};
+
+var callbackFn = (
+ 'function (err, res) {' +
+ 'if (err) { rj(err); } else { rs(res); }' +
+ '}'
+);
+function denodeifyWithCount(fn, argumentCount) {
+ var args = [];
+ for (var i = 0; i < argumentCount; i++) {
+ args.push('a' + i);
+ }
+ var body = [
+ 'return function (' + args.join(',') + ') {',
+ 'var self = this;',
+ 'return new Promise(function (rs, rj) {',
+ 'var res = fn.call(',
+ ['self'].concat(args).concat([callbackFn]).join(','),
+ ');',
+ 'if (res &&',
+ '(typeof res === "object" || typeof res === "function") &&',
+ 'typeof res.then === "function"',
+ ') {rs(res);}',
+ '});',
+ '};'
+ ].join('');
+ return Function(['Promise', 'fn'], body)(Promise, fn);
+}
+function denodeifyWithoutCount(fn) {
+ var fnLength = Math.max(fn.length - 1, 3);
+ var args = [];
+ for (var i = 0; i < fnLength; i++) {
+ args.push('a' + i);
+ }
+ var body = [
+ 'return function (' + args.join(',') + ') {',
+ 'var self = this;',
+ 'var args;',
+ 'var argLength = arguments.length;',
+ 'if (arguments.length > ' + fnLength + ') {',
+ 'args = new Array(arguments.length + 1);',
+ 'for (var i = 0; i < arguments.length; i++) {',
+ 'args[i] = arguments[i];',
+ '}',
+ '}',
+ 'return new Promise(function (rs, rj) {',
+ 'var cb = ' + callbackFn + ';',
+ 'var res;',
+ 'switch (argLength) {',
+ args.concat(['extra']).map(function (_, index) {
+ return (
+ 'case ' + (index) + ':' +
+ 'res = fn.call(' + ['self'].concat(args.slice(0, index)).concat('cb').join(',') + ');' +
+ 'break;'
+ );
+ }).join(''),
+ 'default:',
+ 'args[argLength] = cb;',
+ 'res = fn.apply(self, args);',
+ '}',
+
+ 'if (res &&',
+ '(typeof res === "object" || typeof res === "function") &&',
+ 'typeof res.then === "function"',
+ ') {rs(res);}',
+ '});',
+ '};'
+ ].join('');
+
+ return Function(
+ ['Promise', 'fn'],
+ body
+ )(Promise, fn);
+}
+
+Promise.nodeify = function (fn) {
+ return function () {
+ var args = Array.prototype.slice.call(arguments);
+ var callback =
+ typeof args[args.length - 1] === 'function' ? args.pop() : null;
+ var ctx = this;
+ try {
+ return fn.apply(this, arguments).nodeify(callback, ctx);
+ } catch (ex) {
+ if (callback === null || typeof callback == 'undefined') {
+ return new Promise(function (resolve, reject) {
+ reject(ex);
+ });
+ } else {
+ asap(function () {
+ callback.call(ctx, ex);
+ })
+ }
+ }
+ }
+};
+
+Promise.prototype.nodeify = function (callback, ctx) {
+ if (typeof callback != 'function') return this;
+
+ this.then(function (value) {
+ asap(function () {
+ callback.call(ctx, null, value);
+ });
+ }, function (err) {
+ asap(function () {
+ callback.call(ctx, err);
+ });
+ });
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/lib/rejection-tracking.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/lib/rejection-tracking.js
new file mode 100644
index 00000000..10ccce30
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/lib/rejection-tracking.js
@@ -0,0 +1,113 @@
+'use strict';
+
+var Promise = require('./core');
+
+var DEFAULT_WHITELIST = [
+ ReferenceError,
+ TypeError,
+ RangeError
+];
+
+var enabled = false;
+exports.disable = disable;
+function disable() {
+ enabled = false;
+ Promise._37 = null;
+ Promise._87 = null;
+}
+
+exports.enable = enable;
+function enable(options) {
+ options = options || {};
+ if (enabled) disable();
+ enabled = true;
+ var id = 0;
+ var displayId = 0;
+ var rejections = {};
+ Promise._37 = function (promise) {
+ if (
+ promise._65 === 2 && // IS REJECTED
+ rejections[promise._51]
+ ) {
+ if (rejections[promise._51].logged) {
+ onHandled(promise._51);
+ } else {
+ clearTimeout(rejections[promise._51].timeout);
+ }
+ delete rejections[promise._51];
+ }
+ };
+ Promise._87 = function (promise, err) {
+ if (promise._40 === 0) { // not yet handled
+ promise._51 = id++;
+ rejections[promise._51] = {
+ displayId: null,
+ error: err,
+ timeout: setTimeout(
+ onUnhandled.bind(null, promise._51),
+ // For reference errors and type errors, this almost always
+ // means the programmer made a mistake, so log them after just
+ // 100ms
+ // otherwise, wait 2 seconds to see if they get handled
+ matchWhitelist(err, DEFAULT_WHITELIST)
+ ? 100
+ : 2000
+ ),
+ logged: false
+ };
+ }
+ };
+ function onUnhandled(id) {
+ if (
+ options.allRejections ||
+ matchWhitelist(
+ rejections[id].error,
+ options.whitelist || DEFAULT_WHITELIST
+ )
+ ) {
+ rejections[id].displayId = displayId++;
+ if (options.onUnhandled) {
+ rejections[id].logged = true;
+ options.onUnhandled(
+ rejections[id].displayId,
+ rejections[id].error
+ );
+ } else {
+ rejections[id].logged = true;
+ logError(
+ rejections[id].displayId,
+ rejections[id].error
+ );
+ }
+ }
+ }
+ function onHandled(id) {
+ if (rejections[id].logged) {
+ if (options.onHandled) {
+ options.onHandled(rejections[id].displayId, rejections[id].error);
+ } else if (!rejections[id].onUnhandled) {
+ console.warn(
+ 'Promise Rejection Handled (id: ' + rejections[id].displayId + '):'
+ );
+ console.warn(
+ ' This means you can ignore any previous messages of the form "Possible Unhandled Promise Rejection" with id ' +
+ rejections[id].displayId + '.'
+ );
+ }
+ }
+ }
+}
+
+function logError(id, error) {
+ console.warn('Possible Unhandled Promise Rejection (id: ' + id + '):');
+ var errStr = (error && (error.stack || error)) + '';
+ errStr.split('\n').forEach(function (line) {
+ console.warn(' ' + line);
+ });
+}
+
+function matchWhitelist(error, list) {
+ return list.some(function (cls) {
+ return error instanceof cls;
+ });
+}
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/lib/synchronous.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/lib/synchronous.js
new file mode 100644
index 00000000..49399644
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/lib/synchronous.js
@@ -0,0 +1,62 @@
+'use strict';
+
+var Promise = require('./core.js');
+
+module.exports = Promise;
+Promise.enableSynchronous = function () {
+ Promise.prototype.isPending = function() {
+ return this.getState() == 0;
+ };
+
+ Promise.prototype.isFulfilled = function() {
+ return this.getState() == 1;
+ };
+
+ Promise.prototype.isRejected = function() {
+ return this.getState() == 2;
+ };
+
+ Promise.prototype.getValue = function () {
+ if (this._65 === 3) {
+ return this._55.getValue();
+ }
+
+ if (!this.isFulfilled()) {
+ throw new Error('Cannot get a value of an unfulfilled promise.');
+ }
+
+ return this._55;
+ };
+
+ Promise.prototype.getReason = function () {
+ if (this._65 === 3) {
+ return this._55.getReason();
+ }
+
+ if (!this.isRejected()) {
+ throw new Error('Cannot get a rejection reason of a non-rejected promise.');
+ }
+
+ return this._55;
+ };
+
+ Promise.prototype.getState = function () {
+ if (this._65 === 3) {
+ return this._55.getState();
+ }
+ if (this._65 === -1 || this._65 === -2) {
+ return 0;
+ }
+
+ return this._65;
+ };
+};
+
+Promise.disableSynchronous = function() {
+ Promise.prototype.isPending = undefined;
+ Promise.prototype.isFulfilled = undefined;
+ Promise.prototype.isRejected = undefined;
+ Promise.prototype.getValue = undefined;
+ Promise.prototype.getReason = undefined;
+ Promise.prototype.getState = undefined;
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/package.json b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/package.json
new file mode 100644
index 00000000..f52615e1
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/package.json
@@ -0,0 +1,66 @@
+{
+ "_from": "promise@^7.1.1",
+ "_id": "promise@7.3.1",
+ "_inBundle": false,
+ "_integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==",
+ "_location": "/react-toastify/promise",
+ "_phantomChildren": {},
+ "_requested": {
+ "type": "range",
+ "registry": true,
+ "raw": "promise@^7.1.1",
+ "name": "promise",
+ "escapedName": "promise",
+ "rawSpec": "^7.1.1",
+ "saveSpec": null,
+ "fetchSpec": "^7.1.1"
+ },
+ "_requiredBy": [
+ "/react-toastify/fbjs"
+ ],
+ "_resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz",
+ "_shasum": "064b72602b18f90f29192b8b1bc418ffd1ebd3bf",
+ "_spec": "promise@^7.1.1",
+ "_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI\\node_modules\\react-toastify\\node_modules\\fbjs",
+ "author": {
+ "name": "ForbesLindesay"
+ },
+ "bugs": {
+ "url": "https://github.com/then/promise/issues"
+ },
+ "bundleDependencies": false,
+ "dependencies": {
+ "asap": "~2.0.3"
+ },
+ "deprecated": false,
+ "description": "Bare bones Promises/A+ implementation",
+ "devDependencies": {
+ "acorn": "^1.0.1",
+ "better-assert": "*",
+ "istanbul": "^0.3.13",
+ "mocha": "*",
+ "promises-aplus-tests": "*",
+ "rimraf": "^2.3.2"
+ },
+ "homepage": "https://github.com/then/promise#readme",
+ "license": "MIT",
+ "main": "index.js",
+ "name": "promise",
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/then/promise.git"
+ },
+ "scripts": {
+ "coverage": "istanbul cover node_modules/mocha/bin/_mocha -- --bail --timeout 200 --slow 99999 -R dot",
+ "prepublish": "node build",
+ "pretest": "node build",
+ "pretest-extensions": "node build",
+ "pretest-memory-leak": "node build",
+ "pretest-resolve": "node build",
+ "test": "mocha --bail --timeout 200 --slow 99999 -R dot && npm run test-memory-leak",
+ "test-extensions": "mocha test/extensions-tests.js --timeout 200 --slow 999999",
+ "test-memory-leak": "node --expose-gc test/memory-leak.js",
+ "test-resolve": "mocha test/resolver-tests.js --timeout 200 --slow 999999"
+ },
+ "version": "7.3.1"
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/polyfill-done.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/polyfill-done.js
new file mode 100644
index 00000000..e50b4c0e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/polyfill-done.js
@@ -0,0 +1,12 @@
+// should work in any browser without browserify
+
+if (typeof Promise.prototype.done !== 'function') {
+ Promise.prototype.done = function (onFulfilled, onRejected) {
+ var self = arguments.length ? this.then.apply(this, arguments) : this
+ self.then(null, function (err) {
+ setTimeout(function () {
+ throw err
+ }, 0)
+ })
+ }
+}
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/polyfill.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/polyfill.js
new file mode 100644
index 00000000..db099f8e
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/polyfill.js
@@ -0,0 +1,10 @@
+// not "use strict" so we can declare global "Promise"
+
+var asap = require('asap');
+
+if (typeof Promise === 'undefined') {
+ Promise = require('./lib/core.js')
+ require('./lib/es6-extensions.js')
+}
+
+require('./polyfill-done.js');
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/setimmediate/core.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/setimmediate/core.js
new file mode 100644
index 00000000..a84fb3da
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/setimmediate/core.js
@@ -0,0 +1,213 @@
+'use strict';
+
+
+
+function noop() {}
+
+// States:
+//
+// 0 - pending
+// 1 - fulfilled with _value
+// 2 - rejected with _value
+// 3 - adopted the state of another promise, _value
+//
+// once the state is no longer pending (0) it is immutable
+
+// All `_` prefixed properties will be reduced to `_{random number}`
+// at build time to obfuscate them and discourage their use.
+// We don't use symbols or Object.defineProperty to fully hide them
+// because the performance isn't good enough.
+
+
+// to avoid using try/catch inside critical functions, we
+// extract them to here.
+var LAST_ERROR = null;
+var IS_ERROR = {};
+function getThen(obj) {
+ try {
+ return obj.then;
+ } catch (ex) {
+ LAST_ERROR = ex;
+ return IS_ERROR;
+ }
+}
+
+function tryCallOne(fn, a) {
+ try {
+ return fn(a);
+ } catch (ex) {
+ LAST_ERROR = ex;
+ return IS_ERROR;
+ }
+}
+function tryCallTwo(fn, a, b) {
+ try {
+ fn(a, b);
+ } catch (ex) {
+ LAST_ERROR = ex;
+ return IS_ERROR;
+ }
+}
+
+module.exports = Promise;
+
+function Promise(fn) {
+ if (typeof this !== 'object') {
+ throw new TypeError('Promises must be constructed via new');
+ }
+ if (typeof fn !== 'function') {
+ throw new TypeError('Promise constructor\'s argument is not a function');
+ }
+ this._40 = 0;
+ this._65 = 0;
+ this._55 = null;
+ this._72 = null;
+ if (fn === noop) return;
+ doResolve(fn, this);
+}
+Promise._37 = null;
+Promise._87 = null;
+Promise._61 = noop;
+
+Promise.prototype.then = function(onFulfilled, onRejected) {
+ if (this.constructor !== Promise) {
+ return safeThen(this, onFulfilled, onRejected);
+ }
+ var res = new Promise(noop);
+ handle(this, new Handler(onFulfilled, onRejected, res));
+ return res;
+};
+
+function safeThen(self, onFulfilled, onRejected) {
+ return new self.constructor(function (resolve, reject) {
+ var res = new Promise(noop);
+ res.then(resolve, reject);
+ handle(self, new Handler(onFulfilled, onRejected, res));
+ });
+}
+function handle(self, deferred) {
+ while (self._65 === 3) {
+ self = self._55;
+ }
+ if (Promise._37) {
+ Promise._37(self);
+ }
+ if (self._65 === 0) {
+ if (self._40 === 0) {
+ self._40 = 1;
+ self._72 = deferred;
+ return;
+ }
+ if (self._40 === 1) {
+ self._40 = 2;
+ self._72 = [self._72, deferred];
+ return;
+ }
+ self._72.push(deferred);
+ return;
+ }
+ handleResolved(self, deferred);
+}
+
+function handleResolved(self, deferred) {
+ setImmediate(function() {
+ var cb = self._65 === 1 ? deferred.onFulfilled : deferred.onRejected;
+ if (cb === null) {
+ if (self._65 === 1) {
+ resolve(deferred.promise, self._55);
+ } else {
+ reject(deferred.promise, self._55);
+ }
+ return;
+ }
+ var ret = tryCallOne(cb, self._55);
+ if (ret === IS_ERROR) {
+ reject(deferred.promise, LAST_ERROR);
+ } else {
+ resolve(deferred.promise, ret);
+ }
+ });
+}
+function resolve(self, newValue) {
+ // Promise Resolution Procedure: https://github.com/promises-aplus/promises-spec#the-promise-resolution-procedure
+ if (newValue === self) {
+ return reject(
+ self,
+ new TypeError('A promise cannot be resolved with itself.')
+ );
+ }
+ if (
+ newValue &&
+ (typeof newValue === 'object' || typeof newValue === 'function')
+ ) {
+ var then = getThen(newValue);
+ if (then === IS_ERROR) {
+ return reject(self, LAST_ERROR);
+ }
+ if (
+ then === self.then &&
+ newValue instanceof Promise
+ ) {
+ self._65 = 3;
+ self._55 = newValue;
+ finale(self);
+ return;
+ } else if (typeof then === 'function') {
+ doResolve(then.bind(newValue), self);
+ return;
+ }
+ }
+ self._65 = 1;
+ self._55 = newValue;
+ finale(self);
+}
+
+function reject(self, newValue) {
+ self._65 = 2;
+ self._55 = newValue;
+ if (Promise._87) {
+ Promise._87(self, newValue);
+ }
+ finale(self);
+}
+function finale(self) {
+ if (self._40 === 1) {
+ handle(self, self._72);
+ self._72 = null;
+ }
+ if (self._40 === 2) {
+ for (var i = 0; i < self._72.length; i++) {
+ handle(self, self._72[i]);
+ }
+ self._72 = null;
+ }
+}
+
+function Handler(onFulfilled, onRejected, promise){
+ this.onFulfilled = typeof onFulfilled === 'function' ? onFulfilled : null;
+ this.onRejected = typeof onRejected === 'function' ? onRejected : null;
+ this.promise = promise;
+}
+
+/**
+ * Take a potentially misbehaving resolver function and make sure
+ * onFulfilled and onRejected are only called once.
+ *
+ * Makes no guarantees about asynchrony.
+ */
+function doResolve(fn, promise) {
+ var done = false;
+ var res = tryCallTwo(fn, function (value) {
+ if (done) return;
+ done = true;
+ resolve(promise, value);
+ }, function (reason) {
+ if (done) return;
+ done = true;
+ reject(promise, reason);
+ });
+ if (!done && res === IS_ERROR) {
+ done = true;
+ reject(promise, LAST_ERROR);
+ }
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/setimmediate/done.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/setimmediate/done.js
new file mode 100644
index 00000000..f879317d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/setimmediate/done.js
@@ -0,0 +1,13 @@
+'use strict';
+
+var Promise = require('./core.js');
+
+module.exports = Promise;
+Promise.prototype.done = function (onFulfilled, onRejected) {
+ var self = arguments.length ? this.then.apply(this, arguments) : this;
+ self.then(null, function (err) {
+ setTimeout(function () {
+ throw err;
+ }, 0);
+ });
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/setimmediate/es6-extensions.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/setimmediate/es6-extensions.js
new file mode 100644
index 00000000..8ab26669
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/setimmediate/es6-extensions.js
@@ -0,0 +1,107 @@
+'use strict';
+
+//This file contains the ES6 extensions to the core Promises/A+ API
+
+var Promise = require('./core.js');
+
+module.exports = Promise;
+
+/* Static Functions */
+
+var TRUE = valuePromise(true);
+var FALSE = valuePromise(false);
+var NULL = valuePromise(null);
+var UNDEFINED = valuePromise(undefined);
+var ZERO = valuePromise(0);
+var EMPTYSTRING = valuePromise('');
+
+function valuePromise(value) {
+ var p = new Promise(Promise._61);
+ p._65 = 1;
+ p._55 = value;
+ return p;
+}
+Promise.resolve = function (value) {
+ if (value instanceof Promise) return value;
+
+ if (value === null) return NULL;
+ if (value === undefined) return UNDEFINED;
+ if (value === true) return TRUE;
+ if (value === false) return FALSE;
+ if (value === 0) return ZERO;
+ if (value === '') return EMPTYSTRING;
+
+ if (typeof value === 'object' || typeof value === 'function') {
+ try {
+ var then = value.then;
+ if (typeof then === 'function') {
+ return new Promise(then.bind(value));
+ }
+ } catch (ex) {
+ return new Promise(function (resolve, reject) {
+ reject(ex);
+ });
+ }
+ }
+ return valuePromise(value);
+};
+
+Promise.all = function (arr) {
+ var args = Array.prototype.slice.call(arr);
+
+ return new Promise(function (resolve, reject) {
+ if (args.length === 0) return resolve([]);
+ var remaining = args.length;
+ function res(i, val) {
+ if (val && (typeof val === 'object' || typeof val === 'function')) {
+ if (val instanceof Promise && val.then === Promise.prototype.then) {
+ while (val._65 === 3) {
+ val = val._55;
+ }
+ if (val._65 === 1) return res(i, val._55);
+ if (val._65 === 2) reject(val._55);
+ val.then(function (val) {
+ res(i, val);
+ }, reject);
+ return;
+ } else {
+ var then = val.then;
+ if (typeof then === 'function') {
+ var p = new Promise(then.bind(val));
+ p.then(function (val) {
+ res(i, val);
+ }, reject);
+ return;
+ }
+ }
+ }
+ args[i] = val;
+ if (--remaining === 0) {
+ resolve(args);
+ }
+ }
+ for (var i = 0; i < args.length; i++) {
+ res(i, args[i]);
+ }
+ });
+};
+
+Promise.reject = function (value) {
+ return new Promise(function (resolve, reject) {
+ reject(value);
+ });
+};
+
+Promise.race = function (values) {
+ return new Promise(function (resolve, reject) {
+ values.forEach(function(value){
+ Promise.resolve(value).then(resolve, reject);
+ });
+ });
+};
+
+/* Prototype Methods */
+
+Promise.prototype['catch'] = function (onRejected) {
+ return this.then(null, onRejected);
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/setimmediate/finally.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/setimmediate/finally.js
new file mode 100644
index 00000000..f5ee0b98
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/setimmediate/finally.js
@@ -0,0 +1,16 @@
+'use strict';
+
+var Promise = require('./core.js');
+
+module.exports = Promise;
+Promise.prototype['finally'] = function (f) {
+ return this.then(function (value) {
+ return Promise.resolve(f()).then(function () {
+ return value;
+ });
+ }, function (err) {
+ return Promise.resolve(f()).then(function () {
+ throw err;
+ });
+ });
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/setimmediate/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/setimmediate/index.js
new file mode 100644
index 00000000..6e674f38
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/setimmediate/index.js
@@ -0,0 +1,8 @@
+'use strict';
+
+module.exports = require('./core.js');
+require('./done.js');
+require('./finally.js');
+require('./es6-extensions.js');
+require('./node-extensions.js');
+require('./synchronous.js');
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/setimmediate/node-extensions.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/setimmediate/node-extensions.js
new file mode 100644
index 00000000..f03e861d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/setimmediate/node-extensions.js
@@ -0,0 +1,130 @@
+'use strict';
+
+// This file contains then/promise specific extensions that are only useful
+// for node.js interop
+
+var Promise = require('./core.js');
+
+
+module.exports = Promise;
+
+/* Static Functions */
+
+Promise.denodeify = function (fn, argumentCount) {
+ if (
+ typeof argumentCount === 'number' && argumentCount !== Infinity
+ ) {
+ return denodeifyWithCount(fn, argumentCount);
+ } else {
+ return denodeifyWithoutCount(fn);
+ }
+};
+
+var callbackFn = (
+ 'function (err, res) {' +
+ 'if (err) { rj(err); } else { rs(res); }' +
+ '}'
+);
+function denodeifyWithCount(fn, argumentCount) {
+ var args = [];
+ for (var i = 0; i < argumentCount; i++) {
+ args.push('a' + i);
+ }
+ var body = [
+ 'return function (' + args.join(',') + ') {',
+ 'var self = this;',
+ 'return new Promise(function (rs, rj) {',
+ 'var res = fn.call(',
+ ['self'].concat(args).concat([callbackFn]).join(','),
+ ');',
+ 'if (res &&',
+ '(typeof res === "object" || typeof res === "function") &&',
+ 'typeof res.then === "function"',
+ ') {rs(res);}',
+ '});',
+ '};'
+ ].join('');
+ return Function(['Promise', 'fn'], body)(Promise, fn);
+}
+function denodeifyWithoutCount(fn) {
+ var fnLength = Math.max(fn.length - 1, 3);
+ var args = [];
+ for (var i = 0; i < fnLength; i++) {
+ args.push('a' + i);
+ }
+ var body = [
+ 'return function (' + args.join(',') + ') {',
+ 'var self = this;',
+ 'var args;',
+ 'var argLength = arguments.length;',
+ 'if (arguments.length > ' + fnLength + ') {',
+ 'args = new Array(arguments.length + 1);',
+ 'for (var i = 0; i < arguments.length; i++) {',
+ 'args[i] = arguments[i];',
+ '}',
+ '}',
+ 'return new Promise(function (rs, rj) {',
+ 'var cb = ' + callbackFn + ';',
+ 'var res;',
+ 'switch (argLength) {',
+ args.concat(['extra']).map(function (_, index) {
+ return (
+ 'case ' + (index) + ':' +
+ 'res = fn.call(' + ['self'].concat(args.slice(0, index)).concat('cb').join(',') + ');' +
+ 'break;'
+ );
+ }).join(''),
+ 'default:',
+ 'args[argLength] = cb;',
+ 'res = fn.apply(self, args);',
+ '}',
+
+ 'if (res &&',
+ '(typeof res === "object" || typeof res === "function") &&',
+ 'typeof res.then === "function"',
+ ') {rs(res);}',
+ '});',
+ '};'
+ ].join('');
+
+ return Function(
+ ['Promise', 'fn'],
+ body
+ )(Promise, fn);
+}
+
+Promise.nodeify = function (fn) {
+ return function () {
+ var args = Array.prototype.slice.call(arguments);
+ var callback =
+ typeof args[args.length - 1] === 'function' ? args.pop() : null;
+ var ctx = this;
+ try {
+ return fn.apply(this, arguments).nodeify(callback, ctx);
+ } catch (ex) {
+ if (callback === null || typeof callback == 'undefined') {
+ return new Promise(function (resolve, reject) {
+ reject(ex);
+ });
+ } else {
+ setImmediate(function () {
+ callback.call(ctx, ex);
+ })
+ }
+ }
+ }
+};
+
+Promise.prototype.nodeify = function (callback, ctx) {
+ if (typeof callback != 'function') return this;
+
+ this.then(function (value) {
+ setImmediate(function () {
+ callback.call(ctx, null, value);
+ });
+ }, function (err) {
+ setImmediate(function () {
+ callback.call(ctx, err);
+ });
+ });
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/setimmediate/rejection-tracking.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/setimmediate/rejection-tracking.js
new file mode 100644
index 00000000..10ccce30
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/setimmediate/rejection-tracking.js
@@ -0,0 +1,113 @@
+'use strict';
+
+var Promise = require('./core');
+
+var DEFAULT_WHITELIST = [
+ ReferenceError,
+ TypeError,
+ RangeError
+];
+
+var enabled = false;
+exports.disable = disable;
+function disable() {
+ enabled = false;
+ Promise._37 = null;
+ Promise._87 = null;
+}
+
+exports.enable = enable;
+function enable(options) {
+ options = options || {};
+ if (enabled) disable();
+ enabled = true;
+ var id = 0;
+ var displayId = 0;
+ var rejections = {};
+ Promise._37 = function (promise) {
+ if (
+ promise._65 === 2 && // IS REJECTED
+ rejections[promise._51]
+ ) {
+ if (rejections[promise._51].logged) {
+ onHandled(promise._51);
+ } else {
+ clearTimeout(rejections[promise._51].timeout);
+ }
+ delete rejections[promise._51];
+ }
+ };
+ Promise._87 = function (promise, err) {
+ if (promise._40 === 0) { // not yet handled
+ promise._51 = id++;
+ rejections[promise._51] = {
+ displayId: null,
+ error: err,
+ timeout: setTimeout(
+ onUnhandled.bind(null, promise._51),
+ // For reference errors and type errors, this almost always
+ // means the programmer made a mistake, so log them after just
+ // 100ms
+ // otherwise, wait 2 seconds to see if they get handled
+ matchWhitelist(err, DEFAULT_WHITELIST)
+ ? 100
+ : 2000
+ ),
+ logged: false
+ };
+ }
+ };
+ function onUnhandled(id) {
+ if (
+ options.allRejections ||
+ matchWhitelist(
+ rejections[id].error,
+ options.whitelist || DEFAULT_WHITELIST
+ )
+ ) {
+ rejections[id].displayId = displayId++;
+ if (options.onUnhandled) {
+ rejections[id].logged = true;
+ options.onUnhandled(
+ rejections[id].displayId,
+ rejections[id].error
+ );
+ } else {
+ rejections[id].logged = true;
+ logError(
+ rejections[id].displayId,
+ rejections[id].error
+ );
+ }
+ }
+ }
+ function onHandled(id) {
+ if (rejections[id].logged) {
+ if (options.onHandled) {
+ options.onHandled(rejections[id].displayId, rejections[id].error);
+ } else if (!rejections[id].onUnhandled) {
+ console.warn(
+ 'Promise Rejection Handled (id: ' + rejections[id].displayId + '):'
+ );
+ console.warn(
+ ' This means you can ignore any previous messages of the form "Possible Unhandled Promise Rejection" with id ' +
+ rejections[id].displayId + '.'
+ );
+ }
+ }
+ }
+}
+
+function logError(id, error) {
+ console.warn('Possible Unhandled Promise Rejection (id: ' + id + '):');
+ var errStr = (error && (error.stack || error)) + '';
+ errStr.split('\n').forEach(function (line) {
+ console.warn(' ' + line);
+ });
+}
+
+function matchWhitelist(error, list) {
+ return list.some(function (cls) {
+ return error instanceof cls;
+ });
+}
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/setimmediate/synchronous.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/setimmediate/synchronous.js
new file mode 100644
index 00000000..49399644
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/setimmediate/synchronous.js
@@ -0,0 +1,62 @@
+'use strict';
+
+var Promise = require('./core.js');
+
+module.exports = Promise;
+Promise.enableSynchronous = function () {
+ Promise.prototype.isPending = function() {
+ return this.getState() == 0;
+ };
+
+ Promise.prototype.isFulfilled = function() {
+ return this.getState() == 1;
+ };
+
+ Promise.prototype.isRejected = function() {
+ return this.getState() == 2;
+ };
+
+ Promise.prototype.getValue = function () {
+ if (this._65 === 3) {
+ return this._55.getValue();
+ }
+
+ if (!this.isFulfilled()) {
+ throw new Error('Cannot get a value of an unfulfilled promise.');
+ }
+
+ return this._55;
+ };
+
+ Promise.prototype.getReason = function () {
+ if (this._65 === 3) {
+ return this._55.getReason();
+ }
+
+ if (!this.isRejected()) {
+ throw new Error('Cannot get a rejection reason of a non-rejected promise.');
+ }
+
+ return this._55;
+ };
+
+ Promise.prototype.getState = function () {
+ if (this._65 === 3) {
+ return this._55.getState();
+ }
+ if (this._65 === -1 || this._65 === -2) {
+ return 0;
+ }
+
+ return this._65;
+ };
+};
+
+Promise.disableSynchronous = function() {
+ Promise.prototype.isPending = undefined;
+ Promise.prototype.isFulfilled = undefined;
+ Promise.prototype.isRejected = undefined;
+ Promise.prototype.getValue = undefined;
+ Promise.prototype.getReason = undefined;
+ Promise.prototype.getState = undefined;
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/src/core.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/src/core.js
new file mode 100644
index 00000000..312010d9
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/src/core.js
@@ -0,0 +1,213 @@
+'use strict';
+
+var asap = require('asap/raw');
+
+function noop() {}
+
+// States:
+//
+// 0 - pending
+// 1 - fulfilled with _value
+// 2 - rejected with _value
+// 3 - adopted the state of another promise, _value
+//
+// once the state is no longer pending (0) it is immutable
+
+// All `_` prefixed properties will be reduced to `_{random number}`
+// at build time to obfuscate them and discourage their use.
+// We don't use symbols or Object.defineProperty to fully hide them
+// because the performance isn't good enough.
+
+
+// to avoid using try/catch inside critical functions, we
+// extract them to here.
+var LAST_ERROR = null;
+var IS_ERROR = {};
+function getThen(obj) {
+ try {
+ return obj.then;
+ } catch (ex) {
+ LAST_ERROR = ex;
+ return IS_ERROR;
+ }
+}
+
+function tryCallOne(fn, a) {
+ try {
+ return fn(a);
+ } catch (ex) {
+ LAST_ERROR = ex;
+ return IS_ERROR;
+ }
+}
+function tryCallTwo(fn, a, b) {
+ try {
+ fn(a, b);
+ } catch (ex) {
+ LAST_ERROR = ex;
+ return IS_ERROR;
+ }
+}
+
+module.exports = Promise;
+
+function Promise(fn) {
+ if (typeof this !== 'object') {
+ throw new TypeError('Promises must be constructed via new');
+ }
+ if (typeof fn !== 'function') {
+ throw new TypeError('Promise constructor\'s argument is not a function');
+ }
+ this._deferredState = 0;
+ this._state = 0;
+ this._value = null;
+ this._deferreds = null;
+ if (fn === noop) return;
+ doResolve(fn, this);
+}
+Promise._onHandle = null;
+Promise._onReject = null;
+Promise._noop = noop;
+
+Promise.prototype.then = function(onFulfilled, onRejected) {
+ if (this.constructor !== Promise) {
+ return safeThen(this, onFulfilled, onRejected);
+ }
+ var res = new Promise(noop);
+ handle(this, new Handler(onFulfilled, onRejected, res));
+ return res;
+};
+
+function safeThen(self, onFulfilled, onRejected) {
+ return new self.constructor(function (resolve, reject) {
+ var res = new Promise(noop);
+ res.then(resolve, reject);
+ handle(self, new Handler(onFulfilled, onRejected, res));
+ });
+}
+function handle(self, deferred) {
+ while (self._state === 3) {
+ self = self._value;
+ }
+ if (Promise._onHandle) {
+ Promise._onHandle(self);
+ }
+ if (self._state === 0) {
+ if (self._deferredState === 0) {
+ self._deferredState = 1;
+ self._deferreds = deferred;
+ return;
+ }
+ if (self._deferredState === 1) {
+ self._deferredState = 2;
+ self._deferreds = [self._deferreds, deferred];
+ return;
+ }
+ self._deferreds.push(deferred);
+ return;
+ }
+ handleResolved(self, deferred);
+}
+
+function handleResolved(self, deferred) {
+ asap(function() {
+ var cb = self._state === 1 ? deferred.onFulfilled : deferred.onRejected;
+ if (cb === null) {
+ if (self._state === 1) {
+ resolve(deferred.promise, self._value);
+ } else {
+ reject(deferred.promise, self._value);
+ }
+ return;
+ }
+ var ret = tryCallOne(cb, self._value);
+ if (ret === IS_ERROR) {
+ reject(deferred.promise, LAST_ERROR);
+ } else {
+ resolve(deferred.promise, ret);
+ }
+ });
+}
+function resolve(self, newValue) {
+ // Promise Resolution Procedure: https://github.com/promises-aplus/promises-spec#the-promise-resolution-procedure
+ if (newValue === self) {
+ return reject(
+ self,
+ new TypeError('A promise cannot be resolved with itself.')
+ );
+ }
+ if (
+ newValue &&
+ (typeof newValue === 'object' || typeof newValue === 'function')
+ ) {
+ var then = getThen(newValue);
+ if (then === IS_ERROR) {
+ return reject(self, LAST_ERROR);
+ }
+ if (
+ then === self.then &&
+ newValue instanceof Promise
+ ) {
+ self._state = 3;
+ self._value = newValue;
+ finale(self);
+ return;
+ } else if (typeof then === 'function') {
+ doResolve(then.bind(newValue), self);
+ return;
+ }
+ }
+ self._state = 1;
+ self._value = newValue;
+ finale(self);
+}
+
+function reject(self, newValue) {
+ self._state = 2;
+ self._value = newValue;
+ if (Promise._onReject) {
+ Promise._onReject(self, newValue);
+ }
+ finale(self);
+}
+function finale(self) {
+ if (self._deferredState === 1) {
+ handle(self, self._deferreds);
+ self._deferreds = null;
+ }
+ if (self._deferredState === 2) {
+ for (var i = 0; i < self._deferreds.length; i++) {
+ handle(self, self._deferreds[i]);
+ }
+ self._deferreds = null;
+ }
+}
+
+function Handler(onFulfilled, onRejected, promise){
+ this.onFulfilled = typeof onFulfilled === 'function' ? onFulfilled : null;
+ this.onRejected = typeof onRejected === 'function' ? onRejected : null;
+ this.promise = promise;
+}
+
+/**
+ * Take a potentially misbehaving resolver function and make sure
+ * onFulfilled and onRejected are only called once.
+ *
+ * Makes no guarantees about asynchrony.
+ */
+function doResolve(fn, promise) {
+ var done = false;
+ var res = tryCallTwo(fn, function (value) {
+ if (done) return;
+ done = true;
+ resolve(promise, value);
+ }, function (reason) {
+ if (done) return;
+ done = true;
+ reject(promise, reason);
+ });
+ if (!done && res === IS_ERROR) {
+ done = true;
+ reject(promise, LAST_ERROR);
+ }
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/src/done.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/src/done.js
new file mode 100644
index 00000000..f879317d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/src/done.js
@@ -0,0 +1,13 @@
+'use strict';
+
+var Promise = require('./core.js');
+
+module.exports = Promise;
+Promise.prototype.done = function (onFulfilled, onRejected) {
+ var self = arguments.length ? this.then.apply(this, arguments) : this;
+ self.then(null, function (err) {
+ setTimeout(function () {
+ throw err;
+ }, 0);
+ });
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/src/es6-extensions.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/src/es6-extensions.js
new file mode 100644
index 00000000..04358131
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/src/es6-extensions.js
@@ -0,0 +1,107 @@
+'use strict';
+
+//This file contains the ES6 extensions to the core Promises/A+ API
+
+var Promise = require('./core.js');
+
+module.exports = Promise;
+
+/* Static Functions */
+
+var TRUE = valuePromise(true);
+var FALSE = valuePromise(false);
+var NULL = valuePromise(null);
+var UNDEFINED = valuePromise(undefined);
+var ZERO = valuePromise(0);
+var EMPTYSTRING = valuePromise('');
+
+function valuePromise(value) {
+ var p = new Promise(Promise._noop);
+ p._state = 1;
+ p._value = value;
+ return p;
+}
+Promise.resolve = function (value) {
+ if (value instanceof Promise) return value;
+
+ if (value === null) return NULL;
+ if (value === undefined) return UNDEFINED;
+ if (value === true) return TRUE;
+ if (value === false) return FALSE;
+ if (value === 0) return ZERO;
+ if (value === '') return EMPTYSTRING;
+
+ if (typeof value === 'object' || typeof value === 'function') {
+ try {
+ var then = value.then;
+ if (typeof then === 'function') {
+ return new Promise(then.bind(value));
+ }
+ } catch (ex) {
+ return new Promise(function (resolve, reject) {
+ reject(ex);
+ });
+ }
+ }
+ return valuePromise(value);
+};
+
+Promise.all = function (arr) {
+ var args = Array.prototype.slice.call(arr);
+
+ return new Promise(function (resolve, reject) {
+ if (args.length === 0) return resolve([]);
+ var remaining = args.length;
+ function res(i, val) {
+ if (val && (typeof val === 'object' || typeof val === 'function')) {
+ if (val instanceof Promise && val.then === Promise.prototype.then) {
+ while (val._state === 3) {
+ val = val._value;
+ }
+ if (val._state === 1) return res(i, val._value);
+ if (val._state === 2) reject(val._value);
+ val.then(function (val) {
+ res(i, val);
+ }, reject);
+ return;
+ } else {
+ var then = val.then;
+ if (typeof then === 'function') {
+ var p = new Promise(then.bind(val));
+ p.then(function (val) {
+ res(i, val);
+ }, reject);
+ return;
+ }
+ }
+ }
+ args[i] = val;
+ if (--remaining === 0) {
+ resolve(args);
+ }
+ }
+ for (var i = 0; i < args.length; i++) {
+ res(i, args[i]);
+ }
+ });
+};
+
+Promise.reject = function (value) {
+ return new Promise(function (resolve, reject) {
+ reject(value);
+ });
+};
+
+Promise.race = function (values) {
+ return new Promise(function (resolve, reject) {
+ values.forEach(function(value){
+ Promise.resolve(value).then(resolve, reject);
+ });
+ });
+};
+
+/* Prototype Methods */
+
+Promise.prototype['catch'] = function (onRejected) {
+ return this.then(null, onRejected);
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/src/finally.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/src/finally.js
new file mode 100644
index 00000000..f5ee0b98
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/src/finally.js
@@ -0,0 +1,16 @@
+'use strict';
+
+var Promise = require('./core.js');
+
+module.exports = Promise;
+Promise.prototype['finally'] = function (f) {
+ return this.then(function (value) {
+ return Promise.resolve(f()).then(function () {
+ return value;
+ });
+ }, function (err) {
+ return Promise.resolve(f()).then(function () {
+ throw err;
+ });
+ });
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/src/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/src/index.js
new file mode 100644
index 00000000..6e674f38
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/src/index.js
@@ -0,0 +1,8 @@
+'use strict';
+
+module.exports = require('./core.js');
+require('./done.js');
+require('./finally.js');
+require('./es6-extensions.js');
+require('./node-extensions.js');
+require('./synchronous.js');
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/src/node-extensions.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/src/node-extensions.js
new file mode 100644
index 00000000..157cddc2
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/src/node-extensions.js
@@ -0,0 +1,130 @@
+'use strict';
+
+// This file contains then/promise specific extensions that are only useful
+// for node.js interop
+
+var Promise = require('./core.js');
+var asap = require('asap');
+
+module.exports = Promise;
+
+/* Static Functions */
+
+Promise.denodeify = function (fn, argumentCount) {
+ if (
+ typeof argumentCount === 'number' && argumentCount !== Infinity
+ ) {
+ return denodeifyWithCount(fn, argumentCount);
+ } else {
+ return denodeifyWithoutCount(fn);
+ }
+};
+
+var callbackFn = (
+ 'function (err, res) {' +
+ 'if (err) { rj(err); } else { rs(res); }' +
+ '}'
+);
+function denodeifyWithCount(fn, argumentCount) {
+ var args = [];
+ for (var i = 0; i < argumentCount; i++) {
+ args.push('a' + i);
+ }
+ var body = [
+ 'return function (' + args.join(',') + ') {',
+ 'var self = this;',
+ 'return new Promise(function (rs, rj) {',
+ 'var res = fn.call(',
+ ['self'].concat(args).concat([callbackFn]).join(','),
+ ');',
+ 'if (res &&',
+ '(typeof res === "object" || typeof res === "function") &&',
+ 'typeof res.then === "function"',
+ ') {rs(res);}',
+ '});',
+ '};'
+ ].join('');
+ return Function(['Promise', 'fn'], body)(Promise, fn);
+}
+function denodeifyWithoutCount(fn) {
+ var fnLength = Math.max(fn.length - 1, 3);
+ var args = [];
+ for (var i = 0; i < fnLength; i++) {
+ args.push('a' + i);
+ }
+ var body = [
+ 'return function (' + args.join(',') + ') {',
+ 'var self = this;',
+ 'var args;',
+ 'var argLength = arguments.length;',
+ 'if (arguments.length > ' + fnLength + ') {',
+ 'args = new Array(arguments.length + 1);',
+ 'for (var i = 0; i < arguments.length; i++) {',
+ 'args[i] = arguments[i];',
+ '}',
+ '}',
+ 'return new Promise(function (rs, rj) {',
+ 'var cb = ' + callbackFn + ';',
+ 'var res;',
+ 'switch (argLength) {',
+ args.concat(['extra']).map(function (_, index) {
+ return (
+ 'case ' + (index) + ':' +
+ 'res = fn.call(' + ['self'].concat(args.slice(0, index)).concat('cb').join(',') + ');' +
+ 'break;'
+ );
+ }).join(''),
+ 'default:',
+ 'args[argLength] = cb;',
+ 'res = fn.apply(self, args);',
+ '}',
+
+ 'if (res &&',
+ '(typeof res === "object" || typeof res === "function") &&',
+ 'typeof res.then === "function"',
+ ') {rs(res);}',
+ '});',
+ '};'
+ ].join('');
+
+ return Function(
+ ['Promise', 'fn'],
+ body
+ )(Promise, fn);
+}
+
+Promise.nodeify = function (fn) {
+ return function () {
+ var args = Array.prototype.slice.call(arguments);
+ var callback =
+ typeof args[args.length - 1] === 'function' ? args.pop() : null;
+ var ctx = this;
+ try {
+ return fn.apply(this, arguments).nodeify(callback, ctx);
+ } catch (ex) {
+ if (callback === null || typeof callback == 'undefined') {
+ return new Promise(function (resolve, reject) {
+ reject(ex);
+ });
+ } else {
+ asap(function () {
+ callback.call(ctx, ex);
+ })
+ }
+ }
+ }
+};
+
+Promise.prototype.nodeify = function (callback, ctx) {
+ if (typeof callback != 'function') return this;
+
+ this.then(function (value) {
+ asap(function () {
+ callback.call(ctx, null, value);
+ });
+ }, function (err) {
+ asap(function () {
+ callback.call(ctx, err);
+ });
+ });
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/src/rejection-tracking.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/src/rejection-tracking.js
new file mode 100644
index 00000000..33a59a19
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/src/rejection-tracking.js
@@ -0,0 +1,113 @@
+'use strict';
+
+var Promise = require('./core');
+
+var DEFAULT_WHITELIST = [
+ ReferenceError,
+ TypeError,
+ RangeError
+];
+
+var enabled = false;
+exports.disable = disable;
+function disable() {
+ enabled = false;
+ Promise._onHandle = null;
+ Promise._onReject = null;
+}
+
+exports.enable = enable;
+function enable(options) {
+ options = options || {};
+ if (enabled) disable();
+ enabled = true;
+ var id = 0;
+ var displayId = 0;
+ var rejections = {};
+ Promise._onHandle = function (promise) {
+ if (
+ promise._state === 2 && // IS REJECTED
+ rejections[promise._rejectionId]
+ ) {
+ if (rejections[promise._rejectionId].logged) {
+ onHandled(promise._rejectionId);
+ } else {
+ clearTimeout(rejections[promise._rejectionId].timeout);
+ }
+ delete rejections[promise._rejectionId];
+ }
+ };
+ Promise._onReject = function (promise, err) {
+ if (promise._deferredState === 0) { // not yet handled
+ promise._rejectionId = id++;
+ rejections[promise._rejectionId] = {
+ displayId: null,
+ error: err,
+ timeout: setTimeout(
+ onUnhandled.bind(null, promise._rejectionId),
+ // For reference errors and type errors, this almost always
+ // means the programmer made a mistake, so log them after just
+ // 100ms
+ // otherwise, wait 2 seconds to see if they get handled
+ matchWhitelist(err, DEFAULT_WHITELIST)
+ ? 100
+ : 2000
+ ),
+ logged: false
+ };
+ }
+ };
+ function onUnhandled(id) {
+ if (
+ options.allRejections ||
+ matchWhitelist(
+ rejections[id].error,
+ options.whitelist || DEFAULT_WHITELIST
+ )
+ ) {
+ rejections[id].displayId = displayId++;
+ if (options.onUnhandled) {
+ rejections[id].logged = true;
+ options.onUnhandled(
+ rejections[id].displayId,
+ rejections[id].error
+ );
+ } else {
+ rejections[id].logged = true;
+ logError(
+ rejections[id].displayId,
+ rejections[id].error
+ );
+ }
+ }
+ }
+ function onHandled(id) {
+ if (rejections[id].logged) {
+ if (options.onHandled) {
+ options.onHandled(rejections[id].displayId, rejections[id].error);
+ } else if (!rejections[id].onUnhandled) {
+ console.warn(
+ 'Promise Rejection Handled (id: ' + rejections[id].displayId + '):'
+ );
+ console.warn(
+ ' This means you can ignore any previous messages of the form "Possible Unhandled Promise Rejection" with id ' +
+ rejections[id].displayId + '.'
+ );
+ }
+ }
+ }
+}
+
+function logError(id, error) {
+ console.warn('Possible Unhandled Promise Rejection (id: ' + id + '):');
+ var errStr = (error && (error.stack || error)) + '';
+ errStr.split('\n').forEach(function (line) {
+ console.warn(' ' + line);
+ });
+}
+
+function matchWhitelist(error, list) {
+ return list.some(function (cls) {
+ return error instanceof cls;
+ });
+}
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/src/synchronous.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/src/synchronous.js
new file mode 100644
index 00000000..38b228f5
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/promise/src/synchronous.js
@@ -0,0 +1,62 @@
+'use strict';
+
+var Promise = require('./core.js');
+
+module.exports = Promise;
+Promise.enableSynchronous = function () {
+ Promise.prototype.isPending = function() {
+ return this.getState() == 0;
+ };
+
+ Promise.prototype.isFulfilled = function() {
+ return this.getState() == 1;
+ };
+
+ Promise.prototype.isRejected = function() {
+ return this.getState() == 2;
+ };
+
+ Promise.prototype.getValue = function () {
+ if (this._state === 3) {
+ return this._value.getValue();
+ }
+
+ if (!this.isFulfilled()) {
+ throw new Error('Cannot get a value of an unfulfilled promise.');
+ }
+
+ return this._value;
+ };
+
+ Promise.prototype.getReason = function () {
+ if (this._state === 3) {
+ return this._value.getReason();
+ }
+
+ if (!this.isRejected()) {
+ throw new Error('Cannot get a rejection reason of a non-rejected promise.');
+ }
+
+ return this._value;
+ };
+
+ Promise.prototype.getState = function () {
+ if (this._state === 3) {
+ return this._value.getState();
+ }
+ if (this._state === -1 || this._state === -2) {
+ return 0;
+ }
+
+ return this._state;
+ };
+};
+
+Promise.disableSynchronous = function() {
+ Promise.prototype.isPending = undefined;
+ Promise.prototype.isFulfilled = undefined;
+ Promise.prototype.isRejected = undefined;
+ Promise.prototype.getValue = undefined;
+ Promise.prototype.getReason = undefined;
+ Promise.prototype.getState = undefined;
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/CHANGELOG.md b/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/CHANGELOG.md
new file mode 100644
index 00000000..f921c8b6
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/CHANGELOG.md
@@ -0,0 +1,70 @@
+## 15.6.0
+
+* Switch from BSD + Patents to MIT license
+* Add PropTypes.exact, like PropTypes.shape but warns on extra object keys. ([@thejameskyle](https://github.com/thejameskyle) and [@aweary](https://github.com/aweary) in [#41](https://github.com/reactjs/prop-types/pull/41) and [#87](https://github.com/reactjs/prop-types/pull/87))
+
+## 15.5.10
+
+* Fix a false positive warning when using a production UMD build of a third-party library with a DEV version of React. ([@gaearon](https://github.com/gaearon) in [#50](https://github.com/reactjs/prop-types/pull/50))
+
+## 15.5.9
+
+* Add `loose-envify` Browserify transform for users who don't envify globally. ([@mridgway](https://github.com/mridgway) in [#45](https://github.com/reactjs/prop-types/pull/45))
+
+## 15.5.8
+
+* Limit the manual PropTypes call warning count because it has false positives with React versions earlier than 15.2.0 in the 15.x branch and 0.14.9 in the 0.14.x branch. ([@gaearon](https://github.com/gaearon) in [#26](https://github.com/reactjs/prop-types/pull/26))
+
+## 15.5.7
+
+* **Critical Bugfix:** Fix an accidental breaking change that caused errors in production when used through `React.PropTypes`. ([@gaearon](https://github.com/gaearon) in [#20](https://github.com/reactjs/prop-types/pull/20))
+* Improve the size of production UMD build. ([@aweary](https://github.com/aweary) in [38ba18](https://github.com/reactjs/prop-types/commit/38ba18a4a8f705f4b2b33c88204573ddd604f2d6) and [7882a7](https://github.com/reactjs/prop-types/commit/7882a7285293db5f284bcf559b869fd2cd4c44d4))
+
+## 15.5.6
+
+**Note: this release has a critical issue and was deprecated. Please update to 15.5.7 or higher.**
+
+* Fix a markdown issue in README. ([@bvaughn](https://github.com/bvaughn) in [174f77](https://github.com/reactjs/prop-types/commit/174f77a50484fa628593e84b871fb40eed78b69a))
+
+## 15.5.5
+
+**Note: this release has a critical issue and was deprecated. Please update to 15.5.7 or higher.**
+
+* Add missing documentation and license files. ([@bvaughn](https://github.com/bvaughn) in [0a53d3](https://github.com/reactjs/prop-types/commit/0a53d3a34283ae1e2d3aa396632b6dc2a2061e6a))
+
+## 15.5.4
+
+**Note: this release has a critical issue and was deprecated. Please update to 15.5.7 or higher.**
+
+* Reduce the size of the UMD Build. ([@acdlite](https://github.com/acdlite) in [31e9344](https://github.com/reactjs/prop-types/commit/31e9344ca3233159928da66295da17dad82db1a8))
+* Remove bad package url. ([@ljharb](https://github.com/ljharb) in [158198f](https://github.com/reactjs/prop-types/commit/158198fd6c468a3f6f742e0e355e622b3914048a))
+* Remove the accidentally included typechecking code from the production build.
+
+## 15.5.3
+
+**Note: this release has a critical issue and was deprecated. Please update to 15.5.7 or higher.**
+
+* Remove the accidentally included React package code from the UMD bundle. ([@acdlite](https://github.com/acdlite) in [df318bb](https://github.com/reactjs/prop-types/commit/df318bba8a89bc5aadbb0292822cf4ed71d27ace))
+
+## 15.5.2
+
+**Note: this release has a critical issue and was deprecated. Please update to 15.5.7 or higher.**
+
+* Remove dependency on React for CommonJS entry point. ([@acdlite](https://github.com/acdlite) in [cae72bb](https://github.com/reactjs/prop-types/commit/cae72bb281a3766c765e3624f6088c3713567e6d))
+
+
+## 15.5.1
+
+**Note: this release has a critical issue and was deprecated. Please update to 15.5.7 or higher.**
+
+* Remove accidental uncompiled ES6 syntax in the published package. ([@acdlite](https://github.com/acdlite) in [e191963](https://github.com/facebook/react/commit/e1919638b39dd65eedd250a8bb649773ca61b6f1))
+
+## 15.5.0
+
+**Note: this release has a critical issue and was deprecated. Please update to 15.5.7 or higher.**
+
+* Initial release.
+
+## Before 15.5.0
+
+PropTypes was previously included in React, but is now a separate package. For earlier history of PropTypes [see the React change log.](https://github.com/facebook/react/blob/master/CHANGELOG.md)
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/LICENSE b/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/LICENSE
new file mode 100644
index 00000000..188fb2b0
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/LICENSE
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2013-present, Facebook, Inc.
+
+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/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/README.md b/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/README.md
new file mode 100644
index 00000000..8ac77c3c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/README.md
@@ -0,0 +1,262 @@
+# prop-types
+
+Runtime type checking for React props and similar objects.
+
+You can use prop-types to document the intended types of properties passed to
+components. React (and potentially other libraries—see the checkPropTypes()
+reference below) will check props passed to your components against those
+definitions, and warn in development if they don’t match.
+
+## Installation
+
+```shell
+npm install --save prop-types
+```
+
+## Importing
+
+```js
+import PropTypes from 'prop-types'; // ES6
+var PropTypes = require('prop-types'); // ES5 with npm
+```
+
+If you prefer a `
+
+
+
+```
+
+## Usage
+
+PropTypes was originally exposed as part of the React core module, and is
+commonly used with React components.
+Here is an example of using PropTypes with a React component, which also
+documents the different validators provided:
+
+```js
+import React from 'react';
+import PropTypes from 'prop-types';
+
+class MyComponent extends React.Component {
+ render() {
+ // ... do things with the props
+ }
+}
+
+MyComponent.propTypes = {
+ // You can declare that a prop is a specific JS primitive. By default, these
+ // are all optional.
+ optionalArray: PropTypes.array,
+ optionalBool: PropTypes.bool,
+ optionalFunc: PropTypes.func,
+ optionalNumber: PropTypes.number,
+ optionalObject: PropTypes.object,
+ optionalString: PropTypes.string,
+ optionalSymbol: PropTypes.symbol,
+
+ // Anything that can be rendered: numbers, strings, elements or an array
+ // (or fragment) containing these types.
+ optionalNode: PropTypes.node,
+
+ // A React element.
+ optionalElement: PropTypes.element,
+
+ // You can also declare that a prop is an instance of a class. This uses
+ // JS's instanceof operator.
+ optionalMessage: PropTypes.instanceOf(Message),
+
+ // You can ensure that your prop is limited to specific values by treating
+ // it as an enum.
+ optionalEnum: PropTypes.oneOf(['News', 'Photos']),
+
+ // An object that could be one of many types
+ optionalUnion: PropTypes.oneOfType([
+ PropTypes.string,
+ PropTypes.number,
+ PropTypes.instanceOf(Message)
+ ]),
+
+ // An array of a certain type
+ optionalArrayOf: PropTypes.arrayOf(PropTypes.number),
+
+ // An object with property values of a certain type
+ optionalObjectOf: PropTypes.objectOf(PropTypes.number),
+
+ // An object taking on a particular shape
+ optionalObjectWithShape: PropTypes.shape({
+ color: PropTypes.string,
+ fontSize: PropTypes.number
+ }),
+
+ // You can chain any of the above with `isRequired` to make sure a warning
+ // is shown if the prop isn't provided.
+ requiredFunc: PropTypes.func.isRequired,
+
+ // A value of any data type
+ requiredAny: PropTypes.any.isRequired,
+
+ // You can also specify a custom validator. It should return an Error
+ // object if the validation fails. Don't `console.warn` or throw, as this
+ // won't work inside `oneOfType`.
+ customProp: function(props, propName, componentName) {
+ if (!/matchme/.test(props[propName])) {
+ return new Error(
+ 'Invalid prop `' + propName + '` supplied to' +
+ ' `' + componentName + '`. Validation failed.'
+ );
+ }
+ },
+
+ // You can also supply a custom validator to `arrayOf` and `objectOf`.
+ // It should return an Error object if the validation fails. The validator
+ // will be called for each key in the array or object. The first two
+ // arguments of the validator are the array or object itself, and the
+ // current item's key.
+ customArrayProp: PropTypes.arrayOf(function(propValue, key, componentName, location, propFullName) {
+ if (!/matchme/.test(propValue[key])) {
+ return new Error(
+ 'Invalid prop `' + propFullName + '` supplied to' +
+ ' `' + componentName + '`. Validation failed.'
+ );
+ }
+ })
+};
+```
+
+Refer to the [React documentation](https://facebook.github.io/react/docs/typechecking-with-proptypes.html) for more information.
+
+## Migrating from React.PropTypes
+
+Check out [Migrating from React.PropTypes](https://facebook.github.io/react/blog/2017/04/07/react-v15.5.0.html#migrating-from-react.proptypes) for details on how to migrate to `prop-types` from `React.PropTypes`.
+
+Note that this blog posts **mentions a codemod script that performs the conversion automatically**.
+
+There are also important notes below.
+
+## How to Depend on This Package?
+
+For apps, we recommend putting it in `dependencies` with a caret range.
+For example:
+
+```js
+ "dependencies": {
+ "prop-types": "^15.5.7"
+ }
+```
+
+For libraries, we *also* recommend leaving it in `dependencies`:
+
+```js
+ "dependencies": {
+ "prop-types": "^15.5.7"
+ },
+ "peerDependencies": {
+ "react": "^15.5.0"
+ }
+```
+
+**Note:** there are known issues in versions before 15.5.7 so we recommend using it as the minimal version.
+
+Make sure that the version range uses a caret (`^`) and thus is broad enough for npm to efficiently deduplicate packages.
+
+For UMD bundles of your components, make sure you **don’t** include `PropTypes` in the build. Usually this is done by marking it as an external (the specifics depend on your bundler), just like you do with React.
+
+## Compatibility
+
+### React 0.14
+
+This package is compatible with **React 0.14.9**. Compared to 0.14.8 (which was released a year ago), there are no other changes in 0.14.9, so it should be a painless upgrade.
+
+```shell
+# ATTENTION: Only run this if you still use React 0.14!
+npm install --save react@^0.14.9 react-dom@^0.14.9
+```
+
+### React 15+
+
+This package is compatible with **React 15.3.0** and higher.
+
+```
+npm install --save react@^15.3.0 react-dom@^15.3.0
+```
+
+### What happens on other React versions?
+
+It outputs warnings with the message below even though the developer doesn’t do anything wrong. Unfortunately there is no solution for this other than updating React to either 15.3.0 or higher, or 0.14.9 if you’re using React 0.14.
+
+## Difference from `React.PropTypes`: Don’t Call Validator Functions
+
+First of all, **which version of React are you using**? You might be seeing this message because a component library has updated to use `prop-types` package, but your version of React is incompatible with it. See the [above section](#compatibility) for more details.
+
+Are you using either React 0.14.9 or a version higher than React 15.3.0? Read on.
+
+When you migrate components to use the standalone `prop-types`, **all validator functions will start throwing an error if you call them directly**. This makes sure that nobody relies on them in production code, and it is safe to strip their implementations to optimize the bundle size.
+
+Code like this is still fine:
+
+```js
+MyComponent.propTypes = {
+ myProp: PropTypes.bool
+};
+```
+
+However, code like this will not work with the `prop-types` package:
+
+```js
+// Will not work with `prop-types` package!
+var errorOrNull = PropTypes.bool(42, 'myProp', 'MyComponent', 'prop');
+```
+
+It will throw an error:
+
+```
+Calling PropTypes validators directly is not supported by the `prop-types` package.
+Use PropTypes.checkPropTypes() to call them.
+```
+
+(If you see **a warning** rather than an error with this message, please check the [above section about compatibility](#compatibility).)
+
+This is new behavior, and you will only encounter it when you migrate from `React.PropTypes` to the `prop-types` package. For the vast majority of components, this doesn’t matter, and if you didn’t see [this warning](https://facebook.github.io/react/warnings/dont-call-proptypes.html) in your components, your code is safe to migrate. This is not a breaking change in React because you are only opting into this change for a component by explicitly changing your imports to use `prop-types`. If you temporarily need the old behavior, you can keep using `React.PropTypes` until React 16.
+
+**If you absolutely need to trigger the validation manually**, call `PropTypes.checkPropTypes()`. Unlike the validators themselves, this function is safe to call in production, as it will be replaced by an empty function:
+
+```js
+// Works with standalone PropTypes
+PropTypes.checkPropTypes(MyComponent.propTypes, props, 'prop', 'MyComponent');
+```
+See below for more info.
+
+**You might also see this error** if you’re calling a `PropTypes` validator from your own custom `PropTypes` validator. In this case, the fix is to make sure that you are passing *all* of the arguments to the inner function. There is a more in-depth explanation of how to fix it [on this page](https://facebook.github.io/react/warnings/dont-call-proptypes.html#fixing-the-false-positive-in-third-party-proptypes). Alternatively, you can temporarily keep using `React.PropTypes` until React 16, as it would still only warn in this case.
+
+If you use a bundler like Browserify or Webpack, don’t forget to [follow these instructions](https://facebook.github.io/react/docs/installation.html#development-and-production-versions) to correctly bundle your application in development or production mode. Otherwise you’ll ship unnecessary code to your users.
+
+## PropTypes.checkPropTypes
+
+React will automatically check the propTypes you set on the component, but if
+you are using PropTypes without React then you may want to manually call
+`PropTypes.checkPropTypes`, like so:
+
+```js
+const myPropTypes = {
+ name: PropTypes.string,
+ age: PropTypes.number,
+ // ... define your prop validations
+};
+
+const props = {
+ name: 'hello', // is valid
+ age: 'world', // not valid
+};
+
+// Let's say your component is called 'MyComponent'
+
+// Works with standalone PropTypes
+PropTypes.checkPropTypes(myPropTypes, props, 'prop', 'MyComponent');
+// This will warn as follows:
+// Warning: Failed prop type: Invalid prop `age` of type `string` supplied to
+// `MyComponent`, expected `number`.
+```
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/checkPropTypes.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/checkPropTypes.js
new file mode 100644
index 00000000..0802c360
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/checkPropTypes.js
@@ -0,0 +1,59 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+'use strict';
+
+if (process.env.NODE_ENV !== 'production') {
+ var invariant = require('fbjs/lib/invariant');
+ var warning = require('fbjs/lib/warning');
+ var ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');
+ var loggedTypeFailures = {};
+}
+
+/**
+ * Assert that the values match with the type specs.
+ * Error messages are memorized and will only be shown once.
+ *
+ * @param {object} typeSpecs Map of name to a ReactPropType
+ * @param {object} values Runtime values that need to be type-checked
+ * @param {string} location e.g. "prop", "context", "child context"
+ * @param {string} componentName Name of the component for error messages.
+ * @param {?Function} getStack Returns the component stack.
+ * @private
+ */
+function checkPropTypes(typeSpecs, values, location, componentName, getStack) {
+ if (process.env.NODE_ENV !== 'production') {
+ for (var typeSpecName in typeSpecs) {
+ if (typeSpecs.hasOwnProperty(typeSpecName)) {
+ var error;
+ // Prop type validation may throw. In case they do, we don't want to
+ // fail the render phase where it didn't fail before. So we log it.
+ // After these have been cleaned up, we'll let them throw.
+ try {
+ // This is intentionally an invariant that gets caught. It's the same
+ // behavior as without this statement except with a better message.
+ invariant(typeof typeSpecs[typeSpecName] === 'function', '%s: %s type `%s` is invalid; it must be a function, usually from ' + 'the `prop-types` package, but received `%s`.', componentName || 'React class', location, typeSpecName, typeof typeSpecs[typeSpecName]);
+ error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);
+ } catch (ex) {
+ error = ex;
+ }
+ warning(!error || error instanceof Error, '%s: type specification of %s `%s` is invalid; the type checker ' + 'function must return `null` or an `Error` but returned a %s. ' + 'You may have forgotten to pass an argument to the type checker ' + 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' + 'shape all require an argument).', componentName || 'React class', location, typeSpecName, typeof error);
+ if (error instanceof Error && !(error.message in loggedTypeFailures)) {
+ // Only monitor this failure once because there tends to be a lot of the
+ // same error.
+ loggedTypeFailures[error.message] = true;
+
+ var stack = getStack ? getStack() : '';
+
+ warning(false, 'Failed %s type: %s%s', location, error.message, stack != null ? stack : '');
+ }
+ }
+ }
+ }
+}
+
+module.exports = checkPropTypes;
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/factory.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/factory.js
new file mode 100644
index 00000000..abdf8e6d
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/factory.js
@@ -0,0 +1,19 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+'use strict';
+
+// React 15.5 references this module, and assumes PropTypes are still callable in production.
+// Therefore we re-export development-only version with all the PropTypes checks here.
+// However if one is migrating to the `prop-types` npm library, they will go through the
+// `index.js` entry point, and it will branch depending on the environment.
+var factory = require('./factoryWithTypeCheckers');
+module.exports = function(isValidElement) {
+ // It is still allowed in 15.5.
+ var throwOnDirectAccess = false;
+ return factory(isValidElement, throwOnDirectAccess);
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/factoryWithThrowingShims.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/factoryWithThrowingShims.js
new file mode 100644
index 00000000..2b3c9242
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/factoryWithThrowingShims.js
@@ -0,0 +1,58 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+'use strict';
+
+var emptyFunction = require('fbjs/lib/emptyFunction');
+var invariant = require('fbjs/lib/invariant');
+var ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');
+
+module.exports = function() {
+ function shim(props, propName, componentName, location, propFullName, secret) {
+ if (secret === ReactPropTypesSecret) {
+ // It is still safe when called from React.
+ return;
+ }
+ invariant(
+ false,
+ 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +
+ 'Use PropTypes.checkPropTypes() to call them. ' +
+ 'Read more at http://fb.me/use-check-prop-types'
+ );
+ };
+ shim.isRequired = shim;
+ function getShim() {
+ return shim;
+ };
+ // Important!
+ // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.
+ var ReactPropTypes = {
+ array: shim,
+ bool: shim,
+ func: shim,
+ number: shim,
+ object: shim,
+ string: shim,
+ symbol: shim,
+
+ any: shim,
+ arrayOf: getShim,
+ element: shim,
+ instanceOf: getShim,
+ node: shim,
+ objectOf: getShim,
+ oneOf: getShim,
+ oneOfType: getShim,
+ shape: getShim,
+ exact: getShim
+ };
+
+ ReactPropTypes.checkPropTypes = emptyFunction;
+ ReactPropTypes.PropTypes = ReactPropTypes;
+
+ return ReactPropTypes;
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/factoryWithTypeCheckers.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/factoryWithTypeCheckers.js
new file mode 100644
index 00000000..7c962b16
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/factoryWithTypeCheckers.js
@@ -0,0 +1,542 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+'use strict';
+
+var emptyFunction = require('fbjs/lib/emptyFunction');
+var invariant = require('fbjs/lib/invariant');
+var warning = require('fbjs/lib/warning');
+var assign = require('object-assign');
+
+var ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');
+var checkPropTypes = require('./checkPropTypes');
+
+module.exports = function(isValidElement, throwOnDirectAccess) {
+ /* global Symbol */
+ var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;
+ var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.
+
+ /**
+ * Returns the iterator method function contained on the iterable object.
+ *
+ * Be sure to invoke the function with the iterable as context:
+ *
+ * var iteratorFn = getIteratorFn(myIterable);
+ * if (iteratorFn) {
+ * var iterator = iteratorFn.call(myIterable);
+ * ...
+ * }
+ *
+ * @param {?object} maybeIterable
+ * @return {?function}
+ */
+ function getIteratorFn(maybeIterable) {
+ var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);
+ if (typeof iteratorFn === 'function') {
+ return iteratorFn;
+ }
+ }
+
+ /**
+ * Collection of methods that allow declaration and validation of props that are
+ * supplied to React components. Example usage:
+ *
+ * var Props = require('ReactPropTypes');
+ * var MyArticle = React.createClass({
+ * propTypes: {
+ * // An optional string prop named "description".
+ * description: Props.string,
+ *
+ * // A required enum prop named "category".
+ * category: Props.oneOf(['News','Photos']).isRequired,
+ *
+ * // A prop named "dialog" that requires an instance of Dialog.
+ * dialog: Props.instanceOf(Dialog).isRequired
+ * },
+ * render: function() { ... }
+ * });
+ *
+ * A more formal specification of how these methods are used:
+ *
+ * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)
+ * decl := ReactPropTypes.{type}(.isRequired)?
+ *
+ * Each and every declaration produces a function with the same signature. This
+ * allows the creation of custom validation functions. For example:
+ *
+ * var MyLink = React.createClass({
+ * propTypes: {
+ * // An optional string or URI prop named "href".
+ * href: function(props, propName, componentName) {
+ * var propValue = props[propName];
+ * if (propValue != null && typeof propValue !== 'string' &&
+ * !(propValue instanceof URI)) {
+ * return new Error(
+ * 'Expected a string or an URI for ' + propName + ' in ' +
+ * componentName
+ * );
+ * }
+ * }
+ * },
+ * render: function() {...}
+ * });
+ *
+ * @internal
+ */
+
+ var ANONYMOUS = '<>';
+
+ // Important!
+ // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.
+ var ReactPropTypes = {
+ array: createPrimitiveTypeChecker('array'),
+ bool: createPrimitiveTypeChecker('boolean'),
+ func: createPrimitiveTypeChecker('function'),
+ number: createPrimitiveTypeChecker('number'),
+ object: createPrimitiveTypeChecker('object'),
+ string: createPrimitiveTypeChecker('string'),
+ symbol: createPrimitiveTypeChecker('symbol'),
+
+ any: createAnyTypeChecker(),
+ arrayOf: createArrayOfTypeChecker,
+ element: createElementTypeChecker(),
+ instanceOf: createInstanceTypeChecker,
+ node: createNodeChecker(),
+ objectOf: createObjectOfTypeChecker,
+ oneOf: createEnumTypeChecker,
+ oneOfType: createUnionTypeChecker,
+ shape: createShapeTypeChecker,
+ exact: createStrictShapeTypeChecker,
+ };
+
+ /**
+ * inlined Object.is polyfill to avoid requiring consumers ship their own
+ * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is
+ */
+ /*eslint-disable no-self-compare*/
+ function is(x, y) {
+ // SameValue algorithm
+ if (x === y) {
+ // Steps 1-5, 7-10
+ // Steps 6.b-6.e: +0 != -0
+ return x !== 0 || 1 / x === 1 / y;
+ } else {
+ // Step 6.a: NaN == NaN
+ return x !== x && y !== y;
+ }
+ }
+ /*eslint-enable no-self-compare*/
+
+ /**
+ * We use an Error-like object for backward compatibility as people may call
+ * PropTypes directly and inspect their output. However, we don't use real
+ * Errors anymore. We don't inspect their stack anyway, and creating them
+ * is prohibitively expensive if they are created too often, such as what
+ * happens in oneOfType() for any type before the one that matched.
+ */
+ function PropTypeError(message) {
+ this.message = message;
+ this.stack = '';
+ }
+ // Make `instanceof Error` still work for returned errors.
+ PropTypeError.prototype = Error.prototype;
+
+ function createChainableTypeChecker(validate) {
+ if (process.env.NODE_ENV !== 'production') {
+ var manualPropTypeCallCache = {};
+ var manualPropTypeWarningCount = 0;
+ }
+ function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {
+ componentName = componentName || ANONYMOUS;
+ propFullName = propFullName || propName;
+
+ if (secret !== ReactPropTypesSecret) {
+ if (throwOnDirectAccess) {
+ // New behavior only for users of `prop-types` package
+ invariant(
+ false,
+ 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +
+ 'Use `PropTypes.checkPropTypes()` to call them. ' +
+ 'Read more at http://fb.me/use-check-prop-types'
+ );
+ } else if (process.env.NODE_ENV !== 'production' && typeof console !== 'undefined') {
+ // Old behavior for people using React.PropTypes
+ var cacheKey = componentName + ':' + propName;
+ if (
+ !manualPropTypeCallCache[cacheKey] &&
+ // Avoid spamming the console because they are often not actionable except for lib authors
+ manualPropTypeWarningCount < 3
+ ) {
+ warning(
+ false,
+ 'You are manually calling a React.PropTypes validation ' +
+ 'function for the `%s` prop on `%s`. This is deprecated ' +
+ 'and will throw in the standalone `prop-types` package. ' +
+ 'You may be seeing this warning due to a third-party PropTypes ' +
+ 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.',
+ propFullName,
+ componentName
+ );
+ manualPropTypeCallCache[cacheKey] = true;
+ manualPropTypeWarningCount++;
+ }
+ }
+ }
+ if (props[propName] == null) {
+ if (isRequired) {
+ if (props[propName] === null) {
+ return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));
+ }
+ return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));
+ }
+ return null;
+ } else {
+ return validate(props, propName, componentName, location, propFullName);
+ }
+ }
+
+ var chainedCheckType = checkType.bind(null, false);
+ chainedCheckType.isRequired = checkType.bind(null, true);
+
+ return chainedCheckType;
+ }
+
+ function createPrimitiveTypeChecker(expectedType) {
+ function validate(props, propName, componentName, location, propFullName, secret) {
+ var propValue = props[propName];
+ var propType = getPropType(propValue);
+ if (propType !== expectedType) {
+ // `propValue` being instance of, say, date/regexp, pass the 'object'
+ // check, but we can offer a more precise error message here rather than
+ // 'of type `object`'.
+ var preciseType = getPreciseType(propValue);
+
+ return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'));
+ }
+ return null;
+ }
+ return createChainableTypeChecker(validate);
+ }
+
+ function createAnyTypeChecker() {
+ return createChainableTypeChecker(emptyFunction.thatReturnsNull);
+ }
+
+ function createArrayOfTypeChecker(typeChecker) {
+ function validate(props, propName, componentName, location, propFullName) {
+ if (typeof typeChecker !== 'function') {
+ return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');
+ }
+ var propValue = props[propName];
+ if (!Array.isArray(propValue)) {
+ var propType = getPropType(propValue);
+ return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));
+ }
+ for (var i = 0; i < propValue.length; i++) {
+ var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);
+ if (error instanceof Error) {
+ return error;
+ }
+ }
+ return null;
+ }
+ return createChainableTypeChecker(validate);
+ }
+
+ function createElementTypeChecker() {
+ function validate(props, propName, componentName, location, propFullName) {
+ var propValue = props[propName];
+ if (!isValidElement(propValue)) {
+ var propType = getPropType(propValue);
+ return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));
+ }
+ return null;
+ }
+ return createChainableTypeChecker(validate);
+ }
+
+ function createInstanceTypeChecker(expectedClass) {
+ function validate(props, propName, componentName, location, propFullName) {
+ if (!(props[propName] instanceof expectedClass)) {
+ var expectedClassName = expectedClass.name || ANONYMOUS;
+ var actualClassName = getClassName(props[propName]);
+ return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));
+ }
+ return null;
+ }
+ return createChainableTypeChecker(validate);
+ }
+
+ function createEnumTypeChecker(expectedValues) {
+ if (!Array.isArray(expectedValues)) {
+ process.env.NODE_ENV !== 'production' ? warning(false, 'Invalid argument supplied to oneOf, expected an instance of array.') : void 0;
+ return emptyFunction.thatReturnsNull;
+ }
+
+ function validate(props, propName, componentName, location, propFullName) {
+ var propValue = props[propName];
+ for (var i = 0; i < expectedValues.length; i++) {
+ if (is(propValue, expectedValues[i])) {
+ return null;
+ }
+ }
+
+ var valuesString = JSON.stringify(expectedValues);
+ return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + propValue + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));
+ }
+ return createChainableTypeChecker(validate);
+ }
+
+ function createObjectOfTypeChecker(typeChecker) {
+ function validate(props, propName, componentName, location, propFullName) {
+ if (typeof typeChecker !== 'function') {
+ return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');
+ }
+ var propValue = props[propName];
+ var propType = getPropType(propValue);
+ if (propType !== 'object') {
+ return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));
+ }
+ for (var key in propValue) {
+ if (propValue.hasOwnProperty(key)) {
+ var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
+ if (error instanceof Error) {
+ return error;
+ }
+ }
+ }
+ return null;
+ }
+ return createChainableTypeChecker(validate);
+ }
+
+ function createUnionTypeChecker(arrayOfTypeCheckers) {
+ if (!Array.isArray(arrayOfTypeCheckers)) {
+ process.env.NODE_ENV !== 'production' ? warning(false, 'Invalid argument supplied to oneOfType, expected an instance of array.') : void 0;
+ return emptyFunction.thatReturnsNull;
+ }
+
+ for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
+ var checker = arrayOfTypeCheckers[i];
+ if (typeof checker !== 'function') {
+ warning(
+ false,
+ 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +
+ 'received %s at index %s.',
+ getPostfixForTypeWarning(checker),
+ i
+ );
+ return emptyFunction.thatReturnsNull;
+ }
+ }
+
+ function validate(props, propName, componentName, location, propFullName) {
+ for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
+ var checker = arrayOfTypeCheckers[i];
+ if (checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret) == null) {
+ return null;
+ }
+ }
+
+ return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`.'));
+ }
+ return createChainableTypeChecker(validate);
+ }
+
+ function createNodeChecker() {
+ function validate(props, propName, componentName, location, propFullName) {
+ if (!isNode(props[propName])) {
+ return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));
+ }
+ return null;
+ }
+ return createChainableTypeChecker(validate);
+ }
+
+ function createShapeTypeChecker(shapeTypes) {
+ function validate(props, propName, componentName, location, propFullName) {
+ var propValue = props[propName];
+ var propType = getPropType(propValue);
+ if (propType !== 'object') {
+ return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
+ }
+ for (var key in shapeTypes) {
+ var checker = shapeTypes[key];
+ if (!checker) {
+ continue;
+ }
+ var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
+ if (error) {
+ return error;
+ }
+ }
+ return null;
+ }
+ return createChainableTypeChecker(validate);
+ }
+
+ function createStrictShapeTypeChecker(shapeTypes) {
+ function validate(props, propName, componentName, location, propFullName) {
+ var propValue = props[propName];
+ var propType = getPropType(propValue);
+ if (propType !== 'object') {
+ return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
+ }
+ // We need to check all keys in case some are required but missing from
+ // props.
+ var allKeys = assign({}, props[propName], shapeTypes);
+ for (var key in allKeys) {
+ var checker = shapeTypes[key];
+ if (!checker) {
+ return new PropTypeError(
+ 'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +
+ '\nBad object: ' + JSON.stringify(props[propName], null, ' ') +
+ '\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')
+ );
+ }
+ var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
+ if (error) {
+ return error;
+ }
+ }
+ return null;
+ }
+
+ return createChainableTypeChecker(validate);
+ }
+
+ function isNode(propValue) {
+ switch (typeof propValue) {
+ case 'number':
+ case 'string':
+ case 'undefined':
+ return true;
+ case 'boolean':
+ return !propValue;
+ case 'object':
+ if (Array.isArray(propValue)) {
+ return propValue.every(isNode);
+ }
+ if (propValue === null || isValidElement(propValue)) {
+ return true;
+ }
+
+ var iteratorFn = getIteratorFn(propValue);
+ if (iteratorFn) {
+ var iterator = iteratorFn.call(propValue);
+ var step;
+ if (iteratorFn !== propValue.entries) {
+ while (!(step = iterator.next()).done) {
+ if (!isNode(step.value)) {
+ return false;
+ }
+ }
+ } else {
+ // Iterator will provide entry [k,v] tuples rather than values.
+ while (!(step = iterator.next()).done) {
+ var entry = step.value;
+ if (entry) {
+ if (!isNode(entry[1])) {
+ return false;
+ }
+ }
+ }
+ }
+ } else {
+ return false;
+ }
+
+ return true;
+ default:
+ return false;
+ }
+ }
+
+ function isSymbol(propType, propValue) {
+ // Native Symbol.
+ if (propType === 'symbol') {
+ return true;
+ }
+
+ // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'
+ if (propValue['@@toStringTag'] === 'Symbol') {
+ return true;
+ }
+
+ // Fallback for non-spec compliant Symbols which are polyfilled.
+ if (typeof Symbol === 'function' && propValue instanceof Symbol) {
+ return true;
+ }
+
+ return false;
+ }
+
+ // Equivalent of `typeof` but with special handling for array and regexp.
+ function getPropType(propValue) {
+ var propType = typeof propValue;
+ if (Array.isArray(propValue)) {
+ return 'array';
+ }
+ if (propValue instanceof RegExp) {
+ // Old webkits (at least until Android 4.0) return 'function' rather than
+ // 'object' for typeof a RegExp. We'll normalize this here so that /bla/
+ // passes PropTypes.object.
+ return 'object';
+ }
+ if (isSymbol(propType, propValue)) {
+ return 'symbol';
+ }
+ return propType;
+ }
+
+ // This handles more types than `getPropType`. Only used for error messages.
+ // See `createPrimitiveTypeChecker`.
+ function getPreciseType(propValue) {
+ if (typeof propValue === 'undefined' || propValue === null) {
+ return '' + propValue;
+ }
+ var propType = getPropType(propValue);
+ if (propType === 'object') {
+ if (propValue instanceof Date) {
+ return 'date';
+ } else if (propValue instanceof RegExp) {
+ return 'regexp';
+ }
+ }
+ return propType;
+ }
+
+ // Returns a string that is postfixed to a warning about an invalid type.
+ // For example, "undefined" or "of type array"
+ function getPostfixForTypeWarning(value) {
+ var type = getPreciseType(value);
+ switch (type) {
+ case 'array':
+ case 'object':
+ return 'an ' + type;
+ case 'boolean':
+ case 'date':
+ case 'regexp':
+ return 'a ' + type;
+ default:
+ return type;
+ }
+ }
+
+ // Returns class name of the object, if any.
+ function getClassName(propValue) {
+ if (!propValue.constructor || !propValue.constructor.name) {
+ return ANONYMOUS;
+ }
+ return propValue.constructor.name;
+ }
+
+ ReactPropTypes.checkPropTypes = checkPropTypes;
+ ReactPropTypes.PropTypes = ReactPropTypes;
+
+ return ReactPropTypes;
+};
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/index.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/index.js
new file mode 100644
index 00000000..11bfceab
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/index.js
@@ -0,0 +1,28 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+if (process.env.NODE_ENV !== 'production') {
+ var REACT_ELEMENT_TYPE = (typeof Symbol === 'function' &&
+ Symbol.for &&
+ Symbol.for('react.element')) ||
+ 0xeac7;
+
+ var isValidElement = function(object) {
+ return typeof object === 'object' &&
+ object !== null &&
+ object.$$typeof === REACT_ELEMENT_TYPE;
+ };
+
+ // By explicitly using `prop-types` you are opting into new development behavior.
+ // http://fb.me/prop-types-in-prod
+ var throwOnDirectAccess = true;
+ module.exports = require('./factoryWithTypeCheckers')(isValidElement, throwOnDirectAccess);
+} else {
+ // By explicitly using `prop-types` you are opting into new production behavior.
+ // http://fb.me/prop-types-in-prod
+ module.exports = require('./factoryWithThrowingShims')();
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/lib/ReactPropTypesSecret.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/lib/ReactPropTypesSecret.js
new file mode 100644
index 00000000..f54525e7
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/lib/ReactPropTypesSecret.js
@@ -0,0 +1,12 @@
+/**
+ * Copyright (c) 2013-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+'use strict';
+
+var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';
+
+module.exports = ReactPropTypesSecret;
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/package.json b/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/package.json
new file mode 100644
index 00000000..26d39f95
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/package.json
@@ -0,0 +1,85 @@
+{
+ "_from": "prop-types@^15.6.0",
+ "_id": "prop-types@15.6.0",
+ "_inBundle": false,
+ "_integrity": "sha1-zq8IMCL8RrSjX2nhPvda7Q1jmFY=",
+ "_location": "/react-toastify/prop-types",
+ "_phantomChildren": {},
+ "_requested": {
+ "type": "range",
+ "registry": true,
+ "raw": "prop-types@^15.6.0",
+ "name": "prop-types",
+ "escapedName": "prop-types",
+ "rawSpec": "^15.6.0",
+ "saveSpec": null,
+ "fetchSpec": "^15.6.0"
+ },
+ "_requiredBy": [
+ "/react-toastify",
+ "/react-toastify/glamor",
+ "/react-toastify/react-transition-group"
+ ],
+ "_resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.6.0.tgz",
+ "_shasum": "ceaf083022fc46b4a35f69e13ef75aed0d639856",
+ "_spec": "prop-types@^15.6.0",
+ "_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI\\node_modules\\react-toastify",
+ "browserify": {
+ "transform": [
+ "loose-envify"
+ ]
+ },
+ "bugs": {
+ "url": "https://github.com/reactjs/prop-types/issues"
+ },
+ "bundleDependencies": false,
+ "dependencies": {
+ "fbjs": "^0.8.16",
+ "loose-envify": "^1.3.1",
+ "object-assign": "^4.1.1"
+ },
+ "deprecated": false,
+ "description": "Runtime type checking for React props and similar objects.",
+ "devDependencies": {
+ "babel-jest": "^19.0.0",
+ "babel-preset-react": "^6.24.1",
+ "browserify": "^14.3.0",
+ "bundle-collapser": "^1.2.1",
+ "envify": "^4.0.0",
+ "jest": "^19.0.2",
+ "react": "^15.5.1",
+ "uglifyify": "^3.0.4",
+ "uglifyjs": "^2.4.10"
+ },
+ "files": [
+ "LICENSE",
+ "README.md",
+ "checkPropTypes.js",
+ "factory.js",
+ "factoryWithThrowingShims.js",
+ "factoryWithTypeCheckers.js",
+ "index.js",
+ "prop-types.js",
+ "prop-types.min.js",
+ "lib"
+ ],
+ "homepage": "https://facebook.github.io/react/",
+ "keywords": [
+ "react"
+ ],
+ "license": "MIT",
+ "main": "index.js",
+ "name": "prop-types",
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/reactjs/prop-types.git"
+ },
+ "scripts": {
+ "build": "yarn umd && yarn umd-min",
+ "prepublish": "yarn build",
+ "test": "jest",
+ "umd": "NODE_ENV=development browserify index.js -t envify --standalone PropTypes -o prop-types.js",
+ "umd-min": "NODE_ENV=production browserify index.js -t envify -t uglifyify --standalone PropTypes -p bundle-collapser/plugin -o | uglifyjs --compress unused,dead_code -o prop-types.min.js"
+ },
+ "version": "15.6.0"
+}
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/prop-types.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/prop-types.js
new file mode 100644
index 00000000..ba55170c
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/prop-types.js
@@ -0,0 +1,965 @@
+(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.PropTypes = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
+ args[_key - 1] = arguments[_key];
+ }
+
+ var argIndex = 0;
+ var message = 'Warning: ' + format.replace(/%s/g, function () {
+ return args[argIndex++];
+ });
+ if (typeof console !== 'undefined') {
+ console.error(message);
+ }
+ try {
+ // --- Welcome to debugging React ---
+ // This error was thrown as a convenience so that you can use this stack
+ // to find the callsite that caused this warning to fire.
+ throw new Error(message);
+ } catch (x) {}
+ };
+
+ warning = function warning(condition, format) {
+ if (format === undefined) {
+ throw new Error('`warning(condition, format, ...args)` requires a warning ' + 'message argument');
+ }
+
+ if (format.indexOf('Failed Composite propType: ') === 0) {
+ return; // Ignore CompositeComponent proptype check.
+ }
+
+ if (!condition) {
+ for (var _len2 = arguments.length, args = Array(_len2 > 2 ? _len2 - 2 : 0), _key2 = 2; _key2 < _len2; _key2++) {
+ args[_key2 - 2] = arguments[_key2];
+ }
+
+ printWarning.apply(undefined, [format].concat(args));
+ }
+ };
+ })();
+}
+
+module.exports = warning;
+},{"./emptyFunction":6}],9:[function(require,module,exports){
+/*
+object-assign
+(c) Sindre Sorhus
+@license MIT
+*/
+
+'use strict';
+/* eslint-disable no-unused-vars */
+var getOwnPropertySymbols = Object.getOwnPropertySymbols;
+var hasOwnProperty = Object.prototype.hasOwnProperty;
+var propIsEnumerable = Object.prototype.propertyIsEnumerable;
+
+function toObject(val) {
+ if (val === null || val === undefined) {
+ throw new TypeError('Object.assign cannot be called with null or undefined');
+ }
+
+ return Object(val);
+}
+
+function shouldUseNative() {
+ try {
+ if (!Object.assign) {
+ return false;
+ }
+
+ // Detect buggy property enumeration order in older V8 versions.
+
+ // https://bugs.chromium.org/p/v8/issues/detail?id=4118
+ var test1 = new String('abc'); // eslint-disable-line no-new-wrappers
+ test1[5] = 'de';
+ if (Object.getOwnPropertyNames(test1)[0] === '5') {
+ return false;
+ }
+
+ // https://bugs.chromium.org/p/v8/issues/detail?id=3056
+ var test2 = {};
+ for (var i = 0; i < 10; i++) {
+ test2['_' + String.fromCharCode(i)] = i;
+ }
+ var order2 = Object.getOwnPropertyNames(test2).map(function (n) {
+ return test2[n];
+ });
+ if (order2.join('') !== '0123456789') {
+ return false;
+ }
+
+ // https://bugs.chromium.org/p/v8/issues/detail?id=3056
+ var test3 = {};
+ 'abcdefghijklmnopqrst'.split('').forEach(function (letter) {
+ test3[letter] = letter;
+ });
+ if (Object.keys(Object.assign({}, test3)).join('') !==
+ 'abcdefghijklmnopqrst') {
+ return false;
+ }
+
+ return true;
+ } catch (err) {
+ // We don't expect any of the above to throw, but better to be safe.
+ return false;
+ }
+}
+
+module.exports = shouldUseNative() ? Object.assign : function (target, source) {
+ var from;
+ var to = toObject(target);
+ var symbols;
+
+ for (var s = 1; s < arguments.length; s++) {
+ from = Object(arguments[s]);
+
+ for (var key in from) {
+ if (hasOwnProperty.call(from, key)) {
+ to[key] = from[key];
+ }
+ }
+
+ if (getOwnPropertySymbols) {
+ symbols = getOwnPropertySymbols(from);
+ for (var i = 0; i < symbols.length; i++) {
+ if (propIsEnumerable.call(from, symbols[i])) {
+ to[symbols[i]] = from[symbols[i]];
+ }
+ }
+ }
+ }
+
+ return to;
+};
+
+},{}]},{},[4])(4)
+});
\ No newline at end of file
diff --git a/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/prop-types.min.js b/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/prop-types.min.js
new file mode 100644
index 00000000..71af27b7
--- /dev/null
+++ b/goTorrentWebUI/node_modules/react-toastify/node_modules/prop-types/prop-types.min.js
@@ -0,0 +1 @@
+!function(f){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=f();else if("function"==typeof define&&define.amd)define([],f);else{var g;g="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,g.PropTypes=f()}}(function(){return function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a="function"==typeof require&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}for(var i="function"==typeof require&&require,o=0;o` callback fired immediately after the 'enter' or 'appear' class is
+ * applied.
+ *
+ * @type Function(node: HtmlElement, isAppearing: bool)
+ */
+ onEnter: PropTypes.func,
+
+ /**
+ * A `` callback fired immediately after the 'enter-active' or
+ * 'appear-active' class is applied.
+ *
+ * @type Function(node: HtmlElement, isAppearing: bool)
+ */
+ onEntering: PropTypes.func,
+
+ /**
+ * A `` callback fired immediately after the 'enter' or
+ * 'appear' classes are **removed** from the DOM node.
+ *
+ * @type Function(node: HtmlElement, isAppearing: bool)
+ */
+ onEntered: PropTypes.func,
+
+ /**
+ * A `` callback fired immediately after the 'exit' class is
+ * applied.
+ *
+ * @type Function(node: HtmlElement)
+ */
+ onExit: PropTypes.func,
+
+ /**
+ * A `` callback fired immediately after the 'exit-active' is applied.
+ *
+ * @type Function(node: HtmlElement
+ */
+ onExiting: PropTypes.func,
+
+ /**
+ * A `` callback fired immediately after the 'exit' classes
+ * are **removed** from the DOM node.
+ *
+ * @type Function(node: HtmlElement)
+ */
+ onExited: PropTypes.func
+});
+
+/**
+ * A `Transition` component using CSS transitions and animations.
+ * It's inspired by the excellent [ng-animate](http://www.nganimate.org/) library.
+ *
+ * `CSSTransition` applies a pair of class names during the `appear`, `enter`,
+ * and `exit` stages of the transition. The first class is applied and then a
+ * second "active" class in order to activate the css animation.
+ *
+ * When the `in` prop is toggled to `true` the Component will get
+ * the `example-enter` CSS class and the `example-enter-active` CSS class
+ * added in the next tick. This is a convention based on the `classNames` prop.
+ *
+ * ```js
+ * import CSSTransition from 'react-transition-group/CSSTransition';
+ *
+ * const Fade = ({ children, ...props }) => (
+ *