Skip to content
Snippets Groups Projects
Commit f45cef6e authored by Lars Trieloff's avatar Lars Trieloff Committed by GitHub Enterprise
Browse files

Merge pull request #36 from maj/remove-unused-files

Removing unused files
parents 1b3247ee 37620aa4
No related branches found
No related tags found
No related merge requests found
/**
* Copyright 2017 Adobe Systems Incorporated. All rights reserved.
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. You may obtain a copy
* of the License at http://www.apache.org/licenses/LICENSE-2.0
*/
'use strict';
var consts = {};
// schema vocabulary
consts.OWL_ONTOLOGY = 'http://www.w3.org/2002/07/owl#Ontology';
consts.OWL_RESTRICTION = 'http://www.w3.org/2002/07/owl#Restriction';
consts.OWL_ALLVALUES = 'http://www.w3.org/2002/07/owl#allValuesFrom';
consts.OWL_DATATYPE = 'http://www.w3.org/2002/07/owl#onDatatype';
consts.OWL_ALLVALUES = 'http://www.w3.org/2002/07/owl#allValuesFrom';
consts.DC_TITLE = 'http://purl.org/dc/elements/1.1/title';
consts.RDF_TYPE = 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type';
consts.RDF_LIST = 'http://www.w3.org/1999/02/22-rdf-syntax-ns#List';
consts.RDF_PROPERTY = 'http://www.w3.org/1999/02/22-rdf-syntax-ns#Property';
consts.RDFS_CLASS = 'http://www.w3.org/2000/01/rdf-schema#Class';
consts.RDFS_COMMENT = 'http://www.w3.org/2000/01/rdf-schema#comment';
consts.RDFS_SUBCLASSOF = 'http://www.w3.org/2000/01/rdf-schema#subClassOf';
consts.RDFS_ISDEFINEDBY = 'http://www.w3.org/2000/01/rdf-schema#isDefinedBy';
consts.RDFS_DOMAIN = 'http://www.w3.org/2000/01/rdf-schema#domain';
consts.RDFS_RANGE = 'http://www.w3.org/2000/01/rdf-schema#range';
consts.RDFS_LABEL = 'http://www.w3.org/2000/01/rdf-schema#label';
consts.SKOS_EXAMPLE = 'http://www.w3.org/2004/02/skos/core#example';
consts.SKOS_NOTE = 'http://www.w3.org/2004/02/skos/core#note';
consts.CORE_BASECLASS = 'http://ns.adobe.com/adobecloud/core/1.0/BaseClass';
consts.CORE_BASEPROPERTY = 'http://ns.adobe.com/adobecloud/core/1.0/BaseProperty';
consts.META_JSONNAME = 'http://ns.adobe.com/adobecloud/meta/1.0/jsonName';
consts.PROP_MANDATORY = 'http://ns.adobe.com/adobecloud/meta/1.0/mandatory';
consts.PROP_USEREDITABLE = 'http://ns.adobe.com/adobecloud/meta/1.0/userEditable';
consts.PROP_IMMUTABLE = 'http://ns.adobe.com/adobecloud/meta/1.0/immutable';
// misc.
consts.ID = '@id'; // IRI of 'this' js object
consts.XSD_STRING = 'http://www.w3.org/2001/XMLSchema#string'; // xsd:string
module.exports = consts;
\ No newline at end of file
/**
* Copyright 2017 Adobe Systems Incorporated. All rights reserved.
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. You may obtain a copy
* of the License at http://www.apache.org/licenses/LICENSE-2.0
*/
"use strict";
var jsonSchema = {};
var _ = require("lodash");
var logger = require("winston");
var consts = require("./constants");
var baseSchema = function () {
return {"$schema": "http://json-schema.org/schema#"};
};
var rdfRangeToJsonType = {
"http://www.w3.org/2001/XMLSchema#string": {
"type": "string"
},
"http://www.w3.org/2001/XMLSchema#dateTime": {
"type": "string",
"format": "date-time"
},
"http://www.w3.org/2001/XMLSchema#boolean": {
"type": "boolean"
},
"http://www.w3.org/2001/XMLSchema#integer": {
"type": "integer"
}
};
const ttlKeyNames = {
"range": "http://www.w3.org/2000/01/rdf-schema#range",
"description": "http://www.w3.org/2000/01/rdf-schema#comment",
"title": "http://www.w3.org/2000/01/rdf-schema#label",
"required": "http://ns.adobe.com/adobecloud/meta/1.0/mandatory",
"name": "http://ns.adobe.com/adobecloud/meta/1.0/jsonName"
};
function renderProperties(klass, types) {
var jschema = new baseSchema();
jschema.properties = {};
jschema.required = [];
_.forEach(klass.properties, function (v) {
var mappedPropertyType = rdfRangeToJsonType[v[consts.RDFS_RANGE]];
var rdfsLabel = v[consts.RDFS_LABEL];
if (rdfsLabel === undefined) {
rdfsLabel = v["@id"];
}
if (mappedPropertyType !== undefined) {
jschema.properties[rdfsLabel] = mappedPropertyType;
} else {
jschema.properties[rdfsLabel] = {
"type": "string"
};
}
jschema.properties[rdfsLabel].description = v[consts.RDFS_RANGE];
});
if (jschema.required.length === 0) {
delete jschema.required;
}
return jschema;
}
jsonSchema.renderClass = function (klass, schemaTypes, callback) {
var jschema = new baseSchema();
jschema.description = klass[ttlKeyNames.description];
jschema.title = klass[ttlKeyNames.title];
jschema.properties = {};
jschema.required = [];
_.forIn(klass.properties, function (propertyDetail, key) {
var propertyName = propertyDetail[ttlKeyNames.name];
var rdfRangeType = propertyDetail[ttlKeyNames.range];
var mappedTypeDetail = rdfRangeToJsonType[rdfRangeType];
if (mappedTypeDetail === undefined) {
var schemaType = schemaTypes[rdfRangeType];
if (!schemaType) {
logger.warn("Could not get dataype for property.");
return;
}
if (schemaType[consts.OWL_DATATYPE] && rdfRangeToJsonType[schemaType[consts.OWL_DATATYPE]]) {
// Type has a owl data type defined and the owl type maps to a simple xsd type.
jschema.properties[propertyName] = rdfRangeToJsonType[schemaType[consts.OWL_DATATYPE]];
} else if (schemaType[consts.RDFS_SUBCLASSOF] && _.isArray(schemaType[consts.RDFS_SUBCLASSOF]) &&
schemaType[consts.RDFS_SUBCLASSOF].indexOf(consts.RDF_LIST) > -1) {
// Arrays can have special handling in json schema.
var typeInfo = {
"type": "array"
};
_.forEach(schemaType.restrictions, function (v) {
if (v.predicate.valueOf() === consts.OWL_ALLVALUES) {
var restrictedType = schemaTypes[v.object.valueOf()];
if (_.size(restrictedType.properties) > 0) {
typeInfo.items = renderProperties(restrictedType, schemaTypes);
}
}
});
jschema.properties[propertyName] = typeInfo;
} else {
// This should probably recursively call this outer method :-/
var dataType = schemaTypes[schemaType[consts.OWL_DATATYPE]];
if (dataType === undefined) {
jschema.properties[propertyName] = renderProperties(schemaType, schemaTypes);
} else {
jschema.properties[propertyName] = rdfRangeToJsonType[dataType[consts.OWL_DATATYPE]];
}
}
} else {
jschema.properties[propertyName] = mappedTypeDetail;
jschema.properties[propertyName].description = rdfRangeType;
if (propertyDetail[ttlKeyNames.required] === "true") {
jschema.required.push(propertyName);
}
}
if (jschema.properties[propertyName] === undefined) {
log.warn("Could not add schema for JSON property: " + propertyName);
}
});
if (jschema.required.length === 0) {
delete jschema.required;
}
callback(null, jschema);
};
module.exports = jsonSchema;
\ No newline at end of file
This diff is collapsed.
.translation_mtwidget_main_box{
padding-top: 10px;
font-family: "adobe-clean", sans-serif;
text-align: center;
padding-bottom: 10px;
background-color: #e4f1f9;
color: black;
}
.translation_mtwidget_main_box .bold_box{
font-size: 20px;
}
.translation_mtwidget_main_box .translation-feedback-done-box{
display: none;
}
.word-nobreak {
display: inline-block;
}
.colCtrlGrey{background-color:#CCC;color:#7F7F7F}.colCtrlGrey .border-rt,.colCtrlGrey hr{border-color:#FFF}.colCtrlMobileGrey{background-color:#F7F8Fa;color:#999}.colCtrlMobileGrey h1,.colCtrlMobileGrey h2,.colCtrlMobileGrey h3,.colCtrlMobileGrey h4,.colCtrlMobileGrey h5,.colCtrlMobileGrey h6{color:#3F4C56}.colCtrlBlack{background-color:#000;color:#AAA}.colCtrlBlack .border-rt,.colCtrlBlack hr{border-color:#DDD}.colCtrlMobileBlack{background-color:#191E22;color:#FFF}.colCtrlDarkGray{background-color:#444;color:#FFF}.colCtrlMediumGray{background-color:#CCC;color:#999}.colCtrlLightGrayCool{background-color:#F7F8Fa;color:#3F4C56}.colCtrlLightGrayWarm{background-color:#f5f5f5;color:#000}.colCtrlTurquoise{background-color:#2b9af3;color:#FFF}.colCtrlInkSlide{background-color:#e4e4e4;color:#333}
This diff is collapsed.
[class*="adobe-icon-color-"]:before {content: '';}
.adobe-icon-color-adobe-icon-typekit:before{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0NCA0MyIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgNDQgNDMiPjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+LnN0MHtmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiMxNTI2MDA7fSAuc3Qxe2ZpbGwtcnVsZTpldmVub2RkO2NsaXAtcnVsZTpldmVub2RkO2ZpbGw6Izg3RUMwMDt9IC5zdDJ7ZmlsbDojODdFQzAwO308L3N0eWxlPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0wIDBoNDR2NDNoLTQ0eiIvPjxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik0wIDB2NDNoNDR2LTQzaC00NHptMiAyaDQwLjJsLS4yIDM5aC00MHYtMzl6Ii8+PHBhdGggY2xhc3M9InN0MiIgZD0iTTEzIDE0aC01LjFjLS4yIDAtLjItLjEtLjItLjJsLjQtMi41YzAtLjIuMS0uMi4yLS4yaDEyLjdjLjIgMCAuMi4xLjMuMmwuMiAyLjVjMCAuMi0uMS4yLS4yLjJoLTV2MTYuOGMwIC4yLS4xLjItLjIuMmgtMi44Yy0uMiAwLS4yLS4xLS4yLS4ydi0xNi44em0xNCA4LjZsNC42LTYuM2MuMS0uMi4yLS4yLjMtLjJoMy4xYy4yIDAgLjIuMS4xLjMtLjcuOS00LjEgNS01LjEgNi40di4ybDUuOSA3LjhjLjEuMSAwIC4yLS4yLjJoLTMuNmMtLjIgMC0uMi0uMS0uMy0uMi0xLTEuMy0zLjYtNC45LTQuOC02Ljd2Ni43YzAgLjIgMCAuMi0uMi4yaC0yLjhjLS4yIDAtLjItLjEtLjItLjJ2LTE5LjZjMC0uMSAwLS4yLjItLjJoMi45Yy4xIDAgLjIuMS4yLjJsLS4xIDExLjR6Ii8+PC9zdmc+)}
.adobe-icon-color-adobe-icon-esign:before{background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE5LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9Im1uZW1vbmljIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB2aWV3Qm94PSIwIDAgMjQwIDIzNCIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMjQwIDIzNCIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxnPgoJPHJlY3QgeD0iMTAiIHk9IjEwIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZmlsbD0iIzAwMTQzNCIgd2lkdGg9IjIyMCIgaGVpZ2h0PSIyMTQiLz4KPC9nPgo8Zz4KCTxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBmaWxsPSIjNURBNUZGIiBkPSJNMCwwdjIzNGgyNDBWMEgweiBNMTAsMTBoMjIwdjIxNEgxMFYxMHoiLz4KPC9nPgo8cGF0aCBmaWxsPSIjNURBNUZGIiBkPSJNMTkyLDE3NUg0OGMtMS4xLDAtMi0wLjktMi0yczAuOS0yLDItMmgxNDRjMS4xLDAsMiwwLjksMiwyUzE5My4xLDE3NSwxOTIsMTc1eiIvPgo8cGF0aCBmaWxsPSIjQ0FERkZFIiBkPSJNMTcxLjksMTU2LjJjLTIuNiwwLTQuMS0xLjItNC45LTIuMmMtMy4zLTQuMy0wLjItMTMuOSwyLjQtMjIuM2MwLjEtMC4zLDAuMi0wLjcsMC4zLTEKCWMtNi4yLDkuOC0xNi44LDI0LjctMjguNywyNC43Yy0wLjEsMC0wLjIsMC0wLjMsMGMtMi42LDAtNi0xLjMtOC4xLTYuOGMtMC43LTEuOC0xLjEtMy45LTEuNC02LjRjLTYuOSw3LjMtMTUuNSwxNC0yMy43LDEzLjcKCWMtMS4xLDAtMi0xLTEuOS0yLjFjMC0xLjEsMS0yLDIuMS0xLjljNi45LDAuMiwxNS4zLTYuMSwyMy4zLTE1LjNjLTAuMi0yMS4yLDkuMi01NS4zLDE5LjUtNjQuNmMzLjctMy4zLDYuNy0yLjksOC43LTEuOQoJYzQuMywyLjIsNS4zLDguMiwyLjgsMThjLTMuMiwxMi42LTExLjcsMjkuNS0yMS42LDQzLjFjLTEuNSwyLTMuMyw0LjQtNS4zLDYuOGMwLjEsMy43LDAuNiw2LjgsMS41LDkuMWMxLjUsNC4xLDMuNyw0LjIsNC40LDQuMgoJYzAuMSwwLDAuMSwwLDAuMiwwYzExLjMsMCwyMi43LTE4LjUsMjcuNi0yNi40YzIuOC00LjYsMy42LTUuOCw1LjQtNWMyLjksMS4zLDEuNyw1LjItMC44LDEyLjljLTEuOSw2LTUuMSwxNS45LTMuMSwxOC42CgljMC4xLDAuMiwwLjUsMC43LDEuOSwwLjZjMi42LTAuMSwxMC4yLTUuNiwxMy4xLTkuNmMwLjctMC45LDEuOS0xLjEsMi44LTAuNHMxLjEsMS45LDAuNCwyLjhjLTIuOCwzLjgtMTEuNCwxMS0xNi4xLDExLjIKCUMxNzIuMSwxNTYuMiwxNzIsMTU2LjIsMTcxLjksMTU2LjJ6IE0xNTYuMyw3My41Yy0wLjcsMC0xLjcsMC4zLTMuMSwxLjZjLTUuMSw0LjYtMTAuOSwxNy45LTE0LjcsMzRjLTIsOC4zLTMuMSwxNi4xLTMuNSwyMi43CgljMTAuNS0xMy42LDE5LjYtMzEuMywyMy00NC41YzEuOC03LjMsMS42LTEyLjMtMC43LTEzLjRDMTU3LjEsNzMuNywxNTYuOCw3My41LDE1Ni4zLDczLjV6Ii8+Cjxwb2x5Z29uIGZpbGw9IiM1REE1RkYiIHBvaW50cz0iMTAwLjUsMTE0LjIgOTEsMTA0LjcgNzMuOSwxMjEuNyA1Ni45LDEwNC43IDQ3LjQsMTE0LjIgNjQsMTMxLjIgNDguNiwxNDcgNTguMSwxNTYuNiA3My45LDE0MC44IAoJODkuOCwxNTYuNiA5OS4zLDE0NyA4My41LDEzMS4yICIvPgo8L3N2Zz4K)}
.adobe-icon-color-adobe-icon-usermanagement:before{background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNy4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSI2IDAgMTI4MCAxMjgwIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDYgMCAxMjgwIDEyODAiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPGcgaWQ9IkZyYW1lXy1fMjRweCI+DQoJPHJlY3QgeD0iNiIgZmlsbD0ibm9uZSIgd2lkdGg9IjEyODAiIGhlaWdodD0iMTI4MCIvPg0KPC9nPg0KPGcgaWQ9IkxpbmVfSWNvbnMiPg0KCTxnPg0KCQk8Zz4NCgkJCTxnPg0KCQkJCTxwYXRoIGZpbGw9IiNDMEMwQzAiIGQ9Ik05NjYuMSw2OTMuM2M0NCwwLDgwLDM2LjEsODAsODBjMCw0My45LTM2LDgwLTgwLDgwYy00NCwwLTgwLTM2LjEtODAtODANCgkJCQkJQzg4Ni4xLDcyOS40LDkyMi4xLDY5My4zLDk2Ni4xLDY5My4zeiIvPg0KCQkJPC9nPg0KCQk8L2c+DQoJCTxnPg0KCQkJPHBhdGggZmlsbD0iI0MwQzBDMCIgZD0iTTEwNzIuNywxMTczLjNIODU5LjR2LTE2MGMwLTU4LjksNDcuOC0xMDYuNywxMDYuNy0xMDYuN2M1OC45LDAsMTA2LjcsNDcuOCwxMDYuNywxMDYuN1YxMTczLjN6Ii8+DQoJCTwvZz4NCgkJPGc+DQoJCQk8Zz4NCgkJCQk8cGF0aCBmaWxsPSIjQzBDMEMwIiBkPSJNNjQ2LjEsNjkzLjNjNDQsMCw4MCwzNi4xLDgwLDgwYzAsNDMuOS0zNiw4MC04MCw4MHMtODAtMzYuMS04MC04MA0KCQkJCQlDNTY2LjEsNzI5LjQsNjAyLjEsNjkzLjMsNjQ2LjEsNjkzLjN6Ii8+DQoJCQk8L2c+DQoJCTwvZz4NCgkJPGc+DQoJCQk8cGF0aCBmaWxsPSIjQzBDMEMwIiBkPSJNNzUyLjcsMTE3My4zSDUzOS40di0xNjBjMC01OC45LDQ3LjgtMTA2LjcsMTA2LjctMTA2LjdzMTA2LjcsNDcuOCwxMDYuNywxMDYuN1YxMTczLjN6Ii8+DQoJCTwvZz4NCgkJPGc+DQoJCQk8Zz4NCgkJCQk8cGF0aCBmaWxsPSIjQzBDMEMwIiBkPSJNMzI2LjEsNjkzLjNjNDQsMCw4MCwzNi4xLDgwLDgwYzAsNDMuOS0zNiw4MC04MCw4MHMtODAtMzYuMS04MC04MA0KCQkJCQlDMjQ2LjEsNzI5LjQsMjgyLjEsNjkzLjMsMzI2LjEsNjkzLjN6Ii8+DQoJCQk8L2c+DQoJCTwvZz4NCgkJPGc+DQoJCQk8cGF0aCBmaWxsPSIjQzBDMEMwIiBkPSJNNDMyLjcsMTE3My4zSDIxOS40di0xNjBjMC01OC45LDQ3LjgtMTA2LjcsMTA2LjctMTA2LjdzMTA2LjcsNDcuOCwxMDYuNywxMDYuN1YxMTczLjN6Ii8+DQoJCTwvZz4NCgkJPGc+DQoJCQk8cG9seWdvbiBmaWxsPSIjQzBDMEMwIiBwb2ludHM9IjExNDYuMSw2MjguMyA2NDYuMSwyMjguMyAxNDYsNjI4LjMgNzkuNCw1NDUgNjQ2LjEsOTEuNyAxMjEyLjcsNTQ1IAkJCSIvPg0KCQk8L2c+DQoJPC9nPg0KPC9nPg0KPC9zdmc+DQo=)}
.adobe-icon-color-adobe-icon-acrobatdc:before{background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE5LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9Im1uZW1vbmljIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB2aWV3Qm94PSIwIDAgMjQwIDIzNCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjQwIDIzNDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLnN0MHtmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOnVybCgjU1ZHSURfMV8pO30KCS5zdDF7ZmlsbDp1cmwoI1NWR0lEXzJfKTt9Cgkuc3Qye2ZpbGwtcnVsZTpldmVub2RkO2NsaXAtcnVsZTpldmVub2RkO2ZpbGw6I0VGNDEyMzt9Cgkuc3Qze2ZpbGwtcnVsZTpldmVub2RkO2NsaXAtcnVsZTpldmVub2RkO2ZpbGw6dXJsKCNTVkdJRF8zXyk7fQo8L3N0eWxlPgo8Zz4KCTxyYWRpYWxHcmFkaWVudCBpZD0iU1ZHSURfMV8iIGN4PSI5Ny43MTA4IiBjeT0iODEuMjg2NyIgcj0iMTQzLjQzMiIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPgoJCTxzdG9wICBvZmZzZXQ9IjAiIHN0eWxlPSJzdG9wLWNvbG9yOiMxRDBGMEI7c3RvcC1vcGFjaXR5OjAuODUiLz4KCQk8c3RvcCAgb2Zmc2V0PSIwLjc2NjkiIHN0eWxlPSJzdG9wLWNvbG9yOiMxRDBGMEIiLz4KCTwvcmFkaWFsR3JhZGllbnQ+Cgk8cmVjdCB4PSIxMCIgeT0iMTAiIGNsYXNzPSJzdDAiIHdpZHRoPSIyMjAiIGhlaWdodD0iMjE0Ii8+CjwvZz4KPGxpbmVhckdyYWRpZW50IGlkPSJTVkdJRF8yXyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIHgxPSIzNy42MzA5IiB5MT0iMTE2LjAwMDIiIHgyPSIyMDYuMzY5NSIgeTI9IjExNi4wMDAyIj4KCTxzdG9wICBvZmZzZXQ9IjAuMTQiIHN0eWxlPSJzdG9wLWNvbG9yOiNGRkZGRkYiLz4KCTxzdG9wICBvZmZzZXQ9IjEiIHN0eWxlPSJzdG9wLWNvbG9yOiNFQkVERUIiLz4KPC9saW5lYXJHcmFkaWVudD4KPHBhdGggY2xhc3M9InN0MSIgZD0iTTIwMy43LDE0MC4xYy00LjgtNS4yLTE1LTcuOS0yOS40LTcuOWMtOCwwLTE3LjEsMC44LTI3LjIsMi41Yy01LjgtNS40LTExLjQtMTEuOS0xNi44LTE5LjMKCWMtMy44LTUuMy03LjMtMTAuOC0xMC40LTE2LjNjNS4xLTE1LjcsOC42LTMwLjgsOC42LTQyLjNjMC04LjYtMi44LTIyLjgtMTUuNi0yMi44Yy0zLjMsMC02LjksMi4xLTguNyw1LjIKCWMtNS40LDkuMy0yLjksMzAuMyw2LjksNTEuN2MtMy40LDEwLjMtNy4zLDIwLjYtMTIuMSwzMi4zYy00LDkuNy04LjgsMTkuNi0xMy45LDI4LjdjLTI3LjgsMTEtNDUuNSwyMy41LTQ3LjMsMzMuNQoJYy0wLjYsMy4zLDAuNCw2LjUsMy4xLDkuMWMxLjYsMS41LDUsMy41LDEwLDMuNWMxNiwwLDMzLjgtMjMuNCw0Ny4xLTQ3LjNjNy40LTIuNiwxNS4yLTQuOSwyMy4yLTcuMWM4LjctMi4zLDE3LTQuMSwyNC45LTUuNQoJYzE5LjMsMTcuNSwzNi40LDIwLjEsNDQuOSwyMC4xYzEwLjYsMCwxMy42LTQuNCwxNC43LTcuMkMyMDcuMywxNDYuOSwyMDUuOSwxNDIuNSwyMDMuNywxNDAuMXogTTEwNy4xLDQwLjgKCWMxLjMtMi4yLDMuNC0zLjYsNS44LTMuNmM0LjcsMCw3LjQsNC4yLDcuNCwxMS45YzAsOC4zLTIuNiwyMS44LTcuNiwzNy4zQzEwMy40LDY0LjcsMTAzLjMsNDcuNCwxMDcuMSw0MC44eiBNNDAuOSwxODYKCWMxLjYtOC4zLDE3LjQtMTkuNSw0MS42LTI5LjZjLTEzLjUsMjMuMS0yNi44LDM3LjMtMzUuMiwzNy4zYy0xLjYsMC0zLjItMC41LTQuNC0xLjZDNDEuMiwxOTAuNCw0MC41LDE4OC4zLDQwLjksMTg2eiBNMTQzLjIsMTM1LjQKCWMtNy4yLDEuMy0xNC45LDMtMjIuNyw1LjFjLTYuOSwxLjgtMTMuNiwzLjktMjAuMSw2YzMuOC03LjEsNy4xLTE0LDkuNi0yMC4zYzMuMS03LjUsNi4xLTE1LjMsOC43LTIzLjFjMi44LDQuOCw1LjgsOS41LDkuMSwxNC4xCglDMTMyLjcsMTI0LjEsMTM3LjksMTMwLjIsMTQzLjIsMTM1LjRMMTQzLjIsMTM1LjRMMTQzLjIsMTM1LjR6IE0xNTAuMiwxMzcuNGMxNi4zLTMsMzAuNi0yLjQsMzYuNy0xLjFjNi4zLDEuMyw5LjYsNS4xLDguNSwxMC43CgljLTEuMSw1LjctNy45LDguNC0xNS40LDYuNkMxNjgsMTUwLjcsMTU4LjEsMTQ0LjIsMTUwLjIsMTM3LjR6Ii8+CjxnPgoJPHBhdGggY2xhc3M9InN0MiIgZD0iTTAsMHYyMzRoMjQwVjBIMHogTTEwLDEwaDIyMHYyMTRIMTBWMTB6Ii8+CjwvZz4KPGc+Cgk8cmFkaWFsR3JhZGllbnQgaWQ9IlNWR0lEXzNfIiBjeD0iMzk2OS4yMTE0IiBjeT0iMzk1Mi43ODY2IiByPSIxNDMuNDMyIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+CgkJPHN0b3AgIG9mZnNldD0iMCIgc3R5bGU9InN0b3AtY29sb3I6IzFEMEYwQjtzdG9wLW9wYWNpdHk6MC44NSIvPgoJCTxzdG9wICBvZmZzZXQ9IjAuNzY2OSIgc3R5bGU9InN0b3AtY29sb3I6IzFEMEYwQiIvPgoJPC9yYWRpYWxHcmFkaWVudD4KCTxyZWN0IHg9IjM4ODEuNSIgeT0iMzg4MS41IiBjbGFzcz0ic3QzIiB3aWR0aD0iMjIwIiBoZWlnaHQ9IjIxNCIvPgo8L2c+Cjwvc3ZnPgo=)}
.adobe-icon-color-adobe-icon-pdfservices:before{background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE5LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9Im1uZW1vbmljIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB2aWV3Qm94PSIwIDAgMjQxIDIzNSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjQxIDIzNTsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLnN0MHtmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOnVybCgjU1ZHSURfMV8pO30KCS5zdDF7ZmlsbDp1cmwoI1NWR0lEXzJfKTt9Cgkuc3Qye2ZpbGw6I0VDNzQ2ODt9Cgkuc3Qze2ZpbGw6I0ZERDJDQjt9Cjwvc3R5bGU+CjxnPgoJPHJhZGlhbEdyYWRpZW50IGlkPSJTVkdJRF8xXyIgY3g9IjM5NjkuMjExNCIgY3k9IjM5NTIuNzg2NiIgcj0iMTQzLjQzMiIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPgoJCTxzdG9wICBvZmZzZXQ9IjAiIHN0eWxlPSJzdG9wLWNvbG9yOiMxRDBGMEI7c3RvcC1vcGFjaXR5OjAuODUiLz4KCQk8c3RvcCAgb2Zmc2V0PSIwLjc2NjkiIHN0eWxlPSJzdG9wLWNvbG9yOiMxRDBGMEIiLz4KCTwvcmFkaWFsR3JhZGllbnQ+Cgk8cmVjdCB4PSIzODgxLjUiIHk9IjM4ODEuNSIgY2xhc3M9InN0MCIgd2lkdGg9IjIyMCIgaGVpZ2h0PSIyMTQiLz4KPC9nPgo8Zz4KCTxnPgoJCQoJCQk8cmFkaWFsR3JhZGllbnQgaWQ9IlNWR0lEXzJfIiBjeD0iLTU5Ljc2MzYiIGN5PSI1MjIuMDU3NiIgcj0iNTYuNDgyMiIgZ3JhZGllbnRUcmFuc2Zvcm09Im1hdHJpeCgyLjU1IDAgMCAtMi41NSAyNTAuNTE1IDE0MTIuODcyMykiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KCQkJPHN0b3AgIG9mZnNldD0iMCIgc3R5bGU9InN0b3AtY29sb3I6IzQ1MjAyMjtzdG9wLW9wYWNpdHk6MC44ODMzIi8+CgkJCTxzdG9wICBvZmZzZXQ9IjAuOTgzMyIgc3R5bGU9InN0b3AtY29sb3I6IzI4MDIwNCIvPgoJCTwvcmFkaWFsR3JhZGllbnQ+CgkJPHJlY3QgeD0iMTAiIHk9IjEwIiBjbGFzcz0ic3QxIiB3aWR0aD0iMjIwLjkiIGhlaWdodD0iMjE0LjkiLz4KCTwvZz4KCTxnPgoJCTxwYXRoIGNsYXNzPSJzdDIiIGQ9Ik0wLDB2MjM1aDI0MVYwSDB6IE0xMCwxMEgyMzF2MjE0LjlIMTBWMTB6Ii8+Cgk8L2c+Cgk8cGF0aCBjbGFzcz0ic3QzIiBkPSJNMTc0LjIsOTNsLTM0LjEtMzYuMWMtMC4zLTAuMy0wLjctMC41LTEuMS0wLjZsMCwwYy0wLjEsMC0wLjIsMC0wLjMsMGwwLDBIODIuM2MtMS4xLDAtMiwwLjktMiwydjExOC41CgkJYzAsMS4xLDAuOSwyLDIsMmg5MC40YzEuMSwwLDItMC45LDItMlY5Ni41di0yLjFsMCwwQzE3NC43LDkzLjgsMTc0LjUsOTMuMywxNzQuMiw5M3ogTTE0MC42LDYzLjNsMjcuNSwyOS4xaC0yNy41VjYzLjN6CgkJIE0xNzAuNywxNzQuN0g4NC4zVjYwLjJoNTIuMnYzNC4xYzAsMS4xLDAuOSwyLDIsMmgzMi4xdjAuMVYxNzQuN3oiLz4KCTxwYXRoIGNsYXNzPSJzdDIiIGQ9Ik05Ni40LDg4LjRINDkuMmMtMS44LDAtMywxLjUtMywzLjR2MTMuNGMwLDEuOCwxLjUsMy4zLDMuMywzLjNoNDYuOXYxMC42YzAsMS43LDEuOCwyLjMsMywxLjJsMjMuNS0yMC41CgkJYzAuOS0wLjgsMC45LTIuMywwLTMuMUw5OS42LDc2LjJjLTEuMy0xLjEtMy4yLTAuMi0zLjIsMS41Vjg4LjR6Ii8+CjwvZz4KPC9zdmc+Cg==)}
.adobe-icon-color-adobe-icon-adobelabs:before{background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNy4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSItNTAwIC01MDAgMTAyNCAxMDI0IiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IC01MDAgLTUwMCAxMDI0IDEwMjQiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPGcgaWQ9IkZyYW1lXy1fMjRweCI+DQoJPHJlY3QgeD0iLTUwMCIgeT0iLTUwMCIgZmlsbD0ibm9uZSIgd2lkdGg9IjEwMjQiIGhlaWdodD0iMTAyNCIvPg0KPC9nPg0KPGcgaWQ9IkxpbmVfSWNvbnMiPg0KCTxnPg0KCQk8cGF0aCBmaWxsPSIjQzBDMEMwIiBkPSJNMzkxLjUsMTU2LjZjLTI0LjEtNDguMy01Ny05OS43LTk2LjUtMTUxLjdjMTE5LjYtMTU3LjYsMTgzLjgtMzE3LjQsMTA5LjItMzkyLjENCgkJCWMtMTQuNy0xNC43LTQxLjctMzIuMi04Ni45LTMyLjJjLTc3LjcsMC0xODguNyw1Mi43LTMwNS40LDE0MS4zYy0xMTYuNi04OC42LTIyNy43LTE0MS4zLTMwNS40LTE0MS4zDQoJCQljLTQ1LjIsMC03Mi4xLDE3LjUtODYuOSwzMi4yQy00NTQuOS0zMTIuNS0zOTAuNi0xNTIuNy0yNzEsNC45Yy0zOS41LDUyLTcyLjQsMTAzLjQtOTYuNSwxNTEuNw0KCQkJYy02OS44LDEzOS42LTQ1LjQsMjA3LjktMTIuNywyNDAuNmMxNC43LDE0LjcsNDEuNywzMi4yLDg2LjksMzIuMmM3Ny43LDAsMTg4LjctNTIuNywzMDUuNC0xNDEuNA0KCQkJYzExNi42LDg4LjYsMjI3LjcsMTQxLjQsMzA1LjQsMTQxLjRjNDUuMiwwLDcyLjEtMTcuNSw4Ni45LTMyLjJDNDM2LjksMzY0LjUsNDYxLjMsMjk2LjIsMzkxLjUsMTU2LjZ6IE0zMTcuNC0zMzQNCgkJCWM4LjgsMCwyMC42LDEuMiwyNi41LDcuMmMyMi43LDIyLjctMi45LDEyNS4zLTEwNC4yLDI2My44Yy01MC01Ny45LTEwMS41LTEwOS4zLTE1OC45LTE1OUMxODEuNS0yOTUuNSwyNjguNy0zMzQsMzE3LjQtMzM0eg0KCQkJIE0xODUuNyw1LjFjLTI0LjcsMjkuMi01Mi4xLDU5LjMtODMuMiw5MC40QzcxLjksMTI2LjEsNDEuNywxNTMsMTIsMTc4Yy0yOS43LTI1LTU5LjktNTEuOS05MC41LTgyLjUNCgkJCWMtMzEuMS0zMS4xLTU4LjUtNjEuMy04My4yLTkwLjRjMjUuNy0zMC40LDUzLjQtNjAuOCw4My4yLTkwLjZDLTQ3LjktMTE2LTE3LjctMTQzLDEyLTE2OGMyOS43LDI1LDU5LjksNTEuOSw5MC41LDgyLjUNCgkJCUMxMzIuMy01NS43LDE2MC0yNS4zLDE4NS43LDUuMXogTS0zMTkuOS0zMjYuOWM1LjktNS45LDE3LjctNy4yLDI2LjUtNy4yYzQ4LjcsMCwxMzUuOSwzOC42LDIzNi42LDExMS45DQoJCQljLTU3LjQsNDkuNy0xMDguOCwxMDEtMTU4LjksMTU5Qy0zMTctMjAxLjYtMzQyLjYtMzA0LjItMzE5LjktMzI2Ljl6IE0tMjkzLjQsMzQ0LjFjLTguOCwwLTIwLjYtMS4yLTI2LjUtNy4yDQoJCQljLTkuOC05LjgtMTYuMy01Mi4xLDI4LjctMTQyLjJjMTkuMy0zOC42LDQ1LjEtNzkuNiw3NS43LTEyMS41YzQ5LjYsNTcuNSwxMDAuMiwxMDguMiwxNTguNywxNTguOQ0KCQkJQy0xNTcuNSwzMDUuNS0yNDQuNywzNDQuMS0yOTMuNCwzNDQuMXogTTM0My45LDMzNi45Yy01LjksNS45LTE3LjcsNy4yLTI2LjUsNy4yYy00OC43LDAtMTM1LjktMzguNi0yMzYuNi0xMTEuOQ0KCQkJYzU4LjQtNTAuNiwxMDktMTAxLjMsMTU4LjctMTU4LjljMzAuNiw0MS44LDU2LjQsODIuOSw3NS43LDEyMS41QzM2MC4yLDI4NC45LDM1My42LDMyNy4xLDM0My45LDMzNi45eiIvPg0KCQk8Y2lyY2xlIGZpbGw9IiNDMEMwQzAiIGN4PSIxMiIgY3k9IjUiIHI9Ijg1LjMiLz4NCgk8L2c+DQo8L2c+DQo8L3N2Zz4NCg==)}
.adobe-icon-color-icon-adobe-phonegap:before{background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNy4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSItMjA1LjkgLTExNiAxMDI0IDEwMjQiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgLTIwNS45IC0xMTYgMTAyNCAxMDI0IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxwYXRoIGZpbGw9IiNDMEMwQzAiIGQ9Ik0xMTIuNSw1NDcuNEw3Niw1NTBjMCw3LjIsMC4zLDEzLjIsMC4zLDE3LjRjMSw0NS40LDI2LjYsNTQuOSw0OCw1NC45YzMsMCw0LjktMC4zLDQuOS0wLjNoMC43bDYwLjktNS45DQoJYzIuMy03LjIsMi42LTEyLjUsMi42LTEyLjVzLTguMi0zODMuMy0xMC4yLTQzMS42Yy0wLjMtMTAuOS0zLjYtMTkuNC03LjktMjYuM2MtMjIuNC0xLjYtNDIuNC0zLjMtNTcuNi00LjZsLTYuOS0wLjMNCgljLTE0LjgsMC0yNiwzLjktMzMuMiwxMS41Yy0xMC45LDExLjUtOS45LDI5LjMtOS45LDI5LjN2MC43YzAsMC43LDAuMywxMC45LDAuNywyNy4zYzI5LjYsMS42LDUxLjMsMyw1MS4zLDNzMzMuOSw3LjIsMzUuNSw0Mi4xDQoJYzEuNiwzNy44LDEuMywyNTAuNywxLjMsMjUwLjdTMTYwLjUsNTM5LjgsMTEyLjUsNTQ3LjR6IE0tNC4zLDU1NS42bC02MS4yLDQuNmMwLDAtNTAuMyw2LjktNTEuNy00OC40DQoJYy0wLjctNDAuOC01LjktMjcxLjQtNS45LTI3MS40cy0zLjYtNDIuOCw0OC40LTM5LjFjMTUuNSwxLDM4LjgsMi4zLDYzLjgsMy45Yy0wLjctMzguMi0xLjMtNzEuNC0xLjYtOTcuMQ0KCWMtMzIuNi0yLjMtNjQuMi00LjktODUuNS03LjJjLTY4LjQtNy42LTY0LjIsNTAtNjQuMiw1MHM4LjIsNDIzLjQsOS45LDQ3NS4xYzIsNjEuOCw2OC40LDUxLjcsNjguNCw1MS43bDgyLjItOC45DQoJQy0yLjcsNjM4LjItMy4zLDU5OS40LTQuMyw1NTUuNnogTTcyOCwzMC45Yy0zLTc5LjMtNzIuNy05Ni4xLTcyLjctOTYuMXMtMjQxLjUtMzYuNS0zNDcuMS00OS43Yy0xMDUuOS0xMy4yLTk5LjQsODkuMi05OS40LDg5LjINCglzMjQsNzQ3LjUsMjYuNiw4MzkuOWMzLDExMC4yLDEwNS42LDkyLjgsMTA1LjYsOTIuOEw3MDUsODQ0LjFjNjYuMS0xMy4yLDY5LjQtOTUuNyw2OS40LTk1LjdTNzMxLjYsMTE3LjEsNzI4LDMwLjl6IE02NDYuOCw2NjUuNQ0KCWwtMjcwLjQsMjhjMCwwLTc4LjYsMTEuOC04MC42LTgzLjZjLTEuMy03MC40LTE2LjgtNDc0LjQtMTYuOC00NzQuNHMtNS4zLTc0LDc1LjctNjguMWM4Mi42LDYuMywyODEsMjEuMSwyODEsMjEuMXM1MywxMi41LDU1LjMsNzMNCgljMi42LDY1LjgsMjUuMyw0MzEsMjUuMyw0MzFTNzIyLjEsNjUyLjYsNjQ2LjgsNjY1LjVMNjQ2LjgsNjY1LjV6IE0zNzQuNyw2NzkuM0w0NzksNjY4LjRjLTQuOS0xMDYuMy0yMy40LTUxOC44LTI2LTU3OC43di0xDQoJYy0zOC4yLTMtNzQuNC01LjYtOTkuNy03LjZjLTIuNi0wLjMtNS42LTAuMy04LjItMC4zYy0xNy40LDAtMzAuNiw0LjYtMzkuMSwxMy44Yy0xNC41LDE1LjEtMTIuOCwzOC44LTEyLjgsMzkuMXYwLjMNCgljMCwwLjMsMCwyLjYsMC4zLDYuM2M0Mi40LDMuNiw3NC40LDYuNiw3NC40LDYuNnM0NS43LDEwLjIsNDcuNyw1OS45YzIsNTQsMTUuMSwzNDYuMSwxNS4xLDM0Ni4xczUuMyw0OS4zLTU5LjksNTkuOWwtNjAuNSw1LjkNCgljNC4zLDQ5LjcsMzMuMiw2MC41LDU3LjYsNjAuNWMzLjYsMCw1LjktMC4zLDUuOS0wLjNDMzc0LjQsNjc5LjMsMzc0LjcsNjc5LjMsMzc0LjcsNjc5LjNMMzc0LjcsNjc5LjN6IE0yMTUuNSw2MjguM2wtODQuMiw3LjkNCgljMCwwLTY4LjEsOS45LTY5LjQtNjguNGMtMS01Ny45LTcuOS0zODUuMi03LjktMzg1LjJzLTQuNi02MC41LDY1LjEtNTUuNmMyMC40LDEuMyw0OS43LDMuOSw4MC42LDYuM2MtMi02Mi4yLTMuNi0xMTEuOS00LjMtMTM3LjgNCgljLTQwLjgtMy45LTc5LjktNy45LTEwOC4yLTExLjJDLTUtMjYuNCwwLjYsNTUuMiwwLjYsNTUuMnMxMC45LDYwMC43LDEzLjIsNjc0LjRjMi42LDg3LjgsOTIuMSw3My43LDkyLjEsNzMuN2wxMTQuNS0xNC41DQoJQzIxOS40LDc1NCwyMTcuOCw2OTYuNywyMTUuNSw2MjguM3oiLz4NCjwvc3ZnPg0K)}
[class*="adobe-icon-color-"]:before{content:''}
.adobe-icon-color-post:before{background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxOS4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9InBzbWl4X3g1Rl9hcHBfeDVGX1JHQi5zdmciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiDQoJIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMjQwIDIzNSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjQwIDIzNTsiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHBhdGggc3R5bGU9ImZpbGwtcnVsZTpldmVub2RkO2NsaXAtcnVsZTpldmVub2RkO2ZpbGw6IzAwMjYxMjsiIGQ9Ik00MS45LDcuNUMxMy44LDcuNSw3LjMsMjQuMiw3LjMsNTIuM0w3LjQsMTg5DQoJYzAsMjguMiw4LjgsMzcuNiwzNi45LDM3LjZIMTk1YzI4LjEsMCwzNy42LTkuNCwzNy42LTM3LjVWNDcuMmMwLTI4LjItMTAuNS0zOS43LTM4LjYtMzkuN0g0MS45eiIvPg0KPHBhdGggc3R5bGU9ImZpbGwtcnVsZTpldmVub2RkO2NsaXAtcnVsZTpldmVub2RkO2ZpbGw6IzAwRkY2NjsiIGQ9Ik0wLDQzdjE0OC4yQzAsMjE0LjksMTguMiwyMzQsNDEuOSwyMzRoMTU1LjMNCgljMjMuNywwLDQyLjktMTkuMSw0Mi45LTQyLjhWNDIuOEMyNDAsMTkuMSwyMjAuOCwwLDE5Ny4xLDBINDEuOUMxOC4yLDAsMCwxOS4xLDAsNDIuOFY0M3ogTTE5NCwxMC4xYzE5LjEsMCwzNS45LDE1LjcsMzUuOSwzNC44DQoJdjE0Mi4zYzAsMTkuMS0xNS41LDM2LjctMzQuNiwzNi43SDQ0LjdjLTE5LjEsMC0zNC42LTE2LjItMzQuNi0zNS4zbDAtMTQxLjdjMC0xOSwxNS41LTM2LjgsMzQuNS0zNi44SDE5NHoiLz4NCjxnPg0KCTxwb2x5Z29uIHN0eWxlPSJmaWxsOiNDQUZFRTU7IiBwb2ludHM9IjEwMC4xLDE5MS45IDQ1LjYsOTcuNiA0OSw5NS42IDEwMS41LDE4Ni41IDE5Mi40LDEzNCAxOTQuNCwxMzcuNCAJIi8+DQoJPHBvbHlnb24gc3R5bGU9ImZpbGw6I0NBRkVFNTsiIHBvaW50cz0iNDksMTM5LjQgNDUuNiwxMzcuNCAxMDAuMSw0My4xIDE5NC40LDk3LjYgMTkyLjQsMTAxIDEwMS41LDQ4LjUgCSIvPg0KCTxwYXRoIHN0eWxlPSJmaWxsOiMwMEZGNjY7IiBkPSJNMTcyLjUsNjVoLTEwNXYxMDVoMTA1VjY1eiBNMTQ5LjUsMTQ3SDkwLjVWODhoNTkuMVYxNDd6Ii8+DQoJPHBvbHlnb24gc3R5bGU9ImZpbGw6I0NBRkVFNTsiIHBvaW50cz0iMTM5LjksMTkxLjkgNDUuNiwxMzcuNCA0Ny42LDEzNCAxMzguNSwxODYuNSAxOTEsOTUuNiAxOTQuNCw5Ny42IAkiLz4NCgk8cG9seWdvbiBzdHlsZT0iZmlsbDojQ0FGRUU1OyIgcG9pbnRzPSIxOTEsMTM5LjQgMTM4LjUsNDguNSA0Ny42LDEwMSA0NS42LDk3LjYgMTM5LjksNDMuMSAxOTQuNCwxMzcuNCAJIi8+DQo8L2c+DQo8L3N2Zz4NCg==)}
.adobe-icon-color-cf-builder-2016:before{background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pg0KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE5LjEuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPg0KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIj4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iY2ZfeDVGX2J1aWxkZXJfeDVGXzIwMTZfeDVGX2FwcGljb24uc3ZnIg0KCSB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDI0MCAyMzQiDQoJIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDI0MCAyMzQ7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxnPg0KCTxnPg0KCQk8cmVjdCB4PSIxMCIgeT0iMTAiIHN0eWxlPSJmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiMwMDBGMzQ7IiB3aWR0aD0iMjIwLjAwMSIgaGVpZ2h0PSIyMTQiLz4NCgk8L2c+DQoJPGc+DQoJCTxwYXRoIHN0eWxlPSJmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiM3QUE3RkY7IiBkPSJNMCwwdjIzNGgyNDAuMDAxVjBIMHogTTEwLDEwaDIyMC4wMDF2MjE0SDEwVjEweiIvPg0KCTwvZz4NCgk8cGF0aCBzdHlsZT0iZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDojN0FBN0ZGOyIgZD0iTTEyNi45MzgsMTYwLjQyNWMwLDAuOTg5LTAuMzMsMS40ODMtMS4xNTQsMS44MTMNCgkJYy00LjI4NSwxLjgxMy0xMS4xMjUsMi40NzItMTguMjEzLDIuNDcyYy0yNS43MTIsMC00OC40NTctMTYuODEyLTQ4LjQ1Ny01Ni4zNjhjMC0zMy45NTMsMjAuMTA4LTU2LjY5OCw1MC43NjQtNTYuNjk4DQoJCWM4LjA3NiwwLDEzLjkzNywwLjgyNCwxNy4wNjksMi4zMDdjMC44MjQsMC4zMywwLjk4OSwwLjgyNCwwLjk4OSwxLjgxM3YxNC4xNzRjMCwxLjMxOS0wLjY1OSwxLjMxOS0xLjE1NCwxLjE1NA0KCQljLTMuOTU2LTEuOTc4LTkuODE3LTMuMTMyLTE2LjczOS0zLjEzMmMtMTkuMjg0LDAtMzIuMTQsMTQuNjY5LTMyLjE0LDM5Ljg4NmMwLDMxLjE1MSwxNy42MzYsNDAuMzgxLDMyLjE0LDQwLjM4MQ0KCQljNi41OTMsMCwxMC45NjEtMC40OTQsMTUuNzQtMi4xNDNjMC42NTktMC4zMywxLjE1NC0wLjMzLDEuMTU0LDAuODI0VjE2MC40MjV6IE0xMzMuMzM2LDEwMC42NGMtMC42NTksMC0wLjY1NC0wLjMzLTAuNjU0LTEuMTU0DQoJCXYtMTMuNTljMC0wLjgyNCwwLjE2NS0wLjk4OSwwLjgyNC0wLjk4OWg5LjE2NXYtNS4xMDljMC02LjA5OCwwLjk4OS0xMS4zNDMsMy4yOTYtMTUuNzkzYzQuMTItOC40MDYsMTEuMzc4LTEyLjE5NywyMS4yNjctMTIuMTk3DQoJCWMyLjk2NywwLDUuMDE1LDAuMTY1LDYuNjYzLDAuODI0YzAuODI0LDAuMzMsMC45ODksMC42NTksMC45ODksMS40ODN2MTMuMTg2YzAsMC44MjQtMC4zMywxLjE1NC0xLjE1NCwwLjk4OQ0KCQljLTEuMzE5LTAuMzMtMy4xOTEtMC40OTQtNC41MS0wLjQ5NGMtNS43NjksMC04LjU3MSw0LjEyLTguNTcxLDEyLjAzMnY1LjA3OWgxMy4wOTFjMC44MjQsMCwxLjE0NCwwLjE2NSwxLjE0NCwwLjgyNHYxMy43NTUNCgkJYzAsMC44MjQtMC4xNjUsMC45ODktMC45ODksMS4xNTRoLTEzLjI0NnY2MS41NzNjMCwwLjY1OS0wLjE2NSwxLjEwOS0xLjE1NCwxLjEwOWgtMTUuNjczYy0wLjgyNCwwLTEuMTU0LTAuNDk0LTEuMTU0LTEuMTU0DQoJCVYxMDAuNjRIMTMzLjMzNnoiLz4NCjwvZz4NCjwvc3ZnPg0K)}
.adobe-icon-color-cf-2016:before{background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pg0KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE5LjEuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPg0KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIj4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iY2ZfeDVGX2J1aWxkZXJfeDVGXzIwMTZfeDVGX2FwcGljb24uc3ZnIg0KCSB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDI0MCAyMzQiDQoJIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDI0MCAyMzQ7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxnPg0KCTxnPg0KCQk8cmVjdCB4PSIxMCIgeT0iMTAiIHN0eWxlPSJmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiMwMDBGMzQ7IiB3aWR0aD0iMjIwLjAwMSIgaGVpZ2h0PSIyMTQiLz4NCgk8L2c+DQoJPGc+DQoJCTxwYXRoIHN0eWxlPSJmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtmaWxsOiNDQURCRkU7IiBkPSJNMCwwdjIzNGgyNDAuMDAxVjBIMHogTTEwLDEwaDIyMC4wMDF2MjE0SDEwVjEweiIvPg0KCTwvZz4NCgk8cGF0aCBzdHlsZT0iZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDojQ0FEQkZFOyIgZD0iTTEyNi45MzgsMTYwLjQyNWMwLDAuOTg5LTAuMzMsMS40ODMtMS4xNTQsMS44MTMNCgkJYy00LjI4NSwxLjgxMy0xMS4xMjUsMi40NzItMTguMjEzLDIuNDcyYy0yNS43MTIsMC00OC40NTctMTYuODEyLTQ4LjQ1Ny01Ni4zNjhjMC0zMy45NTMsMjAuMTA4LTU2LjY5OCw1MC43NjQtNTYuNjk4DQoJCWM4LjA3NiwwLDEzLjkzNywwLjgyNCwxNy4wNjksMi4zMDdjMC44MjQsMC4zMywwLjk4OSwwLjgyNCwwLjk4OSwxLjgxM3YxNC4xNzRjMCwxLjMxOS0wLjY1OSwxLjMxOS0xLjE1NCwxLjE1NA0KCQljLTMuOTU2LTEuOTc4LTkuODE3LTMuMTMyLTE2LjczOS0zLjEzMmMtMTkuMjg0LDAtMzIuMTQsMTQuNjY5LTMyLjE0LDM5Ljg4NmMwLDMxLjE1MSwxNy42MzYsNDAuMzgxLDMyLjE0LDQwLjM4MQ0KCQljNi41OTMsMCwxMC45NjEtMC40OTQsMTUuNzQtMi4xNDNjMC42NTktMC4zMywxLjE1NC0wLjMzLDEuMTU0LDAuODI0VjE2MC40MjV6IE0xMzMuMzM2LDEwMC42NGMtMC42NTksMC0wLjY1NC0wLjMzLTAuNjU0LTEuMTU0DQoJCXYtMTMuNTljMC0wLjgyNCwwLjE2NS0wLjk4OSwwLjgyNC0wLjk4OWg5LjE2NXYtNS4xMDljMC02LjA5OCwwLjk4OS0xMS4zNDMsMy4yOTYtMTUuNzkzYzQuMTItOC40MDYsMTEuMzc4LTEyLjE5NywyMS4yNjctMTIuMTk3DQoJCWMyLjk2NywwLDUuMDE1LDAuMTY1LDYuNjYzLDAuODI0YzAuODI0LDAuMzMsMC45ODksMC42NTksMC45ODksMS40ODN2MTMuMTg2YzAsMC44MjQtMC4zMywxLjE1NC0xLjE1NCwwLjk4OQ0KCQljLTEuMzE5LTAuMzMtMy4xOTEtMC40OTQtNC41MS0wLjQ5NGMtNS43NjksMC04LjU3MSw0LjEyLTguNTcxLDEyLjAzMnY1LjA3OWgxMy4wOTFjMC44MjQsMCwxLjE0NCwwLjE2NSwxLjE0NCwwLjgyNHYxMy43NTUNCgkJYzAsMC44MjQtMC4xNjUsMC45ODktMC45ODksMS4xNTRoLTEzLjI0NnY2MS41NzNjMCwwLjY1OS0wLjE2NSwxLjEwOS0xLjE1NCwxLjEwOWgtMTUuNjczYy0wLjgyNCwwLTEuMTU0LTAuNDk0LTEuMTU0LTEuMTU0DQoJCVYxMDAuNjRIMTMzLjMzNnoiLz4NCjwvZz4NCjwvc3ZnPg0K)}
.adobe-icon-color-pf-portfolio:before{background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxOS4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgMjQwIDIzNCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjQwIDIzNDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4NCgkuc3Qwe2ZpbGwtcnVsZTpldmVub2RkO2NsaXAtcnVsZTpldmVub2RkO2ZpbGw6IzAwMTkzNDt9DQoJLnN0MXtmaWxsOiM1NEIwRkY7fQ0KPC9zdHlsZT4NCjxyZWN0IGlkPSJYTUxJRF8xNF8iIHg9IjEwIiB5PSIxMCIgY2xhc3M9InN0MCIgd2lkdGg9IjIyMCIgaGVpZ2h0PSIyMTQiLz4NCjxwYXRoIGlkPSJYTUxJRF8xXyIgY2xhc3M9InN0MSIgZD0iTTEwLDEwaDIyMHYyMTRIMTBWMTB6IE0wLDIzNGgyNDBWMEgwVjIzNHoiLz4NCjxnIGlkPSJYTUxJRF8yMV8iPg0KCTxwYXRoIGlkPSJYTUxJRF8zNl8iIGNsYXNzPSJzdDEiIGQ9Ik02MS4yLDU5LjJjMC0wLjYsMC4yLTEuMSwxLTEuMWM2LjMtMC4zLDE1LjUtMC41LDI1LjEtMC41YzI3LDAsMzguOCwxNC44LDM4LjgsMzMuOA0KCQljMCwyNC44LTE3LjksMzUuNC0zOS45LDM1LjRjLTMuNywwLTUtMC4yLTcuNi0wLjJ2MzcuNWMwLDAuOC0wLjMsMS4xLTEuMSwxLjFINjIuNGMtMC44LDAtMS4xLTAuMy0xLjEtMS4xVjU5LjJ6IE03OC42LDExMQ0KCQljMi4zLDAuMiw0LDAuMiw3LjksMC4yYzExLjQsMCwyMi4xLTQsMjIuMS0xOS41QzEwOC42LDc5LjMsMTAxLDczLDg4LDczYy0zLjksMC03LjYsMC4yLTkuMywwLjNWMTExeiIvPg0KCTxwYXRoIGlkPSJYTUxJRF8zNF8iIGNsYXNzPSJzdDEiIGQ9Ik0xMzYuNiwxMDQuMWMtMC42LDAtMC44LTAuMy0wLjgtMS4xVjg5LjdjMC0wLjgsMC4yLTEsMC44LTFoOXYtNWMwLTYsMS0xMS4xLDMuMi0xNS41DQoJCWM0LTguMiwxMC45LTExLjksMjAuNi0xMS45YzIuOSwwLDUsMC4yLDYuNiwwLjhjMC44LDAuMywxLDAuNiwxLDEuNHYxMi45YzAsMC44LTAuMywxLjEtMS4xLDFjLTEuMy0wLjMtMy4xLTAuNS00LjMtMC41DQoJCWMtNS42LDAtOC40LDQtOC40LDExLjh2NWgxMi43YzAuOCwwLDEsMC4yLDEsMC44djEzLjRjMCwwLjgtMC4yLDEtMSwxLjFoLTEyLjd2NjAuMWMwLDAuNi0wLjIsMS4xLTEuMSwxLjFoLTE1LjMNCgkJYy0wLjgsMC0xLjEtMC41LTEuMS0xLjF2LTYwLjFIMTM2LjZ6Ii8+DQo8L2c+DQo8L3N2Zz4NCg==)}
.adobe-icon-color-xd-experience-design:before{background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE5LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMSBUaW55Ly9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLXRpbnkuZHRkIj4KPHN2ZyB2ZXJzaW9uPSIxLjEiIGJhc2VQcm9maWxlPSJ0aW55IiBpZD0icHNfeDVGX2NjX3g1Rl9hcHBfeDVGX1JHQi5zdmciCgkgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiIHZpZXdCb3g9IjAgMCAyNDAgMjM0IgoJIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8Zz4KCTxyZWN0IHg9IjEwIiB5PSIxMCIgZmlsbC1ydWxlPSJldmVub2RkIiBmaWxsPSIjMkUwMDFFIiB3aWR0aD0iMjIwIiBoZWlnaHQ9IjIxNCIvPgo8L2c+CjxnPgoJPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBmaWxsPSIjRkYyQkMyIiBkPSJNMCwwdjIzNGgyNDBWMEgweiBNMTAsMTBoMjIwdjIxNEgxMFYxMHoiLz4KPC9nPgo8cGF0aCBmaWxsPSIjRkYyQkMyIiBkPSJNMTc0LjMsOTguM2MtMS41LTAuNy0zLjQtMS01LjgtMWMtMTIuNiwwLTIxLDkuNy0yMSwyNS44YzAsMTguNCw4LjYsMjUuOCwxOS44LDI1LjhjMi40LDAsNS0wLjMsNi45LTEuMQoJVjk4LjN6IE0xMjkuNSwxMjMuOWMwLTIzLjMsMTUtNDEuNSwzOS42LTQxLjVjMi4xLDAsMy4yLDAsNS4yLDAuMnYtMjZjMC0wLjYsMC41LTEsMS0xaDE2LjFjMC44LDAsMSwwLjMsMSwwLjh2OTEuNAoJYzAsMi43LDAsNi4xLDAuNSw5LjhjMCwwLjcsMCwwLjgtMC42LDEuMWMtOC40LDQtMTcuMiw1LjgtMjUuNiw1LjhDMTQ1LDE2NC41LDEyOS41LDE1MS4xLDEyOS41LDEyMy45eiBNOTUuNCwxMDcuN2wyOCw1NC4zCgljMC41LDAuOCwwLjIsMS42LTAuNiwxLjZoLTE3LjRjLTEuMSwwLTEuNi0wLjMtMi4xLTEuM2MtNi40LTEzLjItMTIuOS0yNi45LTE5LjYtNDEuMWgtMC4yYy02LDEzLjQtMTIuNiwyOC0xOSw0MS4yCgljLTAuNSwwLjgtMSwxLjEtMS44LDEuMUg0Ni4xYy0xLDAtMS4xLTAuOC0wLjYtMS40bDI3LjQtNTIuN0w0Ni40LDU3Yy0wLjYtMC44LDAtMS41LDAuNy0xLjVoMTcuMmMxLDAsMS41LDAuMiwxLjgsMS4xCglDNzIuNCw2OS45LDc4LjgsODMsODQuOCw5Ni40aDAuMmM1LjgtMTMuMiwxMi4yLTI2LjUsMTguMy0zOS42YzAuNS0wLjgsMC44LTEuMywxLjgtMS4zaDE2LjFjMC44LDAsMS4xLDAuNiwwLjYsMS41TDk1LjQsMTA3Ljd6Ii8+Cjwvc3ZnPgo=)}
\ No newline at end of file
.contact-pod-phone-container #lpLetsChat,.merchpod-phone-container #lpLetsChat{display:inline-block;margin:1.5rem 0;vertical-align:sub}.contact-pod-phone-container #lpLetsChat{vertical-align:sub;margin-top:1em}.contact-pod-phone-container #lpLetsChat .lp_chat_pod,.merchpod-phone-container #lpLetsChat .lp_chat_pod{display:inline;font-size:1.3125rem;font-weight:300;line-height:1.4em;margin:0 .375rem 0 0;padding-left:35px;height:2.5rem}.contact-pod-phone-container #lpLetsChat .lp_chat_pod{padding-left:0}.contact-pod-phone-container #lpLetsChat .lp_chat_pod:before,.merchpod-phone-container #lpLetsChat .lp_chat_pod:before{content:'\e626';display:inline-block;text-decoration:inherit;height:1.8rem;width:2rem;font-size:1.6em;line-height:2.5rem;font-family:aceui-fonts;vertical-align:sub}
<%
/**
* Copyright 2017 Adobe Systems Incorporated. All rights reserved.
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. You may obtain a copy
* of the License at http://www.apache.org/licenses/LICENSE-2.0
*/
%>
<li>
<div style = "font-size:x-large"><b><%- schema["title"] %></b></div>
<br>
<div> <span style = "font-size:large">Description: </span> <%- schema["description"] %></div>
<% if (schema["note"]) { %>
<br>
<div>Note: <%- schema["note"] %></div>
<% } %>
<%
function getType(valueObject) {
if( valueObject["format"] )
return valueObject["format"];
else
return valueObject["type"];
}
%>
<br>
<div style = "font-size:large"><b>Properties:</b></div>
<div class=" table " data-dist-id="table_246994025">
<table width="100%" cellspacing="0" cellpadding="1" border="1">
<thead>
<tr>
<th>Name</th>
<th>JSON Name</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<% _.forOwn(schema.properties, function (value,prop) { %>
<tr>
<td align = "center"><b><%- prop %></b></td>
<td><%- prop %></td>
<td><%- getType(value) %></td>
<td><%- value["description"] %></td>
</tr>
<% }); %>
</tbody>
</table>
</div>
</li>
<%#
/**
* Copyright 2017 Adobe Systems Incorporated. All rights reserved.
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. You may obtain a copy
* of the License at http://www.apache.org/licenses/LICENSE-2.0
*/
-%>
<html>
<head>
<title><%# model.meta[consts.DC_TITLE] %></title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<link rel="icon" href="https://wwwimages2.adobe.com/include/img/favicon.ico" type="image/x-icon">
<link rel="shortcut icon" href="https://wwwimages2.adobe.com/include/img/favicon.ico" type="image/x-icon">
<link rel="stylesheet" href="../../public/css/adobe.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="../public//css/aceui-reimagine.min.css"/>
<link rel="stylesheet" href="../../public/css/thirdparty-new.css" type="text/css" />
<link rel="stylesheet" href="../../public/css/customized.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="../../public/css/icons.min.css"/>
<link rel="stylesheet" href="../../public/css/clientlib-all.css" type="text/css" />
</head>
<body class="Lobby globalnav__external__no-touch" data-personalization-json="/content/udp/en/products/contentapi/docs/getting-started.loggedin.json" data-seed-personalization="" data-seed-themes="" data-seed-modal="" data-seed-details="" data-seed-messages="" data-seed-deeplink=""><div data-country="US" data-language="en" data-locale="en_US" id="globalnav__header" class="globalnav__js__header globalnav__feature-flag--dc">
<div id="containerTTMbox" class="containerTTMbox"></div>
<header class="grid-container-fluid" data-profile-api="https://cc-collab.adobe.io/profile">
<section class="grid-row">
<nav class="grid-cols-14 grid-offset-1">
<!--#set var="Gnav:Locale" value="" -->
<!--#set var="Gnav:Scripts" value="false" -->
<!--#include virtual="/ubi/globalnav/_all/gnav_assets.ssi" -->
<div class="site-header-global-nav LayoutBreakAfter">
<div class="site-header-global-menu LayoutBreakAfter"></div>
</div>
</nav>
</section>
</header>
<nav class="anchornav" data-seed-anchornav="">
<div class="productheader">
<i class="adobe-product-icon adobe-icon-target icon-spacing"></i>
<nav class="breadcrumbs"><a href="https://author-adobeio-stage.adobemsbasic.com/content/udp/en" style="text-decoration: none;">Adobe&nbsp;<span class="label-io">I/O</span></a></nav>
<h1>
Content API
</h1>
</div>
<input id="bookmark-display" name="bookmarks" type="checkbox">
<label for="bookmark-display"></label>
<nav>
<a href="https://author-adobeio-stage.adobemsbasic.com/content/udp/en/products/contentapi.html" target="_self">Overview</a>
<span class="anchornav-active">Documentation</span>
<span class="vertical-break">|</span>
<a href="https://author-adobeio-stage.adobemsbasic.com/content/udp/en.html" target="_self">Home</a>
<a href="https://author-adobeio-stage.adobemsbasic.com/content/udp/en/products.html" target="_self">Products</a>
<a class="anchornav-button " href="https://author-adobeio-stage.adobemsbasic.com/console">Console</a>
</nav>
</nav>
<main>
<div class="grid-container border-bot udp-sidebar-template">
<div class="grid-row">
<div class="grid-cols-5">
<sidenav><nav class="side-bar hide-on-mobile">
<div class="side-bar-toggle">
<button>
> Tap to toggle the page navigation
<i class="fa fa-bars" aria-hidden="true"></i>
<i class="fa fa-times" aria-hidden="true"></i>
</button>
</div>
<!--calling recursive template for rendering side navigation-->
<ul id="side-bar-menu">
<li class="active side-bar-sub-menu">
<i class="icon-toggle-up-down active"></i>
<a href="https://author-adobeio-stage.adobemsbasic.com/content/udp/en/products/contentapi/docs/getting-started.html">Getting Started</a>
<ul class="active">
<li class=" side-bar-sub-menu">
<i class="icon-toggle-up-down "></i>
<a>Use Cases</a>
<ul>
</ul>
</li>
</ul>
</li>
</ul>
</nav></sidenav>
</div>
<div class="grid-cols-10 grid-offset-1 udp-target-temp-style udp-target">
<div class="cq-dev-text">
<!-- <h1><%# model.meta[consts.DC_TITLE] %></h1>
<div><%# model.meta[consts.RDFS_COMMENT] %></div> -->
<h2><u>Classes</u></h2>
<ul>
<%# _.forEach(model.classes, function (clazz) { %>
<%- include('class', { schema: schema, _: _}); %>
<br>
<%# }); %>
</ul>
</div></div> </div></div>
</main>
<footer>
<div class="grid-container">
<div class="grid-row">
<div class="grid-cols-16">
<div class="grid-row adobe-footer-logo">
<div class="grid-cols-9 footer-left">
<div class="footer-nav-container">
<div class="footer-nav">
<h4><span>Adobe</span> Core Asset Data Model</h4>
<ul>
<li><a href="/">Home</a></li>
<li><a href="/products">Products</a></li>
<li><a href="/console">Console</a></li>
</ul>
</div>
<div class="footer-nav">
<h4>Legal</h4>
<ul>
<li><a href="https://www.adobe.com/privacy.html" target="_blank">Privacy Policy</a></li>
<li><a href="http://www.adobe.com/legal/terms.html" target="_blank">Terms of Use</a></li>
<li><a href="https://www.adobe.com/privacy/cookies.html" target="_blank">Cookies</a></li>
</ul>
</div>
<div class="footer-nav">
<h4>Contact</h4>
<ul>
<li><a href="/contact">Contact</a></li>
</ul>
</div>
</div>
</div>
<div class="grid-cols-6 footer-right">
<div class="social-nav">
<h4>Social</h4>
<ul>
<li class="social-icon-facebook">
<a href="https://www.facebook.com/adobeio" target="_blank "></a>
</a>
</li>
<li class="social-icon-twitter">
<a href="https://twitter.com/adobeio" target="_blank"></a>
</li>
</ul>
</div>
</div>
<div class="grid-cols-16 footer-copy-right">
<p>Copyright &copy; 2016 Adobe Systems Incorporated. All rights reserved.</p>
</div>
</div>
</div>
</div>
</div>
</footer>
</body>
</html>
<%
/**
* Copyright 2017 Adobe Systems Incorporated. All rights reserved.
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. You may obtain a copy
* of the License at http://www.apache.org/licenses/LICENSE-2.0
*/
function isRequired(key,requiredProperties) {
if( _.indexOf(requiredProperties,key,0) != -1 )
return "_Required_";
else
return "";
}
function createLink(str,link){
return "[" + str + "](" + link+ ")";
}
function getType(valueObject) {
var type=valueObject.type;
switch(type){
case "anyOf":{ var str="";
var curObj=valueObject["anyOf"];
_.each(curObj,function(obj,index){
if(index != (curObj.length - 1) )
str = str + getType(obj) + "|" ;
else
str = str + getType(obj) ;
});
return str;
}
break;
case "array":{
var items=valueObject["items"];
var str="";
if(items.properties)
return "Array of Object Containing following Properties" + NestedProperties(items);
if(valueObject["items"]){
var str=getType(valueObject["items"])
return str+"[]";
}
}
break;
case "oneOf":{ var str="This property can be one of following values \n";
var curObj=valueObject["oneOf"];
_.each(curObj,function(obj,index){
if(index != (curObj.length - 1) )
str = str + getType(obj) + "|" ;
else
str = str + getType(obj) ;
});
return str;
}
case "allOf":{ var str="This property can be all of following values \n";
var curObj=valueObject["allOf"];
_.each(curObj,function(obj,index){
if(index != (curObj.length - 1) )
str = str + getType(obj) + "|" ;
else
str = str + getType(obj) ;
});
return str;
}
}
if(valueObject["$linkPath"]){
return createLink("`" + valueObject["type"] + "`",valueObject["$linkPath"]);
}
else{
if( valueObject["format"])
return "`"+valueObject["format"]+"`";
else{
if(valueObject["type"])
return "`"+valueObject["type"]+"`";
}
}
return "";
}
function NestedProperties(valueObj){
if(valueObj["properties"] && Object.keys(valueObj["properties"]).length > 0){
var string="\n#### **Properties**\n";
_.forOwn(valueObj["properties"], function (value,prop) {
if(value["description"])
description=value["description"];
else
description="";
string=string + "* **"+linkProperty(prop)+"** "+getType(value)
+" \n"+description+"\n\n";
});
return string;
}
return "";
}
function displayEnum(valueObj){
if(valueObj["enum"]){
enumArray = valueObj["enum"];
var str="\n\n *x ∈ {";
_.each(enumArray,function(item,index){
if(index != (enumArray.length - 1) )
str=str+item+",";
else
str=str+item+"}*\n ";
});
return str;
}
return "";
}
function linkProperty(str){
if(validUrl.isUri(str)){
arr=str.split("/");
text=arr[arr.length - 1 ];
return createLink(text,str);
}
else
return str;
}
function displayDefinitions(obj){
var str="## Definitions\n\n";
_.forOwn(obj, function (value,prop) {
str=str+"### "+prop+":\n\n"+getType(value)+"\n\n"+displayEnum(value)+NestedProperties(value);
});
return str;
}
function displayExamples(obj){
var str="";
if(obj.examples){
str="### Examples\n\n";
_.each(obj.examples, function (item) {
var temp=JSON.stringify(item,null, 4);
str=str+"```json\n"+temp+"\n```\n\n";
});
}
return str;
}%>
<% if(Object.keys(schema.metaElements).length > 0){ %>
---<% _.forOwn(schema.metaElements, function (value,key) { %>
<%- key %> : <%- value %><% }); %>
---<% } %>
# <%- schema["title"] %>
<%- schema["description"] %>
## Properties
<%- getType(schema) %>
<% _.forOwn(schema.properties, function (value,prop) { %>
### <%- linkProperty(prop) %>
<%- getType(value) %> <%- isRequired(prop,schema["required"]) %>
<%- value["description"] %><%- displayEnum(value) %><%- NestedProperties(value) %>
<% }); %>
<% if(schema["definitions"]) { %>
<%- displayDefinitions(schema["definitions"]) %>
<% } %>
<%- displayExamples(schema) %>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment