Back

If your email is not recognized and you believe it should be, please contact us.

  • You must be logged in to reply to this topic.Login

Profile-based color conversions?

Return to Member Forum

  • Author
    Posts
    • #1226697

      Greetings,

      For visuals and as substitute for the following text please view this video

      https://youtu.be/VlZ5aToPX0Q

      In a nutshell, I’m looking for a way to programmatically convert a given CMYK to LAB which would also respect the color profile referencing the values. So, if the user is set in XCMYK vs SWOPv2 the same CMYK recipe will produce, correctly, two very different LAB values.

      Given this, I can then calculate a Delta e 2000 difference between two swatches and create correctly spaced out colors between a given start and end color. Say, a delta e of 1 between each swatch.

      Anyone has somewhere to point me to, for a indesign script based approach to converting colors while respecting the color space they reference? Is there already an API for this in InDesign Javascript?

      Thank you kindly!

      PS: pm me if you want to send you this script I’m writing :slightly_smiling_face:

    • #14323164
      David Blatner
      Keymaster

      Are you trying to change the colors in a PSD? Or an AI file? Or the color swatches in an InDesign file?

    • #14323162

      Hi David!!!

      It’s all in InDesign.
      If I can get a programmatic way of converting CMYK to LAB based on profiles then I do a few really cool things for teaching and production as well.

      I’ll get there, keeping up the search!

      Cheers from Vancouver :)

      Antoine

    • #14323160
      David Blatner
      Keymaster

      I thought that if you use edit > assign profile to apply different document profiles to the InDesign document, and then convert the color swatch (e.g. cyan) from CMYK to Lab that you would get different Lab values.

      But that is not happening! Changing the document CMYK profile does change the “meaning” of the CMYK color swatch (and therefore how it appears)… but somehow changing that color swatch to Lab does not reflect the profile properly.

      Is this a bug? If it does not use the document profile, then what does it use for the CMYK-to-Lab conversion, I wonder.

    • #14323151

      Good morning David!!!

      Rob Day, on Adobe Forums, may have given me a solution below.
      You know, the more you code, the more you learn, the easier it gets and the more fun it gets.

      I wonder how hard wrapping this all up into a CEP will be!

      Cheers from Vancouver,

      Antoine

      var docprof = app.activeDocument.cmykProfile;

      var profA = “U.S. Web Coated (SWOP) v2”;
      var profB = “U.S. Sheetfed Coated v2″;

      //Create a CMYK color.
      try{
      var mycolor = app.activeDocument.colors.add({name:”Red”, model:ColorModel.process, colorValue:[20, 100, 100, 0]});
      }
      catch (e){
      var mycolor = app.activeDocument.colors.item(“Red”);
      };

      /**
      *Get a swatch’s Lab Value
      * @param s the swatch
      * @param p the CMYK Profile
      **/
      function getLAB(s, p){
      app.activeDocument.cmykProfile = p;
      var d = s.duplicate();
      d.space = ColorSpace.LAB;
      val = d.colorValue;
      d.remove();
      return val;
      }

      var lab1 = getLAB(mycolor, profA);
      var lab2 = getLAB(mycolor, profB);
      $.writeln(“SWOP: ” + lab1 + “Sheetfed: ” + lab2)
      //returns SWOP: 44.9591979980469,62.1322975158691,40.0155982971191
      // Sheetfed: 41.3518981933594,56.3812980651855,43.5097007751465

      //reset profile
      app.activeDocument.cmykProfile = docprof;

    • #14323119

      Hi guys,

      Here’s my working code so far.
      I’ve yet to add the delta e functionality.

      Cheers!!!

      #targetengine “session”; // not needed in Illustrator/AfterEffects

      var doc, page;

      var sheetSize, sheetWidth, sheetHeight;
      sheetWidth = 0.0; // for ui validation routine later on…
      var paletteName;
      var swatch, customSwatchShape, customSwatchShapeDiameter, customSwatchShapeNumberOfSides, swatchWidth, swatchHeight;
      customSwatchShapeDiameter=0.0; // for ui validation routine later on…
      swatchWidth = 0.0; // for ui validation routine later on…
      swatchHeight = 0.0; // for ui validation routine later on…
      var Gold, Silver, White, Clear, Orange, Blue, Green, FluoMagenta, FluoYellow;
      var startingCyan, startingMagenta, startingYellow, startingBlack, startingSpecialty;
      var endingCyan, endingMagenta, endingYellow, endingBlack, endingSpecialty;
      var progressionCyan, progressionMagenta, progressionYellow, progressionBlack, progressionSpecialty;
      var cyan, magenta, yellow, black, specialty;

      var arrayOfSwatchesToAddToPanel = {};
      var cyanSteps, magentaSteps, yellowSteps, blackSteps, specialtySteps;
      var cyanRepeats, magentaRepeats, yellowRepeats, blackRepeats, specialtyRepeats;
      var maxStepping;

      var colourStepping = 2;

      var arrCyanColours = {};

      var isCyanIncrementing = false;
      var isMagentaIncrementing = false;
      var isYellowIncrementing = false;
      var isBlackIncrementing = false;
      var isSpecialtyIncrementing = false;

      var arrayOfNewSwatches = [];

      var theMixedInk = {};

      var paletteGroup;

      /*
      Code for Import https://scriptui.joonas.me — (Triple click to select):
      {“activeId”:122,”items”:{“item-0”:{“id”:0,”type”:”Dialog”,”parentId”:false,”style”:{“enabled”:true,”varName”:”mainWindow”,”windowType”:”Palette”,”creationProps”:{“su1PanelCoordinates”:false,”maximizeButton”:false,”minimizeButton”:false,”independent”:false,”closeButton”:true,”borderless”:false,”resizeable”:false},”text”:”Shaareable Apps ~ Let it shine”,”preferredSize”:[0,0],”margins”:16,”orientation”:”column”,”spacing”:10,”alignChildren”:[“left”,”top”]}},”item-16″:{“id”:16,”type”:”Panel”,”parentId”:0,”style”:{“enabled”:true,”varName”:”pnlStartingPoint”,”creationProps”:{“borderStyle”:”etched”,”su1PanelCoordinates”:false},”text”:”Starting Colour”,”preferredSize”:[360,0],”margins”:10,”orientation”:”column”,”spacing”:0,”alignChildren”:[“center”,”top”],”alignment”:null}},”item-17″:{“id”:17,”type”:”Group”,”parentId”:16,”style”:{“enabled”:true,”varName”:”grpMainStartingPointGroup”,”preferredSize”:[0,0],”margins”:0,”orientation”:”row”,”spacing”:11,”alignChildren”:[“left”,”center”],”alignment”:null},”collapsed”:true},”item-18″:{“id”:18,”type”:”Group”,”parentId”:17,”style”:{“enabled”:true,”varName”:”grpStartingCyanColumn”,”preferredSize”:[0,0],”margins”:0,”orientation”:”column”,”spacing”:3,”alignChildren”:[“center”,”center”],”alignment”:null}},”item-19″:{“id”:19,”type”:”StaticText”,”parentId”:18,”style”:{“enabled”:true,”varName”:”lblStartingCyan”,”creationProps”:{“truncate”:”none”,”multiline”:false,”scrolling”:false},”softWrap”:false,”text”:”Cyan”,”justify”:”left”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null}},”item-20″:{“id”:20,”type”:”EditText”,”parentId”:18,”style”:{“enabled”:true,”varName”:”txtStartingCyan”,”creationProps”:{“noecho”:false,”readonly”:false,”multiline”:false,”scrollable”:false,”borderless”:false,”enterKeySignalsOnChange”:false},”softWrap”:false,”text”:””,”justify”:”left”,”preferredSize”:[36,0],”alignment”:null,”helpTip”:”Enter a number between 0 and 100″}},”item-21″:{“id”:21,”type”:”Group”,”parentId”:17,”style”:{“enabled”:true,”varName”:”grpStartingMagentaColumn”,”preferredSize”:[68,0],”margins”:0,”orientation”:”column”,”spacing”:3,”alignChildren”:[“center”,”center”],”alignment”:null}},”item-22″:{“id”:22,”type”:”StaticText”,”parentId”:21,”style”:{“enabled”:true,”varName”:”lblStartingMagenta”,”creationProps”:{“truncate”:”none”,”multiline”:false,”scrolling”:false},”softWrap”:false,”text”:”Magenta”,”justify”:”left”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null}},”item-23″:{“id”:23,”type”:”EditText”,”parentId”:21,”style”:{“enabled”:true,”varName”:”txtStartingMagenta”,”creationProps”:{“noecho”:false,”readonly”:false,”multiline”:false,”scrollable”:false,”borderless”:false,”enterKeySignalsOnChange”:false},”softWrap”:false,”text”:””,”justify”:”left”,”preferredSize”:[36,0],”alignment”:null,”helpTip”:”Enter a number between 0 and 100″}},”item-24″:{“id”:24,”type”:”Group”,”parentId”:17,”style”:{“enabled”:true,”varName”:”grpStartingYellowColumn”,”preferredSize”:[49,0],”margins”:0,”orientation”:”column”,”spacing”:3,”alignChildren”:[“left”,”center”],”alignment”:null}},”item-25″:{“id”:25,”type”:”StaticText”,”parentId”:24,”style”:{“enabled”:true,”varName”:”lblStartingYellow”,”creationProps”:{“truncate”:”none”,”multiline”:false,”scrolling”:false},”softWrap”:false,”text”:”Yellow”,”justify”:”left”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null}},”item-26″:{“id”:26,”type”:”EditText”,”parentId”:24,”style”:{“enabled”:true,”varName”:”txtStartingYellow”,”creationProps”:{“noecho”:false,”readonly”:false,”multiline”:false,”scrollable”:false,”borderless”:false,”enterKeySignalsOnChange”:false},”softWrap”:false,”text”:””,”justify”:”left”,”preferredSize”:[36,0],”alignment”:null,”helpTip”:”Enter a number between 0 and 100″}},”item-27″:{“id”:27,”type”:”Group”,”parentId”:17,”style”:{“enabled”:true,”varName”:”grpStartingSpecialtyColumn”,”preferredSize”:[60,0],”margins”:0,”orientation”:”column”,”spacing”:3,”alignChildren”:[“left”,”center”],”alignment”:null}},”item-28″:{“id”:28,”type”:”StaticText”,”parentId”:27,”style”:{“enabled”:true,”varName”:”lblStartingSpecialty”,”creationProps”:{“truncate”:”none”,”multiline”:false,”scrolling”:false},”softWrap”:false,”text”:”Specialty”,”justify”:”left”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null}},”item-29″:{“id”:29,”type”:”DropDownList”,”parentId”:27,”style”:{“enabled”:true,”varName”:”cboStartingSpecialty”,”text”:”DropDownList”,”listItems”:”Gold, Silver, White, Clear,Orange, Blue, Green, Yellow”,”preferredSize”:[0,0],”alignment”:null,”selection”:0,”helpTip”:”Choose your specialty colour”}},”item-30″:{“id”:30,”type”:”Panel”,”parentId”:0,”style”:{“enabled”:true,”varName”:”pnlEndingPoint”,”creationProps”:{“borderStyle”:”etched”,”su1PanelCoordinates”:false},”text”:”Ending Colour”,”preferredSize”:[407,0],”margins”:10,”orientation”:”column”,”spacing”:10,”alignChildren”:[“center”,”top”],”alignment”:null}},”item-31″:{“id”:31,”type”:”Group”,”parentId”:30,”style”:{“enabled”:true,”varName”:”grpMainEndingPointGroup”,”preferredSize”:[0,0],”margins”:0,”orientation”:”row”,”spacing”:11,”alignChildren”:[“left”,”center”],”alignment”:null}},”item-32″:{“id”:32,”type”:”Group”,”parentId”:31,”style”:{“enabled”:true,”varName”:”grpEndingCyanColumn”,”preferredSize”:[0,0],”margins”:0,”orientation”:”column”,”spacing”:3,”alignChildren”:[“center”,”center”],”alignment”:null}},”item-33″:{“id”:33,”type”:”StaticText”,”parentId”:32,”style”:{“enabled”:true,”varName”:”lblEndingCyan”,”creationProps”:{“truncate”:”none”,”multiline”:false,”scrolling”:false},”softWrap”:false,”text”:”Cyan”,”justify”:”left”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null}},”item-34″:{“id”:34,”type”:”EditText”,”parentId”:32,”style”:{“enabled”:true,”varName”:”txtEndingCyan”,”creationProps”:{“noecho”:false,”readonly”:false,”multiline”:false,”scrollable”:false,”borderless”:false,”enterKeySignalsOnChange”:false},”softWrap”:false,”text”:””,”justify”:”left”,”preferredSize”:[36,0],”alignment”:null,”helpTip”:”Enter a number between 0 and 100″}},”item-35″:{“id”:35,”type”:”Group”,”parentId”:31,”style”:{“enabled”:true,”varName”:”grpEndingMagentaColumn”,”preferredSize”:[68,0],”margins”:0,”orientation”:”column”,”spacing”:3,”alignChildren”:[“center”,”center”],”alignment”:null}},”item-36″:{“id”:36,”type”:”StaticText”,”parentId”:35,”style”:{“enabled”:true,”varName”:”lblEndingMagenta”,”creationProps”:{“truncate”:”none”,”multiline”:false,”scrolling”:false},”softWrap”:false,”text”:”Magenta”,”justify”:”left”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null}},”item-37″:{“id”:37,”type”:”EditText”,”parentId”:35,”style”:{“enabled”:true,”varName”:”txtEndingMagenta”,”creationProps”:{“noecho”:false,”readonly”:false,”multiline”:false,”scrollable”:false,”borderless”:false,”enterKeySignalsOnChange”:false},”softWrap”:false,”text”:””,”justify”:”left”,”preferredSize”:[36,0],”alignment”:null,”helpTip”:”Enter a number between 0 and 100″}},”item-38″:{“id”:38,”type”:”Group”,”parentId”:31,”style”:{“enabled”:true,”varName”:”grpEndingYellowColumn”,”preferredSize”:[49,0],”margins”:0,”orientation”:”column”,”spacing”:3,”alignChildren”:[“left”,”center”],”alignment”:null}},”item-39″:{“id”:39,”type”:”StaticText”,”parentId”:38,”style”:{“enabled”:true,”varName”:”lblEndingYellow”,”creationProps”:{“truncate”:”none”,”multiline”:false,”scrolling”:false},”softWrap”:false,”text”:”Yellow”,”justify”:”left”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null}},”item-40″:{“id”:40,”type”:”EditText”,”parentId”:38,”style”:{“enabled”:true,”varName”:”txtEndingYellow”,”creationProps”:{“noecho”:false,”readonly”:false,”multiline”:false,”scrollable”:false,”borderless”:false,”enterKeySignalsOnChange”:false},”softWrap”:false,”text”:””,”justify”:”left”,”preferredSize”:[36,0],”alignment”:null,”helpTip”:”Enter a number between 0 and 100″}},”item-41″:{“id”:41,”type”:”Group”,”parentId”:31,”style”:{“enabled”:true,”varName”:”grpEndingSpecialtyColumn”,”preferredSize”:[60,0],”margins”:0,”orientation”:”column”,”spacing”:3,”alignChildren”:[“left”,”center”],”alignment”:null}},”item-42″:{“id”:42,”type”:”StaticText”,”parentId”:41,”style”:{“enabled”:true,”varName”:”lblEndingSpecialty”,”creationProps”:{“truncate”:”none”,”multiline”:false,”scrolling”:false},”softWrap”:false,”text”:”Specialty”,”justify”:”left”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null}},”item-43″:{“id”:43,”type”:”DropDownList”,”parentId”:41,”style”:{“enabled”:true,”varName”:”cboEndingSpecialty”,”text”:”DropDownList”,”listItems”:”Gold, Silver, White, Clear,Orange, Blue, Green, Yellow”,”preferredSize”:[0,0],”alignment”:null,”selection”:0,”helpTip”:”Choose your specialty colour”}},”item-44″:{“id”:44,”type”:”Panel”,”parentId”:0,”style”:{“enabled”:true,”varName”:”pnlSheetSize”,”creationProps”:{“borderStyle”:”etched”,”su1PanelCoordinates”:false},”text”:”Sheet Size”,”preferredSize”:[407,0],”margins”:[11,10,9,10],”orientation”:”column”,”spacing”:8,”alignChildren”:[“center”,”top”],”alignment”:null},”collapsed”:true},”item-45″:{“id”:45,”type”:”Group”,”parentId”:44,”style”:{“enabled”:true,”varName”:”grpSheetSizeSelections”,”preferredSize”:[232,0],”margins”:0,”orientation”:”row”,”spacing”:40,”alignChildren”:[“center”,”center”],”alignment”:null}},”item-46″:{“id”:46,”type”:”Group”,”parentId”:61,”style”:{“enabled”:true,”varName”:”grpCustomSheetSizeWidth”,”preferredSize”:[0,0],”margins”:0,”orientation”:”column”,”spacing”:3,”alignChildren”:[“center”,”center”],”alignment”:null}},”item-47″:{“id”:47,”type”:”StaticText”,”parentId”:46,”style”:{“enabled”:true,”varName”:”lblCustomSheetSizeWidth”,”creationProps”:{“truncate”:”none”,”multiline”:false,”scrolling”:false},”softWrap”:false,”text”:”Width”,”justify”:”left”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null}},”item-48″:{“id”:48,”type”:”EditText”,”parentId”:46,”style”:{“enabled”:true,”varName”:”txtCustomSheetSizeWidth”,”creationProps”:{“noecho”:false,”readonly”:false,”multiline”:false,”scrollable”:false,”borderless”:false,”enterKeySignalsOnChange”:false},”softWrap”:false,”text”:””,”justify”:”left”,”preferredSize”:[36,0],”alignment”:null,”helpTip”:”Enter a number between 0 and 100″}},”item-49″:{“id”:49,”type”:”Group”,”parentId”:61,”style”:{“enabled”:true,”varName”:”grpCustomSheetSizeHeight”,”preferredSize”:[46,0],”margins”:0,”orientation”:”column”,”spacing”:2,”alignChildren”:[“center”,”center”],”alignment”:null}},”item-50″:{“id”:50,”type”:”StaticText”,”parentId”:49,”style”:{“enabled”:true,”varName”:”lblCustomSheetSizeHeight”,”creationProps”:{“truncate”:”none”,”multiline”:false,”scrolling”:false},”softWrap”:false,”text”:”Height”,”justify”:”left”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null}},”item-51″:{“id”:51,”type”:”EditText”,”parentId”:49,”style”:{“enabled”:true,”varName”:”txtCustomSheetSizeHeight”,”creationProps”:{“noecho”:false,”readonly”:false,”multiline”:false,”scrollable”:false,”borderless”:false,”enterKeySignalsOnChange”:false},”softWrap”:false,”text”:””,”justify”:”left”,”preferredSize”:[36,0],”alignment”:null,”helpTip”:”Enter a number between 0 and 100″}},”item-55″:{“id”:55,”type”:”Group”,”parentId”:45,”style”:{“enabled”:true,”varName”:”grpSheetSizeStandard”,”preferredSize”:[60,0],”margins”:0,”orientation”:”column”,”spacing”:3,”alignChildren”:[“left”,”center”],”alignment”:null}},”item-57″:{“id”:57,”type”:”DropDownList”,”parentId”:55,”style”:{“enabled”:true,”varName”:”cboStandardSheetSize”,”text”:”DropDownList”,”listItems”:”11 x 17, 12 x 18, 12.5 x 19, 13 x 19, – , 13 x 26, 13 x 40, 13 x 47, -,8.5 x 11 SEF, 8.5 x 11 LEF, 8.5 x 14″,”preferredSize”:[0,0],”alignment”:null,”selection”:0,”helpTip”:”Choose your specialty colour”}},”item-58″:{“id”:58,”type”:”Group”,”parentId”:44,”style”:{“enabled”:true,”varName”:”pnlSheetSizeRadioButtons”,”preferredSize”:[0,0],”margins”:0,”orientation”:”row”,”spacing”:47,”alignChildren”:[“left”,”center”],”alignment”:null}},”item-59″:{“id”:59,”type”:”RadioButton”,”parentId”:58,”style”:{“enabled”:true,”varName”:”rboSheetSizeStandard”,”text”:”Standard”,”preferredSize”:[84,0],”alignment”:null,”helpTip”:null,”checked”:false}},”item-60″:{“id”:60,”type”:”RadioButton”,”parentId”:58,”style”:{“enabled”:true,”varName”:”rboSheetSizeCustom”,”text”:”Custom”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null,”checked”:true}},”item-61″:{“id”:61,”type”:”Group”,”parentId”:45,”style”:{“enabled”:true,”varName”:”grpCustomSheetSize”,”preferredSize”:[0,0],”margins”:0,”orientation”:”row”,”spacing”:7,”alignChildren”:[“left”,”center”],”alignment”:null}},”item-62″:{“id”:62,”type”:”StaticText”,”parentId”:55,”style”:{“enabled”:true,”varName”:”lblSpacer”,”creationProps”:{“truncate”:”none”,”multiline”:false,”scrolling”:false},”softWrap”:false,”text”:””,”justify”:”left”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null}},”item-74″:{“id”:74,”type”:”Panel”,”parentId”:0,”style”:{“enabled”:true,”varName”:”pnlSwatchShape”,”creationProps”:{“borderStyle”:”etched”,”su1PanelCoordinates”:false},”text”:”Swatch Shape”,”preferredSize”:[407,0],”margins”:[13,10,9,10],”orientation”:”column”,”spacing”:3,”alignChildren”:[“center”,”top”],”alignment”:null}},”item-75″:{“id”:75,”type”:”Group”,”parentId”:74,”style”:{“enabled”:true,”varName”:”pnlSwatchShapeOptions”,”preferredSize”:[0,0],”margins”:0,”orientation”:”row”,”spacing”:46,”alignChildren”:[“left”,”center”],”alignment”:null}},”item-76″:{“id”:76,”type”:”RadioButton”,”parentId”:75,”style”:{“enabled”:true,”varName”:”rboSwatchShapeCustom”,”text”:”Custom”,”preferredSize”:[84,0],”alignment”:null,”helpTip”:null,”checked”:false}},”item-77″:{“id”:77,”type”:”RadioButton”,”parentId”:75,”style”:{“enabled”:true,”varName”:”rboSwatchShapeRectangle”,”text”:”Rectangle”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null,”checked”:true}},”item-78″:{“id”:78,”type”:”Group”,”parentId”:74,”style”:{“enabled”:true,”varName”:”grpSwatchShapeSelections”,”preferredSize”:[232,0],”margins”:0,”orientation”:”row”,”spacing”:40,”alignChildren”:[“center”,”center”],”alignment”:null}},”item-79″:{“id”:79,”type”:”Group”,”parentId”:78,”style”:{“enabled”:true,”varName”:”grpSwatchShapeStandard”,”preferredSize”:[60,0],”margins”:[7,0,0,0],”orientation”:”column”,”spacing”:3,”alignChildren”:[“center”,”center”],”alignment”:null}},”item-80″:{“id”:80,”type”:”DropDownList”,”parentId”:79,”style”:{“enabled”:true,”varName”:”cboCustomSwatchShape”,”text”:”DropDownList”,”listItems”:”Circle, Triangle, Square, Pentagon, Hexagon, Octogon”,”preferredSize”:[0,0],”alignment”:null,”selection”:0,”helpTip”:”Choose your specialty colour”}},”item-81″:{“id”:81,”type”:”StaticText”,”parentId”:90,”style”:{“enabled”:true,”varName”:”lblPaletteName”,”creationProps”:{“truncate”:”none”,”multiline”:false,”scrolling”:false},”softWrap”:false,”text”:”Palette name:”,”justify”:”left”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null}},”item-82″:{“id”:82,”type”:”Group”,”parentId”:78,”style”:{“enabled”:true,”varName”:”grpCustomSwatchShape”,”preferredSize”:[0,0],”margins”:[0,0,0,0],”orientation”:”row”,”spacing”:8,”alignChildren”:[“left”,”center”],”alignment”:null}},”item-83″:{“id”:83,”type”:”Group”,”parentId”:82,”style”:{“enabled”:true,”varName”:”grpCustomswatchWidth”,”preferredSize”:[0,0],”margins”:0,”orientation”:”column”,”spacing”:3,”alignChildren”:[“center”,”center”],”alignment”:null}},”item-84″:{“id”:84,”type”:”EditText”,”parentId”:83,”style”:{“enabled”:true,”varName”:”txtShapeWidth”,”creationProps”:{“noecho”:false,”readonly”:false,”multiline”:false,”scrollable”:false,”borderless”:false,”enterKeySignalsOnChange”:false},”softWrap”:false,”text”:””,”justify”:”left”,”preferredSize”:[36,0],”alignment”:null,”helpTip”:”Enter a number between 0 and 100″}},”item-85″:{“id”:85,”type”:”StaticText”,”parentId”:83,”style”:{“enabled”:true,”varName”:”lblCustomswatchWidth”,”creationProps”:{“truncate”:”none”,”multiline”:false,”scrolling”:false},”softWrap”:false,”text”:”Width”,”justify”:”left”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null}},”item-86″:{“id”:86,”type”:”Group”,”parentId”:82,”style”:{“enabled”:true,”varName”:”grpCustomswatchHeight”,”preferredSize”:[46,0],”margins”:0,”orientation”:”column”,”spacing”:2,”alignChildren”:[“center”,”center”],”alignment”:null}},”item-87″:{“id”:87,”type”:”EditText”,”parentId”:86,”style”:{“enabled”:true,”varName”:”txtShapeHeight”,”creationProps”:{“noecho”:false,”readonly”:false,”multiline”:false,”scrollable”:false,”borderless”:false,”enterKeySignalsOnChange”:false},”softWrap”:false,”text”:””,”justify”:”left”,”preferredSize”:[36,0],”alignment”:null,”helpTip”:”Enter a number between 0 and 100″}},”item-88″:{“id”:88,”type”:”StaticText”,”parentId”:86,”style”:{“enabled”:true,”varName”:”lblCustomswatchHeight”,”creationProps”:{“truncate”:”none”,”multiline”:false,”scrolling”:false},”softWrap”:false,”text”:”Height”,”justify”:”left”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null}},”item-89″:{“id”:89,”type”:”EditText”,”parentId”:90,”style”:{“enabled”:true,”varName”:”txtPaletteName”,”creationProps”:{“noecho”:false,”readonly”:false,”multiline”:false,”scrollable”:false,”borderless”:false,”enterKeySignalsOnChange”:false},”softWrap”:false,”text”:””,”justify”:”left”,”preferredSize”:[150,0],”alignment”:null,”helpTip”:null}},”item-90″:{“id”:90,”type”:”Group”,”parentId”:129,”style”:{“enabled”:true,”varName”:”grpPaletteName”,”preferredSize”:[0,0],”margins”:0,”orientation”:”row”,”spacing”:4,”alignChildren”:[“left”,”center”],”alignment”:null}},”item-91″:{“id”:91,”type”:”Panel”,”parentId”:0,”style”:{“enabled”:true,”varName”:”pnlSwatchToSwatchProgression”,”creationProps”:{“borderStyle”:”etched”,”su1PanelCoordinates”:false},”text”:”Swatch To Swatch Progression”,”preferredSize”:[407,0],”margins”:[15,10,0,10],”orientation”:”column”,”spacing”:0,”alignChildren”:[“center”,”top”],”alignment”:null},”collapsed”:true},”item-92″:{“id”:92,”type”:”Group”,”parentId”:91,”style”:{“enabled”:true,”varName”:”grpSwatchToSwatchProgressionNumbers”,”preferredSize”:[0,0],”margins”:6,”orientation”:”row”,”spacing”:11,”alignChildren”:[“left”,”center”],”alignment”:null}},”item-93″:{“id”:93,”type”:”Group”,”parentId”:92,”style”:{“enabled”:true,”varName”:”grpSwatchToSwatchProgressionCyan”,”preferredSize”:[0,0],”margins”:0,”orientation”:”column”,”spacing”:3,”alignChildren”:[“center”,”center”],”alignment”:null}},”item-94″:{“id”:94,”type”:”StaticText”,”parentId”:93,”style”:{“enabled”:true,”varName”:”lblSwatchToSwatchProgressionCyan”,”creationProps”:{“truncate”:”none”,”multiline”:false,”scrolling”:false},”softWrap”:false,”text”:”Cyan”,”justify”:”left”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null}},”item-95″:{“id”:95,”type”:”EditText”,”parentId”:93,”style”:{“enabled”:true,”varName”:”txtSwatchToSwatchProgressionCyan”,”creationProps”:{“noecho”:false,”readonly”:false,”multiline”:false,”scrollable”:false,”borderless”:false,”enterKeySignalsOnChange”:false},”softWrap”:false,”text”:””,”justify”:”left”,”preferredSize”:[36,0],”alignment”:null,”helpTip”:”Enter a number between 0 and 100″}},”item-96″:{“id”:96,”type”:”Group”,”parentId”:92,”style”:{“enabled”:true,”varName”:”grpSwatchToSwatchProgressionMagenta”,”preferredSize”:[68,0],”margins”:0,”orientation”:”column”,”spacing”:3,”alignChildren”:[“center”,”center”],”alignment”:null}},”item-97″:{“id”:97,”type”:”StaticText”,”parentId”:96,”style”:{“enabled”:true,”varName”:”lblSwatchToSwatchProgressionMagenta”,”creationProps”:{“truncate”:”none”,”multiline”:false,”scrolling”:false},”softWrap”:false,”text”:”Magenta”,”justify”:”left”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null}},”item-98″:{“id”:98,”type”:”EditText”,”parentId”:102,”style”:{“enabled”:true,”varName”:”txtSwatchToSwatchProgressionSpecialty”,”creationProps”:{“noecho”:false,”readonly”:false,”multiline”:false,”scrollable”:false,”borderless”:false,”enterKeySignalsOnChange”:false},”softWrap”:false,”text”:””,”justify”:”left”,”preferredSize”:[36,0],”alignment”:null,”helpTip”:”Enter a number between 0 and 100″}},”item-99″:{“id”:99,”type”:”Group”,”parentId”:92,”style”:{“enabled”:true,”varName”:”grpSwatchToSwatchProgressionYellow”,”preferredSize”:[49,0],”margins”:0,”orientation”:”column”,”spacing”:3,”alignChildren”:[“left”,”center”],”alignment”:null}},”item-100″:{“id”:100,”type”:”StaticText”,”parentId”:99,”style”:{“enabled”:true,”varName”:”lblSwatchToSwatchProgressionYellow”,”creationProps”:{“truncate”:”none”,”multiline”:false,”scrolling”:false},”softWrap”:false,”text”:”Yellow”,”justify”:”left”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null}},”item-101″:{“id”:101,”type”:”EditText”,”parentId”:99,”style”:{“enabled”:true,”varName”:”txtSwatchToSwatchProgressionYellow”,”creationProps”:{“noecho”:false,”readonly”:false,”multiline”:false,”scrollable”:false,”borderless”:false,”enterKeySignalsOnChange”:false},”softWrap”:false,”text”:””,”justify”:”left”,”preferredSize”:[36,0],”alignment”:null,”helpTip”:”Enter a number between 0 and 100″}},”item-102″:{“id”:102,”type”:”Group”,”parentId”:92,”style”:{“enabled”:true,”varName”:”grpSwatchToSwatchProgressionSpecialty”,”preferredSize”:[60,0],”margins”:0,”orientation”:”column”,”spacing”:3,”alignChildren”:[“left”,”center”],”alignment”:null}},”item-103″:{“id”:103,”type”:”StaticText”,”parentId”:102,”style”:{“enabled”:true,”varName”:”lblSwatchToSwatchProgressionSpecialty”,”creationProps”:{“truncate”:”none”,”multiline”:false,”scrolling”:false},”softWrap”:false,”text”:”Specialty”,”justify”:”left”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null}},”item-105″:{“id”:105,”type”:”Group”,”parentId”:91,”style”:{“enabled”:true,”varName”:”grpSwatchToSwatchProgressionOptions”,”preferredSize”:[0,0],”margins”:0,”orientation”:”row”,”spacing”:10,”alignChildren”:[“left”,”center”],”alignment”:null}},”item-106″:{“id”:106,”type”:”RadioButton”,”parentId”:105,”style”:{“enabled”:true,”varName”:”rboSwatchToSwatchProgressionAutomatic”,”text”:”Automatic”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null,”checked”:true}},”item-107″:{“id”:107,”type”:”RadioButton”,”parentId”:105,”style”:{“enabled”:true,”varName”:”rboSwatchToSwatchProgressionCustom”,”text”:”Custom”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null,”checked”:false}},”item-108″:{“id”:108,”type”:”EditText”,”parentId”:96,”style”:{“enabled”:true,”varName”:”txtSwatchToSwatchProgressionMagenta”,”creationProps”:{“noecho”:false,”readonly”:false,”multiline”:false,”scrollable”:false,”borderless”:false,”enterKeySignalsOnChange”:false},”softWrap”:false,”text”:””,”justify”:”left”,”preferredSize”:[36,0],”alignment”:null,”helpTip”:”Enter a number between 0 and 100″}},”item-120″:{“id”:120,”type”:”Image”,”parentId”:0,”style”:{“enabled”:true,”varName”:”imgLogo”,”image”:[“data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAS0AAABlCAYAAAAYn7VbAAAACXBIWXMAAAsSAAALEgHS3X78AAAV20lEQVR4nO2dv28ct7bHqSC9r9K+AaIr/wHRg9THFxiVF/EtpNZOoynj5s2qs91J2zylXDVxWquIb50BYvcWovwB2WcDW2ev/wI9HOXLDc0lOeQsOctZnw9g3NzVLJfDIc8cnl/cur29FTlS1M2OEOJCCLEnhHgyG5evsuwowzC9kp3QKurmbySk8O+e8qc3EF43a+wewzBrJiuhVdTNYyHEMyHEl47LfoTw+k+PXWMYJhM+y+xB/NAisIhHQoh3Rd0866lPDMNkRG6aVmhn3gshHs/G5etEXWIYJjNy07RCIa3sl6JuXsNwzzDMhtO70EokXL4WQvxfUTcXMOQzDLOh9Ca0SFiRRiSEeJHwZ76DvetJwt9gGGaNJBdapPmQBkSaEDSi1FCYxP8WdXNT1M0DnlwMs1kkFVrQeN5BA+qbr2DvesX2LobZHD5PcSfQcF54hC/0wTf0r6ib5xRhz/FdDDNsompasFtRus0vmQgsladCiBsEsDIMM1CiaFpK6s3TzIeBBOkPMvKe47sYZnisrGlBALwbgMBS+Rr2rhds72KYYdFZaJHdijx0SL255/GVHHmELSOnBDHMQAgWWrBbvYDd6qs13eb7iG2RwH1a1A3Fdz2M2C7DMAnwtmk5SsasAxKar1FvK5bgJHvXT0XdDKoETlVVu0KIXe3j68lkMl9TlxgmKV5CCxrIRU4eQRjR9xAL9iyiICV7169F3WRbAqeqqn0hxIkQojQILHnNlISXEKIRQlyxEGM2BWeVh6Ju9iCsYkayv5mNS2OkekCVh+ezcbmwQylVTr+J1ss/+QAv40XkdjsBrWoCYRXKpRDifDKZTHO4F4bpilHTwlbwAobq2EQPM5iNS/JePkwQ1CpTgp6suwROVVUjIQT92+7YxAk0r0ut3TMhxL7hetpinnb8LSYDqqqiufLS0hN6gTWhvcR8GRn+NJ1MJvf7uOsloQVPWgq7VXJbEQkVaIexY8ZkCZw3EF7vIrb9EdCmjiBg9iGkjmzbwEBMk9Q0AYXlWmZYHDm08qrjndja622+LIRWwtSbDxBWKas7LIAN6hk8nC8ib21lCZzvsW1MYe+iiXaWoN2pvjWsqsq1zWShNXxMGrSAFh1sJoDmZm2zr9H6TCkZkyL1hhb3Tl8CS4W0IdjOvoXgjIksgZMiJcg2KVbFJIRsvzWfTCa9TUImGbG1oixecp+jZExsgraCisE/OiQwkQ/5LHK1iXtICdpRnQIRsE2MOf7JbeIUdgndRlVCGO1Da5OYJtXaVX0mDZZQGEnXF5JtvnTS3LoSu8pD0FYQBv/YwmQJbOOeKFvGdQXFOkEog25opwl2hf8+Uz47NIUxwLh6J3QwcUcwwocILdayhk8KrSiLl1xMoRVk58HW6qLPQFVofiliu6KALdmW3hY8h6qd69Qn7gpvv6qqqnP9+qqqjuzfXAhJZrhYBUyXmL1EmlsnYgitrlvBPqqYGqG4K0Xrih3bFQUYPUsliHRBqKvaorrb7FlLBntmkGykPUusKLSy2wrCA3qBfjljqqARpojtisXLjkGkvrA9a0OxmBkkXbUilyey12yLrlUegryCSvmaPsouf6WUnWk9mYeE22xcUkT98x76FoJVYGG72JlcXNdMMqxzp0tAKbCZE3p/yYVqWr8huHIIW8FH0KS8tEHyACaK7erK1GFDOKuqiibgece2e1H1FeEYPYQiZdvrJNJ92V5InWyVLZpb9kLrlY/A6ssr6ME9pVJpq92NYruQEfDLmvstoPG4ouDPEN5w2mFyu7yG86qqpB2txGSdY8J7OQBg5B+pi6eqqjlCNM6rqnppeXOft6UOxWy7qqqfLWNxl6ep2BP3kXR+bOmTPl5C8fpe+dgII4+Z9flCKKr9nUPwXDq0sM6aW4yx0Yl+sMU6vIIeyMoNQzrc4tKhkktoIrwl7yAmr69twTYJaVL9bniryol+VFXVoU1IYkFMLP3ehqDd7RJqkaht27XSAaKyNLYQNGeWl4uMlaN+ndq04tj3hReZKz9Vf74yTYyebaXH/Sn3YsIqsGKMjY1oB1vQVhCR9TlXMpWHW2Rf7E+Nt/JgBOHVGk3f4rrebZnwdwm4WGh6u/TZzx6C9iR0q5Gi7ZaQD9P4LDQC6g+tbzhLfHJCz0x2yERj5poDZy3Pd2IZF2+nTayxcRFFaMF29WsmtqA2ZLG/IZxCfRxgGN+F4NI1BJ1VPZK7uhaiLL5VUpCMXqiEbYe2JwN2ZX/axllnpAr7hPe16vP9KO81xJ4Va2zaiKVptXrpMiT7PmNCHsK+4v21FsEVI7dRXxgTVx6jp8ZouyZV2yGLWzWKu/rjQvfYruu+SGM8dRjldzWN3ZpWZjATxBobJ8mPxffkPYJUGQ0SXDC0HgRsF6UdxETbVqSBhudVSwsC0tYmLYz7k8nkEMLXxZJGmaptjE3bIpFVX+eKljVy9EemVm3hWZnsi/uJ76vt2ZK96oBsSHAq2LR4H6Gla1lRxsaHdQstElbfIk6KzyB0QG81TORKta9Y2DbVyWpR9QWM+TS5rmAcdbrIodLbyuhQusix3L60eZnoN/tqu0UbmWOBHWAsviABruRxmpCLshF/pWO5DO+p7su18K8N3l/b81XnSKsDINbY+LIuofUBwZx76yhbM2Tg3TnQK5AaODHYCVyL9dTgOrcJODnxbQbieWCROdPiTNm2a3Ef6sICbnlb1Vjqz7Gn53aa+L5cz7cKjVwPqLcWa2y8iB7y4EHKAnqfBJgE5KEWLUbPUnubWl3XFrdz21vW9tuhtehtQitV27b7ujSFc0D427Y+S/1RYqFMfXnr204LJiO47fka78sDV37qtYg/Nl6sQ9N6xQIrGqcW+4BEt2uFuK5db9krbDVtdrMlLbDFO6TbZtbVtm27dGTRJKa6sFe2f/pvXOKzJGPWomVZje6O7wjP1J0oYxOiBa5D02IiQQ+6qqorHxdzS9BhyBbqrgqEI7bGdlxZSFS17dqUbc8dNiRrnqYm3EtLPf85XjC255TyvqYdIt2vWzQ3VWDGGhtvcvEeMt3x3VKEllZu08pCo9pDqkqkbDs4utvxnSPEJcl/I8uilAUb1zFmtoBdq8YJIedrz4o1Nt6w0Bo+LhVfFWhBUc0eC8y7SoTDjmH8/cRtd6nW2jW2TS7KpGPWkuVge6lZtb6Wvur11mKNjTcstDLBEVdlRTluzIY6IWK8tdXrQ85fdG1fTb+fpO0OW+RVuES8lfoMUo1ZUBQ85k2bQLRu0UN+y4JpbLxhm1Y+jLCoLn2y36HeT1zF3mQbHY4Ki1bVtCWGZ6WyMh3abvWGBXKttdnIA3FXqf4a8b5sTCyf0zhctgTf+o5TkrERLLSyooSKf4aIdjUiWzd86iftmFC9US4jrWkCrVLVVM+vexlRu1m17a6F7Gy1zc4NAZ6yfyeWigkmVr0v10vpo34jmdka8uHRnv77qcdmCRZaGWAxiu6vYC9otEkRas/yMVbPLQuLNMZGlh5puQebATZ62ytWa7XVNjvRt0t4lmeWNlPclyuEQyDIeKoEtrqOAZMhCiGllWONjTcstPIgZi34OXIH7+iwWH3fsteWa+m3/vDs6wny5UjjO0jcdpc4Jklj0dLKqqp+h4YinRdyrE2aRN/3JfE5sVyNxg/RtGONjTdsiM+DWKdKm1zIoYvV9y0by3C9bWgrRdudD2aA1mqzw8gt/chgw9Hp875CqJQId5cncqn/EcfGGxZaeRBD05paXMihi9XX7nPZEo0fQh9tr3owQ0heoG1sU9yX60RyH/RqpV1KK8cYG29YaOVBteKEPkfJEdN2z3uxhhzIKfMfPfrWJhSWItFjtx3joFH0sfJ8RsZ+JbgvV9WOtgKS8iWnb9WCnTAxxiYEFloZgFIwFcqgHEOAtbmFZYkPincxHjjRYbEGhUbAO3Ro6ataF8pWiqSx1YyK3LZLe/COO/KssNG4/t7TfckXgWxHnRuyCOCBRXPq5DmOMTa+bP3X//x8G3D9czpqS/8QB576nmDzD9NBqjgF52mP/YjRhrWdWFhirJIckGk4fn8BCri5vqu+9Zf6ZwiE9T6JJWXbXVGyBuRLYQ6vrffv5nhfMYgxNi7Ye5g5Kxyu2YXORt224ExM2E7F31K23RUImJWiw3O8rxjEGBsXG7E9pHMWoam9yqA7Q8aaZqJqfF1SjhgmFoPWtHAo7BP8y/XYsiHhEkYvEQApcEbe/SFsVZjNY7CaFg6FvYEdjAVWehaHeuKXQo+JYpgoDFXT8jXYM2E0AcLoKLR4WwqKujEdbf/FbFxGd1QwecAhD4yK7h53sZuJbcvkPIiZFsVkRiyhdYMDK4bCv4UQfAqQBmxUhx6Ca45I6rXatIq6UUMG1D7HSotiMiTK9hAHVTwp6oa8dxdCiK8yfdh0zuJjU5wY8yfkhq+q6gDxWno0/TVc2UEHESRE1fTOlRizhdAq6qZEuV/1OvUYr2o2Li/F8lbzGoGYcgwaXDsVfwnMM02ro3aa2bhM5u5nItu0IAz2irohb96zjAzkdM7iRcog0E0CGtRdpQiEOqxUrC8htiRcl6alF9ebFHVzPRuXppxN/aRlElLHRd3sQhDqISKy9AsLrYSECq0dn4tm4/JC0bq+WfM90lbwyWxcvvO8fi9xf4wo4Rt5ce9PRaOom39m0q93ygG/C62IhE5RN7Je1TZpQvTZbFw2Rd1cKRrTMWlCRd2cKQKslCcwK+cS0ncPIKDeKuVVhHZs1p2mVtSNNZugqBuaUw/TDMdGQccL3rTdUKjQeoQH8KRtiwUh8RBpMTTJvux5dIO2gkXd7KCfX6fvmhES8I/W9NuDoqgbAcElt4fXyv9KwVIqn6tbWflZY9C6lq6j7SBpYmjPFHxbklCcjctzU/Q6XkavOSzHCzIx7bSdi9ple0j2ql+KuvE6KRpCYycwt3AVgraCioaz7jAK6oOvNvgp8x8SWJoR/qSoGz1UI+QQiVDUreRd7Bq0PBJal2q4Ba0PxBSuRYMfGDc+BzmvYtP6jjQZsl8p6roVEiJF3aT22AVtBYu6eQgNp28tcAk8LLa5+dPmIUwW9oAt5yE0Nfk724rz4kC7/hWnmMVj1ZAHUnl/KOrmNbaNTkiYBNiWQniP6hEPfdonFZT6LIT4KQeBxXRC9Rzen41LqkJxX/lsv6ibZNoWCa7ZuDzE754qpWb2YQdjEhHLe0h2oF+LunmOrVmriheJoW4FmdUxFTfUhdSRoX7TPgRMmyZ2p8lBAEmtbo7PVKM7CcxzbFdZWPVA7Ih4EgY32HalhraCewEC66GSq8gMGNivVAEhz/HTvXemswNfFnVzq/3NePYjrvtdEYam637HdVKITmUsF5OGz7G1irlForZ+KuomNNQghG997GiiH68gG8+HhSm41BSDZgouPVX+dop2VOF5lUM+5qbzObwaKbZMFJ/1oKibFEGdPnar1FvBN/CecnR9zyCCfalsL9mYPHpC3j0fwUJxWsZ67mTPghAbXIG+TeAzsj9BqPwdW66YkKH+aVE3N4jX6oXEW8H30PQesMAaDKo25PI6+l7HrJGFTQuePVrs/xBC/Ba5SzK26wU0oCQk9gqS0f857GicbD0QkHuoGt1dpXdUO9c+vstkxpIhnrSH2bikLeO3WKgxoYjvd8hNTMHjRLarhdG/R88owzAGtm5v7YfxQCt6hkDS2LyBof5GhJ/GE+NEHx9+80lZGhJKJYP5bFx+sSn3tSkUdfMWHsjjT30sbDjjtJSSMxcJPHAytuv7DCPBP0BYZbkNREwQTe5T5LyZrrlL/KWkX+Wzl7DbcGVPZrB4BZcibOFBouTn75ABn0voQN8Bsn1S6rlxqYBgnThCCjqB6gy7OWoiIfecanw+BYIi4rXk55gn4HyZQTrNG1SF2Ii4K1XDEn8ukm3EJvWlYZWJPHAnMY5WT0TIPacan42nU0Q8QiQoaPPHDRggmbf4YFMEFsNsMk5DvA9IlL7ouQ5VDEP8BwSHXsTvXloCbFp3Bl2t4J3kXAZZIi1mpMQpXWHbYtXKoLlNtBxAWWDvD0Me4Cly9E7wnVL/m9L2S/y9QmrOLiLN9TSdhTPBUITvvC2IFOM40u7hEv2ReYb0t5fy3pTvfvS5654Nv+san7eIxG+0Z7LUlqHkc4PrroU2T6DVUZ+v5Na6y3PPgZVzD8n7R1qKEOJf0FqGAGmIO0MUWF3A4pWeQprUW4rAGkH4nCuVEnaxIF3IcsNf4HuVnPwQJFJgHOD35ILbRR31LaVCwpmhHpbAglp8H9fPsfC2FIE1wbbxANcctPRdxm/dVSRV+nKAxf1z2/d1Wu75IzyuLWWJG/TrHGO0EK5K/6dK/wVyK3WBOEKE/5YisLo+97UTLWEaNYP2YMiOHd8VC7Jb/fdsXD7meKuFtjTCxL1Li0Gy7yUqchqDK/EG34fwmeN7l7ZFqkLCUr0O/z032He2VY2nhSMsXllt9NojVecMC3mR+oPvVwgsNSVb9wbK3sixPcUYqc/jzJBqJF8c+gvgWtNkOz33XIha5UFJCdrLzN5FGuC/YLdqrUH9CSFrneuGbfn/jYZiLO4pKoYGL276Dm1ZKWYMFRK2DdulOXL8fGiw2Iw12g2/L8vNLB1AgXszCdE+MXkTp3KMbP2H4Jka+q6PY6fnngtJTpiGQfsxKpU+W2PddT6Fx40UFCQ8Qr97gO3FGYRFqw1J/GVr28aCo23eIWw8nYHdboS+jGS1BUeJmLbigNM118Zq0y5l/88sgrothGKV5752kh6LD2P5A9TIvui5uP+PMLSzR7Cdg9BYIWxdpH3kztBPGoArfgp2K3qLHwZoUb79uTtYAkLrBHap+5bL24TCbsZhFSpWR4wnwc89B3o5Fh+R5Tuwd6XmDbyLGxNzlRC5MFeyYUDDuvJoRz89Rz8lemWwiMk2s4u2Tf2darWyFij9kWMjtTW9j2vbQinb8659iPLc10UvQkt8bO9KUQJH8oJLxviDyX8JLWlhvCUvFcIOjNDCpr9LL5ViY1G1EymYSsNnI+V7k8CA12t9saIv+sGq0xYtQhrcF/epRKk3ioH6Gr85krXf4cUzeTtN9+y6D99rTZzjFKDF9pD6ZxiLJXyfO23lZTpYTvQmtCRaCZyoIRKfoGZFNo1b7Z+XMVoC79O52pZ0kTu+Jo3Cfyglia/UrSG2f2q7I8Q5nWKx3GILt1TMr4U7bxna/EPpz1ul/yQEnQUB0b9jHOx6q/TnylBM8Bi/IUsrn5gKAJruueX3va61fP8SY1Eq/X/rIazl97s89yxYObh0VToeoW8MLmUYZvPpXdPSQYAn2bu+5/nGMEwba9e0VDwOoci6ZAzDMOnJSmhJLCc/ex3DzzDMZpOl0JIgAXov4VFkDMMMjKyFFsMwjM7aDfEMwzAhsNBiGGZQsNBiGGZQsNBiGGZQsNBiGGZQsNBiGGZQsNBiGGY4CCH+H7/UbKzZa7stAAAAAElFTkSuQmCC”],”alignment”:”center”,”helpTip”:null}},”item-121″:{“id”:121,”type”:”Button”,”parentId”:123,”style”:{“enabled”:true,”varName”:”btnCancel”,”text”:”Cancel”,”justify”:”center”,”preferredSize”:[66,0],”alignment”:null,”helpTip”:null}},”item-122″:{“id”:122,”type”:”Button”,”parentId”:123,”style”:{“enabled”:true,”varName”:”btnLetItShine”,”text”:”Let it shine”,”justify”:”center”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null}},”item-123″:{“id”:123,”type”:”Group”,”parentId”:0,”style”:{“enabled”:true,”varName”:”grpButtons”,”preferredSize”:[360,0],”margins”:0,”orientation”:”row”,”spacing”:10,”alignChildren”:[“right”,”center”],”alignment”:null}},”item-124″:{“id”:124,”type”:”Panel”,”parentId”:0,”style”:{“enabled”:true,”varName”:”pnlApplicationType”,”creationProps”:{“borderStyle”:”etched”,”su1PanelCoordinates”:false},”text”:”Application Type”,”preferredSize”:[407,0],”margins”:[11,10,9,10],”orientation”:”row”,”spacing”:46,”alignChildren”:[“center”,”top”],”alignment”:null},”collapsed”:true},”item-126″:{“id”:126,”type”:”RadioButton”,”parentId”:128,”style”:{“enabled”:true,”varName”:”rboAppTypeAlaPantoneBridge”,”text”:”Ala Pantone Bridge! “,”preferredSize”:[150,0],”alignment”:null,”helpTip”:”Builds a Pantone Bridge format book”,”checked”:false}},”item-127″:{“id”:127,”type”:”RadioButton”,”parentId”:128,”style”:{“enabled”:true,”varName”:”rboAppTypeCustom”,”text”:”Custom”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null,”checked”:false}},”item-128″:{“id”:128,”type”:”Group”,”parentId”:124,”style”:{“enabled”:true,”varName”:”grpApplicationType”,”preferredSize”:[245,33],”margins”:8,”orientation”:”row”,”spacing”:10,”alignChildren”:[“left”,”center”],”alignment”:null}},”item-129″:{“id”:129,”type”:”Panel”,”parentId”:0,”style”:{“enabled”:true,”varName”:”pnlPalette”,”creationProps”:{“borderStyle”:”etched”,”su1PanelCoordinates”:false},”text”:”Palette”,”preferredSize”:[407,0],”margins”:[11,10,9,10],”orientation”:”column”,”spacing”:8,”alignChildren”:[“center”,”top”],”alignment”:null}},”item-130″:{“id”:130,”type”:”Group”,”parentId”:129,”style”:{“enabled”:true,”varName”:”pnlPaletteRadioButtons”,”preferredSize”:[0,0],”margins”:0,”orientation”:”row”,”spacing”:10,”alignChildren”:[“left”,”center”],”alignment”:null}},”item-131″:{“id”:131,”type”:”RadioButton”,”parentId”:130,”style”:{“enabled”:true,”varName”:”rboPaletteAutomatic”,”text”:”Automatic”,”preferredSize”:[84,0],”alignment”:null,”helpTip”:null,”checked”:false}},”item-132″:{“id”:132,”type”:”RadioButton”,”parentId”:130,”style”:{“enabled”:true,”varName”:”rboPaletteCustom”,”text”:”Custom”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null,”checked”:true}},”item-133″:{“id”:133,”type”:”Group”,”parentId”:17,”style”:{“enabled”:true,”varName”:”grpStartingBlackColumn”,”preferredSize”:[49,0],”margins”:0,”orientation”:”column”,”spacing”:3,”alignChildren”:[“left”,”center”],”alignment”:null}},”item-134″:{“id”:134,”type”:”StaticText”,”parentId”:133,”style”:{“enabled”:true,”varName”:”lblStartingBlack”,”creationProps”:{“truncate”:”none”,”multiline”:false,”scrolling”:false},”softWrap”:false,”text”:”Black”,”justify”:”left”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null}},”item-135″:{“id”:135,”type”:”EditText”,”parentId”:133,”style”:{“enabled”:true,”varName”:”txtStartingBlack”,”creationProps”:{“noecho”:false,”readonly”:false,”multiline”:false,”scrollable”:false,”borderless”:false,”enterKeySignalsOnChange”:false},”softWrap”:false,”text”:””,”justify”:”left”,”preferredSize”:[36,0],”alignment”:null,”helpTip”:”Enter a number between 0 and 100″}},”item-136″:{“id”:136,”type”:”Group”,”parentId”:31,”style”:{“enabled”:true,”varName”:”grpEndingBlackColumn”,”preferredSize”:[49,0],”margins”:0,”orientation”:”column”,”spacing”:3,”alignChildren”:[“left”,”center”],”alignment”:null}},”item-137″:{“id”:137,”type”:”StaticText”,”parentId”:136,”style”:{“enabled”:true,”varName”:”lblEndingBlack”,”creationProps”:{“truncate”:”none”,”multiline”:false,”scrolling”:false},”softWrap”:false,”text”:”Black”,”justify”:”left”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null}},”item-138″:{“id”:138,”type”:”EditText”,”parentId”:136,”style”:{“enabled”:true,”varName”:”txtEndingBlack”,”creationProps”:{“noecho”:false,”readonly”:false,”multiline”:false,”scrollable”:false,”borderless”:false,”enterKeySignalsOnChange”:false},”softWrap”:false,”text”:””,”justify”:”left”,”preferredSize”:[36,0],”alignment”:null,”helpTip”:”Enter a number between 0 and 100″}},”item-139″:{“id”:139,”type”:”Group”,”parentId”:92,”style”:{“enabled”:true,”varName”:”grpSwatchToSwatchProgressionBlack”,”preferredSize”:[49,0],”margins”:0,”orientation”:”column”,”spacing”:3,”alignChildren”:[“left”,”center”],”alignment”:null}},”item-140″:{“id”:140,”type”:”StaticText”,”parentId”:139,”style”:{“enabled”:true,”varName”:”lblSwatchToSwatchProgressionBlack”,”creationProps”:{“truncate”:”none”,”multiline”:false,”scrolling”:false},”softWrap”:false,”text”:”Black”,”justify”:”left”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null}},”item-141″:{“id”:141,”type”:”EditText”,”parentId”:139,”style”:{“enabled”:true,”varName”:”txtSwatchToSwatchProgressionBlack”,”creationProps”:{“noecho”:false,”readonly”:false,”multiline”:false,”scrollable”:false,”borderless”:false,”enterKeySignalsOnChange”:false},”softWrap”:false,”text”:””,”justify”:”left”,”preferredSize”:[36,0],”alignment”:null,”helpTip”:”Enter a number between 0 and 100″}},”item-142″:{“id”:142,”type”:”Group”,”parentId”:17,”style”:{“enabled”:true,”varName”:”grpStartingSpecialtyColumn”,”preferredSize”:[49,0],”margins”:0,”orientation”:”column”,”spacing”:3,”alignChildren”:[“center”,”center”],”alignment”:null}},”item-143″:{“id”:143,”type”:”StaticText”,”parentId”:142,”style”:{“enabled”:true,”varName”:”lblStartingSpecialty”,”creationProps”:{“truncate”:”none”,”multiline”:false,”scrolling”:false},”softWrap”:false,”text”:”Specialty”,”justify”:”left”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null}},”item-144″:{“id”:144,”type”:”EditText”,”parentId”:142,”style”:{“enabled”:true,”varName”:”txtStartingSpecialty”,”creationProps”:{“noecho”:false,”readonly”:false,”multiline”:false,”scrollable”:false,”borderless”:false,”enterKeySignalsOnChange”:false},”softWrap”:false,”text”:””,”justify”:”left”,”preferredSize”:[36,0],”alignment”:null,”helpTip”:”Enter a number between 0 and 100″}},”item-145″:{“id”:145,”type”:”Group”,”parentId”:31,”style”:{“enabled”:true,”varName”:”grpEndingSpecialtyColumn”,”preferredSize”:[49,0],”margins”:0,”orientation”:”column”,”spacing”:3,”alignChildren”:[“center”,”center”],”alignment”:null}},”item-146″:{“id”:146,”type”:”StaticText”,”parentId”:145,”style”:{“enabled”:true,”varName”:”lblEndingSpecialty”,”creationProps”:{“truncate”:”none”,”multiline”:false,”scrolling”:false},”softWrap”:false,”text”:”Specialty”,”justify”:”left”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null}},”item-147″:{“id”:147,”type”:”EditText”,”parentId”:145,”style”:{“enabled”:true,”varName”:”txtEndingSpecialty”,”creationProps”:{“noecho”:false,”readonly”:false,”multiline”:false,”scrollable”:false,”borderless”:false,”enterKeySignalsOnChange”:false},”softWrap”:false,”text”:””,”justify”:”left”,”preferredSize”:[36,0],”alignment”:null,”helpTip”:”Enter a number between 0 and 100″}},”item-148″:{“id”:148,”type”:”Group”,”parentId”:79,”style”:{“enabled”:true,”varName”:”grpSwatchShapeDiameter”,”preferredSize”:[0,0],”margins”:0,”orientation”:”row”,”spacing”:4,”alignChildren”:[“left”,”center”],”alignment”:null}},”item-149″:{“id”:149,”type”:”StaticText”,”parentId”:148,”style”:{“enabled”:true,”varName”:”lblSwatchShapeDiameter”,”creationProps”:{“truncate”:”none”,”multiline”:false,”scrolling”:false},”softWrap”:false,”text”:”Diameter:”,”justify”:”left”,”preferredSize”:[0,0],”alignment”:null,”helpTip”:null}},”item-150″:{“id”:150,”type”:”EditText”,”parentId”:148,”style”:{“enabled”:true,”varName”:”txtCustomSwatchShapeDiameter”,”creationProps”:{“noecho”:false,”readonly”:false,”multiline”:false,”scrollable”:false,”borderless”:false,”enterKeySignalsOnChange”:false},”softWrap”:false,”text”:””,”justify”:”left”,”preferredSize”:[25,0],”alignment”:null,”helpTip”:null}}},”order”:[0,120,124,128,126,127,129,130,131,132,90,81,89,44,58,59,60,45,55,57,62,61,46,48,47,49,51,50,74,75,77,76,78,82,83,84,85,86,87,88,79,80,148,149,150,16,17,18,19,20,21,22,23,24,25,26,133,134,135,27,28,29,142,143,144,30,31,32,33,34,35,36,37,38,39,40,136,137,138,41,42,43,145,146,147,91,105,106,107,92,93,94,95,96,97,108,99,100,101,139,140,141,102,103,98,123,121,122],”settings”:{“importJSON”:true,”indentSize”:false,”cepExport”:false,”includeCSSJS”:true,”showDialog”:false,”functionWrapper”:false,”itemReferenceList”:”none”}}
      */
      // ==================================================================================================================================================================
      //
      // MAINWINDOW
      //
      // ==================================================================================================================================================================
      var mainWindow = new Window(“palette”);
      mainWindow.text = “Shaareable Apps ~ Let it shine”;
      mainWindow.orientation = “column”;
      mainWindow.alignChildren = [“left”,”top”];
      mainWindow.spacing = 10;
      mainWindow.margins = 16;

      var imgLogo_imgString = “%C2%89PNG%0D%0A%1A%0A%00%00%00%0DIHDR%00%00%01-%00%00%00e%08%06%00%00%00%18%C2%9F%C2%B5%5B%00%00%00%09pHYs%00%00%0B%12%00%00%0B%12%01%C3%92%C3%9D~%C3%BC%00%00%15%C3%9BIDATx%C2%9C%C3%AD%C2%9D%C2%BFo%1C%C2%B7%C2%B6%C3%87%C2%A9%20%C2%BD%C2%AF%C3%92%C2%BE%01%C2%A2%2B%C3%BF%01%C3%91%C2%83%C3%94%C3%87%17%18%C2%95%17%C3%B1-%C2%A4%C3%96N%C2%A3)%C3%A3%C3%A6%C3%8D%C2%AA%C2%B3%C3%9DI%C3%9B%3C%C2%A5%5C5qZ%C2%AB%C2%88o%C2%9D%01b%C3%B7%16%C2%A2%C3%BC%01%C3%99g%03%5Bg%C2%AF%C3%BF%02%3D%1C%C3%A5%C3%8B%0D%C3%8D%259%C3%A4%2C9%C3%8BY%C2%9F%0F%60%C3%9C%C3%9C%C3%95%2C%C2%97%C3%83!%C3%8F%1C%C2%9E_%C3%9C%C2%BA%C2%BD%C2%BD%159R%C3%94%C3%8D%C2%8E%10%C3%A2B%08%C2%B1’%C2%84×2%1B%C2%97%C2%AF%C2%B2%C3%AC(%C3%830%C2%BD%C2%92%C2%9D%C3%90*%C3%AA%C3%A6o%24%C2%A4%C3%B0%C3%AF%C2%9E%C3%B2%C2%A77%10%5E7k%C3%AC%1E%C3%830k%26%2B%C2%A1U%C3%94%C3%8Dc!%C3%843!%C3%84%C2%97%C2%8E%C3%8B~%C2%84%C3%B0%C3%BAO%C2%8F%5Dc%18%26%13%3E%C3%8B%C3%ACA%C3%BC%C3%90%22%C2%B0%C2%88GB%C2%88wE%C3%9D%3C%C3%AB%C2%A9O%0C%C3%83dDn%C2%9AVhg%C3%9E%0B!%1E%C3%8F%C3%86%C3%A5%C3%ABD%5Db%18%263r%C3%93%C2%B4B!%C2%AD%C3%AC%C2%97%C2%A2n%5E%C3%83p%C3%8F0%C3%8C%C2%86%C3%93%C2%BB%C3%90J%24%5C%C2%BE%16B%C3%BC_Q7%170%C3%A43%0C%C2%B3%C2%A1%C3%B4%26%C2%B4HX%C2%91F%24%C2%84x%C2%91%C3%B0g%C2%BE%C2%83%C2%BD%C3%ABI%C3%82%C3%9F%60%18f%C2%8D%24%17Z%C2%A4%C3%B9%C2%90%06D%C2%9A%104%C2%A2%C3%94P%C2%98%C3%84%C3%BF%16usS%C3%94%C3%8D%03%C2%9E%5C%0C%C2%B3Y%24%15Z%C3%90x%C3%9EA%03%C3%AA%C2%9B%C2%AF%60%C3%AFz%C3%85%C3%B6.%C2%86%C3%99%1C%3EOq’%C3%90p%5Ex%C2%84%2F%C3%B4%C3%817%C3%B4%C2%AF%C2%A8%C2%9B%C3%A7%14a%C3%8F%C3%B1%5D%0C3l%C2%A2jZ%C2%B0%5BQ%C2%BA%C3%8D%2F%C2%99%08%2C%C2%95%C2%A7B%C2%88%1B%04%C2%B02%0C3P%C2%A2hZJ%C3%AA%C3%8D%C3%93%C3%8C%C2%87%C2%81%04%C3%A9%0F2%C3%B2%C2%9E%C3%A3%C2%BB%18fx%C2%AC%C2%ACiA%00%C2%BC%1B%C2%80%C3%80R%C3%B9%1A%C3%B6%C2%AE%17l%C3%AFb%C2%98a%C3%91Yh%C2%91%C3%9D%C2%8A%3CtH%C2%BD%C2%B9%C3%A7%C3%B1%C2%95%1Cy%C2%84-%23%C2%A7%041%C3%8C%40%08%16Z%C2%B0%5B%C2%BD%C2%80%C3%9D%C3%AA%C2%AB5%C3%9D%C3%A6%C3%BB%C2%88m%C2%91%C3%80%7DZ%C3%94%0D%C3%85w%3D%C2%8C%C3%98.%C3%830%09%C3%B0%C2%B6i9J%C3%86%C2%AC%03%12%C2%9A%C2%AFQo%2B%C2%96%C3%A0%24%7B%C3%97OE%C3%9D%0C%C2%AA%04NUU%C2%BBB%C2%88%5D%C3%AD%C3%A3%C3%AB%C3%89d2_S%C2%97%18%26)%5EB%0B%1A%C3%88EN%1EA%18%C3%91%C3%B7%10%0B%C3%B6%2C%C2%A2%20%25%7B%C3%97%C2%AFE%C3%9Dd%5B%02%C2%A7%C2%AA%C2%AA%7D!%C3%84%C2%89%10%C2%A24%08%2Cy%C3%8D%C2%94%C2%84%C2%97%10%C2%A2%11B%5C%C2%B1%10c6%05g%C2%95%C2%87%C2%A2n%C3%B6%20%C2%ACbF%C2%B2%C2%BF%C2%99%C2%8DKc%C2%A4z%40%C2%95%C2%87%C3%A7%C2%B3q%C2%B9%C2%B0C)UN%C2%BF%C2%89%C3%96%C3%8B%3F%C3%B9%00%2F%C3%A3E%C3%A4v%3B%01%C2%ADj%02a%15%C3%8A%C2%A5%10%C3%A2%7C2%C2%99Ls%C2%B8%17%C2%86%C3%A9%C2%8AQ%C3%93%C3%82V%C3%B0%02%C2%86%C3%AA%C3%98D%0F3%C2%98%C2%8DK%C3%B2%5E%3EL%10%C3%94*S%C2%82%C2%9E%C2%AC%C2%BB%04NUU%23!%04%C3%BD%C3%9B%C3%AE%C3%98%C3%84%094%C2%AFK%C2%AD%C3%9D3!%C3%84%C2%BE%C3%A1z%C3%9Ab%C2%9Ev%C3%BC-%26%03%C2%AA%C2%AA%C2%A2%C2%B9%C3%B2%C3%92%C3%92%13z%C2%815%C2%A1%C2%BD%C3%84%7C%19%19%C3%BE4%C2%9DL%26%C3%B7%C3%BB%C2%B8%C3%AB%25%C2%A1%05OZ%0A%C2%BBUr%5B%11%09%15h%C2%87%C2%B1c%C3%86d%09%C2%9C7%10%5E%C3%AF%22%C2%B6%C3%BD%11%C3%90%C2%A6%C2%8E%20%60%C3%B6!%C2%A4%C2%8El%C3%9B%C3%80%40L%C2%93%C3%944%01%C2%85%C3%A5ZfX%1C9%C2%B4%C3%B2%C2%AA%C3%A3%C2%9D%C3%98%C3%9A%C3%ABm%C2%BE%2C%C2%84V%C3%82%C3%94%C2%9B%0F%10V)%C2%AB%3B%2C%C2%80%0D%C3%AA%19%3C%C2%9C%2F%22ome%09%C2%9C%C3%AF%C2%B1mLa%C3%AF%C2%A2%C2%89v%C2%96%C2%A0%C3%9D%C2%A9%C2%BE5%C2%AC%C2%AA%C3%8A%C2%B5%C3%8Dd%C2%A15%7CL%1A%C2%B4%C2%80%16%1Dl%26%C2%80%C3%A6fm%C2%B3%C2%AF%C3%91%C3%BAL)%19%C2%93%22%C3%B5%C2%86%16%C3%B7N_%02K%C2%85%C2%B4!%C3%98%C3%8E%C2%BE%C2%85%C3%A0%C2%8C%C2%89%2C%C2%81%C2%93%22%25%C3%886)V%C3%85%24%C2%84l%C2%BF5%C2%9FL%26%C2%BDMB%26%19%C2%B1%C2%B5%C2%A2%2C%5Er%C2%9F%C2%A3dLl%C2%82%C2%B6%C2%82%C2%8A%C3%81%3F%3A%240%C2%91%0F%C3%B9%2Cr%C2%B5%C2%89%7BH%09%C3%9AQ%C2%9D%02%11%C2%B0M%C2%8C9%C3%BE%C3%89m%C3%A2%14v%09%C3%9DFUB%18%C3%ADCk%C2%93%C2%98%26%C3%95%C3%9AU%7D%26%0D%C2%96P%18I%C3%97%17%C2%92m%C2%BEt%C3%92%C3%9C%C2%BA%12%C2%BB%C3%8AC%C3%90V%10%06%C3%BF%C3%98%C3%82d%09l%C3%A3%C2%9E(%5B%C3%86u%05%C3%85%3AA(%C2%83nh%C2%A7%09v%C2%85%C3%BF%3ES%3E%3B4%C2%851%C3%80%C2%B8z’t0qG0%C3%82%C2%87%08-%C3%96%C2%B2%C2%86O%0A%C2%AD(%C2%8B%C2%97%5CL%C2%A1%15d%C3%A7%C3%81%C3%96%C3%AA%C2%A2%C3%8F%40Uh~)b%C2%BB%C2%A2%C2%80-%C3%99%C2%96%C3%9E%16%3C%C2%87%C2%AA%C2%9D%C3%AB%C3%94’%C3%AE%0Ao%C2%BF%C2%AA%C2%AA%C2%AAs%C3%BD%C3%BA%C2%AA%C2%AA%C2%8E%C3%AC%C3%9F%5C%08If%C2%B8X%05L%C2%97%C2%98%C2%BDD%C2%9A%5B’b%08%C2%AD%C2%AE%5B%C3%81%3E%C2%AA%C2%98%1A%C2%A1%C2%B8%2BE%C3%AB%C2%8A%1D%C3%9B%15%05%18%3DK%25%C2%88tA%C2%A8%C2%AB%C3%9A%C2%A2%C2%BA%C3%9B%C3%ACYK%06%7Bf%C2%90l%C2%A4%3DK%C2%AC(%C2%B4%C2%B2%C3%9B%0A%C3%82%03z%C2%81~9c%C2%AA%C2%A0%11%C2%A6%C2%88%C3%AD%C2%8A%C3%85%C3%8B%C2%8EA%C2%A4%C2%BE%C2%B0%3DkC%C2%B1%C2%98%19%24%5D%C2%B5%22%C2%97’%C2%B2%C3%97l%C2%8B%C2%AEU%1E%C2%82%C2%BC%C2%82J%C3%B9%C2%9A%3E%C3%8A.%7F%C2%A5%C2%94%C2%9Di%3D%C2%99%C2%87%C2%84%C3%9Bl%5CRD%C3%BD%C3%B3%1E%C3%BA%16%C2%82U%60a%C2%BB%C3%98%C2%99%5C%5C%C3%97L2%C2%ACs%C2%A7K%40)%C2%B0%C2%99%13z%7F%C3%89%C2%85jZ%C2%BF!%C2%B8r%08%5B%C3%81G%C3%90%C2%A4%C2%BC%C2%B4A%C3%B2%00%26%C2%8A%C3%AD%C3%AA%C3%8A%C3%94aC8%C2%AB%C2%AA%C2%8A%26%C3%A0y%C3%87%C2%B6%7BQ%C3%B5%15%C3%A1%18%3D%C2%84%22e%C3%9B%C3%AB%24%C3%92%7D%C3%99%5EH%C2%9Dl%C2%95-%C2%9A%5B%C3%B6B%C3%AB%C2%95%C2%8F%C3%80%C3%AA%C3%8B%2B%C3%A8%C3%81%3D%C2%A5Ri%C2%AB%C3%9D%C2%8Db%C2%BB%C2%90%11%C3%B0%C3%8B%C2%9A%C3%BB-%C2%A0%C3%B1%C2%B8%C2%A2%C3%A0%C3%8F%10%C3%9Ep%C3%9Aar%C2%BB%C2%BC%C2%86%C3%B3%C2%AA%C2%AA%C2%A4%1D%C2%AD%C3%84d%C2%9Dc%C3%82%7B9%00%60%C3%A4%1F%C2%A9%C2%8B%C2%A7%C2%AA%C2%AA9B4%C3%8E%C2%AB%C2%AAziys%C2%9F%C2%B7%C2%A5%0E%C3%85l%C2%BB%C2%AA%C2%AA%C2%9F-cq%C2%97%C2%A7%C2%A9%C3%98%13%C3%B7%C2%91t~l%C3%A9%C2%93%3E%5EB%C3%B1%C3%BA%5E%C3%B9%C3%98%08%23%C2%8F%C2%99%C3%B5%C3%B9B(%C2%AA%C3%BD%C2%9DC%C3%B0%5C%3A%C2%B4%C2%B0%C3%8E%C2%9A%5B%C2%8C%C2%B1%C3%91%C2%89~%C2%B0%C3%85%3A%C2%BC%C2%82%1E%C3%88%C3%8A%0DC%3A%C3%9C%C3%A2%C3%92%C2%A1%C2%92Kh%22%C2%BC%25%C3%AF%20%26%C2%AF%C2%AFm%C3%816%09iR%C3%BDnx%C2%AB%C3%8A%C2%89~TU%C3%95%C2%A1MHbAL%2C%C3%BD%C3%9E%C2%86%C2%A0%C3%9D%C3%AD%12j%C2%91%C2%A8m%C3%9B%C2%B5%C3%92%01%C2%A2%C2%B24%C2%B6%104g%C2%96%C2%97%C2%8B%C2%8C%C2%95%C2%A3~%C2%9D%C3%9A%C2%B4%C3%A2%C3%98%C3%B7%C2%85%17%C2%99%2B%3FU%7F%C2%BE2M%C2%8C%C2%9Em%C2%A5%C3%87%C3%BD)%C3%B7b%C3%82*%C2%B0b%C2%8C%C2%8D%C2%8Dh%07%5B%C3%90V%10%C2%91%C3%B59W2%C2%95%C2%87%5Bd_%C3%ACO%C2%8D%C2%B7%C3%B2%60%04%C3%A1%C3%95%1AM%C3%9F%C3%A2%C2%BA%C3%9Em%C2%99%C3%B0w%09%C2%B8Xhz%C2%BB%C3%B4%C3%99%C3%8F%1E%C2%82%C3%B6%24t%C2%AB%C2%91%C2%A2%C3%AD%C2%96%C2%90%0F%C3%93%C3%B8%2C4%02%C3%AA%0F%C2%ADo8K%7CrB%C3%8FLv%C3%88Dc%C3%A6%C2%9A%03g-%C3%8Fwb%19%17o%C2%A7M%C2%AC%C2%B1q%11Eh%C3%81v%C3%B5k%26%C2%B6%C2%A06d%C2%B1%C2%BF!%C2%9CB%7D%1C%60%18%C3%9F%C2%85%C3%A0%C3%925%04%C2%9DU%3D%C2%92%C2%BB%C2%BA%16%C2%A2%2C%C2%BEUR%C2%90%C2%8C%5E%C2%A8%C2%84m%C2%87%C2%B6’%03ve%7F%C3%9A%C3%86Yg%C2%A4%0A%C3%BB%C2%84%C3%B7%C2%B5%C3%AA%C3%B3%C3%BD(%C3%AF5%C3%84%C2%9E%15kl%C3%9A%C2%88%C2%A5i%C2%B5z%C3%A92%24%C3%BB%3EcB%1E%C3%82%C2%BE%C3%A2%C3%BD%C2%B5%16%C3%81%15%23%C2%B7Q_%18%13W%1E%C2%A3%C2%A7%C3%86h%C2%BB%26U%C3%9B!%C2%8B%5B5%C2%8A%C2%BB%C3%BA%C3%A3B%C3%B7%C3%98%C2%AE%C3%AB%C2%BEHc%3Cu%18%C3%A5w5%C2%8D%C3%9D%C2%9AVf0%13%C3%84%1A%1B’%C3%89%C2%8F%C3%85%C3%B7%C3%A4%3D%C2%82T%19%0D%12%5C0%C2%B4%1E%04l%17%C2%A5%1D%C3%84D%C3%9BV%C2%A4%C2%81%C2%86%C3%A7UK%0B%02%C3%92%C3%96%26-%C2%8C%C3%BB%C2%93%C3%89%C3%A4%10%C3%82%C3%97%C3%85%C2%92F%C2%99%C2%AAm%C2%8CM%C3%9B%22%C2%91U_%C3%A7%C2%8A%C2%965r%C3%B4G%C2%A6Vm%C3%A1Y%C2%99%C3%AC%C2%8B%C3%BB%C2%89%C3%AF%C2%AB%C3%AD%C3%99%C2%92%C2%BD%C3%AA%C2%80lHp*%C3%98%C2%B4x%1F%C2%A1%C2%A5kYQ%C3%86%C3%86%C2%87u%0B-%12V%C3%9F%22N%C2%8A%C3%8F%20t%40o5L%C3%A4J%C2%B5%C2%AFX%C3%986%C3%95%C3%89jQ%C3%B5%05%C2%8C%C3%B94%C2%B9%C2%AE%60%1Cu%C2%BA%C3%88%C2%A1%C3%92%C3%9B%C3%8A%C3%A8P%C2%BA%C3%88%C2%B1%C3%9C%C2%BE%C2%B4y%C2%99%C3%A87%C3%BBj%C2%BBE%1B%C2%99c%C2%81%1D%60%2C%C2%BE%20%01%C2%AE%C3%A4q%C2%9A%C2%90%C2%8B%C2%B2%11%7F%C2%A5c%C2%B9%0C%C3%AF%C2%A9%C3%AE%C3%8B%C2%B5%C3%B0%C2%AF%0D%C3%9E_%C3%9B%C3%B3U%C3%A7H%C2%AB%03%20%C3%96%C3%98%C3%B8%C2%B2.%C2%A1%C3%B5%01%C3%81%C2%9C%7B%C3%AB(%5B3d%C3%A0%C3%9D9%C3%90%2B%C2%90%1A81%C3%98%09%5C%C2%8B%C3%B5%C3%94%C3%A0%3A%C2%B7%0989%C3%B1m%06%C3%A2y%60%C2%919%C3%93%C3%A2L%C3%99%C2%B6kq%1F%C3%AA%C3%82%02ny%5B%C3%95X%C3%AA%C3%8F%C2%B1%C2%A7%C3%A7v%C2%9A%C3%B8%C2%BE%5C%C3%8F%C2%B7%0A%C2%8D%5C%0F%C2%A8%C2%B7%16kl%C2%BC%C2%88%1E%C3%B2%C3%A0A%C3%8A%02z%C2%9F%04%C2%98%04%C3%A4%C2%A1%16-F%C3%8FR%7B%C2%9BZ%5D%C3%97%16%C2%B7s%C3%9B%5B%C3%96%C3%B6%C3%9B%C2%A1%C2%B5%C3%A8mB%2BU%C3%9B%C2%B6%C3%BB%C2%BA4%C2%85s%40%C3%B8%C3%9B%C2%B6%3EK%C3%BDQb%C2%A1L%7Dy%C3%AB%C3%9BN%0B%26%23%C2%B8%C3%AD%C3%B9%1A%C3%AF%C3%8B%03W~%C3%AA%C2%B5%C2%88%3F6%5E%C2%ACC%C3%93z%C3%85%02%2B%1A%C2%A7%16%C3%BB%C2%80D%C2%B7k%C2%85%C2%B8%C2%AE%5Do%C3%99%2Bl5mv%C2%B3%25-%C2%B0%C3%85%3B%C2%A4%C3%9Bf%C3%96%C3%95%C2%B6m%C2%BBtd%C3%91%24%C2%A6%C2%BA%C2%B0W%C2%B6%7F%C3%BAo%5C%C3%A2%C2%B3%24c%C3%96%C2%A2eY%C2%8D%C3%AE%C2%8E%C3%AF%08%C3%8F%C3%94%C2%9D(c%13%C2%A2%05%C2%AEC%C3%93b%22A%0F%C2%BA%C2%AA%C2%AA%2B%1F%17sK%C3%90a%C3%88%16%C3%AA%C2%AE%0A%C2%84%23%C2%B6%C3%86v%5CYHT%C2%B5%C3%AD%C3%9A%C2%94m%C3%8F%1D6%24k%C2%9E%C2%A6%26%C3%9CKK%3D%C3%BF9%5E0%C2%B6%C3%A7%C2%94%C3%B2%C2%BE%C2%A6%1D%22%C3%9D%C2%AF%5B47U%60%C3%86%1A%1Bor%C3%B1%1E2%C3%9D%C3%B1%C3%9DR%C2%84%C2%96Vn%C3%93%C3%8AB%C2%A3%C3%9AC%C2%AAJ%C2%A4l%3B8%C2%BA%C3%9B%C3%B1%C2%9D%23%C3%84%25%C3%89%7F%23%C3%8B%C2%A2%C2%94%05%1B%C3%971f%C2%B6%C2%80%5D%C2%AB%C3%86%09!%C3%A7k%C3%8F%C2%8A56%C3%9E%C2%B0%C3%90%1A%3E.%15_%15hAQ%C3%8D%1E%0B%C3%8C%C2%BBJ%C2%84%C3%83%C2%8Ea%C3%BC%C3%BD%C3%84mw%C2%A9%C3%96%C3%9A5%C2%B6M.%C3%8A%C2%A4c%C3%96%C2%92%C3%A5%60%7B%C2%A9Y%C2%B5%C2%BE%C2%96%C2%BE%C3%AA%C3%B5%C3%96b%C2%8D%C2%8D7%2C%C2%B42%C3%81%11WeE9n%C3%8C%C2%86%3A!b%C2%BC%C2%B5%C3%95%C3%ABC%C3%8E_tm_M%C2%BF%C2%9F%C2%A4%C3%AD%0E%5B%C3%A4U%C2%B8D%C2%BC%C2%95%C3%BA%0CR%C2%8DYP%14%3C%C3%A6M%C2%9B%40%C2%B4n%C3%91C~%C3%8B%C2%82il%C2%BCa%C2%9BV%3E%C2%8C%C2%B0%C2%A8.%7D%C2%B2%C3%9F%C2%A1%C3%9EO%5C%C3%85%C3%9Ed%1B%1D%C2%8E%0A%C2%8BV%C3%95%C2%B4%25%C2%86g%C2%A5%C2%B22%1D%C3%9An%C3%B5%C2%86%05r%C2%AD%C2%B5%C3%99%C3%88%03qW%C2%A9%C3%BE%1A%C3%B1%C2%BElL%2C%C2%9F%C3%938%5C%C2%B6%04%C3%9F%C3%BA%C2%8ES%C2%92%C2%B1%11%2C%C2%B4%C2%B2%C2%A2%C2%84%C2%8A%7F%C2%86%C2%88v5%22%5B7%7C%C3%AA’%C3%AD%C2%98P%C2%BDQ.%23%C2%ADi%02%C2%ADR%C3%95T%C3%8F%C2%AF%7B%19Q%C2%BBY%C2%B5%C3%AD%C2%AE%C2%85%C3%ACl%C2%B5%C3%8D%C3%8E%0D%01%C2%9E%C2%B2%7F’%C2%96%C2%8A%09%26V%C2%BD%2F%C3%97K%C3%A9%C2%A3~%23%C2%99%C3%99%1A%C3%B2%C3%A1%C3%91%C2%9E%C3%BE%C3%BB%C2%A9%C3%87f%09%16Z%19%601%C2%8A%C3%AE%C2%AF%60%2Fh%C2%B4I%11j%C3%8F%C3%B21V%C3%8F-%0B%C2%8B4%C3%86F%C2%96%1Ei%C2%B9%07%C2%9B%016z%C3%9B%2BVk%C2%B5%C3%956%3B%C3%91%C2%B7Kx%C2%96g%C2%966S%C3%9C%C2%97%2B%C2%84C%20%C3%88x%C2%AA%04%C2%B6%C2%BA%C2%8E%01%C2%93!%0A!%C2%A5%C2%95c%C2%8D%C2%8D7%2C%C2%B4%C3%B2%20f-%C3%B89r%07%C3%AF%C3%A8%C2%B0X%7D%C3%9F%C2%B2%C3%97%C2%96k%C3%A9%C2%B7%C3%BE%C3%B0%C3%AC%C3%AB%09%C3%B2%C3%A5H%C3%A3%3BH%C3%9Cv%C2%978%26Ic%C3%91%C3%92%C3%8A%C2%AA%C2%AA~%C2%87%C2%86%22%C2%9D%17r%C2%ACM%C2%9AD%C3%9F%C3%B7%25%C3%B19%C2%B1%5C%C2%8D%C3%86%0F%C3%91%C2%B4c%C2%8D%C2%8D7l%C2%88%C3%8F%C2%83X%C2%A7J%C2%9B%5C%C3%88%C2%A1%C2%8B%C3%95%C3%B7-%1B%C3%8Bp%C2%BDmh%2BE%C3%9B%C2%9D%0Ff%C2%80%C3%96j%C2%B3%C3%83%C3%88-%C3%BD%C3%88%60%C3%83%C3%91%C3%A9%C3%B3%C2%BEB%C2%A8%C2%94%08w%C2%97’r%C2%A9%C3%BF%11%C3%87%C3%86%1B%16Zy%10C%C3%93%C2%9AZ%5C%C3%88%C2%A1%C2%8B%C3%95%C3%97%C3%AEs%C3%99%12%C2%8D%1FB%1Fm%C2%AFz0CH%5E%C2%A0mlS%C3%9C%C2%97%C3%ABDr%1F%C3%B4j%C2%A5%5DJ%2B%C3%87%18%1BoXh%C3%A5A%C2%B5%C3%A2%C2%84%3EG%C3%89%11%C3%93v%C3%8F%7B%C2%B1%C2%86%1C%C3%88)%C3%B3%1F%3D%C3%BA%C3%96%26%14%C2%96%22%C3%91c%C2%B7%1D%C3%A3%C2%A0Q%C3%B4%C2%B1%C3%B2%7CF%C3%86~%25%C2%B8%2FW%C3%95%C2%8E%C2%B6%02%C2%92%C3%B2%25%C2%A7o%C3%95%C2%82%C2%9D01%C3%86%26%04%16Z%19%C2%80R0%15%C3%8A%C2%A0%1CC%C2%80%C2%B5%C2%B9%C2%85e%C2%89%0F%C2%8Aw1%1E8%C3%91a%C2%B1%06%C2%85F%C3%80%3Bth%C3%A9%C2%ABZ%17%C3%8AV%C2%8A%C2%A4%C2%B1%C3%95%C2%8C%C2%8A%C3%9C%C2%B6K%7B%C3%B0%C2%8E%3B%C3%B2%C2%AC%C2%B0%C3%91%C2%B8%C3%BE%C3%9E%C3%93%7D%C3%89%17%C2%81lG%C2%9D%1B%C2%B2%08%C3%A0%C2%81Es%C3%AA%C3%A49%C2%8E16%C2%BEl%C3%BD%C3%97%C3%BF%C3%BC%7C%1Bp%C3%BDs%3AjK%C3%BF%10%07%C2%9E%C3%BA%C2%9E%60%C3%B3%0F%C3%93A%C2%AA8%05%C3%A7i%C2%8F%C3%BD%C2%88%C3%91%C2%86%C2%B5%C2%9DXXb%C2%AC%C2%92%1C%C2%90i8~%7F%01%0A%C2%B8%C2%B9%C2%BE%C2%AB%C2%BE%C3%B5%C2%97%C3%BAg%08%C2%84%C3%B5%3E%C2%89%25e%C3%9B%5DQ%C2%B2%06%C3%A4Ka%0E%C2%AF%C2%AD%C3%B7%C3%AF%C3%A6x_1%C2%8816.%C3%98%7B%C2%989%2B%1C%C2%AE%C3%99%C2%85%C3%8EF%C3%9D%C2%B6%C3%A0LL%C3%98N%C3%85%C3%9FR%C2%B6%C3%9D%15%08%C2%98%C2%95%C2%A2%C3%83s%C2%BC%C2%AF%18%C3%84%18%1B%17%1B%C2%B1%3D%C2%A4s%16%C2%A1%C2%A9%C2%BD%C3%8A%C2%A0%3BC%C3%86%C2%9Af%C2%A2j%7C%5DR%C2%8E%18%26%16%C2%83%C3%96%C2%B4p(%C3%AC%13%C3%BC%C3%8B%C3%B5%C3%98%C2%B2!%C3%A1%12F%2F%11%00)pF%C3%9E%C3%BD!lU%C2%98%C3%8Dc%C2%B0%C2%9A%16%0E%C2%85%C2%BD%C2%81%1D%C2%8C%05Vz%16%C2%87z%C3%A2%C2%97B%C2%8F%C2%89b%C2%98(%0CU%C3%93%C3%B25%C3%983a4%01%C3%82%C3%A8(%C2%B4x%5B%0A%C2%8A%C2%BA1%1Dm%C3%BF%C3%85l%5CFwT0y%C3%80!%0F%C2%8C%C2%8A%C3%AE%1Ew%C2%B1%C2%9B%C2%89m%C3%8B%C3%A4%3C%C2%88%C2%99%16%C3%85dF%2C%C2%A1u%C2%83%03%2B%C2%86%C3%82%C2%BF%C2%85%10%7C%0A%C2%90%06lT%C2%87%1E%C2%82k%C2%8EH%C3%AA%C2%B5%C3%9A%C2%B4%C2%8A%C2%BAQC%06%C3%94%3E%C3%87J%C2%8Bb2%24%C3%8A%C3%B6%10%07U%3C)%C3%AA%C2%86%C2%BCw%17B%C2%88%C2%AF2%7D%C3%98t%C3%8E%C3%A2cS%C2%9C%18%C3%B3’%C3%A4%C2%86%C2%AF%C2%AA%C3%AA%00%C3%B1Zz4%C3%BD5%5C%C3%99A%07%11%24D%C3%95%C3%B4%C3%8E%C2%95%18%C2%B3%C2%85%C3%90*%C3%AA%C2%A6D%C2%B9_%C3%B5%3A%C3%B5%18%C2%AFj6.%2F%C3%85%C3%B2V%C3%B3%1A%C2%81%C2%98r%0C%1A%5C%3B%15%7F%09%C3%8C3M%C2%AB%C2%A3v%C2%9A%C3%99%C2%B8L%C3%A6%C3%AEg%22%C3%9B%C2%B4%20%0C%C3%B6%C2%8A%C2%BA!o%C3%9E%C2%B3%C2%8C%0C%C3%A4t%C3%8E%C3%A2E%C3%8A%20%C3%90M%02%1A%C3%94%5D%C2%A5%08%C2%84%3A%C2%ACT%C2%AC%2F!%C2%B6%24%5C%C2%97%C2%A6%C2%A5%17%C3%97%C2%9B%14us%3D%1B%C2%97%C2%A6%C2%9CM%C3%BD%C2%A4e%12R%C3%87E%C3%9D%C3%ACB%10%C3%AA!%22%C2%B2%C3%B4%0B%0B%C2%AD%C2%84%C2%84%0A%C2%AD%1D%C2%9F%C2%8Bf%C3%A3%C3%B2B%C3%91%C2%BA%C2%BEY%C3%B3%3D%C3%92V%C3%B0%C3%89l%5C%C2%BE%C3%B3%C2%BC~%2Fq%7F%C2%8C(%C3%A1%1Byq%C3%AFOE%C2%A3%C2%A8%C2%9B%7Ff%C3%92%C2%AFw%C3%8A%01%C2%BF%0B%C2%AD%C2%88%C2%84NQ7%C2%B2%5E%C3%956iB%C3%B4%C3%99l%5C6E%C3%9D%5C)%1A%C3%931iBE%C3%9D%C2%9C)%02%C2%AC%C2%94’0%2B%C3%A7%12%C3%92w%0F%20%C2%A0%C3%9E*%C3%A5U%C2%84vl%C3%96%C2%9D%C2%A6V%C3%94%C2%8D5%C2%9B%C2%A0%C2%A8%1B%C2%9AS%0F%C3%93%0C%C3%87FA%C3%87%0B%C3%9E%C2%B4%C3%9DP%C2%A8%C3%90z%C2%84%07%C3%B0%C2%A4m%C2%8B%05!%C3%B1%10i14%C3%89%C2%BE%C3%ACyt%C2%83%C2%B6%C2%82E%C3%9D%C3%AC%C2%A0%C2%9F_%C2%A7%C3%AF%C2%9A%11%12%C3%B0%C2%8F%C3%96%C3%B4%C3%9B%C2%83%C2%A2%C2%A8%1B%01%C3%81%25%C2%B7%C2%87%C3%97%C3%8A%C3%BFJ%C3%81R*%C2%9F%C2%AB%5BY%C3%B9Yc%C3%90%C2%BA%C2%96%C2%AE%C2%A3%C3%AD%20ibh%C3%8F%14%7C%5B%C2%92P%C2%9C%C2%8D%C3%8BsS%C3%B4%3A%5EF%C2%AF9%2C%C3%87%0B21%C3%AD%C2%B4%C2%9D%C2%8B%C3%9Ae%7BH%C3%B6%C2%AA_%C2%8A%C2%BA%C3%B1%3A)%1ABc’0%C2%B7p%15%C2%82%C2%B6%C2%82%C2%8A%C2%86%C2%B3%C3%AE0%0A%C3%AA%C2%83%C2%AF6%C3%B8)%C3%B3%1F%12X%C2%9A%11%C3%BE%C2%A4%C2%A8%1B%3DT%23%C3%A4%10%C2%89P%C3%94%C2%AD%C3%A4%5D%C3%AC%1A%C2%B4%3C%12Z%C2%97j%C2%B8%05%C2%AD%0F%C3%84%14%C2%AEE%C2%83%1F%187%3E%079%C2%AFb%C3%93%C3%BA%C2%8E4%19%C2%B2_)%C3%AA%C2%BA%15%12%22E%C3%9D%C2%A4%C3%B6%C3%98%05m%05%C2%8B%C2%BAy%08%0D%C2%A7o-p%09%3C%2C%C2%B6%C2%B9%C3%B9%C3%93%C3%A6!L%16%C3%B6%C2%80-%C3%A7!45%C3%B9%3B%C3%9B%C2%8A%C3%B3%C3%A2%40%C2%BB%C3%BE%15%C2%A7%C2%98%C3%85c%C3%95%C2%90%07Ry%7F(%C3%AA%C3%A65%C2%B6%C2%8DNH%C2%98%04%C3%98%C2%96Bx%C2%8F%C3%AA%11%0F%7D%C3%9A’%15%C2%94%C3%BA%2C%C2%84%C3%B8)%07%C2%81%C3%85tB%C3%B5%1C%C3%9E%C2%9F%C2%8DK%C2%AABq_%C3%B9l%C2%BF%C2%A8%C2%9Bd%C3%9A%16%09%C2%AE%C3%99%C2%B8%3C%C3%84%C3%AF%C2%9E*%C2%A5f%C3%B6a%07c%12%11%C3%8B%7BHv%C2%A0_%C2%8B%C2%BAy%C2%8E%C2%ADY%C2%AB%C2%8A%17%C2%89%C2%A1n%05%C2%99%C3%951%157%C3%94%C2%85%C3%94%C2%91%C2%A1~%C3%93%3E%04L%C2%9B%26v%C2%A7%C3%89A%00I%C2%ADn%C2%8E%C3%8FT%C2%A3%3B%09%C3%8CslWYX%C3%B5%40%C3%AC%C2%88x%12%067%C3%98v%C2%A5%C2%86%C2%B6%C2%82%7B%01%02%C3%AB%C2%A1%C2%92%C2%AB%C3%88%0C%18%C3%98%C2%AFT%01!%C3%8F%C3%B1%C3%93%C2%BDw%C2%A6%C2%B3%03_%16us%C2%AB%C3%BD%C3%8Dx%C3%B6%23%C2%AE%C3%BB%5D%11%C2%86%C2%A6%C3%AB~%C3%87uR%C2%88Ne%2C%17%C2%93%C2%86%C3%8F%C2%B1%C2%B5%C2%8A%C2%B9E%C2%A2%C2%B6~*%C3%AA%264%C3%94%20%C2%84o%7D%C3%ACh%C2%A2%1F%C2%AF%20%1B%C3%8F%C2%87%C2%85)%C2%B8%C3%94%14%C2%83f%0A.%3DU%C3%BEv%C2%8AvT%C3%A1y%C2%95C%3E%C3%A6%C2%A6%C3%B39%C2%BC%1A)%C2%B6L%14%C2%9F%C3%B5%C2%A0%C2%A8%C2%9B%14A%C2%9D%3Ev%C2%AB%C3%94%5B%C3%817%C3%B0%C2%9Ert%7D%C3%8F%20%C2%82%7D%C2%A9l%2F%C3%99%C2%98%3CzB%C3%9E%3D%1F%C3%81BqZ%C3%86z%C3%AEd%C3%8F%C2%82%10%1B%5C%C2%81%C2%BEM%C3%A03%C2%B2%3FA%C2%A8%C3%BC%1D%5B%C2%AE%C2%98%C2%90%C2%A1%C3%BEiQ77%C2%88%C3%97%C3%AA%C2%85%C3%84%5B%C3%81%C3%B7%C3%90%C3%B4%1E%C2%B0%C3%80%1A%0C%C2%AA6%C3%A4%C3%B2%3A%C3%BA%5E%C3%87%C2%AC%C2%91%C2%85M%0B%C2%9E%3DZ%C3%AC%C3%BF%10B%C3%BC%16%C2%B9K2%C2%B6%C3%AB%054%C2%A0%24%24%C3%B6%0A%C2%92%C3%91%C3%BF9%C3%ACh%C2%9Cl%3D%10%C2%90%7B%C2%A8%1A%C3%9D%5D%C2%A5wT%3B%C3%97%3E%C2%BE%C3%8Bd%C3%86%C2%92!%C2%9E%C2%B4%C2%87%C3%99%C2%B8%C2%A4-%C3%A3%C2%B7X%C2%A81%C2%A1%C2%88%C3%AFw%C3%88ML%C3%81%C3%A3D%C2%B6%C2%AB%C2%85%C3%91%C2%BFG%C3%8F(%C3%830%06%C2%B6no%C3%AD%C2%87%C3%B1%40%2Bz%C2%86%40%C3%92%C3%98%C2%BC%C2%81%C2%A1%C3%BEF%C2%84%C2%9F%C3%86%13%C3%A3D%1F%1F~%C3%B3IY%1A%12J%25%C2%83%C3%B9l%5C~%C2%B1)%C3%B7%C2%B5)%14u%C3%B3%16%1E%C3%88%C3%A3O%7D%2Cl8%C3%A3%C2%B4%C2%94%C2%923%17%09%3Cp2%C2%B6%C3%AB%C3%BB%0C%23%C3%81%3F%40Xe%C2%B9%0DDL%10M%C3%AES%C3%A4%C2%BC%C2%99%C2%AE%C2%B9K%C3%BC%C2%A5%C2%A4_%C3%A5%C2%B3%C2%97%C2%B0%C3%9BpeOf%C2%B0x%05%C2%97%22l%C3%A1A%C2%A2%C3%A4%C3%A7%C3%AF%C2%90%01%C2%9FK%C3%A8%40%C3%9F%01%C2%B2%7DR%C3%AA%C2%B9q%C2%A9%C2%80%60%C2%9D8B%0A%3A%C2%81%C3%AA%0C%C2%BB9j%22!%C3%B7%C2%9Cj%7C%3E%05%C2%82%22%C3%A2%C2%B5%C3%A4%C3%A7%C2%98’%C3%A0%7C%C2%99A%3A%C3%8D%1BT%C2%85%C3%98%C2%88%C2%B8%2BU%C3%83%12%7F.%C2%92m%C3%84%26%C3%B5%C2%A5a%C2%95%C2%89%3Cp’1%C2%8EVOD%C3%88%3D%C2%A7%1A%C2%9F%C2%8D%C2%A7SD%3CB%24(h%C3%B3%C3%87%0D%18%20%C2%99%C2%B7%C3%B8%60S%04%16%C3%83l2NC%C2%BC%0FH%C2%94%C2%BE%C3%A8%C2%B9%0EU%0CC%C3%BC%07%04%C2%87%5E%C3%84%C3%AF%5EZ%02lZw%06%5D%C2%AD%C3%A0%C2%9D%C3%A4%5C%06Y%22-f%C2%A4%C3%84)%5Da%C3%9Bb%C3%95%C3%8A%C2%A0%C2%B9M%C2%B4%1C%40Y%60%C3%AF%0FC%1E%C3%A0)r%C3%B4N%C3%B0%C2%9DR%C3%BF%C2%9B%C3%92%C3%B6K%C3%BC%C2%BDBj%C3%8E.%22%C3%8D%C3%B54%C2%9D%C2%853%C3%81P%C2%84%C3%AF%C2%BC-%C2%88%14%C3%A38%C3%92%C3%AE%C3%A1%12%C3%BD%C2%91y%C2%86%C3%B4%C2%B7%C2%97%C3%B2%C3%9E%C2%94%C3%AF~%C3%B4%C2%B9%C3%AB%C2%9E%0D%C2%BF%C3%AB%1A%C2%9F%C2%B7%C2%88%C3%84o%C2%B4g%C2%B2%C3%94%C2%96%C2%A1%C3%A4s%C2%83%C3%AB%C2%AE%C2%856O%C2%A0%C3%95Q%C2%9F%C2%AF%C3%A4%C3%96%C2%BA%C3%8Bs%C3%8F%C2%81%C2%95s%0F%C3%89%C3%BBGZ%C2%8A%10%C3%A2_%C3%90Z%C2%86%00i%C2%88%3BC%14X%5D%C3%80%C3%A2%C2%95%C2%9EB%C2%9A%C3%94%5B%C2%8A%C3%80%1AA%C3%B8%C2%9C%2B%C2%95%12v%C2%B1%20%5D%C3%88r%C3%83_%C3%A0%7B%C2%95%C2%9C%C3%BC%10%24R%60%1C%C3%A0%C3%B7%C3%A4%C2%82%C3%9BE%1D%C3%B5-%C2%A5B%C3%82%C2%99%C2%A1%1E%C2%96%C3%80%C2%82Z%7C%1F%C3%97%C3%8F%C2%B1%C3%B0%C2%B6%14%C2%815%C3%81%C2%B6%C3%B1%00%C3%97%1C%C2%B4%C3%B4%5D%C3%86o%C3%9DU%24U%C3%BAr%C2%80%C3%85%C3%BDs%C3%9B%C3%B7uZ%C3%AE%C3%B9%23%3C%C2%AE-e%C2%89%1B%C3%B4%C3%AB%1Cc%C2%B4%10%C2%AEJ%C3%BF%C2%A7J%C3%BF%05r%2Bu%C2%818B%C2%84%C3%BF%C2%96%22%C2%B0%C2%BA%3E%C3%B7%C2%B5%13-a%1A5%C2%83%C3%B6%60%C3%88%C2%8E%1D%C3%9F%15%0B%C2%B2%5B%C3%BD%C3%B7l%5C%3E%C3%A6x%C2%AB%C2%85%C2%B64%C3%82%C3%84%C2%BDK%C2%8BA%C2%B2%C3%AF%25*r%1A%C2%83%2B%C3%B1%06%C3%9F%C2%87%C3%B0%C2%99%C3%A3%7B%C2%97%C2%B6E%C2%AAB%C3%82R%C2%BD%0E%C3%BF%3D7%C3%98w%C2%B6U%C2%8D%C2%A7%C2%85%23%2C%5EYm%C3%B4%C3%9A%23U%C3%A7%0C%0By%C2%91%C3%BA%C2%83%C3%AFW%08%2C5%25%5B%C3%B7%06%C3%8A%C3%9E%C3%88%C2%B1%3D%C3%85%18%C2%A9%C3%8F%C3%A3%C3%8C%C2%90j%24_%1C%C3%BA%0B%C3%A0Z%C3%93d%3B%3D%C3%B7%5C%C2%88Z%C3%A5AI%09%C3%9A%C3%8B%C3%8C%C3%9EE%1A%C3%A0%C2%BF%60%C2%B7j%C2%ADA%C3%BD%09!k%C2%9D%C3%AB%C2%86m%C3%B9%C3%BF%C2%8D%C2%86b%2C%C3%AE)*%C2%86%06%2Fn%C3%BA%0EmY)f%0C%15%12%C2%B6%0D%C3%9B%C2%A59r%C3%BC%7Ch%C2%B0%C3%98%C2%8C5%C3%9A%0D%C2%BF%2F%C3%8B%C3%8D%2C%1D%40%C2%81%7B3%09%C3%91%3E1y%13%C2%A7r%C2%8Cl%C3%BD%C2%87%C3%A0%C2%99%1A%C3%BA%C2%AE%C2%8Fc%C2%A7%C3%A7%C2%9E%0BIN%C2%98%C2%86A%C3%BB1*%C2%95%3E%5Bc%C3%9Du%3E%C2%85%C3%87%C2%8D%14%14%24%3CB%C2%BF%7B%C2%80%C3%AD%C3%85%19%C2%84E%C2%AB%0DI%C3%BCek%C3%9B%C3%86%C2%82%C2%A3m%C3%9E!l%3C%C2%9D%C2%81%C3%9Dn%C2%84%C2%BE%C2%8Cd%C2%B5%05G%C2%89%C2%98%C2%B6%C3%A2%C2%80%C3%935%C3%97%C3%86j%C3%93.e%C3%BF%C3%8F%2C%C2%82%C2%BA-%C2%84b%C2%95%C3%A7%C2%BEv%C2%92%1E%C2%8B%0Fc%C3%B9%03%C3%94%C3%88%C2%BE%C3%A8%C2%B9%C2%B8%C3%BF%C2%8F0%C2%B4%C2%B3G%C2%B0%C2%9D%C2%83%C3%90X!l%5D%C2%A4%7D%C3%A4%C3%8E%C3%90O%1A%C2%80%2B~%0Av%2Bz%C2%8B%1F%06hQ%C2%BE%C3%BD%C2%B9%3BX%02B%C3%AB%04v%C2%A9%C3%BB%C2%96%C3%8B%C3%9B%C2%84%C3%82n%C3%86a%15*VG%C2%8C’%C3%81%C3%8F%3D%07z9%16%1F%C2%91%C3%A5%3B%C2%B0w%C2%A5%C3%A6%0D%C2%BC%C2%8B%1B%13s%C2%95%10%C2%B90W%C2%B2a%40%C3%83%C2%BA%C3%B2hG%3F%3DG%3F%25ze%C2%B0%C2%88%C3%896%C2%B3%C2%8B%C2%B6M%C3%BD%C2%9Dj%C2%B5%C2%B2%16(%C3%BD%C2%91c%23%C2%B55%C2%BD%C2%8Fk%C3%9BB)%C3%9B%C3%B3%C2%AE%7D%C2%88%C3%B2%C3%9C%C3%97E%2FBK%7Cl%C3%AFJQ%02G%C3%B2%C2%82K%C3%86%C3%B8%C2%83%C3%89%7F%09-ia%C2%BC%25%2F%15%C3%82%0E%C2%8C%C3%90%C3%82%C2%A6%C2%BFK%2F%C2%95bcQ%C2%B5%13)%C2%98J%C3%83g%23%C3%A5%7B%C2%93%C3%80%C2%80%C3%97k%7D%C2%B1%C2%A2%2F%C3%BA%C3%81%C2%AA%C3%93%16-B%1A%C3%9C%17%C3%B7%C2%A9D%C2%A97%C2%8A%C2%81%C3%BA%1A%C2%BF9%C2%92%C2%B5%C3%9F%C3%A1%C3%853y%3BM%C3%B7%C3%AC%C2%BA%0F%C3%9FkM%C2%9C%C3%A3%14%C2%A0%C3%85%C3%B6%C2%90%C3%BAg%18%C2%8B%25%7C%C2%9F%3Bm%C3%A5e%3AXN%C3%B4%26%C2%B4%24Z%09%C2%9C%C2%A8!%12%C2%9F%C2%A0fE6%C2%8D%5B%C3%AD%C2%9F%C2%971Z%02%C3%AF%C3%93%C2%B9%C3%9A%C2%96t%C2%91%3B%C2%BE%26%C2%8D%C3%82%7F(%25%C2%89%C2%AF%C3%94%C2%AD!%C2%B6%7Fj%C2%BB%23%C3%849%C2%9Db%C2%B1%C3%9Cb%0B%C2%B7T%C3%8C%C2%AF%C2%85%3Bo%19%C3%9A%C3%BCC%C3%A9%C3%8F%5B%C2%A5%C3%BF%24%04%C2%9D%05%01%C3%91%C2%BFc%1C%C3%ACz%C2%AB%C3%B4%C3%A7%C3%8APL%C3%B0%18%C2%BF!K%2B%C2%9F%C2%98%0A%00%C2%9A%C3%AE%C2%B9%C3%A5%C3%B7%C2%BD%C2%AE%C2%B5%7C%C3%BF%12cQ*%C3%BD%7F%C3%AB!%C2%AC%C3%A5%C3%B7%C2%BB%3C%C3%B7%2CX9%C2%B8tU%3A%1E%C2%A1o%0C.e%18f%C3%B3%C3%A9%5D%C3%93%C3%92A%C2%80’%C3%99%C2%BB%C2%BE%C3%A7%C3%B9%C3%860L%1Bk%C3%97%C2%B4T%3C%0E%C2%A1%C3%88%C2%BAd%0C%C3%830%C3%A9%C3%89JhI%2C’%3F%7B%1D%C3%83%C3%8F0%C3%8Cf%C2%93%C2%A5%C3%90%C2%92%20%01z%2F%C3%A1Qd%0C%C3%83%0C%C2%8C%C2%AC%C2%85%16%C3%830%C2%8C%C3%8E%C3%9A%0D%C3%B1%0C%C3%830!%C2%B0%C3%90b%18fP%C2%B0%C3%90b%18fP%C2%B0%C3%90b%18fP%C2%B0%C3%90b%18fP%C2%B0%C3%90b%18fP%C2%B0%C3%90b%18f8%08!%C3%BE%1F%C2%BF%C3%94l%C2%AC%C3%99k%C2%BB-%00%00%00%00IEND%C2%AEB%60%C2%82”;
      var imgLogo = mainWindow.add(“image”, undefined, File.decode(imgLogo_imgString), {name: “imgLogo”});
      imgLogo.alignment = [“center”,”top”];

      // PNLAPPLICATIONTYPE
      // ==================
      var pnlApplicationType = mainWindow.add(“panel”, undefined, undefined, {name: “pnlApplicationType”});
      pnlApplicationType.text = “Application Type”;
      pnlApplicationType.preferredSize.width = 407;
      pnlApplicationType.orientation = “row”;
      pnlApplicationType.alignChildren = [“center”,”top”];
      pnlApplicationType.spacing = 46;
      pnlApplicationType.margins = [10,11,10,9];

      // GRPAPPLICATIONTYPE
      // ==================
      var grpApplicationType = pnlApplicationType.add(“group”, undefined, {name: “grpApplicationType”});
      grpApplicationType.preferredSize.width = 245;
      grpApplicationType.preferredSize.height = 33;
      grpApplicationType.orientation = “row”;
      grpApplicationType.alignChildren = [“left”,”center”];
      grpApplicationType.spacing = 10;
      grpApplicationType.margins = 8;

      var rboAppTypeAlaPantoneBridge = grpApplicationType.add(“radiobutton”, undefined, undefined, {name: “rboAppTypeAlaPantoneBridge”});
      rboAppTypeAlaPantoneBridge.helpTip = “Builds a Pantone Bridge format book”;
      rboAppTypeAlaPantoneBridge.text = “Ala Pantone Bridge! “;
      rboAppTypeAlaPantoneBridge.preferredSize.width = 150;

      var rboAppTypeCustom = grpApplicationType.add(“radiobutton”, undefined, undefined, {name: “rboAppTypeCustom”});
      rboAppTypeCustom.text = “Custom”;

      // PNLPALETTE
      // ==========
      var pnlPalette = mainWindow.add(“panel”, undefined, undefined, {name: “pnlPalette”});
      pnlPalette.text = “Palette”;
      pnlPalette.preferredSize.width = 407;
      pnlPalette.orientation = “column”;
      pnlPalette.alignChildren = [“center”,”top”];
      pnlPalette.spacing = 8;
      pnlPalette.margins = [10,11,10,9];

      // PNLPALETTERADIOBUTTONS
      // ======================
      var pnlPaletteRadioButtons = pnlPalette.add(“group”, undefined, {name: “pnlPaletteRadioButtons”});
      pnlPaletteRadioButtons.orientation = “row”;
      pnlPaletteRadioButtons.alignChildren = [“left”,”center”];
      pnlPaletteRadioButtons.spacing = 10;
      pnlPaletteRadioButtons.margins = 0;

      var rboPaletteAutomatic = pnlPaletteRadioButtons.add(“radiobutton”, undefined, undefined, {name: “rboPaletteAutomatic”});
      rboPaletteAutomatic.text = “Automatic”;
      rboPaletteAutomatic.preferredSize.width = 84;

      var rboPaletteCustom = pnlPaletteRadioButtons.add(“radiobutton”, undefined, undefined, {name: “rboPaletteCustom”});
      rboPaletteCustom.text = “Custom”;
      rboPaletteCustom.value = true;

      // GRPPALETTENAME
      // ==============
      var grpPaletteName = pnlPalette.add(“group”, undefined, {name: “grpPaletteName”});
      grpPaletteName.orientation = “row”;
      grpPaletteName.alignChildren = [“left”,”center”];
      grpPaletteName.spacing = 4;
      grpPaletteName.margins = 0;

      var lblPaletteName = grpPaletteName.add(“statictext”, undefined, undefined, {name: “lblPaletteName”});
      lblPaletteName.text = “Palette name:”;

      var txtPaletteName = grpPaletteName.add(‘edittext {properties: {name: “txtPaletteName”}}’);
      txtPaletteName.preferredSize.width = 150;

      // PNLSHEETSIZE
      // ============
      var pnlSheetSize = mainWindow.add(“panel”, undefined, undefined, {name: “pnlSheetSize”});
      pnlSheetSize.text = “Sheet Size”;
      pnlSheetSize.preferredSize.width = 407;
      pnlSheetSize.orientation = “column”;
      pnlSheetSize.alignChildren = [“center”,”top”];
      pnlSheetSize.spacing = 8;
      pnlSheetSize.margins = [10,11,10,9];

      // PNLSHEETSIZERADIOBUTTONS
      // ========================
      var pnlSheetSizeRadioButtons = pnlSheetSize.add(“group”, undefined, {name: “pnlSheetSizeRadioButtons”});
      pnlSheetSizeRadioButtons.orientation = “row”;
      pnlSheetSizeRadioButtons.alignChildren = [“left”,”center”];
      pnlSheetSizeRadioButtons.spacing = 47;
      pnlSheetSizeRadioButtons.margins = 0;

      var rboSheetSizeStandard = pnlSheetSizeRadioButtons.add(“radiobutton”, undefined, undefined, {name: “rboSheetSizeStandard”});
      rboSheetSizeStandard.text = “Standard”;
      rboSheetSizeStandard.preferredSize.width = 84;

      var rboSheetSizeCustom = pnlSheetSizeRadioButtons.add(“radiobutton”, undefined, undefined, {name: “rboSheetSizeCustom”});
      rboSheetSizeCustom.text = “Custom”;
      rboSheetSizeCustom.value = true;

      // GRPSHEETSIZESELECTIONS
      // ======================
      var grpSheetSizeSelections = pnlSheetSize.add(“group”, undefined, {name: “grpSheetSizeSelections”});
      grpSheetSizeSelections.preferredSize.width = 232;
      grpSheetSizeSelections.orientation = “row”;
      grpSheetSizeSelections.alignChildren = [“center”,”center”];
      grpSheetSizeSelections.spacing = 40;
      grpSheetSizeSelections.margins = 0;

      // GRPSHEETSIZESTANDARD
      // ====================
      var grpSheetSizeStandard = grpSheetSizeSelections.add(“group”, undefined, {name: “grpSheetSizeStandard”});
      grpSheetSizeStandard.preferredSize.width = 60;
      grpSheetSizeStandard.orientation = “column”;
      grpSheetSizeStandard.alignChildren = [“left”,”center”];
      grpSheetSizeStandard.spacing = 3;
      grpSheetSizeStandard.margins = 0;

      var cboStandardSheetSize_array = [“11 x 17″,”12 x 18″,”12.5 x 19″,”13 x 19″,”-“,”13 x 26″,”13 x 40″,”13 x 47″,”-“,”8.5 x 11 SEF”,”8.5 x 11 LEF”,”8.5 x 14″];
      var cboStandardSheetSize = grpSheetSizeStandard.add(“dropdownlist”, undefined, undefined, {name: “cboStandardSheetSize”, items: cboStandardSheetSize_array});
      cboStandardSheetSize.helpTip = “Choose your specialty colour”;
      cboStandardSheetSize.selection = 0;

      var lblSpacer = grpSheetSizeStandard.add(“statictext”, undefined, undefined, {name: “lblSpacer”});

      // GRPCUSTOMSHEETSIZE
      // ==================
      var grpCustomSheetSize = grpSheetSizeSelections.add(“group”, undefined, {name: “grpCustomSheetSize”});
      grpCustomSheetSize.orientation = “row”;
      grpCustomSheetSize.alignChildren = [“left”,”center”];
      grpCustomSheetSize.spacing = 7;
      grpCustomSheetSize.margins = 0;

      // GRPCUSTOMSHEETSIZEWIDTH
      // =======================
      var grpCustomSheetSizeWidth = grpCustomSheetSize.add(“group”, undefined, {name: “grpCustomSheetSizeWidth”});
      grpCustomSheetSizeWidth.orientation = “column”;
      grpCustomSheetSizeWidth.alignChildren = [“center”,”center”];
      grpCustomSheetSizeWidth.spacing = 3;
      grpCustomSheetSizeWidth.margins = 0;

      var txtCustomSheetSizeWidth = grpCustomSheetSizeWidth.add(‘edittext {properties: {name: “txtCustomSheetSizeWidth”}}’);
      txtCustomSheetSizeWidth.helpTip = “Enter a number between 0 and 100”;
      txtCustomSheetSizeWidth.preferredSize.width = 36;

      var lblCustomSheetSizeWidth = grpCustomSheetSizeWidth.add(“statictext”, undefined, undefined, {name: “lblCustomSheetSizeWidth”});
      lblCustomSheetSizeWidth.text = “Width”;

      // GRPCUSTOMSHEETSIZEHEIGHT
      // ========================
      var grpCustomSheetSizeHeight = grpCustomSheetSize.add(“group”, undefined, {name: “grpCustomSheetSizeHeight”});
      grpCustomSheetSizeHeight.preferredSize.width = 46;
      grpCustomSheetSizeHeight.orientation = “column”;
      grpCustomSheetSizeHeight.alignChildren = [“center”,”center”];
      grpCustomSheetSizeHeight.spacing = 2;
      grpCustomSheetSizeHeight.margins = 0;

      var txtCustomSheetSizeHeight = grpCustomSheetSizeHeight.add(‘edittext {properties: {name: “txtCustomSheetSizeHeight”}}’);
      txtCustomSheetSizeHeight.helpTip = “Enter a number between 0 and 100”;
      txtCustomSheetSizeHeight.preferredSize.width = 36;

      var lblCustomSheetSizeHeight = grpCustomSheetSizeHeight.add(“statictext”, undefined, undefined, {name: “lblCustomSheetSizeHeight”});
      lblCustomSheetSizeHeight.text = “Height”;

      // PNLSWATCHSHAPE
      // ==============
      var pnlSwatchShape = mainWindow.add(“panel”, undefined, undefined, {name: “pnlSwatchShape”});
      pnlSwatchShape.text = “Swatch Shape”;
      pnlSwatchShape.preferredSize.width = 407;
      pnlSwatchShape.orientation = “column”;
      pnlSwatchShape.alignChildren = [“center”,”top”];
      pnlSwatchShape.spacing = 3;
      pnlSwatchShape.margins = [10,13,10,9];

      // PNLSWATCHSHAPEOPTIONS
      // =====================
      var pnlSwatchShapeOptions = pnlSwatchShape.add(“group”, undefined, {name: “pnlSwatchShapeOptions”});
      pnlSwatchShapeOptions.orientation = “row”;
      pnlSwatchShapeOptions.alignChildren = [“left”,”center”];
      pnlSwatchShapeOptions.spacing = 46;
      pnlSwatchShapeOptions.margins = 0;

      var rboSwatchShapeRectangle = pnlSwatchShapeOptions.add(“radiobutton”, undefined, undefined, {name: “rboSwatchShapeRectangle”});
      rboSwatchShapeRectangle.text = “Rectangle”;
      rboSwatchShapeRectangle.value = true;

      var rboSwatchShapeCustom = pnlSwatchShapeOptions.add(“radiobutton”, undefined, undefined, {name: “rboSwatchShapeCustom”});
      rboSwatchShapeCustom.text = “Custom”;
      rboSwatchShapeCustom.preferredSize.width = 84;

      // GRPSWATCHSHAPESELECTIONS
      // ========================
      var grpSwatchShapeSelections = pnlSwatchShape.add(“group”, undefined, {name: “grpSwatchShapeSelections”});
      grpSwatchShapeSelections.preferredSize.width = 232;
      grpSwatchShapeSelections.orientation = “row”;
      grpSwatchShapeSelections.alignChildren = [“center”,”center”];
      grpSwatchShapeSelections.spacing = 40;
      grpSwatchShapeSelections.margins = 0;

      // GRPCUSTOMSWATCHSHAPE
      // ====================
      var grpCustomSwatchShape = grpSwatchShapeSelections.add(“group”, undefined, {name: “grpCustomSwatchShape”});
      grpCustomSwatchShape.orientation = “row”;
      grpCustomSwatchShape.alignChildren = [“left”,”center”];
      grpCustomSwatchShape.spacing = 8;
      grpCustomSwatchShape.margins = [0,0,0,0];

      // GRPCUSTOMswatchWidth
      // =========================
      var grpCustomswatchWidth = grpCustomSwatchShape.add(“group”, undefined, {name: “grpCustomswatchWidth”});
      grpCustomswatchWidth.orientation = “column”;
      grpCustomswatchWidth.alignChildren = [“center”,”center”];
      grpCustomswatchWidth.spacing = 3;
      grpCustomswatchWidth.margins = 0;

      var txtShapeWidth = grpCustomswatchWidth.add(‘edittext {properties: {name: “txtShapeWidth”}}’);
      txtShapeWidth.helpTip = “Enter a number between 0 and 100”;
      txtShapeWidth.preferredSize.width = 36;

      var lblCustomswatchWidth = grpCustomswatchWidth.add(“statictext”, undefined, undefined, {name: “lblCustomswatchWidth”});
      lblCustomswatchWidth.text = “Width”;

      // GRPCUSTOMswatchHeight
      // ==========================
      var grpCustomswatchHeight = grpCustomSwatchShape.add(“group”, undefined, {name: “grpCustomswatchHeight”});
      grpCustomswatchHeight.preferredSize.width = 46;
      grpCustomswatchHeight.orientation = “column”;
      grpCustomswatchHeight.alignChildren = [“center”,”center”];
      grpCustomswatchHeight.spacing = 2;
      grpCustomswatchHeight.margins = 0;

      var txtShapeHeight = grpCustomswatchHeight.add(‘edittext {properties: {name: “txtShapeHeight”}}’);
      txtShapeHeight.helpTip = “Enter a number between 0 and 100”;
      txtShapeHeight.preferredSize.width = 36;

      var lblCustomswatchHeight = grpCustomswatchHeight.add(“statictext”, undefined, undefined, {name: “lblCustomswatchHeight”});
      lblCustomswatchHeight.text = “Height”;

      // GRPSWATCHSHAPESTANDARD
      // ======================
      var grpSwatchShapeStandard = grpSwatchShapeSelections.add(“group”, undefined, {name: “grpSwatchShapeStandard”});
      grpSwatchShapeStandard.preferredSize.width = 60;
      grpSwatchShapeStandard.orientation = “column”;
      grpSwatchShapeStandard.alignChildren = [“center”,”center”];
      grpSwatchShapeStandard.spacing = 3;
      grpSwatchShapeStandard.margins = [0,7,0,0];

      var cboCustomSwatchShape_array = [“Circle”,”Triangle”,”Square”,”Pentagon”,”Hexagon”,”Octogon”];
      var cboCustomSwatchShape = grpSwatchShapeStandard.add(“dropdownlist”, undefined, undefined, {name: “cboCustomSwatchShape”, items: cboCustomSwatchShape_array});
      cboCustomSwatchShape.helpTip = “Choose your specialty colour”;
      cboCustomSwatchShape.selection = 0;

      // GRPSWATCHSHAPEDIAMETER
      // ======================
      var grpSwatchShapeDiameter = grpSwatchShapeStandard.add(“group”, undefined, {name: “grpSwatchShapeDiameter”});
      grpSwatchShapeDiameter.orientation = “row”;
      grpSwatchShapeDiameter.alignChildren = [“left”,”center”];
      grpSwatchShapeDiameter.spacing = 4;
      grpSwatchShapeDiameter.margins = 0;

      var lblSwatchShapeDiameter = grpSwatchShapeDiameter.add(“statictext”, undefined, undefined, {name: “lblSwatchShapeDiameter”});
      lblSwatchShapeDiameter.text = “Diameter:”;

      var txtCustomSwatchShapeDiameter = grpSwatchShapeDiameter.add(‘edittext {properties: {name: “txtCustomSwatchShapeDiameter”}}’);
      txtCustomSwatchShapeDiameter.preferredSize.width = 25;

      // PNLSTARTINGPOINT
      // ================
      var pnlStartingPoint = mainWindow.add(“panel”, undefined, undefined, {name: “pnlStartingPoint”});
      pnlStartingPoint.text = “Starting Colour”;
      pnlStartingPoint.preferredSize.width = 360;
      pnlStartingPoint.orientation = “column”;
      pnlStartingPoint.alignChildren = [“center”,”top”];
      pnlStartingPoint.spacing = 0;
      pnlStartingPoint.margins = 10;

      // GRPMAINSTARTINGPOINTGROUP
      // =========================
      var grpMainStartingPointGroup = pnlStartingPoint.add(“group”, undefined, {name: “grpMainStartingPointGroup”});
      grpMainStartingPointGroup.orientation = “row”;
      grpMainStartingPointGroup.alignChildren = [“left”,”center”];
      grpMainStartingPointGroup.spacing = 11;
      grpMainStartingPointGroup.margins = 0;

      // GRPSTARTINGCYANCOLUMN
      // =====================
      var grpStartingCyanColumn = grpMainStartingPointGroup.add(“group”, undefined, {name: “grpStartingCyanColumn”});
      grpStartingCyanColumn.orientation = “column”;
      grpStartingCyanColumn.alignChildren = [“center”,”center”];
      grpStartingCyanColumn.spacing = 3;
      grpStartingCyanColumn.margins = 0;

      var lblStartingCyan = grpStartingCyanColumn.add(“statictext”, undefined, undefined, {name: “lblStartingCyan”});
      lblStartingCyan.text = “Cyan”;

      var txtStartingCyan = grpStartingCyanColumn.add(‘edittext {properties: {name: “txtStartingCyan”}}’);
      txtStartingCyan.helpTip = “Enter a number between 0 and 100”;
      txtStartingCyan.preferredSize.width = 36;

      // GRPSTARTINGMAGENTACOLUMN
      // ========================
      var grpStartingMagentaColumn = grpMainStartingPointGroup.add(“group”, undefined, {name: “grpStartingMagentaColumn”});
      grpStartingMagentaColumn.preferredSize.width = 68;
      grpStartingMagentaColumn.orientation = “column”;
      grpStartingMagentaColumn.alignChildren = [“center”,”center”];
      grpStartingMagentaColumn.spacing = 3;
      grpStartingMagentaColumn.margins = 0;

      var lblStartingMagenta = grpStartingMagentaColumn.add(“statictext”, undefined, undefined, {name: “lblStartingMagenta”});
      lblStartingMagenta.text = “Magenta”;

      var txtStartingMagenta = grpStartingMagentaColumn.add(‘edittext {properties: {name: “txtStartingMagenta”}}’);
      txtStartingMagenta.helpTip = “Enter a number between 0 and 100”;
      txtStartingMagenta.preferredSize.width = 36;

      // GRPSTARTINGYELLOWCOLUMN
      // =======================
      var grpStartingYellowColumn = grpMainStartingPointGroup.add(“group”, undefined, {name: “grpStartingYellowColumn”});
      grpStartingYellowColumn.preferredSize.width = 49;
      grpStartingYellowColumn.orientation = “column”;
      grpStartingYellowColumn.alignChildren = [“left”,”center”];
      grpStartingYellowColumn.spacing = 3;
      grpStartingYellowColumn.margins = 0;

      var lblStartingYellow = grpStartingYellowColumn.add(“statictext”, undefined, undefined, {name: “lblStartingYellow”});
      lblStartingYellow.text = “Yellow”;

      var txtStartingYellow = grpStartingYellowColumn.add(‘edittext {properties: {name: “txtStartingYellow”}}’);
      txtStartingYellow.helpTip = “Enter a number between 0 and 100”;
      txtStartingYellow.preferredSize.width = 36;

      // GRPSTARTINGBLACKCOLUMN
      // ======================
      var grpStartingBlackColumn = grpMainStartingPointGroup.add(“group”, undefined, {name: “grpStartingBlackColumn”});
      grpStartingBlackColumn.preferredSize.width = 49;
      grpStartingBlackColumn.orientation = “column”;
      grpStartingBlackColumn.alignChildren = [“left”,”center”];
      grpStartingBlackColumn.spacing = 3;
      grpStartingBlackColumn.margins = 0;

      var lblStartingBlack = grpStartingBlackColumn.add(“statictext”, undefined, undefined, {name: “lblStartingBlack”});
      lblStartingBlack.text = “Black”;

      var txtStartingBlack = grpStartingBlackColumn.add(‘edittext {properties: {name: “txtStartingBlack”}}’);
      txtStartingBlack.helpTip = “Enter a number between 0 and 100”;
      txtStartingBlack.preferredSize.width = 36;

      // GRPSTARTINGSPECIALTYCOLUMN
      // ==========================
      var grpStartingSpecialtyColumn = grpMainStartingPointGroup.add(“group”, undefined, {name: “grpStartingSpecialtyColumn”});
      grpStartingSpecialtyColumn.preferredSize.width = 60;
      grpStartingSpecialtyColumn.orientation = “column”;
      grpStartingSpecialtyColumn.alignChildren = [“left”,”center”];
      grpStartingSpecialtyColumn.spacing = 3;
      grpStartingSpecialtyColumn.margins = 0;

      var lblStartingSpecialty = grpStartingSpecialtyColumn.add(“statictext”, undefined, undefined, {name: “lblStartingSpecialty”});
      lblStartingSpecialty.text = “Specialty”;

      var cboStartingSpecialty_array = [“Gold”,”Silver”,”White”,”Clear”,”Orange”,”Blue”,”Green”,”Yellow”];
      var cboStartingSpecialty = grpStartingSpecialtyColumn.add(“dropdownlist”, undefined, undefined, {name: “cboStartingSpecialty”, items: cboStartingSpecialty_array});
      cboStartingSpecialty.helpTip = “Choose your specialty colour”;
      cboStartingSpecialty.selection = 0;

      // GRPSTARTINGSPECIALTYCOLUMN1
      // ===========================
      var grpStartingSpecialtyColumn1 = grpMainStartingPointGroup.add(“group”, undefined, {name: “grpStartingSpecialtyColumn1”});
      grpStartingSpecialtyColumn1.preferredSize.width = 49;
      grpStartingSpecialtyColumn1.orientation = “column”;
      grpStartingSpecialtyColumn1.alignChildren = [“center”,”center”];
      grpStartingSpecialtyColumn1.spacing = 3;
      grpStartingSpecialtyColumn1.margins = 0;

      var lblStartingSpecialty1 = grpStartingSpecialtyColumn1.add(“statictext”, undefined, undefined, {name: “lblStartingSpecialty1”});
      lblStartingSpecialty1.text = “Specialty”;

      var txtStartingSpecialty = grpStartingSpecialtyColumn1.add(‘edittext {properties: {name: “txtStartingSpecialty”}}’);
      txtStartingSpecialty.helpTip = “Enter a number between 0 and 100”;
      txtStartingSpecialty.preferredSize.width = 36;

      // PNLENDINGPOINT
      // ==============
      var pnlEndingPoint = mainWindow.add(“panel”, undefined, undefined, {name: “pnlEndingPoint”});
      pnlEndingPoint.text = “Ending Colour”;
      pnlEndingPoint.preferredSize.width = 407;
      pnlEndingPoint.orientation = “column”;
      pnlEndingPoint.alignChildren = [“center”,”top”];
      pnlEndingPoint.spacing = 10;
      pnlEndingPoint.margins = 10;

      // GRPMAINENDINGPOINTGROUP
      // =======================
      var grpMainEndingPointGroup = pnlEndingPoint.add(“group”, undefined, {name: “grpMainEndingPointGroup”});
      grpMainEndingPointGroup.orientation = “row”;
      grpMainEndingPointGroup.alignChildren = [“left”,”center”];
      grpMainEndingPointGroup.spacing = 11;
      grpMainEndingPointGroup.margins = 0;

      // GRPENDINGCYANCOLUMN
      // ===================
      var grpEndingCyanColumn = grpMainEndingPointGroup.add(“group”, undefined, {name: “grpEndingCyanColumn”});
      grpEndingCyanColumn.orientation = “column”;
      grpEndingCyanColumn.alignChildren = [“center”,”center”];
      grpEndingCyanColumn.spacing = 3;
      grpEndingCyanColumn.margins = 0;

      var lblEndingCyan = grpEndingCyanColumn.add(“statictext”, undefined, undefined, {name: “lblEndingCyan”});
      lblEndingCyan.text = “Cyan”;

      var txtEndingCyan = grpEndingCyanColumn.add(‘edittext {properties: {name: “txtEndingCyan”}}’);
      txtEndingCyan.helpTip = “Enter a number between 0 and 100”;
      txtEndingCyan.preferredSize.width = 36;

      // GRPENDINGMAGENTACOLUMN
      // ======================
      var grpEndingMagentaColumn = grpMainEndingPointGroup.add(“group”, undefined, {name: “grpEndingMagentaColumn”});
      grpEndingMagentaColumn.preferredSize.width = 68;
      grpEndingMagentaColumn.orientation = “column”;
      grpEndingMagentaColumn.alignChildren = [“center”,”center”];
      grpEndingMagentaColumn.spacing = 3;
      grpEndingMagentaColumn.margins = 0;

      var lblEndingMagenta = grpEndingMagentaColumn.add(“statictext”, undefined, undefined, {name: “lblEndingMagenta”});
      lblEndingMagenta.text = “Magenta”;

      var txtEndingMagenta = grpEndingMagentaColumn.add(‘edittext {properties: {name: “txtEndingMagenta”}}’);
      txtEndingMagenta.helpTip = “Enter a number between 0 and 100”;
      txtEndingMagenta.preferredSize.width = 36;

      // GRPENDINGYELLOWCOLUMN
      // =====================
      var grpEndingYellowColumn = grpMainEndingPointGroup.add(“group”, undefined, {name: “grpEndingYellowColumn”});
      grpEndingYellowColumn.preferredSize.width = 49;
      grpEndingYellowColumn.orientation = “column”;
      grpEndingYellowColumn.alignChildren = [“left”,”center”];
      grpEndingYellowColumn.spacing = 3;
      grpEndingYellowColumn.margins = 0;

      var lblEndingYellow = grpEndingYellowColumn.add(“statictext”, undefined, undefined, {name: “lblEndingYellow”});
      lblEndingYellow.text = “Yellow”;

      var txtEndingYellow = grpEndingYellowColumn.add(‘edittext {properties: {name: “txtEndingYellow”}}’);
      txtEndingYellow.helpTip = “Enter a number between 0 and 100”;
      txtEndingYellow.preferredSize.width = 36;

      // GRPENDINGBLACKCOLUMN
      // ====================
      var grpEndingBlackColumn = grpMainEndingPointGroup.add(“group”, undefined, {name: “grpEndingBlackColumn”});
      grpEndingBlackColumn.preferredSize.width = 49;
      grpEndingBlackColumn.orientation = “column”;
      grpEndingBlackColumn.alignChildren = [“left”,”center”];
      grpEndingBlackColumn.spacing = 3;
      grpEndingBlackColumn.margins = 0;

      var lblEndingBlack = grpEndingBlackColumn.add(“statictext”, undefined, undefined, {name: “lblEndingBlack”});
      lblEndingBlack.text = “Black”;

      var txtEndingBlack = grpEndingBlackColumn.add(‘edittext {properties: {name: “txtEndingBlack”}}’);
      txtEndingBlack.helpTip = “Enter a number between 0 and 100”;
      txtEndingBlack.preferredSize.width = 36;

      // GRPENDINGSPECIALTYCOLUMN
      // ========================
      var grpEndingSpecialtyColumn = grpMainEndingPointGroup.add(“group”, undefined, {name: “grpEndingSpecialtyColumn”});
      grpEndingSpecialtyColumn.preferredSize.width = 60;
      grpEndingSpecialtyColumn.orientation = “column”;
      grpEndingSpecialtyColumn.alignChildren = [“left”,”center”];
      grpEndingSpecialtyColumn.spacing = 3;
      grpEndingSpecialtyColumn.margins = 0;

      var lblEndingSpecialty = grpEndingSpecialtyColumn.add(“statictext”, undefined, undefined, {name: “lblEndingSpecialty”});
      lblEndingSpecialty.text = “Specialty”;

      var cboEndingSpecialty_array = [“Gold”,”Silver”,”White”,”Clear”,”Orange”,”Blue”,”Green”,”Yellow”];
      var cboEndingSpecialty = grpEndingSpecialtyColumn.add(“dropdownlist”, undefined, undefined, {name: “cboEndingSpecialty”, items: cboEndingSpecialty_array});
      cboEndingSpecialty.helpTip = “Choose your specialty colour”;
      cboEndingSpecialty.selection = 0;

      // GRPENDINGSPECIALTYCOLUMN1
      // =========================
      var grpEndingSpecialtyColumn1 = grpMainEndingPointGroup.add(“group”, undefined, {name: “grpEndingSpecialtyColumn1”});
      grpEndingSpecialtyColumn1.preferredSize.width = 49;
      grpEndingSpecialtyColumn1.orientation = “column”;
      grpEndingSpecialtyColumn1.alignChildren = [“center”,”center”];
      grpEndingSpecialtyColumn1.spacing = 3;
      grpEndingSpecialtyColumn1.margins = 0;

      var lblEndingSpecialty1 = grpEndingSpecialtyColumn1.add(“statictext”, undefined, undefined, {name: “lblEndingSpecialty1”});
      lblEndingSpecialty1.text = “Specialty”;

      var txtEndingSpecialty = grpEndingSpecialtyColumn1.add(‘edittext {properties: {name: “txtEndingSpecialty”}}’);
      txtEndingSpecialty.helpTip = “Enter a number between 0 and 100”;
      txtEndingSpecialty.preferredSize.width = 36;

      // PNLSWATCHTOSWATCHPROGRESSION
      // ============================
      var pnlSwatchToSwatchProgression = mainWindow.add(“panel”, undefined, undefined, {name: “pnlSwatchToSwatchProgression”});
      pnlSwatchToSwatchProgression.text = “Swatch To Swatch Progression”;
      pnlSwatchToSwatchProgression.preferredSize.width = 407;
      pnlSwatchToSwatchProgression.orientation = “column”;
      pnlSwatchToSwatchProgression.alignChildren = [“center”,”top”];
      pnlSwatchToSwatchProgression.spacing = 0;
      pnlSwatchToSwatchProgression.margins = [10,15,10,0];

      // GRPSWATCHTOSWATCHPROGRESSIONOPTIONS
      // ===================================
      var grpSwatchToSwatchProgressionOptions = pnlSwatchToSwatchProgression.add(“group”, undefined, {name: “grpSwatchToSwatchProgressionOptions”});
      grpSwatchToSwatchProgressionOptions.orientation = “row”;
      grpSwatchToSwatchProgressionOptions.alignChildren = [“left”,”center”];
      grpSwatchToSwatchProgressionOptions.spacing = 10;
      grpSwatchToSwatchProgressionOptions.margins = 0;

      var rboSwatchToSwatchProgressionAutomatic = grpSwatchToSwatchProgressionOptions.add(“radiobutton”, undefined, undefined, {name: “rboSwatchToSwatchProgressionAutomatic”});
      rboSwatchToSwatchProgressionAutomatic.text = “Automatic”;
      rboSwatchToSwatchProgressionAutomatic.value = true;

      var rboSwatchToSwatchProgressionCustom = grpSwatchToSwatchProgressionOptions.add(“radiobutton”, undefined, undefined, {name: “rboSwatchToSwatchProgressionCustom”});
      rboSwatchToSwatchProgressionCustom.text = “Custom”;

      // GRPSWATCHTOSWATCHPROGRESSIONNUMBERS
      // ===================================
      var grpSwatchToSwatchProgressionNumbers = pnlSwatchToSwatchProgression.add(“group”, undefined, {name: “grpSwatchToSwatchProgressionNumbers”});
      grpSwatchToSwatchProgressionNumbers.orientation = “row”;
      grpSwatchToSwatchProgressionNumbers.alignChildren = [“left”,”center”];
      grpSwatchToSwatchProgressionNumbers.spacing = 11;
      grpSwatchToSwatchProgressionNumbers.margins = 6;

      // GRPSWATCHTOSWATCHPROGRESSIONCYAN
      // ================================
      var grpSwatchToSwatchProgressionCyan = grpSwatchToSwatchProgressionNumbers.add(“group”, undefined, {name: “grpSwatchToSwatchProgressionCyan”});
      grpSwatchToSwatchProgressionCyan.orientation = “column”;
      grpSwatchToSwatchProgressionCyan.alignChildren = [“center”,”center”];
      grpSwatchToSwatchProgressionCyan.spacing = 3;
      grpSwatchToSwatchProgressionCyan.margins = 0;

      var lblSwatchToSwatchProgressionCyan = grpSwatchToSwatchProgressionCyan.add(“statictext”, undefined, undefined, {name: “lblSwatchToSwatchProgressionCyan”});
      lblSwatchToSwatchProgressionCyan.text = “Cyan”;

      var txtSwatchToSwatchProgressionCyan = grpSwatchToSwatchProgressionCyan.add(‘edittext {properties: {name: “txtSwatchToSwatchProgressionCyan”}}’);
      txtSwatchToSwatchProgressionCyan.helpTip = “Enter a number between 0 and 100”;
      txtSwatchToSwatchProgressionCyan.preferredSize.width = 36;

      // GRPSWATCHTOSWATCHPROGRESSIONMAGENTA
      // ===================================
      var grpSwatchToSwatchProgressionMagenta = grpSwatchToSwatchProgressionNumbers.add(“group”, undefined, {name: “grpSwatchToSwatchProgressionMagenta”});
      grpSwatchToSwatchProgressionMagenta.preferredSize.width = 68;
      grpSwatchToSwatchProgressionMagenta.orientation = “column”;
      grpSwatchToSwatchProgressionMagenta.alignChildren = [“center”,”center”];
      grpSwatchToSwatchProgressionMagenta.spacing = 3;
      grpSwatchToSwatchProgressionMagenta.margins = 0;

      var lblSwatchToSwatchProgressionMagenta = grpSwatchToSwatchProgressionMagenta.add(“statictext”, undefined, undefined, {name: “lblSwatchToSwatchProgressionMagenta”});
      lblSwatchToSwatchProgressionMagenta.text = “Magenta”;

      var txtSwatchToSwatchProgressionMagenta = grpSwatchToSwatchProgressionMagenta.add(‘edittext {properties: {name: “txtSwatchToSwatchProgressionMagenta”}}’);
      txtSwatchToSwatchProgressionMagenta.helpTip = “Enter a number between 0 and 100”;
      txtSwatchToSwatchProgressionMagenta.preferredSize.width = 36;

      // GRPSWATCHTOSWATCHPROGRESSIONYELLOW
      // ==================================
      var grpSwatchToSwatchProgressionYellow = grpSwatchToSwatchProgressionNumbers.add(“group”, undefined, {name: “grpSwatchToSwatchProgressionYellow”});
      grpSwatchToSwatchProgressionYellow.preferredSize.width = 49;
      grpSwatchToSwatchProgressionYellow.orientation = “column”;
      grpSwatchToSwatchProgressionYellow.alignChildren = [“left”,”center”];
      grpSwatchToSwatchProgressionYellow.spacing = 3;
      grpSwatchToSwatchProgressionYellow.margins = 0;

      var lblSwatchToSwatchProgressionYellow = grpSwatchToSwatchProgressionYellow.add(“statictext”, undefined, undefined, {name: “lblSwatchToSwatchProgressionYellow”});
      lblSwatchToSwatchProgressionYellow.text = “Yellow”;

      var txtSwatchToSwatchProgressionYellow = grpSwatchToSwatchProgressionYellow.add(‘edittext {properties: {name: “txtSwatchToSwatchProgressionYellow”}}’);
      txtSwatchToSwatchProgressionYellow.helpTip = “Enter a number between 0 and 100”;
      txtSwatchToSwatchProgressionYellow.preferredSize.width = 36;

      // GRPSWATCHTOSWATCHPROGRESSIONBLACK
      // =================================
      var grpSwatchToSwatchProgressionBlack = grpSwatchToSwatchProgressionNumbers.add(“group”, undefined, {name: “grpSwatchToSwatchProgressionBlack”});
      grpSwatchToSwatchProgressionBlack.preferredSize.width = 49;
      grpSwatchToSwatchProgressionBlack.orientation = “column”;
      grpSwatchToSwatchProgressionBlack.alignChildren = [“left”,”center”];
      grpSwatchToSwatchProgressionBlack.spacing = 3;
      grpSwatchToSwatchProgressionBlack.margins = 0;

      var lblSwatchToSwatchProgressionBlack = grpSwatchToSwatchProgressionBlack.add(“statictext”, undefined, undefined, {name: “lblSwatchToSwatchProgressionBlack”});
      lblSwatchToSwatchProgressionBlack.text = “Black”;

      var txtSwatchToSwatchProgressionBlack = grpSwatchToSwatchProgressionBlack.add(‘edittext {properties: {name: “txtSwatchToSwatchProgressionBlack”}}’);
      txtSwatchToSwatchProgressionBlack.helpTip = “Enter a number between 0 and 100”;
      txtSwatchToSwatchProgressionBlack.preferredSize.width = 36;

      // GRPSWATCHTOSWATCHPROGRESSIONSPECIALTY
      // =====================================
      var grpSwatchToSwatchProgressionSpecialty = grpSwatchToSwatchProgressionNumbers.add(“group”, undefined, {name: “grpSwatchToSwatchProgressionSpecialty”});
      grpSwatchToSwatchProgressionSpecialty.preferredSize.width = 60;
      grpSwatchToSwatchProgressionSpecialty.orientation = “column”;
      grpSwatchToSwatchProgressionSpecialty.alignChildren = [“left”,”center”];
      grpSwatchToSwatchProgressionSpecialty.spacing = 3;
      grpSwatchToSwatchProgressionSpecialty.margins = 0;

      var lblSwatchToSwatchProgressionSpecialty = grpSwatchToSwatchProgressionSpecialty.add(“statictext”, undefined, undefined, {name: “lblSwatchToSwatchProgressionSpecialty”});
      lblSwatchToSwatchProgressionSpecialty.text = “Specialty”;

      var txtSwatchToSwatchProgressionSpecialty = grpSwatchToSwatchProgressionSpecialty.add(‘edittext {properties: {name: “txtSwatchToSwatchProgressionSpecialty”}}’);
      txtSwatchToSwatchProgressionSpecialty.helpTip = “Enter a number between 0 and 100”;
      txtSwatchToSwatchProgressionSpecialty.preferredSize.width = 36;

      // GRPBUTTONS
      // ==========
      var grpButtons = mainWindow.add(“group”, undefined, {name: “grpButtons”});
      grpButtons.preferredSize.width = 360;
      grpButtons.orientation = “row”;
      grpButtons.alignChildren = [“right”,”center”];
      grpButtons.spacing = 10;
      grpButtons.margins = 0;

      var btnCancel = grpButtons.add(“button”, undefined, undefined, {name: “btnCancel”});
      btnCancel.text = “Cancel”;
      btnCancel.preferredSize.width = 66;

      var btnLetItShine = grpButtons.add(“button”, undefined, undefined, {name: “btnLetItShine”});
      btnLetItShine.text = “Let it shine”;
      // ==================================================================================================================================================================
      //
      // End of main window definition
      //
      // ==================================================================================================================================================================

      // ==================================================================================================================================================================
      // App type (Pantone book or custom)
      // ==================================================================================================================================================================

      rboAppTypeCustom.onClick = function()
      {
      pnlSheetSize.visible = true;
      txtCustomSheetSizeWidth.visible =false;
      txtCustomSheetSizeHeight.visible =false;
      lblCustomSheetSizeWidth.visible =false;
      lblCustomSheetSizeHeight.visible =false;
      pnlSwatchShape.visible = true;
      rboSwatchShapeRectangle.value = true;
      rboSwatchShapeCustom.value = false;
      cboCustomSwatchShape.visible = false;
      txtCustomSwatchShapeDiameter.visible = false;
      lblSwatchShapeDiameter.visible = false;
      txtShapeWidth.text = “”;
      txtShapeHeight.text = “”;
      txtCustomSwatchShapeDiameter.text = “”;
      txtShapeWidth.visible =true;
      txtShapeHeight.visible =true;
      lblCustomswatchWidth.visible =true;
      lblCustomswatchHeight.visible =true;
      pnlStartingPoint.visible = true;
      cboStartingSpecialty.selection = 1;
      pnlEndingPoint.visible = true;
      pnlSwatchToSwatchProgression.visible = true;
      txtSwatchToSwatchProgressionCyan.visible =false;
      txtSwatchToSwatchProgressionMagenta.visible =false;
      txtSwatchToSwatchProgressionYellow.visible =false;
      txtSwatchToSwatchProgressionMagenta.visible =false;
      txtSwatchToSwatchProgressionBlack.visible =false;
      txtSwatchToSwatchProgressionSpecialty.visible =false;
      lblSwatchToSwatchProgressionCyan.visible =false;
      lblSwatchToSwatchProgressionMagenta.visible =false;
      lblSwatchToSwatchProgressionYellow.visible =false;
      lblSwatchToSwatchProgressionBlack.visible = false;
      lblSwatchToSwatchProgressionSpecialty.visible =false;
      pnlPalette.visible = true;
      };

      rboAppTypeAlaPantoneBridge.onClick = function()
      {
      pnlSheetSize.visible = false;
      pnlSwatchShape.visible = false;
      pnlStartingPoint.visible = false;
      pnlEndingPoint.visible = false;
      pnlSwatchToSwatchProgression.visible = false;
      pnlPalette.visible = false;
      };

      // ==================================================================================================================================================================
      // Palette name
      // ==================================================================================================================================================================
      txtPaletteName.onChange = function()
      {
      if(txtPaletteName.text.length > 0)
      {
      paletteName = txtPaletteName.text;
      }
      else
      {
      paletteName = “unnamed palette”;
      }
      }

      rboPaletteCustom.onClick = function()
      {
      grpPaletteName.visible = true;
      pnlStartingPoint.visible =true;
      pnlEndingPoint.visible =true;
      pnlSwatchToSwatchProgression.visible =true;
      };

      rboPaletteAutomatic.onClick = function()
      {
      grpPaletteName.visible = false;
      pnlStartingPoint.visible =false;
      pnlEndingPoint.visible =false;
      pnlSwatchToSwatchProgression.visible =false;
      };

      // ==================================================================================================================================================================
      // Sheet size
      // ==================================================================================================================================================================

      rboSheetSizeStandard.onClick = function()
      {
      txtCustomSheetSizeWidth.visible =false;
      txtCustomSheetSizeHeight.visible =false;
      lblCustomSheetSizeWidth.visible =false;
      lblCustomSheetSizeHeight.visible =false;
      cboStandardSheetSize.visible = true;
      txtCustomSheetSizeWidth.text = “”;
      txtCustomSheetSizeHeight.text = “”;
      sheetSize = “”;
      sheetWidth = “”;
      };
      rboSheetSizeCustom.onClick = function()
      {
      txtCustomSheetSizeWidth.visible =true;
      txtCustomSheetSizeHeight.visible =true;
      lblCustomSheetSizeWidth.visible =true;
      lblCustomSheetSizeHeight.visible =true;
      cboStandardSheetSize.visible = false;
      txtCustomSheetSizeWidth.text = “”;
      txtCustomSheetSizeHeight.text = “”;
      sheetSize = “”;
      sheetWidth = “”;
      };

      cboStandardSheetSize.onChange = function(){
      if(cboStandardSheetSize.selection) //not null
      {
      standardSheetSize = cboStandardSheetSize.selection.text;
      $.writeln(cboStandardSheetSize.selection.text.length);
      }

      };

      txtCustomSheetSizeWidth.onChanging = function(){
      this.text = this.text.replace(“[+-]?[0-9]+(.[0-9]+)?([Ee][+-]?[0-9]+)?”,”);
      if ((parseFloat(this.text) > 100)){this.text = “”;}
      sheetWidth = txtCustomSheetSizeWidth.text;
      }
      txtCustomSheetSizeWidth.onChange = function(){
      sheetWidth = parseFloat(txtCustomSheetSizeWidth.text);
      };

      txtCustomSheetSizeHeight.onChange = function(){
      sheetHeight = parseFloat(txtCustomSheetSizeHeight.text);
      };
      txtCustomSheetSizeHeight.onChanging = function(){
      this.text = this.text.replace(“[+-]?[0-9]+(.[0-9]+)?([Ee][+-]?[0-9]+)?”,”);
      if (parseFloat(this.text) > 100){this.text = “”;}
      sheetHeight = parseFloat(txtCustomSheetSizeHeight.text);
      }
      cboStandardSheetSize.onChange = function()
      {
      if(cboStandardSheetSize.selection) //if user selects the separating lines then this becomes null
      {
      switch(cboStandardSheetSize.selection.text) //”11 x 17″,”12 x 18″,”12.5 x 19″,”13 x 19″,”-“,”13 x 26″,”13 x 40″,”13 x 47″,”-“,”8.5 x 11″,”8.5 x 14”]
      {
      case “11 x 17”:
      sheetHeight = “11 in”;
      sheetWidth = “17 in”;
      break;
      case “12 x 18”:
      sheetHeight = “12 in”;
      sheetWidth = “18 in”;
      break;
      case “12.5 x 19”:
      sheetHeight = “12.5 in”;
      sheetWidth = “19 in”;
      break;
      case “13 x 19”:
      sheetHeight = “13 in”;
      sheetWidth = “19 in”;
      break;
      case “13 x 26”:
      sheetHeight = “13 in”;
      sheetWidth = “26 in”;
      break;
      case “13 x 40”:
      sheetHeight = “13 in”;
      sheetWidth = “40 in”;
      break;
      case “13 x 47”:
      sheetHeight = “13 in”;
      sheetWidth = “47 in”;
      break;
      case “8.5 x 11”:
      sheetHeight = “11 in”;
      sheetWidth = “8.5 in”;
      break;
      case “8.5 x 14”:
      sheetHeight = “14 in”;
      sheetWidth = “8.5 in”;
      break;
      }
      }
      else
      {
      cboStandardSheetSize.selection = 0;
      }
      };
      // ==================================================================================================================================================================
      // Swatch shape
      // ==================================================================================================================================================================
      rboSwatchShapeCustom.onClick = function()
      {

      txtShapeWidth.visible =false;
      txtShapeHeight.visible =false;
      lblCustomswatchWidth.visible =false;
      lblCustomswatchHeight.visible =false;
      cboCustomSwatchShape.visible =true;
      txtCustomSwatchShapeDiameter.visible = true;
      lblSwatchShapeDiameter.visible = true;
      txtCustomSwatchShapeDiameter.text = “”;
      txtShapeWidth.text = “”;
      txtShapeHeight.text = “”;

      };

      rboSwatchShapeRectangle.onClick = function()
      {
      txtShapeWidth.visible =true;
      txtShapeHeight.visible =true;
      lblCustomswatchWidth.visible =true;
      lblCustomswatchHeight.visible =true;
      cboCustomSwatchShape.visible = false;
      txtCustomSwatchShapeDiameter.visible = false;
      lblSwatchShapeDiameter.visible = false;
      txtShapeWidth.text = “”;
      txtShapeHeight.text = “”;
      txtCustomSwatchShapeDiameter.text = “”;
      customSwatchShapeNumberOfSides = 4;
      };

      cboCustomSwatchShape.onChange = function()
      {
      if(cboCustomSwatchShape.selection.text == “”)
      {
      cboCustomSwatchShape.selection = 0;
      }
      customSwatchShape = cboCustomSwatchShape.selection.text;

      switch(customSwatchShape)
      {
      case “Circle”:
      customSwatchShapeNumberOfSides = 0;
      break;
      case “Triangle”:
      customSwatchShapeNumberOfSides = 3;
      break;
      case “Square”:
      customSwatchShapeNumberOfSides = 4;
      break;
      case “Pentagon”:
      customSwatchShapeNumberOfSides = 5;
      break;
      case “Hexagon”:
      customSwatchShapeNumberOfSides = 6;
      break;
      case “Octogon”:
      customSwatchShapeNumberOfSides = 8;
      break;
      }
      };

      txtShapeWidth.onChange = function(){
      swatchWidth = parseFloat(txtShapeWidth.text);
      };
      txtShapeWidth.onChanging = function(){

      this.text = this.text.replace(“[+-]?[0-9]+(.[0-9]+)?([Ee][+-]?[0-9]+)?”,”);
      if (parseFloat(this.text) > 100){this.text = “”;}
      }

      txtShapeHeight.onChange = function(){
      swatchHeight = parseFloat(txtShapeHeight.text);
      };
      txtShapeHeight.onChanging = function(){
      this.text = this.text.replace(“[+-]?[0-9]+(.[0-9]+)?([Ee][+-]?[0-9]+)?”,”);
      if (parseFloat(this.text) > 100){this.text = “”;}
      }

      txtCustomSwatchShapeDiameter.onChange = function(){
      customSwatchShapeDiameter = parseFloat(txtCustomSwatchShapeDiameter.text);
      swatchWidth = customSwatchShapeDiameter;
      swatchHeight = customSwatchShapeDiameter;
      };
      txtCustomSwatchShapeDiameter.onChanging = function(){
      this.text = this.text.replace(“[+-]?[0-9]+(.[0-9]+)?([Ee][+-]?[0-9]+)?”,”);
      if (parseFloat(this.text) > 100){this.text = “”;}
      customSwatchShapeNumberOfSides = parseFloat(txtCustomSwatchShapeDiameter.text);
      }

      // ==================================================================================================================================================================
      // Starting Colour
      // ==================================================================================================================================================================
      txtStartingCyan.onChange = function(){
      startingCyan = parseFloat(txtStartingCyan.text);
      };
      txtStartingCyan.onChanging = function(){
      this.text = this.text.replace(“[+-]?[0-9]+(.[0-9]+)?([Ee][+-]?[0-9]+)?”,”);
      if (parseFloat(this.text) > 100){this.text = “”;}
      }
      txtStartingMagenta.onChange = function(){
      startingMagenta = parseFloat(txtStartingMagenta.text);
      };
      txtStartingMagenta.onChanging = function(){
      this.text = this.text.replace(“[+-]?[0-9]+(.[0-9]+)?([Ee][+-]?[0-9]+)?”,”);
      if (parseFloat(this.text) > 100){this.text = “”;}
      }
      txtStartingYellow.onChange = function(){
      startingYellow = parseFloat(txtStartingYellow.text);
      };
      txtStartingYellow.onChanging = function(){
      this.text = this.text.replace(“[+-]?[0-9]+(.[0-9]+)?([Ee][+-]?[0-9]+)?”,”);
      if (parseFloat(this.text) > 100){this.text = “”;}
      }
      txtStartingBlack.onChange = function(){
      startingBlack = parseFloat(txtStartingBlack.text);
      };
      txtStartingBlack.onChanging = function(){
      this.text = this.text.replace(“[+-]?[0-9]+(.[0-9]+)?([Ee][+-]?[0-9]+)?”,”);
      if (parseFloat(this.text) > 100){this.text = “”;}
      }
      cboStartingSpecialty.onChange = function(){
      cboEndingSpecialty.selection = cboEndingSpecialty.find(cboStartingSpecialty.selection);
      selectedSpecialty =cboEndingSpecialty.selection.text;

      };
      txtStartingSpecialty.onChange = function(){
      startingSpecialty = txtStartingSpecialty.text;
      }

      // ==================================================================================================================================================================
      // Ending Colour
      // ==================================================================================================================================================================
      txtEndingCyan.onChange = function(){
      endingCyan = parseFloat(txtEndingCyan.text);
      };
      txtEndingCyan.onChanging = function(){
      this.text = this.text.replace(“[+-]?[0-9]+(.[0-9]+)?([Ee][+-]?[0-9]+)?”,”);
      if (parseFloat(this.text) > 100){this.text = “”;}
      }
      txtEndingMagenta.onChange = function(){
      endingMagenta = parseFloat(txtEndingMagenta.text);
      };
      txtEndingMagenta.onChanging = function(){
      this.text = this.text.replace(“[+-]?[0-9]+(.[0-9]+)?([Ee][+-]?[0-9]+)?”,”);
      if (parseFloat(this.text) > 100){this.text = “”;}
      }
      txtEndingYellow.onChange = function(){
      endingYellow = parseFloat(txtEndingYellow.text);
      };
      txtEndingYellow.onChanging = function(){
      this.text = this.text.replace(“[+-]?[0-9]+(.[0-9]+)?([Ee][+-]?[0-9]+)?”,”);
      if (parseFloat(this.text) > 100){this.text = “”;}
      }
      txtEndingBlack.onChange = function(){
      endingBlack = parseFloat(txtEndingBlack.text);
      };
      txtEndingBlack.onChanging = function(){
      this.text = this.text.replace(“[+-]?[0-9]+(.[0-9]+)?([Ee][+-]?[0-9]+)?”,”);
      if (parseFloat(this.text) > 100){this.text = “”;}
      }
      cboEndingSpecialty.onChange = function(){
      cboStartingSpecialty.selection = cboStartingSpecialty.find(cboEndingSpecialty.selection);
      };
      txtEndingSpecialty.onChange = function(){
      endingSpecialty = parseFloattxtEndingSpecialty.text;
      selectedSpecialty = cboEndingSpecialty.selection.text;
      }

      rboSwatchToSwatchProgressionAutomatic.onClick = function()
      {
      txtSwatchToSwatchProgressionCyan.visible =false;
      txtSwatchToSwatchProgressionMagenta.visible =false;
      txtSwatchToSwatchProgressionYellow.visible =false;
      txtSwatchToSwatchProgressionBlack.visible =false;
      txtSwatchToSwatchProgressionSpecialty.visible =false;
      lblSwatchToSwatchProgressionCyan.visible =false;
      lblSwatchToSwatchProgressionMagenta.visible =false;
      lblSwatchToSwatchProgressionYellow.visible =false;
      lblSwatchToSwatchProgressionBlack.visible =false;
      lblSwatchToSwatchProgressionSpecialty.visible =false;
      };
      rboSwatchToSwatchProgressionCustom.onClick = function()
      {
      txtSwatchToSwatchProgressionCyan.visible =true;
      txtSwatchToSwatchProgressionMagenta.visible =true;
      txtSwatchToSwatchProgressionYellow.visible =true;
      txtSwatchToSwatchProgressionBlack.visible =true;
      txtSwatchToSwatchProgressionSpecialty.visible =true;
      lblSwatchToSwatchProgressionCyan.visible =true;
      lblSwatchToSwatchProgressionMagenta.visible =true;
      lblSwatchToSwatchProgressionYellow.visible =true;
      lblSwatchToSwatchProgressionBlack.visible =true;
      lblSwatchToSwatchProgressionSpecialty.visible =true;
      };

      // ==================================================================================================================================================================
      // Progression Colour
      // ==================================================================================================================================================================
      txtSwatchToSwatchProgressionCyan.onChanging = function(){
      this.text = this.text.replace(“[+-]?[0-9]+(.[0-9]+)?([Ee][+-]?[0-9]+)?”,”);
      if (parseFloat(this.text) > 100){this.text = “”;}
      }
      txtSwatchToSwatchProgressionCyan.onChange = function(){
      progressionCyan = parseFloat(txtSwatchToSwatchProgressionCyan.selection.text);
      };
      txtSwatchToSwatchProgressionMagenta.onChanging = function(){
      this.text = this.text.replace(“[+-]?[0-9]+(.[0-9]+)?([Ee][+-]?[0-9]+)?”,”);
      if (parseFloat(this.text) > 100){this.text = “”;}
      }
      txtSwatchToSwatchProgressionMagenta.onChange = function(){
      progressionMagenta = parseFloat(txtSwatchToSwatchProgressionMagenta.selection.text);
      };
      txtSwatchToSwatchProgressionYellow.onChanging = function(){
      this.text = this.text.replace(“[+-]?[0-9]+(.[0-9]+)?([Ee][+-]?[0-9]+)?”,”);
      if (parseFloat(this.text) > 100){this.text = “”;}
      }
      txtSwatchToSwatchProgressionYellow.onChange = function(){
      progressionYellow = parseFloat(txtSwatchToSwatchProgressionYellow.selection.text);
      };
      txtSwatchToSwatchProgressionSpecialty.onChanging = function(){
      this.text = this.text.replace(“[+-]?[0-9]+(.[0-9]+)?([Ee][+-]?[0-9]+)?”,”);
      if (parseFloat(this.text) > 100){this.text = “”;}
      }
      txtSwatchToSwatchProgressionSpecialty.onChange = function(){
      progressionSpecialty = parseFloat(txtSwatchToSwatchProgressionSpecialty.selection.text);
      };

      // ==================================================================================================================================================================
      // Buttons (cancel and letitshine)
      // ==================================================================================================================================================================
      btnLetItShine.onClick = function()
      {

      if (ui_validation_is_okay() == true) {

      if (rboAppTypeAlaPantoneBridge.value == true) {
      createPantoneBridge();
      }

      if (rboAppTypeCustom.value == true) {
      createCustomApp();
      var myWindow = new Window(“dialog”,”Success!”);
      myWindow.margins = 16;

      var myMessage = myWindow.add(“statictext”);
      myMessage.text = “Grateful for this tool?” ;
      var myMessage2 = myWindow.add(“statictext”);
      myMessage2.graphics.font = ScriptUI.newFont (“Arial”, ‘BOLD’, 12);
      myMessage2.text = “Buy me a coffee!”;
      var myMessage2ww2 = myWindow.add(“statictext”);
      myMessage2ww2.text = ” Don’t wait!!! “;
      var myMessage22 = myWindow.add(“statictext”);
      myMessage22.text = “Invest in the probability of seeing more useful tools coming your way!”;
      var myMessage5 = myWindow.add(“statictext”);
      myMessage5.text = “All donations go to my kids hobbies (robotics mostly)”;
      var myMessage3 = myWindow.add(“statictext”);
      myMessage3.text = “shaareable@gmail.com”;
      var myMessage4 = myWindow.add(“statictext”);
      myMessage4.text = “It did take, roughly speaking, dozens of hours to come up with this tool.”;
      var myMessage5 = myWindow.add(“statictext”);
      myMessage5.text = “Your donations are truly appreciated.”;
      var myMessage5 = myWindow.add(“statictext”);
      myMessage5.text = “Thank you!”;
      var imgLogo_imgString = “%C2%89PNG%0D%0A%1A%0A%00%00%00%0DIHDR%00%00%01-%00%00%00e%08%06%00%00%00%18%C2%9F%C2%B5%5B%00%00%00%09pHYs%00%00%0B%12%00%00%0B%12%01%C3%92%C3%9D~%C3%BC%00%00%15%C3%9BIDATx%C2%9C%C3%AD%C2%9D%C2%BFo%1C%C2%B7%C2%B6%C3%87%C2%A9%20%C2%BD%C2%AF%C3%92%C2%BE%01%C2%A2%2B%C3%BF%01%C3%91%C2%83%C3%94%C3%87%17%18%C2%95%17%C3%B1-%C2%A4%C3%96N%C2%A3)%C3%A3%C3%A6%C3%8D%C2%AA%C2%B3%C3%9DI%C3%9B%3C%C2%A5%5C5qZ%C2%AB%C2%88o%C2%9D%01b%C3%B7%16%C2%A2%C3%BC%01%C3%99g%03%5Bg%C2%AF%C3%BF%02%3D%1C%C3%A5%C3%8B%0D%C3%8D%259%C3%A4%2C9%C3%8BY%C2%9F%0F%60%C3%9C%C3%9C%C3%95%2C%C2%97%C3%83!%C3%8F%1C%C2%9E_%C3%9C%C2%BA%C2%BD%C2%BD%159R%C3%94%C3%8D%C2%8E%10%C3%A2B%08%C2%B1’%C2%84×2%1B%C2%97%C2%AF%C2%B2%C3%AC(%C3%830%C2%BD%C2%92%C2%9D%C3%90*%C3%AA%C3%A6o%24%C2%A4%C3%B0%C3%AF%C2%9E%C3%B2%C2%A77%10%5E7k%C3%AC%1E%C3%830k%26%2B%C2%A1U%C3%94%C3%8Dc!%C3%843!%C3%84%C2%97%C2%8E%C3%8B~%C2%84%C3%B0%C3%BAO%C2%8F%5Dc%18%26%13%3E%C3%8B%C3%ACA%C3%BC%C3%90%22%C2%B0%C2%88GB%C2%88wE%C3%9D%3C%C3%AB%C2%A9O%0C%C3%83dDn%C2%9AVhg%C3%9E%0B!%1E%C3%8F%C3%86%C3%A5%C3%ABD%5Db%18%263r%C3%93%C2%B4B!%C2%AD%C3%AC%C2%97%C2%A2n%5E%C3%83p%C3%8F0%C3%8C%C2%86%C3%93%C2%BB%C3%90J%24%5C%C2%BE%16B%C3%BC_Q7%170%C3%A43%0C%C2%B3%C2%A1%C3%B4%26%C2%B4HX%C2%91F%24%C2%84x%C2%91%C3%B0g%C2%BE%C2%83%C2%BD%C3%ABI%C3%82%C3%9F%60%18f%C2%8D%24%17Z%C2%A4%C3%B9%C2%90%06D%C2%9A%104%C2%A2%C3%94P%C2%98%C3%84%C3%BF%16usS%C3%94%C3%8D%03%C2%9E%5C%0C%C2%B3Y%24%15Z%C3%90x%C3%9EA%03%C3%AA%C2%9B%C2%AF%60%C3%AFz%C3%85%C3%B6.%C2%86%C3%99%1C%3EOq’%C3%90p%5Ex%C2%84%2F%C3%B4%C3%817%C3%B4%C2%AF%C2%A8%C2%9B%C3%A7%14a%C3%8F%C3%B1%5D%0C3l%C2%A2jZ%C2%B0%5BQ%C2%BA%C3%8D%2F%C2%99%08%2C%C2%95%C2%A7B%C2%88%1B%04%C2%B02%0C3P%C2%A2hZJ%C3%AA%C3%8D%C3%93%C3%8C%C2%87%C2%81%04%C3%A9%0F2%C3%B2%C2%9E%C3%A3%C2%BB%18fx%C2%AC%C2%ACiA%00%C2%BC%1B%C2%80%C3%80R%C3%B9%1A%C3%B6%C2%AE%17l%C3%AFb%C2%98a%C3%91Yh%C2%91%C3%9D%C2%8A%3CtH%C2%BD%C2%B9%C3%A7%C3%B1%C2%95%1Cy%C2%84-%23%C2%A7%041%C3%8C%40%08%16Z%C2%B0%5B%C2%BD%C2%80%C3%9D%C3%AA%C2%AB5%C3%9D%C3%A6%C3%BB%C2%88m%C2%91%C3%80%7DZ%C3%94%0D%C3%85w%3D%C2%8C%C3%98.%C3%830%09%C3%B0%C2%B6i9J%C3%86%C2%AC%03%12%C2%9A%C2%AFQo%2B%C2%96%C3%A0%24%7B%C3%97OE%C3%9D%0C%C2%AA%04NUU%C2%BBB%C2%88%5D%C3%AD%C3%A3%C3%AB%C3%89d2_S%C2%97%18%26)%5EB%0B%1A%C3%88EN%1EA%18%C3%91%C3%B7%10%0B%C3%B6%2C%C2%A2%20%25%7B%C3%97%C2%AFE%C3%9Dd%5B%02%C2%A7%C2%AA%C2%AA%7D!%C3%84%C2%89%10%C2%A24%08%2Cy%C3%8D%C2%94%C2%84%C2%97%10%C2%A2%11B%5C%C2%B1%10c6%05g%C2%95%C2%87%C2%A2n%C3%B6%20%C2%ACbF%C2%B2%C2%BF%C2%99%C2%8DKc%C2%A4z%40%C2%95%C2%87%C3%A7%C2%B3q%C2%B9%C2%B0C)UN%C2%BF%C2%89%C3%96%C3%8B%3F%C3%B9%00%2F%C3%A3E%C3%A4v%3B%01%C2%ADj%02a%15%C3%8A%C2%A5%10%C3%A2%7C2%C2%99Ls%C2%B8%17%C2%86%C3%A9%C2%8AQ%C3%93%C3%82V%C3%B0%02%C2%86%C3%AA%C3%98D%0F3%C2%98%C2%8DK%C3%B2%5E%3EL%10%C3%94*S%C2%82%C2%9E%C2%AC%C2%BB%04NUU%23!%04%C3%BD%C3%9B%C3%AE%C3%98%C3%84%094%C2%AFK%C2%AD%C3%9D3!%C3%84%C2%BE%C3%A1z%C3%9Ab%C2%9Ev%C3%BC-%26%03%C2%AA%C2%AA%C2%A2%C2%B9%C3%B2%C3%92%C3%92%13z%C2%815%C2%A1%C2%BD%C3%84%7C%19%19%C3%BE4%C2%9DL%26%C3%B7%C3%BB%C2%B8%C3%AB%25%C2%A1%05OZ%0A%C2%BBUr%5B%11%09%15h%C2%87%C2%B1c%C3%86d%09%C2%9C7%10%5E%C3%AF%22%C2%B6%C3%BD%11%C3%90%C2%A6%C2%8E%20%60%C3%B6!%C2%A4%C2%8El%C3%9B%C3%80%40L%C2%93%C3%944%01%C2%85%C3%A5ZfX%1C9%C2%B4%C3%B2%C2%AA%C3%A3%C2%9D%C3%98%C3%9A%C3%ABm%C2%BE%2C%C2%84V%C3%82%C3%94%C2%9B%0F%10V)%C2%AB%3B%2C%C2%80%0D%C3%AA%19%3C%C2%9C%2F%22ome%09%C2%9C%C3%AF%C2%B1mLa%C3%AF%C2%A2%C2%89v%C2%96%C2%A0%C3%9D%C2%A9%C2%BE5%C2%AC%C2%AA%C3%8A%C2%B5%C3%8Dd%C2%A15%7CL%1A%C2%B4%C2%80%16%1Dl%26%C2%80%C3%A6fm%C2%B3%C2%AF%C3%91%C3%BAL)%19%C2%93%22%C3%B5%C2%86%16%C3%B7N_%02K%C2%85%C2%B4!%C3%98%C3%8E%C2%BE%C2%85%C3%A0%C2%8C%C2%89%2C%C2%81%C2%93%22%25%C3%886)V%C3%85%24%C2%84l%C2%BF5%C2%9FL%26%C2%BDMB%26%19%C2%B1%C2%B5%C2%A2%2C%5Er%C2%9F%C2%A3dLl%C2%82%C2%B6%C2%82%C2%8A%C3%81%3F%3A%240%C2%91%0F%C3%B9%2Cr%C2%B5%C2%89%7BH%09%C3%9AQ%C2%9D%02%11%C2%B0M%C2%8C9%C3%BE%C3%89m%C3%A2%14v%09%C3%9DFUB%18%C3%ADCk%C2%93%C2%98%26%C3%95%C3%9AU%7D%26%0D%C2%96P%18I%C3%97%17%C2%92m%C2%BEt%C3%92%C3%9C%C2%BA%12%C2%BB%C3%8AC%C3%90V%10%06%C3%BF%C3%98%C3%82d%09l%C3%A3%C2%9E(%5B%C3%86u%05%C3%85%3AA(%C2%83nh%C2%A7%09v%C2%85%C3%BF%3ES%3E%3B4%C2%851%C3%80%C2%B8z’t0qG0%C3%82%C2%87%08-%C3%96%C2%B2%C2%86O%0A%C2%AD(%C2%8B%C2%97%5CL%C2%A1%15d%C3%A7%C3%81%C3%96%C3%AA%C2%A2%C3%8F%40Uh~)b%C2%BB%C2%A2%C2%80-%C3%99%C2%96%C3%9E%16%3C%C2%87%C2%AA%C2%9D%C3%AB%C3%94’%C3%AE%0Ao%C2%BF%C2%AA%C2%AA%C2%AAs%C3%BD%C3%BA%C2%AA%C2%AA%C2%8E%C3%AC%C3%9F%5C%08If%C2%B8X%05L%C2%97%C2%98%C2%BDD%C2%9A%5B’b%08%C2%AD%C2%AE%5B%C3%81%3E%C2%AA%C2%98%1A%C2%A1%C2%B8%2BE%C3%AB%C2%8A%1D%C3%9B%15%05%18%3DK%25%C2%88tA%C2%A8%C2%AB%C3%9A%C2%A2%C2%BA%C3%9B%C3%ACYK%06%7Bf%C2%90l%C2%A4%3DK%C2%AC(%C2%B4%C2%B2%C3%9B%0A%C3%82%03z%C2%81~9c%C2%AA%C2%A0%11%C2%A6%C2%88%C3%AD%C2%8A%C3%85%C3%8B%C2%8EA%C2%A4%C2%BE%C2%B0%3DkC%C2%B1%C2%98%19%24%5D%C2%B5%22%C2%97’%C2%B2%C3%97l%C2%8B%C2%AEU%1E%C2%82%C2%BC%C2%82J%C3%B9%C2%9A%3E%C3%8A.%7F%C2%A5%C2%94%C2%9Di%3D%C2%99%C2%87%C2%84%C3%9Bl%5CRD%C3%BD%C3%B3%1E%C3%BA%16%C2%82U%60a%C2%BB%C3%98%C2%99%5C%5C%C3%97L2%C2%ACs%C2%A7K%40)%C2%B0%C2%99%13z%7F%C3%89%C2%85jZ%C2%BF!%C2%B8r%08%5B%C3%81G%C3%90%C2%A4%C2%BC%C2%B4A%C3%B2%00%26%C2%8A%C3%AD%C3%AA%C3%8A%C3%94aC8%C2%AB%C2%AA%C2%8A%26%C3%A0y%C3%87%C2%B6%7BQ%C3%B5%15%C3%A1%18%3D%C2%84%22e%C3%9B%C3%AB%24%C3%92%7D%C3%99%5EH%C2%9Dl%C2%95-%C2%9A%5B%C3%B6B%C3%AB%C2%95%C2%8F%C3%80%C3%AA%C3%8B%2B%C3%A8%C3%81%3D%C2%A5Ri%C2%AB%C3%9D%C2%8Db%C2%BB%C2%90%11%C3%B0%C3%8B%C2%9A%C3%BB-%C2%A0%C3%B1%C2%B8%C2%A2%C3%A0%C3%8F%10%C3%9Ep%C3%9Aar%C2%BB%C2%BC%C2%86%C3%B3%C2%AA%C2%AA%C2%A4%1D%C2%AD%C3%84d%C2%9Dc%C3%82%7B9%00%60%C3%A4%1F%C2%A9%C2%8B%C2%A7%C2%AA%C2%AA9B4%C3%8E%C2%AB%C2%AAziys%C2%9F%C2%B7%C2%A5%0E%C3%85l%C2%BB%C2%AA%C2%AA%C2%9F-cq%C2%97%C2%A7%C2%A9%C3%98%13%C3%B7%C2%91t~l%C3%A9%C2%93%3E%5EB%C3%B1%C3%BA%5E%C3%B9%C3%98%08%23%C2%8F%C2%99%C3%B5%C3%B9B(%C2%AA%C3%BD%C2%9DC%C3%B0%5C%3A%C2%B4%C2%B0%C3%8E%C2%9A%5B%C2%8C%C2%B1%C3%91%C2%89~%C2%B0%C3%85%3A%C2%BC%C2%82%1E%C3%88%C3%8A%0DC%3A%C3%9C%C3%A2%C3%92%C2%A1%C2%92Kh%22%C2%BC%25%C3%AF%20%26%C2%AF%C2%AFm%C3%816%09iR%C3%BDnx%C2%AB%C3%8A%C2%89~TU%C3%95%C2%A1MHbAL%2C%C3%BD%C3%9E%C2%86%C2%A0%C3%9D%C3%AD%12j%C2%91%C2%A8m%C3%9B%C2%B5%C3%92%01%C2%A2%C2%B24%C2%B6%104g%C2%96%C2%97%C2%8B%C2%8C%C2%95%C2%A3~%C2%9D%C3%9A%C2%B4%C3%A2%C3%98%C3%B7%C2%85%17%C2%99%2B%3FU%7F%C2%BE2M%C2%8C%C2%9Em%C2%A5%C3%87%C3%BD)%C3%B7b%C3%82*%C2%B0b%C2%8C%C2%8D%C2%8Dh%07%5B%C3%90V%10%C2%91%C3%B59W2%C2%95%C2%87%5Bd_%C3%ACO%C2%8D%C2%B7%C3%B2%60%04%C3%A1%C3%95%1AM%C3%9F%C3%A2%C2%BA%C3%9Em%C2%99%C3%B0w%09%C2%B8Xhz%C2%BB%C3%B4%C3%99%C3%8F%1E%C2%82%C3%B6%24t%C2%AB%C2%91%C2%A2%C3%AD%C2%96%C2%90%0F%C3%93%C3%B8%2C4%02%C3%AA%0F%C2%ADo8K%7CrB%C3%8FLv%C3%88Dc%C3%A6%C2%9A%03g-%C3%8Fwb%19%17o%C2%A7M%C2%AC%C2%B1q%11Eh%C3%81v%C3%B5k%26%C2%B6%C2%A06d%C2%B1%C2%BF!%C2%9CB%7D%1C%60%18%C3%9F%C2%85%C3%A0%C3%925%04%C2%9DU%3D%C2%92%C2%BB%C2%BA%16%C2%A2%2C%C2%BEUR%C2%90%C2%8C%5E%C2%A8%C2%84m%C2%87%C2%B6’%03ve%7F%C3%9A%C3%86Yg%C2%A4%0A%C3%BB%C2%84%C3%B7%C2%B5%C3%AA%C3%B3%C3%BD(%C3%AF5%C3%84%C2%9E%15kl%C3%9A%C2%88%C2%A5i%C2%B5z%C3%A92%24%C3%BB%3EcB%1E%C3%82%C2%BE%C3%A2%C3%BD%C2%B5%16%C3%81%15%23%C2%B7Q_%18%13W%1E%C2%A3%C2%A7%C3%86h%C2%BB%26U%C3%9B!%C2%8B%5B5%C2%8A%C2%BB%C3%BA%C3%A3B%C3%B7%C3%98%C2%AE%C3%AB%C2%BEHc%3Cu%18%C3%A5w5%C2%8D%C3%9D%C2%9AVf0%13%C3%84%1A%1B’%C3%89%C2%8F%C3%85%C3%B7%C3%A4%3D%C2%82T%19%0D%12%5C0%C2%B4%1E%04l%17%C2%A5%1D%C3%84D%C3%9BV%C2%A4%C2%81%C2%86%C3%A7UK%0B%02%C3%92%C3%96%26-%C2%8C%C3%BB%C2%93%C3%89%C3%A4%10%C3%82%C3%97%C3%85%C2%92F%C2%99%C2%AAm%C2%8CM%C3%9B%22%C2%91U_%C3%A7%C2%8A%C2%965r%C3%B4G%C2%A6Vm%C3%A1Y%C2%99%C3%AC%C2%8B%C3%BB%C2%89%C3%AF%C2%AB%C3%AD%C3%99%C2%92%C2%BD%C3%AA%C2%80lHp*%C3%98%C2%B4x%1F%C2%A1%C2%A5kYQ%C3%86%C3%86%C2%87u%0B-%12V%C3%9F%22N%C2%8A%C3%8F%20t%40o5L%C3%A4J%C2%B5%C2%AFX%C3%986%C3%95%C3%89jQ%C3%B5%05%C2%8C%C3%B94%C2%B9%C2%AE%60%1Cu%C2%BA%C3%88%C2%A1%C3%92%C3%9B%C3%8A%C3%A8P%C2%BA%C3%88%C2%B1%C3%9C%C2%BE%C2%B4y%C2%99%C3%A87%C3%BBj%C2%BBE%1B%C2%99c%C2%81%1D%60%2C%C2%BE%20%01%C2%AE%C3%A4q%C2%9A%C2%90%C2%8B%C2%B2%11%7F%C2%A5c%C2%B9%0C%C3%AF%C2%A9%C3%AE%C3%8B%C2%B5%C3%B0%C2%AF%0D%C3%9E_%C3%9B%C3%B3U%C3%A7H%C2%AB%03%20%C3%96%C3%98%C3%B8%C2%B2.%C2%A1%C3%B5%01%C3%81%C2%9C%7B%C3%AB(%5B3d%C3%A0%C3%9D9%C3%90%2B%C2%90%1A81%C3%98%09%5C%C2%8B%C3%B5%C3%94%C3%A0%3A%C2%B7%0989%C3%B1m%06%C3%A2y%60%C2%919%C3%93%C3%A2L%C3%99%C2%B6kq%1F%C3%AA%C3%82%02ny%5B%C3%95X%C3%AA%C3%8F%C2%B1%C2%A7%C3%A7v%C2%9A%C3%B8%C2%BE%5C%C3%8F%C2%B7%0A%C2%8D%5C%0F%C2%A8%C2%B7%16kl%C2%BC%C2%88%1E%C3%B2%C3%A0A%C3%8A%02z%C2%9F%04%C2%98%04%C3%A4%C2%A1%16-F%C3%8FR%7B%C2%9BZ%5D%C3%97%16%C2%B7s%C3%9B%5B%C3%96%C3%B6%C3%9B%C2%A1%C2%B5%C3%A8mB%2BU%C3%9B%C2%B6%C3%BB%C2%BA4%C2%85s%40%C3%B8%C3%9B%C2%B6%3EK%C3%BDQb%C2%A1L%7Dy%C3%AB%C3%9BN%0B%26%23%C2%B8%C3%AD%C3%B9%1A%C3%AF%C3%8B%03W~%C3%AA%C2%B5%C2%88%3F6%5E%C2%ACC%C3%93z%C3%85%02%2B%1A%C2%A7%16%C3%BB%C2%80D%C2%B7k%C2%85%C2%B8%C2%AE%5Do%C3%99%2Bl5mv%C2%B3%25-%C2%B0%C3%85%3B%C2%A4%C3%9Bf%C3%96%C3%95%C2%B6m%C2%BBtd%C3%91%24%C2%A6%C2%BA%C2%B0W%C2%B6%7F%C3%BAo%5C%C3%A2%C2%B3%24c%C3%96%C2%A2eY%C2%8D%C3%AE%C2%8E%C3%AF%08%C3%8F%C3%94%C2%9D(c%13%C2%A2%05%C2%AEC%C3%93b%22A%0F%C2%BA%C2%AA%C2%AA%2B%1F%17sK%C3%90a%C3%88%16%C3%AA%C2%AE%0A%C2%84%23%C2%B6%C3%86v%5CYHT%C2%B5%C3%AD%C3%9A%C2%94m%C3%8F%1D6%24k%C2%9E%C2%A6%26%C3%9CKK%3D%C3%BF9%5E0%C2%B6%C3%A7%C2%94%C3%B2%C2%BE%C2%A6%1D%22%C3%9D%C2%AF%5B47U%60%C3%86%1A%1Bor%C3%B1%1E2%C3%9D%C3%B1%C3%9DR%C2%84%C2%96Vn%C3%93%C3%8AB%C2%A3%C3%9AC%C2%AAJ%C2%A4l%3B8%C2%BA%C3%9B%C3%B1%C2%9D%23%C3%84%25%C3%89%7F%23%C3%8B%C2%A2%C2%94%05%1B%C3%971f%C2%B6%C2%80%5D%C2%AB%C3%86%09!%C3%A7k%C3%8F%C2%8A56%C3%9E%C2%B0%C3%90%1A%3E.%15_%15hAQ%C3%8D%1E%0B%C3%8C%C2%BBJ%C2%84%C3%83%C2%8Ea%C3%BC%C3%BD%C3%84mw%C2%A9%C3%96%C3%9A5%C2%B6M.%C3%8A%C2%A4c%C3%96%C2%92%C3%A5%60%7B%C2%A9Y%C2%B5%C2%BE%C2%96%C2%BE%C3%AA%C3%B5%C3%96b%C2%8D%C2%8D7%2C%C2%B42%C3%81%11WeE9n%C3%8C%C2%86%3A!b%C2%BC%C2%B5%C3%95%C3%ABC%C3%8E_tm_M%C2%BF%C2%9F%C2%A4%C3%AD%0E%5B%C3%A4U%C2%B8D%C2%BC%C2%95%C3%BA%0CR%C2%8DYP%14%3C%C3%A6M%C2%9B%40%C2%B4n%C3%91C~%C3%8B%C2%82il%C2%BCa%C2%9BV%3E%C2%8C%C2%B0%C2%A8.%7D%C2%B2%C3%9F%C2%A1%C3%9EO%5C%C3%85%C3%9Ed%1B%1D%C2%8E%0A%C2%8BV%C3%95%C2%B4%25%C2%86g%C2%A5%C2%B22%1D%C3%9An%C3%B5%C2%86%05r%C2%AD%C2%B5%C3%99%C3%88%03qW%C2%A9%C3%BE%1A%C3%B1%C2%BElL%2C%C2%9F%C3%938%5C%C2%B6%04%C3%9F%C3%BA%C2%8ES%C2%92%C2%B1%11%2C%C2%B4%C2%B2%C2%A2%C2%84%C2%8A%7F%C2%86%C2%88v5%22%5B7%7C%C3%AA’%C3%AD%C2%98P%C2%BDQ.%23%C2%ADi%02%C2%ADR%C3%95T%C3%8F%C2%AF%7B%19Q%C2%BBY%C2%B5%C3%AD%C2%AE%C2%85%C3%ACl%C2%B5%C3%8D%C3%8E%0D%01%C2%9E%C2%B2%7F’%C2%96%C2%8A%09%26V%C2%BD%2F%C3%97K%C3%A9%C2%A3~%23%C2%99%C3%99%1A%C3%B2%C3%A1%C3%91%C2%9E%C3%BE%C3%BB%C2%A9%C3%87f%09%16Z%19%601%C2%8A%C3%AE%C2%AF%60%2Fh%C2%B4I%11j%C3%8F%C3%B21V%C3%8F-%0B%C2%8B4%C3%86F%C2%96%1Ei%C2%B9%07%C2%9B%016z%C3%9B%2BVk%C2%B5%C3%956%3B%C3%91%C2%B7Kx%C2%96g%C2%966S%C3%9C%C2%97%2B%C2%84C%20%C3%88x%C2%AA%04%C2%B6%C2%BA%C2%8E%01%C2%93!%0A!%C2%A5%C2%95c%C2%8D%C2%8D7%2C%C2%B4%C3%B2%20f-%C3%B89r%07%C3%AF%C3%A8%C2%B0X%7D%C3%9F%C2%B2%C3%97%C2%96k%C3%A9%C2%B7%C3%BE%C3%B0%C3%AC%C3%AB%09%C3%B2%C3%A5H%C3%A3%3BH%C3%9Cv%C2%978%26Ic%C3%91%C3%92%C3%8A%C2%AA%C2%AA~%C2%87%C2%86%22%C2%9D%17r%C2%ACM%C2%9AD%C3%9F%C3%B7%25%C3%B19%C2%B1%5C%C2%8D%C3%86%0F%C3%91%C2%B4c%C2%8D%C2%8D7l%C2%88%C3%8F%C2%83X%C2%A7J%C2%9B%5C%C3%88%C2%A1%C2%8B%C3%95%C3%B7-%1B%C3%8Bp%C2%BDmh%2BE%C3%9B%C2%9D%0Ff%C2%80%C3%96j%C2%B3%C3%83%C3%88-%C3%BD%C3%88%60%C3%83%C3%91%C3%A9%C3%B3%C2%BEB%C2%A8%C2%94%08w%C2%97’r%C2%A9%C3%BF%11%C3%87%C3%86%1B%16Zy%10C%C3%93%C2%9AZ%5C%C3%88%C2%A1%C2%8B%C3%95%C3%97%C3%AEs%C3%99%12%C2%8D%1FB%1Fm%C2%AFz0CH%5E%C2%A0mlS%C3%9C%C2%97%C3%ABDr%1F%C3%B4j%C2%A5%5DJ%2B%C3%87%18%1BoXh%C3%A5A%C2%B5%C3%A2%C2%84%3EG%C3%89%11%C3%93v%C3%8F%7B%C2%B1%C2%86%1C%C3%88)%C3%B3%1F%3D%C3%BA%C3%96%26%14%C2%96%22%C3%91c%C2%B7%1D%C3%A3%C2%A0Q%C3%B4%C2%B1%C3%B2%7CF%C3%86~%25%C2%B8%2FW%C3%95%C2%8E%C2%B6%02%C2%92%C3%B2%25%C2%A7o%C3%95%C2%82%C2%9D01%C3%86%26%04%16Z%19%C2%80R0%15%C3%8A%C2%A0%1CC%C2%80%C2%B5%C2%B9%C2%85e%C2%89%0F%C2%8Aw1%1E8%C3%91a%C2%B1%06%C2%85F%C3%80%3Bth%C3%A9%C2%ABZ%17%C3%8AV%C2%8A%C2%A4%C2%B1%C3%95%C2%8C%C2%8A%C3%9C%C2%B6K%7B%C3%B0%C2%8E%3B%C3%B2%C2%AC%C2%B0%C3%91%C2%B8%C3%BE%C3%9E%C3%93%7D%C3%89%17%C2%81lG%C2%9D%1B%C2%B2%08%C3%A0%C2%81Es%C3%AA%C3%A49%C2%8E16%C2%BEl%C3%BD%C3%97%C3%BF%C3%BC%7C%1Bp%C3%BDs%3AjK%C3%BF%10%07%C2%9E%C3%BA%C2%9E%60%C3%B3%0F%C3%93A%C2%AA8%05%C3%A7i%C2%8F%C3%BD%C2%88%C3%91%C2%86%C2%B5%C2%9DXXb%C2%AC%C2%92%1C%C2%90i8~%7F%01%0A%C2%B8%C2%B9%C2%BE%C2%AB%C2%BE%C3%B5%C2%97%C3%BAg%08%C2%84%C3%B5%3E%C2%89%25e%C3%9B%5DQ%C2%B2%06%C3%A4Ka%0E%C2%AF%C2%AD%C3%B7%C3%AF%C3%A6x_1%C2%8816.%C3%98%7B%C2%989%2B%1C%C2%AE%C3%99%C2%85%C3%8EF%C3%9D%C2%B6%C3%A0LL%C3%98N%C3%85%C3%9FR%C2%B6%C3%9D%15%08%C2%98%C2%95%C2%A2%C3%83s%C2%BC%C2%AF%18%C3%84%18%1B%17%1B%C2%B1%3D%C2%A4s%16%C2%A1%C2%A9%C2%BD%C3%8A%C2%A0%3BC%C3%86%C2%9Af%C2%A2j%7C%5DR%C2%8E%18%26%16%C2%83%C3%96%C2%B4p(%C3%AC%13%C3%BC%C3%8B%C3%B5%C3%98%C2%B2!%C3%A1%12F%2F%11%00)pF%C3%9E%C3%BD!lU%C2%98%C3%8Dc%C2%B0%C2%9A%16%0E%C2%85%C2%BD%C2%81%1D%C2%8C%05Vz%16%C2%87z%C3%A2%C2%97B%C2%8F%C2%89b%C2%98(%0CU%C3%93%C3%B25%C3%983a4%01%C3%82%C3%A8(%C2%B4x%5B%0A%C2%8A%C2%BA1%1Dm%C3%BF%C3%85l%5CFwT0y%C3%80!%0F%C2%8C%C2%8A%C3%AE%1Ew%C2%B1%C2%9B%C2%89m%C3%8B%C3%A4%3C%C2%88%C2%99%16%C3%85dF%2C%C2%A1u%C2%83%03%2B%C2%86%C3%82%C2%BF%C2%85%10%7C%0A%C2%90%06lT%C2%87%1E%C2%82k%C2%8EH%C3%AA%C2%B5%C3%9A%C2%B4%C2%8A%C2%BAQC%06%C3%94%3E%C3%87J%C2%8Bb2%24%C3%8A%C3%B6%10%07U%3C)%C3%AA%C2%86%C2%BCw%17B%C2%88%C2%AF2%7D%C3%98t%C3%8E%C3%A2cS%C2%9C%18%C3%B3’%C3%A4%C2%86%C2%AF%C2%AA%C3%AA%00%C3%B1Zz4%C3%BD5%5C%C3%99A%07%11%24D%C3%95%C3%B4%C3%8E%C2%95%18%C2%B3%C2%85%C3%90*%C3%AA%C2%A6D%C2%B9_%C3%B5%3A%C3%B5%18%C2%AFj6.%2F%C3%85%C3%B2V%C3%B3%1A%C2%81%C2%98r%0C%1A%5C%3B%15%7F%09%C3%8C3M%C2%AB%C2%A3v%C2%9A%C3%99%C2%B8L%C3%A6%C3%AEg%22%C3%9B%C2%B4%20%0C%C3%B6%C2%8A%C2%BA!o%C3%9E%C2%B3%C2%8C%0C%C3%A4t%C3%8E%C3%A2E%C3%8A%20%C3%90M%02%1A%C3%94%5D%C2%A5%08%C2%84%3A%C2%ACT%C2%AC%2F!%C2%B6%24%5C%C2%97%C2%A6%C2%A5%17%C3%97%C2%9B%14us%3D%1B%C2%97%C2%A6%C2%9CM%C3%BD%C2%A4e%12R%C3%87E%C3%9D%C3%ACB%10%C3%AA!%22%C2%B2%C3%B4%0B%0B%C2%AD%C2%84%C2%84%0A%C2%AD%1D%C2%9F%C2%8Bf%C3%A3%C3%B2B%C3%91%C2%BA%C2%BEY%C3%B3%3D%C3%92V%C3%B0%C3%89l%5C%C2%BE%C3%B3%C2%BC~%2Fq%7F%C2%8C(%C3%A1%1Byq%C3%AFOE%C2%A3%C2%A8%C2%9B%7Ff%C3%92%C2%AFw%C3%8A%01%C2%BF%0B%C2%AD%C2%88%C2%84NQ7%C2%B2%5E%C3%956iB%C3%B4%C3%99l%5C6E%C3%9D%5C)%1A%C3%931iBE%C3%9D%C2%9C)%02%C2%AC%C2%94’0%2B%C3%A7%12%C3%92w%0F%20%C2%A0%C3%9E*%C3%A5U%C2%84vl%C3%96%C2%9D%C2%A6V%C3%94%C2%8D5%C2%9B%C2%A0%C2%A8%1B%C2%9AS%0F%C3%93%0C%C3%87FA%C3%87%0B%C3%9E%C2%B4%C3%9DP%C2%A8%C3%90z%C2%84%07%C3%B0%C2%A4m%C2%8B%05!%C3%B1%10i14%C3%89%C2%BE%C3%ACyt%C2%83%C2%B6%C2%82E%C3%9D%C3%AC%C2%A0%C2%9F_%C2%A7%C3%AF%C2%9A%11%12%C3%B0%C2%8F%C3%96%C3%B4%C3%9B%C2%83%C2%A2%C2%A8%1B%01%C3%81%25%C2%B7%C2%87%C3%97%C3%8A%C3%BFJ%C3%81R*%C2%9F%C2%AB%5BY%C3%B9Yc%C3%90%C2%BA%C2%96%C2%AE%C2%A3%C3%AD%20ibh%C3%8F%14%7C%5B%C2%92P%C2%9C%C2%8D%C3%8BsS%C3%B4%3A%5EF%C2%AF9%2C%C3%87%0B21%C3%AD%C2%B4%C2%9D%C2%8B%C3%9Ae%7BH%C3%B6%C2%AA_%C2%8A%C2%BA%C3%B1%3A)%1ABc’0%C2%B7p%15%C2%82%C2%B6%C2%82%C2%8A%C2%86%C2%B3%C3%AE0%0A%C3%AA%C2%83%C2%AF6%C3%B8)%C3%B3%1F%12X%C2%9A%11%C3%BE%C2%A4%C2%A8%1B%3DT%23%C3%A4%10%C2%89P%C3%94%C2%AD%C3%A4%5D%C3%AC%1A%C2%B4%3C%12Z%C2%97j%C2%B8%05%C2%AD%0F%C3%84%14%C2%AEE%C2%83%1F%187%3E%079%C2%AFb%C3%93%C3%BA%C2%8E4%19%C2%B2_)%C3%AA%C2%BA%15%12%22E%C3%9D%C2%A4%C3%B6%C3%98%05m%05%C2%8B%C2%BAy%08%0D%C2%A7o-p%09%3C%2C%C2%B6%C2%B9%C3%B9%C3%93%C3%A6!L%16%C3%B6%C2%80-%C3%A7!45%C3%B9%3B%C3%9B%C2%8A%C3%B3%C3%A2%40%C2%BB%C3%BE%15%C2%A7%C2%98%C3%85c%C3%95%C2%90%07Ry%7F(%C3%AA%C3%A65%C2%B6%C2%8DNH%C2%98%04%C3%98%C2%96Bx%C2%8F%C3%AA%11%0F%7D%C3%9A’%15%C2%94%C3%BA%2C%C2%84%C3%B8)%07%C2%81%C3%85tB%C3%B5%1C%C3%9E%C2%9F%C2%8DK%C2%AABq_%C3%B9l%C2%BF%C2%A8%C2%9Bd%C3%9A%16%09%C2%AE%C3%99%C2%B8%3C%C3%84%C3%AF%C2%9E*%C2%A5f%C3%B6a%07c%12%11%C3%8B%7BHv%C2%A0_%C2%8B%C2%BAy%C2%8E%C2%ADY%C2%AB%C2%8A%17%C2%89%C2%A1n%05%C2%99%C3%951%157%C3%94%C2%85%C3%94%C2%91%C2%A1~%C3%93%3E%04L%C2%9B%26v%C2%A7%C3%89A%00I%C2%ADn%C2%8E%C3%8FT%C2%A3%3B%09%C3%8CslWYX%C3%B5%40%C3%AC%C2%88x%12%067%C3%98v%C2%A5%C2%86%C2%B6%C2%82%7B%01%02%C3%AB%C2%A1%C2%92%C2%AB%C3%88%0C%18%C3%98%C2%AFT%01!%C3%8F%C3%B1%C3%93%C2%BDw%C2%A6%C2%B3%03_%16us%C2%AB%C3%BD%C3%8Dx%C3%B6%23%C2%AE%C3%BB%5D%11%C2%86%C2%A6%C3%AB~%C3%87uR%C2%88Ne%2C%17%C2%93%C2%86%C3%8F%C2%B1%C2%B5%C2%8A%C2%B9E%C2%A2%C2%B6~*%C3%AA%264%C3%94%20%C2%84o%7D%C3%ACh%C2%A2%1F%C2%AF%20%1B%C3%8F%C2%87%C2%85)%C2%B8%C3%94%14%C2%83f%0A.%3DU%C3%BEv%C2%8AvT%C3%A1y%C2%95C%3E%C3%A6%C2%A6%C3%B39%C2%BC%1A)%C2%B6L%14%C2%9F%C3%B5%C2%A0%C2%A8%C2%9B%14A%C2%9D%3Ev%C2%AB%C3%94%5B%C3%817%C3%B0%C2%9Ert%7D%C3%8F%20%C2%82%7D%C2%A9l%2F%C3%99%C2%98%3CzB%C3%9E%3D%1F%C3%81BqZ%C3%86z%C3%AEd%C3%8F%C2%82%10%1B%5C%C2%81%C2%BEM%C3%A03%C2%B2%3FA%C2%A8%C3%BC%1D%5B%C2%AE%C2%98%C2%90%C2%A1%C3%BEiQ77%C2%88%C3%97%C3%AA%C2%85%C3%84%5B%C3%81%C3%B7%C3%90%C3%B4%1E%C2%B0%C3%80%1A%0C%C2%AA6%C3%A4%C3%B2%3A%C3%BA%5E%C3%87%C2%AC%C2%91%C2%85M%0B%C2%9E%3DZ%C3%AC%C3%BF%10B%C3%BC%16%C2%B9K2%C2%B6%C3%AB%054%C2%A0%24%24%C3%B6%0A%C2%92%C3%91%C3%BF9%C3%ACh%C2%9Cl%3D%10%C2%90%7B%C2%A8%1A%C3%9D%5D%C2%A5wT%3B%C3%97%3E%C2%BE%C3%8Bd%C3%86%C2%92!%C2%9E%C2%B4%C2%87%C3%99%C2%B8%C2%A4-%C3%A3%C2%B7X%C2%A81%C2%A1%C2%88%C3%AFw%C3%88ML%C3%81%C3%A3D%C2%B6%C2%AB%C2%85%C3%91%C2%BFG%C3%8F(%C3%830%06%C2%B6no%C3%AD%C2%87%C3%B1%40%2Bz%C2%86%40%C3%92%C3%98%C2%BC%C2%81%C2%A1%C3%BEF%C2%84%C2%9F%C3%86%13%C3%A3D%1F%1F~%C3%B3IY%1A%12J%25%C2%83%C3%B9l%5C~%C2%B1)%C3%B7%C2%B5)%14u%C3%B3%16%1E%C3%88%C3%A3O%7D%2Cl8%C3%A3%C2%B4%C2%94%C2%923%17%09%3Cp2%C2%B6%C3%AB%C3%BB%0C%23%C3%81%3F%40Xe%C2%B9%0DDL%10M%C3%AES%C3%A4%C2%BC%C2%99%C2%AE%C2%B9K%C3%BC%C2%A5%C2%A4_%C3%A5%C2%B3%C2%97%C2%B0%C3%9BpeOf%C2%B0x%05%C2%97%22l%C3%A1A%C2%A2%C3%A4%C3%A7%C3%AF%C2%90%01%C2%9FK%C3%A8%40%C3%9F%01%C2%B2%7DR%C3%AA%C2%B9q%C2%A9%C2%80%60%C2%9D8B%0A%3A%C2%81%C3%AA%0C%C2%BB9j%22!%C3%B7%C2%9Cj%7C%3E%05%C2%82%22%C3%A2%C2%B5%C3%A4%C3%A7%C2%98’%C3%A0%7C%C2%99A%3A%C3%8D%1BT%C2%85%C3%98%C2%88%C2%B8%2BU%C3%83%12%7F.%C2%92m%C3%84%26%C3%B5%C2%A5a%C2%95%C2%89%3Cp’1%C2%8EVOD%C3%88%3D%C2%A7%1A%C2%9F%C2%8D%C2%A7SD%3CB%24(h%C3%B3%C3%87%0D%18%20%C2%99%C2%B7%C3%B8%60S%04%16%C3%83l2NC%C2%BC%0FH%C2%94%C2%BE%C3%A8%C2%B9%0EU%0CC%C3%BC%07%04%C2%87%5E%C3%84%C3%AF%5EZ%02lZw%06%5D%C2%AD%C3%A0%C2%9D%C3%A4%5C%06Y%22-f%C2%A4%C3%84)%5Da%C3%9Bb%C3%95%C3%8A%C2%A0%C2%B9M%C2%B4%1C%40Y%60%C3%AF%0FC%1E%C3%A0)r%C3%B4N%C3%B0%C2%9DR%C3%BF%C2%9B%C3%92%C3%B6K%C3%BC%C2%BDBj%C3%8E.%22%C3%8D%C3%B54%C2%9D%C2%853%C3%81P%C2%84%C3%AF%C2%BC-%C2%88%14%C3%A38%C3%92%C3%AE%C3%A1%12%C3%BD%C2%91y%C2%86%C3%B4%C2%B7%C2%97%C3%B2%C3%9E%C2%94%C3%AF~%C3%B4%C2%B9%C3%AB%C2%9E%0D%C2%BF%C3%AB%1A%C2%9F%C2%B7%C2%88%C3%84o%C2%B4g%C2%B2%C3%94%C2%96%C2%A1%C3%A4s%C2%83%C3%AB%C2%AE%C2%856O%C2%A0%C3%95Q%C2%9F%C2%AF%C3%A4%C3%96%C2%BA%C3%8Bs%C3%8F%C2%81%C2%95s%0F%C3%89%C3%BBGZ%C2%8A%10%C3%A2_%C3%90Z%C2%86%00i%C2%88%3BC%14X%5D%C3%80%C3%A2%C2%95%C2%9EB%C2%9A%C3%94%5B%C2%8A%C3%80%1AA%C3%B8%C2%9C%2B%C2%95%12v%C2%B1%20%5D%C3%88r%C3%83_%C3%A0%7B%C2%95%C2%9C%C3%BC%10%24R%60%1C%C3%A0%C3%B7%C3%A4%C2%82%C3%9BE%1D%C3%B5-%C2%A5B%C3%82%C2%99%C2%A1%1E%C2%96%C3%80%C2%82Z%7C%1F%C3%97%C3%8F%C2%B1%C3%B0%C2%B6%14%C2%815%C3%81%C2%B6%C3%B1%00%C3%97%1C%C2%B4%C3%B4%5D%C3%86o%C3%9DU%24U%C3%BAr%C2%80%C3%85%C3%BDs%C3%9B%C3%B7uZ%C3%AE%C3%B9%23%3C%C2%AE-e%C2%89%1B%C3%B4%C3%AB%1Cc%C2%B4%10%C2%AEJ%C3%BF%C2%A7J%C3%BF%05r%2Bu%C2%818B%C2%84%C3%BF%C2%96%22%C2%B0%C2%BA%3E%C3%B7%C2%B5%13-a%1A5%C2%83%C3%B6%60%C3%88%C2%8E%1D%C3%9F%15%0B%C2%B2%5B%C3%BD%C3%B7l%5C%3E%C3%A6x%C2%AB%C2%85%C2%B64%C3%82%C3%84%C2%BDK%C2%8BA%C2%B2%C3%AF%25*r%1A%C2%83%2B%C3%B1%06%C3%9F%C2%87%C3%B0%C2%99%C3%A3%7B%C2%97%C2%B6E%C2%AAB%C3%82R%C2%BD%0E%C3%BF%3D7%C3%98w%C2%B6U%C2%8D%C2%A7%C2%85%23%2C%5EYm%C3%B4%C3%9A%23U%C3%A7%0C%0By%C2%91%C3%BA%C2%83%C3%AFW%08%2C5%25%5B%C3%B7%06%C3%8A%C3%9E%C3%88%C2%B1%3D%C3%85%18%C2%A9%C3%8F%C3%A3%C3%8C%C2%90j%24_%1C%C3%BA%0B%C3%A0Z%C3%93d%3B%3D%C3%B7%5C%C2%88Z%C3%A5AI%09%C3%9A%C3%8B%C3%8C%C3%9EE%1A%C3%A0%C2%BF%60%C2%B7j%C2%ADA%C3%BD%09!k%C2%9D%C3%AB%C2%86m%C3%B9%C3%BF%C2%8D%C2%86b%2C%C3%AE)*%C2%86%06%2Fn%C3%BA%0EmY)f%0C%15%12%C2%B6%0D%C3%9B%C2%A59r%C3%BC%7Ch%C2%B0%C3%98%C2%8C5%C3%9A%0D%C2%BF%2F%C3%8B%C3%8D%2C%1D%40%C2%81%7B3%09%C3%91%3E1y%13%C2%A7r%C2%8Cl%C3%BD%C2%87%C3%A0%C2%99%1A%C3%BA%C2%AE%C2%8Fc%C2%A7%C3%A7%C2%9E%0BIN%C2%98%C2%86A%C3%BB1*%C2%95%3E%5Bc%C3%9Du%3E%C2%85%C3%87%C2%8D%14%14%24%3CB%C2%BF%7B%C2%80%C3%AD%C3%85%19%C2%84E%C2%AB%0DI%C3%BCek%C3%9B%C3%86%C2%82%C2%A3m%C3%9E!l%3C%C2%9D%C2%81%C3%9Dn%C2%84%C2%BE%C2%8Cd%C2%B5%05G%C2%89%C2%98%C2%B6%C3%A2%C2%80%C3%935%C3%97%C3%86j%C3%93.e%C3%BF%C3%8F%2C%C2%82%C2%BA-%C2%84b%C2%95%C3%A7%C2%BEv%C2%92%1E%C2%8B%0Fc%C3%B9%03%C3%94%C3%88%C2%BE%C3%A8%C2%B9%C2%B8%C3%BF%C2%8F0%C2%B4%C2%B3G%C2%B0%C2%9D%C2%83%C3%90X!l%5D%C2%A4%7D%C3%A4%C3%8E%C3%90O%1A%C2%80%2B~%0Av%2Bz%C2%8B%1F%06hQ%C2%BE%C3%BD%C2%B9%3BX%02B%C3%AB%04v%C2%A9%C3%BB%C2%96%C3%8B%C3%9B%C2%84%C3%82n%C3%86a%15*VG%C2%8C’%C3%81%C3%8F%3D%07z9%16%1F%C2%91%C3%A5%3B%C2%B0w%C2%A5%C3%A6%0D%C2%BC%C2%8B%1B%13s%C2%95%10%C2%B90W%C2%B2a%40%C3%83%C2%BA%C3%B2hG%3F%3DG%3F%25ze%C2%B0%C2%88%C3%896%C2%B3%C2%8B%C2%B6M%C3%BD%C2%9Dj%C2%B5%C2%B2%16(%C3%BD%C2%91c%23%C2%B55%C2%BD%C2%8Fk%C3%9BB)%C3%9B%C3%B3%C2%AE%7D%C2%88%C3%B2%C3%9C%C3%97E%2FBK%7Cl%C3%AFJQ%02G%C3%B2%C2%82K%C3%86%C3%B8%C2%83%C3%89%7F%09-ia%C2%BC%25%2F%15%C3%82%0E%C2%8C%C3%90%C3%82%C2%A6%C2%BFK%2F%C2%95bcQ%C2%B5%13)%C2%98J%C3%83g%23%C3%A5%7B%C2%93%C3%80%C2%80%C3%97k%7D%C2%B1%C2%A2%2F%C3%BA%C3%81%C2%AA%C3%93%16-B%1A%C3%9C%17%C3%B7%C2%A9D%C2%A97%C2%8A%C2%81%C3%BA%1A%C2%BF9%C2%92%C2%B5%C3%9F%C3%A1%C3%853y%3BM%C3%B7%C3%AC%C2%BA%0F%C3%9FkM%C2%9C%C3%A3%14%C2%A0%C3%85%C3%B6%C2%90%C3%BAg%18%C2%8B%25%7C%C2%9F%3Bm%C3%A5e%3AXN%C3%B4%26%C2%B4%24Z%09%C2%9C%C2%A8!%12%C2%9F%C2%A0fE6%C2%8D%5B%C3%AD%C2%9F%C2%971Z%02%C3%AF%C3%93%C2%B9%C3%9A%C2%96t%C2%91%3B%C2%BE%26%C2%8D%C3%82%7F(%25%C2%89%C2%AF%C3%94%C2%AD!%C2%B6%7Fj%C2%BB%23%C3%849%C2%9Db%C2%B1%C3%9Cb%0B%C2%B7T%C3%8C%C2%AF%C2%85%3Bo%19%C3%9A%C3%BCC%C3%A9%C3%8F%5B%C2%A5%C3%BF%24%04%C2%9D%05%01%C3%91%C2%BFc%1C%C3%ACz%C2%AB%C3%B4%C3%A7%C3%8APL%C3%B0%18%C2%BF!K%2B%C2%9F%C2%98%0A%00%C2%9A%C3%AE%C2%B9%C3%A5%C3%B7%C2%BD%C2%AE%C2%B5%7C%C3%BF%12cQ*%C3%BD%7F%C3%AB!%C2%AC%C3%A5%C3%B7%C2%BB%3C%C3%B7%2CX9%C2%B8tU%3A%1E%C2%A1o%0C.e%18f%C3%B3%C3%A9%5D%C3%93%C3%92A%C2%80’%C3%99%C2%BB%C2%BE%C3%A7%C3%B9%C3%860L%1Bk%C3%97%C2%B4T%3C%0E%C2%A1%C3%88%C2%BAd%0C%C3%830%C3%A9%C3%89JhI%2C’%3F%7B%1D%C3%83%C3%8F0%C3%8Cf%C2%93%C2%A5%C3%90%C2%92%20%01z%2F%C3%A1Qd%0C%C3%83%0C%C2%8C%C2%AC%C2%85%16%C3%830%C2%8C%C3%8E%C3%9A%0D%C3%B1%0C%C3%830!%C2%B0%C3%90b%18fP%C2%B0%C3%90b%18fP%C2%B0%C3%90b%18fP%C2%B0%C3%90b%18fP%C2%B0%C3%90b%18fP%C2%B0%C3%90b%18f8%08!%C3%BE%1F%C2%BF%C3%94l%C2%AC%C3%99k%C2%BB-%00%00%00%00IEND%C2%AEB%60%C2%82”;
      var imgLogo = myWindow.add(“image”, undefined, File.decode(imgLogo_imgString), {name: “imgLogo”});
      imgLogo.alignment = [“center”,”bottom”];
      myWindow.show();
      }
      } else { //missing data in ui
      var alert = new Window(“dialog”, “Missing Data”);
      var alertMessage = alert.add(“statictext”);
      alertMessage.text = “Please review your selections.”;
      alert.show();
      }
      };

      btnCancel.onClick = function()
      {
      mainWindow.close();

      };
      // ==================================================================================================================================================================
      // Ui data validation before submission
      // ==================================================================================================================================================================
      function ui_validation_is_okay()
      {

      if(sheetWidth == 0.0)
      {
      sheetWidth = 17.0;
      sheetHeight = 11.0;
      }
      startingCyan = parseFloat(txtStartingCyan.text);
      startingMagenta = parseFloat(txtStartingMagenta.text);
      startingYellow = parseFloat(txtStartingYellow.text);
      startingBlack = parseFloat(txtStartingBlack.text);
      selectedSpecialty =cboEndingSpecialty.selection.text;
      startingSpecialty = txtStartingSpecialty.text;

      endingCyan = parseFloat(txtEndingCyan.text);
      endingMagenta = parseFloat(txtEndingMagenta.text);
      endingYellow = parseFloat(txtEndingYellow.text);
      endingBlack = parseFloat(txtEndingBlack.text);
      endingSpecialty = txtEndingSpecialty.text;
      selectedSpecialty = cboEndingSpecialty.selection.text;

      if(txtPaletteName.text.length > 0)
      {
      paletteName = txtPaletteName.text;
      }
      else
      {
      paletteName = “unnamed palette”;
      }

      if(swatchWidth == 0.0)
      {
      return false;
      }

      if(rboSwatchShapeRectangle.value == true)
      {
      customSwatchShapeNumberOfSides= 4;
      }

      if (rboAppTypeCustom.value == true) {

      if (rboSheetSizeStandard.value == true || rboSheetSizeCustom.value == true) {
      if (typeof(sheetWidth) === “undefined” || typeof(sheetHeight) === “undefined”) {
      return false;
      }
      }

      if (rboSwatchShapeRectangle.value == true || rboSwatchShapeCustom.value == true) {
      if (typeof(swatchHeight) === “undefined” || typeof(swatchWidth) === “undefined”) {
      return false;
      }
      }
      if (rboSwatchShapeCustom.value == true) {
      if (typeof(customSwatchShapeDiameter) === “undefined”) {
      return false;
      }
      }
      if (rboPaletteCustom.value == true) {
      if (typeof(paletteName) === “undefined” || typeof(startingCyan) === “undefined” || typeof(startingMagenta) === “undefined” || typeof(startingYellow) === “undefined” || typeof(startingBlack) === “undefined” || typeof(startingSpecialty) === “undefined” ||
      typeof(endingCyan) === “undefined”|| typeof(endingMagenta) === “undefined” || typeof(endingYellow) === “undefined” || typeof(endingBlack) === “undefined” || typeof(endingSpecialty) === “undefined”) {
      return false;
      }
      }
      if (rboSwatchToSwatchProgressionCustom.value == true) {
      if (typeof(progressionCyan) === “undefined” || typeof(progressionMagenta) === “undefined” || typeof(progressionYellow) === “undefined” || typeof(progressionBlack) === “undefined”|| typeof(progressionSpecialty) === “undefined”) {
      return false;
      }
      }
      selectedSpecialty =cboEndingSpecialty.selection.text;

      return true;
      }
      else{
      return true; //we are creating a fully automated swatch book based on preprogrammed values
      }
      }
      // ==================================================================================================================================================================
      //
      // END OF UI LOGIC
      //
      // ==================================================================================================================================================================

      // ==================================================================================================================================================================
      // Create custom swatch book
      // ==================================================================================================================================================================function createCustomApp()

      function createCustomApp()
      {
      if(app.documents.length > 0)
      {
      doc.documentPreferences.pageHeight = sheetHeight;
      doc.documentPreferences.pageWidth = sheetWidth;
      doc.documentPreferences.pagesPerDocument = 1;
      doc.documentPreferences.facingPages=false;
      }

      arrayOfSwatchesToAddToPanel = stepThroughColours(colourStepping); //param is step between each primary … cmyk 0,0,0,0, to 2,2,2,2

      addSwatchesToPanel (arrayOfSwatchesToAddToPanel);

      drawShapesLineByLinePageByPage();

      }

      // ==================================================================================================================================================================
      // Add swatches to indesigns
      // ==================================================================================================================================================================function createCustomApp()

      function addSwatchesToPanel(swatches)
      {
      paletteGroup = app.activeDocument.colorGroups.item(paletteName);

      if (!paletteGroup.isValid)
      {
      app.activeDocument.colorGroups.add(paletteName);
      paletteGroup = app.activeDocument.colorGroups.item(paletteName);
      }

      for(i = 0; i < swatches.length; i++)
      {
      addMixedInk(parseFloat(swatches[i].cyan), parseFloat(swatches[i].magenta), parseFloat(swatches[i].yellow), parseFloat(swatches[i].black), parseFloat(swatches[i].specialty), selectedSpecialty, swatches[i].name);
      }

      }

      // ==================================================================================================================================================================
      // Add swatches to indesigns
      // ==================================================================================================================================================================function createCustomApp()

      function addMixedInk(cyan, magenta, yellow, black, specialty, specialtyName, mixedInkName)
      {
      var MY_MIX_INKS = {‘Process Cyan’: cyan, ‘Process Magenta’: magenta, ‘Process Yellow’: yellow, ‘Process Black’: black, ‘Silver’: specialty};
      var MY_MIX_NAME = mixedInkName;
      // ——————————————————————————————————————————————————————————————————————————————————-
      // Ink Validator
      var validateInkData = function(myMixedInk, documentInks, myInkList, myInkPercentages)
      {
      var k, t, z=0, result=1;
      var propertyName;
      myInkList.length = myInkPercentages.length = 0;

      for(propertyName in myMixedInk)
      {
      if( !myMixedInk.hasOwnProperty(propertyName)) continue;
      if( !(t = documentInks.itemByName(propertyName)).isValid )
      {
      result=0;
      break;
      }

      myInkList[z] = t.getElements()[0];
      myInkPercentages[z++] = +myMixedInk[propertyName];
      }

      return result;
      };

      var doc = app.activeDocument;
      var inkList =[]; // will receive validated ink list (array)
      var inkPerc=[]; // corresponding percentages (array)

      if( !doc.mixedInks.itemByName(MY_MIX_NAME).isValid )
      {
      if( validateInkData(MY_MIX_INKS, doc.inks, inkList=[], inkPerc=[]) )
      {
      doc.mixedInks.add(inkList, inkPerc, {name: MY_MIX_NAME, model: ColorModel.MIXEDINKMODEL, space: ColorSpace.MIXEDINK} );
      swatch = doc.swatches.itemByName(MY_MIX_NAME);
      paletteGroup.colorGroupSwatches.add(swatch);
      }
      else
      {
      alert( “Unable to create mixed ink. Some inner inks are missing.” );
      }
      }
      }

      // ==================================================================================================================================================================
      // Create custom swatch book
      // ==================================================================================================================================================================function createCustomApp()

      function drawShapesLineByLinePageByPage()
      {

      var currentPage;
      var inkRecipeTextFrame;
      var inkRecipeTextFrameStyle;

      if (doc.paragraphStyles.itemByName(‘inkRecipeTextFrameStyle’).isValid == false)
      {
      inkRecipeTextFrameStyle = doc.paragraphStyles.add({name:”inkRecipeTextFrameStyle”, appliedFont: “Segoe UI”, fontStyle: “Bold”, pointSize: “6”, characterAlignment: CharacterAlignment.ALIGN_EM_CENTER});
      doc.paragraphStyles.add(inkRecipeTextFrameStyle);
      }

      inkRecipeTextFrameStyle = doc.paragraphStyles.item(‘inkRecipeTextFrameStyle’);

      var pageWidth = 0.0;
      var pageHeight = 0.0;
      var marginLeft = 0.0;
      var marginRight = 0.0;
      var marginTop = 0.0;
      var marginBottom = 0.0;

      pageWidth = parseFloat(doc.documentPreferences.pageWidth);
      pageHeight = parseFloat(doc.documentPreferences.pageHeight);

      marginLeft = parseFloat(doc.marginPreferences.left);
      marginRight = parseFloat(doc.marginPreferences.right);
      marginTop = parseFloat(doc.marginPreferences.top);
      marginBottom = parseFloat(doc.marginPreferences.bottom);

      var pageWidthAvailable = 0.0;
      var pageHeightAvailable = 0.0;

      pageWidthAvailable = parseFloat(pageWidth – (marginLeft +marginRight));
      pageHeightAvailable = parseFloat(pageHeight – (marginTop +marginBottom));

      var topLeftCoordinates_X = parseFloat(marginLeft);
      var topLeftCoordinates_Y = parseFloat(marginTop);

      var bottomRightCoordinates_X = parseFloat(topLeftCoordinates_X +swatchWidth);
      var bottomRightCoordinates_Y =parseFloat(topLeftCoordinates_Y + swatchHeight);

      var gutter_horizontal = 0.25;
      var gutter_vertical = 0.25;

      var polygon;

      var swatch;
      var swatchesToUse = [];
      var color;
      var colors = doc.colors;
      var colourGroup;
      var colourGroups = [];
      var nbrOfColorGroups = doc.colorGroups.length;
      var swatches = doc.swatches.everyItem().getElements();
      var nbrOfSwatches = swatches.length;
      var nbrOfUsableColours = 0;
      var nbrOfSwatchesPerRow = 0;
      var nbrOfColumnsPerpage = 0;
      var nbrOfSwatchesPerPage = 0;
      var nbrOfPagesRequired = 0;

      var cyan, magenta, yellow, black, specialty;

      var theresStillRoomForSomeMore = true;

      //Get the usable colours ————————————————————————————————————————————-

      for(i=0;i<nbrOfColorGroups;i++)
      {
      colourGroup = doc.colorGroups[i];
      if(colourGroup.name !== ‘[Root Color Group]’)
      {
      nbrOfUsableColours = nbrOfUsableColours + colourGroup.colorGroupSwatches.length;
      colourGroups.push(doc.colorGroups[i].name);
      }
      }

      //Get the swatches ————————————————————————————————————————————-

      for(i=0;i<nbrOfColorGroups;i++)
      {
      //$.wwriteln(doc.colorGroups[i].name);
      if(doc.colorGroups[i].name !== ‘[Root Color Group]’)
      {
      colourGroups.push(doc.colorGroups[i].name);
      }
      }
      for(i = 0; i < nbrOfSwatches; i++)
      {
      swatch = swatches[i];
      color = colors.itemByID(swatch.id);

      if((swatch.parentColorGroup.name != ‘[Root Color Group]’) && (typeof(swatch.parentColorGroup.name) !== “undefined”))
      {
      color = colors.itemByID(swatch.id);
      swatchesToUse.push(color);
      }
      }
      //Get the number of swatches per row ————————————————————————————————————————————-

      while(theresStillRoomForSomeMore == true)
      {
      if(pageWidthAvailable > swatchWidth && nbrOfSwatchesPerRow == 0)
      {
      nbrOfSwatchesPerRow++;
      }
      if( bottomRightCoordinates_X + swatchWidth > pageWidth – marginRight )
      {
      topLeftCoordinates_X = marginLeft;
      bottomRightCoordinates_X = swatchWidth + marginLeft;
      topLeftCoordinates_Y = topLeftCoordinates_Y + swatchHeight + gutter_vertical;
      bottomRightCoordinates_Y = topLeftCoordinates_Y + swatchHeight;
      theresStillRoomForSomeMore = false;
      }
      else
      {

      topLeftCoordinates_X = topLeftCoordinates_X +swatchWidth + gutter_horizontal;
      bottomRightCoordinates_X = bottomRightCoordinates_X +swatchWidth + gutter_horizontal;
      nbrOfSwatchesPerRow++;
      if((bottomRightCoordinates_X +swatchWidth) <= (pageWidth – marginRight))
      {

      }
      }
      }

      //Get the number of swatches per column ————————————————————————————————————————————-

      topLeftCoordinates_Y = marginTop;
      bottomRightCoordinates_Y =topLeftCoordinates_Y;
      theresStillRoomForSomeMore = true;
      nbrOfColumnsPerpage = 0;

      while(theresStillRoomForSomeMore == true)
      {
      if(pageHeightAvailable > swatchHeight && nbrOfColumnsPerpage == 0)
      {
      nbrOfColumnsPerpage++;
      }
      if(bottomRightCoordinates_Y + swatchHeight > pageHeight – marginBottom)
      {
      topLeftCoordinates_Y = marginTop;
      bottomRightCoordinates_Y = topLeftCoordinates_Y;
      theresStillRoomForSomeMore = false;
      }
      else
      {
      topLeftCoordinates_Y = topLeftCoordinates_Y +swatchHeight + gutter_vertical;
      bottomRightCoordinates_Y = bottomRightCoordinates_Y +swatchHeight + gutter_vertical;
      if(bottomRightCoordinates_Y + swatchHeight > pageHeight – marginBottom)
      {
      theresStillRoomForSomeMore = false;
      }
      else
      {
      nbrOfColumnsPerpage++;
      }
      }
      }

      //Get the number of pages required ————————————————————————————————————————————-

      nbrOfUsableColours < nbrOfSwatchesPerRow ? (nbrOfSwatchesPerPage =nbrOfUsableColours) : (nbrOfSwatchesPerPage = nbrOfSwatchesPerRow* nbrOfColumnsPerpage);
      ////$.wwriteln(“nbrOfSwatchesPerPage: ” + nbrOfSwatchesPerPage);
      nbrOfPagesRequired = Math.ceil( nbrOfUsableColours / nbrOfSwatchesPerPage);

      //Create the swatches on the pages ————————————————————————————————————————————————–

      // reset coordinates since we’re actually now starting to draw on the page
      topLeftCoordinates_X = marginLeft;
      bottomRightCoordinates_X =topLeftCoordinates_X + swatchWidth;
      topLeftCoordinates_Y = marginTop;
      bottomRightCoordinates_Y =topLeftCoordinates_Y + swatchHeight;

      var numberOfSwatchesToUse = parseInt(swatchesToUse.length);
      var k = 0; // for swatches
      if(numberOfSwatchesToUse <= nbrOfSwatchesPerPage)
      {
      nbrOfSwatchesPerPage = numberOfSwatchesToUse;
      }

      for (i = 0; i <= nbrOfPagesRequired; i++)
      {
      currentPage= app.activeWindow.activePage;

      for(j = 0; j < nbrOfSwatchesPerPage; j++)
      {
      if(k < numberOfSwatchesToUse)
      {
      swatch = doc.swatches.itemByName(swatchesToUse[k].name)
      k++;
      //$.wwriteln(“numberOfSwatchesToUse: ” + numberOfSwatchesToUse + ” Current swatch: ” + k);
      cyan = swatch.inkPercentages[0];
      magenta = swatch.inkPercentages[1];
      yellow = swatch.inkPercentages[2];
      black = swatch.inkPercentages[3];
      specialty = swatch.inkPercentages[4];
      }
      if(j !== 0)
      {
      if(bottomRightCoordinates_X +swatchWidth >= pageWidth – marginRight)
      {
      topLeftCoordinates_X = marginLeft;
      bottomRightCoordinates_X = swatchWidth + marginLeft;
      topLeftCoordinates_Y = topLeftCoordinates_Y + swatchHeight +gutter_vertical;
      bottomRightCoordinates_Y = topLeftCoordinates_Y + swatchHeight;
      if(k < numberOfSwatchesToUse)
      {
      if(customSwatchShapeNumberOfSides == 0)
      {
      polygon = currentPage.oval.add({geometricBounds:[topLeftCoordinates_Y, topLeftCoordinates_X, bottomRightCoordinates_Y, bottomRightCoordinates_X], numberOfSides:customSwatchShapeNumberOfSides, strokeWeight: 0, fillColor: swatchesToUse[k].name, cornerRadius:100} );
      }
      else
      {
      polygon = currentPage.polygons.add({geometricBounds:[topLeftCoordinates_Y, topLeftCoordinates_X, bottomRightCoordinates_Y, bottomRightCoordinates_X], numberOfSides:customSwatchShapeNumberOfSides, strokeWeight: 0, fillColor: swatchesToUse[k].name, cornerRadius:100} );
      }
      inkRecipeTextFrame = doc.pages.item(i).textFrames.add();
      inkRecipeTextFrame.geometricBounds = [topLeftCoordinates_Y + swatchHeight+0.06125, topLeftCoordinates_X, bottomRightCoordinates_Y + 0.25, bottomRightCoordinates_X];
      inkRecipeTextFrame.contents = swatchesToUse[j].name + ” C: “+ cyan+” M:”+ magenta+” Y:”+ yellow+” K:”+black+” S:”+ specialty;
      inkRecipeTextFrame.paragraphs.everyItem().appliedParagraphStyle = inkRecipeTextFrameStyle;
      }
      }
      else
      {
      topLeftCoordinates_X = topLeftCoordinates_X +swatchWidth + gutter_horizontal;
      bottomRightCoordinates_X = bottomRightCoordinates_X +swatchWidth + gutter_horizontal;

      if(bottomRightCoordinates_X <= pageWidth – marginRight)
      {
      if(k < numberOfSwatchesToUse)
      {
      polygon = currentPage.polygons.add({geometricBounds:[topLeftCoordinates_Y, topLeftCoordinates_X, bottomRightCoordinates_Y, bottomRightCoordinates_X], numberOfSides:customSwatchShapeNumberOfSides, strokeWeight: 0, fillColor: swatchesToUse[k].name} );
      inkRecipeTextFrame = doc.pages.item(i).textFrames.add();
      inkRecipeTextFrame.geometricBounds = [topLeftCoordinates_Y + swatchHeight+0.06125, topLeftCoordinates_X, bottomRightCoordinates_Y + 0.25, bottomRightCoordinates_X];
      inkRecipeTextFrame.contents = swatchesToUse[j].name + ” C: “+ cyan+” M:”+ magenta+” Y:”+ yellow+” K:”+black+” S:”+ specialty;
      inkRecipeTextFrame.paragraphs.everyItem().appliedParagraphStyle = inkRecipeTextFrameStyle;
      }
      }
      }
      }

      if(j == 0)
      {
      if(k < numberOfSwatchesToUse)
      {
      polygon = currentPage.polygons.add({geometricBounds:[topLeftCoordinates_Y, topLeftCoordinates_X, bottomRightCoordinates_Y, bottomRightCoordinates_X], numberOfSides:customSwatchShapeNumberOfSides, strokeWeight: 0, fillColor: swatchesToUse[k].name} );
      inkRecipeTextFrame = doc.pages.item(i).textFrames.add();
      inkRecipeTextFrame.geometricBounds = [topLeftCoordinates_Y + swatchHeight+0.06125, topLeftCoordinates_X, bottomRightCoordinates_Y + 0.25, bottomRightCoordinates_X];
      inkRecipeTextFrame.contents = swatchesToUse[j].name + ” C: “+ cyan+” M:”+ magenta+” Y:”+ yellow+” K:”+black+” S:”+ specialty;
      inkRecipeTextFrame.paragraphs.everyItem().appliedParagraphStyle = inkRecipeTextFrameStyle;
      }
      }
      }

      if(nbrOfPagesRequired > 1)
      {
      page = doc.pages.add();
      }

      topLeftCoordinates_X = marginLeft;
      bottomRightCoordinates_X =topLeftCoordinates_X + swatchWidth;
      topLeftCoordinates_Y = marginTop;
      bottomRightCoordinates_Y =topLeftCoordinates_Y + swatchHeight;

      }
      }
      // ==================================================================================================================================================================
      // Create array of swatches to add to indesign
      // ==================================================================================================================================================================

      function stepThroughColours(givenColourStepping)
      {

      // 1st step
      // establish how many patches will be required to go from first patch to last patch given a specified colourStepping
      cyanSteps = getSteps(startingCyan, endingCyan, “cyan”, givenColourStepping);
      magentaSteps = getSteps(startingMagenta, endingMagenta, “magenta”, givenColourStepping);
      yellowSteps = getSteps(startingYellow, endingYellow, “yellow”, givenColourStepping);
      blackSteps = getSteps(startingBlack, endingBlack, “black”, givenColourStepping);
      specialtySteps = getSteps(startingSpecialty,endingSpecialty, “specialty”, givenColourStepping);

      // 2nd step
      //we establish how many intermediary patches will be required between two starting colours
      // by looking at the givenColourStepping and the given steps for each.
      var arrSteppingForEachColour = [cyanSteps, magentaSteps, yellowSteps, blackSteps, specialtySteps];

      // the maxStepping indicates which colour has the largest number of steps.
      maxStepping = arrSteppingForEachColour[indexOfMax(arrSteppingForEachColour)];
      ////$.wwriteln(“maxStepping: ” +maxStepping);

      maxSteppingIndex = indexOfMax(arrSteppingForEachColour);
      ////$.wwriteln(“maxSteppingIndex: ” +maxSteppingIndex);

      // 3rd step
      // we establish how many times each colour will stay the same across patches before incrementing,
      establishRepeatsForGivenColour(“cyan”, maxStepping, cyanSteps);
      establishRepeatsForGivenColour(“magenta”, maxStepping, magentaSteps);
      establishRepeatsForGivenColour(“yellow”, maxStepping, yellowSteps);
      establishRepeatsForGivenColour(“black”, maxStepping, blackSteps);
      establishRepeatsForGivenColour(“specialty”, maxStepping, specialtySteps);

      //4th step
      // Create the array of colours in arrayOfNewSwatches

      var cyanRepeatsCounter = 1;
      var magentaRepeatsCounter = 1;
      var yellowRepeatsCounter = 1;
      var blackRepeatsCounter = 1;
      var specialtyRepeatsCounter = 1;
      var colourName;
      var counter = 1;

      cyan = startingCyan;
      magenta = startingMagenta;
      yellow = startingYellow;
      black = startingBlack;
      specialty = startingSpecialty;

      var arrayOfNewCyans = [];
      var arrayOfNewMagentas = [];
      var arrayOfNewYellows = [];
      var arrayOfNewBlacks = [];
      var arrayOfNewSpecialties = [];

      var cyanDone = false;
      var magentaDone = false;
      var yellowDone = false;
      var blackDone = false;
      var specialtyDone = false;

      //———————————————————————————————————————————CYAN—–START——————————–
      cyan = parseFloat(startingCyan);
      for (x = 0; x < cyanSteps; x++) {

      for (y = 0; y < cyanRepeats; y++) {
      arrayOfNewCyans.push(cyan);
      ////$.wwriteln(“Cyan is : ” + cyan);
      }

      if (isCyanIncrementing == true) {
      cyan = parseFloat(cyan) + parseFloat(colourStepping);
      if (cyan + colourStepping > endingCyan + colourStepping) {
      cyan = endingCyan;
      }
      }

      if (isCyanIncrementing == false) {
      cyan = cyan – colourStepping;
      if (cyan – colourStepping < endingCyan – colourStepping) {
      cyan = endingCyan;
      }
      }

      }

      todo = Math.abs(maxStepping – arrayOfNewCyans.length);

      if(todo > 0){
      for(x = 0; x < todo; x++)
      {
      arrayOfNewCyans.push(cyan);
      }
      }
      //———————————————————————————————————————————MAGENTA—–START——————————–
      magenta = startingMagenta;
      for (x = 0; x < magentaSteps; x++) {

      for (y = 0; y < magentaRepeats; y++) {
      arrayOfNewMagentas.push(magenta);
      }

      if (isMagentaIncrementing == true) {
      magenta = magenta + colourStepping;
      if (magenta + colourStepping > endingMagenta + colourStepping) {
      magenta = endingMagenta;
      }
      }

      if (isMagentaIncrementing == false) {
      magenta = magenta – colourStepping;
      if (magenta – colourStepping < endingMagenta – colourStepping) {
      magenta = endingMagenta;
      }
      }
      }

      todo = Math.abs(maxStepping – arrayOfNewMagentas.length);

      if(todo > 0){
      for(x = 0; x < todo; x++)
      {
      arrayOfNewMagentas.push(magenta);
      }
      }
      //———————————————————————————————————————————YELLOW—–START——————————–
      yellow = startingYellow;
      for (x = 0; x < yellowSteps; x++) {

      for (y = 0; y < yellowRepeats; y++) {
      arrayOfNewYellows.push(yellow);
      }

      if (isYellowIncrementing == true) {
      yellow = yellow + colourStepping;
      if (yellow + colourStepping > endingYellow + colourStepping) {
      yellow = endingYellow;
      }
      }

      if (isYellowIncrementing == false) {
      yellow = yellow – colourStepping;
      if (yellow – colourStepping < endingYellow – colourStepping) {
      yellow = endingYellow;
      }
      }
      }

      todo = Math.abs(maxStepping – arrayOfNewYellows.length);

      if(todo > 0){
      for(x = 0; x < todo; x++)
      {
      arrayOfNewYellows.push(yellow);
      }
      }
      //———————————————————————————————————————————BLACK—–START——————————–
      black = startingBlack;
      for (x = 0; x < blackSteps; x++) {

      for (y = 0; y < blackRepeats; y++) {
      arrayOfNewBlacks.push(black);
      }

      if (isBlackIncrementing == true) {
      black = black + colourStepping;
      if (black + colourStepping > endingBlack + colourStepping) {
      black = endingBlack;
      }
      }

      if (isBlackIncrementing == false) {
      black = black – colourStepping;
      if (black – colourStepping < endingBlack – colourStepping) {
      black = endingBlack;
      }
      }
      }

      todo = Math.abs(maxStepping – arrayOfNewBlacks.length);

      if(todo > 0){
      for(x = 0; x < todo; x++)
      {
      arrayOfNewBlacks.push(black);
      }
      }
      //———————————————————————————————————————————SPECIALTY—–START——————————–
      specialty = startingSpecialty;
      for (x = 0; x < specialtySteps; x++) {

      for (y = 0; y < specialtyRepeats; y++) {
      arrayOfNewSpecialties.push(specialty);
      }

      if (isSpecialtyIncrementing == true) {
      specialty = specialty + colourStepping;
      if (specialty + colourStepping > endingSpecialty + colourStepping) {
      specialty = endingSpecialty;
      }
      }

      if (isSpecialtyIncrementing == false) {
      specialty = specialty – colourStepping;
      if (specialty – colourStepping < endingSpecialty – colourStepping) {
      specialty = endingSpecialty;
      }
      }
      }

      todo = Math.abs(maxStepping – arrayOfNewSpecialties.length);

      if(todo > 0){
      for(x = 0; x < todo; x++)
      {
      arrayOfNewSpecialties.push(specialty);
      }
      }
      //—————————————————————————————————————-END OF COLORANTS CREATION——————————–

      //————————————————————————————————-START OF SWATCHES ARRAY CREATION——————————–

      for(x = 0; x < maxStepping; x++)
      {

      swatch = {
      name: (paletteName + “__” + x),
      cyan: arrayOfNewCyans[x],
      magenta: arrayOfNewMagentas[x],
      yellow: arrayOfNewYellows[x],
      black: arrayOfNewBlacks[x],
      specialty: arrayOfNewSpecialties[x]
      };

      arrayOfNewSwatches.push(swatch);

      }

      return arrayOfNewSwatches;

      }

      // ==================================================================================================================================================================
      // This function establishes the number of intermediary steps between a starting and ending colour
      // ==================================================================================================================================================================
      function getSteps(startingColour, endingColour, colour, givenColourStepping)
      {

      // 1st step
      // establish if the progression of colour for a given colour is numerically ascending or descending
      // ex: cmyk 10,0,0,0 to 2,0,0,0 is descesding and 10,0,0,0 to 100,0,0,0 is ascending
      // 10 – 100 would mean that it is incrementing as -90 < 0
      if((startingColour – endingColour) < 0)
      {
      switch(colour)
      {
      case “cyan”:
      isCyanIncrementing = true;
      break;
      case “magenta”:
      isMagentaIncrementing = true;
      break;
      case “yellow”:
      isYellowIncrementing = true;
      break;
      case “black”:
      isBlackIncrementing = true;
      break;
      case “specialty”:
      isSpecialtyIncrementing = true;
      break;
      }
      }
      else
      {
      switch(colour)
      {
      case “cyan”:
      isCyanIncrementing = false;
      break;
      case “magenta”:
      isMagentaIncrementing = false;
      break;
      case “yellow”:
      isYellowIncrementing = false;
      break;
      case “black”:
      isBlackIncrementing = false;
      break;
      case “specialty”:
      isSpecialtyIncrementing = false;
      break;
      }
      }

      ////$.wwriteln(+ “colour: ” + colour.toString() + ” startingColour: ” + startingColour + ” endingColour: ” + endingColour);

      // 2ndstep
      // establish if there is even a progression to be given by checking if starting and ending colours are the same
      if((startingColour == 0 && endingColour == 0) || ( startingColour == endingColour))
      {
      return 0;
      }
      else
      {
      //////$.wwriteln(Math.abs(startingColour – endingColour) / givenColourStepping);
      return parseInt(Math.ceil(Math.abs(startingColour – endingColour) / givenColourStepping) +1);
      }
      }

      // ==================================================================================================================================================================
      // This function establishes the number of repeats for each colour
      // ==================================================================================================================================================================

      function establishRepeatsForGivenColour(colour, maxStepping, steps)
      {

      repeats = (steps == 0) ? (repeats = 0) : (repeats = parseInt(maxStepping / steps));

      switch(colour)
      {
      case (“cyan”):
      cyanRepeats= repeats;
      break;
      case (“magenta”):
      magentaRepeats= repeats;
      break;
      case (“yellow”):
      yellowRepeats= repeats;
      break;
      case (“black”):
      blackRepeats= repeats;
      break;
      case (“specialty”):
      specialtyRepeats= repeats;
      break;
      }

      }

      // ==================================================================================================================================================================
      // Setup document preferences
      // ==================================================================================================================================================================

      function indexOfMax(arr) {
      if (arr.length === 0) {
      return -1;
      }

      var max = arr[0];
      var maxIndex = 0;

      for (var i = 1; i < arr.length; i++) {
      if (arr[i] > max) {
      maxIndex = i;
      max = arr[i];
      }
      }

      return maxIndex;
      }

      // ==================================================================================================================================================================
      // Setup document preferences
      // ==================================================================================================================================================================

      function setupDocumentPreferences()
      {

      createDocument();
      doc = app.activeDocument;

      doc.viewPreferences.horizontalMeasurementUnits = MeasurementUnits.inches;
      doc.viewPreferences.verticalMeasurementUnits = MeasurementUnits.inches;
      doc.documentPreferences.pageOrientation = PageOrientation.landscape;
      app.marginPreferences.top = 0.125;
      app.marginPreferences.bottom = 0.125;
      app.marginPreferences.right = 0.125;
      app.marginPreferences.left = 0.125;

      }

      // ==================================================================================================================================================================
      // Create primary spots colours for the mixed inks
      // ==================================================================================================================================================================

      function createPrimarySpots()
      {

      if(app.documents.length == 0)
      {
      createDocument();
      }

      Gold = doc.swatches.itemByName(“Gold”);
      if(!Gold.isValid){doc.colors.add({name: “Gold”, model: ColorModel.SPOT, space: ColorSpace.LAB, colorValue:[87,6,86] });}

      Silver = doc.swatches.itemByName(“Silver”);
      if(!Silver.isValid){ doc.colors.add({name: “Silver”, model: ColorModel.SPOT, space: ColorSpace.LAB, colorValue:[78,0,0] });}

      White = doc.swatches.itemByName(“White”);
      if(!White.isValid){doc.colors.add({name: “White”, model: ColorModel.SPOT, space: ColorSpace.LAB, colorValue:[58,-40,-52] });}

      Clear = doc.swatches.itemByName(“Clear”);
      if(!Clear.isValid) {doc.colors.add( {name: “Clear”, model: ColorModel.SPOT, space: ColorSpace.LAB, colorValue:[50,80,-3] });}

      Orange = doc.swatches.itemByName(“Orange”);
      if(!Orange.isValid) {doc.colors.add( {name: “Orange”, model: ColorModel.SPOT, space: ColorSpace.LAB, colorValue:[62.31, 55.01, 71.34] });}

      Green = doc.swatches.itemByName(“Green”);
      if(!Green.isValid) {doc.colors.add( {name: “Green”, model: ColorModel.SPOT, space: ColorSpace.LAB, colorValue:[100,-128,127] });}

      Blue = doc.swatches.itemByName(“Blue”);
      if(!Blue.isValid) {doc.colors.add( {name: “Blue”, model: ColorModel.SPOT, space: ColorSpace.LAB, colorValue:[30,68,-128] });}

      FluoMagenta = doc.swatches.itemByName(“FluoMagenta”);
      if(!FluoMagenta.isValid) {doc.colors.add( {name: “FluoMagenta”, model: ColorModel.SPOT, space: ColorSpace.LAB, colorValue:[55,127,-6] });}

      FluoYellow = doc.swatches.itemByName(“FluoYellow”);
      if(!FluoYellow.isValid) {doc.colors.add( {name: “FluoYellow”, model: ColorModel.SPOT, space: ColorSpace.LAB, colorValue:[100,-6,127] });}
      }

      // ==================================================================================================================================================================
      // Initial UI setup at load time
      // ==================================================================================================================================================================

      function initialUISetup()
      {

      rboAppTypeAlaPantoneBridge.value=true;

      rboSheetSizeStandard.value = true;
      rboSwatchShapeRectangle.value = true;
      rboSwatchToSwatchProgressionAutomatic.value = true;
      rboPaletteCustom.value = true;

      pnlPalette.visible = false;
      pnlSheetSize.visible = false;
      pnlSwatchShape.visible = false;
      pnlStartingPoint.visible = false;
      pnlEndingPoint.visible = false;
      pnlSwatchToSwatchProgression.visible = false;

      txtPaletteName.text = ‘Green’;
      txtStartingCyan.text = 20;
      txtStartingMagenta.text = 0;
      txtStartingYellow.text = 20;
      txtStartingBlack.text = 0;
      txtStartingSpecialty.text = 60;
      txtEndingCyan.text = 60;
      txtEndingMagenta.text = 0;
      txtEndingYellow.text = 60;
      txtEndingBlack.text = 0;
      txtEndingSpecialty.text = 60;

      }

      // ==================================================================================================================================================================
      // Create Document when needed
      // ==================================================================================================================================================================

      function createDocument()
      {

      if(typeof(sheetHeight) === “undefined” || sheetHeight == “”)
      {
      sheetHeight = 11;
      }
      if(typeof(sheetWidth) === “undefined” || sheetWidth == “”)
      {
      sheetWidth = 17;
      }

      doc = app.documents.add();
      }

      // ==================================================================================================================================================================
      // Main
      // ==================================================================================================================================================================

      mainWindow.show();
      var windowWidth = mainWindow.frameSize.width;
      mainWindow.location.x = $.screens[0].right – windowWidth;

      main();

      function main()
      {
      setupDocumentPreferences();
      createPrimarySpots();
      initialUISetup();
      }
      // ==================================================================================================================================================================
      // Devtools to see properties of objects
      // ==================================================================================================================================================================

      var k, o,clr;
      function def(term){
      for( k in term)
      {
      $.writeln(k);
      }
      }

    • #14323098

      Hi David!!!

      All of this is in InDesign.

      Given a way to convert accurately (taking the profile into account) a CMYK to LAB, I would create properly spaced (color-wise) in between colors given a start and end color. That way you could have variations for a given hue that could be precisely not too far or close (say a deltaE 2000 of 1 or 2 or whatever you want) from the referenced color. There’s many benefits to this, educationally as well. Showing people how faint hues are much more susceptible to slight color variations than fully saturated hues, for example.

      What I want to do as well, now that I did this so far, is do the octagonal (similar to a honeycomb pattern) pattern where you progressively stray away from the center color and each direction takes you into a given hue. Left could be green, right could be red, top could be yellow and bottom could be cyan. Top left would be chartreuse.. etc. ala https://www.xrite.com/blog/lab-color-space EFI Fiery has something similar for their Spot Color Editor… https://www.efi.com/library/efi/images/products/1062/spot_on_editspotcolor_tn.png?h=192&w=200&la=en

      I’m keeping the search alive! This is how I got what I have so far at least :-)

      Cheers from Vancouver

    • #14323064
      druparker
      Member

      In a nutshell, I’m looking for a way to programmatically convert a given CMYK to LAB which would also respect the color profile referencing the values. So, if the user is set in XCMYK vs SWOPv2 the same CMYK recipe will produce, correctly, two very different LAB values.

    • #12243946
      druparker
      Member

      In a nutshell, I’m looking for a way to programmatically convert a given CMYK to LAB which would also respect the color profile referencing the values. So, if the user is set in XCMYK https://luckypatcher.cam/ https://kodi.software/ https://nox.tips/ vs SWOPv2 the same CMYK recipe will produce, correctly, two very different LAB values.

Viewing 8 reply threads
  • You must be logged in to reply to this topic.
Forum Ads