Back

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

Forum Replies Created

Viewing 9 posts - 1 through 9 (of 9 total)
  • Author
    Posts
  • in reply to: Profile-based color conversions? #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

    in reply to: Profile-based color conversions? #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,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”],”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);
    }
    }

    in reply to: Profile-based color conversions? #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;

    in reply to: Profile-based color conversions? #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

    in reply to: MixedInksGroup Javascripting? #14323259

    Thank you Mahesh!! Hey, and a good weekend to all :)

    in reply to: MixedInksGroup Javascripting? #14323261

    Wow! Thank you for replying.

    Here’s a link if you want to take a peek :)
    https://1drv.ms/u/s!AqGk3glzqCRRrQrm4SvweIdKy__y?e=lmgTBT

    Here’s also my working code for swatch generation.

    If I change my code to mixedInkGroups instead of mixedInks
    It adds some weird looking duplicate (I’m sorry never seen this, don’t know what they are).
    Look here: https://imgur.com/cq5kaF3

    I want to generate the mixed inks but add them to a color group.
    Maybe I’m misunderstanding what a mixedInkGroup is???

    THANK you for your time !!

    Antoine

    //——————————————————————————————————————————————————–ADD SWATCHES TO THE SWATCHES PANEL—————————————————————-
    function addSwatchesToPanel(swatches)
    {

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

    }

    //——————————————————————————————————————————————————–ADD SWATCHES TO THE SWATCHES PANEL ONE BY ONE—————————————————————-
    function addMixedInk(cyan, magenta, yellow, black, specialty, mixedInkName)
    {

    $.writeln(cyan + ” ” + magenta+ ” ” + yellow+ ” ” + black+ ” ” + specialty+ ” ” + mixedInkName);

    var MY_MIX_INKS = {};
    MY_MIX_INKS = {
    // Valid ink names are required
    // At least 2 process inks are required
    ‘Process Cyan’ : cyan, // Process1 : %
    ‘Process Magenta’ : magenta, // Process2 : %
    ‘Process Yellow’ : yellow,
    ‘Process Black’: black, // Custom1 : %
    ‘Silver’ : specialty // Custom2 : %
    },
    MY_MIX_NAME = mixedInkName;

    // Ink Validator
    // ————————————-
    var validateInkData = function(o, c, ll, pp)
    {
    var k, t, z=0, r=1;

    ll.length = pp.length = 0;

    for( k in o )
    {
    $.writeln(k);
    if( !o.hasOwnProperty(k) ) continue;
    if( !(t=c.itemByName(k)).isValid ){ r=0; break; }
    ll[z] = t.getElements()[0];
    pp[z++] = +o[k];
    }

    return r;
    };

    // Main Code
    // ————————————-
    var doc = app.activeDocument,
    inkList, // will receive validated ink list (array)
    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
    });
    }
    else
    {
    alert( “Unable to create mixed ink. ” +
    “Some inner inks are missing.” );
    }
    }

    }

    in reply to: Scripting MixedInk Woes #14323272

    I found how!

    in reply to: #14323331

    Thank you Mahesh! :)

    in reply to: ScriptUI -> Radio Buttons broken in v2020? #14323362

    Well, that’s embarrassing easy to solve.
    I owe you two lattes, I guess! :-)
    I’ve been found!

    Cheers again,

    Antoine

Viewing 9 posts - 1 through 9 (of 9 total)