From da671a7d5be2d8f301bdfc09fe97481776dcfd69 Mon Sep 17 00:00:00 2001 From: Ronald Ray Date: Fri, 15 Mar 2019 09:33:30 -0700 Subject: [PATCH] Maven Version set to 1.1.0, EC to 2.7.1, updated submodules --- pom.xml | 4 +- src/main/js/cass.js | 573 ++-- src/main/js/cass.min.js | 2371 +++++++++-------- src/main/js/cass/cass.competency.js | 42 +- src/main/js/cass/cass.import.js | 12 +- src/main/js/cass/cass.rollup.js | 148 +- src/main/js/cass/ebac.repository.js | 14 +- src/main/js/cass/ec.base.js | 150 +- .../js/cass/org.cassproject.schema.cass.js | 14 +- src/main/js/cass/org.schema.js | 193 +- src/main/webapp/cass-align | 2 +- src/main/webapp/cass-editor | 2 +- src/main/webapp/cass-gap-analysis | 2 +- src/main/webapp/cass-profile | 2 +- src/main/webapp/cass-viewer | 2 +- src/main/webapp/cass-vlrc | 2 +- src/main/webapp/pom.xml | 2 +- 17 files changed, 1969 insertions(+), 1566 deletions(-) diff --git a/pom.xml b/pom.xml index bba56523d..c3bbecb67 100644 --- a/pom.xml +++ b/pom.xml @@ -5,11 +5,11 @@ org.cassproject cass war - 1.0.10 + 1.1.0 UTF-8 - 2.7.0 + 2.7.1 5.15.1 diff --git a/src/main/js/cass.js b/src/main/js/cass.js index fcab2d54e..0ed761a44 100644 --- a/src/main/js/cass.js +++ b/src/main/js/cass.js @@ -33118,13 +33118,7 @@ EcArray = stjs.extend(EcArray, null, [], function(constructor, prototype) { * @method setAdd */ constructor.setAdd = function(a, o) { - var inThere = false; - for (var i = 0; i < a.length; i++) - if (a[i] == o) { - inThere = true; - break; - } - if (!inThere) + if (!EcArray.has(a, o)) a.push(o); }; /** @@ -33136,10 +33130,8 @@ EcArray = stjs.extend(EcArray, null, [], function(constructor, prototype) { * @method setAdd */ constructor.setRemove = function(a, o) { - for (var i = 0; i < a.length; i++) - while (a[i] == o){ - a.splice(i, 1); - } + while (EcArray.has(a, o)) + a.splice(EcArray.indexOf(a, o), 1); }; /** * Returns true if the array has the value already. @@ -33150,13 +33142,56 @@ EcArray = stjs.extend(EcArray, null, [], function(constructor, prototype) { * @method has */ constructor.has = function(a, o) { - var inThere = false; - for (var i = 0; i < a.length; i++) - if (a[i] == o) { - return true; + if (EcArray.isObject(o)) + for (var i = 0; i < a.length; i++) { + if (a[i] == o) + return true; + try { + if (a[i].equals(o)) + return true; + }catch (e) {} + } + else + for (var i = 0; i < a.length; i++) { + if (a[i] == o) { + return true; + } } return false; }; + /** + * Returns true if the result is an object. + * + * @param {any} o Object to test. + * @return true iff the object is an object. + * @static + * @method isObject + */ + constructor.isObject = function(o) { + if (EcArray.isArray(o)) + return false; + if (o == null) + return false; + return (typeof o) == "object"; + }; + constructor.indexOf = function(a, o) { + if (EcArray.isObject(o)) + for (var i = 0; i < a.length; i++) { + if (a[i] == o) + return i; + try { + if (a[i].equals(o)) + return i; + }catch (e) {} + } + else + for (var i = 0; i < a.length; i++) { + if (a[i] == o) { + return i; + } + } + return -1; + }; }, {}, {}); var Callback5 = function() {}; Callback5 = stjs.extend(Callback5, null, [], function(constructor, prototype) { @@ -34209,7 +34244,10 @@ Task = stjs.extend(Task, null, [], function(constructor, prototype) { * @module com.eduworks.ec * @extends Graph */ -var EcDirectedGraph = function() {}; +var EcDirectedGraph = function() { + this.edges = new Array(); + this.verticies = new Array(); +}; EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(constructor, prototype) { prototype.edges = null; prototype.verticies = null; @@ -34227,13 +34265,13 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct }; prototype.containsVertex = function(vertex) { for (var i = 0; i < this.verticies.length; i++) - if (vertex == this.verticies[i]) + if (vertex.equals(this.verticies[i])) return true; return false; }; prototype.containsEdge = function(edge) { for (var i = 0; i < this.edges.length; i++) - if (edge == this.edges[i].edge) + if (edge.equals(this.edges[i].edge)) return true; return false; }; @@ -34246,9 +34284,9 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct prototype.getNeighbors = function(vertex) { var results = new Array(); for (var i = 0; i < this.edges.length; i++) { - if (vertex == this.edges[i].source) + if (vertex.equals(this.edges[i].source)) results.push(this.edges[i].destination); - else if (vertex == this.edges[i].destination) + else if (vertex.equals(this.edges[i].destination)) results.push(this.edges[i].source); } EcArray.removeDuplicates(results); @@ -34257,9 +34295,9 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct prototype.getIncidentEdges = function(vertex) { var results = new Array(); for (var i = 0; i < this.edges.length; i++) { - if (vertex == this.edges[i].source) + if (vertex.equals(this.edges[i].source)) results.push(this.edges[i].edge); - else if (vertex == this.edges[i].destination) + else if (vertex.equals(this.edges[i].destination)) results.push(this.edges[i].edge); } EcArray.removeDuplicates(results); @@ -34268,7 +34306,7 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct prototype.getIncidentVertices = function(edge) { var results = new Array(); for (var i = 0; i < this.edges.length; i++) { - if (edge == this.edges[i].edge) { + if (edge.equals(this.edges[i].edge)) { results.push(this.edges[i].source); results.push(this.edges[i].destination); } @@ -34278,9 +34316,9 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct }; prototype.findEdge = function(v1, v2) { for (var i = 0; i < this.edges.length; i++) { - if (v1 == this.edges[i].source && v2 == this.edges[i].destination) + if (v1.equals(this.edges[i].source) && v2.equals(this.edges[i].destination)) return this.edges[i].edge; - if (v1 == this.edges[i].destination && v2 == this.edges[i].source) + if (v1.equals(this.edges[i].destination) && v2.equals(this.edges[i].source)) return this.edges[i].edge; } return null; @@ -34288,24 +34326,24 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct prototype.findEdgeSet = function(v1, v2) { var results = new Array(); for (var i = 0; i < this.edges.length; i++) { - if (v1 == this.edges[i].source && v2 == this.edges[i].destination) + if (v1.equals(this.edges[i].source) && v2.equals(this.edges[i].destination)) results.push(this.edges[i].edge); - if (v1 == this.edges[i].destination && v2 == this.edges[i].source) + if (v1.equals(this.edges[i].destination) && v2.equals(this.edges[i].source)) results.push(this.edges[i].edge); } return results; }; prototype.addVertex = function(vertex) { - if (this.verticies.indexOf(vertex) != -1) + if (EcArray.has(this.verticies, vertex)) return false; this.verticies.push(vertex); return true; }; prototype.removeVertex = function(vertex) { - var indexOf = this.verticies.indexOf(vertex); + var indexOf = EcArray.indexOf(this.verticies, vertex); if (indexOf != -1) { for (var i = 0; i < this.edges.length; i++) { - if (this.edges[i].source == vertex || this.edges[i].destination == vertex) { + if (this.edges[i].source.equals(vertex) || this.edges[i].destination.equals(vertex)) { this.edges.splice(i, 1); i--; } @@ -34318,7 +34356,7 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct prototype.removeEdge = function(edge) { var success = false; for (var i = 0; i < this.edges.length; i++) { - if (this.edges[i].edge == edge) { + if (this.edges[i].edge.equals(edge)) { this.edges.splice(i, 1); i--; success = true; @@ -34328,16 +34366,16 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct }; prototype.isNeighbor = function(v1, v2) { for (var i = 0; i < this.edges.length; i++) { - if (v1 == this.edges[i].source && v2 == this.edges[i].destination) + if (v1.equals(this.edges[i].source) && v2.equals(this.edges[i].destination)) return true; - else if (v1 == this.edges[i].destination && v2 == this.edges[i].source) + else if (v1.equals(this.edges[i].destination) && v2.equals(this.edges[i].source)) return true; } return false; }; prototype.isIncident = function(vertex, edge) { for (var i = 0; i < this.edges.length; i++) { - if ((vertex == this.edges[i].source || vertex == this.edges[i].destination) && edge == this.edges[i].edge) + if ((vertex.equals(this.edges[i].source) || vertex.equals(this.edges[i].destination)) && edge.equals(this.edges[i].edge)) return true; } return false; @@ -34345,7 +34383,7 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct prototype.degree = function(vertex) { var count = 0; for (var i = 0; i < this.edges.length; i++) { - if (vertex == this.edges[i].source || vertex == this.edges[i].destination) + if (vertex.equals(this.edges[i].source) || vertex.equals(this.edges[i].destination)) count++; } return count; @@ -34372,7 +34410,7 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct prototype.getInEdges = function(vertex) { var results = new Array(); for (var i = 0; i < this.edges.length; i++) { - if (vertex == this.edges[i].destination) + if (vertex.equals(this.edges[i].destination)) results.push(this.edges[i].edge); } EcArray.removeDuplicates(results); @@ -34381,7 +34419,7 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct prototype.getOutEdges = function(vertex) { var results = new Array(); for (var i = 0; i < this.edges.length; i++) { - if (vertex == this.edges[i].source) + if (vertex.equals(this.edges[i].source)) results.push(this.edges[i].edge); } EcArray.removeDuplicates(results); @@ -34395,14 +34433,14 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct }; prototype.getSource = function(directed_edge) { for (var i = 0; i < this.edges.length; i++) { - if (directed_edge == this.edges[i].edge) + if (directed_edge.equals(this.edges[i].edge)) return this.edges[i].source; } return null; }; prototype.getDest = function(directed_edge) { for (var i = 0; i < this.edges.length; i++) { - if (directed_edge == this.edges[i].edge) + if (directed_edge.equals(this.edges[i].edge)) return this.edges[i].destination; } return null; @@ -34410,7 +34448,7 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct prototype.getPredecessors = function(vertex) { var results = new Array(); for (var i = 0; i < this.edges.length; i++) { - if (vertex == this.edges[i].destination) + if (vertex.equals(this.edges[i].destination)) results.push(this.edges[i].source); } EcArray.removeDuplicates(results); @@ -34419,7 +34457,7 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct prototype.getSuccessors = function(vertex) { var results = new Array(); for (var i = 0; i < this.edges.length; i++) { - if (vertex == this.edges[i].source) + if (vertex.equals(this.edges[i].source)) results.push(this.edges[i].destination); } EcArray.removeDuplicates(results); @@ -34427,16 +34465,16 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct }; prototype.isPredecessor = function(v1, v2) { for (var i = 0; i < this.edges.length; i++) { - if (v1 == this.edges[i].destination) - if (v2 == this.edges[i].source) + if (v1.equals(this.edges[i].destination)) + if (v2.equals(this.edges[i].source)) return true; } return false; }; prototype.isSuccessor = function(v1, v2) { for (var i = 0; i < this.edges.length; i++) { - if (v2 == this.edges[i].destination) - if (v1 == this.edges[i].source) + if (v2.equals(this.edges[i].destination)) + if (v1.equals(this.edges[i].source)) return true; } return false; @@ -34449,16 +34487,16 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct }; prototype.isSource = function(vertex, edge) { for (var i = 0; i < this.edges.length; i++) { - if (edge == this.edges[i].edge) - if (vertex == this.edges[i].source) + if (edge.equals(this.edges[i].edge)) + if (vertex.equals(this.edges[i].source)) return true; } return false; }; prototype.isDest = function(vertex, edge) { for (var i = 0; i < this.edges.length; i++) { - if (edge == this.edges[i].edge) - if (vertex == this.edges[i].destination) + if (edge.equals(this.edges[i].edge)) + if (vertex.equals(this.edges[i].destination)) return true; } return false; @@ -34470,17 +34508,17 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct t.source = v1; t.destination = v2; t.edge = e; - if (this.edges.indexOf(t) != -1) + if (EcArray.has(this.edges, t)) return false; this.edges.push(t); return true; }; prototype.getOpposite = function(vertex, edge) { for (var i = 0; i < this.edges.length; i++) { - if (edge == this.edges[i].edge) - if (vertex == this.edges[i].destination) + if (edge.equals(this.edges[i].edge)) + if (vertex.equals(this.edges[i].destination)) return this.edges[i].source; - else if (vertex == this.edges[i].source) + else if (vertex.equals(this.edges[i].source)) return this.edges[i].destination; } return null; @@ -34533,6 +34571,12 @@ EcAsyncHelper = stjs.extend(EcAsyncHelper, null, [], function(constructor, proto }); }); }; + prototype.failWithCallback = function(failure, callback) { + return function(s) { + callback(); + failure(s); + }; + }; /** * Will prevent 'after' from being called. * @@ -43889,7 +43933,7 @@ Place = stjs.extend(Place, Thing, [], function(constructor, prototype) { * A URL to a map of the place. * * @property hasMap - * @type Map + * @type Object */ prototype.hasMap = null; /** @@ -44004,7 +44048,7 @@ Place = stjs.extend(Place, Thing, [], function(constructor, prototype) { * @type Place */ prototype.containedIn = null; -}, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Person * A person (alive, dead, undead, or fictional). @@ -46287,7 +46331,7 @@ function() { this.context = "http://schema.org/"; this.type = "Residence"; }; -Residence = stjs.extend(Residence, Place, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Residence = stjs.extend(Residence, Place, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Accommodation * An accommodation is a place that can accommodate human beings, e.g. a hotel room, a camping pitch, or a meeting room. Many accommodations are for overnight stays, but this is not a mandatory requirement. @@ -46353,7 +46397,7 @@ Accommodation = stjs.extend(Accommodation, Place, [], function(constructor, prot * @type Text */ prototype.permittedUsage = null; -}, {floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/LandmarksOrHistoricalBuildings * An historical landmark or building. @@ -46373,7 +46417,7 @@ function() { this.context = "http://schema.org/"; this.type = "LandmarksOrHistoricalBuildings"; }; -LandmarksOrHistoricalBuildings = stjs.extend(LandmarksOrHistoricalBuildings, Place, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +LandmarksOrHistoricalBuildings = stjs.extend(LandmarksOrHistoricalBuildings, Place, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/CivicStructure * A public structure, such as a town hall or concert hall. @@ -46402,7 +46446,7 @@ CivicStructure = stjs.extend(CivicStructure, Place, [], function(constructor, pr * @type Text */ prototype.openingHours = null; -}, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Landform * A landform or physical feature. Landform elements include mountains, plains, lakes, rivers, seascape and oceanic waterbody interface features such as bays, peninsulas, seas and so forth, including sub-aqueous terrain features such as submersed mountain ranges, volcanoes, and the great ocean basins. @@ -46422,7 +46466,7 @@ function() { this.context = "http://schema.org/"; this.type = "Landform"; }; -Landform = stjs.extend(Landform, Place, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Landform = stjs.extend(Landform, Place, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/AdministrativeArea * A geographical region, typically under the jurisdiction of a particular government. @@ -46442,7 +46486,7 @@ function() { this.context = "http://schema.org/"; this.type = "AdministrativeArea"; }; -AdministrativeArea = stjs.extend(AdministrativeArea, Place, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +AdministrativeArea = stjs.extend(AdministrativeArea, Place, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/TouristAttraction * A tourist attraction. @@ -46462,7 +46506,7 @@ function() { this.context = "http://schema.org/"; this.type = "TouristAttraction"; }; -TouristAttraction = stjs.extend(TouristAttraction, Place, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +TouristAttraction = stjs.extend(TouristAttraction, Place, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Quantity * Quantities such as distance, time, mass, weight, etc. Particular instances of say Mass are entities like '3 Kg' or '4 milligrams'. @@ -51938,35 +51982,6 @@ function() { this.type = "Season"; }; Season = stjs.extend(Season, CreativeWork, [], null, {about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); -/** - * Schema.org/Map - * A map. - * - * @author schema.org - * @class Map - * @module org.schema - * @extends CreativeWork - */ -var Map = /** - * Constructor, automatically sets @context and @type. - * - * @constructor - */ -function() { - CreativeWork.call(this); - this.context = "http://schema.org/"; - this.type = "Map"; -}; -Map = stjs.extend(Map, CreativeWork, [], function(constructor, prototype) { - /** - * Schema.org/mapType - * Indicates the kind of Map, from the MapCategoryType Enumeration. - * - * @property mapType - * @type MapCategoryType - */ - prototype.mapType = null; -}, {mapType: "MapCategoryType", about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Dataset * A body of structured information describing some topic(s) of interest. @@ -53837,7 +53852,7 @@ function() { this.context = "http://schema.org/"; this.type = "GatedResidenceCommunity"; }; -GatedResidenceCommunity = stjs.extend(GatedResidenceCommunity, Residence, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +GatedResidenceCommunity = stjs.extend(GatedResidenceCommunity, Residence, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/ApartmentComplex * Residence type: Apartment complex. @@ -53857,7 +53872,7 @@ function() { this.context = "http://schema.org/"; this.type = "ApartmentComplex"; }; -ApartmentComplex = stjs.extend(ApartmentComplex, Residence, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +ApartmentComplex = stjs.extend(ApartmentComplex, Residence, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/CampingPitch * A camping pitch is an individual place for overnight stay in the outdoors, typically being part of a larger camping site. @@ -53879,7 +53894,7 @@ function() { this.context = "http://schema.org/"; this.type = "CampingPitch"; }; -CampingPitch = stjs.extend(CampingPitch, Accommodation, [], null, {floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +CampingPitch = stjs.extend(CampingPitch, Accommodation, [], null, {floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Suite * A suite in a hotel or other public accommodation, denotes a class of luxury accommodations, the key feature of which is multiple rooms (Source: Wikipedia, the free encyclopedia, see http://en.wikipedia.org/wiki/Suite_(hotel)). @@ -53929,7 +53944,7 @@ Suite = stjs.extend(Suite, Accommodation, [], function(constructor, prototype) { * @type Number */ prototype.numberOfRooms = null; -}, {occupancy: "QuantitativeValue", bed: "BedDetails", floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {occupancy: "QuantitativeValue", bed: "BedDetails", floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/House * A house is a building or structure that has the ability to be occupied for habitation by humans or other creatures (Source: Wikipedia, the free encyclopedia, see http://en.wikipedia.org/wiki/House). @@ -53959,7 +53974,7 @@ House = stjs.extend(House, Accommodation, [], function(constructor, prototype) { * @type Number */ prototype.numberOfRooms = null; -}, {floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Room * A room is a distinguishable space within a structure, usually separated from other spaces by interior walls. (Source: Wikipedia, the free encyclopedia, see http://en.wikipedia.org/wiki/Room). @@ -53981,7 +53996,7 @@ function() { this.context = "http://schema.org/"; this.type = "Room"; }; -Room = stjs.extend(Room, Accommodation, [], null, {floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Room = stjs.extend(Room, Accommodation, [], null, {floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Apartment * An apartment (in American English) or flat (in British English) is a self-contained housing unit (a type of residential real estate) that occupies only part of a building (Source: Wikipedia, the free encyclopedia, see http://en.wikipedia.org/wiki/Apartment). @@ -54020,7 +54035,7 @@ Apartment = stjs.extend(Apartment, Accommodation, [], function(constructor, prot * @type Number */ prototype.numberOfRooms = null; -}, {occupancy: "QuantitativeValue", floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {occupancy: "QuantitativeValue", floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/PoliceStation * A police station. @@ -54040,7 +54055,7 @@ function() { this.context = "http://schema.org/"; this.type = "PoliceStation"; }; -PoliceStation = stjs.extend(PoliceStation, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +PoliceStation = stjs.extend(PoliceStation, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Bridge * A bridge. @@ -54060,7 +54075,7 @@ function() { this.context = "http://schema.org/"; this.type = "Bridge"; }; -Bridge = stjs.extend(Bridge, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Bridge = stjs.extend(Bridge, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/SubwayStation * A subway station. @@ -54080,7 +54095,7 @@ function() { this.context = "http://schema.org/"; this.type = "SubwayStation"; }; -SubwayStation = stjs.extend(SubwayStation, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +SubwayStation = stjs.extend(SubwayStation, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/BusStation * A bus station. @@ -54100,7 +54115,7 @@ function() { this.context = "http://schema.org/"; this.type = "BusStation"; }; -BusStation = stjs.extend(BusStation, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +BusStation = stjs.extend(BusStation, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/GovernmentBuilding * A government building. @@ -54120,7 +54135,7 @@ function() { this.context = "http://schema.org/"; this.type = "GovernmentBuilding"; }; -GovernmentBuilding = stjs.extend(GovernmentBuilding, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +GovernmentBuilding = stjs.extend(GovernmentBuilding, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/BusStop * A bus stop. @@ -54140,7 +54155,7 @@ function() { this.context = "http://schema.org/"; this.type = "BusStop"; }; -BusStop = stjs.extend(BusStop, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +BusStop = stjs.extend(BusStop, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Beach * Beach. @@ -54160,7 +54175,7 @@ function() { this.context = "http://schema.org/"; this.type = "Beach"; }; -Beach = stjs.extend(Beach, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Beach = stjs.extend(Beach, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/TaxiStand * A taxi stand. @@ -54180,7 +54195,7 @@ function() { this.context = "http://schema.org/"; this.type = "TaxiStand"; }; -TaxiStand = stjs.extend(TaxiStand, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +TaxiStand = stjs.extend(TaxiStand, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Campground * A camping site, campsite, or campground is a place used for overnight stay in the outdoors. In British English a campsite is an area, usually divided into a number of pitches, where people can camp overnight using tents or camper vans or caravans; this British English use of the word is synonymous with the American English expression campground. In American English the term campsite generally means an area where an individual, family, group, or military unit can pitch a tent or parks a camper; a campground may contain many campsites (Source: Wikipedia, the free encyclopedia, see http://en.wikipedia.org/wiki/Campsite). @@ -54202,7 +54217,7 @@ function() { this.context = "http://schema.org/"; this.type = "Campground"; }; -Campground = stjs.extend(Campground, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Campground = stjs.extend(Campground, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Park * A park. @@ -54222,7 +54237,7 @@ function() { this.context = "http://schema.org/"; this.type = "Park"; }; -Park = stjs.extend(Park, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Park = stjs.extend(Park, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Cemetery * A graveyard. @@ -54242,7 +54257,7 @@ function() { this.context = "http://schema.org/"; this.type = "Cemetery"; }; -Cemetery = stjs.extend(Cemetery, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Cemetery = stjs.extend(Cemetery, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/TrainStation * A train station. @@ -54262,7 +54277,7 @@ function() { this.context = "http://schema.org/"; this.type = "TrainStation"; }; -TrainStation = stjs.extend(TrainStation, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +TrainStation = stjs.extend(TrainStation, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/MovieTheater * A movie theater. @@ -54291,7 +54306,7 @@ MovieTheater = stjs.extend(MovieTheater, CivicStructure, [], function(constructo * @type Number */ prototype.screenCount = null; -}, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Hospital * A hospital. @@ -54311,7 +54326,7 @@ function() { this.context = "http://schema.org/"; this.type = "Hospital"; }; -Hospital = stjs.extend(Hospital, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Hospital = stjs.extend(Hospital, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/PerformingArtsTheater * A theater or other performing art center. @@ -54331,7 +54346,7 @@ function() { this.context = "http://schema.org/"; this.type = "PerformingArtsTheater"; }; -PerformingArtsTheater = stjs.extend(PerformingArtsTheater, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +PerformingArtsTheater = stjs.extend(PerformingArtsTheater, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Airport * An airport. @@ -54368,7 +54383,7 @@ Airport = stjs.extend(Airport, CivicStructure, [], function(constructor, prototy * @type Text */ prototype.icaoCode = null; -}, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/FireStation * A fire station. With firemen. @@ -54388,7 +54403,7 @@ function() { this.context = "http://schema.org/"; this.type = "FireStation"; }; -FireStation = stjs.extend(FireStation, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +FireStation = stjs.extend(FireStation, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/EventVenue * An event venue. @@ -54408,7 +54423,7 @@ function() { this.context = "http://schema.org/"; this.type = "EventVenue"; }; -EventVenue = stjs.extend(EventVenue, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +EventVenue = stjs.extend(EventVenue, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/PlaceOfWorship * Place of worship, such as a church, synagogue, or mosque. @@ -54428,7 +54443,7 @@ function() { this.context = "http://schema.org/"; this.type = "PlaceOfWorship"; }; -PlaceOfWorship = stjs.extend(PlaceOfWorship, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +PlaceOfWorship = stjs.extend(PlaceOfWorship, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/MusicVenue * A music venue. @@ -54448,7 +54463,7 @@ function() { this.context = "http://schema.org/"; this.type = "MusicVenue"; }; -MusicVenue = stjs.extend(MusicVenue, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +MusicVenue = stjs.extend(MusicVenue, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Museum * A museum. @@ -54468,7 +54483,7 @@ function() { this.context = "http://schema.org/"; this.type = "Museum"; }; -Museum = stjs.extend(Museum, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Museum = stjs.extend(Museum, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Crematorium * A crematorium. @@ -54488,7 +54503,7 @@ function() { this.context = "http://schema.org/"; this.type = "Crematorium"; }; -Crematorium = stjs.extend(Crematorium, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Crematorium = stjs.extend(Crematorium, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Playground * A playground. @@ -54508,7 +54523,7 @@ function() { this.context = "http://schema.org/"; this.type = "Playground"; }; -Playground = stjs.extend(Playground, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Playground = stjs.extend(Playground, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Zoo * A zoo. @@ -54528,7 +54543,7 @@ function() { this.context = "http://schema.org/"; this.type = "Zoo"; }; -Zoo = stjs.extend(Zoo, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Zoo = stjs.extend(Zoo, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/RVPark * A place offering space for "Recreational Vehicles", Caravans, mobile homes and the like. @@ -54548,7 +54563,7 @@ function() { this.context = "http://schema.org/"; this.type = "RVPark"; }; -RVPark = stjs.extend(RVPark, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +RVPark = stjs.extend(RVPark, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/ParkingFacility * A parking lot or other parking facility. @@ -54568,7 +54583,7 @@ function() { this.context = "http://schema.org/"; this.type = "ParkingFacility"; }; -ParkingFacility = stjs.extend(ParkingFacility, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +ParkingFacility = stjs.extend(ParkingFacility, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Aquarium * Aquarium. @@ -54588,7 +54603,7 @@ function() { this.context = "http://schema.org/"; this.type = "Aquarium"; }; -Aquarium = stjs.extend(Aquarium, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Aquarium = stjs.extend(Aquarium, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Continent * One of the continents (for example, Europe or Africa). @@ -54608,7 +54623,7 @@ function() { this.context = "http://schema.org/"; this.type = "Continent"; }; -Continent = stjs.extend(Continent, Landform, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Continent = stjs.extend(Continent, Landform, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Volcano * A volcano, like Fuji san. @@ -54628,7 +54643,7 @@ function() { this.context = "http://schema.org/"; this.type = "Volcano"; }; -Volcano = stjs.extend(Volcano, Landform, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Volcano = stjs.extend(Volcano, Landform, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/BodyOfWater * A body of water, such as a sea, ocean, or lake. @@ -54648,7 +54663,7 @@ function() { this.context = "http://schema.org/"; this.type = "BodyOfWater"; }; -BodyOfWater = stjs.extend(BodyOfWater, Landform, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +BodyOfWater = stjs.extend(BodyOfWater, Landform, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Mountain * A mountain, like Mount Whitney or Mount Everest. @@ -54668,7 +54683,7 @@ function() { this.context = "http://schema.org/"; this.type = "Mountain"; }; -Mountain = stjs.extend(Mountain, Landform, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Mountain = stjs.extend(Mountain, Landform, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/City * A city or town. @@ -54688,7 +54703,7 @@ function() { this.context = "http://schema.org/"; this.type = "City"; }; -City = stjs.extend(City, AdministrativeArea, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +City = stjs.extend(City, AdministrativeArea, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Country * A country. @@ -54708,7 +54723,7 @@ function() { this.context = "http://schema.org/"; this.type = "Country"; }; -Country = stjs.extend(Country, AdministrativeArea, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Country = stjs.extend(Country, AdministrativeArea, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/State * A state or province of a country. @@ -54728,7 +54743,7 @@ function() { this.context = "http://schema.org/"; this.type = "State"; }; -State = stjs.extend(State, AdministrativeArea, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +State = stjs.extend(State, AdministrativeArea, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Mass * Properties that take Mass as values are of the form '<Number> <Mass unit of measure>'. E.g., '7 kg'. @@ -56888,6 +56903,26 @@ function() { this.type = "RsvpResponseType"; }; RsvpResponseType = stjs.extend(RsvpResponseType, Enumeration, [], null, {identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +/** + * Schema.org/EventStatusType + * EventStatusType is an enumeration type whose instances represent several states that an Event may be in. + * + * @author schema.org + * @class EventStatusType + * @module org.schema + * @extends Enumeration + */ +var EventStatusType = /** + * Constructor, automatically sets @context and @type. + * + * @constructor + */ +function() { + Enumeration.call(this); + this.context = "http://schema.org/"; + this.type = "EventStatusType"; +}; +EventStatusType = stjs.extend(EventStatusType, Enumeration, [], null, {identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Specialty * Any branch of a field in which people typically develop specific expertise, usually after significant study, time, and effort. @@ -62287,7 +62322,7 @@ SingleFamilyResidence = stjs.extend(SingleFamilyResidence, House, [], function(c * @type Number */ prototype.numberOfRooms = null; -}, {occupancy: "QuantitativeValue", floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {occupancy: "QuantitativeValue", floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/HotelRoom * A hotel room is a single room in a hotel. @@ -62328,7 +62363,7 @@ HotelRoom = stjs.extend(HotelRoom, Room, [], function(constructor, prototype) { * @type BedDetails */ prototype.bed = null; -}, {occupancy: "QuantitativeValue", bed: "BedDetails", floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {occupancy: "QuantitativeValue", bed: "BedDetails", floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/MeetingRoom * A meeting room, conference room, or conference hall is a room provided for singular events such as business conferences and meetings (Source: Wikipedia, the free encyclopedia, see http://en.wikipedia.org/wiki/Conference_hall). @@ -62350,7 +62385,7 @@ function() { this.context = "http://schema.org/"; this.type = "MeetingRoom"; }; -MeetingRoom = stjs.extend(MeetingRoom, Room, [], null, {floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +MeetingRoom = stjs.extend(MeetingRoom, Room, [], null, {floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/LegislativeBuilding * A legislative building—for example, the state capitol. @@ -62370,7 +62405,7 @@ function() { this.context = "http://schema.org/"; this.type = "LegislativeBuilding"; }; -LegislativeBuilding = stjs.extend(LegislativeBuilding, GovernmentBuilding, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +LegislativeBuilding = stjs.extend(LegislativeBuilding, GovernmentBuilding, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/CityHall * A city hall. @@ -62390,7 +62425,7 @@ function() { this.context = "http://schema.org/"; this.type = "CityHall"; }; -CityHall = stjs.extend(CityHall, GovernmentBuilding, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +CityHall = stjs.extend(CityHall, GovernmentBuilding, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/DefenceEstablishment * A defence establishment, such as an army or navy base. @@ -62410,7 +62445,7 @@ function() { this.context = "http://schema.org/"; this.type = "DefenceEstablishment"; }; -DefenceEstablishment = stjs.extend(DefenceEstablishment, GovernmentBuilding, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +DefenceEstablishment = stjs.extend(DefenceEstablishment, GovernmentBuilding, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Courthouse * A courthouse. @@ -62430,7 +62465,7 @@ function() { this.context = "http://schema.org/"; this.type = "Courthouse"; }; -Courthouse = stjs.extend(Courthouse, GovernmentBuilding, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Courthouse = stjs.extend(Courthouse, GovernmentBuilding, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Embassy * An embassy. @@ -62450,7 +62485,7 @@ function() { this.context = "http://schema.org/"; this.type = "Embassy"; }; -Embassy = stjs.extend(Embassy, GovernmentBuilding, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Embassy = stjs.extend(Embassy, GovernmentBuilding, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/HinduTemple * A Hindu temple. @@ -62470,7 +62505,7 @@ function() { this.context = "http://schema.org/"; this.type = "HinduTemple"; }; -HinduTemple = stjs.extend(HinduTemple, PlaceOfWorship, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +HinduTemple = stjs.extend(HinduTemple, PlaceOfWorship, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Synagogue * A synagogue. @@ -62490,7 +62525,7 @@ function() { this.context = "http://schema.org/"; this.type = "Synagogue"; }; -Synagogue = stjs.extend(Synagogue, PlaceOfWorship, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Synagogue = stjs.extend(Synagogue, PlaceOfWorship, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Mosque * A mosque. @@ -62510,7 +62545,7 @@ function() { this.context = "http://schema.org/"; this.type = "Mosque"; }; -Mosque = stjs.extend(Mosque, PlaceOfWorship, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Mosque = stjs.extend(Mosque, PlaceOfWorship, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/BuddhistTemple * A Buddhist temple. @@ -62530,7 +62565,7 @@ function() { this.context = "http://schema.org/"; this.type = "BuddhistTemple"; }; -BuddhistTemple = stjs.extend(BuddhistTemple, PlaceOfWorship, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +BuddhistTemple = stjs.extend(BuddhistTemple, PlaceOfWorship, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Church * A church. @@ -62550,7 +62585,7 @@ function() { this.context = "http://schema.org/"; this.type = "Church"; }; -Church = stjs.extend(Church, PlaceOfWorship, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Church = stjs.extend(Church, PlaceOfWorship, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/CatholicChurch * A Catholic church. @@ -62570,7 +62605,7 @@ function() { this.context = "http://schema.org/"; this.type = "CatholicChurch"; }; -CatholicChurch = stjs.extend(CatholicChurch, PlaceOfWorship, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +CatholicChurch = stjs.extend(CatholicChurch, PlaceOfWorship, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/OceanBodyOfWater * An ocean (for example, the Pacific). @@ -62590,7 +62625,7 @@ function() { this.context = "http://schema.org/"; this.type = "OceanBodyOfWater"; }; -OceanBodyOfWater = stjs.extend(OceanBodyOfWater, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +OceanBodyOfWater = stjs.extend(OceanBodyOfWater, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Canal * A canal, like the Panama Canal. @@ -62610,7 +62645,7 @@ function() { this.context = "http://schema.org/"; this.type = "Canal"; }; -Canal = stjs.extend(Canal, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Canal = stjs.extend(Canal, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Reservoir * A reservoir of water, typically an artificially created lake, like the Lake Kariba reservoir. @@ -62630,7 +62665,7 @@ function() { this.context = "http://schema.org/"; this.type = "Reservoir"; }; -Reservoir = stjs.extend(Reservoir, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Reservoir = stjs.extend(Reservoir, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Waterfall * A waterfall, like Niagara. @@ -62650,7 +62685,7 @@ function() { this.context = "http://schema.org/"; this.type = "Waterfall"; }; -Waterfall = stjs.extend(Waterfall, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Waterfall = stjs.extend(Waterfall, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Pond * A pond. @@ -62670,7 +62705,7 @@ function() { this.context = "http://schema.org/"; this.type = "Pond"; }; -Pond = stjs.extend(Pond, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Pond = stjs.extend(Pond, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/LakeBodyOfWater * A lake (for example, Lake Pontrachain). @@ -62690,7 +62725,7 @@ function() { this.context = "http://schema.org/"; this.type = "LakeBodyOfWater"; }; -LakeBodyOfWater = stjs.extend(LakeBodyOfWater, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +LakeBodyOfWater = stjs.extend(LakeBodyOfWater, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/SeaBodyOfWater * A sea (for example, the Caspian sea). @@ -62710,7 +62745,7 @@ function() { this.context = "http://schema.org/"; this.type = "SeaBodyOfWater"; }; -SeaBodyOfWater = stjs.extend(SeaBodyOfWater, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +SeaBodyOfWater = stjs.extend(SeaBodyOfWater, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/RiverBodyOfWater * A river (for example, the broad majestic Shannon). @@ -62730,7 +62765,7 @@ function() { this.context = "http://schema.org/"; this.type = "RiverBodyOfWater"; }; -RiverBodyOfWater = stjs.extend(RiverBodyOfWater, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +RiverBodyOfWater = stjs.extend(RiverBodyOfWater, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/EmployeeRole * A subclass of OrganizationRole used to describe employee relationships. @@ -86057,7 +86092,7 @@ Competency = stjs.extend(Competency, CreativeWork, [], function(constructor, pro a.push(Competency.TYPE_0_1); return a; }; -}, {contributor: "Object", reviews: "Review", audience: "Audience", timeRequired: "Duration", publication: "PublicationEvent", contentLocation: "Place", temporalCoverage: "Object", isBasedOn: "Object", fileFormat: "Object", interactionStatistic: "InteractionCounter", recordedAt: "Event", isPartOf: "CreativeWork", exampleOfWork: "CreativeWork", dateCreated: "Object", releasedEvent: "PublicationEvent", publisher: "Object", encoding: "MediaObject", creator: "Object", hasPart: "CreativeWork", license: "Object", translator: "Object", offers: "Offer", schemaVersion: "Object", review: "Review", position: "Object", genre: "Object", character: "Person", producer: "Object", editor: "Person", locationCreated: "Place", about: "Thing", audio: "AudioObject", encodings: "MediaObject", funder: "Object", accountablePerson: "Person", material: "Object", author: "Object", sourceOrganization: "Organization", sponsor: "Object", provider: "Object", copyrightHolder: "Object", comment: "Comment", spatialCoverage: "Place", aggregateRating: "AggregateRating", educationalAlignment: "AlignmentObject", video: "VideoObject", version: "Object", mainEntity: "Thing", associatedMedia: "MediaObject", workExample: "CreativeWork", mentions: "Thing", citation: "Object", dateModified: "Object", inLanguage: "Object", isBasedOnUrl: "Object", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * When an individual's performance in a competency can be measured, a level specifies milestones that an individual can reach, creating fine-grained distinction between the proficient and the adept. * @@ -86121,7 +86156,7 @@ Level = stjs.extend(Level, CreativeWork, [], function(constructor, prototype) { a.push(Level.TYPE_0_1); return a; }; -}, {contributor: "Object", reviews: "Review", audience: "Audience", timeRequired: "Duration", publication: "PublicationEvent", contentLocation: "Place", temporalCoverage: "Object", isBasedOn: "Object", fileFormat: "Object", interactionStatistic: "InteractionCounter", recordedAt: "Event", isPartOf: "CreativeWork", exampleOfWork: "CreativeWork", dateCreated: "Object", releasedEvent: "PublicationEvent", publisher: "Object", encoding: "MediaObject", creator: "Object", hasPart: "CreativeWork", license: "Object", translator: "Object", offers: "Offer", schemaVersion: "Object", review: "Review", position: "Object", genre: "Object", character: "Person", producer: "Object", editor: "Person", locationCreated: "Place", about: "Thing", audio: "AudioObject", encodings: "MediaObject", funder: "Object", accountablePerson: "Person", material: "Object", author: "Object", sourceOrganization: "Organization", sponsor: "Object", provider: "Object", copyrightHolder: "Object", comment: "Comment", spatialCoverage: "Place", aggregateRating: "AggregateRating", educationalAlignment: "AlignmentObject", video: "VideoObject", version: "Object", mainEntity: "Thing", associatedMedia: "MediaObject", workExample: "CreativeWork", mentions: "Thing", citation: "Object", dateModified: "Object", inLanguage: "Object", isBasedOnUrl: "Object", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * A segment of script that defines in a domain specific language how competence is transferred from one competency to another. * @@ -86169,7 +86204,7 @@ RollupRule = stjs.extend(RollupRule, CreativeWork, [], function(constructor, pro a.push(RollupRule.TYPE_0_2); return a; }; -}, {contributor: "Object", reviews: "Review", audience: "Audience", timeRequired: "Duration", publication: "PublicationEvent", contentLocation: "Place", temporalCoverage: "Object", isBasedOn: "Object", fileFormat: "Object", interactionStatistic: "InteractionCounter", recordedAt: "Event", isPartOf: "CreativeWork", exampleOfWork: "CreativeWork", dateCreated: "Object", releasedEvent: "PublicationEvent", publisher: "Object", encoding: "MediaObject", creator: "Object", hasPart: "CreativeWork", license: "Object", translator: "Object", offers: "Offer", schemaVersion: "Object", review: "Review", position: "Object", genre: "Object", character: "Person", producer: "Object", editor: "Person", locationCreated: "Place", about: "Thing", audio: "AudioObject", encodings: "MediaObject", funder: "Object", accountablePerson: "Person", material: "Object", author: "Object", sourceOrganization: "Organization", sponsor: "Object", provider: "Object", copyrightHolder: "Object", comment: "Comment", spatialCoverage: "Place", aggregateRating: "AggregateRating", educationalAlignment: "AlignmentObject", video: "VideoObject", version: "Object", mainEntity: "Thing", associatedMedia: "MediaObject", workExample: "CreativeWork", mentions: "Thing", citation: "Object", dateModified: "Object", inLanguage: "Object", isBasedOnUrl: "Object", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * A Competency Framework or simply Framework is a collection of competencies and relations between competencies in the framework and potentially between competencies in the framework and competencies in other frameworks. In practice, a Framework represents competencies related to a specific job, task, organization, career, knowledge domain, etc. * @@ -86239,7 +86274,7 @@ Framework = stjs.extend(Framework, CreativeWork, [], function(constructor, proto a.push(Framework.TYPE_0_1); return a; }; -}, {competency: {name: "Array", arguments: [null]}, relation: {name: "Array", arguments: [null]}, level: {name: "Array", arguments: [null]}, rollupRule: {name: "Array", arguments: [null]}, contributor: "Object", reviews: "Review", audience: "Audience", timeRequired: "Duration", publication: "PublicationEvent", contentLocation: "Place", temporalCoverage: "Object", isBasedOn: "Object", fileFormat: "Object", interactionStatistic: "InteractionCounter", recordedAt: "Event", isPartOf: "CreativeWork", exampleOfWork: "CreativeWork", dateCreated: "Object", releasedEvent: "PublicationEvent", publisher: "Object", encoding: "MediaObject", creator: "Object", hasPart: "CreativeWork", license: "Object", translator: "Object", offers: "Offer", schemaVersion: "Object", review: "Review", position: "Object", genre: "Object", character: "Person", producer: "Object", editor: "Person", locationCreated: "Place", about: "Thing", audio: "AudioObject", encodings: "MediaObject", funder: "Object", accountablePerson: "Person", material: "Object", author: "Object", sourceOrganization: "Organization", sponsor: "Object", provider: "Object", copyrightHolder: "Object", comment: "Comment", spatialCoverage: "Place", aggregateRating: "AggregateRating", educationalAlignment: "AlignmentObject", video: "VideoObject", version: "Object", mainEntity: "Thing", associatedMedia: "MediaObject", workExample: "CreativeWork", mentions: "Thing", citation: "Object", dateModified: "Object", inLanguage: "Object", isBasedOnUrl: "Object", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {competency: {name: "Array", arguments: [null]}, relation: {name: "Array", arguments: [null]}, level: {name: "Array", arguments: [null]}, rollupRule: {name: "Array", arguments: [null]}, about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * A relation between two objects. * @@ -86377,7 +86412,7 @@ Relation = stjs.extend(Relation, CreativeWork, [], function(constructor, prototy a.push(Relation.TYPE_0_1); return a; }; -}, {contributor: "Object", reviews: "Review", audience: "Audience", timeRequired: "Duration", publication: "PublicationEvent", contentLocation: "Place", temporalCoverage: "Object", isBasedOn: "Object", fileFormat: "Object", interactionStatistic: "InteractionCounter", recordedAt: "Event", isPartOf: "CreativeWork", exampleOfWork: "CreativeWork", dateCreated: "Object", releasedEvent: "PublicationEvent", publisher: "Object", encoding: "MediaObject", creator: "Object", hasPart: "CreativeWork", license: "Object", translator: "Object", offers: "Offer", schemaVersion: "Object", review: "Review", position: "Object", genre: "Object", character: "Person", producer: "Object", editor: "Person", locationCreated: "Place", about: "Thing", audio: "AudioObject", encodings: "MediaObject", funder: "Object", accountablePerson: "Person", material: "Object", author: "Object", sourceOrganization: "Organization", sponsor: "Object", provider: "Object", copyrightHolder: "Object", comment: "Comment", spatialCoverage: "Place", aggregateRating: "AggregateRating", educationalAlignment: "AlignmentObject", video: "VideoObject", version: "Object", mainEntity: "Thing", associatedMedia: "MediaObject", workExample: "CreativeWork", mentions: "Thing", citation: "Object", dateModified: "Object", inLanguage: "Object", isBasedOnUrl: "Object", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * A claim of competence in CASS is called an Assertion. It states with some confidence that an individual has mastered a competency at a given level, provides evidence of such mastery, and records data such as the time of assertion and the party making the assertion. * @@ -86672,7 +86707,7 @@ Assertion = stjs.extend(Assertion, CreativeWork, [], function(constructor, proto Assertion.codebooks = new Object(); return (Assertion.codebooks)[assertion.id]; }; -}, {codebooks: "Object", subject: "EcEncryptedValue", agent: "EcEncryptedValue", evidence: {name: "Array", arguments: ["EcEncryptedValue"]}, assertionDate: "EcEncryptedValue", expirationDate: "EcEncryptedValue", decayFunction: "EcEncryptedValue", negative: "EcEncryptedValue", contributor: "Object", reviews: "Review", audience: "Audience", timeRequired: "Duration", publication: "PublicationEvent", contentLocation: "Place", temporalCoverage: "Object", isBasedOn: "Object", fileFormat: "Object", interactionStatistic: "InteractionCounter", recordedAt: "Event", isPartOf: "CreativeWork", exampleOfWork: "CreativeWork", dateCreated: "Object", releasedEvent: "PublicationEvent", publisher: "Object", encoding: "MediaObject", creator: "Object", hasPart: "CreativeWork", license: "Object", translator: "Object", offers: "Offer", schemaVersion: "Object", review: "Review", position: "Object", genre: "Object", character: "Person", producer: "Object", editor: "Person", locationCreated: "Place", about: "Thing", audio: "AudioObject", encodings: "MediaObject", funder: "Object", accountablePerson: "Person", material: "Object", author: "Object", sourceOrganization: "Organization", sponsor: "Object", provider: "Object", copyrightHolder: "Object", comment: "Comment", spatialCoverage: "Place", aggregateRating: "AggregateRating", educationalAlignment: "AlignmentObject", video: "VideoObject", version: "Object", mainEntity: "Thing", associatedMedia: "MediaObject", workExample: "CreativeWork", mentions: "Thing", citation: "Object", dateModified: "Object", inLanguage: "Object", isBasedOnUrl: "Object", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {codebooks: "Object", subject: "EcEncryptedValue", agent: "EcEncryptedValue", evidence: {name: "Array", arguments: ["EcEncryptedValue"]}, assertionDate: "EcEncryptedValue", expirationDate: "EcEncryptedValue", decayFunction: "EcEncryptedValue", negative: "EcEncryptedValue", about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Container for storing assertions and the secrets used to decrypt those assertions. * @@ -86879,7 +86914,7 @@ AssertionEnvelope = stjs.extend(AssertionEnvelope, CreativeWork, [], function(co return false; return true; }; -}, {assertion: {name: "Array", arguments: ["Assertion"]}, codebook: {name: "Array", arguments: ["AssertionCodebook"]}, contributor: "Object", reviews: "Review", audience: "Audience", timeRequired: "Duration", publication: "PublicationEvent", contentLocation: "Place", temporalCoverage: "Object", isBasedOn: "Object", fileFormat: "Object", interactionStatistic: "InteractionCounter", recordedAt: "Event", isPartOf: "CreativeWork", exampleOfWork: "CreativeWork", dateCreated: "Object", releasedEvent: "PublicationEvent", publisher: "Object", encoding: "MediaObject", creator: "Object", hasPart: "CreativeWork", license: "Object", translator: "Object", offers: "Offer", schemaVersion: "Object", review: "Review", position: "Object", genre: "Object", character: "Person", producer: "Object", editor: "Person", locationCreated: "Place", about: "Thing", audio: "AudioObject", encodings: "MediaObject", funder: "Object", accountablePerson: "Person", material: "Object", author: "Object", sourceOrganization: "Organization", sponsor: "Object", provider: "Object", copyrightHolder: "Object", comment: "Comment", spatialCoverage: "Place", aggregateRating: "AggregateRating", educationalAlignment: "AlignmentObject", video: "VideoObject", version: "Object", mainEntity: "Thing", associatedMedia: "MediaObject", workExample: "CreativeWork", mentions: "Thing", citation: "Object", dateModified: "Object", inLanguage: "Object", isBasedOnUrl: "Object", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {assertion: {name: "Array", arguments: ["Assertion"]}, codebook: {name: "Array", arguments: ["AssertionCodebook"]}, about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /*- * --BEGIN_LICENSE-- * Competency and Skills System @@ -89600,13 +89635,17 @@ EcRepository = stjs.extend(EcRepository, null, [], function(constructor, prototy return; } (EcRepository.cache)[originalUrl] = d; - if (d.id != null) - (EcRepository.cache)[d.id] = d; + if (d != null) { + if (d.id != null) + (EcRepository.cache)[d.id] = d; + } }, function(s) { var d = EcRepository.findBlocking(originalUrl, s, new Object(), 0); (EcRepository.cache)[originalUrl] = d; - if (d.id != null) - (EcRepository.cache)[d.id] = d; + if (d != null) { + if (d.id != null) + (EcRepository.cache)[d.id] = d; + } }); EcRemote.async = oldAsync; var result = (EcRepository.cache)[originalUrl]; @@ -89993,7 +90032,7 @@ EcRepository = stjs.extend(EcRepository, null, [], function(constructor, prototy * @memberOf EcRepository * @method multiget */ - prototype.multiget = function(urls, success, failure, cachedValues) { + prototype.multiget = function(urls, success, failure) { if (urls == null || urls.length == 0) { if (failure != null) { failure(""); @@ -90817,8 +90856,17 @@ EcFile = stjs.extend(EcFile, GeneralFile, [], function(constructor, prototype) { */ var EcConcept = function() { Concept.call(this); + var me = (this); + if (EcConcept.template != null) { + var you = (EcConcept.template); + for (var key in you) { + if ((typeof you[key]) != "function") + me[key.replace("@", "")] = you[key]; + } + } }; EcConcept = stjs.extend(EcConcept, Concept, [], function(constructor, prototype) { + constructor.template = null; /** * Retrieves a concept from it's server asynchronously * @@ -90942,14 +90990,23 @@ EcConcept = stjs.extend(EcConcept, Concept, [], function(constructor, prototype) } }, failure); }; -}, {topConceptOf: "ConceptScheme", semanticRelation: "Concept", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {template: "Object", topConceptOf: "ConceptScheme", semanticRelation: "Concept", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Created by fray on 11/29/17. */ var EcConceptScheme = function() { ConceptScheme.call(this); + var me = (this); + if (EcConceptScheme.template != null) { + var you = (EcConceptScheme.template); + for (var key in you) { + if ((typeof you[key]) != "function") + me[key.replace("@", "")] = you[key]; + } + } }; EcConceptScheme = stjs.extend(EcConceptScheme, ConceptScheme, [], function(constructor, prototype) { + constructor.template = null; /** * Retrieves a concept scheme from the server, specified by the ID * @@ -91068,7 +91125,7 @@ EcConceptScheme = stjs.extend(EcConceptScheme, ConceptScheme, [], function(const } }, failure); }; -}, {hasTopConcept: "Concept", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {template: "Object", hasTopConcept: "Concept", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * The sequence that assertions should be built as such: 1. Generate the ID. 2. * Add the owner. 3. Set the subject. 4. Set the agent. Further functions may be @@ -91721,7 +91778,7 @@ EcAssertion = stjs.extend(EcAssertion, Assertion, [], function(constructor, prot prototype.getSearchStringByTypeAndCompetency = function(competency) { return "(" + this.getSearchStringByType() + " AND competency:\"" + competency.shortId() + "\")"; }; -}, {codebooks: "Object", subject: "EcEncryptedValue", agent: "EcEncryptedValue", evidence: {name: "Array", arguments: ["EcEncryptedValue"]}, assertionDate: "EcEncryptedValue", expirationDate: "EcEncryptedValue", decayFunction: "EcEncryptedValue", negative: "EcEncryptedValue", contributor: "Object", reviews: "Review", audience: "Audience", timeRequired: "Duration", publication: "PublicationEvent", contentLocation: "Place", temporalCoverage: "Object", isBasedOn: "Object", fileFormat: "Object", interactionStatistic: "InteractionCounter", recordedAt: "Event", isPartOf: "CreativeWork", exampleOfWork: "CreativeWork", dateCreated: "Object", releasedEvent: "PublicationEvent", publisher: "Object", encoding: "MediaObject", creator: "Object", hasPart: "CreativeWork", license: "Object", translator: "Object", offers: "Offer", schemaVersion: "Object", review: "Review", position: "Object", genre: "Object", character: "Person", producer: "Object", editor: "Person", locationCreated: "Place", about: "Thing", audio: "AudioObject", encodings: "MediaObject", funder: "Object", accountablePerson: "Person", material: "Object", author: "Object", sourceOrganization: "Organization", sponsor: "Object", provider: "Object", copyrightHolder: "Object", comment: "Comment", spatialCoverage: "Place", aggregateRating: "AggregateRating", educationalAlignment: "AlignmentObject", video: "VideoObject", version: "Object", mainEntity: "Thing", associatedMedia: "MediaObject", workExample: "CreativeWork", mentions: "Thing", citation: "Object", dateModified: "Object", inLanguage: "Object", isBasedOnUrl: "Object", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {codebooks: "Object", subject: "EcEncryptedValue", agent: "EcEncryptedValue", evidence: {name: "Array", arguments: ["EcEncryptedValue"]}, assertionDate: "EcEncryptedValue", expirationDate: "EcEncryptedValue", decayFunction: "EcEncryptedValue", negative: "EcEncryptedValue", about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Implementation of a Rollup Rule object with methods for interacting with CASS * services on a server. @@ -91881,7 +91938,7 @@ EcRollupRule = stjs.extend(EcRollupRule, RollupRule, [], function(constructor, p prototype._delete = function(success, failure) { EcRepository.DELETE(this, success, failure); }; -}, {contributor: "Object", reviews: "Review", audience: "Audience", timeRequired: "Duration", publication: "PublicationEvent", contentLocation: "Place", temporalCoverage: "Object", isBasedOn: "Object", fileFormat: "Object", interactionStatistic: "InteractionCounter", recordedAt: "Event", isPartOf: "CreativeWork", exampleOfWork: "CreativeWork", dateCreated: "Object", releasedEvent: "PublicationEvent", publisher: "Object", encoding: "MediaObject", creator: "Object", hasPart: "CreativeWork", license: "Object", translator: "Object", offers: "Offer", schemaVersion: "Object", review: "Review", position: "Object", genre: "Object", character: "Person", producer: "Object", editor: "Person", locationCreated: "Place", about: "Thing", audio: "AudioObject", encodings: "MediaObject", funder: "Object", accountablePerson: "Person", material: "Object", author: "Object", sourceOrganization: "Organization", sponsor: "Object", provider: "Object", copyrightHolder: "Object", comment: "Comment", spatialCoverage: "Place", aggregateRating: "AggregateRating", educationalAlignment: "AlignmentObject", video: "VideoObject", version: "Object", mainEntity: "Thing", associatedMedia: "MediaObject", workExample: "CreativeWork", mentions: "Thing", citation: "Object", dateModified: "Object", inLanguage: "Object", isBasedOnUrl: "Object", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Implementation of an alignment object with methods for interacting with CASS * services on a server. @@ -91899,6 +91956,11 @@ var EcAlignment = function() { Relation.call(this); }; EcAlignment = stjs.extend(EcAlignment, Relation, [], function(constructor, prototype) { + prototype.equals = function(obj) { + if ((obj).id == null) + return ((obj).source == this.source && (obj).target == this.target && (obj).relationType == this.relationType); + return this.isId((obj).id); + }; /** * Retrieves the alignment specified with the ID from the server * @@ -92266,7 +92328,7 @@ EcAlignment = stjs.extend(EcAlignment, Relation, [], function(constructor, proto prototype._delete = function(success, failure) { EcRepository.DELETE(this, success, failure); }; -}, {contributor: "Object", reviews: "Review", audience: "Audience", timeRequired: "Duration", publication: "PublicationEvent", contentLocation: "Place", temporalCoverage: "Object", isBasedOn: "Object", fileFormat: "Object", interactionStatistic: "InteractionCounter", recordedAt: "Event", isPartOf: "CreativeWork", exampleOfWork: "CreativeWork", dateCreated: "Object", releasedEvent: "PublicationEvent", publisher: "Object", encoding: "MediaObject", creator: "Object", hasPart: "CreativeWork", license: "Object", translator: "Object", offers: "Offer", schemaVersion: "Object", review: "Review", position: "Object", genre: "Object", character: "Person", producer: "Object", editor: "Person", locationCreated: "Place", about: "Thing", audio: "AudioObject", encodings: "MediaObject", funder: "Object", accountablePerson: "Person", material: "Object", author: "Object", sourceOrganization: "Organization", sponsor: "Object", provider: "Object", copyrightHolder: "Object", comment: "Comment", spatialCoverage: "Place", aggregateRating: "AggregateRating", educationalAlignment: "AlignmentObject", video: "VideoObject", version: "Object", mainEntity: "Thing", associatedMedia: "MediaObject", workExample: "CreativeWork", mentions: "Thing", citation: "Object", dateModified: "Object", inLanguage: "Object", isBasedOnUrl: "Object", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Implementation of a Level object with methods for interacting with CASS * services on a server. @@ -92543,7 +92605,7 @@ EcLevel = stjs.extend(EcLevel, Level, [], function(constructor, prototype) { prototype._delete = function(success, failure) { EcRepository.DELETE(this, success, failure); }; -}, {contributor: "Object", reviews: "Review", audience: "Audience", timeRequired: "Duration", publication: "PublicationEvent", contentLocation: "Place", temporalCoverage: "Object", isBasedOn: "Object", fileFormat: "Object", interactionStatistic: "InteractionCounter", recordedAt: "Event", isPartOf: "CreativeWork", exampleOfWork: "CreativeWork", dateCreated: "Object", releasedEvent: "PublicationEvent", publisher: "Object", encoding: "MediaObject", creator: "Object", hasPart: "CreativeWork", license: "Object", translator: "Object", offers: "Offer", schemaVersion: "Object", review: "Review", position: "Object", genre: "Object", character: "Person", producer: "Object", editor: "Person", locationCreated: "Place", about: "Thing", audio: "AudioObject", encodings: "MediaObject", funder: "Object", accountablePerson: "Person", material: "Object", author: "Object", sourceOrganization: "Organization", sponsor: "Object", provider: "Object", copyrightHolder: "Object", comment: "Comment", spatialCoverage: "Place", aggregateRating: "AggregateRating", educationalAlignment: "AlignmentObject", video: "VideoObject", version: "Object", mainEntity: "Thing", associatedMedia: "MediaObject", workExample: "CreativeWork", mentions: "Thing", citation: "Object", dateModified: "Object", inLanguage: "Object", isBasedOnUrl: "Object", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Implementation of a Competency object with methods for interacting with CASS * services on a server. @@ -92570,6 +92632,9 @@ EcCompetency = stjs.extend(EcCompetency, Competency, [], function(constructor, p constructor.relDone = {}; constructor.levelDone = {}; constructor.template = null; + prototype.equals = function(obj) { + return this.isId((obj).id); + }; /** * Retrieves a competency from it's server asynchronously * @@ -93074,7 +93139,7 @@ EcCompetency = stjs.extend(EcCompetency, Competency, [], function(constructor, p } }, failure); }; -}, {relDone: {name: "Map", arguments: [null, null]}, levelDone: {name: "Map", arguments: [null, null]}, template: "Object", contributor: "Object", reviews: "Review", audience: "Audience", timeRequired: "Duration", publication: "PublicationEvent", contentLocation: "Place", temporalCoverage: "Object", isBasedOn: "Object", fileFormat: "Object", interactionStatistic: "InteractionCounter", recordedAt: "Event", isPartOf: "CreativeWork", exampleOfWork: "CreativeWork", dateCreated: "Object", releasedEvent: "PublicationEvent", publisher: "Object", encoding: "MediaObject", creator: "Object", hasPart: "CreativeWork", license: "Object", translator: "Object", offers: "Offer", schemaVersion: "Object", review: "Review", position: "Object", genre: "Object", character: "Person", producer: "Object", editor: "Person", locationCreated: "Place", about: "Thing", audio: "AudioObject", encodings: "MediaObject", funder: "Object", accountablePerson: "Person", material: "Object", author: "Object", sourceOrganization: "Organization", sponsor: "Object", provider: "Object", copyrightHolder: "Object", comment: "Comment", spatialCoverage: "Place", aggregateRating: "AggregateRating", educationalAlignment: "AlignmentObject", video: "VideoObject", version: "Object", mainEntity: "Thing", associatedMedia: "MediaObject", workExample: "CreativeWork", mentions: "Thing", citation: "Object", dateModified: "Object", inLanguage: "Object", isBasedOnUrl: "Object", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {relDone: {name: "Map", arguments: [null, null]}, levelDone: {name: "Map", arguments: [null, null]}, template: "Object", about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Implementation of a Framework object with methods for interacting with CASS * services on a server. @@ -93506,7 +93571,7 @@ EcFramework = stjs.extend(EcFramework, Framework, [], function(constructor, prot } }); }; -}, {relDone: {name: "Map", arguments: [null, null]}, levelDone: {name: "Map", arguments: [null, null]}, template: "Object", competency: {name: "Array", arguments: [null]}, relation: {name: "Array", arguments: [null]}, level: {name: "Array", arguments: [null]}, rollupRule: {name: "Array", arguments: [null]}, contributor: "Object", reviews: "Review", audience: "Audience", timeRequired: "Duration", publication: "PublicationEvent", contentLocation: "Place", temporalCoverage: "Object", isBasedOn: "Object", fileFormat: "Object", interactionStatistic: "InteractionCounter", recordedAt: "Event", isPartOf: "CreativeWork", exampleOfWork: "CreativeWork", dateCreated: "Object", releasedEvent: "PublicationEvent", publisher: "Object", encoding: "MediaObject", creator: "Object", hasPart: "CreativeWork", license: "Object", translator: "Object", offers: "Offer", schemaVersion: "Object", review: "Review", position: "Object", genre: "Object", character: "Person", producer: "Object", editor: "Person", locationCreated: "Place", about: "Thing", audio: "AudioObject", encodings: "MediaObject", funder: "Object", accountablePerson: "Person", material: "Object", author: "Object", sourceOrganization: "Organization", sponsor: "Object", provider: "Object", copyrightHolder: "Object", comment: "Comment", spatialCoverage: "Place", aggregateRating: "AggregateRating", educationalAlignment: "AlignmentObject", video: "VideoObject", version: "Object", mainEntity: "Thing", associatedMedia: "MediaObject", workExample: "CreativeWork", mentions: "Thing", citation: "Object", dateModified: "Object", inLanguage: "Object", isBasedOnUrl: "Object", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {relDone: {name: "Map", arguments: [null, null]}, levelDone: {name: "Map", arguments: [null, null]}, template: "Object", competency: {name: "Array", arguments: [null]}, relation: {name: "Array", arguments: [null]}, level: {name: "Array", arguments: [null]}, rollupRule: {name: "Array", arguments: [null]}, about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /*- * --BEGIN_LICENSE-- * Competency and Skills System @@ -94483,17 +94548,10 @@ CSVImport = stjs.extend(CSVImport, null, [], function(constructor, prototype) { * @static */ constructor.transformId = function(oldId, newObject, selectedServer, repo) { - if (oldId == null || oldId == "" || oldId.indexOf("http") == -1) + if (oldId == null || oldId == "" || oldId.toLowerCase().indexOf("http") == -1) newObject.assignId(selectedServer, oldId); else { - if (EcCompetency.getBlocking(oldId) == null) - newObject.id = oldId; - else { - if (repo == null || repo.selectedServer.indexOf(selectedServer) != -1) - newObject.generateId(selectedServer); - else - newObject.generateShortId(selectedServer); - } + newObject.id = oldId; } }; /** @@ -94579,6 +94637,7 @@ CSVImport = stjs.extend(CSVImport, null, [], function(constructor, prototype) { if ((CSVImport.importCsvLookup)[tabularData[i][idIndex]] == null) (CSVImport.importCsvLookup)[tabularData[i][idIndex]] = competency.shortId(); } + (CSVImport.importCsvLookup)[competency.getName()] = competency.shortId(); for (var idx = 0; idx < tabularData[i].length; idx++) { var name = colNames[idx]; if (name == null || name.trim() == "" || name.startsWith("@") || name.indexOf(".") != -1 || tabularData[i][idx].trim() == "" || idx == nameIndex || idx == descriptionIndex || idx == scopeIndex || idx == idIndex) { @@ -97331,6 +97390,148 @@ PapDependencyDefinitions = stjs.extend(PapDependencyDefinitions, null, [], funct this.dependencyDefinitionMap = dependencyDefinitionMap; }; }, {dependencyDefinitionMap: {name: "Map", arguments: [null, "PapDependencyDefinitionBase"]}}, {}); +var EcFrameworkGraph = function() { + EcDirectedGraph.call(this); + this.metaVerticies = new Object(); + this.metaEdges = new Object(); +}; +EcFrameworkGraph = stjs.extend(EcFrameworkGraph, EcDirectedGraph, [], function(constructor, prototype) { + prototype.metaVerticies = null; + prototype.metaEdges = null; + prototype.addFramework = function(framework, repo, success, failure) { + var me = this; + repo.multiget(framework.competency.concat(framework.relation), function(data) { + var competencyTemplate = new EcCompetency(); + var alignmentTemplate = new EcAlignment(); + for (var i = 0; i < data.length; i++) { + var d = data[i]; + if (d.isAny(competencyTemplate.getTypes())) { + var c = EcCompetency.getBlocking(d.id); + me.addCompetency(c); + me.addToMetaStateArray(me.getMetaStateCompetency(c), "framework", framework); + } else if (d.isAny(alignmentTemplate.getTypes())) { + var alignment = EcAlignment.getBlocking(d.id); + me.addRelation(alignment); + me.addToMetaStateArray(me.getMetaStateAlignment(alignment), "framework", framework); + } + } + success(); + }, failure); + }; + prototype.processAssertionsBoolean = function(assertions, success, failure) { + var me = this; + var eah = new EcAsyncHelper(); + eah.each(assertions, function(assertion, done) { + var competency = EcCompetency.getBlocking(assertion.competency); + if (!me.containsVertex(competency)) { + done(); + return; + } + assertion.getNegativeAsync(function(negative) { + me.processAssertionsBooleanPerAssertion(assertion, negative, competency, done, new Array()); + }, eah.failWithCallback(failure, done)); + }, function(strings) { + success(); + }); + }; + prototype.processAssertionsBooleanPerAssertion = function(assertion, negative, competency, done, visited) { + var me = this; + if (EcArray.has(visited, competency)) { + done(); + return; + } + visited.push(competency); + if (negative) { + var metaState = this.getMetaStateCompetency(competency); + this.addToMetaStateArray(metaState, "negativeAssertion", assertion); + new EcAsyncHelper().each(me.getOutEdges(competency), function(alignment, callback0) { + if (alignment.relationType == Relation.NARROWS) + me.processAssertionsBooleanPerAssertion(assertion, negative, EcCompetency.getBlocking(alignment.target), callback0, visited); + else if (alignment.relationType == Relation.IS_EQUIVALENT_TO) + me.processAssertionsBooleanPerAssertion(assertion, negative, EcCompetency.getBlocking(alignment.target), callback0, visited); + else + callback0(); + }, function(strings) { + new EcAsyncHelper().each(me.getInEdges(competency), function(alignment, callback0) { + if (alignment.relationType == Relation.REQUIRES) + me.processAssertionsBooleanPerAssertion(assertion, negative, EcCompetency.getBlocking(alignment.source), callback0, visited); + else if (alignment.relationType == Relation.IS_EQUIVALENT_TO) + me.processAssertionsBooleanPerAssertion(assertion, negative, EcCompetency.getBlocking(alignment.source), callback0, visited); + else + callback0(); + }, function(strings) { + done(); + }); + }); + } else { + var metaState = this.getMetaStateCompetency(competency); + this.addToMetaStateArray(metaState, "positiveAssertion", assertion); + new EcAsyncHelper().each(me.getInEdges(competency), function(alignment, callback0) { + if (alignment.relationType == Relation.NARROWS) + me.processAssertionsBooleanPerAssertion(assertion, negative, EcCompetency.getBlocking(alignment.source), callback0, visited); + else if (alignment.relationType == Relation.IS_EQUIVALENT_TO) + me.processAssertionsBooleanPerAssertion(assertion, negative, EcCompetency.getBlocking(alignment.source), callback0, visited); + else + callback0(); + }, function(strings) { + new EcAsyncHelper().each(me.getOutEdges(competency), function(alignment, callback0) { + if (alignment.relationType == Relation.REQUIRES) + me.processAssertionsBooleanPerAssertion(assertion, negative, EcCompetency.getBlocking(alignment.target), callback0, visited); + else if (alignment.relationType == Relation.IS_EQUIVALENT_TO) + me.processAssertionsBooleanPerAssertion(assertion, negative, EcCompetency.getBlocking(alignment.target), callback0, visited); + else + callback0(); + }, function(strings) { + done(); + }); + }); + } + }; + prototype.addToMetaStateArray = function(metaState, key, value) { + if (metaState == null) + return; + if ((metaState)[key] == null) + (metaState)[key] = new Array(); + ((metaState)[key]).push(value); + }; + prototype.getMetaStateCompetency = function(c) { + if (this.containsVertex(c) == false) + return null; + if (this.metaVerticies[c.shortId()] == null) + this.metaVerticies[c.shortId()] = new Object(); + return this.metaVerticies[c.shortId()]; + }; + prototype.getMetaStateAlignment = function(a) { + if (this.containsEdge(a) == false) + return null; + if (this.metaEdges[a.shortId()] == null) + this.metaEdges[a.shortId()] = new Object(); + return this.metaEdges[a.shortId()]; + }; + prototype.addCompetency = function(competency) { + if (competency == null) + return false; + return this.addVertex(competency); + }; + prototype.addRelation = function(alignment) { + if (alignment == null) + return false; + var source = EcCompetency.getBlocking(alignment.source); + var target = EcCompetency.getBlocking(alignment.target); + if (source == null || target == null) + return false; + return this.addEdge(alignment, source, target); + }; + prototype.addHyperEdge = function(edge, vertices) { + throw new RuntimeException("Don't do this."); + }; + prototype.getEdgeType = function(edge) { + return edge.relationType; + }; + prototype.getDefaultEdgeType = function() { + return EcAlignment.NARROWS; + }; +}, {metaVerticies: {name: "Map", arguments: [null, "Object"]}, metaEdges: {name: "Map", arguments: [null, "Object"]}, edges: {name: "Array", arguments: [{name: "Triple", arguments: ["V", "V", "E"]}]}, verticies: {name: "Array", arguments: ["V"]}}, {}); var NodePacketGraph = function() { this.nodePacketList = new Array(); this.nodePacketMap = {}; @@ -98983,6 +99184,8 @@ CombinatorAssertionProcessor = stjs.extend(CombinatorAssertionProcessor, Asserti if (ep.context != null && ep.context.relation != null) for (var i = 0; i < ep.context.relation.length; i++) { var a = EcAlignment.getBlocking(ep.context.relation[i]); + if (a == null) + continue; if ((relationLookup)[a.source] == null) (relationLookup)[a.source] = new Array(); ((relationLookup)[a.source]).push(a); @@ -99160,9 +99363,7 @@ FrameworkCollapser = stjs.extend(FrameworkCollapser, null, [], function(construc var fc = this; repo.multiget(this.buildFrameworkUrlLookups(), function(rlda) { fc.continueFrameworkCollapse(rlda); - }, fc.failureCallback, function(rlda) { - fc.continueFrameworkCollapse(rlda); - }); + }, fc.failureCallback); } }; }, {framework: "EcFramework", competencyArray: {name: "Array", arguments: ["EcCompetency"]}, competencyNodeMap: {name: "Map", arguments: [null, "Node"]}, relationArray: {name: "Array", arguments: ["EcAlignment"]}, frameworkNodeGraph: "NodeGraph", collapsedFrameworkNodePacketGraph: "NodePacketGraph", successCallback: {name: "Callback2", arguments: [null, "NodePacketGraph"]}, failureCallback: {name: "Callback1", arguments: [null]}}, {}); diff --git a/src/main/js/cass.min.js b/src/main/js/cass.min.js index fb33a4823..4721c61cb 100644 --- a/src/main/js/cass.min.js +++ b/src/main/js/cass.min.js @@ -2,12 +2,12 @@ var $jscomp={scope:{}};$jscomp.defineProperty="function"==typeof Object.definePr $jscomp.initSymbol=function(){$jscomp.initSymbol=function(){};$jscomp.global.Symbol||($jscomp.global.Symbol=$jscomp.Symbol)};$jscomp.symbolCounter_=0;$jscomp.Symbol=function(h){return $jscomp.SYMBOL_PREFIX+(h||"")+$jscomp.symbolCounter_++}; $jscomp.initSymbolIterator=function(){$jscomp.initSymbol();var h=$jscomp.global.Symbol.iterator;h||(h=$jscomp.global.Symbol.iterator=$jscomp.global.Symbol("iterator"));"function"!=typeof Array.prototype[h]&&$jscomp.defineProperty(Array.prototype,h,{configurable:!0,writable:!0,value:function(){return $jscomp.arrayIterator(this)}});$jscomp.initSymbolIterator=function(){}};$jscomp.arrayIterator=function(h){var a=0;return $jscomp.iteratorPrototype(function(){return a>4),64!==f&&(b+=String.fromCharCode((m&15)<<4|f>>2),64!==e&&(b+=String.fromCharCode((f&3)<<6|e)));return b};d.encodeUtf8=function(a){return unescape(encodeURIComponent(a))};d.decodeUtf8=function(a){return decodeURIComponent(escape(a))};d.binary={raw:{},hex:{},base64:{}};d.binary.raw.encode=function(a){return String.fromCharCode.apply(null,a)};d.binary.raw.decode=function(a,b,d){var c=b; c||(c=new Uint8Array(a.length));for(var m=d=d||0,f=0;f> 2),d+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\x3d".charAt((m&3)<<4|f>>4),isNaN(f)?d+="\x3d\x3d":(d+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\x3d".charAt((f&15)<<2|e>>6),d+=isNaN(e)?"\x3d":"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\x3d".charAt(e&63)),b&&d.length>b&&(c+=d.substr(0,b)+"\r\n",d=d.substr(b));return c+=d,c};d.binary.base64.decode=function(a,b,d){var m=b;m||(m=new Uint8Array(3*Math.ceil(a.length/4)));a=a.replace(/[^A-Za-z0-9\+\/\=]/g, -"");d=d||0;for(var f,e,l,g,n=0,p=d;n>4,64!==l&&(m[p++]=(e&15)<<4|l>>2,64!==g&&(m[p++]=(l&3)<<6|g));return b?p-d:m.subarray(0,p)};d.text={utf8:{},utf16:{}};d.text.utf8.encode=function(a,b,c){a=d.encodeUtf8(a);var m=b;m||(m=new Uint8Array(a.length));for(var f=c=c||0,e=0;e>4,64!==l&&(m[n++]=(e&15)<<4|l>>2,64!==g&&(m[n++]=(l&3)<<6|g));return b?n-d:m.subarray(0,n)};d.text={utf8:{},utf16:{}};d.text.utf8.encode=function(a,b,c){a=d.encodeUtf8(a);var m=b;m||(m=new Uint8Array(a.length));for(var f=c=c||0,e=0;ef;++f)if(a[f]&&0!==a[f].length){var e=d.hexToBytes(a[f]);2>e.length&&m.putByte(0);m.putBytes(e)}else m.fillWithByte(0,c),c=0;return m.getBytes()}; d.bytesToIP=function(a){return 4===a.length?d.bytesToIPv4(a):16===a.length?d.bytesToIPv6(a):null};d.bytesToIPv4=function(a){if(4!==a.length)return null;for(var b=[],d=0;dc[m].end-c[m].start&&(m= -c.length-1)):c.push({start:g,end:g})}b.push(e)}0l.st&&m.stm.st&&l.std;++d)a[d/32|0]&1<<31-d%32&&(c[0]^=b[0],c[1]^=b[1],c[2]^=b[2],c[3]^=b[3]),this.pow(b,b);return c};f.gcm.prototype.pow=function(a,b){for(var c=a[3]&1,d=3;0>>1|(a[d-1]&1)<<31;b[0]=a[0]>>>1;c&&(b[0]^=this._R)};f.gcm.prototype.tableMultiply=function(a){for(var b=[0,0,0,0],c=0;32>c;++c){var d=this._m[c][a[c/8|0]>>>4*(7-c%8)&15];b[0]^=d[0];b[1]^=d[1];b[2]^=d[2];b[3]^=d[3]}return b};f.gcm.prototype.ghash=function(a,b,c){return b[0]^=c[0],b[1]^=c[1],b[2]^=c[2],b[3]^=c[3],this.tableMultiply(b)}; f.gcm.prototype.generateHashTable=function(a,b){for(var c=8/b,d=4*c,c=16*c,m=Array(c),f=0;f>>1,d=Array(b);d[c]=a.slice(0);for(var m=c>>>1;0>=1;for(m=2;mb;++b)a[b]=b<<1,a[b+ +"string"==typeof a?c.slice(2):a.slice(2),e?(delete b,f.apply(null,Array.prototype.slice.call(arguments,0))):(b=f,b.apply(null,Array.prototype.slice.call(arguments,0)))};b("js/cipherModes",["require","module","./util"],function(){k.apply(null,Array.prototype.slice.call(arguments,0))})}(),function(){function c(a){function b(b,c){a.cipher.registerAlgorithm(b,function(){return new a.aes.Algorithm(b,c)})}function c(){g=!0;z=[0,1,2,4,8,16,32,64,128,27,54];for(var a=Array(256),b=0;128>b;++b)a[b]=b<<1,a[b+ 128]=b+128<<1^283;h=Array(256);q=Array(256);D=Array(4);x=Array(4);for(b=0;4>b;++b)D[b]=Array(256),x[b]=Array(256);for(var c=0,d=0,m,f,e,l,n,b=0;256>b;++b){l=d^d<<1^d<<2^d<<3^d<<4;l=l>>8^l&255^99;h[c]=l;q[l]=c;n=a[l];m=a[c];f=a[m];e=a[f];n^=n<<24^l<<16^l<<8^l;f=(m^f^e)<<24^(c^e)<<16^(c^f^e)<<8^c^m^e;for(var p=0;4>p;++p)D[p][c]=n,x[p][l]=f,n=n<<24|n>>>8,f=f<<24|f>>>8;0===c?c=d=1:(c=m^a[a[a[m^e]]],d^=a[a[d]])}}function m(a,b){a=a.slice(0);for(var c,d=1,m=a.length,f=k*(m+6+1),e=m;e>>16&255]<<24^h[c>>>8&255]<<16^h[c&255]<<8^h[c>>>24]^A[d]<<24,d++):6>>24]<<24^h[c>>>16&255]<<16^h[c>>>8&255]<<8^h[c&255]),a[e]=a[e-m]^c;if(b){c=x[0];for(var d=x[1],m=x[2],l=x[3],g=a.slice(0),f=a.length,e=0,n=f-k;e>>24]]^d[h[b>>>16&255]]^m[h[b>>>8&255]]^l[h[b&255]];a=g}return a}function f(a,b,c,d){var m=a.length/4-1,f,e,l,g,n;d?(f=x[0], +e%m?(c=h[c>>>16&255]<<24^h[c>>>8&255]<<16^h[c&255]<<8^h[c>>>24]^z[d]<<24,d++):6>>24]<<24^h[c>>>16&255]<<16^h[c>>>8&255]<<8^h[c&255]),a[e]=a[e-m]^c;if(b){c=x[0];for(var d=x[1],m=x[2],l=x[3],g=a.slice(0),f=a.length,e=0,n=f-k;e>>24]]^d[h[b>>>16&255]]^m[h[b>>>8&255]]^l[h[b&255]];a=g}return a}function f(a,b,c,d){var m=a.length/4-1,f,e,l,g,n;d?(f=x[0], e=x[1],l=x[2],g=x[3],n=q):(f=D[0],e=D[1],l=D[2],g=D[3],n=h);var p,u,r,k,w,v;p=b[0]^a[0];u=b[d?3:1]^a[1];r=b[2]^a[2];b=b[d?1:3]^a[3];for(var B=3,F=1;F>>24]^e[u>>>16&255]^l[r>>>8&255]^g[b&255]^a[++B],w=f[u>>>24]^e[r>>>16&255]^l[b>>>8&255]^g[p&255]^a[++B],v=f[r>>>24]^e[b>>>16&255]^l[p>>>8&255]^g[u&255]^a[++B],b=f[b>>>24]^e[p>>>16&255]^l[u>>>8&255]^g[r&255]^a[++B],p=k,u=w,r=v;c[0]=n[p>>>24]<<24^n[u>>>16&255]<<16^n[r>>>8&255]<<8^n[b&255]^a[++B];c[d?3:1]=n[u>>>24]<<24^n[r>>>16&255]<<16^n[b>>> 8&255]<<8^n[p&255]^a[++B];c[2]=n[r>>>24]<<24^n[b>>>16&255]<<16^n[p>>>8&255]<<8^n[u&255]^a[++B];c[d?1:3]=n[b>>>24]<<24^n[p>>>16&255]<<16^n[u>>>8&255]<<8^n[r&255]^a[++B]}function e(b){b=b||{};var c="AES-"+(b.mode||"CBC").toUpperCase(),d;b.decrypt?d=a.cipher.createDecipher(c,b.key):d=a.cipher.createCipher(c,b.key);var m=d.start;return d.start=function(b,c){var f=null;c instanceof a.util.ByteBuffer&&(f=c,c={});c=c||{};c.output=f;c.iv=b;m.call(d,c)},d}a.aes=a.aes||{};a.aes.startEncrypting=function(a,b, c,d){a=e({key:a,output:c,decrypt:!1,mode:d});return a.start(b),a};a.aes.createEncryptionCipher=function(a,b){return e({key:a,output:null,decrypt:!1,mode:b})};a.aes.startDecrypting=function(a,b,c,d){a=e({key:a,output:c,decrypt:!0,mode:d});return a.start(b),a};a.aes.createDecryptionCipher=function(a,b){return e({key:a,output:null,decrypt:!0,mode:b})};a.aes.Algorithm=function(a,b){g||c();var d=this;d.name=a;d.mode=new b({blockSize:16,cipher:{encrypt:function(a,b){return f(d._w,a,b,!1)},decrypt:function(a, b){return f(d._w,a,b,!0)}}});d._init=!1};a.aes.Algorithm.prototype.initialize=function(b){if(!this._init){var c=b.key,d;if("string"!=typeof c||16!==c.length&&24!==c.length&&32!==c.length){if(a.util.isArray(c)&&(16===c.length||24===c.length||32===c.length)){d=c;for(var c=a.util.createBuffer(),f=0;f>>=2,f=0;fd.length()){var m=Error("Too few bytes to parse DER.");throw m.bytes=d.length(),m;}var e=d.getByte(),m=e&192,l=e&31,g=c(d);if(d.length()=m.length())d.putByte(m.length()&127);else{e=m.length();c="";do c+=String.fromCharCode(e&255),e>>>=8;while(0>>=7,d||(e|=128),f.push(e),d=!1;while(0d.length()){var e=Error("Too few bytes to parse DER.");throw e.bytes=d.length(),e;}var m=d.getByte(),e=m&192,l=m&31,g=c(d);if(d.length()=e.length())d.putByte(e.length()&127);else{m=e.length();c="";do c+=String.fromCharCode(m&255),m>>>=8;while(0>>=7,d||(e|=128),f.push(e),d=!1;while(0b;++b)k[b]=Math.floor(4294967296*Math.abs(Math.sin(b+1)));h=!0}function c(a,b,c){for(var d,f,e,l,p,C,n,u=c.length();64<=u;){f=a.h0;e=a.h1;l=a.h2;p=a.h3;for(n=0;16>n;++n)b[n]=c.getInt32Le(),d=p^e&(l^p),d=f+d+k[n]+b[n],C=g[n],f=p,p=l,l=e,e+=d<>>32-C;for(;32>n;++n)d=l^p&(e^l),d=f+ -d+k[n]+b[m[n]],C=g[n],f=p,p=l,l=e,e+=d<>>32-C;for(;48>n;++n)d=e^l^p,d=f+d+k[n]+b[m[n]],C=g[n],f=p,p=l,l=e,e+=d<>>32-C;for(;64>n;++n)d=l^(e|~p),d=f+d+k[n]+b[m[n]],C=g[n],f=p,p=l,l=e,e+=d<>>32-C;a.h0=a.h0+f|0;a.h1=a.h1+e|0;a.h2=a.h2+l|0;a.h3=a.h3+p|0;u-=64}}var f=a.md5=a.md5||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.md5=a.md.algorithms.md5=f;f.create=function(){h||b();var d=null,f=a.util.createBuffer(),m=Array(16),l={algorithm:"md5",blockLength:64,digestLength:16,messageLength:0, +6,13,4,11,2,9];g=[7,12,17,22,7,12,17,22,7,12,17,22,7,12,17,22,5,9,14,20,5,9,14,20,5,9,14,20,5,9,14,20,4,11,16,23,4,11,16,23,4,11,16,23,4,11,16,23,6,10,15,21,6,10,15,21,6,10,15,21,6,10,15,21];k=Array(64);for(var b=0;64>b;++b)k[b]=Math.floor(4294967296*Math.abs(Math.sin(b+1)));h=!0}function c(a,b,c){for(var d,f,e,l,n,C,p,u=c.length();64<=u;){f=a.h0;e=a.h1;l=a.h2;n=a.h3;for(p=0;16>p;++p)b[p]=c.getInt32Le(),d=n^e&(l^n),d=f+d+k[p]+b[p],C=g[p],f=n,n=l,l=e,e+=d<>>32-C;for(;32>p;++p)d=l^n&(e^l),d=f+ +d+k[p]+b[m[p]],C=g[p],f=n,n=l,l=e,e+=d<>>32-C;for(;48>p;++p)d=e^l^n,d=f+d+k[p]+b[m[p]],C=g[p],f=n,n=l,l=e,e+=d<>>32-C;for(;64>p;++p)d=l^(e|~n),d=f+d+k[p]+b[m[p]],C=g[p],f=n,n=l,l=e,e+=d<>>32-C;a.h0=a.h0+f|0;a.h1=a.h1+e|0;a.h2=a.h2+l|0;a.h3=a.h3+n|0;u-=64}}var f=a.md5=a.md5||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.md5=a.md.algorithms.md5=f;f.create=function(){h||b();var d=null,f=a.util.createBuffer(),m=Array(16),l={algorithm:"md5",blockLength:64,digestLength:16,messageLength:0, messageLength64:[0,0]};return l.start=function(){return l.messageLength=0,l.messageLength64=[0,0],f=a.util.createBuffer(),d={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878},l},l.start(),l.update=function(b,e){return"utf8"===e&&(b=a.util.encodeUtf8(b)),l.messageLength+=b.length,l.messageLength64[0]+=b.length/4294967296>>>0,l.messageLength64[1]+=b.length>>>0,f.putBytes(b),c(d,m,f),(2048>>28);var g={h0:d.h0,h1:d.h1,h2:d.h2,h3:d.h3};c(g,m,b);b=a.util.createBuffer();return b.putInt32Le(g.h0),b.putInt32Le(g.h1),b.putInt32Le(g.h2),b.putInt32Le(g.h3),b},l};var e=null,m=null,g=null,k=null,h=!1}if("function"!=typeof b){if("object"!=typeof module||!module.exports)return"undefined"==typeof forge&&(forge={}),c(forge);var e=!0;b=function(b,c){c(a, module)}}var g,k=function(a,b){b.exports=function(b){var d=g.map(function(b){return a(b)}).concat(c);b=b||{};b.defined=b.defined||{};if(b.defined.md5)return b.md5;b.defined.md5=!0;for(var f=0;fn;++n)d=c.getInt32(),b[n]=d,p=l^e&(m^l),d=(f<<5|f>>>27)+p+g+1518500249+d,g=l,l=m,m=e<<30|e>>>2,e=f,f=d;for(;20>n;++n)d=b[n-3]^b[n-8]^b[n-14]^b[n-16],d=d<<1|d>>>31,b[n]=d,p=l^e&(m^l),d=(f<<5|f>>>27)+p+g+1518500249+d,g=l,l=m,m=e<<30|e>>>2,e=f,f=d;for(;32>n;++n)d=b[n-3]^b[n-8]^b[n-14]^b[n-16],d=d<<1|d>>>31,b[n]=d,p=e^m^l,d=(f<<5|f>>>27)+p+g+1859775393+d,g=l,l= -m,m=e<<30|e>>>2,e=f,f=d;for(;40>n;++n)d=b[n-6]^b[n-16]^b[n-28]^b[n-32],d=d<<2|d>>>30,b[n]=d,p=e^m^l,d=(f<<5|f>>>27)+p+g+1859775393+d,g=l,l=m,m=e<<30|e>>>2,e=f,f=d;for(;60>n;++n)d=b[n-6]^b[n-16]^b[n-28]^b[n-32],d=d<<2|d>>>30,b[n]=d,p=e&m|l&(e^m),d=(f<<5|f>>>27)+p+g+2400959708+d,g=l,l=m,m=e<<30|e>>>2,e=f,f=d;for(;80>n;++n)d=b[n-6]^b[n-16]^b[n-28]^b[n-32],d=d<<2|d>>>30,b[n]=d,p=e^m^l,d=(f<<5|f>>>27)+p+g+3395469782+d,g=l,l=m,m=e<<30|e>>>2,e=f,f=d;a.h0=a.h0+f|0;a.h1=a.h1+e|0;a.h2=a.h2+m|0;a.h3=a.h3+l| +0))})}(),function(){function c(a){function b(a,b,c){for(var d,f,e,m,l,g,n,p,u=c.length();64<=u;){f=a.h0;e=a.h1;m=a.h2;l=a.h3;g=a.h4;for(p=0;16>p;++p)d=c.getInt32(),b[p]=d,n=l^e&(m^l),d=(f<<5|f>>>27)+n+g+1518500249+d,g=l,l=m,m=e<<30|e>>>2,e=f,f=d;for(;20>p;++p)d=b[p-3]^b[p-8]^b[p-14]^b[p-16],d=d<<1|d>>>31,b[p]=d,n=l^e&(m^l),d=(f<<5|f>>>27)+n+g+1518500249+d,g=l,l=m,m=e<<30|e>>>2,e=f,f=d;for(;32>p;++p)d=b[p-3]^b[p-8]^b[p-14]^b[p-16],d=d<<1|d>>>31,b[p]=d,n=e^m^l,d=(f<<5|f>>>27)+n+g+1859775393+d,g=l,l= +m,m=e<<30|e>>>2,e=f,f=d;for(;40>p;++p)d=b[p-6]^b[p-16]^b[p-28]^b[p-32],d=d<<2|d>>>30,b[p]=d,n=e^m^l,d=(f<<5|f>>>27)+n+g+1859775393+d,g=l,l=m,m=e<<30|e>>>2,e=f,f=d;for(;60>p;++p)d=b[p-6]^b[p-16]^b[p-28]^b[p-32],d=d<<2|d>>>30,b[p]=d,n=e&m|l&(e^m),d=(f<<5|f>>>27)+n+g+2400959708+d,g=l,l=m,m=e<<30|e>>>2,e=f,f=d;for(;80>p;++p)d=b[p-6]^b[p-16]^b[p-28]^b[p-32],d=d<<2|d>>>30,b[p]=d,n=e^m^l,d=(f<<5|f>>>27)+n+g+3395469782+d,g=l,l=m,m=e<<30|e>>>2,e=f,f=d;a.h0=a.h0+f|0;a.h1=a.h1+e|0;a.h2=a.h2+m|0;a.h3=a.h3+l| 0;a.h4=a.h4+g|0;u-=64}}var c=a.sha1=a.sha1||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha1=a.md.algorithms.sha1=c;c.create=function(){e||(f=String.fromCharCode(128),f+=a.util.fillString(String.fromCharCode(0),64),e=!0);var c=null,d=a.util.createBuffer(),m=Array(80),l={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,messageLength64:[0,0]};return l.start=function(){return l.messageLength=0,l.messageLength64=[0,0],d=a.util.createBuffer(),c={h0:1732584193,h1:4023233417, h2:2562383102,h3:271733878,h4:3285377520},l},l.start(),l.update=function(f,e){return"utf8"===e&&(f=a.util.encodeUtf8(f)),l.messageLength+=f.length,l.messageLength64[0]+=f.length/4294967296>>>0,l.messageLength64[1]+=f.length>>>0,d.putBytes(f),b(c,m,d),(2048>>28);e.putInt32(l.messageLength64[1]<< 3);var g={h0:c.h0,h1:c.h1,h2:c.h2,h3:c.h3,h4:c.h4};b(g,m,e);e=a.util.createBuffer();return e.putInt32(g.h0),e.putInt32(g.h1),e.putInt32(g.h2),e.putInt32(g.h3),e.putInt32(g.h4),e},l};var f=null,e=!1}if("function"!=typeof b){if("object"!=typeof module||!module.exports)return"undefined"==typeof forge&&(forge={}),c(forge);var e=!0;b=function(b,c){c(a,module)}}var g,k=function(a,b){b.exports=function(b){var d=g.map(function(b){return a(b)}).concat(c);b=b||{};b.defined=b.defined||{};if(b.defined.sha1)return b.sha1; -b.defined.sha1=!0;for(var f=0;fg;++g)b[g]=c.getInt32(); -for(;64>g;++g)d=b[g-2],d=(d>>>17|d<<15)^(d>>>19|d<<13)^d>>>10,f=b[g-15],f=(f>>>7|f<<25)^(f>>>18|f<<14)^f>>>3,b[g]=d+b[g-7]+f+b[g-16]|0;p=a.h0;n=a.h1;u=a.h2;C=a.h3;k=a.h4;h=a.h5;r=a.h6;w=a.h7;for(g=0;64>g;++g)d=(k>>>6|k<<26)^(k>>>11|k<<21)^(k>>>25|k<<7),e=r^k&(h^r),f=(p>>>2|p<<30)^(p>>>13|p<<19)^(p>>>22|p<<10),l=p&n|u&(p^n),d=w+d+e+m[g]+b[g],f+=l,w=r,r=h,h=k,k=C+d|0,C=u,u=n,n=p,p=d+f|0;a.h0=a.h0+p|0;a.h1=a.h1+n|0;a.h2=a.h2+u|0;a.h3=a.h3+C|0;a.h4=a.h4+k|0;a.h5=a.h5+h|0;a.h6=a.h6+r|0;a.h7=a.h7+w|0;B-= +b.defined.sha1=!0;for(var f=0;fg;++g)b[g]=c.getInt32(); +for(;64>g;++g)d=b[g-2],d=(d>>>17|d<<15)^(d>>>19|d<<13)^d>>>10,f=b[g-15],f=(f>>>7|f<<25)^(f>>>18|f<<14)^f>>>3,b[g]=d+b[g-7]+f+b[g-16]|0;n=a.h0;p=a.h1;u=a.h2;C=a.h3;k=a.h4;h=a.h5;r=a.h6;w=a.h7;for(g=0;64>g;++g)d=(k>>>6|k<<26)^(k>>>11|k<<21)^(k>>>25|k<<7),e=r^k&(h^r),f=(n>>>2|n<<30)^(n>>>13|n<<19)^(n>>>22|n<<10),l=n&p|u&(n^p),d=w+d+e+m[g]+b[g],f+=l,w=r,r=h,h=k,k=C+d|0,C=u,u=p,p=n,n=d+f|0;a.h0=a.h0+n|0;a.h1=a.h1+p|0;a.h2=a.h2+u|0;a.h3=a.h3+C|0;a.h4=a.h4+k|0;a.h5=a.h5+h|0;a.h6=a.h6+r|0;a.h7=a.h7+w|0;B-= 64}}var c=a.sha256=a.sha256||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.sha256=a.md.algorithms.sha256=c;c.create=function(){e||(f=String.fromCharCode(128),f+=a.util.fillString(String.fromCharCode(0),64),m=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349, 2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],e=!0);var c=null,d=a.util.createBuffer(),l=Array(64),g={algorithm:"sha256",blockLength:64,digestLength:32, messageLength:0,messageLength64:[0,0]};return g.start=function(){return g.messageLength=0,g.messageLength64=[0,0],d=a.util.createBuffer(),c={h0:1779033703,h1:3144134277,h2:1013904242,h3:2773480762,h4:1359893119,h5:2600822924,h6:528734635,h7:1541459225},g},g.start(),g.update=function(f,e){return"utf8"===e&&(f=a.util.encodeUtf8(f)),g.messageLength+=f.length,g.messageLength64[0]+=f.length/4294967296>>>0,g.messageLength64[1]+=f.length>>>0,d.putBytes(f),b(c,l,d),(2048>>28);e.putInt32(g.messageLength64[1]<<3);var m={h0:c.h0,h1:c.h1,h2:c.h2,h3:c.h3,h4:c.h4,h5:c.h5,h6:c.h6,h7:c.h7};b(m,l,e);e=a.util.createBuffer();return e.putInt32(m.h0),e.putInt32(m.h1),e.putInt32(m.h2),e.putInt32(m.h3),e.putInt32(m.h4),e.putInt32(m.h5),e.putInt32(m.h6),e.putInt32(m.h7),e},g};var f=null,e=!1,m=null} if("function"!=typeof b){if("object"!=typeof module||!module.exports)return"undefined"==typeof forge&&(forge={}),c(forge);var e=!0;b=function(b,c){c(a,module)}}var g,k=function(a,b){b.exports=function(b){var d=g.map(function(b){return a(b)}).concat(c);b=b||{};b.defined=b.defined||{};if(b.defined.sha256)return b.sha256;b.defined.sha256=!0;for(var f=0;fU;++U)b[U][0]=c.getInt32()>>>0,b[U][1]=c.getInt32()>>>0;for(;80>U;++U)l=b[U-2],u=l[0],l=l[1],d=((u>>>19|l<<13)^(l>>>29|u<<3)^u>>>6)>>>0,f=((u<<13|l>>>19)^(l<<3|u>>>29)^(u<<26|l>>>6))>>> -0,l=b[U-15],u=l[0],l=l[1],e=((u>>>1|l<<31)^(u>>>8|l<<24)^u>>>7)>>>0,m=((u<<31|l>>>1)^(u<<24|l>>>8)^(u<<25|l>>>7))>>>0,u=b[U-7],k=b[U-16],l=f+u[1]+m+k[1],b[U][0]=d+u[0]+e+k[0]+(l/4294967296>>>0)>>>0,b[U][1]=l>>>0;u=a[0][0];k=a[0][1];h=a[1][0];r=a[1][1];w=a[2][0];q=a[2][1];B=a[3][0];A=a[3][1];T=a[4][0];S=a[4][1];K=a[5][0];M=a[5][1];R=a[6][0];O=a[6][1];H=a[7][0];L=a[7][1];for(U=0;80>U;++U)d=((T>>>14|S<<18)^(T>>>18|S<<14)^(S>>>9|T<<23))>>>0,l=((T<<18|S>>>14)^(T<<14|S>>>18)^(S<<23|T>>>9))>>>0,f=(R^T&(K^ -R))>>>0,p=(O^S&(M^O))>>>0,e=((u>>>28|k<<4)^(k>>>2|u<<30)^(k>>>7|u<<25))>>>0,m=((u<<4|k>>>28)^(k<<30|u>>>2)^(k<<25|u>>>7))>>>0,C=(u&h|w&(u^h))>>>0,n=(k&r|q&(k^r))>>>0,l=L+l+p+g[U][1]+b[U][1],d=H+d+f+g[U][0]+b[U][0]+(l/4294967296>>>0)>>>0,f=l>>>0,l=m+n,e=e+C+(l/4294967296>>>0)>>>0,m=l>>>0,H=R,L=O,R=K,O=M,K=T,M=S,l=A+f,T=B+d+(l/4294967296>>>0)>>>0,S=l>>>0,B=w,A=q,w=h,q=r,h=u,r=k,l=f+m,u=d+e+(l/4294967296>>>0)>>>0,k=l>>>0;l=a[0][1]+k;a[0][0]=a[0][0]+u+(l/4294967296>>>0)>>>0;a[0][1]=l>>>0;l=a[1][1]+r; -a[1][0]=a[1][0]+h+(l/4294967296>>>0)>>>0;a[1][1]=l>>>0;l=a[2][1]+q;a[2][0]=a[2][0]+w+(l/4294967296>>>0)>>>0;a[2][1]=l>>>0;l=a[3][1]+A;a[3][0]=a[3][0]+B+(l/4294967296>>>0)>>>0;a[3][1]=l>>>0;l=a[4][1]+S;a[4][0]=a[4][0]+T+(l/4294967296>>>0)>>>0;a[4][1]=l>>>0;l=a[5][1]+M;a[5][0]=a[5][0]+K+(l/4294967296>>>0)>>>0;a[5][1]=l>>>0;l=a[6][1]+O;a[6][0]=a[6][0]+R+(l/4294967296>>>0)>>>0;a[6][1]=l>>>0;l=a[7][1]+L;a[7][0]=a[7][0]+H+(l/4294967296>>>0)>>>0;a[7][1]=l>>>0;oa-=128}}var c=a.sha512=a.sha512||{};a.md=a.md|| +0))):(b=f,b.apply(null,Array.prototype.slice.call(arguments,0)))};b("js/sha256",["require","module","./util"],function(){k.apply(null,Array.prototype.slice.call(arguments,0))})}(),function(){function c(a){function b(a,b,c){for(var d,f,e,m,l,n,C,p,u,k,h,r,w,q,B,z,T,S,K,M,R,O,H,L,U,oa=c.length();128<=oa;){for(U=0;16>U;++U)b[U][0]=c.getInt32()>>>0,b[U][1]=c.getInt32()>>>0;for(;80>U;++U)l=b[U-2],u=l[0],l=l[1],d=((u>>>19|l<<13)^(l>>>29|u<<3)^u>>>6)>>>0,f=((u<<13|l>>>19)^(l<<3|u>>>29)^(u<<26|l>>>6))>>> +0,l=b[U-15],u=l[0],l=l[1],e=((u>>>1|l<<31)^(u>>>8|l<<24)^u>>>7)>>>0,m=((u<<31|l>>>1)^(u<<24|l>>>8)^(u<<25|l>>>7))>>>0,u=b[U-7],k=b[U-16],l=f+u[1]+m+k[1],b[U][0]=d+u[0]+e+k[0]+(l/4294967296>>>0)>>>0,b[U][1]=l>>>0;u=a[0][0];k=a[0][1];h=a[1][0];r=a[1][1];w=a[2][0];q=a[2][1];B=a[3][0];z=a[3][1];T=a[4][0];S=a[4][1];K=a[5][0];M=a[5][1];R=a[6][0];O=a[6][1];H=a[7][0];L=a[7][1];for(U=0;80>U;++U)d=((T>>>14|S<<18)^(T>>>18|S<<14)^(S>>>9|T<<23))>>>0,l=((T<<18|S>>>14)^(T<<14|S>>>18)^(S<<23|T>>>9))>>>0,f=(R^T&(K^ +R))>>>0,n=(O^S&(M^O))>>>0,e=((u>>>28|k<<4)^(k>>>2|u<<30)^(k>>>7|u<<25))>>>0,m=((u<<4|k>>>28)^(k<<30|u>>>2)^(k<<25|u>>>7))>>>0,C=(u&h|w&(u^h))>>>0,p=(k&r|q&(k^r))>>>0,l=L+l+n+g[U][1]+b[U][1],d=H+d+f+g[U][0]+b[U][0]+(l/4294967296>>>0)>>>0,f=l>>>0,l=m+p,e=e+C+(l/4294967296>>>0)>>>0,m=l>>>0,H=R,L=O,R=K,O=M,K=T,M=S,l=z+f,T=B+d+(l/4294967296>>>0)>>>0,S=l>>>0,B=w,z=q,w=h,q=r,h=u,r=k,l=f+m,u=d+e+(l/4294967296>>>0)>>>0,k=l>>>0;l=a[0][1]+k;a[0][0]=a[0][0]+u+(l/4294967296>>>0)>>>0;a[0][1]=l>>>0;l=a[1][1]+r; +a[1][0]=a[1][0]+h+(l/4294967296>>>0)>>>0;a[1][1]=l>>>0;l=a[2][1]+q;a[2][0]=a[2][0]+w+(l/4294967296>>>0)>>>0;a[2][1]=l>>>0;l=a[3][1]+z;a[3][0]=a[3][0]+B+(l/4294967296>>>0)>>>0;a[3][1]=l>>>0;l=a[4][1]+S;a[4][0]=a[4][0]+T+(l/4294967296>>>0)>>>0;a[4][1]=l>>>0;l=a[5][1]+M;a[5][0]=a[5][0]+K+(l/4294967296>>>0)>>>0;a[5][1]=l>>>0;l=a[6][1]+O;a[6][0]=a[6][0]+R+(l/4294967296>>>0)>>>0;a[6][1]=l>>>0;l=a[7][1]+L;a[7][0]=a[7][0]+H+(l/4294967296>>>0)>>>0;a[7][1]=l>>>0;oa-=128}}var c=a.sha512=a.sha512||{};a.md=a.md|| {};a.md.algorithms=a.md.algorithms||{};a.md.sha512=a.md.algorithms.sha512=c;var f=a.sha384=a.sha512.sha384=a.sha512.sha384||{};f.create=function(){return c.create("SHA-384")};a.md.sha384=a.md.algorithms.sha384=f;a.sha512.sha256=a.sha512.sha256||{create:function(){return c.create("SHA-512/256")}};a.md["sha512/256"]=a.md.algorithms["sha512/256"]=a.sha512.sha256;a.sha512.sha224=a.sha512.sha224||{create:function(){return c.create("SHA-512/224")}};a.md["sha512/224"]=a.md.algorithms["sha512/224"]=a.sha512.sha224; c.create=function(c){m||(e=String.fromCharCode(128),e+=a.util.fillString(String.fromCharCode(0),128),g=[[1116352408,3609767458],[1899447441,602891725],[3049323471,3964484399],[3921009573,2173295548],[961987163,4081628472],[1508970993,3053834265],[2453635748,2937671579],[2870763221,3664609560],[3624381080,2734883394],[310598401,1164996542],[607225278,1323610764],[1426881987,3590304994],[1925078388,4068182383],[2162078206,991336113],[2614888103,633803317],[3248222580,3479774868],[3835390401,2666613458], [4022224774,944711139],[264347078,2341262773],[604807628,2007800933],[770255983,1495990901],[1249150122,1856431235],[1555081692,3175218132],[1996064986,2198950837],[2554220882,3999719339],[2821834349,766784016],[2952996808,2566594879],[3210313671,3203337956],[3336571891,1034457026],[3584528711,2466948901],[113926993,3758326383],[338241895,168717936],[666307205,1188179964],[773529912,1546045734],[1294757372,1522805485],[1396182291,2643833823],[1695183700,2343527390],[1986661051,1014477480],[2177026350, 1206759142],[2456956037,344077627],[2730485921,1290863460],[2820302411,3158454273],[3259730800,3505952657],[3345764771,106217008],[3516065817,3606008344],[3600352804,1432725776],[4094571909,1467031594],[275423344,851169720],[430227734,3100823752],[506948616,1363258195],[659060556,3750685593],[883997877,3785050280],[958139571,3318307427],[1322822218,3812723403],[1537002063,2003034995],[1747873779,3602036899],[1955562222,1575990012],[2024104815,1125592928],[2227730452,2716904306],[2361852424,442776044], [2428436474,593698344],[2756734187,3733110249],[3204031479,2999351573],[3329325298,3815920427],[3391569614,3928383900],[3515267271,566280711],[3940187606,3454069534],[4118630271,4000239992],[116418474,1914138554],[174292421,2731055270],[289380356,3203993006],[460393269,320620315],[685471733,587496836],[852142971,1086792851],[1017036298,365543100],[1126000580,2618297676],[1288033470,3409855158],[1501505948,4234509866],[1607167915,987167468],[1816402316,1246189591]],k={"SHA-512":[[1779033703,4089235720], [3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],"SHA-384":[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],"SHA-512/256":[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141, -1401305490],[721525244,746961066],[246885852,2177182882]],"SHA-512/224":[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]]},m=!0);"undefined"==typeof c&&(c="SHA-512");if(c in k){for(var d=k[c],f=null,l=a.util.createBuffer(),p=Array(80),n=0;80>n;++n)p[n]=Array(2);var u={algorithm:c.replace("-","").toLowerCase(),blockLength:128,digestLength:64,messageLength:0,messageLength128:[0, -0,0,0]};return u.start=function(){u.messageLength=0;u.messageLength128=[0,0,0,0];l=a.util.createBuffer();f=Array(d.length);for(var b=0;b>>0,d>>>0];for(var e=3;0<=e;--e)u.messageLength128[e]+=d[1],d[1]=d[0]+(u.messageLength128[e]/4294967296>>>0),u.messageLength128[e]>>>=0,d[0]=d[1]/4294967296>>>0;return l.putBytes(c),b(f,p,l),(2048g;++g)m[g]=u.messageLength128[g]<<3|u.messageLength128[g-1]>>>28;m[3]=u.messageLength128[3]<<3;d.putInt32(m[0]);d.putInt32(m[1]);d.putInt32(m[2]);d.putInt32(m[3]);m=Array(f.length);for(g=0;gp;++p)n[p]=Array(2);var u={algorithm:c.replace("-","").toLowerCase(),blockLength:128,digestLength:64,messageLength:0,messageLength128:[0, +0,0,0]};return u.start=function(){u.messageLength=0;u.messageLength128=[0,0,0,0];l=a.util.createBuffer();f=Array(d.length);for(var b=0;b>>0,d>>>0];for(var e=3;0<=e;--e)u.messageLength128[e]+=d[1],d[1]=d[0]+(u.messageLength128[e]/4294967296>>>0),u.messageLength128[e]>>>=0,d[0]=d[1]/4294967296>>>0;return l.putBytes(c),b(f,n,l),(2048g;++g)m[g]=u.messageLength128[g]<<3|u.messageLength128[g-1]>>>28;m[3]=u.messageLength128[3]<<3;d.putInt32(m[0]);d.putInt32(m[1]);d.putInt32(m[2]);d.putInt32(m[3]);m=Array(f.length);for(g=0;g>>4^p)&252645135;p^=b;d^=b<<4;b=(d>>>16^p)&65535;p^=b;d^=b<<16;b=(p>>>2^d)&858993459;d^=b;p^=b<<2;b=(p>>>8^d)&16711935;d^=b;p^=b<<8;b=(d>>>1^p)&1431655765;p^=b;d^=b<<1;d=d<<1|d>>>31;for(var p=p<<1|p>>>31,n=0;n>>4|p<<28)^a[w+1];b=d;d=p;p=b^(m[v>>>24&63]|k[v>>>16&63]|q[v>>>8&63]|D[v&63]| -e[B>>>24&63]|g[B>>>16&63]|h[B>>>8&63]|A[B&63])}b=d;d=p;p=b}d=d>>>1|d<<31;p=p>>>1|p<<31;b=(d>>>1^p)&1431655765;p^=b;d^=b<<1;b=(p>>>8^d)&16711935;d^=b;p^=b<<8;b=(p>>>2^d)&858993459;d^=b;p^=b<<2;b=(d>>>16^p)&65535;p^=b;d^=b<<16;b=(d>>>4^p)&252645135;c[0]=d^b<<4;c[1]=p^b}function f(b){b=b||{};var c="DES-"+(b.mode||"CBC").toUpperCase(),d;b.decrypt?d=a.cipher.createDecipher(c,b.key):d=a.cipher.createCipher(c,b.key);var f=d.start;return d.start=function(b,c){var e=null;c instanceof a.util.ByteBuffer&&(e= +b,c,d){var f=32===a.length?3:9,l;3===f?l=d?[30,-2,-2]:[0,32,2]:l=d?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];d=b[0];var n=b[1];b=(d>>>4^n)&252645135;n^=b;d^=b<<4;b=(d>>>16^n)&65535;n^=b;d^=b<<16;b=(n>>>2^d)&858993459;d^=b;n^=b<<2;b=(n>>>8^d)&16711935;d^=b;n^=b<<8;b=(d>>>1^n)&1431655765;n^=b;d^=b<<1;d=d<<1|d>>>31;for(var n=n<<1|n>>>31,p=0;p>>4|n<<28)^a[w+1];b=d;d=n;n=b^(m[v>>>24&63]|k[v>>>16&63]|q[v>>>8&63]|D[v&63]| +e[B>>>24&63]|g[B>>>16&63]|h[B>>>8&63]|z[B&63])}b=d;d=n;n=b}d=d>>>1|d<<31;n=n>>>1|n<<31;b=(d>>>1^n)&1431655765;n^=b;d^=b<<1;b=(n>>>8^d)&16711935;d^=b;n^=b<<8;b=(n>>>2^d)&858993459;d^=b;n^=b<<2;b=(d>>>16^n)&65535;n^=b;d^=b<<16;b=(d>>>4^n)&252645135;c[0]=d^b<<4;c[1]=n^b}function f(b){b=b||{};var c="DES-"+(b.mode||"CBC").toUpperCase(),d;b.decrypt?d=a.cipher.createDecipher(c,b.key):d=a.cipher.createCipher(c,b.key);var f=d.start;return d.start=function(b,c){var e=null;c instanceof a.util.ByteBuffer&&(e= c,c={});c=c||{};c.output=e;c.iv=b;f.call(d,c)},d}a.des=a.des||{};a.des.startEncrypting=function(a,b,c,d){a=f({key:a,output:c,decrypt:!1,mode:d||(null===b?"ECB":"CBC")});return a.start(b),a};a.des.createEncryptionCipher=function(a,b){return f({key:a,output:null,decrypt:!1,mode:b})};a.des.startDecrypting=function(a,b,c,d){a=f({key:a,output:c,decrypt:!0,mode:d||(null===b?"ECB":"CBC")});return a.start(b),a};a.des.createDecryptionCipher=function(a,b){return f({key:a,output:null,decrypt:!0,mode:b})};a.des.Algorithm= function(a,b){var d=this;d.name=a;d.mode=new b({blockSize:8,cipher:{encrypt:function(a,b){return c(d._keys,a,b,!1)},decrypt:function(a,b){return c(d._keys,a,b,!0)}}});d._init=!1};a.des.Algorithm.prototype.initialize=function(b){if(!this._init){b=a.util.createBuffer(b.key);if(0===this.name.indexOf("3DES")&&24!==b.length())throw Error("Invalid Triple-DES key size: "+8*b.length());for(var c=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,516,536871424,536871428,66048,66052,536936960,536936964], d=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],f=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],e=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],m=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],l=[0,1024,32,1056,0,1024,32,1056,33554432,33555456, -33554464,33555488,33554432,33555456,33554464,33555488],g=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],p=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],n=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],u=[0,268435456,8,268435464,0,268435456,8,268435464,1024,268436480,1032,268436488,1024, -268436480,1032,268436488],k=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],h=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],r=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],w=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],q=8>>4^L)&252645135;L^=x;H^=x<<4;x=(L>>>-16^H)&65535;H^=x;L^=x<<-16;x=(H>>>2^L)&858993459;L^=x;H^=x<<2;x=(L>>>-16^H)&65535;H^=x;L^=x<<-16;x=(H>>>1^L)&1431655765;L^=x;H^=x<<1;x=(L>>>8^H)&16711935;H^=x;L^=x<<8;x=(H>>>1^L)&1431655765;L^=x;H^=x<<1;x=H<<8|L>>>20&240;for(var H=L<<24|L<<8&16711680|L>>>8&65280|L>>>24&240,L=x,U=0;U>>26,L=L<<2|L>>>26):(H=H<<1|H>>>27,L=L<<1|L>>>27);var H=H&-15,L=L&-15,oa=c[H>>>28]|d[H>>>24&15]| -f[H>>>20&15]|e[H>>>16&15]|m[H>>>12&15]|l[H>>>8&15]|g[H>>>4&15],pa=p[L>>>28]|n[L>>>24&15]|u[L>>>20&15]|k[L>>>16&15]|h[L>>>12&15]|r[L>>>8&15]|w[L>>>4&15];x=(pa>>>16^oa)&65535;B[D++]=oa^x;B[D++]=pa^x<<16}}this._keys=B;this._init=!0}};b("DES-ECB",a.cipher.modes.ecb);b("DES-CBC",a.cipher.modes.cbc);b("DES-CFB",a.cipher.modes.cfb);b("DES-OFB",a.cipher.modes.ofb);b("DES-CTR",a.cipher.modes.ctr);b("3DES-ECB",a.cipher.modes.ecb);b("3DES-CBC",a.cipher.modes.cbc);b("3DES-CFB",a.cipher.modes.cfb);b("3DES-OFB", +33554464,33555488,33554432,33555456,33554464,33555488],g=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],n=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],p=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],k=[0,268435456,8,268435464,0,268435456,8,268435464,1024,268436480,1032,268436488,1024, +268436480,1032,268436488],u=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],h=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],r=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],w=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],q=8>>4^L)&252645135;L^=x;H^=x<<4;x=(L>>>-16^H)&65535;H^=x;L^=x<<-16;x=(H>>>2^L)&858993459;L^=x;H^=x<<2;x=(L>>>-16^H)&65535;H^=x;L^=x<<-16;x=(H>>>1^L)&1431655765;L^=x;H^=x<<1;x=(L>>>8^H)&16711935;H^=x;L^=x<<8;x=(H>>>1^L)&1431655765;L^=x;H^=x<<1;x=H<<8|L>>>20&240;for(var H=L<<24|L<<8&16711680|L>>>8&65280|L>>>24&240,L=x,U=0;U>>26,L=L<<2|L>>>26):(H=H<<1|H>>>27,L=L<<1|L>>>27);var H=H&-15,L=L&-15,oa=c[H>>>28]|d[H>>>24&15]| +f[H>>>20&15]|e[H>>>16&15]|m[H>>>12&15]|l[H>>>8&15]|g[H>>>4&15],pa=n[L>>>28]|p[L>>>24&15]|k[L>>>20&15]|u[L>>>16&15]|h[L>>>12&15]|r[L>>>8&15]|w[L>>>4&15];x=(pa>>>16^oa)&65535;B[D++]=oa^x;B[D++]=pa^x<<16}}this._keys=B;this._init=!0}};b("DES-ECB",a.cipher.modes.ecb);b("DES-CBC",a.cipher.modes.cbc);b("DES-CFB",a.cipher.modes.cfb);b("DES-OFB",a.cipher.modes.ofb);b("DES-CTR",a.cipher.modes.ctr);b("3DES-ECB",a.cipher.modes.ecb);b("3DES-CBC",a.cipher.modes.cbc);b("3DES-CFB",a.cipher.modes.cfb);b("3DES-OFB", a.cipher.modes.ofb);b("3DES-CTR",a.cipher.modes.ctr);var e=[16843776,0,65536,16843780,16842756,66564,4,65536,1024,16843776,16843780,1024,16778244,16842756,16777216,4,1028,16778240,16778240,66560,66560,16842752,16842752,16778244,65540,16777220,16777220,65540,0,1028,66564,16777216,65536,16843780,4,16842752,16843776,16777216,16777216,1024,16842756,65536,66560,16777220,1024,4,16778244,66564,16843780,65540,16842752,16778244,16777220,1028,66564,16843776,1028,16778240,16778240,0,65540,66560,0,16842756], m=[-2146402272,-2147450880,32768,1081376,1048576,32,-2146435040,-2147450848,-2147483616,-2146402272,-2146402304,-2147483648,-2147450880,1048576,32,-2146435040,1081344,1048608,-2147450848,0,-2147483648,32768,1081376,-2146435072,1048608,-2147483616,0,1081344,32800,-2146402304,-2146435072,32800,0,1081376,-2146435040,1048576,-2147450848,-2146435072,-2146402304,32768,-2146435072,-2147450880,32,-2146402272,1081376,32,32768,-2147483648,32800,-2146402304,1048576,-2147483616,1048608,-2147450848,-2147483616, 1048608,1081344,0,-2147450880,32800,-2147483648,-2146435040,-2146402272,1081344],g=[520,134349312,0,134348808,134218240,0,131592,134218240,131080,134217736,134217736,131072,134349320,131080,134348800,520,134217728,8,134349312,512,131584,134348800,134348808,131592,134218248,131584,131072,134218248,8,134349320,512,134217728,134349312,134217728,131080,520,131072,134349312,134218240,0,512,131080,134349320,134218240,134217736,512,0,134348808,134218248,131072,134217728,134349320,8,131592,131584,134217736, 134348800,134218248,520,134348800,131592,8,134348808,131584],k=[8396801,8321,8321,128,8396928,8388737,8388609,8193,0,8396800,8396800,8396929,129,0,8388736,8388609,1,8192,8388608,8396801,128,8388608,8193,8320,8388737,1,8320,8388736,8192,8396928,8396929,129,8388736,8388609,8396800,8396929,129,0,0,8396800,8320,8388736,8388737,1,8396801,8321,8321,128,8396929,129,1,8192,8388609,8193,8396928,8388737,8193,8320,8388608,8396801,128,8388608,8192,8396928],h=[256,34078976,34078720,1107296512,524288,256,1073741824, 34078720,1074266368,524288,33554688,1074266368,1107296512,1107820544,524544,1073741824,33554432,1074266112,1074266112,0,1073742080,1107820800,1107820800,33554688,1107820544,1073742080,0,1107296256,34078976,33554432,1107296256,524544,524288,1107296512,256,33554432,1073741824,34078720,1107296512,1074266368,33554688,1073741824,1107820544,34078976,1074266368,256,33554432,1107820544,1107820800,524544,1107296256,1107820800,34078720,0,1074266112,1107296256,524544,33554688,1073742080,524288,0,1074266112, 34078976,1073742080],q=[536870928,541065216,16384,541081616,541065216,16,541081616,4194304,536887296,4210704,4194304,536870928,4194320,536887296,536870912,16400,0,4194320,536887312,16384,4210688,536887312,16,541065232,541065232,0,4210704,541081600,16400,4210688,541081600,536870912,536887296,16,541065232,4210688,541081616,4194304,16400,536870928,4194304,536887296,536870912,16400,536870928,541081616,4210688,541065216,4210704,541081600,0,541065232,16,16384,541065216,4210704,16384,4194320,536887312,0, -541081600,536870912,4194320,536887312],A=[2097152,69206018,67110914,0,2048,67110914,2099202,69208064,69208066,2097152,0,67108866,2,67108864,69206018,2050,67110912,2099202,2097154,67110912,67108866,69206016,69208064,2097154,69206016,2048,2050,69208066,2099200,2,67108864,2099200,67108864,2099200,2097152,67110914,67110914,69206018,69206018,2,2097154,67108864,67110912,2097152,69208064,2050,2099202,69208064,2050,67108866,69208066,69206016,2099200,0,2,69208066,0,2099202,69206016,2048,67108866,67110912, +541081600,536870912,4194320,536887312],z=[2097152,69206018,67110914,0,2048,67110914,2099202,69208064,69208066,2097152,0,67108866,2,67108864,69206018,2050,67110912,2099202,2097154,67110912,67108866,69206016,69208064,2097154,69206016,2048,2050,69208066,2099200,2,67108864,2099200,67108864,2099200,2097152,67110914,67110914,69206018,69206018,2,2097154,67108864,67110912,2097152,69208064,2050,2099202,69208064,2050,67108866,69208066,69206016,2099200,0,2,69208066,0,2099202,69206016,2048,67108866,67110912, 2048,2097154],D=[268439616,4096,262144,268701760,268435456,268439616,64,268435456,262208,268697600,268701760,266240,268701696,266304,4096,64,268697600,268435520,268439552,4160,266240,262208,268697664,268701696,4160,0,0,268697664,268435520,268439552,266304,262144,266304,262144,268701696,4096,64,268697664,4096,266304,268439552,64,268435520,268697600,268697664,268435456,262144,268439616,0,268701760,262208,268435520,268697600,268439552,268439616,0,268701760,266240,266240,4160,4160,262208,268435456,268701696]} if("function"!=typeof b){if("object"!=typeof module||!module.exports)return"undefined"==typeof forge&&(forge={}),c(forge);var e=!0;b=function(b,c){c(a,module)}}var g,k=function(a,b){b.exports=function(b){var d=g.map(function(b){return a(b)}).concat(c);b=b||{};b.defined=b.defined||{};if(b.defined.des)return b.des;b.defined.des=!0;for(var f=0;fk)return l(null,w);r.start(null,null);r.update(c);r.update(b.util.int32ToBytes(I)); -C=B=r.digest().getBytes();t=2;n()}function n(){if(t<=e)return r.start(null,null),r.update(B),q=r.digest().getBytes(),C=b.util.xorBytes(C,q,u),B=q,++t,b.util.setImmediate(n);w+=I4294967295*u){a=Error("Derived key is too long.");if(l)return l(a);throw a;}var k=Math.ceil(m/u),h=m-(k-1)*u,r=b.hmac.create(); -r.start(g,a);var w="",C,q,B;if(!l){for(var I=1;I<=k;++I){r.start(null,null);r.update(c);r.update(b.util.int32ToBytes(I));C=B=r.digest().getBytes();for(var t=2;t<=e;++t)r.start(null,null),r.update(B),q=r.digest().getBytes(),C=b.util.xorBytes(C,q,u),B=q;w+=Iu)return l(null,w);r.start(null,null);r.update(c);r.update(b.util.int32ToBytes(I)); +C=B=r.digest().getBytes();t=2;p()}function p(){if(t<=e)return r.start(null,null),r.update(B),q=r.digest().getBytes(),C=b.util.xorBytes(C,q,k),B=q,++t,b.util.setImmediate(p);w+=I4294967295*k){a=Error("Derived key is too long.");if(l)return l(a);throw a;}var u=Math.ceil(m/k),h=m-(u-1)*k,r=b.hmac.create(); +r.start(g,a);var w="",C,q,B;if(!l){for(var I=1;I<=u;++I){r.start(null,null);r.update(c);r.update(b.util.int32ToBytes(I));C=B=r.digest().getBytes();for(var t=2;t<=e;++t)r.start(null,null),r.update(B),q=r.digest().getBytes(),C=b.util.xorBytes(C,q,k),B=q;w+=Ic;++c)b=31===b?2147483648:b<<2,0===b%g.reseeds&&(a.update(g.pools[c].digest().getBytes()),g.pools[c].start());b=a.digest().getBytes();a.start();a.update(b);a=a.digest().getBytes();g.key=g.plugin.formatKey(b);g.seed=g.plugin.formatSeed(a);g.reseeds=4294967295===g.reseeds?0:g.reseeds+1;g.generated=0}function e(a){var c=null;if("undefined"!=typeof window){var d=window.crypto||window.msCrypto;d&&d.getRandomValues&&(c=function(a){return d.getRandomValues(a)})}var f=b.util.createBuffer();if(c)for(;f.length()< a;){var e=Math.max(1,Math.min(a-f.length(),65536)/4),g=new Uint32Array(Math.floor(e));try{for(c(g),e=0;e>16),e+=(c&32767)<<16,e+=c>>15,e=(e&2147483647)+(e>>31),c=e&4294967295,e=0;3>e;++e)g=c>>>(e<<3),g^=Math.floor(256*Math.random()),f.putByte(String.fromCharCode(g&255));return f.getBytes(a)} -var g={plugin:a,key:null,seed:null,time:null,reseeds:0,generated:0};a=a.md;for(var m=Array(32),l=0;32>l;++l)m[l]=a.create();return g.pools=m,g.pool=0,g.generate=function(a,d){function f(n){if(n)return d(n);if(C.length()>=a)return d(null,C.getBytes(a));1048575l;++l)m[l]=a.create();return g.pools=m,g.pool=0,g.generate=function(a,d){function f(p){if(p)return d(p);if(C.length()>=a)return d(null,C.getBytes(a));1048575> d&255);g.collect(c)},g.registerWorker=function(a){a===self?g.seedFile=function(a,b){function c(a){a=a.data;a.forge&&a.forge.prng&&(self.removeEventListener("message",c),b(a.forge.prng.err,a.forge.prng.bytes))}self.addEventListener("message",c);self.postMessage({forge:{prng:{needed:a}}})}:a.addEventListener("message",function(b){b=b.data;b.forge&&b.forge.prng&&g.seedFile(b.forge.prng.needed,function(b,c){a.postMessage({forge:{prng:{err:b,bytes:c}}})})})},g}}if("function"!=typeof b){if("object"!=typeof module|| !module.exports)return"undefined"==typeof forge&&(forge={}),c(forge);var e=!0;b=function(b,c){c(a,module)}}var g,k=function(a,b){b.exports=function(b){var d=g.map(function(b){return a(b)}).concat(c);b=b||{};b.defined=b.defined||{};if(b.defined.prng)return b.prng;b.defined.prng=!0;for(var f=0;f>(e&7),g;for(g=c;128>g;g++)f.putByte(b[f.at(g-1)+f.at(g-c)&255]);f.setAt(128-d,b[f.at(128- -d)&e]);for(g=127-d;0<=g;g--)f.setAt(g,b[f.at(g+1)^f.at(g+d)]);return f};var f=function(b,d,f){var e=!1,g=null,l=null,m=null,p,n,k,u,h=[];b=a.rc2.expandKey(b,d);for(k=0;64>k;k++)h.push(b.getInt16Le());f?(p=function(a){for(k=0;4>k;k++){a[k]+=h[u]+(a[(k+3)%4]&a[(k+2)%4])+(~a[(k+3)%4]&a[(k+1)%4]);var b=a[k],d=c[k];a[k]=b<>16-d;u++}},n=function(a){for(k=0;4>k;k++)a[k]+=h[a[(k+3)%4]&63]}):(p=function(a){for(k=3;0<=k;k--){var b=a[k],d=c[k];a[k]=(b&65535)>>d|b<<16-d&65535;a[k]-=h[u]+(a[(k+ -3)%4]&a[(k+2)%4])+(~a[(k+3)%4]&a[(k+1)%4]);u--}},n=function(a){for(k=3;0<=k;k--)a[k]-=h[a[(k+3)%4]&63]});var r=null;return r={start:function(b,c){b&&"string"==typeof b&&(b=a.util.createBuffer(b));e=!1;g=a.util.createBuffer();l=c||new a.util.createBuffer;m=b;r.output=l},update:function(a){for(e||g.putBuffer(a);8<=g.length();){a=[[5,p],[1,n],[6,p],[1,n],[5,p]];var b=[];for(k=0;4>k;k++){var c=g.getInt16Le();null!==m&&(f?c^=m.getInt16Le():m.putInt16Le(c));b.push(c&65535)}u=f?0:63;for(c=0;ck;k++)h.push(b.getInt16Le());f?(n=function(a){for(k=0;4>k;k++){a[k]+=h[u]+(a[(k+3)%4]&a[(k+2)%4])+(~a[(k+3)%4]&a[(k+1)%4]);var b=a[k],d=c[k];a[k]=b<>16-d;u++}},p=function(a){for(k=0;4>k;k++)a[k]+=h[a[(k+3)%4]&63]}):(n=function(a){for(k=3;0<=k;k--){var b=a[k],d=c[k];a[k]=(b&65535)>>d|b<<16-d&65535;a[k]-=h[u]+(a[(k+ +3)%4]&a[(k+2)%4])+(~a[(k+3)%4]&a[(k+1)%4]);u--}},p=function(a){for(k=3;0<=k;k--)a[k]-=h[a[(k+3)%4]&63]});var r=null;return r={start:function(b,c){b&&"string"==typeof b&&(b=a.util.createBuffer(b));e=!1;g=a.util.createBuffer();l=c||new a.util.createBuffer;m=b;r.output=l},update:function(a){for(e||g.putBuffer(a);8<=g.length();){a=[[5,n],[1,p],[6,n],[1,p],[5,n]];var b=[];for(k=0;4>k;k++){var c=g.getInt16Le();null!==m&&(f?c^=m.getInt16Le():m.putInt16Le(c));b.push(c&65535)}u=f?0:63;for(c=0;ck;k++)null!==m&&(f?m.putInt16Le(b[k]):b[k]^=m.getInt16Le()),l.putInt16Le(b[k])}},finish:function(a){var b=!0;if(f)if(a)b=a(8,g,!f);else{var c=8===g.length()?8:8-g.length();g.fillWithByte(c,c)}b&&(e=!0,r.update());!f&&(b=0===g.length())&&(a?b=a(8,l,!f):(a=l.length(),c=l.at(a-1),c>a?b=!1:l.truncate(c)));return b}},r};a.rc2.startEncrypting=function(b,c,d){b=a.rc2.createEncryptionCipher(b,128);return b.start(c,d),b};a.rc2.createEncryptionCipher=function(a,b){return f(a, b,!0)};a.rc2.startDecrypting=function(b,c,d){b=a.rc2.createDecryptionCipher(b,128);return b.start(c,d),b};a.rc2.createDecryptionCipher=function(a,b){return f(a,b,!1)}}if("function"!=typeof b){if("object"!=typeof module||!module.exports)return"undefined"==typeof forge&&(forge={}),c(forge);var e=!0;b=function(b,c){c(a,module)}}var g,k=function(a,b){b.exports=function(b){var d=g.map(function(b){return a(b)}).concat(c);b=b||{};b.defined=b.defined||{};if(b.defined.rc2)return b.rc2;b.defined.rc2=!0;for(var f= 0;f>=15;0<=--e;){var l=this.data[a]&32767,m=this.data[a++]>>15,C=b*l+m*g,l=g*l+((C&32767)<<15)+c.data[d]+(f&1073741823);f=(l>>>30)+(C>>>15)+b*m+(f>>>30);c.data[d++]=l&1073741823}return f}function g(a,b,c,d,f,e){var g=b&16383;for(b>>=14;0<=--e;){var l=this.data[a]&16383,m= -this.data[a++]>>14,C=b*l+m*g,l=g*l+((C&16383)<<14)+c.data[d]+f;f=(l>>28)+(C>>14)+b*m;c.data[d++]=l&268435455}return f}function m(a,b){a=I[a.charCodeAt(b)];return null==a?-1:a}function k(a){var b=c();return b.fromInt(a),b}function h(a){var b=1,c;return 0!=(c=a>>>16)&&(a=c,b+=16),0!=(c=a>>8)&&(a=c,b+=8),0!=(c=a>>4)&&(a=c,b+=4),0!=(c=a>>2)&&(a=c,b+=2),0!=a>>1&&(b+=1),b}function q(a){this.m=a}function A(a){this.m=a;this.mp=a.invDigit();this.mpl=this.mp&32767;this.mph=this.mp>>15;this.um=(1<>14,C=b*l+m*g,l=g*l+((C&16383)<<14)+c.data[d]+f;f=(l>>28)+(C>>14)+b*m;c.data[d++]=l&268435455}return f}function m(a,b){a=I[a.charCodeAt(b)];return null==a?-1:a}function k(a){var b=c();return b.fromInt(a),b}function h(a){var b=1,c;return 0!=(c=a>>>16)&&(a=c,b+=16),0!=(c=a>>8)&&(a=c,b+=8),0!=(c=a>>4)&&(a=c,b+=4),0!=(c=a>>2)&&(a=c,b+=2),0!=a>>1&&(b+=1),b}function q(a){this.m=a}function z(a){this.m=a;this.mp=a.invDigit();this.mpl=this.mp&32767;this.mph=this.mp>>15;this.um=(1<=t;++t)I[E++]=t;E=97;for(t=10;36>t;++t)I[E++]=t;E=65;for(t=10;36>t;++t)I[E++]=t;q.prototype.convert=function(a){return 0>a.s||0<=a.compareTo(this.m)?a.mod(this.m):a};q.prototype.revert=function(a){return a};q.prototype.reduce=function(a){a.divRemTo(this.m,null, -a)};q.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};q.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};A.prototype.convert=function(a){var d=c();return a.abs().dlShiftTo(this.m.t,d),d.divRemTo(this.m,null,d),0>a.s&&0>15)*this.mpl&this.um)<<15)&a.DM,c=b+this.m.t;for(a.data[c]+=this.m.am(0,d,a,b,0,this.m.t);a.data[c]>=a.DV;)a.data[c]-=a.DV,a.data[++c]++}a.clamp();a.drShiftTo(this.m.t,a);0<=a.compareTo(this.m)&&a.subTo(this.m,a)};A.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};A.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};b.prototype.copyTo=function(a){for(var b=this.t-1;0<=b;--b)a.data[b]=this.data[b];a.t=this.t;a.s=this.s};b.prototype.fromInt=function(a){this.t= +a)};q.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};q.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};z.prototype.convert=function(a){var d=c();return a.abs().dlShiftTo(this.m.t,d),d.divRemTo(this.m,null,d),0>a.s&&0>15)*this.mpl&this.um)<<15)&a.DM,c=b+this.m.t;for(a.data[c]+=this.m.am(0,d,a,b,0,this.m.t);a.data[c]>=a.DV;)a.data[c]-=a.DV,a.data[++c]++}a.clamp();a.drShiftTo(this.m.t,a);0<=a.compareTo(this.m)&&a.subTo(this.m,a)};z.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};z.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};b.prototype.copyTo=function(a){for(var b=this.t-1;0<=b;--b)a.data[b]=this.data[b];a.t=this.t;a.s=this.s};b.prototype.fromInt=function(a){this.t= 1;this.s=0>a?-1:0;0a?this.data[0]=a+this.DV:this.t=0};b.prototype.fromString=function(a,c){if(16==c)c=4;else if(8==c)c=3;else if(256==c)c=8;else if(2==c)c=1;else if(32==c)c=5;else{if(4!=c){this.fromRadix(a,c);return}c=2}this.s=this.t=0;for(var d=a.length,f=!1,e=0;0<=--d;){var g=8==c?a[d]&255:m(a,d);0>g?"-"==a.charAt(d)&&(f=!0):(f=!1,0==e?this.data[this.t++]=g:e+c>this.DB?(this.data[this.t-1]|=(g&(1<>this.DB-e):this.data[this.t-1]|=g<=this.DB&&(e-=this.DB))}8==c&&0!=(a[0]&128)&&(this.s=-1,0>d|e,e=(this.data[g]&f)<=this.t)b.t=0;else{a%=this.DB;var d=this.DB-a,f=(1<>a;for(var e=c+1;e>a;0>=this.DB;if(a.t>=this.DB;d+=this.s}else{for(d+=this.s;c>=this.DB;d-=a.s}b.s=0>d?-1:0;-1>d?b.data[c++]=this.DV+d:0=b.DV&&(a.data[c+b.t]-=b.DV,a.data[c+b.t+1]=1)}0=e.t)){var g=this.abs();if(g.t>this.F2:0),p=this.FV/n,n=(1<m&&b.ZERO.subTo(f,f)}}}};b.prototype.invDigit=function(){if(1>this.t)return 0;var a=this.data[0];if(0==(a&1))return 0;var b=a&3;return b=b*(2-(a&15)*b)& +c,0,1));a.s=0;a.clamp()};b.prototype.divRemTo=function(a,d,f){var e=a.abs();if(!(0>=e.t)){var g=this.abs();if(g.t>this.F2:0),k=this.FV/n,n=(1<m&&b.ZERO.subTo(f,f)}}}};b.prototype.invDigit=function(){if(1>this.t)return 0;var a=this.data[0];if(0==(a&1))return 0;var b=a&3;return b=b*(2-(a&15)*b)& 15,b=b*(2-(a&255)*b)&255,b=b*(2-((a&65535)*b&65535))&65535,b=b*(2-a*b%this.DV)%this.DV,0a)return b.ONE;var f=c(),e=c(),g=d.convert(this),l=h(a)-1;for(g.copyTo(f);0<=--l;)if(d.sqrTo(f,e),0<(a&1<this.s)return"-"+this.negate().toString(a);if(16==a)a=4;else if(8==a)a= 3;else if(2==a)a=1;else if(32==a)a=5;else{if(4!=a)return this.toRadix(a);a=2}var b=(1<>g)&&(d=!0,f="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c));0<=e;)g>(g+=this.DB-a)):(c=this.data[e]>>(g-=a)&b,0>=g&&(g+=this.DB,--e)),0this.s?this.negate():this};b.prototype.compareTo=function(a){var b=this.s-a.s;if(0!=b)return b;var c=this.t,b=c-a.t;if(0!=b)return 0>this.s?-b:b;for(;0<=--c;)if(0!=(b=this.data[c]-a.data[c]))return b;return 0};b.prototype.bitLength=function(){return 0>=this.t?0:this.DB*(this.t-1)+h(this.data[this.t-1]^this.s&this.DM)};b.prototype.mod=function(a){var d=c();return this.abs().divRemTo(a,null,d),0>this.s&&0a||b.isEven()?c=new q(b):c=new A(b),this.exp(a,c)};b.ZERO=k(0);b.ONE=k(1);z.prototype.convert=F;z.prototype.revert=F;z.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c)};z.prototype.sqrTo=function(a,b){a.squareTo(b)};C.prototype.convert=function(a){if(0>a.s||a.t>2*this.m.t)return a.mod(this.m);if(0>a.compareTo(this.m))return a;var b=c();return a.copyTo(b),this.reduce(b),b};C.prototype.revert=function(a){return a};C.prototype.reduce=function(a){a.drShiftTo(this.m.t-1, +function(a,b){var c;return 256>a||b.isEven()?c=new q(b):c=new z(b),this.exp(a,c)};b.ZERO=k(0);b.ONE=k(1);A.prototype.convert=F;A.prototype.revert=F;A.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c)};A.prototype.sqrTo=function(a,b){a.squareTo(b)};C.prototype.convert=function(a){if(0>a.s||a.t>2*this.m.t)return a.mod(this.m);if(0>a.compareTo(this.m))return a;var b=c();return a.copyTo(b),this.reduce(b),b};C.prototype.revert=function(a){return a};C.prototype.reduce=function(a){a.drShiftTo(this.m.t-1, this.r2);a.t>this.m.t+1&&(a.t=this.m.t+1,a.clamp());this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3);for(this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);0>a.compareTo(this.r2);)a.dAddOffset(1,this.m.t+1);for(a.subTo(this.r2,a);0<=a.compareTo(this.m);)a.subTo(this.m,a)};C.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c);this.reduce(c)};C.prototype.sqrTo=function(a,b){a.squareTo(b);this.reduce(b)};var N=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113, 127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509],J=67108864/N[N.length-1];b.prototype.chunkSize=function(a){return Math.floor(Math.LN2*this.DB/Math.log(a))};b.prototype.toRadix=function(a){null==a&&(a=10);if(0==this.signum()||2>a||36n?"-"==a.charAt(C)&&0==this.signum()&&(e=!0):(l=c*l+n,++g>=d&&(this.dMultiply(f),this.dAddOffset(l,0),g=0,l=0))}0>16};b.prototype.signum=func y,b),b};b.prototype.not=function(){for(var a=c(),b=0;ba?this.rShiftTo(-a,b):this.lShiftTo(a,b),b};b.prototype.shiftRight=function(a){var b=c();return 0>a?this.lShiftTo(-a,b):this.rShiftTo(a,b),b};b.prototype.getLowestSetBit=function(){for(var a=0;a>=16,d+=16), 0==(c&255)&&(c>>=8,d+=8),0==(c&15)&&(c>>=4,d+=4),0==(c&3)&&(c>>=2,d+=2),0==(c&1)&&++d,d);return b+a}return 0>this.s?this.t*this.DB:-1};b.prototype.bitCount=function(){for(var a=0,b=this.s&this.DM,c=0;c=this.t?0!=this.s:0!=(this.data[b]&1<=d)return e;18>d?f=1:48>d?f=3:144>d?f=4:768>d?f=5:f=6;8>d?g=new q(b):b.isEven()?g=new C(b):g=new A(b);b=[];var l=3,m=f-1,n=(1<=m?u=a.data[p]>>d-m&n:(u=(a.data[p]&(1<>this.DB+d-m));for(l=f;0==(u&1);)u>>=1,--l;0>(d-=l)&&(d+=this.DB, +b,d),[b,d]};b.prototype.modPow=function(a,b){var d=a.bitLength(),f,e=k(1),g;if(0>=d)return e;18>d?f=1:48>d?f=3:144>d?f=4:768>d?f=5:f=6;8>d?g=new q(b):b.isEven()?g=new C(b):g=new z(b);b=[];var l=3,m=f-1,n=(1<=m?u=a.data[p]>>d-m&n:(u=(a.data[p]&(1<>this.DB+d-m));for(l=f;0==(u&1);)u>>=1,--l;0>(d-=l)&&(d+=this.DB, --p);if(r)b[u].copyTo(e),r=!1;else{for(;1--d&&(d=this.DB-1,--p)}return g.revert(e)};b.prototype.modInverse=function(a){var c=a.isEven();if(this.isEven()&&c||0==a.signum())return b.ZERO;for(var d=a.clone(),f=this.clone(),e=k(1),g=k(0),l=k(0),m=k(1);0!=d.signum();){for(;d.isEven();)d.rShiftTo(1,d),c?(e.isEven()&&g.isEven()||(e.addTo(this,e),g.subTo(a,g)),e.rShiftTo(1, -e)):g.isEven()||g.subTo(a,g),g.rShiftTo(1,g);for(;f.isEven();)f.rShiftTo(1,f),c?(l.isEven()&&m.isEven()||(l.addTo(this,l),m.subTo(a,m)),l.rShiftTo(1,l)):m.isEven()||m.subTo(a,m),m.rShiftTo(1,m);0<=d.compareTo(f)?(d.subTo(f,d),c&&e.subTo(l,e),g.subTo(m,g)):(f.subTo(d,f),c&&l.subTo(e,l),m.subTo(g,m))}return 0!=f.compareTo(b.ONE)?b.ZERO:0<=m.compareTo(a)?m.subtract(a):0>m.signum()?(m.addTo(a,m),0>m.signum()?m.add(a):m):m};b.prototype.pow=function(a){return this.exp(a,new z)};b.prototype.gcd=function(a){var b= +e)):g.isEven()||g.subTo(a,g),g.rShiftTo(1,g);for(;f.isEven();)f.rShiftTo(1,f),c?(l.isEven()&&m.isEven()||(l.addTo(this,l),m.subTo(a,m)),l.rShiftTo(1,l)):m.isEven()||m.subTo(a,m),m.rShiftTo(1,m);0<=d.compareTo(f)?(d.subTo(f,d),c&&e.subTo(l,e),g.subTo(m,g)):(f.subTo(d,f),c&&l.subTo(e,l),m.subTo(g,m))}return 0!=f.compareTo(b.ONE)?b.ZERO:0<=m.compareTo(a)?m.subtract(a):0>m.signum()?(m.addTo(a,m),0>m.signum()?m.add(a):m):m};b.prototype.pow=function(a){return this.exp(a,new A)};b.prototype.gcd=function(a){var b= 0>this.s?this.negate():this.clone();a=0>a.s?a.negate():a.clone();0>b.compareTo(a)&&(a=b=a);var c=b.getLowestSetBit(),d=a.getLowestSetBit();if(0>d)return b;c>24&255,g>>16&255,g>>8&255,g&255);d.start();d.update(b+l);f+=d.digest().getBytes()}return f.substring(0,c)}var c=a.pkcs1=a.pkcs1||{};c.encode_rsa_oaep=function(c,d,f,e,g){var l,m,n,p;"string"==typeof f?(l=f,m=e||void 0,n=g||void 0):f&&(l=f.label||void 0,m=f.seed||void 0,n=f.md||void 0,f.mgf1&&f.mgf1.md&&(p=f.mgf1.md));n?n.start():n=a.md.sha1.create();p||(p=n);c=Math.ceil(c.n.bitLength()/8);f=c-2*n.digestLength-2;if(d.length> -f)throw p=Error("RSAES-OAEP input message length is too long."),p.length=d.length,p.maxLength=f,p;l||(l="");n.update(l,"raw");l=n.digest();e="";f-=d.length;for(g=0;g>24&255,g>>16&255,g>>8&255,g&255);d.start();d.update(b+l);f+=d.digest().getBytes()}return f.substring(0,c)}var c=a.pkcs1=a.pkcs1||{};c.encode_rsa_oaep=function(c,d,f,e,g){var l,m,n,k;"string"==typeof f?(l=f,m=e||void 0,n=g||void 0):f&&(l=f.label||void 0,m=f.seed||void 0,n=f.md||void 0,f.mgf1&&f.mgf1.md&&(k=f.mgf1.md));n?n.start():n=a.md.sha1.create();k||(k=n);c=Math.ceil(c.n.bitLength()/8);f=c-2*n.digestLength-2;if(d.length> +f)throw k=Error("RSAES-OAEP input message length is too long."),k.length=d.length,k.maxLength=f,k;l||(l="");n.update(l,"raw");l=n.digest();e="";f-=d.length;for(g=0;g -b&&(m=e(b,d));if(m.isProbablePrime(C))return l(null,m);m.dAddOffset(h[p++%8],0)}while(0>n||+new Date-kb&&(m=e(b,d));f=m.toString(16);a.target.postMessage({hex:f,workLoad:p});m.dAddOffset(n,0)}}C=Math.max(1,C);for(var c=[],f=0;f=a?27:150>=a?18:200>=a?15:250>=a?12:300>=a?9:350>=a?8:400>=a?7:500>=a?6:600>=a?5:800>=a?4:1250>=a?3:2}if(!a.prime){var m= -a.prime=a.prime||{},k=a.jsbn.BigInteger,h=[6,4,2,4,2,4,6,2],q=new k(null);q.fromInt(30);var A=function(a,b){return a|b};m.generateProbablePrime=function(c,d,f){"function"==typeof d&&(f=d,d={});d=d||{};var e=d.algorithm||"PRIMEINC";"string"==typeof e&&(e={name:e});e.options=e.options||{};var g=d.prng||a.random;d={nextBytes:function(a){for(var b=g.getBytesSync(a.length),c=0;c +b&&(m=e(b,d));if(m.isProbablePrime(C))return l(null,m);m.dAddOffset(h[n++%8],0)}while(0>k||+new Date-pb&&(m=e(b,d));f=m.toString(16);a.target.postMessage({hex:f,workLoad:n});m.dAddOffset(p,0)}}C=Math.max(1,C);for(var c=[],f=0;f=a?27:150>=a?18:200>=a?15:250>=a?12:300>=a?9:350>=a?8:400>=a?7:500>=a?6:600>=a?5:800>=a?4:1250>=a?3:2}if(!a.prime){var m= +a.prime=a.prime||{},k=a.jsbn.BigInteger,h=[6,4,2,4,2,4,6,2],q=new k(null);q.fromInt(30);var z=function(a,b){return a|b};m.generateProbablePrime=function(c,d,f){"function"==typeof d&&(f=d,d={});d=d||{};var e=d.algorithm||"PRIMEINC";"string"==typeof e&&(e={name:e});e.options=e.options||{};var g=d.prng||a.random;d={nextBytes:function(a){for(var b=g.getBytesSync(a.length),c=0;cc-11)throw f=Error("Message is too long for PKCS#1 v1.5 padding."),f.length=b.length,f.max=c-11,f;f.putByte(0);f.putByte(d);c=c-3-b.length;if(0===d||1===d){d=0===d?0:255;for(var e=0;eb.p.compareTo(b.q)&&(a=b.p,b.p=b.q,b.q=a);0!==b.p.subtract(m.ONE).gcd(b.e).compareTo(m.ONE)? (b.p=null,f()):0!==b.q.subtract(m.ONE).gcd(b.e).compareTo(m.ONE)?(b.q=null,e(b.qBits,g)):(b.p1=b.p.subtract(m.ONE),b.q1=b.q.subtract(m.ONE),b.phi=b.p1.multiply(b.q1),0!==b.phi.gcd(b.e).compareTo(m.ONE)?(b.p=b.q=null,f()):(b.n=b.p.multiply(b.q),b.n.bitLength()!==b.bits?(b.q=null,e(b.qBits,g)):(a=b.e.modInverse(b.phi),b.keys={privateKey:h.rsa.setPrivateKey(b.n,b.e,a,b.p,b.q,a.mod(b.p1),a.mod(b.q1),b.q.modInverse(b.p)),publicKey:h.rsa.setPublicKey(b.n,b.e)},d(null,b.keys))))}"function"==typeof c&&(d= c,c={});c=c||{};var l={algorithm:{name:c.algorithm||"PRIMEINC",options:{workers:c.workers||2,workLoad:c.workLoad||100,workerScript:c.workerScript}}};"prng"in c&&(l.prng=c.prng);f()}function e(b){b=b.toString(16);return"8"<=b[0]&&(b="00"+b),a.util.hexToBytes(b)}function g(a){return 100>=a?27:150>=a?18:200>=a?15:250>=a?12:300>=a?9:350>=a?8:400>=a?7:500>=a?6:600>=a?5:800>=a?4:1250>=a?3:2}if("undefined"==typeof m)var m=a.jsbn.BigInteger;var k=a.asn1;a.pki=a.pki||{};a.pki.rsa=a.rsa=a.rsa||{};var h=a.pki, -q=[6,4,2,4,2,4,6,2],A={name:"PrivateKeyInfo",tagClass:k.Class.UNIVERSAL,type:k.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:k.Class.UNIVERSAL,type:k.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:k.Class.UNIVERSAL,type:k.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:k.Class.UNIVERSAL,type:k.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:k.Class.UNIVERSAL, +q=[6,4,2,4,2,4,6,2],z={name:"PrivateKeyInfo",tagClass:k.Class.UNIVERSAL,type:k.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:k.Class.UNIVERSAL,type:k.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:k.Class.UNIVERSAL,type:k.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:k.Class.UNIVERSAL,type:k.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:k.Class.UNIVERSAL, type:k.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},D={name:"RSAPrivateKey",tagClass:k.Class.UNIVERSAL,type:k.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:k.Class.UNIVERSAL,type:k.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",tagClass:k.Class.UNIVERSAL,type:k.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:k.Class.UNIVERSAL,type:k.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"}, {name:"RSAPrivateKey.privateExponent",tagClass:k.Class.UNIVERSAL,type:k.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:k.Class.UNIVERSAL,type:k.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",tagClass:k.Class.UNIVERSAL,type:k.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:k.Class.UNIVERSAL,type:k.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2", tagClass:k.Class.UNIVERSAL,type:k.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:k.Class.UNIVERSAL,type:k.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},x={name:"RSAPublicKey",tagClass:k.Class.UNIVERSAL,type:k.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:k.Class.UNIVERSAL,type:k.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:k.Class.UNIVERSAL,type:k.Type.INTEGER, constructed:!1,capture:"publicKeyExponent"}]},v=a.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:k.Class.UNIVERSAL,type:k.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:k.Class.UNIVERSAL,type:k.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:k.Class.UNIVERSAL,type:k.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:k.Class.UNIVERSAL, type:k.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:k.Class.UNIVERSAL,type:k.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},y=function(a){var b;if(a.algorithm in h.oids){b=h.oids[a.algorithm];var c=k.oidToDer(b).getBytes();b=k.create(k.Class.UNIVERSAL,k.Type.SEQUENCE,!0,[]);var d=k.create(k.Class.UNIVERSAL,k.Type.SEQUENCE,!0,[]);d.value.push(k.create(k.Class.UNIVERSAL,k.Type.OID,!1,c));d.value.push(k.create(k.Class.UNIVERSAL, -k.Type.NULL,!1,""));a=k.create(k.Class.UNIVERSAL,k.Type.OCTETSTRING,!1,a.digest().getBytes());return b.value.push(d),b.value.push(a),k.toDer(b).getBytes()}b=Error("Unknown message digest algorithm.");throw b.algorithm=a.algorithm,b;},z=function(b,c,d){if(d)return b.modPow(c.e,c.n);if(!c.p||!c.q)return b.modPow(c.d,c.n);c.dP||(c.dP=c.d.mod(c.p.subtract(m.ONE)));c.dQ||(c.dQ=c.d.mod(c.q.subtract(m.ONE)));c.qInv||(c.qInv=c.q.modInverse(c.p));do d=(new m(a.util.bytesToHex(a.random.getBytes(c.n.bitLength()/ -8)),16)).mod(c.n);while(d.equals(m.ZERO));b=b.multiply(d.modPow(c.e,c.n)).mod(c.n);var f=b.mod(c.p).modPow(c.dP,c.p);for(b=b.mod(c.q).modPow(c.dQ,c.q);0>f.compareTo(b);)f=f.add(c.p);b=f.subtract(b).multiply(c.qInv).mod(c.p).multiply(c.q).add(b);return b=b.multiply(d.modInverse(c.n)).mod(c.n),b};h.rsa.encrypt=function(c,d,f){var e=f,g,l=Math.ceil(d.n.bitLength()/8);!1!==f&&!0!==f?(e=2===f,g=b(c,d,f)):(g=a.util.createBuffer(),g.putBytes(c));c=new m(g.toHex(),16);d=z(c,d,e).toString(16);e=a.util.createBuffer(); -for(l-=Math.ceil(d.length/2);0f.compareTo(b);)f=f.add(c.p);b=f.subtract(b).multiply(c.qInv).mod(c.p).multiply(c.q).add(b);return b=b.multiply(d.modInverse(c.n)).mod(c.n),b};h.rsa.encrypt=function(c,d,f){var e=f,g,l=Math.ceil(d.n.bitLength()/8);!1!==f&&!0!==f?(e=2===f,g=b(c,d,f)):(g=a.util.createBuffer(),g.putBytes(c));c=new m(g.toHex(),16);d=A(c,d,e).toString(16);e=a.util.createBuffer(); +for(l-=Math.ceil(d.length/2);0>1,pBits:b-(b>>1),pqState:0,num:null, keys:null},e.e.fromInt(e.eInt),e};h.rsa.stepKeyPairGenerationState=function(a,b){"algorithm"in a||(a.algorithm="PRIMEINC");var c=new m(null);c.fromInt(30);for(var d=0,f=function(a,b){return a|b},e=+new Date,l,k=0;null===a.keys&&(0>=b||kl?a.pqState= 0:a.num.isProbablePrime(g(a.num.bitLength()))?++a.pqState:a.num.dAddOffset(q[d++%8],0):2===a.pqState?a.pqState=0===a.num.subtract(m.ONE).gcd(a.e).compareTo(m.ONE)?3:0:3===a.pqState&&(a.pqState=0,null===a.p?a.p=a.num:a.q=a.num,null!==a.p&&null!==a.q&&++a.state,a.num=null)}else 1===a.state?(0>a.p.compareTo(a.q)&&(a.num=a.p,a.p=a.q,a.q=a.num),++a.state):2===a.state?(a.p1=a.p.subtract(m.ONE),a.q1=a.q.subtract(m.ONE),a.phi=a.p1.multiply(a.q1),++a.state):3===a.state?0===a.phi.gcd(a.e).compareTo(m.ONE)? ++a.state:(a.p=null,a.q=null,a.state=0):4===a.state?(a.n=a.p.multiply(a.q),a.n.bitLength()===a.bits?++a.state:(a.q=null,a.state=0)):5===a.state&&(l=a.e.modInverse(a.phi),a.keys={privateKey:h.rsa.setPrivateKey(a.n,a.e,l,a.p,a.q,l.mod(a.p1),l.mod(a.q1),a.q.modInverse(a.p)),publicKey:h.rsa.setPublicKey(a.n,a.e)});l=+new Date;k+=l-e;e=l}return null!==a.keys};h.rsa.generateKeyPair=function(a,b,c,d){1===arguments.length?"object"==typeof a?(c=a,a=void 0):"function"==typeof a&&(d=a,a=void 0):2===arguments.length? "number"==typeof a?"function"==typeof b?(d=b,b=void 0):"number"!=typeof b&&(c=b,b=void 0):(c=a,d=b,a=void 0,b=void 0):3===arguments.length&&("number"==typeof b?"function"==typeof c&&(d=c,c=void 0):(d=c,c=b,b=void 0));c=c||{};void 0===a&&(a=c.bits||2048);void 0===b&&(b=c.e||65537);var e=h.rsa.createKeyPairGenerationState(a,b,c);if(!d)return h.rsa.stepKeyPairGenerationState(e,0),e.keys;f(e,c,d)};h.setRsaPublicKey=h.rsa.setPublicKey=function(d,f){var e={n:d,e:f};return e.encrypt=function(c,d,f){"string"== typeof d?d=d.toUpperCase():void 0===d&&(d="RSAES-PKCS1-V1_5");if("RSAES-PKCS1-V1_5"===d)d={encode:function(a,c,d){return b(a,c,2).getBytes()}};else if("RSA-OAEP"===d||"RSAES-OAEP"===d)d={encode:function(b,c){return a.pkcs1.encode_rsa_oaep(c,b,f)}};else if(-1!==["RAW","NONE","NULL",null].indexOf(d))d={encode:function(a){return a}};else if("string"==typeof d)throw Error('Unsupported encryption scheme: "'+d+'".');c=d.encode(c,e,!0);return h.rsa.encrypt(c,e,!0)},e.verify=function(a,b,d){"string"==typeof d? -d=d.toUpperCase():void 0===d&&(d="RSASSA-PKCS1-V1_5");if("RSASSA-PKCS1-V1_5"===d)d={verify:function(a,b){b=c(b,e,!0);b=k.fromDer(b);return a===b.value[1].value}};else if("NONE"===d||"NULL"===d||null===d)d={verify:function(a,b){return b=c(b,e,!0),a===b}};b=h.rsa.decrypt(b,e,!0,!1);return d.verify(a,b,e.n.bitLength())},e};h.setRsaPrivateKey=h.rsa.setPrivateKey=function(b,d,f,e,g,l,m,k){var C={n:b,e:d,d:f,p:e,q:g,dP:l,dQ:m,qInv:k};return C.decrypt=function(b,d,f){"string"==typeof d?d=d.toUpperCase(): -void 0===d&&(d="RSAES-PKCS1-V1_5");b=h.rsa.decrypt(b,C,!1,!1);if("RSAES-PKCS1-V1_5"===d)d={decode:c};else if("RSA-OAEP"===d||"RSAES-OAEP"===d)d={decode:function(b,c){return a.pkcs1.decode_rsa_oaep(c,b,f)}};else{if(-1===["RAW","NONE","NULL",null].indexOf(d))throw Error('Unsupported encryption scheme: "'+d+'".');d={decode:function(a){return a}}}return d.decode(b,C,!1)},C.sign=function(a,b){var c=!1;"string"==typeof b&&(b=b.toUpperCase());if(void 0===b||"RSASSA-PKCS1-V1_5"===b)b={encode:y},c=1;else if("NONE"=== -b||"NULL"===b||null===b)b={encode:function(){return a}},c=1;b=b.encode(a,C.n.bitLength());return h.rsa.encrypt(b,C,c)},C};h.wrapRsaPrivateKey=function(a){return k.create(k.Class.UNIVERSAL,k.Type.SEQUENCE,!0,[k.create(k.Class.UNIVERSAL,k.Type.INTEGER,!1,k.integerToDer(0).getBytes()),k.create(k.Class.UNIVERSAL,k.Type.SEQUENCE,!0,[k.create(k.Class.UNIVERSAL,k.Type.OID,!1,k.oidToDer(h.oids.rsaEncryption).getBytes()),k.create(k.Class.UNIVERSAL,k.Type.NULL,!1,"")]),k.create(k.Class.UNIVERSAL,k.Type.OCTETSTRING, -!1,k.toDer(a).getBytes())])};h.privateKeyFromAsn1=function(b){var c={},d=[];k.validate(b,A,c,d)&&(b=k.fromDer(a.util.createBuffer(c.privateKey)));c={};d=[];if(!k.validate(b,D,c,d))throw b=Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey."),b.errors=d,b;var f,e,g,l,p,n,u,r;return f=a.util.createBuffer(c.privateKeyModulus).toHex(),e=a.util.createBuffer(c.privateKeyPublicExponent).toHex(),g=a.util.createBuffer(c.privateKeyPrivateExponent).toHex(),l=a.util.createBuffer(c.privateKeyPrime1).toHex(), -p=a.util.createBuffer(c.privateKeyPrime2).toHex(),n=a.util.createBuffer(c.privateKeyExponent1).toHex(),u=a.util.createBuffer(c.privateKeyExponent2).toHex(),r=a.util.createBuffer(c.privateKeyCoefficient).toHex(),h.setRsaPrivateKey(new m(f,16),new m(e,16),new m(g,16),new m(l,16),new m(p,16),new m(n,16),new m(u,16),new m(r,16))};h.privateKeyToAsn1=h.privateKeyToRSAPrivateKey=function(a){return k.create(k.Class.UNIVERSAL,k.Type.SEQUENCE,!0,[k.create(k.Class.UNIVERSAL,k.Type.INTEGER,!1,k.integerToDer(0).getBytes()), +d=d.toUpperCase():void 0===d&&(d="RSASSA-PKCS1-V1_5");if("RSASSA-PKCS1-V1_5"===d)d={verify:function(a,b){b=c(b,e,!0);b=k.fromDer(b);return a===b.value[1].value}};else if("NONE"===d||"NULL"===d||null===d)d={verify:function(a,b){return b=c(b,e,!0),a===b}};b=h.rsa.decrypt(b,e,!0,!1);return d.verify(a,b,e.n.bitLength())},e};h.setRsaPrivateKey=h.rsa.setPrivateKey=function(b,d,f,e,g,l,m,k){var n={n:b,e:d,d:f,p:e,q:g,dP:l,dQ:m,qInv:k};return n.decrypt=function(b,d,f){"string"==typeof d?d=d.toUpperCase(): +void 0===d&&(d="RSAES-PKCS1-V1_5");b=h.rsa.decrypt(b,n,!1,!1);if("RSAES-PKCS1-V1_5"===d)d={decode:c};else if("RSA-OAEP"===d||"RSAES-OAEP"===d)d={decode:function(b,c){return a.pkcs1.decode_rsa_oaep(c,b,f)}};else{if(-1===["RAW","NONE","NULL",null].indexOf(d))throw Error('Unsupported encryption scheme: "'+d+'".');d={decode:function(a){return a}}}return d.decode(b,n,!1)},n.sign=function(a,b){var c=!1;"string"==typeof b&&(b=b.toUpperCase());if(void 0===b||"RSASSA-PKCS1-V1_5"===b)b={encode:y},c=1;else if("NONE"=== +b||"NULL"===b||null===b)b={encode:function(){return a}},c=1;b=b.encode(a,n.n.bitLength());return h.rsa.encrypt(b,n,c)},n};h.wrapRsaPrivateKey=function(a){return k.create(k.Class.UNIVERSAL,k.Type.SEQUENCE,!0,[k.create(k.Class.UNIVERSAL,k.Type.INTEGER,!1,k.integerToDer(0).getBytes()),k.create(k.Class.UNIVERSAL,k.Type.SEQUENCE,!0,[k.create(k.Class.UNIVERSAL,k.Type.OID,!1,k.oidToDer(h.oids.rsaEncryption).getBytes()),k.create(k.Class.UNIVERSAL,k.Type.NULL,!1,"")]),k.create(k.Class.UNIVERSAL,k.Type.OCTETSTRING, +!1,k.toDer(a).getBytes())])};h.privateKeyFromAsn1=function(b){var c={},d=[];k.validate(b,z,c,d)&&(b=k.fromDer(a.util.createBuffer(c.privateKey)));c={};d=[];if(!k.validate(b,D,c,d))throw b=Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey."),b.errors=d,b;var f,e,g,l,n,p,u,r;return f=a.util.createBuffer(c.privateKeyModulus).toHex(),e=a.util.createBuffer(c.privateKeyPublicExponent).toHex(),g=a.util.createBuffer(c.privateKeyPrivateExponent).toHex(),l=a.util.createBuffer(c.privateKeyPrime1).toHex(), +n=a.util.createBuffer(c.privateKeyPrime2).toHex(),p=a.util.createBuffer(c.privateKeyExponent1).toHex(),u=a.util.createBuffer(c.privateKeyExponent2).toHex(),r=a.util.createBuffer(c.privateKeyCoefficient).toHex(),h.setRsaPrivateKey(new m(f,16),new m(e,16),new m(g,16),new m(l,16),new m(n,16),new m(p,16),new m(u,16),new m(r,16))};h.privateKeyToAsn1=h.privateKeyToRSAPrivateKey=function(a){return k.create(k.Class.UNIVERSAL,k.Type.SEQUENCE,!0,[k.create(k.Class.UNIVERSAL,k.Type.INTEGER,!1,k.integerToDer(0).getBytes()), k.create(k.Class.UNIVERSAL,k.Type.INTEGER,!1,e(a.n)),k.create(k.Class.UNIVERSAL,k.Type.INTEGER,!1,e(a.e)),k.create(k.Class.UNIVERSAL,k.Type.INTEGER,!1,e(a.d)),k.create(k.Class.UNIVERSAL,k.Type.INTEGER,!1,e(a.p)),k.create(k.Class.UNIVERSAL,k.Type.INTEGER,!1,e(a.q)),k.create(k.Class.UNIVERSAL,k.Type.INTEGER,!1,e(a.dP)),k.create(k.Class.UNIVERSAL,k.Type.INTEGER,!1,e(a.dQ)),k.create(k.Class.UNIVERSAL,k.Type.INTEGER,!1,e(a.qInv))])};h.publicKeyFromAsn1=function(b){var c={},d=[];if(k.validate(b,v,c,d)){d= k.derToOid(c.publicKeyOid);if(d!==h.oids.rsaEncryption)throw c=Error("Cannot read public key. Unknown OID."),c.oid=d,c;b=c.rsaPublicKey}d=[];if(!k.validate(b,x,c,d))throw c=Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey."),c.errors=d,c;d=a.util.createBuffer(c.publicKeyModulus).toHex();c=a.util.createBuffer(c.publicKeyExponent).toHex();return h.setRsaPublicKey(new m(d,16),new m(c,16))};h.publicKeyToAsn1=h.publicKeyToSubjectPublicKeyInfo=function(a){return k.create(k.Class.UNIVERSAL, k.Type.SEQUENCE,!0,[k.create(k.Class.UNIVERSAL,k.Type.SEQUENCE,!0,[k.create(k.Class.UNIVERSAL,k.Type.OID,!1,k.oidToDer(h.oids.rsaEncryption).getBytes()),k.create(k.Class.UNIVERSAL,k.Type.NULL,!1,"")]),k.create(k.Class.UNIVERSAL,k.Type.BITSTRING,!1,[h.publicKeyToRSAPublicKey(a)])])};h.publicKeyToRSAPublicKey=function(a){return k.create(k.Class.UNIVERSAL,k.Type.SEQUENCE,!0,[k.create(k.Class.UNIVERSAL,k.Type.INTEGER,!1,e(a.n)),k.create(k.Class.UNIVERSAL,k.Type.INTEGER,!1,e(a.e))])}}if("function"!=typeof b){if("object"!= @@ -295,10 +295,10 @@ typeof module||!module.exports)return"undefined"==typeof forge&&(forge={}),c(for tagClass:f.Class.UNIVERSAL,type:f.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:f.Class.UNIVERSAL,type:f.Type.OID,constructed:!1,capture:"encryptionOid"},{name:"AlgorithmIdentifier.parameters",tagClass:f.Class.UNIVERSAL,type:f.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:f.Class.UNIVERSAL,type:f.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},k={name:"PBES2Algorithms",tagClass:f.Class.UNIVERSAL, type:f.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:f.Class.UNIVERSAL,type:f.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",tagClass:f.Class.UNIVERSAL,type:f.Type.OID,constructed:!1,capture:"kdfOid"},{name:"PBES2Algorithms.params",tagClass:f.Class.UNIVERSAL,type:f.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.params.salt",tagClass:f.Class.UNIVERSAL,type:f.Type.OCTETSTRING,constructed:!1,capture:"kdfSalt"},{name:"PBES2Algorithms.params.iterationCount", tagClass:f.Class.UNIVERSAL,type:f.Type.INTEGER,onstructed:!0,capture:"kdfIterationCount"}]}]},{name:"PBES2Algorithms.encryptionScheme",tagClass:f.Class.UNIVERSAL,type:f.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:f.Class.UNIVERSAL,type:f.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:f.Class.UNIVERSAL,type:f.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},h={name:"pkcs-12PbeParams",tagClass:f.Class.UNIVERSAL, -type:f.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:f.Class.UNIVERSAL,type:f.Type.OCTETSTRING,constructed:!1,capture:"salt"},{name:"pkcs-12PbeParams.iterations",tagClass:f.Class.UNIVERSAL,type:f.Type.INTEGER,constructed:!1,capture:"iterations"}]};e.encryptPrivateKeyInfo=function(b,c,d){d=d||{};d.saltSize=d.saltSize||8;d.count=d.count||2048;d.algorithm=d.algorithm||"aes128";var l=a.random.getBytesSync(d.saltSize),m=d.count,k=f.integerToDer(m),p;if(0===d.algorithm.indexOf("aes")|| -"des"===d.algorithm){var n,C;switch(d.algorithm){case "aes128":n=p=16;d=g["aes128-CBC"];C=a.aes.createEncryptionCipher;break;case "aes192":p=24;n=16;d=g["aes192-CBC"];C=a.aes.createEncryptionCipher;break;case "aes256":p=32;n=16;d=g["aes256-CBC"];C=a.aes.createEncryptionCipher;break;case "des":n=p=8;d=g.desCBC;C=a.des.createEncryptionCipher;break;default:throw l=Error("Cannot encrypt private key. Unknown encryption algorithm."),l.algorithm=d.algorithm,l;}var h=a.pkcs5.pbkdf2(c,l,m,p);c=a.random.getBytesSync(n); -m=C(h);m.start(c);m.update(f.toDer(b));m.finish();b=m.output.getBytes();l=f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[f.create(f.Class.UNIVERSAL,f.Type.OID,!1,f.oidToDer(g.pkcs5PBES2).getBytes()),f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[f.create(f.Class.UNIVERSAL,f.Type.OID,!1,f.oidToDer(g.pkcs5PBKDF2).getBytes()),f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[f.create(f.Class.UNIVERSAL,f.Type.OCTETSTRING,!1,l),f.create(f.Class.UNIVERSAL,f.Type.INTEGER, -!1,k.getBytes())])]),f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[f.create(f.Class.UNIVERSAL,f.Type.OID,!1,f.oidToDer(d).getBytes()),f.create(f.Class.UNIVERSAL,f.Type.OCTETSTRING,!1,c)])])])}else{if("3des"!==d.algorithm)throw l=Error("Cannot encrypt private key. Unknown encryption algorithm."),l.algorithm=d.algorithm,l;p=24;d=new a.util.ByteBuffer(l);h=e.pbe.generatePkcs12Key(c,d,1,m,p);c=e.pbe.generatePkcs12Key(c,d,2,m,p);m=a.des.createEncryptionCipher(h);m.start(c);m.update(f.toDer(b));m.finish(); +type:f.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:f.Class.UNIVERSAL,type:f.Type.OCTETSTRING,constructed:!1,capture:"salt"},{name:"pkcs-12PbeParams.iterations",tagClass:f.Class.UNIVERSAL,type:f.Type.INTEGER,constructed:!1,capture:"iterations"}]};e.encryptPrivateKeyInfo=function(b,c,d){d=d||{};d.saltSize=d.saltSize||8;d.count=d.count||2048;d.algorithm=d.algorithm||"aes128";var l=a.random.getBytesSync(d.saltSize),m=d.count,k=f.integerToDer(m),n;if(0===d.algorithm.indexOf("aes")|| +"des"===d.algorithm){var h,C;switch(d.algorithm){case "aes128":h=n=16;d=g["aes128-CBC"];C=a.aes.createEncryptionCipher;break;case "aes192":n=24;h=16;d=g["aes192-CBC"];C=a.aes.createEncryptionCipher;break;case "aes256":n=32;h=16;d=g["aes256-CBC"];C=a.aes.createEncryptionCipher;break;case "des":h=n=8;d=g.desCBC;C=a.des.createEncryptionCipher;break;default:throw l=Error("Cannot encrypt private key. Unknown encryption algorithm."),l.algorithm=d.algorithm,l;}var p=a.pkcs5.pbkdf2(c,l,m,n);c=a.random.getBytesSync(h); +m=C(p);m.start(c);m.update(f.toDer(b));m.finish();b=m.output.getBytes();l=f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[f.create(f.Class.UNIVERSAL,f.Type.OID,!1,f.oidToDer(g.pkcs5PBES2).getBytes()),f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[f.create(f.Class.UNIVERSAL,f.Type.OID,!1,f.oidToDer(g.pkcs5PBKDF2).getBytes()),f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[f.create(f.Class.UNIVERSAL,f.Type.OCTETSTRING,!1,l),f.create(f.Class.UNIVERSAL,f.Type.INTEGER, +!1,k.getBytes())])]),f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[f.create(f.Class.UNIVERSAL,f.Type.OID,!1,f.oidToDer(d).getBytes()),f.create(f.Class.UNIVERSAL,f.Type.OCTETSTRING,!1,c)])])])}else{if("3des"!==d.algorithm)throw l=Error("Cannot encrypt private key. Unknown encryption algorithm."),l.algorithm=d.algorithm,l;n=24;d=new a.util.ByteBuffer(l);p=e.pbe.generatePkcs12Key(c,d,1,m,n);c=e.pbe.generatePkcs12Key(c,d,2,m,n);m=a.des.createEncryptionCipher(p);m.start(c);m.update(f.toDer(b));m.finish(); b=m.output.getBytes();l=f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[f.create(f.Class.UNIVERSAL,f.Type.OID,!1,f.oidToDer(g["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[f.create(f.Class.UNIVERSAL,f.Type.OCTETSTRING,!1,l),f.create(f.Class.UNIVERSAL,f.Type.INTEGER,!1,k.getBytes())])])}return f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[l,f.create(f.Class.UNIVERSAL,f.Type.OCTETSTRING,!1,b)])};e.decryptPrivateKeyInfo=function(b,c){var d=null,g={},l= [];if(!f.validate(b,m,g,l))throw d=Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo."),d.errors=l,d;l=f.derToOid(g.encryptionOid);c=e.pbe.getCipher(l,g.encryptionParams,c);g=a.util.createBuffer(g.encryptedData);return c.update(g),c.finish()&&(d=f.fromDer(c.output)),d};e.encryptedPrivateKeyToPem=function(b,c){b={type:"ENCRYPTED PRIVATE KEY",body:f.toDer(b).getBytes()};return a.pem.encode(b,{maxline:c})};e.encryptedPrivateKeyFromPem=function(b){b=a.pem.decode(b)[0]; if("ENCRYPTED PRIVATE KEY"!==b.type){var c=Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');throw c.headerType=b.type,c;}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return f.fromDer(b.body)};e.encryptRsaPrivateKey=function(b,c,d){d=d||{};if(!d.legacy)return b=e.wrapRsaPrivateKey(e.privateKeyToAsn1(b)),b=e.encryptPrivateKeyInfo(b,c,d),e.encryptedPrivateKeyToPem(b); @@ -307,11 +307,11 @@ break;default:throw b=Error('Could not encrypt RSA private key; unsupported encr if("ENCRYPTED PRIVATE KEY"!==b.type&&"PRIVATE KEY"!==b.type&&"RSA PRIVATE KEY"!==b.type)throw c=Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".'),c.headerType=c,c;if(b.procType&&"ENCRYPTED"===b.procType.type){var g,l;switch(b.dekInfo.algorithm){case "DES-CBC":g=8;l=a.des.createDecryptionCipher;break;case "DES-EDE3-CBC":g=24;l=a.des.createDecryptionCipher;break;case "AES-128-CBC":g=16;l=a.aes.createDecryptionCipher; break;case "AES-192-CBC":g=24;l=a.aes.createDecryptionCipher;break;case "AES-256-CBC":g=32;l=a.aes.createDecryptionCipher;break;case "RC2-40-CBC":g=5;l=function(b){return a.rc2.createDecryptionCipher(b,40)};break;case "RC2-64-CBC":g=8;l=function(b){return a.rc2.createDecryptionCipher(b,64)};break;case "RC2-128-CBC":g=16;l=function(b){return a.rc2.createDecryptionCipher(b,128)};break;default:throw c=Error('Could not decrypt private key; unsupported encryption algorithm "'+b.dekInfo.algorithm+'".'), c.algorithm=b.dekInfo.algorithm,c;}var m=a.util.hexToBytes(b.dekInfo.parameters);g=a.pbe.opensslDeriveBytes(c,m.substr(0,8),g);l=l(g);l.start(m);l.update(a.util.createBuffer(b.body));if(!l.finish())return d;d=l.output.getBytes()}else d=b.body;return"ENCRYPTED PRIVATE KEY"===b.type?d=e.decryptPrivateKeyInfo(f.fromDer(d),c):d=f.fromDer(d),null!==d&&(d=e.privateKeyFromAsn1(d)),d};e.pbe.generatePkcs12Key=function(b,c,d,f,e,g){var l,m;if("undefined"==typeof g||null===g)g=a.md.sha1.create();var k=g.digestLength, -p=g.blockLength,n=new a.util.ByteBuffer,h=new a.util.ByteBuffer;if(null!==b&&void 0!==b){for(m=0;m>=8,y+=v.at(m)+A.at(m),A.setAt(m,y&255);B.putBuffer(A)}h=B;n.putBuffer(q)}return n.truncate(n.length()-e),n};e.pbe.getCipher=function(a,b,c){switch(a){case e.oids.pkcs5PBES2:return e.pbe.getCipherForPBES2(a,b,c);case e.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case e.oids["pbewithSHAAnd40BitRC2-CBC"]:return e.pbe.getCipherForPKCS12PBE(a, +n=g.blockLength,h=new a.util.ByteBuffer,p=new a.util.ByteBuffer;if(null!==b&&void 0!==b){for(m=0;m>=8,y+=v.at(m)+z.at(m),z.setAt(m,y&255);B.putBuffer(z)}p=B;h.putBuffer(q)}return h.truncate(h.length()-e),h};e.pbe.getCipher=function(a,b,c){switch(a){case e.oids.pkcs5PBES2:return e.pbe.getCipherForPBES2(a,b,c);case e.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case e.oids["pbewithSHAAnd40BitRC2-CBC"]:return e.pbe.getCipherForPKCS12PBE(a, b,c);default:throw b=Error("Cannot read encrypted PBE data block. Unsupported OID."),b.oid=a,b.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC","pbewithSHAAnd40BitRC2-CBC"],b;}};e.pbe.getCipherForPBES2=function(b,c,d){var g={};b=[];if(!f.validate(c,k,g,b)){var l=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw l.errors=b,l;}b=f.derToOid(g.kdfOid);if(b!==e.oids.pkcs5PBKDF2)throw l=Error("Cannot read encrypted private key. Unsupported key derivation function OID."), -l.oid=b,l.supportedOids=["pkcs5PBKDF2"],l;b=f.derToOid(g.encOid);if(b!==e.oids["aes128-CBC"]&&b!==e.oids["aes192-CBC"]&&b!==e.oids["aes256-CBC"]&&b!==e.oids["des-EDE3-CBC"]&&b!==e.oids.desCBC)throw l=Error("Cannot read encrypted private key. Unsupported encryption scheme OID."),l.oid=b,l.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],l;c=g.kdfSalt;var m=a.util.createBuffer(g.kdfIterationCount),m=m.getInt(m.length()<<3),p;switch(e.oids[b]){case "aes128-CBC":p=16;l=a.aes.createDecryptionCipher; -break;case "aes192-CBC":p=24;l=a.aes.createDecryptionCipher;break;case "aes256-CBC":p=32;l=a.aes.createDecryptionCipher;break;case "des-EDE3-CBC":p=24;l=a.des.createDecryptionCipher;break;case "desCBC":p=8,l=a.des.createDecryptionCipher}b=a.pkcs5.pbkdf2(d,c,m,p);g=g.encIv;l=l(b);return l.start(g),l};e.pbe.getCipherForPKCS12PBE=function(b,c,d){var g={},l=[];if(!f.validate(c,h,g,l))throw d=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo."), +l.oid=b,l.supportedOids=["pkcs5PBKDF2"],l;b=f.derToOid(g.encOid);if(b!==e.oids["aes128-CBC"]&&b!==e.oids["aes192-CBC"]&&b!==e.oids["aes256-CBC"]&&b!==e.oids["des-EDE3-CBC"]&&b!==e.oids.desCBC)throw l=Error("Cannot read encrypted private key. Unsupported encryption scheme OID."),l.oid=b,l.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],l;c=g.kdfSalt;var m=a.util.createBuffer(g.kdfIterationCount),m=m.getInt(m.length()<<3),n;switch(e.oids[b]){case "aes128-CBC":n=16;l=a.aes.createDecryptionCipher; +break;case "aes192-CBC":n=24;l=a.aes.createDecryptionCipher;break;case "aes256-CBC":n=32;l=a.aes.createDecryptionCipher;break;case "des-EDE3-CBC":n=24;l=a.des.createDecryptionCipher;break;case "desCBC":n=8,l=a.des.createDecryptionCipher}b=a.pkcs5.pbkdf2(d,c,m,n);g=g.encIv;l=l(b);return l.start(g),l};e.pbe.getCipherForPKCS12PBE=function(b,c,d){var g={},l=[];if(!f.validate(c,h,g,l))throw d=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo."), d.errors=l,d;var l=a.util.createBuffer(g.salt),g=a.util.createBuffer(g.iterations),g=g.getInt(g.length()<<3),m;switch(b){case e.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:m=24;c=8;b=a.des.startDecrypting;break;case e.oids["pbewithSHAAnd40BitRC2-CBC"]:m=5;c=8;b=function(b,c){b=a.rc2.createDecryptionCipher(b,40);return b.start(c,null),b};break;default:throw d=Error("Cannot read PKCS #12 PBE data block. Unsupported OID."),d.oid=b,d;}m=e.pbe.generatePkcs12Key(d,l,1,g,m);d=e.pbe.generatePkcs12Key(d,l,2,g, c);return b(m,d)};e.pbe.opensslDeriveBytes=function(c,d,f,e){if("undefined"==typeof e||null===e)e=a.md.md5.create();null===d&&(d="");for(var g=[b(e,c+d)],l=16,m=1;l>8*h-d&255;return n=String.fromCharCode(n.charCodeAt(0)&~d)+ -n.substr(1),n+b+String.fromCharCode(188)},h.verify=function(b,d,g){var l;l=g-1;g=Math.ceil(l/8);d=d.substr(-g);if(g>8*g-l&255;if(0!==(h.charCodeAt(0)&n))throw Error("Bits beyond keysize not zero as expected.");var p=f.generate(d,k),C="";for(l=0;l>8*n-d&255;return h=String.fromCharCode(h.charCodeAt(0)&~d)+ +h.substr(1),h+b+String.fromCharCode(188)},n.verify=function(b,d,g){var l;l=g-1;g=Math.ceil(l/8);d=d.substr(-g);if(g>8*g-l&255;if(0!==(n.charCodeAt(0)&h))throw Error("Bits beyond keysize not zero as expected.");var p=f.generate(d,k),C="";for(l=0;lg.length)throw Error("Cannot read notBefore/notAfter validity times; they were not provided as either UTCTime or GeneralizedTime."); l.validity.notBefore=g[0];l.validity.notAfter=g[1];l.tbsCertificate=e.tbsCertificate;if(d){l.md=null;if(l.signatureOid in q)switch(g=q[l.signatureOid],g){case "sha1WithRSAEncryption":l.md=a.md.sha1.create();break;case "md5WithRSAEncryption":l.md=a.md.md5.create();break;case "sha256WithRSAEncryption":l.md=a.md.sha256.create();break;case "RSASSA-PSS":l.md=a.md.sha256.create()}if(null===l.md)throw e=Error("Could not compute certificate digest. Unknown signature OID."),e.signatureOid=l.signatureOid,e; d=k.toDer(l.tbsCertificate);l.md.update(d.getBytes())}d=a.md.sha1.create();l.issuer.getField=function(a){return b(l.issuer,a)};l.issuer.addField=function(a){f([a]);l.issuer.attributes.push(a)};l.issuer.attributes=h.RDNAttributesAsArray(e.certIssuer,d);e.certIssuerUniqueId&&(l.issuer.uniqueId=e.certIssuerUniqueId);l.issuer.hash=d.digest().toHex();d=a.md.sha1.create();return l.subject.getField=function(a){return b(l.subject,a)},l.subject.addField=function(a){f([a]);l.subject.attributes.push(a)},l.subject.attributes= @@ -384,7 +384,7 @@ function(b){var c={};c.id=k.derToOid(b.value[0].value);c.critical=!1;b.value[1]. 8===(d&8);c.keyCertSign=4===(d&4);c.cRLSign=2===(d&2);c.encipherOnly=1===(d&1);c.decipherOnly=128===(f&128)}else if("basicConstraints"===c.name)b=k.fromDer(c.value),0c.version.minor)d=null,f="";0===f.length&&(f=a.random.getBytes(32));b.session.id=f;b.session.clientHelloVersion=c.version;b.session.sp={};if(d)b.version=b.session.version=d.version,b.session.sp=d.sp;else{for(var e,f=1;fd)return b.error(b,{message:"Invalid Certificate message. Message too short.",send:!0,alert:{level:k.Alert.Level.fatal, description:k.Alert.Description.illegal_parameter}});d=e(c.fragment,3);var f,g;c=[];try{for(;0d)return b.error(b,{message:"Invalid key parameters. Only RSA is supported.",send:!0,alert:{level:k.Alert.Level.fatal,description:k.Alert.Description.unsupported_certificate}});c=e(c.fragment,2).getBytes();d=null;if(b.getPrivateKey)try{d=b.getPrivateKey(b,b.session.serverCertificate),d=a.pki.privateKeyFromPem(d)}catch(qa){b.error(b,{message:"Could not get private key.",cause:qa,send:!0,alert:{level:k.Alert.Level.fatal,description:k.Alert.Description.internal_error}})}if(null=== d)return b.error(b,{message:"No private key set.",send:!0,alert:{level:k.Alert.Level.fatal,description:k.Alert.Description.internal_error}});try{var f=b.session.sp;f.pre_master_secret=d.decrypt(c);var g=b.session.clientHelloVersion;if(g.major!==f.pre_master_secret.charCodeAt(0)||g.minor!==f.pre_master_secret.charCodeAt(1))throw Error("TLS version rollback attack detected.");}catch(qa){f.pre_master_secret=a.random.getBytes(48)}b.expect=G;null!==b.session.clientCertificate&&(b.expect=C);b.process()}; -k.handleCertificateRequest=function(a,b,c){if(3>c)return a.error(a,{message:"Invalid CertificateRequest. Message too short.",send:!0,alert:{level:k.Alert.Level.fatal,description:k.Alert.Description.illegal_parameter}});b=b.fragment;b={certificate_types:e(b,1),certificate_authorities:e(b,2)};a.session.certificateRequest=b;a.expect=A;a.process()};k.handleCertificateVerify=function(b,c,d){if(2>d)return b.error(b,{message:"Invalid CertificateVerify. Message too short.",send:!0,alert:{level:k.Alert.Level.fatal, +k.handleCertificateRequest=function(a,b,c){if(3>c)return a.error(a,{message:"Invalid CertificateRequest. Message too short.",send:!0,alert:{level:k.Alert.Level.fatal,description:k.Alert.Description.illegal_parameter}});b=b.fragment;b={certificate_types:e(b,1),certificate_authorities:e(b,2)};a.session.certificateRequest=b;a.expect=z;a.process()};k.handleCertificateVerify=function(b,c,d){if(2>d)return b.error(b,{message:"Invalid CertificateVerify. Message too short.",send:!0,alert:{level:k.Alert.Level.fatal, description:k.Alert.Description.illegal_parameter}});d=c.fragment;d.read-=4;c=d.bytes();d.read+=4;d=e(d,2).getBytes();var f=a.util.createBuffer();f.putBuffer(b.session.md5.digest());f.putBuffer(b.session.sha1.digest());f=f.getBytes();try{if(!b.session.clientCertificate.publicKey.verify(f,d,"NONE"))throw Error("CertificateVerify signature does not match.");b.session.md5.update(c);b.session.sha1.update(c)}catch(pa){return b.error(b,{message:"Bad signature in CertificateVerify.",send:!0,alert:{level:k.Alert.Level.fatal, description:k.Alert.Description.handshake_failure}})}b.expect=G;b.process()};k.handleServerHelloDone=function(b,c,d){if(0d.length())return b.fragmented=c,c.fragment=a.util.createBuffer(),d.read-=4,b.process();b.fragmented=null;d.read-=4;var g=d.bytes(e+4);d.read+=4;f in K[b.entity][b.expect]?(b.entity===k.ConnectionEnd.server&&!b.open&&!b.fail&&(b.handshaking=!0,b.session={version:null,extensions:{server_name:{serverNameList:[]}},cipherSuite:null,compressionMethod:null,serverCertificate:null,clientCertificate:null,md5:a.md.md5.create(),sha1:a.md.sha1.create()}),f!==k.HandshakeType.hello_request&&f!==k.HandshakeType.certificate_verify&& f!==k.HandshakeType.finished&&(b.session.md5.update(g),b.session.sha1.update(g)),K[b.entity][b.expect][f](b,c,e)):k.handleUnexpected(b,c)};k.handleApplicationData=function(a,b){a.data.putBuffer(b.fragment);a.dataReady(a);a.process()};k.handleHeartbeat=function(b,c){var d=c.fragment;c=d.getByte();var f=d.getInt16(),d=d.getBytes(f);if(c===k.HeartbeatMessageType.heartbeat_request){if(b.handshaking||f>d.length)return b.process();k.queue(b,k.createRecord(b,{type:k.ContentType.heartbeat,data:k.createHeartbeat(k.HeartbeatMessageType.heartbeat_response, -d)}));k.flush(b)}else if(c===k.HeartbeatMessageType.heartbeat_response){if(d!==b.expectedHeartbeatPayload)return b.process();b.heartbeatReceived&&b.heartbeatReceived(b,a.util.createBuffer(d))}b.process()};var m=1,h=2,q=3,A=4,D=5,x=6,v=7,y=8,z=1,F=2,C=3,G=4,E=5,I=6,t=k.handleUnexpected,N=k.handleChangeCipherSpec,J=k.handleAlert,Q=k.handleHandshake,ea=k.handleApplicationData,P=k.handleHeartbeat,T=[];T[k.ConnectionEnd.client]=[[t,J,Q,t,P],[t,J,Q,t,P],[t,J,Q,t,P],[t,J,Q,t,P],[t,J,Q,t,P],[N,J,t,t,P],[t, +d)}));k.flush(b)}else if(c===k.HeartbeatMessageType.heartbeat_response){if(d!==b.expectedHeartbeatPayload)return b.process();b.heartbeatReceived&&b.heartbeatReceived(b,a.util.createBuffer(d))}b.process()};var m=1,h=2,q=3,z=4,D=5,x=6,v=7,y=8,A=1,F=2,C=3,G=4,E=5,I=6,t=k.handleUnexpected,N=k.handleChangeCipherSpec,J=k.handleAlert,Q=k.handleHandshake,ea=k.handleApplicationData,P=k.handleHeartbeat,T=[];T[k.ConnectionEnd.client]=[[t,J,Q,t,P],[t,J,Q,t,P],[t,J,Q,t,P],[t,J,Q,t,P],[t,J,Q,t,P],[N,J,t,t,P],[t, J,Q,t,P],[t,J,Q,ea,P],[t,J,Q,t,P]];T[k.ConnectionEnd.server]=[[t,J,Q,t,P],[t,J,Q,t,P],[t,J,Q,t,P],[t,J,Q,t,P],[N,J,t,t,P],[t,J,Q,t,P],[t,J,Q,ea,P],[t,J,Q,t,P]];var N=k.handleHelloRequest,J=k.handleCertificate,Q=k.handleServerKeyExchange,ea=k.handleCertificateRequest,P=k.handleServerHelloDone,S=k.handleFinished,K=[];K[k.ConnectionEnd.client]=[[t,t,k.handleServerHello,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t],[N,t,t,t,t,t,t,t,t,t,t,J,Q,ea,P,t,t,t,t,t,t],[N,t,t,t,t,t,t,t,t,t,t,t,Q,ea,P,t,t,t,t,t,t],[N,t, t,t,t,t,t,t,t,t,t,t,t,ea,P,t,t,t,t,t,t],[N,t,t,t,t,t,t,t,t,t,t,t,t,t,P,t,t,t,t,t,t],[N,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t],[N,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,S],[N,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t],[N,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t]];K[k.ConnectionEnd.server]=[[t,k.handleClientHello,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t],[t,t,t,t,t,t,t,t,t,t,t,J,t,t,t,t,t,t,t,t,t],[t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,k.handleClientKeyExchange,t,t,t,t],[t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,k.handleCertificateVerify, t,t,t,t,t],[t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t],[t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,S],[t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t],[t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t,t]];k.generateKeys=function(a,c){var d=c.client_random+c.server_random;a.session.resuming||(c.master_secret=b(c.pre_master_secret,"master secret",d,48).bytes(),c.pre_master_secret=null);var d=c.server_random+c.client_random,f=2*c.mac_key_length+2*c.enc_key_length;(a=a.version.major===k.Versions.TLS_1_0.major&&a.version.minor=== @@ -520,7 +520,7 @@ g.f(d):f<=b[g.level].index&&g.f(g,d)}};a.log.prepareStandard=function(a){"standa a.log.logMessage({timestamp:new Date,level:b,category:c,message:d,arguments:f})}})(g[e]);a.log.makeLogger=function(b){b={flags:0,f:b};return a.log.setLevel(b,"none"),b};a.log.setLevel=function(b,c){var d=!1;if(b&&!(b.flags&a.log.LEVEL_LOCKED))for(var f=0;fb.contentInfo.value.length)throw Error("Could not sign PKCS#7 message; there is no content to sign.");var k=q.derToOid(b.contentInfo.value[0].value),d=b.contentInfo.value[1],d=d.value[0],l=q.toDer(d);l.getByte();q.getBerValueLength(l);var l=l.getBytes(),m;for(m in c)c[m].start().update(l);m=new Date;for(d=0;d=this._config.preview;if(B)h.postMessage({results:a,workerId:v.WORKER_ID,finished:b}); else if(u(this._config.chunk)){this._config.chunk(a,this._handle);if(this._paused)return;this._completeResults=a=void 0}this._config.step||this._config.chunk||(this._completeResults.data=this._completeResults.data.concat(a.data),this._completeResults.errors=this._completeResults.errors.concat(a.errors),this._completeResults.meta=a.meta);!b||!u(this._config.complete)||a&&a.meta.aborted||this._config.complete(this._completeResults);b||a&&a.meta.paused||this._nextChunk();return a}};this._sendError=function(a){u(this._config.error)? this._config.error(a):B&&this._config.error&&h.postMessage({workerId:v.WORKER_ID,error:a,finished:!1})}}function b(b){b=b||{};b.chunkSize||(b.chunkSize=v.RemoteChunkSize);a.call(this,b);var c;this._nextChunk=w?function(){this._readChunk();this._chunkLoaded()}:function(){this._readChunk()};this.stream=function(a){this._input=a;this._nextChunk()};this._readChunk=function(){if(this._finished)this._chunkLoaded();else{c=new XMLHttpRequest;w||(c.onload=r(this._chunkLoaded,this),c.onerror=r(this._chunkError, this));c.open("GET",this._input,!w);this._config.chunkSize&&(c.setRequestHeader("Range","bytes\x3d"+this._start+"-"+(this._start+this._config.chunkSize-1)),c.setRequestHeader("If-None-Match","webkit-no-cache"));try{c.send()}catch(C){this._chunkError(C.message)}w&&0==c.status?this._chunkError():this._start+=this._config.chunkSize}};this._chunkLoaded=function(){if(4==c.readyState)if(200>c.status||400<=c.status)this._chunkError();else{var a;if(!(a=!this._config.chunkSize)){a=this._start;var b;b=c.getResponseHeader("Content-Range"); b=parseInt(b.substr(b.lastIndexOf("/")+1));a=a>b}this._finished=a;this.parseChunk(c.responseText)}};this._chunkError=function(a){this._sendError(c.statusText||a)}}function c(b){b=b||{};b.chunkSize||(b.chunkSize=v.LocalChunkSize);a.call(this,b);var c,d,f="undefined"!==typeof FileReader;this.stream=function(a){this._input=a;d=a.slice||a.webkitSlice||a.mozSlice;f?(c=new FileReader,c.onload=r(this._chunkLoaded,this),c.onerror=r(this._chunkError,this)):c=new FileReaderSync;this._nextChunk()};this._nextChunk= function(){this._finished||this._config.preview&&!(this._rowCount=this._input.size;this.parseChunk(a.target.result)}; -this._chunkError=function(){this._sendError(c.error)}}function e(b){b=b||{};a.call(this,b);var c;this.stream=function(a){c=a;return this._nextChunk()};this._nextChunk=function(){if(!this._finished){var a=this._config.chunkSize,b=a?c.substr(0,a):c;c=a?c.substr(a):"";this._finished=!c;return this.parseChunk(b)}}}function g(a){function b(){q&&p&&(c("Delimiter","UndetectableDelimiter","Unable to auto-detect delimiting character; defaulted to '"+v.DefaultDelimiter+"'"),p=!1);if(a.skipEmptyLines)for(var b= +this._chunkError=function(){this._sendError(c.error)}}function e(b){b=b||{};a.call(this,b);var c;this.stream=function(a){c=a;return this._nextChunk()};this._nextChunk=function(){if(!this._finished){var a=this._config.chunkSize,b=a?c.substr(0,a):c;c=a?c.substr(a):"";this._finished=!c;return this.parseChunk(b)}}}function g(a){function b(){q&&n&&(c("Delimiter","UndetectableDelimiter","Unable to auto-detect delimiting character; defaulted to '"+v.DefaultDelimiter+"'"),n=!1);if(a.skipEmptyLines)for(var b= 0;b=r.length? (f.__parsed_extra||(f.__parsed_extra=[]),f.__parsed_extra.push(q.data[b][e])):f[r[e]]=q.data[b][e])}a.header&&(q.data[b]=f,e>r.length?c("FieldMismatch","TooManyFields","Too many fields: expected "+r.length+" fields but parsed "+e,b):ea.preview?l.abort():w(q,f)))}}this.parse=function(c,d,f){var e;if(!a.newline){var m;m=c.substr(0,1048576);m=m.split("\r");if(1==m.length)m="\n";else{for(var C=0,r=0;r=m.length/2?"\r\n":"\r"}a.newline=m}p=!1;if(!a.delimiter){m=[",","\t","|",";",v.RECORD_SEP,v.UNIT_SEP];for(var u, -r=0;ra.preview?l.abort():w(q,f)))}}this.parse=function(c,d,f){var e;if(!a.newline){var m;m=c.substr(0,1048576);m=m.split("\r");if(1==m.length)m="\n";else{for(var C=0,r=0;r=m.length/2?"\r\n":"\r"}a.newline=m}n=!1;if(!a.delimiter){m=[",","\t","|",";",v.RECORD_SEP,v.UNIT_SEP];for(var u, +r=0;r=e)return G=G.slice(0,e),C(!0)}}return C()}for(var D=a.indexOf(b,k),t=a.indexOf(c,k);;)if('"'==a[k])for(D=k,k++;;){D=a.indexOf('"',D+1);if(-1===D)return m|| -y.push({type:"Quotes",code:"MissingQuotes",message:"Quoted field unterminated",row:G.length,index:k}),p();if(D===v-1)return A=a.substring(k,D).replace(/""/g,'"'),p(A);if('"'==a[D+1])D++;else{if(a[D+1]==b){z.push(a.substring(k,D).replace(/""/g,'"'));k=D+1+u;D=a.indexOf(b,k);t=a.indexOf(c,k);break}if(a.substr(D+1,w)===c){z.push(a.substring(k,D).replace(/""/g,'"'));r(D+1+w);D=a.indexOf(b,k);if(B&&(q(),l))return C();if(e&&G.length>=e)return C(!0);break}}}else if(d&&0===z.length&&a.substr(k,A)===d){if(-1== -t)return C();k=t+w;t=a.indexOf(c,k);D=a.indexOf(b,k)}else if(-1!==D&&(D=e)return C(!0)}else break;return p()};this.abort=function(){l=!0};this.getCharIndex=function(){return k}}function f(){var a=document.getElementsByTagName("script");return a.length?a[a.length-1].src:""}function m(a){var b=a.data;a=D[b.workerId];var c=!1;if(b.error)a.userError(b.error, -b.file);else if(b.results&&b.results.data){var f={abort:function(){c=!0;p(b.workerId,{data:[],errors:[],meta:{aborted:!0}})},pause:d,resume:d};if(u(a.userStep)){for(var e=0;e=e)return y=y.slice(0,e),C(!0)}}return C()}for(var D=a.indexOf(b,k),t=a.indexOf(c,k);;)if('"'==a[k])for(D=k,k++;;){D=a.indexOf('"',D+1);if(-1===D)return m|| +G.push({type:"Quotes",code:"MissingQuotes",message:"Quoted field unterminated",row:y.length,index:k}),p();if(D===v-1)return z=a.substring(k,D).replace(/""/g,'"'),p(z);if('"'==a[D+1])D++;else{if(a[D+1]==b){A.push(a.substring(k,D).replace(/""/g,'"'));k=D+1+u;D=a.indexOf(b,k);t=a.indexOf(c,k);break}if(a.substr(D+1,w)===c){A.push(a.substring(k,D).replace(/""/g,'"'));r(D+1+w);D=a.indexOf(b,k);if(B&&(q(),l))return C();if(e&&y.length>=e)return C(!0);break}}}else if(d&&0===A.length&&a.substr(k,z)===d){if(-1== +t)return C();k=t+w;t=a.indexOf(c,k);D=a.indexOf(b,k)}else if(-1!==D&&(D=e)return C(!0)}else break;return p()};this.abort=function(){l=!0};this.getCharIndex=function(){return k}}function f(){var a=document.getElementsByTagName("script");return a.length?a[a.length-1].src:""}function m(a){var b=a.data;a=D[b.workerId];var c=!1;if(b.error)a.userError(b.error, +b.file);else if(b.results&&b.results.data){var f={abort:function(){c=!0;n(b.workerId,{data:[],errors:[],meta:{aborted:!0}})},pause:d,resume:d};if(u(a.userStep)){for(var e=0;e/g,"\x26gt;").replace(/"/g,"\x26quot;").replace(/'/g,"\x26apos;"):a}function c(a,b,c,d){for(var f=0;f>2],c+=chars[(h[a]&3)<<4|h[a+1]>>4],c+=chars[(h[a+1]&15)<<2|h[a+2]>>6],c+=chars[h[a+2]&63];2===b%3?c=c.substring(0,c.length-1)+"\x3d":1===b%3&&(c=c.substring(0,c.length-2)+"\x3d\x3d");return c}; -base64.decode=function(h){var a=.75*h.length,b=h.length,c=0,e,g,k,f;"\x3d"===h[h.length-1]&&(a--,"\x3d"===h[h.length-2]&&a--);for(var m=new ArrayBuffer(a),p=new Uint8Array(m),a=0;a>4,p[c++]=(g&15)<<4|k>>2,p[c++]=(k&3)<<6|f&63;return m}; +base64.decode=function(h){var a=.75*h.length,b=h.length,c=0,e,g,k,f;"\x3d"===h[h.length-1]&&(a--,"\x3d"===h[h.length-2]&&a--);for(var m=new ArrayBuffer(a),n=new Uint8Array(m),a=0;a>4,n[c++]=(g&15)<<4|k>>2,n[c++]=(k&3)<<6|f&63;return m}; (function(h){function a(a,b,c){return b<=a&&a<=c}function b(a){if(void 0===a)return{};if(a===Object(a))return a;throw TypeError("Could not convert argument to dictionary");}function c(a){return 0<=a&&127>=a}function e(a){this.tokens=[].slice.call(a);this.tokens.reverse()}function g(a,b){if(a)throw TypeError("Decoder error");return b||65533}function k(a){throw TypeError("The code point "+a+" could not be encoded.");}function f(a){a=String(a).trim().toLowerCase();return Object.prototype.hasOwnProperty.call(R, -a)?R[a]:null}function m(a,b){return b?b[a]||null:null}function p(a,b){a=b.indexOf(a);return-1===a?null:a}function d(a){if(!("encoding-indexes"in h))throw Error("Indexes missing. Did you forget to include encoding-indexes.js first?");return h["encoding-indexes"][a]}function l(b){L=L||d("jis0208").map(function(b,c){return a(c,8272,8835)?null:b});return L.indexOf(b)}function n(a){var b=U=U||d("big5").map(function(a,b){return 5024>b?null:a});return 9552===a||9566===a||9569===a||9578===a||21313===a||21317=== -a?b.lastIndexOf(a):p(a,b)}function r(a,c){if(!(this instanceof r))throw TypeError("Called as a function. Did you forget 'new'?");a=void 0!==a?String(a):"utf-8";c=b(c);this._decoder=this._encoding=null;this._BOMseen=this._ignoreBOM=!1;this._error_mode="replacement";this._do_not_flush=!1;var d=f(a);if(null===d||"replacement"===d.name)throw RangeError("Unknown encoding: "+a);if(!H[d.name])throw Error("Decoder not present. Did you forget to include encoding-indexes.js first?");this._encoding=d;c.fatal&& +a)?R[a]:null}function m(a,b){return b?b[a]||null:null}function n(a,b){a=b.indexOf(a);return-1===a?null:a}function d(a){if(!("encoding-indexes"in h))throw Error("Indexes missing. Did you forget to include encoding-indexes.js first?");return h["encoding-indexes"][a]}function l(b){L=L||d("jis0208").map(function(b,c){return a(c,8272,8835)?null:b});return L.indexOf(b)}function p(a){var b=U=U||d("big5").map(function(a,b){return 5024>b?null:a});return 9552===a||9566===a||9569===a||9578===a||21313===a||21317=== +a?b.lastIndexOf(a):n(a,b)}function r(a,c){if(!(this instanceof r))throw TypeError("Called as a function. Did you forget 'new'?");a=void 0!==a?String(a):"utf-8";c=b(c);this._decoder=this._encoding=null;this._BOMseen=this._ignoreBOM=!1;this._error_mode="replacement";this._do_not_flush=!1;var d=f(a);if(null===d||"replacement"===d.name)throw RangeError("Unknown encoding: "+a);if(!H[d.name])throw Error("Decoder not present. Did you forget to include encoding-indexes.js first?");this._encoding=d;c.fatal&& (this._error_mode="fatal");c.ignoreBOM&&(this._ignoreBOM=!0);Object.defineProperty||(this.encoding=this._encoding.name.toLowerCase(),this.fatal="fatal"===this._error_mode,this.ignoreBOM=this._ignoreBOM);return this}function u(a,c){if(!(this instanceof u))throw TypeError("Called as a function. Did you forget 'new'?");c=b(c);this._encoder=this._encoding=null;this._do_not_flush=!1;this._fatal=c.fatal?"fatal":"replacement";if(c.NONSTANDARD_allowLegacyEncoding){a=void 0!==a?String(a):"utf-8";c=f(a);if(null=== c||"replacement"===c.name)throw RangeError("Unknown encoding: "+a);if(!O[c.name])throw Error("Encoder not present. Did you forget to include encoding-indexes.js first?");this._encoding=c}else this._encoding=f("utf-8"),void 0!==a&&"console"in h&&console.warn("TextEncoder constructor called with encoding label, which is ignored.");Object.defineProperty||(this.encoding=this._encoding.name.toLowerCase());return this}function w(b){var c=b.fatal,d=0,f=0,e=0,k=128,l=191;this.handler=function(b,m){if(-1=== m&&0!==e)return e=0,g(c);if(-1===m)return-1;if(0===e){if(a(m,0,127))return m;if(a(m,194,223))e=1,d=m&31;else if(a(m,224,239))224===m&&(k=160),237===m&&(l=159),e=2,d=m&15;else if(a(m,240,244))240===m&&(k=144),244===m&&(l=143),e=3,d=m&7;else return g(c);return null}if(!a(m,k,l))return d=e=f=0,k=128,l=191,b.prepend(m),g(c);k=128;l=191;d=d<<6|m&63;f+=1;if(f!==e)return null;b=d;d=e=f=0;return b}}function B(b){this.handler=function(b,c){if(-1===c)return-1;if(K(c))return c;var d,f;a(c,128,2047)?(d=1,f=192): -a(c,2048,65535)?(d=2,f=224):a(c,65536,1114111)&&(d=3,f=240);for(b=[(c>>6*d)+f];0>6*(d-1)&63),--d;return b}}function q(a,b){var d=b.fatal;this.handler=function(b,f){if(-1===f)return-1;if(c(f))return f;b=a[f-128];return null===b?g(d):b}}function A(a,b){this.handler=function(b,c){if(-1===c)return-1;if(K(c))return c;b=p(c,a);null===b&&k(c);return b+128}}function D(b){var f=b.fatal,e=0,k=0,l=0;this.handler=function(b,h){if(-1===h&&0===e&&0===k&&0===l)return-1;-1!==h||0===e&&0===k&&0=== +a(c,2048,65535)?(d=2,f=224):a(c,65536,1114111)&&(d=3,f=240);for(b=[(c>>6*d)+f];0>6*(d-1)&63),--d;return b}}function q(a,b){var d=b.fatal;this.handler=function(b,f){if(-1===f)return-1;if(c(f))return f;b=a[f-128];return null===b?g(d):b}}function z(a,b){this.handler=function(b,c){if(-1===c)return-1;if(K(c))return c;b=n(c,a);null===b&&k(c);return b+128}}function D(b){var f=b.fatal,e=0,k=0,l=0;this.handler=function(b,h){if(-1===h&&0===e&&0===k&&0===l)return-1;-1!==h||0===e&&0===k&&0=== l||(l=k=e=0,g(f));var n;if(0!==l){n=null;if(a(h,48,57))if(n=10*(126*(10*(e-129)+k-48)+l-129)+h-48,39419n||1237575h?64:65;if(a(h,64,126)||a(h,128, -254))p=190*(n-129)+(h-r);n=null===p?null:m(p,d("gb18030"));null===n&&c(h)&&b.prepend(h);return null===n?g(f):n}return c(h)?h:128===h?8364:a(h,129,254)?(e=h,null):g(f)}}function x(a,b){this.handler=function(a,c){if(-1===c)return-1;if(K(c))return c;if(58853===c)return k(c);if(b&&8364===c)return 128;a=p(c,d("gb18030"));if(null!==a)return c=S(a/190)+129,a%=190,[c,a+(63>a?64:65)];if(b)return k(c);if(59335===c)a=7457;else{var f=a=0,e=d("gb18030-ranges"),g;for(g=0;ga?64:65)];if(b)return k(c);if(59335===c)a=7457;else{var f=a=0,e=d("gb18030-ranges"),g;for(g=0;gk?64:98;if(a(k,64,126)||a(k,161,254))h=157*(l-129)+(k-n);switch(h){case 1133:return[202,772];case 1135:return[202,780];case 1164:return[234,772];case 1166:return[234,780]}l=null===h?null:m(h,d("big5"));null===l&&c(k)&& -b.prepend(k);return null===l?g(f):l}return c(k)?k:a(k,129,254)?(e=k,null):g(f)}}function y(a){this.handler=function(a,b){if(-1===b)return-1;if(K(b))return b;var c=n(b);if(null===c)return k(b);a=S(c/157)+129;if(161>a)return k(b);b=c%157;return[a,b+(63>b?64:98)]}}function z(b){var f=b.fatal,e=!1,k=0;this.handler=function(b,l){if(-1===l&&0!==k)return k=0,g(f);if(-1===l&&0===k)return-1;if(142===k&&a(l,161,223))return k=0,65216+l;if(143===k&&a(l,161,254))return e=!0,k=l,null;if(0!==k){var h=k;k=0;var n= -null;a(h,161,254)&&a(l,161,254)&&(n=m(94*(h-161)+(l-161),d(e?"jis0212":"jis0208")));e=!1;a(l,161,254)||b.prepend(l);return null===n?g(f):n}return c(l)?l:142===l||143===l||a(l,161,254)?(k=l,null):g(f)}}function F(b){this.handler=function(b,c){if(-1===c)return-1;if(K(c))return c;if(165===c)return 92;if(8254===c)return 126;if(a(c,65377,65439))return[142,c-65377+161];8722===c&&(c=65293);b=p(c,d("jis0208"));return null===b?k(c):[S(b/94)+161,b%94+161]}}function C(b){var c=b.fatal,f=0,e=0,k=!1;this.handler= +b.prepend(k);return null===l?g(f):l}return c(k)?k:a(k,129,254)?(e=k,null):g(f)}}function y(a){this.handler=function(a,b){if(-1===b)return-1;if(K(b))return b;var c=p(b);if(null===c)return k(b);a=S(c/157)+129;if(161>a)return k(b);b=c%157;return[a,b+(63>b?64:98)]}}function A(b){var f=b.fatal,e=!1,k=0;this.handler=function(b,l){if(-1===l&&0!==k)return k=0,g(f);if(-1===l&&0===k)return-1;if(142===k&&a(l,161,223))return k=0,65216+l;if(143===k&&a(l,161,254))return e=!0,k=l,null;if(0!==k){var h=k;k=0;var n= +null;a(h,161,254)&&a(l,161,254)&&(n=m(94*(h-161)+(l-161),d(e?"jis0212":"jis0208")));e=!1;a(l,161,254)||b.prepend(l);return null===n?g(f):n}return c(l)?l:142===l||143===l||a(l,161,254)?(k=l,null):g(f)}}function F(b){this.handler=function(b,c){if(-1===c)return-1;if(K(c))return c;if(165===c)return 92;if(8254===c)return 126;if(a(c,65377,65439))return[142,c-65377+161];8722===c&&(c=65293);b=n(c,d("jis0208"));return null===b?k(c):[S(b/94)+161,b%94+161]}}function C(b){var c=b.fatal,f=0,e=0,k=!1;this.handler= function(b,l){switch(f){default:case 0:if(27===l)return f=5,null;if(a(l,0,127)&&14!==l&&15!==l&&27!==l)return k=!1,l;if(-1===l)return-1;k=!1;return g(c);case 1:if(27===l)return f=5,null;if(92===l)return k=!1,165;if(126===l)return k=!1,8254;if(a(l,0,127)&&14!==l&&15!==l&&27!==l&&92!==l&&126!==l)return k=!1,l;if(-1===l)return-1;k=!1;return g(c);case 2:if(27===l)return f=5,null;if(a(l,33,95))return k=!1,65344+l;if(-1===l)return-1;k=!1;return g(c);case 3:if(27===l)return f=5,null;if(a(l,33,126))return k= !1,e=l,f=4,null;if(-1===l)return-1;k=!1;return g(c);case 4:if(27===l)return f=5,g(c);if(a(l,33,126))return f=3,b=m(94*(e-33)+l-33,d("jis0208")),null===b?g(c):b;if(-1===l)return f=3,b.prepend(l),g(c);f=3;return g(c);case 5:if(36===l||40===l)return e=l,f=6,null;b.prepend(l);k=!1;f=0;return g(c);case 6:var h=e;e=0;var n=null;40===h&&66===l&&(n=0);40===h&&74===l&&(n=1);40===h&&73===l&&(n=2);36!==h||64!==l&&66!==l||(n=3);if(null!==n)return f=f=n,b=k,k=!0,b?g(c):null;b.prepend([h,l]);k=!1;f=0;return g(c)}}} -function G(a){var b=0;this.handler=function(a,c){if(-1===c&&0!==b)return a.prepend(c),b=0,[27,40,66];if(-1===c&&0===b)return-1;if(!(0!==b&&1!==b||14!==c&&15!==c&&27!==c))return k(65533);if(0===b&&K(c))return c;if(1===b&&(K(c)&&92!==c&&126!==c||165==c||8254==c)){if(K(c))return c;if(165===c)return 92;if(8254===c)return 126}if(K(c)&&0!==b)return a.prepend(c),b=0,[27,40,66];if((165===c||8254===c)&&1!==b)return a.prepend(c),b=1,[27,40,74];8722===c&&(c=65293);var f=p(c,d("jis0208"));return null===f?k(c): +function G(a){var b=0;this.handler=function(a,c){if(-1===c&&0!==b)return a.prepend(c),b=0,[27,40,66];if(-1===c&&0===b)return-1;if(!(0!==b&&1!==b||14!==c&&15!==c&&27!==c))return k(65533);if(0===b&&K(c))return c;if(1===b&&(K(c)&&92!==c&&126!==c||165==c||8254==c)){if(K(c))return c;if(165===c)return 92;if(8254===c)return 126}if(K(c)&&0!==b)return a.prepend(c),b=0,[27,40,66];if((165===c||8254===c)&&1!==b)return a.prepend(c),b=1,[27,40,74];8722===c&&(c=65293);var f=n(c,d("jis0208"));return null===f?k(c): 2!==b?(a.prepend(c),b=2,[27,36,66]):[S(f/94)+33,f%94+33]}}function E(b){var f=b.fatal,e=0;this.handler=function(b,k){if(-1===k&&0!==e)return e=0,g(f);if(-1===k&&0===e)return-1;if(0!==e){var l=e,h=null;e=0;var n=127>k?64:65,p=160>l?129:193;if(a(k,64,126)||a(k,128,252))h=188*(l-p)+k-n;if(a(h,8836,10715))return 48508+h;l=null===h?null:m(h,d("jis0208"));null===l&&c(k)&&b.prepend(k);return null===l?g(f):l}return c(k)||128===k?k:a(k,161,223)?65216+k:a(k,129,159)||a(k,224,252)?(e=k,null):g(f)}}function I(b){this.handler= function(b,c){if(-1===c)return-1;if(K(c)||128===c)return c;if(165===c)return 92;if(8254===c)return 126;if(a(c,65377,65439))return c-65377+161;8722===c&&(c=65293);b=l(c);if(null===b)return k(c);c=S(b/188);b%=188;return[c+(31>c?129:193),b+(63>b?64:65)]}}function t(b){var f=b.fatal,e=0;this.handler=function(b,k){if(-1===k&&0!==e)return e=0,g(f);if(-1===k&&0===e)return-1;if(0!==e){var l=e,h=null;e=0;a(k,65,254)&&(h=190*(l-129)+(k-65));l=null===h?null:m(h,d("euc-kr"));null===h&&c(k)&&b.prepend(k);return null=== -l?g(f):l}return c(k)?k:a(k,129,254)?(e=k,null):g(f)}}function N(a){this.handler=function(a,b){if(-1===b)return-1;if(K(b))return b;a=p(b,d("euc-kr"));return null===a?k(b):[S(a/190)+129,a%190+65]}}function J(a,b){var c=a>>8;a&=255;return b?[c,a]:[a,c]}function Q(b,c){var d=c.fatal,f=null,e=null;this.handler=function(c,k){if(-1===k&&(null!==f||null!==e))return g(d);if(-1===k&&null===f&&null===e)return-1;if(null===f)return f=k,null;k=b?(f<<8)+k:(k<<8)+f;f=null;if(null!==e){var l=e;e=null;if(a(k,56320, +l?g(f):l}return c(k)?k:a(k,129,254)?(e=k,null):g(f)}}function N(a){this.handler=function(a,b){if(-1===b)return-1;if(K(b))return b;a=n(b,d("euc-kr"));return null===a?k(b):[S(a/190)+129,a%190+65]}}function J(a,b){var c=a>>8;a&=255;return b?[c,a]:[a,c]}function Q(b,c){var d=c.fatal,f=null,e=null;this.handler=function(c,k){if(-1===k&&(null!==f||null!==e))return g(d);if(-1===k&&null===f&&null===e)return-1;if(null===f)return f=k,null;k=b?(f<<8)+k:(k<<8)+f;f=null;if(null!==e){var l=e;e=null;if(a(k,56320, 57343))return 65536+1024*(l-55296)+(k-56320);c.prepend(J(k,b));return g(d)}return a(k,55296,56319)?(e=k,null):a(k,56320,57343)?g(d):k}}function ea(b,c){this.handler=function(c,d){if(-1===d)return-1;if(a(d,0,65535))return J(d,b);c=J((d-65536>>10)+55296,b);d=J((d-65536&1023)+56320,b);return c.concat(d)}}function P(a){this.handler=function(a,b){return-1===b?-1:c(b)?b:63360+b-128};project}function T(b){this.handler=function(b,c){return-1===c?-1:K(c)?c:a(c,63360,63487)?c-63360+128:k(c)}}"undefined"!== typeof module&&module.exports&&!h["encoding-indexes"]&&(h["encoding-indexes"]=require("./encoding-indexes.js")["encoding-indexes"]);var S=Math.floor,K=c;e.prototype={endOfStream:function(){return!this.tokens.length},read:function(){return this.tokens.length?this.tokens.pop():-1},prepend:function(a){if(Array.isArray(a))for(;a.length;)this.tokens.push(a.pop());else this.tokens.push(a)},push:function(a){if(Array.isArray(a))for(;a.length;)this.tokens.unshift(a.shift());else this.tokens.unshift(a)}};var M= [{encodings:[{labels:["unicode-1-1-utf-8","utf-8","utf8"],name:"UTF-8"}],heading:"The Encoding"},{encodings:[{labels:["866","cp866","csibm866","ibm866"],name:"IBM866"},{labels:"csisolatin2 iso-8859-2 iso-ir-101 iso8859-2 iso88592 iso_8859-2 iso_8859-2:1987 l2 latin2".split(" "),name:"ISO-8859-2"},{labels:"csisolatin3 iso-8859-3 iso-ir-109 iso8859-3 iso88593 iso_8859-3 iso_8859-3:1988 l3 latin3".split(" "),name:"ISO-8859-3"},{labels:"csisolatin4 iso-8859-4 iso-ir-110 iso8859-4 iso88594 iso_8859-4 iso_8859-4:1988 l4 latin4".split(" "), @@ -658,18 +658,18 @@ name:"windows-1252"},{labels:["cp1253","windows-1253","x-cp1253"],name:"windows- "fatal",{get:function(){return"fatal"===this._error_mode}}),Object.defineProperty(r.prototype,"ignoreBOM",{get:function(){return this._ignoreBOM}}));r.prototype.decode=function(a,c){a="object"===typeof a&&a instanceof ArrayBuffer?new Uint8Array(a):"object"===typeof a&&"buffer"in a&&a.buffer instanceof ArrayBuffer?new Uint8Array(a.buffer,a.byteOffset,a.byteLength):new Uint8Array(0);c=b(c);this._do_not_flush||(this._decoder=H[this._encoding.name]({fatal:"fatal"===this._error_mode}),this._BOMseen=!1); this._do_not_flush=!!c.stream;a=new e(a);c=[];for(var d;;){d=a.read();if(-1===d)break;d=this._decoder.handler(a,d);if(-1===d)break;null!==d&&(Array.isArray(d)?c.push.apply(c,d):c.push(d))}if(!this._do_not_flush){do{d=this._decoder.handler(a,a.read());if(-1===d)break;null!==d&&(Array.isArray(d)?c.push.apply(c,d):c.push(d))}while(!a.endOfStream());this._decoder=null}-1===["UTF-8","UTF-16LE","UTF-16BE"].indexOf(this._encoding.name)||this._ignoreBOM||this._BOMseen||(0=f?a+=String.fromCharCode(f):(f-=65536,a+=String.fromCharCode((f>>10)+55296,(f&1023)+56320))}return a};Object.defineProperty&&Object.defineProperty(u.prototype,"encoding",{get:function(){return this._encoding.name.toLowerCase()}});u.prototype.encode=function(a,c){a=void 0===a?"":String(a);c=b(c);this._do_not_flush||(this._encoder=O[this._encoding.name]({fatal:"fatal"===this._fatal}));this._do_not_flush=!!c.stream; -a=String(a);c=a.length;for(var d=0,f=[];dg||57343=g)f.push(65533);else if(55296<=g&&56319>=g)if(d===c-1)f.push(65533);else{var k=a.charCodeAt(d+1);56320<=k&&57343>=k?(f.push(65536+((g&1023)<<10)+(k&1023)),d+=1):f.push(65533)}d+=1}a=new e(f);for(c=[];;){d=a.read();if(-1===d)break;d=this._encoder.handler(a,d);if(-1===d)break;Array.isArray(d)?c.push.apply(c,d):c.push(d)}if(!this._do_not_flush){for(;;){d=this._encoder.handler(a, -a.read());if(-1===d)break;Array.isArray(d)?c.push.apply(c,d):c.push(d)}this._encoder=null}return new Uint8Array(c)};O["UTF-8"]=function(a){return new B(a)};H["UTF-8"]=function(a){return new w(a)};(function(){"encoding-indexes"in h&&M.forEach(function(a){"Legacy single-byte encodings"===a.heading&&a.encodings.forEach(function(a){a=a.name;var b=d(a.toLowerCase());H[a]=function(a){return new q(b,a)};O[a]=function(a){return new A(b,a)}})})})();H.GBK=function(a){return new D(a)};O.GBK=function(a){return new x(a, -!0)};O.gb18030=function(a){return new x(a)};H.gb18030=function(a){return new D(a)};O.Big5=function(a){return new y(a)};H.Big5=function(a){return new v(a)};O["EUC-JP"]=function(a){return new F(a)};H["EUC-JP"]=function(a){return new z(a)};O["ISO-2022-JP"]=function(a){return new G(a)};H["ISO-2022-JP"]=function(a){return new C(a)};O.Shift_JIS=function(a){return new I(a)};H.Shift_JIS=function(a){return new E(a)};O["EUC-KR"]=function(a){return new N(a)};H["EUC-KR"]=function(a){return new t(a)};O["UTF-16BE"]= +a=String(a);c=a.length;for(var d=0,f=[];dk||57343=k)f.push(65533);else if(55296<=k&&56319>=k)if(d===c-1)f.push(65533);else{var g=a.charCodeAt(d+1);56320<=g&&57343>=g?(f.push(65536+((k&1023)<<10)+(g&1023)),d+=1):f.push(65533)}d+=1}a=new e(f);for(c=[];;){d=a.read();if(-1===d)break;d=this._encoder.handler(a,d);if(-1===d)break;Array.isArray(d)?c.push.apply(c,d):c.push(d)}if(!this._do_not_flush){for(;;){d=this._encoder.handler(a, +a.read());if(-1===d)break;Array.isArray(d)?c.push.apply(c,d):c.push(d)}this._encoder=null}return new Uint8Array(c)};O["UTF-8"]=function(a){return new B(a)};H["UTF-8"]=function(a){return new w(a)};(function(){"encoding-indexes"in h&&M.forEach(function(a){"Legacy single-byte encodings"===a.heading&&a.encodings.forEach(function(a){a=a.name;var b=d(a.toLowerCase());H[a]=function(a){return new q(b,a)};O[a]=function(a){return new z(b,a)}})})})();H.GBK=function(a){return new D(a)};O.GBK=function(a){return new x(a, +!0)};O.gb18030=function(a){return new x(a)};H.gb18030=function(a){return new D(a)};O.Big5=function(a){return new y(a)};H.Big5=function(a){return new v(a)};O["EUC-JP"]=function(a){return new F(a)};H["EUC-JP"]=function(a){return new A(a)};O["ISO-2022-JP"]=function(a){return new G(a)};H["ISO-2022-JP"]=function(a){return new C(a)};O.Shift_JIS=function(a){return new I(a)};H.Shift_JIS=function(a){return new E(a)};O["EUC-KR"]=function(a){return new N(a)};H["EUC-KR"]=function(a){return new t(a)};O["UTF-16BE"]= function(a){return new ea(!0,a)};H["UTF-16BE"]=function(a){return new Q(!0,a)};O["UTF-16LE"]=function(a){return new ea(!1,a)};H["UTF-16LE"]=function(a){return new Q(!1,a)};O["x-user-defined"]=function(a){return new T(a)};H["x-user-defined"]=function(a){return new P(a)};h.TextEncoder||(h.TextEncoder=u);h.TextDecoder||(h.TextDecoder=r);"undefined"!==typeof module&&module.exports&&(module.exports={TextEncoder:h.TextEncoder,TextDecoder:h.TextDecoder,EncodingIndexes:h["encoding-indexes"]})})(this||{}); (function e$jscomp$0(a,b,c){function e(f,k){if(!b[f]){if(!a[f]){var m="function"==typeof require&&require;if(!k&&m)return m(f,!0);if(g)return g(f,!0);k=Error("Cannot find module '"+f+"'");throw k.code="MODULE_NOT_FOUND",k;}k=b[f]={exports:{}};a[f][0].call(k.exports,function(b){var c=a[f][1][b];return e(c?c:b)},k,k.exports,e$jscomp$0,a,b,c)}return b[f].exports}for(var g="function"==typeof require&&require,k=0;k=b.cmp(l)||0<=b.cmp(h));h=a;l=d;b=b.toRed(e.red(l)).redPow(h).fromRed();for(h=g;0!==b.cmp(k);)h=b,b=b.mul(b).mod(l);b=0===h.cmp(l.sub(k))?g:h}while(0===b.cmp(g));a=b.sub(k).gcd(d);return{p:a,q:d.div(a)}}},{"asn1.js":5,crypto:74}],4:[function(h,a,b){(function(b){function c(a){return b(a,"hex").toString("base64").replace(/\+/g, -"-").replace(/\//g,"_").replace(/=/g,"")}function g(a,b){b=b||{};Object.keys(b).forEach(function(c){a[c]=b[c]});return a}function k(a){return 1===a.length%2?"0"+a:a}function f(a,b){a=q.decode(a,"der");var d=k(a.e.toString(16));a={kty:"RSA",n:n(a.n),e:c(d)};return g(a,b)}function m(a,b){a=y.decode(a,"der");var d=k(a.e.toString(16));a={kty:"RSA",n:n(a.n),e:c(d),d:n(a.d),p:n(a.p),q:n(a.q),dp:n(a.dp),dq:n(a.dq),qi:n(a.qi)};return g(a,b)}function p(a,b){a=D.decode(a,"der");return f(a.publicKey.data,b)} -function d(a,b){a=z.decode(a,"der");return m(a.privateKey.data,b)}function l(a){a=/^-----BEGIN (RSA )?(PUBLIC|PRIVATE) KEY-----$/.exec(a);if(!a)return null;var b=!!a[1];return"PRIVATE"===a[2]?b?m:d:b?f:p}function n(a){return c(k(a.toString(16)))}function r(a){return/^[0-9]+$/.test(a)?new u.bignum(a,10):new u.bignum(b(a,"base64"))}var u=h("asn1.js"),w=h("./factor"),B=new u.bignum(1),q=u.define("RSAPublicKey",function(){this.seq().obj(this.key("n").int(),this.key("e").int())}),A=u.define("AlgorithmIdentifier", -function(){this.seq().obj(this.key("algorithm").objid(),this.key("parameters").optional().any())}),D=u.define("PublicKeyInfo",function(){this.seq().obj(this.key("algorithm").use(A),this.key("publicKey").bitstr())}),x=u.define("Version",function(){this.int({0:"two-prime",1:"multi"})}),v=u.define("OtherPrimeInfos",function(){this.seq().obj(this.key("ri").int(),this.key("di").int(),this.key("ti").int())}),y=u.define("RSAPrivateKey",function(){this.seq().obj(this.key("version").use(x),this.key("n").int(), -this.key("e").int(),this.key("d").int(),this.key("p").int(),this.key("q").int(),this.key("dp").int(),this.key("dq").int(),this.key("qi").int(),this.key("other").optional().use(v))}),z=u.define("PrivateKeyInfo",function(){this.seq().obj(this.key("version").use(x),this.key("algorithm").use(A),this.key("privateKey").bitstr())});a.exports={pem2jwk:function(a,c){a=a.toString().split(/(\r\n|\r|\n)+/g);a=a.filter(function(a){return 0!==a.trim().length});var d=l(a[0]);a=a.slice(1,-1).join("");return d(new b(a.replace(/[^\w\d\+\/=]+/g, -""),"base64"),c)},jwk2pem:function(a){var c;c={n:r(a.n),e:r(a.e),d:a.d&&r(a.d),p:a.p&&r(a.p),q:a.q&&r(a.q),dp:a.dp&&r(a.dp),dq:a.dq&&r(a.dq),qi:a.qi&&r(a.qi)};var d=!!c.d,f=d?"PRIVATE":"PUBLIC";a="-----BEGIN RSA "+f+" KEY-----\n";f="\n-----END RSA "+f+" KEY-----\n";b(0);if(d){if(!c.p){var e=w(c.e,c.d,c.n),d=e.p,e=e.q,g=c.d.mod(d.sub(B)),k=c.d.mod(e.sub(B)),l=e.invm(d);c={n:c.n,e:c.e,d:c.d,p:d,q:e,dp:g,dq:k,qi:l}}c.version="two-prime";c=y.encode(c,"der")}else c=q.encode(c,"der");c=c.toString("base64").match(/.{1,64}/g).join("\n"); +"-").replace(/\//g,"_").replace(/=/g,"")}function g(a,b){b=b||{};Object.keys(b).forEach(function(c){a[c]=b[c]});return a}function k(a){return 1===a.length%2?"0"+a:a}function f(a,b){a=q.decode(a,"der");var d=k(a.e.toString(16));a={kty:"RSA",n:p(a.n),e:c(d)};return g(a,b)}function m(a,b){a=y.decode(a,"der");var d=k(a.e.toString(16));a={kty:"RSA",n:p(a.n),e:c(d),d:p(a.d),p:p(a.p),q:p(a.q),dp:p(a.dp),dq:p(a.dq),qi:p(a.qi)};return g(a,b)}function n(a,b){a=D.decode(a,"der");return f(a.publicKey.data,b)} +function d(a,b){a=A.decode(a,"der");return m(a.privateKey.data,b)}function l(a){a=/^-----BEGIN (RSA )?(PUBLIC|PRIVATE) KEY-----$/.exec(a);if(!a)return null;var b=!!a[1];return"PRIVATE"===a[2]?b?m:d:b?f:n}function p(a){return c(k(a.toString(16)))}function r(a){return/^[0-9]+$/.test(a)?new u.bignum(a,10):new u.bignum(b(a,"base64"))}var u=h("asn1.js"),w=h("./factor"),B=new u.bignum(1),q=u.define("RSAPublicKey",function(){this.seq().obj(this.key("n").int(),this.key("e").int())}),z=u.define("AlgorithmIdentifier", +function(){this.seq().obj(this.key("algorithm").objid(),this.key("parameters").optional().any())}),D=u.define("PublicKeyInfo",function(){this.seq().obj(this.key("algorithm").use(z),this.key("publicKey").bitstr())}),x=u.define("Version",function(){this.int({0:"two-prime",1:"multi"})}),v=u.define("OtherPrimeInfos",function(){this.seq().obj(this.key("ri").int(),this.key("di").int(),this.key("ti").int())}),y=u.define("RSAPrivateKey",function(){this.seq().obj(this.key("version").use(x),this.key("n").int(), +this.key("e").int(),this.key("d").int(),this.key("p").int(),this.key("q").int(),this.key("dp").int(),this.key("dq").int(),this.key("qi").int(),this.key("other").optional().use(v))}),A=u.define("PrivateKeyInfo",function(){this.seq().obj(this.key("version").use(x),this.key("algorithm").use(z),this.key("privateKey").bitstr())});a.exports={pem2jwk:function(a,c){a=a.toString().split(/(\r\n|\r|\n)+/g);a=a.filter(function(a){return 0!==a.trim().length});var d=l(a[0]);a=a.slice(1,-1).join("");return d(new b(a.replace(/[^\w\d\+\/=]+/g, +""),"base64"),c)},jwk2pem:function(a){var c;c={n:r(a.n),e:r(a.e),d:a.d&&r(a.d),p:a.p&&r(a.p),q:a.q&&r(a.q),dp:a.dp&&r(a.dp),dq:a.dq&&r(a.dq),qi:a.qi&&r(a.qi)};var d=!!c.d,f=d?"PRIVATE":"PUBLIC";a="-----BEGIN RSA "+f+" KEY-----\n";f="\n-----END RSA "+f+" KEY-----\n";b(0);if(d){if(!c.p){var e=w(c.e,c.d,c.n),d=e.p,e=e.q,k=c.d.mod(d.sub(B)),g=c.d.mod(e.sub(B)),l=e.invm(d);c={n:c.n,e:c.e,d:c.d,p:d,q:e,dp:k,dq:g,qi:l}}c.version="two-prime";c=y.encode(c,"der")}else c=q.encode(c,"der");c=c.toString("base64").match(/.{1,64}/g).join("\n"); return a+c+f},BN:u.bignum}}).call(this,h("buffer").Buffer)},{"./factor":3,"asn1.js":5,buffer:65}],5:[function(h,a,b){b.bignum=h("bn.js");b.define=h("./asn1/api").define;b.base=h("./asn1/base");b.constants=h("./asn1/constants");b.decoders=h("./asn1/decoders");b.encoders=h("./asn1/encoders")},{"./asn1/api":6,"./asn1/base":8,"./asn1/constants":12,"./asn1/decoders":14,"./asn1/encoders":16,"bn.js":17}],6:[function(h,a,b){function c(a,b){this.name=a;this.body=b;this.decoders={};this.encoders={}}var e=h("../asn1"), g=h("inherits"),k=h("vm");b.define=function(a,b){return new c(a,b)};c.prototype._createNamed=function(a){var b=k.runInThisContext("(function "+this.name+"(entity) {\n this._initNamed(entity);\n})");g(b,a);b.prototype._initNamed=function(b){a.call(this,b)};return new b(this)};c.prototype._getDecoder=function(a){this.decoders.hasOwnProperty(a)||(this.decoders[a]=this._createNamed(e.decoders[a]));return this.decoders[a]};c.prototype.decode=function(a,b,c){return this._getDecoder(b).decode(a,c)};c.prototype._getEncoder= function(a){this.encoders.hasOwnProperty(a)||(this.encoders[a]=this._createNamed(e.encoders[a]));return this.encoders[a]};c.prototype.encode=function(a,b,c){return this._getEncoder(b).encode(a,c)}},{"../asn1":5,inherits:1,vm:172}],7:[function(h,a,b){function c(a,b){g.call(this,b);k.isBuffer(a)?(this.base=a,this.offset=0,this.length=a.length):this.error("Input not Buffer")}function e(a,b){if(Array.isArray(a))this.length=0,this.value=a.map(function(a){a instanceof e||(a=new e(a,b));this.length+=a.length; @@ -683,26 +683,26 @@ this._baseState,c=a.filter(function(a){return a instanceof this.constructor},thi function(){throw Error(a+" not implemented for encoding: "+this._baseState.enc);}});h.forEach(function(a){c.prototype[a]=function(){var b=this._baseState,c=Array.prototype.slice.call(arguments);k(null===b.tag);b.tag=a;this._useArgs(c);return this}});c.prototype.use=function(a){var b=this._baseState;k(null===b.use);b.use=a;return this};c.prototype.optional=function(){this._baseState.optional=!0;return this};c.prototype.def=function(a){var b=this._baseState;k(null===b["default"]);b["default"]=a;b.optional= !0;return this};c.prototype.explicit=function(a){var b=this._baseState;k(null===b.explicit&&null===b.implicit);b.explicit=a;return this};c.prototype.implicit=function(a){var b=this._baseState;k(null===b.explicit&&null===b.implicit);b.implicit=a;return this};c.prototype.obj=function(){var a=this._baseState,b=Array.prototype.slice.call(arguments);a.obj=!0;0!==b.length&&this._useArgs(b);return this};c.prototype.key=function(a){var b=this._baseState;k(null===b.key);b.key=a;return this};c.prototype.any= function(){this._baseState.any=!0;return this};c.prototype.choice=function(a){var b=this._baseState;k(null===b.choice);b.choice=a;this._useArgs(Object.keys(a).map(function(b){return a[b]}));return this};c.prototype._decode=function(a){var b=this._baseState;if(null===b.parent)return a.wrapResult(b.children[0]._decode(a));var c=b["default"],f=!0,e;null!==b.key&&(e=a.enterKey(b.key));if(b.optional&&(f=this._peekTag(a,null!==b.explicit?b.explicit:null!==b.implicit?b.implicit:b.tag||0),a.isError(f)))return f; -var g;b.obj&&f&&(g=a.enterObject());if(f){if(null!==b.explicit){var k=this._decodeTag(a,b.explicit);if(a.isError(k))return k;a=k}if(null===b.use&&null===b.choice){if(b.any)var h=a.save();k=this._decodeTag(a,null!==b.implicit?b.implicit:b.tag,b.any);if(a.isError(k))return k;b.any?c=a.raw(h):a=k}b.any||(c=null===b.choice?this._decodeGeneric(b.tag,a):this._decodeChoice(a));if(a.isError(c))return c;if(!b.any&&null===b.choice&&null!==b.children&&b.children.some(function(b){b._decode(a)}))return err}b.obj&& -f&&(c=a.leaveObject(g));null===b.key||null===c&&!0!==f||a.leaveKey(e,b.key,c);return c};c.prototype._decodeGeneric=function(a,b){var c=this._baseState;return"seq"===a||"set"===a?null:"seqof"===a||"setof"===a?this._decodeList(b,a,c.args[0]):"octstr"===a||"bitstr"===a||"ia5str"===a?this._decodeStr(b,a):"objid"===a&&c.args?this._decodeObjid(b,c.args[0],c.args[1]):"objid"===a?this._decodeObjid(b,null,null):"gentime"===a||"utctime"===a?this._decodeTime(b,a):"null_"===a?this._decodeNull(b):"bool"===a?this._decodeBool(b): +var k;b.obj&&f&&(k=a.enterObject());if(f){if(null!==b.explicit){var g=this._decodeTag(a,b.explicit);if(a.isError(g))return g;a=g}if(null===b.use&&null===b.choice){if(b.any)var h=a.save();g=this._decodeTag(a,null!==b.implicit?b.implicit:b.tag,b.any);if(a.isError(g))return g;b.any?c=a.raw(h):a=g}b.any||(c=null===b.choice?this._decodeGeneric(b.tag,a):this._decodeChoice(a));if(a.isError(c))return c;if(!b.any&&null===b.choice&&null!==b.children&&b.children.some(function(b){b._decode(a)}))return err}b.obj&& +f&&(c=a.leaveObject(k));null===b.key||null===c&&!0!==f||a.leaveKey(e,b.key,c);return c};c.prototype._decodeGeneric=function(a,b){var c=this._baseState;return"seq"===a||"set"===a?null:"seqof"===a||"setof"===a?this._decodeList(b,a,c.args[0]):"octstr"===a||"bitstr"===a||"ia5str"===a?this._decodeStr(b,a):"objid"===a&&c.args?this._decodeObjid(b,c.args[0],c.args[1]):"objid"===a?this._decodeObjid(b,null,null):"gentime"===a||"utctime"===a?this._decodeTime(b,a):"null_"===a?this._decodeNull(b):"bool"===a?this._decodeBool(b): "int"===a||"enum"===a?this._decodeInt(b,c.args&&c.args[0]):null!==c.use?this._getUse(c.use,b._reporterState.obj)._decode(b):b.error("unknown tag: "+a)};c.prototype._getUse=function(a,b){var c=this._baseState;c.useDecoder=this._use(a,b);k(null===c.useDecoder._baseState.parent);c.useDecoder=c.useDecoder._baseState.children[0];c.implicit!==c.useDecoder._baseState.implicit&&(c.useDecoder=c.useDecoder.clone(),c.useDecoder._baseState.implicit=c.implicit);return c.useDecoder};c.prototype._decodeChoice=function(a){var b= -this._baseState,c=null,f=!1;Object.keys(b.choice).some(function(d){var e=a.save(),g=b.choice[d];try{var k=g._decode(a);if(a.isError(k))return!1;c={type:d,value:k};f=!0}catch(q){return a.restore(e),!1}return!0},this);return f?c:a.error("Choice not matched")};c.prototype._createEncoderBuffer=function(a){return new g(a,this.reporter)};c.prototype._encode=function(a,b,c){var d=this._baseState;if(null===d["default"]||d["default"]!==a)if(a=this._encodeValue(a,b,c),void 0!==a&&!this._skipDefault(a,b,c))return a}; -c.prototype._encodeValue=function(a,b,c){var d=this._baseState;if(null===d.parent)return d.children[0]._encode(a,b||new e);var f=null;this.reporter=b;if(d.optional&&void 0===a)if(null!==d["default"])a=d["default"];else return;var g=null,k=!1;if(d.any)f=this._createEncoderBuffer(a);else if(d.choice)f=this._encodeChoice(a,b);else if(d.children)g=d.children.map(function(c){if("null_"===c._baseState.tag)return c._encode(null,b,a);if(null===c._baseState.key)return b.error("Child should have a key");var d= -b.enterKey(c._baseState.key);if("object"!==typeof a)return b.error("Child expected, but input is not object");c=c._encode(a[c._baseState.key],b,a);b.leaveKey(d);return c},this).filter(function(a){return a}),g=this._createEncoderBuffer(g);else if("seqof"===d.tag||"setof"===d.tag){if(!d.args||1!==d.args.length)return b.error("Too many args for : "+d.tag);if(!Array.isArray(a))return b.error("seqof/setof, but data is not Array");g=this.clone();g._baseState.implicit=null;g=this._createEncoderBuffer(a.map(function(c){return this._getUse(this._baseState.args[0], -a)._encode(c,b)},g))}else null!==d.use?f=this._getUse(d.use,c)._encode(a,b):(g=this._encodePrimitive(d.tag,a),k=!0);if(!d.any&&null===d.choice){c=null!==d.implicit?d.implicit:d.tag;var l=null===d.implicit?"universal":"context";null===c?null===d.use&&b.error("Tag could be ommited only for .use()"):null===d.use&&(f=this._encodeComposite(c,k,l,g))}null!==d.explicit&&(f=this._encodeComposite(d.explicit,!1,"context",f));return f};c.prototype._encodeChoice=function(a,b){var c=this._baseState,d=c.choice[a.type]; +this._baseState,c=null,f=!1;Object.keys(b.choice).some(function(d){var e=a.save(),k=b.choice[d];try{var g=k._decode(a);if(a.isError(g))return!1;c={type:d,value:g};f=!0}catch(q){return a.restore(e),!1}return!0},this);return f?c:a.error("Choice not matched")};c.prototype._createEncoderBuffer=function(a){return new g(a,this.reporter)};c.prototype._encode=function(a,b,c){var d=this._baseState;if(null===d["default"]||d["default"]!==a)if(a=this._encodeValue(a,b,c),void 0!==a&&!this._skipDefault(a,b,c))return a}; +c.prototype._encodeValue=function(a,b,c){var d=this._baseState;if(null===d.parent)return d.children[0]._encode(a,b||new e);var f=null;this.reporter=b;if(d.optional&&void 0===a)if(null!==d["default"])a=d["default"];else return;var k=null,g=!1;if(d.any)f=this._createEncoderBuffer(a);else if(d.choice)f=this._encodeChoice(a,b);else if(d.children)k=d.children.map(function(c){if("null_"===c._baseState.tag)return c._encode(null,b,a);if(null===c._baseState.key)return b.error("Child should have a key");var d= +b.enterKey(c._baseState.key);if("object"!==typeof a)return b.error("Child expected, but input is not object");c=c._encode(a[c._baseState.key],b,a);b.leaveKey(d);return c},this).filter(function(a){return a}),k=this._createEncoderBuffer(k);else if("seqof"===d.tag||"setof"===d.tag){if(!d.args||1!==d.args.length)return b.error("Too many args for : "+d.tag);if(!Array.isArray(a))return b.error("seqof/setof, but data is not Array");k=this.clone();k._baseState.implicit=null;k=this._createEncoderBuffer(a.map(function(c){return this._getUse(this._baseState.args[0], +a)._encode(c,b)},k))}else null!==d.use?f=this._getUse(d.use,c)._encode(a,b):(k=this._encodePrimitive(d.tag,a),g=!0);if(!d.any&&null===d.choice){c=null!==d.implicit?d.implicit:d.tag;var l=null===d.implicit?"universal":"context";null===c?null===d.use&&b.error("Tag could be ommited only for .use()"):null===d.use&&(f=this._encodeComposite(c,g,l,k))}null!==d.explicit&&(f=this._encodeComposite(d.explicit,!1,"context",f));return f};c.prototype._encodeChoice=function(a,b){var c=this._baseState,d=c.choice[a.type]; d||k(!1,a.type+" not found in "+JSON.stringify(Object.keys(c.choice)));return d._encode(a.value,b)};c.prototype._encodePrimitive=function(a,b){var c=this._baseState;if("octstr"===a||"bitstr"===a||"ia5str"===a)return this._encodeStr(b,a);if("objid"===a&&c.args)return this._encodeObjid(b,c.reverseArgs[0],c.args[1]);if("objid"===a)return this._encodeObjid(b,null,null);if("gentime"===a||"utctime"===a)return this._encodeTime(b,a);if("null_"===a)return this._encodeNull();if("int"===a||"enum"===a)return this._encodeInt(b, c.args&&c.reverseArgs[0]);if("bool"===a)return this._encodeBool(b);throw Error("Unsupported tag: "+a);}},{"../base":8,"minimalistic-assert":2}],10:[function(h,a,b){function c(a){this._reporterState={obj:null,path:[],options:a||{},errors:[]}}function e(a,b){this.path=a;this.rethrow(b)}h=h("inherits");b.Reporter=c;c.prototype.isError=function(a){return a instanceof e};c.prototype.enterKey=function(a){return this._reporterState.path.push(a)};c.prototype.leaveKey=function(a,b,c){var f=this._reporterState; f.path=f.path.slice(0,a-1);null!==f.obj&&(f.obj[b]=c)};c.prototype.enterObject=function(){var a=this._reporterState,b=a.obj;a.obj={};return b};c.prototype.leaveObject=function(a){var b=this._reporterState,c=b.obj;b.obj=a;return c};c.prototype.error=function(a){var b=this._reporterState,c=a instanceof e;a=c?a:new e(b.path.map(function(a){return"["+JSON.stringify(a)+"]"}).join(""),a.message||a,a.stack);if(!b.options.partial)throw a;c||b.errors.push(a);return a};c.prototype.wrapResult=function(a){var b= this._reporterState;return b.options.partial?{result:this.isError(a)?null:a,errors:b.errors}:a};h(e,Error);e.prototype.rethrow=function(a){this.message=a+" at: "+(this.path||"(shallow)");Error.captureStackTrace(this,e);return this}},{inherits:1}],11:[function(h,a,b){h=h("../constants");b.tagClass={0:"universal",1:"application",2:"context",3:"private"};b.tagClassByName=h._reverse(b.tagClass);b.tag={0:"end",1:"bool",2:"int",3:"bitstr",4:"octstr",5:"null_",6:"objid",7:"objDesc",8:"external",9:"real", 10:"enum",11:"embed",12:"utf8str",13:"relativeOid",16:"seq",17:"set",18:"numstr",19:"printstr",20:"t61str",21:"videostr",22:"ia5str",23:"utctime",24:"gentime",25:"graphstr",26:"iso646str",27:"genstr",28:"unistr",29:"charstr",30:"bmpstr"};b.tagByName=h._reverse(b.tag)},{"../constants":12}],12:[function(h,a,b){b._reverse=function(a){var b={};Object.keys(a).forEach(function(c){(c|0)==c&&(c|=0);b[a[c]]=c});return b};b.der=h("./der")},{"./der":11}],13:[function(h,a,b){function c(a){this.enc="der";this.name= -a.name;this.entity=a;this.tree=new e;this.tree._init(a.body)}function e(a){f.Node.call(this,"der",a)}function g(a,b){var c=a.readUInt8(b);if(a.isError(c))return c;var d=p.tagClass[c>>6],f=0===(c&32);if(31===(c&31))for(var e=c,c=0;128===(e&128);){e=a.readUInt8(b);if(a.isError(e))return e;c<<=7;c|=e&127}else c&=31;return{cls:d,primitive:f,tag:c,tagStr:p.tag[c]}}function k(a,b,c){var d=a.readUInt8(c);if(a.isError(d))return d;if(!b&&128===d)return null;if(0===(d&128))return d;b=d&127;if(4<=b)return a.error("length octect is too long"); -for(var f=d=0;f>6],f=0===(c&32);if(31===(c&31))for(var e=c,c=0;128===(e&128);){e=a.readUInt8(b);if(a.isError(e))return e;c<<=7;c|=e&127}else c&=31;return{cls:d,primitive:f,tag:c,tagStr:n.tag[c]}}function k(a,b,c){var d=a.readUInt8(c);if(a.isError(d))return d;if(!b&&128===d)return null;if(0===(d&128))return d;b=d&127;if(4<=b)return a.error("length octect is too long"); +for(var f=d=0;fb?2E3+b:1900+b;else return this.error("Decoding "+b+" time is not supported yet");return Date.UTC(b,c-1,d,f,e,a,0)};e.prototype._decodeNull=function(a){return null};e.prototype._decodeBool=function(a){var b=a.readUInt8();return a.isError(b)?b:0!==b};e.prototype._decodeInt=function(a,b){var c=0,d=a.raw();if(3< d.length)return new m(d);for(;!a.isEmpty();){c<<=8;d=a.readUInt8();if(a.isError(d))return d;c|=d}b&&(c=b[c]||c);return c};e.prototype._use=function(a,b){"function"===typeof a&&(a=a(b));return a._getDecoder("der").tree}},{"../../asn1":5,inherits:1}],14:[function(h,a,b){b.der=h("./der")},{"./der":13}],15:[function(h,a,b){function c(a){this.enc="der";this.name=a.name;this.entity=a;this.tree=new e;this.tree._init(a.body)}function e(a){f.Node.call(this,"der",a)}function g(a){return 10>=a?"0"+a:a}b=h("inherits"); -var k=h("buffer").Buffer;h=h("../../asn1");var f=h.base,m=h.bignum,p=h.constants.der;a.exports=c;c.prototype.encode=function(a,b){return this.tree._encode(a,b).join()};b(e,f.Node);e.prototype._encodeComposite=function(a,b,c,f){a:{var d=a;a=this.reporter;"seqof"===d?d="seq":"setof"===d&&(d="set");if(p.tagByName.hasOwnProperty(d))d=p.tagByName[d];else if("number"!==typeof d||(d|0)!==d){a=a.error("Unknown tag: "+d);break a}31<=d?a=a.error("Multi-octet tag encoding unsupported"):(b||(d|=32),a=d|=p.tagClassByName[c|| +var k=h("buffer").Buffer;h=h("../../asn1");var f=h.base,m=h.bignum,n=h.constants.der;a.exports=c;c.prototype.encode=function(a,b){return this.tree._encode(a,b).join()};b(e,f.Node);e.prototype._encodeComposite=function(a,b,c,f){a:{var d=a;a=this.reporter;"seqof"===d?d="seq":"setof"===d&&(d="set");if(n.tagByName.hasOwnProperty(d))d=n.tagByName[d];else if("number"!==typeof d||(d|0)!==d){a=a.error("Unknown tag: "+d);break a}31<=d?a=a.error("Multi-octet tag encoding unsupported"):(b||(d|=32),a=d|=n.tagClassByName[c|| "universal"]<<6)}if(128>f.length)return b=new k(2),b[0]=a,b[1]=f.length,this._createEncoderBuffer([b,f]);d=1;for(c=f.length;256<=c;c>>=8)d++;b=new k(2+d);b[0]=a;b[1]=128|d;c=1+d;for(a=f.length;0>=8)b[c]=a&255;return this._createEncoderBuffer([b,f])};e.prototype._encodeStr=function(a,b){return"octstr"===b?this._createEncoderBuffer(a):"bitstr"===b?this._createEncoderBuffer([a.unused|0,a.data]):"ia5str"===b?this._createEncoderBuffer(a):this.reporter.error("Encoding of string type: "+b+" unsupported")}; e.prototype._encodeObjid=function(a,b,c){if("string"===typeof a){if(!b)return this.reporter.error("string objid given, but no values map found");if(!b.hasOwnProperty(a))return this.reporter.error("objid not found in values map");a=b[a].split(/\s+/g);for(b=0;b>=7)d++;var d=new k(d),f=d.length-1;for(b=a.length-1;0<=b;b--)for(c=a[b],d[f--]=c&127;0<(c>>=7);)d[f--]=128|c&127;return this._createEncoderBuffer(d)};e.prototype._encodeTime=function(a,b){var c;a=new Date(a);"gentime"===b?c=[a.getFullYear(),g(a.getUTCMonth()+1),g(a.getUTCDate()),g(a.getUTCHours()),g(a.getUTCMinutes()),g(a.getUTCSeconds()),"Z"].join(""):"utctime"===b?c=[a.getFullYear()%100,g(a.getUTCMonth()+1),g(a.getUTCDate()), @@ -710,15 +710,15 @@ g(a.getUTCHours()),g(a.getUTCMinutes()),g(a.getUTCSeconds()),"Z"].join(""):this. m&&a instanceof m&&(b=a.toArray(),!1===a.sign&&b[0]&128&&b.unshift(0),a=new k(b));if(k.isBuffer(a)){var c=a.length;0===a.length&&c++;c=new k(c);a.copy(c);0===a.length&&(c[0]=0);return this._createEncoderBuffer(c)}if(128>a)return this._createEncoderBuffer(a);if(256>a)return this._createEncoderBuffer([0,a]);c=1;for(b=a;256<=b;b>>=8)c++;c=Array(c);for(b=c.length-1;0<=b;b--)c[b]=a&255,a>>=8;c[0]&128&&c.unshift(0);return this._createEncoderBuffer(new k(c))};e.prototype._encodeBool=function(a){return this._createEncoderBuffer(a? 255:0)};e.prototype._use=function(a,b){"function"===typeof a&&(a=a(b));return a._getEncoder("der").tree};e.prototype._skipDefault=function(a,b,c){var d=this._baseState;if(null===d["default"])return!1;a=a.join();void 0===d.defaultBuffer&&(d.defaultBuffer=this._encodeValue(d["default"],b,c).join());if(a.length!==d.defaultBuffer.length)return!1;for(b=0;b=f?d|f-49+10:17<=f&&22>=f?d|f-17+10:d|f&15;return d}function p(a,b,c,d){var f=0;for(c=Math.min(a.length,c);b=f?d|f-49+10:17<=f&&22>=f?d|f-17+10:d|f&15;return d}function n(a,b,c,d){var f=0;for(c=Math.min(a.length,c);ba&&(this.sign=!0,a=-a),67108864>a?(this.words=[a&67108863],this.length=1):(this.words=[a&67108863,a/67108864&67108863],this.length=2);else{if("object"===typeof a)return this._initArray(a,b,d);"hex"===b&&(b=16);c(b===(b|0)&&2<=b&&36>=b);a=a.toString().replace(/\s+/g,"");d=0;"-"=== a[0]&&d++;16===b?this._parseHex(a,d):this._parseBase(a,b,d);"-"===a[0]&&(this.sign=!0);this.strip()}};f.prototype._initArray=function(a,b,d){c("number"===typeof a.length);this.length=Math.ceil(a.length/3);this.words=Array(this.length);for(b=0;b>>26-f&67108863;f+=24;26<=f&&(f-=26,d++)}else if("le"===d)for(d=b=0;b>>26-f&67108863,f+=24,26<=f&&(f-=26,d++);return this.strip()};f.prototype._parseHex=function(a,b){this.length=Math.ceil((a.length-b)/6);this.words=Array(this.length);for(var c=0;c=b;c-=6){var e=h(a,c,c+6);this.words[f]|=e<>>26-d&4194303;d+=24;26<=d&&(d-=26,f++)}c+6!==b&&(e=h(a,b,c+6),this.words[f]|=e<>>26-d&4194303); -this.strip()};f.prototype._parseBase=function(a,b,c){this.words=[0];this.length=1;for(var d=0,f=1;67108863>=f;f*=b)d++;d--;for(var f=f/b|0,e=a.length-c,k=e%d,e=Math.min(e,e-k)+c,g=c;gthis.words[0]+c?this.words[0]+=c:this._iaddn(c);if(0!==k){d=1;c=p(a,g,a.length,b);for(g=0;gthis.words[0]+c?this.words[0]+=c:this._iaddn(c)}};f.prototype.copy=function(a){a.words=Array(this.length);for(var b=0;b=f;f*=b)d++;d--;for(var f=f/b|0,e=a.length-c,k=e%d,e=Math.min(e,e-k)+c,g=c;gthis.words[0]+c?this.words[0]+=c:this._iaddn(c);if(0!==k){d=1;c=n(a,g,a.length,b);for(g=0;gthis.words[0]+c?this.words[0]+=c:this._iaddn(c)}};f.prototype.copy=function(a){a.words=Array(this.length);for(var b=0;b>>24-a&16777215,d=0!==f||e!==this.length-1?q[6-g.length]+g+d:g+d;a+=2;26<=a&&(a-=26,e--)}for(0!==f&&(d=f.toString(16)+d);0!==d.length%b;)d="0"+d;this.sign&&(d="-"+d);return d}if(a===(a|0)&&2<=a&&36>=a){b=A[a];f=D[a];d="";e=this.clone();for(e.sign=!1;0!==e.cmpn(0);)k=e.modn(f).toString(a),e=e.idivn(f),d=0!==e.cmpn(0)?q[b-k.length]+k+d:k+d;0===this.cmpn(0)&&(d="0"+d);this.sign&&(d="-"+d);return d}c(!1,"Base should be between 2 and 36")};f.prototype.toJSON= +z=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],D=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1E7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64E6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243E5,28629151,33554432,39135393,45435424,52521875,60466176];f.prototype.toString=function(a,b){a=a||10;if(16===a||"hex"===a){var d="";a=0;b=b|0||1;for(var f=0,e=0;e>>24-a&16777215,d=0!==f||e!==this.length-1?q[6-g.length]+g+d:g+d;a+=2;26<=a&&(a-=26,e--)}for(0!==f&&(d=f.toString(16)+d);0!==d.length%b;)d="0"+d;this.sign&&(d="-"+d);return d}if(a===(a|0)&&2<=a&&36>=a){b=z[a];f=D[a];d="";e=this.clone();for(e.sign=!1;0!==e.cmpn(0);)k=e.modn(f).toString(a),e=e.idivn(f),d=0!==e.cmpn(0)?q[b-k.length]+k+d:k+d;0===this.cmpn(0)&&(d="0"+d);this.sign&&(d="-"+d);return d}c(!1,"Base should be between 2 and 36")};f.prototype.toJSON= function(){return this.toString(16)};f.prototype.toArray=function(){this.strip();var a=Array(this.byteLength());a[0]=0;for(var b=this.clone(),c=0;0!==b.cmpn(0);c++){var d=b.andln(255);b.ishrn(8);a[a.length-c-1]=d}return a};f.prototype._countBits=function(a){return 33554432<=a?26:16777216<=a?25:8388608<=a?24:4194304<=a?23:2097152<=a?22:1048576<=a?21:524288<=a?20:262144<=a?19:131072<=a?18:65536<=a?17:32768<=a?16:16384<=a?15:8192<=a?14:4096<=a?13:2048<=a?12:1024<=a?11:512<=a?10:256<=a?9:128<=a?8:64<= a?7:32<=a?6:16<=a?5:8<=a?4:4<=a?3:2<=a?2:1<=a?1:0};f.prototype.bitLength=function(){var a;a=this._countBits(this.words[this.length-1]);return 26*(this.length-1)+a};f.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)};f.prototype.neg=function(){if(0===this.cmpn(0))return this.clone();var a=this.clone();a.sign=!this.sign;return a};f.prototype.ior=function(a){for(this.sign=this.sign||a.sign;this.lengtha.length?this.clone().ior(a):a.clone().ior(this)};f.prototype.iand=function(a){this.sign=this.sign&&a.sign;var b;b=this.length>a.length?a:this;for(var c=0;ca.length?this.clone().iand(a):a.clone().iand(this)};f.prototype.ixor=function(a){this.sign=this.sign||a.sign;var b;this.length>a.length?b= @@ -748,8 +748,8 @@ return this.red.convertFrom(this)};f.prototype._forceRed=function(a){this.red=a; return this.red.sub(this,a)};f.prototype.redISub=function(a){c(this.red,"redISub works only with red numbers");return this.red.isub(this,a)};f.prototype.redShl=function(a){c(this.red,"redShl works only with red numbers");return this.red.shl(this,a)};f.prototype.redMul=function(a){c(this.red,"redMul works only with red numbers");this.red._verify2(this,a);return this.red.mul(this,a)};f.prototype.redIMul=function(a){c(this.red,"redMul works only with red numbers");this.red._verify2(this,a);return this.red.imul(this, a)};f.prototype.redSqr=function(){c(this.red,"redSqr works only with red numbers");this.red._verify1(this);return this.red.sqr(this)};f.prototype.redISqr=function(){c(this.red,"redISqr works only with red numbers");this.red._verify1(this);return this.red.isqr(this)};f.prototype.redSqrt=function(){c(this.red,"redSqrt works only with red numbers");this.red._verify1(this);return this.red.sqrt(this)};f.prototype.redInvm=function(){c(this.red,"redInvm works only with red numbers");this.red._verify1(this); return this.red.invm(this)};f.prototype.redNeg=function(){c(this.red,"redNeg works only with red numbers");this.red._verify1(this);return this.red.neg(this)};f.prototype.redPow=function(a){c(this.red&&!a.red,"redPow(normalNum)");this.red._verify1(this);return this.red.pow(this,a)};var x={k256:null,p224:null,p192:null,p25519:null};d.prototype._tmp=function(){var a=new f(null);a.words=Array(Math.ceil(this.n/13));return a};d.prototype.ireduce=function(a){var b;do b=a.ishrn(this.n,0,this.tmp),a=this.imulK(b.hi), -a=a.iadd(b.lo),b=a.bitLength();while(b>this.n);b=b>>26;a.words[c]=d}0!==b&&(a.words[a.length++]=b);return a};f._prime=function(a){if(x[a])return x[a];var b;if("k256"===a)b=new l;else if("p224"===a)b=new n;else if("p192"===a)b=new r;else if("p25519"===a)b=new u;else throw Error("Unknown prime "+a);return x[a]=b};w.prototype._verify1=function(a){c(!a.sign,"red works only with positives");c(a.red,"red works only with red numbers")};w.prototype._verify2= +a=a.iadd(b.lo),b=a.bitLength();while(b>this.n);b=b>>26;a.words[c]=d}0!==b&&(a.words[a.length++]=b);return a};f._prime=function(a){if(x[a])return x[a];var b;if("k256"===a)b=new l;else if("p224"===a)b=new p;else if("p192"===a)b=new r;else if("p25519"===a)b=new u;else throw Error("Unknown prime "+a);return x[a]=b};w.prototype._verify1=function(a){c(!a.sign,"red works only with positives");c(a.red,"red works only with red numbers")};w.prototype._verify2= function(a,b){c(!a.sign&&!b.sign,"red works only with positives");c(a.red&&a.red===b.red,"red works only with red numbers")};w.prototype.imod=function(a){return this.prime?this.prime.ireduce(a)._forceRed(this):a.mod(this.m)._forceRed(this)};w.prototype.neg=function(a){a=a.clone();a.sign=!a.sign;return a.iadd(this.m)._forceRed(this)};w.prototype.add=function(a,b){this._verify2(a,b);a=a.add(b);0<=a.cmp(this.m)&&a.isub(this.m);return a._forceRed(this)};w.prototype.iadd=function(a,b){this._verify2(a, b);a=a.iadd(b);0<=a.cmp(this.m)&&a.isub(this.m);return a};w.prototype.sub=function(a,b){this._verify2(a,b);a=a.sub(b);0>a.cmpn(0)&&a.iadd(this.m);return a._forceRed(this)};w.prototype.isub=function(a,b){this._verify2(a,b);a=a.isub(b);0>a.cmpn(0)&&a.iadd(this.m);return a};w.prototype.shl=function(a,b){this._verify1(a);return this.imod(a.shln(b))};w.prototype.imul=function(a,b){this._verify2(a,b);return this.imod(a.imul(b))};w.prototype.mul=function(a,b){this._verify2(a,b);return this.imod(a.mul(b))}; w.prototype.isqr=function(a){return this.imul(a,a)};w.prototype.sqr=function(a){return this.mul(a,a)};w.prototype.sqrt=function(a){if(0===a.cmpn(0))return a.clone();var b=this.m.andln(3);c(1===b%2);if(3===b){var b=this.m.add(new f(1)).ishrn(2),d=this.pow(a,b);return d}for(var e=this.m.subn(1),k=0;0!==e.cmpn(0)&&0===e.andln(1);)k++,e.ishrn(1);c(0!==e.cmpn(0));for(var b=(new f(1)).toRed(this),d=b.redNeg(),g=this.m.subn(1).ishrn(1),l=this.m.bitLength(),l=(new f(2*l*l)).toRed(this);0!==this.pow(l,g).cmp(d);)l.redIAdd(d); @@ -764,7 +764,7 @@ function(){return{offset:this.offset,reporter:g.prototype.save.call(this)}};c.pr a<=this.length))return this.error(b||"DecoderBuffer overrun");b=new c(this.base);b._reporterState=this._reporterState;b.offset=this.offset;b.length=this.offset+a;this.offset+=a;return b};c.prototype.raw=function(a){return this.base.slice(a?a.offset:this.offset,this.length)};b.EncoderBuffer=e;e.prototype.join=function(a,b){a||(a=new k(this.length));b||(b=0);if(0===this.length)return a;Array.isArray(this.value)?this.value.forEach(function(c){c.join(a,b);b+=c.length}):("number"===typeof this.value?a[b]= this.value:"string"===typeof this.value?a.write(this.value,b):k.isBuffer(this.value)&&this.value.copy(a,b),b+=this.length);return a}},{"../base":22,buffer:65,inherits:119}],22:[function(h,a,b){arguments[4][8][0].apply(b,arguments)},{"./buffer":21,"./node":23,"./reporter":24,dup:8}],23:[function(h,a,b){function c(a,b){var c={};this._baseState=c;c.enc=a;c.parent=b||null;c.children=null;c.tag=null;c.args=null;c.reverseArgs=null;c.choice=null;c.optional=!1;c.any=!1;c.obj=!1;c.use=null;c.useDecoder=null; c.key=null;c["default"]=null;c.explicit=null;c.implicit=null;c.contains=null;c.parent||(c.children=[],this._wrap())}var e=h("../base").Reporter,g=h("../base").EncoderBuffer,k=h("../base").DecoderBuffer,f=h("minimalistic-assert");h="seq seqof set setof objid bool gentime utctime null_ enum int objDesc bitstr bmpstr charstr genstr graphstr ia5str iso646str numstr octstr printstr t61str unistr utf8str videostr".split(" ");var m="key obj use optional explicit implicit def choice any contains".split(" ").concat(h); -a.exports=c;var p="enc parent children tag args reverseArgs choice optional any obj use alteredUse key default explicit implicit contains".split(" ");c.prototype.clone=function(){var a=this._baseState,b={};p.forEach(function(c){b[c]=a[c]});var c=new this.constructor(b.parent);c._baseState=b;return c};c.prototype._wrap=function(){var a=this._baseState;m.forEach(function(b){this[b]=function(){var c=new this.constructor(this);a.children.push(c);return c[b].apply(c,arguments)}},this)};c.prototype._init= +a.exports=c;var n="enc parent children tag args reverseArgs choice optional any obj use alteredUse key default explicit implicit contains".split(" ");c.prototype.clone=function(){var a=this._baseState,b={};n.forEach(function(c){b[c]=a[c]});var c=new this.constructor(b.parent);c._baseState=b;return c};c.prototype._wrap=function(){var a=this._baseState;m.forEach(function(b){this[b]=function(){var c=new this.constructor(this);a.children.push(c);return c[b].apply(c,arguments)}},this)};c.prototype._init= function(a){var b=this._baseState;f(null===b.parent);a.call(this);b.children=b.children.filter(function(a){return a._baseState.parent===this},this);f.equal(b.children.length,1,"Root node can have only one child")};c.prototype._useArgs=function(a){var b=this._baseState,c=a.filter(function(a){return a instanceof this.constructor},this);a=a.filter(function(a){return!(a instanceof this.constructor)},this);0!==c.length&&(f(null===b.children),b.children=c,c.forEach(function(a){a._baseState.parent=this}, this));0!==a.length&&(f(null===b.args),b.args=a,b.reverseArgs=a.map(function(a){if("object"!==typeof a||a.constructor!==Object)return a;var b={};Object.keys(a).forEach(function(c){c==(c|0)&&(c|=0);b[a[c]]=c});return b}))};"_peekTag _decodeTag _use _decodeStr _decodeObjid _decodeTime _decodeNull _decodeInt _decodeBool _decodeList _encodeComposite _encodeStr _encodeObjid _encodeTime _encodeNull _encodeInt _encodeBool".split(" ").forEach(function(a){c.prototype[a]=function(){throw Error(a+" not implemented for encoding: "+ this._baseState.enc);}});h.forEach(function(a){c.prototype[a]=function(){var b=this._baseState,c=Array.prototype.slice.call(arguments);f(null===b.tag);b.tag=a;this._useArgs(c);return this}});c.prototype.use=function(a){f(a);var b=this._baseState;f(null===b.use);b.use=a;return this};c.prototype.optional=function(){this._baseState.optional=!0;return this};c.prototype.def=function(a){var b=this._baseState;f(null===b["default"]);b["default"]=a;b.optional=!0;return this};c.prototype.explicit=function(a){var b= @@ -783,8 +783,8 @@ this._encodeComposite(d.explicit,!1,"context",f));return f};c.prototype._encodeC {obj:null,path:[],options:a||{},errors:[]}}function e(a,b){this.path=a;this.rethrow(b)}h=h("inherits");b.Reporter=c;c.prototype.isError=function(a){return a instanceof e};c.prototype.save=function(){var a=this._reporterState;return{obj:a.obj,pathLen:a.path.length}};c.prototype.restore=function(a){var b=this._reporterState;b.obj=a.obj;b.path=b.path.slice(0,a.pathLen)};c.prototype.enterKey=function(a){return this._reporterState.path.push(a)};c.prototype.exitKey=function(a){var b=this._reporterState; b.path=b.path.slice(0,a-1)};c.prototype.leaveKey=function(a,b,c){var f=this._reporterState;this.exitKey(a);null!==f.obj&&(f.obj[b]=c)};c.prototype.path=function(){return this._reporterState.path.join("/")};c.prototype.enterObject=function(){var a=this._reporterState,b=a.obj;a.obj={};return b};c.prototype.leaveObject=function(a){var b=this._reporterState,c=b.obj;b.obj=a;return c};c.prototype.error=function(a){var b=this._reporterState,c=a instanceof e;a=c?a:new e(b.path.map(function(a){return"["+JSON.stringify(a)+ "]"}).join(""),a.message||a,a.stack);if(!b.options.partial)throw a;c||b.errors.push(a);return a};c.prototype.wrapResult=function(a){var b=this._reporterState;return b.options.partial?{result:this.isError(a)?null:a,errors:b.errors}:a};h(e,Error);e.prototype.rethrow=function(a){this.message=a+" at: "+(this.path||"(shallow)");Error.captureStackTrace&&Error.captureStackTrace(this,e);if(!this.stack)try{throw Error(this.message);}catch(k){this.stack=k.stack}return this}},{inherits:119}],25:[function(h, -a,b){arguments[4][11][0].apply(b,arguments)},{"../constants":26,dup:11}],26:[function(h,a,b){arguments[4][12][0].apply(b,arguments)},{"./der":25,dup:12}],27:[function(h,a,b){function c(a){this.enc="der";this.name=a.name;this.entity=a;this.tree=new e;this.tree._init(a.body)}function e(a){f.Node.call(this,"der",a)}function g(a,b){var c=a.readUInt8(b);if(a.isError(c))return c;var d=p.tagClass[c>>6],f=0===(c&32);if(31===(c&31))for(var e=c,c=0;128===(e&128);){e=a.readUInt8(b);if(a.isError(e))return e; -c<<=7;c|=e&127}else c&=31;return{cls:d,primitive:f,tag:c,tagStr:p.tag[c]}}function k(a,b,c){var d=a.readUInt8(c);if(a.isError(d))return d;if(!b&&128===d)return null;if(0===(d&128))return d;b=d&127;if(4>6],f=0===(c&32);if(31===(c&31))for(var e=c,c=0;128===(e&128);){e=a.readUInt8(b);if(a.isError(e))return e; +c<<=7;c|=e&127}else c&=31;return{cls:d,primitive:f,tag:c,tagStr:n.tag[c]}}function k(a,b,c){var d=a.readUInt8(c);if(a.isError(d))return d;if(!b&&128===d)return null;if(0===(d&128))return d;b=d&127;if(4>18&63]+g[b>>12&63]+g[b>>6&63]+g[b&63]);return d.join("")}b.byteLength=function(a){return 3*a.length/4-c(a)};b.toByteArray=function(a){var b,d,e,g,h;b=a.length;g=c(a);h=new f(3*b/4-g);d=0>16&255,h[m++]=e>>8&255,h[m++]=e&255;2===g?(e= k[a.charCodeAt(b)]<<2|k[a.charCodeAt(b+1)]>>4,h[m++]=e&255):1===g&&(e=k[a.charCodeAt(b)]<<10|k[a.charCodeAt(b+1)]<<4|k[a.charCodeAt(b+2)]>>2,h[m++]=e>>8&255,h[m++]=e&255);return h};b.fromByteArray=function(a){for(var b=a.length,c=b%3,f="",k=[],h=0,m=b-c;hm?m:h+16383));1===c?(a=a[b-1],f+=g[a>>2],f+=g[a<<4&63],f+="\x3d\x3d"):2===c&&(a=(a[b-2]<<8)+a[b-1],f+=g[a>>10],f+=g[a>>4&63],f+=g[a<<2&63],f+="\x3d");k.push(f);return k.join("")};var g=[],k=[],f="undefined"!==typeof Uint8Array? Uint8Array:Array;for(h=0;64>h;++h)g[h]="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[h],k["ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charCodeAt(h)]=h;k[45]=62;k[95]=63},{}],34:[function(h,a,b){(function(a,b){function c(a,b){if(!a)throw Error(b||"Assertion failed");}function e(a,b){a.super_=b;var c=function(){};c.prototype=b.prototype;a.prototype=new c;a.prototype.constructor=a}function f(a,b,c){if(f.isBN(a))return a;this.negative=0;this.words=null;this.length= -0;this.red=null;if(null!==a){if("le"===b||"be"===b)c=b,b=10;this._init(a||0,b||10,c||"be")}}function m(a,b,c){var d=0;for(c=Math.min(a.length,c);b=f?d|f-49+10:17<=f&&22>=f?d|f-17+10:d|f&15;return d}function p(a,b,c,d){var f=0;for(c=Math.min(a.length,c);b>>26,h=k&67108863,k=Math.min(g,b.length-1),m=Math.max(0,g-a.length+1);m<=k;m++)f=a.words[g-m|0]|0,e=b.words[m]|0,f=f*e+h,l+=f/67108864|0,h=f&67108863;c.words[g]=h|0;k=l|0}0!==k?c.words[g]=k|0:c.length--;return c.strip()}function l(a,b){this.x=a;this.y=b}function n(a,b){this.name=a;this.p=new f(b,16);this.n=this.p.bitLength();this.k=(new f(1)).iushln(this.n).isub(this.p);this.tmp=this._tmp()}function r(){n.call(this, -"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function u(){n.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function w(){n.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function B(){n.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function q(a){"string"===typeof a?(a=f._prime(a),this.m=a.p,this.prime=a):(c(a.gtn(1),"modulus must be greater than 1"),this.m=a, -this.prime=null)}function A(a){q.call(this,a);this.shift=this.m.bitLength();0!==this.shift%26&&(this.shift+=26-this.shift%26);this.r=(new f(1)).iushln(this.shift);this.r2=this.imod(this.r.sqr());this.rinv=this.r._invmp(this.m);this.minv=this.rinv.mul(this.r).isubn(1).div(this.m);this.minv=this.minv.umod(this.r);this.minv=this.r.sub(this.minv)}"object"===typeof a?a.exports=f:b.BN=f;f.BN=f;f.wordSize=26;var D;try{D=h("buffer").Buffer}catch(C){}f.isBN=function(a){return a instanceof f?!0:null!==a&&"object"=== +0;this.red=null;if(null!==a){if("le"===b||"be"===b)c=b,b=10;this._init(a||0,b||10,c||"be")}}function m(a,b,c){var d=0;for(c=Math.min(a.length,c);b=f?d|f-49+10:17<=f&&22>=f?d|f-17+10:d|f&15;return d}function n(a,b,c,d){var f=0;for(c=Math.min(a.length,c);b>>26,h=k&67108863,k=Math.min(g,b.length-1),m=Math.max(0,g-a.length+1);m<=k;m++)f=a.words[g-m|0]|0,e=b.words[m]|0,f=f*e+h,l+=f/67108864|0,h=f&67108863;c.words[g]=h|0;k=l|0}0!==k?c.words[g]=k|0:c.length--;return c.strip()}function l(a,b){this.x=a;this.y=b}function p(a,b){this.name=a;this.p=new f(b,16);this.n=this.p.bitLength();this.k=(new f(1)).iushln(this.n).isub(this.p);this.tmp=this._tmp()}function r(){p.call(this, +"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function u(){p.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function w(){p.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function B(){p.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function q(a){"string"===typeof a?(a=f._prime(a),this.m=a.p,this.prime=a):(c(a.gtn(1),"modulus must be greater than 1"),this.m=a, +this.prime=null)}function z(a){q.call(this,a);this.shift=this.m.bitLength();0!==this.shift%26&&(this.shift+=26-this.shift%26);this.r=(new f(1)).iushln(this.shift);this.r2=this.imod(this.r.sqr());this.rinv=this.r._invmp(this.m);this.minv=this.rinv.mul(this.r).isubn(1).div(this.m);this.minv=this.minv.umod(this.r);this.minv=this.r.sub(this.minv)}"object"===typeof a?a.exports=f:b.BN=f;f.BN=f;f.wordSize=26;var D;try{D=h("buffer").Buffer}catch(C){}f.isBN=function(a){return a instanceof f?!0:null!==a&&"object"=== typeof a&&a.constructor.wordSize===f.wordSize&&Array.isArray(a.words)};f.max=function(a,b){return 0a.cmp(b)?a:b};f.prototype._init=function(a,b,d){if("number"===typeof a)return this._initNumber(a,b,d);if("object"===typeof a)return this._initArray(a,b,d);"hex"===b&&(b=16);c(b===(b|0)&&2<=b&&36>=b);a=a.toString().replace(/\s+/g,"");var f=0;"-"===a[0]&&f++;16===b?this._parseHex(a,f):this._parseBase(a,b,f);"-"===a[0]&&(this.negative=1);this.strip();"le"===d&& this._initArray(this.toArray(),b,d)};f.prototype._initNumber=function(a,b,d){0>a&&(this.negative=1,a=-a);67108864>a?(this.words=[a&67108863],this.length=1):4503599627370496>a?(this.words=[a&67108863,a/67108864&67108863],this.length=2):(c(9007199254740992>a),this.words=[a&67108863,a/67108864&67108863,1],this.length=3);"le"===d&&this._initArray(this.toArray(),b,d)};f.prototype._initArray=function(a,b,d){c("number"===typeof a.length);if(0>=a.length)return this.words=[0],this.length=1,this;this.length= Math.ceil(a.length/3);this.words=Array(this.length);for(b=0;b>>26-e&67108863,e+=24,26<=e&&(e-=26,d++);else if("le"===d)for(d=b=0;b>>26-e&67108863,e+=24,26<=e&&(e-=26,d++);return this.strip()};f.prototype._parseHex=function(a,b){this.length=Math.ceil((a.length- b)/6);this.words=Array(this.length);for(var c=0;c=b;c-=6)f=m(a,c,c+6),this.words[d]|=f<>>26-e&4194303,e+=24,26<=e&&(e-=26,d++);c+6!==b&&(f=m(a,b,c+6),this.words[d]|=f<>>26-e&4194303);this.strip()};f.prototype._parseBase=function(a,b,c){this.words=[0];this.length=1;for(var d=0,f=1;67108863>=f;f*=b)d++;d--;for(var f=f/b|0,e=a.length-c,k=e%d,e=Math.min(e,e-k)+c,g=c;gthis.words[0]+c?this.words[0]+=c:this._iaddn(c);if(0!==k){d=1;c=p(a,g,a.length,b);for(g=0;gthis.words[0]+c?this.words[0]+=c:this._iaddn(c)}};f.prototype.copy=function(a){a.words=Array(this.length);for(var b=0;bthis.words[0]+c?this.words[0]+=c:this._iaddn(c);if(0!==k){d=1;c=n(a,g,a.length,b);for(g=0;gthis.words[0]+c?this.words[0]+=c:this._iaddn(c)}};f.prototype.copy=function(a){a.words=Array(this.length);for(var b=0;b>>24-a&16777215;d=0!==f||e!==this.length-1?x[6-g.length]+g+d:g+d;a+=2;26<=a&&(a-=26,e--)}for(0!==f&&(d=f.toString(16)+d);0!==d.length%b;)d="0"+d;0!==this.negative&&(d="-"+d);return d}if(a===(a|0)&&2<=a&&36>=a){f=v[a];e=y[a];d="";k=this.clone();for(k.negative=0;!k.isZero();)g=k.modn(e).toString(a),k=k.idivn(e),d=k.isZero()?g+d:x[f-g.length]+g+d;for(this.isZero()&&(d="0"+d);0!==d.length%b;)d="0"+d;0!==this.negative&&(d="-"+d);return d}c(!1,"Base should be between 2 and 36")}; @@ -827,33 +827,33 @@ b.words[c];this.length=b.length;return this.strip()};f.prototype.ixor=function(a 67108863;0>26-a);return this.strip()};f.prototype.notn=function(a){return this.clone().inotn(a)};f.prototype.setn=function(a,b){c("number"===typeof a&&0<=a);var d=a/26|0;a%=26;this._expand(d+1);this.words[d]=b?this.words[d]|1<a.length?c=this:(c=a,a=this);for(var d=b=0;d>>=26;for(;0!==b&&d>>=26;this.length=c.length;if(0!==b)this.words[this.length]=b,this.length++;else if(c!==this)for(;da.length?this.clone().iadd(a):a.clone().iadd(this)};f.prototype.isub=function(a){if(0!==a.negative){a.negative=0;var b=this.iadd(a);a.negative=1;return b._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(a),this.negative=1,this._normSign();b=this.cmp(a);if(0===b)return this.negative=0,this.length=1,this.words[0]=0,this;var c;0>26,this.words[f]=b&67108863;for(;0!==d&&f>26,this.words[f]=b&67108863;if(0===d&&f>>13,p=d[1]|0,l=p&8191,n=p>>>13, -r=d[2]|0,p=r&8191,q=r>>>13,u=d[3]|0,r=u&8191,w=u>>>13,A=d[4]|0,u=A&8191,B=A>>>13,C=d[5]|0,A=C&8191,v=C>>>13,D=d[6]|0,C=D&8191,x=D>>>13,z=d[7]|0,D=z&8191,y=z>>>13,G=d[8]|0,z=G&8191,G=G>>>13,E=d[9]|0,d=E&8191,E=E>>>13,F=f[0]|0,fa=F&8191,ga=F>>>13,V=f[1]|0,F=V&8191,ha=V>>>13,W=f[2]|0,V=W&8191,ia=W>>>13,X=f[3]|0,W=X&8191,ja=X>>>13,Y=f[4]|0,X=Y&8191,ka=Y>>>13,Z=f[5]|0,Y=Z&8191,la=Z>>>13,aa=f[6]|0,Z=aa&8191,ma=aa>>>13,ba=f[7]|0,aa=ba&8191,na=ba>>>13,ca=f[8]|0,ba=ca&8191,ca=ca>>>13,da=f[9]|0,f=da&8191,da= -da>>>13;c.negative=a.negative^b.negative;c.length=19;g=Math.imul(h,fa);a=Math.imul(h,ga);a=a+Math.imul(m,fa)|0;b=Math.imul(m,ga);var ra=(k+g|0)+((a&8191)<<13)|0,k=(b+(a>>>13)|0)+(ra>>>26)|0,ra=ra&67108863;g=Math.imul(l,fa);a=Math.imul(l,ga);a=a+Math.imul(n,fa)|0;b=Math.imul(n,ga);g=g+Math.imul(h,F)|0;a=a+Math.imul(h,ha)|0;a=a+Math.imul(m,F)|0;b=b+Math.imul(m,ha)|0;var sa=(k+g|0)+((a&8191)<<13)|0,k=(b+(a>>>13)|0)+(sa>>>26)|0,sa=sa&67108863;g=Math.imul(p,fa);a=Math.imul(p,ga);a=a+Math.imul(q,fa)|0; -b=Math.imul(q,ga);g=g+Math.imul(l,F)|0;a=a+Math.imul(l,ha)|0;a=a+Math.imul(n,F)|0;b=b+Math.imul(n,ha)|0;g=g+Math.imul(h,V)|0;a=a+Math.imul(h,ia)|0;a=a+Math.imul(m,V)|0;b=b+Math.imul(m,ia)|0;var ta=(k+g|0)+((a&8191)<<13)|0,k=(b+(a>>>13)|0)+(ta>>>26)|0,ta=ta&67108863;g=Math.imul(r,fa);a=Math.imul(r,ga);a=a+Math.imul(w,fa)|0;b=Math.imul(w,ga);g=g+Math.imul(p,F)|0;a=a+Math.imul(p,ha)|0;a=a+Math.imul(q,F)|0;b=b+Math.imul(q,ha)|0;g=g+Math.imul(l,V)|0;a=a+Math.imul(l,ia)|0;a=a+Math.imul(n,V)|0;b=b+Math.imul(n, -ia)|0;g=g+Math.imul(h,W)|0;a=a+Math.imul(h,ja)|0;a=a+Math.imul(m,W)|0;b=b+Math.imul(m,ja)|0;var ua=(k+g|0)+((a&8191)<<13)|0,k=(b+(a>>>13)|0)+(ua>>>26)|0,ua=ua&67108863;g=Math.imul(u,fa);a=Math.imul(u,ga);a=a+Math.imul(B,fa)|0;b=Math.imul(B,ga);g=g+Math.imul(r,F)|0;a=a+Math.imul(r,ha)|0;a=a+Math.imul(w,F)|0;b=b+Math.imul(w,ha)|0;g=g+Math.imul(p,V)|0;a=a+Math.imul(p,ia)|0;a=a+Math.imul(q,V)|0;b=b+Math.imul(q,ia)|0;g=g+Math.imul(l,W)|0;a=a+Math.imul(l,ja)|0;a=a+Math.imul(n,W)|0;b=b+Math.imul(n,ja)|0; -g=g+Math.imul(h,X)|0;a=a+Math.imul(h,ka)|0;a=a+Math.imul(m,X)|0;b=b+Math.imul(m,ka)|0;var va=(k+g|0)+((a&8191)<<13)|0,k=(b+(a>>>13)|0)+(va>>>26)|0,va=va&67108863;g=Math.imul(A,fa);a=Math.imul(A,ga);a=a+Math.imul(v,fa)|0;b=Math.imul(v,ga);g=g+Math.imul(u,F)|0;a=a+Math.imul(u,ha)|0;a=a+Math.imul(B,F)|0;b=b+Math.imul(B,ha)|0;g=g+Math.imul(r,V)|0;a=a+Math.imul(r,ia)|0;a=a+Math.imul(w,V)|0;b=b+Math.imul(w,ia)|0;g=g+Math.imul(p,W)|0;a=a+Math.imul(p,ja)|0;a=a+Math.imul(q,W)|0;b=b+Math.imul(q,ja)|0;g=g+Math.imul(l, -X)|0;a=a+Math.imul(l,ka)|0;a=a+Math.imul(n,X)|0;b=b+Math.imul(n,ka)|0;g=g+Math.imul(h,Y)|0;a=a+Math.imul(h,la)|0;a=a+Math.imul(m,Y)|0;b=b+Math.imul(m,la)|0;var wa=(k+g|0)+((a&8191)<<13)|0,k=(b+(a>>>13)|0)+(wa>>>26)|0,wa=wa&67108863;g=Math.imul(C,fa);a=Math.imul(C,ga);a=a+Math.imul(x,fa)|0;b=Math.imul(x,ga);g=g+Math.imul(A,F)|0;a=a+Math.imul(A,ha)|0;a=a+Math.imul(v,F)|0;b=b+Math.imul(v,ha)|0;g=g+Math.imul(u,V)|0;a=a+Math.imul(u,ia)|0;a=a+Math.imul(B,V)|0;b=b+Math.imul(B,ia)|0;g=g+Math.imul(r,W)|0; -a=a+Math.imul(r,ja)|0;a=a+Math.imul(w,W)|0;b=b+Math.imul(w,ja)|0;g=g+Math.imul(p,X)|0;a=a+Math.imul(p,ka)|0;a=a+Math.imul(q,X)|0;b=b+Math.imul(q,ka)|0;g=g+Math.imul(l,Y)|0;a=a+Math.imul(l,la)|0;a=a+Math.imul(n,Y)|0;b=b+Math.imul(n,la)|0;g=g+Math.imul(h,Z)|0;a=a+Math.imul(h,ma)|0;a=a+Math.imul(m,Z)|0;b=b+Math.imul(m,ma)|0;var xa=(k+g|0)+((a&8191)<<13)|0,k=(b+(a>>>13)|0)+(xa>>>26)|0,xa=xa&67108863;g=Math.imul(D,fa);a=Math.imul(D,ga);a=a+Math.imul(y,fa)|0;b=Math.imul(y,ga);g=g+Math.imul(C,F)|0;a=a+Math.imul(C, -ha)|0;a=a+Math.imul(x,F)|0;b=b+Math.imul(x,ha)|0;g=g+Math.imul(A,V)|0;a=a+Math.imul(A,ia)|0;a=a+Math.imul(v,V)|0;b=b+Math.imul(v,ia)|0;g=g+Math.imul(u,W)|0;a=a+Math.imul(u,ja)|0;a=a+Math.imul(B,W)|0;b=b+Math.imul(B,ja)|0;g=g+Math.imul(r,X)|0;a=a+Math.imul(r,ka)|0;a=a+Math.imul(w,X)|0;b=b+Math.imul(w,ka)|0;g=g+Math.imul(p,Y)|0;a=a+Math.imul(p,la)|0;a=a+Math.imul(q,Y)|0;b=b+Math.imul(q,la)|0;g=g+Math.imul(l,Z)|0;a=a+Math.imul(l,ma)|0;a=a+Math.imul(n,Z)|0;b=b+Math.imul(n,ma)|0;g=g+Math.imul(h,aa)|0; -a=a+Math.imul(h,na)|0;a=a+Math.imul(m,aa)|0;b=b+Math.imul(m,na)|0;var ya=(k+g|0)+((a&8191)<<13)|0,k=(b+(a>>>13)|0)+(ya>>>26)|0,ya=ya&67108863;g=Math.imul(z,fa);a=Math.imul(z,ga);a=a+Math.imul(G,fa)|0;b=Math.imul(G,ga);g=g+Math.imul(D,F)|0;a=a+Math.imul(D,ha)|0;a=a+Math.imul(y,F)|0;b=b+Math.imul(y,ha)|0;g=g+Math.imul(C,V)|0;a=a+Math.imul(C,ia)|0;a=a+Math.imul(x,V)|0;b=b+Math.imul(x,ia)|0;g=g+Math.imul(A,W)|0;a=a+Math.imul(A,ja)|0;a=a+Math.imul(v,W)|0;b=b+Math.imul(v,ja)|0;g=g+Math.imul(u,X)|0;a=a+ -Math.imul(u,ka)|0;a=a+Math.imul(B,X)|0;b=b+Math.imul(B,ka)|0;g=g+Math.imul(r,Y)|0;a=a+Math.imul(r,la)|0;a=a+Math.imul(w,Y)|0;b=b+Math.imul(w,la)|0;g=g+Math.imul(p,Z)|0;a=a+Math.imul(p,ma)|0;a=a+Math.imul(q,Z)|0;b=b+Math.imul(q,ma)|0;g=g+Math.imul(l,aa)|0;a=a+Math.imul(l,na)|0;a=a+Math.imul(n,aa)|0;b=b+Math.imul(n,na)|0;g=g+Math.imul(h,ba)|0;a=a+Math.imul(h,ca)|0;a=a+Math.imul(m,ba)|0;b=b+Math.imul(m,ca)|0;var za=(k+g|0)+((a&8191)<<13)|0,k=(b+(a>>>13)|0)+(za>>>26)|0,za=za&67108863;g=Math.imul(d,fa); -a=Math.imul(d,ga);a=a+Math.imul(E,fa)|0;b=Math.imul(E,ga);g=g+Math.imul(z,F)|0;a=a+Math.imul(z,ha)|0;a=a+Math.imul(G,F)|0;b=b+Math.imul(G,ha)|0;g=g+Math.imul(D,V)|0;a=a+Math.imul(D,ia)|0;a=a+Math.imul(y,V)|0;b=b+Math.imul(y,ia)|0;g=g+Math.imul(C,W)|0;a=a+Math.imul(C,ja)|0;a=a+Math.imul(x,W)|0;b=b+Math.imul(x,ja)|0;g=g+Math.imul(A,X)|0;a=a+Math.imul(A,ka)|0;a=a+Math.imul(v,X)|0;b=b+Math.imul(v,ka)|0;g=g+Math.imul(u,Y)|0;a=a+Math.imul(u,la)|0;a=a+Math.imul(B,Y)|0;b=b+Math.imul(B,la)|0;g=g+Math.imul(r, -Z)|0;a=a+Math.imul(r,ma)|0;a=a+Math.imul(w,Z)|0;b=b+Math.imul(w,ma)|0;g=g+Math.imul(p,aa)|0;a=a+Math.imul(p,na)|0;a=a+Math.imul(q,aa)|0;b=b+Math.imul(q,na)|0;g=g+Math.imul(l,ba)|0;a=a+Math.imul(l,ca)|0;a=a+Math.imul(n,ba)|0;b=b+Math.imul(n,ca)|0;g=g+Math.imul(h,f)|0;a=a+Math.imul(h,da)|0;a=a+Math.imul(m,f)|0;b=b+Math.imul(m,da)|0;h=(k+g|0)+((a&8191)<<13)|0;k=(b+(a>>>13)|0)+(h>>>26)|0;h&=67108863;g=Math.imul(d,F);a=Math.imul(d,ha);a=a+Math.imul(E,F)|0;b=Math.imul(E,ha);g=g+Math.imul(z,V)|0;a=a+Math.imul(z, -ia)|0;a=a+Math.imul(G,V)|0;b=b+Math.imul(G,ia)|0;g=g+Math.imul(D,W)|0;a=a+Math.imul(D,ja)|0;a=a+Math.imul(y,W)|0;b=b+Math.imul(y,ja)|0;g=g+Math.imul(C,X)|0;a=a+Math.imul(C,ka)|0;a=a+Math.imul(x,X)|0;b=b+Math.imul(x,ka)|0;g=g+Math.imul(A,Y)|0;a=a+Math.imul(A,la)|0;a=a+Math.imul(v,Y)|0;b=b+Math.imul(v,la)|0;g=g+Math.imul(u,Z)|0;a=a+Math.imul(u,ma)|0;a=a+Math.imul(B,Z)|0;b=b+Math.imul(B,ma)|0;g=g+Math.imul(r,aa)|0;a=a+Math.imul(r,na)|0;a=a+Math.imul(w,aa)|0;b=b+Math.imul(w,na)|0;g=g+Math.imul(p,ba)| -0;a=a+Math.imul(p,ca)|0;a=a+Math.imul(q,ba)|0;b=b+Math.imul(q,ca)|0;g=g+Math.imul(l,f)|0;a=a+Math.imul(l,da)|0;a=a+Math.imul(n,f)|0;b=b+Math.imul(n,da)|0;l=(k+g|0)+((a&8191)<<13)|0;k=(b+(a>>>13)|0)+(l>>>26)|0;l&=67108863;g=Math.imul(d,V);a=Math.imul(d,ia);a=a+Math.imul(E,V)|0;b=Math.imul(E,ia);g=g+Math.imul(z,W)|0;a=a+Math.imul(z,ja)|0;a=a+Math.imul(G,W)|0;b=b+Math.imul(G,ja)|0;g=g+Math.imul(D,X)|0;a=a+Math.imul(D,ka)|0;a=a+Math.imul(y,X)|0;b=b+Math.imul(y,ka)|0;g=g+Math.imul(C,Y)|0;a=a+Math.imul(C, -la)|0;a=a+Math.imul(x,Y)|0;b=b+Math.imul(x,la)|0;g=g+Math.imul(A,Z)|0;a=a+Math.imul(A,ma)|0;a=a+Math.imul(v,Z)|0;b=b+Math.imul(v,ma)|0;g=g+Math.imul(u,aa)|0;a=a+Math.imul(u,na)|0;a=a+Math.imul(B,aa)|0;b=b+Math.imul(B,na)|0;g=g+Math.imul(r,ba)|0;a=a+Math.imul(r,ca)|0;a=a+Math.imul(w,ba)|0;b=b+Math.imul(w,ca)|0;g=g+Math.imul(p,f)|0;a=a+Math.imul(p,da)|0;a=a+Math.imul(q,f)|0;b=b+Math.imul(q,da)|0;p=(k+g|0)+((a&8191)<<13)|0;k=(b+(a>>>13)|0)+(p>>>26)|0;p&=67108863;g=Math.imul(d,W);a=Math.imul(d,ja);a= -a+Math.imul(E,W)|0;b=Math.imul(E,ja);g=g+Math.imul(z,X)|0;a=a+Math.imul(z,ka)|0;a=a+Math.imul(G,X)|0;b=b+Math.imul(G,ka)|0;g=g+Math.imul(D,Y)|0;a=a+Math.imul(D,la)|0;a=a+Math.imul(y,Y)|0;b=b+Math.imul(y,la)|0;g=g+Math.imul(C,Z)|0;a=a+Math.imul(C,ma)|0;a=a+Math.imul(x,Z)|0;b=b+Math.imul(x,ma)|0;g=g+Math.imul(A,aa)|0;a=a+Math.imul(A,na)|0;a=a+Math.imul(v,aa)|0;b=b+Math.imul(v,na)|0;g=g+Math.imul(u,ba)|0;a=a+Math.imul(u,ca)|0;a=a+Math.imul(B,ba)|0;b=b+Math.imul(B,ca)|0;g=g+Math.imul(r,f)|0;a=a+Math.imul(r, -da)|0;a=a+Math.imul(w,f)|0;b=b+Math.imul(w,da)|0;r=(k+g|0)+((a&8191)<<13)|0;k=(b+(a>>>13)|0)+(r>>>26)|0;r&=67108863;g=Math.imul(d,X);a=Math.imul(d,ka);a=a+Math.imul(E,X)|0;b=Math.imul(E,ka);g=g+Math.imul(z,Y)|0;a=a+Math.imul(z,la)|0;a=a+Math.imul(G,Y)|0;b=b+Math.imul(G,la)|0;g=g+Math.imul(D,Z)|0;a=a+Math.imul(D,ma)|0;a=a+Math.imul(y,Z)|0;b=b+Math.imul(y,ma)|0;g=g+Math.imul(C,aa)|0;a=a+Math.imul(C,na)|0;a=a+Math.imul(x,aa)|0;b=b+Math.imul(x,na)|0;g=g+Math.imul(A,ba)|0;a=a+Math.imul(A,ca)|0;a=a+Math.imul(v, -ba)|0;b=b+Math.imul(v,ca)|0;g=g+Math.imul(u,f)|0;a=a+Math.imul(u,da)|0;a=a+Math.imul(B,f)|0;b=b+Math.imul(B,da)|0;u=(k+g|0)+((a&8191)<<13)|0;k=(b+(a>>>13)|0)+(u>>>26)|0;u&=67108863;g=Math.imul(d,Y);a=Math.imul(d,la);a=a+Math.imul(E,Y)|0;b=Math.imul(E,la);g=g+Math.imul(z,Z)|0;a=a+Math.imul(z,ma)|0;a=a+Math.imul(G,Z)|0;b=b+Math.imul(G,ma)|0;g=g+Math.imul(D,aa)|0;a=a+Math.imul(D,na)|0;a=a+Math.imul(y,aa)|0;b=b+Math.imul(y,na)|0;g=g+Math.imul(C,ba)|0;a=a+Math.imul(C,ca)|0;a=a+Math.imul(x,ba)|0;b=b+Math.imul(x, -ca)|0;g=g+Math.imul(A,f)|0;a=a+Math.imul(A,da)|0;a=a+Math.imul(v,f)|0;b=b+Math.imul(v,da)|0;A=(k+g|0)+((a&8191)<<13)|0;k=(b+(a>>>13)|0)+(A>>>26)|0;A&=67108863;g=Math.imul(d,Z);a=Math.imul(d,ma);a=a+Math.imul(E,Z)|0;b=Math.imul(E,ma);g=g+Math.imul(z,aa)|0;a=a+Math.imul(z,na)|0;a=a+Math.imul(G,aa)|0;b=b+Math.imul(G,na)|0;g=g+Math.imul(D,ba)|0;a=a+Math.imul(D,ca)|0;a=a+Math.imul(y,ba)|0;b=b+Math.imul(y,ca)|0;g=g+Math.imul(C,f)|0;a=a+Math.imul(C,da)|0;a=a+Math.imul(x,f)|0;b=b+Math.imul(x,da)|0;C=(k+g| -0)+((a&8191)<<13)|0;k=(b+(a>>>13)|0)+(C>>>26)|0;C&=67108863;g=Math.imul(d,aa);a=Math.imul(d,na);a=a+Math.imul(E,aa)|0;b=Math.imul(E,na);g=g+Math.imul(z,ba)|0;a=a+Math.imul(z,ca)|0;a=a+Math.imul(G,ba)|0;b=b+Math.imul(G,ca)|0;g=g+Math.imul(D,f)|0;a=a+Math.imul(D,da)|0;a=a+Math.imul(y,f)|0;b=b+Math.imul(y,da)|0;D=(k+g|0)+((a&8191)<<13)|0;k=(b+(a>>>13)|0)+(D>>>26)|0;D&=67108863;g=Math.imul(d,ba);a=Math.imul(d,ca);a=a+Math.imul(E,ba)|0;b=Math.imul(E,ca);g=g+Math.imul(z,f)|0;a=a+Math.imul(z,da)|0;a=a+Math.imul(G, -f)|0;b=b+Math.imul(G,da)|0;z=(k+g|0)+((a&8191)<<13)|0;k=(b+(a>>>13)|0)+(z>>>26)|0;z&=67108863;g=Math.imul(d,f);a=Math.imul(d,da);a=a+Math.imul(E,f)|0;b=Math.imul(E,da);m=(k+g|0)+((a&8191)<<13)|0;k=(b+(a>>>13)|0)+(m>>>26)|0;e[0]=ra;e[1]=sa;e[2]=ta;e[3]=ua;e[4]=va;e[5]=wa;e[6]=xa;e[7]=ya;e[8]=za;e[9]=h;e[10]=l;e[11]=p;e[12]=r;e[13]=u;e[14]=A;e[15]=C;e[16]=D;e[17]=z;e[18]=m&67108863;0!==k&&(e[19]=k,c.length++);return c};Math.imul||(z=d);f.prototype.mulTo=function(a,b){var c=this.length+a.length;if(10=== -this.length&&10===a.length)a=z(this,a,b);else if(63>c)a=d(this,a,b);else if(1024>c){b.negative=a.negative^this.negative;b.length=this.length+a.length;for(var f=0,e=c=0;e>>26)|0,c=c+(g>>>26),g=g&67108863;b.words[e]=f;f=g}0!==f?b.words[e]=f:b.length--;a=b.strip()}else a=(new l).mulp(this,a, +0,f=0;f>26,this.words[f]=b&67108863;for(;0!==d&&f>26,this.words[f]=b&67108863;if(0===d&&f>>13,n=d[1]|0,l=n&8191,p=n>>>13, +r=d[2]|0,n=r&8191,q=r>>>13,u=d[3]|0,r=u&8191,w=u>>>13,z=d[4]|0,u=z&8191,B=z>>>13,C=d[5]|0,z=C&8191,v=C>>>13,D=d[6]|0,C=D&8191,x=D>>>13,y=d[7]|0,D=y&8191,A=y>>>13,G=d[8]|0,y=G&8191,G=G>>>13,E=d[9]|0,d=E&8191,E=E>>>13,F=f[0]|0,fa=F&8191,ga=F>>>13,V=f[1]|0,F=V&8191,ha=V>>>13,W=f[2]|0,V=W&8191,ia=W>>>13,X=f[3]|0,W=X&8191,ja=X>>>13,Y=f[4]|0,X=Y&8191,ka=Y>>>13,Z=f[5]|0,Y=Z&8191,la=Z>>>13,aa=f[6]|0,Z=aa&8191,ma=aa>>>13,ba=f[7]|0,aa=ba&8191,na=ba>>>13,ca=f[8]|0,ba=ca&8191,ca=ca>>>13,da=f[9]|0,f=da&8191,da= +da>>>13;c.negative=a.negative^b.negative;c.length=19;g=Math.imul(h,fa);a=Math.imul(h,ga);a=a+Math.imul(m,fa)|0;b=Math.imul(m,ga);var ra=(k+g|0)+((a&8191)<<13)|0,k=(b+(a>>>13)|0)+(ra>>>26)|0,ra=ra&67108863;g=Math.imul(l,fa);a=Math.imul(l,ga);a=a+Math.imul(p,fa)|0;b=Math.imul(p,ga);g=g+Math.imul(h,F)|0;a=a+Math.imul(h,ha)|0;a=a+Math.imul(m,F)|0;b=b+Math.imul(m,ha)|0;var sa=(k+g|0)+((a&8191)<<13)|0,k=(b+(a>>>13)|0)+(sa>>>26)|0,sa=sa&67108863;g=Math.imul(n,fa);a=Math.imul(n,ga);a=a+Math.imul(q,fa)|0; +b=Math.imul(q,ga);g=g+Math.imul(l,F)|0;a=a+Math.imul(l,ha)|0;a=a+Math.imul(p,F)|0;b=b+Math.imul(p,ha)|0;g=g+Math.imul(h,V)|0;a=a+Math.imul(h,ia)|0;a=a+Math.imul(m,V)|0;b=b+Math.imul(m,ia)|0;var ta=(k+g|0)+((a&8191)<<13)|0,k=(b+(a>>>13)|0)+(ta>>>26)|0,ta=ta&67108863;g=Math.imul(r,fa);a=Math.imul(r,ga);a=a+Math.imul(w,fa)|0;b=Math.imul(w,ga);g=g+Math.imul(n,F)|0;a=a+Math.imul(n,ha)|0;a=a+Math.imul(q,F)|0;b=b+Math.imul(q,ha)|0;g=g+Math.imul(l,V)|0;a=a+Math.imul(l,ia)|0;a=a+Math.imul(p,V)|0;b=b+Math.imul(p, +ia)|0;g=g+Math.imul(h,W)|0;a=a+Math.imul(h,ja)|0;a=a+Math.imul(m,W)|0;b=b+Math.imul(m,ja)|0;var ua=(k+g|0)+((a&8191)<<13)|0,k=(b+(a>>>13)|0)+(ua>>>26)|0,ua=ua&67108863;g=Math.imul(u,fa);a=Math.imul(u,ga);a=a+Math.imul(B,fa)|0;b=Math.imul(B,ga);g=g+Math.imul(r,F)|0;a=a+Math.imul(r,ha)|0;a=a+Math.imul(w,F)|0;b=b+Math.imul(w,ha)|0;g=g+Math.imul(n,V)|0;a=a+Math.imul(n,ia)|0;a=a+Math.imul(q,V)|0;b=b+Math.imul(q,ia)|0;g=g+Math.imul(l,W)|0;a=a+Math.imul(l,ja)|0;a=a+Math.imul(p,W)|0;b=b+Math.imul(p,ja)|0; +g=g+Math.imul(h,X)|0;a=a+Math.imul(h,ka)|0;a=a+Math.imul(m,X)|0;b=b+Math.imul(m,ka)|0;var va=(k+g|0)+((a&8191)<<13)|0,k=(b+(a>>>13)|0)+(va>>>26)|0,va=va&67108863;g=Math.imul(z,fa);a=Math.imul(z,ga);a=a+Math.imul(v,fa)|0;b=Math.imul(v,ga);g=g+Math.imul(u,F)|0;a=a+Math.imul(u,ha)|0;a=a+Math.imul(B,F)|0;b=b+Math.imul(B,ha)|0;g=g+Math.imul(r,V)|0;a=a+Math.imul(r,ia)|0;a=a+Math.imul(w,V)|0;b=b+Math.imul(w,ia)|0;g=g+Math.imul(n,W)|0;a=a+Math.imul(n,ja)|0;a=a+Math.imul(q,W)|0;b=b+Math.imul(q,ja)|0;g=g+Math.imul(l, +X)|0;a=a+Math.imul(l,ka)|0;a=a+Math.imul(p,X)|0;b=b+Math.imul(p,ka)|0;g=g+Math.imul(h,Y)|0;a=a+Math.imul(h,la)|0;a=a+Math.imul(m,Y)|0;b=b+Math.imul(m,la)|0;var wa=(k+g|0)+((a&8191)<<13)|0,k=(b+(a>>>13)|0)+(wa>>>26)|0,wa=wa&67108863;g=Math.imul(C,fa);a=Math.imul(C,ga);a=a+Math.imul(x,fa)|0;b=Math.imul(x,ga);g=g+Math.imul(z,F)|0;a=a+Math.imul(z,ha)|0;a=a+Math.imul(v,F)|0;b=b+Math.imul(v,ha)|0;g=g+Math.imul(u,V)|0;a=a+Math.imul(u,ia)|0;a=a+Math.imul(B,V)|0;b=b+Math.imul(B,ia)|0;g=g+Math.imul(r,W)|0; +a=a+Math.imul(r,ja)|0;a=a+Math.imul(w,W)|0;b=b+Math.imul(w,ja)|0;g=g+Math.imul(n,X)|0;a=a+Math.imul(n,ka)|0;a=a+Math.imul(q,X)|0;b=b+Math.imul(q,ka)|0;g=g+Math.imul(l,Y)|0;a=a+Math.imul(l,la)|0;a=a+Math.imul(p,Y)|0;b=b+Math.imul(p,la)|0;g=g+Math.imul(h,Z)|0;a=a+Math.imul(h,ma)|0;a=a+Math.imul(m,Z)|0;b=b+Math.imul(m,ma)|0;var xa=(k+g|0)+((a&8191)<<13)|0,k=(b+(a>>>13)|0)+(xa>>>26)|0,xa=xa&67108863;g=Math.imul(D,fa);a=Math.imul(D,ga);a=a+Math.imul(A,fa)|0;b=Math.imul(A,ga);g=g+Math.imul(C,F)|0;a=a+Math.imul(C, +ha)|0;a=a+Math.imul(x,F)|0;b=b+Math.imul(x,ha)|0;g=g+Math.imul(z,V)|0;a=a+Math.imul(z,ia)|0;a=a+Math.imul(v,V)|0;b=b+Math.imul(v,ia)|0;g=g+Math.imul(u,W)|0;a=a+Math.imul(u,ja)|0;a=a+Math.imul(B,W)|0;b=b+Math.imul(B,ja)|0;g=g+Math.imul(r,X)|0;a=a+Math.imul(r,ka)|0;a=a+Math.imul(w,X)|0;b=b+Math.imul(w,ka)|0;g=g+Math.imul(n,Y)|0;a=a+Math.imul(n,la)|0;a=a+Math.imul(q,Y)|0;b=b+Math.imul(q,la)|0;g=g+Math.imul(l,Z)|0;a=a+Math.imul(l,ma)|0;a=a+Math.imul(p,Z)|0;b=b+Math.imul(p,ma)|0;g=g+Math.imul(h,aa)|0; +a=a+Math.imul(h,na)|0;a=a+Math.imul(m,aa)|0;b=b+Math.imul(m,na)|0;var ya=(k+g|0)+((a&8191)<<13)|0,k=(b+(a>>>13)|0)+(ya>>>26)|0,ya=ya&67108863;g=Math.imul(y,fa);a=Math.imul(y,ga);a=a+Math.imul(G,fa)|0;b=Math.imul(G,ga);g=g+Math.imul(D,F)|0;a=a+Math.imul(D,ha)|0;a=a+Math.imul(A,F)|0;b=b+Math.imul(A,ha)|0;g=g+Math.imul(C,V)|0;a=a+Math.imul(C,ia)|0;a=a+Math.imul(x,V)|0;b=b+Math.imul(x,ia)|0;g=g+Math.imul(z,W)|0;a=a+Math.imul(z,ja)|0;a=a+Math.imul(v,W)|0;b=b+Math.imul(v,ja)|0;g=g+Math.imul(u,X)|0;a=a+ +Math.imul(u,ka)|0;a=a+Math.imul(B,X)|0;b=b+Math.imul(B,ka)|0;g=g+Math.imul(r,Y)|0;a=a+Math.imul(r,la)|0;a=a+Math.imul(w,Y)|0;b=b+Math.imul(w,la)|0;g=g+Math.imul(n,Z)|0;a=a+Math.imul(n,ma)|0;a=a+Math.imul(q,Z)|0;b=b+Math.imul(q,ma)|0;g=g+Math.imul(l,aa)|0;a=a+Math.imul(l,na)|0;a=a+Math.imul(p,aa)|0;b=b+Math.imul(p,na)|0;g=g+Math.imul(h,ba)|0;a=a+Math.imul(h,ca)|0;a=a+Math.imul(m,ba)|0;b=b+Math.imul(m,ca)|0;var za=(k+g|0)+((a&8191)<<13)|0,k=(b+(a>>>13)|0)+(za>>>26)|0,za=za&67108863;g=Math.imul(d,fa); +a=Math.imul(d,ga);a=a+Math.imul(E,fa)|0;b=Math.imul(E,ga);g=g+Math.imul(y,F)|0;a=a+Math.imul(y,ha)|0;a=a+Math.imul(G,F)|0;b=b+Math.imul(G,ha)|0;g=g+Math.imul(D,V)|0;a=a+Math.imul(D,ia)|0;a=a+Math.imul(A,V)|0;b=b+Math.imul(A,ia)|0;g=g+Math.imul(C,W)|0;a=a+Math.imul(C,ja)|0;a=a+Math.imul(x,W)|0;b=b+Math.imul(x,ja)|0;g=g+Math.imul(z,X)|0;a=a+Math.imul(z,ka)|0;a=a+Math.imul(v,X)|0;b=b+Math.imul(v,ka)|0;g=g+Math.imul(u,Y)|0;a=a+Math.imul(u,la)|0;a=a+Math.imul(B,Y)|0;b=b+Math.imul(B,la)|0;g=g+Math.imul(r, +Z)|0;a=a+Math.imul(r,ma)|0;a=a+Math.imul(w,Z)|0;b=b+Math.imul(w,ma)|0;g=g+Math.imul(n,aa)|0;a=a+Math.imul(n,na)|0;a=a+Math.imul(q,aa)|0;b=b+Math.imul(q,na)|0;g=g+Math.imul(l,ba)|0;a=a+Math.imul(l,ca)|0;a=a+Math.imul(p,ba)|0;b=b+Math.imul(p,ca)|0;g=g+Math.imul(h,f)|0;a=a+Math.imul(h,da)|0;a=a+Math.imul(m,f)|0;b=b+Math.imul(m,da)|0;h=(k+g|0)+((a&8191)<<13)|0;k=(b+(a>>>13)|0)+(h>>>26)|0;h&=67108863;g=Math.imul(d,F);a=Math.imul(d,ha);a=a+Math.imul(E,F)|0;b=Math.imul(E,ha);g=g+Math.imul(y,V)|0;a=a+Math.imul(y, +ia)|0;a=a+Math.imul(G,V)|0;b=b+Math.imul(G,ia)|0;g=g+Math.imul(D,W)|0;a=a+Math.imul(D,ja)|0;a=a+Math.imul(A,W)|0;b=b+Math.imul(A,ja)|0;g=g+Math.imul(C,X)|0;a=a+Math.imul(C,ka)|0;a=a+Math.imul(x,X)|0;b=b+Math.imul(x,ka)|0;g=g+Math.imul(z,Y)|0;a=a+Math.imul(z,la)|0;a=a+Math.imul(v,Y)|0;b=b+Math.imul(v,la)|0;g=g+Math.imul(u,Z)|0;a=a+Math.imul(u,ma)|0;a=a+Math.imul(B,Z)|0;b=b+Math.imul(B,ma)|0;g=g+Math.imul(r,aa)|0;a=a+Math.imul(r,na)|0;a=a+Math.imul(w,aa)|0;b=b+Math.imul(w,na)|0;g=g+Math.imul(n,ba)| +0;a=a+Math.imul(n,ca)|0;a=a+Math.imul(q,ba)|0;b=b+Math.imul(q,ca)|0;g=g+Math.imul(l,f)|0;a=a+Math.imul(l,da)|0;a=a+Math.imul(p,f)|0;b=b+Math.imul(p,da)|0;l=(k+g|0)+((a&8191)<<13)|0;k=(b+(a>>>13)|0)+(l>>>26)|0;l&=67108863;g=Math.imul(d,V);a=Math.imul(d,ia);a=a+Math.imul(E,V)|0;b=Math.imul(E,ia);g=g+Math.imul(y,W)|0;a=a+Math.imul(y,ja)|0;a=a+Math.imul(G,W)|0;b=b+Math.imul(G,ja)|0;g=g+Math.imul(D,X)|0;a=a+Math.imul(D,ka)|0;a=a+Math.imul(A,X)|0;b=b+Math.imul(A,ka)|0;g=g+Math.imul(C,Y)|0;a=a+Math.imul(C, +la)|0;a=a+Math.imul(x,Y)|0;b=b+Math.imul(x,la)|0;g=g+Math.imul(z,Z)|0;a=a+Math.imul(z,ma)|0;a=a+Math.imul(v,Z)|0;b=b+Math.imul(v,ma)|0;g=g+Math.imul(u,aa)|0;a=a+Math.imul(u,na)|0;a=a+Math.imul(B,aa)|0;b=b+Math.imul(B,na)|0;g=g+Math.imul(r,ba)|0;a=a+Math.imul(r,ca)|0;a=a+Math.imul(w,ba)|0;b=b+Math.imul(w,ca)|0;g=g+Math.imul(n,f)|0;a=a+Math.imul(n,da)|0;a=a+Math.imul(q,f)|0;b=b+Math.imul(q,da)|0;n=(k+g|0)+((a&8191)<<13)|0;k=(b+(a>>>13)|0)+(n>>>26)|0;n&=67108863;g=Math.imul(d,W);a=Math.imul(d,ja);a= +a+Math.imul(E,W)|0;b=Math.imul(E,ja);g=g+Math.imul(y,X)|0;a=a+Math.imul(y,ka)|0;a=a+Math.imul(G,X)|0;b=b+Math.imul(G,ka)|0;g=g+Math.imul(D,Y)|0;a=a+Math.imul(D,la)|0;a=a+Math.imul(A,Y)|0;b=b+Math.imul(A,la)|0;g=g+Math.imul(C,Z)|0;a=a+Math.imul(C,ma)|0;a=a+Math.imul(x,Z)|0;b=b+Math.imul(x,ma)|0;g=g+Math.imul(z,aa)|0;a=a+Math.imul(z,na)|0;a=a+Math.imul(v,aa)|0;b=b+Math.imul(v,na)|0;g=g+Math.imul(u,ba)|0;a=a+Math.imul(u,ca)|0;a=a+Math.imul(B,ba)|0;b=b+Math.imul(B,ca)|0;g=g+Math.imul(r,f)|0;a=a+Math.imul(r, +da)|0;a=a+Math.imul(w,f)|0;b=b+Math.imul(w,da)|0;r=(k+g|0)+((a&8191)<<13)|0;k=(b+(a>>>13)|0)+(r>>>26)|0;r&=67108863;g=Math.imul(d,X);a=Math.imul(d,ka);a=a+Math.imul(E,X)|0;b=Math.imul(E,ka);g=g+Math.imul(y,Y)|0;a=a+Math.imul(y,la)|0;a=a+Math.imul(G,Y)|0;b=b+Math.imul(G,la)|0;g=g+Math.imul(D,Z)|0;a=a+Math.imul(D,ma)|0;a=a+Math.imul(A,Z)|0;b=b+Math.imul(A,ma)|0;g=g+Math.imul(C,aa)|0;a=a+Math.imul(C,na)|0;a=a+Math.imul(x,aa)|0;b=b+Math.imul(x,na)|0;g=g+Math.imul(z,ba)|0;a=a+Math.imul(z,ca)|0;a=a+Math.imul(v, +ba)|0;b=b+Math.imul(v,ca)|0;g=g+Math.imul(u,f)|0;a=a+Math.imul(u,da)|0;a=a+Math.imul(B,f)|0;b=b+Math.imul(B,da)|0;u=(k+g|0)+((a&8191)<<13)|0;k=(b+(a>>>13)|0)+(u>>>26)|0;u&=67108863;g=Math.imul(d,Y);a=Math.imul(d,la);a=a+Math.imul(E,Y)|0;b=Math.imul(E,la);g=g+Math.imul(y,Z)|0;a=a+Math.imul(y,ma)|0;a=a+Math.imul(G,Z)|0;b=b+Math.imul(G,ma)|0;g=g+Math.imul(D,aa)|0;a=a+Math.imul(D,na)|0;a=a+Math.imul(A,aa)|0;b=b+Math.imul(A,na)|0;g=g+Math.imul(C,ba)|0;a=a+Math.imul(C,ca)|0;a=a+Math.imul(x,ba)|0;b=b+Math.imul(x, +ca)|0;g=g+Math.imul(z,f)|0;a=a+Math.imul(z,da)|0;a=a+Math.imul(v,f)|0;b=b+Math.imul(v,da)|0;z=(k+g|0)+((a&8191)<<13)|0;k=(b+(a>>>13)|0)+(z>>>26)|0;z&=67108863;g=Math.imul(d,Z);a=Math.imul(d,ma);a=a+Math.imul(E,Z)|0;b=Math.imul(E,ma);g=g+Math.imul(y,aa)|0;a=a+Math.imul(y,na)|0;a=a+Math.imul(G,aa)|0;b=b+Math.imul(G,na)|0;g=g+Math.imul(D,ba)|0;a=a+Math.imul(D,ca)|0;a=a+Math.imul(A,ba)|0;b=b+Math.imul(A,ca)|0;g=g+Math.imul(C,f)|0;a=a+Math.imul(C,da)|0;a=a+Math.imul(x,f)|0;b=b+Math.imul(x,da)|0;C=(k+g| +0)+((a&8191)<<13)|0;k=(b+(a>>>13)|0)+(C>>>26)|0;C&=67108863;g=Math.imul(d,aa);a=Math.imul(d,na);a=a+Math.imul(E,aa)|0;b=Math.imul(E,na);g=g+Math.imul(y,ba)|0;a=a+Math.imul(y,ca)|0;a=a+Math.imul(G,ba)|0;b=b+Math.imul(G,ca)|0;g=g+Math.imul(D,f)|0;a=a+Math.imul(D,da)|0;a=a+Math.imul(A,f)|0;b=b+Math.imul(A,da)|0;D=(k+g|0)+((a&8191)<<13)|0;k=(b+(a>>>13)|0)+(D>>>26)|0;D&=67108863;g=Math.imul(d,ba);a=Math.imul(d,ca);a=a+Math.imul(E,ba)|0;b=Math.imul(E,ca);g=g+Math.imul(y,f)|0;a=a+Math.imul(y,da)|0;a=a+Math.imul(G, +f)|0;b=b+Math.imul(G,da)|0;y=(k+g|0)+((a&8191)<<13)|0;k=(b+(a>>>13)|0)+(y>>>26)|0;y&=67108863;g=Math.imul(d,f);a=Math.imul(d,da);a=a+Math.imul(E,f)|0;b=Math.imul(E,da);m=(k+g|0)+((a&8191)<<13)|0;k=(b+(a>>>13)|0)+(m>>>26)|0;e[0]=ra;e[1]=sa;e[2]=ta;e[3]=ua;e[4]=va;e[5]=wa;e[6]=xa;e[7]=ya;e[8]=za;e[9]=h;e[10]=l;e[11]=n;e[12]=r;e[13]=u;e[14]=z;e[15]=C;e[16]=D;e[17]=y;e[18]=m&67108863;0!==k&&(e[19]=k,c.length++);return c};Math.imul||(A=d);f.prototype.mulTo=function(a,b){var c=this.length+a.length;if(10=== +this.length&&10===a.length)a=A(this,a,b);else if(63>c)a=d(this,a,b);else if(1024>c){b.negative=a.negative^this.negative;b.length=this.length+a.length;for(var f=0,e=c=0;e>>26)|0,c=c+(g>>>26),g=g&67108863;b.words[e]=f;f=g}0!==f?b.words[e]=f:b.length--;a=b.strip()}else a=(new l).mulp(this,a, b);return a};l.prototype.makeRBT=function(a){for(var b=Array(a),c=f.prototype._countBits(a)-1,d=0;d>=1;return c};l.prototype.permute=function(a,b,c,d,f,e){for(var g=0;g>>=1)c++;return 1<=c))for(var d=0;d>>=1)c++;return 1<=c))for(var d=0;dc?0:c/67108864|0;return a};l.prototype.convert13b=function(a,b,d,f){for(var e=0,g=0;g>>=13,d[2*g+1]=e&8191,e>>>=13;for(g=2*b;ga);for(var b=0,d=0;d>26,b=b+(f/67108864|0),b=b+(e>>>26);this.words[d]=e&67108863}0!==b&&(this.words[d]=b,this.length++);return this};f.prototype.muln= function(a){return this.clone().imuln(a)};f.prototype.sqr=function(){return this.mul(this)};f.prototype.isqr=function(){return this.imul(this.clone())};f.prototype.pow=function(a){for(var b=Array(a.bitLength()),c=0;c>>d}if(0===b.length)return new f(1);a=this;for(c=0;c>>26-b<<26-b,f;if(0!==b){var e=0;for(f=0;f>>26-b}e&&(this.words[f]=e,this.length++)}if(0!==a){for(f=this.length-1;0<=f;f--)this.words[f+a]=this.words[f];for(f=0;fthis.length||0>this.cmp(a)?{div:new f(0),mod:this}:1===a.length?"div"===b?{div:this.divn(a.words[0]),mod:null}:"mod"===b?{div:null,mod:new f(this.modn(a.words[0]))}:{div:this.divn(a.words[0]),mod:new f(this.modn(a.words[0]))}:this._wordDiv(a,b)};f.prototype.div=function(a){return this.divmod(a,"div",!1).div};f.prototype.mod=function(a){return this.divmod(a,"mod",!1).mod};f.prototype.umod=function(a){return this.divmod(a,"mod", !0).mod};f.prototype.divRound=function(a){var b=this.divmod(a);if(b.mod.isZero())return b.div;var c=0!==b.div.negative?b.mod.isub(a):b.mod,d=a.ushrn(1);a=a.andln(1);c=c.cmp(d);return 0>c||1===a&&0===c?b.div:0!==b.div.negative?b.div.isubn(1):b.div.iaddn(1)};f.prototype.modn=function(a){c(67108863>=a);for(var b=67108864%a,d=0,f=this.length-1;0<=f;f--)d=(b*d+(this.words[f]|0))%a;return d};f.prototype.idivn=function(a){c(67108863>=a);for(var b=0,d=this.length-1;0<=d;d--)b=(this.words[d]|0)+67108864*b, -this.words[d]=b/a|0,b%=a;return this.strip()};f.prototype.divn=function(a){return this.clone().idivn(a)};f.prototype.egcd=function(a){c(0===a.negative);c(!a.isZero());var b=this,d=a.clone(),b=0!==b.negative?b.umod(a):b.clone();a=new f(1);for(var e=new f(0),g=new f(0),k=new f(1),l=0;b.isEven()&&d.isEven();)b.iushrn(1),d.iushrn(1),++l;for(var h=d.clone(),m=b.clone();!b.isZero();){for(var p=0,n=1;0===(b.words[0]&n)&&26>p;++p,n<<=1);if(0p;++p,n<<=1);if(0n;++n,p<<=1);if(0n;++n,p<<=1);if(0l;++l,h<<=1);if(0l;++l,h<<=1);if(0b.cmpn(0)&&b.iadd(a);return b};f.prototype.gcd=function(a){if(this.isZero())return a.abs();if(a.isZero())return this.abs();var b=this.clone();a=a.clone();b.negative=0;for(var c=a.negative=0;b.isEven()&&a.isEven();c++)b.iushrn(1), a.iushrn(1);do{for(;b.isEven();)b.iushrn(1);for(;a.isEven();)a.iushrn(1);var d=b.cmp(a);if(0>d)d=b,b=a,a=d;else if(0===d||0===a.cmpn(1))break;b.isub(a)}while(1);return a.iushln(c)};f.prototype.invm=function(a){return this.egcd(a).a.umod(a)};f.prototype.isEven=function(){return 0===(this.words[0]&1)};f.prototype.isOdd=function(){return 1===(this.words[0]&1)};f.prototype.andln=function(a){return this.words[0]&a};f.prototype.bincn=function(a){c("number"===typeof a);var b=a%26;a=(a-b)/26;b=1<>>26,d=d&67108863;this.words[a]=d}0!==b&&(this.words[a]=b,this.length++);return this};f.prototype.isZero=function(){return 1===this.length&&0===this.words[0]};f.prototype.cmpn=function(a){var b=0>a;if(0!==this.negative&&!b)return-1;if(0===this.negative&&b)return 1;this.strip();1=a,"Number is too big"),b=this.words[0]|0,a=b===a?0:bthis.n);b=bthis.n);b=b=a.length)a.words[0]=0,a.length=1;else{c=a.words[9];b.words[b.length++]=c&4194303;for(d=10;d>>22,c=b;c>>>=22;a.words[d-10]=c;a.length=0===c&&10>>26;a.words[c]=d}0!==b&&(a.words[a.length++]=b);return a};f._prime=function(a){if(F[a])return F[a];var b;if("k256"===a)b=new r;else if("p224"===a)b=new u;else if("p192"===a)b=new w;else if("p25519"===a)b=new B;else throw Error("Unknown prime "+a);return F[a]=b};q.prototype._verify1=function(a){c(0===a.negative,"red works only with positives");c(a.red, +1]&&a.length--);return a};e(u,p);e(w,p);e(B,p);B.prototype.imulK=function(a){for(var b=0,c=0;c>>26;a.words[c]=d}0!==b&&(a.words[a.length++]=b);return a};f._prime=function(a){if(F[a])return F[a];var b;if("k256"===a)b=new r;else if("p224"===a)b=new u;else if("p192"===a)b=new w;else if("p25519"===a)b=new B;else throw Error("Unknown prime "+a);return F[a]=b};q.prototype._verify1=function(a){c(0===a.negative,"red works only with positives");c(a.red, "red works only with red numbers")};q.prototype._verify2=function(a,b){c(0===(a.negative|b.negative),"red works only with positives");c(a.red&&a.red===b.red,"red works only with red numbers")};q.prototype.imod=function(a){return this.prime?this.prime.ireduce(a)._forceRed(this):a.umod(this.m)._forceRed(this)};q.prototype.neg=function(a){return a.isZero()?a.clone():this.m.sub(a)._forceRed(this)};q.prototype.add=function(a,b){this._verify2(a,b);a=a.add(b);0<=a.cmp(this.m)&&a.isub(this.m);return a._forceRed(this)}; q.prototype.iadd=function(a,b){this._verify2(a,b);a=a.iadd(b);0<=a.cmp(this.m)&&a.isub(this.m);return a};q.prototype.sub=function(a,b){this._verify2(a,b);a=a.sub(b);0>a.cmpn(0)&&a.iadd(this.m);return a._forceRed(this)};q.prototype.isub=function(a,b){this._verify2(a,b);a=a.isub(b);0>a.cmpn(0)&&a.iadd(this.m);return a};q.prototype.shl=function(a,b){this._verify1(a);return this.imod(a.ushln(b))};q.prototype.imul=function(a,b){this._verify2(a,b);return this.imod(a.imul(b))};q.prototype.mul=function(a, b){this._verify2(a,b);return this.imod(a.mul(b))};q.prototype.isqr=function(a){return this.imul(a,a.clone())};q.prototype.sqr=function(a){return this.mul(a,a)};q.prototype.sqrt=function(a){if(a.isZero())return a.clone();var b=this.m.andln(3);c(1===b%2);if(3===b)return b=this.m.add(new f(1)).iushrn(2),this.pow(a,b);for(var d=this.m.subn(1),e=0;!d.isZero()&&0===d.andln(1);)e++,d.iushrn(1);c(!d.isZero());for(var b=(new f(1)).toRed(this),g=b.redNeg(),k=this.m.subn(1).iushrn(1),l=this.m.bitLength(),l= (new f(2*l*l)).toRed(this);0!==this.pow(l,k).cmp(g);)l.redIAdd(g);k=this.pow(l,d);g=this.pow(a,d.addn(1).iushrn(1));a=this.pow(a,d);for(d=e;0!==a.cmp(b);){l=a;for(e=0;0!==l.cmp(b);e++)l=l.redSqr();c(e>k&1;a!==c[0]&&(a=this.sqr(a));if(0===h&&0===e)g=0;else if(e<<=1,e|=h,g++,4===g||0===d&&0===k)a=this.mul(a,c[e]),e=g=0}k=26}return a};q.prototype.convertTo=function(a){var b=a.umod(this.m);return b===a?b.clone():b};q.prototype.convertFrom=function(a){a=a.clone();a.red=null;return a}; -f.mont=function(a){return new A(a)};e(A,q);A.prototype.convertTo=function(a){return this.imod(a.ushln(this.shift))};A.prototype.convertFrom=function(a){a=this.imod(a.mul(this.rinv));a.red=null;return a};A.prototype.imul=function(a,b){if(a.isZero()||b.isZero())return a.words[0]=0,a.length=1,a;a=a.imul(b);b=a.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);b=a=a.isub(b).iushrn(this.shift);0<=a.cmp(this.m)?b=a.isub(this.m):0>a.cmpn(0)&&(b=a.iadd(this.m));return b._forceRed(this)};A.prototype.mul= -function(a,b){if(a.isZero()||b.isZero())return(new f(0))._forceRed(this);a=a.mul(b);b=a.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);b=a=a.isub(b).iushrn(this.shift);0<=a.cmp(this.m)?b=a.isub(this.m):0>a.cmpn(0)&&(b=a.iadd(this.m));return b._forceRed(this)};A.prototype.invm=function(a){return this.imod(a._invmp(this.m).mul(this.r2))._forceRed(this)}})("undefined"===typeof a||a,this)},{buffer:36}],35:[function(h,a,b){function c(a){this.rand=a}var e;a.exports=function(a){e||(e=new c(null)); +f.mont=function(a){return new z(a)};e(z,q);z.prototype.convertTo=function(a){return this.imod(a.ushln(this.shift))};z.prototype.convertFrom=function(a){a=this.imod(a.mul(this.rinv));a.red=null;return a};z.prototype.imul=function(a,b){if(a.isZero()||b.isZero())return a.words[0]=0,a.length=1,a;a=a.imul(b);b=a.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);b=a=a.isub(b).iushrn(this.shift);0<=a.cmp(this.m)?b=a.isub(this.m):0>a.cmpn(0)&&(b=a.iadd(this.m));return b._forceRed(this)};z.prototype.mul= +function(a,b){if(a.isZero()||b.isZero())return(new f(0))._forceRed(this);a=a.mul(b);b=a.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);b=a=a.isub(b).iushrn(this.shift);0<=a.cmp(this.m)?b=a.isub(this.m):0>a.cmpn(0)&&(b=a.iadd(this.m));return b._forceRed(this)};z.prototype.invm=function(a){return this.imod(a._invmp(this.m).mul(this.r2))._forceRed(this)}})("undefined"===typeof a||a,this)},{buffer:36}],35:[function(h,a,b){function c(a){this.rand=a}var e;a.exports=function(a){e||(e=new c(null)); return e.generate(a)};a.exports.Rand=c;c.prototype.generate=function(a){return this._rand(a)};c.prototype._rand=function(a){if(this.rand.getBytes)return this.rand.getBytes(a);a=new Uint8Array(a);for(var b=0;b>>24]^g[h>>>16&255]^k[m>>>8&255]^c[p&255]^b[u++],n=d[h>>>24]^g[m>>>16&255]^k[p>>>8&255]^c[l&255]^b[u++],r=d[m>>>24]^g[p>>>16&255]^k[l>>>8&255]^c[h&255]^b[u++],p=d[p>>>24]^g[l>>>16&255]^k[h>>>8&255]^c[m&255]^b[u++],l=a,h=n,m=r;a=(f[l>>>24]<<24|f[h>>>16&255]<<16|f[m>>>8&255]<<8|f[p&255])^b[u++];n=(f[h>>>24]<<24|f[m>>>16&255]<<16|f[p>>>8&255]<<8|f[l&255])^b[u++];r= -(f[m>>>24]<<24|f[p>>>16&255]<<16|f[l>>>8&255]<<8|f[h&255])^b[u++];p=(f[p>>>24]<<24|f[l>>>16&255]<<16|f[h>>>8&255]<<8|f[m&255])^b[u++];return[a>>>0,n>>>0,r>>>0,p>>>0]}function k(a){this._key=c(a);this._reset()}var f=h("safe-buffer").Buffer,m=[0,1,2,4,8,16,32,64,128,27,54],p=function(){for(var a=Array(256),b=0;256>b;b++)a[b]=128>b?b<<1:b<<1^283;for(var b=[],c=[],f=[[],[],[],[]],e=[[],[],[],[]],g=0,k=0,h=0;256>h;++h){var m=k^k<<1^k<<2^k<<3^k<<4,m=m>>>8^m&255^99;b[g]=m;c[m]=g;var p=a[g],x=a[p],v=a[x], -y=257*a[m]^16843008*m;f[0][g]=y<<24|y>>>8;f[1][g]=y<<16|y>>>16;f[2][g]=y<<8|y>>>24;f[3][g]=y;y=16843009*v^65537*x^257*p^16843008*g;e[0][m]=y<<24|y>>>8;e[1][m]=y<<16|y>>>16;e[2][m]=y<<8|y>>>24;e[3][m]=y;0===g?g=k=1:(g=p^a[a[a[v^p]]],k^=a[a[k]])}return{SBOX:b,INV_SBOX:c,SUB_MIX:f,INV_SUB_MIX:e}}();k.blockSize=16;k.keySize=32;k.prototype.blockSize=k.blockSize;k.prototype.keySize=k.keySize;k.prototype._reset=function(){for(var a=this._key,b=a.length,c=b+6,f=4*(c+1),e=[],g=0;g>>24,a=p.SBOX[a>>>24]<<24|p.SBOX[a>>>16&255]<<16|p.SBOX[a>>>8&255]<<8|p.SBOX[a&255],a^=m[g/b|0]<<24):6>>24]<<24|p.SBOX[a>>>16&255]<<16|p.SBOX[a>>>8&255]<<8|p.SBOX[a&255]),e[g]=e[g-b]^a;b=[];for(g=0;gg||4>=a?k:p.INV_SUB_MIX[0][p.SBOX[k>>>24]]^p.INV_SUB_MIX[1][p.SBOX[k>>>16&255]]^p.INV_SUB_MIX[2][p.SBOX[k>>>8&255]]^p.INV_SUB_MIX[3][p.SBOX[k&255]]}this._nRounds=c;this._keySchedule=e;this._invKeySchedule= -b};k.prototype.encryptBlockRaw=function(a){a=c(a);return g(a,this._keySchedule,p.SUB_MIX,p.SBOX,this._nRounds)};k.prototype.encryptBlock=function(a){a=this.encryptBlockRaw(a);var b=f.allocUnsafe(16);b.writeUInt32BE(a[0],0);b.writeUInt32BE(a[1],4);b.writeUInt32BE(a[2],8);b.writeUInt32BE(a[3],12);return b};k.prototype.decryptBlock=function(a){a=c(a);var b=a[1];a[1]=a[3];a[3]=b;a=g(a,this._invKeySchedule,p.INV_SUB_MIX,p.INV_SBOX,this._nRounds);b=f.allocUnsafe(16);b.writeUInt32BE(a[0],0);b.writeUInt32BE(a[3], +0}function g(a,b,c,f,e){var d=c[0],g=c[1],k=c[2];c=c[3];for(var l=a[0]^b[0],h=a[1]^b[1],m=a[2]^b[2],n=a[3]^b[3],p,r,u=4,C=1;C>>24]^g[h>>>16&255]^k[m>>>8&255]^c[n&255]^b[u++],p=d[h>>>24]^g[m>>>16&255]^k[n>>>8&255]^c[l&255]^b[u++],r=d[m>>>24]^g[n>>>16&255]^k[l>>>8&255]^c[h&255]^b[u++],n=d[n>>>24]^g[l>>>16&255]^k[h>>>8&255]^c[m&255]^b[u++],l=a,h=p,m=r;a=(f[l>>>24]<<24|f[h>>>16&255]<<16|f[m>>>8&255]<<8|f[n&255])^b[u++];p=(f[h>>>24]<<24|f[m>>>16&255]<<16|f[n>>>8&255]<<8|f[l&255])^b[u++];r= +(f[m>>>24]<<24|f[n>>>16&255]<<16|f[l>>>8&255]<<8|f[h&255])^b[u++];n=(f[n>>>24]<<24|f[l>>>16&255]<<16|f[h>>>8&255]<<8|f[m&255])^b[u++];return[a>>>0,p>>>0,r>>>0,n>>>0]}function k(a){this._key=c(a);this._reset()}var f=h("safe-buffer").Buffer,m=[0,1,2,4,8,16,32,64,128,27,54],n=function(){for(var a=Array(256),b=0;256>b;b++)a[b]=128>b?b<<1:b<<1^283;for(var b=[],c=[],f=[[],[],[],[]],e=[[],[],[],[]],g=0,k=0,h=0;256>h;++h){var m=k^k<<1^k<<2^k<<3^k<<4,m=m>>>8^m&255^99;b[g]=m;c[m]=g;var n=a[g],x=a[n],v=a[x], +y=257*a[m]^16843008*m;f[0][g]=y<<24|y>>>8;f[1][g]=y<<16|y>>>16;f[2][g]=y<<8|y>>>24;f[3][g]=y;y=16843009*v^65537*x^257*n^16843008*g;e[0][m]=y<<24|y>>>8;e[1][m]=y<<16|y>>>16;e[2][m]=y<<8|y>>>24;e[3][m]=y;0===g?g=k=1:(g=n^a[a[a[v^n]]],k^=a[a[k]])}return{SBOX:b,INV_SBOX:c,SUB_MIX:f,INV_SUB_MIX:e}}();k.blockSize=16;k.keySize=32;k.prototype.blockSize=k.blockSize;k.prototype.keySize=k.keySize;k.prototype._reset=function(){for(var a=this._key,b=a.length,c=b+6,f=4*(c+1),e=[],g=0;g>>24,a=n.SBOX[a>>>24]<<24|n.SBOX[a>>>16&255]<<16|n.SBOX[a>>>8&255]<<8|n.SBOX[a&255],a^=m[g/b|0]<<24):6>>24]<<24|n.SBOX[a>>>16&255]<<16|n.SBOX[a>>>8&255]<<8|n.SBOX[a&255]),e[g]=e[g-b]^a;b=[];for(g=0;gg||4>=a?k:n.INV_SUB_MIX[0][n.SBOX[k>>>24]]^n.INV_SUB_MIX[1][n.SBOX[k>>>16&255]]^n.INV_SUB_MIX[2][n.SBOX[k>>>8&255]]^n.INV_SUB_MIX[3][n.SBOX[k&255]]}this._nRounds=c;this._keySchedule=e;this._invKeySchedule= +b};k.prototype.encryptBlockRaw=function(a){a=c(a);return g(a,this._keySchedule,n.SUB_MIX,n.SBOX,this._nRounds)};k.prototype.encryptBlock=function(a){a=this.encryptBlockRaw(a);var b=f.allocUnsafe(16);b.writeUInt32BE(a[0],0);b.writeUInt32BE(a[1],4);b.writeUInt32BE(a[2],8);b.writeUInt32BE(a[3],12);return b};k.prototype.decryptBlock=function(a){a=c(a);var b=a[1];a[1]=a[3];a[3]=b;a=g(a,this._invKeySchedule,n.INV_SUB_MIX,n.INV_SBOX,this._nRounds);b=f.allocUnsafe(16);b.writeUInt32BE(a[0],0);b.writeUInt32BE(a[3], 4);b.writeUInt32BE(a[2],8);b.writeUInt32BE(a[1],12);return b};k.prototype.scrub=function(){e(this._keySchedule);e(this._invKeySchedule);e(this._key)};a.exports.AES=k},{"safe-buffer":160}],38:[function(h,a,b){function c(a,b,c,h){k.call(this);var d=g.alloc(4,0);this._cipher=new e.AES(b);d=this._cipher.encryptBlock(d);this._ghash=new f(d);b=c;if(12===b.length)this._finID=g.concat([b,g.from([0,0,0,1])]),c=g.concat([b,g.from([0,0,0,2])]);else{c=new f(d);var d=b.length,l=d%16;c.update(b);l&&c.update(g.alloc(16- -l,0));c.update(g.alloc(8,0));b=8*d;d=g.alloc(8);d.writeUIntBE(b,0,8);c.update(d);this._finID=c.state;c=g.from(this._finID);p(c)}this._prev=g.from(c);this._cache=g.allocUnsafe(0);this._secCache=g.allocUnsafe(0);this._decrypt=h;this._len=this._alen=0;this._mode=a;this._authTag=null;this._called=!1}var e=h("./aes"),g=h("safe-buffer").Buffer,k=h("cipher-base");b=h("inherits");var f=h("./ghash"),m=h("buffer-xor"),p=h("./incr32");b(c,k);c.prototype._update=function(a){if(!this._called&&this._alen){var b= +l,0));c.update(g.alloc(8,0));b=8*d;d=g.alloc(8);d.writeUIntBE(b,0,8);c.update(d);this._finID=c.state;c=g.from(this._finID);n(c)}this._prev=g.from(c);this._cache=g.allocUnsafe(0);this._secCache=g.allocUnsafe(0);this._decrypt=h;this._len=this._alen=0;this._mode=a;this._authTag=null;this._called=!1}var e=h("./aes"),g=h("safe-buffer").Buffer,k=h("cipher-base");b=h("inherits");var f=h("./ghash"),m=h("buffer-xor"),n=h("./incr32");b(c,k);c.prototype._update=function(a){if(!this._called&&this._alen){var b= 16-this._alen%16;16>b&&(b=g.alloc(b,0),this._ghash.update(b))}this._called=!0;b=this._mode.encrypt(this,a);this._decrypt?this._ghash.update(a):this._ghash.update(b);this._len+=a.length;return b};c.prototype._final=function(){if(this._decrypt&&!this._authTag)throw Error("Unsupported state or unable to authenticate data");var a=m(this._ghash.final(8*this._alen,8*this._len),this._cipher.encryptBlock(this._finID)),b;if(b=this._decrypt){b=this._authTag;var c=0;a.length!==b.length&&c++;for(var f=Math.min(a.length, b.length),e=0;e>>0,0);b.writeUInt32BE(a[1]>>>0,4);b.writeUInt32BE(a[2]>>>0,8);b.writeUInt32BE(a[3]>>>0, +c);return m.concat([this.cache,b])};b.createCipheriv=g;b.createCipher=function(a,b){var c=k[a.toLowerCase()];if(!c)throw new TypeError("invalid suite type");b=p(b,!1,c.key,c.iv);return g(a,b.key,b.iv)}},{"./aes":37,"./authCipher":38,"./modes":50,"./streamCipher":53,"cipher-base":66,evp_bytestokey:102,inherits:119,"safe-buffer":160}],42:[function(h,a,b){function c(a){var b=g.allocUnsafe(16);b.writeUInt32BE(a[0]>>>0,0);b.writeUInt32BE(a[1]>>>0,4);b.writeUInt32BE(a[2]>>>0,8);b.writeUInt32BE(a[3]>>>0, 12);return b}function e(a){this.h=a;this.state=g.alloc(16,0);this.cache=g.allocUnsafe(0)}var g=h("safe-buffer").Buffer,k=g.alloc(16,0);e.prototype.ghash=function(a){for(var b=-1;++b++g;){if(e=0!==(this.state[~~(g/8)]&1<<7-g%8))b[0]^=a[0],b[1]^=a[1],b[2]^=a[2],b[3]^=a[3];d=0!==(a[3]&1);for(e=3;0< e;e--)a[e]=a[e]>>>1|(a[e-1]&1)<<31;a[0]>>>=1;d&&(a[0]^=-520093696)}this.state=c(b)};e.prototype.update=function(a){for(this.cache=g.concat([this.cache,a]);16<=this.cache.length;)a=this.cache.slice(0,16),this.cache=this.cache.slice(16),this.ghash(a)};e.prototype.final=function(a,b){this.cache.length&&this.ghash(g.concat([this.cache,k],16));this.ghash(c([0,a,0,b]));return this.state};a.exports=e},{"safe-buffer":160}],43:[function(h,a,b){a.exports=function(a){for(var b=a.length,c;b--;)if(c=a.readUInt8(b), 255===c)a.writeUInt8(0,b);else{c++;a.writeUInt8(c,b);break}}},{}],44:[function(h,a,b){var c=h("buffer-xor");b.encrypt=function(a,b){b=c(b,a._prev);a._prev=a._cipher.encryptBlock(b);return a._prev};b.decrypt=function(a,b){var e=a._prev;a._prev=b;a=a._cipher.decryptBlock(b);return c(a,e)}},{"buffer-xor":64}],45:[function(h,a,b){function c(a,b,c){var f=b.length,d=g(b,a._cache);a._cache=a._cache.slice(f);a._prev=e.concat([a._prev,c?b:d]);return d}var e=h("safe-buffer").Buffer,g=h("buffer-xor");b.encrypt= -function(a,b,g){for(var f=e.allocUnsafe(0),d;b.length;)if(0===a._cache.length&&(a._cache=a._cipher.encryptBlock(a._prev),a._prev=e.allocUnsafe(0)),a._cache.length<=b.length)d=a._cache.length,f=e.concat([f,c(a,b.slice(0,d),g)]),b=b.slice(d);else{f=e.concat([f,c(a,b,g)]);break}return f}},{"buffer-xor":64,"safe-buffer":160}],46:[function(h,a,b){var c=h("safe-buffer").Buffer;b.encrypt=function(a,b,k){for(var f=b.length,e=c.allocUnsafe(f),g=-1;++g++w;){u= -l._cipher.encryptBlock(l._prev);q=h&1<<7-w?128:0;A=u[0]^q;B+=(A&128)>>w%8;u=l;var D=l._prev;q=r?q:A;A=D.length;for(var x=-1,v=c.allocUnsafe(D.length),D=c.concat([D,c.from([q])]);++x>7;u._prev=v}e[d]=B}return e}},{"safe-buffer":160}],47:[function(h,a,b){(function(a){b.encrypt=function(b,c,k){for(var f=c.length,e=a.allocUnsafe(f),g=-1;++g++w;){u= +l._cipher.encryptBlock(l._prev);q=h&1<<7-w?128:0;z=u[0]^q;B+=(z&128)>>w%8;u=l;var D=l._prev;q=r?q:z;z=D.length;for(var x=-1,v=c.allocUnsafe(D.length),D=c.concat([D,c.from([q])]);++x>7;u._prev=v}e[d]=B}return e}},{"safe-buffer":160}],47:[function(h,a,b){(function(a){b.encrypt=function(b,c,k){for(var f=c.length,e=a.allocUnsafe(f),g=-1;++g=a.cmpn(0))throw Error("invalid sig");if(a.cmp(b)>=b)throw Error("invalid sig");}var g=h("bn.js"),k=h("elliptic").ec,f=h("parse-asn1"),m=h("./curves.json");a.exports=function(a,d,e,h,r){e=f(e); -if("ec"===e.type){if("ecdsa"!==h&&"ecdsa/rsa"!==h)throw Error("wrong public key type");h=m[e.data.algorithm.curve.join(".")];if(!h)throw Error("unknown curve "+e.data.algorithm.curve.join("."));return(new k(h)).verify(d,a,e.data.subjectPrivateKey.data)}if("dsa"===e.type){if("dsa"!==h)throw Error("wrong public key type");h=e.data.p;r=e.data.q;var l=e.data.g;e=e.data.pub_key;var p=f.signature.decode(a,"der");a=p.s;p=p.r;c(a,r);c(p,r);var n=g.mont(h);a=a.invm(r);return 0===l.toRed(n).redPow((new g(d)).mul(a).mod(r)).fromRed().mul(e.toRed(n).redPow(p.mul(a).mod(r)).fromRed()).mod(h).mod(r).cmp(p)}if("rsa"!== -h&&"ecdsa/rsa"!==h)throw Error("wrong public key type");d=b.concat([r,d]);r=e.modulus.byteLength();h=[1];for(l=0;d.length+h.length+2l?1:0;r=Math.min(a.length,h.length);a.length!==h.length&&(e=1);for(p=-1;++pl?1:0;r=Math.min(a.length,h.length);a.length!==h.length&&(e=1);for(n=-1;++nt)throw new RangeError("Invalid typed array length");a=new Uint8Array(a);a.__proto__=e.prototype;return a}function e(a,b,c){if("number"===typeof a){if("string"===typeof b)throw Error("If encoding is specified then the first argument must be a string"); return f(a)}return g(a,b,c)}function g(a,b,d){if("number"===typeof a)throw new TypeError('"value" argument must not be a number');if(G(a)){if(0>b||a.byteLengtha)throw new RangeError('"size" argument must not be negative');}function f(a){k(a);return c(0>a?0:d(a)|0)}function m(a){for(var b=0>a.length?0:d(a.length)|0,f=c(b),e=0;ea)throw new RangeError('"size" argument must not be negative');}function f(a){k(a);return c(0>a?0:d(a)|0)}function m(a){for(var b=0>a.length?0:d(a.length)|0,f=c(b),e=0;e=t)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+t.toString(16)+" bytes");return a|0}function l(a,b){if(e.isBuffer(a))return a.length;if("function"=== -typeof ArrayBuffer.isView&&ArrayBuffer.isView(a)||G(a))return a.byteLength;"string"!==typeof a&&(a=""+a);var c=a.length;if(0===c)return 0;for(var d=!1;;)switch(b){case "ascii":case "latin1":case "binary":return c;case "utf8":case "utf-8":case void 0:return z(a).length;case "ucs2":case "ucs-2":case "utf16le":case "utf-16le":return 2*c;case "hex":return c>>>1;case "base64":return E.toByteArray(y(a)).length;default:if(d)return z(a).length;b=(""+b).toLowerCase();d=!0}}function n(a,b,c){var d=!1;if(void 0=== +typeof ArrayBuffer.isView&&ArrayBuffer.isView(a)||G(a))return a.byteLength;"string"!==typeof a&&(a=""+a);var c=a.length;if(0===c)return 0;for(var d=!1;;)switch(b){case "ascii":case "latin1":case "binary":return c;case "utf8":case "utf-8":case void 0:return A(a).length;case "ucs2":case "ucs-2":case "utf16le":case "utf-16le":return 2*c;case "hex":return c>>>1;case "base64":return E.toByteArray(y(a)).length;default:if(d)return A(a).length;b=(""+b).toLowerCase();d=!0}}function p(a,b,c){var d=!1;if(void 0=== b||0>b)b=0;if(b>this.length)return"";if(void 0===c||c>this.length)c=this.length;if(0>=c)return"";c>>>=0;b>>>=0;if(c<=b)return"";for(a||(a="utf8");;)switch(a){case "hex":a=b;b=c;c=this.length;if(!a||0>a)a=0;if(!b||0>b||b>c)b=c;d="";for(c=a;cd?"0"+d.toString(16):d.toString(16),d=a+d;return d;case "utf8":case "utf-8":return B(this,b,c);case "ascii":a="";for(c=Math.min(this.length,c);bc&&(c=-2147483648);c=+c;c!==c&&(c=f?0:a.length-1);0>c&&(c=a.length+c);if(c>=a.length){if(f)return-1;c=a.length-1}else if(0>c)if(f)c=0;else return-1;"string"===typeof b&&(b=e.from(b,d));if(e.isBuffer(b))return 0===b.length?-1:w(a,b,c,d,f);if("number"===typeof b)return b&=255,"function"===typeof Uint8Array.prototype.indexOf?f?Uint8Array.prototype.indexOf.call(a,b,c):Uint8Array.prototype.lastIndexOf.call(a,b,c):w(a,[b],c,d,f);throw new TypeError("val must be string, number or Buffer"); }function w(a,b,c,d,f){function e(a,b){return 1===g?a[b]:a.readUInt16BE(b*g)}var g=1,k=a.length,h=b.length;if(void 0!==d&&(d=String(d).toLowerCase(),"ucs2"===d||"ucs-2"===d||"utf16le"===d||"utf-16le"===d)){if(2>a.length||2>b.length)return-1;g=2;k/=2;h/=2;c/=2}if(f)for(d=-1;ck&&(c=k-h);0<=c;c--){k=!0;for(d=0;df&&(e=f);break;case 2:k=a[b+1];128===(k&192)&&(f=(f&31)<<6|k&63,127f||57343f&&(e=f))}}null===e?(e= -65533,g=1):65535>>10&1023|55296),e=56320|e&1023);d.push(e);b+=g}a=d.length;if(a<=N)d=String.fromCharCode.apply(String,d);else{c="";for(b=0;ba)throw new RangeError("offset is not uint");if(a+b>c)throw new RangeError("Trying to access beyond buffer length");}function A(a,b,c,d,f,g){if(!e.isBuffer(a))throw new TypeError('"buffer" argument must be a Buffer instance');if(b>f||b< +65533,g=1):65535>>10&1023|55296),e=56320|e&1023);d.push(e);b+=g}a=d.length;if(a<=N)d=String.fromCharCode.apply(String,d);else{c="";for(b=0;ba)throw new RangeError("offset is not uint");if(a+b>c)throw new RangeError("Trying to access beyond buffer length");}function z(a,b,c,d,f,g){if(!e.isBuffer(a))throw new TypeError('"buffer" argument must be a Buffer instance');if(b>f||b< g)throw new RangeError('"value" argument is out of bounds');if(c+d>a.length)throw new RangeError("Index out of range");}function D(a,b,c,d,f,e){if(c+d>a.length)throw new RangeError("Index out of range");if(0>c)throw new RangeError("Index out of range");}function x(a,b,c,d,f){b=+b;c>>>=0;f||D(a,b,c,4,3.4028234663852886E38,-3.4028234663852886E38);I.write(a,b,c,d,23,4);return c+4}function v(a,b,c,d,f){b=+b;c>>>=0;f||D(a,b,c,8,1.7976931348623157E308,-1.7976931348623157E308);I.write(a,b,c,d,52,8);return c+ -8}function y(a){a=a.trim().replace(J,"");if(2>a.length)return"";for(;0!==a.length%4;)a+="\x3d";return a}function z(a,b){b=b||Infinity;for(var c,d=a.length,f=null,e=[],g=0;gc){if(!f){if(56319c){-1<(b-=3)&&e.push(239,191,189);f=c;continue}c=(f-55296<<10|c-56320)+65536}else f&&-1<(b-=3)&&e.push(239,191,189);f=null;if(128>c){if(0>--b)break; +8}function y(a){a=a.trim().replace(J,"");if(2>a.length)return"";for(;0!==a.length%4;)a+="\x3d";return a}function A(a,b){b=b||Infinity;for(var c,d=a.length,f=null,e=[],g=0;gc){if(!f){if(56319c){-1<(b-=3)&&e.push(239,191,189);f=c;continue}c=(f-55296<<10|c-56320)+65536}else f&&-1<(b-=3)&&e.push(239,191,189);f=null;if(128>c){if(0>--b)break; e.push(c)}else if(2048>c){if(0>(b-=2))break;e.push(c>>6|192,c&63|128)}else if(65536>c){if(0>(b-=3))break;e.push(c>>12|224,c>>6&63|128,c&63|128)}else if(1114112>c){if(0>(b-=4))break;e.push(c>>18|240,c>>12&63|128,c>>6&63|128,c&63|128)}else throw Error("Invalid code point");}return e}function F(a){for(var b=[],c=0;c=b.length||f>=a.length);++f)b[f+c]=a[f];return f}function G(a){return a instanceof ArrayBuffer|| null!=a&&null!=a.constructor&&"ArrayBuffer"===a.constructor.name&&"number"===typeof a.byteLength}var E=h("base64-js"),I=h("ieee754");b.Buffer=e;b.SlowBuffer=function(a){+a!=a&&(a=0);return e.alloc(+a)};b.INSPECT_MAX_BYTES=50;var t=2147483647;b.kMaxLength=t;e.TYPED_ARRAY_SUPPORT=function(){try{var a=new Uint8Array(1);a.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}};return 42===a.foo()}catch(ea){return!1}}();e.TYPED_ARRAY_SUPPORT||"undefined"===typeof console||"function"!==typeof console.error|| console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");$jscomp.initSymbol();$jscomp.initSymbol();$jscomp.initSymbol();"undefined"!==typeof Symbol&&Symbol.species&&e[Symbol.species]===e&&($jscomp.initSymbol(),Object.defineProperty(e,Symbol.species,{value:null,configurable:!0,enumerable:!1,writable:!1}));e.poolSize=8192;e.from=function(a,b,c){return g(a,b,c)};e.prototype.__proto__=Uint8Array.prototype; e.__proto__=Uint8Array;e.alloc=function(a,b,d){k(a);a=0>=a?c(a):void 0!==b?"string"===typeof d?c(a).fill(b,d):c(a).fill(b):c(a);return a};e.allocUnsafe=function(a){return f(a)};e.allocUnsafeSlow=function(a){return f(a)};e.isBuffer=function(a){return null!=a&&!0===a._isBuffer};e.compare=function(a,b){if(!e.isBuffer(a)||!e.isBuffer(b))throw new TypeError("Arguments must be Buffers");if(a===b)return 0;for(var c=a.length,d=b.length,f=0,g=Math.min(c,d);fc&&(a+=" ... "));return"\x3cBuffer "+a+"\x3e"};e.prototype.compare=function(a,b,c,d,f){if(!e.isBuffer(a))throw new TypeError("Argument must be a Buffer");void 0===b&&(b=0);void 0===c&&(c=a?a.length:0);void 0===d&&(d=0);void 0===f&&(f=this.length);if(0>b||c>a.length||0>d||f>this.length)throw new RangeError("out of range index");if(d>=f&&b>=c)return 0;if(d>= f)return-1;if(b>=c)return 1;b>>>=0;c>>>=0;d>>>=0;f>>>=0;if(this===a)return 0;var g=f-d,k=c-b,h=Math.min(g,k);d=this.slice(d,f);a=a.slice(b,c);for(b=0;b>>=0,isFinite(c)?(c>>>=0,void 0===d&&(d="utf8")):(d=c,c=void 0);else throw Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var f=this.length-b;if(void 0===c||c>f)c=f;if(0c||0>b)||b>this.length)throw new RangeError("Attempt to write outside buffer bounds");d||(d="utf8");for(f=!1;;)switch(d){case "hex":a:{b=Number(b)||0;d=this.length-b;c?(c=Number(c),c>d&&(c=d)):c=d;d=a.length;if(0!==d% -2)throw new TypeError("Invalid hex string");c>d/2&&(c=d/2);for(d=0;d(d-=2));++k)e=a.charCodeAt(k),f=e>> +2)throw new TypeError("Invalid hex string");c>d/2&&(c=d/2);for(d=0;d(d-=2));++k)e=a.charCodeAt(k),f=e>> 8,e%=256,g.push(e),g.push(f);return C(g,this,b,c);default:if(f)throw new TypeError("Unknown encoding: "+d);d=(""+d).toLowerCase();f=!0}};e.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var N=4096;e.prototype.slice=function(a,b){var c=this.length;a=~~a;b=void 0===b?c:~~b;0>a?(a+=c,0>a&&(a=0)):a>c&&(a=c);0>b?(b+=c,0>b&&(b=0)):b>c&&(b=c);b>>= 0;b>>>=0;c||q(a,b,this.length);c=this[a];for(var d=1,f=0;++f>>=0;b>>>=0;c||q(a,b,this.length);c=this[a+--b];for(var d=1;0>>=0;b||q(a,1,this.length);return this[a]};e.prototype.readUInt16LE=function(a,b){a>>>=0;b||q(a,2,this.length);return this[a]|this[a+1]<<8};e.prototype.readUInt16BE=function(a,b){a>>>=0;b||q(a,2,this.length);return this[a]<< 8|this[a+1]};e.prototype.readUInt32LE=function(a,b){a>>>=0;b||q(a,4,this.length);return(this[a]|this[a+1]<<8|this[a+2]<<16)+16777216*this[a+3]};e.prototype.readUInt32BE=function(a,b){a>>>=0;b||q(a,4,this.length);return 16777216*this[a]+(this[a+1]<<16|this[a+2]<<8|this[a+3])};e.prototype.readIntLE=function(a,b,c){a>>>=0;b>>>=0;c||q(a,b,this.length);c=this[a];for(var d=1,f=0;++f=128*d&&(c-=Math.pow(2,8*b));return c};e.prototype.readIntBE=function(a,b,c){a>>>=0;b>>>=0; c||q(a,b,this.length);c=b;for(var d=1,f=this[a+--c];0=128*d&&(f-=Math.pow(2,8*b));return f};e.prototype.readInt8=function(a,b){a>>>=0;b||q(a,1,this.length);return this[a]&128?-1*(255-this[a]+1):this[a]};e.prototype.readInt16LE=function(a,b){a>>>=0;b||q(a,2,this.length);a=this[a]|this[a+1]<<8;return a&32768?a|4294901760:a};e.prototype.readInt16BE=function(a,b){a>>>=0;b||q(a,2,this.length);a=this[a+1]|this[a]<<8;return a&32768?a|4294901760:a};e.prototype.readInt32LE= function(a,b){a>>>=0;b||q(a,4,this.length);return this[a]|this[a+1]<<8|this[a+2]<<16|this[a+3]<<24};e.prototype.readInt32BE=function(a,b){a>>>=0;b||q(a,4,this.length);return this[a]<<24|this[a+1]<<16|this[a+2]<<8|this[a+3]};e.prototype.readFloatLE=function(a,b){a>>>=0;b||q(a,4,this.length);return I.read(this,a,!0,23,4)};e.prototype.readFloatBE=function(a,b){a>>>=0;b||q(a,4,this.length);return I.read(this,a,!1,23,4)};e.prototype.readDoubleLE=function(a,b){a>>>=0;b||q(a,8,this.length);return I.read(this, -a,!0,52,8)};e.prototype.readDoubleBE=function(a,b){a>>>=0;b||q(a,8,this.length);return I.read(this,a,!1,52,8)};e.prototype.writeUIntLE=function(a,b,c,d){a=+a;b>>>=0;c>>>=0;d||A(this,a,b,c,Math.pow(2,8*c)-1,0);d=1;var f=0;for(this[b]=a&255;++f>>=0;c>>>=0;d||A(this,a,b,c,Math.pow(2,8*c)-1,0);d=c-1;var f=1;for(this[b+d]=a&255;0<=--d&&(f*=256);)this[b+d]=a/f&255;return b+c};e.prototype.writeUInt8=function(a,b, -c){a=+a;b>>>=0;c||A(this,a,b,1,255,0);this[b]=a&255;return b+1};e.prototype.writeUInt16LE=function(a,b,c){a=+a;b>>>=0;c||A(this,a,b,2,65535,0);this[b]=a&255;this[b+1]=a>>>8;return b+2};e.prototype.writeUInt16BE=function(a,b,c){a=+a;b>>>=0;c||A(this,a,b,2,65535,0);this[b]=a>>>8;this[b+1]=a&255;return b+2};e.prototype.writeUInt32LE=function(a,b,c){a=+a;b>>>=0;c||A(this,a,b,4,4294967295,0);this[b+3]=a>>>24;this[b+2]=a>>>16;this[b+1]=a>>>8;this[b]=a&255;return b+4};e.prototype.writeUInt32BE=function(a, -b,c){a=+a;b>>>=0;c||A(this,a,b,4,4294967295,0);this[b]=a>>>24;this[b+1]=a>>>16;this[b+2]=a>>>8;this[b+3]=a&255;return b+4};e.prototype.writeIntLE=function(a,b,c,d){a=+a;b>>>=0;d||(d=Math.pow(2,8*c-1),A(this,a,b,c,d-1,-d));d=0;var f=1,e=0;for(this[b]=a&255;++da&&0===e&&0!==this[b+d-1]&&(e=1),this[b+d]=(a/f>>0)-e&255;return b+c};e.prototype.writeIntBE=function(a,b,c,d){a=+a;b>>>=0;d||(d=Math.pow(2,8*c-1),A(this,a,b,c,d-1,-d));d=c-1;var f=1,e=0;for(this[b+d]=a&255;0<=--d&&(f*=256);)0> -a&&0===e&&0!==this[b+d+1]&&(e=1),this[b+d]=(a/f>>0)-e&255;return b+c};e.prototype.writeInt8=function(a,b,c){a=+a;b>>>=0;c||A(this,a,b,1,127,-128);0>a&&(a=255+a+1);this[b]=a&255;return b+1};e.prototype.writeInt16LE=function(a,b,c){a=+a;b>>>=0;c||A(this,a,b,2,32767,-32768);this[b]=a&255;this[b+1]=a>>>8;return b+2};e.prototype.writeInt16BE=function(a,b,c){a=+a;b>>>=0;c||A(this,a,b,2,32767,-32768);this[b]=a>>>8;this[b+1]=a&255;return b+2};e.prototype.writeInt32LE=function(a,b,c){a=+a;b>>>=0;c||A(this, -a,b,4,2147483647,-2147483648);this[b]=a&255;this[b+1]=a>>>8;this[b+2]=a>>>16;this[b+3]=a>>>24;return b+4};e.prototype.writeInt32BE=function(a,b,c){a=+a;b>>>=0;c||A(this,a,b,4,2147483647,-2147483648);0>a&&(a=4294967295+a+1);this[b]=a>>>24;this[b+1]=a>>>16;this[b+2]=a>>>8;this[b+3]=a&255;return b+4};e.prototype.writeFloatLE=function(a,b,c){return x(this,a,b,!0,c)};e.prototype.writeFloatBE=function(a,b,c){return x(this,a,b,!1,c)};e.prototype.writeDoubleLE=function(a,b,c){return v(this,a,b,!0,c)};e.prototype.writeDoubleBE= +a,!0,52,8)};e.prototype.readDoubleBE=function(a,b){a>>>=0;b||q(a,8,this.length);return I.read(this,a,!1,52,8)};e.prototype.writeUIntLE=function(a,b,c,d){a=+a;b>>>=0;c>>>=0;d||z(this,a,b,c,Math.pow(2,8*c)-1,0);d=1;var f=0;for(this[b]=a&255;++f>>=0;c>>>=0;d||z(this,a,b,c,Math.pow(2,8*c)-1,0);d=c-1;var f=1;for(this[b+d]=a&255;0<=--d&&(f*=256);)this[b+d]=a/f&255;return b+c};e.prototype.writeUInt8=function(a,b, +c){a=+a;b>>>=0;c||z(this,a,b,1,255,0);this[b]=a&255;return b+1};e.prototype.writeUInt16LE=function(a,b,c){a=+a;b>>>=0;c||z(this,a,b,2,65535,0);this[b]=a&255;this[b+1]=a>>>8;return b+2};e.prototype.writeUInt16BE=function(a,b,c){a=+a;b>>>=0;c||z(this,a,b,2,65535,0);this[b]=a>>>8;this[b+1]=a&255;return b+2};e.prototype.writeUInt32LE=function(a,b,c){a=+a;b>>>=0;c||z(this,a,b,4,4294967295,0);this[b+3]=a>>>24;this[b+2]=a>>>16;this[b+1]=a>>>8;this[b]=a&255;return b+4};e.prototype.writeUInt32BE=function(a, +b,c){a=+a;b>>>=0;c||z(this,a,b,4,4294967295,0);this[b]=a>>>24;this[b+1]=a>>>16;this[b+2]=a>>>8;this[b+3]=a&255;return b+4};e.prototype.writeIntLE=function(a,b,c,d){a=+a;b>>>=0;d||(d=Math.pow(2,8*c-1),z(this,a,b,c,d-1,-d));d=0;var f=1,e=0;for(this[b]=a&255;++da&&0===e&&0!==this[b+d-1]&&(e=1),this[b+d]=(a/f>>0)-e&255;return b+c};e.prototype.writeIntBE=function(a,b,c,d){a=+a;b>>>=0;d||(d=Math.pow(2,8*c-1),z(this,a,b,c,d-1,-d));d=c-1;var f=1,e=0;for(this[b+d]=a&255;0<=--d&&(f*=256);)0> +a&&0===e&&0!==this[b+d+1]&&(e=1),this[b+d]=(a/f>>0)-e&255;return b+c};e.prototype.writeInt8=function(a,b,c){a=+a;b>>>=0;c||z(this,a,b,1,127,-128);0>a&&(a=255+a+1);this[b]=a&255;return b+1};e.prototype.writeInt16LE=function(a,b,c){a=+a;b>>>=0;c||z(this,a,b,2,32767,-32768);this[b]=a&255;this[b+1]=a>>>8;return b+2};e.prototype.writeInt16BE=function(a,b,c){a=+a;b>>>=0;c||z(this,a,b,2,32767,-32768);this[b]=a>>>8;this[b+1]=a&255;return b+2};e.prototype.writeInt32LE=function(a,b,c){a=+a;b>>>=0;c||z(this, +a,b,4,2147483647,-2147483648);this[b]=a&255;this[b+1]=a>>>8;this[b+2]=a>>>16;this[b+3]=a>>>24;return b+4};e.prototype.writeInt32BE=function(a,b,c){a=+a;b>>>=0;c||z(this,a,b,4,2147483647,-2147483648);0>a&&(a=4294967295+a+1);this[b]=a>>>24;this[b+1]=a>>>16;this[b+2]=a>>>8;this[b+3]=a&255;return b+4};e.prototype.writeFloatLE=function(a,b,c){return x(this,a,b,!0,c)};e.prototype.writeFloatBE=function(a,b,c){return x(this,a,b,!1,c)};e.prototype.writeDoubleLE=function(a,b,c){return v(this,a,b,!0,c)};e.prototype.writeDoubleBE= function(a,b,c){return v(this,a,b,!1,c)};e.prototype.copy=function(a,b,c,d){c||(c=0);d||0===d||(d=this.length);b>=a.length&&(b=a.length);b||(b=0);0b)throw new RangeError("targetStart out of bounds");if(0>c||c>=this.length)throw new RangeError("sourceStart out of bounds");if(0>d)throw new RangeError("sourceEnd out of bounds");d>this.length&&(d=this.length);a.length-bf)for(d=0;df&&(a=f)}if(void 0!==d&&"string"!==typeof d)throw new TypeError("encoding must be a string");if("string"===typeof d&&!e.isEncoding(d))throw new TypeError("Unknown encoding: "+ d);}else"number"===typeof a&&(a&=255);if(0>b||this.length>>=0;c=void 0===c?this.length:c>>>0;a||(a=0);if("number"===typeof a)for(d=b;d>>2),k=0,d=0;k>5]|=128<>>9<<4)+14]=b;b=1732584193;for(var c=-271733879,d=-1732584194,h=271733878,l=0;l>>2),k=0,d=0;k>5]|=128<>>9<<4)+14]=b;b=1732584193;for(var c=-271733879,d=-1732584194,h=271733878,l=0;l>>32-e,c)}function g(a,b,c,f,g,k,h){return e(b&c|~b&f,a,b,g,k,h)}function k(a,b,c,f,g,k,h){return e(b&f|c&~f,a,b,g,k,h)}function f(a,b,c,f,g,k,h){return e(c^(b|~f),a,b,g,k,h)}function m(a,b){var c=(a&65535)+(b&65535);return(a>>16)+(b>>16)+(c>>16)<<16|c&65535}var p=h("./make-hash");a.exports=function(a){return p(a,c)}},{"./make-hash":70}],72:[function(h,a,b){function c(a,b){g.call(this,"digest"); -"string"===typeof b&&(b=k.from(b));var c="sha512"===a||"sha384"===a?128:64;this._alg=a;this._key=b;b.length>c?b=("rmd160"===a?new m:p(a)).update(b).digest():b.length>>32-e,c)}function g(a,b,c,f,g,k,h){return e(b&c|~b&f,a,b,g,k,h)}function k(a,b,c,f,g,k,h){return e(b&f|c&~f,a,b,g,k,h)}function f(a,b,c,f,g,k,h){return e(c^(b|~f),a,b,g,k,h)}function m(a,b){var c=(a&65535)+(b&65535);return(a>>16)+(b>>16)+(c>>16)<<16|c&65535}var n=h("./make-hash");a.exports=function(a){return n(a,c)}},{"./make-hash":70}],72:[function(h,a,b){function c(a,b){g.call(this,"digest"); +"string"===typeof b&&(b=k.from(b));var c="sha512"===a||"sha384"===a?128:64;this._alg=a;this._key=b;b.length>c?b=("rmd160"===a?new m:n(a)).update(b).digest():b.lengthb.length&&(b=e.concat([b,k],64));a=this._ipad=e.allocUnsafe(64);for(var c=this._opad=e.allocUnsafe(64),d=0;64>d;d++)a[d]=b[d]^54,c[d]=b[d]^92;this._hash=[a]}b=h("inherits");var e=h("safe-buffer").Buffer,g=h("cipher-base"),k=e.alloc(128);b(c,g);c.prototype._update=function(a){this._hash.push(a)};c.prototype._final=function(){var a=this._alg(e.concat(this._hash));return this._alg(e.concat([this._opad,a]))};a.exports=c}, {"cipher-base":66,inherits:119,"safe-buffer":160}],74:[function(h,a,b){b.randomBytes=b.rng=b.pseudoRandomBytes=b.prng=h("randombytes");b.createHash=b.Hash=h("create-hash");b.createHmac=b.Hmac=h("create-hmac");a=h("browserify-sign/algos");a=Object.keys(a);var c="sha1 sha224 sha256 sha384 sha512 md5 rmd160".split(" ").concat(a);b.getHashes=function(){return c};a=h("pbkdf2");b.pbkdf2=a.pbkdf2;b.pbkdf2Sync=a.pbkdf2Sync;a=h("browserify-cipher");b.Cipher=a.Cipher;b.createCipher=a.createCipher;b.Cipheriv= a.Cipheriv;b.createCipheriv=a.createCipheriv;b.Decipher=a.Decipher;b.createDecipher=a.createDecipher;b.Decipheriv=a.Decipheriv;b.createDecipheriv=a.createDecipheriv;b.getCiphers=a.getCiphers;b.listCiphers=a.listCiphers;a=h("diffie-hellman");b.DiffieHellmanGroup=a.DiffieHellmanGroup;b.createDiffieHellmanGroup=a.createDiffieHellmanGroup;b.getDiffieHellman=a.getDiffieHellman;b.createDiffieHellman=a.createDiffieHellman;b.DiffieHellman=a.DiffieHellman;a=h("browserify-sign");b.createSign=a.createSign;b.Sign= @@ -1019,24 +1019,24 @@ k;k+=8)d<<=1,d|=b>>k+g&1;for(k=0;24>=k;k+=8)d<<=1,d|=a>>k+g&1}for(k=0;24>=k;k+=8 function(a,b){for(var c=0,f=0;4>f;f++)var d=a>>>18-6*f&63,d=e[64*f+d],c=c<<4,c=c|d;for(f=0;4>f;f++)d=b>>>18-6*f&63,d=e[256+64*f+d],c<<=4,c|=d;return c>>>0};var g=[16,25,12,11,3,20,4,15,31,17,9,6,27,14,1,22,30,24,8,18,0,5,29,23,13,19,2,26,10,21,28,7];b.permute=function(a){for(var b=0,c=0;c>>g[c]&1;return b>>>0};b.padSplit=function(a,b,c){for(a=a.toString(2);a.lengthd;d+=2){for(var f=Math.ceil(Math.sqrt(d)),e=0;ea)return 2===b||5===b?new f([140,123]):new f([140,39]);b=new f(b);for(var g,h;;){for(g=new f(k(Math.ceil(a/8)));g.bitLength()>a;)g.ishrn(1);g.isEven()&&g.iadd(d);g.testn(1)||g.iadd(l);if(!b.cmp(l))for(;g.mod(m).cmp(w);)g.iadd(B);else if(!b.cmp(n))for(;g.mod(r).cmp(u);)g.iadd(B);h=g.shrn(1);if(c(h)&&c(g)&&e(h)&&e(g)&&p.test(h)&&p.test(g))return g}}var k=h("randombytes");a.exports=g;g.simpleSieve=c;g.fermatTest=e;var f=h("bn.js"), -m=new f(24),p=new (h("miller-rabin")),d=new f(1),l=new f(2),n=new f(5);new f(16);new f(8);var r=new f(10),u=new f(3);new f(7);var w=new f(11),B=new f(4);new f(12);var q=null},{"bn.js":34,"miller-rabin":124,randombytes:145}],84:[function(h,a,b){a.exports={modp1:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a63a3620ffffffffffffffff"},modp2:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece65381ffffffffffffffff"}, +l.toRed(b).redPow(a.subn(1)).fromRed().cmpn(1)}function g(a,b){if(16>a)return 2===b||5===b?new f([140,123]):new f([140,39]);b=new f(b);for(var g,h;;){for(g=new f(k(Math.ceil(a/8)));g.bitLength()>a;)g.ishrn(1);g.isEven()&&g.iadd(d);g.testn(1)||g.iadd(l);if(!b.cmp(l))for(;g.mod(m).cmp(w);)g.iadd(B);else if(!b.cmp(p))for(;g.mod(r).cmp(u);)g.iadd(B);h=g.shrn(1);if(c(h)&&c(g)&&e(h)&&e(g)&&n.test(h)&&n.test(g))return g}}var k=h("randombytes");a.exports=g;g.simpleSieve=c;g.fermatTest=e;var f=h("bn.js"), +m=new f(24),n=new (h("miller-rabin")),d=new f(1),l=new f(2),p=new f(5);new f(16);new f(8);var r=new f(10),u=new f(3);new f(7);var w=new f(11),B=new f(4);new f(12);var q=null},{"bn.js":34,"miller-rabin":124,randombytes:145}],84:[function(h,a,b){a.exports={modp1:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a63a3620ffffffffffffffff"},modp2:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece65381ffffffffffffffff"}, modp5:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca237327ffffffffffffffff"},modp14:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aacaa68ffffffffffffffff"}, modp15:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a93ad2caffffffffffffffff"}, modp16:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c934063199ffffffffffffffff"}, modp17:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dcc4024ffffffffffffffff"}, modp18:{gen:"02",prime:"ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dbe115974a3926f12fee5e438777cb6a932df8cd8bec4d073b931ba3bc832b68d9dd300741fa7bf8afc47ed2576f6936ba424663aab639c5ae4f5683423b4742bf1c978238f16cbe39d652de3fdb8befc848ad922222e04a4037c0713eb57a81a23f0c73473fc646cea306b4bcbc8862f8385ddfa9d4b7fa2c087e879683303ed5bdd3a062b3cf5b3a278a66d2a13f83f44f82ddf310ee074ab6a364597e899a0255dc164f31cc50846851df9ab48195ded7ea1b1d510bd7ee74d73faf36bc31ecfa268359046f4eb879f924009438b481c6cd7889a002ed5ee382bc9190da6fc026e479558e4475677e9aa9e3050e2765694dfc81f56e880b96e7160c980dd98edd3dfffffffffffffffff"}}}, {}],85:[function(h,a,b){b.version=h("../package.json").version;b.utils=h("./elliptic/utils");b.rand=h("brorand");b.curve=h("./elliptic/curve");b.curves=h("./elliptic/curves");b.ec=h("./elliptic/ec");b.eddsa=h("./elliptic/eddsa")},{"../package.json":100,"./elliptic/curve":88,"./elliptic/curves":91,"./elliptic/ec":92,"./elliptic/eddsa":95,"./elliptic/utils":99,brorand:35}],86:[function(h,a,b){function c(a,b){this.type=a;this.p=new g(b.p,16);this.red=b.prime?g.red(b.prime):g.mont(this.p);this.zero=(new g(0)).toRed(this.red); -this.one=(new g(1)).toRed(this.red);this.two=(new g(2)).toRed(this.red);this.n=b.n&&new g(b.n,16);this.g=b.g&&this.pointFromJSON(b.g,b.gRed);this._wnafT1=Array(4);this._wnafT2=Array(4);this._wnafT3=Array(4);this._wnafT4=Array(4);a=this.n&&this.p.div(this.n);!a||0=g;b--)k=(k<<1)+c[b];e.push(k)}b=this.jpoint(null,null,null);for(c=this.jpoint(null,null,null);0g)break;b=c[g];p(0!==b);e="affine"===a.type?0>1]):e.mixedAdd(d[-b-1>>1].neg()):0>1]):e.add(d[-b-1>>1].neg())}return"affine"===a.type?e.toP():e};c.prototype._wnafMulAdd=function(a,b,c,e,g){for(var d=this._wnafT1,k=this._wnafT2,h=this._wnafT3, -l=0,p=0;pp)break;for(a=0;a>1]:0>l&&(n=k[a][-l-1>>1].neg()),b="affine"===n.type?b.mixedAdd(n):b.add(n))}for(p=0;p=g;b--)k=(k<<1)+c[b];e.push(k)}b=this.jpoint(null,null,null);for(c=this.jpoint(null,null,null);0g)break;b=c[g];n(0!==b);e="affine"===a.type?0>1]):e.mixedAdd(d[-b-1>>1].neg()):0>1]):e.add(d[-b-1>>1].neg())}return"affine"===a.type?e.toP():e};c.prototype._wnafMulAdd=function(a,b,c,e,g){for(var d=this._wnafT1,k=this._wnafT2,h=this._wnafT3, +l=0,n=0;nn)break;for(a=0;a>1]:0>l&&(p=k[a][-l-1>>1].neg()),b="affine"===p.type?b.mixedAdd(p):b.add(p))}for(n=0;n=Math.ceil((a.bitLength()+1)/b.step):!1};e.prototype._getDoubles=function(a,b){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var c=[this],d=this,f=0;fb[0].cmp(b[1])?b[0]:b[1],b=b.toRed(this.red));a.lambda?c=new f(a.lambda,16):(c=this._getEndoRoots(this.n),0===this.g.mul(c[0]).x.cmp(this.g.x.redMul(b))?c=c[0]:(c=c[1],p(0===this.g.mul(c).x.cmp(this.g.x.redMul(b)))));a= +var k=h("../../elliptic"),f=h("bn.js");h=h("inherits");var m=b.base,n=k.utils.assert;h(c,m);a.exports=c;c.prototype._getEndomorphism=function(a){if(this.zeroA&&this.g&&this.n&&1===this.p.modn(3)){var b,c;a.beta?b=(new f(a.beta,16)).toRed(this.red):(b=this._getEndoRoots(this.p),b=0>b[0].cmp(b[1])?b[0]:b[1],b=b.toRed(this.red));a.lambda?c=new f(a.lambda,16):(c=this._getEndoRoots(this.n),0===this.g.mul(c[0]).x.cmp(this.g.x.redMul(b))?c=c[0]:(c=c[1],n(0===this.g.mul(c).x.cmp(this.g.x.redMul(b)))));a= a.basis?a.basis.map(function(a){return{a:new f(a.a,16),b:new f(a.b,16)}}):this._getEndoBasis(c);return{beta:b,lambda:c,basis:a}}};c.prototype._getEndoRoots=function(a){var b=a===this.p?this.red:f.mont(a),c=(new f(2)).toRed(b).redInvm();a=c.redNeg();c=(new f(3)).toRed(b).redNeg().redSqrt().redMul(c);b=a.redAdd(c).fromRed();a=a.redSub(c).fromRed();return[b,a]};c.prototype._getEndoBasis=function(a){for(var b=this.n.ushrn(Math.floor(this.n.bitLength()/2)),c=this.n.clone(),d=new f(1),e=new f(0),g=new f(0), -k=new f(1),h,m,p,x,v,y,z=0,F;0!==a.cmpn(0);){var C=c.div(a);F=c.sub(C.mul(a));v=g.sub(C.mul(d));C=k.sub(C.mul(e));if(!p&&0>F.cmp(b))h=y.neg(),m=d,p=F.neg(),x=v;else if(p&&2===++z)break;y=F;c=a;a=F;g=d;d=v;k=e;e=C}b=F.neg();y=p.sqr().add(x.sqr());0<=b.sqr().add(v.sqr()).cmp(y)&&(b=h,v=m);p.negative&&(p=p.neg(),x=x.neg());b.negative&&(b=b.neg(),v=v.neg());return[{a:p,b:x},{a:b,b:v}]};c.prototype._endoSplit=function(a){var b=this.endo.basis,c=b[0],d=b[1],f=d.b.mul(a).divRound(this.n),e=c.b.neg().mul(a).divRound(this.n), +k=new f(1),h,m,n,x,v,y,A=0,F;0!==a.cmpn(0);){var C=c.div(a);F=c.sub(C.mul(a));v=g.sub(C.mul(d));C=k.sub(C.mul(e));if(!n&&0>F.cmp(b))h=y.neg(),m=d,n=F.neg(),x=v;else if(n&&2===++A)break;y=F;c=a;a=F;g=d;d=v;k=e;e=C}b=F.neg();y=n.sqr().add(x.sqr());0<=b.sqr().add(v.sqr()).cmp(y)&&(b=h,v=m);n.negative&&(n=n.neg(),x=x.neg());b.negative&&(b=b.neg(),v=v.neg());return[{a:n,b:x},{a:b,b:v}]};c.prototype._endoSplit=function(a){var b=this.endo.basis,c=b[0],d=b[1],f=d.b.mul(a).divRound(this.n),e=c.b.neg().mul(a).divRound(this.n), b=f.mul(c.a),g=e.mul(d.a),c=f.mul(c.b),d=e.mul(d.b);a=a.sub(b).sub(g);b=c.add(d).neg();return{k1:a,k2:b}};c.prototype.pointFromX=function(a,b){a=new f(a,16);a.red||(a=a.toRed(this.red));var c=a.redSqr().redMul(a).redIAdd(a.redMul(this.a)).redIAdd(this.b),d=c.redSqrt();if(0!==d.redSqr().redSub(c).cmp(this.zero))throw Error("invalid point");c=d.fromRed().isOdd();if(b&&!c||!b&&c)d=d.redNeg();return this.point(a,d)};c.prototype.validate=function(a){if(a.inf)return!0;var b=a.x;a=a.y;var c=this.a.redMul(b), b=b.redSqr().redMul(b).redIAdd(c).redIAdd(this.b);return 0===a.redSqr().redISub(b).cmpn(0)};c.prototype._endoWnafMulAdd=function(a,b,c){for(var d=this._endoWnafT1,f=this._endoWnafT2,e=0;e=m.cmpn(1)||0<=m.cmp(k))){var l=this.g.mul(m);if(!l.isInfinity()){var n=l.getX();c=n.umod(this.n);if(0!==c.cmpn(0)&&(m=m.invm(this.n).mul(c.mul(b.getPrivate()).iadd(a)),m=m.umod(this.n),0!==m.cmpn(0)))return a=(l.getY().isOdd()?1:0)|(0!==n.cmp(c)?2:0),f.canonical&&0f.cmpn(1)||0<=f.cmp(this.n)||0>b.cmpn(1)||0<=b.cmp(this.n))return!1;b=b.invm(this.n);a=b.mul(a).umod(this.n);b=b.mul(f).umod(this.n);if(!this.curve._maxwellTrick)return c=this.g.mulAdd(a,c.getPublic(),b),c.isInfinity()?!1:0===c.getX().umod(this.n).cmp(f);c=this.g.jmulAdd(a,c.getPublic(),b);return c.isInfinity()?!1:c.eqXToP(f)};c.prototype.recoverPubKey=function(a,b,c,g){f((3&c)===c,"The recovery param is more than two bits");b=new p(b,g);g=this.n;var d=new e(a); -a=b.r;var k=b.s,h=c&1;c>>=1;if(0<=a.cmp(this.curve.p.umod(this.curve.n))&&c)throw Error("Unable to find sencond key candinate");a=c?this.curve.pointFromX(a.add(this.curve.n),h):this.curve.pointFromX(a,h);b=b.r.invm(g);c=g.sub(d).mul(b).umod(g);g=k.mul(b).umod(g);return this.g.mulAdd(c,a,g)};c.prototype.getKeyRecoveryParam=function(a,b,c,f){b=new p(b,f);if(null!==b.recoveryParam)return b.recoveryParam;for(f=0;4>f;f++){var d;try{d=this.recoverPubKey(a,b,f)}catch(w){continue}if(d.eq(c))return f}throw Error("Unable to find valid recovery factor"); +new e(d.generate(this.n.byteLength())),m=this._truncateToN(m,!0);if(!(0>=m.cmpn(1)||0<=m.cmp(k))){var l=this.g.mul(m);if(!l.isInfinity()){var p=l.getX();c=p.umod(this.n);if(0!==c.cmpn(0)&&(m=m.invm(this.n).mul(c.mul(b.getPrivate()).iadd(a)),m=m.umod(this.n),0!==m.cmpn(0)))return a=(l.getY().isOdd()?1:0)|(0!==p.cmp(c)?2:0),f.canonical&&0f.cmpn(1)||0<=f.cmp(this.n)||0>b.cmpn(1)||0<=b.cmp(this.n))return!1;b=b.invm(this.n);a=b.mul(a).umod(this.n);b=b.mul(f).umod(this.n);if(!this.curve._maxwellTrick)return c=this.g.mulAdd(a,c.getPublic(),b),c.isInfinity()?!1:0===c.getX().umod(this.n).cmp(f);c=this.g.jmulAdd(a,c.getPublic(),b);return c.isInfinity()?!1:c.eqXToP(f)};c.prototype.recoverPubKey=function(a,b,c,g){f((3&c)===c,"The recovery param is more than two bits");b=new n(b,g);g=this.n;var d=new e(a); +a=b.r;var k=b.s,h=c&1;c>>=1;if(0<=a.cmp(this.curve.p.umod(this.curve.n))&&c)throw Error("Unable to find sencond key candinate");a=c?this.curve.pointFromX(a.add(this.curve.n),h):this.curve.pointFromX(a,h);b=b.r.invm(g);c=g.sub(d).mul(b).umod(g);g=k.mul(b).umod(g);return this.g.mulAdd(c,a,g)};c.prototype.getKeyRecoveryParam=function(a,b,c,f){b=new n(b,f);if(null!==b.recoveryParam)return b.recoveryParam;for(f=0;4>f;f++){var d;try{d=this.recoverPubKey(a,b,f)}catch(w){continue}if(d.eq(c))return f}throw Error("Unable to find valid recovery factor"); }},{"../../elliptic":85,"./key":93,"./signature":94,"bn.js":34,"hmac-drbg":116}],93:[function(h,a,b){function c(a,b){this.ec=a;this.pub=this.priv=null;b.priv&&this._importPrivate(b.priv,b.privEnc);b.pub&&this._importPublic(b.pub,b.pubEnc)}var e=h("bn.js"),g=h("../../elliptic").utils.assert;a.exports=c;c.fromPublic=function(a,b,e){return b instanceof c?b:new c(a,{pub:b,pubEnc:e})};c.fromPrivate=function(a,b,e){return b instanceof c?b:new c(a,{priv:b,privEnc:e})};c.prototype.validate=function(){var a= this.getPublic();return a.isInfinity()?{result:!1,reason:"Invalid public key"}:a.validate()?a.mul(this.ec.curve.n).isInfinity()?{result:!0,reason:null}:{result:!1,reason:"Public key * N !\x3d O"}:{result:!1,reason:"Public key is not a point"}};c.prototype.getPublic=function(a,b){"string"===typeof a&&(b=a,a=null);this.pub||(this.pub=this.ec.g.mul(this.priv));return b?this.pub.encode(b,a):this.pub};c.prototype.getPrivate=function(a){return"hex"===a?this.priv.toString(16,2):this.priv};c.prototype._importPrivate= function(a,b){this.priv=new e(a,b||16);this.priv=this.priv.umod(this.ec.curve.n)};c.prototype._importPublic=function(a,b){a.x||a.y?("mont"===this.ec.curve.type?g(a.x,"Need x coordinate"):"short"!==this.ec.curve.type&&"edwards"!==this.ec.curve.type||g(a.x&&a.y,"Need both x and y coordinate"),this.pub=this.ec.curve.point(a.x,a.y)):this.pub=this.ec.curve.decodePoint(a,b)};c.prototype.derive=function(a){return a.mul(this.priv).getX()};c.prototype.sign=function(a,b,c){return this.ec.sign(a,this,b,c)}; c.prototype.verify=function(a,b){return this.ec.verify(a,b,this)};c.prototype.inspect=function(){return"\x3cKey priv: "+(this.priv&&this.priv.toString(16,2))+" pub: "+(this.pub&&this.pub.inspect())+" \x3e"}},{"../../elliptic":85,"bn.js":34}],94:[function(h,a,b){function c(a,b){if(a instanceof c)return a;this._importDER(a,b)||(d(a.r&&a.s,"Signature without r or s"),this.r=new m(a.r,16),this.s=new m(a.s,16),this.recoveryParam=void 0===a.recoveryParam?null:a.recoveryParam)}function e(){this.place=0} -function g(a,b){var c=a[b.place++];if(!(c&128))return c;for(var c=c&15,f=0,d=0,e=b.place;db)){var c=1+(Math.log(b)/Math.LN2>>>3);for(a.push(c|128);--c;)a.push(b>>>(c<<3)&255)}a.push(b)}var m=h("bn.js"),p=h("../../elliptic").utils,d=p.assert;a.exports=c;c.prototype._importDER=function(a,b){a=p.toArray(a,b);var c=new e;if(48!==a[c.place++]|| +function g(a,b){var c=a[b.place++];if(!(c&128))return c;for(var c=c&15,f=0,d=0,e=b.place;db)){var c=1+(Math.log(b)/Math.LN2>>>3);for(a.push(c|128);--c;)a.push(b>>>(c<<3)&255)}a.push(b)}var m=h("bn.js"),n=h("../../elliptic").utils,d=n.assert;a.exports=c;c.prototype._importDER=function(a,b){a=n.toArray(a,b);var c=new e;if(48!==a[c.place++]|| g(a,c)+c.place!==a.length||2!==a[c.place++])return!1;var f=g(a,c);b=a.slice(c.place,f+c.place);c.place+=f;if(2!==a[c.place++])return!1;f=g(a,c);if(a.length!==f+c.place)return!1;a=a.slice(c.place,f+c.place);0===b[0]&&b[1]&128&&(b=b.slice(1));0===a[0]&&a[1]&128&&(a=a.slice(1));this.r=new m(b);this.s=new m(a);this.recoveryParam=null;return!0};c.prototype.toDER=function(a){var b=this.r.toArray(),c=this.s.toArray();b[0]&128&&(b=[0].concat(b));c[0]&128&&(c=[0].concat(c));b=k(b);for(c=k(c);!(c[0]||c[1]& -128);)c=c.slice(1);var d=[2];f(d,b.length);d=d.concat(b);d.push(2);f(d,c.length);b=d.concat(c);c=[48];f(c,b.length);c=c.concat(b);return p.encode(c,a)}},{"../../elliptic":85,"bn.js":34}],95:[function(h,a,b){function c(a){f("ed25519"===a,"only tested with ed25519 so far");if(!(this instanceof c))return new c(a);this.curve=a=g.curves[a].curve;this.g=a.g;this.g.precompute(a.n.bitLength()+1);this.pointClass=a.point().constructor;this.encodingLength=Math.ceil(a.n.bitLength()/8);this.hash=e.sha512}var e= -h("hash.js"),g=h("../../elliptic"),k=g.utils,f=k.assert,m=k.parseBytes,p=h("./key"),d=h("./signature");a.exports=c;c.prototype.sign=function(a,b){a=m(a);var c=this.keyFromSecret(b),f=this.hashInt(c.messagePrefix(),a);b=this.g.mul(f);var d=this.encodePoint(b);a=this.hashInt(d,c.pubBytes(),a).mul(c.priv());a=f.add(a).umod(this.curve.n);return this.makeSignature({R:b,S:a,Rencoded:d})};c.prototype.verify=function(a,b,c){a=m(a);b=this.makeSignature(b);c=this.keyFromPublic(c);a=this.hashInt(b.Rencoded(), -c.pubBytes(),a);var f=this.g.mul(b.S());return b.R().add(c.pub().mul(a)).eq(f)};c.prototype.hashInt=function(){for(var a=this.hash(),b=0;b(f>>1)-1?(f>>1)-e:e,a.isubn(e)):e=0;c.push(e);e=0!==a.cmpn(0)&&0===a.andln(f-1)?b+1:1;for(var g=1;g(f>>1)-1?(f>>1)-e:e,a.isubn(e)):e=0;c.push(e);e=0!==a.cmpn(0)&&0===a.andln(f-1)?b+1:1;for(var g=1;g>>24&255;b[e++]=a>>>16&255;b[e++]=a>>>8&255;b[e++]=a&255}else for(b[e++]=a&255,b[e++]=a>>>8&255,b[e++]=a>>>16&255,b[e++]=a>>>24&255,b[e++]=0,b[e++]=0, b[e++]=0,b[e++]=0,c=8;cthis.blockSize&&(a=(new this.Hash).update(a).digest());g(a.length<=this.blockSize);for(var b=a.length;b< this.blockSize;b++)a.push(0);for(b=0;b=a?b^c^f:31>=a?b&c|~b&f:47>=a?(b|~c)^f:63>=a?b&f|c&~f:b^(c|~f)}var g=h("./utils");h=h("./common");var k=g.rotl32,f=g.sum32,m=g.sum32_3,p=g.sum32_4,d=h.BlockHash;g.inherits(c,d);b.ripemd160=c;c.blockSize=512;c.outSize=160;c.hmacStrength=192;c.padLength=64;c.prototype._update=function(a,b){for(var c=this.h[0],d=this.h[1],g=this.h[2],h=this.h[3],w=this.h[4],B=c,z=d,F=g,C=h,G=w,E=0;80>E;E++)var I=f(k(p(c,e(E,d,g,h),a[l[E]+b],15>= -E?0:31>=E?1518500249:47>=E?1859775393:63>=E?2400959708:2840853838),r[E]),w),c=w,w=h,h=k(g,10),g=d,d=I,I=f(k(p(B,e(79-E,z,F,C),a[n[E]+b],15>=E?1352829926:31>=E?1548603684:47>=E?1836072691:63>=E?2053994217:0),u[E]),G),B=G,G=C,C=k(F,10),F=z,z=I;I=m(this.h[1],g,C);this.h[1]=m(this.h[2],h,G);this.h[2]=m(this.h[3],w,B);this.h[3]=m(this.h[4],c,z);this.h[4]=m(this.h[0],d,F);this.h[0]=I};c.prototype._digest=function(a){return"hex"===a?g.toHex32(this.h,"little"):g.split32(this.h,"little")};var l=[0,1,2,3,4, -5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],n=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],r=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11, +271733878,3285377520];this.endian="little"}function e(a,b,c,f){return 15>=a?b^c^f:31>=a?b&c|~b&f:47>=a?(b|~c)^f:63>=a?b&f|c&~f:b^(c|~f)}var g=h("./utils");h=h("./common");var k=g.rotl32,f=g.sum32,m=g.sum32_3,n=g.sum32_4,d=h.BlockHash;g.inherits(c,d);b.ripemd160=c;c.blockSize=512;c.outSize=160;c.hmacStrength=192;c.padLength=64;c.prototype._update=function(a,b){for(var c=this.h[0],d=this.h[1],g=this.h[2],h=this.h[3],w=this.h[4],B=c,A=d,F=g,C=h,G=w,E=0;80>E;E++)var I=f(k(n(c,e(E,d,g,h),a[l[E]+b],15>= +E?0:31>=E?1518500249:47>=E?1859775393:63>=E?2400959708:2840853838),r[E]),w),c=w,w=h,h=k(g,10),g=d,d=I,I=f(k(n(B,e(79-E,A,F,C),a[p[E]+b],15>=E?1352829926:31>=E?1548603684:47>=E?1836072691:63>=E?2053994217:0),u[E]),G),B=G,G=C,C=k(F,10),F=A,A=I;I=m(this.h[1],g,C);this.h[1]=m(this.h[2],h,G);this.h[2]=m(this.h[3],w,B);this.h[3]=m(this.h[4],c,A);this.h[4]=m(this.h[0],d,F);this.h[0]=I};c.prototype._digest=function(a){return"hex"===a?g.toHex32(this.h,"little"):g.split32(this.h,"little")};var l=[0,1,2,3,4, +5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],p=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],r=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11, 12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],u=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]},{"./common":105,"./utils":115}],108:[function(h,a,b){b.sha1=h("./sha/1");b.sha224=h("./sha/224");b.sha256=h("./sha/256");b.sha384=h("./sha/384");b.sha512=h("./sha/512")},{"./sha/1":109,"./sha/224":110,"./sha/256":111,"./sha/384":112, -"./sha/512":113}],109:[function(h,a,b){function c(){if(!(this instanceof c))return new c;p.call(this);this.h=[1732584193,4023233417,2562383102,271733878,3285377520];this.W=Array(80)}var e=h("../utils");b=h("../common");h=h("./common");var g=e.rotl32,k=e.sum32,f=e.sum32_5,m=h.ft_1,p=b.BlockHash,d=[1518500249,1859775393,2400959708,3395469782];e.inherits(c,p);a.exports=c;c.blockSize=512;c.outSize=160;c.hmacStrength=80;c.padLength=64;c.prototype._update=function(a,b){for(var c=this.W,e=0;16>e;e++)c[e]= -a[b+e];for(;ee;e++)c[e]= +a[b+e];for(;ee;e++)c[e]=a[b+e];for(;ee;e++)c[e]=a[b+e];for(;ed;d++)c[d]=a[b+d];for(;da&&(a+=4294967296);var g=c[d-4],h=c[d-3];b=f(g,h,19);e=f(h,g,29);g=p(g,h,6);b=b^e^g;0>b&&(b+=4294967296); -var e=c[d-14],g=c[d-13],l=c[d-30],q=c[d-29],h=k(l,q,1),n=k(l,q,8),l=m(l,q,7),h=h^n^l;0>h&&(h+=4294967296);var q=c[d-30],A=c[d-29],n=f(q,A,1),l=f(q,A,8),q=p(q,A,7),n=n^l^q;0>n&&(n+=4294967296);l=c[d-32];q=c[d-31];c[d]=r(a,b,e,g,h,n,l,q);c[d+1]=u(a,b,e,g,h,n,l,q)}};c.prototype._update=function(a,b){this._prepareBlock(a,b);a=this.W;b=this.h[0];var c=this.h[1],e=this.h[2],h=this.h[3],m=this.h[4],q=this.h[5],p=this.h[6],r=this.h[7],u=this.h[8],A=this.h[9],D=this.h[10],x=this.h[11],Q=this.h[12],ea=this.h[13], -P=this.h[14],T=this.h[15];g(this.k.length===a.length);for(var S=0;SR&&(R+=4294967296);K=R;var M=u,H=A,R=f(M,H,14),O=f(M,H,18),M=f(H,M,9),R=R^O^M;0>R&&(R+=4294967296);M=R;R=u&D^~u&Q;0>R&&(R+=4294967296);O=R;R=A&x^~A&ea;0>R&&(R+=4294967296);var H=R,L=this.k[S],U=this.k[S+1],oa=a[S],pa=a[S+1],R=w(P,T,K,M,O,H,L,U,oa,pa),O=B(P,T,K,M,O,H,L,U,oa,pa);K=b;M=c;P=k(K,M,28);T=k(M,K,2);K=k(M,K,7);P=P^T^K;0>P&&(P+=4294967296);M=b;H= -c;T=f(M,H,28);K=f(H,M,2);M=f(H,M,7);T=T^K^M;0>T&&(T+=4294967296);K=b&e^b&m^e&m;0>K&&(K+=4294967296);M=c&h^c&q^h&q;0>M&&(M+=4294967296);H=l(P,T,K,M);K=n(P,T,K,M);P=Q;T=ea;Q=D;ea=x;D=u;x=A;u=l(p,r,R,O);A=n(r,r,R,O);p=m;r=q;m=e;q=h;e=b;h=c;b=l(R,O,H,K);c=n(R,O,H,K)}d(this.h,0,b,c);d(this.h,2,e,h);d(this.h,4,m,q);d(this.h,6,p,r);d(this.h,8,u,A);d(this.h,10,D,x);d(this.h,12,Q,ea);d(this.h,14,P,T)};c.prototype._digest=function(a){return"hex"===a?e.toHex32(this.h,"big"):e.split32(this.h,"big")}},{"../common":105, +1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591];e.inherits(c,q);a.exports=c;c.blockSize=1024;c.outSize=512;c.hmacStrength=192;c.padLength=128;c.prototype._prepareBlock=function(a,b){for(var c=this.W,d=0;32>d;d++)c[d]=a[b+d];for(;da&&(a+=4294967296);var g=c[d-4],h=c[d-3];b=f(g,h,19);e=f(h,g,29);g=n(g,h,6);b=b^e^g;0>b&&(b+=4294967296); +var e=c[d-14],g=c[d-13],l=c[d-30],q=c[d-29],h=k(l,q,1),p=k(l,q,8),l=m(l,q,7),h=h^p^l;0>h&&(h+=4294967296);var q=c[d-30],z=c[d-29],p=f(q,z,1),l=f(q,z,8),q=n(q,z,7),p=p^l^q;0>p&&(p+=4294967296);l=c[d-32];q=c[d-31];c[d]=r(a,b,e,g,h,p,l,q);c[d+1]=u(a,b,e,g,h,p,l,q)}};c.prototype._update=function(a,b){this._prepareBlock(a,b);a=this.W;b=this.h[0];var c=this.h[1],e=this.h[2],h=this.h[3],m=this.h[4],n=this.h[5],q=this.h[6],r=this.h[7],u=this.h[8],z=this.h[9],D=this.h[10],x=this.h[11],Q=this.h[12],ea=this.h[13], +P=this.h[14],T=this.h[15];g(this.k.length===a.length);for(var S=0;SR&&(R+=4294967296);K=R;var M=u,H=z,R=f(M,H,14),O=f(M,H,18),M=f(H,M,9),R=R^O^M;0>R&&(R+=4294967296);M=R;R=u&D^~u&Q;0>R&&(R+=4294967296);O=R;R=z&x^~z&ea;0>R&&(R+=4294967296);var H=R,L=this.k[S],U=this.k[S+1],oa=a[S],pa=a[S+1],R=w(P,T,K,M,O,H,L,U,oa,pa),O=B(P,T,K,M,O,H,L,U,oa,pa);K=b;M=c;P=k(K,M,28);T=k(M,K,2);K=k(M,K,7);P=P^T^K;0>P&&(P+=4294967296);M=b;H= +c;T=f(M,H,28);K=f(H,M,2);M=f(H,M,7);T=T^K^M;0>T&&(T+=4294967296);K=b&e^b&m^e&m;0>K&&(K+=4294967296);M=c&h^c&n^h&n;0>M&&(M+=4294967296);H=l(P,T,K,M);K=p(P,T,K,M);P=Q;T=ea;Q=D;ea=x;D=u;x=z;u=l(q,r,R,O);z=p(r,r,R,O);q=m;r=n;m=e;n=h;e=b;h=c;b=l(R,O,H,K);c=p(R,O,H,K)}d(this.h,0,b,c);d(this.h,2,e,h);d(this.h,4,m,n);d(this.h,6,q,r);d(this.h,8,u,z);d(this.h,10,D,x);d(this.h,12,Q,ea);d(this.h,14,P,T)};c.prototype._digest=function(a){return"hex"===a?e.toHex32(this.h,"big"):e.split32(this.h,"big")}},{"../common":105, "../utils":115,"minimalistic-assert":125}],114:[function(h,a,b){function c(a,b,c){return a&b^a&c^b&c}var e=h("../utils").rotr32;b.ft_1=function(a,b,f,e){if(0===a)return b&f^~b&e;if(1===a||3===a)return b^f^e;if(2===a)return c(b,f,e)};b.ch32=function(a,b,c){return a&b^~a&c};b.maj32=c;b.p32=function(a,b,c){return a^b^c};b.s0_256=function(a){return e(a,2)^e(a,13)^e(a,22)};b.s1_256=function(a){return e(a,6)^e(a,11)^e(a,25)};b.g0_256=function(a){return e(a,7)^e(a,18)^a>>>3};b.g1_256=function(a){return e(a, 17)^e(a,19)^a>>>10}},{"../utils":115}],115:[function(h,a,b){function c(a){return(a>>>24|a>>>8&65280|a<<8&16711680|(a&255)<<24)>>>0}function e(a){return 1===a.length?"0"+a:a}function g(a){return 7===a.length?"0"+a:6===a.length?"00"+a:5===a.length?"000"+a:4===a.length?"0000"+a:3===a.length?"00000"+a:2===a.length?"000000"+a:1===a.length?"0000000"+a:a}var k=h("minimalistic-assert");h=h("inherits");b.inherits=h;b.toArray=function(a,b){if(Array.isArray(a))return a.slice();if(!a)return[];var c=[];if("string"=== typeof a)if(!b)for(b=0;b>8,f=f&255;e?c.push(e,f):c.push(f)}else{if("hex"===b)for(a=a.replace(/[^a-z0-9]+/ig,""),0!==a.length%2&&(a="0"+a),b=0;b>>32-b};b.sum32=function(a,b){return a+b>>>0};b.sum32_3=functio "minimalistic-assert":125}],116:[function(h,a,b){function c(a){if(!(this instanceof c))return new c(a);this.hash=a.hash;this.predResist=!!a.predResist;this.outLen=this.hash.outSize;this.minEntropy=a.minEntropy||this.hash.hmacStrength;this.V=this.K=this.reseedInterval=this._reseed=null;var b=g.toArray(a.entropy,a.entropyEnc||"hex"),f=g.toArray(a.nonce,a.nonceEnc||"hex");a=g.toArray(a.pers,a.persEnc||"hex");k(b.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits");this._init(b, f,a)}var e=h("hash.js"),g=h("minimalistic-crypto-utils"),k=h("minimalistic-assert");a.exports=c;c.prototype._init=function(a,b,c){a=a.concat(b).concat(c);this.K=Array(this.outLen/8);this.V=Array(this.outLen/8);for(b=0;b=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits");this._update(a.concat(c||[]));this._reseed=1};c.prototype.generate=function(a,b,c,d){if(this._reseed>this.reseedInterval)throw Error("Reseed is required"); -"string"!==typeof b&&(d=c,c=b,b=null);c&&(c=g.toArray(c,d||"hex"),this._update(c));for(d=[];d.length>1,h=-7;f=g?f-1:0;var n=g?-1:1,r=a[b+f];f+=n;g=r&(1<<-h)-1;r>>=-h;for(h+=c;0>=-h;for(h+=k;0>1,r=23===f?Math.pow(2,-24)-Math.pow(2,-77):0;h=k?0:h-1;var u=k?1:-1,w=0>b||0===b&&0>1/b?1:0;b=Math.abs(b);isNaN(b)||Infinity===b?(b=isNaN(b)?1:0,k=e):(k=Math.floor(Math.log(b)/Math.LN2),1>b*(c=Math.pow(2,-k))&&(k--,c*=2),b=1<=k+m?b+r/c:b+r*Math.pow(2,1-m),2<=b*c&&(k++, +"string"!==typeof b&&(d=c,c=b,b=null);c&&(c=g.toArray(c,d||"hex"),this._update(c));for(d=[];d.length>1,h=-7;f=g?f-1:0;var p=g?-1:1,r=a[b+f];f+=p;g=r&(1<<-h)-1;r>>=-h;for(h+=c;0>=-h;for(h+=k;0>1,r=23===f?Math.pow(2,-24)-Math.pow(2,-77):0;h=k?0:h-1;var u=k?1:-1,w=0>b||0===b&&0>1/b?1:0;b=Math.abs(b);isNaN(b)||Infinity===b?(b=isNaN(b)?1:0,k=e):(k=Math.floor(Math.log(b)/Math.LN2),1>b*(c=Math.pow(2,-k))&&(k--,c*=2),b=1<=k+m?b+r/c:b+r*Math.pow(2,1-m),2<=b*c&&(k++, c/=2),k+m>=e?(b=0,k=e):1<=k+m?(b=(b*c-1)*Math.pow(2,f),k+=m):(b=b*Math.pow(2,m-1)*Math.pow(2,f),k=0));for(;8<=f;a[g+h]=b&255,h+=u,b/=256,f-=8);k=k<>>32-b}function k(a, -b,c,d,f,e,k){return g(a+(b&c|~b&d)+f+e|0,k)+b|0}function f(a,b,c,d,f,e,k){return g(a+(b&d|c&~d)+f+e|0,k)+b|0}function m(a,b,c,d,f,e,k){return g(a+(b^c^d)+f+e|0,k)+b|0}function p(a,b,c,d,f,e,k){return g(a+(c^(b|~d))+f+e|0,k)+b|0}var d=h("inherits"),l=h("hash-base"),n=Array(16);d(c,l);c.prototype._update=function(){for(var a=0;16>a;++a)n[a]=this._block.readInt32LE(4*a);var a=this._a,b=this._b,c=this._c,d=this._d,a=k(a,b,c,d,n[0],3614090360,7),d=k(d,a,b,c,n[1],3905402710,12),c=k(c,d,a,b,n[2],606105819, -17),b=k(b,c,d,a,n[3],3250441966,22),a=k(a,b,c,d,n[4],4118548399,7),d=k(d,a,b,c,n[5],1200080426,12),c=k(c,d,a,b,n[6],2821735955,17),b=k(b,c,d,a,n[7],4249261313,22),a=k(a,b,c,d,n[8],1770035416,7),d=k(d,a,b,c,n[9],2336552879,12),c=k(c,d,a,b,n[10],4294925233,17),b=k(b,c,d,a,n[11],2304563134,22),a=k(a,b,c,d,n[12],1804603682,7),d=k(d,a,b,c,n[13],4254626195,12),c=k(c,d,a,b,n[14],2792965006,17),b=k(b,c,d,a,n[15],1236535329,22),a=f(a,b,c,d,n[1],4129170786,5),d=f(d,a,b,c,n[6],3225465664,9),c=f(c,d,a,b,n[11], -643717713,14),b=f(b,c,d,a,n[0],3921069994,20),a=f(a,b,c,d,n[5],3593408605,5),d=f(d,a,b,c,n[10],38016083,9),c=f(c,d,a,b,n[15],3634488961,14),b=f(b,c,d,a,n[4],3889429448,20),a=f(a,b,c,d,n[9],568446438,5),d=f(d,a,b,c,n[14],3275163606,9),c=f(c,d,a,b,n[3],4107603335,14),b=f(b,c,d,a,n[8],1163531501,20),a=f(a,b,c,d,n[13],2850285829,5),d=f(d,a,b,c,n[2],4243563512,9),c=f(c,d,a,b,n[7],1735328473,14),b=f(b,c,d,a,n[12],2368359562,20),a=m(a,b,c,d,n[5],4294588738,4),d=m(d,a,b,c,n[8],2272392833,11),c=m(c,d,a,b, -n[11],1839030562,16),b=m(b,c,d,a,n[14],4259657740,23),a=m(a,b,c,d,n[1],2763975236,4),d=m(d,a,b,c,n[4],1272893353,11),c=m(c,d,a,b,n[7],4139469664,16),b=m(b,c,d,a,n[10],3200236656,23),a=m(a,b,c,d,n[13],681279174,4),d=m(d,a,b,c,n[0],3936430074,11),c=m(c,d,a,b,n[3],3572445317,16),b=m(b,c,d,a,n[6],76029189,23),a=m(a,b,c,d,n[9],3654602809,4),d=m(d,a,b,c,n[12],3873151461,11),c=m(c,d,a,b,n[15],530742520,16),b=m(b,c,d,a,n[2],3299628645,23),a=p(a,b,c,d,n[0],4096336452,6),d=p(d,a,b,c,n[7],1126891415,10),c=p(c, -d,a,b,n[14],2878612391,15),b=p(b,c,d,a,n[5],4237533241,21),a=p(a,b,c,d,n[12],1700485571,6),d=p(d,a,b,c,n[3],2399980690,10),c=p(c,d,a,b,n[10],4293915773,15),b=p(b,c,d,a,n[1],2240044497,21),a=p(a,b,c,d,n[8],1873313359,6),d=p(d,a,b,c,n[15],4264355552,10),c=p(c,d,a,b,n[6],2734768916,15),b=p(b,c,d,a,n[13],1309151649,21),a=p(a,b,c,d,n[4],4149444226,6),d=p(d,a,b,c,n[11],3174756917,10),c=p(c,d,a,b,n[2],718787259,15),b=p(b,c,d,a,n[9],3951481745,21);this._a=this._a+a|0;this._b=this._b+b|0;this._c=this._c+c| +b,c,d,f,e,k){return g(a+(b&c|~b&d)+f+e|0,k)+b|0}function f(a,b,c,d,f,e,k){return g(a+(b&d|c&~d)+f+e|0,k)+b|0}function m(a,b,c,d,f,e,k){return g(a+(b^c^d)+f+e|0,k)+b|0}function n(a,b,c,d,f,e,k){return g(a+(c^(b|~d))+f+e|0,k)+b|0}var d=h("inherits"),l=h("hash-base"),p=Array(16);d(c,l);c.prototype._update=function(){for(var a=0;16>a;++a)p[a]=this._block.readInt32LE(4*a);var a=this._a,b=this._b,c=this._c,d=this._d,a=k(a,b,c,d,p[0],3614090360,7),d=k(d,a,b,c,p[1],3905402710,12),c=k(c,d,a,b,p[2],606105819, +17),b=k(b,c,d,a,p[3],3250441966,22),a=k(a,b,c,d,p[4],4118548399,7),d=k(d,a,b,c,p[5],1200080426,12),c=k(c,d,a,b,p[6],2821735955,17),b=k(b,c,d,a,p[7],4249261313,22),a=k(a,b,c,d,p[8],1770035416,7),d=k(d,a,b,c,p[9],2336552879,12),c=k(c,d,a,b,p[10],4294925233,17),b=k(b,c,d,a,p[11],2304563134,22),a=k(a,b,c,d,p[12],1804603682,7),d=k(d,a,b,c,p[13],4254626195,12),c=k(c,d,a,b,p[14],2792965006,17),b=k(b,c,d,a,p[15],1236535329,22),a=f(a,b,c,d,p[1],4129170786,5),d=f(d,a,b,c,p[6],3225465664,9),c=f(c,d,a,b,p[11], +643717713,14),b=f(b,c,d,a,p[0],3921069994,20),a=f(a,b,c,d,p[5],3593408605,5),d=f(d,a,b,c,p[10],38016083,9),c=f(c,d,a,b,p[15],3634488961,14),b=f(b,c,d,a,p[4],3889429448,20),a=f(a,b,c,d,p[9],568446438,5),d=f(d,a,b,c,p[14],3275163606,9),c=f(c,d,a,b,p[3],4107603335,14),b=f(b,c,d,a,p[8],1163531501,20),a=f(a,b,c,d,p[13],2850285829,5),d=f(d,a,b,c,p[2],4243563512,9),c=f(c,d,a,b,p[7],1735328473,14),b=f(b,c,d,a,p[12],2368359562,20),a=m(a,b,c,d,p[5],4294588738,4),d=m(d,a,b,c,p[8],2272392833,11),c=m(c,d,a,b, +p[11],1839030562,16),b=m(b,c,d,a,p[14],4259657740,23),a=m(a,b,c,d,p[1],2763975236,4),d=m(d,a,b,c,p[4],1272893353,11),c=m(c,d,a,b,p[7],4139469664,16),b=m(b,c,d,a,p[10],3200236656,23),a=m(a,b,c,d,p[13],681279174,4),d=m(d,a,b,c,p[0],3936430074,11),c=m(c,d,a,b,p[3],3572445317,16),b=m(b,c,d,a,p[6],76029189,23),a=m(a,b,c,d,p[9],3654602809,4),d=m(d,a,b,c,p[12],3873151461,11),c=m(c,d,a,b,p[15],530742520,16),b=m(b,c,d,a,p[2],3299628645,23),a=n(a,b,c,d,p[0],4096336452,6),d=n(d,a,b,c,p[7],1126891415,10),c=n(c, +d,a,b,p[14],2878612391,15),b=n(b,c,d,a,p[5],4237533241,21),a=n(a,b,c,d,p[12],1700485571,6),d=n(d,a,b,c,p[3],2399980690,10),c=n(c,d,a,b,p[10],4293915773,15),b=n(b,c,d,a,p[1],2240044497,21),a=n(a,b,c,d,p[8],1873313359,6),d=n(d,a,b,c,p[15],4264355552,10),c=n(c,d,a,b,p[6],2734768916,15),b=n(b,c,d,a,p[13],1309151649,21),a=n(a,b,c,d,p[4],4149444226,6),d=n(d,a,b,c,p[11],3174756917,10),c=n(c,d,a,b,p[2],718787259,15),b=n(b,c,d,a,p[9],3951481745,21);this._a=this._a+a|0;this._b=this._b+b|0;this._c=this._c+c| 0;this._d=this._d+d|0};c.prototype._digest=function(){this._block[this._blockOffset++]=128;56=this._blockSize;){for(var f=this._blockOffset;fa)throw new TypeError("Bad iterations");if("number"!==typeof b)throw new TypeError("Key length not a number");if(0>b||b>c||b!==b)throw new TypeError("Bad key length");}},{}],136:[function(h,a,b){function c(a,b,c){var f=e(a),g="sha512"===a||"sha384"===a?128:64;b.length>g?b=f(b):b.lengtha)throw new TypeError("Bad iterations");if("number"!==typeof b)throw new TypeError("Key length not a number");if(0>b||b>c||b!==b)throw new TypeError("Bad key length");}},{}],136:[function(h,a,b){function c(a,b,c){var f=e(a),g="sha512"===a||"sha384"===a?128:64;b.length>g?b=f(b):b.lengthn||0<=(new f(e)).cmp(a.modulus))throw Error("decryption error");e=h?d(new f(e),a):m(e,a);var r=new b(n-e.length);r.fill(0);e=b.concat([r,e],n);if(4===l){n=e;l=a.modulus.byteLength();a=p("sha1").update(new b("")).digest();h=a.length;if(0!==n[0])throw Error("decryption error");e=n.slice(1,h+1);n=n.slice(h+1);e=k(e,g(n,h));l=k(n,g(e,l-h-1));n=l.slice(0,h);a=new b(a);n=new b(n);e=0;r=a.length;a.length!== -n.length&&(e++,r=Math.min(a.length,n.length));for(var q=-1;++q=l.length){e++;break}r=l.slice(2,n-1);l.slice(n-1,n);("0002"!==a.toString("hex")&&!h||"0001"!==a.toString("hex")&&h)&&e++;8>r.length&&e++;if(e)throw Error("decryption error");return l.slice(n)}if(3===l)return e;throw Error("unknown padding");}}).call(this, -h("buffer").Buffer)},{"./mgf":140,"./withPublic":143,"./xor":144,"bn.js":34,"browserify-rsa":57,buffer:65,"create-hash":69,"parse-asn1":131}],142:[function(h,a,b){(function(b){var c=h("parse-asn1"),g=h("randombytes"),k=h("create-hash"),f=h("./mgf"),m=h("./xor"),p=h("bn.js"),d=h("./withPublic"),l=h("browserify-rsa");a.exports=function(a,e,h){var n;n=a.padding?a.padding:h?1:4;a=c(a);if(4===n){n=a.modulus.byteLength();var r=e.length,q=k("sha1").update(new b("")).digest(),A=q.length,u=2*A;if(r>n-u-2)throw Error("message too long"); -u=new b(n-r-u-2);u.fill(0);var x=n-A-1,r=g(A);e=m(b.concat([q,u,new b([1]),e],x),f(r,x));A=m(r,f(e,A));e=new p(b.concat([new b([0]),A,e],n))}else if(1===n){A=e.length;n=a.modulus.byteLength();if(A>n-11)throw Error("message too long");if(h)A=new b(n-A-3),A.fill(255);else{for(var A=n-A-3,q=new b(A),r=0,u=g(2*A),x=0,v;rp||0<=(new f(e)).cmp(a.modulus))throw Error("decryption error");e=h?d(new f(e),a):m(e,a);var r=new b(p-e.length);r.fill(0);e=b.concat([r,e],p);if(4===l){p=e;l=a.modulus.byteLength();a=n("sha1").update(new b("")).digest();h=a.length;if(0!==p[0])throw Error("decryption error");e=p.slice(1,h+1);p=p.slice(h+1);e=k(e,g(p,h));l=k(p,g(e,l-h-1));p=l.slice(0,h);a=new b(a);p=new b(p);e=0;r=a.length;a.length!== +p.length&&(e++,r=Math.min(a.length,p.length));for(var q=-1;++q=l.length){e++;break}r=l.slice(2,p-1);l.slice(p-1,p);("0002"!==a.toString("hex")&&!h||"0001"!==a.toString("hex")&&h)&&e++;8>r.length&&e++;if(e)throw Error("decryption error");return l.slice(p)}if(3===l)return e;throw Error("unknown padding");}}).call(this, +h("buffer").Buffer)},{"./mgf":140,"./withPublic":143,"./xor":144,"bn.js":34,"browserify-rsa":57,buffer:65,"create-hash":69,"parse-asn1":131}],142:[function(h,a,b){(function(b){var c=h("parse-asn1"),g=h("randombytes"),k=h("create-hash"),f=h("./mgf"),m=h("./xor"),n=h("bn.js"),d=h("./withPublic"),l=h("browserify-rsa");a.exports=function(a,e,h){var p;p=a.padding?a.padding:h?1:4;a=c(a);if(4===p){p=a.modulus.byteLength();var r=e.length,q=k("sha1").update(new b("")).digest(),z=q.length,u=2*z;if(r>p-u-2)throw Error("message too long"); +u=new b(p-r-u-2);u.fill(0);var x=p-z-1,r=g(z);e=m(b.concat([q,u,new b([1]),e],x),f(r,x));z=m(r,f(e,z));e=new n(b.concat([new b([0]),z,e],p))}else if(1===p){z=e.length;p=a.modulus.byteLength();if(z>p-11)throw Error("message too long");if(h)z=new b(p-z-3),z.fill(255);else{for(var z=p-z-3,q=new b(z),r=0,u=g(2*z),x=0,v;r=a||0===b.length&&b.ended)return 0;if(b.objectMode)return 1;if(a!==a)return b.flowing&&b.length?b.buffer.head.data.length:b.length;if(a>b.highWaterMark){var c=a;8388608<=c?c=8388608:(c--,c|=c>>>1,c|=c>>>2,c|=c>>>4,c|=c>>>8,c|=c>>>16,c++);b.highWaterMark=c}return a<=b.length?a:b.ended?b.length:(b.needReadable=!0,0)}function l(a){var b=a._readableState;b.needReadable=!1;b.emittedReadable||(t("emitReadable",b.flowing),b.emittedReadable=!0,b.sync?y(n,a):n(a))}function n(a){t("emit readable"); +n(a,e,b,!0):e.ended?a.emit("error",Error("stream.push() after EOF")):(e.reading=!1,e.decoder&&!c?(b=e.decoder.write(b),e.objectMode||0!==b.length?n(a,e,b,!1):e.readingMore||(e.readingMore=!0,y(r,a,e))):n(a,e,b,!1))):d||(e.reading=!1)}return!e.ended&&(e.needReadable||e.length=a||0===b.length&&b.ended)return 0;if(b.objectMode)return 1;if(a!==a)return b.flowing&&b.length?b.buffer.head.data.length:b.length;if(a>b.highWaterMark){var c=a;8388608<=c?c=8388608:(c--,c|=c>>>1,c|=c>>>2,c|=c>>>4,c|=c>>>8,c|=c>>>16,c++);b.highWaterMark=c}return a<=b.length?a:b.ended?b.length:(b.needReadable=!0,0)}function l(a){var b=a._readableState;b.needReadable=!1;b.emittedReadable||(t("emitReadable",b.flowing),b.emittedReadable=!0,b.sync?y(p,a):p(a))}function p(a){t("emit readable"); a.emit("readable");q(a)}function r(a,b){for(var c=b.length;!b.reading&&!b.flowing&&!b.ended&&b.length=b.length)c=b.decoder?b.buffer.join(""):1===b.buffer.length?b.buffer.head.data:b.buffer.concat(b.length),b.buffer.clear();else{c=b.buffer;b=b.decoder;if(a=b.length)c=b.decoder?b.buffer.join(""):1===b.buffer.length?b.buffer.head.data:b.buffer.concat(b.length),b.buffer.clear();else{c=b.buffer;b=b.decoder;if(ae.length?e.length:a,f=g===e.length?f+e:f+e.slice(0,a);a-=g;if(0===a){g===e.length?(++d,c.head=b.next?b.next:c.tail=null):(c.head=b,b.data=e.slice(g));break}++d}c.length-=d;c=f}else{b=G.allocUnsafe(a);d=c.head;f=1;d.data.copy(b);for(a-=d.data.length;d=d.next;){e=d.data;g=a>e.length?e.length:a;e.copy(b,b.length-a,0,g);a-=g;if(0===a){g===e.length?(++f,c.head=d.next?d.next:c.tail=null):(c.head= -d,d.data=e.slice(g));break}++f}c.length-=f;c=b}b=c}c=b}return c}function D(a){var b=a._readableState;if(0=b.highWaterMark||b.ended))return t("read: emitReadable",b.length,b.ended),0===b.length&&b.ended?D(this):l(this),null;a=d(a,b);if(0===a&&b.ended)return 0===b.length&&D(this),null;var f=b.needReadable;t("need readable",f);if(0===b.length||b.length-a>>32-b}function k(a,b,c,d,f,e,k,h){return g(a+(b^c^d)+e+k|0,h)+f|0}function f(a,b,c,d,f,e,k,h){return g(a+(b&c|~b&d)+e+k|0,h)+f|0}function m(a,b,c,d,f,e,k,h){return g(a+((b|~c)^d)+e+k|0,h)+f|0}function p(a,b,c,d,f,e,k,h){return g(a+(b&d|c&~d)+e+k|0,h)+f|0}function d(a,b,c,d,f,e, -k,h){return g(a+(b^(c|~d))+e+k|0,h)+f|0}var l=h("inherits"),n=h("hash-base");l(c,n);c.prototype._update=function(){for(var a=Array(16),b=0;16>b;++b)a[b]=this._block.readInt32LE(4*b);var b=this._a,c=this._b,e=this._c,h=this._d,l=this._e,b=k(b,c,e,h,l,a[0],0,11),e=g(e,10),l=k(l,b,c,e,h,a[1],0,14),c=g(c,10),h=k(h,l,b,c,e,a[2],0,15),b=g(b,10),e=k(e,h,l,b,c,a[3],0,12),l=g(l,10),c=k(c,e,h,l,b,a[4],0,5),h=g(h,10),b=k(b,c,e,h,l,a[5],0,8),e=g(e,10),l=k(l,b,c,e,h,a[6],0,7),c=g(c,10),h=k(h,l,b,c,e,a[7],0,9), +{"./lib/_stream_writable.js":151}],159:[function(h,a,b){(function(b){function c(){p.call(this,64);this._a=1732584193;this._b=4023233417;this._c=2562383102;this._d=271733878;this._e=3285377520}function g(a,b){return a<>>32-b}function k(a,b,c,d,f,e,k,h){return g(a+(b^c^d)+e+k|0,h)+f|0}function f(a,b,c,d,f,e,k,h){return g(a+(b&c|~b&d)+e+k|0,h)+f|0}function m(a,b,c,d,f,e,k,h){return g(a+((b|~c)^d)+e+k|0,h)+f|0}function n(a,b,c,d,f,e,k,h){return g(a+(b&d|c&~d)+e+k|0,h)+f|0}function d(a,b,c,d,f,e, +k,h){return g(a+(b^(c|~d))+e+k|0,h)+f|0}var l=h("inherits"),p=h("hash-base");l(c,p);c.prototype._update=function(){for(var a=Array(16),b=0;16>b;++b)a[b]=this._block.readInt32LE(4*b);var b=this._a,c=this._b,e=this._c,h=this._d,l=this._e,b=k(b,c,e,h,l,a[0],0,11),e=g(e,10),l=k(l,b,c,e,h,a[1],0,14),c=g(c,10),h=k(h,l,b,c,e,a[2],0,15),b=g(b,10),e=k(e,h,l,b,c,a[3],0,12),l=g(l,10),c=k(c,e,h,l,b,a[4],0,5),h=g(h,10),b=k(b,c,e,h,l,a[5],0,8),e=g(e,10),l=k(l,b,c,e,h,a[6],0,7),c=g(c,10),h=k(h,l,b,c,e,a[7],0,9), b=g(b,10),e=k(e,h,l,b,c,a[8],0,11),l=g(l,10),c=k(c,e,h,l,b,a[9],0,13),h=g(h,10),b=k(b,c,e,h,l,a[10],0,14),e=g(e,10),l=k(l,b,c,e,h,a[11],0,15),c=g(c,10),h=k(h,l,b,c,e,a[12],0,6),b=g(b,10),e=k(e,h,l,b,c,a[13],0,7),l=g(l,10),c=k(c,e,h,l,b,a[14],0,9),h=g(h,10),b=k(b,c,e,h,l,a[15],0,8),e=g(e,10),l=f(l,b,c,e,h,a[7],1518500249,7),c=g(c,10),h=f(h,l,b,c,e,a[4],1518500249,6),b=g(b,10),e=f(e,h,l,b,c,a[13],1518500249,8),l=g(l,10),c=f(c,e,h,l,b,a[1],1518500249,13),h=g(h,10),b=f(b,c,e,h,l,a[10],1518500249,11), e=g(e,10),l=f(l,b,c,e,h,a[6],1518500249,9),c=g(c,10),h=f(h,l,b,c,e,a[15],1518500249,7),b=g(b,10),e=f(e,h,l,b,c,a[3],1518500249,15),l=g(l,10),c=f(c,e,h,l,b,a[12],1518500249,7),h=g(h,10),b=f(b,c,e,h,l,a[0],1518500249,12),e=g(e,10),l=f(l,b,c,e,h,a[9],1518500249,15),c=g(c,10),h=f(h,l,b,c,e,a[5],1518500249,9),b=g(b,10),e=f(e,h,l,b,c,a[2],1518500249,11),l=g(l,10),c=f(c,e,h,l,b,a[14],1518500249,7),h=g(h,10),b=f(b,c,e,h,l,a[11],1518500249,13),e=g(e,10),l=f(l,b,c,e,h,a[8],1518500249,12),c=g(c,10),h=m(h,l, b,c,e,a[3],1859775393,11),b=g(b,10),e=m(e,h,l,b,c,a[10],1859775393,13),l=g(l,10),c=m(c,e,h,l,b,a[14],1859775393,6),h=g(h,10),b=m(b,c,e,h,l,a[4],1859775393,7),e=g(e,10),l=m(l,b,c,e,h,a[9],1859775393,14),c=g(c,10),h=m(h,l,b,c,e,a[15],1859775393,9),b=g(b,10),e=m(e,h,l,b,c,a[8],1859775393,13),l=g(l,10),c=m(c,e,h,l,b,a[1],1859775393,15),h=g(h,10),b=m(b,c,e,h,l,a[2],1859775393,14),e=g(e,10),l=m(l,b,c,e,h,a[7],1859775393,8),c=g(c,10),h=m(h,l,b,c,e,a[0],1859775393,13),b=g(b,10),e=m(e,h,l,b,c,a[6],1859775393, -6),l=g(l,10),c=m(c,e,h,l,b,a[13],1859775393,5),h=g(h,10),b=m(b,c,e,h,l,a[11],1859775393,12),e=g(e,10),l=m(l,b,c,e,h,a[5],1859775393,7),c=g(c,10),h=m(h,l,b,c,e,a[12],1859775393,5),b=g(b,10),e=p(e,h,l,b,c,a[1],2400959708,11),l=g(l,10),c=p(c,e,h,l,b,a[9],2400959708,12),h=g(h,10),b=p(b,c,e,h,l,a[11],2400959708,14),e=g(e,10),l=p(l,b,c,e,h,a[10],2400959708,15),c=g(c,10),h=p(h,l,b,c,e,a[0],2400959708,14),b=g(b,10),e=p(e,h,l,b,c,a[8],2400959708,15),l=g(l,10),c=p(c,e,h,l,b,a[12],2400959708,9),h=g(h,10),b= -p(b,c,e,h,l,a[4],2400959708,8),e=g(e,10),l=p(l,b,c,e,h,a[13],2400959708,9),c=g(c,10),h=p(h,l,b,c,e,a[3],2400959708,14),b=g(b,10),e=p(e,h,l,b,c,a[7],2400959708,5),l=g(l,10),c=p(c,e,h,l,b,a[15],2400959708,6),h=g(h,10),b=p(b,c,e,h,l,a[14],2400959708,8),e=g(e,10),l=p(l,b,c,e,h,a[5],2400959708,6),c=g(c,10),h=p(h,l,b,c,e,a[6],2400959708,5),b=g(b,10),e=p(e,h,l,b,c,a[2],2400959708,12),l=g(l,10),c=d(c,e,h,l,b,a[4],2840853838,9),h=g(h,10),b=d(b,c,e,h,l,a[0],2840853838,15),e=g(e,10),l=d(l,b,c,e,h,a[5],2840853838, +6),l=g(l,10),c=m(c,e,h,l,b,a[13],1859775393,5),h=g(h,10),b=m(b,c,e,h,l,a[11],1859775393,12),e=g(e,10),l=m(l,b,c,e,h,a[5],1859775393,7),c=g(c,10),h=m(h,l,b,c,e,a[12],1859775393,5),b=g(b,10),e=n(e,h,l,b,c,a[1],2400959708,11),l=g(l,10),c=n(c,e,h,l,b,a[9],2400959708,12),h=g(h,10),b=n(b,c,e,h,l,a[11],2400959708,14),e=g(e,10),l=n(l,b,c,e,h,a[10],2400959708,15),c=g(c,10),h=n(h,l,b,c,e,a[0],2400959708,14),b=g(b,10),e=n(e,h,l,b,c,a[8],2400959708,15),l=g(l,10),c=n(c,e,h,l,b,a[12],2400959708,9),h=g(h,10),b= +n(b,c,e,h,l,a[4],2400959708,8),e=g(e,10),l=n(l,b,c,e,h,a[13],2400959708,9),c=g(c,10),h=n(h,l,b,c,e,a[3],2400959708,14),b=g(b,10),e=n(e,h,l,b,c,a[7],2400959708,5),l=g(l,10),c=n(c,e,h,l,b,a[15],2400959708,6),h=g(h,10),b=n(b,c,e,h,l,a[14],2400959708,8),e=g(e,10),l=n(l,b,c,e,h,a[5],2400959708,6),c=g(c,10),h=n(h,l,b,c,e,a[6],2400959708,5),b=g(b,10),e=n(e,h,l,b,c,a[2],2400959708,12),l=g(l,10),c=d(c,e,h,l,b,a[4],2840853838,9),h=g(h,10),b=d(b,c,e,h,l,a[0],2840853838,15),e=g(e,10),l=d(l,b,c,e,h,a[5],2840853838, 5),c=g(c,10),h=d(h,l,b,c,e,a[9],2840853838,11),b=g(b,10),e=d(e,h,l,b,c,a[7],2840853838,6),l=g(l,10),c=d(c,e,h,l,b,a[12],2840853838,8),h=g(h,10),b=d(b,c,e,h,l,a[2],2840853838,13),e=g(e,10),l=d(l,b,c,e,h,a[10],2840853838,12),c=g(c,10),h=d(h,l,b,c,e,a[14],2840853838,5),b=g(b,10),e=d(e,h,l,b,c,a[1],2840853838,12),l=g(l,10),c=d(c,e,h,l,b,a[3],2840853838,13),h=g(h,10),b=d(b,c,e,h,l,a[8],2840853838,14),e=g(e,10),l=d(l,b,c,e,h,a[11],2840853838,11),c=g(c,10),h=d(h,l,b,c,e,a[6],2840853838,8),b=g(b,10),e=d(e, -h,l,b,c,a[15],2840853838,5),l=g(l,10),c=d(c,e,h,l,b,a[13],2840853838,6),h=g(h,10),n=this._a,x=this._b,v=this._c,y=this._d,z=this._e,n=d(n,x,v,y,z,a[5],1352829926,8),v=g(v,10),z=d(z,n,x,v,y,a[14],1352829926,9),x=g(x,10),y=d(y,z,n,x,v,a[7],1352829926,9),n=g(n,10),v=d(v,y,z,n,x,a[0],1352829926,11),z=g(z,10),x=d(x,v,y,z,n,a[9],1352829926,13),y=g(y,10),n=d(n,x,v,y,z,a[2],1352829926,15),v=g(v,10),z=d(z,n,x,v,y,a[11],1352829926,15),x=g(x,10),y=d(y,z,n,x,v,a[4],1352829926,5),n=g(n,10),v=d(v,y,z,n,x,a[13], -1352829926,7),z=g(z,10),x=d(x,v,y,z,n,a[6],1352829926,7),y=g(y,10),n=d(n,x,v,y,z,a[15],1352829926,8),v=g(v,10),z=d(z,n,x,v,y,a[8],1352829926,11),x=g(x,10),y=d(y,z,n,x,v,a[1],1352829926,14),n=g(n,10),v=d(v,y,z,n,x,a[10],1352829926,14),z=g(z,10),x=d(x,v,y,z,n,a[3],1352829926,12),y=g(y,10),n=d(n,x,v,y,z,a[12],1352829926,6),v=g(v,10),z=p(z,n,x,v,y,a[6],1548603684,9),x=g(x,10),y=p(y,z,n,x,v,a[11],1548603684,13),n=g(n,10),v=p(v,y,z,n,x,a[3],1548603684,15),z=g(z,10),x=p(x,v,y,z,n,a[7],1548603684,7),y=g(y, -10),n=p(n,x,v,y,z,a[0],1548603684,12),v=g(v,10),z=p(z,n,x,v,y,a[13],1548603684,8),x=g(x,10),y=p(y,z,n,x,v,a[5],1548603684,9),n=g(n,10),v=p(v,y,z,n,x,a[10],1548603684,11),z=g(z,10),x=p(x,v,y,z,n,a[14],1548603684,7),y=g(y,10),n=p(n,x,v,y,z,a[15],1548603684,7),v=g(v,10),z=p(z,n,x,v,y,a[8],1548603684,12),x=g(x,10),y=p(y,z,n,x,v,a[12],1548603684,7),n=g(n,10),v=p(v,y,z,n,x,a[4],1548603684,6),z=g(z,10),x=p(x,v,y,z,n,a[9],1548603684,15),y=g(y,10),n=p(n,x,v,y,z,a[1],1548603684,13),v=g(v,10),z=p(z,n,x,v,y, -a[2],1548603684,11),x=g(x,10),y=m(y,z,n,x,v,a[15],1836072691,9),n=g(n,10),v=m(v,y,z,n,x,a[5],1836072691,7),z=g(z,10),x=m(x,v,y,z,n,a[1],1836072691,15),y=g(y,10),n=m(n,x,v,y,z,a[3],1836072691,11),v=g(v,10),z=m(z,n,x,v,y,a[7],1836072691,8),x=g(x,10),y=m(y,z,n,x,v,a[14],1836072691,6),n=g(n,10),v=m(v,y,z,n,x,a[6],1836072691,6),z=g(z,10),x=m(x,v,y,z,n,a[9],1836072691,14),y=g(y,10),n=m(n,x,v,y,z,a[11],1836072691,12),v=g(v,10),z=m(z,n,x,v,y,a[8],1836072691,13),x=g(x,10),y=m(y,z,n,x,v,a[12],1836072691,5), -n=g(n,10),v=m(v,y,z,n,x,a[2],1836072691,14),z=g(z,10),x=m(x,v,y,z,n,a[10],1836072691,13),y=g(y,10),n=m(n,x,v,y,z,a[0],1836072691,13),v=g(v,10),z=m(z,n,x,v,y,a[4],1836072691,7),x=g(x,10),y=m(y,z,n,x,v,a[13],1836072691,5),n=g(n,10),v=f(v,y,z,n,x,a[8],2053994217,15),z=g(z,10),x=f(x,v,y,z,n,a[6],2053994217,5),y=g(y,10),n=f(n,x,v,y,z,a[4],2053994217,8),v=g(v,10),z=f(z,n,x,v,y,a[1],2053994217,11),x=g(x,10),y=f(y,z,n,x,v,a[3],2053994217,14),n=g(n,10),v=f(v,y,z,n,x,a[11],2053994217,14),z=g(z,10),x=f(x,v, -y,z,n,a[15],2053994217,6),y=g(y,10),n=f(n,x,v,y,z,a[0],2053994217,14),v=g(v,10),z=f(z,n,x,v,y,a[5],2053994217,6),x=g(x,10),y=f(y,z,n,x,v,a[12],2053994217,9),n=g(n,10),v=f(v,y,z,n,x,a[2],2053994217,12),z=g(z,10),x=f(x,v,y,z,n,a[13],2053994217,9),y=g(y,10),n=f(n,x,v,y,z,a[9],2053994217,12),v=g(v,10),z=f(z,n,x,v,y,a[7],2053994217,5),x=g(x,10),y=f(y,z,n,x,v,a[10],2053994217,15),n=g(n,10),v=f(v,y,z,n,x,a[14],2053994217,8),z=g(z,10),x=k(x,v,y,z,n,a[12],0,8),y=g(y,10),n=k(n,x,v,y,z,a[15],0,5),v=g(v,10), -z=k(z,n,x,v,y,a[10],0,12),x=g(x,10),y=k(y,z,n,x,v,a[4],0,9),n=g(n,10),v=k(v,y,z,n,x,a[1],0,12),z=g(z,10),x=k(x,v,y,z,n,a[5],0,5),y=g(y,10),n=k(n,x,v,y,z,a[8],0,14),v=g(v,10),z=k(z,n,x,v,y,a[7],0,6),x=g(x,10),y=k(y,z,n,x,v,a[6],0,8),n=g(n,10),v=k(v,y,z,n,x,a[2],0,13),z=g(z,10),x=k(x,v,y,z,n,a[13],0,6),y=g(y,10),n=k(n,x,v,y,z,a[14],0,5),v=g(v,10),z=k(z,n,x,v,y,a[0],0,15),x=g(x,10),y=k(y,z,n,x,v,a[3],0,13),n=g(n,10),v=k(v,y,z,n,x,a[9],0,11),z=g(z,10),x=k(x,v,y,z,n,a[11],0,11),y=g(y,10),a=this._b+e+y| -0;this._b=this._c+h+z|0;this._c=this._d+l+n|0;this._d=this._e+b+x|0;this._e=this._a+c+v|0;this._a=a};c.prototype._digest=function(){this._block[this._blockOffset++]=128;56=this._finalSize&&(this._update(this._block),this._block.fill(0));b=8*this._len; +a;this._len=0}var e=h("safe-buffer").Buffer;c.prototype.update=function(a,b){"string"===typeof a&&(a=e.from(a,b||"utf8"));b=this._block;for(var c=this._blockSize,g=a.length,k=this._len,d=0;d=this._finalSize&&(this._update(this._block),this._block.fill(0));b=8*this._len; if(4294967295>=b)this._block.writeUInt32BE(b,this._blockSize-4);else{var c=b&4294967295;this._block.writeUInt32BE((b-c)/4294967296,this._blockSize-8);this._block.writeUInt32BE(c,this._blockSize-4)}this._update(this._block);b=this._hash();return a?b.toString(a):b};c.prototype._update=function(){throw Error("_update must be implemented by subclass");};a.exports=c},{"safe-buffer":160}],162:[function(h,a,b){b=a.exports=function(a){a=a.toLowerCase();var c=b[a];if(!c)throw Error(a+" is not supported (we accept pull requests)"); return new c};b.sha=h("./sha");b.sha1=h("./sha1");b.sha224=h("./sha224");b.sha256=h("./sha256");b.sha384=h("./sha384");b.sha512=h("./sha512")},{"./sha":163,"./sha1":164,"./sha224":165,"./sha256":166,"./sha384":167,"./sha512":168}],163:[function(h,a,b){function c(){this.init();this._w=f;e.call(this,64,56)}b=h("inherits");var e=h("./hash"),g=h("safe-buffer").Buffer,k=[1518500249,1859775393,-1894007588,-899497514],f=Array(80);b(c,e);c.prototype.init=function(){this._a=1732584193;this._b=4023233417;this._c= 2562383102;this._d=271733878;this._e=3285377520;return this};c.prototype._update=function(a){for(var b=this._w,c=this._a|0,e=this._b|0,f=this._c|0,g=this._d|0,h=this._e|0,m=0;16>m;++m)b[m]=a.readInt32BE(4*m);for(;80>m;++m)b[m]=b[m-3]^b[m-8]^b[m-14]^b[m-16];for(a=0;80>a;++a){var m=~~(a/20),B=c<<5|c>>>27,q;q=0===m?e&f|~e&g:2===m?e&f|e&g|f&g:e^f^g;m=B+q+h+b[a]+k[m]|0;h=g;g=f;f=e<<30|e>>>2;e=c;c=m}this._a=c+this._a|0;this._b=e+this._b|0;this._c=f+this._c|0;this._d=g+this._d|0;this._e=h+this._e|0};c.prototype._hash= @@ -1337,7 +1337,7 @@ function(){var a=g.allocUnsafe(20);a.writeInt32BE(this._a|0,0);a.writeInt32BE(th this._b=914150663;this._c=812702999;this._d=4144912697;this._e=4290775857;this._f=1750603025;this._g=1694076839;this._h=3204075428;return this};c.prototype._hash=function(){var a=k.allocUnsafe(28);a.writeInt32BE(this._a,0);a.writeInt32BE(this._b,4);a.writeInt32BE(this._c,8);a.writeInt32BE(this._d,12);a.writeInt32BE(this._e,16);a.writeInt32BE(this._f,20);a.writeInt32BE(this._g,24);return a};a.exports=c},{"./hash":161,"./sha256":166,inherits:119,"safe-buffer":160}],166:[function(h,a,b){function c(){this.init(); this._w=f;e.call(this,64,56)}b=h("inherits");var e=h("./hash"),g=h("safe-buffer").Buffer,k=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350, 2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],f=Array(64);b(c,e);c.prototype.init=function(){this._a=1779033703;this._b=3144134277;this._c=1013904242;this._d=2773480762;this._e=1359893119;this._f=2600822924;this._g=528734635;this._h=1541459225;return this};c.prototype._update= -function(a){for(var b=this._w,c=this._a|0,e=this._b|0,f=this._c|0,g=this._d|0,h=this._e|0,m=this._f|0,B=this._g|0,q=this._h|0,A=0;16>A;++A)b[A]=a.readInt32BE(4*A);for(;64>A;++A){a=b[A-2];var D=b[A-15];b[A]=((a>>>17|a<<15)^(a>>>19|a<<13)^a>>>10)+b[A-7]+((D>>>7|D<<25)^(D>>>18|D<<14)^D>>>3)+b[A-16]|0}for(A=0;64>A;++A)a=q+((h>>>6|h<<26)^(h>>>11|h<<21)^(h>>>25|h<<7))+(B^h&(m^B))+k[A]+b[A]|0,D=((c>>>2|c<<30)^(c>>>13|c<<19)^(c>>>22|c<<10))+(c&e|f&(c|e))|0,q=B,B=m,m=h,h=g+a|0,g=f,f=e,e=c,c=a+D|0;this._a= +function(a){for(var b=this._w,c=this._a|0,e=this._b|0,f=this._c|0,g=this._d|0,h=this._e|0,m=this._f|0,B=this._g|0,q=this._h|0,z=0;16>z;++z)b[z]=a.readInt32BE(4*z);for(;64>z;++z){a=b[z-2];var D=b[z-15];b[z]=((a>>>17|a<<15)^(a>>>19|a<<13)^a>>>10)+b[z-7]+((D>>>7|D<<25)^(D>>>18|D<<14)^D>>>3)+b[z-16]|0}for(z=0;64>z;++z)a=q+((h>>>6|h<<26)^(h>>>11|h<<21)^(h>>>25|h<<7))+(B^h&(m^B))+k[z]+b[z]|0,D=((c>>>2|c<<30)^(c>>>13|c<<19)^(c>>>22|c<<10))+(c&e|f&(c|e))|0,q=B,B=m,m=h,h=g+a|0,g=f,f=e,e=c,c=a+D|0;this._a= c+this._a|0;this._b=e+this._b|0;this._c=f+this._c|0;this._d=g+this._d|0;this._e=h+this._e|0;this._f=m+this._f|0;this._g=B+this._g|0;this._h=q+this._h|0};c.prototype._hash=function(){var a=g.allocUnsafe(32);a.writeInt32BE(this._a,0);a.writeInt32BE(this._b,4);a.writeInt32BE(this._c,8);a.writeInt32BE(this._d,12);a.writeInt32BE(this._e,16);a.writeInt32BE(this._f,20);a.writeInt32BE(this._g,24);a.writeInt32BE(this._h,28);return a};a.exports=c},{"./hash":161,inherits:119,"safe-buffer":160}],167:[function(h, a,b){function c(){this.init();this._w=f;g.call(this,128,112)}b=h("inherits");var e=h("./sha512"),g=h("./hash"),k=h("safe-buffer").Buffer,f=Array(160);b(c,e);c.prototype.init=function(){this._ah=3418070365;this._bh=1654270250;this._ch=2438529370;this._dh=355462360;this._eh=1731405415;this._fh=2394180231;this._gh=3675008525;this._hh=1203062813;this._al=3238371032;this._bl=914150663;this._cl=812702999;this._dl=4144912697;this._el=4290775857;this._fl=1750603025;this._gl=1694076839;this._hl=3204075428; return this};c.prototype._hash=function(){function a(a,c,e){b.writeInt32BE(a,e);b.writeInt32BE(c,e+4)}var b=k.allocUnsafe(48);a(this._ah,this._al,0);a(this._bh,this._bl,8);a(this._ch,this._cl,16);a(this._dh,this._dl,24);a(this._eh,this._el,32);a(this._fh,this._fl,40);return b};a.exports=c},{"./hash":161,"./sha512":168,inherits:119,"safe-buffer":160}],168:[function(h,a,b){function c(){this.init();this._w=m;g.call(this,128,112)}function e(a,b){return a>>>0>>0?1:0}b=h("inherits");var g=h("./hash"), @@ -1345,24 +1345,24 @@ k=h("safe-buffer").Buffer,f=[1116352408,3609767458,1899447441,602891725,30493234 1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804, 1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554, 174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591],m=Array(160);b(c,g);c.prototype.init=function(){this._ah=1779033703;this._bh=3144134277;this._ch=1013904242;this._dh=2773480762;this._eh=1359893119;this._fh=2600822924;this._gh=528734635;this._hh=1541459225;this._al=4089235720;this._bl=2227873595;this._cl=4271175723; -this._dl=1595750129;this._el=2917565137;this._fl=725511199;this._gl=4215389547;this._hl=327033209;return this};c.prototype._update=function(a){for(var b=this._w,c=this._ah|0,g=this._bh|0,k=this._ch|0,h=this._dh|0,m=this._eh|0,p=this._fh|0,q=this._gh|0,A=this._hh|0,D=this._al|0,x=this._bl|0,v=this._cl|0,y=this._dl|0,z=this._el|0,F=this._fl|0,C=this._gl|0,G=this._hl|0,E=0;32>E;E+=2)b[E]=a.readInt32BE(4*E),b[E+1]=a.readInt32BE(4*E+4);for(;160>E;E+=2){a=b[E-30];var I=b[E-30+1],t=(a>>>1|I<<31)^(a>>>8| -I<<24)^a>>>7,N=(I>>>1|a<<31)^(I>>>8|a<<24)^(I>>>7|a<<25);a=b[E-4];var I=b[E-4+1],J=(a>>>19|I<<13)^(I>>>29|a<<3)^a>>>6,I=(I>>>19|a<<13)^(a>>>29|I<<3)^(I>>>6|a<<26),Q=b[E-32],ea=b[E-32+1];a=N+b[E-14+1]|0;t=t+b[E-14]+e(a,N)|0;a=a+I|0;t=t+J+e(a,I)|0;a=a+ea|0;t=t+Q+e(a,ea)|0;b[E]=t;b[E+1]=a}for(E=0;160>E;E+=2){t=b[E];a=b[E+1];var I=c&g|k&(c|g),P=D&x|v&(D|x),Q=(c>>>28|D<<4)^(D>>>2|c<<30)^(D>>>7|c<<25),ea=(D>>>28|c<<4)^(c>>>2|D<<30)^(c>>>7|D<<25),T=f[E],S=f[E+1],K=q^m&(p^q),M=C^z&(F^C),J=G+((z>>>14|m<<18)^ -(z>>>18|m<<14)^(m>>>9|z<<23))|0,N=A+((m>>>14|z<<18)^(m>>>18|z<<14)^(z>>>9|m<<23))+e(J,G)|0,J=J+M|0,N=N+K+e(J,M)|0,J=J+S|0,N=N+T+e(J,S)|0,J=J+a|0,N=N+t+e(J,a)|0;a=ea+P|0;t=Q+I+e(a,ea)|0;A=q;G=C;q=p;C=F;p=m;F=z;z=y+J|0;m=h+N+e(z,y)|0;h=k;y=v;k=g;v=x;g=c;x=D;D=J+a|0;c=N+t+e(D,J)|0}this._al=this._al+D|0;this._bl=this._bl+x|0;this._cl=this._cl+v|0;this._dl=this._dl+y|0;this._el=this._el+z|0;this._fl=this._fl+F|0;this._gl=this._gl+C|0;this._hl=this._hl+G|0;this._ah=this._ah+c+e(this._al,D)|0;this._bh=this._bh+ -g+e(this._bl,x)|0;this._ch=this._ch+k+e(this._cl,v)|0;this._dh=this._dh+h+e(this._dl,y)|0;this._eh=this._eh+m+e(this._el,z)|0;this._fh=this._fh+p+e(this._fl,F)|0;this._gh=this._gh+q+e(this._gl,C)|0;this._hh=this._hh+A+e(this._hl,G)|0};c.prototype._hash=function(){function a(a,c,d){b.writeInt32BE(a,d);b.writeInt32BE(c,d+4)}var b=k.allocUnsafe(64);a(this._ah,this._al,0);a(this._bh,this._bl,8);a(this._ch,this._cl,16);a(this._dh,this._dl,24);a(this._eh,this._el,32);a(this._fh,this._fl,40);a(this._gh, +this._dl=1595750129;this._el=2917565137;this._fl=725511199;this._gl=4215389547;this._hl=327033209;return this};c.prototype._update=function(a){for(var b=this._w,c=this._ah|0,g=this._bh|0,k=this._ch|0,h=this._dh|0,m=this._eh|0,n=this._fh|0,q=this._gh|0,z=this._hh|0,D=this._al|0,x=this._bl|0,v=this._cl|0,y=this._dl|0,A=this._el|0,F=this._fl|0,C=this._gl|0,G=this._hl|0,E=0;32>E;E+=2)b[E]=a.readInt32BE(4*E),b[E+1]=a.readInt32BE(4*E+4);for(;160>E;E+=2){a=b[E-30];var I=b[E-30+1],t=(a>>>1|I<<31)^(a>>>8| +I<<24)^a>>>7,N=(I>>>1|a<<31)^(I>>>8|a<<24)^(I>>>7|a<<25);a=b[E-4];var I=b[E-4+1],J=(a>>>19|I<<13)^(I>>>29|a<<3)^a>>>6,I=(I>>>19|a<<13)^(a>>>29|I<<3)^(I>>>6|a<<26),Q=b[E-32],ea=b[E-32+1];a=N+b[E-14+1]|0;t=t+b[E-14]+e(a,N)|0;a=a+I|0;t=t+J+e(a,I)|0;a=a+ea|0;t=t+Q+e(a,ea)|0;b[E]=t;b[E+1]=a}for(E=0;160>E;E+=2){t=b[E];a=b[E+1];var I=c&g|k&(c|g),P=D&x|v&(D|x),Q=(c>>>28|D<<4)^(D>>>2|c<<30)^(D>>>7|c<<25),ea=(D>>>28|c<<4)^(c>>>2|D<<30)^(c>>>7|D<<25),T=f[E],S=f[E+1],K=q^m&(n^q),M=C^A&(F^C),J=G+((A>>>14|m<<18)^ +(A>>>18|m<<14)^(m>>>9|A<<23))|0,N=z+((m>>>14|A<<18)^(m>>>18|A<<14)^(A>>>9|m<<23))+e(J,G)|0,J=J+M|0,N=N+K+e(J,M)|0,J=J+S|0,N=N+T+e(J,S)|0,J=J+a|0,N=N+t+e(J,a)|0;a=ea+P|0;t=Q+I+e(a,ea)|0;z=q;G=C;q=n;C=F;n=m;F=A;A=y+J|0;m=h+N+e(A,y)|0;h=k;y=v;k=g;v=x;g=c;x=D;D=J+a|0;c=N+t+e(D,J)|0}this._al=this._al+D|0;this._bl=this._bl+x|0;this._cl=this._cl+v|0;this._dl=this._dl+y|0;this._el=this._el+A|0;this._fl=this._fl+F|0;this._gl=this._gl+C|0;this._hl=this._hl+G|0;this._ah=this._ah+c+e(this._al,D)|0;this._bh=this._bh+ +g+e(this._bl,x)|0;this._ch=this._ch+k+e(this._cl,v)|0;this._dh=this._dh+h+e(this._dl,y)|0;this._eh=this._eh+m+e(this._el,A)|0;this._fh=this._fh+n+e(this._fl,F)|0;this._gh=this._gh+q+e(this._gl,C)|0;this._hh=this._hh+z+e(this._hl,G)|0};c.prototype._hash=function(){function a(a,c,d){b.writeInt32BE(a,d);b.writeInt32BE(c,d+4)}var b=k.allocUnsafe(64);a(this._ah,this._al,0);a(this._bh,this._bl,8);a(this._ch,this._cl,16);a(this._dh,this._dl,24);a(this._eh,this._el,32);a(this._fh,this._fl,40);a(this._gh, this._gl,48);a(this._hh,this._hl,56);return b};a.exports=c},{"./hash":161,inherits:119,"safe-buffer":160}],169:[function(h,a,b){function c(){e.call(this)}a.exports=c;var e=h("events").EventEmitter;h("inherits")(c,e);c.Readable=h("readable-stream/readable.js");c.Writable=h("readable-stream/writable.js");c.Duplex=h("readable-stream/duplex.js");c.Transform=h("readable-stream/transform.js");c.PassThrough=h("readable-stream/passthrough.js");c.Stream=c;c.prototype.pipe=function(a,b){function c(b){a.writable&& -!1===a.write(b)&&r.pause&&r.pause()}function g(){r.readable&&r.resume&&r.resume()}function k(){u||(u=!0,a.end())}function d(){u||(u=!0,"function"===typeof a.destroy&&a.destroy())}function h(a){n();if(0===e.listenerCount(this,"error"))throw a;}function n(){r.removeListener("data",c);a.removeListener("drain",g);r.removeListener("end",k);r.removeListener("close",d);r.removeListener("error",h);a.removeListener("error",h);r.removeListener("end",n);r.removeListener("close",n);a.removeListener("close",n)} -var r=this;r.on("data",c);a.on("drain",g);a._isStdio||b&&!1===b.end||(r.on("end",k),r.on("close",d));var u=!1;r.on("error",h);a.on("error",h);r.on("end",n);r.on("close",n);a.on("close",n);a.emit("pipe",r);return a}},{events:101,inherits:119,"readable-stream/duplex.js":146,"readable-stream/passthrough.js":155,"readable-stream/readable.js":156,"readable-stream/transform.js":157,"readable-stream/writable.js":158}],170:[function(h,a,b){function c(a){if(!a)return"utf8";for(var b;;)switch(a){case "utf8":case "utf-8":return"utf8"; -case "ucs2":case "ucs-2":case "utf16le":case "utf-16le":return"utf16le";case "latin1":case "binary":return"latin1";case "base64":case "ascii":case "hex":return a;default:if(b)return;a=(""+a).toLowerCase();b=!0}}function e(a){var b=c(a);if("string"!==typeof b&&(u.isEncoding===w||!w(a)))throw Error("Unknown encoding: "+a);this.encoding=b||a;switch(this.encoding){case "utf16le":this.text=m;this.end=p;a=4;break;case "utf8":this.fillLast=f;a=4;break;case "base64":this.text=d;this.end=l;a=3;break;default:this.write= -n;this.end=r;return}this.lastTotal=this.lastNeed=0;this.lastChar=u.allocUnsafe(a)}function g(a){return 127>=a?0:6===a>>5?2:14===a>>4?3:30===a>>3?4:-1}function k(a,b,c){var d=b.length-1;if(d=a?0:6===a>>5?2:14===a>>4?3:30===a>>3?4:-1}function k(a,b,c){var d=b.length-1;if(d=c)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=a[a.length-2],this.lastChar[1]=a[a.length-1],b.slice(0,-1)}return b}this.lastNeed=1;this.lastTotal=2;this.lastChar[0]=a[a.length-1];return a.toString("utf16le",b,a.length-1)}function p(a){a=a&&a.length?this.write(a):"";return this.lastNeed?a+this.lastChar.toString("utf16le",0,this.lastTotal-this.lastNeed):a}function d(a,b){var c=(a.length-b)%3;if(0===c)return a.toString("base64",b);this.lastNeed=3-c;this.lastTotal=3; -1===c?this.lastChar[0]=a[a.length-1]:(this.lastChar[0]=a[a.length-2],this.lastChar[1]=a[a.length-1]);return a.toString("base64",b,a.length-c)}function l(a){a=a&&a.length?this.write(a):"";return this.lastNeed?a+this.lastChar.toString("base64",0,3-this.lastNeed):a}function n(a){return a.toString(this.encoding)}function r(a){return a&&a.length?this.write(a):""}var u=h("safe-buffer").Buffer,w=u.isEncoding||function(a){a=""+a;switch(a&&a.toLowerCase()){case "hex":case "utf8":case "utf-8":case "ascii":case "binary":case "base64":case "ucs2":case "ucs-2":case "utf16le":case "utf-16le":case "raw":return!0; +1);if(55296<=c&&56319>=c)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=a[a.length-2],this.lastChar[1]=a[a.length-1],b.slice(0,-1)}return b}this.lastNeed=1;this.lastTotal=2;this.lastChar[0]=a[a.length-1];return a.toString("utf16le",b,a.length-1)}function n(a){a=a&&a.length?this.write(a):"";return this.lastNeed?a+this.lastChar.toString("utf16le",0,this.lastTotal-this.lastNeed):a}function d(a,b){var c=(a.length-b)%3;if(0===c)return a.toString("base64",b);this.lastNeed=3-c;this.lastTotal=3; +1===c?this.lastChar[0]=a[a.length-1]:(this.lastChar[0]=a[a.length-2],this.lastChar[1]=a[a.length-1]);return a.toString("base64",b,a.length-c)}function l(a){a=a&&a.length?this.write(a):"";return this.lastNeed?a+this.lastChar.toString("base64",0,3-this.lastNeed):a}function p(a){return a.toString(this.encoding)}function r(a){return a&&a.length?this.write(a):""}var u=h("safe-buffer").Buffer,w=u.isEncoding||function(a){a=""+a;switch(a&&a.toLowerCase()){case "hex":case "utf8":case "utf-8":case "ascii":case "binary":case "base64":case "ucs2":case "ucs-2":case "utf16le":case "utf-16le":case "raw":return!0; default:return!1}};b.StringDecoder=e;e.prototype.write=function(a){if(0===a.length)return"";var b,c;if(this.lastNeed){b=this.fillLast(a);if(void 0===b)return"";c=this.lastNeed;this.lastNeed=0}else c=0;return ca?"0"+a:""+a}return h?""+h.getFullYear()+"-"+b(h.getMonth()+1)+"-"+b(h.getDate())+" "+b(h.getHours())+":"+b(h.getMinutes())+":"+b(h.getSeconds()):null},Enum:function(h,a){return null!=h?h.toString():null}}; stjs.bind=function(h,a,b){var c=!1;null==a&&(a=h,h=null,c=!0);var e=null!=b;return function(){var g=arguments;e&&Array.prototype.splice.call(g,b,0,this);c&&(h=Array.prototype.shift.call(g));return"string"===typeof a?h[a].apply(h,g):a.apply(h,g)}};function exception(h){return h}function isEnum(h){return null!=h&&h.constructor==stjs.enumEntry} stjs.parseJSON=function(){function h(a,b,c){return b?k[b]:String.fromCharCode(parseInt(c,16))}function a(a,b){var c=f[a];c||(f[a]=c=eval(a));return new c(b)}function b(b){return b?"function"==typeof b?new b:b.name?"Map"==b.name?{}:"Array"==b.name?[]:a(b.name):a(b):{}}function c(a){a=e.exec(a);return null!=a?a[0]:null}var e=/(?:false|true|null|[\{\}\[\]]|(?:-?\b(?:0|[1-9][0-9]*)(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?\b)|(?:"(?:[^\0-\x08\x0a-\x1f"\\]|\\(?:["/\\bfnrt]|u[0-9A-Fa-f]{4}))*"))/g,g=/\\(?:([^u])|u(.{4}))/g, -k={'"':'"',"/":"/","\\":"\\",b:"\b",f:"\f",n:"\n",r:"\r",t:"\t"},f={},m=new String("");return function(e,d){var f,k=c(e),p=!1;"{"===k?f=b(d,null):"["===k?f=[]:(f=[],p=!0);var u,w=[f];d=[d];for(k=c(e);null!=k;k=c(e)){var B;switch(k.charCodeAt(0)){default:B=w[0];B[u||B.length]=+k;u=void 0;break;case 34:k=k.substring(1,k.length-1);-1!==k.indexOf("\\")&&(k=k.replace(g,h));B=w[0];if(!u)if(B instanceof Array)u=B.length;else{u=k||m;d[0]=B.constructor.$typeDescription?B.constructor.$typeDescription[u]:d[1].arguments[1]; -break}var q=d[0];if(q)var A=stjs.converters[q.name||q],k=A?A(k,q):a(q,k);B[u]=k;u=void 0;break;case 91:B=w[0];w.unshift(B[u||B.length]=[]);d.unshift(d[0].arguments[0]);u=void 0;break;case 93:w.shift();d.shift();break;case 102:B=w[0];B[u||B.length]=!1;u=void 0;break;case 110:B=w[0];B[u||B.length]=null;u=void 0;break;case 116:B=w[0];B[u||B.length]=!0;u=void 0;break;case 123:B=w[0];w.unshift(B[u||B.length]=b(d[0]));d.unshift(null);u=void 0;break;case 125:w.shift(),d.shift()}}if(p){if(1!==w.length)throw Error(); +k={'"':'"',"/":"/","\\":"\\",b:"\b",f:"\f",n:"\n",r:"\r",t:"\t"},f={},m=new String("");return function(e,d){var f,k=c(e),n=!1;"{"===k?f=b(d,null):"["===k?f=[]:(f=[],n=!0);var u,w=[f];d=[d];for(k=c(e);null!=k;k=c(e)){var B;switch(k.charCodeAt(0)){default:B=w[0];B[u||B.length]=+k;u=void 0;break;case 34:k=k.substring(1,k.length-1);-1!==k.indexOf("\\")&&(k=k.replace(g,h));B=w[0];if(!u)if(B instanceof Array)u=B.length;else{u=k||m;d[0]=B.constructor.$typeDescription?B.constructor.$typeDescription[u]:d[1].arguments[1]; +break}var q=d[0];if(q)var z=stjs.converters[q.name||q],k=z?z(k,q):a(q,k);B[u]=k;u=void 0;break;case 91:B=w[0];w.unshift(B[u||B.length]=[]);d.unshift(d[0].arguments[0]);u=void 0;break;case 93:w.shift();d.shift();break;case 102:B=w[0];B[u||B.length]=!1;u=void 0;break;case 110:B=w[0];B[u||B.length]=null;u=void 0;break;case 116:B=w[0];B[u||B.length]=!0;u=void 0;break;case 123:B=w[0];w.unshift(B[u||B.length]=b(d[0]));d.unshift(null);u=void 0;break;case 125:w.shift(),d.shift()}}if(n){if(1!==w.length)throw Error(); f=f[0]}else if(w.length)throw Error();return f}}();stjs.isArray=function(h){return"[object Array]"===stjs.toString.call(h)}; -stjs.typefy=function(h,a){function b(a,b){var c=f[a];c||(f[a]=c=eval(a));return new c(b)}function c(a){return"function"==typeof a?a:a.arguments?eval(a.arguments[0]):"string"==typeof a?eval(a):Object}function e(a,c){if(!a)return c;var d=stjs.converters[a.name||a];return d?d(c,a):b(a,c)}if(stjs.isArray(h)){for(var g=[],k=0;kTask.lastFrame+e))return setTimeout(function(){Task.delayedFunctions++;Task.lastFrame=Date.now();a()},0);Task.immediateFunctions++; -a();return null};h.asyncImmediate=function(a){Task.tasks.push(a);Task.asyncImmediateFunctions++;return 20>Task.runningAsyncFunctions?(Task.runningAsyncFunctions++,setTimeout(function(){Task.asyncContinue()},0)):null};h.asyncContinue=function(){var a=function(){Task.asyncContinue()};0=this.counter}},{},{});if(document&&document.getElementsByTagName){var scripts=document.getElementsByTagName("script");window.scriptPath=scripts[scripts.length-1].src.substr(0,scripts[scripts.length-1].src.lastIndexOf("/"))+"/"} +a)||stjs.isInstanceOf(a.constructor,Triple)&&this.source==a.source&&this.destination==a.destination&&this.edge==a.edge?!0:!1}},{},{}),EcArray=function(){},EcArray=stjs.extend(EcArray,null,[],function(h,a){h.isArray=function(a){return"[object Array]"==Object.prototype.toString.call(a)};h.removeDuplicates=function(a){for(var b=0;bTask.lastFrame+e))return setTimeout(function(){Task.delayedFunctions++;Task.lastFrame=Date.now();a()},0);Task.immediateFunctions++;a();return null};h.asyncImmediate=function(a){Task.tasks.push(a);Task.asyncImmediateFunctions++;return 20>Task.runningAsyncFunctions?(Task.runningAsyncFunctions++, +setTimeout(function(){Task.asyncContinue()},0)):null};h.asyncContinue=function(){var a=function(){Task.asyncContinue()};0=this.counter}},{},{});if(document&&document.getElementsByTagName){var scripts=document.getElementsByTagName("script");window.scriptPath=scripts[scripts.length-1].src.substr(0,scripts[scripts.length-1].src.lastIndexOf("/"))+"/"} function generateUUID(){var h=(new Date).getTime();window&&window.performance&&"function"===typeof window.performance.now&&(h+=performance.now());return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(a){var b=(h+16*Math.random())%16|0;h=Math.floor(h/16);return("x"==a?b:b&3|8).toString(16)})} -function base64ToBlob(h,a){a=a||"";h=forge.util.decode64(h);for(var b=h.length,c=Math.ceil(b/1024),e=Array(c),g=0;g>6),c+=isNaN(g)?"\x3d":"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\x3d".charAt(g&63)),b&&c.length>b&&(d+=c.substr(0,b)+"\r\n",c=c.substr(b));return d+c};c.binary.base64.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(3*Math.ceil(a.length/4)));a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");c=c||0;for(var f,g,k,h,m=0,l=c;m>4,64!==k&&(d[l++]=(g&15)<< 4|k>>2,64!==h&&(d[l++]=(k&3)<<6|h));return b?l-c:d.subarray(0,l)};c.text={utf8:{},utf16:{}};c.text.utf8.encode=function(a,b,d){a=c.encodeUtf8(a);var e=b;e||(e=new Uint8Array(a.length));for(var f=d=d||0,g=0;gb.p.compareTo(b.q)&&(a=b.p,b.p=b.q,b.q=a);0!==b.p.subtract(h.ONE).gcd(b.e).compareTo(h.ONE)?(b.p=null,e()):0!==b.q.subtract(h.ONE).gcd(b.e).compareTo(h.ONE)?(b.q=null,f(b.qBits,g)):(b.p1=b.p.subtract(h.ONE),b.q1=b.q.subtract(h.ONE),b.phi=b.p1.multiply(b.q1),0!==b.phi.gcd(b.e).compareTo(h.ONE)? (b.p=b.q=null,e()):(b.n=b.p.multiply(b.q),b.n.bitLength()!==b.bits?(b.q=null,f(b.qBits,g)):(a=b.e.modInverse(b.phi),b.keys={privateKey:r.rsa.setPrivateKey(b.n,b.e,a,b.p,b.q,a.mod(b.p1),a.mod(b.q1),b.q.modInverse(b.p)),publicKey:r.rsa.setPublicKey(b.n,b.e)},d(null,b.keys))))}"function"===typeof c&&(d=c,c={});c=c||{};var k={algorithm:{name:c.algorithm||"PRIMEINC",options:{workers:c.workers||2,workLoad:c.workLoad||100,workerScript:c.workerScript}}};"prng"in c&&(k.prng=c.prng);e()}function g(b){b=b.toString(16); -"8"<=b[0]&&(b="00"+b);return a.util.hexToBytes(b)}function d(a){return 100>=a?27:150>=a?18:200>=a?15:250>=a?12:300>=a?9:350>=a?8:400>=a?7:500>=a?6:600>=a?5:800>=a?4:1250>=a?3:2}if("undefined"===typeof h)var h=a.jsbn.BigInteger;var n=a.asn1;a.pki=a.pki||{};a.pki.rsa=a.rsa=a.rsa||{};var r=a.pki,u=[6,4,2,4,2,4,6,2],w={name:"PrivateKeyInfo",tagClass:n.Class.UNIVERSAL,type:n.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:n.Class.UNIVERSAL,type:n.Type.INTEGER,constructed:!1, -capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:n.Class.UNIVERSAL,type:n.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:n.Class.UNIVERSAL,type:n.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:n.Class.UNIVERSAL,type:n.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},B={name:"RSAPrivateKey",tagClass:n.Class.UNIVERSAL,type:n.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version", -tagClass:n.Class.UNIVERSAL,type:n.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",tagClass:n.Class.UNIVERSAL,type:n.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:n.Class.UNIVERSAL,type:n.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:n.Class.UNIVERSAL,type:n.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1", -tagClass:n.Class.UNIVERSAL,type:n.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",tagClass:n.Class.UNIVERSAL,type:n.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:n.Class.UNIVERSAL,type:n.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:n.Class.UNIVERSAL,type:n.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:n.Class.UNIVERSAL, -type:n.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},q={name:"RSAPublicKey",tagClass:n.Class.UNIVERSAL,type:n.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:n.Class.UNIVERSAL,type:n.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:n.Class.UNIVERSAL,type:n.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},A=a.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:n.Class.UNIVERSAL,type:n.Type.SEQUENCE, -constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:n.Class.UNIVERSAL,type:n.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:n.Class.UNIVERSAL,type:n.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:n.Class.UNIVERSAL,type:n.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:n.Class.UNIVERSAL, -type:n.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},D=function(a){var b;if(a.algorithm in r.oids)b=r.oids[a.algorithm];else throw b=Error("Unknown message digest algorithm."),b.algorithm=a.algorithm,b;var c=n.oidToDer(b).getBytes();b=n.create(n.Class.UNIVERSAL,n.Type.SEQUENCE,!0,[]);var d=n.create(n.Class.UNIVERSAL,n.Type.SEQUENCE,!0,[]);d.value.push(n.create(n.Class.UNIVERSAL,n.Type.OID,!1,c));d.value.push(n.create(n.Class.UNIVERSAL,n.Type.NULL,!1,""));a=n.create(n.Class.UNIVERSAL, -n.Type.OCTETSTRING,!1,a.digest().getBytes());b.value.push(d);b.value.push(a);return n.toDer(b).getBytes()},x=function(b,c,d){if(d)return b.modPow(c.e,c.n);if(!c.p||!c.q)return b.modPow(c.d,c.n);c.dP||(c.dP=c.d.mod(c.p.subtract(h.ONE)));c.dQ||(c.dQ=c.d.mod(c.q.subtract(h.ONE)));c.qInv||(c.qInv=c.q.modInverse(c.p));do d=(new h(a.util.bytesToHex(a.random.getBytes(c.n.bitLength()/8)),16)).mod(c.n);while(d.equals(h.ZERO));b=b.multiply(d.modPow(c.e,c.n)).mod(c.n);var e=b.mod(c.p).modPow(c.dP,c.p);for(b= +"8"<=b[0]&&(b="00"+b);return a.util.hexToBytes(b)}function d(a){return 100>=a?27:150>=a?18:200>=a?15:250>=a?12:300>=a?9:350>=a?8:400>=a?7:500>=a?6:600>=a?5:800>=a?4:1250>=a?3:2}if("undefined"===typeof h)var h=a.jsbn.BigInteger;var p=a.asn1;a.pki=a.pki||{};a.pki.rsa=a.rsa=a.rsa||{};var r=a.pki,u=[6,4,2,4,2,4,6,2],w={name:"PrivateKeyInfo",tagClass:p.Class.UNIVERSAL,type:p.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:p.Class.UNIVERSAL,type:p.Type.INTEGER,constructed:!1, +capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:p.Class.UNIVERSAL,type:p.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:p.Class.UNIVERSAL,type:p.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:p.Class.UNIVERSAL,type:p.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},B={name:"RSAPrivateKey",tagClass:p.Class.UNIVERSAL,type:p.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version", +tagClass:p.Class.UNIVERSAL,type:p.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",tagClass:p.Class.UNIVERSAL,type:p.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:p.Class.UNIVERSAL,type:p.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:p.Class.UNIVERSAL,type:p.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1", +tagClass:p.Class.UNIVERSAL,type:p.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",tagClass:p.Class.UNIVERSAL,type:p.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:p.Class.UNIVERSAL,type:p.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:p.Class.UNIVERSAL,type:p.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:p.Class.UNIVERSAL, +type:p.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},q={name:"RSAPublicKey",tagClass:p.Class.UNIVERSAL,type:p.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:p.Class.UNIVERSAL,type:p.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:p.Class.UNIVERSAL,type:p.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},z=a.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:p.Class.UNIVERSAL,type:p.Type.SEQUENCE, +constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:p.Class.UNIVERSAL,type:p.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:p.Class.UNIVERSAL,type:p.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:p.Class.UNIVERSAL,type:p.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:p.Class.UNIVERSAL, +type:p.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},D=function(a){var b;if(a.algorithm in r.oids)b=r.oids[a.algorithm];else throw b=Error("Unknown message digest algorithm."),b.algorithm=a.algorithm,b;var c=p.oidToDer(b).getBytes();b=p.create(p.Class.UNIVERSAL,p.Type.SEQUENCE,!0,[]);var d=p.create(p.Class.UNIVERSAL,p.Type.SEQUENCE,!0,[]);d.value.push(p.create(p.Class.UNIVERSAL,p.Type.OID,!1,c));d.value.push(p.create(p.Class.UNIVERSAL,p.Type.NULL,!1,""));a=p.create(p.Class.UNIVERSAL, +p.Type.OCTETSTRING,!1,a.digest().getBytes());b.value.push(d);b.value.push(a);return p.toDer(b).getBytes()},x=function(b,c,d){if(d)return b.modPow(c.e,c.n);if(!c.p||!c.q)return b.modPow(c.d,c.n);c.dP||(c.dP=c.d.mod(c.p.subtract(h.ONE)));c.dQ||(c.dQ=c.d.mod(c.q.subtract(h.ONE)));c.qInv||(c.qInv=c.q.modInverse(c.p));do d=(new h(a.util.bytesToHex(a.random.getBytes(c.n.bitLength()/8)),16)).mod(c.n);while(d.equals(h.ZERO));b=b.multiply(d.modPow(c.e,c.n)).mod(c.n);var e=b.mod(c.p).modPow(c.dP,c.p);for(b= b.mod(c.q).modPow(c.dQ,c.q);0>e.compareTo(b);)e=e.add(c.p);b=e.subtract(b).multiply(c.qInv).mod(c.p).multiply(c.q).add(b);return b=b.multiply(d.modInverse(c.n)).mod(c.n)};r.rsa.encrypt=function(c,d,e){var f=e,g=Math.ceil(d.n.bitLength()/8);!1!==e&&!0!==e?(f=2===e,e=b(c,d,e)):(e=a.util.createBuffer(),e.putBytes(c));c=new h(e.toHex(),16);d=x(c,d,f).toString(16);f=a.util.createBuffer();for(g-=Math.ceil(d.length/2);0>1,pBits:b-(b>>1),pqState:0,num:null,keys:null},b.e.fromInt(b.eInt);else throw Error("Invalid key generation algorithm: "+d);return b};r.rsa.stepKeyPairGenerationState=function(a,b){"algorithm"in a|| @@ -1521,14 +1522,14 @@ a.pqState=0===a.num.subtract(h.ONE).gcd(a.e).compareTo(h.ONE)?3:0:3===a.pqState& (a.q=null,a.state=0)):5===a.state&&(k=a.e.modInverse(a.phi),a.keys={privateKey:r.rsa.setPrivateKey(a.n,a.e,k,a.p,a.q,k.mod(a.p1),k.mod(a.q1),a.q.modInverse(a.p)),publicKey:r.rsa.setPublicKey(a.n,a.e)});k=+new Date;m+=k-g;g=k}return null!==a.keys};r.rsa.generateKeyPair=function(a,b,c,d){1===arguments.length?"object"===typeof a?(c=a,a=void 0):"function"===typeof a&&(d=a,a=void 0):2===arguments.length?"number"===typeof a?"function"===typeof b?(d=b,b=void 0):"number"!==typeof b&&(c=b,b=void 0):(c=a,d= b,b=a=void 0):3===arguments.length&&("number"===typeof b?"function"===typeof c&&(d=c,c=void 0):(d=c,c=b,b=void 0));c=c||{};void 0===a&&(a=c.bits||2048);void 0===b&&(b=c.e||65537);var f=r.rsa.createKeyPairGenerationState(a,b,c);if(!d)return r.rsa.stepKeyPairGenerationState(f,0),f.keys;e(f,c,d)};r.setRsaPublicKey=r.rsa.setPublicKey=function(d,e){var f={n:d,e:e,encrypt:function(c,d,e){"string"===typeof d?d=d.toUpperCase():void 0===d&&(d="RSAES-PKCS1-V1_5");if("RSAES-PKCS1-V1_5"===d)d={encode:function(a, c,d){return b(a,c,2).getBytes()}};else if("RSA-OAEP"===d||"RSAES-OAEP"===d)d={encode:function(b,c){return a.pkcs1.encode_rsa_oaep(c,b,e)}};else if(-1!==["RAW","NONE","NULL",null].indexOf(d))d={encode:function(a){return a}};else if("string"===typeof d)throw Error('Unsupported encryption scheme: "'+d+'".');c=d.encode(c,f,!0);return r.rsa.encrypt(c,f,!0)},verify:function(a,b,d){"string"===typeof d?d=d.toUpperCase():void 0===d&&(d="RSASSA-PKCS1-V1_5");if("RSASSA-PKCS1-V1_5"===d)d={verify:function(a,b){b= -c(b,f,!0);b=n.fromDer(b);return a===b.value[1].value}};else if("NONE"===d||"NULL"===d||null===d)d={verify:function(a,b){b=c(b,f,!0);return a===b}};b=r.rsa.decrypt(b,f,!0,!1);return d.verify(a,b,f.n.bitLength())}};return f};r.setRsaPrivateKey=r.rsa.setPrivateKey=function(b,d,e,f,g,k,h,m){var l={n:b,e:d,d:e,p:f,q:g,dP:k,dQ:h,qInv:m,decrypt:function(b,d,e){"string"===typeof d?d=d.toUpperCase():void 0===d&&(d="RSAES-PKCS1-V1_5");b=r.rsa.decrypt(b,l,!1,!1);if("RSAES-PKCS1-V1_5"===d)d={decode:c};else if("RSA-OAEP"=== +c(b,f,!0);b=p.fromDer(b);return a===b.value[1].value}};else if("NONE"===d||"NULL"===d||null===d)d={verify:function(a,b){b=c(b,f,!0);return a===b}};b=r.rsa.decrypt(b,f,!0,!1);return d.verify(a,b,f.n.bitLength())}};return f};r.setRsaPrivateKey=r.rsa.setPrivateKey=function(b,d,e,f,g,k,h,m){var l={n:b,e:d,d:e,p:f,q:g,dP:k,dQ:h,qInv:m,decrypt:function(b,d,e){"string"===typeof d?d=d.toUpperCase():void 0===d&&(d="RSAES-PKCS1-V1_5");b=r.rsa.decrypt(b,l,!1,!1);if("RSAES-PKCS1-V1_5"===d)d={decode:c};else if("RSA-OAEP"=== d||"RSAES-OAEP"===d)d={decode:function(b,c){return a.pkcs1.decode_rsa_oaep(c,b,e)}};else if(-1!==["RAW","NONE","NULL",null].indexOf(d))d={decode:function(a){return a}};else throw Error('Unsupported encryption scheme: "'+d+'".');return d.decode(b,l,!1)},sign:function(a,b){var c=!1;"string"===typeof b&&(b=b.toUpperCase());if(void 0===b||"RSASSA-PKCS1-V1_5"===b)b={encode:D},c=1;else if("NONE"===b||"NULL"===b||null===b)b={encode:function(){return a}},c=1;b=b.encode(a,l.n.bitLength());return r.rsa.encrypt(b, -l,c)}};return l};r.wrapRsaPrivateKey=function(a){return n.create(n.Class.UNIVERSAL,n.Type.SEQUENCE,!0,[n.create(n.Class.UNIVERSAL,n.Type.INTEGER,!1,n.integerToDer(0).getBytes()),n.create(n.Class.UNIVERSAL,n.Type.SEQUENCE,!0,[n.create(n.Class.UNIVERSAL,n.Type.OID,!1,n.oidToDer(r.oids.rsaEncryption).getBytes()),n.create(n.Class.UNIVERSAL,n.Type.NULL,!1,"")]),n.create(n.Class.UNIVERSAL,n.Type.OCTETSTRING,!1,n.toDer(a).getBytes())])};r.privateKeyFromAsn1=function(b){var c={},d=[];n.validate(b,w,c,d)&& -(b=n.fromDer(a.util.createBuffer(c.privateKey)));c={};d=[];if(!n.validate(b,B,c,d))throw c=Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey."),c.errors=d,c;var e,f,g,k,m,d=a.util.createBuffer(c.privateKeyModulus).toHex();b=a.util.createBuffer(c.privateKeyPublicExponent).toHex();e=a.util.createBuffer(c.privateKeyPrivateExponent).toHex();f=a.util.createBuffer(c.privateKeyPrime1).toHex();g=a.util.createBuffer(c.privateKeyPrime2).toHex();k=a.util.createBuffer(c.privateKeyExponent1).toHex(); -m=a.util.createBuffer(c.privateKeyExponent2).toHex();c=a.util.createBuffer(c.privateKeyCoefficient).toHex();return r.setRsaPrivateKey(new h(d,16),new h(b,16),new h(e,16),new h(f,16),new h(g,16),new h(k,16),new h(m,16),new h(c,16))};r.privateKeyToAsn1=r.privateKeyToRSAPrivateKey=function(a){return n.create(n.Class.UNIVERSAL,n.Type.SEQUENCE,!0,[n.create(n.Class.UNIVERSAL,n.Type.INTEGER,!1,n.integerToDer(0).getBytes()),n.create(n.Class.UNIVERSAL,n.Type.INTEGER,!1,g(a.n)),n.create(n.Class.UNIVERSAL,n.Type.INTEGER, -!1,g(a.e)),n.create(n.Class.UNIVERSAL,n.Type.INTEGER,!1,g(a.d)),n.create(n.Class.UNIVERSAL,n.Type.INTEGER,!1,g(a.p)),n.create(n.Class.UNIVERSAL,n.Type.INTEGER,!1,g(a.q)),n.create(n.Class.UNIVERSAL,n.Type.INTEGER,!1,g(a.dP)),n.create(n.Class.UNIVERSAL,n.Type.INTEGER,!1,g(a.dQ)),n.create(n.Class.UNIVERSAL,n.Type.INTEGER,!1,g(a.qInv))])};r.publicKeyFromAsn1=function(b){var c={},d=[];if(n.validate(b,A,c,d)){d=n.derToOid(c.publicKeyOid);if(d!==r.oids.rsaEncryption)throw c=Error("Cannot read public key. Unknown OID."), -c.oid=d,c;b=c.rsaPublicKey}d=[];if(!n.validate(b,q,c,d))throw c=Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey."),c.errors=d,c;d=a.util.createBuffer(c.publicKeyModulus).toHex();c=a.util.createBuffer(c.publicKeyExponent).toHex();return r.setRsaPublicKey(new h(d,16),new h(c,16))};r.publicKeyToAsn1=r.publicKeyToSubjectPublicKeyInfo=function(a){return n.create(n.Class.UNIVERSAL,n.Type.SEQUENCE,!0,[n.create(n.Class.UNIVERSAL,n.Type.SEQUENCE,!0,[n.create(n.Class.UNIVERSAL, -n.Type.OID,!1,n.oidToDer(r.oids.rsaEncryption).getBytes()),n.create(n.Class.UNIVERSAL,n.Type.NULL,!1,"")]),n.create(n.Class.UNIVERSAL,n.Type.BITSTRING,!1,[r.publicKeyToRSAPublicKey(a)])])};r.publicKeyToRSAPublicKey=function(a){return n.create(n.Class.UNIVERSAL,n.Type.SEQUENCE,!0,[n.create(n.Class.UNIVERSAL,n.Type.INTEGER,!1,g(a.n)),n.create(n.Class.UNIVERSAL,n.Type.INTEGER,!1,g(a.e))])}}if("function"!==typeof define)if("object"===typeof module&&module.exports){var a=!0;define=function(a,b){b(require, +l,c)}};return l};r.wrapRsaPrivateKey=function(a){return p.create(p.Class.UNIVERSAL,p.Type.SEQUENCE,!0,[p.create(p.Class.UNIVERSAL,p.Type.INTEGER,!1,p.integerToDer(0).getBytes()),p.create(p.Class.UNIVERSAL,p.Type.SEQUENCE,!0,[p.create(p.Class.UNIVERSAL,p.Type.OID,!1,p.oidToDer(r.oids.rsaEncryption).getBytes()),p.create(p.Class.UNIVERSAL,p.Type.NULL,!1,"")]),p.create(p.Class.UNIVERSAL,p.Type.OCTETSTRING,!1,p.toDer(a).getBytes())])};r.privateKeyFromAsn1=function(b){var c={},d=[];p.validate(b,w,c,d)&& +(b=p.fromDer(a.util.createBuffer(c.privateKey)));c={};d=[];if(!p.validate(b,B,c,d))throw c=Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey."),c.errors=d,c;var e,f,g,k,m,d=a.util.createBuffer(c.privateKeyModulus).toHex();b=a.util.createBuffer(c.privateKeyPublicExponent).toHex();e=a.util.createBuffer(c.privateKeyPrivateExponent).toHex();f=a.util.createBuffer(c.privateKeyPrime1).toHex();g=a.util.createBuffer(c.privateKeyPrime2).toHex();k=a.util.createBuffer(c.privateKeyExponent1).toHex(); +m=a.util.createBuffer(c.privateKeyExponent2).toHex();c=a.util.createBuffer(c.privateKeyCoefficient).toHex();return r.setRsaPrivateKey(new h(d,16),new h(b,16),new h(e,16),new h(f,16),new h(g,16),new h(k,16),new h(m,16),new h(c,16))};r.privateKeyToAsn1=r.privateKeyToRSAPrivateKey=function(a){return p.create(p.Class.UNIVERSAL,p.Type.SEQUENCE,!0,[p.create(p.Class.UNIVERSAL,p.Type.INTEGER,!1,p.integerToDer(0).getBytes()),p.create(p.Class.UNIVERSAL,p.Type.INTEGER,!1,g(a.n)),p.create(p.Class.UNIVERSAL,p.Type.INTEGER, +!1,g(a.e)),p.create(p.Class.UNIVERSAL,p.Type.INTEGER,!1,g(a.d)),p.create(p.Class.UNIVERSAL,p.Type.INTEGER,!1,g(a.p)),p.create(p.Class.UNIVERSAL,p.Type.INTEGER,!1,g(a.q)),p.create(p.Class.UNIVERSAL,p.Type.INTEGER,!1,g(a.dP)),p.create(p.Class.UNIVERSAL,p.Type.INTEGER,!1,g(a.dQ)),p.create(p.Class.UNIVERSAL,p.Type.INTEGER,!1,g(a.qInv))])};r.publicKeyFromAsn1=function(b){var c={},d=[];if(p.validate(b,z,c,d)){d=p.derToOid(c.publicKeyOid);if(d!==r.oids.rsaEncryption)throw c=Error("Cannot read public key. Unknown OID."), +c.oid=d,c;b=c.rsaPublicKey}d=[];if(!p.validate(b,q,c,d))throw c=Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey."),c.errors=d,c;d=a.util.createBuffer(c.publicKeyModulus).toHex();c=a.util.createBuffer(c.publicKeyExponent).toHex();return r.setRsaPublicKey(new h(d,16),new h(c,16))};r.publicKeyToAsn1=r.publicKeyToSubjectPublicKeyInfo=function(a){return p.create(p.Class.UNIVERSAL,p.Type.SEQUENCE,!0,[p.create(p.Class.UNIVERSAL,p.Type.SEQUENCE,!0,[p.create(p.Class.UNIVERSAL, +p.Type.OID,!1,p.oidToDer(r.oids.rsaEncryption).getBytes()),p.create(p.Class.UNIVERSAL,p.Type.NULL,!1,"")]),p.create(p.Class.UNIVERSAL,p.Type.BITSTRING,!1,[r.publicKeyToRSAPublicKey(a)])])};r.publicKeyToRSAPublicKey=function(a){return p.create(p.Class.UNIVERSAL,p.Type.SEQUENCE,!0,[p.create(p.Class.UNIVERSAL,p.Type.INTEGER,!1,g(a.n)),p.create(p.Class.UNIVERSAL,p.Type.INTEGER,!1,g(a.e))])}}if("function"!==typeof define)if("object"===typeof module&&module.exports){var a=!0;define=function(a,b){b(require, module)}}else return"undefined"===typeof forge&&(forge={}),h(forge);var b,c=function(a,c){c.exports=function(c){var e=b.map(function(b){return a(b)}).concat(h);c=c||{};c.defined=c.defined||{};if(c.defined.rsa)return c.rsa;c.defined.rsa=!0;for(var f=0;fb;++b)n[b]=Math.floor(4294967296* -Math.abs(Math.sin(b+1)));r=!0}function c(a,b,c){for(var e,f,g,k,m,l,p,r=c.length();64<=r;){f=a.h0;g=a.h1;k=a.h2;m=a.h3;for(p=0;16>p;++p)b[p]=c.getInt32Le(),e=m^g&(k^m),e=f+e+n[p]+b[p],l=h[p],f=m,m=k,k=g,g+=e<>>32-l;for(;32>p;++p)e=k^m&(g^k),e=f+e+n[p]+b[d[p]],l=h[p],f=m,m=k,k=g,g+=e<>>32-l;for(;48>p;++p)e=g^k^m,e=f+e+n[p]+b[d[p]],l=h[p],f=m,m=k,k=g,g+=e<>>32-l;for(;64>p;++p)e=k^(g|~m),e=f+e+n[p]+b[d[p]],l=h[p],f=m,m=k,k=g,g+=e<>>32-l;a.h0=a.h0+f|0;a.h1=a.h1+g|0;a.h2=a.h2+k|0;a.h3= +(function(){function h(a){function b(){g=String.fromCharCode(128);g+=a.util.fillString(String.fromCharCode(0),64);d=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,1,6,11,0,5,10,15,4,9,14,3,8,13,2,7,12,5,8,11,14,1,4,7,10,13,0,3,6,9,12,15,2,0,7,14,5,12,3,10,1,8,15,6,13,4,11,2,9];h=[7,12,17,22,7,12,17,22,7,12,17,22,7,12,17,22,5,9,14,20,5,9,14,20,5,9,14,20,5,9,14,20,4,11,16,23,4,11,16,23,4,11,16,23,4,11,16,23,6,10,15,21,6,10,15,21,6,10,15,21,6,10,15,21];p=Array(64);for(var b=0;64>b;++b)p[b]=Math.floor(4294967296* +Math.abs(Math.sin(b+1)));r=!0}function c(a,b,c){for(var e,f,g,k,m,l,n,r=c.length();64<=r;){f=a.h0;g=a.h1;k=a.h2;m=a.h3;for(n=0;16>n;++n)b[n]=c.getInt32Le(),e=m^g&(k^m),e=f+e+p[n]+b[n],l=h[n],f=m,m=k,k=g,g+=e<>>32-l;for(;32>n;++n)e=k^m&(g^k),e=f+e+p[n]+b[d[n]],l=h[n],f=m,m=k,k=g,g+=e<>>32-l;for(;48>n;++n)e=g^k^m,e=f+e+p[n]+b[d[n]],l=h[n],f=m,m=k,k=g,g+=e<>>32-l;for(;64>n;++n)e=k^(g|~m),e=f+e+p[n]+b[d[n]],l=h[n],f=m,m=k,k=g,g+=e<>>32-l;a.h0=a.h0+f|0;a.h1=a.h1+g|0;a.h2=a.h2+k|0;a.h3= a.h3+m|0;r-=64}}var e=a.md5=a.md5||{};a.md=a.md||{};a.md.algorithms=a.md.algorithms||{};a.md.md5=a.md.algorithms.md5=e;e.create=function(){r||b();var d=null,e=a.util.createBuffer(),f=Array(16),k={algorithm:"md5",blockLength:64,digestLength:16,messageLength:0,messageLength64:[0,0],start:function(){k.messageLength=0;k.messageLength64=[0,0];e=a.util.createBuffer();d={h0:1732584193,h1:4023233417,h2:2562383102,h3:271733878};return k}};k.start();k.update=function(b,g){"utf8"===g&&(b=a.util.encodeUtf8(b)); k.messageLength+=b.length;k.messageLength64[0]+=b.length/4294967296>>>0;k.messageLength64[1]+=b.length>>>0;e.putBytes(b);c(d,f,e);(2048>>28);var h={h0:d.h0,h1:d.h1,h2:d.h2,h3:d.h3};c(h,f,b);b=a.util.createBuffer();b.putInt32Le(h.h0); -b.putInt32Le(h.h1);b.putInt32Le(h.h2);b.putInt32Le(h.h3);return b};return k};var g=null,d=null,h=null,n=null,r=!1}if("function"!==typeof define)if("object"===typeof module&&module.exports){var a=!0;define=function(a,b){b(require,module)}}else return"undefined"===typeof forge&&(forge={}),h(forge);var b,c=function(a,c){c.exports=function(c){var e=b.map(function(b){return a(b)}).concat(h);c=c||{};c.defined=c.defined||{};if(c.defined.md5)return c.md5;c.defined.md5=!0;for(var f=0;f(new Date).getTime()+a)return b[1];a+=2E4}b=[];for(var g=0;g(new Date).getTime()+a){e(f[1]);return}a+=2E4}var h=a;(new EcAsyncHelper).each(EcIdentityManager.ids,function(a,d){EcIdentityManager.createSignatureAsync(h,c,a.ppk,function(a){b.push(a.atIfy());d()},g)},function(a){var d= -JSON.stringify(b);EcIdentityManager.signatureSheetCaching&&(a=[],a[0]=(new Date).getTime()+h,a[1]=d,EcIdentityManager.signatureSheetCache[c]=a);e(d)})}else a=EcIdentityManager.signatureSheet(a,c),null!=e&&e(a)};h.createSignature=function(a,c,e){var b=new EbacSignature;b.owner=e.toPk().toPem();b.expiry=(new Date).getTime()+a;b.server=c;b.signature=EcRsaOaep.sign(e,b.toJson());return b};h.createSignatureAsync=function(a,c,e,g,k){var b=new EbacSignature;b.owner=e.toPk().toPem();b.expiry=(new Date).getTime()+ -a;b.server=c;EcRsaOaepAsync.sign(e,b.toJson(),function(a){b.signature=a;g(b)},k)};h.getPpk=function(a){a=a.toPem();for(var b=0;b(new Date).getTime()+a)return b[1]; +a+=2E4}b=[];for(var g=0;g(new Date).getTime()+ +a){e(f[1]);return}a+=2E4}var h=a;(new EcAsyncHelper).each(EcIdentityManager.ids,function(a,d){EcIdentityManager.createSignatureAsync(h,c,a.ppk,function(a){b.push(a.atIfy());d()},g)},function(a){var d=JSON.stringify(b);EcIdentityManager.signatureSheetCaching&&(a=[],a[0]=(new Date).getTime()+h,a[1]=d,EcIdentityManager.signatureSheetCache[c]=a);e(d)})}else a=EcIdentityManager.signatureSheet(a,c),null!=e&&e(a)};h.createSignature=function(a,c,e){var b=new EbacSignature;b.owner=e.toPk().toPem();b.expiry= +(new Date).getTime()+a;b.server=c;b.signature=EcRsaOaep.sign(e,b.toJson());return b};h.createSignatureAsync=function(a,c,e,g,k){var b=new EbacSignature;b.owner=e.toPk().toPem();b.expiry=(new Date).getTime()+a;b.server=c;EcRsaOaepAsync.sign(e,b.toJson(),function(a){b.signature=a;g(b)},k)};h.getPpk=function(a){a=a.toPem();for(var b=0;bb.usernameSalt.length?c("Insufficient length on Username Salt"):(b.usernameIterations=stjs.trunc(e.usernameIterations),1E3>b.usernameIterations?c("Insufficient iterations on Username Hash"): +stjs.extend(EcRemoteIdentityManager,null,[RemoteIdentityManagerInterface],function(h,a){a.server=null;a.global=null;a.usernameWithSalt=null;a.passwordWithSalt=null;a.secretWithSalt=null;a.pad=null;a.token=null;a.usernameSalt=null;a.usernameIterations=0;a.usernameWidth=0;a.passwordSalt=null;a.passwordIterations=0;a.passwordWidth=0;a.secretSalt=null;a.secretIterations=0;a.configured=!1;a.isGlobal=function(){return null==this.global?!1:this.global};a.configure=function(a,c,e,g,k,f,h,n){this.usernameSalt= +a;this.usernameIterations=c;this.usernameWidth=e;this.passwordSalt=g;this.passwordIterations=k;this.passwordWidth=f;this.secretSalt=h;this.secretIterations=n;this.configured=!0};a.configureFromServer=function(a,c){var b=this;EcRemote.getExpectingObject(this.server,"sky/id/salts",function(e){b.usernameSalt=e.usernameSalt;16>b.usernameSalt.length?c("Insufficient length on Username Salt"):(b.usernameIterations=stjs.trunc(e.usernameIterations),1E3>b.usernameIterations?c("Insufficient iterations on Username Hash"): (b.usernameWidth=stjs.trunc(e.usernameLength),64!=b.usernameWidth?c("Username Hash required to be length 64."):(b.passwordSalt=e.passwordSalt,16>b.passwordSalt.length?c("Insufficient length on Password Salt"):(b.passwordIterations=stjs.trunc(e.passwordIterations),1E3>b.passwordIterations?c("Insufficient iterations on Password Hash"):(b.passwordWidth=stjs.trunc(e.passwordLength),64!=b.passwordWidth?c("Password Hash required to be length 64."):(b.secretSalt=e.secretSalt,16>b.secretSalt.length?c("Insufficient length on Secret Salt"): (b.secretIterations=stjs.trunc(e.secretIterations),1E3>b.secretIterations?c("Insufficient iterations on Secret Hash"):(b.configured=!0,null!=a&&a(e)))))))))},function(a){b.configured=!1;null!=c?c(a):console.error(a)})};a.clear=function(){this.token=this.pad=this.secretWithSalt=this.passwordWithSalt=this.usernameWithSalt=null};a.setDefaultIdentityManagementServer=function(a){this.server=a};a.startLogin=function(a,c){if(!this.configured)throw new RuntimeException("Remote Identity not configured."); this.usernameWithSalt=forge.util.encode64(forge.pkcs5.pbkdf2(a,this.usernameSalt,this.usernameIterations,this.usernameWidth));this.passwordWithSalt=forge.util.encode64(forge.pkcs5.pbkdf2(c,this.passwordSalt,this.passwordIterations,this.passwordWidth));var b=[];b.push(a,c);a=this.splicePasswords(b);this.secretWithSalt=forge.util.encode64(forge.pkcs5.pbkdf2(a,this.secretSalt,this.secretIterations,32))};a.changePassword=function(a,c,e){var b=forge.util.encode64(forge.pkcs5.pbkdf2(a,this.usernameSalt, @@ -3354,8 +3349,8 @@ this.usernameIterations,this.usernameWidth));if(this.usernameWithSalt!=b)throw n [];c.push(a,e);a=this.splicePasswords(c);this.secretWithSalt=forge.util.encode64(forge.pkcs5.pbkdf2(a,this.secretSalt,this.secretIterations,32));return!0};a.fetch=function(a,c){if(this.configured)if(null==this.usernameWithSalt||null==this.passwordWithSalt||null==this.secretWithSalt)c("Please log in before performing this operation.");else{var b=new EbacCredentialRequest;b.username=this.usernameWithSalt;b.password=this.passwordWithSalt;var g=new FormData;g.append("credentialRequest",b.toJson());var k= this;EcRemote.postExpectingObject(this.server,"sky/id/login",g,function(b){k.pad=b.pad;k.token=b.token;if(null!=b.credentials)for(var c=0;c=a[k].length||(b+=a[k].charAt(e),g=!0);if(!g)break}return b}},{},{}),EcEncryptedValue=function(){EbacEncryptedValue.call(this)},EcEncryptedValue=stjs.extend(EcEncryptedValue,EbacEncryptedValue, +if(null==h.source||h.source==this.server)h.source=this.server,b.push(h.toCredential(this.secretWithSalt))}for(f=0;f=a[k].length||(b+=a[k].charAt(e),g=!0);if(!g)break}return b}},{},{}),EcEncryptedValue=function(){EbacEncryptedValue.call(this)},EcEncryptedValue=stjs.extend(EcEncryptedValue,EbacEncryptedValue, [],function(h,a){h.encryptOnSaveMap=null;h.revive=function(a){if(null==a)return null;var b=new EcEncryptedValue;b.copyFrom(a);return b};h.toEncryptedValue=function(a,c){a.updateTimestamp();var b=new EcEncryptedValue;null!=c&&c||(b.encryptedType=a.type);c=EcAes.newIv(16);var g=EcAes.newIv(16);b.payload=EcAesCtr.encrypt(a.toJson(),g,c);b.owner=a.owner;b.reader=a.reader;b.id=a.id;null!=a.name&&(b.name=a.name);if(null!=a.owner)for(var k=0;kc||g!=c)try{b=this.tryDecryptSecretByKeyAndIndex(a,g)}catch(k){}if(null!=b)return b}}return null};a.decryptSecretAsync=function(a,c){var b=[],g=[];if(null!=this.owner)for(var k=0;kc?this.decryptSecretsByKeyAsync(a,e,g):EcRsaOaepAsync.decrypt(a,this.secret[c],function(c){EcLinkedData.isProbablyJson(c)?e(EbacEncryptedSecret.fromEncryptableJson(JSON.parse(c))):b.decryptSecretsByKeyAsync(a,e,g)},function(c){b.decryptSecretsByKeyAsync(a,e,g)}):g("Secret field is empty.")};a.decryptSecretsByKeyAsync=function(a,c,e){var b=new EcAsyncHelper;b.each(this.secret,function(e,f){EcRsaOaepAsync.decrypt(a,e,function(a){-1!=b.counter&&(EcLinkedData.isProbablyJson(a)? (b.stop(),c(EbacEncryptedSecret.fromEncryptableJson(JSON.parse(a)))):f())},function(a){f()})},function(a){e("Could not find decryption key.")})};a.isAnEncrypted=function(a){if(null==this.encryptedType)return!1;var b=a.split("/");return this.encryptedType==a||this.encryptedType==b[b.length-1]};a.addReader=function(a){var b=a.toPem();null==this.reader&&(this.reader=[]);for(var e=0;eEcRepository.repos.length||null==EcRepository.repos[g])return delete EcRepository.fetching[a], null;var b=EcRepository.repos[g];1==e[b.selectedServer]&&EcRepository.findBlocking(a,c,e,g+1);e[b.selectedServer]=!0;b=b.searchBlocking('@id:"'+a+'"');if(null!=b&&0!=b.length)for(var f=0;f(new Date).getTime()){setTimeout(function(){l.searchWithParams(a,c,e,g,k)},100);return}EcRepository.fetching[d]=(new Date).getTime()+6E4}}else d=null;var n=new FormData;n.append("data", -b);null!=p&&n.append("searchParams",JSON.stringify(p));l=this;1==EcRepository.unsigned||1==h.unsigned?(n.append("signatureSheet","[]"),EcRemote.postExpectingObject(l.selectedServer,"sky/repo/search",n,function(a){EcRepository.cachingSearch&&(EcRepository.cache[d]=a);null!=d&&delete EcRepository.fetching[d];l.handleSearchResults(a,e,g,k)},function(a){null!=d&&delete EcRepository.fetching[d];null!=k&&k(a)})):EcIdentityManager.signatureSheetAsync(6E4+this.timeOffset,this.selectedServer,function(a){n.append("signatureSheet", -a);EcRemote.postExpectingObject(l.selectedServer,"sky/repo/search",n,function(a){EcRepository.cachingSearch&&(EcRepository.cache[d]=a);null!=d&&delete EcRepository.fetching[d];l.handleSearchResults(a,e,g,k)},function(a){null!=d&&delete EcRepository.fetching[d];null!=k&&k(a)})},k)}};a.searchWithParamsBlocking=function(a,c){var b;null==c&&(c={});var g={};b=this.searchParamProps(a,c,g);null!=c.fields&&(g.fields=c.fields);a=EcRemote.async;EcRemote.async=!1;var k;k=JSON.stringify(g)+b;if(EcRepository.cachingSearch&& -null!=EcRepository.cache[k])return this.handleSearchResults(EcRepository.cache[k],null,null,null);var f=new FormData;f.append("data",b);null!=g&&f.append("searchParams",JSON.stringify(g));1==EcRepository.unsigned||1==c.unsigned?(f.append("signatureSheet","[]"),EcRemote.postExpectingObject(this.selectedServer,"sky/repo/search",f,function(a){EcRepository.cache[k]=a;null!=k&&delete EcRepository.fetching[k]},function(a){null!=k&&delete EcRepository.fetching[k];EcRepository.cache[k]=null})):(c=EcIdentityManager.signatureSheet(6E4+ -this.timeOffset,this.selectedServer),f.append("signatureSheet",c),EcRemote.postExpectingObject(this.selectedServer,"sky/repo/search",f,function(a){EcRepository.cache[k]=a;null!=k&&delete EcRepository.fetching[k]},function(a){null!=k&&delete EcRepository.fetching[k];EcRepository.cache[k]=null}));c=this.handleSearchResults(EcRepository.cache[k],null,null,null);EcRepository.cachingSearch||delete EcRepository.cache[k];EcRemote.async=a;return c};a.searchParamProps=function(a,c,e){null!=c.start&&(e.start= -c.start);null!=c.size&&(e.size=c.size);null!=c.types&&(e.types=c.types);null!=c.sort&&(e.sort=c.sort);null!=c.track_scores&&(e.track_scores=c.track_scores);if(null!=c.ownership)if(c=c.ownership,a.startsWith("(")&&a.endsWith(")")||(a="("+a+")"),"public"==c)a+=" AND (_missing_:@owner)";else if("owned"==c)a+=" AND (_exists_:@owner)";else if("me"==c){a+=" AND (";for(c=0;c(new Date).getTime()){setTimeout(function(){l.searchWithParams(a,c,e,g,k)},100);return}EcRepository.fetching[d]=(new Date).getTime()+ +6E4}}else d=null;var p=new FormData;p.append("data",b);null!=n&&p.append("searchParams",JSON.stringify(n));l=this;1==EcRepository.unsigned||1==h.unsigned?(p.append("signatureSheet","[]"),EcRemote.postExpectingObject(l.selectedServer,"sky/repo/search",p,function(a){EcRepository.cachingSearch&&(EcRepository.cache[d]=a);null!=d&&delete EcRepository.fetching[d];l.handleSearchResults(a,e,g,k)},function(a){null!=d&&delete EcRepository.fetching[d];null!=k&&k(a)})):EcIdentityManager.signatureSheetAsync(6E4+ +this.timeOffset,this.selectedServer,function(a){p.append("signatureSheet",a);EcRemote.postExpectingObject(l.selectedServer,"sky/repo/search",p,function(a){EcRepository.cachingSearch&&(EcRepository.cache[d]=a);null!=d&&delete EcRepository.fetching[d];l.handleSearchResults(a,e,g,k)},function(a){null!=d&&delete EcRepository.fetching[d];null!=k&&k(a)})},k)}};a.searchWithParamsBlocking=function(a,c){var b;null==c&&(c={});var g={};b=this.searchParamProps(a,c,g);null!=c.fields&&(g.fields=c.fields);a=EcRemote.async; +EcRemote.async=!1;var k;k=JSON.stringify(g)+b;if(EcRepository.cachingSearch&&null!=EcRepository.cache[k])return this.handleSearchResults(EcRepository.cache[k],null,null,null);var f=new FormData;f.append("data",b);null!=g&&f.append("searchParams",JSON.stringify(g));1==EcRepository.unsigned||1==c.unsigned?(f.append("signatureSheet","[]"),EcRemote.postExpectingObject(this.selectedServer,"sky/repo/search",f,function(a){EcRepository.cache[k]=a;null!=k&&delete EcRepository.fetching[k]},function(a){null!= +k&&delete EcRepository.fetching[k];EcRepository.cache[k]=null})):(c=EcIdentityManager.signatureSheet(6E4+this.timeOffset,this.selectedServer),f.append("signatureSheet",c),EcRemote.postExpectingObject(this.selectedServer,"sky/repo/search",f,function(a){EcRepository.cache[k]=a;null!=k&&delete EcRepository.fetching[k]},function(a){null!=k&&delete EcRepository.fetching[k];EcRepository.cache[k]=null}));c=this.handleSearchResults(EcRepository.cache[k],null,null,null);EcRepository.cachingSearch||delete EcRepository.cache[k]; +EcRemote.async=a;return c};a.searchParamProps=function(a,c,e){null!=c.start&&(e.start=c.start);null!=c.size&&(e.size=c.size);null!=c.types&&(e.types=c.types);null!=c.sort&&(e.sort=c.sort);null!=c.track_scores&&(e.track_scores=c.track_scores);if(null!=c.ownership)if(c=c.ownership,a.startsWith("(")&&a.endsWith(")")||(a="("+a+")"),"public"==c)a+=" AND (_missing_:@owner)";else if("owned"==c)a+=" AND (_exists_:@owner)";else if("me"==c){a+=" AND (";for(c=0;cg)u("Name Index not Set");else{var b=[];Papa.parse(a,{encoding:"UTF-8",complete:function(a){a=a.data;for(var m=a[0],v=1;vg?d("Source Index not Set"):null==h||0>h?d("Relation Type Index not Set"):null==f||0>f?d("Destination Index not Set"):Papa.parse(e,{encoding:"UTF-8",complete:function(e){e=e.data;for(var k= -1;ka?1:0g)u("Name Index not Set");else{var b=[];Papa.parse(a,{encoding:"UTF-8", +complete:function(a){a=a.data;for(var m=a[0],v=1;vg?d("Source Index not Set"):null==k||0>k?d("Relation Type Index not Set"):null==f||0>f?d("Destination Index not Set"):Papa.parse(e,{encoding:"UTF-8",complete:function(e){e=e.data;for(var m=1;ma?1:0c.competency.length)h("Framework has no competencies"); -else if(null==a)h("Repo is null or undefined");else{this.framework=c;this.createImpliedRelations=e;this.successCallback=g;this.failureCallback=h;var b=this;a.multiget(this.buildFrameworkUrlLookups(),function(a){b.continueFrameworkCollapse(a)},b.failureCallback,function(a){b.continueFrameworkCollapse(a)})}}},{framework:"EcFramework",competencyArray:{name:"Array",arguments:["EcCompetency"]},competencyNodeMap:{name:"Map",arguments:[null,"Node"]},relationArray:{name:"Array",arguments:["EcAlignment"]}, +function(a){a.hasCheckedRelationshipsForCompetency=!0;if(InquiryPacket.IPType.COMPETENCY.equals(a.type)){var b=this.constructor.relationLookup;if(null==b){b={};if(null!=this.context&&null!=this.context.relation)for(var e=0;ec.competency.length)h("Framework has no competencies");else if(null==a)h("Repo is null or undefined");else{this.framework=c;this.createImpliedRelations=e;this.successCallback=g;this.failureCallback=h;var b=this;a.multiget(this.buildFrameworkUrlLookups(),function(a){b.continueFrameworkCollapse(a)},b.failureCallback)}}},{framework:"EcFramework",competencyArray:{name:"Array",arguments:["EcCompetency"]},competencyNodeMap:{name:"Map",arguments:[null,"Node"]},relationArray:{name:"Array",arguments:["EcAlignment"]}, frameworkNodeGraph:"NodeGraph",collapsedFrameworkNodePacketGraph:"NodePacketGraph",successCallback:{name:"Callback2",arguments:[null,"NodePacketGraph"]},failureCallback:{name:"Callback1",arguments:[null]}},{}),OptimisticQuadnaryAssertionProcessor=function(){CombinatorAssertionProcessor.call(this)},OptimisticQuadnaryAssertionProcessor=stjs.extend(OptimisticQuadnaryAssertionProcessor,CombinatorAssertionProcessor,[],function(h,a){a.transferIndeterminateOptimistically=!0;a.determineCombinatorAndResult= function(a){a.anyChildPacketsAreFalse()?a.result=InquiryPacket.ResultType.FALSE:a.anyIndeterminantChildPackets()?a.result=InquiryPacket.ResultType.INDETERMINANT:a.anyChildPacketsAreUnknown()?a.result=InquiryPacket.ResultType.UNKNOWN:a.result=InquiryPacket.ResultType.TRUE};a.determineCombinatorNarrowsResult=function(a){a.anyChildPacketsAreTrue()?a.result=InquiryPacket.ResultType.TRUE:this.transferIndeterminateOptimistically&&a.anyIndeterminantChildPackets()?a.result=InquiryPacket.ResultType.FALSE: a.result=InquiryPacket.ResultType.UNKNOWN};a.determineCombinatorBroadensResult=function(a){a.anyChildPacketsAreFalse()?a.result=InquiryPacket.ResultType.FALSE:this.transferIndeterminateOptimistically&&a.anyIndeterminantChildPackets()?a.result=InquiryPacket.ResultType.TRUE:a.anyChildPacketsAreFalse()||a.anyChildPacketsAreUnknown()?a.result=InquiryPacket.ResultType.UNKNOWN:a.result=InquiryPacket.ResultType.TRUE};a.determineCombinatorRequiresResult=function(a){a.anyChildPacketsAreFalse()?a.result=InquiryPacket.ResultType.FALSE: diff --git a/src/main/js/cass/cass.competency.js b/src/main/js/cass/cass.competency.js index 4d3c0e020..661c9ac00 100644 --- a/src/main/js/cass/cass.competency.js +++ b/src/main/js/cass/cass.competency.js @@ -22,8 +22,17 @@ */ var EcConcept = function() { Concept.call(this); + var me = (this); + if (EcConcept.template != null) { + var you = (EcConcept.template); + for (var key in you) { + if ((typeof you[key]) != "function") + me[key.replace("@", "")] = you[key]; + } + } }; EcConcept = stjs.extend(EcConcept, Concept, [], function(constructor, prototype) { + constructor.template = null; /** * Retrieves a concept from it's server asynchronously * @@ -147,14 +156,23 @@ EcConcept = stjs.extend(EcConcept, Concept, [], function(constructor, prototype) } }, failure); }; -}, {topConceptOf: "ConceptScheme", semanticRelation: "Concept", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {template: "Object", topConceptOf: "ConceptScheme", semanticRelation: "Concept", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Created by fray on 11/29/17. */ var EcConceptScheme = function() { ConceptScheme.call(this); + var me = (this); + if (EcConceptScheme.template != null) { + var you = (EcConceptScheme.template); + for (var key in you) { + if ((typeof you[key]) != "function") + me[key.replace("@", "")] = you[key]; + } + } }; EcConceptScheme = stjs.extend(EcConceptScheme, ConceptScheme, [], function(constructor, prototype) { + constructor.template = null; /** * Retrieves a concept scheme from the server, specified by the ID * @@ -273,7 +291,7 @@ EcConceptScheme = stjs.extend(EcConceptScheme, ConceptScheme, [], function(const } }, failure); }; -}, {hasTopConcept: "Concept", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {template: "Object", hasTopConcept: "Concept", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * The sequence that assertions should be built as such: 1. Generate the ID. 2. * Add the owner. 3. Set the subject. 4. Set the agent. Further functions may be @@ -926,7 +944,7 @@ EcAssertion = stjs.extend(EcAssertion, Assertion, [], function(constructor, prot prototype.getSearchStringByTypeAndCompetency = function(competency) { return "(" + this.getSearchStringByType() + " AND competency:\"" + competency.shortId() + "\")"; }; -}, {codebooks: "Object", subject: "EcEncryptedValue", agent: "EcEncryptedValue", evidence: {name: "Array", arguments: ["EcEncryptedValue"]}, assertionDate: "EcEncryptedValue", expirationDate: "EcEncryptedValue", decayFunction: "EcEncryptedValue", negative: "EcEncryptedValue", contributor: "Object", reviews: "Review", audience: "Audience", timeRequired: "Duration", publication: "PublicationEvent", contentLocation: "Place", temporalCoverage: "Object", isBasedOn: "Object", fileFormat: "Object", interactionStatistic: "InteractionCounter", recordedAt: "Event", isPartOf: "CreativeWork", exampleOfWork: "CreativeWork", dateCreated: "Object", releasedEvent: "PublicationEvent", publisher: "Object", encoding: "MediaObject", creator: "Object", hasPart: "CreativeWork", license: "Object", translator: "Object", offers: "Offer", schemaVersion: "Object", review: "Review", position: "Object", genre: "Object", character: "Person", producer: "Object", editor: "Person", locationCreated: "Place", about: "Thing", audio: "AudioObject", encodings: "MediaObject", funder: "Object", accountablePerson: "Person", material: "Object", author: "Object", sourceOrganization: "Organization", sponsor: "Object", provider: "Object", copyrightHolder: "Object", comment: "Comment", spatialCoverage: "Place", aggregateRating: "AggregateRating", educationalAlignment: "AlignmentObject", video: "VideoObject", version: "Object", mainEntity: "Thing", associatedMedia: "MediaObject", workExample: "CreativeWork", mentions: "Thing", citation: "Object", dateModified: "Object", inLanguage: "Object", isBasedOnUrl: "Object", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {codebooks: "Object", subject: "EcEncryptedValue", agent: "EcEncryptedValue", evidence: {name: "Array", arguments: ["EcEncryptedValue"]}, assertionDate: "EcEncryptedValue", expirationDate: "EcEncryptedValue", decayFunction: "EcEncryptedValue", negative: "EcEncryptedValue", about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Implementation of a Rollup Rule object with methods for interacting with CASS * services on a server. @@ -1086,7 +1104,7 @@ EcRollupRule = stjs.extend(EcRollupRule, RollupRule, [], function(constructor, p prototype._delete = function(success, failure) { EcRepository.DELETE(this, success, failure); }; -}, {contributor: "Object", reviews: "Review", audience: "Audience", timeRequired: "Duration", publication: "PublicationEvent", contentLocation: "Place", temporalCoverage: "Object", isBasedOn: "Object", fileFormat: "Object", interactionStatistic: "InteractionCounter", recordedAt: "Event", isPartOf: "CreativeWork", exampleOfWork: "CreativeWork", dateCreated: "Object", releasedEvent: "PublicationEvent", publisher: "Object", encoding: "MediaObject", creator: "Object", hasPart: "CreativeWork", license: "Object", translator: "Object", offers: "Offer", schemaVersion: "Object", review: "Review", position: "Object", genre: "Object", character: "Person", producer: "Object", editor: "Person", locationCreated: "Place", about: "Thing", audio: "AudioObject", encodings: "MediaObject", funder: "Object", accountablePerson: "Person", material: "Object", author: "Object", sourceOrganization: "Organization", sponsor: "Object", provider: "Object", copyrightHolder: "Object", comment: "Comment", spatialCoverage: "Place", aggregateRating: "AggregateRating", educationalAlignment: "AlignmentObject", video: "VideoObject", version: "Object", mainEntity: "Thing", associatedMedia: "MediaObject", workExample: "CreativeWork", mentions: "Thing", citation: "Object", dateModified: "Object", inLanguage: "Object", isBasedOnUrl: "Object", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Implementation of an alignment object with methods for interacting with CASS * services on a server. @@ -1104,6 +1122,11 @@ var EcAlignment = function() { Relation.call(this); }; EcAlignment = stjs.extend(EcAlignment, Relation, [], function(constructor, prototype) { + prototype.equals = function(obj) { + if ((obj).id == null) + return ((obj).source == this.source && (obj).target == this.target && (obj).relationType == this.relationType); + return this.isId((obj).id); + }; /** * Retrieves the alignment specified with the ID from the server * @@ -1471,7 +1494,7 @@ EcAlignment = stjs.extend(EcAlignment, Relation, [], function(constructor, proto prototype._delete = function(success, failure) { EcRepository.DELETE(this, success, failure); }; -}, {contributor: "Object", reviews: "Review", audience: "Audience", timeRequired: "Duration", publication: "PublicationEvent", contentLocation: "Place", temporalCoverage: "Object", isBasedOn: "Object", fileFormat: "Object", interactionStatistic: "InteractionCounter", recordedAt: "Event", isPartOf: "CreativeWork", exampleOfWork: "CreativeWork", dateCreated: "Object", releasedEvent: "PublicationEvent", publisher: "Object", encoding: "MediaObject", creator: "Object", hasPart: "CreativeWork", license: "Object", translator: "Object", offers: "Offer", schemaVersion: "Object", review: "Review", position: "Object", genre: "Object", character: "Person", producer: "Object", editor: "Person", locationCreated: "Place", about: "Thing", audio: "AudioObject", encodings: "MediaObject", funder: "Object", accountablePerson: "Person", material: "Object", author: "Object", sourceOrganization: "Organization", sponsor: "Object", provider: "Object", copyrightHolder: "Object", comment: "Comment", spatialCoverage: "Place", aggregateRating: "AggregateRating", educationalAlignment: "AlignmentObject", video: "VideoObject", version: "Object", mainEntity: "Thing", associatedMedia: "MediaObject", workExample: "CreativeWork", mentions: "Thing", citation: "Object", dateModified: "Object", inLanguage: "Object", isBasedOnUrl: "Object", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Implementation of a Level object with methods for interacting with CASS * services on a server. @@ -1748,7 +1771,7 @@ EcLevel = stjs.extend(EcLevel, Level, [], function(constructor, prototype) { prototype._delete = function(success, failure) { EcRepository.DELETE(this, success, failure); }; -}, {contributor: "Object", reviews: "Review", audience: "Audience", timeRequired: "Duration", publication: "PublicationEvent", contentLocation: "Place", temporalCoverage: "Object", isBasedOn: "Object", fileFormat: "Object", interactionStatistic: "InteractionCounter", recordedAt: "Event", isPartOf: "CreativeWork", exampleOfWork: "CreativeWork", dateCreated: "Object", releasedEvent: "PublicationEvent", publisher: "Object", encoding: "MediaObject", creator: "Object", hasPart: "CreativeWork", license: "Object", translator: "Object", offers: "Offer", schemaVersion: "Object", review: "Review", position: "Object", genre: "Object", character: "Person", producer: "Object", editor: "Person", locationCreated: "Place", about: "Thing", audio: "AudioObject", encodings: "MediaObject", funder: "Object", accountablePerson: "Person", material: "Object", author: "Object", sourceOrganization: "Organization", sponsor: "Object", provider: "Object", copyrightHolder: "Object", comment: "Comment", spatialCoverage: "Place", aggregateRating: "AggregateRating", educationalAlignment: "AlignmentObject", video: "VideoObject", version: "Object", mainEntity: "Thing", associatedMedia: "MediaObject", workExample: "CreativeWork", mentions: "Thing", citation: "Object", dateModified: "Object", inLanguage: "Object", isBasedOnUrl: "Object", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Implementation of a Competency object with methods for interacting with CASS * services on a server. @@ -1775,6 +1798,9 @@ EcCompetency = stjs.extend(EcCompetency, Competency, [], function(constructor, p constructor.relDone = {}; constructor.levelDone = {}; constructor.template = null; + prototype.equals = function(obj) { + return this.isId((obj).id); + }; /** * Retrieves a competency from it's server asynchronously * @@ -2279,7 +2305,7 @@ EcCompetency = stjs.extend(EcCompetency, Competency, [], function(constructor, p } }, failure); }; -}, {relDone: {name: "Map", arguments: [null, null]}, levelDone: {name: "Map", arguments: [null, null]}, template: "Object", contributor: "Object", reviews: "Review", audience: "Audience", timeRequired: "Duration", publication: "PublicationEvent", contentLocation: "Place", temporalCoverage: "Object", isBasedOn: "Object", fileFormat: "Object", interactionStatistic: "InteractionCounter", recordedAt: "Event", isPartOf: "CreativeWork", exampleOfWork: "CreativeWork", dateCreated: "Object", releasedEvent: "PublicationEvent", publisher: "Object", encoding: "MediaObject", creator: "Object", hasPart: "CreativeWork", license: "Object", translator: "Object", offers: "Offer", schemaVersion: "Object", review: "Review", position: "Object", genre: "Object", character: "Person", producer: "Object", editor: "Person", locationCreated: "Place", about: "Thing", audio: "AudioObject", encodings: "MediaObject", funder: "Object", accountablePerson: "Person", material: "Object", author: "Object", sourceOrganization: "Organization", sponsor: "Object", provider: "Object", copyrightHolder: "Object", comment: "Comment", spatialCoverage: "Place", aggregateRating: "AggregateRating", educationalAlignment: "AlignmentObject", video: "VideoObject", version: "Object", mainEntity: "Thing", associatedMedia: "MediaObject", workExample: "CreativeWork", mentions: "Thing", citation: "Object", dateModified: "Object", inLanguage: "Object", isBasedOnUrl: "Object", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {relDone: {name: "Map", arguments: [null, null]}, levelDone: {name: "Map", arguments: [null, null]}, template: "Object", about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Implementation of a Framework object with methods for interacting with CASS * services on a server. @@ -2711,4 +2737,4 @@ EcFramework = stjs.extend(EcFramework, Framework, [], function(constructor, prot } }); }; -}, {relDone: {name: "Map", arguments: [null, null]}, levelDone: {name: "Map", arguments: [null, null]}, template: "Object", competency: {name: "Array", arguments: [null]}, relation: {name: "Array", arguments: [null]}, level: {name: "Array", arguments: [null]}, rollupRule: {name: "Array", arguments: [null]}, contributor: "Object", reviews: "Review", audience: "Audience", timeRequired: "Duration", publication: "PublicationEvent", contentLocation: "Place", temporalCoverage: "Object", isBasedOn: "Object", fileFormat: "Object", interactionStatistic: "InteractionCounter", recordedAt: "Event", isPartOf: "CreativeWork", exampleOfWork: "CreativeWork", dateCreated: "Object", releasedEvent: "PublicationEvent", publisher: "Object", encoding: "MediaObject", creator: "Object", hasPart: "CreativeWork", license: "Object", translator: "Object", offers: "Offer", schemaVersion: "Object", review: "Review", position: "Object", genre: "Object", character: "Person", producer: "Object", editor: "Person", locationCreated: "Place", about: "Thing", audio: "AudioObject", encodings: "MediaObject", funder: "Object", accountablePerson: "Person", material: "Object", author: "Object", sourceOrganization: "Organization", sponsor: "Object", provider: "Object", copyrightHolder: "Object", comment: "Comment", spatialCoverage: "Place", aggregateRating: "AggregateRating", educationalAlignment: "AlignmentObject", video: "VideoObject", version: "Object", mainEntity: "Thing", associatedMedia: "MediaObject", workExample: "CreativeWork", mentions: "Thing", citation: "Object", dateModified: "Object", inLanguage: "Object", isBasedOnUrl: "Object", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {relDone: {name: "Map", arguments: [null, null]}, levelDone: {name: "Map", arguments: [null, null]}, template: "Object", competency: {name: "Array", arguments: [null]}, relation: {name: "Array", arguments: [null]}, level: {name: "Array", arguments: [null]}, rollupRule: {name: "Array", arguments: [null]}, about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); diff --git a/src/main/js/cass/cass.import.js b/src/main/js/cass/cass.import.js index 4f9c66615..811da9e4f 100644 --- a/src/main/js/cass/cass.import.js +++ b/src/main/js/cass/cass.import.js @@ -974,17 +974,10 @@ CSVImport = stjs.extend(CSVImport, null, [], function(constructor, prototype) { * @static */ constructor.transformId = function(oldId, newObject, selectedServer, repo) { - if (oldId == null || oldId == "" || oldId.indexOf("http") == -1) + if (oldId == null || oldId == "" || oldId.toLowerCase().indexOf("http") == -1) newObject.assignId(selectedServer, oldId); else { - if (EcCompetency.getBlocking(oldId) == null) - newObject.id = oldId; - else { - if (repo == null || repo.selectedServer.indexOf(selectedServer) != -1) - newObject.generateId(selectedServer); - else - newObject.generateShortId(selectedServer); - } + newObject.id = oldId; } }; /** @@ -1070,6 +1063,7 @@ CSVImport = stjs.extend(CSVImport, null, [], function(constructor, prototype) { if ((CSVImport.importCsvLookup)[tabularData[i][idIndex]] == null) (CSVImport.importCsvLookup)[tabularData[i][idIndex]] = competency.shortId(); } + (CSVImport.importCsvLookup)[competency.getName()] = competency.shortId(); for (var idx = 0; idx < tabularData[i].length; idx++) { var name = colNames[idx]; if (name == null || name.trim() == "" || name.startsWith("@") || name.indexOf(".") != -1 || tabularData[i][idx].trim() == "" || idx == nameIndex || idx == descriptionIndex || idx == scopeIndex || idx == idIndex) { diff --git a/src/main/js/cass/cass.rollup.js b/src/main/js/cass/cass.rollup.js index 3d157fe22..233dad7fa 100644 --- a/src/main/js/cass/cass.rollup.js +++ b/src/main/js/cass/cass.rollup.js @@ -2116,6 +2116,148 @@ PapDependencyDefinitions = stjs.extend(PapDependencyDefinitions, null, [], funct this.dependencyDefinitionMap = dependencyDefinitionMap; }; }, {dependencyDefinitionMap: {name: "Map", arguments: [null, "PapDependencyDefinitionBase"]}}, {}); +var EcFrameworkGraph = function() { + EcDirectedGraph.call(this); + this.metaVerticies = new Object(); + this.metaEdges = new Object(); +}; +EcFrameworkGraph = stjs.extend(EcFrameworkGraph, EcDirectedGraph, [], function(constructor, prototype) { + prototype.metaVerticies = null; + prototype.metaEdges = null; + prototype.addFramework = function(framework, repo, success, failure) { + var me = this; + repo.multiget(framework.competency.concat(framework.relation), function(data) { + var competencyTemplate = new EcCompetency(); + var alignmentTemplate = new EcAlignment(); + for (var i = 0; i < data.length; i++) { + var d = data[i]; + if (d.isAny(competencyTemplate.getTypes())) { + var c = EcCompetency.getBlocking(d.id); + me.addCompetency(c); + me.addToMetaStateArray(me.getMetaStateCompetency(c), "framework", framework); + } else if (d.isAny(alignmentTemplate.getTypes())) { + var alignment = EcAlignment.getBlocking(d.id); + me.addRelation(alignment); + me.addToMetaStateArray(me.getMetaStateAlignment(alignment), "framework", framework); + } + } + success(); + }, failure); + }; + prototype.processAssertionsBoolean = function(assertions, success, failure) { + var me = this; + var eah = new EcAsyncHelper(); + eah.each(assertions, function(assertion, done) { + var competency = EcCompetency.getBlocking(assertion.competency); + if (!me.containsVertex(competency)) { + done(); + return; + } + assertion.getNegativeAsync(function(negative) { + me.processAssertionsBooleanPerAssertion(assertion, negative, competency, done, new Array()); + }, eah.failWithCallback(failure, done)); + }, function(strings) { + success(); + }); + }; + prototype.processAssertionsBooleanPerAssertion = function(assertion, negative, competency, done, visited) { + var me = this; + if (EcArray.has(visited, competency)) { + done(); + return; + } + visited.push(competency); + if (negative) { + var metaState = this.getMetaStateCompetency(competency); + this.addToMetaStateArray(metaState, "negativeAssertion", assertion); + new EcAsyncHelper().each(me.getOutEdges(competency), function(alignment, callback0) { + if (alignment.relationType == Relation.NARROWS) + me.processAssertionsBooleanPerAssertion(assertion, negative, EcCompetency.getBlocking(alignment.target), callback0, visited); + else if (alignment.relationType == Relation.IS_EQUIVALENT_TO) + me.processAssertionsBooleanPerAssertion(assertion, negative, EcCompetency.getBlocking(alignment.target), callback0, visited); + else + callback0(); + }, function(strings) { + new EcAsyncHelper().each(me.getInEdges(competency), function(alignment, callback0) { + if (alignment.relationType == Relation.REQUIRES) + me.processAssertionsBooleanPerAssertion(assertion, negative, EcCompetency.getBlocking(alignment.source), callback0, visited); + else if (alignment.relationType == Relation.IS_EQUIVALENT_TO) + me.processAssertionsBooleanPerAssertion(assertion, negative, EcCompetency.getBlocking(alignment.source), callback0, visited); + else + callback0(); + }, function(strings) { + done(); + }); + }); + } else { + var metaState = this.getMetaStateCompetency(competency); + this.addToMetaStateArray(metaState, "positiveAssertion", assertion); + new EcAsyncHelper().each(me.getInEdges(competency), function(alignment, callback0) { + if (alignment.relationType == Relation.NARROWS) + me.processAssertionsBooleanPerAssertion(assertion, negative, EcCompetency.getBlocking(alignment.source), callback0, visited); + else if (alignment.relationType == Relation.IS_EQUIVALENT_TO) + me.processAssertionsBooleanPerAssertion(assertion, negative, EcCompetency.getBlocking(alignment.source), callback0, visited); + else + callback0(); + }, function(strings) { + new EcAsyncHelper().each(me.getOutEdges(competency), function(alignment, callback0) { + if (alignment.relationType == Relation.REQUIRES) + me.processAssertionsBooleanPerAssertion(assertion, negative, EcCompetency.getBlocking(alignment.target), callback0, visited); + else if (alignment.relationType == Relation.IS_EQUIVALENT_TO) + me.processAssertionsBooleanPerAssertion(assertion, negative, EcCompetency.getBlocking(alignment.target), callback0, visited); + else + callback0(); + }, function(strings) { + done(); + }); + }); + } + }; + prototype.addToMetaStateArray = function(metaState, key, value) { + if (metaState == null) + return; + if ((metaState)[key] == null) + (metaState)[key] = new Array(); + ((metaState)[key]).push(value); + }; + prototype.getMetaStateCompetency = function(c) { + if (this.containsVertex(c) == false) + return null; + if (this.metaVerticies[c.shortId()] == null) + this.metaVerticies[c.shortId()] = new Object(); + return this.metaVerticies[c.shortId()]; + }; + prototype.getMetaStateAlignment = function(a) { + if (this.containsEdge(a) == false) + return null; + if (this.metaEdges[a.shortId()] == null) + this.metaEdges[a.shortId()] = new Object(); + return this.metaEdges[a.shortId()]; + }; + prototype.addCompetency = function(competency) { + if (competency == null) + return false; + return this.addVertex(competency); + }; + prototype.addRelation = function(alignment) { + if (alignment == null) + return false; + var source = EcCompetency.getBlocking(alignment.source); + var target = EcCompetency.getBlocking(alignment.target); + if (source == null || target == null) + return false; + return this.addEdge(alignment, source, target); + }; + prototype.addHyperEdge = function(edge, vertices) { + throw new RuntimeException("Don't do this."); + }; + prototype.getEdgeType = function(edge) { + return edge.relationType; + }; + prototype.getDefaultEdgeType = function() { + return EcAlignment.NARROWS; + }; +}, {metaVerticies: {name: "Map", arguments: [null, "Object"]}, metaEdges: {name: "Map", arguments: [null, "Object"]}, edges: {name: "Array", arguments: [{name: "Triple", arguments: ["V", "V", "E"]}]}, verticies: {name: "Array", arguments: ["V"]}}, {}); var NodePacketGraph = function() { this.nodePacketList = new Array(); this.nodePacketMap = {}; @@ -3768,6 +3910,8 @@ CombinatorAssertionProcessor = stjs.extend(CombinatorAssertionProcessor, Asserti if (ep.context != null && ep.context.relation != null) for (var i = 0; i < ep.context.relation.length; i++) { var a = EcAlignment.getBlocking(ep.context.relation[i]); + if (a == null) + continue; if ((relationLookup)[a.source] == null) (relationLookup)[a.source] = new Array(); ((relationLookup)[a.source]).push(a); @@ -3945,9 +4089,7 @@ FrameworkCollapser = stjs.extend(FrameworkCollapser, null, [], function(construc var fc = this; repo.multiget(this.buildFrameworkUrlLookups(), function(rlda) { fc.continueFrameworkCollapse(rlda); - }, fc.failureCallback, function(rlda) { - fc.continueFrameworkCollapse(rlda); - }); + }, fc.failureCallback); } }; }, {framework: "EcFramework", competencyArray: {name: "Array", arguments: ["EcCompetency"]}, competencyNodeMap: {name: "Map", arguments: [null, "Node"]}, relationArray: {name: "Array", arguments: ["EcAlignment"]}, frameworkNodeGraph: "NodeGraph", collapsedFrameworkNodePacketGraph: "NodePacketGraph", successCallback: {name: "Callback2", arguments: [null, "NodePacketGraph"]}, failureCallback: {name: "Callback1", arguments: [null]}}, {}); diff --git a/src/main/js/cass/ebac.repository.js b/src/main/js/cass/ebac.repository.js index 5584f1408..f109cf50b 100644 --- a/src/main/js/cass/ebac.repository.js +++ b/src/main/js/cass/ebac.repository.js @@ -1110,13 +1110,17 @@ EcRepository = stjs.extend(EcRepository, null, [], function(constructor, prototy return; } (EcRepository.cache)[originalUrl] = d; - if (d.id != null) - (EcRepository.cache)[d.id] = d; + if (d != null) { + if (d.id != null) + (EcRepository.cache)[d.id] = d; + } }, function(s) { var d = EcRepository.findBlocking(originalUrl, s, new Object(), 0); (EcRepository.cache)[originalUrl] = d; - if (d.id != null) - (EcRepository.cache)[d.id] = d; + if (d != null) { + if (d.id != null) + (EcRepository.cache)[d.id] = d; + } }); EcRemote.async = oldAsync; var result = (EcRepository.cache)[originalUrl]; @@ -1503,7 +1507,7 @@ EcRepository = stjs.extend(EcRepository, null, [], function(constructor, prototy * @memberOf EcRepository * @method multiget */ - prototype.multiget = function(urls, success, failure, cachedValues) { + prototype.multiget = function(urls, success, failure) { if (urls == null || urls.length == 0) { if (failure != null) { failure(""); diff --git a/src/main/js/cass/ec.base.js b/src/main/js/cass/ec.base.js index 42a78f255..fbc485734 100644 --- a/src/main/js/cass/ec.base.js +++ b/src/main/js/cass/ec.base.js @@ -122,13 +122,7 @@ EcArray = stjs.extend(EcArray, null, [], function(constructor, prototype) { * @method setAdd */ constructor.setAdd = function(a, o) { - var inThere = false; - for (var i = 0; i < a.length; i++) - if (a[i] == o) { - inThere = true; - break; - } - if (!inThere) + if (!EcArray.has(a, o)) a.push(o); }; /** @@ -140,10 +134,8 @@ EcArray = stjs.extend(EcArray, null, [], function(constructor, prototype) { * @method setAdd */ constructor.setRemove = function(a, o) { - for (var i = 0; i < a.length; i++) - while (a[i] == o){ - a.splice(i, 1); - } + while (EcArray.has(a, o)) + a.splice(EcArray.indexOf(a, o), 1); }; /** * Returns true if the array has the value already. @@ -154,13 +146,56 @@ EcArray = stjs.extend(EcArray, null, [], function(constructor, prototype) { * @method has */ constructor.has = function(a, o) { - var inThere = false; - for (var i = 0; i < a.length; i++) - if (a[i] == o) { - return true; + if (EcArray.isObject(o)) + for (var i = 0; i < a.length; i++) { + if (a[i] == o) + return true; + try { + if (a[i].equals(o)) + return true; + }catch (e) {} + } + else + for (var i = 0; i < a.length; i++) { + if (a[i] == o) { + return true; + } } return false; }; + /** + * Returns true if the result is an object. + * + * @param {any} o Object to test. + * @return true iff the object is an object. + * @static + * @method isObject + */ + constructor.isObject = function(o) { + if (EcArray.isArray(o)) + return false; + if (o == null) + return false; + return (typeof o) == "object"; + }; + constructor.indexOf = function(a, o) { + if (EcArray.isObject(o)) + for (var i = 0; i < a.length; i++) { + if (a[i] == o) + return i; + try { + if (a[i].equals(o)) + return i; + }catch (e) {} + } + else + for (var i = 0; i < a.length; i++) { + if (a[i] == o) { + return i; + } + } + return -1; + }; }, {}, {}); var Callback5 = function() {}; Callback5 = stjs.extend(Callback5, null, [], function(constructor, prototype) { @@ -1213,7 +1248,10 @@ Task = stjs.extend(Task, null, [], function(constructor, prototype) { * @module com.eduworks.ec * @extends Graph */ -var EcDirectedGraph = function() {}; +var EcDirectedGraph = function() { + this.edges = new Array(); + this.verticies = new Array(); +}; EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(constructor, prototype) { prototype.edges = null; prototype.verticies = null; @@ -1231,13 +1269,13 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct }; prototype.containsVertex = function(vertex) { for (var i = 0; i < this.verticies.length; i++) - if (vertex == this.verticies[i]) + if (vertex.equals(this.verticies[i])) return true; return false; }; prototype.containsEdge = function(edge) { for (var i = 0; i < this.edges.length; i++) - if (edge == this.edges[i].edge) + if (edge.equals(this.edges[i].edge)) return true; return false; }; @@ -1250,9 +1288,9 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct prototype.getNeighbors = function(vertex) { var results = new Array(); for (var i = 0; i < this.edges.length; i++) { - if (vertex == this.edges[i].source) + if (vertex.equals(this.edges[i].source)) results.push(this.edges[i].destination); - else if (vertex == this.edges[i].destination) + else if (vertex.equals(this.edges[i].destination)) results.push(this.edges[i].source); } EcArray.removeDuplicates(results); @@ -1261,9 +1299,9 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct prototype.getIncidentEdges = function(vertex) { var results = new Array(); for (var i = 0; i < this.edges.length; i++) { - if (vertex == this.edges[i].source) + if (vertex.equals(this.edges[i].source)) results.push(this.edges[i].edge); - else if (vertex == this.edges[i].destination) + else if (vertex.equals(this.edges[i].destination)) results.push(this.edges[i].edge); } EcArray.removeDuplicates(results); @@ -1272,7 +1310,7 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct prototype.getIncidentVertices = function(edge) { var results = new Array(); for (var i = 0; i < this.edges.length; i++) { - if (edge == this.edges[i].edge) { + if (edge.equals(this.edges[i].edge)) { results.push(this.edges[i].source); results.push(this.edges[i].destination); } @@ -1282,9 +1320,9 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct }; prototype.findEdge = function(v1, v2) { for (var i = 0; i < this.edges.length; i++) { - if (v1 == this.edges[i].source && v2 == this.edges[i].destination) + if (v1.equals(this.edges[i].source) && v2.equals(this.edges[i].destination)) return this.edges[i].edge; - if (v1 == this.edges[i].destination && v2 == this.edges[i].source) + if (v1.equals(this.edges[i].destination) && v2.equals(this.edges[i].source)) return this.edges[i].edge; } return null; @@ -1292,24 +1330,24 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct prototype.findEdgeSet = function(v1, v2) { var results = new Array(); for (var i = 0; i < this.edges.length; i++) { - if (v1 == this.edges[i].source && v2 == this.edges[i].destination) + if (v1.equals(this.edges[i].source) && v2.equals(this.edges[i].destination)) results.push(this.edges[i].edge); - if (v1 == this.edges[i].destination && v2 == this.edges[i].source) + if (v1.equals(this.edges[i].destination) && v2.equals(this.edges[i].source)) results.push(this.edges[i].edge); } return results; }; prototype.addVertex = function(vertex) { - if (this.verticies.indexOf(vertex) != -1) + if (EcArray.has(this.verticies, vertex)) return false; this.verticies.push(vertex); return true; }; prototype.removeVertex = function(vertex) { - var indexOf = this.verticies.indexOf(vertex); + var indexOf = EcArray.indexOf(this.verticies, vertex); if (indexOf != -1) { for (var i = 0; i < this.edges.length; i++) { - if (this.edges[i].source == vertex || this.edges[i].destination == vertex) { + if (this.edges[i].source.equals(vertex) || this.edges[i].destination.equals(vertex)) { this.edges.splice(i, 1); i--; } @@ -1322,7 +1360,7 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct prototype.removeEdge = function(edge) { var success = false; for (var i = 0; i < this.edges.length; i++) { - if (this.edges[i].edge == edge) { + if (this.edges[i].edge.equals(edge)) { this.edges.splice(i, 1); i--; success = true; @@ -1332,16 +1370,16 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct }; prototype.isNeighbor = function(v1, v2) { for (var i = 0; i < this.edges.length; i++) { - if (v1 == this.edges[i].source && v2 == this.edges[i].destination) + if (v1.equals(this.edges[i].source) && v2.equals(this.edges[i].destination)) return true; - else if (v1 == this.edges[i].destination && v2 == this.edges[i].source) + else if (v1.equals(this.edges[i].destination) && v2.equals(this.edges[i].source)) return true; } return false; }; prototype.isIncident = function(vertex, edge) { for (var i = 0; i < this.edges.length; i++) { - if ((vertex == this.edges[i].source || vertex == this.edges[i].destination) && edge == this.edges[i].edge) + if ((vertex.equals(this.edges[i].source) || vertex.equals(this.edges[i].destination)) && edge.equals(this.edges[i].edge)) return true; } return false; @@ -1349,7 +1387,7 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct prototype.degree = function(vertex) { var count = 0; for (var i = 0; i < this.edges.length; i++) { - if (vertex == this.edges[i].source || vertex == this.edges[i].destination) + if (vertex.equals(this.edges[i].source) || vertex.equals(this.edges[i].destination)) count++; } return count; @@ -1376,7 +1414,7 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct prototype.getInEdges = function(vertex) { var results = new Array(); for (var i = 0; i < this.edges.length; i++) { - if (vertex == this.edges[i].destination) + if (vertex.equals(this.edges[i].destination)) results.push(this.edges[i].edge); } EcArray.removeDuplicates(results); @@ -1385,7 +1423,7 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct prototype.getOutEdges = function(vertex) { var results = new Array(); for (var i = 0; i < this.edges.length; i++) { - if (vertex == this.edges[i].source) + if (vertex.equals(this.edges[i].source)) results.push(this.edges[i].edge); } EcArray.removeDuplicates(results); @@ -1399,14 +1437,14 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct }; prototype.getSource = function(directed_edge) { for (var i = 0; i < this.edges.length; i++) { - if (directed_edge == this.edges[i].edge) + if (directed_edge.equals(this.edges[i].edge)) return this.edges[i].source; } return null; }; prototype.getDest = function(directed_edge) { for (var i = 0; i < this.edges.length; i++) { - if (directed_edge == this.edges[i].edge) + if (directed_edge.equals(this.edges[i].edge)) return this.edges[i].destination; } return null; @@ -1414,7 +1452,7 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct prototype.getPredecessors = function(vertex) { var results = new Array(); for (var i = 0; i < this.edges.length; i++) { - if (vertex == this.edges[i].destination) + if (vertex.equals(this.edges[i].destination)) results.push(this.edges[i].source); } EcArray.removeDuplicates(results); @@ -1423,7 +1461,7 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct prototype.getSuccessors = function(vertex) { var results = new Array(); for (var i = 0; i < this.edges.length; i++) { - if (vertex == this.edges[i].source) + if (vertex.equals(this.edges[i].source)) results.push(this.edges[i].destination); } EcArray.removeDuplicates(results); @@ -1431,16 +1469,16 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct }; prototype.isPredecessor = function(v1, v2) { for (var i = 0; i < this.edges.length; i++) { - if (v1 == this.edges[i].destination) - if (v2 == this.edges[i].source) + if (v1.equals(this.edges[i].destination)) + if (v2.equals(this.edges[i].source)) return true; } return false; }; prototype.isSuccessor = function(v1, v2) { for (var i = 0; i < this.edges.length; i++) { - if (v2 == this.edges[i].destination) - if (v1 == this.edges[i].source) + if (v2.equals(this.edges[i].destination)) + if (v1.equals(this.edges[i].source)) return true; } return false; @@ -1453,16 +1491,16 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct }; prototype.isSource = function(vertex, edge) { for (var i = 0; i < this.edges.length; i++) { - if (edge == this.edges[i].edge) - if (vertex == this.edges[i].source) + if (edge.equals(this.edges[i].edge)) + if (vertex.equals(this.edges[i].source)) return true; } return false; }; prototype.isDest = function(vertex, edge) { for (var i = 0; i < this.edges.length; i++) { - if (edge == this.edges[i].edge) - if (vertex == this.edges[i].destination) + if (edge.equals(this.edges[i].edge)) + if (vertex.equals(this.edges[i].destination)) return true; } return false; @@ -1474,17 +1512,17 @@ EcDirectedGraph = stjs.extend(EcDirectedGraph, null, [Graph], function(construct t.source = v1; t.destination = v2; t.edge = e; - if (this.edges.indexOf(t) != -1) + if (EcArray.has(this.edges, t)) return false; this.edges.push(t); return true; }; prototype.getOpposite = function(vertex, edge) { for (var i = 0; i < this.edges.length; i++) { - if (edge == this.edges[i].edge) - if (vertex == this.edges[i].destination) + if (edge.equals(this.edges[i].edge)) + if (vertex.equals(this.edges[i].destination)) return this.edges[i].source; - else if (vertex == this.edges[i].source) + else if (vertex.equals(this.edges[i].source)) return this.edges[i].destination; } return null; @@ -1537,6 +1575,12 @@ EcAsyncHelper = stjs.extend(EcAsyncHelper, null, [], function(constructor, proto }); }); }; + prototype.failWithCallback = function(failure, callback) { + return function(s) { + callback(); + failure(s); + }; + }; /** * Will prevent 'after' from being called. * diff --git a/src/main/js/cass/org.cassproject.schema.cass.js b/src/main/js/cass/org.cassproject.schema.cass.js index 1dbca64f1..cd80d78eb 100644 --- a/src/main/js/cass/org.cassproject.schema.cass.js +++ b/src/main/js/cass/org.cassproject.schema.cass.js @@ -96,7 +96,7 @@ Competency = stjs.extend(Competency, CreativeWork, [], function(constructor, pro a.push(Competency.TYPE_0_1); return a; }; -}, {contributor: "Object", reviews: "Review", audience: "Audience", timeRequired: "Duration", publication: "PublicationEvent", contentLocation: "Place", temporalCoverage: "Object", isBasedOn: "Object", fileFormat: "Object", interactionStatistic: "InteractionCounter", recordedAt: "Event", isPartOf: "CreativeWork", exampleOfWork: "CreativeWork", dateCreated: "Object", releasedEvent: "PublicationEvent", publisher: "Object", encoding: "MediaObject", creator: "Object", hasPart: "CreativeWork", license: "Object", translator: "Object", offers: "Offer", schemaVersion: "Object", review: "Review", position: "Object", genre: "Object", character: "Person", producer: "Object", editor: "Person", locationCreated: "Place", about: "Thing", audio: "AudioObject", encodings: "MediaObject", funder: "Object", accountablePerson: "Person", material: "Object", author: "Object", sourceOrganization: "Organization", sponsor: "Object", provider: "Object", copyrightHolder: "Object", comment: "Comment", spatialCoverage: "Place", aggregateRating: "AggregateRating", educationalAlignment: "AlignmentObject", video: "VideoObject", version: "Object", mainEntity: "Thing", associatedMedia: "MediaObject", workExample: "CreativeWork", mentions: "Thing", citation: "Object", dateModified: "Object", inLanguage: "Object", isBasedOnUrl: "Object", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * When an individual's performance in a competency can be measured, a level specifies milestones that an individual can reach, creating fine-grained distinction between the proficient and the adept. * @@ -160,7 +160,7 @@ Level = stjs.extend(Level, CreativeWork, [], function(constructor, prototype) { a.push(Level.TYPE_0_1); return a; }; -}, {contributor: "Object", reviews: "Review", audience: "Audience", timeRequired: "Duration", publication: "PublicationEvent", contentLocation: "Place", temporalCoverage: "Object", isBasedOn: "Object", fileFormat: "Object", interactionStatistic: "InteractionCounter", recordedAt: "Event", isPartOf: "CreativeWork", exampleOfWork: "CreativeWork", dateCreated: "Object", releasedEvent: "PublicationEvent", publisher: "Object", encoding: "MediaObject", creator: "Object", hasPart: "CreativeWork", license: "Object", translator: "Object", offers: "Offer", schemaVersion: "Object", review: "Review", position: "Object", genre: "Object", character: "Person", producer: "Object", editor: "Person", locationCreated: "Place", about: "Thing", audio: "AudioObject", encodings: "MediaObject", funder: "Object", accountablePerson: "Person", material: "Object", author: "Object", sourceOrganization: "Organization", sponsor: "Object", provider: "Object", copyrightHolder: "Object", comment: "Comment", spatialCoverage: "Place", aggregateRating: "AggregateRating", educationalAlignment: "AlignmentObject", video: "VideoObject", version: "Object", mainEntity: "Thing", associatedMedia: "MediaObject", workExample: "CreativeWork", mentions: "Thing", citation: "Object", dateModified: "Object", inLanguage: "Object", isBasedOnUrl: "Object", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * A segment of script that defines in a domain specific language how competence is transferred from one competency to another. * @@ -208,7 +208,7 @@ RollupRule = stjs.extend(RollupRule, CreativeWork, [], function(constructor, pro a.push(RollupRule.TYPE_0_2); return a; }; -}, {contributor: "Object", reviews: "Review", audience: "Audience", timeRequired: "Duration", publication: "PublicationEvent", contentLocation: "Place", temporalCoverage: "Object", isBasedOn: "Object", fileFormat: "Object", interactionStatistic: "InteractionCounter", recordedAt: "Event", isPartOf: "CreativeWork", exampleOfWork: "CreativeWork", dateCreated: "Object", releasedEvent: "PublicationEvent", publisher: "Object", encoding: "MediaObject", creator: "Object", hasPart: "CreativeWork", license: "Object", translator: "Object", offers: "Offer", schemaVersion: "Object", review: "Review", position: "Object", genre: "Object", character: "Person", producer: "Object", editor: "Person", locationCreated: "Place", about: "Thing", audio: "AudioObject", encodings: "MediaObject", funder: "Object", accountablePerson: "Person", material: "Object", author: "Object", sourceOrganization: "Organization", sponsor: "Object", provider: "Object", copyrightHolder: "Object", comment: "Comment", spatialCoverage: "Place", aggregateRating: "AggregateRating", educationalAlignment: "AlignmentObject", video: "VideoObject", version: "Object", mainEntity: "Thing", associatedMedia: "MediaObject", workExample: "CreativeWork", mentions: "Thing", citation: "Object", dateModified: "Object", inLanguage: "Object", isBasedOnUrl: "Object", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * A Competency Framework or simply Framework is a collection of competencies and relations between competencies in the framework and potentially between competencies in the framework and competencies in other frameworks. In practice, a Framework represents competencies related to a specific job, task, organization, career, knowledge domain, etc. * @@ -278,7 +278,7 @@ Framework = stjs.extend(Framework, CreativeWork, [], function(constructor, proto a.push(Framework.TYPE_0_1); return a; }; -}, {competency: {name: "Array", arguments: [null]}, relation: {name: "Array", arguments: [null]}, level: {name: "Array", arguments: [null]}, rollupRule: {name: "Array", arguments: [null]}, contributor: "Object", reviews: "Review", audience: "Audience", timeRequired: "Duration", publication: "PublicationEvent", contentLocation: "Place", temporalCoverage: "Object", isBasedOn: "Object", fileFormat: "Object", interactionStatistic: "InteractionCounter", recordedAt: "Event", isPartOf: "CreativeWork", exampleOfWork: "CreativeWork", dateCreated: "Object", releasedEvent: "PublicationEvent", publisher: "Object", encoding: "MediaObject", creator: "Object", hasPart: "CreativeWork", license: "Object", translator: "Object", offers: "Offer", schemaVersion: "Object", review: "Review", position: "Object", genre: "Object", character: "Person", producer: "Object", editor: "Person", locationCreated: "Place", about: "Thing", audio: "AudioObject", encodings: "MediaObject", funder: "Object", accountablePerson: "Person", material: "Object", author: "Object", sourceOrganization: "Organization", sponsor: "Object", provider: "Object", copyrightHolder: "Object", comment: "Comment", spatialCoverage: "Place", aggregateRating: "AggregateRating", educationalAlignment: "AlignmentObject", video: "VideoObject", version: "Object", mainEntity: "Thing", associatedMedia: "MediaObject", workExample: "CreativeWork", mentions: "Thing", citation: "Object", dateModified: "Object", inLanguage: "Object", isBasedOnUrl: "Object", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {competency: {name: "Array", arguments: [null]}, relation: {name: "Array", arguments: [null]}, level: {name: "Array", arguments: [null]}, rollupRule: {name: "Array", arguments: [null]}, about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * A relation between two objects. * @@ -416,7 +416,7 @@ Relation = stjs.extend(Relation, CreativeWork, [], function(constructor, prototy a.push(Relation.TYPE_0_1); return a; }; -}, {contributor: "Object", reviews: "Review", audience: "Audience", timeRequired: "Duration", publication: "PublicationEvent", contentLocation: "Place", temporalCoverage: "Object", isBasedOn: "Object", fileFormat: "Object", interactionStatistic: "InteractionCounter", recordedAt: "Event", isPartOf: "CreativeWork", exampleOfWork: "CreativeWork", dateCreated: "Object", releasedEvent: "PublicationEvent", publisher: "Object", encoding: "MediaObject", creator: "Object", hasPart: "CreativeWork", license: "Object", translator: "Object", offers: "Offer", schemaVersion: "Object", review: "Review", position: "Object", genre: "Object", character: "Person", producer: "Object", editor: "Person", locationCreated: "Place", about: "Thing", audio: "AudioObject", encodings: "MediaObject", funder: "Object", accountablePerson: "Person", material: "Object", author: "Object", sourceOrganization: "Organization", sponsor: "Object", provider: "Object", copyrightHolder: "Object", comment: "Comment", spatialCoverage: "Place", aggregateRating: "AggregateRating", educationalAlignment: "AlignmentObject", video: "VideoObject", version: "Object", mainEntity: "Thing", associatedMedia: "MediaObject", workExample: "CreativeWork", mentions: "Thing", citation: "Object", dateModified: "Object", inLanguage: "Object", isBasedOnUrl: "Object", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * A claim of competence in CASS is called an Assertion. It states with some confidence that an individual has mastered a competency at a given level, provides evidence of such mastery, and records data such as the time of assertion and the party making the assertion. * @@ -711,7 +711,7 @@ Assertion = stjs.extend(Assertion, CreativeWork, [], function(constructor, proto Assertion.codebooks = new Object(); return (Assertion.codebooks)[assertion.id]; }; -}, {codebooks: "Object", subject: "EcEncryptedValue", agent: "EcEncryptedValue", evidence: {name: "Array", arguments: ["EcEncryptedValue"]}, assertionDate: "EcEncryptedValue", expirationDate: "EcEncryptedValue", decayFunction: "EcEncryptedValue", negative: "EcEncryptedValue", contributor: "Object", reviews: "Review", audience: "Audience", timeRequired: "Duration", publication: "PublicationEvent", contentLocation: "Place", temporalCoverage: "Object", isBasedOn: "Object", fileFormat: "Object", interactionStatistic: "InteractionCounter", recordedAt: "Event", isPartOf: "CreativeWork", exampleOfWork: "CreativeWork", dateCreated: "Object", releasedEvent: "PublicationEvent", publisher: "Object", encoding: "MediaObject", creator: "Object", hasPart: "CreativeWork", license: "Object", translator: "Object", offers: "Offer", schemaVersion: "Object", review: "Review", position: "Object", genre: "Object", character: "Person", producer: "Object", editor: "Person", locationCreated: "Place", about: "Thing", audio: "AudioObject", encodings: "MediaObject", funder: "Object", accountablePerson: "Person", material: "Object", author: "Object", sourceOrganization: "Organization", sponsor: "Object", provider: "Object", copyrightHolder: "Object", comment: "Comment", spatialCoverage: "Place", aggregateRating: "AggregateRating", educationalAlignment: "AlignmentObject", video: "VideoObject", version: "Object", mainEntity: "Thing", associatedMedia: "MediaObject", workExample: "CreativeWork", mentions: "Thing", citation: "Object", dateModified: "Object", inLanguage: "Object", isBasedOnUrl: "Object", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {codebooks: "Object", subject: "EcEncryptedValue", agent: "EcEncryptedValue", evidence: {name: "Array", arguments: ["EcEncryptedValue"]}, assertionDate: "EcEncryptedValue", expirationDate: "EcEncryptedValue", decayFunction: "EcEncryptedValue", negative: "EcEncryptedValue", about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Container for storing assertions and the secrets used to decrypt those assertions. * @@ -918,4 +918,4 @@ AssertionEnvelope = stjs.extend(AssertionEnvelope, CreativeWork, [], function(co return false; return true; }; -}, {assertion: {name: "Array", arguments: ["Assertion"]}, codebook: {name: "Array", arguments: ["AssertionCodebook"]}, contributor: "Object", reviews: "Review", audience: "Audience", timeRequired: "Duration", publication: "PublicationEvent", contentLocation: "Place", temporalCoverage: "Object", isBasedOn: "Object", fileFormat: "Object", interactionStatistic: "InteractionCounter", recordedAt: "Event", isPartOf: "CreativeWork", exampleOfWork: "CreativeWork", dateCreated: "Object", releasedEvent: "PublicationEvent", publisher: "Object", encoding: "MediaObject", creator: "Object", hasPart: "CreativeWork", license: "Object", translator: "Object", offers: "Offer", schemaVersion: "Object", review: "Review", position: "Object", genre: "Object", character: "Person", producer: "Object", editor: "Person", locationCreated: "Place", about: "Thing", audio: "AudioObject", encodings: "MediaObject", funder: "Object", accountablePerson: "Person", material: "Object", author: "Object", sourceOrganization: "Organization", sponsor: "Object", provider: "Object", copyrightHolder: "Object", comment: "Comment", spatialCoverage: "Place", aggregateRating: "AggregateRating", educationalAlignment: "AlignmentObject", video: "VideoObject", version: "Object", mainEntity: "Thing", associatedMedia: "MediaObject", workExample: "CreativeWork", mentions: "Thing", citation: "Object", dateModified: "Object", inLanguage: "Object", isBasedOnUrl: "Object", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {assertion: {name: "Array", arguments: ["Assertion"]}, codebook: {name: "Array", arguments: ["AssertionCodebook"]}, about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); diff --git a/src/main/js/cass/org.schema.js b/src/main/js/cass/org.schema.js index 7ced0aaf9..f5a7648b6 100644 --- a/src/main/js/cass/org.schema.js +++ b/src/main/js/cass/org.schema.js @@ -310,7 +310,7 @@ Place = stjs.extend(Place, Thing, [], function(constructor, prototype) { * A URL to a map of the place. * * @property hasMap - * @type Map + * @type Object */ prototype.hasMap = null; /** @@ -425,7 +425,7 @@ Place = stjs.extend(Place, Thing, [], function(constructor, prototype) { * @type Place */ prototype.containedIn = null; -}, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Person * A person (alive, dead, undead, or fictional). @@ -2708,7 +2708,7 @@ function() { this.context = "http://schema.org/"; this.type = "Residence"; }; -Residence = stjs.extend(Residence, Place, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Residence = stjs.extend(Residence, Place, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Accommodation * An accommodation is a place that can accommodate human beings, e.g. a hotel room, a camping pitch, or a meeting room. Many accommodations are for overnight stays, but this is not a mandatory requirement. @@ -2774,7 +2774,7 @@ Accommodation = stjs.extend(Accommodation, Place, [], function(constructor, prot * @type Text */ prototype.permittedUsage = null; -}, {floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/LandmarksOrHistoricalBuildings * An historical landmark or building. @@ -2794,7 +2794,7 @@ function() { this.context = "http://schema.org/"; this.type = "LandmarksOrHistoricalBuildings"; }; -LandmarksOrHistoricalBuildings = stjs.extend(LandmarksOrHistoricalBuildings, Place, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +LandmarksOrHistoricalBuildings = stjs.extend(LandmarksOrHistoricalBuildings, Place, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/CivicStructure * A public structure, such as a town hall or concert hall. @@ -2823,7 +2823,7 @@ CivicStructure = stjs.extend(CivicStructure, Place, [], function(constructor, pr * @type Text */ prototype.openingHours = null; -}, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Landform * A landform or physical feature. Landform elements include mountains, plains, lakes, rivers, seascape and oceanic waterbody interface features such as bays, peninsulas, seas and so forth, including sub-aqueous terrain features such as submersed mountain ranges, volcanoes, and the great ocean basins. @@ -2843,7 +2843,7 @@ function() { this.context = "http://schema.org/"; this.type = "Landform"; }; -Landform = stjs.extend(Landform, Place, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Landform = stjs.extend(Landform, Place, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/AdministrativeArea * A geographical region, typically under the jurisdiction of a particular government. @@ -2863,7 +2863,7 @@ function() { this.context = "http://schema.org/"; this.type = "AdministrativeArea"; }; -AdministrativeArea = stjs.extend(AdministrativeArea, Place, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +AdministrativeArea = stjs.extend(AdministrativeArea, Place, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/TouristAttraction * A tourist attraction. @@ -2883,7 +2883,7 @@ function() { this.context = "http://schema.org/"; this.type = "TouristAttraction"; }; -TouristAttraction = stjs.extend(TouristAttraction, Place, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +TouristAttraction = stjs.extend(TouristAttraction, Place, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Quantity * Quantities such as distance, time, mass, weight, etc. Particular instances of say Mass are entities like '3 Kg' or '4 milligrams'. @@ -8359,35 +8359,6 @@ function() { this.type = "Season"; }; Season = stjs.extend(Season, CreativeWork, [], null, {about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); -/** - * Schema.org/Map - * A map. - * - * @author schema.org - * @class Map - * @module org.schema - * @extends CreativeWork - */ -var Map = /** - * Constructor, automatically sets @context and @type. - * - * @constructor - */ -function() { - CreativeWork.call(this); - this.context = "http://schema.org/"; - this.type = "Map"; -}; -Map = stjs.extend(Map, CreativeWork, [], function(constructor, prototype) { - /** - * Schema.org/mapType - * Indicates the kind of Map, from the MapCategoryType Enumeration. - * - * @property mapType - * @type MapCategoryType - */ - prototype.mapType = null; -}, {mapType: "MapCategoryType", about: "Thing", educationalAlignment: "AlignmentObject", associatedMedia: "MediaObject", funder: "Person", audio: "AudioObject", workExample: "CreativeWork", provider: "Person", encoding: "MediaObject", character: "Person", audience: "Audience", sourceOrganization: "Organization", isPartOf: "CreativeWork", video: "VideoObject", publication: "PublicationEvent", contributor: "Organization", reviews: "Review", hasPart: "CreativeWork", releasedEvent: "PublicationEvent", contentLocation: "Place", aggregateRating: "AggregateRating", locationCreated: "Place", accountablePerson: "Person", spatialCoverage: "Place", offers: "Offer", editor: "Person", copyrightHolder: "Person", recordedAt: "Event", publisher: "Person", interactionStatistic: "InteractionCounter", exampleOfWork: "CreativeWork", mainEntity: "Thing", author: "Person", timeRequired: "Duration", translator: "Person", comment: "Comment", inLanguage: "Language", review: "Review", license: "CreativeWork", encodings: "MediaObject", isBasedOn: "Product", creator: "Person", sponsor: "Organization", producer: "Person", mentions: "Thing", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Dataset * A body of structured information describing some topic(s) of interest. @@ -10258,7 +10229,7 @@ function() { this.context = "http://schema.org/"; this.type = "GatedResidenceCommunity"; }; -GatedResidenceCommunity = stjs.extend(GatedResidenceCommunity, Residence, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +GatedResidenceCommunity = stjs.extend(GatedResidenceCommunity, Residence, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/ApartmentComplex * Residence type: Apartment complex. @@ -10278,7 +10249,7 @@ function() { this.context = "http://schema.org/"; this.type = "ApartmentComplex"; }; -ApartmentComplex = stjs.extend(ApartmentComplex, Residence, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +ApartmentComplex = stjs.extend(ApartmentComplex, Residence, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/CampingPitch * A camping pitch is an individual place for overnight stay in the outdoors, typically being part of a larger camping site. @@ -10300,7 +10271,7 @@ function() { this.context = "http://schema.org/"; this.type = "CampingPitch"; }; -CampingPitch = stjs.extend(CampingPitch, Accommodation, [], null, {floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +CampingPitch = stjs.extend(CampingPitch, Accommodation, [], null, {floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Suite * A suite in a hotel or other public accommodation, denotes a class of luxury accommodations, the key feature of which is multiple rooms (Source: Wikipedia, the free encyclopedia, see http://en.wikipedia.org/wiki/Suite_(hotel)). @@ -10350,7 +10321,7 @@ Suite = stjs.extend(Suite, Accommodation, [], function(constructor, prototype) { * @type Number */ prototype.numberOfRooms = null; -}, {occupancy: "QuantitativeValue", bed: "BedDetails", floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {occupancy: "QuantitativeValue", bed: "BedDetails", floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/House * A house is a building or structure that has the ability to be occupied for habitation by humans or other creatures (Source: Wikipedia, the free encyclopedia, see http://en.wikipedia.org/wiki/House). @@ -10380,7 +10351,7 @@ House = stjs.extend(House, Accommodation, [], function(constructor, prototype) { * @type Number */ prototype.numberOfRooms = null; -}, {floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Room * A room is a distinguishable space within a structure, usually separated from other spaces by interior walls. (Source: Wikipedia, the free encyclopedia, see http://en.wikipedia.org/wiki/Room). @@ -10402,7 +10373,7 @@ function() { this.context = "http://schema.org/"; this.type = "Room"; }; -Room = stjs.extend(Room, Accommodation, [], null, {floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Room = stjs.extend(Room, Accommodation, [], null, {floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Apartment * An apartment (in American English) or flat (in British English) is a self-contained housing unit (a type of residential real estate) that occupies only part of a building (Source: Wikipedia, the free encyclopedia, see http://en.wikipedia.org/wiki/Apartment). @@ -10441,7 +10412,7 @@ Apartment = stjs.extend(Apartment, Accommodation, [], function(constructor, prot * @type Number */ prototype.numberOfRooms = null; -}, {occupancy: "QuantitativeValue", floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {occupancy: "QuantitativeValue", floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/PoliceStation * A police station. @@ -10461,7 +10432,7 @@ function() { this.context = "http://schema.org/"; this.type = "PoliceStation"; }; -PoliceStation = stjs.extend(PoliceStation, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +PoliceStation = stjs.extend(PoliceStation, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Bridge * A bridge. @@ -10481,7 +10452,7 @@ function() { this.context = "http://schema.org/"; this.type = "Bridge"; }; -Bridge = stjs.extend(Bridge, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Bridge = stjs.extend(Bridge, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/SubwayStation * A subway station. @@ -10501,7 +10472,7 @@ function() { this.context = "http://schema.org/"; this.type = "SubwayStation"; }; -SubwayStation = stjs.extend(SubwayStation, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +SubwayStation = stjs.extend(SubwayStation, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/BusStation * A bus station. @@ -10521,7 +10492,7 @@ function() { this.context = "http://schema.org/"; this.type = "BusStation"; }; -BusStation = stjs.extend(BusStation, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +BusStation = stjs.extend(BusStation, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/GovernmentBuilding * A government building. @@ -10541,7 +10512,7 @@ function() { this.context = "http://schema.org/"; this.type = "GovernmentBuilding"; }; -GovernmentBuilding = stjs.extend(GovernmentBuilding, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +GovernmentBuilding = stjs.extend(GovernmentBuilding, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/BusStop * A bus stop. @@ -10561,7 +10532,7 @@ function() { this.context = "http://schema.org/"; this.type = "BusStop"; }; -BusStop = stjs.extend(BusStop, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +BusStop = stjs.extend(BusStop, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Beach * Beach. @@ -10581,7 +10552,7 @@ function() { this.context = "http://schema.org/"; this.type = "Beach"; }; -Beach = stjs.extend(Beach, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Beach = stjs.extend(Beach, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/TaxiStand * A taxi stand. @@ -10601,7 +10572,7 @@ function() { this.context = "http://schema.org/"; this.type = "TaxiStand"; }; -TaxiStand = stjs.extend(TaxiStand, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +TaxiStand = stjs.extend(TaxiStand, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Campground * A camping site, campsite, or campground is a place used for overnight stay in the outdoors. In British English a campsite is an area, usually divided into a number of pitches, where people can camp overnight using tents or camper vans or caravans; this British English use of the word is synonymous with the American English expression campground. In American English the term campsite generally means an area where an individual, family, group, or military unit can pitch a tent or parks a camper; a campground may contain many campsites (Source: Wikipedia, the free encyclopedia, see http://en.wikipedia.org/wiki/Campsite). @@ -10623,7 +10594,7 @@ function() { this.context = "http://schema.org/"; this.type = "Campground"; }; -Campground = stjs.extend(Campground, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Campground = stjs.extend(Campground, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Park * A park. @@ -10643,7 +10614,7 @@ function() { this.context = "http://schema.org/"; this.type = "Park"; }; -Park = stjs.extend(Park, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Park = stjs.extend(Park, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Cemetery * A graveyard. @@ -10663,7 +10634,7 @@ function() { this.context = "http://schema.org/"; this.type = "Cemetery"; }; -Cemetery = stjs.extend(Cemetery, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Cemetery = stjs.extend(Cemetery, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/TrainStation * A train station. @@ -10683,7 +10654,7 @@ function() { this.context = "http://schema.org/"; this.type = "TrainStation"; }; -TrainStation = stjs.extend(TrainStation, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +TrainStation = stjs.extend(TrainStation, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/MovieTheater * A movie theater. @@ -10712,7 +10683,7 @@ MovieTheater = stjs.extend(MovieTheater, CivicStructure, [], function(constructo * @type Number */ prototype.screenCount = null; -}, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Hospital * A hospital. @@ -10732,7 +10703,7 @@ function() { this.context = "http://schema.org/"; this.type = "Hospital"; }; -Hospital = stjs.extend(Hospital, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Hospital = stjs.extend(Hospital, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/PerformingArtsTheater * A theater or other performing art center. @@ -10752,7 +10723,7 @@ function() { this.context = "http://schema.org/"; this.type = "PerformingArtsTheater"; }; -PerformingArtsTheater = stjs.extend(PerformingArtsTheater, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +PerformingArtsTheater = stjs.extend(PerformingArtsTheater, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Airport * An airport. @@ -10789,7 +10760,7 @@ Airport = stjs.extend(Airport, CivicStructure, [], function(constructor, prototy * @type Text */ prototype.icaoCode = null; -}, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/FireStation * A fire station. With firemen. @@ -10809,7 +10780,7 @@ function() { this.context = "http://schema.org/"; this.type = "FireStation"; }; -FireStation = stjs.extend(FireStation, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +FireStation = stjs.extend(FireStation, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/EventVenue * An event venue. @@ -10829,7 +10800,7 @@ function() { this.context = "http://schema.org/"; this.type = "EventVenue"; }; -EventVenue = stjs.extend(EventVenue, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +EventVenue = stjs.extend(EventVenue, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/PlaceOfWorship * Place of worship, such as a church, synagogue, or mosque. @@ -10849,7 +10820,7 @@ function() { this.context = "http://schema.org/"; this.type = "PlaceOfWorship"; }; -PlaceOfWorship = stjs.extend(PlaceOfWorship, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +PlaceOfWorship = stjs.extend(PlaceOfWorship, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/MusicVenue * A music venue. @@ -10869,7 +10840,7 @@ function() { this.context = "http://schema.org/"; this.type = "MusicVenue"; }; -MusicVenue = stjs.extend(MusicVenue, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +MusicVenue = stjs.extend(MusicVenue, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Museum * A museum. @@ -10889,7 +10860,7 @@ function() { this.context = "http://schema.org/"; this.type = "Museum"; }; -Museum = stjs.extend(Museum, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Museum = stjs.extend(Museum, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Crematorium * A crematorium. @@ -10909,7 +10880,7 @@ function() { this.context = "http://schema.org/"; this.type = "Crematorium"; }; -Crematorium = stjs.extend(Crematorium, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Crematorium = stjs.extend(Crematorium, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Playground * A playground. @@ -10929,7 +10900,7 @@ function() { this.context = "http://schema.org/"; this.type = "Playground"; }; -Playground = stjs.extend(Playground, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Playground = stjs.extend(Playground, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Zoo * A zoo. @@ -10949,7 +10920,7 @@ function() { this.context = "http://schema.org/"; this.type = "Zoo"; }; -Zoo = stjs.extend(Zoo, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Zoo = stjs.extend(Zoo, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/RVPark * A place offering space for "Recreational Vehicles", Caravans, mobile homes and the like. @@ -10969,7 +10940,7 @@ function() { this.context = "http://schema.org/"; this.type = "RVPark"; }; -RVPark = stjs.extend(RVPark, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +RVPark = stjs.extend(RVPark, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/ParkingFacility * A parking lot or other parking facility. @@ -10989,7 +10960,7 @@ function() { this.context = "http://schema.org/"; this.type = "ParkingFacility"; }; -ParkingFacility = stjs.extend(ParkingFacility, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +ParkingFacility = stjs.extend(ParkingFacility, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Aquarium * Aquarium. @@ -11009,7 +10980,7 @@ function() { this.context = "http://schema.org/"; this.type = "Aquarium"; }; -Aquarium = stjs.extend(Aquarium, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Aquarium = stjs.extend(Aquarium, CivicStructure, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Continent * One of the continents (for example, Europe or Africa). @@ -11029,7 +11000,7 @@ function() { this.context = "http://schema.org/"; this.type = "Continent"; }; -Continent = stjs.extend(Continent, Landform, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Continent = stjs.extend(Continent, Landform, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Volcano * A volcano, like Fuji san. @@ -11049,7 +11020,7 @@ function() { this.context = "http://schema.org/"; this.type = "Volcano"; }; -Volcano = stjs.extend(Volcano, Landform, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Volcano = stjs.extend(Volcano, Landform, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/BodyOfWater * A body of water, such as a sea, ocean, or lake. @@ -11069,7 +11040,7 @@ function() { this.context = "http://schema.org/"; this.type = "BodyOfWater"; }; -BodyOfWater = stjs.extend(BodyOfWater, Landform, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +BodyOfWater = stjs.extend(BodyOfWater, Landform, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Mountain * A mountain, like Mount Whitney or Mount Everest. @@ -11089,7 +11060,7 @@ function() { this.context = "http://schema.org/"; this.type = "Mountain"; }; -Mountain = stjs.extend(Mountain, Landform, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Mountain = stjs.extend(Mountain, Landform, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/City * A city or town. @@ -11109,7 +11080,7 @@ function() { this.context = "http://schema.org/"; this.type = "City"; }; -City = stjs.extend(City, AdministrativeArea, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +City = stjs.extend(City, AdministrativeArea, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Country * A country. @@ -11129,7 +11100,7 @@ function() { this.context = "http://schema.org/"; this.type = "Country"; }; -Country = stjs.extend(Country, AdministrativeArea, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Country = stjs.extend(Country, AdministrativeArea, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/State * A state or province of a country. @@ -11149,7 +11120,7 @@ function() { this.context = "http://schema.org/"; this.type = "State"; }; -State = stjs.extend(State, AdministrativeArea, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +State = stjs.extend(State, AdministrativeArea, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Mass * Properties that take Mass as values are of the form '<Number> <Mass unit of measure>'. E.g., '7 kg'. @@ -13309,6 +13280,26 @@ function() { this.type = "RsvpResponseType"; }; RsvpResponseType = stjs.extend(RsvpResponseType, Enumeration, [], null, {identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +/** + * Schema.org/EventStatusType + * EventStatusType is an enumeration type whose instances represent several states that an Event may be in. + * + * @author schema.org + * @class EventStatusType + * @module org.schema + * @extends Enumeration + */ +var EventStatusType = /** + * Constructor, automatically sets @context and @type. + * + * @constructor + */ +function() { + Enumeration.call(this); + this.context = "http://schema.org/"; + this.type = "EventStatusType"; +}; +EventStatusType = stjs.extend(EventStatusType, Enumeration, [], null, {identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Specialty * Any branch of a field in which people typically develop specific expertise, usually after significant study, time, and effort. @@ -18708,7 +18699,7 @@ SingleFamilyResidence = stjs.extend(SingleFamilyResidence, House, [], function(c * @type Number */ prototype.numberOfRooms = null; -}, {occupancy: "QuantitativeValue", floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {occupancy: "QuantitativeValue", floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/HotelRoom * A hotel room is a single room in a hotel. @@ -18749,7 +18740,7 @@ HotelRoom = stjs.extend(HotelRoom, Room, [], function(constructor, prototype) { * @type BedDetails */ prototype.bed = null; -}, {occupancy: "QuantitativeValue", bed: "BedDetails", floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +}, {occupancy: "QuantitativeValue", bed: "BedDetails", floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/MeetingRoom * A meeting room, conference room, or conference hall is a room provided for singular events such as business conferences and meetings (Source: Wikipedia, the free encyclopedia, see http://en.wikipedia.org/wiki/Conference_hall). @@ -18771,7 +18762,7 @@ function() { this.context = "http://schema.org/"; this.type = "MeetingRoom"; }; -MeetingRoom = stjs.extend(MeetingRoom, Room, [], null, {floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +MeetingRoom = stjs.extend(MeetingRoom, Room, [], null, {floorSize: "QuantitativeValue", amenityFeature: "LocationFeatureSpecification", photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/LegislativeBuilding * A legislative building—for example, the state capitol. @@ -18791,7 +18782,7 @@ function() { this.context = "http://schema.org/"; this.type = "LegislativeBuilding"; }; -LegislativeBuilding = stjs.extend(LegislativeBuilding, GovernmentBuilding, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +LegislativeBuilding = stjs.extend(LegislativeBuilding, GovernmentBuilding, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/CityHall * A city hall. @@ -18811,7 +18802,7 @@ function() { this.context = "http://schema.org/"; this.type = "CityHall"; }; -CityHall = stjs.extend(CityHall, GovernmentBuilding, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +CityHall = stjs.extend(CityHall, GovernmentBuilding, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/DefenceEstablishment * A defence establishment, such as an army or navy base. @@ -18831,7 +18822,7 @@ function() { this.context = "http://schema.org/"; this.type = "DefenceEstablishment"; }; -DefenceEstablishment = stjs.extend(DefenceEstablishment, GovernmentBuilding, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +DefenceEstablishment = stjs.extend(DefenceEstablishment, GovernmentBuilding, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Courthouse * A courthouse. @@ -18851,7 +18842,7 @@ function() { this.context = "http://schema.org/"; this.type = "Courthouse"; }; -Courthouse = stjs.extend(Courthouse, GovernmentBuilding, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Courthouse = stjs.extend(Courthouse, GovernmentBuilding, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Embassy * An embassy. @@ -18871,7 +18862,7 @@ function() { this.context = "http://schema.org/"; this.type = "Embassy"; }; -Embassy = stjs.extend(Embassy, GovernmentBuilding, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Embassy = stjs.extend(Embassy, GovernmentBuilding, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/HinduTemple * A Hindu temple. @@ -18891,7 +18882,7 @@ function() { this.context = "http://schema.org/"; this.type = "HinduTemple"; }; -HinduTemple = stjs.extend(HinduTemple, PlaceOfWorship, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +HinduTemple = stjs.extend(HinduTemple, PlaceOfWorship, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Synagogue * A synagogue. @@ -18911,7 +18902,7 @@ function() { this.context = "http://schema.org/"; this.type = "Synagogue"; }; -Synagogue = stjs.extend(Synagogue, PlaceOfWorship, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Synagogue = stjs.extend(Synagogue, PlaceOfWorship, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Mosque * A mosque. @@ -18931,7 +18922,7 @@ function() { this.context = "http://schema.org/"; this.type = "Mosque"; }; -Mosque = stjs.extend(Mosque, PlaceOfWorship, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Mosque = stjs.extend(Mosque, PlaceOfWorship, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/BuddhistTemple * A Buddhist temple. @@ -18951,7 +18942,7 @@ function() { this.context = "http://schema.org/"; this.type = "BuddhistTemple"; }; -BuddhistTemple = stjs.extend(BuddhistTemple, PlaceOfWorship, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +BuddhistTemple = stjs.extend(BuddhistTemple, PlaceOfWorship, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Church * A church. @@ -18971,7 +18962,7 @@ function() { this.context = "http://schema.org/"; this.type = "Church"; }; -Church = stjs.extend(Church, PlaceOfWorship, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Church = stjs.extend(Church, PlaceOfWorship, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/CatholicChurch * A Catholic church. @@ -18991,7 +18982,7 @@ function() { this.context = "http://schema.org/"; this.type = "CatholicChurch"; }; -CatholicChurch = stjs.extend(CatholicChurch, PlaceOfWorship, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +CatholicChurch = stjs.extend(CatholicChurch, PlaceOfWorship, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/OceanBodyOfWater * An ocean (for example, the Pacific). @@ -19011,7 +19002,7 @@ function() { this.context = "http://schema.org/"; this.type = "OceanBodyOfWater"; }; -OceanBodyOfWater = stjs.extend(OceanBodyOfWater, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +OceanBodyOfWater = stjs.extend(OceanBodyOfWater, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Canal * A canal, like the Panama Canal. @@ -19031,7 +19022,7 @@ function() { this.context = "http://schema.org/"; this.type = "Canal"; }; -Canal = stjs.extend(Canal, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Canal = stjs.extend(Canal, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Reservoir * A reservoir of water, typically an artificially created lake, like the Lake Kariba reservoir. @@ -19051,7 +19042,7 @@ function() { this.context = "http://schema.org/"; this.type = "Reservoir"; }; -Reservoir = stjs.extend(Reservoir, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Reservoir = stjs.extend(Reservoir, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Waterfall * A waterfall, like Niagara. @@ -19071,7 +19062,7 @@ function() { this.context = "http://schema.org/"; this.type = "Waterfall"; }; -Waterfall = stjs.extend(Waterfall, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Waterfall = stjs.extend(Waterfall, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/Pond * A pond. @@ -19091,7 +19082,7 @@ function() { this.context = "http://schema.org/"; this.type = "Pond"; }; -Pond = stjs.extend(Pond, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +Pond = stjs.extend(Pond, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/LakeBodyOfWater * A lake (for example, Lake Pontrachain). @@ -19111,7 +19102,7 @@ function() { this.context = "http://schema.org/"; this.type = "LakeBodyOfWater"; }; -LakeBodyOfWater = stjs.extend(LakeBodyOfWater, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +LakeBodyOfWater = stjs.extend(LakeBodyOfWater, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/SeaBodyOfWater * A sea (for example, the Caspian sea). @@ -19131,7 +19122,7 @@ function() { this.context = "http://schema.org/"; this.type = "SeaBodyOfWater"; }; -SeaBodyOfWater = stjs.extend(SeaBodyOfWater, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +SeaBodyOfWater = stjs.extend(SeaBodyOfWater, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/RiverBodyOfWater * A river (for example, the broad majestic Shannon). @@ -19151,7 +19142,7 @@ function() { this.context = "http://schema.org/"; this.type = "RiverBodyOfWater"; }; -RiverBodyOfWater = stjs.extend(RiverBodyOfWater, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Map", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); +RiverBodyOfWater = stjs.extend(RiverBodyOfWater, BodyOfWater, [], null, {photo: "ImageObject", address: "PostalAddress", openingHoursSpecification: "OpeningHoursSpecification", containedInPlace: "Place", reviews: "Review", aggregateRating: "AggregateRating", photos: "Photograph", hasMap: "Object", additionalProperty: "PropertyValue", events: "Event", specialOpeningHoursSpecification: "OpeningHoursSpecification", amenityFeature: "LocationFeatureSpecification", logo: "ImageObject", geo: "GeoCoordinates", review: "Review", event: "Event", containsPlace: "Place", containedIn: "Place", identifier: "Object", image: "Object", potentialAction: "Action", mainEntityOfPage: "Object", owner: {name: "Array", arguments: [null]}, signature: {name: "Array", arguments: [null]}, reader: {name: "Array", arguments: [null]}, atProperties: {name: "Array", arguments: [null]}}, {}); /** * Schema.org/EmployeeRole * A subclass of OrganizationRole used to describe employee relationships. diff --git a/src/main/webapp/cass-align b/src/main/webapp/cass-align index 97b5e4b1d..ff251ad33 160000 --- a/src/main/webapp/cass-align +++ b/src/main/webapp/cass-align @@ -1 +1 @@ -Subproject commit 97b5e4b1ddaacb9c722ca0843c15391410e1784a +Subproject commit ff251ad3387ea0b4bb48fc7ab6928d4fd78f1754 diff --git a/src/main/webapp/cass-editor b/src/main/webapp/cass-editor index e2ebd54a7..789982dda 160000 --- a/src/main/webapp/cass-editor +++ b/src/main/webapp/cass-editor @@ -1 +1 @@ -Subproject commit e2ebd54a7a7d3389a85ea291715f187d2c294ef8 +Subproject commit 789982ddaf0a90f0222ea9314c3f06dd2dff835c diff --git a/src/main/webapp/cass-gap-analysis b/src/main/webapp/cass-gap-analysis index fcd7a2b21..eb15139bc 160000 --- a/src/main/webapp/cass-gap-analysis +++ b/src/main/webapp/cass-gap-analysis @@ -1 +1 @@ -Subproject commit fcd7a2b2160a2aafa303c0ad7a27700754515c9e +Subproject commit eb15139bc20b3a8f3280dbe6e77702a0463b50b3 diff --git a/src/main/webapp/cass-profile b/src/main/webapp/cass-profile index be60a41b9..8f0735276 160000 --- a/src/main/webapp/cass-profile +++ b/src/main/webapp/cass-profile @@ -1 +1 @@ -Subproject commit be60a41b9d1237510b63192717c75ffe86e5abc1 +Subproject commit 8f073527616be9b17385646652c7c088b1dd128b diff --git a/src/main/webapp/cass-viewer b/src/main/webapp/cass-viewer index 5d774ec35..b4eeaf869 160000 --- a/src/main/webapp/cass-viewer +++ b/src/main/webapp/cass-viewer @@ -1 +1 @@ -Subproject commit 5d774ec355ed0813412d182f69f39f60b71f7e7b +Subproject commit b4eeaf869f3673dd184017e6cdecca1d31421cd7 diff --git a/src/main/webapp/cass-vlrc b/src/main/webapp/cass-vlrc index e53fe16b0..f2e456be6 160000 --- a/src/main/webapp/cass-vlrc +++ b/src/main/webapp/cass-vlrc @@ -1 +1 @@ -Subproject commit e53fe16b031cf7b6b16c136d64ae57e66c1a37fd +Subproject commit f2e456be636ae6d09513e707b5d0b94107d51fb7 diff --git a/src/main/webapp/pom.xml b/src/main/webapp/pom.xml index d5d0ae986..4d7e120a2 100644 --- a/src/main/webapp/pom.xml +++ b/src/main/webapp/pom.xml @@ -11,7 +11,7 @@ http://github.com/cassproject/cass - 2.7.0 + 2.7.1 UTF-8