{
  "format_version": "gmic_json_1.0",
  "gmic_version": "3.7.6",
  "categories": [
  {
    "name": "パターン", "filters": [
    {
      "name": "ロールシャッハ図形", "lang": "ja", "command": "fx_rorschach", "command_preview": "fx_rorschach", "parameters": [
      { "type": "float", "name": "スケール", "default": "3", "min": "0", "max": "10", "pos": "1" },
      { "type": "choice", "name": "対称軸", "default": "1", "pos": "2", "choices": { "0": "なし", "1": "X 軸", "2": "Y 軸", "3": "X 軸と Y 軸" } },
      { "type": "choice", "name": "ステンシルの種類", "default": "2", "pos": "3", "choices": { "0": "白黒", "1": "RGB", "2": "色付き" } },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé 最終更新: 2011/03/12" }
      ]
    },
    {
      "name": "迷彩", "lang": "ja", "command": "fx_camouflage", "command_preview": "fx_camouflage", "parameters": [
      { "type": "int", "name": "スケール", "default": "9", "min": "2", "max": "12", "pos": "1" },
      { "type": "int", "name": "Levels", "default": "12", "min": "2", "max": "32", "pos": "2" },
      { "type": "float", "name": "Coherence", "default": "100", "min": "0", "max": "1000", "pos": "3" },
      { "type": "color", "name": "色 1", "default": "30,46,33", "pos": "4" },
      { "type": "color", "name": "色 2", "default": "75,90,65", "pos": "7" },
      { "type": "color", "name": "色 3", "default": "179,189,117", "pos": "10" },
      { "type": "color", "name": "色 4", "default": "255,246,158", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé 最終更新: 2016/10/26" }
      ]
    }
    ]
  },
  {
    "name": "フィルムエミュレーション", "filters": [
    {
      "name": "インスタント [業務用]", "lang": "ja", "command": "fx_emulate_film_instant_pro", "command_preview": "fx_emulate_film_instant_pro_preview", "parameters": [
      { "type": "choice", "name": "プリセット", "default": "0", "pos": "1", "choices": { "0": "なし", "1": "FUJIFILM FP-100c --", "2": "FUJIFILM FP-100c -", "3": "FUJIFILM FP-100c", "4": "FUJIFILM FP-100c +", "5": "FUJIFILM FP-100c ++", "6": "FUJIFILM FP-100c ++a", "7": "FUJIFILM FP-100c +++", "8": "FUJIFILM FP-100c Cool --", "9": "FUJIFILM FP-100c Cool -", "10": "FUJIFILM FP-100c Cool", "11": "FUJIFILM FP-100c Cool +", "12": "FUJIFILM FP-100c Cool ++", "13": "FUJIFILM FP-100c Negative --", "14": "FUJIFILM FP-100c Negative -", "15": "FUJIFILM FP-100c Negative", "16": "FUJIFILM FP-100c Negative +", "17": "FUJIFILM FP-100c Negative ++", "18": "FUJIFILM FP-100c Negative ++a", "19": "FUJIFILM FP-100c Negative +++", "20": "FUJIFILM FP-3000b --", "21": "FUJIFILM FP-3000b -", "22": "FUJIFILM FP-3000b", "23": "FUJIFILM FP-3000b +", "24": "FUJIFILM FP-3000b ++", "25": "FUJIFILM FP-3000b +++", "26": "FUJIFILM FP-3000b HC", "27": "FUJIFILM FP-3000b Negative --", "28": "FUJIFILM FP-3000b Negative -", "29": "FUJIFILM FP-3000b Negative", "30": "FUJIFILM FP-3000b Negative +", "31": "FUJIFILM FP-3000b Negative ++", "32": "FUJIFILM FP-3000b Negative +++", "33": "FUJIFILM FP-3000b Negative Early", "34": "ポラロイド 665 --", "35": "ポラロイド 665 -", "36": "ポラロイド 665", "37": "ポラロイド 665 +", "38": "ポラロイド 665 ++", "39": "ポラロイド 665 Negative -", "40": "ポラロイド 665 Negative", "41": "ポラロイド 665 Negative +", "42": "ポラロイド 665 Negative HC", "43": "ポラロイド 669 --", "44": "ポラロイド 669 -", "45": "ポラロイド 669", "46": "ポラロイド 669 +", "47": "ポラロイド 669 ++", "48": "ポラロイド 669 +++", "49": "ポラロイド 669 Cold --", "50": "ポラロイド 669 Cold -", "51": "ポラロイド 669 Cold", "52": "ポラロイド 669 Cold +", "53": "ポラロイド 690 --", "54": "ポラロイド 690 -", "55": "ポラロイド 690", "56": "ポラロイド 690 +", "57": "ポラロイド 690 ++", "58": "ポラロイド 690 Cold --", "59": "ポラロイド 690 Cold -", "60": "ポラロイド 690 Cold", "61": "ポラロイド 690 Cold +", "62": "ポラロイド 690 Cold ++", "63": "ポラロイド 690 Warm --", "64": "ポラロイド 690 Warm -", "65": "ポラロイド 690 Warm", "66": "ポラロイド 690 Warm +", "67": "ポラロイド 690 Warm ++" } },
      { "type": "separator" },
      { "type": "float", "name": "不透明度", "default": "1", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "ガンマ", "default": "0", "min": "-1.2", "max": "1.2", "pos": "3" },
      { "type": "float", "name": "コントラスト", "default": "1", "min": "0", "max": "4", "pos": "4" },
      { "type": "float", "name": "輝度", "default": "0", "min": "-255", "max": "255", "pos": "5" },
      { "type": "float", "name": "色相", "default": "0", "min": "-180", "max": "180", "pos": "6" },
      { "type": "float", "name": "彩度", "default": "0", "min": "-1", "max": "1", "pos": "7" },
      { "type": "bool", "name": "事前に正規化", "default": "0", "pos": "8" },
      { "type": "separator" },
      { "type": "choice", "name": "プレビューの表示方法", "default": "0", "pos": "9", "choices": { "0": "全体", "1": "下半分", "2": "右半分", "3": "上半分", "4": "左半分", "5": "上端部を複製", "6": "左端部を複製", "7": "下端部を複製", "8": "右端部を複製" } },
      { "type": "separator" },
      { "type": "note", "text": "注: このセクションで使用されているカラー LUT は Patrick David により作成されました。詳細は以下の Web ページをご覧ください。" },
      { "type": "link", "name": "Film Emulation Presets in G'MIC", "url": "http://gmic.eu/film_emulation/index.shtml", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "作者: Patrick David、David Tschumperlé      最終更新: 2013/08/29" }
      ]
    },
    {
      "name": "インスタント [民生用]", "lang": "ja", "command": "fx_emulate_film_instant_consumer", "command_preview": "fx_emulate_film_instant_consumer_preview", "parameters": [
      { "type": "choice", "name": "プリセット", "default": "0", "pos": "1", "choices": { "0": "なし", "1": "ポラロイド PX-100UV+ Cold --", "2": "ポラロイド PX-100UV+ Cold -", "3": "ポラロイド PX-100UV+ Cold", "4": "ポラロイド PX-100UV+ Cold +", "5": "ポラロイド PX-100UV+ Cold ++", "6": "ポラロイド PX-100UV+ Cold +++", "7": "ポラロイド PX-100UV+ Warm --", "8": "ポラロイド PX-100UV+ Warm -", "9": "ポラロイド PX-100UV+ Warm", "10": "ポラロイド PX-100UV+ Warm +", "11": "ポラロイド PX-100UV+ Warm ++", "12": "ポラロイド PX-100UV+ Warm +++", "13": "ポラロイド PX-680 --", "14": "ポラロイド PX-680 -", "15": "ポラロイド PX-680", "16": "ポラロイド PX-680 +", "17": "ポラロイド PX-680 ++", "18": "ポラロイド PX-680 Cold --", "19": "ポラロイド PX-680 Cold -", "20": "ポラロイド PX-680 Cold", "21": "ポラロイド PX-680 Cold +", "22": "ポラロイド PX-680 Cold ++", "23": "ポラロイド PX-680 Cold ++a", "24": "ポラロイド PX-680 Warm --", "25": "ポラロイド PX-680 Warm -", "26": "ポラロイド PX-680 Warm", "27": "ポラロイド PX-680 Warm +", "28": "ポラロイド PX-680 Warm ++", "29": "ポラロイド PX-70 --", "30": "ポラロイド PX-70 -", "31": "ポラロイド PX-70", "32": "ポラロイド PX-70 +", "33": "ポラロイド PX-70 ++", "34": "ポラロイド PX-70 +++", "35": "ポラロイド PX-70 Cold --", "36": "ポラロイド PX-70 Cold -", "37": "ポラロイド PX-70 Cold", "38": "ポラロイド PX-70 Cold +", "39": "ポラロイド PX-70 Cold ++", "40": "ポラロイド PX-70 Warm --", "41": "ポラロイド PX-70 Warm -", "42": "ポラロイド PX-70 Warm", "43": "ポラロイド PX-70 Warm +", "44": "ポラロイド PX-70 Warm ++", "45": "ポラロイド Time Zero (絶版) ---", "46": "ポラロイド Time Zero (絶版) --", "47": "ポラロイド Time Zero (絶版) -", "48": "ポラロイド Time Zero (絶版)", "49": "ポラロイド Time Zero (絶版) +", "50": "ポラロイド Time Zero (絶版) ++", "51": "ポラロイド Time Zero (絶版) Cold ---", "52": "ポラロイド Time Zero (絶版) Cold --", "53": "ポラロイド Time Zero (絶版) Cold -", "54": "ポラロイド Time Zero (絶版) Cold" } },
      { "type": "separator" },
      { "type": "float", "name": "不透明度", "default": "1", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "ガンマ", "default": "0", "min": "-1.2", "max": "1.2", "pos": "3" },
      { "type": "float", "name": "コントラスト", "default": "1", "min": "0", "max": "4", "pos": "4" },
      { "type": "float", "name": "輝度", "default": "0", "min": "-255", "max": "255", "pos": "5" },
      { "type": "float", "name": "色相", "default": "0", "min": "-180", "max": "180", "pos": "6" },
      { "type": "float", "name": "彩度", "default": "0", "min": "-1", "max": "1", "pos": "7" },
      { "type": "bool", "name": "事前に正規化", "default": "0", "pos": "8" },
      { "type": "separator" },
      { "type": "choice", "name": "プレビューの表示方法", "default": "0", "pos": "9", "choices": { "0": "全体", "1": "下半分", "2": "右半分", "3": "上半分", "4": "左半分", "5": "上端部を複製", "6": "左端部を複製", "7": "下端部を複製", "8": "右端部を複製" } },
      { "type": "separator" },
      { "type": "note", "text": "注: このセクションで使用されているカラー LUT は Patrick David により作成されました。詳細は以下の Web ページをご覧ください。" },
      { "type": "link", "name": "Film Emulation Presets in G'MIC", "url": "http://gmic.eu/film_emulation/index.shtml", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "作者: Patrick David、David Tschumperlé      最終更新: 2013/08/29" }
      ]
    },
    {
      "name": "ネガフィルム [カラー]", "lang": "ja", "command": "fx_emulate_film_negative_color", "command_preview": "fx_emulate_film_negative_color_preview", "parameters": [
      { "type": "choice", "name": "プリセット", "default": "0", "pos": "1", "choices": { "0": "なし", "1": "Agfa Ultra Color 100", "2": "Agfa Vista 200", "3": "Fuji Superia 200", "4": "Fuji Superia HG 1600", "5": "Fuji Superia Reala 100", "6": "Fuji Superia X-Tra 800", "7": "Kodak Elite 100 XPRO", "8": "Kodak Elite Color 200", "9": "Kodak Elite Color 400", "10": "Kodak Portra 160 NC", "11": "Kodak Portra 160 VC", "12": "Lomography Redscale 100" } },
      { "type": "separator" },
      { "type": "float", "name": "強さ (%)", "default": "100", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "輝度 (%)", "default": "0", "min": "-100", "max": "100", "pos": "3" },
      { "type": "float", "name": "コントラスト (%)", "default": "0", "min": "-100", "max": "100", "pos": "4" },
      { "type": "float", "name": "ガンマ (%)", "default": "0", "min": "-100", "max": "100", "pos": "5" },
      { "type": "float", "name": "色相 (%)", "default": "0", "min": "-100", "max": "100", "pos": "6" },
      { "type": "float", "name": "彩度 (%)", "default": "0", "min": "-100", "max": "100", "pos": "7" },
      { "type": "choice", "name": "色を正規化", "default": "0", "pos": "8", "choices": { "0": "無し", "1": "処理前", "2": "処理後", "3": "両方" } },
      { "type": "separator" },
      { "type": "choice", "name": "プレビューの表示方法", "default": "0", "pos": "9", "choices": { "0": "全体", "1": "下半分", "2": "右半分", "3": "上半分", "4": "左半分", "5": "上端部を複製", "6": "左端部を複製", "7": "下端部を複製", "8": "右端部を複製" } },
      { "type": "separator" },
      { "type": "note", "text": "注: このセクションで使用されているカラー LUT は Patrick David により作成されました。詳細は以下の Web ページをご覧ください。" },
      { "type": "link", "name": "Film Emulation Presets in G'MIC", "url": "http://gmic.eu/film_emulation/index.shtml", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "作者: Patrick David、David Tschumperlé 最終更新: 2016/08/02" }
      ]
    }
    ]
  },
  {
    "name": "フレーム", "filters": [
    {
      "name": "フレーム [ぼかし]", "lang": "ja", "command": "fx_frame_blur", "command_preview": "fx_frame_blur", "parameters": [
      { "type": "float", "name": "水平サイズ (%)", "default": "30", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "垂直サイズ (%)", "default": "30", "min": "0", "max": "100", "pos": "2" },
      { "type": "separator" },
      { "type": "float", "name": "切り抜き", "default": "0", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "ぼかし", "default": "5", "min": "0", "max": "10", "pos": "4" },
      { "type": "float", "name": "丸み", "default": "0", "min": "0", "max": "1", "pos": "5" },
      { "type": "bool", "name": "カラーバランスを調整", "default": "0", "pos": "6" },
      { "type": "color", "name": "着色", "default": "128,128,128", "pos": "7" },
      { "type": "choice", "name": "正規化", "default": "0", "pos": "10", "choices": { "0": "なし", "1": "伸張", "2": "平均化" } },
      { "type": "separator" },
      { "type": "float", "name": "輪郭線のサイズ", "default": "5", "min": "0", "max": "50", "pos": "11" },
      { "type": "color", "name": "輪郭線の色", "default": "255,255,255", "pos": "12" },
      { "type": "float", "name": "影の位置 (左右)", "default": "2", "min": "-10", "max": "10", "pos": "15" },
      { "type": "float", "name": "影の位置 (上下)", "default": "2", "min": "-10", "max": "10", "pos": "16" },
      { "type": "float", "name": "影のぼかし", "default": "1", "min": "0", "max": "5", "pos": "17" },
      { "type": "float", "name": "影のコントラスト", "default": "0", "min": "0", "max": "100", "pos": "18" },
      { "type": "float", "name": "画像の位置 (左右)", "default": "0.5", "min": "0", "max": "1", "pos": "19" },
      { "type": "float", "name": "画像の位置 (上下)", "default": "0.5", "min": "0", "max": "1", "pos": "20" },
      { "type": "float", "name": "角度", "default": "0", "min": "-180", "max": "180", "pos": "21" },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé 最終更新: 2014/01/19" }
      ]
    }
    ]
  },
  {
    "name": "修復", "filters": [
    {
      "name": "アップスケール [Scale2x]", "lang": "ja", "command": "fx_scalenx", "command_preview": "fx_scalenx_preview", "parameters": [
      { "type": "choice", "name": "拡大率", "default": "0", "pos": "1", "choices": { "0": "x 2", "1": "x 3", "2": "x 4", "3": "x 6", "4": "x 8", "5": "x 9", "6": "x 12", "7": "x 16", "8": "x 18", "9": "x 27" } },
      { "type": "choice", "name": "色空間", "default": "0", "pos": "2", "choices": { "0": "RGB", "1": "YCbCr", "2": "Lab" } },
      { "type": "note", "text": "\n注:  このフィルタは、以下の Web サイトで公開されている画像拡大アルゴリズムを実装したものです。 " },
      { "type": "link", "name": "http://scale2x.sourceforge.net", "url": "http://scale2x.sourceforge.net", "align": "center" },
      { "type": "note", "text": " このフィルタは、インデックス画像等の色数の少ない画像のリサイズを目的としたものです。 フルカラー画像に対しての使用には基本的に適しません。 " },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé      最終更新: 2010/12/29" }
      ]
    },
    {
      "name": "インターレース除去", "lang": "ja", "command": "deinterlace", "command_preview": "fx_deinterlace_preview", "parameters": [
      { "type": "choice", "name": "アルゴリズム", "default": "0", "pos": "1", "choices": { "0": "標準", "1": "Motion-compensated" } },
      { "type": "separator" },
      { "type": "choice", "name": "プレビューの表示方法", "default": "0", "pos": "2", "choices": { "0": "全体", "1": "下半分", "2": "右半分", "3": "上半分", "4": "左半分", "5": "上端部を複製", "6": "左端部を複製", "7": "下端部を複製", "8": "右端部を複製" } },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé 最終更新: 2010/12/29" }
      ]
    },
    {
      "name": "ホットピクセル除去", "lang": "ja", "command": "fx_remove_hotpixels", "command_preview": "fx_remove_hotpixels_preview", "parameters": [
      { "type": "int", "name": "マスクサイズ", "default": "3", "min": "3", "max": "20", "pos": "1" },
      { "type": "float", "name": "閾値", "default": "10", "min": "0", "max": "200", "pos": "2" },
      { "type": "separator" },
      { "type": "choice", "name": "プレビューの表示方法", "default": "0", "pos": "3", "choices": { "0": "全体", "1": "下半分", "2": "右半分", "3": "上半分", "4": "左半分", "5": "上端部を複製", "6": "左端部を複製", "7": "下端部を複製", "8": "右端部を複製" } },
      { "type": "separator" },
      { "type": "note", "text": "作者: Jérome Boulanger 最終更新: 2010/12/29" }
      ]
    },
    {
      "name": "補修 [パッチベース]", "lang": "ja", "command": "fx_inpaint_patch", "command_preview": "gui_no_preview", "parameters": [
      { "type": "int", "name": "パッチサイズ", "default": "7", "min": "1", "max": "64", "pos": "1" },
      { "type": "float", "name": "参照サイズ", "default": "16", "min": "1", "max": "32", "pos": "2" },
      { "type": "float", "name": "参照基数", "default": "0.1", "min": "0", "max": "1", "pos": "3" },
      { "type": "float", "name": "ぼかしサイズ", "default": "1.2", "min": "0", "max": "5", "pos": "4" },
      { "type": "float", "name": "ぼかししきい値", "default": "0", "min": "0", "max": "1", "pos": "5" },
      { "type": "float", "name": "ぼかし減衰", "default": "0.05", "min": "0", "max": "0.5", "pos": "6" },
      { "type": "int", "name": "スケールの階層数", "default": "10", "min": "1", "max": "20", "pos": "7" },
      { "type": "bool", "name": "マスク外領域のぼかしを許可", "default": "1", "pos": "8" },
      { "type": "color", "name": "マスクの色", "default": "255,0,0,255", "pos": "9" },
      { "type": "int", "name": "マスクを広げる", "default": "0", "min": "0", "max": "32", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "このフィルタの詳しい使い方はこちらで参照できます。" },
      { "type": "link", "name": "Patrick David 氏によるこのフィルタについてのチュートリアル (英語)", "url": "http://blog.patdavid.net/2014/02/getting-around-in-gimp-gmic-inpainting.html", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé、Maxime Daisy 最終更新: 2015/11/25" }
      ]
    },
    {
      "name": "補修 [マルチスケール]", "lang": "ja", "command": "fx_inpaint_matchpatch", "command_preview": "fx_inpaint_matchpatch_preview", "parameters": [
      { "type": "int", "name": "スケールの階層数", "default": "0", "min": "0", "max": "16", "pos": "1" },
      { "type": "note", "text": "(自動で設定するには 0 を入力してください)" },
      { "type": "int", "name": "パッチサイズ", "default": "9", "min": "1", "max": "64", "pos": "2" },
      { "type": "int", "name": "スケールごとの処理回数", "default": "10", "min": "1", "max": "100", "pos": "3" },
      { "type": "int", "name": "ぼかしサイズ", "default": "5", "min": "0", "max": "32", "pos": "4" },
      { "type": "bool", "name": "マスク外領域のぼかしを許可", "default": "1", "pos": "5" },
      { "type": "color", "name": "マスクの色", "default": "255,0,0,255", "pos": "6" },
      { "type": "int", "name": "マスクを広げる", "default": "0", "min": "0", "max": "32", "pos": "10" },
      { "type": "separator" },
      { "type": "bool", "name": "処理中に進捗状況をプレビュー", "default": "0", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé 最終更新: 2015/11/25" }
      ]
    },
    {
      "name": "透明部分を埋める", "lang": "ja", "command": "fx_solidify_td", "command_preview": "fx_solidify_td_preview", "parameters": [
      { "type": "float", "name": "なめらかさ (%)", "default": "75", "min": "0", "max": "100", "pos": "1" },
      { "type": "choice", "name": "正規化", "default": "1", "pos": "2", "choices": { "0": "等方性", "1": "Delaunay-oriented", "2": "Edge-oriented" } },
      { "type": "int", "name": "正規化の反復処理", "default": "20", "min": "0", "max": "100", "pos": "3" },
      { "type": "int", "name": "拡張 / 収縮", "default": "0", "min": "-20", "max": "20", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "プレビューの表示方法", "default": "0", "pos": "5", "choices": { "0": "全体", "1": "下半分", "2": "右半分", "3": "上半分", "4": "左半分", "5": "上端部を複製", "6": "左端部を複製", "7": "下端部を複製", "8": "右端部を複製" } },
      { "type": "separator" },
      { "type": "note", "text": "注: このフィルタは、輸送拡散アルゴリズムを使用して画像の透明部分を再構成します。アルファチャンネルを有する画像にのみ効果があります。 " },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé 最終更新: 2016/04/07" }
      ]
    },
    {
      "name": "Iain 式高速ノイズ除去", "lang": "ja", "command": "iain_fast_denoise_p", "command_preview": "iain_fast_denoise_p_preview", "parameters": [
      { "type": "float", "name": "輝度", "default": "0", "min": "0", "max": "3", "pos": "1" },
      { "type": "float", "name": "色度", "default": "0", "min": "0", "max": "3", "pos": "2" },
      { "type": "float", "name": "ガンマ", "default": "1", "min": ".5", "max": "3", "pos": "3" },
      { "type": "float", "name": "斑点ノイズ除去", "default": "0", "min": "0", "max": "1", "pos": "4" },
      { "type": "bool", "name": "出力結果にディザリングをかける", "default": "0", "pos": "5" },
      { "type": "choice", "name": "プレビューの表示", "default": "0", "pos": "6", "choices": { "0": "通常", "1": "輝度ノイズ", "2": "色度ノイズ" } },
      { "type": "separator" },
      { "type": "choice", "name": "並列実行", "default": "1", "pos": "7", "choices": { "0": "オフ", "1": "自動" } },
      { "type": "separator" },
      { "type": "note", "text": "このノイズ除去フィルタは高速動作を再優先に設計されています。画像のディテールは損なわれる場合があります。" },
      { "type": "separator" },
      { "type": "note", "text": "作者: Iain Fergusson" },
      { "type": "note", "text": "更新 2015/3/28 - 画像の乱れを解消するために並列実行時のオーバーラップ部分を拡大" },
      { "type": "note", "text": "更新 2013/10/26 - 並列実行" },
      { "type": "note", "text": "リリース 2013/2/22" }
      ]
    }
    ]
  },
  {
    "name": "光と影", "filters": [
    {
      "name": "ライトリーク", "lang": "ja", "command": "fx_light_leaks", "command_preview": "fx_light_leaks_preview", "parameters": [
      { "type": "int", "name": "ライトリークの種類", "default": "0", "min": "0", "max": "70", "pos": "1" },
      { "type": "float", "name": "角度", "default": "0", "min": "-180", "max": "180", "pos": "2" },
      { "type": "float", "name": "X 方向のスケール", "default": "1", "min": "1", "max": "10", "pos": "3" },
      { "type": "float", "name": "Y 方向のスケール", "default": "1", "min": "1", "max": "10", "pos": "4" },
      { "type": "float", "name": "色相", "default": "0", "min": "-180", "max": "180", "pos": "5" },
      { "type": "float", "name": "不透明度", "default": "0.85", "min": "0", "max": "1", "pos": "6" },
      { "type": "choice", "name": "合成モード", "default": "2", "pos": "7", "choices": { "0": "標準", "1": "明るくする", "2": "スクリーン", "3": "覆い焼き", "4": "加算", "5": "暗くする", "6": "乗算", "7": "焼き込み", "8": "オーバーレイ", "9": "ソフトライト", "10": "ハードライト", "11": "差分", "12": "減算", "13": "微粒取り出し", "14": "微粒結合", "15": "除算", "16": "色相", "17": "彩度", "18": "明度" } },
      { "type": "bool", "name": "別のレイヤーに出力", "default": "1", "pos": "8" },
      { "type": "separator" },
      { "type": "choice", "name": "プレビューの表示方法", "default": "0", "pos": "9", "choices": { "0": "全体", "1": "下半分", "2": "右半分", "3": "上半分", "4": "左半分", "5": "上端部を複製", "6": "左端部を複製", "7": "下端部を複製", "8": "右端部を複製" } },
      { "type": "separator" },
      { "type": "note", "text": "このフィルタは、以下のリンク先で提供されているライトリーク用フリー素材を使用しています。" },
      { "type": "link", "name": "Lomo Light Leaks", "url": "http://www.photoshoptutorials.ws/downloads/mockups-graphics/lomo-light-leaks/", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé 最終更新: 2015/07/01" }
      ]
    }
    ]
  },
  {
    "name": "劣化", "filters": [
    {
      "name": "ぼかし [ガウス]", "lang": "ja", "command": "fx_blur_gaussian", "command_preview": "fx_blur_gaussian_preview", "parameters": [
      { "type": "float", "name": "大きさ (X、Y)", "default": "3", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "大きさ (X)", "default": "0", "min": "0", "max": "20", "pos": "2" },
      { "type": "float", "name": "大きさ (Y)", "default": "0", "min": "0", "max": "20", "pos": "3" },
      { "type": "choice", "name": "画像端での処理", "default": "1", "pos": "4", "choices": { "0": "黒を使用", "1": "最も近いピクセルの色を使用" } },
      { "type": "separator" },
      { "type": "choice", "name": "チャンネル", "default": "0", "pos": "5", "choices": { "0": "すべて", "1": "RGBA [すべて]", "2": "RGB [すべて]", "3": "RGB [赤]", "4": "RGB [緑]", "5": "RGB [青]", "6": "RGBA [アルファ]", "7": "リニア RGB [すべて]", "8": "リニア RGB [赤]", "9": "リニア RGB [緑]", "10": "リニア RGB [青]", "11": "YCbCr [輝度]", "12": "YCbCr [色度、青-赤]", "13": "YCbCr [色度、青]", "14": "YCbCr [色度、赤]", "15": "YCbCr [色度、緑]", "16": "Lab [明度]", "17": "Lab [色度、ab]", "18": "Lab [色度、a]", "19": "Lab [色度、b]", "20": "Lch [色度、ch]", "21": "Lch [色度、c]", "22": "Lch [色度、h]", "23": "HSV [色相]", "24": "HSV [彩度]", "25": "HSV [明度]", "26": "HSI [輝度]", "27": "HSL [明度]", "28": "CMYK [シアン]", "29": "CMYK [マゼンタ]", "30": "CMYK [イエロー]", "31": "CMYK [キー]", "32": "YIQ [輝度]", "33": "YIQ [色度]" } },
      { "type": "choice", "name": "範囲外の値の処理", "default": "0", "pos": "6", "choices": { "0": "何もしない", "1": "切り捨て", "2": "正規化" } },
      { "type": "separator" },
      { "type": "choice", "name": "プレビューの表示方法", "default": "0", "pos": "7", "choices": { "0": "全体", "1": "下半分", "2": "右半分", "3": "上半分", "4": "左半分", "5": "上端部を複製", "6": "左端部を複製", "7": "下端部を複製", "8": "右端部を複製" } },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé      最終更新: 2010/12/29" }
      ]
    },
    {
      "name": "ぼかし [グロー]", "lang": "ja", "command": "fx_glow", "command_preview": "fx_glow_preview", "parameters": [
      { "type": "float", "name": "大きさ", "default": "6", "min": "0", "max": "20", "pos": "1" },
      { "type": "separator" },
      { "type": "choice", "name": "チャンネル", "default": "7", "pos": "2", "choices": { "0": "すべて", "1": "RGBA [すべて]", "2": "RGB [すべて]", "3": "RGB [赤]", "4": "RGB [緑]", "5": "RGB [青]", "6": "RGBA [アルファ]", "7": "リニア RGB [すべて]", "8": "リニア RGB [赤]", "9": "リニア RGB [緑]", "10": "リニア RGB [青]", "11": "YCbCr [輝度]", "12": "YCbCr [色度、青-赤]", "13": "YCbCr [色度、青]", "14": "YCbCr [色度、赤]", "15": "YCbCr [色度、緑]", "16": "Lab [明度]", "17": "Lab [色度、ab]", "18": "Lab [色度、a]", "19": "Lab [色度、b]", "20": "Lch [色度、ch]", "21": "Lch [色度、c]", "22": "Lch [色度、h]", "23": "HSV [色相]", "24": "HSV [彩度]", "25": "HSV [明度]", "26": "HSI [輝度]", "27": "HSL [明度]", "28": "CMYK [シアン]", "29": "CMYK [マゼンタ]", "30": "CMYK [イエロー]", "31": "CMYK [キー]", "32": "YIQ [輝度]", "33": "YIQ [色度]" } },
      { "type": "choice", "name": "範囲外の値の処理", "default": "0", "pos": "3", "choices": { "0": "何もしない", "1": "切り捨て", "2": "正規化" } },
      { "type": "separator" },
      { "type": "choice", "name": "プレビューの表示方法", "default": "0", "pos": "4", "choices": { "0": "全体", "1": "下半分", "2": "右半分", "3": "上半分", "4": "左半分", "5": "上端部を複製", "6": "左端部を複製", "7": "下端部を複製", "8": "右端部を複製" } },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé      最終更新: 2010/12/29" }
      ]
    },
    {
      "name": "ぼかし [回転]", "lang": "ja", "command": "fx_blur_angular", "command_preview": "fx_blur_angular_preview", "parameters": [
      { "type": "float", "name": "大きさ", "default": "2", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "X 軸方向の中心 (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Y 軸方向の中心 (%)", "default": "50", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "シャープネス", "default": "0", "min": "0", "max": "500", "pos": "4" },
      { "type": "bool", "name": "ガイドをプレビューに表示", "default": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "チャンネル", "default": "7", "pos": "6", "choices": { "0": "すべて", "1": "RGBA [すべて]", "2": "RGB [すべて]", "3": "RGB [赤]", "4": "RGB [緑]", "5": "RGB [青]", "6": "RGBA [アルファ]", "7": "リニア RGB [すべて]", "8": "リニア RGB [赤]", "9": "リニア RGB [緑]", "10": "リニア RGB [青]", "11": "YCbCr [輝度]", "12": "YCbCr [色度、青-赤]", "13": "YCbCr [色度、青]", "14": "YCbCr [色度、赤]", "15": "YCbCr [色度、緑]", "16": "Lab [明度]", "17": "Lab [色度、ab]", "18": "Lab [色度、a]", "19": "Lab [色度、b]", "20": "Lch [色度、ch]", "21": "Lch [色度、c]", "22": "Lch [色度、h]", "23": "HSV [色相]", "24": "HSV [彩度]", "25": "HSV [明度]", "26": "HSI [輝度]", "27": "HSL [明度]", "28": "CMYK [シアン]", "29": "CMYK [マゼンタ]", "30": "CMYK [イエロー]", "31": "CMYK [キー]", "32": "YIQ [輝度]", "33": "YIQ [色度]" } },
      { "type": "choice", "name": "範囲外の値の処理", "default": "0", "pos": "7", "choices": { "0": "何もしない", "1": "切り捨て", "2": "正規化" } },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé      最終更新: 2015/1/16" }
      ]
    },
    {
      "name": "ぼかし [放射状]", "lang": "ja", "command": "fx_blur_radial", "command_preview": "fx_blur_radial_preview", "parameters": [
      { "type": "float", "name": "大きさ", "default": "3", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "X 軸方向の中心 (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Y 軸方向の中心 (%)", "default": "50", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "シャープネス", "default": "0", "min": "0", "max": "500", "pos": "4" },
      { "type": "bool", "name": "ガイドをプレビューに表示", "default": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "チャンネル", "default": "7", "pos": "6", "choices": { "0": "すべて", "1": "RGBA [すべて]", "2": "RGB [すべて]", "3": "RGB [赤]", "4": "RGB [緑]", "5": "RGB [青]", "6": "RGBA [アルファ]", "7": "リニア RGB [すべて]", "8": "リニア RGB [赤]", "9": "リニア RGB [緑]", "10": "リニア RGB [青]", "11": "YCbCr [輝度]", "12": "YCbCr [色度、青-赤]", "13": "YCbCr [色度、青]", "14": "YCbCr [色度、赤]", "15": "YCbCr [色度、緑]", "16": "Lab [明度]", "17": "Lab [色度、ab]", "18": "Lab [色度、a]", "19": "Lab [色度、b]", "20": "Lch [色度、ch]", "21": "Lch [色度、c]", "22": "Lch [色度、h]", "23": "HSV [色相]", "24": "HSV [彩度]", "25": "HSV [明度]", "26": "HSI [輝度]", "27": "HSL [明度]", "28": "CMYK [シアン]", "29": "CMYK [マゼンタ]", "30": "CMYK [イエロー]", "31": "CMYK [キー]", "32": "YIQ [輝度]", "33": "YIQ [色度]" } },
      { "type": "choice", "name": "範囲外の値の処理", "default": "0", "pos": "7", "choices": { "0": "何もしない", "1": "切り捨て", "2": "正規化" } },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé      最終更新: 2015/1/16" }
      ]
    },
    {
      "name": "ぼかし [線形]", "lang": "ja", "command": "fx_blur_linear", "command_preview": "fx_blur_linear_preview", "parameters": [
      { "type": "float", "name": "平行方向の半径", "default": "10", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "直交方向の半径", "default": "0.5", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "角度", "default": "0", "min": "0", "max": "180", "pos": "3" },
      { "type": "float", "name": "シャープネス", "default": "0", "min": "0", "max": "500", "pos": "4" },
      { "type": "choice", "name": "画像端での処理", "default": "1", "pos": "5", "choices": { "0": "黒を使用", "1": "最も近いピクセルの色を使用" } },
      { "type": "separator" },
      { "type": "choice", "name": "チャンネル", "default": "7", "pos": "6", "choices": { "0": "すべて", "1": "RGBA [すべて]", "2": "RGB [すべて]", "3": "RGB [赤]", "4": "RGB [緑]", "5": "RGB [青]", "6": "RGBA [アルファ]", "7": "リニア RGB [すべて]", "8": "リニア RGB [赤]", "9": "リニア RGB [緑]", "10": "リニア RGB [青]", "11": "YCbCr [輝度]", "12": "YCbCr [色度、青-赤]", "13": "YCbCr [色度、青]", "14": "YCbCr [色度、赤]", "15": "YCbCr [色度、緑]", "16": "Lab [明度]", "17": "Lab [色度、ab]", "18": "Lab [色度、a]", "19": "Lab [色度、b]", "20": "Lch [色度、ch]", "21": "Lch [色度、c]", "22": "Lch [色度、h]", "23": "HSV [色相]", "24": "HSV [彩度]", "25": "HSV [明度]", "26": "HSI [輝度]", "27": "HSL [明度]", "28": "CMYK [シアン]", "29": "CMYK [マゼンタ]", "30": "CMYK [イエロー]", "31": "CMYK [キー]", "32": "YIQ [輝度]", "33": "YIQ [色度]" } },
      { "type": "choice", "name": "範囲外の値の処理", "default": "0", "pos": "7", "choices": { "0": "何もしない", "1": "切り捨て", "2": "正規化" } },
      { "type": "separator" },
      { "type": "choice", "name": "プレビューの表示方法", "default": "0", "pos": "8", "choices": { "0": "全体", "1": "下半分", "2": "右半分", "3": "上半分", "4": "左半分", "5": "上端部を複製", "6": "左端部を複製", "7": "下端部を複製", "8": "右端部を複製" } },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé 最終更新: 2010/12/29" }
      ]
    },
    {
      "name": "ぼかし [被写界深度]", "lang": "ja", "command": "fx_blur_dof", "command_preview": "fx_blur_dof_preview", "parameters": [
      { "type": "float", "name": "大きさ", "default": "3", "min": "0", "max": "20", "pos": "1" },
      { "type": "int", "name": "精度", "default": "16", "min": "2", "max": "64", "pos": "2" },
      { "type": "choice", "name": "被写界深度の種類", "default": "0", "pos": "3", "choices": { "0": "ガウス", "1": "ユーザー定義 (最背面のレイヤー)" } },
      { "type": "bool", "name": "ぼかしを反転", "default": "0", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "被写界深度 (ガウス):" },
      { "type": "float", "name": "X 軸方向の中心", "default": "50", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "Y 軸方向の中心", "default": "50", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "半径 1", "default": "30", "min": "0", "max": "200", "pos": "7" },
      { "type": "float", "name": "半径 2", "default": "30", "min": "0", "max": "200", "pos": "8" },
      { "type": "float", "name": "角度", "default": "0", "min": "0", "max": "180", "pos": "9" },
      { "type": "float", "name": "シャープネス", "default": "1", "min": "0", "max": "8", "pos": "10" },
      { "type": "bool", "name": "ガイドをプレビューに表示", "default": "1", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "被写界深度 (ユーザー定義):" },
      { "type": "float", "name": "ガンマ", "default": "0", "min": "-2", "max": "2", "pos": "12" },
      { "type": "note", "text": "各ピクセルの深度を輝度で表した深度マップ画像を最背面のレイヤーに配置することでフィルタに入力できます。 「入力レイヤー」コンボボックスでレイヤーを有効化するのをお忘れなく。" },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé 最終更新: 2014/02/25" }
      ]
    },
    {
      "name": "色収差", "lang": "ja", "command": "fx_chromatic_aberrations", "command_preview": "fx_chromatic_aberrations_preview", "parameters": [
      { "type": "color", "name": "第 1 色", "default": "255,0,0", "pos": "1" },
      { "type": "float", "name": "X 軸シフト", "default": "2", "min": "-16", "max": "16", "pos": "4" },
      { "type": "float", "name": "Y 軸シフト", "default": "2", "min": "-16", "max": "16", "pos": "5" },
      { "type": "separator" },
      { "type": "color", "name": "第 2 色", "default": "0,255,0", "pos": "6" },
      { "type": "float", "name": "X 軸シフト (px)", "default": "0", "min": "-16", "max": "16", "pos": "9" },
      { "type": "float", "name": "Y 軸シフト (px)", "default": "0", "min": "-16", "max": "16", "pos": "10" },
      { "type": "separator" },
      { "type": "choice", "name": "プレビューの表示方法", "default": "0", "pos": "11", "choices": { "0": "全体", "1": "下半分", "2": "右半分", "3": "上半分", "4": "左半分", "5": "上端部を複製", "6": "左端部を複製", "7": "下端部を複製", "8": "右端部を複製" } },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé      最終更新: 2015/07/05" }
      ]
    },
    {
      "name": "LOMO 風", "lang": "ja", "command": "fx_lomo", "command_preview": "fx_lomo_preview", "parameters": [
      { "type": "float", "name": "ビネット効果の大きさ", "default": "20", "min": "0", "max": "100", "pos": "1" },
      { "type": "separator" },
      { "type": "choice", "name": "プレビューの表示方法", "default": "0", "pos": "2", "choices": { "0": "全体", "1": "下半分", "2": "右半分", "3": "上半分", "4": "左半分", "5": "上端部を複製", "6": "左端部を複製", "7": "下端部を複製", "8": "右端部を複製" } },
      { "type": "separator" },
      { "type": "note", "text": "作者: Jérome Boulanger、David Tschumperlé      最終更新: 06/06/2012" }
      ]
    }
    ]
  },
  {
    "name": "変形", "filters": [
    {
      "name": "レンズ歪み", "lang": "ja", "command": "fx_distort_lens", "command_preview": "fx_distort_lens_preview", "parameters": [
      { "type": "float", "name": "強度", "default": "0.1", "min": "-1", "max": "1", "pos": "1" },
      { "type": "float", "name": "アスペクト比", "default": "0", "min": "-2", "max": "2", "pos": "2" },
      { "type": "float", "name": "ズーム", "default": "0", "min": "-4", "max": "4", "pos": "3" },
      { "type": "float", "name": "X 方向の中心 (%)", "default": "50", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Y 方向の中心 (%)", "default": "50", "min": "0", "max": "100", "pos": "5" },
      { "type": "choice", "name": "画像の外側", "default": "0", "pos": "6", "choices": { "0": "透明", "1": "最近傍", "2": "繰り返し", "3": "反転" } },
      { "type": "separator" },
      { "type": "choice", "name": "プレビューの表示方法", "default": "0", "pos": "7", "choices": { "0": "全体", "1": "下半分", "2": "右半分", "3": "上半分", "4": "左半分", "5": "上端部を複製", "6": "左端部を複製", "7": "下端部を複製", "8": "右端部を複製" } },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé 最終更新: 2017/02/18" }
      ]
    },
    {
      "name": "正距円筒図法画像から天頂・天底を生成", "lang": "ja", "command": "fx_equirectangular2nadirzenith", "command_preview": "fx_equirectangular2nadirzenith", "parameters": [
      { "type": "choice", "name": "モード", "default": "0", "pos": "1", "choices": { "0": "天頂・天底を生成", "1": "正距円筒図法に戻す" } },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé 最終更新: 2015/12/29" }
      ]
    }
    ]
  },
  {
    "name": "描画", "filters": [
    {
      "name": "キューピッド", "lang": "ja", "command": "fx_cupid", "command_preview": "fx_cupid", "parameters": [
      { "type": "float", "name": "ぼかし", "default": "0", "min": "0", "max": "10", "pos": "1" },
      { "type": "color", "name": "色", "default": "255,0,0,255", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé 最終更新: 2013/11/13" }
      ]
    },
    {
      "name": "グラデーション [四隅]", "lang": "ja", "command": "fx_corner_gradient", "command_preview": "fx_corner_gradient", "parameters": [
      { "type": "color", "name": "色 1 (左上)", "default": "255,255,255,128", "pos": "1" },
      { "type": "color", "name": "色 2 (右上)", "default": "255,0,0,255", "pos": "5" },
      { "type": "color", "name": "色 3 (左下)", "default": "0,255,0,255", "pos": "9" },
      { "type": "color", "name": "色 4 (右下)", "default": "0,0,255,255", "pos": "13" },
      { "type": "separator" },
      { "type": "choice", "name": "色空間", "default": "1", "pos": "17", "choices": { "0": "sRGB", "1": "Linear RGB", "2": "Lab" } },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé 最終更新: 2010/12/29" }
      ]
    },
    {
      "name": "シェルピンスキーの三角形", "lang": "ja", "command": "fx_sierpinski", "command_preview": "fx_sierpinski", "parameters": [
      { "type": "int", "name": "反復", "default": "6", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "第 1 頂点の X 座標", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "第 1 頂点の Y 座標", "default": "0", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "第 2 頂点の X 座標", "default": "0", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "第 2 頂点の Y 座標", "default": "100", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "第 3 頂点の X 座標", "default": "100", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "第 3 頂点の Y 座標", "default": "100", "min": "0", "max": "100", "pos": "7" },
      { "type": "color", "name": "色", "default": "128,128,128", "pos": "8" },
      { "type": "float", "name": "不透明度", "default": "1", "min": "0", "max": "1", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé 最終更新: 2010/12/29" }
      ]
    },
    {
      "name": "ハートマーク", "lang": "ja", "command": "fx_heart", "command_preview": "fx_heart_preview", "parameters": [
      { "type": "float", "name": "サイズ", "default": "75", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "ぼかし", "default": "0", "min": "0", "max": "10", "pos": "2" },
      { "type": "color", "name": "色", "default": "255,0,0,255", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé 最終更新: 2013/11/13" }
      ]
    },
    {
      "name": "バーンスレイのシダ", "lang": "ja", "command": "fx_barnsley_fern", "command_preview": "fx_barnsley_fern_preview", "parameters": [
      { "type": "choice", "name": "種類", "default": "0", "pos": "1", "choices": { "0": "Asplenium adiantum-nigrum", "1": "Thelypteridaceae" } },
      { "type": "float", "name": "密度 (%)", "default": "100", "min": "0", "max": "300", "pos": "2" },
      { "type": "float", "name": "角度", "default": "30", "min": "-180", "max": "180", "pos": "3" },
      { "type": "float", "name": "不透明度 (%)", "default": "40", "min": "0", "max": "100", "pos": "4" },
      { "type": "color", "name": "色", "default": "10,178,0,255", "pos": "5" },
      { "type": "bool", "name": "新しいレイヤーに出力", "default": "1", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "このフィルタは『バーンスレイのシダ (Barnsley fern" },
      { "type": "link", "name": "https://en.wikipedia.org/wiki/Barnsley_fern", "url": "https://en.wikipedia.org/wiki/Barnsley_fern", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé 最終更新: 2016/10/18" }
      ]
    },
    {
      "name": "ボール", "lang": "ja", "command": "fx_ball", "command_preview": "fx_ball_preview", "parameters": [
      { "type": "int", "name": "半径", "default": "128", "min": "1", "max": "1024", "pos": "1" },
      { "type": "float", "name": "光沢の明るさ", "default": "0.8", "min": "0", "max": "8", "pos": "2" },
      { "type": "float", "name": "光沢のサイズ", "default": "1", "min": "0", "max": "8", "pos": "3" },
      { "type": "float", "name": "陰影", "default": "1.5", "min": "0", "max": "4", "pos": "4" },
      { "type": "color", "name": "色", "default": "255,0,255", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé 最終更新: 2013/11/27" }
      ]
    },
    {
      "name": "方程式プロット [パラメトリック]", "lang": "ja", "command": "fx_equation_parametric", "command_preview": "fx_equation_parametric", "parameters": [
      { "type": "text", "name": "X(t)", "default": "sin(t)*(exp(cos(t))-2*cos(4*t)-sin(t/12)^5)", "pos": "1" },
      { "type": "text", "name": "Y(t)", "default": "cos(t)*(exp(cos(t))-2*cos(4*t)-sin(t/12)^5)", "pos": "2" },
      { "type": "float", "name": "Min-t", "default": "0", "min": "-1000", "max": "1000", "pos": "3" },
      { "type": "float", "name": "Max-t", "default": "100", "min": "-1000", "max": "1000", "pos": "4" },
      { "type": "int", "name": "解像度", "default": "4096", "min": "2", "max": "32768", "pos": "5" },
      { "type": "float", "name": "Outline Opacity", "default": "1", "min": "0", "max": "1", "pos": "6" },
      { "type": "int", "name": "Dot Size", "default": "0", "min": "0", "max": "16", "pos": "7" },
      { "type": "color", "name": "開始色", "default": "64,0,0", "pos": "8" },
      { "type": "color", "name": "終了色", "default": "128,0,0", "pos": "11" },
      { "type": "bool", "name": "Colored Outline", "default": "1", "pos": "14" },
      { "type": "bool", "name": "アンチエイリアス", "default": "1", "pos": "15" },
      { "type": "bool", "name": "Decoration", "default": "1", "pos": "16" },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé 最終更新: 2013/11/13" }
      ]
    },
    {
      "name": "虹", "lang": "ja", "command": "fx_rainbow", "command_preview": "fx_rainbow", "parameters": [
      { "type": "float", "name": "左端の位置", "default": "80", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "右端の位置", "default": "80", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "左側の傾き", "default": "175", "min": "0", "max": "400", "pos": "3" },
      { "type": "float", "name": "右側の傾き", "default": "175", "min": "0", "max": "400", "pos": "4" },
      { "type": "float", "name": "細さ", "default": "3", "min": "0.1", "max": "8", "pos": "5" },
      { "type": "float", "name": "不透明度", "default": "80", "min": "0", "max": "199", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé 最終更新: 2010/12/29" }
      ]
    },
    {
      "name": "雪片", "lang": "ja", "command": "fx_snowflake", "command_preview": "fx_snowflake", "parameters": [
      { "type": "int", "name": "反復", "default": "5", "min": "0", "max": "6", "pos": "1" },
      { "type": "float", "name": "不透明度", "default": "1", "min": "0", "max": "1", "pos": "2" },
      { "type": "color", "name": "色", "default": "255,255,255", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé 最終更新: 2010/12/29" }
      ]
    },
    {
      "name": "3D 押し出し", "lang": "ja", "command": "fx_extrude3d", "command_preview": "fx_extrude3d_preview", "parameters": [
      { "type": "float", "name": "奥行き", "default": "10", "min": "1", "max": "1024", "pos": "1" },
      { "type": "int", "name": "解像度", "default": "512", "min": "1", "max": "1024", "pos": "2" },
      { "type": "float", "name": "丸み", "default": "0.6", "min": "0", "max": "3", "pos": "3" },
      { "type": "separator" },
      { "type": "int", "name": "幅", "default": "1024", "min": "1", "max": "4096", "pos": "4" },
      { "type": "int", "name": "高さ", "default": "1024", "min": "1", "max": "4096", "pos": "5" },
      { "type": "float", "name": "サイズ", "default": "0.5", "min": "0", "max": "3", "pos": "6" },
      { "type": "float", "name": "X 角度", "default": "57", "min": "0", "max": "360", "pos": "7" },
      { "type": "float", "name": "Y 角度", "default": "41", "min": "0", "max": "360", "pos": "8" },
      { "type": "float", "name": "Z 角度", "default": "21", "min": "0", "max": "360", "pos": "9" },
      { "type": "float", "name": "パース", "default": "45", "min": "1", "max": "90", "pos": "10" },
      { "type": "float", "name": "光源位置 X", "default": "0", "min": "-100", "max": "100", "pos": "11" },
      { "type": "float", "name": "光源位置 Y", "default": "0", "min": "-100", "max": "100", "pos": "12" },
      { "type": "float", "name": "光源位置 Z", "default": "-100", "min": "-100", "max": "0", "pos": "13" },
      { "type": "float", "name": "光沢の大きさ", "default": "0.5", "min": "0", "max": "1", "pos": "14" },
      { "type": "float", "name": "光沢の強さ", "default": "0.7", "min": "0", "max": "3", "pos": "15" },
      { "type": "choice", "name": "レンダリング方法", "default": "4", "pos": "16", "choices": { "0": "頂点", "1": "ワイヤーフレーム", "2": "単色", "3": "フラットシェーディング", "4": "グーローシェーディング", "5": "フォンシェーディング" } },
      { "type": "bool", "name": "アンチエイリアシング", "default": "1", "pos": "17" },
      { "type": "separator" },
      { "type": "note", "text": "注: 最前面のレイヤーをテクスチャとして使用できます。" },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé 最終更新: 2010/12/29" }
      ]
    }
    ]
  },
  {
    "name": "白黒画像編集", "filters": [
    {
      "name": "彩色 [インタラクティブ]", "lang": "ja", "command": "fx_colorize_interactive", "command_preview": "fx_colorize_interactive_preview", "parameters": [
      { "type": "choice", "name": "入力タイプ", "default": "0", "pos": "1", "choices": { "0": "白黒写真", "1": "線画" } },
      { "type": "choice", "name": "出力タイプ", "default": "0", "pos": "2", "choices": { "0": "彩色済み画像 (1 レイヤー)", "1": "色のみ (1 レイヤー)", "2": "画像 + 色 (2 レイヤー)", "3": "画像 + 色 (複数レイヤー)" } },
      { "type": "choice", "name": "表示解像度", "default": "1", "pos": "3", "choices": { "0": "小 (高速)", "1": "中", "2": "大 (低速)", "3": "最大 (最低速)" } },
      { "type": "file", "name": "追加パレット 1 (.gpl ファイル)", "default": "", "pos": "4" },
      { "type": "file", "name": "追加パレット 2 (.gpl ファイル)", "default": "", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "説明:\n このフィルタでは、白黒写真や線画を簡単に彩色できます。 ウィンドウ下部の適用または OK をクリックすると、インタラクティブウィンドウが開き、コントロールポイントを追加できます。 コントロールポイントの配置が完了したら、インタラクティブウィンドウを終了すると、彩色処理が実行され結果が GIMP に出力されます。\n\n 処理結果がお気に召さなかった場合はアンドゥ (Ctrl+Z) を行ったあと適用をもう一度クリックし、コントロールポイントの配置を調整してください。 ウィンドウ下部のリセットをクリックするとコントロールポイントをすべて消去できます。 " },
      { "type": "button", "name": "コントロールポイントを消去", "alignment": "0.5", "pos": "6" },
      { "type": "unknown", "name": "Last Image Size" },
      { "type": "unknown", "name": "Control Points" },
      { "type": "separator" },
      { "type": "note", "text": "操作説明:\n インタラクティブウィンドウでは以下のアクションが利用できます。\n\n - 左マウスボタン クリックで新しいコントロールポイントを作成 (またはドラッグで既存のものを移動)\n - 右マウスボタンまたはX キー クリックしたコントロールポイントを削除\n - 右マウスボタンまたはP キー (コントロールポイントのない場所で) クリックした場所の色を取得\n - マウスホイールまたはCtrl+矢印キー上/下 表示を拡大/縮小\n - Ctrl+マウスホイール、Shift+マウスホイールまたは矢印キー 拡大した画像の表示範囲を移動\n - スペースキー 処理結果予測の表示を更新\n - Tab キー コントロールポイントの表示方法を切り替え\n - Backspace キー 最後に追加したコントロールポイントを削除\n - PageUp キー 画像のコントラストを上げる\n - PageDown キー 画像のコントラストを下げる\n - R キー 色置換モードのオン/オフを切り替え\n - Ctrl+D ウィンドウサイズを大きくする\n - Ctrl+C ウィンドウサイズを小さくする\n - Ctrl+R ウィンドウサイズをリセット\n - Esc キー、Q キーまたは Enter キー インタラクティブウィンドウを終了 " },
      { "type": "separator" },
      { "type": "note", "text": "このフィルタの詳しい使い方は以下の Web ページで参照できます。" },
      { "type": "link", "name": "David Revoy 氏による G'MIC Colorize フィルタのチュートリアル (英語)", "url": "http://www.davidrevoy.com/article240/gmic-line-art-colorization", "align": "center" },
      { "type": "link", "name": "ぐるぐる氏による上記チュートリアルの日本語翻訳", "url": "http://sp-cute.hatenablog.com/entry/2014/10/12/142939", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé      最終更新: 2014/12/09" }
      ]
    },
    {
      "name": "彩色 [コミック]", "lang": "ja", "command": "fx_colorize_comics", "command_preview": "fx_colorize_comics_preview", "parameters": [
      { "type": "note", "text": "レイヤー順序:" },
      { "type": "choice", "name": "入力レイヤー", "default": "0", "pos": "1", "choices": { "0": "カラースポット + 線画", "1": "線画 + カラースポット", "2": "カラースポット + 色分け処理結果 + 線画", "3": "線画 + カラースポット + 色分け処理結果" } },
      { "type": "choice", "name": "出力レイヤー", "default": "1", "pos": "2", "choices": { "0": "1 レイヤーに統合", "1": "色分け処理結果 + 線画", "2": "線画 + 色分け処理結果", "3": "カラースポット + 色分け処理結果 + 線画", "4": "線画 + カラースポット + 色分け処理結果" } },
      { "type": "choice", "name": "色分け処理結果の出力", "default": "0", "pos": "3", "choices": { "0": "1 レイヤー", "1": "2 レイヤー", "2": "3 レイヤー", "3": "4 レイヤー", "4": "5 レイヤー", "5": "6 レイヤー", "6": "7 レイヤー", "7": "8 レイヤー", "8": "9 レイヤー", "9": "10 レイヤー", "10": "色ごとに 1 レイヤーずつ", "11": "範囲ごとに 1 レイヤーずつ" } },
      { "type": "separator" },
      { "type": "float", "name": "なめらかさ", "default": "0.05", "min": "0", "max": "1", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "注: ウィンドウ左側の「入力レイヤー」で「すべて」を選択してください。\n カラースポット = 色指定を描きこんだレイヤーです。\n 線画 = 線画のレイヤー (白黒または空白部分が透明のもの) です。\n 色分け処理結果 = 色分け処理の結果が出力されるレイヤーです。\n\n 注意: \n  - プレビューは実際の処理結果と異なる場合があります。 \n  - 十分なメモリを搭載していない PC では、「色分け処理結果の出力」で「色ごとに 1 レイヤーずつ」「範囲ごとに 1 レイヤーずつ」のオプションを使用しないでください。 " },
      { "type": "separator" },
      { "type": "link", "name": "このフィルタの詳しい使い方はこちらで参照できます。(英語)", "url": "http://www.gimpchat.com/viewtopic.php?f=28&t=7567", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé、Timothée Giet、David Revoy      最終更新: 2013/06/19" }
      ]
    },
    {
      "name": "線画を自動的に色分け", "lang": "ja", "command": "fx_autofill_lineart", "command_preview": "fx_autofill_lineart_preview", "parameters": [
      { "type": "float", "name": "輪郭のしきい値 (%)", "default": "90", "min": "0", "max": "100", "pos": "1" },
      { "type": "bool", "name": "輪郭の正規化", "default": "1", "pos": "2" },
      { "type": "int", "name": "Minimal Region Area", "default": "8", "min": "0", "max": "256", "pos": "3" },
      { "type": "int", "name": "Tolerance to Gaps", "default": "0", "min": "0", "max": "10", "pos": "4" },
      { "type": "choice", "name": "プレビューの表示方法", "default": "0", "pos": "5", "choices": { "0": "線画と色", "1": "色のみ" } },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé 最終更新: 2016/11/12" },
      { "type": "choice", "name": "使用する色", "default": "0", "pos": "6", "choices": { "0": "ランダム", "1": "最前面の色指定レイヤー" } },
      { "type": "separator" },
      { "type": "note", "text": "Global geometry parameters:" },
      { "type": "float", "name": "輪郭の検出 (%)", "default": "95", "min": "0", "max": "100", "pos": "7" },
      { "type": "int", "name": "輪郭の膨らまし", "default": "0", "min": "-1", "max": "10", "pos": "8" },
      { "type": "note", "text": "輪郭を膨らませるサイズを自動で設定するには、「輪郭の膨らまし」を -1 に設定します。" },
      { "type": "bool", "name": "Output Region Delimiters", "default": "0", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "「使用する色」に「ランダム」を設定した場合のみ:" },
      { "type": "int", "name": "色の最大彩度", "default": "32", "min": "0", "max": "255", "pos": "10" },
      { "type": "int", "name": "色の最小輝度", "default": "200", "min": "0", "max": "255", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "「使用する色」に「最前面の色指定レイヤー」を設定した場合のみ:" },
      { "type": "int", "name": "Color Shading (%)", "default": "0", "min": "0", "max": "100", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "接続パラメーター:" },
      { "type": "float", "name": "End Point Rate (%)", "default": "85", "min": "0", "max": "100", "pos": "13" },
      { "type": "int", "name": "端点の最大接続数", "default": "2", "min": "1", "max": "5", "pos": "14" },
      { "type": "float", "name": "スプライン曲線の長さの上限 (px)", "default": "60", "min": "0", "max": "256", "pos": "15" },
      { "type": "float", "name": "セグメントの長さの上限 (px)", "default": "20", "min": "0", "max": "256", "pos": "16" },
      { "type": "float", "name": "スプライン曲線の角度の上限 (度)", "default": "90", "min": "0", "max": "180", "pos": "17" },
      { "type": "float", "name": "Spline Roundness", "default": "1", "min": "0", "max": "2", "pos": "18" },
      { "type": "float", "name": "Minimal Region Area", "default": "10", "min": "0", "max": "100", "pos": "19" },
      { "type": "bool", "name": "自己交差を許可", "default": "1", "pos": "20" },
      { "type": "separator" },
      { "type": "choice", "name": "プレビューの種類", "default": "0", "pos": "21", "choices": { "0": "Colored geometry", "1": "Colored regions", "2": "Colored lineart" } },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé、Sébastien Fourey、David Revoy 最終更新: 2016/12/13" }
      ]
    }
    ]
  },
  {
    "name": "色", "filters": [
    {
      "name": "セピア", "lang": "ja", "command": "fx_sepia", "command_preview": "fx_sepia_preview", "parameters": [
      { "type": "float", "name": "ガンマ", "default": "0", "min": "-1.2", "max": "1.2", "pos": "1" },
      { "type": "float", "name": "コントラスト", "default": "1", "min": "0", "max": "4", "pos": "2" },
      { "type": "float", "name": "輝度", "default": "0", "min": "-255", "max": "255", "pos": "3" },
      { "type": "separator" },
      { "type": "choice", "name": "プレビューの表示方法", "default": "0", "pos": "4", "choices": { "0": "全体", "1": "下半分", "2": "右半分", "3": "上半分", "4": "左半分", "5": "上端部を複製", "6": "左端部を複製", "7": "下端部を複製", "8": "右端部を複製" } },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé 最終更新: 2010/12/29" }
      ]
    },
    {
      "name": "色を転写 [基本的]", "lang": "ja", "command": "fx_transfer_colors", "command_preview": "fx_transfer_colors", "parameters": [
      { "type": "bool", "name": "輝度を転写", "default": "0", "pos": "1" },
      { "type": "bool", "name": "レイヤー順序を反転", "default": "0", "pos": "2" },
      { "type": "note", "text": "注:  最背面のレイヤーの色を参照します。\n このフィルタを正しく動作させるには、最低でも 2 枚のレイヤーが必要となります。複数のレイヤーを入力できるよう、「入力レイヤー」オプションを調整してください。 " },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé 最終更新: 2010/12/29" }
      ]
    },
    {
      "name": "色を選択して置換", "lang": "ja", "command": "fx_select_color", "command_preview": "fx_select_color_preview", "parameters": [
      { "type": "choice", "name": "色空間", "default": "0", "pos": "1", "choices": { "0": "RGB[A]", "1": "RGB", "2": "YCbCr", "3": "赤", "4": "緑", "5": "青", "6": "不透明度", "7": "輝度", "8": "赤・青 色度", "9": "色相", "10": "彩度" } },
      { "type": "float", "name": "許容誤差", "default": "20", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "なめらかさ", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "int", "name": "穴を埋める", "default": "0", "min": "0", "max": "256", "pos": "4" },
      { "type": "color", "name": "選択する色", "default": "255,255,255,255", "pos": "5" },
      { "type": "choice", "name": "出力画像", "default": "0", "pos": "9", "choices": { "0": "選択した色", "1": "選択した色のマスク", "2": "除外された色", "3": "除外された色のマスク", "4": "色を置換" } },
      { "type": "color", "name": "置換に使う色", "default": "255,0,0,255", "pos": "10" },
      { "type": "separator" },
      { "type": "choice", "name": "プレビューの表示方法", "default": "0", "pos": "14", "choices": { "0": "全体", "1": "下半分", "2": "右半分", "3": "上半分", "4": "左半分", "5": "上端部を複製", "6": "左端部を複製", "7": "下端部を複製", "8": "右端部を複製" } },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé 最終更新: 2010/12/29" }
      ]
    },
    {
      "name": "選択的脱色", "lang": "ja", "command": "fx_selective_desaturation", "command_preview": "fx_selective_desaturation_preview", "parameters": [
      { "type": "color", "name": "指定する色", "default": "255,255,255", "pos": "1" },
      { "type": "choice", "name": "脱色対象", "default": "0", "pos": "4", "choices": { "0": "指定色", "1": "指定色以外のすべて" } },
      { "type": "float", "name": "効果の強さ", "default": "3", "min": "0", "max": "10", "pos": "5" },
      { "type": "int", "name": "正則化", "default": "0", "min": "0", "max": "20", "pos": "6" },
      { "type": "choice", "name": "彩度の上限", "default": "0", "pos": "7", "choices": { "0": "入力画像", "1": "指定色", "2": "Maximum value" } },
      { "type": "separator" },
      { "type": "choice", "name": "プレビューの表示方法", "default": "0", "pos": "8", "choices": { "0": "全体", "1": "下半分", "2": "右半分", "3": "上半分", "4": "左半分", "5": "上端部を複製", "6": "左端部を複製", "7": "下端部を複製", "8": "右端部を複製" } },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé 最終更新: 2015/7/15" }
      ]
    }
    ]
  },
  {
    "name": "芸術的", "filters": [
    {
      "name": "四分木画像処理", "lang": "ja", "command": "fx_quadtree", "command_preview": "fx_quadtree_preview", "parameters": [
      { "type": "choice", "name": "モード", "default": "0", "pos": "1", "choices": { "0": "Squares", "1": "Sierpinksi design", "2": "楕円ブラシで描画" } },
      { "type": "int", "name": "精度", "default": "1024", "min": "2", "max": "4096", "pos": "2" },
      { "type": "float", "name": "均一性", "default": "0.5", "min": "0", "max": "2", "pos": "3" },
      { "type": "int", "name": "輪郭線", "default": "0", "min": "0", "max": "4", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "「楕円ブラシで描画」用の設定:" },
      { "type": "float", "name": "第 1 半径", "default": "3", "min": "0", "max": "5", "pos": "5" },
      { "type": "float", "name": "第 2 半径", "default": "1.5", "min": "0", "max": "5", "pos": "6" },
      { "type": "float", "name": "異方性", "default": "1", "min": "0", "max": "4", "pos": "7" },
      { "type": "bool", "name": "Only Leafs", "default": "1", "pos": "8" },
      { "type": "separator" },
      { "type": "choice", "name": "プレビューの表示方法", "default": "0", "pos": "9", "choices": { "0": "全体に適用", "1": "下半分に適用", "2": "右半分に適用", "3": "上半分に適用", "4": "左半分に適用", "5": "複製して上下に並べる", "6": "複製して左右に並べる" } },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé 最終更新: 2017/06/15" }
      ]
    }
    ]
  },
  {
    "name": "詳細", "filters": [
    {
      "name": "シャープ化 [テクスチャ]", "lang": "ja", "command": "fx_sharpen_texture", "command_preview": "fx_sharpen_texture_preview", "parameters": [
      { "type": "float", "name": "強さ", "default": "1", "min": "0", "max": "4", "pos": "1" },
      { "type": "float", "name": "半径", "default": "4", "min": "0", "max": "32", "pos": "2" },
      { "type": "separator" },
      { "type": "choice", "name": "チャンネル", "default": "16", "pos": "3", "choices": { "0": "All", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "Linear RGB [all]", "8": "Linear RGB [red]", "9": "Linear RGB [green]", "10": "Linear RGB [blue]", "11": "YCbCr [luminance]", "12": "YCbCr [blue-red chrominances]", "13": "YCbCr [blue chrominance]", "14": "YCbCr [red chrominance]", "15": "YCbCr [green chrominance]", "16": "Lab [lightness]", "17": "Lab [ab-chrominances]", "18": "Lab [a-chrominance]", "19": "Lab [b-chrominance]", "20": "Lch [ch-chrominances]", "21": "Lch [c-chrominance]", "22": "Lch [h-chrominance]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [intensity]", "27": "HSL [lightness]", "28": "CMYK [cyan]", "29": "CMYK [magenta]", "30": "CMYK [yellow]", "31": "CMYK [key]", "32": "YIQ [luma]", "33": "YIQ [chromas]" } },
      { "type": "separator" },
      { "type": "choice", "name": "プレビューの表示方法", "default": "0", "pos": "4", "choices": { "0": "全体", "1": "下半分", "2": "右半分", "3": "上半分", "4": "左半分", "5": "上端部を複製", "6": "左端部を複製", "7": "下端部を複製", "8": "右端部を複製" } },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé 最終更新: 2016/09/20" }
      ]
    },
    {
      "name": "DCP 霞除去", "lang": "ja", "command": "jeje_dehaze", "command_preview": "jeje_dehaze_preview", "parameters": [
      { "type": "int", "name": "スケール", "default": "5", "min": "1", "max": "20", "pos": "1" },
      { "type": "float", "name": "強さ", "default": "1", "min": "0", "max": "2", "pos": "2" },
      { "type": "float", "name": "最小", "default": ".2", "min": "0", "max": "1", "pos": "3" },
      { "type": "float", "name": "最大", "default": "1", "min": "0", "max": "1", "pos": "4" },
      { "type": "float", "name": "輝度", "default": "0", "min": "-100", "max": "100", "pos": "5" },
      { "type": "float", "name": "コントラスト", "default": "0", "min": "-100", "max": "100", "pos": "6" },
      { "type": "float", "name": "ガンマ", "default": "0", "min": "-100", "max": "100", "pos": "7" },
      { "type": "bool", "name": "透過率マップ", "default": "0", "pos": "8" },
      { "type": "separator" },
      { "type": "choice", "name": "プレビューの表示方法", "default": "0", "pos": "9", "choices": { "0": "全体", "1": "下半分", "2": "右半分", "3": "上半分", "4": "左半分", "5": "上端部を複製", "6": "左端部を複製", "7": "下端部を複製", "8": "右端部を複製" } },
      { "type": "separator" },
      { "type": "note", "text": "Dark Channel Prior Author に基づく霞除去フィルタです。作者: Jérôme Boulanger 最終更新: 2016/08/09" }
      ]
    }
    ]
  },
  {
    "name": "輪郭", "filters": [
    {
      "name": "前景切り出し [インタラクティブ]", "lang": "ja", "command": "fx_extract_foreground", "command_preview": "gui_no_preview", "parameters": [
      { "type": "float", "name": "縁のぼかし", "default": "0", "min": "0", "max": "4", "pos": "1" },
      { "type": "int", "name": "広げ", "default": "0", "min": "-32", "max": "32", "pos": "2" },
      { "type": "choice", "name": "出力モード", "default": "3", "pos": "3", "choices": { "0": "RGBA 画像 (背景を完全に透明化 / 1 レイヤー)", "1": "RGBA 画像 (可逆的 / 1 レイヤー)", "2": "RGB 画像 + 2 値マスク (2 レイヤー)", "3": "RGBA 前景 + 背景 (2 レイヤー)" } },
      { "type": "choice", "name": "表示解像度", "default": "1", "pos": "4", "choices": { "0": "小 (高速)", "1": "中", "2": "大 (低速)", "3": "最大 (最低速)" } },
      { "type": "separator" },
      { "type": "note", "text": "説明:\n このフィルタでは、不透明な RGB 画像から前景オブジェクトを簡単に切り出すことができます。 ウィンドウ下部の適用または OK をクリックすると、インタラクティブウィンドウが開き、コントロールポイントを追加できます。 コントロールポイントの配置が完了したら、インタラクティブウィンドウを終了すると、切り出し処理が実行され結果が GIMP に出力されます。\n\n 処理結果がお気に召さなかった場合は、適用をもう一度クリックしてコントロールポイントの配置を調整してください。 ウィンドウ下部のリセットをクリックするとコントロールポイントをすべて消去できます。 " },
      { "type": "unknown", "name": "Last Image Size" },
      { "type": "unknown", "name": "Control Points" },
      { "type": "separator" },
      { "type": "note", "text": "操作:\n インタラクティブ ウィンドウでは以下のアクションが利用できます。\n\n - 左マウスボタンまたは F キー: クリックで新しい前景コントロールポイントを作成 (ドラッグで既存のものを移動)\n - 右マウスボタンまたは B キー: クリックで新しい背景コントロールポイントを作成 (ドラッグで既存のものを移動)\n - マウスホイールまたは Ctrl+矢印キー上/下: 表示を拡大/縮小\n - スペースキー: 切り出しマスクを更新\n - Tab キー: 背景の表示モードを切り替え\n - M キー: コントロールポイントの表示モードを切り替え\n - Backspace キー: 最後に追加したコントロールポイントを削除\n - PageUp キー: 背景の不透明度を上げる\n - PageDown キー: 背景の不透明度を下げる\n - Ctrl+D: ウィンドウサイズを大きくする\n - Ctrl+C: ウィンドウサイズを小さくする\n - Ctrl+R: ウィンドウサイズをリセット\n - Esc キー、Q キーまたは Enter キー: インタラクティブウィンドウを終了 " },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé      最終更新: 2014/09/29" }
      ]
    }
    ]
  },
  {
    "name": "配列とタイリング", "filters": [
    {
      "name": "シームレス化 [パッチベース]", "lang": "ja", "command": "fx_frame_seamless", "command_preview": "fx_frame_seamless_preview", "parameters": [
      { "type": "int", "name": "フレームサイズ", "default": "32", "min": "0", "max": "256", "pos": "1" },
      { "type": "int", "name": "パッチサイズ", "default": "9", "min": "3", "max": "64", "pos": "2" },
      { "type": "int", "name": "合成部分のサイズ", "default": "0", "min": "0", "max": "64", "pos": "3" },
      { "type": "choice", "name": "Frame Type", "default": "1", "pos": "4", "choices": { "0": "Inner", "1": "Outer" } },
      { "type": "float", "name": "Equalize Light", "default": "100", "min": "0", "max": "100", "pos": "5" },
      { "type": "separator" },
      { "type": "bool", "name": "Preview Original", "default": "0", "pos": "6" },
      { "type": "choice", "name": "Tiled Preview", "default": "3", "pos": "7", "choices": { "0": "None", "1": "2x1", "2": "1x2", "3": "2x2", "4": "3x3", "5": "4x4" } },
      { "type": "separator" },
      { "type": "choice", "name": "プレビューの表示方法", "default": "0", "pos": "8", "choices": { "0": "全体", "1": "下半分", "2": "右半分", "3": "上半分", "4": "左半分", "5": "上端部を複製", "6": "左端部を複製", "7": "下端部を複製", "8": "右端部を複製" } },
      { "type": "separator" },
      { "type": "note", "text": "注: このフィルタを使用すると、入力した画像をつなぎ目のないパターンに簡単に変換できます。" },
      { "type": "separator" },
      { "type": "note", "text": "作者: David Tschumperlé 最終更新: 2015/12/15" }
      ]
    }
    ]
  },
  {
    "name": "About", "filters": [
    {
      "name": "About G'MIC", "lang": "en", "command": "_none_", "command_preview": "_none_", "parameters": [
      { "type": "note", "text": "<center><a href=\"https://gmic.eu\"><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAABXCAMAAACJMYjxAAAAXVBMVEX+/v4cO0s7OU4wPnEiJSju6+qiqrCMlZu3u8BufoHd3+FDY2JRLzljS2bLz9Lp9vrteR34lyZqHE3puI3S7/hbX6GUW4zwza97QiOaYUa6mqTdfz25i22+VxzqoGYqrht5AAAWRklEQVR42uyabZfiKBCFFYUCDDg7TqIh0f//M7duBSEx2p09Z18+7NzTPUYaE/J4qyjI7H7rt/5mnXe/9VtfS+vdb21U7Me/hNbblPzu/6czEs/Y39LmT/jU36C0+7/p/OvXeaf7S3+7bkQ19uN4uVzGG3/i31X0/3GyEFjXnu+991sCMN36dIGu479tLR9Cl+J/ll3PLMBKbJXbipbW+nq9Lgan2U/cl8V/4Tz3r8r+hEKMu/9CDCrDStdLz7RKXDGly+MxTBqZjM4hyJ3GR4Y1/suwOoHVuf8EFmgxK6YFWMyBI0yaGdTwo+qPH8PwuDAvLX36fiyw/oFKRcdEHYuS9UtXB4GVSP/9HLw15JwjMtGfzx/jELwyLCjp3fUx/AEBUzlgYI8rh6oItBCGl+/TjH975Rj9p5QI+4gaVugYWPnQxOrvN5an0yFrv9+rE9m3oz7zD5xlxyviEBpHRiV+KqQgHAzoIeLAxAe+nw2tifq88pKn5P3bUTccZqzC69g0nc0f7f4ZY3l3OLQioQUdTsb/eu0W/RSKu8iwsrXuHHWvKsju2Vlgde3774cd2dxRe0s2xjI4psEhtl5ZpvAzdIVVNVgQXDo8jaWJQ9RGCdLtgeZjtAi26BftBqgyrCrg0suqxdvcoEdm1fdgxUiqo1YOuxdjbasc6DmO1j5haeqgkLxe5e9uxQpid/EdpoYPA5FGxwYi+55WtCzDIlaMku6EgFL7gzJ2Hvbu0BKrsKq07KKfib/K150uOQoZzicVWr0E4a3XG2AZMhgGw/LzcollzeLzuiu2Wotj0YcmG8sz6aYBMPM+fSl1UECzVyxjcEnFDS2i7HCYw9KnfQukS1Lod2ILzg1oTfTPW/DjBOtebPVKaUZrFFa3DYlWOzLmgKGbikaH0DIr8i+Z/QXVglqiCD6pMxwFAqthWDTjXRWVaqkFLdx1hnUgk3OStTNWh/YV1WmC5cwsN6K+MtZH87QW0wKrAmjOavq3RGJ/vT5uN7spdz7tbWNtVbCWNFSljmml9POtGjaUt10TkN2TIBVrBeN3azlmxbBYFRY72+QmYxcxiAEKo6JWPjY3FiZBS9YXJ/N67zGxenwOQ2hAJG5k1eLKIuNrs7E2dfB0VQwpMau3MZgzlY+J/bVLPRJeppXsGzerYLquPYSDaILVSjZol7DoUPP66XQCMMkYMBbRnBVEZA35PLVzgr8Lq8vlBRfauLHQYlQbqgYGUFmpEP0MVpQEUBU7NhZ+wwoU+CWHzjryffq+76q1yOxWsgod2swqCCxdqVRYtrDKtFrhJZnNOL+Edf4VnTPGABZ07X9kLqBVA5KboFrV3/uL3jBZW6SJIoql3NJ4lbmwZrEEUBlV6JKoe2b3TpjggxptcBYnLT56F4cyfTzDsM2wGN0rLH+qrNDTiMidOK85fAsra52MLcGphwGskL3FRiVjXbIeBdYGVlKmE3+1eTjB+o/rHNshBGEWqEsO8wIlFrCwscqH/E9+3zMxwFrFYc2IXeCJMKgShqDxhGLnQVjKKoOLEpEAY2OtYJ396eScezrrDmMB1eUKWktjQUOGdU+bHmboGC2PrQWq0JqPhHUnsEJmRS7q536ssYnZ2YoCjPpeWCEO3eqsRmAFwOLL5jD0cqzmzvJBWO0zK0dRT9eMfFGy690ZnPp0Utlyo0ShFPLjDNYPbuJlRz+D9dFaZ1zK4BuyXgLOU2gxYMvKCN4ZC4KHEHNUawrhZRPpJSx0E3EcpvgahSqwlKgmeD5+gUXzIKQCPQPT7zaUz+HIbtWzlDU2Y2qa8TJz1tiH4/EYZrDub/O7NxzvEM/IJlqpryPKQH4X/eddziCsWAp371531crIK6wGKvNhsfKEBcZ6AwuqsHQ7M5Yj0lv2SO2xCYrw9oLCgac6e22OxwbOyrQefeIW1fRDhTW+OR0dGBOEuGcjTTmKz26snnWrL1m2EVaN8MqFc+2Onh9gsRWbzujF+QhRWKz1ARab3s6NhRT1LSzQcrBWRBRKlXUftQ4Mq6+whhEtoPWjwOr96mwtk5LrE5lqBm0dWHnnQDDGCIMtAThJMpAKKDu/2vjygMRgWRlbiuhUunHiE1TfwNJUWSEOdltgcZzg4o4v2Aus4bo7O0ZzGzIrNHmGtVfuNoO1SvEGrKRWIDsnqWUNaLFIZFkogViRlroo3yAS1lznNSyo0mpSwr3nE8rdFFisAmuvFrCe6X2/0ViSs1gEa1meC5+wrFNHNYel6XRUh1PqMyvWsIrDYixeKmj9mnK8td5r7JIYsqGbP3mwKvwEK9F6t+r8AuvYzMVLnuRn/nPcxD6tsMISViuw5KLFWOC5VVodQwhaYLEuu2idc/0cliEub91lmMHq9RtYeTxEbrXXiCmZnCDpQkewUt7Vo9Bx5DQKCmS/WUFVTjXFV6Y6iLPU2lnsCGzRnDIsUihSJ4DOxbwP+oWtOGGJDJ8oULrdp9WOzNZpnIfh1aAeyLDu0GO13rHTOgHI2N5tG5zxHknKskzX5jsIiiFxW2JcTUD0cNleYJHzfxEWth7qTRrZilZvYYFVmQ15NO0hwzKoeeVHz3iti9KcFNlaamRYU6Glr8yKYZUEz0V9onTlakJYyXpnlbR0ttbkbqQDHLYQv1VZoTOWlZg+XmyEGQIytmr4l0hvhFUVbAW8NlYNQ2EFeja/z3WDMjQRgfjlLatKKx4bsleeDbGl/ED9joUgU2IBliyBuHHIrADrNr6eMeLiUFs8VqWODArFFyhFryGplQFLyQ0GFk9Lm2Dd5rSsnf9VWK1z1mQslWHF4/4QcnpHg6ACj/fOmmDlN2TxPLUfhMZDuNwHNhQzY1x3pgUN8NRkrsdlvafsY766WGlBCqBkp9eua9MISp3tAl7IboA1Lo01W/KkEF5ZlZ1SNa/gLb/l99NwKWZWrC+sVdo1i601INCYDfYXJlbyoJXh8KF4amKFh/1xt6ZFe/7GXtUSMwIopK8YnERNlT2q4iyi+D2s/trfFrCaso8YXmDBS7MELw0Cy4BjzllTnnzCOn/I7/gLDsCq0GIhhXPsZY0XpgUNhdXt8X4DXsdIbYXUGgk6cPI+GpkKwyotGYEl6Yxh+e9h3fopDsfQZCUz+SEWVqbQqrBYBRbhgOGV/H6usM7vH0aDE5gJLAnEsgU/cAAKKn6Qwz4rAkjeg+8/bJT6aCFjJ0X8IjWRUxDGR+YTLAG5ARaDAi2imuJ1jsJMy5njN7AwOeYwRH6vzvpsrHOOxgLrxt7KsC5PVgKrosLj6C+egmmfgcXImKKhVsbUYnABG7avOZxU0SZYRc7WFB/zTk92lnErWDUuAcsdi7P2Aqsm+PPnyVAOsrPwKJBpAcqAnA5cMjMWWBOqy4b/+BaJKK8mltPinsdaVBYQrLCCpckVAQfkb002FvupxCFZuWZZNNl3sMISFqZGHt9+goUYg/jwa1jnJ6x0Y2sJLZ4KJ00lA5rQeAeqccsGvJ0/tMRx0SusKWKCc2tY6lj0/IuvK8OQahwaL1GYa1tHQX3tLJKL7iGEIaQ/FfGCaOI00cxR2PR4ajGwYCxgkRfOX9CIRu6QNmwqWzCCchlRZa3Wi55SW/OQD29gcdZvBJYrsIpCSuUYAHRN71tgIWWJDGUoAuxLWKwCK/AUAx4PcdTY31h9P/KxmExQjVHvNsiAi7B6kVnDkoG70wqW54bUHdewssiEfCSzhi2wyLyDFWqCFztzBIqmi+pC6nMYZmkA6dnfNyZ1haRBlN9PpvK7bTLqhdXzKBirX4pSZLa9fOmO/CwWvMIzH0ahlmFYCRFeGixtTdy55mksZ9ewJDPu1T4Xpcc/STe7JSdCIArLCDQ97OCFVZaxtnz/x7RPA2kGknEsj7pGFoT56NPLTyKdbgZLDXYLFhTEakiaHw/kJQix1d71h5ACKQTVTZFHMhhZ4TdepCln7QJJB67r/NLt8E1h0Q/W5x5hCRMABKyi3/NAkvYeO0ehfZth1fDdXIO1g1I7AscMic0uYInqOsti67tsI/LHQ7K46PMTyATWdymvhvz8l0+osHdu9SBglTQ1wATXBLJlzf5BWSkskeSsGRbiSURpP8DKq/MSFmp4ySUBlptguZbQNWcFvK6spKDU1eaF1rgLvz4O2tVvKknsYkqQgnCSfF8H4hyimdZkQ3BVXJvIUQxQxbVL+DQABsvj9A9FgBWifAtcDk4kVTU+iUqosNwJVjt1UFjfssFyKDAat5GVoid0WMdUXHCfkoIeTLHs98JLYBmfZ4Q5PXoOq2Mx45DBUht6ZBqVRZZHDuuVi7oQKnwIANCKHELF5s42bCldo5eciaTGLVZjkk+Uh5XNQ9VYiR/l3gfF2Evsd05fDZYh02hLU/OCvFu1HbFYaFnmGWBhCB0Wznd0TKKUcw2nLM/eYTlL8K6haqvi5A3WelF7eQIIUoy+vOkDYSVSVhBgVW3HJa8e9i/k5HcqpyEALLrGL03UQVUja8ubW2E1gQrJv7UG91Umc6mw6hT0yAIm9A4bosANSuWfYEVMS84SWabP7w0X1qi/DVaLr8sOkt9ew+ozawo7t8gCF05liCy4cIK1mWCfIiOWlmNC59BhbQYLL5VV6z+wM3EKtz5cUWkxYjgzyVeLLGwOdSPd3kEzwNqgdLlyyPkNrK+Uzldde3FQfd4eWl/GyHIjLH+CFTKG02BDWUs396RlsKAO61u8H1q2iAeruLHg4lTGpHUAkpyatn2jhNaHsVJdTEc+udCNtPJ5HkMIAsC5nmMyQgsVDJYbYdXeUZaVOnzYLdddqClT9Tz8m374KT5TnvNo2FcDthPAmGMUDxIx3OiruO5xoF1pPc6s/ArL0pDHuF7JidrIbEeW9HFt4KEvSl2H5aacpZ5VWMVXyL15REXg7wUtZ3VWHVZgb7A8lzAMKWFC12zVLjSqDTNYVeHdDsdD94Vd338aKQ/F91GbBlYrrjgHPZ7NlKPSUlgZjzzDciOskFuyao0p2n84wvLKqsGCihvk8/OisxCcTeXFogGs4GC1/ihXE9cvoVRhsT/puLI5e4WVF1D6hdIC17tRWI+LSAKrP4zB6qGFWu08rBuzubDD+noJCyk+D7g2pogT3eaeF2nsuT8MkbPwaTnL9MGfDwGW6BhLN06X+RDDtgvqSS4ve8ydR1q+yWV7mBFWNx3FZ4ScXGg5C3QGWF8NFhpml+deTWbEFRYiTXhx9quwvxhB0d821LEm3RlUv632UzpF1nInSXNBknONDQNjNrSyb1nBmAtf2vDJzvkOK0Rnsn67Ynp7hQ9YUGEkrEWW2incOXLoUQ9ABsrpnaL3a4jv5CcnGirIs8GC3UZYZC3hwhVWAKxngVHYyUpN/pnFymqZad21H6qtHxqdJN+If2cVEtbvdSJNHVx2jAx/acRVRH1vZFQpPvlV6bHXfVihcG26yox4+VnNwIdpm1jdg6WbELcIsNQoGL7pYuAmP8Lq9Sh9OfvQbxR12idYAbC8wbrq1GDd2AX9NyyoxNwAQQZL1wX1jGalRRe0PNsKXoXHabBCREGtxQWwQoWlf3yNLG+KaezU+TewMnG6AevHD4N1y4arSoq8GaSmzDFiO/PGvDE3XNgVTWmXDFZXjpbHqhxqIbJGpP2noTVLp07f+v7ChpY88NnJ/4SFOcNCibNrws4zTqjWJrSt0ZWdd0wU57tEijFNZZGGEmplKZ6bUUxTp1NwecwqMZalN2CB1ltY9OWmQr/KF9W/UtnDdd/gi6A4jZuJmPqZUIhkKj08qMpqpakWCqzS0mluy6xOCqjCHQMd17D4Hiq7yy9JoI1vg7/GFYUGtvW5hgEpqWHkwbQWDj2b1mZnhd4pVDu8iP/l0xzM/BoWDpj+tHN2u23DMBSObfBXG32Tvf+r7hxaabu18RJsHXYxAi4tRTSlLyRttU3kc79oS4pTf5GTcPxDc9in0xePTzi09V51n/WxLp8tu2Rm4WAU/DWBM7p8yuTrAevuY/xqv/N2quf5AHakvG2p5W3gp0vKU058nbDu7njiBH5FWIqbOrZRUGrlxJOaqRF+jeEvEFw+xherypvWMuwnj6n56Jry0VLdUks8lTcBWBEBWPfkq5/Uu3WM8LFCe8YCHYal77HaWMYY9gorl6FCtf38mQoQz9cWjOrdmiwfXP2g6CO0XBNohz/BqsBqwno+tBJs1LWwPgWVAClFKyq3wQBxVw1Xc2lYvWRtWKWK3KOqynSX7iEr3wZa2a/vVX1f9CUyq0yvr3ZXKlP3lN21ZuQFSLk7wri7Kt386kajKp6zD5eH08B0kuaean5clM2L/Dqw7sP6cje0fA2HEswwdbFgTInY6rZg1kQj6YwwK8ICBgTOtkXagJQ4foKpDhWGRDhmGhimxYgtgaKHhhVbS/+VybaxvZpnQIM0JDuq9sseS3fFyhHrgBEuDG2JyHVkhGr/cWBE1cLLaBbVaVr6OmGhvj8fWgbnByzfcR6LeSXiDSx0GX4Dam7eaXhAWSwdhKCip3s7VXV+FnYbhrw+1rGiN2+wQgHJdH1vDlOGYw+sozwMM3jjVYPnMIqFQ5U8d5gU2swJL0DTMcpWqsizW2GzOof1ZdV7YWkyYXF6sSwMBOFvh3va8832LCGsGIypI/yz5zv8ipcdPWAr0hfjV40wFXXV2qImg6QvrhnwfzIPrHZgRA9stdNT4YihbXSg1UxYHbBMjPNoWFHUNqzH32UV6yOw8GCadyIL11b47z1zsWYxhoq5cYO1OxYyYcXwMQwTTR3s9aExRgHW621p375Vt9i7de+MLKxxM3GsPZXJTHOD2/nsf8BqtTOGZRCnXgBBJqx+5wb0hCVywMrWDMaTeq9kdVqyzp+1dDUhMRBYzYHektEhDJMxXjdyI6phKcaFYXIsUAByjU5N3ybbvWGNyg0Bou9gXRrWBnOk4zbNScEKIh3GhwEjBE4OWOsLLKnlPiwxFMqTu649BIvyMSxG+gFLbXh2gSce1isbrEBEJ9kReKRAVxss3glLtzDPC2F9iwKrCWv/9g3H9jGstc3txVyUYZTSxjGKHnVRHDOylglr9jWXhqU/Rhbv5XW2h57lnVl4JncqvOgIG13PK47iEVYXWUcx4q3LRJjh9IBly1BlZEV0Gm6DFdyPkm/hcsAivgDxn9Nw1qxCBNzM6YGTCG/UhfMIB5F2SljxAot91CyurGMc9zYNIWfPc6LY7JwG1vlTaSo9KJdZYWywfO4WIFaBRpRoKxbIqMRRQTRcoBpUELTJVedUD2NlpqVYZLuhSejOgfnOPOkpfOY8vRqctNPDSIU+Y/QwtGkWyQ638MT5ruHK7hNakDTgWk8fHFROzOfnmRJwvAWnO9vo4EvHECi0S3ik144+x/gRWjas5jBYQcrl1pI+B0BvswtN5Y35gPkaKdUeWrKUlrMrcToNBSDQJ+CJEe4ihYHlKY6ghA5OhHXlTMRjPdnrnG8d9sc3vHsfrWbjGsPiw80Jx/F4Z/1Wprkxd0926Tcd7ej+Fa3vhiw455Ia64dPDNyTfp4cGWE5574/bz5T9yFLDz+HYEe9eECk+h9aXzn1feqThalb8huwnzGXXwyVdH9qySJZkPz/XfH/5b/88/IdcfPxH+J0LVIAAAAASUVORK5CYII=\"></a></center>" },
      { "type": "note", "text": "<center>is proposed to you by</center>" },
      { "type": "note", "text": "<center><a href=\"https://tschumperle.users.greyc.fr/\"><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABBCAMAAABW61JJAAADAFBMVEX27vz06viVWEaZZlbz5/Tv3urwxMeFXE2icmuBUT7w4u7QzeKaaFqRVUPs5vWKVEKBRyvr4vKRWEfSj4d/aGWuaVjkqqaca1+ATjnAfHCVWkh7UD/z6Pbv1d6DVUSGUT2TY1ONWUji1ubv0NiHeoaLd3zEgHW8d2qQYFCOX0+LUDri2uvcnpeQen+md3GKYlaYYlGXXk3p3u3Z0uTFyN7nr62Aa2uoaFehYE93Tz/tvb7su7yYf4XIhHqgb2WRZVieY1KKXk/u1+Lvys/uwcPPi4KkZ1eiZladXk2ZW0nn2unXxNHpwMXqtrXntLPfr7DhpqKtk5yHdXuEcXSoc2uSbWeeZlaIWUjj3u/uzdPTvsrdu8LHrrmjipKQfYZ2ZWalbF9zYF+TaV6gaVurZ1aCYFakYlF9WEyJW0uDWUmPUz5yTDyETDTd1efSyNrRt8HOtsG8pK7go52IgpTMlJCbhY+rbF2QXEt7U0RiSTxXQjJ1PiLv5/bx4/Hw2+Xfztvmxs6WpMLlvMHNsbvCp7CalqqkjpuRh5iefX+iene3eW23c2VhXGWpbmKLZl2wa1unZFN0U0hrT0U/OzlRPC5aPCsrKyrKzOHCw9nnzdffx9K3u9KvudKnsszAtca+r76tqL2UnLfcqqp6iqiGjKWxmKK5mZ7VnZmbipbZmpLUlo68jY1rdY3JioC7f3eveXGfdG6wdmxpY2yIbGqxc2ZRTVNkUk9LQTt6STGFSjBHOS8qJR4gHhkWFxLd2ey5wNjGvM2JmrmvobGCka+mnK6Pk6zZpKNpgaJ+g5mtjJB4eo6UgYu4hYHBh3+ZeHl2anBsV1RwSDM9MytmPig7IxPSz+ShsM3lubvetbl4k7TOq7LFoqnSpqd1hKLHnZ9paXmVcm6FaWRMU2F7XVZDRUpeRTZTMBxgMReaqsezrcC8n6mklaKfkaC/l5pbcY+nhoqvhYNMY4Cnfnx3b3xbY3eOc3W1cGFcWGBiVVZbTEliS0O4qbjSoKBQaYhBSFRDMiYCeYKqAAAKU0lEQVRYw42WBVhaaxjH4XDOoUREUhBEBQRFBLu7u2N2TqdzttO56czN3Kauu7u77rq7u7fb3X2/g9db3OeBv/Dg83D+P/7v+d7vPR8OhmE8Jhx4GSLsSuytFYyHceD9l/+fiPFrwD9/0/FjiHEM3tiYMXaZ9vt/+rVULNxfoHE39oH5MTcex8DhYB03EDCmL+z6+NTPVStWLj+xPAoGtH+GGxNAjPPB57/lOPNS/74D+18m7d7d359/3btTCAj/QowVB0LouLGvnbd+8/2Bw7cOHz584Kf9+3+4keSdMAXRvQxE0Amvzb/ss1f7h5tv3Rr5/ffDzc0/zct/kZ2QMAHWJWgpugu17Mt9Tc0HRppHm0dGR9++bX7blP8y4aMOoc5CG4M/XRkv+/LNyEhzU/lUUVrARKKDQ/GNn35smnVxymKK7sX/V8Hdz74ffjdKLi1tJBBS85KTe32uSH840OSQKTTXTWv8P7yH3+w/cFBOAApzcxvY2ysLYSqz9428zqQY1qrOX/7wI9FI6w8NbRjYa2MWwuTEf/5jQSZiEIBx/rf9xSQMkOof6ubG7sMANS5xl1OqFxkEeO/X/te+JMyv9ncLZbP7zMyYTE6MV/vG9Y8M2m4Pn+c7+HIJav9UcAfC3NhsGzOmkhODCk90P55hgP/4+eusAl9QQVhqqFtDQ2gD20bG5Lh4oojd2exoAxIseOq6hwQAqeAWlLiFjiXgeAajCLKkPhM24BY83UMikQYVRAGZrvEPCy3SAoJRAKD2PKLoByzbmkIicec2jb7//m0yFD6nKLShoXfbhlg0EGntemwA4IPnJBWpeG75zZu3D5LpUAm7kJDWVB6wY3MQJfJUpwGAmbt3qmbtKSb67fDzOGgLsWXbjSx5Nz3SemMojmc+MgBwMufai8+/HSwOMJo41YOn+S7u2UTBQQuaenvcDMrZ9QYA1vTv/Mo75fU8oHKBwK8vfhaoR6D29fklg7JqPWxACf2k2df2TJw7r7z8puBguE2NN2tu01uLbXVxbcKVj/QCjFf2sJJJvgUOxLKpHqIyD3ez2E7XufNul+/d4rIoavlivN4usJ+VsgPsJEVpY5qInkYrkcU8uvhyIj2sZvXqzJ+r2/QCloEm2EEqJKghuoUF3RSaI4uPjd+yk7tXpryfuXij/k78QOWbDABhBD5EmwRB4SV9yuDVzO1m25gcNIOS5WmtL8LSr/J2qUh5oe4REA2CNCVFQ/FI9BYwEWqCUSEyIUGmD7Bw1sCu2aS8VPdwQACvkqJN94VbGmxC4tEg6xkZCdtgfXvRPg8DhLlH8EEJ797R2HmjVwfY3/nUoNbW1tHrz+lLcFySl0wiFWIl2NraVlTQbOp2MZPDi8yUwRnW1pkbMvQ++2eqVMmkwtQICAIEMrlizjaO57PC8O+YMWhG0ON4/Z1ot+KiimTkD4EloNF5PAtan9Kz/aI/2ycWRdEn7doK9N7HnVwN1gOgFeg0/lBI7P3Hu9x8OGhQUHQgzgDdrVUZhdPJPBML3qFDkyLYPkrlFzsIZvEAYA0bkoCxlsRVQ4BQMc3E5BDE3hx/pUAcZlaDZgSO+/VM99OkQjUEKjA1nUQDvczxav80ZQCUkAGPGVsWdnbM+BuhC5v5woig4YM+VJta0N3BAnrGbfFhuqBjBeDxH9SqZLGANX5i021newJB3Qjx1RpL8sEKdkgs+uDJBiUHHdsHeOcLKYShDfBfBz1dQPoF8FhpbOTz+TSybbgN08WrPY7DcUG1sc0ZJ7+Va4qYQlhrNsebm//PTQAPRjkxjUa3oEUMhShdUM/ouDgvdLr2YHX3aQqB7w4AY348rAvArykAE4UoIpN5FlCJjdIlGkWjY70QGPPjl1wqEPPdNyEw5ofxxuYtuhuq1k8sJhInepDJZAtoKORce3Bb8APwk1rAUkmBBhriAABsDsPGeGNYdxXsxfIAAJgqwAjuvXWrH7Q/CMJjUUHiBbVG/PC+GCwB3MLAw/8F4BlLan3VmlIsgQfIwKMXXa17sjpa+OdpFLa7QIhwt8EA5uCkyzBnMIBpvL9aIiuXbH3lQNBAjUTR1LkeHgIyT6BW1f0SgyIUBA8DAmy3JiVijpknBYbh6S3TGY7gsA1WogWhWFm1RmV19fT8Np8M8fmNpSKBQHCTTBaQ1bvqXLxiAx0roygYIP00FyrZ5oVMh7VuR0dHnFNr1ASgqhWf5OS4SoeP3qZBfFNLOkYANYgK6+I80csJFKvjkaAKSvoabvicTVgiBoNh55iezsBNAerI6ly3MTExKTf36LE7h2iQKd80TUTmlfMEctBIKPrxDSF1uqMdSEC9IIaKNnkhiB0jMjLdzsrODldVVZXVvTGhW+LqmpSbf+TYHZMKGoSFEIl4ZNO9Sk8UDTrzZrWTFeVuZIvxaVeyRYQsVohgXiuryZOtcFkd1R9vrM++LGW5uubemH/s2DSTCjCQTC1NIRotXAYGOprRtefqs+qsrI4JCy8Npvn3bj7XBqxO4AWE6zy1rt47J8dbwmK5sjDA+yYmk0ACrcAo8vIK/vQayTc5WUXaqbpy5eoGl/uZ0dZWVKoV1cmJSnXCJdRftgfyTsQA+fNvHQUAWzpkSoNABnaIC4cDxqQvF6iggEtKlm2KRgIXzYCXfeh4nIoJJ5FIpVJ7b3vpdUDInX/k6DsT8FyEsIliCRUx489tAac2LtihRlyuEbeQa8MxpyAIbunZVvMxQE99vSRJai+1T8rPZwHAkTsmh2xtaYBgSYfmMDfXzeYSjLTy8xODUeHuEwgjM6Y7nZxCXagFdHd3f5KTKJV6S3YXu+4ePnLrzjQTW1ADEI3G9pEpr2lP3sCuKA5QyBXQ3hgKskgYebJj5konZ2olrn7FihVnahMT7bt357KuDx89CgAmFSCCRgNBYQ1mLi8xO8FPEUAEe0xhaem/yTqwdfHi89UPOxnOzlSc9/qoyhMf1kq9O7bmsr59M3/fkWKyCbYQ7AECBJWEfDWSJldYitJ4PB65jEgUiSCzGCRwwpTn1acDcZOdnXE52YuWUyvPSj+PWvM1K2ff4a3De1hTsYluI/NtpLtvfk0QK0rp4LwzelsgArtcpOj1QiitWd+cWgkz0gFgbXbb2irqPUm29UmJq/T7fScubEzCCJPMNs8qtXD3zzMCBWAjoqwMBAgQc7c/80QolMpLH0Y5Uo2PO+POZEedX9e6tKfe+t7axKTrw9Vbq2pZL/wqbIdqvnCg204jgFvvJ5djQ6ZULh64uiGuLRBBKJEnVlktWMrAOePWfVL19LJwydps6/fWSpKS3kz49Yvll1gklT+bOTuAZzJNQxAPOsjFAQqxQk4gpPadC0LwAECx6oq8t9IRPxnn3fPRWUnWkq51Ue+tkiQmvqr+LP/TrueslO2y7XLgt9wpHhx0cCBiUmBrwAxGhEIEyGrBw+WRduk4+5yEVZL1lavOLHZeJZEmvlp3vn/2qa9zWbOvXCsDgCdfOwz6OWgJZZallnS+j+eitqBABHTjvTWVTlTGH/5VIUZ4CClbAAAAAElFTkSuQmCC\" >   David Tschumperlé</a>     and <a href=\"https://foureys.users.greyc.fr/\"><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAC/VBMVEW3xMQAAADUqJoDAwEICALFmozFqIwGBQG1jYA7O0EfICUdHiMPDAoODASth3svLzYFBQQoKS8LCQM1NTwaGx0SDg0bHSEHBgYJDQTRpZfCmIpuVk4XFxh5XlU3N0C+lIemgnaif3OPcGZ2XFM/P0clJSoXHAoUFQfAloi4kINrVE0QFAgJCAece3BZRj9WQz03LCYODw8UFRjNo5WXdmuEaF6AY1plTkYpKysuJSEYGBwlHhsYFRELEAWotbWxin2ffXEyMzlPPjhMOzVHODMkJi4yJyILCQi0wcGTnp6CZlxPVVVDQ1VxWE9oUUopKzQsLTJDNC8iIyUrIh9nbm6LbWRZWGOGaWBJU15eS0IxMT0gJCkgGhYSEhUUEg8XFguyv7+Ejo7Ep4u7koWphHibeW6ZeG2VdGqJa2JzWlJERE00O0NSQjouMzkhGxkfJgocFgkQEARBQUk3P0diU0ZBREQxNj4uLzoqMDZAMyoyKSY1PyEQERMcIQ8LCwwiGwgYEgYSDwSturqfqqrKoJOvlX2UfmpXW1tJSVFHR1BIT087O0hhTEVZS0UiHxsoIA8nMA6wvLyMlpZ+iIh9YVhPT1hFT1h7aVc6QUlHR0c3OEVdRz86PDwxMzMpJyQnIR4qLxoeGBMcHAocIwjHnZDCpYpubXpvdnZvcnJkZG9XVmyTc2leXWhWVWBOTk5LS0srKzA/Ni47LyovNRofIBQkKxEQGwq8oIVcYmJcXl5RUVtWV1dMS1VHPzgrKRSXoqJhY3iljHVbWnGbhG5naWVQW2WIc2BNTWBTUl0+P0xFSkk4OTZ6hIR4gYFze3ungHFQUGVjYmGDb1xoXlVdWVA+SFBAQFA9QEE4MjIuLy80Lyo5LRmFhJG6k4d1dIC0mX9vbm5UU2eNd2NJSVtGSi04RBYyPRQ6LQ+lsbGapaWAf4tsb4Z5eIVYY299aWlDSlN0Y1JvX09RSEBMQz5CPz4/SxinrKyVmZmNjIufeWF2Z12ObFYuJgeXgXY+PimhEuIiAAAMWklEQVRYw7yTX2hSURzHPZ57UeIqcvE2/IdOiZz5Z+OqUxRnc/iXDUrHGJhOlpuDMIN8mA+p0xJGU2a9jDlXIRgEjUYPG6PtZU+tFVHQ/hD0EKxeeqgoiIqu+1Mrrce+cO49f+75nO/5/X6X9h808O/lMcvfVjKumjIZT3HsX4C3RRrN2eDYR7enNrjE1tbHucTG4rXJ0F995KouZ7XOxcraxw/laDlh8psD0Y1o28yZ238DHPGUxkJ/enT52ogNP4SEFygJwDFjDliyvMk0BAjX45bxT79fovgxYOZgsw6oNI4qIXaTg2EQlnIrDQEGD3fhczF0eOrN3GmHIOJ1MxX6qLHrqk5hw0x+AGYsjQHjuaXqo98cWB4qFWQky6PzeJJmhUqalbrJl60AxC2NAa9y48Xf9zsUZ3t5Ffq+Xko7SOrZa1YWnZb6hHnGF0vVMdehMPowQUXWjUoPALzs3ksVzQ08ri+J0NTdBd9YaPUnemWzhxSPnqWTJP0PWVcbVdTjtuq4J+OJHxTKpIGI8BQROr1Zsntuyy9Atmu1AeDFyczk5NuFjPMAIGwdtSp0tQjubrpDQX5aWGtQCty7S5MZn8+zvnIAGNX0yw8Zp8K3F4MKKdM8qg/i2sy19Zm7S4uPB/YBs9PRTt5hAG8vGJUIaRVw6zP5HBoMU9y5tYMYWPJGwka2qLL0OvE7JVt/Any055e4r0qbc679n9DlafLrjFKyIiLrAD32ygMK4Mw497+lkl+irT4vx59Oeaq1SeeAL795U0u6+3gkX7Vr//BltApFIrRwO3Qst1CdHHAVPZeowqCVVg2LL3IzPgpgcVXj5bI3q4tIVa1aZm1PM/uwhYr6jA84hADi5pnNo7OngXDFQ1szTJWE3IcLb9/QckueYlnozarYIjMw6/v6OujkvgPenb5aZkYuxQN5IlbY3i4AvMAAwOygGcvxMnZm3VdcsVwz5F5wgDc7JOoSCLqvtzq8CrK3km05Zzun9tpPySlAk8GfD2zfYuDpGJ5kJHGHktYUJHAEaVMKuaeFTW2Y0pEYmieIU10Jqa5HOMJDeb3XE8b3l7/NG9UUgPPgCwZYOzvpFJLGWTuxJItmBgDHY0kGUH6/ceOGn0jkmzp7ulVqAnb15LF+Se+dL1cmavpgktBHsGf3TIBRSMfArWQhCWMpQLOD4wAGWRAoX7++HyBknd3XO1qmNRrO1jNp74h/3mS6N/EuqmwavWgy2bTGAHSkYoVYGsdBOgVvAkCj2p5uvl7ehq3t04RdEtaEZecmnmkiNuZgpJ1te/dudjpiPyuax6IExmDFGAA5j4DkDmRRAFATQvXMy4UglMkEmLq7Y1DhZrL1IzKvGB02Dl2fmNA163SivmbbVZGdEWQdh6kLt1iprxCnABACKh0QAYXtWAz49e6AWn1V6pZq+eI+tUksVykEeiYTbRmShZvl7m6RLQU5QQAhA0my0pACpBCIBzngAtgV8eRJoF9uVQgEonBYpjGKmV2Doqtn+WK2VNRuZfcLhqNgXwiCfK1dgWrgxv0TjAPAtEOAarUoKrcyVWa7uOWcTDrUYu206SUSvs6mkAEIaoLwAkgjNQdBanSLFYMIYw9wyjSI8vkoynSjEuMwija3C6xsvlgsR9lhk1qur3llMBgsiOMQT1OAPLXt/vJyAUGOU732jlOz4kE+WhM/3MMcVqHtw2zm7jgik/Uz7YASC+5eASJpqpB+sFQ2IUqEYRyfl/eVmUCHYSt8UQcdrRlnRx0NP1piUFxxwVAwMxEqCb8SpMGFDrUNdSk6SAjZIaIvpSA2otbVW12KDtWlCIqIiKg9dIqgQ3TpHet3GIYXnv888/z/zwyacWCzVjtrQ9BKzwVkVZ4XMJl00O22MGrdMof1tDKCFdA2MAfSEk0UKKQhSYREdcFKhO2F4tFK/FrU7Y67k8XlYpzpX+P9Fj/pJzbstDZaVrKKCIDeAqDRuYWRDVCTrW+DgaTBmlSDgKzYzrzP39m3L1zOlxL5kvVEqcwKbJ6xMMEU0+onreTRBJpkyNbrIShRmqSL+tYWtiFAqEn2ht/h57vHPdalnSuZdNpZDW2UU4V4pxLzt6os6YDkEAEaggUk2UCPAhCLhoIh+I+d9fvqFn89tJLrqDmejzqj+bjcXWowwXTscBb2SCmBXMjUEXFBGejKE2KANUCOFmjI5YjhQsoZVePxYW69HE9Z8jud6rrF4k62AxDUaKDR/6YooXM0oNBYMaSRSHMcGQ+EHLgZDVa8+X5TCPed/VKp0FrMqnJIIInwdlEPmOGh//tAxggoHSARYGIE0nVNH+NZoOBsMJmkW24W98VzsWFiI1RgTIE6exhIpl+kXsEaNCXMV9BmmjLDioY1DWJzkmHWwWQc3mjQE1oOrKSvNRx1byxJglDeCfB870ww/ndHYaRhPJvNtKORCJ4ZSFRE35BJy6lKxuNgvd6kzDgYdZElM8gAhMF/FwDqQWhDCFEAcBo5VeDJy69cylQUp8al4w5vnlUTxfbGkA8XCkIydpptNBJ28A+MTZ3BVP9FIkTdIkwVZQIjr465ADD1Nh+32KjcZsLZ5cCyM7GeYCu8pameDq9IY4I+GG8NpoNfv6a6CEVqjfB1bbImGq4XR0j9Gdeex4+dAsmCp+KRfesCry42u4ybf37h/JufNzYREgfit2+SJo7GYm+MKQNCaEynhkE+ChC+2//g84Mdp085vUmhWiqwQaERdft9xTr/5cfShQ+rn+6u7lrdZud0BU0MGkqiQhlmCxOMUGTTRf57By+/DB3OJoqynBTasQRbDfssjlCx8+VOeOnp+107rnzfdv/jvUNXIpGjoydPJkQAcByHJ2uTva+fXd2z48Dlt7//3M5mni+m2zmmwjc8cpPxpLtf7twJP6puX3149+HFQ9/v7vr+8eO967vRaC7wt6ayCW0aDsN4RCzm/xfTP4kpaA0eEhDxq0Fwxh2MGi8GEouWmFjBXoTUeGhr20npraVd1Yu0q1URD461tm47FWuFtqNrK6hzuokgzrGjil/gB17MBH/393ne530Or8uVvPHg0cQlsRi31HNXn/8Z3nS6PnN0+v7mzee3bVy36/zhx7MBR/3xi4M1b7nJ8SaLr0KW3+WzZ+3XduP9i0cTLx5xghGlw+jck9/7nWvuphztO8Ondq3fuP3QvgPDtn878msikc28/fguDzPVqm+8AbkpUP2IY7ceTg6h1wzo1xi6q8UvPdty89iZg18DgZnIhU0njl05Ox2Zvee4F7n9EOpUtWaaRSZcZHNsbnm5NRhkxrHjbpgh+zhrIXf8U7AIT04c2ToyMhZwBJaW0mPz6XTKYZN6+fMNIng2iVpdujColJTeoqCaZCOEsURTzTA0Ho2rYAHQweT1oZGRvXvvOQLz7bELewKOf/PTvyY5hrGPqHygmVxFknOyXFSrPuYjNi4KUBV8FKHQyHDdjtOj1717926YrQcCS/PtmVWBQGp68pIR7FUk2I9+HsC5FkBRXQZ4iDHLWI0RcC8xjnhe6vqHRqkSGL3+fWRDZEfd8Z/Uq8kbKEfKHbgTfYrmvKUWSBpSh1Y1/F0ZIxmzLzTIMmuAIE0kaDgHnpz7dvd0atV76XSkbuf/8cA1V4JzDFqrFTslmJPXUD2dgTWg9msYp2bjkunJQpcnGPYwxJSuJ0afnrw2vbpBfWa2PT8TGeL1SrArkoSzEPsAPSvyWkCQeeQjCZLF8q6MXQNu22tEMpGFMQU0p+DDB7vbY6tEvqYj1NTKSicXRAS91hYQhF6MJgS/iji7liZGSXiIoqNRCLUoT3hdJGMgnFtz8UL6y90NZ76mD1/DG6GerNe8Ccbr0oTlxVIlyQJfk8jbvfqqmCto1TjNWIiDoEYRIuFnOUjGPUn/cGQs/eXOxZ1ixvtZIX0myWQF65PSEphlvMHhoawPiawdwSTDMLxgRAsgXOAJXZY4WpQVxIeAy3V5WJEInGM/A1+ZdJMiwAuxFX+PMxEtIicNRESSGBJBtBi3V0gYQYHhdcMUqVJUkaBVXLCCMUlnGI4uNTiax1XCFlAkmcapAZ53rnGzXreFAcPSDAXGw0OEpWYggfwxmZclq4AoIRyWlQrQKyLbcIfjRYvktDBoDZrqYg6nPHzflzU5DAF/AqeUboxPJCQ9V4LOWMW/KFmwKcbU7KKkzHWE/DjhmSpoCcLZ1fQO7uMId1VI+rM4zXr/AnoH9FcRhS6kAAAAAElFTkSuQmCC\" >   Sébastien Fourey</a></center>" },
      { "type": "link", "name": "( IMAGE Team / GREYC Laboratory - CNRS UMR 6072 )", "url": "https://www.greyc.fr/?page_id=443&lang=en", "align": "center" },
      { "type": "note", "text": "as well as many other friendly and wonderful project contributors you can meet on the <a href=\"https://discuss.pixls.us/c/software/gmic/\">G'MIC forum</a>!" },
      { "type": "note", "text": "\n The G'MIC-Qt plug-in is based on our open-source libraries libgmic and CImg (C++ Template Image Processing Library), available at:" },
      { "type": "note", "text": "<center><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAAA/CAMAAABnwz74AAAC/VBMVEUCAwMBAQEDBgcPExQIDQ4KFBcGCwwQGRsPISjxhycoS1YZNT7rgCEkP0g2PTiOVzXidSJ4OxgXGBg3XGkTLDQbEw4eHRxCa3gyGw0aHB/uchSHPxlYVlNwNxkdHRtNKhNNeYgvMT8XEAnvn2vhjkjQfUi2hGWMZEo1SkzXbiQjISAmIiAcGRlnjZoTExM/IArWw7TnhWfti0igTjYmJzKlVizpcyeoqqOoRhfIZR8jIiBmMxQqJyqFpa9VLxhhhI8mIyno3cC8vJqJiHvkqGzujWbukle5e1CBRyyEn6I7XGN/RSJBPj0iICFnOR1aY2SgVBl5nKciIyFEJhRcLg7DvK7nqH3vr22lZ0qsY0TeZT1kOSerSyKTRiHg3NeESSd5VT6PsLuLr7tGRESFiIN0OBM+TlwyGgwODQ1XMhM6QVprSDzSdjloj5suMy6lfWE6VVxxSC2QPROUcFePbVSJjojTx720zdXDazPGurA2U12bgnFybWhjW1YkISAnJCNFM1Tzdx32exgyNzMhHx75liH7nyH4jiFMM1UtMi/5kiDpfS/ZrowrKSf0ih/2za9JRkX8pB+aXj9EQD8rLirteR3ncxz68Obz1sD1wZjUo4DBjWlRNVg6K0D6mSP3hRxsNxe/URb56t7muprtvZjhr4lqa2gyLy70jinwgx/1gBvpx6/uxKbzyKXztITcqYBKcH1mT3hmRGpgOVxOM0w+NzV5QiTuciCmUB/8qhzfZhbVWRP65NPgwp3btJn4yYrOoILBkXL7yW7QjmxaNlZOTEpBLknxjDkvKDLQZSDgbR59ao11XYT3xH14dXNycG/Wm25RP2fCiGCKblw7V1yhdlVtXVJEMVBTUE+daky5ckkyQkFVRz/5oC3CWiKwyL2Rsbn0xai+o47714byp31kYmGvfl1fXV36uVrmmFR2WkayYzSXSCJJMSG1ThfW5+PE1tL72pPmvopxWH9WS3adg3FYT1v7s00+OUX7rDJkj5mrlYVSaG9uaWbbdTHVCtkHAAAAfnRSTlMDAQkhFRoPLij+Vj7+Sf7+/v53aTRHm3pkXf79/LSsqIh4PP7+/v38+/v5zb2ahk7+/v7+/v7+/Pz38uXBr56QU/7+/v7+/v7+/f368N3Yx7enkYtw/v7+/v7+/vzp5uPMu7u3sJuXcGZd/v7+9uzo5OLg39zb2NXUy62ggmXEYn5YAAAF/0lEQVRIx+2UVVAbURSGl92NJ00guBeKFau7u7u7u7tmG0KSxiGQYC0ORQu0RVociksp7nV39053aR+g02VgOn3r95DcmTvny7n/PTfAf/7zbyD9TTGBCOhM2Yy7DRqYzRo+H8CH6MgGR0k1df64qQHo782WZkiZ+rh+MpFKA9aEKIdbAL+ALJy3OkO/ts2SfKVhobFSM9z+R5OpbGh/jF+gJvYj8II5Q9VqdXExy27OAggAZ2kqrf3CfGIzRgF4wATztbQD3tKkQM350Ea6XC6WC/n+4kh1pJw1Z5RRUlIgM85HkY13BMYGCCQxYBNvaUOgptFQuUql4kZFBbhwVfJIVqSqOEUzMFDpo1AwYZwEBr/YgH3rp1cqNTVb5WKBQBCACoQCd4HAn66KSkYNfgrFfTOcesLsly+x+Im77xsZPQ8Q+IsDAtwvowjkqki5MEDlkpzCjFFkDyfgjA9bb+qLg1h3OtZ+KZGClk/u7kJ3d1QhEPP5LREBUVyu+mlNw3ASzgRQR46cPfXmJhAzrC7yb8m5k/OJzxegCjn/Q1lmWYELl8ttnW4G480AzXw0dc/NnW1+Z7r/w1ev7uS0qNAc+OoPdzIzM8uiuC4uV1ai44QDpE0jGFR/1cXWJmL/nNc1NWUP6f4Cf35kTpxNVVhmASooHuLc2TsggQ4ebhaoK0gc8aj2tsfjh3Q+Cn2CTWKhR5gE6+C5CYAPw5FMktXbA8CCVD6fOXbwgEIrihiFMrnPgAEftw/CBEErYHwBRIUB3cR6LQ2TVDG/l9cNXiETFQiFFN+FogHbqpJRQWrQE338p0rEhnlY3gzCviAhJhg/3iZCiEKRjguPj49D6w1TgxpxzwAxqNir23LOWNcoiCWMSB87bnAlJpBTKtDlwsVY/ZWg3NUA3hzMHcnAhsB+fJ+MoXZ01uL0dKkVvd+kXgWSXq9j00MfqQ1TDQ2HxE0n4hi09cy1sX+NE17BaZPpdIrdI0s7yd1bdy0nFrB2TJhgVaS+4mIY9MR3Fu4l0kgwAGsTDwV7eXk/oURESFgsy74TJ/bNDe1lV1Sk5nLRS0yR2mzGSRAmUEkQzJ5LW+WFCu4PlFAoFMn5RX3Rep8KFhelKOXp0rgaM9xJZjuyCSBDj3w0ODgtuoo5cJBEIjnvc36RT6xPxaDk5ORBQxt9s5jzAdwERq5ypMIgDJwMDg7uk+jn12jVzzLU13p5Q25W2PlJkyzjQrJsRpHwh0DbfK0eBGAcV4TWNjdnh8TExipirPv375+lUNyKkVqv0cfyxxeQ9cjkn+utR6Y3Nw9sbfTLkoaEWC3zjQnLbphiAmn8BNcAQG2fbcD28yDnjSsHKpV+vrm+S5ICjYYMQQWdGjAIZAYBe++gjpPpzN4cjmz5EqVSyZyStGKZpPjZMHtTLQugUwXZfK42oGFh2qO6iSfyRDgc16rKyUv7P22V9OsnecZBPEW8XbokPAGBBjPWHWYT502znTY1vkmEIKjhS0hFZcYt9DYLUAEHEfF4PXpo/dkAstcxyFQ9Glx9Mz7+xmdbHtYBp09oWIi3d1pa2t3vCCJrq+cNwxEwHGkgDAEaWtOabOOrm3qg8HjGtY9vR0dHe3tHP0Y8eSgiz2EGOGcACSCRTUNDgpxsRSJbT5FIhAXhmvjuXUb07VqOTOQpQzgznQidhAiPpgKogTzaoOexmTJXV1eOazuQwhEGELYP4EME23qByNrmPS9cuHj10qX8s23k558+c/1tT6DLgNCYhISECxcvXj1z+hTGaRwBPmPelJaihvaChG4JDEpLSt78JtjUHYHW+5KS0vaC03Uf13dHYJr34MH7Syh1dXX5aJSFCEdmDHa9Hp5hHH7P7RzCaQfiNqYbJ3C7dy0cE7Tn3PpuNJAXfi3c4zeBLK/LLeh6GF8rf+Dh2VGA8GaDXbxDD/QE5fWJMk5HZG5dHIURHvXh5d/ceMhvAuTcvC7Va5BGuIWXG2MRdKS3E9g1gQagMyLPLVGGdCzXhYBuAGk59G5fba9FALoL0WKLk6mDg4OprpYOEfgPPj8AH7GtomieWx8AAAAASUVORK5CYII=\" >  <a href=\"https://gmic.eu/\">https://gmic.eu</a>     and <img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAAA/CAMAAABnwz74AAADAFBMVEUAAAD8+/v77u/9+/v8/Pz47vT25Of04+aYbXL03eD+/fzx2tz89/v99/n98PHDn6ns4OnQtLqshov88PP/8/T51NT46evz4evguLmlYWn56PDgwMK7govXp6u0YG/CjZWUd5Dt1tqTXGWIWWLx0eLl0NrAcnnIeYDw4Onlxtf54e3z1+Xs0d/rzNvz5+704ev33ejt2ePdv87vt7ngqqyoconZpqSoUlpwPFndxdHgsbTGorHDm6zMg4XBbHPPaGqjOUW0NUTxzN/jv9PSl7PMj46zYWmfTFv+/P7YvcjuwMLOsLzmvrq1i5/WjZe3Z22oRk6UQk359vf77/TuutbkuM/brsPQqLrXuLXMpbXrrbCxbYi3cHaqWGOEQ2LDT1e8RU+YLDykLDqPHDD17/Lgs8nWqr70oKi+kqa0gpnKf43AdoWVXnvMc3qSU3DEYWTNXGKSQ1WbSVScP0uAJDj66fLrxt3sxNfw2dbqvtPdusvfxcPWoLnKkqq+i57hhZHTfYSpZoK8enqsbnauXGv66ez93N7qzNbrycjJkZ6xeJLTiZHDiIm/gYSxeICjYXudWHfCYG+OUGl6QmB/N1a5T1WvQVCsMj9eHzz0x9/wwNr8zc/VtMPhnaPsmqHYlKHVnp27mZy9fJKYYoSld3yLWXmET3GEXGyZVFqGOU+PNki8g5zkkpvRlJiihI7Xh4yLaHqYb3nbbnFlMU2pP0lxLUn44t7rttDKhpXhkZCaeoavZXSjZ22AS2iXX2ezU2GPTlq7HjH61unt1M/irMuMcoGfWm+bT2mlUWa5WF3psc7/q7fXm6yrfIuzhInfe4Sjb4LafHb98vrm0MvgpMPBiafLn5+ieZW/kZGXcYueZoeQZG2OQ2OiXWKJRFR8Lz+cIjH5zuXhtNP9t7zSnqWUf46kaY17OkX91dj+xMGsjZTth5GFOT5RFjGGEybjxsz7wMjks8H5r7HMrarJgqHjoJhvDinu4NrWjn7NgXOhO12uTFzKaYJvHzpyRElCABtwx6DiAAAAJHRSTlMA/pTZ66c8G5RtyJC8rw7PnpSQfSTMUfTllM/Ev6+U7Ojg3lN8FIp+AAANFUlEQVRIx5SUaYhSURzFm4pWKlopiqB4+hz35ZW4jFuluTsjjUuZa2pOpqVONlZO5VYThZFKuLRQUUMRyCRtYBZUUmBT0AItQn0oilbaC7pWEEHrvV/el/fjnPP/nztgfhsRQ8KSiCRiwKYePGjU+ElDB/zXaWqyETEYEgaLJRIDAaLNZmtrGzV8yL9TmuY3qUlkFANFDpBI0WhUrY6+DV4LnQtOHD5h6L8CsAQGSyyOM3BkHCkQjZbOyZDd8+btZiLPJw4fOvrvgKsBfBebynqWo1IZDBQeFUzI9CdOvHe7e32tBzfuZk4cPvqPGcy/GsB1saXSuJjKQDGaUahn2tmv373r7+da6vxMqsoRoo/MZk4c+RtDg9vagIK4VEqNSxlUMZCASsgA4H0/l5vJ8DN8L9dT4xYKwkUb5s2ePHLCLwA2GwlHwOGwZBQFJQYaxN8BHq4lw+ebvEWvscjl1rj9bg6cP/Jg8tThE34GXFWTCRCOTMZRMJgoMUokBSXI6/fcfi/XwjfxTUVwU7Uat1blcAo1hwJ9Z7fk2Ywx44f8UIAld86R5iAsNkAkkjCkaCyrf30COChmgAdjQ8FjT/fjWjfncPhxOBx2oyWlEFusDs2cNm4IADTWoNPudOp0bDEZhcJSsDEJonjXX+QWLXxwvF6jN9XvDnMO5/NKpbs7XDs8O1R6FlNLOpLhg8MGDJ5vowjmtMvtTl2XLicVU6Xirk1bWtwej7cByFhMIIKiJ4k+qqfRnm84fCn5mE47F4xKEzHFY751CgA0BQhdGjkbAFgEqpQq7tKs27qIrkoZjfV6I0RwTSn3iRZEwpQ87KGXU+H7D2OhZ4novEzFAgBt8wNQczOLpdGwdAxxjioW6zZtRQtTRpPRWgcCjOAjk3KvhPOIJMt83uFL1+4jDyQS3cNsvWKZDjJoImJw+LNnsTiIQkGh8GJqbh0AqFIpk9ViMaWNANHnKbsPL5qt1Say2TvJpGNDXu/qyDoqlToAgDpT8DgIwoJJYkkULBYbZx5xcarVlNds5qV5fV6eiefhhIV3dstC50pBJp3j0AsdPc8vWSoNC4NAnYnYs805AoQnYzBqUgPw4Djs8XC5X/9PeXjpZBKNRu+SyELBUCmWF74s+OFHDiu/UvGPHDCozRbFE3LyWXa2XNecyzFY1FUvNvXASo+nmE4DAM9hNnpVwpY8IpMltKVSKbbxudLfq79kqlTMtIEAACycXdW+dA1b49SwWFKpxr53I5qu6uNxLWZeX5/qcR9QAPeAemuvnwuGrgUfKI7eo8Xo9UolnAWApiY1WbC6/coap12+wM6ya+z2y4tgukpVNVqt5ow53e3pU3E2tMxDZt+UyWSht+C12CjLxgpWS12vBQAbhoKDBAvk7Ro5a06OlWPp2h9shQ1gEbwWqyVj4Z3wqHxHWza0HDmyezYTSVy7ppU8TJQeRqxWh+QcyICIAVNEQZ0QhIdwBDw+3ryaedylLFf7uDyruW5WHe2mG2B40aKefB7Zpadd1wIXz2JZvzXtkES/KYDwBAIoJJglmQxqHX9xWdHidnP7eT4QAd3RQleiOUL46CmXS7HrCMIMXgvGafetfEf+YfxriBSwiasWCATNAogAEORVLy73wG530cNT+T76Vr58Xz0BRzifPn24ePHQva3MxLVgjIl+DABbJHFgYf5VEkSw3zrgdN6yy+Xs9j063daNLoMqBSyYfb1ldMtr+lEDPenzv+ldETn9PBE6Jzvd4Xj6NFM4gkgHAsB8NRlaNXd5+5qlc+V2uY5tX7vpVKRVxUtVn75pvWeAnxTovarkB/+HD2/8EdorbQg5H770lP/0koJ2Mza2AQhQCF26ZWvsm9cs1TjbWRrnplMdIrq5Wu31X1xpQCtfCn2f/G8+fOr1H9rFZO5JZA+G39SemmFaNqH9qiCKau7S7LfrbrCdJ9k5to51ZaNLtNLn8/haRfcMPSsLSrT/jf/zvQuHjh+fvU8meSQqm3lW/0s9DQkNHDCiqY2EwxM6d67u7OyEGq8jBEJUuNAwp1vUGllhUHYbOi7cu33o0IUzrl278gjt0f1I2ZyuXtIj93ftGdkAEPGEuEAggCBCM+jk2bNzXjxQuODublgkuigyRJStC2/vWHzhwpmN+gJaqXikv6/ipY28S3n9S/SDsQCgjuLjccGSnau7Vgk6VwkIAqDgOAxGD9NFEZGho+PgofXHlm87cxc53PqkzDnhKFvNaevTw4oejgH5CiDh57Q7t69bN2udRi7XyZ1rNp8/taK17BP6ey9+6bzcQ5OKozgewaKo6AUVPSgoXfaedu1WGpHXrefKUltdE6KsTBO02rLUpkY15yuVUHv6dtlMEXM5Nam9sJRRura5LVa01Wj/1KA/osdPiCDoQX25f104n3M4v985v3OEL+wmsylsNptfsI6sP1l2bjWZfHnDgQcHPt24cbe3vhDBrt2LllH2qAw+lQxCfFzpUdlRe0uj6MSnnQ9OioTCPrYpDL7P4bo72PXV1Xewd28cP/jg8qcbd4rJVOKlQhLBRbLSJeycKteOSLmIzCepSbQIaZevXD5JE8pNsBEOGcPhOl4pDXvnRvWO44/PndhZLTqCvU5ddeEeAGwCr7uYI40jkIvLJG1fx+VyZO1Koaj003FaUmcwup8DAD+UvEnbX333/v0d6x/f9dbVJ2sJ+251fPg4HgAOYXAUirjK+vBhVWWVpb/fwmRKGzQ8HqgeHjcYaO6Co56gJx3zsooBgFX8+Hoi1qElrFq7dtvp06NHTQC1AB71h2cebsQt3Gixbux/WMUh1dgzGo1aq00Hml+/bg4EAtGhoFOrBlOHun5fR8Zms21ZW1FxoQJEMGF5oStTzjDFnL0cDukwh7SOeTQtcwJlnEE/sPe/9vv9tuiQf8hm6yASCQTb0Afb1rMVFR8enf4IIlhUgqEwSXx+OwRBKgjazk3L0u3pYDDvzAQBoLkQQrM/Gh2K+jOdnWrqrY50dN2QreLsow/3nm0GgJI1eA5TKlDp5XYdxIW4XK5M1p4J5vNarTMf9bwONDd7SEFPwB90ao6do1LrO50AXbPtQoXt3rNHAHBo+eJKSc7gE0A+HZRu50KQ1KfTJhKxmFprb3c97wp0RbcHAkP+fIxXfY5892bCmcgr6+s7nJltbyqmjpqwa/eSqqac0QipDEfXbV8n3rOHIZE22Btqy8sbUb4j8BxonScYzeeTCWwx9g5rUBvLJM8r1J2dV7d4CoBTJRQGI5Wiiy1Vy0BPAx36MCJrsJcfq21EHS5Xt+P5c09B7eB2rS5dT1YMJnvPHyvX9N4i9MbGjpq4e8XCjRRGhG6JWMXi/v6N/RZ6BHlyE+WVFreajHA8Hne5XSEY9kAtwv2rsaW1VEJisJdXo1YSropYU0dNLMHgGJamVDabQp48gVTS7m7IwG6pqytrEwnDRiMMO9wudwiADJ+FIixZoSYStwwm9l3tUL+NiWrHjipatNTSn0XYbD1qQuWoQSVHdXp9S2udsIzWZmYbBaEQ7BowwiDFfWU77lA16lvEbQkl4RLx7Vsv9nwBsFCczY6YULbdgOpQvRyVy3UCua6v9XYbb3gAdoMQunNcd7evRVSGPULWqNW31mqUhLWxV69oJwBg4tNTliwyYrL3SA2o3MFX8XU+Pl9q1zXwykf0Pr6D73IP5LrdcYNQVFZaW8sqDJzEmFJDxr5/t5oFAIdWVkYkqDksRxy5FJ0eSUXodElO+qQBdED9gANyGd3xeAg2ht+JRPt3lO8AI+stgtf7glb97t3+5FQAWNJPjzQ1NUWs1hTdQgfnEYk0IYj0ZtuxRrPAPGwOhcxG2BwO006sXs9i7fD2Ulft03jf9ZG9ClpjIQcYPIPBsVotVrqVHrHSU1kJJLC3DJbdvl33VcBmmz3Dbjg0zAY/VpM1peRiBXUfgapOeoV9XuUXAFgB2gGDwwH2OUQq0CNyA2pgG0yDdW2324b1PewQbObDIbiv7Hxp8X2qQqHRaIhE4pdEYs7YBYUBvgizhoITM6FheY/A1KrvsaMCVCDQ64BDYYs5zh9wG0EW2YY+0N/J5RqFQtn5YebsaWN+DNyTMSVLlzFk8LC+VWfqkfeMjAhUbDYqTzbuP2YXOLoH+G6Xgxvvaz3fyFJmOifNHTdm1E8qOlWy9CKnCTHLe/QmvUkgkaoQnw+paSg/dlMFzPl8h6OrK55Pz5s091cLHQAsXojjZEfCOj3bJ5VJrHQxg8OUPKkBSnc7XIFAV9f8SVOA299o8qIllS9TWUTVBOqxiiG2VlLObN2zh0SqsZH8Uf/2SX9cmAoAXGXlS3ANXnIYFMY1PIWCB9Pyta1bt66ZUfTd7V8AJRsrXxZEweHOnMFv3roGU7Ji1rQf297fAZilOByFcwaPW4MHtjOKpgPbf9HoRUtxeDwes3TRLHC4wPZfVbTp6fIZRYVl+T81fdwY4Pb/9Q3i0ArjHjdFFQAAAABJRU5ErkJggg==\" >  <a href=\"http://cimg.eu/\">http://cimg.eu</a></center>" },
      { "type": "note", "text": "\n If you appreciate G'MIC, you are welcome to send us a nice postcard from your place, at:\n\n <samp>David Tschumperlé,\n Laboratoire GREYC (CNRS UMR 6072), Equipe Image,\n 6 Bd du Maréchal Juin,\n 14050 Caen Cedex / France.</samp>" },
      { "type": "separator" }
      ]
    },
    {
      "name": "Download External Data", "lang": "en", "command": "gui_download_all_data", "command_preview": "gui_no_preview", "parameters": [
      { "type": "note", "text": "This filter will download all external data files used by some filters of the G'MIC plug-in (Color Presets, Light Leaks, Grain, Denoise, etc.), and will install them as persistent files on your hard drive. After this operation, you won't need a permanent internet connection anymore in order to use some of the G'MIC filters." },
      { "type": "note", "text": "" },
      { "type": "note", "text": "<span color=\"#EE5500\">Warning:</span> A lot of data will be downloaded. This can take a long time !" },
      { "type": "separator" },
      { "type": "bool", "name": "Force re-Download from Scratch", "default": "0", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2014/04/16." }
      ]
    },
    {
      "name": "G'MIC per al GIMP", "lang": "ca", "command": "_none_", "command_preview": "_none_", "parameters": [
      { "type": "note", "text": " <span foreground=\"purple\">( GREYC's Magic for Image Computing )</span>\n\n és una gentilesa de" },
      { "type": "link", "name": "David Tschumperlé", "url": "https://tschumperle.users.greyc.fr/", "align": "center" },
      { "type": "link", "name": "Sébastien Fourey", "url": "https://foureys.users.greyc.fr/", "align": "center" },
      { "type": "link", "name": "( IMAGE Team / GREYC Laboratory - CNRS UMR 6072 )", "url": "https://www.greyc.fr/node/36", "align": "center" },
      { "type": "note", "text": " Aquest connector està basat en les biblioteques de codi obert G'MIC i CImg (C++ Template Image Processing Library), disponibles a :" },
      { "type": "link", "name": "https://gmic.eu/", "url": "https://gmic.eu/", "align": "center" },
      { "type": "note", "text": "i" },
      { "type": "link", "name": "https://cimg.eu/", "url": "https://cimg.eu/", "align": "center" },
      { "type": "note", "text": "\n Si t'agrada el G'MIC, pots enviar-nos una postal del lloc on vius, a :\n\n <tt>David Tschumperlé,\n Laboratoire GREYC (CNRS UMR 6072), Equipe Image,\n 6 Bd du Maréchal Juin,\n 14050 Caen Cedex / France.</tt>\n\n Tot aquell que enviï una postal apareixerà al Friends Hall of Fame :) ! " }
      ]
    },
    {
      "name": "Gmicky - Roddy", "lang": "en", "command": "fx_gmicky", "command_preview": "fx_gmicky_preview", "parameters": [
      { "type": "choice", "name": "Mascot Image", "default": "0", "pos": "1", "choices": { "0": "Gmicky (by Deevad)", "1": "Gmicky (by Mahvin)", "2": "Gmicky & Wilber (by Mahvin)", "3": "Roddy (by Mahvin)" } },
      { "type": "separator" },
      { "type": "note", "text": "Gmicky is the name of the G'MIC mascot. He is a small and cute tiger who knows how to do magic. Gmicky is a tiger, i.e. fast, agile and elegant, just as the G'MIC code is :). As many magicians, Gmicky knows lot of gimmicks, and he is a direct and friendly companion of the ImageMagick's wizard, or the GraphicMagick's frog." },
      { "type": "note", "text": "Roddy is another mascot designed specifically for the Artistic / Rodilius filter of G'MIC.\n" },
      { "type": "note", "text": "Gmicky and Roddy have been both created and drawn by " },
      { "type": "link", "name": "Mahvelous Mahvin", "url": "http://www.mahvin.com/", "align": "center" },
      { "type": "note", "text": "and" },
      { "type": "link", "name": "David Revoy (Deevad)", "url": "http://www.davidrevoy.com/", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2026/03/16." }
      ]
    },
    {
      "name": "Privacy Notice", "lang": "en", "command": "_none_", "command_preview": "_none_", "parameters": [
      { "type": "note", "text": "This plugin may download up-to-date filter definitions from the <a href=\"https://gmic.eu\">gmic.eu</a> server.\n\n It is the case when first launched after a fresh installation, and periodically with a frequency which can be set in the settings dialog. The user should be aware that the following information may be retrieved from the server logs: IP address of the client; date and time of the request; as well as a short string, supplied through the HTTP protocol \"User Agent\" header field, which describes the full plugin version as shown in the window title (e.g. \"G'MIC-Qt for GIMP 3.2 - Linux 64 bits - 3.7.7\").\n\n Note that this information may solely be used for purely anonymous statistical purposes. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: Sébastien Fourey.      Latest Update: 2018/03/01." }
      ]
    },
    {
      "name": "Release Notes", "lang": "en", "command": "_none_", "command_preview": "_none_", "parameters": [
      { "type": "note", "text": " - 2009/01/13 : version 1.3.0 (initial plug-in release).\n - 2010/09/03 : version 1.4.0.\n - 2011/07/07 : version 1.5.0.\n - 2014/08/20 : version 1.6.0.\n - 2016/03/25 : version 1.7.0.\n - 2017/05/29 : version 2.0.0.\n - 2017/10/09 : version 2.1.0.\n - 2018/02/15 : version 2.2.0.\n - 2018/06/21 : version 2.3.0.\n - 2018/10/04 : version 2.4.0.\n - 2019/03/15 : version 2.5.0.\n - 2019/04/29 : version 2.6.0.\n - 2019/08/14 : version 2.7.0.\n - 2019/12/04 : version 2.8.0.\n - 2020/03/28 : version 2.9.0.\n - 2021/12/09 : version 3.0.0.\n - 2022/04/06 : version 3.1.0.\n - 2023/01/16 : version 3.2.0.\n - 2023/09/04 : version 3.3.0.\n - 2024/06/14 : version 3.4.0.\n - 2024/12/31 : version 3.5.0.\n - 2025/08/21 : version 3.6.0.\n - 2026/02/13 : version 3.7.0.\n - <span foreground=\"#EE5500\">2026/05/13 : version 3.7.6 (Current stable).</span>\n - 2026/05/18 : version 3.7.7 (Current pre-release).\n " },
      { "type": "separator" },
      { "type": "link", "name": "View changelog for next major version (3.8)", "url": "https://discuss.pixls.us/t/on-the-road-to-gmic-3-8", "align": "center" },
      { "type": "link", "name": "View changelog for current major version (3.7)", "url": "https://discuss.pixls.us/t/release-of-gmic-3-7", "align": "center" }
      ]
    },
    {
      "name": "Send Feedback", "lang": "en", "command": "_none_", "command_preview": "fx_send_feedback", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Send a private message, suggestion, or bug report directly to the G’MIC developers to help improve the project. " },
      { "type": "separator" },
      { "type": "text", "name": "From", "default": "Anonymous", "pos": "1" },
      { "type": "choice", "name": "Subject", "default": "3", "pos": "2", "choices": { "0": "Bug Report", "1": "Feature Request", "2": "Improvement / Suggestion", "3": "Thanks / Encouragement", "4": "Other" } },
      { "type": "text", "name": "Message", "default": "1", "pos": "3" },
      { "type": "button", "name": "Send", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2026/02/09." }
      ]
    },
    {
      "name": "Tribute to Sébastien", "lang": "en", "command": "_none_", "command_preview": "_none_", "parameters": [
      { "type": "note", "text": "<center><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEbCAMAAAACvaoMAAABhWlDQ1BJQ0MgcHJvZmlsZQAAKJF9kT1Iw0AcxV9TRalVBzsUcchQXbQgKuKoVShChVIrtOpgcukXNGlIUlwcBdeCgx+LVQcXZ10dXAVB8APE2cFJ0UVK/F9SaBHjwXE/3t173L0DhHqZqWbHOKBqlpGKx8RMdlXsekUAfejBKMISM/W5ZDIBz/F1Dx9f76I8y/vcn6NXyZkM8InEs0w3LOIN4ulNS+e8TxxiRUkhPiceM+iCxI9cl11+41xwWOCZISOdmicOEYuFNpbbmBUNlXiKOKKoGuULGZcVzluc1XKVNe/JXxjMaSvLXKc5hDgWsYQkRMioooQyLERp1UgxkaL9mId/0PEnySWTqwRGjgVUoEJy/OB/8LtbMz854SYFY0Dni21/DANdu0CjZtvfx7bdOAH8z8CV1vJX6sDMJ+m1lhY5Avq3gYvrlibvAZc7QPhJlwzJkfw0hXweeD+jb8oCA7dAYM3trbmP0wcgTV0lboCDQ2CkQNnrHu/ubu/t3zPN/n4Acy9yp3m2VxAAAABIUExURT85NkI+QipKaCNPelFLRzZRamlKNERojXBlXVVrg4tlTWFwf5WGb5CIhLCCaoCNnryghtCcdtCbgpGuiaWps+29ncrGx/rWsd8/rF0AAAABYktHRACIBR1IAAAACXBIWXMAAC4jAAAuIwF4pT92AAAAB3RJTUUH6AoOCy4TH0D7zgAAABl0RVh0Q29tbWVudABDcmVhdGVkIHdpdGggR0lNUFeBDhcAACAASURBVHjarV2LYrI6DAYGAkKhIOD7v+lprk0LXrb/4KbO3Uzy5do0LeZvro0+5YNu+oS/q/ffXMM89HOPVxs+9Gratgq3n/an+vmnq/3y54rXNEdyU/L128mPbAlP3pIOH/08t3Rre7wB4c1Pyzdlwe/ZUFXw61X4bIiX/FB9YoDKcLPy3BJeEHnbfL4lv/CCA0Q6Xj3ciPoZqQ+SDzS3woAowD9w4Mf+gfbDjxYfUZ+TP+f4F6aY30hZMOgdkg4fcBkEgBL8EPUtKkBFGPgj+ishHeQOf6f5nQpsuQgjLF6Qzz+2GcSkf6JP/0NPtJP4e9b9nz7cGkVAVf1d+YmFHyBU4Q8W7wxfbu620xN9YduMpfzqQiYQHwITjPxRbeEdNu+g+5YFlYK/oSfVdwiwYj6z4ULwBgD6XRe1JqdYFAAtgICAXQDKv1X1bf9sAuB3ohJ81KMitYHR/uVG/nxDwQsALm3hSxUQC8A60AsLWtAA1v72LxxAD8BPvoBLZgRVlpmru8R8ioD84V1MwBBInCBKH28Nkt601d/dwPfWs1UGJNKbbXhztvWb5cBmWOG2hIfbmWwDBUGARAGoAr0EAe9NwLfWoP0yEEoEbkR5LfTsFfsC/in3yRD2YgMU/1H8bP/knf/aDLZfan5mA7bE6OUhb2LsDQ70lYxF6gq3K/QbHyBBUGBCEz6N9jd4+6v4m1+Gwltm9S6tXY751PblKuNmlxq8SHrPGGiFAxAFwY/3FLTSO/9rDPSd3lwgIA16r41dVP/UAaS+IImXMrt/yjaE6ZtzLoSKFLRdB25V+jyLcqpfWj/LgG3Ow/1L23d6MlvSz6y79APRDMLvBpzwNR3+GAMLhsiChgmrfov9XwKhuIr2T/BXAFj5RwBc6UJmC1trBFDi0zi5O9xPdzd6793UgSL0uSSrhN7q5/Stf8ubi1PGdxXuGMtn7hIEpDh46wcC+es4we0+3sdwTeHTAw/CNQ/Igz5HePUaBFUUe/NHBmzz6zA3gfwcaZ8tF7Zte5MlJcIH6Y/ufkeyx3t4MnogH1kwAQ/6RkF8URKoLsHR/NUKFtfRfiLv7LkBfqYleRUlU4AeNGPyziO5IHRgwv1+Axx45gGAoP+fYf7ZDQrtmdQzY3cl/M0yQ3/fnY2AoP84nuHjERgQ8P/wAoJ7h5rgV78GDrSC5uos+MzwV//MgFOtI/V7ObnzdgL+i3zBkk+BsHP+8OPDe/wA2kELxq67d7eRLsTAnGXD17RWJ5vf/CZpvlaBzPYnqj9vl4LfXniCc064bcdBhMt1u3WA/1t4cruRKox+mtzctM03NFSv/V71GxW4sHeW3vmE9Av0J86CkoIsEtw86X2AfCD8DjLvbsCCQP9Yj929voeXw0+4bnDgCt4VRV/Zhep18PCCAWnSZ5KbPAL4IP6XlRIVfzD+KPXuBpgn6QP5xa0GAMDrwJnOoS8I7tCIsrpS///JCG7bJQAyxM/bFzxQnl0YQCL/riIH2scCvyoKoL8Itw7REYIk9IZ9k9vAyt5VZ+dfvYfHuzjgnPtYqX5xzdtlQKQhQLDyAd9AL5DfhRuIHOimzxtBoeuAPxAV3l3XMy3VN6r9R1gU16bv7OrmD9RfaIEVvwvU34H2DlW/u0W6UfZ4Iyh0xT1oSAABMMBqwKfc79f6nzPgKuX7BvhXTHAJC4D+Dm09gB9NX80UF8wB4USwB0UHpmAKtrCqLlhQXTKh+iMeikz8qcn7Ev5ZXHgBgGD20MsF+bO4b4WAoGYOdPY79+7uymAHEw5kJqH5h9J5yoC0xJHnu39gARnCLdKPogfLF/FOtq8wH/RI/ECN6YYy5gQZwJszqdU/24Bvop2L67j0hpn+3zHuUeqV9hoxgC/dC9UCCBS6uiuHYTgHglXOgupfjGC64pPEtx9YcfDthQowE1yw5x0E+0H1i+JmpI8AQK6wAbirbST3GDjTuaYkyV+Ew+QBq38LDQqL/Evz/1nsx2VKRJGgc5DrhI9Ip7H/oOwjKLx81ak2YFB077qyHy68/3UFrPonFcgUf/5IuiIgwmDOnCHjHxigjs8QfwuW8U75IH7V2W8HswmuowwsSPW/0RU/evKPFaEo+O+s3sF38pjKP0bUXPqZWP/BvZ+oD9cEN/iJCb663SNK7h2FjXXZl33zYcmj+jMOistC/xf4D2I/5ElqCnS1xM2dG9H7pbJV+qdAPF93NyEvEAzIiPCkvJcQLgYONBgWVx/L3783h4WN/bZv8h4hVmmPX5sKEtIP8u8g3b0gXqn3If9dpxUu5oVe4SfL4BPKuhs4JDAq0F/nAb/lQPE783dEHhyJETjSpMAh/t003sD+iWEj1N9V7vQIlAfaV09smIgR4afELga3WHZD0yTan0AhD4B/lQ7n6c/L+PdglT8iC86GUP2g29w4gfO7W5Unkpdwg4cFP1n84fLrsiyIBPq4c1QIORIEBFHe7Yt1kOrPccB2ygDeWMBE/keqCQqlEPOPEAEYgxevwILFT+sCxHv8WPdwCy/AB1zhYVo4e0afMHS9FXr/58WwKwRkic/8kvoXxCdmkJIhN2HN7870R8LpBiQua7x2vS0707+sABFRhK7rB9H6PrOF1T8AoUhygE+O37LgrAGGBdvhRlz1IGt/t7QHwgPu1yWnfd3xcV+WHa4FngWIULp076bO9YJ67qJ4UymrvuVH8VW5K9X89yAgAGDhHwCA2DfEo8onxNMHEY93gXa+D7xAFtwhKg5moFGpE/H9ZU3gV60kxZcVv01l/pL4JBzEBS+ogIwi/aDSoPJLpH7dM/Qj3eu+CwLwCj/BYVHnhv5a8h/Jrr4xgh/ovqSdPnIOhFQYw9/wEWTuBfjrRJpNtn4n2qPs+SM+LsKGFeKiYAW6odcOSCkH/Mr9V5c2IF8Be2H9zp7/iFyQJ/ynsAAawvzJhw82eaT8C0FgFwAI/FX4LHjBATEC1SAEVYNrmp+LYODDQlH1RTb4OuC9cgDZnTwoBhzUf8cxCH8BwsHdAf6X6Ob21Sp+Qi9zIXkpcAAKiR0tHaeSf7N8cC4Pty8Q8EEJciOYKMBhlQH/ksPwdwxBrgceIOjB7S0i/WW9MH0i+jXhA13PoAUBAnfnhv6DhL+ribenbPCV7h/Z05R2wYE1A+4BFfAbyX9hjV/Y66M2iPFPTN+ayDyDxHPfp5BVddBKIz1QzQeQV9/GAR8z35PHV9HTnTUI8AE1/zvQDzeyeRT4LGv0gEb5I+mreVgtAuACIzBNgoHm5y9F8JdxwLX8E9N3Zf6VBUcEgMfin2f1X0jrhQUrBHp7tAC5pPerVwgBgQO3u4PF48HGAtXrasBXxbLik+5fKkBCfcoNhwaApL94VX+2AKr/+3rSgzWjfs1ZsAYbMEH/QJcHwdXfsVC8Fv91wqMiTwEgGvAAD3gbd6J/R4rZ++/IjEDXYmnGj0OIPV5D4PkEDHTQTTV3wzufV/0PKmD83xs2RACoL3BdyAGnXfQfwlmgfFXiE+8ffWBgwfFWC56oBkG3Vlg1c0b21cuVgepPKnC8KHu8Un6Dh5ACYQ10B+ljHI/kIxt2cgOY6qSwT65jN4xIfWGAQPCGd+glAjtQvSwI/kohijfJz3HJg8PogeEHPYAB8Ah//ETU7wu7wx2eJioger8q/l9eT7pbgQE+xAPNj1k6rj7sjPmFChw26DnO3m9LPF8KgMO7sQv+/7nsXoyeoRyRQN7NeP4LuK+XaoA68NwngsDQV+/75r7lQPFB/ifBSyZg6I6uEOj3u4c8dvUkeiB+X1chP3H9q9K7kvw/YeBJHBhDOND/0e29Z8CRRj6p6KPUs+diAP2IAAjiXxeROMF/5xuzY8/j3+NtLPBk6bMW3Ke76+amuuqjtSso3+05KV7FfudML4sBbAzEd48QrHlAgIT+Svui6r8kim+QcJxZ8ZTbk7wga8F49/fuZPwuvqr+YARPti/5yJDAL8mFKWCQ/y5ZPwKfQgAWPeRClvRM6kci/qeRvvhBMgMjGcF8dbz6mB637xhwXCT+NuE5Of8kBkIXMAIAOP6j4E8AwCjYY+nvpbXLEMAfQn941d9DVtS8iHmq2EvwFQTeIiAyQenecugbNrAFQOdHXmCParBgDIQKcMr2XxpA1PyIffaFz+l+H9zVUkh1GQZ9ZwOOrOZp9T0HwHYRBwMDbuCiTAaYIoA5sBjNv5T+eoEBNgGiElPXufa6Paqyxu+L2kBh/Z48OcM/S35y4bMJuGH8vy8m90M27MgEiYCW/Q3yjVY8d6XecAC9wRr8wEUj5T8mQ6eid8aDjPpTPPwAC7AsXAQyCKCQUJygCYHX1AkeV4wh/xeRQByY7lQZyTojq99voSqS7P/s9LdLuW/nUPCASjhlAKIC+6JhAHEA5b9kBeB3KvAUGIgpFD3YgyOY+wtymRXNz6l0+JEBmQaclMBa/ysNgA0AXAVabBAg9n/Z1xgJZYQfr+yBun/jC/AptFQ3LwLe5jfbZ4qT+bemPw34UtDniWFwgpwCRakvinwTCC1vDEAaIT6j3aNLQyNgwPAx3m++WDUqLku+VhGOq9A/hwBUAvwIVWDUgogAjQAWQ/3y1vuf43/1BBoYgiPo39k+s3jyEQHngvfJAORVsFgEjF9DGrxMpAI59QT85XUZIL6yagHgKW5f5G9BsPusPt5e2L7253sjeFnxfln5uDICbAO5Fq6pkOQBzILltexzzkSjn6gAP+6uSfOd6o35r94x4Jz72GAn8QBbUv3JEgPY9OanRSGwp/JP08DlUv2x/rMkDsCQz7RTVhh0oP9fdk8USd6bRr+57p9Fb7nEKjBF5x+rQQKCVSoirzCwJDUwK/zkgu9OGgdUZ6k3vwuEcv1P8r088dvSQqg8OM8ucJpMGryuRvyrcf/LBwUwMXDCg53JD0m360+bqKt3Wwmu4VK8CoHSyt+V7U+LZCOlAX7iDHgxlwkCLy2gMYSrxsHXso8IWF3/cQvFF83kRbIMeGSW/XTlHiKihmqhE/oBE/zF+Ceqd7rueVkHfIF8pX8JSbHvr/Od3/VPFKcYyEA7rQRsF7yIySMy4L6MInUuhca8mIsBL2O+9aIW9PKCv+WH5t1Wmi8rhEVqAK7DnLT2bxLEaDwfYAMmRoA4gGXdl+RmqVyvnMD6DgCJBuxgBL7LeH9hBJPo77QCnH6p68H0+7AlchknMoG7SQSND+CC0BsTcAoAX7EA8u4kGP43N6gAOKd526UXZCaZIto4BfiTF1x0LYjtvaQDFyugL/H/fL63gktIB+YqnztY/RUBRwwDbNizveLCuT0yJALL6KcocdD3JYaFWg78LP+PFgAQsvj1cDiB8DeLQp/d4NncbVcPR75b5gHrNQvFgbQMuMdi8Eotf/DKF1lQBIDEvRfMABsQ/v/c/HskeN39sJ0QkKi/7Z5SBEBHmEmENBni7jBZGfPZit+h9RFT/oqLAew0cwiEv+zhzcztvy2SF7kTvA52TwWRBADQGjqOE5UD/KLrwTsViKUxCFcIjB98AvFPWfjMYkBdEJXaWp4ThkgA31F/DgOrXxrB677PyywwaYaxvaE4CEYtIDcEQnfgJI3S6xrUY/V5JPA8LwZFZFCj6EQNRpkSeGLA0bfvBs18WQ84NT/lyM9rwttpu9wYM8FVq+FEvXTK+wVb4+Ezq3gStZIAUg8R7aHwa2wzTnOC4AWOR3gzw5+bQ15EgmknzHYV/eW7BaE5FmY/cOlHDAFK/273wMimidXy4LCFcOqKnPTXJgytaYtFhoH9YARU/1IaL941P73Igk0Xie6UdxgDEwtgcZTywjvtfZm07V+3TqzrKx8YxD+tyjSyrBPxwKc6QCqAVvDv/XLFZT+UWQ05dYOkAJAdog7rQRL8eQYAbQPDJ/e4Ywq3EKzrul+3hwL2M8TIdoOUA098W/Pwpmf0WxV4uRhymQ2kmwT5GicmHX0AJEYZ/vMdc6uw4FAEUAvFKjvHiFXCQao3JvQDBx4cC/x152CRA+DI84FTleCwm2N0VMY4UmNAMAFeFIBlf2copNvm1jWCwKDBrwv/Fmy0AG1YeDMd2NCMA/hW+stttd+yongB/wsrGLOfuDEgDk+mMAAiVIh8Pdk/NXkr741LcG0YwJ3yC24dY5O3JteC9jD8hqUfgvdj7v+lZbY47QU/Tk1BR9YXYq2/bpIfvZdKMGKAnd9C2+GO9fC4N8zsjJxwA8XJCq7SUhz31WDoQL7QWwg8WDRD9Y+h8EUj2Kkt8ML7mfGoAQF3XhVbsUvwLsidpo6DoW11wIsQB0wO0aEQ0JIwBZLo/rHXKgmbOadKbSBJZK6qP45iVwRcNUO/ahLKGIBTYjpwV5TxL6vqO44JKQu6ynB1JeyJv8focNUiKYW/C+YKEC/idkIHzKKPAB6ou3swfvBBHAg2EKaW91X1rypw0Rx40oJ8i7SIv52hQRRtAO72RGKL8xVeLPGC3ZBsHWKFkKogHtQEx+h0XV3fwgf+Rh2uroYJTNCJ6YkJ6AT7vh9gTk/zpzn0aX/Aq97Yc/Zv1J/mZHUdrQvVgcZaCJZd0qD5FN6F918zg8rw3Smuh2D2F7Sju5dEdVHSHYzUCC/xn0RGBD64R+DAA2SPRzQM29b8rVmieNEi9IH6zQwKbBEBGAj50ZLOIAfgOrmxbwgIKGvggVMngXuFS/7t+gbjEyb8nfDbK/9UeAq4qDsHE7cONwwAgAZAMDd/KwkV76ZDZNQfLwwgeMGg15P3WxdkVBS6RRxMHtN/Zw7Qk/D1vasZ27caR+mAsbiVd80C8Mc9fHiHaeS+knn0Xe3cEDiA+MfB1H0/u+FPGUHxYbdoth0s8/6tOoGgAqMfXQcChAge3j/QT2SsioDpDkNFYK5KgHFXAJ4B1ajj4TfR3C3APOeBW7B3Pqj+HadQQphImKoDB1ywf328ICVv8oDgmza5+ZtxAfmgFDsgHAYkAwJG77oHMKAeSf7B6SEMHKk9zErDQREOGOBwD9gNOMDmrauLYGs56gP0jI/uMYIFKML3YK/IBDYC/+5RBAi4BzOggQHdsF8ZZjY0aVT4xbrAh7EJx3lUUgJ/5EBgwOjGR9BM2O+PU0FAVOGJczcwYHCHY8QCGYDwYOZhC5Qzg9TC96HPBni2wN6osXND/bjB9J1u8w5UDJqMjv1Yt6MrgxFwM9HeshnEuNA1f1CB+Rczs4QBbQRAeAOD8w8cGHW7jzVuFx49RkKw4/dWPOTyD7+QKXBuCyi4oZ3EDCgE+4dH9kAGAGNWH3X3eNSPESZxBtaEn4XoYAu3w00jMiBwoGEVgJkNcA2/9QLztm35DO2v6G/1nBSaF+VGMv71hGIEBoy4x6ermfwQvD4fmOsAC47NYTQoi0JgRUceqRGeH8fYPQIIHAa8kP6j1yQEuPVedDiDGGwguYGAQwgI3O+8QZGNk/3EB+sAVQPaPpgkh2keiBzs/jQuqMyj3x61MOABDMA8Gcyid64WHwhxQKA55FBUR/BP/3SPLhiB4PKGDkbRPlfadrRCYuH8cq9dyIRbQABO6Q8RYY9BUfWF/lf5AIXTVGBzysBF/t/mt+3havb90C5JFQyYIQXLBYEMw4Ad0yQPjsHdaJYALhs+p85junRfcbbM8/Au/GL41c5h3EuzFZ5YJw2R8X7rgOS2JxboqVX971Xg1TDcfNRuEv9b8gF4EN5S8DNClwDmQqAI3j860GUUZFACT2WCO0QHXcHDFDAQXMvdP9EFojaEOOdRw/TBRwDAoSUDLISAP1z9bZhV/j0eU4DXHwYpnU5YeHHaTjQA6S1cNY6DCxm7h5wF+iR4aggELg9wZEEPoI8IgNGBDkA8c1tlogAQVoe7ZdUiOvAAt4w/DqqhPmPXGGYMYymBQNtEAPRD/5u5OkWK+3enTm3zpfjhqIy5K2EOIJetqBwAVHh03OMYbDnErtBCgJ4c4hyg/z7JognQ1dUQ7dAIHZBwsCXBcTqsI6xx4xh3CIS8YkAnwJJXBGxvPWF1gYAvjkd6STyeFLLNIQcKeS71SXoaECTzgTAc5vHxflolLO5C8BccG81TWGh/eO06gIxDJsAjXcHtAQPighEyYQ0500DoNwYgfG7H8ItgsLiWeytW/vLKGTDPIabvtFUYl8lJu7EMNBETPKWEnOCHt1/f7zpS4kkb5DuHP408oN92sslYOocXRkFIHJvBIJ8eZwiJ5qr6NFTihICMuDnV8JfiZw0IDICZYbw0xisZVAKj1Z1JVBsiWZgxB1O2blgZ5R0FT9gOdoPp6ma0lG61x83Fui5MK6d+HIb+6rqasfCeATkIWo3x5is2tCp5OCIGOVBSmLv4XfeN2mk56LwRDRv6sKAEfgQTMMlMEd4d3h0gcxeH7Mj64C4M4OZJhAB5/n4QBAgUGm0Qetsh1hIDTq5NBNtGRlhmtEq3MCI4SEgGuTtGquIwMoi2ykN5z0MMF+4CB8AA3I+pQ/p5bz2Zt+V+m9AKIvBNN4ma/9hAHDwBxsLZhV75V1tnzxawvbwRCFQ5WPR4WE4IELoasmHaNL/jKvEERW6vQjwQx3Dj3NiLuyMvyItCIU3aN0aAWUmPLbPsCKAm6Md5Y6p7Or9zNqFA9c0MkTY/bzDqdbzmVuFgv8XWjw7NCJENTEySfQEefcCEXSKLZzh7+PCEANgAPN2p+k9OgHRAuiXxZ3XVQI3/U/eQoQrc3TYMWBQCDigbSAk+9wu0JhB6AwCVdHtiT3hKe6YxlwvBG+ya9WQB0O4t+BqoAMge7yeuizAAcOl/1f5o3EK8Hl5aZ+N3TPsIBYOBASONLh6QcuAAciHwIPDkuxJpioD2CgFzepdAAxPwXep5uDq+yvIoL/FgUwQ+xao2VofgCU+VmtBULqtpjaD1Mb9mc1XMd2VhcIdAOyREAwoeuABGcaC0qLV7BqvXOyqyOCB17xn18XVmAK1LoK8LJMOm0VW3ylNfBw4MFI9O5t1jcEwLZegsow14cgPtgb3QuAFxlSlzdqaQ9AdgTXncIA2GD0bBjHBo3obCrTy0KQIIA21mAS6E34P204LRToWvwIAdVy9lXFK8aE3M00qHl/mJE/FAckHbIKEL5Wg+vIJA95FKfwCai22Y8TZwQoxK0Laf0d+aOOBViJcywmoGiJ/WpmgFFCmHwQG75/5onZm1e47m0bL53bPS4Lqv2kAjXGid8mr7zH7JtIeWIwQ3s/iDEsAdHujSfLGfKEfAlQe4kj4pxyEMWGWdE5N5Dm1xdgqPCpQ4CH0iCpQ1gyeKrsKBZbc7Yq62z2W7B8KfguLSTApAH0D+oACoXrs/OdmvmF9agCh3K35IvMO/PIQDK631Lzg0CFohvcwKiWGsDo/bGf+0WL7Q6vESuwPIvCX9QrqrPgEArg1SM42fZ1YCgsDwfqXQnufX/hgvEAM94/zb9tIigP/TtVmse6xk8XlQGFLL7R5xblYyRXEiANAr0kqs4e75OvasgZhYEP6KIEAPtgYAVO8GqLHw6ZTLYnvpBedL7UcDMM/aNjHDGsCKU0JpQpBsk7FToiLhIn6cMDnxYNXM2x3XUzSOXZeFpYUWMITLw8OgMJghIWxfSr/NmFFcAiBqwJzbgp6rRHhiVgAAjsRGl+Y9TwrCAHBflObIBMOChadMck10TbfKpbvrdf+Yip4vaKfZDOl60nf7Xv50yDN8kAq0SR50CX7V/5bL6KwA8+xAA2I/8BIHqKS0JwigKaM8Y1A2TJk5Getuc6GDAp+UeMAABJZMPHPhgXPNB6sDbVT5aABa+bp44QEMH1KNgPAXIlDPDNhIA9aFrdvC87KohB3n5qTyXycdrcdbyyTYp87J9TxQkKg/pD+MEMA2MIofz/OiQPDHGjs90tw8CAOi8ucW/xIKPSyXiQ0ABHAJb8G4RaeH8MSIODwzJX9SDiz7ovWe2CAeW4qfu00ALAqC55zgbLqBcB+kD3t3oH86Eih3FgMJK4pr73+OguI1mAZCWJC6s1nzvF9ulS7xZU2sYAIBdgGqKHvcF/o8949ibHRxhT8E51g8BvgI7wUXkR7gBexOEiG3tWAQM1Ck7v+1B7RJUOyZhbjjzkYtIEA2istGYXWAe2oDVqkZqspwwf+5GxsoDxQDHQKCIxrDwPftQfh/bBych/cEB1mLmzMxTy5+UoFM/OdUIHulj0Hwgcmow8W8aV9kcoIMESKfaEjfrfwnM0adpHxE4a9pCCDu/4iOgG1AcAKDKj+uDh9wmDOe3l2l+p9Tzm6guM7+XvqBDfyf0L+F/95vDimi8UEYBa9LnBi3GE9wJPJXI7jHgt/x5HESuRMUs3cYE3CACsCxbnNQ/oAAaueDTKgRctuE+Jx6fCheRnzzJf0aApMGBPiBDQBPQONzdILSYoaHmyHiDAA7X5sN4GFTnAQFGAE9T04Q/eDmSPpo/bGpiVLBQFslFrAKT9tc/MKE4ir1Sx2/VH/mrH+aDpJgBNxXzN8xAlx3UYI4Od2YwiUaAFP7jfq9x3UAigF0G5XhA/3wum4gfhfIR/uHOcrMNrCNPoDY8HNxCwh4m/idDd9TECCtMhv1AHMuIPWAPRkebb0BVgGUfOZSOiZBQyPZR6LQz6AQEDCzCqD933gLRaC2tepfmfvEAggCzhFvzoCLzvkHHJ49gBdYlpAQerL7u653xiHaOy1tWABkXoGdAId8OnhQNlalko9GINgVxwvXCTTnVkRf/VwL/gIBb+Qffk4VH5o1jgQBDtcDYiCwywzpZbdu0AYB1BITG8mJSvgGOjdeC1mF+ONK/9ELeFyyf3AEQAh9oikEzSepx7C3ylnAbvCT40fr94wcYPofwIJh3u68CLpjIEAA2A0HEhMwiQ+gTTSYSJPCH3dcKtufR9JBnWyaPBgnogm7P4B6BcBT5dQj4RXrPrKhuoRB0X688Gcp/UvHJwQV2BABE8Y9XiYo6+khy5J4AsmDS205cQAAIABJREFUVzllBxuGaQFhlzKh2UWjC6IHGYjj5Al2r4PRo3PCxx7sYKuW4OfsBPiu+EL8+LPzcRofESAAJ0vSCoiXYUE8SjvNhEX8tA7AW6ng1k2eMBAZZTiwykhlIjzbP/qk7bOIReueD0kH0hJYVAUbFxSfpf9DT4Yt1wHcLDVvuvSz4LKIhLjrmq6Oku5jCAi7woB4aJuceCHwIDuJbWC0eXCVepiUP/A7hw2I1+NwpAIPYwWhTDGgDajU3jEEjAfQUPg1BH7Mk/CRz5ShntFtg/UA3uAKpgAPEpki/RoEYta48EK5C7KHXtHJcdP8sfLaITl/YAhHRBQFHM/TjvrwI4oA3c7yICDMbZr927sYFucImF8YgB/yhE+m/qHVEDe7bRLt9jtluAuv+pxKAKr8jsRPncF3N0nh+OCHXSDAyVCcLLgnuRAggMhnDjxEOA/YR4QpQZuxINoArgm+doE/Rvw/GglsOlb4gTqwbRLRLNISslC6s5p4Z6V1QDliDKjHRwBAB92/G9ZTgPgVpowf1A4XOaB2IImHwm9IO+8jbvJ6Bvn/tKcC+GUw/MEG/Mh9yHpNChRTgWAEVMIAf/KCdKAIHyil4b/Iv5u4YV42w2ADtAvUYzPQQfnRkRTF4mzhlAU7tTI/tnSfa4+JQJuhX+OAGAd+9gJsA7cYY4Dzc+gFHZyqKQhgyw85IZ4jBg1jdI7etMqZcnKuILSLE/h5rTiqwEaWwAyapPaRw84WijEh2IDHwRB4oBKwC6BcqLLhcJVnxXkukMne8GpezeRM9P9w41NVnRyXx4cpeGkQIRbEw+NQ1Gz4OqYdSYfHbRUrSBw4ksEyOlo4CQqDQLxs/IwQePQc+Ej0pyRXrfELxgt8jgE28bIS/pAHJAjMjuwbGQI6WoPOV+AdkLw9DKjHRuk76wCIHnpFsGmEAEDEoy84qDDw3JMewd1EhLp9+CH7nY5o/ytOBDQAZg7YMNh4gfkFBCgKNK4fetIx/3S8YZI6xWl/CIqb5I+zFfWENWKDZw1wE26I4RCAGmJcXEXLzhg41qRJIgIAC2iype0hu9s0C/gxqK9eJAJGBebXJtAlCSCzAEJgoH7QftrN+zg9zDMKsGccV4FW6CCXLkFRfmwZ2FYEgSCfu4kQAYf0jexpfVhXkXe7tRnc0tCcMz6ygPRalaj2WxXQv7DtLxHgZmYCTtEgAKxsAuQTP6AGME4yUEB6BqkNdBIUMAiIbh0uBoWvZHkomkBgkg1NcVmwTYsA0eVXbVYNM3HABen6e8EDyDZV3pOBFVgyAFKUH4YBsiI6JFFAQDc2AAQAZyDA/aBk/zAIOsgH7hQP0y1pm4gdUqgMq2e7f0g1kKtACP7L5KdNEfAmDtDf6lcb/rvtobpPj47WpQYoDa3qBQQAVCsARRin5DotFXAcCMA/OAVAH3g88y4Bop9iALL77PyZKNxIJ0afXkTjzx6htXFAzoCfUxLQtjHLpvyHvQDaAFyP44fN+WSMIDECuyAQCLiRZHIcGjDqD1My3+NRAwevBh9ENa6de9shBXHwpn06wISByMXdQ9us7q76Yep/0thWviguTV9cTIG9EJpm8nHKG8FfVmJlbRJKQ7jqtQgAZLyoHDMLKEDSp5Pg6aidY2fYy8OOAwPyGVMYGR9+7s0iFXq/HuqDWCJkBESCiCOSBkdLUHxKhWeJgkOg9TBdpWD8HC/Mc5fS5laZHyKtMlQlgQ1U0EaPEbGbjC9IUKAl8oNpPignxPGBBAE7WBOXgh64IhDob2jlXje0V5oLtpLQX+S5LxBgqgCxIsrpP1s/6kqIbQnw5eYWH3WAx2p6rIJKHMDJoNNnUwKFg5NBQr/oRJwrZWZKPj1lQQ7bwwbuXGB54Nc/WVBrawGvjOCPtQMMlqBVjteB53mYU5qTr6E4xiM1jS2AFGnyRD5uGMVI+I5TBHA3tebTohkS9vjdP2loxoI32yQYVICcEPaF0prdA/tjoHkWmqXMmqjYgKgQ8XlhFj/yDIjywB4tzSbOTrry5AvLAucnO1xcu0YnHgR0v8EwgBvsHe8oIlgn2mQbPKgnSEggwLEg7RUC6p977BNBGzDT3nHeMTVT1yztIIB31bYc9qQwSHXhrAI/eS0M2oFgaq5QrRzAz1wHKBU8jZVlIwiF4KIscYaE98G4Y+XnWKkmBK7AqYOUlYHVrJibCdNPDxtnG9ktBdtEHqSY1DA9cLccMgFsQsthQiZiw4AXxoINAFJrKJ+pLysFATjCRY+ZxGXyifpl6IxxyIVuBW4v7mBrpGefNkGHHX65eugm7wJO7t2kI1iph9aGwWAChsCAXm3fQ0yx7J0BV/AjTc1kvPuU9rcFEfEUPafArAGDcqAn4yPkYzSwuVFOmVvW1U4U5YKY45laxX30j6ffH8QAPJcP7N7TBZo7gAlVzOlYFpoiGyeNIx887BkEBDSIeF6lGWbtmA8vziJCRMfMepFivXhXDAXu7QwAbMY20O8JA6z8HAy5kfOAVceKRx2QihAvicBeMgpp8GwmaP7e11uwirJgssqYmWfcLabNggEADWpAy8SGN/CgtyYsCFwh47AROnCXuckP2m8KIrQcMIt9wXZskD78TzK4qhEYE4IfEDewxoOGsBi8YvqLLhDGZMHB1AEGgQNuAhZMNDpLjACUiScazPd8mimzrAXAgBYQ0DCxGpUpBHpK0lB92WBeGPziTTm0DxByxADsxOeO5B4b01H8vZgADYUmH2OA1eiAZwCsWAOhIQnIhQCEWzyhXgMCDAInbR/TQyeFC4QA2TvPHJjZNMnuKQzbHyFLGnR/XbI43H4oiko32CbmhfBFcu/po48QIB3go0Z5hqieMMSrQpD/p0mRzEqzKRKFQtpGzXvlnrvplR1naAQBK0A2bwg5GaVpZi/dgGxxvLmMuJLLuXipAb1OVOVGZGpGRkWQPTpkF9kUDqiKU+IHOCzwnsNAyn9dkhNOnB3F0ihkgE/cRIVZkGwWtE4QANA3Mj+hYQg4CQQsC5LXhsQIvLEBpg428y4MtoOoBbRXiVgxKxNglgvNFuYl0n2RQyci/vkhWzIx0TCuCyU58PMZ98vx5umtByfY0vwAJpVNfbqHcqA3rF+3mbcvri1Ar6utm7Tji3lhRvTMiV4BgDwZ3GROnGYMyPYXXh5zvFDgTD1wpT2VFAIeTx61GqfJZjsFwAm2DWtA08sIiYcEArqbtqf3GFnCSaF6+uL9WvAmTI0+oGc+ENeJFdEozJQPMP0+njoim8InNgQi9k3vqBqIadAhJyr5xewViSOn/QNMINqARibJkNHPIDAoB8QMNklY/FIFZmkElW58IpS8H7JgoNBgEBSwTZxnma8dEeChOOpl/xQlPVwO3oR6zgNp+RfuGfOLUQG1AHvQACCfImHFwbBhwDYkswRoExGJj4xgsjj888INDlwDlLwXqUUWSJSBe7OGiDD+GiDAwRClBXrkApE++VXBvynhgP1VGuKO/djtvGUhP564tTvI9wkDzAJSAop5DAAkfo1K0LQ2ElIE9JcNgZvmv7IpkzAwCEONLRSsUTAko3ARASOvlkzcI6ZF8WmTYuhO1UDdFYYVwRAr+4XpjseOgWI41gCiuxc7MGBleEi8QM9BDGNi6G2yd2UDyD5gQ+y2SQhIXFXdV2KFB4M+9BgPTxMfumQP31p1OATUA6RCTFCQgijduGeeRqjbSetsBPzcVpEDg/pD6BRnCLRiBofBgABxK8tjEQHzqR6Ck5mwBkIhgNCtku81HFZb04tGzN2E6yIE/pEwsKzRC0y6MEo4UH2QIPDYnzEBSNwf4iIAoG2MBuiFFbKZwl79hrgoZsa8pSW/i4pQC6LeZrdtUvOfrdyVFwqAQXFA1sB1WANHA7AsMlaBumelKIjUO+ySkTUi2jXO7dF7YgPi4bOoAHMTAIBGoG0E/8EG4jQtF81gg3NFBglj6U3P28BLJpde4EfSZ7IAqFJDGlkQ3hlQBhfRJcB8zYXPm2AATDIpFYO/uDxyj2PmMC4kT0BOIDlwLp48FGKAQHml8h8a8UADFOzd/CA5NcICjAb1Dc6PPql/FKeCeHCB0ngOS0D9PJxHVAgAhLFWNRB1d8KAWEDqmFjihBjqizDixwXyLdYDNfvdbW9QIP85AgCCClQVVQOAVs5JSP6a+cmsxWgBeABGLBJelsWd2Q6CI/uuJ3UI6fLAyoAOGTHAlUCxhtwhTIUR3UbPDRJO24R4Y4ScrRnPXOUkABSAEQAMYGE0GIw7igWNDnC5hN8Z7ieDUMjURotXLfHAAIetoJe0i/8ToQ+CgwFNsxsBAwtqAlZKJ88tM5QBOa4P8bRFGhEnvTFHBIBXL8hmAOhvKQZSDWjw/Zji3JAGQ/I12sAhWx20VeGf2BeO3TAQWsJW/BezWjS8GBI4YH4y01TAhcoDI5dKuVMG9YBxj17ArbFPLD1qMz1lEfA/9BUCAHgQsD8QD+DduEGKNL3miFIiFnutFkBJLi6C4KdJBF5OqpH6s0aDyhDA5uwoww+0jzR4f6LYgJJBzyhA8DvaU4+b5bA1ZLXnbflYBHqKAWQnGCwAyl/Cs/BmWTfou5IsD6qomM5KMHhWARxI5syOgHmIMXRz1gGOCCUdwJ8kbPYwEoqaY1AHPMeE3CZq83948LpxgljAQHjaKjAlgS68e1H/dmg0CGzo7QB3qkq4EKEaw1YqlTZvSmKb6YZKXECTM0HDIY6IlFPhX2NSGMzAckcF4AMSNBKK+YCSf2B/YLpXBuvmXuQPB63OrP2IgIGIHxrV9Aa9A3QHUJjA7zgrkvRtG6PB4qUJPI5L/DfG5UkU3GsySGWa8N46AgCp/7jwhMFVZC/FIFoOO1ZdISbpa1vQIeCnwUEzCJcQ0AsLOBLG3JwQAFcLn1IxQjdh+BBNXnWFgAsTIBEPxRxNP5jAJ3IAgdCQFRykKXRUh+gF77IsiiVis3WIZwfzRmKm3j/FEHhIggNVVYyDm4ZZzhhokPBKuCDGoIlGqxEONNw9cWLAEBvPZyz+Mp0NBzxR6XvNf+RlE5e6+8RNcgEDo5wSkraMyrzoCefvU3scj9qgcMgf9lAdigBYw8kS9EJgw9xvlPjw5IdYgT8TM+KmT2qjxWUxjJsCZ3Wpg8S96HL6JP0btCI0iJFoGhc7YsAGhIhw8kQx90yusU8uFgR3s4uM24O9AACO1yMXgNSDokeLT2UBJFsJx5H7ioS+SU0YWpLqwgbMc9wZ9qDUSrxIw0JvBuMGYkEIhNDQjMO+cZO0hSwTHkQ3LhIErNo9qxhYdWlcNwmoAYgAQPIrzgIqFrb4PaP/5yvxiykEiiQNwCaTLXKApzP0Juzvo9mLr4sNJCuBDBj5bBg4HQUPIvQ4P4n7xikhXLkkikMjJ2oY3/XoFbICj7gaiiSj/CEPyEnsyQVGC2C+yWwyMbz0Tl0gIN+BJqGlsXjidSz6Bw7JwSUHHLhp0kbZ+8juYIpOwE0xBvRpwxANTADqfZQ/HrJKBgCcXHsl7iZ7TBCAPNB4Zejbq+VxYoDdfEU1JqayIfRHwy/+37ACrc2AXmCRUChQD9MGY+84Q95xFCAFIdMnxMVfcQNYCH0g6RznVG31/UWwIAxIANewHyjyCVFuk2TgqRiIC6HqUjUQTMgH/KOXHJxSP2FqvIgZkOMWpEFUuu2dLIkeu1aGpSeeThreWPwi4lzQP9UbBLSsBfI2+xeRYD+nxys9jk06QbXkNaT4HywayBBSJMitcQuEhEEL0AyoB3Q0LnTiWZPEAYqADh2c+KRYkFIjMoKV9XO/QQB6jqal9ztzNBheKNKOAO08VAQ8eNE1Bjs2/Ul8In40iBFaH9HhwuQM78u0JmqgPpDCYr9yInzQfnksiMK5OqQUG3v5pqqal9T/vOAA28FWzJWmA8VlNcRsw+O1AV0djvlPhgF9EUxNDAOoPD4GDJAroAhw5Wqwp/FyGgofDABpBvG6Jgw2AKT4ncibSy8ARoBWsojY5lIFcEjMtukecewLHHQheIhrA9YQSM7VoAlsZt0qENVgnOxk2YkXxnjQnpeRWTQsg7aHeTT/XB8AN/gb3J8w0DQCASDB2oDeLI3Qagr0w9IGRAYAl8eHwZTGMx8ooMCYLEXAhNWh++gjC8APHoR+zzP3aLP0ocOUsAAQR6muD/aCfyGf1AYTRKmQZSrQ02dPJ2b0/WxWB4l84wpU5IILCZXR0UKS1sUogNmACKCjmaVNVIYMep4zqHtDkAnYJmlmaUIx5IMBeOcFGwmj6G2jEWgsAmRwBo5VgoURdgIbt8dSajjY5GdInGHD8idHKPWQGBDDVPVRaZ9wvDpS7VERDjM4bn9SE91iVoMgG26qPyoBG4GqlbThoiBC1Jvx8U52yTAHqNPAuILECFIIQNQ3TadOgPcNBQ8AITHfIgtWOk9LVgg1C4IlMR9Hi0kypO6v+aMR0GoRy79pi2R+nJwh0M9mUz7tE3OaF5nVQOMFerb/GAc5jYRZ/ouevQbdYSOO3acT1bxUBNdVt0qB8L3fdbcsewTXaAL0HRQazYQ0gG4lJsR8UtcGSerxTBlqD968mZWBhiCmfbE5aIgZIgWCnbtPJgRY0oBgxIaocaIw2ON+UeQAagTZQE+n6okBlO6QR9OI/OP9h6u06aDwAopFGBUAA2RAsgyIy0+Yp2ER3H8TXZ+hXUJgvMrewRFJin/RAcbAfYGI4A6rBhgO4CT1AwcpU2GYmsSlLyJdFxyHJlL9hSKUFgmYPlAhKRoFRABPYTourwfsk0BIwOagXvOfizgIu6VKh1sAFmv7lsXYAxgnPfJRrFAjCWk+HSaxywGDHs9Y3nWE7G5XhSXpT5XhNem5QjRaL8TgmFRgPk4DGPhyeszyxm7AWoHkglCpbOq7X5e4UWpRFnBUdJe9E4gDShBwcQg4sHqi3ktHrCwIx7L4OBZVKSlBc538l5/twg/ZRDAJbZHIXiaU8BiG8D2PpzchB5zpNeA1BiUfF9HKG3TH+jP5Kv8la5Kc1DFOOJTWx3NE9qQv4in58Vg23VCLKjTN3xwCWgFos+vb4kiEL9TrPkEdGRMRkIgdOg4CM8quq8t6Mq3Rclr0pJsok9iYdhHB2A3Po2anNW4RjO1QeYPccisGNxRV894KlO8Z0KovFAYk11MrYgEBNJYB/OCQqAAyAHhS12VZu8HVxX3Ndkgg4vXcaG0b4o1lsGAu4/LoDKGkJ94ywXwNJ0yFf9qI8MvXRJcXViKvmAMDpP6zGTDIqAB0BI+DZkYNFgKIhzqQH+47uIpbukNEAbDi9NjFsICaZ3DM9GKGhicb43bbFWAYsNzq8eGGsmyKr53gFQd47agpiNanHcP0lJdCAODlsD03D2azEFNPxwTiIZj17c7TVO1WQRE9jlUR6fPBEp5PWEUWwI6RxcxTfKargk+rA3CuWdfUQ0x6y3dEN1dBoQKhMCbfmoOnoCKwwIdQyOGuiAj8YIlqkH/d0TGgdXFD/xUVQDlAzSHYOEkbqalnAjfZCvV7MkfcOv9MCwICiu7RjfgGyvKjxF9goNXsqEjOlbauQGOhjTMiXIKnG5KOF5yxCecl1rdbuklqMWHQSiOE+TurnFJOB9Xveu6s16m66S75DAG3DhDQBbszNGXzye29SI3wrm0EAR7MnM/If/KAOvjexlUR9AWMexJ9gfKvb8V9Mk2BagNU5Ng/TvPkac7K6mVr3TM1Azb8yXwAWsHAgIcLAICTV5tShVxaoZdfmYKGVADNHezD9Ie305gIAvAiOsEBR2YMHSCfT8Dt8LxMQsINTp4WFbBWUE6R4EE7VBz3squKTxfIbKFpjD0bgeJGCOi6Rx3eTtOUf6iP8K2tCj1fPh3J9lQjgN96QCi4sd0nivG8VNQAsADFjQ+aShggbVLpVtJlkm2FNIseqV9MW1xq9/MZeqgCLvzvoQsgABaU5WfvX16GxYAAIB7lf5EQUBTgMUl2XS0C7+is2KIA20cv3dAJsBuYMh7IVmqavysnj/COGt5WlIxRNonQ+VqKbsT/7zrEAUSG5Uuay8tFEi0vNwUYeZJyUPUjtwOewRE4PQDe0OML7AMD2AYCA8bFzBCZYsQzmbnjtnd4x70A0D+ze5rGvcehUTEAPvNgqd0WIADHL9NbAn/clF/Egk26Wor3BWHfHTgdaTuy0aEQAgDeBjwcl07IRdLhGF0AQF2wDQQExHkBggAT+O1r3FDKh0uB4GWf8W77Ym2D/CUC3IjHT9fwzlAZmsLYwxc1gYuwsKkKcvUEAGCCTyczbqhvADOhng0g3lMQgAAIDBjzVEBoT/YSw6wxj/uhsB2eNpVEE7CnAfAFD6bCdQ8HKuAQkXx2c4MoKCwXioQLTVJCYU8YEACCdweNR0F1iK4ATtJ1FvV8ADrd3xAB9Y1V4I6NwUqy9QRr3E/OdgK9PgaCC5Gv58/HsXGvMHCrHyj3Gu4GfHvkm+qmPjUJFGf/b9GAKuAg5AUlIC4o+SMc8I0aZi4j/6LmWACcIBw4vMTxGZNlBHeKMw88s2DZYVM8jmFfyBMaD5BYwnSK5Bi8QIgESQUElp2+UQJCeen0LzIjRoDn+WAQC2AB4BhZ9J2h3Ty5gdqzE0SPiDs/oxIkOTGJfVUceO4Bwsq3NweMaGeMCYbPuUDdsU0aSPYdg4AwMdgcIQr+tKIgDYUFkh4oBjuAIR8pvUPVUqtXq/mL/LgZL1jwmbtG+5eIAZ+MVNjZ7xPU+VVvD9TTxyWXv19CIDig/8MMjG8Df42cABgk9cDmupDKcQDI3WHhF25oVTvx+F0dWSCkGl0AHARvAKaQDl3mKmCSD2SqINTDstcTzSBZATECT7M1ZD8rwIIKQAQ78oE1i2oAHUBNgGitijxgFpS5HSBvWIj5A+LJp4joiX6jA7dOMgB5JDeIbKBjp03lw6iClxCJP3ccCYK1v4V9IU0JSjhwEQGMAQAY/0Too/VTTqg1aGqu/J4jo8bkxIEBIHi/iauvE7xHnWeyixubP34JQFCwGyQIRKGnAOBD+BZJ+2it56lKEZhg94Vde4BHoP9Wi2UKSanxzhEKhIcaq0ZNdb2gGs0iqsDmhujp4DN+gU9vhHi+L0gbwAiqSRAETNO0WO03WNijGdjJBTw5EfZsBZf9EvYRAAucVYu1ACDSGQ1l4ddUpcBvIQuohFw2F3lAIwxA8kWva01x5Vmhpg9iv0JdIYR/Nbxyk0gIJwBo+pPdKQ92mQfypPVPmMhNNsCbk5X3C/l7nD1BsR+8JXJ/gwFtJ3xALigPzs7fLJsVYAP5L+KNhcz8kJCvSEIg+YohgoExMoAcQWoAki9Z1GgBCPKcDPs9HZt4NgF4nPWNjX34x48hGqgupml1zd6QzDkmsFBEjUXSJmmeC6Ewaz+Trzgnu8/k3og9Qjr+RF0oQgQCsPJxZf6nxAXEs2TQCDAslj2OSrrKBJfxfqcYwA2YClozzcl5NOD4yvCo0UxAIe+0TCxeYHZR3w0E6Ms6ooKVXywBRMLyffiGQICNgM0MzfXE+g/J3xOR8JoXw2AWwvIA0MMhBrX46KLm/Cyx14J/8gngHQALYBECBIYmBgOxLNYUUfqqBWwNiihug3ukXMPgDrCB9pAYwBXvKeGBT9J+LXgFNkAgcK6IXF0e1tJudS0WwLEr6AwDJC6X1E0MA2pCx4oggQBHB02Ryl8wrybAMiB+X75n/m0hCHhNPZFq+v+eXA71u0mILjngob/kdqs59Ks1CLCxmqlWsVpjeEQBEnJgGMosI2gwoFfHbsg1Dl+ppydoHG6CAQoFOBZECIyLGSmYkO8R/gwBr30wZAN8uh5wAsDtzuUf9NMY9NepDURODGIPJEjg6Ajip6Huh8YGAeEZ6zErfm2QHs2iVQBhi/yCAoF1gPqiM+pNrRD9v4/L/jwyjfMBYtA1AG6xHlUQEGKBps6wMIgxAChQjEwgCB5Bcma2BEUdiVAfUKjv0xKAsYTxezUFggyMGw5CWhgEy0n8EgPuvAWK+sB4VKYUhS7l/0APUJBM2f3nJrATZRzi6xYCnDjUtLmsVD1QwEc516m4jdsX22eYwQoE30D6sSF0MVP1MN/1xg2YfI/NAfZG4CrBtfx3cAC3m8i4oFJAtP1pvqpFos4ECOwVaEGrJhZwPUBj/aLIYh5xecY/8lc3oyd1oZkRMuB+l43jiSfkfEj2QNKmWB+PGCYNuEaAnzACgLUgsfYo5iHNWvTJkBcwIm8wOgSfOHCiUIkwazUB0QnWGejJ9kVmkDmqC3WixIDxIgdmFkDkq3tBJRpa+GNZrnUg/CYwoB7U2GkdsBac64csW9GToR4iQwp5gmXkgdfYIzFWyrHqlUhef/KmvvBmreaNayKTnZ+zW2V46kgYcQJ+3zVD0i0iWQ3kfidci5xUoVm2AO4iy2H166SiJz8BnBkQB6cgX118RnfUkDph0s2EijUj4H4uhFAMQF7Qdn+BP6RjtskMXkSA03JnT1arB6jrkkvUhmQJf8o6v7r6fCEPhtm6wCTwibgoUseQe8LCuI9OaiIxK0yYQPE/b4WLdsALBs7iJwOoiT7Qj9aMNSGv0326mmg5sfwDDKgLm+VaWefoz3ighsL8niiBhMPGBmL5f8dS8NNzMOglEJBCQU4+TCOeTMRH3Rjq5Os8G2TxN/gwpALX1wqxnrC4aMIeY/0l7qvPEZBVBBsz8i/IrnEaG5ByAUuBVAiVQdnqApblrABYLgw5AFc6MO8mUzAYQxejQKWUEF3yD3SpTyiYEyV39mSanmL9IiKor6oCJji64fAQ2BqyMB90zrbiXLIe//R8TDmXi5JF4R3nDYw3U4gu2AN0SIQNBSnqk6gAiSzKxAQ0CI8iNRJDZ8LelA8mLqpT8Wd2MQ0Pi2IcTYNwUg7icH+XwmBcG5JiYSZ+iIC7QnL8khwA01iWwoAhjQlL+iYRRxhbAAAJB0lEQVTcc5Ajih++hm+U/B3SnNTrCRldUZzcICt5lH99NgqULo+xMVK9gcesH039c985LN4lPFo5TPTxFDE8tGy8F7VqPBcoKcXTVPcUCZdAZVkQD+zyFf2REPqVgpehqzvDgPIC9HkClEfIEjslL3d3bZE3C6Wk6+z05Hhemj5Lp5UvPDGByx+A/1u0bYAtCWk7bMtk0dNLw4XzYyDo0xItIACpLJvY43RtBK45kMTL9ZVnoIJp59UWSoPIRFn/LpUPqIQufDrRvkpJhGpF+O11upXRglGc0anJp84UWxTmIvmAWlCWhRgBCXRLu7ZX8GpCyoAyA0FZvL5O+WLqHG/cAyyGEJfHOd7T6vCqg8dXCQR23CWEa6lQ/xLPBZiuXRbw4recVX+qBJRR8mWaHhQAf80nMBTKvIAhuXzJAK6PF281pqM5OniyAB4/hZ0ApPxkDeiUXrIRyBFcM8XcEIYMO+PqSzRaYu1oFTR38mjSiVkFWLug7Zw1lVkUxAzqTLtDcpUvv8i8o8kXLzhRMwskCoLOONgPgL0hK8/d1xPJOB3auWViQpNEeU5JdqWrOZXVjJ8rX516wPhYKPajASzFIxRSB8SMIvECqANl+UoB6tcBwQUjwx+nzUF4CBeOGoZmoHVnOrlvUM+qF1z44PpNuZPeRq2tqRIHavVDop1YJCn51/hnGviq1Go//sFYPcyFX75CQF0nHLii+MSyGvZH4Xm0NDuFT9701CLKxpEsIa6QQfN8wL5xWyULLoG75ngKC80NKU/QpZ3gFFGeNhRkB9lwrnxiQPnaCd6u0sP4rKxzvgF0x7un1nBIEMAMMA+8XTdbJzyxesXKt43tS+zF6ygNijDneDgWAmLvMnIMbAYHgqjxxWDTIfh2IRGFJZ+kL585GAyx9VktXnuMusO9QbRvmvbIwblb6yJ+Aj0hfPvWdWWp5SsQBd5po0YneVw92ERn0JJXR4kAvPGSc4GS3V9w/EMhzxEU3PdWvHQDZ5rqFzmCBlH12ZwCu8EgjniWBk4R8auMEeB50x6HjIrOc6YP77MsCABS32V0PDqrFTbXp6o5wrjUAKiUcIBC44b8W9L0FGWOQMA6WVUU78OAm6mnI6jOrBFzSnLFY1UYCncZqg7T1TsuqzHpZc2OH98xqTnagm6QYrTa9W4AzcDV8i6GfUQqqwDofEn/oBRtLstCamZq1MryygeWl+XhkxG4UoBSPyjIoiA0vOd7N3Y3KPN291sn/x4CmA45VXYge/6LFNkBC0SNB10SL037Bv8UrZaUhk34hwgGyC/Qc3xbjKnuJK+3SvAqJqxfWQx1qSX9Z6StRCNNBhq+KjR9Qy9f1myGUuNXRJffcQmQixpDJwEA+Uf8D9gmU5MdYQgQZPmNckh4SWL5mfI6yaLJfZY5aMoyUwQRLCGagU3BO2YqlKyWJf/1khdrOrJsUv/oNCKKMbCWyFjoZZH0NfJ7aFgnBHTI32uqy3dOIDV4daTPSFzdSaSbBV4KIDEvZTePpOMnO+4yZnOD6D48SjLQmaL3ILXu+oGmvtAEiN0z6VRDXqXkeE92PMnVsAyrr3B/CZryrEasgqQBpCrEgJLMU8kVivAKqj6jhgUsMTuXXUUfBieRrvazmSVyNro1W4Pw2dQcB0bbUlCaMHQvwr6zOaiL4m0YyJipy/rChJo0M8Ic2UDJORQxS6rURPCWadkqq4rVJOhBIEFgCE8aSQBwsUC5TgaollCH6gFlZgOYQeV3hs8GiYEEUfnSGr6UoSgCAUEtUCijGpB90DCwwfccs//BhrsaCgynxQ9hIiMen9QFcbi2ACgvjWBZfvYCdSwhZAsIhdF+VXt2hgpEeiiiGpBnwMinY6TKuuSQLPQM1CPOtiMulqFbQGsQ2EO/LnlhIf8Puc/GrSyYn1FepcZB35VDYsfIORcsjf5HZ1Cy6AkDaJtJA4RdVNtiWEgZiMJbTeCkIFIOJgw2nSF1YWpjTS3RKD0pKbpihFBtMYb+lv7yjIbvLra75vdLRoCJmkupT2n+EXNXSbTJB7IRLGPsSkWPzgbDtkkKHUUZl0UKUf5aZMH0cRRQ1onGphD4ZAzqy9iBLWQZ/YJ6glrsTAwaGCPSk1lKkh6Bj2FOWfKiOPnvtAKqdZLYG1UovMtIXFmLV+YQszRGz3gweLH6hgO1QiovBZRF+idR6mTnytp4JNpwxLG/aD4AlxBQ1lrgiKY95r0NMmaIFRFe/y+jTWRuk4mum2jpa+kNTgO4pB7wW/hLiHFKEJgNNZkAsmtR+cUPcExMwJJsGLfG8UJGZ5Y1c7vPPIg5AnFJ8U72tmZ3WLITqNVrl0nE+os8gOitT/avrktbV4hQbyjQ5dVLMoklxwOmRQFcuElpSo7gOC7s1ABK3TPWigopfQ6U+3Khpsxis5pX10pOe6Mtqr4jvb6MBMuso4jIbopSsEEWuCRAcjLEsSrXqopYCeKUhkPCxug95TyN7QwYtGJSaC0gZuik/lHdJVWKsacpBBW/YEGZPS+lesa6wP81ejr43w2in+qTdRFrF0UsgcrShlauETblIEWPzqwMmIhIX26UARR+sBeI2RgnTsYWV/I+fxn/X5fFbBZclloyKmJ3YSmxWW1wTrEqOy2qonRS1iGFlZY/4kxT217VzC6ghAX/tWK0NEXmMlVS+Jnqe/X/UBUuIzDKOhbcGnL/rIBlqQv2SDmblJI9eK36Lgl0HVufrhvBSPqDLAazYS9Lq+bGBNSRAVIC+zobLFPIiJzZ6UvzdaniLMgk1YUaQH5j4LcoLxAzAlpdFmlrR82Gskt7IYhiqgXp7gmSbkOAKtn/mmydogsyPcXfLACLt0mCyGgG1cnVsbZQxxyCjF0ZI8BSPCTpiA4oIHopMi41OYxrfaJDRVJMt14SVa2M1gjfTcP5RFnYKD0PiX5jDGxqVGtoUaubjAUkXpvhBS9TuoidmvQkc/QFh0ODZr+yZgpfN6kJkHiwqSUTi3ClzkhMmaIKsDcs/0C3ev5Tg1lpjV5JTSu18Y5ajQ1uodRolwxAqTLVOnGtQaSSyr/VmO0SUQO4nlZqOB4rcoVUDkDv/gOWeMMw6FULlQAAAABJRU5ErkJggg==\"><br/><span color=\"#EE5500\">Sébastien Fourey</span> (1972 - † 2024)" },
      { "type": "separator" },
      { "type": "note", "text": "\nSébastien Fourey was the main developer of the G'MIC-Qt plug-in.\nHe passed away in October 2024.\n\nHe was the kindest, most caring person you’ll ever meet, as well as being extremely competent and passionate about computing, algorithms and software development as a whole.\n\nAll of you who use the G’MIC-Qt plug-in often or occasionally, please spare a thought for this wonderful person, Sébastien, who has always believed in the magic of free software (discreetly, he wasn’t the type to want to show off - in fact, quite the opposite!).\n\nThe world has lost a talented developer, a great teacher, but above all a person of great humanity.\n\nFarewell, Sébastien, my friend.\n\n" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2024/10/11." }
      ]
    },
    {
      "name": "What's New?", "lang": "en", "command": "_none_", "command_preview": "fx_whatsnew_preview", "parameters": [
      { "type": "note", "text": "Here you'll find a list of filter additions and deletions in the plug-in, since your last visit. When you have seen what's new, press the Got It! button to reset the list of changes." },
      { "type": "separator" },
      { "type": "value", "value": "0", "pos": "1", "visibility": "0" },
      { "type": "note", "text": "\nThere have been no changes since your last visit.\n\n" },
      { "type": "text", "name": "New Filters", "default": "1", "pos": "2", "visibility": "0" },
      { "type": "text", "name": "Removed Filters", "default": "1", "pos": "3", "visibility": "0" },
      { "type": "button", "name": "Got it!", "alignment": "0.5", "pos": "4", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.       Latest Update: 2021/01/18." }
      ]
    }
    ]
  },
  {
    "name": "Afre", "filters": [
    {
      "name": "Contrast FFT", "lang": "en", "command": "afre_contrastfft", "command_preview": "afre_contrastfft_preview", "parameters": [
      { "type": "note", "text": "<strong>Enhance contrast with Fourier transform.  Filter by <a href=\"https://discuss.pixls.us/u/afre\">afre</a> 2019.</strong>\n\n" },
      { "type": "int", "name": "Strength", "default": "75", "min": "1", "max": "100", "pos": "1" },
      { "type": "int", "name": "Amount", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "int", "name": "Iterations", "default": "1", "min": "1", "max": "10", "pos": "3" }
      ]
    },
    {
      "name": "Denoise [afre]", "lang": "en", "command": "afre_denoise", "command_preview": "afre_denoise_preview", "parameters": [
      { "type": "note", "text": "<strong>Denoise.  Filter by <a href=\"https://discuss.pixls.us/u/afre\">afre</a> 2022 Feb9-17.</strong>\n\n" },
      { "type": "int", "name": "Radius", "default": "1", "min": "1", "max": "10", "pos": "1" },
      { "type": "note", "text": "\n\n<strong>Note</strong>\n\nG'MIC's preview is inaccurate. Apply the filter and review the results in your host editor." }
      ]
    },
    {
      "name": "Details", "lang": "en", "command": "afre_details", "command_preview": "afre_details_preview", "parameters": [
      { "type": "note", "text": "<strong>Split image into detail scales.  Filter by <a href=\"https://discuss.pixls.us/u/afre\">afre</a> 2020 Aug10.</strong>\n\n" },
      { "type": "int", "name": "Scales", "default": "2", "min": "2", "max": "6", "pos": "1" },
      { "type": "note", "text": "\n\n<strong>Instructions</strong>\n\nDrag preview image to examine different regions of interest." },
      { "type": "note", "text": "\n\n<strong>Note</strong>\n\nG'MIC's preview is inaccurate. Apply the filter and review the results in your host editor." }
      ]
    },
    {
      "name": "Gamify", "lang": "en", "command": "fx_gamify", "command_preview": "fx_gamify_preview", "parameters": [
      { "type": "int", "name": "Lightness", "default": "50", "min": "50", "max": "60", "pos": "1" },
      { "type": "float", "name": "Chroma", "default": "2", "min": "1.1", "max": "5", "pos": "2" },
      { "type": "separator" },
      { "type": "bool", "name": "Normalize", "default": "1", "pos": "3" },
      { "type": "float", "name": "Contrast", "default": "1", "min": "1", "max": "1.5", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "5", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Filter by afre. Latest update: 2017-01-05." }
      ]
    },
    {
      "name": "Gleam", "lang": "en", "command": "afre_gleam", "command_preview": "afre_gleam_preview", "parameters": [
      { "type": "note", "text": "<strong>Add gleam effect.</strong>  Hint: Try different combinations of smooth and threshold.  <strong>Filter by <a href=\"https://discuss.pixls.us/u/afre\">afre</a> 2019.</strong>\n\n * Experimental filter.\n\n" },
      { "type": "int", "name": "Smooth", "default": "3", "min": "2", "max": "100", "pos": "1" },
      { "type": "int", "name": "Threshold", "default": "50", "min": "10", "max": "90", "pos": "2" }
      ]
    },
    {
      "name": "Half & half", "lang": "en", "command": "afre_halfhalf", "command_preview": "afre_halfhalf_preview", "parameters": [
      { "type": "note", "text": "<strong>Stitch left and right halves of 2 images, respectively.  Filter by <a href=\"https://discuss.pixls.us/u/afre\">afre</a> 2020-Feb21.</strong>\n\n * Remember to set <strong>Input layers</strong>.\n * <strong>Match size</strong> doesn't work in Krita.\n\n" },
      { "type": "bool", "name": "Match size", "default": "0", "pos": "1" }
      ]
    },
    {
      "name": "Hessian Norm", "lang": "en", "command": "fx_hnorm", "command_preview": "fx_hnorm_preview", "parameters": [
      { "type": "float", "name": "Strength", "default": "1", "min": "0.5", "max": "1.5", "pos": "1" },
      { "type": "int", "name": "Contrast", "default": "50", "min": "1", "max": "99", "pos": "2" },
      { "type": "bool", "name": "Invert", "default": "0", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Filter by <a href=\"https://discuss.pixls.us/u/afre\">afre</a>. Latest update: 2018-05-09." }
      ]
    },
    {
      "name": "Montage X", "lang": "en", "command": "afre_montagex", "command_preview": "afre_montagex_preview", "parameters": [
      { "type": "note", "text": "<strong>Generate montage without resizing.  Filter by <a href=\"https://discuss.pixls.us/u/afre\">afre</a> 2021 Apr16.</strong>\n\n - Set <strong>Input layers</strong> to <strong>All</strong>.\n\n" },
      { "type": "int", "name": "Max Per Row", "default": "5", "min": "1", "max": "25", "pos": "1" },
      { "type": "int", "name": "Spacing", "default": "1", "min": "0", "max": "10", "pos": "2" },
      { "type": "color", "name": "Matte Colour", "default": "230,255,230", "pos": "3" }
      ]
    },
    {
      "name": "Portrait Montage", "lang": "en", "command": "afre_portraitmontage", "command_preview": "afre_portraitmontage_preview", "parameters": [
      { "type": "note", "text": "<strong>Generate portrait montage with resizing.  Filter by <a href=\"https://discuss.pixls.us/u/afre\">afre</a> 2020-2021 Apr18.</strong>\n\n - Set <strong>Input layers</strong> to <strong>All</strong>.\n - Centre subjects for best results.\n\n" },
      { "type": "choice", "name": "Size", "default": "1", "pos": "1", "choices": { "0": "Small", "1": "Large" } },
      { "type": "int", "name": "Spacing", "default": "1", "min": "1", "max": "20", "pos": "2" },
      { "type": "choice", "name": "Matte Shape", "default": "0", "pos": "3", "choices": { "0": "None", "1": "Circle", "2": "Polygon", "3": "Star" } },
      { "type": "color", "name": "Matte Colour", "default": "230,255,230", "pos": "4" }
      ]
    },
    {
      "name": "Query Primary", "lang": "en", "command": "afre_queryprimary", "command_preview": "afre_queryprimary_preview", "parameters": [
      { "type": "note", "text": "<strong>Query pixel minima, maxima or medians.  Filter by <a href=\"https://discuss.pixls.us/u/afre\">afre</a> 2021 Jul14.</strong>\n\n" },
      { "type": "choice", "name": "Mode", "default": "1", "pos": "1", "choices": { "0": "Minima", "1": "Maxima", "2": "Medians" } },
      { "type": "bool", "name": "Skip Last Channel", "default": "1", "pos": "2" },
      { "type": "note", "text": "* Disable if image does not have an alpha or transparency channel.\n\n" }
      ]
    },
    {
      "name": "Sharpen FFT", "lang": "en", "command": "afre_sharpenfft", "command_preview": "afre_sharpenfft_preview", "parameters": [
      { "type": "note", "text": "<strong>Sharpen with Fourier transform.  Filter by <a href=\"https://discuss.pixls.us/u/afre\">afre</a> 2019-2020 Jan18.</strong>\n\n" },
      { "type": "int", "name": "Strength", "default": "15", "min": "1", "max": "50", "pos": "1" },
      { "type": "int", "name": "Size", "default": "1", "min": "1", "max": "10", "pos": "2" }
      ]
    },
    {
      "name": "Vigcirc", "lang": "en", "command": "afre_vigcirc", "command_preview": "afre_vigcirc_preview", "parameters": [
      { "type": "note", "text": "<strong>Add circular vignette.  Filter by <a href=\"https://discuss.pixls.us/u/afre\">afre</a> 2019.</strong>\n<hr /> <strong>Instructions:</strong>\n\n * Negative strength brightens the periphery.\n\n" },
      { "type": "int", "name": "Size", "default": "90", "min": "50", "max": "150", "pos": "1" },
      { "type": "int", "name": "Strength", "default": "75", "min": "-500", "max": "500", "pos": "2" },
      { "type": "int", "name": "Left-Right", "default": "50", "min": "0", "max": "100", "pos": "3" },
      { "type": "int", "name": "Up-Down", "default": "50", "min": "0", "max": "100", "pos": "4" }
      ]
    },
    {
      "name": "Vigrect", "lang": "en", "command": "afre_vigrect", "command_preview": "afre_vigrect_preview", "parameters": [
      { "type": "note", "text": "<strong>Add rectangular vignette.  Filter by <a href=\"https://discuss.pixls.us/u/afre\">afre</a> 2017-2019.</strong>\n<hr /> <strong>Instructions:</strong>\n\n * Negative strength brightens the periphery.\n\n" },
      { "type": "int", "name": "Size", "default": "50", "min": "1", "max": "100", "pos": "1" },
      { "type": "int", "name": "Strength", "default": "75", "min": "-500", "max": "500", "pos": "2" },
      { "type": "int", "name": "Blur", "default": "10", "min": "1", "max": "50", "pos": "3" },
      { "type": "int", "name": "Left-Right", "default": "50", "min": "0", "max": "100", "pos": "4" },
      { "type": "int", "name": "Up-Down", "default": "50", "min": "0", "max": "100", "pos": "5" }
      ]
    }
    ]
  },
  {
    "name": "Animals", "filters": [
    {
      "name": "Dragonfly", "lang": "en", "command": "mc_dragonfly", "command_preview": "mc_dragonfly_preview", "parameters": [
      { "type": "float", "name": "Size (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "2" },
      { "type": "color", "name": "Color", "default": "255,255,255,255", "pos": "3" },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Mathew Callaghan. Last update: 4th of September 2018." }
      ]
    },
    {
      "name": "Kookaburra", "lang": "en", "command": "mc_kookaburra", "command_preview": "mc_kookaburra_preview", "parameters": [
      { "type": "float", "name": "Size (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "2" },
      { "type": "color", "name": "Color", "default": "255,255,255,255", "pos": "3" },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Mathew Callaghan. Last update: 4th of September 2018." }
      ]
    },
    {
      "name": "Paw", "lang": "en", "command": "mc_paw", "command_preview": "mc_paw_preview", "parameters": [
      { "type": "float", "name": "Size (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "2" },
      { "type": "color", "name": "Color", "default": "255,255,255,255", "pos": "3" },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Mathew Callaghan. Last update: 4th of September 2018." }
      ]
    },
    {
      "name": "Rooster", "lang": "en", "command": "mc_rooster", "command_preview": "mc_rooster_preview", "parameters": [
      { "type": "float", "name": "Size (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "2" },
      { "type": "color", "name": "Color", "default": "255,255,255,255", "pos": "3" },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Mathew Callaghan. Last update: 4th of September 2018." }
      ]
    }
    ]
  },
  {
    "name": "Arrays & Tiles", "filters": [
    {
      "name": "Annular Steiner Chain Round Tile", "lang": "en", "command": "Annular_Steiner_Chain_Round_Tile", "command_preview": "Annular_Steiner_Chain_Round_Tile", "parameters": [
      { "type": "note", "text": "<span foreground=\"orangered\">Annular Steiner Chain Round Tiles</span>" },
      { "type": "link", "name": "http://en.wikipedia.org/wiki/Steiner_chain", "url": "http://en.wikipedia.org/wiki/Steiner_chain", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Image Finale</span>" },
      { "type": "int", "name": "Dimension En Pixels", "default": "800", "min": "256", "max": "1920", "pos": "1" },
      { "type": "bool", "name": "Supprimer Calque / Delete Layer", "default": "1", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Image</span>" },
      { "type": "float", "name": "Position X Origine (%)", "default": "0", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Position Y Origine (%)", "default": "0", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Dimension (%)", "default": "100", "min": "1", "max": "100", "pos": "5" },
      { "type": "float", "name": "Angle Décalage Image Contour", "default": "0", "min": "0", "max": "360", "pos": "6" },
      { "type": "float", "name": "Image Contour Dimension", "default": "100", "min": "1", "max": "100", "pos": "7" },
      { "type": "int", "name": "Nb Cercles Extérieurs / Circles Surrounding", "default": "12", "min": "3", "max": "180", "pos": "8" },
      { "type": "float", "name": "Angle Inclinaison / Tilt", "default": "0", "min": "0", "max": "360", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Couleurs Formes</span>" },
      { "type": "bool", "name": "Activer Couleurs Formes", "default": "1", "pos": "10" },
      { "type": "color", "name": "Contours", "default": "0,0,0,255", "pos": "11" },
      { "type": "choice", "name": "Affichage / Display Contours", "default": "0", "pos": "15", "choices": { "0": "Sans", "1": "A", "2": "B", "3": "C", "4": "D", "5": "E", "6": "F", "7": "G" } },
      { "type": "color", "name": "Cercle / Circle C", "default": "255,255,0,127", "pos": "16" },
      { "type": "color", "name": "Cercle / Circle D", "default": "0,0,255,127", "pos": "20" },
      { "type": "bool", "name": "Couleurs Aléatoires / Random Colors", "default": "0", "pos": "24" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Array [Faded]", "lang": "en", "command": "fx_array_fade", "command_preview": "fx_array_fade_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Creates a tiled grid of image with fading opacity. " },
      { "type": "separator" },
      { "type": "int", "name": "X-Tiles", "default": "2", "min": "1", "max": "10", "pos": "1" },
      { "type": "int", "name": "Y-Tiles", "default": "2", "min": "1", "max": "10", "pos": "2" },
      { "type": "float", "name": "X-Offset (%)", "default": "0", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Y-Offset (%)", "default": "0", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Fade Start (%)", "default": "80", "min": "1", "max": "100", "pos": "5" },
      { "type": "float", "name": "Fade End (%)", "default": "90", "min": "1", "max": "100", "pos": "6" },
      { "type": "choice", "name": "Mirror", "default": "0", "pos": "7", "choices": { "0": "None", "1": "X-Axis", "2": "Y-Axis", "3": "XY-Axes" } },
      { "type": "choice", "name": "Size", "default": "0", "pos": "8", "choices": { "0": "Shrink", "1": "Expand", "2": "Repeat [Memory Consuming!]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Array [Mirrored]", "lang": "en", "command": "fx_array_mirror", "command_preview": "fx_array_mirror_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Creates a grid where adjacent image tiles are mirrored. " },
      { "type": "separator" },
      { "type": "int", "name": "Iterations", "default": "1", "min": "1", "max": "10", "pos": "1" },
      { "type": "float", "name": "X-Offset (%)", "default": "0", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Y-Offset (%)", "default": "0", "min": "0", "max": "100", "pos": "3" },
      { "type": "choice", "name": "Array Mode", "default": "2", "pos": "4", "choices": { "0": "X-Axis", "1": "Y-Axis", "2": "XY-Axes", "3": "2XY-Axes" } },
      { "type": "choice", "name": "Initialization", "default": "0", "pos": "5", "choices": { "0": "Original", "1": "Mirror X", "2": "Mirror Y", "3": "Rotate 90 deg.", "4": "Rotate 180 deg.", "5": "Rotate 270 deg." } },
      { "type": "bool", "name": "Expand Size", "default": "0", "pos": "6" },
      { "type": "int", "name": "Crop (%)", "default": "0", "min": "0", "max": "100", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Array [Random Colors]", "lang": "en", "command": "fx_array_color", "command_preview": "fx_array_color", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Overlays a grid of randomized colored tiles. " },
      { "type": "separator" },
      { "type": "int", "name": "X-Tiles", "default": "5", "min": "1", "max": "20", "pos": "1" },
      { "type": "int", "name": "Y-Tiles", "default": "5", "min": "1", "max": "20", "pos": "2" },
      { "type": "float", "name": "Opacity", "default": "0.5", "min": "0", "max": "1", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Array [Random]", "lang": "en", "command": "fx_array_random", "command_preview": "fx_array_random", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Creates a grid of random patches of the image. " },
      { "type": "separator" },
      { "type": "int", "name": "Source X-Tiles", "default": "5", "min": "1", "max": "128", "pos": "1" },
      { "type": "int", "name": "Source Y-Tiles", "default": "5", "min": "1", "max": "128", "pos": "2" },
      { "type": "int", "name": "Destination X-Tiles", "default": "7", "min": "1", "max": "128", "pos": "3" },
      { "type": "int", "name": "Destination Y-Tiles", "default": "7", "min": "1", "max": "128", "pos": "4" },
      { "type": "int", "name": "Seed", "default": "0", "min": "0", "max": "65535", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Array [Regular]", "lang": "en", "command": "fx_array", "command_preview": "fx_array_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Creates a standard grid of identical image tiles. " },
      { "type": "separator" },
      { "type": "int", "name": "X-Tiles", "default": "2", "min": "1", "max": "10", "pos": "1" },
      { "type": "int", "name": "Y-Tiles", "default": "2", "min": "1", "max": "10", "pos": "2" },
      { "type": "float", "name": "X-Offset (%)", "default": "0", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Y-Offset (%)", "default": "0", "min": "0", "max": "100", "pos": "4" },
      { "type": "choice", "name": "Mirror", "default": "0", "pos": "5", "choices": { "0": "None", "1": "X-Axis", "2": "Y-Axis", "3": "XY-Axes" } },
      { "type": "choice", "name": "Size", "default": "0", "pos": "6", "choices": { "0": "Shrink", "1": "Expand", "2": "Repeat [Memory Consuming!]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Ascii Art", "lang": "en", "command": "fx_asciiart", "command_preview": "fx_asciiart_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Converts the image into a text-based ASCII art representation. " },
      { "type": "separator" },
      { "type": "choice", "name": "Charset", "default": "5", "pos": "1", "choices": { "0": "Custom", "1": "Binary Digits", "2": "Digits", "3": "Lowercase Letters", "4": "Uppercase Letters", "5": "Ascii", "6": "Card Suits", "7": "Math Symbols" } },
      { "type": "text", "name": "Custom Dictionary", "default": " .oO0", "pos": "2" },
      { "type": "int", "name": "Analysis Scale", "default": "16", "min": "8", "max": "103", "pos": "3" },
      { "type": "float", "name": "Analysis Smoothness", "default": "15", "min": "0", "max": "100", "pos": "4" },
      { "type": "int", "name": "Synthesis Scale", "default": "16", "min": "8", "max": "103", "pos": "5" },
      { "type": "choice", "name": "Result Type", "default": "2", "pos": "6", "choices": { "0": "White on Black", "1": "Black on White", "2": "Colored on Black", "3": "Colored on Transparent" } },
      { "type": "separator" },
      { "type": "float", "name": "Gamma", "default": "0", "min": "-3", "max": "3", "pos": "7" },
      { "type": "float", "name": "Smoothness", "default": "0.2", "min": "0", "max": "5", "pos": "8" },
      { "type": "choice", "name": "Colors", "default": "0", "pos": "9", "choices": { "0": "Full Colors", "1": "2 Colors", "2": "3 Colors", "3": "4 Colors", "4": "8 Colors", "5": "12 Colors", "6": "16 Colors", "7": "Grayscale", "8": "2 Grays", "9": "3 Grays", "10": "4 Grays", "11": "8 Grays", "12": "12 Grays", "13": "16 Grays" } },
      { "type": "separator" },
      { "type": "bool", "name": "Output Ascii File", "default": "0", "pos": "10" },
      { "type": "folder", "name": "Output Folder", "default": "", "pos": "11" },
      { "type": "text", "name": "Output Filename", "default": "gmic_asciiart.txt", "pos": "12" },
      { "type": "separator" },
      { "type": "link", "name": "Click here for a detailed description of this filter.", "url": "http://www.gimpchat.com/viewtopic.php?f=28&t=10047", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2014/03/27." }
      ]
    },
    {
      "name": "Bulles Colorees", "lang": "en", "command": "samj_Bulles_Colorees", "command_preview": "samj_Bulles_Colorees", "parameters": [
      { "type": "note", "text": "samj_Bulles_Colorees" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Limite</span>" },
      { "type": "color", "name": "Couleur Limite", "default": "64,64,64,255", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Resolution</span>" },
      { "type": "int", "name": "Résolution", "default": "8", "min": "1", "max": "32", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Bulles</span>" },
      { "type": "int", "name": "Variation L", "default": "0", "min": "-255", "max": "255", "pos": "6" },
      { "type": "int", "name": "Variation H", "default": "0", "min": "-255", "max": "255", "pos": "7" },
      { "type": "float", "name": "Grossissement A", "default": "3", "min": "1", "max": "9", "pos": "8" },
      { "type": "float", "name": "Grossissement B", "default": "0", "min": "-3", "max": "3", "pos": "9" },
      { "type": "bool", "name": "Angle", "default": "0", "pos": "10" },
      { "type": "float", "name": "Angle Variation", "default": "0", "min": "0", "max": "180", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Limite</span>" },
      { "type": "choice", "name": "Rendu", "default": "0", "pos": "12", "choices": { "0": "A", "1": "Inverser", "2": "A + Inverser" } },
      { "type": "float", "name": "Flou / Blur Contours", "default": "0", "min": "0", "max": "5", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Fond</span>" },
      { "type": "color", "name": "Couleur Fond / Background Color", "default": "0,0,0,255", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Carres Noirs", "lang": "en", "command": "samj_Carres_Noirs", "command_preview": "samj_Carres_Noirs ", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Avant plan</span>" },
      { "type": "int", "name": "Limite détails", "default": "128", "min": "1", "max": "255", "pos": "1" },
      { "type": "int", "name": "Résolution", "default": "40", "min": "8", "max": "64", "pos": "2" },
      { "type": "int", "name": "Épaisseur / Thickness", "default": "7", "min": "1", "max": "7", "pos": "3" },
      { "type": "int", "name": "Dilate", "default": "0", "min": "0", "max": "8", "pos": "4" },
      { "type": "color", "name": "Couleur Avant Plan", "default": "0,0,0,255", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Ombre</span>" },
      { "type": "float", "name": "Flou/Blur", "default": "2", "min": "0", "max": "10", "pos": "9" },
      { "type": "color", "name": "Couleur Ombre", "default": "96,96,96,255", "pos": "10" },
      { "type": "int", "name": "Décalage Ombre", "default": "2", "min": "0", "max": "7", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Fond</span>" },
      { "type": "color", "name": "Couleur Fond", "default": "255,255,255,255", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Isophotes</span>" },
      { "type": "bool", "name": "Ajout Isophotes", "default": "0", "pos": "19" },
      { "type": "float", "name": "Flou/Blur", "default": "2", "min": "0", "max": "10", "pos": "20" },
      { "type": "bool", "name": "Ajout Couleur", "default": "0", "pos": "21" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2019/12/14." }
      ]
    },
    {
      "name": "Cercles Concentriques", "lang": "en", "command": "Cercles_Concentriques_A", "command_preview": "Cercles_Concentriques_A", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Image Finale / Resulting Image</span>" },
      { "type": "int", "name": "Dimension En Pixels", "default": "800", "min": "256", "max": "1920", "pos": "1" },
      { "type": "bool", "name": "Supprimer Calque / Delete Layer", "default": "1", "pos": "2" },
      { "type": "note", "text": "<span foreground=\"orangered\">Cercles / Circles Rings</span>" },
      { "type": "int", "name": "Nb Cercles / Circles (anneaux)", "default": "6", "min": "1", "max": "180", "pos": "3" },
      { "type": "choice", "name": "Variation Dimensions / Size", "default": "0", "pos": "4", "choices": { "0": "Sin A", "1": "Sin B", "2": "Lineaire" } },
      { "type": "float", "name": "Angle Variation Origine", "default": "0", "min": "0", "max": "180", "pos": "5" },
      { "type": "float", "name": "Angle Variation Fin / End", "default": "90", "min": "0", "max": "180", "pos": "6" },
      { "type": "float", "name": "Coef. Variation", "default": "1", "min": "-1", "max": "1", "pos": "7" },
      { "type": "bool", "name": "Rotation Horaire / Rotate Clockwise", "default": "1", "pos": "8" },
      { "type": "float", "name": "Décalage Cercles % / Shift", "default": "50", "min": "0", "max": "500", "pos": "9" },
      { "type": "bool", "name": "Conserver Extérieur / Keep Outside", "default": "1", "pos": "10" },
      { "type": "note", "text": "<span foreground=\"orangered\">Rayons De Couleurs Et Contours / Colored Rays And Contours</span>" },
      { "type": "bool", "name": "Activer Rayons De Couleurs / Enable", "default": "1", "pos": "11" },
      { "type": "note", "text": "<span foreground=\"blue\"> - Contours - </span>" },
      { "type": "color", "name": "Contours", "default": "0,0,0,255", "pos": "12" },
      { "type": "choice", "name": "Affichage / Display Contours", "default": "0", "pos": "16", "choices": { "0": "Sans", "1": "Rayons et Cercles", "2": "Rayons", "3": "Cercles" } },
      { "type": "int", "name": "Dilate Contours", "default": "0", "min": "0", "max": "16", "pos": "17" },
      { "type": "float", "name": "Flou / Blur Contours", "default": "0", "min": "0", "max": "5", "pos": "18" },
      { "type": "int", "name": "Sharpen", "default": "0", "min": "0", "max": "600", "pos": "19" },
      { "type": "note", "text": "<span foreground=\"blue\"> - Couleurs - </span>" },
      { "type": "int", "name": "Répétition Des Couleurs", "default": "5", "min": "1", "max": "180", "pos": "20" },
      { "type": "float", "name": "Angle Décalage Des Couleurs", "default": "0", "min": "0", "max": "360", "pos": "21" },
      { "type": "color", "name": "Couleur / Color A", "default": "0,0,255,255", "pos": "22" },
      { "type": "color", "name": "Couleur / Color B", "default": "255,255,0,255", "pos": "26" },
      { "type": "color", "name": "Couleur / Color C", "default": "255,0,0,255", "pos": "30" },
      { "type": "color", "name": "Couleur / Color D", "default": "0,255,255,255", "pos": "34" },
      { "type": "color", "name": "Couleur / Color E", "default": "255,0,255,255", "pos": "38" },
      { "type": "bool", "name": "Couleurs aléatoires / Random Colors", "default": "0", "pos": "42" },
      { "type": "bool", "name": "Mélange Couleurs Contours / Blend", "default": "1", "pos": "43" },
      { "type": "note", "text": "<span foreground=\"orangered\">Symmetrizoscope</span>" },
      { "type": "bool", "name": "Activer Symmetrizoscope", "default": "0", "pos": "44" },
      { "type": "int", "name": "Itérations", "default": "5", "min": "1", "max": "32", "pos": "45" },
      { "type": "float", "name": "Angle", "default": "0", "min": "0", "max": "360", "pos": "46" },
      { "type": "choice", "name": "Symmetry sides", "default": "0", "pos": "47", "choices": { "0": "Backward", "1": "Forward", "2": "Swap" } },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Chessboard", "lang": "en", "command": "fx_chessboard", "command_preview": "fx_chessboard", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Overlays a chessboard pattern. " },
      { "type": "separator" },
      { "type": "int", "name": "First Size", "default": "64", "min": "1", "max": "512", "pos": "1" },
      { "type": "int", "name": "Second Size", "default": "64", "min": "1", "max": "512", "pos": "2" },
      { "type": "int", "name": "First Offset", "default": "0", "min": "0", "max": "512", "pos": "3" },
      { "type": "int", "name": "Second Offset", "default": "0", "min": "0", "max": "512", "pos": "4" },
      { "type": "float", "name": "Angle", "default": "0", "min": "0", "max": "180", "pos": "5" },
      { "type": "float", "name": "Opacity", "default": "0.25", "min": "0", "max": "1", "pos": "6" },
      { "type": "color", "name": "First Color", "default": "0,0,0,255", "pos": "7" },
      { "type": "color", "name": "Second Color", "default": "255,255,255,255", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Coeurs Hearts 002", "lang": "en", "command": "samj_Coeurs_Hearts_002", "command_preview": "samj_Coeurs_Hearts_002", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"red\">Des cœurs aux couleurs de l'image.</span>" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Cœurs / Hearts</span>" },
      { "type": "int", "name": "Résolution", "default": "16", "min": "4", "max": "128", "pos": "1" },
      { "type": "float", "name": "Remplissage % / Filling %", "default": "100", "min": "20", "max": "100", "pos": "2" },
      { "type": "int", "name": "Angle Rotation", "default": "0", "min": "0", "max": "360", "pos": "3" },
      { "type": "float", "name": "Flou / Blur", "default": "0", "min": "0", "max": "2", "pos": "4" },
      { "type": "bool", "name": "Coeurs / Hearts", "default": "1", "pos": "5" },
      { "type": "int", "name": "Interpolation", "default": "0", "min": "0", "max": "3", "pos": "6" },
      { "type": "color", "name": "Couleur Fond / Background Color", "default": "255,255,255,255", "pos": "7" },
      { "type": "bool", "name": "Gris / Grey", "default": "0", "pos": "11" },
      { "type": "bool", "name": "Amplification Couleurs / Colors Boost", "default": "0", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Mélange / Blend</span>" },
      { "type": "choice", "name": "Type Avant Plan / Foreground", "default": "0", "pos": "13", "choices": { "0": "Type A", "1": "Type B" } },
      { "type": "choice", "name": "Mode", "default": "1", "pos": "14", "choices": { "0": "Add", "1": "Alpha", "2": "And", "3": "Average", "4": "Blue", "5": "Burn", "6": "Darken", "7": "Difference", "8": "Divide", "9": "Dodge", "10": "Edges", "11": "Exclusion", "12": "Freeze", "13": "Grain extract", "14": "Grain merge", "15": "Green", "16": "Hard light", "17": "Hard mix", "18": "Hue", "19": "Interpolation", "20": "Lighten", "21": "Lightness", "22": "Linear burn", "23": "Linear light", "24": "Luminance", "25": "Multiply", "26": "Negation", "27": "Or", "28": "Overlay", "29": "Pin light", "30": "Red", "31": "Reflect", "32": "Saturation", "33": "Shape Average", "34": "Shape Average0", "35": "Soft burn", "36": "Soft dodge", "37": "Soft light", "38": "Screen", "39": "Stamp", "40": "Subtract", "41": "Value", "42": "Vivid light", "43": "Xor" } },
      { "type": "float", "name": "Opacité / Opacity", "default": "1", "min": "0", "max": "1", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2019/12/14." }
      ]
    },
    {
      "name": "Deconstruction", "lang": "en", "command": "samj_Tiles_Deconstruction", "command_preview": "samj_Tiles_Deconstruction", "parameters": [
      { "type": "link", "name": "https://samjcreations.blogspot.com", "url": "https://samjcreations.blogspot.com", "align": "center" },
      { "type": "int", "name": "Tuiles/Tiles", "default": "63", "min": "2", "max": "1000", "pos": "1" },
      { "type": "note", "text": "<span foreground=\"orangered\">Contours Tuiles/Tiles</span>" },
      { "type": "choice", "name": "Lignes/Lines", "default": "0", "pos": "2", "choices": { "0": "None", "1": "XY", "2": "X", "3": "Y" } },
      { "type": "color", "name": "Couleur/Color", "default": "0,0,0,64", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/11/13." }
      ]
    },
    {
      "name": "Dices", "lang": "en", "command": "fx_dices", "command_preview": "fx_dices", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Reconstructs the image using a mosaic of dice faces. " },
      { "type": "separator" },
      { "type": "float", "name": "Resolution", "default": "2", "min": "1", "max": "10", "pos": "1" },
      { "type": "int", "name": "Size", "default": "24", "min": "8", "max": "64", "pos": "2" },
      { "type": "choice", "name": "Color Model", "default": "1", "pos": "3", "choices": { "0": "Black Dices", "1": "White Dices", "2": "Dices with Colored Numbers", "3": "Dices with Colored Sides" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/06/27." }
      ]
    },
    {
      "name": "Drawn Montage", "lang": "en", "command": "fx_drawn_montage", "command_preview": "fx_drawn_montage_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Creates a montage from multiple layers based on a drawn template. " },
      { "type": "separator" },
      { "type": "choice", "name": "Layer", "default": "0", "pos": "1", "choices": { "0": "1st", "1": "2nd", "2": "3rd", "3": "4th", "4": "5th", "5": "6th", "6": "7th", "7": "8th", "8": "9th", "9": "10th", "10": "11th", "11": "12th", "12": "13th", "13": "14th", "14": "15th", "15": "16th" } },
      { "type": "color", "name": "Associated Color", "default": "0,0,0", "pos": "2" },
      { "type": "float", "name": "Zoom", "default": "-10", "min": "0", "max": "10", "pos": "5" },
      { "type": "float", "name": "X-Centering (%)", "default": "50", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "Y-Centering (%)", "default": "50", "min": "0", "max": "100", "pos": "7" },
      { "type": "choice", "name": "Angle", "default": "0", "pos": "8", "choices": { "0": "0 deg.", "1": "90 deg.", "2": "180 deg.", "3": "270 deg." } },
      { "type": "value", "value": "-1", "pos": "9" },
      { "type": "value", "value": "0:0:0:0:50:50:0", "pos": "10" },
      { "type": "value", "value": "0:0:0:0:50:50:0", "pos": "11" },
      { "type": "value", "value": "0:0:0:0:50:50:0", "pos": "12" },
      { "type": "value", "value": "0:0:0:0:50:50:0", "pos": "13" },
      { "type": "value", "value": "0:0:0:0:50:50:0", "pos": "14" },
      { "type": "value", "value": "0:0:0:0:50:50:0", "pos": "15" },
      { "type": "value", "value": "0:0:0:0:50:50:0", "pos": "16" },
      { "type": "value", "value": "0:0:0:0:50:50:0", "pos": "17" },
      { "type": "value", "value": "0:0:0:0:50:50:0", "pos": "18" },
      { "type": "value", "value": "0:0:0:0:50:50:0", "pos": "19" },
      { "type": "value", "value": "0:0:0:0:50:50:0", "pos": "20" },
      { "type": "value", "value": "0:0:0:0:50:50:0", "pos": "21" },
      { "type": "value", "value": "0:0:0:0:50:50:0", "pos": "22" },
      { "type": "value", "value": "0:0:0:0:50:50:0", "pos": "23" },
      { "type": "value", "value": "0:0:0:0:50:50:0", "pos": "24" },
      { "type": "value", "value": "0:0:0:0:50:50:0", "pos": "25" },
      { "type": "separator" },
      { "type": "note", "text": "Note: This filter requires a top layer containing the desired montage layout defined as free-form shapes of different colors. You can then assign each layer to a layout color to create the montage. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2018/01/29." }
      ]
    },
    {
      "name": "Ellipses Colorees", "lang": "en", "command": "samj_Ellipses_Colorees", "command_preview": "samj_Ellipses_Colorees", "parameters": [
      { "type": "note", "text": "samj_Ellipses_Colorees" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Limite</span>" },
      { "type": "color", "name": "Couleur Limite", "default": "64,64,64,255", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Ellipse</span>" },
      { "type": "int", "name": "Rayon L", "default": "8", "min": "1", "max": "32", "pos": "5" },
      { "type": "int", "name": "Rayon H", "default": "8", "min": "1", "max": "32", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Limite</span>" },
      { "type": "choice", "name": "Rendu", "default": "0", "pos": "7", "choices": { "0": "A", "1": "Inverser", "2": "A + Inverser" } },
      { "type": "float", "name": "Flou / Blur Contours", "default": "0", "min": "0", "max": "5", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Fond</span>" },
      { "type": "color", "name": "Couleur Fond / Background Color", "default": "0,0,0,255", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Extract Objects", "lang": "en", "command": "fx_extract_objects", "command_preview": "fx_extract_objects_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Automatically segments and crops objects onto several layers. " },
      { "type": "separator" },
      { "type": "point", "name": "Background Point (%)", "position": "0,0", "pos": "1" },
      { "type": "separator" },
      { "type": "int", "name": "Color Tolerance", "default": "20", "min": "0", "max": "256", "pos": "3" },
      { "type": "int", "name": "Opacity Threshold (%)", "default": "50", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Minimal Area", "default": "0.3", "min": "0", "max": "5", "pos": "5" },
      { "type": "choice", "name": "Connectivity", "default": "0", "pos": "6", "choices": { "0": "Low", "1": "High" } },
      { "type": "choice", "name": "Output As", "default": "0", "pos": "7", "choices": { "0": "Crop", "1": "Segmentation" } },
      { "type": "separator" },
      { "type": "bool", "name": "Preview Guides", "default": "1", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2015/02/23." },
      { "type": "link", "name": "Filter explained here", "url": "http://gimpchat.com/viewtopic.php?f=28&t=7905", "align": "center" }
      ]
    },
    {
      "name": "Filters On Tiles", "lang": "en", "command": "samj_Filtres_Sur_Tuiles", "command_preview": "samj_Filtres_Sur_Tuiles", "parameters": [
      { "type": "note", "text": "L'image est découpée en tuiles puis réassemblée." },
      { "type": "note", "text": "Chaque tuile est modifiable par les filtres définis au paramètre 3." },
      { "type": "note", "text": "Les filtres du paramètre 4 modifient l'aspect final si validation dans paramètre 2." },
      { "type": "separator" },
      { "type": "note", "text": "The image is cut into tiles and then reassembled." },
      { "type": "note", "text": "Each tile can be modified by the filters defined in parameter 3." },
      { "type": "note", "text": "The filters of parameter 4 modify the final appearance if validation is allowed in parameter 2." },
      { "type": "link", "name": "PDF Reference", "url": "http://gmic.eu/reference/gmic_reference.pdf", "align": "center" },
      { "type": "separator" },
      { "type": "int", "name": "1 - XY Découpage/Cutting", "default": "20", "min": "2", "max": "256", "pos": "1" },
      { "type": "choice", "name": "2 - Filtres À Utiliser", "default": "0", "pos": "2", "choices": { "0": "Tuiles/Tiles", "1": "Tuiles+Réassemblage/Tiles+Reassembly" } },
      { "type": "text", "name": "3 - Tuiles/Tiles", "default": "shift 2", "pos": "3" },
      { "type": "text", "name": "4 - Réassemblage/Reassembly", "default": "dilate 20", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2021/01/16." }
      ]
    },
    {
      "name": "Filters On Tiles V2", "lang": "en", "command": "samj_Filtres_Sur_Tuiles_V2", "command_preview": "samj_Filtres_Sur_Tuiles_V2", "parameters": [
      { "type": "note", "text": "L'image est découpée en tuiles puis réassemblée." },
      { "type": "note", "text": "Chaque tuile est modifiable par les filtres définis au paramètre 3." },
      { "type": "note", "text": "Les filtres du paramètre 7 modifient l'aspect final si validation dans paramètre 2." },
      { "type": "separator" },
      { "type": "note", "text": "The image is cut into tiles and then reassembled." },
      { "type": "note", "text": "Each tile can be modified by the filters defined in parameter 3." },
      { "type": "note", "text": "The filters of parameter 7 modify the final appearance if validation is allowed in parameter 2." },
      { "type": "link", "name": "PDF Reference", "url": "http://gmic.eu/reference/gmic_reference.pdf", "align": "center" },
      { "type": "separator" },
      { "type": "int", "name": "1 - Tuiles/Tiles Size", "default": "40", "min": "4", "max": "512", "pos": "1" },
      { "type": "choice", "name": "2 - Filtres À Utiliser", "default": "1", "pos": "2", "choices": { "0": "Tuiles/Tiles", "1": "Tuiles+Réassemblage/Tiles+Reassembly" } },
      { "type": "text", "name": "3 - Tuiles/Tiles", "default": "dilate 3 shift 1", "pos": "3" },
      { "type": "float", "name": "4 - Overlap (%)", "default": "0", "min": "0", "max": "50", "pos": "4" },
      { "type": "float", "name": "5 - Overlap Std (%)", "default": "0", "min": "0", "max": "100", "pos": "5" },
      { "type": "choice", "name": "6 - Boundary Conditions", "default": "3", "pos": "6", "choices": { "0": "Dirichlet", "1": "Neumann", "2": "Periodic", "3": "Mirror" } },
      { "type": "separator" },
      { "type": "text", "name": "7 - Réassemblage/Reassembly", "default": "pow 1.5 n 0", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2022/08/08." }
      ]
    },
    {
      "name": "Floutage Blurring", "lang": "en", "command": "samj_Flouter", "command_preview": "samj_Flouter", "parameters": [
      { "type": "link", "name": "https://samjcreations.blogspot.com/2020/10/samuser-avec-gmic-gimp-floutage-blurring.html", "url": "https://samjcreations.blogspot.com/2020/10/samuser-avec-gmic-gimp-floutage-blurring.html", "align": "center" },
      { "type": "float", "name": "Flou/Blur", "default": "0", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "Netteté/Sharpen", "default": "0", "min": "0", "max": "100", "pos": "2" },
      { "type": "int", "name": "Autoindex", "default": "0", "min": "0", "max": "255", "pos": "3" },
      { "type": "int", "name": "Grille/Grid", "default": "10", "min": "4", "max": "100", "pos": "4" },
      { "type": "bool", "name": "Cercle/Circle", "default": "0", "pos": "5" },
      { "type": "int", "name": "Taille/Size", "default": "0", "min": "0", "max": "100", "pos": "6" },
      { "type": "bool", "name": "Norm.", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/21." }
      ]
    },
    {
      "name": "Grid [Cartesian]", "lang": "en", "command": "fx_imagegrid", "command_preview": "fx_imagegrid", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Converts the image into a pixelated square grid. " },
      { "type": "separator" },
      { "type": "int", "name": "X-Size", "default": "10", "min": "2", "max": "512", "pos": "1" },
      { "type": "int", "name": "Y-Size", "default": "10", "min": "2", "max": "512", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Grid [Hexagonal]", "lang": "en", "command": "fx_imagegrid_hexagonal", "command_preview": "fx_imagegrid_hexagonal", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Converts the image into a pixelated hexagonal grid. " },
      { "type": "separator" },
      { "type": "int", "name": "Resolution", "default": "32", "min": "1", "max": "128", "pos": "1" },
      { "type": "float", "name": "Outline", "default": "0.1", "min": "0", "max": "0.5", "pos": "2" },
      { "type": "bool", "name": "Anti-Aliasing", "default": "1", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2015/01/12." }
      ]
    },
    {
      "name": "Grid [Triangular]", "lang": "en", "command": "fx_imagegrid_triangular", "command_preview": "fx_imagegrid_triangular", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Converts the image into a pixelated triangular grid. " },
      { "type": "separator" },
      { "type": "int", "name": "Pattern Width", "default": "10", "min": "8", "max": "128", "pos": "1" },
      { "type": "int", "name": "Pattern Height", "default": "18", "min": "8", "max": "128", "pos": "2" },
      { "type": "choice", "name": "Pattern Type", "default": "0", "pos": "3", "choices": { "0": "Horizontal", "1": "Vertical", "2": "Crossed", "3": "Cube", "4": "Decreasing", "5": "Increasing" } },
      { "type": "color", "name": "Outline Color", "default": "0,0,0,128", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2015/07/08." }
      ]
    },
    {
      "name": "Loose Photos", "lang": "en", "command": "fx_loose_photos", "command_preview": "fx_loose_photos_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simulates multiple photos thrown loosely onto a surface. " },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Photo geometry:</span>" },
      { "type": "float", "name": "Density (%)", "default": "60", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Maximal Size (%)", "default": "40", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Minimal Size (% of Max)", "default": "50", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Maximal Ratio (%)", "default": "100", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Minimal Ratio (% of Max)", "default": "50", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "Maximal Angle (deg.)", "default": "360", "min": "0", "max": "360", "pos": "6" },
      { "type": "float", "name": "Minimal Angle (% of Max)", "default": "0", "min": "0", "max": "100", "pos": "7" },
      { "type": "float", "name": "Frame Size (%)", "default": "2", "min": "0", "max": "20", "pos": "8" },
      { "type": "color", "name": "Frame Color", "default": "255,255,255", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Photo content:</span>" },
      { "type": "float", "name": "Rotation Probability (%)", "default": "50", "min": "0", "max": "100", "pos": "12" },
      { "type": "float", "name": "Maximal Angle (deg.)", "default": "25", "min": "0", "max": "360", "pos": "13" },
      { "type": "float", "name": "Minimal Angle (% of Max)", "default": "0", "min": "0", "max": "100", "pos": "14" },
      { "type": "color", "name": "Background", "default": "0,0,0,0", "pos": "15" },
      { "type": "float", "name": "Background Image (%)", "default": "0", "min": "0", "max": "100", "pos": "19" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Shadow:</span>" },
      { "type": "float", "name": "Opacity (%)", "default": "50", "min": "0", "max": "100", "pos": "20" },
      { "type": "float", "name": "X-Shift (%)", "default": "1", "min": "-10", "max": "10", "pos": "21" },
      { "type": "float", "name": "Y-Shift (%)", "default": "1", "min": "-10", "max": "10", "pos": "22" },
      { "type": "float", "name": "Smoothness (%)", "default": "1", "min": "0", "max": "5", "pos": "23" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2023/09/07." }
      ]
    },
    {
      "name": "Losanges Colores", "lang": "en", "command": "samj_Losanges_Colores", "command_preview": "samj_Losanges_Colores", "parameters": [
      { "type": "note", "text": "samj_Losanges_Colores" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Limite</span>" },
      { "type": "color", "name": "Couleur Limite", "default": "64,64,64,255", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Resolution</span>" },
      { "type": "int", "name": "Résolution", "default": "8", "min": "1", "max": "32", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Losanges - Rectangles</span>" },
      { "type": "bool", "name": "Inclinaison", "default": "0", "pos": "6" },
      { "type": "int", "name": "Variation L", "default": "0", "min": "-255", "max": "255", "pos": "7" },
      { "type": "int", "name": "Variation H", "default": "0", "min": "-255", "max": "255", "pos": "8" },
      { "type": "float", "name": "Grossissement A", "default": "1.5", "min": "0.5", "max": "9", "pos": "9" },
      { "type": "float", "name": "Grossissement B", "default": "0", "min": "-10", "max": "10", "pos": "10" },
      { "type": "float", "name": "Dimension Variation", "default": "1", "min": "0.3", "max": "3", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"Rendu\">Limite</span>" },
      { "type": "choice", "name": "Rendu", "default": "0", "pos": "12", "choices": { "0": "A", "1": "Inverser", "2": "A + Inverser" } },
      { "type": "float", "name": "Flou / Blur Contours", "default": "0", "min": "0", "max": "5", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Fond</span>" },
      { "type": "color", "name": "Couleur Fond / Background Color", "default": "0,0,0,255", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Contours</span>" },
      { "type": "choice", "name": "Contours Losanges", "default": "0", "pos": "18", "choices": { "0": "Sans", "1": "Couleur Fond", "2": "Blanc", "3": "Gris moyen", "4": "Fonce" } },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Make Seamless [Diffusion]", "lang": "en", "command": "fx_make_seamless", "command_preview": "fx_make_seamless_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Makes the image tileable using a diffusion method. " },
      { "type": "separator" },
      { "type": "float", "name": "Equalize Light", "default": "0", "min": "0", "max": "100", "pos": "1" },
      { "type": "separator" },
      { "type": "bool", "name": "Preview Original", "default": "0", "pos": "2" },
      { "type": "choice", "name": "Tiled Preview", "default": "3", "pos": "3", "choices": { "0": "None", "1": "2x1", "2": "1x2", "3": "2x2", "4": "3x3", "5": "4x4" } },
      { "type": "separator" },
      { "type": "note", "text": "Note: This filter helps in converting your input pattern as a seamless (a.k.a periodic) texture." },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2015/02/24." }
      ]
    },
    {
      "name": "Make Seamless [Patch-Based]", "lang": "en", "command": "fx_frame_seamless", "command_preview": "fx_frame_seamless_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Makes the image tileable using a patch-based synthesis method. " },
      { "type": "separator" },
      { "type": "int", "name": "Frame Size", "default": "32", "min": "0", "max": "256", "pos": "1" },
      { "type": "int", "name": "Patch Size", "default": "9", "min": "3", "max": "64", "pos": "2" },
      { "type": "int", "name": "Blend Size", "default": "0", "min": "0", "max": "64", "pos": "3" },
      { "type": "choice", "name": "Frame Type", "default": "1", "pos": "4", "choices": { "0": "Inner", "1": "Outer" } },
      { "type": "float", "name": "Equalize Light", "default": "100", "min": "0", "max": "100", "pos": "5" },
      { "type": "separator" },
      { "type": "bool", "name": "Preview Original", "default": "0", "pos": "6" },
      { "type": "choice", "name": "Tiled Preview", "default": "3", "pos": "7", "choices": { "0": "None", "1": "2x1", "2": "1x2", "3": "2x2", "4": "3x3", "5": "4x4" } },
      { "type": "separator" },
      { "type": "note", "text": "Note: This filter helps in converting your input pattern as a seamless (a.k.a periodic) texture." },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2015/12/15." }
      ]
    },
    {
      "name": "Ministeck", "lang": "en", "command": "fx_ministeck", "command_preview": "fx_ministeck_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simulates a mosaic effect using \"Ministeck\" plastic shapes. " },
      { "type": "separator" },
      { "type": "int", "name": "Number of Colors", "default": "8", "min": "2", "max": "24", "pos": "1" },
      { "type": "int", "name": "Resolution (px)", "default": "64", "min": "16", "max": "256", "pos": "2" },
      { "type": "int", "name": "Piece Size (px)", "default": "8", "min": "1", "max": "64", "pos": "3" },
      { "type": "int", "name": "Piece Complexity", "default": "2", "min": "1", "max": "10", "pos": "4" },
      { "type": "float", "name": "Relief Amplitude", "default": "100", "min": "0", "max": "256", "pos": "5" },
      { "type": "float", "name": "Relief Size", "default": "0.3", "min": "0", "max": "1", "pos": "6" },
      { "type": "bool", "name": "Add 1px Outline", "default": "0", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2015/01/14." }
      ]
    },
    {
      "name": "Moirage Spline", "lang": "en", "command": "samj_Moirage_Spline", "command_preview": "samj_Moirage_Spline", "parameters": [
      { "type": "note", "text": "samj_Moirage_Spline" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Calque A</span>" },
      { "type": "color", "name": "Couleur A", "default": "0,0,0,255", "pos": "1" },
      { "type": "int", "name": "Résolution A", "default": "8", "min": "2", "max": "32", "pos": "5" },
      { "type": "float", "name": "Décalage A", "default": "0", "min": "-100", "max": "100", "pos": "6" },
      { "type": "float", "name": "Spline A u0", "default": "-50", "min": "-250", "max": "250", "pos": "7" },
      { "type": "float", "name": "Spline A v0", "default": "50", "min": "-250", "max": "250", "pos": "8" },
      { "type": "float", "name": "Spline A u1", "default": "-50", "min": "-250", "max": "250", "pos": "9" },
      { "type": "float", "name": "Spline A v1", "default": "50", "min": "-250", "max": "250", "pos": "10" },
      { "type": "float", "name": "Orientation A", "default": "0", "min": "0", "max": "360", "pos": "11" },
      { "type": "int", "name": "Dilate A %", "default": "0", "min": "0", "max": "100", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Calque B</span>" },
      { "type": "color", "name": "Couleur B", "default": "0,0,0,255", "pos": "13" },
      { "type": "int", "name": "Résolution B", "default": "8", "min": "2", "max": "32", "pos": "17" },
      { "type": "float", "name": "Décalage B", "default": "0", "min": "-100", "max": "100", "pos": "18" },
      { "type": "float", "name": "Spline B u0", "default": "-50", "min": "-250", "max": "250", "pos": "19" },
      { "type": "float", "name": "Spline B v0", "default": "50", "min": "-250", "max": "250", "pos": "20" },
      { "type": "float", "name": "Spline B u1", "default": "-50", "min": "-250", "max": "250", "pos": "21" },
      { "type": "float", "name": "Spline B v1", "default": "50", "min": "-250", "max": "250", "pos": "22" },
      { "type": "float", "name": "Orientation A", "default": "0", "min": "0", "max": "360", "pos": "23" },
      { "type": "int", "name": "Dilate B %", "default": "0", "min": "0", "max": "100", "pos": "24" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/02/04." }
      ]
    },
    {
      "name": "Moirage Spline XY", "lang": "en", "command": "samj_Moirage_Spline_XY", "command_preview": "samj_Moirage_Spline_XY", "parameters": [
      { "type": "note", "text": "samj_Moirage_Spline_XY" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Calque A</span>" },
      { "type": "color", "name": "Couleur A", "default": "0,0,0,255", "pos": "1" },
      { "type": "int", "name": "Résolution A", "default": "8", "min": "2", "max": "32", "pos": "5" },
      { "type": "float", "name": "Décalage A", "default": "0", "min": "-100", "max": "100", "pos": "6" },
      { "type": "float", "name": "Spline A u0", "default": "-50", "min": "-400", "max": "400", "pos": "7" },
      { "type": "float", "name": "Spline A v0", "default": "50", "min": "-400", "max": "400", "pos": "8" },
      { "type": "float", "name": "Spline A u1", "default": "-50", "min": "-400", "max": "400", "pos": "9" },
      { "type": "float", "name": "Spline A v1", "default": "50", "min": "-400", "max": "400", "pos": "10" },
      { "type": "int", "name": "Dilate A %", "default": "0", "min": "0", "max": "100", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Calque B</span>" },
      { "type": "color", "name": "Couleur B", "default": "0,0,0,255", "pos": "12" },
      { "type": "int", "name": "Résolution B", "default": "8", "min": "2", "max": "32", "pos": "16" },
      { "type": "float", "name": "Décalage B", "default": "0", "min": "-100", "max": "100", "pos": "17" },
      { "type": "float", "name": "Spline B u0", "default": "-50", "min": "-400", "max": "400", "pos": "18" },
      { "type": "float", "name": "Spline B v0", "default": "50", "min": "-400", "max": "400", "pos": "19" },
      { "type": "float", "name": "Spline B u1", "default": "-50", "min": "-400", "max": "400", "pos": "20" },
      { "type": "float", "name": "Spline B v1", "default": "50", "min": "-400", "max": "400", "pos": "21" },
      { "type": "int", "name": "Dilate B %", "default": "0", "min": "0", "max": "100", "pos": "22" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Calques Visibles</span>" },
      { "type": "choice", "name": "Choix", "default": "0", "pos": "23", "choices": { "0": "Calques A B", "1": "Calque A", "2": "Calque B" } },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Montage", "lang": "en", "command": "fx_montage", "command_preview": "fx_montage_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Combines multiple input layers into a single montage image. " },
      { "type": "separator" },
      { "type": "choice", "name": "Montage Type", "default": "0", "pos": "1", "choices": { "0": "Auto", "1": "Custom Layout", "2": "Horizontal", "3": "Vertical", "4": "Horizontal Array", "5": "Vertical Array" } },
      { "type": "text", "name": "Custom Layout", "default": "V(H(0", "pos": "2" },
      { "type": "choice", "name": "Merging Mode", "default": "1", "pos": "3", "choices": { "0": "Aligned", "1": "Scaled" } },
      { "type": "float", "name": "Centering / Scale", "default": "0.5", "min": "0", "max": "1", "pos": "4" },
      { "type": "int", "name": "Padding (px)", "default": "0", "min": "0", "max": "128", "pos": "5" },
      { "type": "separator" },
      { "type": "int", "name": "Frame (px)", "default": "0", "min": "0", "max": "128", "pos": "6" },
      { "type": "color", "name": "Frame Color", "default": "0,0,0,255", "pos": "7" },
      { "type": "separator" },
      { "type": "float", "name": "Angle", "default": "0", "min": "0", "max": "360", "pos": "11" },
      { "type": "float", "name": "Angle Variations", "default": "0", "min": "0", "max": "180", "pos": "12" },
      { "type": "separator" },
      { "type": "int", "name": "Cycle Layers", "default": "0", "min": "-255", "max": "255", "pos": "13" },
      { "type": "bool", "name": "Revert Layer Order", "default": "0", "pos": "14" },
      { "type": "choice", "name": "Output As", "default": "0", "pos": "15", "choices": { "0": "Single Layer", "1": "Multiple Layers" } },
      { "type": "separator" },
      { "type": "note", "text": "Instructions:\n - Don't forget to set the Input layers... option on the left if you have multiple input layers for your montage.\n - The Custom layout parameter is only active when Montage type is set to Custom layout. This is basically a string containing expressions such as:\n \n     . H(a,b) or V(a,b) stand respectively for an horizontal and vertical merge of two blocks a and b. \n     . R(a), stands for a 90-deg. rotated version of a block a. Use RR(a) and RRR(a) for resp. 180-deg and 270-deg. rotations. \n     . M(a), stands for a X-mirrored version of a block a. Use MRR(a) for a Y-mirrored version of a.\n\n - A block a can be a layer index or a nested montage expression itself.\n - Layer indices start from 0 (top layer) and are treated periodically. " },
      { "type": "link", "name": "Click here for a tutorial", "url": "https://patdavid.net/2014/05/gmic-montage.html", "align": "center" },
      { "type": "link", "name": "+ video tutorial", "url": "http://www.youtube.com/watch?v=iM42vx22gwg", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2014/12/22." }
      ]
    },
    {
      "name": "Montage 1 Page", "lang": "en", "command": "samj_dt_montage_sur_une_page", "command_preview": "samj_dt_montage_sur_une_page", "parameters": [
      { "type": "link", "name": "Code de David Tschumperlé", "url": "https://discuss.pixls.us/t/image-grid-placement/39342/2", "align": "center" },
      { "type": "note", "text": " - Montage d'images assemblées dans une feuille de dimensions définies en 1 et 2 " },
      { "type": "note", "text": " - Image assembly in a sheet of dimensions defined in 1 and 2 " },
      { "type": "note", "text": " - Paramètres 3 et 4 encadrement en pixels. Paramètre 5 pour vérifier le contenu." },
      { "type": "note", "text": " - Parameters 3 and 4 settings pixels frames. Parameter 5 to check the content." },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Montage 1 Page</span>" },
      { "type": "int", "name": "1 - Largeur / Width", "default": "1200", "min": "400", "max": "7200", "pos": "1" },
      { "type": "int", "name": "2 - Hauteur / Height", "default": "1200", "min": "400", "max": "7200", "pos": "2" },
      { "type": "int", "name": "3 - Encadrement / Frame", "default": "2", "min": "0", "max": "16", "pos": "3" },
      { "type": "int", "name": "4 - Encadrement / Frame", "default": "5", "min": "0", "max": "16", "pos": "4" },
      { "type": "note", "text": "<span foreground=\"red\">Toutes les images sur la page / All images on the page</span>" },
      { "type": "int", "name": "5 - Ajuster / Verification", "default": "0", "min": "-12", "max": "12", "pos": "5" },
      { "type": "separator", "visibility": "1" },
      { "type": "note", "text": "David Tschumperlé - adaptation samj - Dernière mise à jour : 2023/09/10.", "visibility": "2" }
      ]
    },
    {
      "name": "Montage Annular Steiner Chain", "lang": "en", "command": "samj_Montage_Annular_Steiner_Chain", "command_preview": "samj_Montage_Annular_Steiner_Chain_Preview", "parameters": [
      { "type": "link", "name": "Documentation", "url": "https://samjcreations.blogspot.com/2020/12/nouveaux-montages-dimages-avec-gmic.html", "align": "center" },
      { "type": "note", "text": "Utiliser au moins 4 calques pour ce filtre. La qualité de la prévisualisation est limitée." },
      { "type": "note", "text": "Use at least 4 layers for this filter. The quality of the preview is limited." },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Image Finale</span>" },
      { "type": "int", "name": "1 - Dimension Pix.", "default": "2400", "min": "800", "max": "7200", "pos": "1" },
      { "type": "int", "name": "2 - Nb Images Extérieures/Annular Chain", "default": "12", "min": "3", "max": "180", "pos": "2" },
      { "type": "choice", "name": "3 - Sélection", "default": "1", "pos": "3", "choices": { "0": "Calques du Bas/Bottom Layers", "1": "Calques du Haut/Top Layers" } },
      { "type": "color", "name": "4-5-6-7 Fond/Background", "default": "0,0,0,0", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Image Centrale</span>" },
      { "type": "float", "name": "8 - Position X Origine (%)", "default": "0", "min": "-100", "max": "100", "pos": "8" },
      { "type": "float", "name": "9 - Position Y Origine (%)", "default": "0", "min": "-100", "max": "100", "pos": "9" },
      { "type": "float", "name": "10 - Agrandissement/Enlarging", "default": "1", "min": "1", "max": "100", "pos": "10" },
      { "type": "float", "name": "11 - Décalage/Shift X (%)", "default": "0", "min": "-100", "max": "100", "pos": "11" },
      { "type": "float", "name": "12 - Décalage/Shift Y (%)", "default": "0", "min": "-100", "max": "100", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Images Extérieures/Annular Chain</span>" },
      { "type": "float", "name": "13 - Angle Décalage Image Contour", "default": "90", "min": "0", "max": "360", "pos": "13" },
      { "type": "bool", "name": "14 - Rotation Images", "default": "1", "pos": "14" },
      { "type": "float", "name": "15 - Image Contour Dimension", "default": "100", "min": "1", "max": "100", "pos": "15" },
      { "type": "float", "name": "16 - Angle Inclinaison/Tilt", "default": "0", "min": "0", "max": "360", "pos": "16" },
      { "type": "float", "name": "17 - Agrandissement/Enlarging", "default": "1", "min": "0.2", "max": "2", "pos": "17" },
      { "type": "float", "name": "18 - Décalage/Shift X (%)", "default": "0", "min": "-100", "max": "100", "pos": "18" },
      { "type": "float", "name": "19 - Décalage/Shift Y (%)", "default": "0", "min": "-100", "max": "100", "pos": "19" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/12/09." }
      ]
    },
    {
      "name": "Montage Cercle Spirale", "lang": "en", "command": "samj_Montage_Cercle_Spirale", "command_preview": "samj_Montage_Cercle_Spirale_preview", "parameters": [
      { "type": "link", "name": "Documentation", "url": "https://samjcreations.blogspot.com/2020/12/samuser-avec-gmic-gimp-filtre-montage_21.html", "align": "center" },
      { "type": "note", "text": "Utiliser au moins 6 calques pour ce filtre. La qualité de la prévisualisation est limitée." },
      { "type": "note", "text": "Use at least 6 layers for this filter. The quality of the preview is limited." },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Montage Cercle Spirale</span>" },
      { "type": "int", "name": "1 - Dimensions Approx. Pixels", "default": "2400", "min": "800", "max": "5100", "pos": "1" },
      { "type": "int", "name": "2 - Nb Images", "default": "8", "min": "6", "max": "36", "pos": "2" },
      { "type": "choice", "name": "3 - Sélection", "default": "0", "pos": "3", "choices": { "0": "Calques du Haut/Top Layers", "1": "Calques du Bas/Bottom Layers" } },
      { "type": "choice", "name": "4 - Forme", "default": "1", "pos": "4", "choices": { "0": "Cercle", "1": "Spirale", "2": "Spirale Inversée" } },
      { "type": "color", "name": "5-6-7-8 Fond/Background", "default": "0,0,0,0", "pos": "5" },
      { "type": "choice", "name": "9 - Rotation Angle", "default": "0", "pos": "9", "choices": { "0": "0", "1": "90", "2": "-90", "3": "180" } },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/12/22." }
      ]
    },
    {
      "name": "Montage Geometric Figures", "lang": "en", "command": "samj_Montage_Figures_Geometriques", "command_preview": "samj_Montage_Figures_Geometriques", "parameters": [
      { "type": "link", "name": "Documentation", "url": "https://samjcreations.blogspot.com/2020/12/nouveaux-montages-dimages-avec-gmic.html", "align": "center" },
      { "type": "note", "text": "<span foreground=\"orangered\">Rapidité de traitement/Speed of image processing</span>" },
      { "type": "int", "name": "1 - Dimensions Max. Pixels", "default": "4800", "min": "2400", "max": "11400", "pos": "1" },
      { "type": "note", "text": "<span foreground=\"orangered\">Montage</span>" },
      { "type": "int", "name": "2 - Colonnes/Columns - 0 Automatique", "default": "0", "min": "0", "max": "20", "pos": "2" },
      { "type": "bool", "name": "3 - Colonnes vers Lignes / Columns to Rows", "default": "0", "pos": "3" },
      { "type": "choice", "name": "4 - Montage Type", "default": "1", "pos": "4", "choices": { "0": "Basique", "1": "Polygones - Param 17-18", "2": "Rideau - Param 19-20", "3": "Oeuf Egg Rosillo - Param 21-22", "4": "Kiss Curve", "5": "Fleur Flower" } },
      { "type": "color", "name": "5-6-7-8 Fond/Background", "default": "0,0,0,0", "pos": "5" },
      { "type": "note", "text": "<span foreground=\"orangered\">Calques/Layers</span>" },
      { "type": "choice", "name": "9 - Sélection", "default": "1", "pos": "9", "choices": { "0": "Calques du Bas/Bottom Layers", "1": "Calques du Haut/Top Layers" } },
      { "type": "bool", "name": "10 - Image Carrée / Square Image", "default": "0", "pos": "10" },
      { "type": "float", "name": "11 - Décalage/Shift X (%)", "default": "0", "min": "-100", "max": "100", "pos": "11" },
      { "type": "float", "name": "12 - Décalage/Shift Y (%)", "default": "0", "min": "-100", "max": "100", "pos": "12" },
      { "type": "float", "name": "13 - Agrandissement/Enlarging", "default": "1", "min": "0.35", "max": "2.75", "pos": "13" },
      { "type": "int", "name": "14 - Contour/Padding", "default": "10", "min": "0", "max": "20", "pos": "14" },
      { "type": "color", "name": "15-16-17 Contour/Padding", "default": "255,255,255", "pos": "15" },
      { "type": "note", "text": "<span foreground=\"orangered\">Polygones</span>" },
      { "type": "int", "name": "18 - Nb Côtés/Sides Polygone", "default": "6", "min": "3", "max": "24", "pos": "18" },
      { "type": "float", "name": "19 - Rotation Polygone", "default": "30", "min": "0", "max": "360", "pos": "19" },
      { "type": "note", "text": "<span foreground=\"orangered\">Rideau</span>" },
      { "type": "choice", "name": "20 - Effet / Effect", "default": "1", "pos": "20", "choices": { "0": "1", "1": "2", "2": "3", "3": "4", "4": "5", "5": "6", "6": "7", "7": "8", "8": "9", "9": "10", "10": "11", "11": "12" } },
      { "type": "int", "name": "21 - Intensité", "default": "-3", "min": "-5", "max": "1", "pos": "21" },
      { "type": "note", "text": "<span foreground=\"orangered\">Oeuf Egg</span>" },
      { "type": "float", "name": "22 - Forme", "default": "300", "min": "200", "max": "400", "pos": "22" },
      { "type": "float", "name": "23 - Angle", "default": "270", "min": "-360", "max": "360", "pos": "23" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/12/17." }
      ]
    },
    {
      "name": "Montage Multi Rows", "lang": "en", "command": "samj_montage_multi_rows_GUI", "command_preview": "samj_montage_multi_rows_GUI", "parameters": [
      { "type": "link", "name": "Documentation", "url": "https://samjcreations.blogspot.com/2020/12/nouveaux-montages-dimages-avec-gmic.html", "align": "center" },
      { "type": "note", "text": " - Montage d'images assemblées horizontalement - Au moins 4 calques/Images pour 2 lignes" },
      { "type": "note", "text": " - Montage of horizontally assembled images - At least 4 layers/Images for 2 rows" },
      { "type": "note", "text": " - 1 ligne est ajoutée automatiquement si modulo Images/Lignes différent de 0" },
      { "type": "note", "text": " - 1 row is automatically added if modulo Images/Rows different from 0" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Montage Multi Rows</span>" },
      { "type": "int", "name": "1 - Nb. Images Montage", "default": "4", "min": "4", "max": "200", "pos": "1" },
      { "type": "int", "name": "2 - Lignes/Rows", "default": "2", "min": "2", "max": "20", "pos": "2" },
      { "type": "choice", "name": "3 - Sélection", "default": "0", "pos": "3", "choices": { "0": "Calques du Haut/Top Layers", "1": "Calques du Bas/Bottom Layers" } },
      { "type": "choice", "name": "4 - Montage Type", "default": "1", "pos": "4", "choices": { "0": "Hauteurs Proportionnelles/Proportional heights", "1": "Hauteur Constante/Same Height" } },
      { "type": "int", "name": "5 - Dimension Pixels", "default": "2400", "min": "800", "max": "11400", "pos": "5" },
      { "type": "int", "name": "6 - Contours Pixels", "default": "2", "min": "0", "max": "24", "pos": "6" },
      { "type": "int", "name": "7 - Espacement/Padding Pixels", "default": "2", "min": "0", "max": "24", "pos": "7" },
      { "type": "bool", "name": "8 - Rotation Images", "default": "0", "pos": "8" },
      { "type": "bool", "name": "9 - Lignes vers Colonnes/Rows to Columns", "default": "0", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/12/11." }
      ]
    },
    {
      "name": "Montage Pappus Chain", "lang": "en", "command": "samj_Montage_Pappus_Chain", "command_preview": "samj_Montage_Pappus_Chain_Preview", "parameters": [
      { "type": "link", "name": "Documentation", "url": "https://samjcreations.blogspot.com/2020/12/nouveaux-montages-dimages-avec-gmic.html", "align": "center" },
      { "type": "note", "text": "Utiliser 10 calques pour ce filtre. La qualité de la prévisualisation est limitée." },
      { "type": "note", "text": "Use 10 layers for this filter. The quality of the preview is limited." },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Rendu - Rendering</span>" },
      { "type": "int", "name": "1 - Rayon Cercle Extérieur Pix.", "default": "1200", "min": "600", "max": "3600", "pos": "1" },
      { "type": "float", "name": "2 - Rotation Rendu/Rendering", "default": "0", "min": "0", "max": "360", "pos": "2" },
      { "type": "note", "text": "<span foreground=\"orangered\">Images Montage</span>" },
      { "type": "choice", "name": "3 - Sélection", "default": "1", "pos": "3", "choices": { "0": "Calques du Bas/Bottom Layers", "1": "Calques du Haut/Top Layers" } },
      { "type": "choice", "name": "4 - Rotation Angle", "default": "0", "pos": "4", "choices": { "0": "0", "1": "90", "2": "-90", "3": "180" } },
      { "type": "float", "name": "5 - Dimension Images", "default": "35", "min": "5", "max": "80", "pos": "5" },
      { "type": "float", "name": "6 - Agrandissement/Enlarging %", "default": "100", "min": "20", "max": "200", "pos": "6" },
      { "type": "float", "name": "7 - Décalage/Shift X (%)", "default": "0", "min": "-100", "max": "100", "pos": "7" },
      { "type": "float", "name": "8 - Décalage/Shift Y (%)", "default": "0", "min": "-100", "max": "100", "pos": "8" },
      { "type": "note", "text": "<span foreground=\"orangered\">Fond/Background</span>" },
      { "type": "color", "name": "9-10-11-12 Cercle Central", "default": "255,255,255,255", "pos": "9" },
      { "type": "color", "name": "13-14-15-16 Extérieur", "default": "0,0,0,0", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/12/09." }
      ]
    },
    {
      "name": "Montage Row", "lang": "en", "command": "samj_montage_row_GUI", "command_preview": "samj_montage_row_GUI_preview", "parameters": [
      { "type": "link", "name": "Documentation", "url": "https://samjcreations.blogspot.com/2020/12/nouveaux-montages-dimages-avec-gmic.html", "align": "center" },
      { "type": "note", "text": "Montage d'images assemblées horizontalement" },
      { "type": "note", "text": "Montage of horizontally assembled images" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Montage Row</span>" },
      { "type": "int", "name": "1 - Max. Images", "default": "8", "min": "1", "max": "200", "pos": "1" },
      { "type": "choice", "name": "2 - Sélection", "default": "0", "pos": "2", "choices": { "0": "Calques du Haut/Top Layers", "1": "Calques du Bas/Bottom Layers" } },
      { "type": "choice", "name": "3 - Montage Type", "default": "1", "pos": "3", "choices": { "0": "Hauteurs Proportionnelles/Proportional heights", "1": "Hauteur Constante/Same Height" } },
      { "type": "int", "name": "4 - Dimension Pixels", "default": "2400", "min": "800", "max": "11400", "pos": "4" },
      { "type": "int", "name": "5 - Contours Pixels", "default": "2", "min": "0", "max": "24", "pos": "5" },
      { "type": "int", "name": "6 - Espacement/Padding Pixels", "default": "2", "min": "0", "max": "24", "pos": "6" },
      { "type": "bool", "name": "7 - Rotation Images", "default": "0", "pos": "7" },
      { "type": "bool", "name": "8 - Ligne vers Colonne/Row to Column", "default": "0", "pos": "8" },
      { "type": "note", "text": "<span foreground=\"orangered\">Déformation</span>" },
      { "type": "bool", "name": "9 - Déformation", "default": "0", "pos": "9" },
      { "type": "choice", "name": "10 - Forme/Shape", "default": "1", "pos": "10", "choices": { "0": "Angle", "1": "Sinus" } },
      { "type": "int", "name": "11 - Offset %", "default": "0", "min": "0", "max": "100", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/12/11." }
      ]
    },
    {
      "name": "Montage Zigzag", "lang": "en", "command": "samj_Montage_Zigzag", "command_preview": "samj_Montage_Zigzag", "parameters": [
      { "type": "link", "name": "Documentation", "url": "https://samjcreations.blogspot.com/2020/12/samuser-avec-gmic-gimp-filtre-montage.html", "align": "center" },
      { "type": "note", "text": "La hauteur du montage sera automatiquement ajustée si la valeur du paramètre 1 est dépassée." },
      { "type": "note", "text": "The mounting height will be automatically adjusted if the value of parameter 1 is exceeded." },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Largeur Max. Approximative/Approximate Maximum Width</span>" },
      { "type": "int", "name": "1 - Dimensions Max. Pixels", "default": "4800", "min": "1200", "max": "11400", "pos": "1" },
      { "type": "note", "text": "<span foreground=\"orangered\">Montage Zigzag</span>" },
      { "type": "int", "name": "2 - Nb Images", "default": "8", "min": "1", "max": "200", "pos": "2" },
      { "type": "choice", "name": "3 - Sélection", "default": "1", "pos": "3", "choices": { "0": "Calques du Bas/Bottom Layers", "1": "Calques du Haut/Top Layers" } },
      { "type": "int", "name": "4 - Demi Hauteur/Half Height", "default": "256", "min": "0", "max": "1200", "pos": "4" },
      { "type": "bool", "name": "5 - Inverser Inclinaison/Reverse Tilt", "default": "0", "pos": "5" },
      { "type": "int", "name": "6 - Adoucir/Smooth", "default": "0", "min": "0", "max": "100", "pos": "6" },
      { "type": "color", "name": "7-8-9-10 Fond/Background", "default": "0,0,0,0", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/12/20." }
      ]
    },
    {
      "name": "Pixelisation Contours", "lang": "en", "command": "samj_Pixelisation_Contours", "command_preview": "samj_Pixelisation_Contours", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Pixélisation</span>" },
      { "type": "float", "name": "Flou/Blur", "default": "0.5", "min": "0", "max": "16", "pos": "1" },
      { "type": "choice", "name": "Forme", "default": "0", "pos": "2", "choices": { "0": "Carrée", "1": "Hexagonale", "2": "Triangulaire A", "3": "Triangulaire B", "4": "Triangulaire C", "5": "Triangulaire D", "6": "Triangulaire E", "7": "Triangulaire F" } },
      { "type": "int", "name": "Pixélisation", "default": "20", "min": "2", "max": "128", "pos": "3" },
      { "type": "int", "name": "Levels", "default": "8", "min": "1", "max": "256", "pos": "4" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "5", "pos": "5" },
      { "type": "int", "name": "Décalages", "default": "0", "min": "0", "max": "32", "pos": "6" },
      { "type": "int", "name": "Rendu", "default": "1", "min": "1", "max": "6", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Smooth [antialias]</span>" },
      { "type": "float", "name": "Amplitude", "default": "0", "min": "0", "max": "100", "pos": "8" },
      { "type": "float", "name": "Edge threshold (%)", "default": "10", "min": "0", "max": "100", "pos": "9" },
      { "type": "float", "name": "Smoothness", "default": "0.8", "min": "0", "max": "5", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/12/20." }
      ]
    },
    {
      "name": "Pointes De Diamants Colorees", "lang": "en", "command": "samj_Pointes_De_Diamants_Colorees", "command_preview": "samj_Pointes_De_Diamants_Colorees", "parameters": [
      { "type": "note", "text": "samj_Pointes_De_Diamants_Colorees" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Limite</span>" },
      { "type": "color", "name": "Couleur Limite", "default": "64,64,64,255", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Resolution</span>" },
      { "type": "int", "name": "Résolution", "default": "8", "min": "1", "max": "32", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Polygones</span>" },
      { "type": "int", "name": "Variation L", "default": "0", "min": "-255", "max": "255", "pos": "6" },
      { "type": "int", "name": "Variation H", "default": "0", "min": "-255", "max": "255", "pos": "7" },
      { "type": "float", "name": "Grossissement A", "default": "1.5", "min": "0.5", "max": "9", "pos": "8" },
      { "type": "float", "name": "Grossissement B", "default": "0", "min": "-10", "max": "10", "pos": "9" },
      { "type": "float", "name": "Angle Variation", "default": "0", "min": "0", "max": "180", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Limite</span>" },
      { "type": "choice", "name": "Rendu", "default": "0", "pos": "11", "choices": { "0": "A", "1": "Inverser", "2": "A + Inverser" } },
      { "type": "float", "name": "Flou / Blur Contours", "default": "0", "min": "0", "max": "5", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Fond</span>" },
      { "type": "color", "name": "Couleur Fond / Background Color", "default": "0,0,0,255", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Contours</span>" },
      { "type": "choice", "name": "Contours Polygones", "default": "0", "pos": "17", "choices": { "0": "Sans", "1": "Couleur Fond", "2": "Blanc", "3": "Gris moyen", "4": "Fonce" } },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Puzzle", "lang": "en", "command": "fx_puzzle", "command_preview": "fx_puzzle_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Applies a jigsaw puzzle pattern overlay. " },
      { "type": "separator" },
      { "type": "note", "text": "Pattern parameters:" },
      { "type": "int", "name": "X-Tiles", "default": "5", "min": "2", "max": "32", "pos": "1" },
      { "type": "int", "name": "Y-Tiles", "default": "5", "min": "2", "max": "32", "pos": "2" },
      { "type": "float", "name": "Curvature", "default": "0.5", "min": "0", "max": "1.5", "pos": "3" },
      { "type": "float", "name": "Connectors Centering", "default": "0", "min": "0", "max": "1", "pos": "4" },
      { "type": "float", "name": "Connectors Variability", "default": "0", "min": "0", "max": "2", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Blending parameters:" },
      { "type": "float", "name": "Relief Smoothness", "default": "0.3", "min": "0", "max": "3", "pos": "6" },
      { "type": "float", "name": "Relief Contrast", "default": "100", "min": "0", "max": "255", "pos": "7" },
      { "type": "float", "name": "Outline Smoothness", "default": "0.2", "min": "0", "max": "3", "pos": "8" },
      { "type": "float", "name": "Outline Contrast", "default": "255", "min": "0", "max": "255", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Recomposition parameters:" },
      { "type": "float", "name": "Scale", "default": "100", "min": "0", "max": "150", "pos": "10" },
      { "type": "float", "name": "Scale Variations", "default": "0", "min": "0", "max": "100", "pos": "11" },
      { "type": "float", "name": "Angle", "default": "0", "min": "-180", "max": "180", "pos": "12" },
      { "type": "float", "name": "Angle Variations", "default": "0", "min": "0", "max": "180", "pos": "13" },
      { "type": "bool", "name": "Shuffle Pieces", "default": "0", "pos": "14" },
      { "type": "bool", "name": "Additional Outline", "default": "0", "pos": "15" },
      { "type": "bool", "name": "Output Each Piece on a Different Layer", "default": "0", "pos": "16" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2014/01/06." }
      ]
    },
    {
      "name": "Reptile", "lang": "en", "command": "samj_reptile", "command_preview": "samj_reptile", "parameters": [
      { "type": "note", "text": "samj_reptile" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Texture Peau / Skin Texture</span>" },
      { "type": "choice", "name": "Forme", "default": "0", "pos": "1", "choices": { "0": "hexagonal", "1": "grid", "2": "triangular Ha", "3": "triangular Hb", "4": "triangular Va", "5": "triangular Vb" } },
      { "type": "int", "name": "Résolution", "default": "64", "min": "1", "max": "256", "pos": "2" },
      { "type": "int", "name": "Spread", "default": "25", "min": "5", "max": "100", "pos": "3" },
      { "type": "float", "name": "Color", "default": "2", "min": "0", "max": "10", "pos": "4" },
      { "type": "float", "name": "Orientation", "default": "0", "min": "0", "max": "1", "pos": "5" },
      { "type": "int", "name": "Light", "default": "40", "min": "0", "max": "100", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Blend</span>" },
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Scintillements Colores", "lang": "en", "command": "samj_Scintillements_Colores", "command_preview": "samj_Scintillements_Colores", "parameters": [
      { "type": "note", "text": "Color Rays / samj_Scintillements_Colores" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Limite</span>" },
      { "type": "color", "name": "Couleur Limite", "default": "64,64,64,255", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Scintillement</span>" },
      { "type": "int", "name": "Résolution L", "default": "8", "min": "1", "max": "32", "pos": "5" },
      { "type": "int", "name": "Résolution H", "default": "8", "min": "1", "max": "32", "pos": "6" },
      { "type": "float", "name": "Dimension Variation", "default": "1", "min": "0.3", "max": "3", "pos": "7" },
      { "type": "int", "name": "Variation Couleur", "default": "768", "min": "1", "max": "768", "pos": "8" },
      { "type": "int", "name": "Scintillement / Rays", "default": "12", "min": "3", "max": "24", "pos": "9" },
      { "type": "float", "name": "Angle Décalage / Shift Angle", "default": "0", "min": "0", "max": "120", "pos": "10" },
      { "type": "int", "name": "Variation Aléatoire / Random", "default": "0", "min": "0", "max": "100", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"Rendu\">Limite</span>" },
      { "type": "choice", "name": "Rendu / Rendering", "default": "0", "pos": "12", "choices": { "0": "A", "1": "Inverser", "2": "A + Inverser" } },
      { "type": "float", "name": "Flou / Blur Contours", "default": "0", "min": "0", "max": "5", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Fond</span>" },
      { "type": "color", "name": "Couleur Fond / Background Color", "default": "0,0,0,255", "pos": "14" },
      { "type": "float", "name": "Déformation", "default": "0", "min": "0", "max": "10", "pos": "18" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Shuffle Patches", "lang": "en", "command": "fx_shuffle_patches", "command_preview": "fx_shuffle_patches_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Randomly rearranges blocks of the image. " },
      { "type": "separator" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "1", "choices": { "0": "Shuffle", "1": "Rotate", "2": "Shuffle & Rotate" } },
      { "type": "choice", "name": "Reconstruct From", "default": "0", "pos": "2", "choices": { "0": "Colors", "1": "Gradients", "2": "Laplacians" } },
      { "type": "int", "name": "Patch Size", "default": "64", "min": "4", "max": "512", "pos": "3" },
      { "type": "float", "name": "Overlap (%)", "default": "0", "min": "0", "max": "50", "pos": "4" },
      { "type": "float", "name": "Overlap Std (%)", "default": "20", "min": "0", "max": "100", "pos": "5" },
      { "type": "int", "name": "Random Seed", "default": "0", "min": "0", "max": "65535", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2022/08/08." }
      ]
    },
    {
      "name": "Taquin", "lang": "en", "command": "fx_taquin", "command_preview": "fx_taquin", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simulates a sliding tile puzzle. " },
      { "type": "separator" },
      { "type": "int", "name": "X-Tiles", "default": "7", "min": "1", "max": "20", "pos": "1" },
      { "type": "int", "name": "Y-Tiles", "default": "7", "min": "1", "max": "20", "pos": "2" },
      { "type": "choice", "name": "Remove Tile", "default": "0", "pos": "3", "choices": { "0": "None", "1": "First", "2": "Last", "3": "Random" } },
      { "type": "separator" },
      { "type": "float", "name": "Relief", "default": "50", "min": "0", "max": "255", "pos": "4" },
      { "type": "float", "name": "Border Thickness (%)", "default": "5", "min": "0", "max": "100", "pos": "5" },
      { "type": "int", "name": "Border Outline", "default": "0", "min": "0", "max": "16", "pos": "6" },
      { "type": "color", "name": "Outline Color", "default": "0,0,0,255", "pos": "7" },
      { "type": "separator" },
      { "type": "int", "name": "Random Seed", "default": "0", "min": "0", "max": "65535", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2014/01/13." }
      ]
    },
    {
      "name": "Tileable Rotation", "lang": "en", "command": "fx_rotate_tileable", "command_preview": "fx_rotate_tileable_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Rotates the image while maintaining tileability. " },
      { "type": "separator" },
      { "type": "float", "name": "Angle", "default": "45", "min": "0", "max": "360", "pos": "1" },
      { "type": "int", "name": "Maximum Size Factor", "default": "8", "min": "0", "max": "20", "pos": "2" },
      { "type": "choice", "name": "Array Mode", "default": "0", "pos": "3", "choices": { "0": "None", "1": "x-axis", "2": "y-axis", "3": "xy-axes", "4": "2xy-axes" } },
      { "type": "separator" },
      { "type": "note", "text": "Note: This filter implements the tileable rotation technique described by Peter Yu, at:" },
      { "type": "link", "name": "[Peter Yu] Create rotated tileable patterns", "url": "http://www.peteryu.ca/tutorials/gimp/rotate_tileable_patterns", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2011/05/26." }
      ]
    },
    {
      "name": "Tiled Isolation", "lang": "en", "command": "fx_isolate_tiles", "command_preview": "fx_isolate_tiles", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Separates grid tiles into distinct regions. " },
      { "type": "separator" },
      { "type": "float", "name": "X-Size", "default": "10", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Y-Size", "default": "10", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "X-Border", "default": "5", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Y-Border", "default": "5", "min": "0", "max": "100", "pos": "4" },
      { "type": "bool", "name": "Keep Tiles Square", "default": "1", "pos": "5" },
      { "type": "bool", "name": "Keep Borders Square", "default": "1", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2011/04/13." }
      ]
    },
    {
      "name": "Tiled Normalization", "lang": "en", "command": "fx_normalize_tiles", "command_preview": "fx_normalize_tiles", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Normalizes the contrast of each tile in a grid individually. " },
      { "type": "separator" },
      { "type": "int", "name": "X-Tile Size (px)", "default": "32", "min": "1", "max": "256", "pos": "1" },
      { "type": "int", "name": "Y-Tile Size (px)", "default": "32", "min": "1", "max": "256", "pos": "2" },
      { "type": "float", "name": "Minimal Value", "default": "0", "min": "0", "max": "255", "pos": "3" },
      { "type": "float", "name": "Maximal Value", "default": "255", "min": "0", "max": "255", "pos": "4" },
      { "type": "int", "name": "X-Overlap (%)", "default": "0", "min": "0", "max": "75", "pos": "5" },
      { "type": "int", "name": "Y-Overlap (%)", "default": "0", "min": "0", "max": "75", "pos": "6" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "12", "pos": "7", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2024/12/17." }
      ]
    },
    {
      "name": "Tiled Parameterization", "lang": "en", "command": "fx_parameterize_tiles", "command_preview": "fx_parameterize_tiles", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Approximate each image tile with a polynomial. " },
      { "type": "separator" },
      { "type": "int", "name": "X-Tile Size (px)", "default": "32", "min": "1", "max": "256", "pos": "1" },
      { "type": "int", "name": "Y-Tile Size (px)", "default": "32", "min": "1", "max": "256", "pos": "2" },
      { "type": "choice", "name": "Fitting Function", "default": "0", "pos": "3", "choices": { "0": "Linear", "1": "Quadratic", "2": "Cubic" } },
      { "type": "int", "name": "X-Overlap (%)", "default": "0", "min": "0", "max": "75", "pos": "4" },
      { "type": "int", "name": "Y-Overlap (%)", "default": "0", "min": "0", "max": "75", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2024/12/17." }
      ]
    },
    {
      "name": "Tiled Random Shifts", "lang": "en", "command": "fx_shift_tiles", "command_preview": "fx_shift_tiles", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Randomly shifts rows and columns of a grid. " },
      { "type": "separator" },
      { "type": "int", "name": "X-Tiles", "default": "10", "min": "1", "max": "30", "pos": "1" },
      { "type": "int", "name": "Y-Tiles", "default": "10", "min": "1", "max": "30", "pos": "2" },
      { "type": "float", "name": "Amplitude", "default": "10", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Tiled Rotation", "lang": "en", "command": "fx_rotate_tiles", "command_preview": "fx_rotate_tiles", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Rotates each image tile individually. " },
      { "type": "separator" },
      { "type": "int", "name": "X-Tiles", "default": "5", "min": "1", "max": "80", "pos": "1" },
      { "type": "int", "name": "Y-Tiles", "default": "5", "min": "1", "max": "80", "pos": "2" },
      { "type": "float", "name": "Angle", "default": "15", "min": "0", "max": "360", "pos": "3" },
      { "type": "float", "name": "X-Shadow", "default": "3", "min": "-20", "max": "20", "pos": "4" },
      { "type": "float", "name": "Y-Shadow", "default": "3", "min": "-20", "max": "20", "pos": "5" },
      { "type": "float", "name": "Smoothness", "default": "1.8", "min": "0", "max": "5", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    }
    ]
  },
  {
    "name": "Artistic", "filters": [
    {
      "name": "Angoisse Anguish", "lang": "en", "command": "samj_Angoisse", "command_preview": "samj_Angoisse", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Itérations" },
      { "type": "int", "name": "Itérations", "default": "1", "min": "1", "max": "3", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Paramètres Filtre dog" },
      { "type": "float", "name": "Sigma 1", "default": "5", "min": "0", "max": "10", "pos": "2" },
      { "type": "float", "name": "Sigma 2", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Paramètres Filtre segment_watershed" },
      { "type": "float", "name": "Threshold", "default": "5", "min": "0", "max": "10", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Paramètres Filtre smooth" },
      { "type": "float", "name": "Amplitude", "default": "100", "min": "0", "max": "200", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Paramètres Filtre noise" },
      { "type": "float", "name": "Amplitude", "default": "2", "min": "0", "max": "10", "pos": "6" },
      { "type": "choice", "name": "Type", "default": "4", "pos": "7", "choices": { "0": "Gaussian", "1": "Uniform", "2": "Salt and pepper", "3": "Poisson", "4": "Rice" } },
      { "type": "separator" },
      { "type": "note", "text": "Paramètres Filtre blend" },
      { "type": "float", "name": "Opacité / Opacity", "default": "1", "min": "0", "max": "1", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Paramètres Filtre sharpen" },
      { "type": "int", "name": "Amplitude", "default": "250", "min": "0", "max": "500", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "samj      Dernière mise à jour : 2016/01/19." }
      ]
    },
    {
      "name": "Aurora", "lang": "en", "command": "gcd_aurora", "command_preview": "gcd_aurora", "parameters": [
      { "type": "note", "text": "Simple aurora effect filter" },
      { "type": "separator" },
      { "type": "float", "name": "Vertical Amount", "default": "6", "min": "0", "max": "50", "pos": "1" },
      { "type": "float", "name": "Horizontal Amount", "default": "1", "min": "0", "max": "50", "pos": "2" },
      { "type": "choice", "name": "Blend Mode", "default": "0", "pos": "3", "choices": { "0": "None", "1": "Average" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2013/02/09." }
      ]
    },
    {
      "name": "Barbouillage Paint Daub", "lang": "en", "command": "samj_Barbouillage_Paint_Daub", "command_preview": "samj_Barbouillage_Paint_Daub", "parameters": [
      { "type": "note", "text": "<span foreground=\"blue\">Barbouillage / Paint Daub</span>" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Gradient Norm</span>" },
      { "type": "int", "name": "Itérations", "default": "2", "min": "1", "max": "3", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Smooth</span>" },
      { "type": "int", "name": "Amplitude", "default": "2", "min": "1", "max": "5", "pos": "2" },
      { "type": "int", "name": "Sharpness", "default": "100", "min": "0", "max": "500", "pos": "3" },
      { "type": "float", "name": "Anisotropy", "default": "0.2", "min": "0", "max": "0.5", "pos": "4" },
      { "type": "float", "name": "Sigma", "default": "1", "min": "0", "max": "10", "pos": "5" },
      { "type": "float", "name": "dl", "default": "4", "min": "0", "max": "10", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Equalize</span>" },
      { "type": "bool", "name": "Equalize", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Plasma Aléatoire / Random Plasma</span>" },
      { "type": "choice", "name": "Plasma", "default": "0", "pos": "8", "choices": { "0": "Non / Without", "1": "Couleurs A", "2": "Couleurs B" } },
      { "type": "int", "name": "Scale Plasma", "default": "8", "min": "1", "max": "30", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "samj      Dernière mise à jour : 2015/04/17." }
      ]
    },
    {
      "name": "Bokeh", "lang": "en", "command": "fx_bokeh", "command_preview": "fx_bokeh", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simulates the aesthetic blur quality of an out-of-focus lens. " },
      { "type": "separator" },
      { "type": "int", "name": "Number of Scales", "default": "3", "min": "1", "max": "10", "pos": "1" },
      { "type": "choice", "name": "Shape", "default": "8", "pos": "2", "choices": { "0": "Triangle", "1": "Square", "2": "Diamond", "3": "Pentagon", "4": "Hexagon", "5": "Octogon", "6": "Decagon", "7": "Star", "8": "Circular" } },
      { "type": "int", "name": "Random Seed", "default": "0", "min": "0", "max": "65535", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Starting parameters:" },
      { "type": "int", "name": "Density", "default": "30", "min": "1", "max": "256", "pos": "4" },
      { "type": "float", "name": "Radius (%)", "default": "8", "min": "0", "max": "50", "pos": "5" },
      { "type": "float", "name": "Outline (%)", "default": "4", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "Inner Shade", "default": "0.3", "min": "0", "max": "1", "pos": "7" },
      { "type": "float", "name": "Smoothness", "default": "0.2", "min": "0", "max": "8", "pos": "8" },
      { "type": "color", "name": "Color", "default": "210,210,80,160", "pos": "9" },
      { "type": "float", "name": "Color Dispersion", "default": "0.7", "min": "0", "max": "1", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "Ending parameters:" },
      { "type": "int", "name": "Density", "default": "30", "min": "1", "max": "256", "pos": "14" },
      { "type": "float", "name": "Radius (%)", "default": "20", "min": "0", "max": "50", "pos": "15" },
      { "type": "float", "name": "Outline (%)", "default": "20", "min": "0", "max": "100", "pos": "16" },
      { "type": "float", "name": "Inner Shade", "default": "1", "min": "0", "max": "1", "pos": "17" },
      { "type": "float", "name": "Smoothness", "default": "2", "min": "0", "max": "8", "pos": "18" },
      { "type": "color", "name": "Color", "default": "170,130,20,110", "pos": "19" },
      { "type": "float", "name": "Color Dispersion", "default": "0.15", "min": "0", "max": "1", "pos": "23" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2015/07/02." }
      ]
    },
    {
      "name": "Brushify", "lang": "en", "command": "fx_brushify", "command_preview": "fx_brushify_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simulates a painting created with specific brush shapes. " },
      { "type": "separator" },
      { "type": "note", "text": "Brush parameters:" },
      { "type": "choice", "name": "Shape", "default": "7", "pos": "1", "choices": { "0": "Bottom layer", "1": "Top layer", "2": "Rectangle", "3": "Diamond", "4": "Pentagon", "5": "Hexagon", "6": "Octogon", "7": "Ellipse", "8": "Gaussian", "9": "Star", "10": "Heart" } },
      { "type": "float", "name": "Ratio", "default": "0.25", "min": "0", "max": "1", "pos": "2" },
      { "type": "int", "name": "Number of Sizes", "default": "4", "min": "1", "max": "16", "pos": "3" },
      { "type": "int", "name": "Maximal Size", "default": "64", "min": "1", "max": "128", "pos": "4" },
      { "type": "float", "name": "Minimal Size (%)", "default": "25", "min": "0", "max": "100", "pos": "5" },
      { "type": "int", "name": "Number of Orientations", "default": "12", "min": "1", "max": "24", "pos": "6" },
      { "type": "float", "name": "Fuzzyness", "default": "0", "min": "0", "max": "10", "pos": "7" },
      { "type": "float", "name": "Smoothness", "default": "2", "min": "0", "max": "10", "pos": "8" },
      { "type": "choice", "name": "Light Type", "default": "4", "pos": "9", "choices": { "0": "None", "1": "Flat", "2": "Darken", "3": "Lighten", "4": "Full" } },
      { "type": "float", "name": "Light Strength", "default": "0.2", "min": "0", "max": "1", "pos": "10" },
      { "type": "float", "name": "Opacity", "default": "0.5", "min": "0", "max": "1", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Painting parameters:" },
      { "type": "float", "name": "Density (%)", "default": "30", "min": "0", "max": "100", "pos": "12" },
      { "type": "float", "name": "Contour Coherence", "default": "1", "min": "0", "max": "1", "pos": "13" },
      { "type": "float", "name": "Orientation Coherence", "default": "1", "min": "0", "max": "1", "pos": "14" },
      { "type": "float", "name": "Gradient Smoothness", "default": "1", "min": "0", "max": "10", "pos": "15" },
      { "type": "float", "name": "Structure Smoothness", "default": "5", "min": "0", "max": "10", "pos": "16" },
      { "type": "float", "name": "Primary Angle", "default": "0", "min": "-180", "max": "180", "pos": "17" },
      { "type": "float", "name": "Angle Dispersion", "default": "0.2", "min": "0", "max": "1", "pos": "18" },
      { "type": "separator" },
      { "type": "bool", "name": "Preview Brush", "default": "1", "pos": "19" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/04/22." }
      ]
    },
    {
      "name": "Cartoon", "lang": "en", "command": "cartoon", "command_preview": "cartoon", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simplifies colors and adds black outlines for a comic book look. " },
      { "type": "separator" },
      { "type": "float", "name": "Smoothness", "default": "3", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "Sharpening", "default": "200", "min": "0", "max": "400", "pos": "2" },
      { "type": "float", "name": "Edge Threshold", "default": "20", "min": "1", "max": "30", "pos": "3" },
      { "type": "float", "name": "Edge Thickness", "default": "0.25", "min": "0", "max": "1", "pos": "4" },
      { "type": "float", "name": "Color Strength", "default": "1.5", "min": "0", "max": "3", "pos": "5" },
      { "type": "int", "name": "Color Quantization", "default": "8", "min": "2", "max": "256", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Chalk It Up [Fr]", "lang": "en", "command": "samj_chalkitup", "command_preview": "samj_chalkitup_preview", "parameters": [
      { "type": "note", "text": "Inspiré du didacticiel proposé par Lylejk" },
      { "type": "note", "text": "Inspired by the tutorial proposed by Lylejk" },
      { "type": "link", "name": "http://justpaste.it/chalk_it_up", "url": "http://justpaste.it/chalk_it_up", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Paramètres peinturage / Painting parameters" },
      { "type": "int", "name": "Abstraction", "default": "5", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "Précision Détails / Details scale", "default": "2.5", "min": "0", "max": "10", "pos": "2" },
      { "type": "float", "name": "Couleur / Color", "default": "1.5", "min": "0", "max": "5", "pos": "3" },
      { "type": "float", "name": "Douceur / Smoothness", "default": "50", "min": "0", "max": "200", "pos": "4" },
      { "type": "bool", "name": "Accentuation nuances / Sharpen shades", "default": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Paramètres filtre Morpho / Morpho parameters" },
      { "type": "choice", "name": "Action", "default": "5", "pos": "6", "choices": { "0": "Erosion", "1": "Dilation", "2": "Opening", "3": "Closing", "4": "Original - Erosion", "5": "Dilation - Original", "6": "Original - Opening", "7": "Closing - Original" } },
      { "type": "int", "name": "Taille / Size", "default": "5", "min": "0", "max": "32", "pos": "7" },
      { "type": "bool", "name": "Inversion Couleurs / Invert colors", "default": "0", "pos": "8" },
      { "type": "bool", "name": "Modeler / Shape", "default": "0", "pos": "9" },
      { "type": "choice", "name": "Canaux / Channel(s)", "default": "7", "pos": "10", "choices": { "0": "All", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "Linear RGB [all]", "8": "Linear RGB [red]", "9": "Linear RGB [green]", "10": "Linear RGB [blue]", "11": "YCbCr [luminance]", "12": "YCbCr [blue-red chrominances]", "13": "YCbCr [blue chrominance]", "14": "YCbCr [red chrominance]", "15": "YCbCr [green chrominance]", "16": "Lab [lightness]", "17": "Lab [ab-chrominances]", "18": "Lab [a-chrominance]", "19": "Lab [b-chrominance]", "20": "Lch [ch-chrominances]", "21": "Lch [c-chrominance]", "22": "Lch [h-chrominance]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [intensity]", "27": "HSL [lightness]", "28": "CMYK [cyan]", "29": "CMYK [magenta]", "30": "CMYK [yellow]", "31": "CMYK [key]" } },
      { "type": "separator" },
      { "type": "note", "text": "Paramètres filtre Spread / Spread parameters" },
      { "type": "float", "name": "X-variations", "default": "0.8", "min": "-5", "max": "5", "pos": "11" },
      { "type": "float", "name": "Y-variations", "default": "1.9", "min": "-5", "max": "5", "pos": "12" },
      { "type": "choice", "name": "Canaux / Channel(s)", "default": "7", "pos": "13", "choices": { "0": "All", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "Linear RGB [all]", "8": "Linear RGB [red]", "9": "Linear RGB [green]", "10": "Linear RGB [blue]", "11": "YCbCr [luminance]", "12": "YCbCr [blue-red chrominances]", "13": "YCbCr [blue chrominance]", "14": "YCbCr [red chrominance]", "15": "YCbCr [green chrominance]", "16": "Lab [lightness]", "17": "Lab [ab-chrominances]", "18": "Lab [a-chrominance]", "19": "Lab [b-chrominance]", "20": "Lch [ch-chrominances]", "21": "Lch [c-chrominance]", "22": "Lch [h-chrominance]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [intensity]", "27": "HSL [lightness]", "28": "CMYK [cyan]", "29": "CMYK [magenta]", "30": "CMYK [yellow]", "31": "CMYK [key]" } },
      { "type": "separator" },
      { "type": "choice", "name": "Type Aperçu", "default": "0", "pos": "14", "choices": { "0": "Tout", "1": "Rendu en bas", "2": "Rendu a droite", "3": "Rendu en haut", "4": "Rendu a gauche" } },
      { "type": "separator" },
      { "type": "note", "text": "Auteurs / Authors : Lylejk/samj/Ronounours.      Dernière mise à jour : 2015/03/31." }
      ]
    },
    {
      "name": "Charred Plastic", "lang": "en", "command": "fx_charred_plastic", "command_preview": "fx_charred_plastic_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Difference of Gaussians" },
      { "type": "float", "name": "1. Amplitude", "default": "1", "min": "-10", "max": "10", "pos": "1" },
      { "type": "float", "name": "2. Gaussian 1", "default": "10", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "3. Gaussian 2", "default": "40", "min": "0", "max": "100", "pos": "3" },
      { "type": "choice", "name": "4. Mode", "default": "1", "pos": "4", "choices": { "0": "Pixels", "1": "Percent" } },
      { "type": "separator" },
      { "type": "note", "text": "Noise" },
      { "type": "float", "name": "5. Amplitude", "default": "10", "min": "0", "max": "200", "pos": "5" },
      { "type": "choice", "name": "6. Noise Type", "default": "0", "pos": "6", "choices": { "0": "Gaussian", "1": "Uniform", "2": "Salt and pepper", "3": "Poisson", "4": "Rice" } },
      { "type": "choice", "name": "7. Channel(s)", "default": "0", "pos": "7", "choices": { "0": "All", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "Linear RGB [all]", "8": "Linear RGB [red]", "9": "Linear RGB [green]", "10": "Linear RGB [blue]", "11": "YCbCr [luminance]", "12": "YCbCr [blue-red chrominances]", "13": "YCbCr [blue chrominance]", "14": "YCbCr [red chrominance]", "15": "YCbCr [green chrominance]", "16": "Lab [lightness]", "17": "Lab [ab-chrominances]", "18": "Lab [a-chrominance]", "19": "Lab [b-chrominance]", "20": "Lch [ch-chrominances]", "21": "Lch [c-chrominance]", "22": "Lch [h-chrominance]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [intensity]", "27": "HSL [lightness]", "28": "CMYK [cyan]", "29": "CMYK [magenta]", "30": "CMYK [yellow]", "31": "CMYK [key]", "32": "YIQ [luma]", "33": "YIQ [chromas]" } },
      { "type": "separator" },
      { "type": "note", "text": "Local Normalization" },
      { "type": "float", "name": "8. Amplitude", "default": "2", "min": "0", "max": "60", "pos": "8" },
      { "type": "int", "name": "9. Radius", "default": "6", "min": "1", "max": "64", "pos": "9" },
      { "type": "float", "name": "10. Neighborhood Smoothness", "default": "5", "min": "0", "max": "40", "pos": "10" },
      { "type": "float", "name": "11. Average Smoothness", "default": "20", "min": "0", "max": "40", "pos": "11" },
      { "type": "bool", "name": "12. Constrain Values", "default": "0", "pos": "12" },
      { "type": "choice", "name": "13. Channel(s)", "default": "11", "pos": "13", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGB [All]", "3": "RGB [Red]", "4": "RGB [Green]", "5": "RGB [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [Luminance]", "12": "YCbCr [Blue-Red Chrominances]", "13": "YCbCr [Blue Chrominance]", "14": "YCbCr [Red Chrominance]", "15": "YCbCr [Green Chrominance]", "16": "Lab [Lightness]", "17": "Lab [ab-Chrominances]", "18": "Lab [a-Chrominance]", "19": "Lab [b-Chrominance]", "20": "Lch [ch-Chrominances]", "21": "Lch [c-Chrominance]", "22": "Lch [h-Chrominance]", "23": "HSV [Hue]", "24": "HSV [Saturation]", "25": "HSV [Value]", "26": "HSI [Intensity]", "27": "HSL [Lightness]", "28": "CMYK [Cyan]", "29": "CMYK [Magenta]", "30": "CMYK [Yellow]", "31": "CMYK [Key]", "32": "YIQ [Luma]", "33": "YIQ [Chromas]", "34": "RYB [All]", "35": "RYB [Red]", "36": "RYB [Yellow]", "37": "RYB [Blue]" } }
      ]
    },
    {
      "name": "Circle Abstraction", "lang": "en", "command": "fx_circle_abstraction", "command_preview": "fx_circle_abstraction", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Approximates the image using variable-sized circles. " },
      { "type": "separator" },
      { "type": "int", "name": "Number of Colors", "default": "8", "min": "2", "max": "16", "pos": "1" },
      { "type": "int", "name": "Density", "default": "5", "min": "1", "max": "100", "pos": "2" },
      { "type": "float", "name": "Opacity", "default": "0.8", "min": "0", "max": "1", "pos": "3" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "4", "pos": "4" },
      { "type": "bool", "name": "Filled Circles", "default": "1", "pos": "5" },
      { "type": "bool", "name": "Fill Transparent Holes", "default": "1", "pos": "6" },
      { "type": "bool", "name": "Normalize Colors", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2014/06/16." }
      ]
    },
    {
      "name": "Color Abstraction Paint", "lang": "en", "command": "fx_ColorAbstractionPaint", "command_preview": "fx_ColorAbstractionPaint_Preview", "parameters": [
      { "type": "int", "name": "Abstraction", "default": "5", "min": "1", "max": "10", "pos": "1" },
      { "type": "float", "name": "Ellipse Ratio", "default": "10", "min": "1", "max": "100", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Opacities, try 0 to see individual effect layers" },
      { "type": "float", "name": "Ellipsionism Opacity", "default": "1", "min": "0", "max": "1", "pos": "3" },
      { "type": "separator" },
      { "type": "bool", "name": "Use as Hue", "default": "0", "pos": "4" },
      { "type": "float", "name": "Painting Opacity", "default": "1", "min": "-1", "max": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "bool", "name": "Use as Saturation", "default": "0", "pos": "6" },
      { "type": "float", "name": "Color Abstraction Opacity", "default": "1", "min": "-1", "max": "1", "pos": "7" },
      { "type": "bool", "name": "Negative Color Abstraction", "default": "0", "pos": "8" },
      { "type": "bool", "name": "Cubism on Color Abstraction", "default": "0", "pos": "9" },
      { "type": "bool", "name": "Kuwahara on Painting", "default": "0", "pos": "10" },
      { "type": "float", "name": "Soften", "default": "0", "min": "0", "max": "100", "pos": "11" },
      { "type": "bool", "name": "Soften All Channels", "default": "0", "pos": "12" },
      { "type": "bool", "name": "DoNotMergeLayers", "default": "0", "pos": "13" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "14", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "link", "name": "Sample art here", "url": "http://www.flickr.com/photos/naggobot/6640743133/", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Arto Huotari.      Latest update : 2014/02/23." }
      ]
    },
    {
      "name": "Color Edges Engrave", "lang": "en", "command": "samj_Color_EdgesO_Engrave", "command_preview": "samj_Color_EdgesO_Engrave", "parameters": [
      { "type": "note", "text": "samj_Color_EdgesO_Engrave" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Edges offsets</span>" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "Threshold", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "int", "name": "Scale", "default": "9", "min": "0", "max": "32", "pos": "3" },
      { "type": "int", "name": "Thickness", "default": "1", "min": "0", "max": "16", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Engrave</span>" },
      { "type": "float", "name": "Radius", "default": "2", "min": "0", "max": "4", "pos": "5" },
      { "type": "float", "name": "Density", "default": "50", "min": "0", "max": "200", "pos": "6" },
      { "type": "float", "name": "Edges", "default": "0", "min": "0", "max": "10", "pos": "7" },
      { "type": "float", "name": "Cohérence", "default": "8", "min": "0", "max": "40", "pos": "8" },
      { "type": "float", "name": "Threshold (%)", "default": "40", "min": "0", "max": "100", "pos": "9" },
      { "type": "int", "name": "Minimal area", "default": "0", "min": "-256", "max": "256", "pos": "10" },
      { "type": "float", "name": "Flat regions removal", "default": "0", "min": "0", "max": "10", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Variations</span>" },
      { "type": "float", "name": "Areas", "default": "1", "min": "0.8", "max": "1.2", "pos": "12" },
      { "type": "bool", "name": "Invert Areas", "default": "0", "pos": "13" },
      { "type": "int", "name": "Segment", "default": "0", "min": "0", "max": "15", "pos": "14" },
      { "type": "bool", "name": "Add", "default": "0", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/02/25." }
      ]
    },
    {
      "name": "Colored Pencils", "lang": "en", "command": "fx_cpencil", "command_preview": "fx_cpencil_preview", "parameters": [
      { "type": "float", "name": "Size", "default": "1.3", "min": "0", "max": "5", "pos": "1" },
      { "type": "float", "name": "Amplitude", "default": "50", "min": "0", "max": "200", "pos": "2" },
      { "type": "int", "name": "Quantize Colors", "default": "20", "min": "2", "max": "255", "pos": "3" },
      { "type": "float", "name": "Color Smoothness", "default": "2", "min": "0", "max": "30", "pos": "4" },
      { "type": "choice", "name": "Mixer Mode", "default": "2", "pos": "5", "choices": { "0": "Color Doping", "1": "Darken", "2": "Hard Light", "3": "Grain Merge", "4": "Lightness", "5": "Multiply", "6": "Soft Light", "7": "Value" } },
      { "type": "float", "name": "Color Intensity", "default": "1", "min": "0", "max": "1", "pos": "6" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "7", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: PhotoComiX.      Latest update : 2010/29/12." }
      ]
    },
    {
      "name": "Comicbook", "lang": "en", "command": "cl_comic", "command_preview": "cl_comic_preview", "parameters": [
      { "type": "note", "text": "Note: Photo to cartoon" },
      { "type": "separator" },
      { "type": "note", "text": " " },
      { "type": "choice", "name": "Simplification", "default": "0", "pos": "1", "choices": { "0": "None", "1": "Light", "2": "Light Antialias", "3": "Strong Antialias", "4": "Median", "5": "Iuwt", "6": "Thin Brush", "7": "Mean Curvature" } },
      { "type": "separator" },
      { "type": "note", "text": "For edges:" },
      { "type": "int", "name": "Flattening for Edge (bilateral)", "default": "2", "min": "0", "max": "5", "pos": "2" },
      { "type": "choice", "name": "Edge Method", "default": "0", "pos": "3", "choices": { "0": "Diff. of Gauss.", "1": "Diff. of BoxBlur", "2": "Diff. of Median" } },
      { "type": "choice", "name": "Edge Desaturation Method", "default": "1", "pos": "4", "choices": { "0": "Lightness", "1": "MaxRGB", "2": "MinRGB" } },
      { "type": "float", "name": "Line Thickness", "default": "1", "min": "0.5", "max": "2", "pos": "5" },
      { "type": "float", "name": "Line Strength", "default": "15", "min": "0", "max": "19", "pos": "6" },
      { "type": "int", "name": "Line Antialias", "default": "15", "min": "0", "max": "100", "pos": "7" },
      { "type": "separator" },
      { "type": "bool", "name": "Add Colors", "default": "1", "pos": "8" },
      { "type": "note", "text": "For colors:" },
      { "type": "int", "name": "Luminosity Increase", "default": "10", "min": "0", "max": "50", "pos": "9" },
      { "type": "int", "name": "Saturation Increase", "default": "20", "min": "0", "max": "50", "pos": "10" },
      { "type": "int", "name": "Final Flattening (bilateral)", "default": "6", "min": "0", "max": "10", "pos": "11" },
      { "type": "choice", "name": "Color Effect", "default": "2", "pos": "12", "choices": { "0": "None", "1": "Deep Black", "2": "Local Contrast Enhancement", "3": "Colorful" } },
      { "type": "choice", "name": "Flat Color Effect", "default": "0", "pos": "13", "choices": { "0": "None", "1": "Rainbow", "2": "Hard Rainbow", "3": "Posterize Softly", "4": "Super Flat" } },
      { "type": "choice", "name": "Colors to Black or White", "default": "0", "pos": "14", "choices": { "0": "No", "1": "Soft Threshold", "2": "Threshold with Soft Antialias", "3": "Lines and Black" } },
      { "type": "separator" },
      { "type": "choice", "name": "Relief Effect", "default": "0", "pos": "15", "choices": { "0": "None", "1": "Groove", "2": "Bump" } },
      { "type": "choice", "name": "Special Effect", "default": "0", "pos": "16", "choices": { "0": "None", "1": "Dream", "2": "Past", "3": "Sketch of Future" } },
      { "type": "separator" },
      { "type": "choice", "name": "Final Antialias", "default": "0", "pos": "17", "choices": { "0": "None", "1": "Simple", "2": "Double" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "18", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "19", "visibility": "0" },
      { "type": "separator" },
      { "type": "link", "name": "Filter discussed here", "url": "http://gimpchat.com/viewtopic.php?f=11&t=19335&p=266517#p266512", "align": "center" },
      { "type": "note", "text": "Author: Claude Lion.      Latest Update: 2022/05/10." },
      { "type": "note", "text": "It uses filters of David Tschumperlé and a few filters of Jérôme Boulanger." }
      ]
    },
    {
      "name": "Contour Drawings", "lang": "en", "command": "samj_Contour_Drawings_en", "command_preview": "samj_Contour_Drawings_en ", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Contour</span>" },
      { "type": "int", "name": "Isophotes", "default": "5", "min": "3", "max": "16", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "5", "pos": "2" },
      { "type": "int", "name": "Dilate", "default": "2", "min": "0", "max": "5", "pos": "3" },
      { "type": "int", "name": "Color Autoindex", "default": "0", "min": "0", "max": "64", "pos": "4" },
      { "type": "bool", "name": "To Gray", "default": "0", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Smooth [antialias]</span>" },
      { "type": "float", "name": "Amplitude", "default": "5", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "Edge threshold (%)", "default": "10", "min": "0", "max": "100", "pos": "7" },
      { "type": "float", "name": "Smoothness", "default": "0.8", "min": "0", "max": "5", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Background</span>" },
      { "type": "bool", "name": "Background", "default": "0", "pos": "9" },
      { "type": "float", "name": "Color", "default": "1.1", "min": "0", "max": "1.2", "pos": "10" },
      { "type": "int", "name": "Variation", "default": "10", "min": "2", "max": "200", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Chalk</span>" },
      { "type": "bool", "name": "Chalk", "default": "0", "pos": "12" },
      { "type": "float", "name": "Spread", "default": "1", "min": "0", "max": "4", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Update : 2016/11/18." }
      ]
    },
    {
      "name": "Contour epais", "lang": "en", "command": "samj_Contour_Epais", "command_preview": "samj_Contour_Epais ", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Edges</span>" },
      { "type": "int", "name": "Itérations", "default": "1", "min": "1", "max": "5", "pos": "1" },
      { "type": "float", "name": "Flou/Blur", "default": "0", "min": "0", "max": "5", "pos": "2" },
      { "type": "float", "name": "Edges %", "default": "5", "min": "0", "max": "100", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Isophotes</span>" },
      { "type": "bool", "name": "Validation", "default": "1", "pos": "4" },
      { "type": "int", "name": "Isophotes", "default": "5", "min": "4", "max": "7", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Smooth [antialias]</span>" },
      { "type": "float", "name": "Amplitude", "default": "5", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "Edge threshold (%)", "default": "10", "min": "0", "max": "100", "pos": "7" },
      { "type": "float", "name": "Smoothness", "default": "0.8", "min": "0", "max": "5", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Rendu</span>" },
      { "type": "int", "name": "Épaisseur", "default": "2", "min": "0", "max": "10", "pos": "9" },
      { "type": "int", "name": "Type Rendu", "default": "1", "min": "1", "max": "6", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2019/12/14." }
      ]
    },
    {
      "name": "Couleurs Rayees", "lang": "en", "command": "samj_Couleurs_Rayees", "command_preview": "samj_Couleurs_Rayees ", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Avant plan</span>" },
      { "type": "bool", "name": "Lumin", "default": "0", "pos": "1" },
      { "type": "int", "name": "Pixélisation", "default": "30", "min": "8", "max": "100", "pos": "2" },
      { "type": "float", "name": "Flou", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "int", "name": "PA", "default": "100", "min": "1", "max": "255", "pos": "4" },
      { "type": "int", "name": "DeformA", "default": "4", "min": "-16", "max": "16", "pos": "5" },
      { "type": "int", "name": "DeformB", "default": "4", "min": "-16", "max": "16", "pos": "6" },
      { "type": "int", "name": "Couleur", "default": "0", "min": "0", "max": "255", "pos": "7" },
      { "type": "int", "name": "Itérations", "default": "2", "min": "1", "max": "4", "pos": "8" },
      { "type": "float", "name": "Puissance", "default": "0.7", "min": "0.1", "max": "2", "pos": "9" },
      { "type": "bool", "name": "Equalize", "default": "0", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2019/12/14." }
      ]
    },
    {
      "name": "Couleurs Rayees 2", "lang": "en", "command": "samj_Couleurs_Rayees_2", "command_preview": "samj_Couleurs_Rayees_2 ", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Avant plan</span>" },
      { "type": "bool", "name": "Lumin", "default": "0", "pos": "1" },
      { "type": "int", "name": "Pixélisation", "default": "30", "min": "8", "max": "100", "pos": "2" },
      { "type": "float", "name": "Flou", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "int", "name": "PA", "default": "100", "min": "1", "max": "255", "pos": "4" },
      { "type": "int", "name": "DeformA", "default": "4", "min": "-16", "max": "16", "pos": "5" },
      { "type": "int", "name": "DeformB", "default": "4", "min": "-16", "max": "16", "pos": "6" },
      { "type": "int", "name": "Limite", "default": "255", "min": "1", "max": "255", "pos": "7" },
      { "type": "int", "name": "Itérations", "default": "1", "min": "1", "max": "4", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/12/07." }
      ]
    },
    {
      "name": "Cubism", "lang": "en", "command": "fx_cubism", "command_preview": "fx_cubism", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Transforms the image into a cubist-style composition of rotated rectangles. " },
      { "type": "separator" },
      { "type": "int", "name": "Iterations", "default": "2", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "Density", "default": "50", "min": "0", "max": "200", "pos": "2" },
      { "type": "float", "name": "Thickness", "default": "10", "min": "0", "max": "50", "pos": "3" },
      { "type": "float", "name": "Angle", "default": "90", "min": "0", "max": "360", "pos": "4" },
      { "type": "float", "name": "Opacity", "default": "0.7", "min": "0.01", "max": "1", "pos": "5" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "5", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/06/05." }
      ]
    },
    {
      "name": "Cubisme A", "lang": "en", "command": "samj_Test_Cubisme_A", "command_preview": "samj_Test_Cubisme_A", "parameters": [
      { "type": "link", "name": "Inspiration", "url": "https://fr.wikipedia.org/wiki/Portrait_de_Pablo_Picasso#/media/Fichier:Juan_Gris_-_Portrait_of_Pablo_Picasso_-_Google_Art_Project.jpg", "align": "center" },
      { "type": "link", "name": "Documentation", "url": "https://samjcreations.blogspot.com/2021/01/samuser-avec-gmic-gimp-filtre-cubisme-a.html", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Dilate</span>" },
      { "type": "bool", "name": "1 - Dilate", "default": "1", "pos": "1" },
      { "type": "int", "name": "2 - DiA", "default": "120", "min": "4", "max": "200", "pos": "2" },
      { "type": "int", "name": "3 - DiB", "default": "70", "min": "4", "max": "200", "pos": "3" },
      { "type": "note", "text": "<span foreground=\"orangered\">Imagegrid Triangular</span>" },
      { "type": "bool", "name": "4 - Imagegrid", "default": "1", "pos": "4" },
      { "type": "int", "name": "5 - X", "default": "30", "min": "1", "max": "256", "pos": "5" },
      { "type": "int", "name": "6 - Y", "default": "30", "min": "1", "max": "256", "pos": "6" },
      { "type": "choice", "name": "7 - Type", "default": "2", "pos": "7", "choices": { "0": "Horizontal", "1": "Vertical", "2": "Crossed", "3": "Cube", "4": "Decreasing", "5": "Increasing" } },
      { "type": "note", "text": "<span foreground=\"orangered\">Variante</span>" },
      { "type": "bool", "name": "8 - Variante", "default": "0", "pos": "8" },
      { "type": "int", "name": "9 - Noise-Spread", "default": "6", "min": "1", "max": "40", "pos": "9" },
      { "type": "float", "name": "10 - Flou/Blur", "default": "0", "min": "0", "max": "10", "pos": "10" },
      { "type": "note", "text": "<span foreground=\"orangered\">Polygonize</span>" },
      { "type": "bool", "name": "11 - Polygonize", "default": "1", "pos": "11" },
      { "type": "int", "name": "12 - Amplitude", "default": "300", "min": "0", "max": "2000", "pos": "12" },
      { "type": "float", "name": "13 - Douceur/Smoothness", "default": "8", "min": "0", "max": "100", "pos": "13" },
      { "type": "float", "name": "14 - Surface minimale/Minimal area", "default": "10", "min": "0", "max": "100", "pos": "14" },
      { "type": "float", "name": "15 - X-resolution", "default": "10", "min": "1", "max": "256", "pos": "15" },
      { "type": "float", "name": "16 - Y-resolution", "default": "20", "min": "1", "max": "256", "pos": "16" },
      { "type": "note", "text": "<span foreground=\"orangered\">Kuwahara</span>" },
      { "type": "bool", "name": "17 - Kuwahara", "default": "1", "pos": "17" },
      { "type": "int", "name": "18 - Répétition/Repeat", "default": "1", "min": "1", "max": "4", "pos": "18" },
      { "type": "int", "name": "19 - Size", "default": "5", "min": "1", "max": "50", "pos": "19" },
      { "type": "note", "text": "<span foreground=\"orangered\">Drawing-Smooth</span>" },
      { "type": "bool", "name": "20 - Drawing", "default": "1", "pos": "20" },
      { "type": "note", "text": "<span foreground=\"orangered\">Brushify</span>" },
      { "type": "bool", "name": "21 - Brushify", "default": "1", "pos": "21" },
      { "type": "int", "name": "22 - Nb Dimensions/Sizes", "default": "64", "min": "1", "max": "128", "pos": "22" },
      { "type": "int", "name": "23 - Opacité/Opacity", "default": "25", "min": "0", "max": "100", "pos": "23" },
      { "type": "int", "name": "24 - Brosse/Brush Dimension", "default": "8", "min": "8", "max": "40", "pos": "24" },
      { "type": "bool", "name": "25 - Inverser/Invert", "default": "1", "pos": "25" },
      { "type": "note", "text": "<span foreground=\"orangered\">Pseudo Gray</span>" },
      { "type": "bool", "name": "26 - Pseudo Gray", "default": "0", "pos": "26" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2021/01/12." }
      ]
    },
    {
      "name": "Cubisme B", "lang": "en", "command": "samj_Test_Cubisme_B", "command_preview": "samj_Test_Cubisme_B", "parameters": [
      { "type": "link", "name": "Documentation", "url": "https://samjcreations.blogspot.com/2021/01/samuser-avec-gmic-gimp-filtre-cubisme-b.html", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Decoupage Triangle A</span>" },
      { "type": "int", "name": "1 - Tuiles", "default": "11", "min": "1", "max": "64", "pos": "1" },
      { "type": "choice", "name": "2 - Type Imagegrid", "default": "6", "pos": "2", "choices": { "0": "Horizontal", "1": "Vertical", "2": "Crossed", "3": "Cube", "4": "Decreasing", "5": "Increasing", "6": "All Types" } },
      { "type": "int", "name": "3 - Noise-Spread", "default": "0", "min": "0", "max": "40", "pos": "3" },
      { "type": "int", "name": "4 - Shift X", "default": "30", "min": "0", "max": "300", "pos": "4" },
      { "type": "int", "name": "5 - Shift Y", "default": "40", "min": "0", "max": "300", "pos": "5" },
      { "type": "note", "text": "<span foreground=\"orangered\">Decoupage Triangle B</span>" },
      { "type": "int", "name": "6 - Tuiles", "default": "17", "min": "1", "max": "64", "pos": "6" },
      { "type": "choice", "name": "7 - Type Imagegrid", "default": "6", "pos": "7", "choices": { "0": "Horizontal", "1": "Vertical", "2": "Crossed", "3": "Cube", "4": "Decreasing", "5": "Increasing", "6": "All Types" } },
      { "type": "int", "name": "8 - Noise-Spread", "default": "0", "min": "0", "max": "40", "pos": "8" },
      { "type": "int", "name": "9 - Shift X", "default": "0", "min": "0", "max": "300", "pos": "9" },
      { "type": "int", "name": "10 - Shift Y", "default": "0", "min": "0", "max": "300", "pos": "10" },
      { "type": "note", "text": "<span foreground=\"orangered\">Mélange/Blend</span>" },
      { "type": "bool", "name": "11 - Inverser/Invert A-B", "default": "0", "pos": "11" },
      { "type": "choice", "name": "12 - Mode", "default": "3", "pos": "12", "choices": { "0": "add", "1": "alpha", "2": "and", "3": "average", "4": "blue", "5": "burn", "6": "darken", "7": "difference", "8": "divide", "9": "dodge", "10": "edges", "11": "exclusion", "12": "freeze", "13": "grainextract", "14": "grainmerge", "15": "green", "16": "hardlight", "17": "hardmix", "18": "hue", "19": "interpolation", "20": "lighten", "21": "lightness", "22": "linearburn", "23": "linearlight", "24": "luminance", "25": "multiply", "26": "negation", "27": "or", "28": "overlay", "29": "pinlight", "30": "red", "31": "reflect", "32": "saturation", "33": "seamless", "34": "seamless_mixed", "35": "screen", "36": "shapeareamax", "37": "shapeareamax0", "38": "shapeareamin", "39": "shapeareamin0", "40": "shapeaverage", "41": "shapeaverage0", "42": "shapemedian", "43": "shapemedian0", "44": "shapemin", "45": "shapemin0", "46": "shapemax", "47": "shapemax0", "48": "softburn", "49": "softdodge", "50": "softlight", "51": "stamp", "52": "subtract", "53": "value", "54": "vividlight", "55": "xor" } },
      { "type": "float", "name": "13 - Opacité / Opacity", "default": "1", "min": "0", "max": "1", "pos": "13" },
      { "type": "note", "text": "<span foreground=\"orangered\">Brushify</span>" },
      { "type": "bool", "name": "14 - Brushify", "default": "1", "pos": "14" },
      { "type": "int", "name": "15 - Nb Dimensions/Sizes", "default": "64", "min": "1", "max": "128", "pos": "15" },
      { "type": "int", "name": "16 - Opacité/Opacity", "default": "25", "min": "0", "max": "100", "pos": "16" },
      { "type": "int", "name": "17 - Brosse/Brush Dimension", "default": "8", "min": "8", "max": "40", "pos": "17" },
      { "type": "bool", "name": "18 - Inverser/Invert", "default": "1", "pos": "18" },
      { "type": "note", "text": "<span foreground=\"orangered\">Pseudo Gray</span>" },
      { "type": "bool", "name": "19 - Pseudo Gray", "default": "0", "pos": "19" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2021/01/13." }
      ]
    },
    {
      "name": "Cutout", "lang": "en", "command": "fx_cutout", "command_preview": "fx_cutout", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Reduces the number of colors to create a paper cutout effect. " },
      { "type": "separator" },
      { "type": "int", "name": "Number of Levels", "default": "4", "min": "2", "max": "32", "pos": "1" },
      { "type": "float", "name": "Edge Simplicity", "default": "0.5", "min": "0", "max": "3", "pos": "2" },
      { "type": "int", "name": "Edge Fidelity", "default": "4", "min": "0", "max": "10", "pos": "3" },
      { "type": "bool", "name": "Normalize", "default": "1", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Authors: David Tschumperlé and Garagecoder       Latest Update: 2014/06/03." }
      ]
    },
    {
      "name": "Diff Tensors Blend", "lang": "en", "command": "samj_Diff_Tensors_Blend", "command_preview": "samj_Diff_Tensors_Blend", "parameters": [
      { "type": "note", "text": "samj_Diff_Tensors_Blend" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Diffusion Tensors</span>" },
      { "type": "float", "name": "Résolution (%)", "default": "10", "min": "1", "max": "20", "pos": "1" },
      { "type": "float", "name": "Size", "default": "5", "min": "0", "max": "16", "pos": "2" },
      { "type": "int", "name": "Outline", "default": "1", "min": "0", "max": "16", "pos": "3" },
      { "type": "float", "name": "Sharpness", "default": "0.15", "min": "0", "max": "1", "pos": "4" },
      { "type": "float", "name": "Anisotropy", "default": "1", "min": "0", "max": "1", "pos": "5" },
      { "type": "float", "name": "Gradient smoothness", "default": "0", "min": "0", "max": "10", "pos": "6" },
      { "type": "float", "name": "Tensor smoothness", "default": "3", "min": "0", "max": "10", "pos": "7" },
      { "type": "int", "name": "Itérations", "default": "1", "min": "1", "max": "10", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Flou-Blur</span>" },
      { "type": "int", "name": "Flou/Blur", "default": "0", "min": "0", "max": "50", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Blend</span>" },
      { "type": "choice", "name": "Mode", "default": "3", "pos": "10", "choices": { "0": "Add", "1": "Alpha", "2": "And", "3": "Average", "4": "Blue", "5": "Burn", "6": "Darken", "7": "Difference", "8": "Divide", "9": "Dodge", "10": "Edges", "11": "Exclusion", "12": "Freeze", "13": "Grain extract", "14": "Grain merge", "15": "Green", "16": "Hard light", "17": "Hard mix", "18": "Hue", "19": "Interpolation", "20": "Lighten", "21": "Lightness", "22": "Linear burn", "23": "Linear light", "24": "Luminance", "25": "Multiply", "26": "Negation", "27": "Or", "28": "Overlay", "29": "Pin light", "30": "Red", "31": "Reflect", "32": "Saturation", "33": "Shape Average", "34": "Shape Average0", "35": "Soft burn", "36": "Soft dodge", "37": "Soft light", "38": "Screen", "39": "Stamp", "40": "Subtract", "41": "Value", "42": "Vivid light", "43": "Xor" } },
      { "type": "float", "name": "Opacité / Opacity", "default": "1", "min": "0", "max": "1", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/10/30." }
      ]
    },
    {
      "name": "Diffusion Tensors", "lang": "en", "command": "fx_diffusiontensors", "command_preview": "fx_diffusiontensors", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Visualizes the diffusion tensors of the image structure. " },
      { "type": "separator" },
      { "type": "float", "name": "Resolution (%)", "default": "10", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "Size", "default": "5", "min": "0", "max": "16", "pos": "2" },
      { "type": "choice", "name": "Color Mode", "default": "3", "pos": "3", "choices": { "0": "Monochrome", "1": "Grayscale", "2": "Orientation", "3": "Color" } },
      { "type": "int", "name": "Outline", "default": "1", "min": "0", "max": "16", "pos": "4" },
      { "type": "separator" },
      { "type": "float", "name": "Sharpness", "default": "0.15", "min": "0", "max": "1", "pos": "5" },
      { "type": "float", "name": "Anisotropy", "default": "1", "min": "0", "max": "1", "pos": "6" },
      { "type": "float", "name": "Gradient Smoothness", "default": "0", "min": "0", "max": "10", "pos": "7" },
      { "type": "float", "name": "Tensor Smoothness", "default": "3", "min": "0", "max": "10", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/10/19." }
      ]
    },
    {
      "name": "Doodle", "lang": "en", "command": "fx_doodle", "command_preview": "gui_no_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Turns the image into a simple line doodle. " },
      { "type": "separator" },
      { "type": "float", "name": "Precision (%)", "default": "30", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "2", "min": "0", "max": "10", "pos": "2" },
      { "type": "float", "name": "Coherence", "default": "2", "min": "0", "max": "10", "pos": "3" },
      { "type": "float", "name": "Contour Threshold", "default": "1.5", "min": "0", "max": "10", "pos": "4" },
      { "type": "int", "name": "Spacing", "default": "2", "min": "0", "max": "20", "pos": "5" },
      { "type": "float", "name": "Minimal Stroke Length", "default": "70", "min": "0", "max": "255", "pos": "6" },
      { "type": "bool", "name": "Preview Progression While Running", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2020/07/08." }
      ]
    },
    {
      "name": "Dream Smoothing", "lang": "en", "command": "fx_dreamsmooth", "command_preview": "fx_dreamsmooth_preview", "parameters": [
      { "type": "note", "text": "Updated for 1.5.4.0" },
      { "type": "note", "text": "A relatively slow filter that uses anisotropic filtering to smooth an image. More iterations produces softer image as does lower opacity values. Practical modes for merging are Alpha and Average. Note that results are resolution dependent." },
      { "type": "separator" },
      { "type": "note", "text": "General settings", "visibility": "2" },
      { "type": "int", "name": "Iterations", "default": "3", "min": "1", "max": "10", "pos": "1" },
      { "type": "bool", "name": "Equalize at Each Step", "default": "1", "pos": "2" },
      { "type": "separator", "visibility": "1" },
      { "type": "note", "text": "Merging of iterations", "visibility": "1" },
      { "type": "choice", "name": "Merging Option", "default": "1", "pos": "3", "choices": { "0": "add", "1": "alpha", "2": "and", "3": "average", "4": "blue", "5": "burn", "6": "darken", "7": "difference", "8": "divide", "9": "dodge", "10": "exclusion", "11": "freeze", "12": "grainextract", "13": "grainmerge", "14": "green", "15": "hardlight", "16": "hardmix", "17": "hue", "18": "interpolation", "19": "lighten", "20": "lightness", "21": "linearburn", "22": "linearlight", "23": "luminance", "24": "multiply", "25": "negation", "26": "or", "27": "overlay", "28": "pinlight", "29": "red", "30": "reflect", "31": "saturation", "32": "screen", "33": "shapeaverage", "34": "softburn", "35": "softdodge", "36": "softlight", "37": "stamp", "38": "subtract", "39": "value", "40": "vividlight", "41": "xor", "42": "edges" } },
      { "type": "float", "name": "Opacity", "default": "0.8", "min": "0", "max": "1", "pos": "4", "visibility": "2" },
      { "type": "bool", "name": "Reverse Order", "default": "0", "pos": "5" },
      { "type": "note", "text": "Settings for layer mode edges" },
      { "type": "float", "name": "Smoothness", "default": "0.8", "min": "0", "max": "5", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Parallel processing settings. Increase spatial overlap if vertical bands appear." },
      { "type": "choice", "name": "Parallel Processing", "default": "1", "pos": "7", "choices": { "0": "Auto", "1": "One thread", "2": "Two threads", "3": "Four threads", "4": "Eight threads", "5": "Sixteen threads" } },
      { "type": "int", "name": "Spatial Overlap", "default": "24", "min": "0", "max": "256", "pos": "8" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "9", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": " Author: Arto Huotari Latest update : 2014/02/20." },
      { "type": "link", "name": "Sample processing here", "url": "http://www.flickr.com/photos/naggobot/7644006608/", "align": "center" }
      ]
    },
    {
      "name": "Dream Smoothing Enhanced", "lang": "en", "command": "fx_dream_smoothing_enhanced", "command_preview": "fx_dream_smoothing_enhanced_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Dream Smoothing Enhanced" },
      { "type": "note", "text": "Filter Design: Zarir Madon ,      Coded with: Claude Sonnet 4.5      [October 11, 2025]      " },
      { "type": "note", "text": "Based on the original Dream Smoothing algorithm by Arto Huotari" },
      { "type": "note", "text": "G'MIC Framework: David Tschumperlé and contributors" },
      { "type": "note", "text": "License: This filter is licensed under the GNU General Public License v3.0" },
      { "type": "separator" },
      { "type": "note", "text": "Core Smoothing" },
      { "type": "int", "name": "Iterations", "default": "3", "min": "1", "max": "10", "pos": "1" },
      { "type": "float", "name": "Amplitude", "default": "430", "min": "50", "max": "2000", "pos": "2" },
      { "type": "float", "name": "Blend Opacity", "default": "0.8", "min": "0", "max": "1", "pos": "3" },
      { "type": "note", "text": "Lower iterations and amplitude for speed" },
      { "type": "separator" },
      { "type": "note", "text": "Anisotropic Parameters - Pass 1" },
      { "type": "float", "name": "Sharpness 1", "default": "0.4", "min": "0.1", "max": "2", "pos": "4" },
      { "type": "float", "name": "Anisotropy 1", "default": "0.5", "min": "0", "max": "1", "pos": "5" },
      { "type": "float", "name": "Alpha 1", "default": "0.6", "min": "0", "max": "1", "pos": "6" },
      { "type": "int", "name": "Sigma 1", "default": "2", "min": "0", "max": "10", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Anisotropic Parameters - Pass 2" },
      { "type": "float", "name": "Sharpness 2", "default": "0.4", "min": "0.1", "max": "2", "pos": "8" },
      { "type": "float", "name": "Anisotropy 2", "default": "1.0", "min": "0", "max": "2", "pos": "9" },
      { "type": "float", "name": "Alpha 2", "default": "0.6", "min": "0", "max": "1", "pos": "10" },
      { "type": "int", "name": "Sigma 2", "default": "4", "min": "0", "max": "10", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Dream Effects" },
      { "type": "float", "name": "Ethereal Glow", "default": "0", "min": "0", "max": "100", "pos": "12" },
      { "type": "float", "name": "Soft Light", "default": "0", "min": "0", "max": "100", "pos": "13" },
      { "type": "float", "name": "Halo", "default": "0", "min": "0", "max": "100", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "Color" },
      { "type": "float", "name": "Brightness", "default": "0", "min": "-100", "max": "100", "pos": "15" },
      { "type": "float", "name": "Contrast", "default": "0", "min": "-100", "max": "100", "pos": "16" },
      { "type": "float", "name": "Saturation", "default": "0", "min": "-100", "max": "100", "pos": "17" },
      { "type": "float", "name": "Hue Shift", "default": "0", "min": "-180", "max": "180", "pos": "18" },
      { "type": "separator" },
      { "type": "note", "text": "Atmosphere" },
      { "type": "float", "name": "Vignette", "default": "0", "min": "0", "max": "100", "pos": "19" },
      { "type": "float", "name": "Fog", "default": "0", "min": "0", "max": "100", "pos": "20" },
      { "type": "float", "name": "Grain", "default": "0", "min": "0", "max": "100", "pos": "21" },
      { "type": "separator" },
      { "type": "note", "text": "Preview Quality" },
      { "type": "choice", "name": "Preview Quality", "default": "1", "pos": "22", "choices": { "0": "Draft", "1": "Normal", "2": "High Quality" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "23", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "24", "visibility": "0" }
      ]
    },
    {
      "name": "Dreamy Abstraction", "lang": "en", "command": "fx_dreamy_abstraction", "command_preview": "fx_dreamy_abstraction_preview", "parameters": [
      { "type": "note", "text": "A less-aggressive alternative to the Painting filter. Yes, 'Joan Rake' made a filter that isn't aggressive! What kind of digital paint has she been sniffing?" },
      { "type": "separator" },
      { "type": "note", "text": "Segmentation" },
      { "type": "float", "name": "1. Edge Threshold", "default": "2", "min": "0", "max": "30", "pos": "1" },
      { "type": "float", "name": "2. Smoothness", "default": "1", "min": "0", "max": "10", "pos": "2" },
      { "type": "choice", "name": "3. Blend Mode", "default": "1", "pos": "3", "choices": { "0": "add", "1": "alpha", "2": "and", "3": "average", "4": "blue", "5": "burn", "6": "darken", "7": "difference", "8": "divide", "9": "dodge", "10": "exclusion", "11": "freeze", "12": "grainextract", "13": "grainmerge", "14": "green", "15": "hardlight", "16": "hardmix", "17": "hue", "18": "interpolation", "19": "lighten", "20": "lightness", "21": "linearburn", "22": "linearlight", "23": "luminance", "24": "multiply", "25": "negation", "26": "or", "27": "overlay", "28": "pinlight", "29": "red", "30": "reflect", "31": "saturation", "32": "screen", "33": "shapeaverage", "34": "softburn", "35": "softdodge", "36": "softlight", "37": "stamp", "38": "subtract", "39": "value", "40": "vividlight", "41": "xor" } },
      { "type": "float", "name": "4. Opacity", "default": "0.5", "min": "0", "max": "1", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Noise" },
      { "type": "float", "name": "5. Noise Amplitude", "default": "10", "min": "0", "max": "100", "pos": "5" },
      { "type": "choice", "name": "6. Noise Type", "default": "0", "pos": "6", "choices": { "0": "Gaussian", "1": "Uniform", "2": "Salt and pepper", "3": "Poisson", "4": "Rice", "5": "Spread" } },
      { "type": "choice", "name": "7. Noise Channel(s)", "default": "0", "pos": "7", "choices": { "0": "All", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "Linear RGB [all]", "8": "Linear RGB [red]", "9": "Linear RGB [green]", "10": "Linear RGB [blue]", "11": "YCbCr [luminance]", "12": "YCbCr [blue-red chrominances]", "13": "YCbCr [blue chrominance]", "14": "YCbCr [red chrominance]", "15": "YCbCr [green chrominance]", "16": "Lab [lightness]", "17": "Lab [ab-chrominances]", "18": "Lab [a-chrominance]", "19": "Lab [b-chrominance]", "20": "Lch [ch-chrominances]", "21": "Lch [c-chrominance]", "22": "Lch [h-chrominance]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [intensity]", "27": "HSL [lightness]", "28": "CMYK [cyan]", "29": "CMYK [magenta]", "30": "CMYK [yellow]", "31": "CMYK [key]", "32": "YIQ [luma]", "33": "YIQ [chromas]" } },
      { "type": "choice", "name": "8. Blend Mode", "default": "7", "pos": "8", "choices": { "0": "add", "1": "alpha", "2": "and", "3": "average", "4": "blue", "5": "burn", "6": "darken", "7": "difference", "8": "divide", "9": "dodge", "10": "exclusion", "11": "freeze", "12": "grainextract", "13": "grainmerge", "14": "green", "15": "hardlight", "16": "hardmix", "17": "hue", "18": "interpolation", "19": "lighten", "20": "lightness", "21": "linearburn", "22": "linearlight", "23": "luminance", "24": "multiply", "25": "negation", "26": "or", "27": "overlay", "28": "pinlight", "29": "red", "30": "reflect", "31": "saturation", "32": "screen", "33": "shapeaverage", "34": "softburn", "35": "softdodge", "36": "softlight", "37": "stamp", "38": "subtract", "39": "value", "40": "vividlight", "41": "xor" } },
      { "type": "float", "name": "9. Opacity", "default": "1", "min": "0", "max": "1", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Blur & Constrained Sharpen" },
      { "type": "float", "name": "11. Blur Strength", "default": "3", "min": "0", "max": "20", "pos": "10" },
      { "type": "float", "name": "12. Sharpen Radius Factor", "default": "1", "min": "0", "max": "5", "pos": "11" },
      { "type": "float", "name": "13. Amount Factor", "default": "1", "min": "0", "max": "5", "pos": "12" },
      { "type": "float", "name": "14. Threshold", "default": "1", "min": "0", "max": "5", "pos": "13" },
      { "type": "float", "name": "15. Constraint Radius Factor", "default": "1", "min": "0", "max": "5", "pos": "14" },
      { "type": "float", "name": "16. Overshoot Factor", "default": "1", "min": "0", "max": "20", "pos": "15" },
      { "type": "choice", "name": "17. Sharpen Channel(s)", "default": "11", "pos": "16", "choices": { "0": "All", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "Linear RGB [all]", "8": "Linear RGB [red]", "9": "Linear RGB [green]", "10": "Linear RGB [blue]", "11": "YCbCr [luminance]", "12": "YCbCr [blue-red chrominances]", "13": "YCbCr [blue chrominance]", "14": "YCbCr [red chrominance]", "15": "YCbCr [green chrominance]", "16": "Lab [lightness]", "17": "Lab [ab-chrominances]", "18": "Lab [a-chrominance]", "19": "Lab [b-chrominance]", "20": "Lch [ch-chrominances]", "21": "Lch [c-chrominance]", "22": "Lch [h-chrominance]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [intensity]", "27": "HSL [lightness]", "28": "CMYK [cyan]", "29": "CMYK [magenta]", "30": "CMYK [yellow]", "31": "CMYK [key]" } },
      { "type": "choice", "name": "18. Value Action", "default": "1", "pos": "17", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } },
      { "type": "float", "name": "19. Antialias", "default": "25", "min": "0", "max": "100", "pos": "18" },
      { "type": "separator" },
      { "type": "note", "text": "Glow" },
      { "type": "float", "name": "20. Size", "default": "5", "min": "0", "max": "50", "pos": "19" },
      { "type": "float", "name": "21. Intensity", "default": "1", "min": "0", "max": "3", "pos": "20" },
      { "type": "float", "name": "22. Darken", "default": "0", "min": "0", "max": "1", "pos": "21" },
      { "type": "float", "name": "23. Saturation", "default": "1.5", "min": "0", "max": "4", "pos": "22" },
      { "type": "separator" },
      { "type": "choice", "name": "24-26. Preview type", "default": "0", "pos": "23", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "24", "visibility": "0" }
      ]
    },
    {
      "name": "Dreamy Watercolour", "lang": "en", "command": "fx_dreamy_watercolour", "command_preview": "fx_dreamy_watercolour", "parameters": [
      { "type": "note", "text": "Creates abstract watercolour images." },
      { "type": "separator" },
      { "type": "note", "text": "Gradient norm" },
      { "type": "float", "name": "1. Smoothness", "default": "0", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "2. Linearity", "default": "0.3", "min": "0", "max": "2", "pos": "2" },
      { "type": "float", "name": "3. Min Threshold", "default": "40", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "4. Max Threshold", "default": "60", "min": "0", "max": "100", "pos": "4" },
      { "type": "bool", "name": "5. Negative", "default": "0", "pos": "5" },
      { "type": "float", "name": "6. Opacity", "default": "1", "min": "0", "max": "1", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Antialias" },
      { "type": "float", "name": "7. Amplitude", "default": "50", "min": "0", "max": "200", "pos": "7" },
      { "type": "float", "name": "8. Edge Threshold (%)", "default": "0", "min": "0", "max": "100", "pos": "8" },
      { "type": "float", "name": "9. Smoothness", "default": "10", "min": "0", "max": "20", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Dreamy abstraction" },
      { "type": "separator" },
      { "type": "note", "text": "Segmentation" },
      { "type": "float", "name": "10. Edge Threshold", "default": "2", "min": "0", "max": "30", "pos": "10" },
      { "type": "float", "name": "11. Smoothness", "default": "1", "min": "0", "max": "10", "pos": "11" },
      { "type": "choice", "name": "12. Blend Mode", "default": "1", "pos": "12", "choices": { "0": "add", "1": "alpha", "2": "and", "3": "average", "4": "blue", "5": "burn", "6": "darken", "7": "difference", "8": "divide", "9": "dodge", "10": "exclusion", "11": "freeze", "12": "grainextract", "13": "grainmerge", "14": "green", "15": "hardlight", "16": "hardmix", "17": "hue", "18": "interpolation", "19": "lighten", "20": "lightness", "21": "linearburn", "22": "linearlight", "23": "luminance", "24": "multiply", "25": "negation", "26": "or", "27": "overlay", "28": "pinlight", "29": "red", "30": "reflect", "31": "saturation", "32": "screen", "33": "shapeaverage", "34": "softburn", "35": "softdodge", "36": "softlight", "37": "stamp", "38": "subtract", "39": "value", "40": "vividlight", "41": "xor" } },
      { "type": "float", "name": "13. Opacity", "default": "0.5", "min": "0", "max": "1", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "Noise" },
      { "type": "float", "name": "14. Noise Amplitude", "default": "10", "min": "0", "max": "100", "pos": "14" },
      { "type": "choice", "name": "15. Noise Type", "default": "0", "pos": "15", "choices": { "0": "Gaussian", "1": "Uniform", "2": "Salt and pepper", "3": "Poisson", "4": "Rice", "5": "Spread" } },
      { "type": "choice", "name": "16. Noise Channel(s)", "default": "0", "pos": "16", "choices": { "0": "All", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "Linear RGB [all]", "8": "Linear RGB [red]", "9": "Linear RGB [green]", "10": "Linear RGB [blue]", "11": "YCbCr [luminance]", "12": "YCbCr [blue-red chrominances]", "13": "YCbCr [blue chrominance]", "14": "YCbCr [red chrominance]", "15": "YCbCr [green chrominance]", "16": "Lab [lightness]", "17": "Lab [ab-chrominances]", "18": "Lab [a-chrominance]", "19": "Lab [b-chrominance]", "20": "Lch [ch-chrominances]", "21": "Lch [c-chrominance]", "22": "Lch [h-chrominance]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [intensity]", "27": "HSL [lightness]", "28": "CMYK [cyan]", "29": "CMYK [magenta]", "30": "CMYK [yellow]", "31": "CMYK [key]", "32": "YIQ [luma]", "33": "YIQ [chromas]" } },
      { "type": "choice", "name": "17. Blend Mode", "default": "7", "pos": "17", "choices": { "0": "add", "1": "alpha", "2": "and", "3": "average", "4": "blue", "5": "burn", "6": "darken", "7": "difference", "8": "divide", "9": "dodge", "10": "exclusion", "11": "freeze", "12": "grainextract", "13": "grainmerge", "14": "green", "15": "hardlight", "16": "hardmix", "17": "hue", "18": "interpolation", "19": "lighten", "20": "lightness", "21": "linearburn", "22": "linearlight", "23": "luminance", "24": "multiply", "25": "negation", "26": "or", "27": "overlay", "28": "pinlight", "29": "red", "30": "reflect", "31": "saturation", "32": "screen", "33": "shapeaverage", "34": "softburn", "35": "softdodge", "36": "softlight", "37": "stamp", "38": "subtract", "39": "value", "40": "vividlight", "41": "xor" } },
      { "type": "float", "name": "18. Opacity", "default": "1", "min": "0", "max": "1", "pos": "18" },
      { "type": "separator" },
      { "type": "note", "text": "Blur & Constrained Sharpen" },
      { "type": "float", "name": "19. Blur Strength", "default": "3", "min": "0", "max": "20", "pos": "19" },
      { "type": "float", "name": "20. Sharpen Radius Factor", "default": "1", "min": "0", "max": "5", "pos": "20" },
      { "type": "float", "name": "21. Amount Factor", "default": "1", "min": "0", "max": "5", "pos": "21" },
      { "type": "float", "name": "22. Threshold", "default": "1", "min": "0", "max": "5", "pos": "22" },
      { "type": "float", "name": "23. Constraint Radius Factor", "default": "1", "min": "0", "max": "5", "pos": "23" },
      { "type": "float", "name": "24. Overshoot Factor", "default": "1", "min": "0", "max": "20", "pos": "24" },
      { "type": "choice", "name": "25. Sharpen Channel(s)", "default": "11", "pos": "25", "choices": { "0": "All", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "Linear RGB [all]", "8": "Linear RGB [red]", "9": "Linear RGB [green]", "10": "Linear RGB [blue]", "11": "YCbCr [luminance]", "12": "YCbCr [blue-red chrominances]", "13": "YCbCr [blue chrominance]", "14": "YCbCr [red chrominance]", "15": "YCbCr [green chrominance]", "16": "Lab [lightness]", "17": "Lab [ab-chrominances]", "18": "Lab [a-chrominance]", "19": "Lab [b-chrominance]", "20": "Lch [ch-chrominances]", "21": "Lch [c-chrominance]", "22": "Lch [h-chrominance]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [intensity]", "27": "HSL [lightness]", "28": "CMYK [cyan]", "29": "CMYK [magenta]", "30": "CMYK [yellow]", "31": "CMYK [key]" } },
      { "type": "choice", "name": "26. Value Action", "default": "1", "pos": "26", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } },
      { "type": "float", "name": "27. Antialias", "default": "25", "min": "0", "max": "100", "pos": "27" },
      { "type": "separator" },
      { "type": "note", "text": "Deform colour layer" },
      { "type": "float", "name": "28. Amplitude", "default": "5", "min": "0", "max": "50", "pos": "28" },
      { "type": "choice", "name": "29. Interpolation", "default": "1", "pos": "29", "choices": { "0": "None", "1": "Linear", "2": "Bicubic" } },
      { "type": "float", "name": "30. Matrix Density", "default": "10", "min": "1", "max": "100", "pos": "30" },
      { "type": "choice", "name": "31. Matrix Interpolation", "default": "1", "pos": "31", "choices": { "0": "Linear", "1": "Bicubic" } },
      { "type": "choice", "name": "32. Mode", "default": "0", "pos": "32", "choices": { "0": "Noise", "1": "Spread noise" } },
      { "type": "float", "name": "33. Character", "default": "0", "min": "-100", "max": "100", "pos": "33" },
      { "type": "choice", "name": "34. Boundary", "default": "1", "pos": "34", "choices": { "0": "Dirichlet", "1": "Neumann", "2": "Periodic", "3": "Mirror" } },
      { "type": "separator" },
      { "type": "note", "text": "Plasma" },
      { "type": "float", "name": "35. Alpha", "default": "0.5", "min": "0", "max": "5", "pos": "35" },
      { "type": "float", "name": "36. Beta", "default": "0", "min": "0", "max": "100", "pos": "36" },
      { "type": "float", "name": "37. Scale", "default": "8", "min": "1", "max": "20", "pos": "37" },
      { "type": "bool", "name": "38. Randomize", "default": "1", "pos": "38" },
      { "type": "bool", "name": "39. Transparency", "default": "0", "pos": "39" },
      { "type": "color", "name": "40-42. Color Balance", "default": "128,128,128", "pos": "40" },
      { "type": "float", "name": "43. Fix Edges", "default": "0.5", "min": "0", "max": "1", "pos": "43" },
      { "type": "separator" },
      { "type": "note", "text": "Transfer colours" },
      { "type": "bool", "name": "44. Enable", "default": "1", "pos": "44" },
      { "type": "int", "name": "45. Regularization", "default": "8", "min": "0", "max": "32", "pos": "45" },
      { "type": "float", "name": "46. Preserve Luminance", "default": "0.2", "min": "0", "max": "1", "pos": "46" },
      { "type": "choice", "name": "47. Precision", "default": "1", "pos": "47", "choices": { "0": "Low", "1": "Normal", "2": "High", "3": "Very high" } },
      { "type": "choice", "name": "48. Reference Colors", "default": "1", "pos": "48", "choices": { "0": "Plasma", "1": "Painting" } },
      { "type": "bool", "name": "49. Add User-Defined Constraints (Interactive)", "default": "0", "pos": "49" },
      { "type": "choice", "name": "50. Blend Mode", "default": "27", "pos": "50", "choices": { "0": "add", "1": "alpha", "2": "and", "3": "average", "4": "blue", "5": "burn", "6": "darken", "7": "difference", "8": "divide", "9": "dodge", "10": "exclusion", "11": "freeze", "12": "grainextract", "13": "grainmerge", "14": "green", "15": "hardlight", "16": "hardmix", "17": "hue", "18": "interpolation", "19": "lighten", "20": "lightness", "21": "linearburn", "22": "linearlight", "23": "luminance", "24": "multiply", "25": "negation", "26": "or", "27": "overlay", "28": "pinlight", "29": "red", "30": "reflect", "31": "saturation", "32": "screen", "33": "shapeaverage", "34": "softburn", "35": "softdodge", "36": "softlight", "37": "stamp", "38": "subtract", "39": "value", "40": "vividlight", "41": "xor" } },
      { "type": "float", "name": "51. Opacity", "default": "0.75", "min": "0", "max": "1", "pos": "51" },
      { "type": "bool", "name": "52. Reverse Order", "default": "0", "pos": "52" },
      { "type": "separator" },
      { "type": "note", "text": "Local normalisation" },
      { "type": "float", "name": "53. Amplitude", "default": "1", "min": "0", "max": "80", "pos": "53" },
      { "type": "int", "name": "54. Radius", "default": "20", "min": "1", "max": "96", "pos": "54" },
      { "type": "float", "name": "55. Neighborhood Smoothness", "default": "40", "min": "0", "max": "60", "pos": "55" },
      { "type": "float", "name": "56. Average Smoothness", "default": "40", "min": "0", "max": "60", "pos": "56" },
      { "type": "bool", "name": "57. Constrain Values", "default": "1", "pos": "57" },
      { "type": "choice", "name": "58. Channel(s)", "default": "2", "pos": "58", "choices": { "0": "All", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "Linear RGB [all]", "8": "Linear RGB [red]", "9": "Linear RGB [green]", "10": "Linear RGB [blue]", "11": "YCbCr [luminance]", "12": "YCbCr [blue-red chrominances]", "13": "YCbCr [blue chrominance]", "14": "YCbCr [red chrominance]", "15": "YCbCr [green chrominance]", "16": "Lab [lightness]", "17": "Lab [ab-chrominances]", "18": "Lab [a-chrominance]", "19": "Lab [b-chrominance]", "20": "Lch [ch-chrominances]", "21": "Lch [c-chrominance]", "22": "Lch [h-chrominance]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [intensity]", "27": "HSL [lightness]", "28": "CMYK [cyan]", "29": "CMYK [magenta]", "30": "CMYK [yellow]", "31": "CMYK [key]", "32": "YIQ [luma]", "33": "YIQ [chromas]" } },
      { "type": "separator" },
      { "type": "note", "text": "Noise" },
      { "type": "float", "name": "59. Power", "default": "1.25", "min": "0", "max": "5", "pos": "59" },
      { "type": "choice", "name": "60. Noise Type", "default": "0", "pos": "60", "choices": { "0": "Gaussian", "1": "Uniform", "2": "Salt and pepper", "3": "Poisson", "4": "Rice" } },
      { "type": "choice", "name": "61. Channel(s)", "default": "2", "pos": "61", "choices": { "0": "All", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "Linear RGB [all]", "8": "Linear RGB [red]", "9": "Linear RGB [green]", "10": "Linear RGB [blue]", "11": "YCbCr [luminance]", "12": "YCbCr [blue-red chrominances]", "13": "YCbCr [blue chrominance]", "14": "YCbCr [red chrominance]", "15": "YCbCr [green chrominance]", "16": "Lab [lightness]", "17": "Lab [ab-chrominances]", "18": "Lab [a-chrominance]", "19": "Lab [b-chrominance]", "20": "Lch [ch-chrominances]", "21": "Lch [c-chrominance]", "22": "Lch [h-chrominance]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [intensity]", "27": "HSL [lightness]", "28": "CMYK [cyan]", "29": "CMYK [magenta]", "30": "CMYK [yellow]", "31": "CMYK [key]", "32": "YIQ [luma]", "33": "YIQ [chromas]" } },
      { "type": "choice", "name": "62. Value Action", "default": "1", "pos": "62", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } },
      { "type": "choice", "name": "63. Blend Mode", "default": "27", "pos": "63", "choices": { "0": "add", "1": "alpha", "2": "and", "3": "average", "4": "blue", "5": "burn", "6": "darken", "7": "difference", "8": "divide", "9": "dodge", "10": "exclusion", "11": "freeze", "12": "grainextract", "13": "grainmerge", "14": "green", "15": "hardlight", "16": "hardmix", "17": "hue", "18": "interpolation", "19": "lighten", "20": "lightness", "21": "linearburn", "22": "linearlight", "23": "luminance", "24": "multiply", "25": "negation", "26": "or", "27": "overlay", "28": "pinlight", "29": "red", "30": "reflect", "31": "saturation", "32": "screen", "33": "shapeaverage", "34": "softburn", "35": "softdodge", "36": "softlight", "37": "stamp", "38": "subtract", "39": "value", "40": "vividlight", "41": "xor" } },
      { "type": "float", "name": "64. Opacity", "default": "1", "min": "0", "max": "1", "pos": "64" }
      ]
    },
    {
      "name": "Edges And LIC", "lang": "en", "command": "samj_Edges_And_LIC", "command_preview": "samj_Edges_And_LIC", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">samj_Edges_And_LIC</span>" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Background [Step 1]</span>" },
      { "type": "choice", "name": "Rendering", "default": "0", "pos": "1", "choices": { "0": "A", "1": "B", "2": "C" } },
      { "type": "int", "name": "Lic", "default": "200", "min": "10", "max": "1000", "pos": "2" },
      { "type": "int", "name": "Dilate", "default": "0", "min": "0", "max": "2", "pos": "3" },
      { "type": "int", "name": "Sharpen", "default": "0", "min": "0", "max": "5000", "pos": "4" },
      { "type": "float", "name": "Blur", "default": "0", "min": "0", "max": "5", "pos": "5" },
      { "type": "separator" },
      { "type": "float", "name": "Edges %", "default": "15", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "Pow", "default": "8", "min": "0.2", "max": "8", "pos": "7" },
      { "type": "int", "name": "N min", "default": "127", "min": "0", "max": "255", "pos": "8" },
      { "type": "int", "name": "N max", "default": "255", "min": "0", "max": "255", "pos": "9" },
      { "type": "choice", "name": "Gray", "default": "0", "pos": "10", "choices": { "0": "A", "1": "B", "2": "C", "3": "D", "4": "E", "5": "F", "6": "G" } },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Abstraction [Optional Step 2]</span>" },
      { "type": "bool", "name": "Abstraction", "default": "0", "pos": "11" },
      { "type": "float", "name": "Smoothness", "default": "1", "min": "0", "max": "10", "pos": "12" },
      { "type": "int", "name": "Levels", "default": "20", "min": "2", "max": "100", "pos": "13" },
      { "type": "float", "name": "Contrast", "default": "0.2", "min": "0.01", "max": "1", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Blend [Optional Step 3]</span>" },
      { "type": "bool", "name": "Blend", "default": "0", "pos": "15" },
      { "type": "choice", "name": "Mode", "default": "14", "pos": "16", "choices": { "0": "Add", "1": "Alpha", "2": "And", "3": "Average", "4": "Blue", "5": "Burn", "6": "Darken", "7": "Difference", "8": "Divide", "9": "Dodge", "10": "Edges", "11": "Exclusion", "12": "Freeze", "13": "Grain extract", "14": "Grain merge", "15": "Green", "16": "Hard light", "17": "Hard mix", "18": "Hue", "19": "Interpolation", "20": "Lighten", "21": "Lightness", "22": "Linear burn", "23": "Linear light", "24": "Luminance", "25": "Multiply", "26": "Negation", "27": "Or", "28": "Overlay", "29": "Pin light", "30": "Red", "31": "Reflect", "32": "Saturation", "33": "Shape area max", "34": "Shape area max0", "35": "Shape area min", "36": "Shape area min0", "37": "Shape average", "38": "Shape average0", "39": "Shape min", "40": "Shape min0", "41": "Shape max", "42": "Shape max0", "43": "Soft burn", "44": "Soft dodge", "45": "Soft light", "46": "Screen", "47": "Stamp", "48": "Subtract", "49": "Value", "50": "Vivid light", "51": "Xor" } },
      { "type": "bool", "name": "Reverse", "default": "1", "pos": "17" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Update : 2017/01/09." }
      ]
    },
    {
      "name": "Ellipsionism", "lang": "en", "command": "fx_ellipsionism", "command_preview": "fx_ellipsionism", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Reconstructs the image using a collection of ellipses. " },
      { "type": "separator" },
      { "type": "float", "name": "Primary Radius", "default": "20", "min": "1", "max": "100", "pos": "1" },
      { "type": "float", "name": "Secondary Radius", "default": "10", "min": "1", "max": "100", "pos": "2", "visibility": "0" },
      { "type": "float", "name": "Smoothness", "default": "0.5", "min": "0", "max": "10", "pos": "3", "visibility": "0" },
      { "type": "float", "name": "Opacity", "default": "0.7", "min": "0", "max": "1", "pos": "4", "visibility": "0" },
      { "type": "float", "name": "Outline", "default": "3", "min": "1", "max": "3", "pos": "5", "visibility": "0" },
      { "type": "float", "name": "Density", "default": "0.5", "min": "0.1", "max": "2", "pos": "6", "visibility": "0" },
      { "type": "separator", "visibility": "0" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29.", "visibility": "0" }
      ]
    },
    {
      "name": "Felt Pen", "lang": "en", "command": "fx_feltpen", "command_preview": "fx_feltpen", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simulates a drawing made with felt-tip markers. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "300", "min": "0", "max": "4000", "pos": "1" },
      { "type": "float", "name": "Density", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "1", "min": "0", "max": "10", "pos": "3" },
      { "type": "float", "name": "Opacity", "default": "0.1", "min": "0", "max": "1", "pos": "4" },
      { "type": "float", "name": "Edge", "default": "20", "min": "0", "max": "100", "pos": "5" },
      { "type": "int", "name": "Thickness", "default": "5", "min": "2", "max": "32", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2012/10/25." }
      ]
    },
    {
      "name": "Finger Paint", "lang": "en", "command": "gtutor_fpaint", "command_preview": "gtutor_fpaint_preview", "parameters": [
      { "type": "note", "text": "Paint Detail" },
      { "type": "float", "name": "Finger Size", "default": "0.5", "min": "0", "max": "1", "pos": "1" },
      { "type": "float", "name": "Keep Detail", "default": "0.5", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "Bristle Size", "default": "0.0", "min": "0", "max": "1", "pos": "3" },
      { "type": "bool", "name": "Edge Detect Includes Chroma", "default": "0", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Render Detail" },
      { "type": "float", "name": "Light Direction", "default": "45.0", "min": "0", "max": "360.0", "pos": "5", "visibility": "0" },
      { "type": "float", "name": "Shadow", "default": "0.5", "min": "0", "max": "1", "pos": "6" },
      { "type": "float", "name": "Highlight", "default": "0.5", "min": "0", "max": "1", "pos": "7" },
      { "type": "float", "name": "Specular", "default": "0.5", "min": "0", "max": "1", "pos": "8" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "9", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" }, "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Garry R. Osgood. Latest update: 2015/02/26." },
      { "type": "link", "name": "Finger paint instructions and tutorial.", "url": "https://gmic.eu/oldtutorial/the-fingerpainting-filter.shtml", "align": "center" },
      { "type": "link", "name": "Fingerpaint theory.", "url": "https://gmic.eu/tutorial/fingerpainting.html", "align": "center" }
      ]
    },
    {
      "name": "Flamboyance Test", "lang": "en", "command": "samj_Flamboyance_Test", "command_preview": "samj_Flamboyance_Test_preview", "parameters": [
      { "type": "separator" },
      { "type": "link", "name": "GMIC Adaptation of the tutorial written by Lyle Kroll", "url": "http://gimpchat.com/viewtopic.php?f=10&t=14999", "align": "center" },
      { "type": "note", "text": "<span foreground=\"blue\">Thank you for this beautiful and interesting effect</span>" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Hard Sketch</u></span>" },
      { "type": "float", "name": "Amplitude", "default": "65", "min": "0", "max": "4000", "pos": "1", "visibility": "0" },
      { "type": "float", "name": "Density", "default": "28", "min": "0", "max": "100", "pos": "2", "visibility": "0" },
      { "type": "float", "name": "Smoothness", "default": "9.25", "min": "0", "max": "10", "pos": "3", "visibility": "0" },
      { "type": "float", "name": "Opacity", "default": "0.3", "min": "0", "max": "1", "pos": "4", "visibility": "0" },
      { "type": "float", "name": "Edge", "default": "0", "min": "0", "max": "100", "pos": "5", "visibility": "0" },
      { "type": "bool", "name": "Fast approximation", "default": "1", "pos": "6", "visibility": "0" },
      { "type": "float", "name": "Color Variation", "default": "1.1", "min": "0.5", "max": "2", "pos": "7", "visibility": "0" },
      { "type": "separator", "visibility": "0" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Smooth Bilateral</u></span>", "visibility": "0" },
      { "type": "float", "name": "Spatial variance", "default": "10", "min": "0", "max": "100", "pos": "8", "visibility": "0" },
      { "type": "float", "name": "Value variance", "default": "12", "min": "0", "max": "100", "pos": "9" },
      { "type": "int", "name": "Iterations", "default": "2", "min": "1", "max": "10", "pos": "10" },
      { "type": "separator", "visibility": "0" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Blend</u></span>" },
      { "type": "choice", "name": "Grain Type", "default": "0", "pos": "11", "choices": { "0": "A", "1": "B", "2": "C", "3": "D" } },
      { "type": "int", "name": "Iterations", "default": "0", "min": "0", "max": "10", "pos": "12" },
      { "type": "float", "name": "Blend Proportion", "default": "1", "min": "0", "max": "1", "pos": "13" },
      { "type": "bool", "name": "Interruption Flamboyance", "default": "0", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Smooth</u></span>" },
      { "type": "float", "name": "Amplitude", "default": "150", "min": "0", "max": "1000", "pos": "15" },
      { "type": "float", "name": "Sharpness", "default": "0.42", "min": "0", "max": "2", "pos": "16" },
      { "type": "float", "name": "Anisotropy", "default": "0.85", "min": "0", "max": "1", "pos": "17" },
      { "type": "float", "name": "Gradient smoothness", "default": "0.6", "min": "0", "max": "10", "pos": "18" },
      { "type": "float", "name": "Tensor smoothness", "default": "7.83", "min": "0", "max": "10", "pos": "19" },
      { "type": "float", "name": "Spatial precision", "default": "0.68", "min": "0.1", "max": "2", "pos": "20" },
      { "type": "float", "name": "Angular precision", "default": "19", "min": "1", "max": "180", "pos": "21" },
      { "type": "float", "name": "Value precision", "default": "2.65", "min": "0.1", "max": "5", "pos": "22" },
      { "type": "choice", "name": "Interpolation", "default": "0", "pos": "23", "choices": { "0": "Nearest neighbor", "1": "Linear", "2": "Runge-Kutta" } },
      { "type": "bool", "name": "Fast approximation", "default": "1", "pos": "24" },
      { "type": "float", "name": "Color Variation", "default": "1", "min": "0.5", "max": "2", "pos": "25" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Cartoon</u></span>" },
      { "type": "float", "name": "Smoothness", "default": "3", "min": "0", "max": "10", "pos": "26" },
      { "type": "float", "name": "Sharpening", "default": "200", "min": "0", "max": "400", "pos": "27" },
      { "type": "float", "name": "Edge threshold", "default": "20", "min": "1", "max": "30", "pos": "28" },
      { "type": "float", "name": "Edge thickness", "default": "0.1", "min": "0", "max": "1", "pos": "29" },
      { "type": "float", "name": "Color strength", "default": "1.5", "min": "0", "max": "3", "pos": "30" },
      { "type": "int", "name": "Color quantization", "default": "8", "min": "2", "max": "256", "pos": "31" },
      { "type": "float", "name": "Color Variation", "default": "1", "min": "0.5", "max": "2", "pos": "32" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Blend GMIC</u></span>" },
      { "type": "choice", "name": "Mode", "default": "3", "pos": "33", "choices": { "0": "Add", "1": "Alpha", "2": "And", "3": "Average", "4": "Blue", "5": "Burn", "6": "Darken", "7": "Difference", "8": "Divide", "9": "Dodge", "10": "Edges", "11": "Exclusion", "12": "Freeze", "13": "Grain extract", "14": "Grain merge", "15": "Green", "16": "Hard light", "17": "Hard mix", "18": "Hue", "19": "Interpolation", "20": "Lighten", "21": "Lightness", "22": "Linear burn", "23": "Linear light", "24": "Luminance", "25": "Multiply", "26": "Negation", "27": "Or", "28": "Overlay", "29": "Pin light", "30": "Red", "31": "Reflect", "32": "Saturation", "33": "Shape Average", "34": "Shape Average0", "35": "Soft burn", "36": "Soft dodge", "37": "Soft light", "38": "Screen", "39": "Stamp", "40": "Subtract", "41": "Value", "42": "Vivid light", "43": "Xor" } },
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "34" },
      { "type": "bool", "name": "Reverse", "default": "0", "pos": "35" },
      { "type": "float", "name": "Sharpen", "default": "20", "min": "0", "max": "500", "pos": "36" },
      { "type": "float", "name": "Noise", "default": "0", "min": "0", "max": "40", "pos": "37" },
      { "type": "float", "name": "Spread X", "default": "0", "min": "0", "max": "20", "pos": "38" },
      { "type": "float", "name": "Spread Y", "default": "0", "min": "0", "max": "20", "pos": "39" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "40", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Authors: Lyle Kroll and samj.      Latest update: 2016/12/06." }
      ]
    },
    {
      "name": "Fond Broderie", "lang": "en", "command": "samj_fond_broderie", "command_preview": "samj_fond_broderie", "parameters": [
      { "type": "note", "text": "samj_fond_broderie" },
      { "type": "note", "text": "<span foreground=\"orangered\">topographic_map</span>" },
      { "type": "int", "name": "Levels", "default": "8", "min": "1", "max": "32", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "2", "min": "0", "max": "5", "pos": "2" },
      { "type": "note", "text": "<span foreground=\"orangered\">gimp_skeleton</span>" },
      { "type": "float", "name": "Curviness", "default": "0", "min": "0", "max": "2", "pos": "3" },
      { "type": "note", "text": "<span foreground=\"orangered\">fx_LCE</span>" },
      { "type": "bool", "name": "Activer fx_LCE", "default": "1", "pos": "4" },
      { "type": "note", "text": "<span foreground=\"orangered\">gimp_frame_blur</span>" },
      { "type": "bool", "name": "Activer gimp_frame_blur", "default": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/01/19." }
      ]
    },
    {
      "name": "Fond Brosse", "lang": "en", "command": "samj_Fond_Brosse", "command_preview": "samj_Fond_Brosse", "parameters": [
      { "type": "note", "text": "samj_Fond_Brosse" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Brosse</span>" },
      { "type": "int", "name": "Brosse", "default": "3", "min": "2", "max": "10", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Couleur</span>" },
      { "type": "float", "name": "Couleur", "default": "1", "min": "0.8", "max": "1.2", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/01/27." }
      ]
    },
    {
      "name": "Fractalize", "lang": "en", "command": "fractalize", "command_preview": "fractalize", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Modifies image to make it look like a Mandelbrot fractal. " },
      { "type": "separator" },
      { "type": "float", "name": "Detail Level", "default": "0.8", "min": "0", "max": "1", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Note: This filter uses lot of random values to generate its result, so running it twice will give you different results !" },
      { "type": "separator" },
      { "type": "link", "name": "Click here for a detailed description of this filter.", "url": "http://www.gimpchat.com/viewtopic.php?f=28&t=10036", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2014/04/25." }
      ]
    },
    {
      "name": "Fx Sketchbw Modifie", "lang": "en", "command": "samj_fx_sketchbw_modifie", "command_preview": "samj_fx_sketchbw_modifie_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Sketch</span>" },
      { "type": "int", "name": "Number of orientations", "default": "3", "min": "1", "max": "16", "pos": "1" },
      { "type": "float", "name": "Starting angle", "default": "45", "min": "0", "max": "180", "pos": "2" },
      { "type": "float", "name": "Angle range", "default": "180", "min": "0", "max": "180", "pos": "3" },
      { "type": "float", "name": "Stroke length", "default": "30", "min": "0", "max": "1000", "pos": "4" },
      { "type": "float", "name": "Contour threshold", "default": "1.75", "min": "0", "max": "10", "pos": "5" },
      { "type": "float", "name": "Opacity", "default": "0.02", "min": "0", "max": "0.3", "pos": "6" },
      { "type": "float", "name": "Background intensity", "default": "0.5", "min": "0", "max": "2", "pos": "7" },
      { "type": "float", "name": "Density", "default": "0.75", "min": "0", "max": "5", "pos": "8" },
      { "type": "float", "name": "Sharpness", "default": "0.1", "min": "0", "max": "1", "pos": "9" },
      { "type": "float", "name": "Anisotropy", "default": "0.7", "min": "0", "max": "1", "pos": "10" },
      { "type": "float", "name": "Smoothness", "default": "3", "min": "0", "max": "10", "pos": "11" },
      { "type": "float", "name": "Cohérence", "default": "6", "min": "0", "max": "10", "pos": "12" },
      { "type": "bool", "name": "Boost stroke", "default": "0", "pos": "13" },
      { "type": "bool", "name": "Curved stroke", "default": "1", "pos": "14" },
      { "type": "choice", "name": "Color model", "default": "4", "pos": "15", "choices": { "0": "Black on white", "1": "White on black", "2": "Black on transparent white", "3": "White on transparent black", "4": "Color on white" } },
      { "type": "bool", "name": "Forme Aléatoire", "default": "0", "pos": "16", "visibility": "0" },
      { "type": "int", "name": "Forme", "default": "1234", "min": "1", "max": "111111", "pos": "17" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Smooth</span>" },
      { "type": "bool", "name": "Smooth", "default": "0", "pos": "18" },
      { "type": "int", "name": "Amplitude", "default": "2", "min": "1", "max": "5", "pos": "19" },
      { "type": "int", "name": "Sharpness", "default": "100", "min": "0", "max": "500", "pos": "20" },
      { "type": "float", "name": "Anisotropy", "default": "0.2", "min": "0", "max": "0.5", "pos": "21" },
      { "type": "float", "name": "Sigma", "default": "1", "min": "0", "max": "10", "pos": "22" },
      { "type": "float", "name": "dl", "default": "4", "min": "0", "max": "10", "pos": "23" },
      { "type": "bool", "name": "Equalize", "default": "1", "pos": "24" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "25", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: <a href=\"http://ow.ly/wpsV30fzhdI\">David Tschumperlé / <span color=\"#FF6060\">&#x2764;&#x2764;</span></a> modifications : samj.      Latest update: 2018/05/15." }
      ]
    },
    {
      "name": "Ghost", "lang": "en", "command": "fx_ghost", "command_preview": "fx_ghost", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Ghost Effect:" },
      { "type": "float", "name": "Amplitude", "default": "200", "min": "0", "max": "1000", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "2", "min": "0", "max": "10", "pos": "2" },
      { "type": "float", "name": "Coherence", "default": "2", "min": "0", "max": "10", "pos": "3" },
      { "type": "float", "name": "Gamma", "default": "1", "min": "-3", "max": "3", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Normalization:" },
      { "type": "float", "name": "Amplitude", "default": "3", "min": "0", "max": "10", "pos": "5" },
      { "type": "float", "name": "Radius", "default": "16", "min": "1", "max": "64", "pos": "6" },
      { "type": "bool", "name": "Invert", "default": "0", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2021/01/30." }
      ]
    },
    {
      "name": "Granular Texture", "lang": "en", "command": "samj_Texture_Granuleuse", "command_preview": "samj_Texture_Granuleuse_preview", "parameters": [
      { "type": "note", "text": "Texture Granuleuse / Granular Texture" },
      { "type": "separator" },
      { "type": "float", "name": "Douceur / Smoothness Gradient RGB", "default": "0", "min": "0.5", "max": "2", "pos": "1" },
      { "type": "float", "name": "Maximum Seuil Dégradé / Max threshold Gradient RGB", "default": "20", "min": "10", "max": "50", "pos": "2" },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude Bruit / Noise", "default": "80.0", "min": "40", "max": "200", "pos": "3" },
      { "type": "separator" },
      { "type": "float", "name": "Couleurs / Colors", "default": "0", "min": "-20", "max": "20", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "5", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2015/03/31." }
      ]
    },
    {
      "name": "Graphic Boost", "lang": "en", "command": "fx_graphic_boost4", "command_preview": "fx_graphic_boost4", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Unsharp Mask controls" },
      { "type": "float", "name": "Radius", "default": "1.25", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "Darken", "default": "2", "min": "0", "max": "10", "pos": "2" },
      { "type": "separator" },
      { "type": "bool", "name": "Skip Others Steps", "default": "0", "pos": "3" },
      { "type": "note", "text": "Check for visual control, UNcheck to reactivate the other controls" },
      { "type": "separator" },
      { "type": "separator" },
      { "type": "note", "text": "BW_Pencil Controls" },
      { "type": "float", "name": "Pencil Size", "default": "0.15", "min": "0", "max": "4", "pos": "4" },
      { "type": "float", "name": "Pencil Amplitude", "default": "14", "min": "0", "max": "200", "pos": "5" },
      { "type": "separator" },
      { "type": "bool", "name": "Skip Others Steps", "default": "0", "pos": "6" },
      { "type": "separator" },
      { "type": "separator" },
      { "type": "bool", "name": "Activate 'Pencil Smoother'", "default": "1", "pos": "7" },
      { "type": "note", "text": "If unchecked the 3 sliders below are disabled" },
      { "type": "float", "name": "Pencil Smoother Sharpness", "default": "0.5", "min": "0", "max": "2", "pos": "8" },
      { "type": "float", "name": "Pencil Smoother Edge Protection", "default": "0.45", "min": "0", "max": "1", "pos": "9" },
      { "type": "float", "name": "Pencil Smoother Smoothness", "default": "2", "min": "0", "max": "10", "pos": "10" },
      { "type": "separator" },
      { "type": "bool", "name": "Skip Others Steps", "default": "0", "pos": "11" },
      { "type": "separator" },
      { "type": "separator" },
      { "type": "note", "text": "Merging Options" },
      { "type": "bool", "name": "Swap Layers", "default": "1", "pos": "12" },
      { "type": "note", "text": "'Swap' change the effect of Merging and Intesity" },
      { "type": "choice", "name": "Merging Option", "default": "0", "pos": "13", "choices": { "0": "Hard Light", "1": "Grain Merge", "2": "Multiply", "3": "Color Burn", "4": "Overlay", "5": "Value", "6": "Darken", "7": "Lightness", "8": "Luminance", "9": "*Colors Doping*", "10": "Comix Colors", "11": "Graphic Colours", "12": "Graphix Colors", "13": "Vivid Edges*", "14": "Dark Edges", "15": "Dark Screen", "16": "Vivid Screen", "17": "Interpolate" } },
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "14" },
      { "type": "float", "name": "Intensity", "default": "1", "min": "0", "max": "1", "pos": "15" },
      { "type": "separator" },
      { "type": "bool", "name": "Add Painter's Touch", "default": "1", "pos": "16" },
      { "type": "note", "text": "If unchecked the 3 sliders below are disabled" },
      { "type": "separator" },
      { "type": "float", "name": "Painter's Touch Sharpness", "default": "0.5", "min": "0", "max": "2", "pos": "17" },
      { "type": "float", "name": "Painter's Edge Protection Flow", "default": "0.45", "min": "0", "max": "1", "pos": "18" },
      { "type": "float", "name": "Painter's Smoothness", "default": "1", "min": "0", "max": "10", "pos": "19" },
      { "type": "separator" },
      { "type": "note", "text": "Author: PhotoComiX. Latest update : 2011/13/11 ." },
      { "type": "link", "name": "Filter explained here", "url": "http://www.gimpchat.com/viewtopic.php?f=9&t=775", "align": "center" }
      ]
    },
    {
      "name": "Graphic Novel", "lang": "en", "command": "fx_graphic_novelfxl", "command_preview": "fx_graphic_novelfxl", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Apply Local Normalization" },
      { "type": "bool", "name": "Skip This Step", "default": "0", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Local Normalization Controls" },
      { "type": "float", "name": "LN Amplititude", "default": "2", "min": "0", "max": "60", "pos": "2" },
      { "type": "float", "name": "LN Size", "default": "6", "min": "0", "max": "64", "pos": "3" },
      { "type": "float", "name": "LN Neightborhood-Smoothness", "default": "5", "min": "0", "max": "40", "pos": "4" },
      { "type": "float", "name": "LN Average-Smoothness", "default": "20", "min": "0", "max": "40", "pos": "5" },
      { "type": "separator" },
      { "type": "bool", "name": "Skip All Other Steps", "default": "0", "pos": "6" },
      { "type": "separator" },
      { "type": "separator" },
      { "type": "note", "text": "Pencil Options" },
      { "type": "float", "name": "Pencil Size", "default": "0.62", "min": "0", "max": "4", "pos": "7" },
      { "type": "float", "name": "Pencil Amplitude", "default": "14", "min": "0", "max": "200", "pos": "8" },
      { "type": "separator" },
      { "type": "bool", "name": "Skip All Other Steps", "default": "0", "pos": "9" },
      { "type": "separator" },
      { "type": "separator" },
      { "type": "bool", "name": "Activate 'Pencil Smoother'", "default": "1", "pos": "10" },
      { "type": "note", "text": "If unchecked the 3 sliders below are disabled" },
      { "type": "separator" },
      { "type": "float", "name": "Pencil Smoother Sharpness", "default": "0.5", "min": "0", "max": "2", "pos": "11" },
      { "type": "float", "name": "Pencil Smoother Edge Protection", "default": "0.78", "min": "0", "max": "1", "pos": "12" },
      { "type": "float", "name": "Pencil Smoother Smoothness", "default": "1.92", "min": "0", "max": "10", "pos": "13" },
      { "type": "separator" },
      { "type": "bool", "name": "Skip All Other Steps", "default": "0", "pos": "14" },
      { "type": "separator" },
      { "type": "separator" },
      { "type": "note", "text": "Boost Merging Options" },
      { "type": "bool", "name": "Swap Layers", "default": "0", "pos": "15" },
      { "type": "choice", "name": "MIxer", "default": "0", "pos": "16", "choices": { "0": "Overlay", "1": "Multiply", "2": "Soft light", "3": "Color Burn", "4": "Darken", "5": "Stamp", "6": "Hard Light", "7": "Value", "8": "Grain Merge", "9": "Freeze", "10": "Lightness", "11": "Luminance", "12": "*Colors Doping", "13": "*Comix Colors*", "14": "Graphic Colours", "15": "*Graphix Colors", "16": "*Vivid Edges*", "17": "*Dark Edges*", "18": "*Dark Screen*", "19": "*Vivid Screen*", "20": "Interpolate" } },
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "17" },
      { "type": "float", "name": "Intensity", "default": "1", "min": "0", "max": "1", "pos": "18" },
      { "type": "separator" },
      { "type": "bool", "name": "Add Painter's Touch", "default": "1", "pos": "19" },
      { "type": "separator" },
      { "type": "float", "name": "Painter's Touch Sharpness", "default": "0.5", "min": "0", "max": "2", "pos": "20" },
      { "type": "float", "name": "Painter's Edge Protection Flow", "default": "0.8", "min": "0", "max": "1", "pos": "21" },
      { "type": "float", "name": "Painter's Smoothness", "default": "1.28", "min": "0", "max": "10", "pos": "22" },
      { "type": "separator" },
      { "type": "note", "text": "Author: PhotoComiX. Latest update : 2011/13/11." },
      { "type": "link", "name": "Filter explained here", "url": "http://www.gimpchat.com/viewtopic.php?f=9&t=1582", "align": "center" }
      ]
    },
    {
      "name": "Gris Raye", "lang": "en", "command": "samj_Gris_Raye", "command_preview": "samj_Gris_Raye ", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Avant plan</span>" },
      { "type": "bool", "name": "Lumin", "default": "0", "pos": "1" },
      { "type": "int", "name": "Pixélisation", "default": "30", "min": "8", "max": "100", "pos": "2" },
      { "type": "float", "name": "Flou", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "int", "name": "PA", "default": "100", "min": "1", "max": "255", "pos": "4" },
      { "type": "int", "name": "DeformA", "default": "4", "min": "-16", "max": "16", "pos": "5" },
      { "type": "int", "name": "DeformB", "default": "4", "min": "-16", "max": "16", "pos": "6" },
      { "type": "int", "name": "Limite", "default": "255", "min": "1", "max": "255", "pos": "7" },
      { "type": "int", "name": "Itérations", "default": "1", "min": "1", "max": "4", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/11/29." }
      ]
    },
    {
      "name": "Hallucinogen", "lang": "en", "command": "samj_Hallucinogen", "command_preview": "samj_Hallucinogen", "parameters": [
      { "type": "link", "name": "https://samjcreations.blogspot.com/2020/10/samuser-avec-gmic-gimp-filtre.html", "url": "https://samjcreations.blogspot.com/2020/10/samuser-avec-gmic-gimp-filtre.html", "align": "center" },
      { "type": "note", "text": "<span foreground=\"orangered\">Filtre HallucinoGenerator</span>" },
      { "type": "int", "name": "Autoindex", "default": "80", "min": "1", "max": "255", "pos": "1" },
      { "type": "float", "name": "Flou/Blur", "default": "2", "min": "0", "max": "10", "pos": "2" },
      { "type": "float", "name": "Puissance/Pow", "default": "80", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Modulo", "default": "1.5", "min": "0.5", "max": "2", "pos": "4" },
      { "type": "int", "name": "Adoucir/Smooth", "default": "2", "min": "0", "max": "5", "pos": "5" },
      { "type": "bool", "name": "Inverser/Invert", "default": "0", "pos": "6" },
      { "type": "bool", "name": "Répéter ce Filtre/Repeat", "default": "0", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Brushify</span>" },
      { "type": "bool", "name": "Brushify", "default": "0", "pos": "8" },
      { "type": "int", "name": "Nb Dimensions/Sizes", "default": "1", "min": "1", "max": "16", "pos": "9" },
      { "type": "int", "name": "Opacité/Opacity", "default": "80", "min": "0", "max": "100", "pos": "10" },
      { "type": "int", "name": "Brosse/Brush Dimension", "default": "8", "min": "8", "max": "40", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/19." }
      ]
    },
    {
      "name": "Hallucinogen 2", "lang": "en", "command": "samj_Hallucinogen_b", "command_preview": "samj_Hallucinogen_b", "parameters": [
      { "type": "note", "text": "<span foreground=\"orangered\">Filtre Polygonize</span>" },
      { "type": "bool", "name": "Polygonize", "default": "1", "pos": "1" },
      { "type": "int", "name": "Amplitude", "default": "300", "min": "0", "max": "2000", "pos": "2" },
      { "type": "float", "name": "Douceur/Smoothness", "default": "10", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Surface minimale/Minimal area", "default": "10", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "X-resolution", "default": "10", "min": "1", "max": "256", "pos": "5" },
      { "type": "float", "name": "Y-resolution", "default": "10", "min": "1", "max": "256", "pos": "6" },
      { "type": "note", "text": "<span foreground=\"orangered\">Filtre HallucinoGenerator</span>" },
      { "type": "int", "name": "Autoindex", "default": "80", "min": "1", "max": "255", "pos": "7" },
      { "type": "float", "name": "Flou/Blur", "default": "2", "min": "0", "max": "10", "pos": "8" },
      { "type": "float", "name": "Puissance/Pow", "default": "80", "min": "0", "max": "100", "pos": "9" },
      { "type": "float", "name": "Modulo", "default": "1.5", "min": "0.5", "max": "2", "pos": "10" },
      { "type": "int", "name": "Adoucir/Smooth", "default": "2", "min": "0", "max": "5", "pos": "11" },
      { "type": "bool", "name": "Inverser/Invert", "default": "0", "pos": "12" },
      { "type": "bool", "name": "Répéter ce Filtre/Repeat", "default": "0", "pos": "13" },
      { "type": "note", "text": "<span foreground=\"orangered\">Brushify</span>" },
      { "type": "bool", "name": "Brushify", "default": "1", "pos": "14" },
      { "type": "int", "name": "Nb Dimensions/Sizes", "default": "1", "min": "1", "max": "16", "pos": "15" },
      { "type": "int", "name": "Opacité/Opacity", "default": "80", "min": "0", "max": "100", "pos": "16" },
      { "type": "int", "name": "Brosse/Brush Dimension", "default": "8", "min": "8", "max": "40", "pos": "17" },
      { "type": "note", "text": "<span foreground=\"orangered\">Blend</span>" },
      { "type": "bool", "name": "Blend", "default": "1", "pos": "18" },
      { "type": "bool", "name": "Inverser Calques/Reverse Layers", "default": "0", "pos": "19" },
      { "type": "choice", "name": "Mode", "default": "14", "pos": "20", "choices": { "0": "add", "1": "alpha", "2": "and", "3": "average", "4": "blue", "5": "burn", "6": "darken", "7": "difference", "8": "divide", "9": "dodge", "10": "edges", "11": "exclusion", "12": "freeze", "13": "grainextract", "14": "grainmerge", "15": "green", "16": "hardlight", "17": "hardmix", "18": "hue", "19": "interpolation", "20": "lighten", "21": "lightness", "22": "linearburn", "23": "linearlight", "24": "luminance", "25": "multiply", "26": "negation", "27": "or", "28": "overlay", "29": "pinlight", "30": "red", "31": "reflect", "32": "saturation", "33": "seamless", "34": "seamless_mixed", "35": "screen", "36": "shapeareamax", "37": "shapeareamax0", "38": "shapeareamin", "39": "shapeareamin0", "40": "shapeaverage", "41": "shapeaverage0", "42": "shapemedian", "43": "shapemedian0", "44": "shapemin", "45": "shapemin0", "46": "shapemax", "47": "shapemax0", "48": "softburn", "49": "softdodge", "50": "softlight", "51": "stamp", "52": "subtract", "53": "value", "54": "vividlight", "55": "xor" }, "visibility": "1" },
      { "type": "float", "name": "Opacité / Opacity", "default": "1", "min": "0", "max": "1", "pos": "21", "visibility": "1" },
      { "type": "separator", "visibility": "1" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/11/25.", "visibility": "1" }
      ]
    },
    {
      "name": "Hard Painting", "lang": "en", "command": "fx_hard_painting", "command_preview": "fx_hard_painting_preview", "parameters": [
      { "type": "note", "text": "Modular filter which can be used to apply an extremely-glossy paint effect." },
      { "type": "separator" },
      { "type": "note", "text": "Painting authors: Lyle Kroll, Angelo Lama and <a href=\"https://goo.gl/Ryf7Cv\">David Tschumperlé</a>.\nLatest update: 2011/28/02." },
      { "type": "int", "name": "1. Abstraction", "default": "1", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "2. Details Scale", "default": "2.5", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "3. Color", "default": "4", "min": "0", "max": "25", "pos": "3" },
      { "type": "float", "name": "4. Smoothness", "default": "50", "min": "0", "max": "2000", "pos": "4" },
      { "type": "bool", "name": "5. Sharpen Shades", "default": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Graphic novel author: PhotoComiX. Latest update : 2011/13/11." },
      { "type": "link", "name": "Filter explained here", "url": "http://www.gimpchat.com/viewtopic.php?f=9&t=1582", "align": "center" },
      { "type": "int", "name": "6. Graphic Novel Iterations", "default": "1", "min": "0", "max": "10", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Apply Local Normalization" },
      { "type": "bool", "name": "7. Skip This Step", "default": "0", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Local Normalization Controls" },
      { "type": "float", "name": "8. Ln Amplititude", "default": "2", "min": "0", "max": "60", "pos": "8" },
      { "type": "float", "name": "9. Ln Size", "default": "6", "min": "0", "max": "64", "pos": "9" },
      { "type": "float", "name": "10. Ln Neightborhood-Smoothness", "default": "5", "min": "0", "max": "40", "pos": "10" },
      { "type": "float", "name": "11. Ln Average-Smoothness", "default": "20", "min": "0", "max": "40", "pos": "11" },
      { "type": "separator" },
      { "type": "bool", "name": "12. Skip All Other Steps", "default": "0", "pos": "12" },
      { "type": "separator" },
      { "type": "separator" },
      { "type": "note", "text": " Pencil Options" },
      { "type": "float", "name": "13. Pencil Size", "default": "0.62", "min": "0", "max": "4", "pos": "13" },
      { "type": "float", "name": "14. Pencil Amplitude", "default": "14", "min": "0", "max": "200", "pos": "14" },
      { "type": "separator" },
      { "type": "bool", "name": "15. Skip All Other Steps", "default": "0", "pos": "15" },
      { "type": "separator" },
      { "type": "separator" },
      { "type": "bool", "name": "16. Activate \"pencil Smoother\"", "default": "1", "pos": "16" },
      { "type": "note", "text": " If unchecked the 3 sliders below are disabled " },
      { "type": "separator" },
      { "type": "float", "name": "17. Pencil Smoother Sharpness", "default": "0.5", "min": "0", "max": "2", "pos": "17" },
      { "type": "float", "name": "18. Pencil Smoother Edge Protection", "default": "0.78", "min": "0", "max": "1", "pos": "18" },
      { "type": "float", "name": "19. Pencil Smoother Smoothness", "default": "1.92", "min": "0", "max": "10", "pos": "19" },
      { "type": "separator" },
      { "type": "bool", "name": "20. Skip All Other Steps", "default": "0", "pos": "20" },
      { "type": "separator" },
      { "type": "separator" },
      { "type": "note", "text": "Boost Merging Options" },
      { "type": "bool", "name": "21. Swap Layers", "default": "0", "pos": "21" },
      { "type": "choice", "name": "22. Mixer", "default": "0", "pos": "22", "choices": { "0": "Overlay", "1": "Multiply", "2": "Soft light", "3": "Color Burn", "4": "Darken", "5": "Stamp", "6": "Hard Light", "7": "Value", "8": "Grain Merge", "9": "Freeze", "10": "Lightness", "11": "Luminance", "12": "*Colors Doping", "13": "*Comix Colors*", "14": "Graphic Colours", "15": "*Graphix Colors", "16": "*Vivid Edges*", "17": "*Dark Edges*", "18": "*Dark Screen*", "19": "*Vivid Screen*", "20": "Interpolate" } },
      { "type": "float", "name": "23. Opacity", "default": "1", "min": "0", "max": "1", "pos": "23" },
      { "type": "float", "name": "24. Intensity", "default": "1", "min": "0", "max": "1", "pos": "24" },
      { "type": "separator" },
      { "type": "bool", "name": "25. Add Painter's Touch", "default": "1", "pos": "25" },
      { "type": "separator" },
      { "type": "float", "name": "26. Painter's Touch Sharpness", "default": "0.5", "min": "0", "max": "2", "pos": "26" },
      { "type": "float", "name": "27. Painter's Edge Protection Flow", "default": "0.8", "min": "0", "max": "1", "pos": "27" },
      { "type": "float", "name": "28. Painter's Smoothness", "default": "1.28", "min": "0", "max": "10", "pos": "28" },
      { "type": "separator" },
      { "type": "choice", "name": "29-31. Preview type", "default": "0", "pos": "29", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "30", "visibility": "0" }
      ]
    },
    {
      "name": "Hard Sketch", "lang": "en", "command": "fx_hardsketchbw", "command_preview": "fx_hardsketchbw", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a high-contrast, rough sketch. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "300", "min": "0", "max": "4000", "pos": "1" },
      { "type": "float", "name": "Density", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "1", "min": "0", "max": "10", "pos": "3" },
      { "type": "float", "name": "Opacity", "default": "0.1", "min": "0", "max": "1", "pos": "4" },
      { "type": "float", "name": "Edge", "default": "20", "min": "0", "max": "100", "pos": "5" },
      { "type": "bool", "name": "Fast Approximation", "default": "0", "pos": "6" },
      { "type": "choice", "name": "Color Model", "default": "4", "pos": "7", "choices": { "0": "Black on white", "1": "White on black", "2": "Black on transparent white", "3": "White on transparent black", "4": "Color on white" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Highlight Bloom", "lang": "en", "command": "fx_highlight_bloom", "command_preview": "fx_highlight_bloom", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Enhance image highlights in a smooth, artistic way. " },
      { "type": "separator" },
      { "type": "float", "name": "Details Strength (%)", "default": "90", "min": "0", "max": "400", "pos": "1" },
      { "type": "float", "name": "Details Scale", "default": "60", "min": "0", "max": "255", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "60", "min": "0", "max": "255", "pos": "3" },
      { "type": "int", "name": "Highlight (%)", "default": "30", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Contrast (%)", "default": "20", "min": "0", "max": "100", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/10/24." },
      { "type": "separator" },
      { "type": "note", "text": "This effect has been inspired by:" },
      { "type": "link", "name": "This tutorial by Sebastien Guyader and Patrick David", "url": "https://pixls.us/articles/highlight-bloom-and-photoillustration-look/", "align": "center" }
      ]
    },
    {
      "name": "Hope Poster", "lang": "en", "command": "fx_poster_hope", "command_preview": "fx_poster_hope", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Recreates the style of the iconic \"Hope\" poster. " },
      { "type": "separator" },
      { "type": "float", "name": "Gamma", "default": "0", "min": "-3", "max": "3", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "3", "min": "0", "max": "20", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/11/07." }
      ]
    },
    {
      "name": "Hough Sketch", "lang": "en", "command": "fx_houghsketchbw", "command_preview": "fx_houghsketchbw", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Sketches the image using lines detected by the Hough transform. " },
      { "type": "separator" },
      { "type": "float", "name": "Smoothness", "default": "1.25", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "Density (%)", "default": "10", "min": "0", "max": "100", "pos": "2" },
      { "type": "int", "name": "Radius", "default": "5", "min": "0", "max": "30", "pos": "3" },
      { "type": "float", "name": "Threshold", "default": "80", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Opacity", "default": "0.1", "min": "0", "max": "1", "pos": "5" },
      { "type": "choice", "name": "Color Model", "default": "4", "pos": "6", "choices": { "0": "Black on white", "1": "White on black", "2": "Black on transparent white", "3": "White on transparent black", "4": "Color on white" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2023/05/29." }
      ]
    },
    {
      "name": "Illustration Look", "lang": "en", "command": "fx_illustration_look", "command_preview": "fx_illustration_look_preview", "parameters": [
      { "type": "float", "name": "Strength (%)", "default": "100", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Tone Mapping (%)", "default": "100", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Desaturate (%)", "default": "0", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Vintage Tone (%)", "default": "0", "min": "0", "max": "100", "pos": "4" },
      { "type": "bool", "name": "Output as Multiple Layers", "default": "0", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "6", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Authors: Sébastien Guyader and David Tschumperlé.      Latest update: 2017/05/01." }
      ]
    },
    {
      "name": "Impressions", "lang": "en", "command": "samj_Impressions", "command_preview": "samj_Impressions", "parameters": [
      { "type": "note", "text": "<span foreground=\"orangered\">Spread</span>" },
      { "type": "float", "name": "Spread", "default": "10", "min": "0", "max": "50", "pos": "1" },
      { "type": "note", "text": "<span foreground=\"orangered\">Textured Glass</span>" },
      { "type": "float", "name": "X-amplitude", "default": "5", "min": "0", "max": "400", "pos": "2" },
      { "type": "float", "name": "Y-amplitude", "default": "5", "min": "0", "max": "400", "pos": "3" },
      { "type": "float", "name": "X-smoothness", "default": "1", "min": "0", "max": "5", "pos": "4" },
      { "type": "float", "name": "Y-smoothness", "default": "1", "min": "0", "max": "5", "pos": "5" },
      { "type": "float", "name": "Edge Atténuation", "default": "0", "min": "0", "max": "1", "pos": "6" },
      { "type": "float", "name": "Edge influence", "default": "2", "min": "0", "max": "10", "pos": "7" },
      { "type": "int", "name": "Noise scale", "default": "0", "min": "0", "max": "16", "pos": "8" },
      { "type": "note", "text": "<span foreground=\"orangered\">Abstraction</span>" },
      { "type": "int", "name": "Itérations", "default": "1", "min": "1", "max": "3", "pos": "9" },
      { "type": "note", "text": "<span foreground=\"orangered\">Abstraction Dog</span>" },
      { "type": "float", "name": "Sigma 1", "default": "5", "min": "0", "max": "10", "pos": "10" },
      { "type": "float", "name": "Sigma 2", "default": "0", "min": "0", "max": "10", "pos": "11" },
      { "type": "note", "text": "<span foreground=\"orangered\">Abstraction Segment Watershed</span>" },
      { "type": "float", "name": "Threshold", "default": "5", "min": "0", "max": "10", "pos": "12" },
      { "type": "note", "text": "<span foreground=\"orangered\">Abstraction Smooth</span>" },
      { "type": "float", "name": "Amplitude", "default": "100", "min": "0", "max": "200", "pos": "13" },
      { "type": "note", "text": "<span foreground=\"orangered\">Abstraction Noise</span>" },
      { "type": "float", "name": "Amplitude", "default": "2", "min": "0", "max": "10", "pos": "14" },
      { "type": "choice", "name": "Type", "default": "4", "pos": "15", "choices": { "0": "Gaussian", "1": "Uniform", "2": "Salt and pepper", "3": "Poisson", "4": "Rice" } },
      { "type": "note", "text": "<span foreground=\"orangered\">Blend</span>" },
      { "type": "float", "name": "Opacité / Opacity", "default": "1", "min": "0", "max": "1", "pos": "16" },
      { "type": "note", "text": "<span foreground=\"orangered\">Sharpen</span>" },
      { "type": "int", "name": "Amplitude", "default": "250", "min": "0", "max": "500", "pos": "17" },
      { "type": "note", "text": "<span foreground=\"orangered\">Couleurs</span>" },
      { "type": "float", "name": "Couleurs", "default": "1.2", "min": "0.1", "max": "5", "pos": "18" },
      { "type": "separator" },
      { "type": "note", "text": "samj      Dernière mise à jour : 2016/01/19." }
      ]
    },
    {
      "name": "Isophotes Vers Aquarelle", "lang": "en", "command": "samj_Isophotes_Vers_Aquarelle", "command_preview": "samj_Isophotes_Vers_Aquarelle ", "parameters": [
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Isophotes</u></span>" },
      { "type": "int", "name": "Nb Décomposition Couleurs", "default": "16", "min": "2", "max": "32", "pos": "1" },
      { "type": "float", "name": "Variation Flou", "default": "0.5", "min": "0.1", "max": "2", "pos": "2" },
      { "type": "int", "name": "Isophotes", "default": "4", "min": "3", "max": "16", "pos": "3" },
      { "type": "int", "name": "Dilate", "default": "0", "min": "0", "max": "8", "pos": "4" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Segmentation</u></span>" },
      { "type": "bool", "name": "Segmentation", "default": "1", "pos": "5" },
      { "type": "float", "name": "Edge threshold", "default": "10", "min": "0", "max": "30", "pos": "6" },
      { "type": "float", "name": "Smoothness", "default": "1", "min": "0", "max": "5", "pos": "7" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "8", "choices": { "0": "All", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "Linear RGB [all]", "8": "Linear RGB [red]", "9": "Linear RGB [green]", "10": "Linear RGB [blue]", "11": "YCbCr [luminance]", "12": "YCbCr [blue-red chrominances]", "13": "YCbCr [blue chrominance]", "14": "YCbCr [red chrominance]", "15": "YCbCr [green chrominance]", "16": "Lab [lightness]", "17": "Lab [ab-chrominances]", "18": "Lab [a-chrominance]", "19": "Lab [b-chrominance]", "20": "Lch [ch-chrominances]", "21": "Lch [c-chrominance]", "22": "Lch [h-chrominance]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [intensity]", "27": "HSL [lightness]", "28": "CMYK [cyan]", "29": "CMYK [magenta]", "30": "CMYK [yellow]", "31": "CMYK [key]", "32": "YIQ [luma]", "33": "YIQ [chromas]" } },
      { "type": "choice", "name": "Value action", "default": "0", "pos": "9", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Contours</u></span>" },
      { "type": "float", "name": "Flou", "default": "0", "min": "0", "max": "2", "pos": "10" },
      { "type": "float", "name": "Couleurs", "default": "0", "min": "-2", "max": "2", "pos": "11" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Fond</u></span>" },
      { "type": "bool", "name": "Fond", "default": "1", "pos": "12" },
      { "type": "float", "name": "Amplitude Noise", "default": "10", "min": "5", "max": "200", "pos": "13" },
      { "type": "float", "name": "Density Hardsketchbw", "default": "10", "min": "5", "max": "100", "pos": "14" },
      { "type": "float", "name": "Spread Variations", "default": "4", "min": "3", "max": "20", "pos": "15" },
      { "type": "float", "name": "Amplitude Water", "default": "3", "min": "2", "max": "10", "pos": "16" },
      { "type": "color", "name": "Couleur / Color", "default": "251,237,206", "pos": "17" },
      { "type": "float", "name": "Opacité / Opacity", "default": "1", "min": "-1", "max": "1", "pos": "20" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2017/01/20." }
      ]
    },
    {
      "name": "Kuwahara", "lang": "en", "command": "fx_kuwahara", "command_preview": "fx_kuwahara", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Applies a non-linear smoothing filter that preserves edges (oil painting look). " },
      { "type": "separator" },
      { "type": "int", "name": "Iterations", "default": "2", "min": "1", "max": "20", "pos": "1" },
      { "type": "int", "name": "Radius", "default": "5", "min": "1", "max": "30", "pos": "2" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "3", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "choice", "name": "Value Action", "default": "0", "pos": "4", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2011/05/31." }
      ]
    },
    {
      "name": "Linify", "lang": "en", "command": "fx_linify", "command_preview": "fx_linify_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Reconstructs the image using only straight lines. " },
      { "type": "separator" },
      { "type": "float", "name": "Density", "default": "40", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Spreading", "default": "2", "min": "0", "max": "10", "pos": "2" },
      { "type": "float", "name": "Resolution (%)", "default": "40", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Line Opacity", "default": "10", "min": "0", "max": "30", "pos": "4" },
      { "type": "int", "name": "Line Precision", "default": "24", "min": "1", "max": "128", "pos": "5" },
      { "type": "choice", "name": "Color Mode", "default": "0", "pos": "6", "choices": { "0": "Subtractive", "1": "Additive" } },
      { "type": "separator" },
      { "type": "bool", "name": "Preview Progression While Running", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Note:\n\n - This filter is our own implementation of the nice algorithm proposed on the webpage <a href=\"http://linify.me\">http://linify.me</a>.\n - This is a quite resource-demanding filter, so please be patient when running it.\n - It actually renders better when applied on small images (&lt;1024). " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2017/11/21." }
      ]
    },
    {
      "name": "Lylejk's Painting", "lang": "en", "command": "fx_lylejk_painting", "command_preview": "fx_lylejk_painting", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> A specific painterly effect script by user Lylejk. " },
      { "type": "separator" },
      { "type": "int", "name": "Iterations", "default": "10", "min": "1", "max": "20", "pos": "1" },
      { "type": "int", "name": "Abstraction", "default": "2", "min": "1", "max": "20", "pos": "2" },
      { "type": "int", "name": "Radius", "default": "4", "min": "1", "max": "30", "pos": "3" },
      { "type": "float", "name": "Canvas", "default": "10", "min": "0", "max": "100", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Authors: Lyle Kroll and David Tschumperlé.       Latest Update: 2015/02/23." },
      { "type": "link", "name": "Filter Explained here", "url": "http://www.gimpchat.com/viewtopic.php?f=10&t=2624", "align": "center" }
      ]
    },
    {
      "name": "Make Squiggly", "lang": "en", "command": "fx_Squiggly", "command_preview": "fx_Squiggly_Preview", "parameters": [
      { "type": "note", "text": "Squigles an image" },
      { "type": "note", "text": "Squigle parameters" },
      { "type": "float", "name": "Spread Noise Amount", "default": "2", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "Segmentation Edge Threshold", "default": "12", "min": "0", "max": "15", "pos": "2", "visibility": "2" },
      { "type": "float", "name": "Segmentation Smoothness", "default": "0.8", "min": "0", "max": "5", "pos": "3", "visibility": "0" },
      { "type": "float", "name": "GradienNormSmoothness", "default": "0", "min": "0", "max": "10", "pos": "4", "visibility": "0" },
      { "type": "float", "name": "GradienNormLinearity", "default": "0.5", "min": "0", "max": "1.5", "pos": "5", "visibility": "0" },
      { "type": "bool", "name": "Invert Luminance", "default": "1", "pos": "6", "visibility": "0" },
      { "type": "separator", "visibility": "0" },
      { "type": "separator", "visibility": "0" },
      { "type": "note", "text": "Optional color enhancement", "visibility": "0" },
      { "type": "note", "text": "Note that the effect of sliders depends on the merge setting.", "visibility": "0" },
      { "type": "bool", "name": "Activate Color Enhancement", "default": "0", "pos": "7", "visibility": "1" },
      { "type": "bool", "name": "Toggle to View Base Image", "default": "0", "pos": "8" },
      { "type": "note", "text": "Check this to view base image" },
      { "type": "float", "name": "IncreaseChroma1", "default": "3", "min": "1", "max": "4", "pos": "9" },
      { "type": "float", "name": "Tone Threshold", "default": "0.2", "min": "0", "max": "1", "pos": "10" },
      { "type": "float", "name": "Tone Gamma", "default": "0.4", "min": "0", "max": "1", "pos": "11" },
      { "type": "note", "text": "Select merging mode to original" },
      { "type": "choice", "name": "Merging Option", "default": "0", "pos": "12", "choices": { "0": "Alpha", "1": "And", "2": "Average", "3": "Burn", "4": "Darken", "5": "Difference", "6": "Divide", "7": "Dodge", "8": "Exclusion", "9": "Freeze", "10": "Grain extract", "11": "Grain merge", "12": "Hard light", "13": "Hue", "14": "Interpolation", "15": "Lighten", "16": "Lightness", "17": "Luminance", "18": "Multiply", "19": "Negation", "20": "Or", "21": "Overlay", "22": "Reflect", "23": "Saturation", "24": "Soft light", "25": "Screen", "26": "Stamp", "27": "Value", "28": "Xor" } },
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "13" },
      { "type": "bool", "name": "Reverse Order", "default": "1", "pos": "14" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "15", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" }, "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Arto Huotari.      Latest update : 2013/09/28." },
      { "type": "link", "name": "Filter Explained here", "url": "http://www.flickr.com/photos/naggobot/6667673847/", "align": "center" }
      ]
    },
    {
      "name": "Marker Drawing", "lang": "en", "command": "fx_marker_drawing", "command_preview": "fx_marker_drawing_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generate marker drawing effect. " },
      { "type": "separator" },
      { "type": "int", "name": "Length (px)", "default": "70", "min": "0", "max": "256", "pos": "1" },
      { "type": "float", "name": "Radius (px)", "default": "4", "min": "1", "max": "32", "pos": "2" },
      { "type": "float", "name": "Opacity (%)", "default": "10", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Inertia (%)", "default": "15", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Curviness (%)", "default": "100", "min": "0", "max": "200", "pos": "5" },
      { "type": "float", "name": "Anisotropy (%)", "default": "85", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "Smoothness", "default": "0.5", "min": "0", "max": "5", "pos": "7" },
      { "type": "float", "name": "Coherence", "default": "3", "min": "0", "max": "16", "pos": "8" },
      { "type": "int", "name": "Iterations", "default": "3", "min": "1", "max": "64", "pos": "9" },
      { "type": "separator" },
      { "type": "choice", "name": "Background Type", "default": "1", "pos": "10", "choices": { "0": "Blur", "1": "Color" } },
      { "type": "float", "name": "Background Blur", "default": "20", "min": "0", "max": "128", "pos": "11", "visibility": "1" },
      { "type": "color", "name": "Background Color", "default": "255,255,255,255", "pos": "12", "visibility": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2026/02/23." }
      ]
    },
    {
      "name": "Morphology Painting", "lang": "en", "command": "fx_MorphoPaint", "command_preview": "fx_MorphoPaint_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Creates a painting using Morphology-, Segmentation- and Painting- filters. CPU intensive filter that may take long." },
      { "type": "separator" },
      { "type": "note", "text": "Morphology settings" },
      { "type": "separator" },
      { "type": "choice", "name": "Method", "default": "1", "pos": "1", "choices": { "0": "Erosion", "1": "Dilation", "2": "Opening", "3": "Closing" }, "visibility": "0" },
      { "type": "int", "name": "MorphoStrenght", "default": "18", "min": "2", "max": "60", "pos": "2" },
      { "type": "choice", "name": "Shape", "default": "2", "pos": "3", "choices": { "0": "Square", "1": "Octagonal", "2": "Circular" }, "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Lightness for Morpholayer" },
      { "type": "int", "name": "Black Point", "default": "25", "min": "0", "max": "50", "pos": "4" },
      { "type": "int", "name": "Expand Shadows", "default": "100", "min": "50", "max": "255", "pos": "5" },
      { "type": "int", "name": "Compress Highlights", "default": "230", "min": "200", "max": "255", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Smoothing strength" },
      { "type": "int", "name": "Spread Amount", "default": "8", "min": "0", "max": "20", "pos": "7" },
      { "type": "int", "name": "Blur Strength", "default": "3", "min": "0", "max": "10", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Segmentation settings" },
      { "type": "float", "name": "Edge Threshold", "default": "4", "min": "0", "max": "15", "pos": "9" },
      { "type": "float", "name": "Smoothness", "default": "0.5", "min": "0", "max": "5", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "Painting Settings" },
      { "type": "int", "name": "Abstraction", "default": "2", "min": "1", "max": "10", "pos": "11" },
      { "type": "float", "name": "Details Scale", "default": "0.5", "min": "0", "max": "5", "pos": "12" },
      { "type": "float", "name": "Smoothness", "default": "200", "min": "0", "max": "1000", "pos": "13" },
      { "type": "separator" },
      { "type": "bool", "name": "Merge Layers?", "default": "1", "pos": "14" },
      { "type": "note", "text": "When unchecked the filter will output layers separately for manual composing. Set G'Mic output to new layers." },
      { "type": "separator" },
      { "type": "bool", "name": "Enable Paintstroke", "default": "1", "pos": "15" },
      { "type": "float", "name": "Stroke Strength", "default": "1", "min": "0", "max": "1", "pos": "16" },
      { "type": "bool", "name": "Enable Segmentation", "default": "1", "pos": "17" },
      { "type": "float", "name": "Segments Strength", "default": "1", "min": "0", "max": "1", "pos": "18" },
      { "type": "bool", "name": "Enable Morphology", "default": "1", "pos": "19" },
      { "type": "float", "name": "Morphology Strength", "default": "1", "min": "0", "max": "1", "pos": "20" },
      { "type": "bool", "name": "Normalize", "default": "1", "pos": "21" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "22", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Arto Huotari.      Latest update : 2013/09/28." },
      { "type": "link", "name": "Filter Explained here", "url": "http://www.flickr.com/photos/naggobot/6108637935/", "align": "center" }
      ]
    },
    {
      "name": "Neon", "lang": "en", "command": "fx_neon", "command_preview": "fx_neon_preview", "parameters": [
      { "type": "note", "text": "Turns bright image outlines into bright, neon-like lines." },
      { "type": "separator" },
      { "type": "note", "text": "Lines" },
      { "type": "choice", "name": "1. Norm Mode", "default": "0", "pos": "1", "choices": { "0": "Gradient norm", "1": "Hessian", "2": "Laplacian", "3": "Rotation-invariant gradient", "4": "Afre's Edge algorithm" } },
      { "type": "int", "name": "2. Thinning", "default": "1", "min": "1", "max": "10", "pos": "2" },
      { "type": "float", "name": "3. Recovery", "default": "1", "min": ".5", "max": "4", "pos": "3" },
      { "type": "float", "name": "4. Brightness", "default": "1", "min": ".5", "max": "4", "pos": "4" },
      { "type": "float", "name": "5. Details", "default": "1", "min": ".5", "max": "4", "pos": "5" },
      { "type": "float", "name": "6. Smoothness", "default": "0", "min": "0", "max": "10", "pos": "6" },
      { "type": "float", "name": "7. Contrast", "default": "0.45", "min": "0", "max": "1.5", "pos": "7" },
      { "type": "float", "name": "8. Min Threshold", "default": "40", "min": "0", "max": "100", "pos": "8" },
      { "type": "float", "name": "9. Max Threshold", "default": "60", "min": "0", "max": "100", "pos": "9" },
      { "type": "bool", "name": "10. Negative", "default": "0", "pos": "10" },
      { "type": "float", "name": "11. Opacity Over Original", "default": "1", "min": "0", "max": "1", "pos": "11" },
      { "type": "float", "name": "12. Saturation", "default": "1.15", "min": "0", "max": "4", "pos": "12" },
      { "type": "float", "name": "13. Blur Colours", "default": "2", "min": "0", "max": "20", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "Antialias" },
      { "type": "float", "name": "14. Amplitude", "default": "3", "min": "0", "max": "100", "pos": "14" },
      { "type": "float", "name": "15. Edge Threshold (%)", "default": "0", "min": "0", "max": "100", "pos": "15" },
      { "type": "float", "name": "16. Smoothness", "default": "3", "min": "0", "max": "5", "pos": "16" },
      { "type": "separator" },
      { "type": "note", "text": "Colour Glow 1" },
      { "type": "float", "name": "17. Size", "default": "20", "min": "0", "max": "100", "pos": "17" },
      { "type": "float", "name": "18. Intensity", "default": "0.4", "min": "0", "max": "3", "pos": "18" },
      { "type": "float", "name": "19. Darken", "default": "0.1", "min": "0", "max": "1", "pos": "19" },
      { "type": "float", "name": "20. Saturation", "default": "1.5", "min": "0", "max": "4", "pos": "20" },
      { "type": "separator" },
      { "type": "note", "text": "Colour Glow 2" },
      { "type": "float", "name": "21. Size", "default": "5", "min": "0", "max": "100", "pos": "21" },
      { "type": "float", "name": "22. Intensity", "default": "0.2", "min": "0", "max": "3", "pos": "22" },
      { "type": "float", "name": "23. Darken", "default": "0.1", "min": "0", "max": "1", "pos": "23" },
      { "type": "float", "name": "24. Saturation", "default": "1", "min": "0", "max": "4", "pos": "24" },
      { "type": "separator" },
      { "type": "note", "text": "Boost Glow" },
      { "type": "float", "name": "25. Size", "default": "2", "min": "0", "max": "5", "pos": "25" },
      { "type": "float", "name": "26. Intensity", "default": "1", "min": "0", "max": "3", "pos": "26" },
      { "type": "separator" },
      { "type": "float", "name": "27. Smooth Hues", "default": "0", "min": "0", "max": "20", "pos": "27" },
      { "type": "separator" },
      { "type": "bool", "name": "28. Alpha", "default": "0", "pos": "28" },
      { "type": "float", "name": "29. Alpha Power", "default": "1", "min": "0", "max": "5", "pos": "29" },
      { "type": "float", "name": "30. Alpha Multiplier", "default": "1", "min": "0", "max": "5", "pos": "30" },
      { "type": "separator" },
      { "type": "choice", "name": "31. Preview type", "default": "0", "pos": "31", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "point", "name": "32-33. Preview Split", "position": "50,50", "pos": "32", "visibility": "0" }
      ]
    },
    {
      "name": "Neon Alpha", "lang": "en", "command": "fx_neon_alpha", "command_preview": "fx_neon_alpha_preview", "parameters": [
      { "type": "note", "text": "An attempt to make the Neon filter work with alpha channels. Low-quality, comes with some artefacts." },
      { "type": "separator" },
      { "type": "note", "text": "Gradient norm" },
      { "type": "float", "name": "1. Smoothness", "default": "0", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "2. Linearity", "default": "0.45", "min": "0", "max": "1.5", "pos": "2" },
      { "type": "float", "name": "3. Min Threshold", "default": "40", "min": "0", "max": "100", "pos": "3", "visibility": "0" },
      { "type": "float", "name": "4. Max Threshold", "default": "60", "min": "0", "max": "100", "pos": "4" },
      { "type": "bool", "name": "5. Negative", "default": "0", "pos": "5", "visibility": "0" },
      { "type": "float", "name": "6. Blur Original", "default": "2", "min": "0", "max": "20", "pos": "6" },
      { "type": "float", "name": "7. Saturation", "default": "1.15", "min": "0", "max": "4", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Colour Glow 1" },
      { "type": "float", "name": "8. Size", "default": "20", "min": "0", "max": "100", "pos": "8" },
      { "type": "float", "name": "9. Intensity", "default": "0.4", "min": "0", "max": "3", "pos": "9" },
      { "type": "float", "name": "10. Darken", "default": "0.1", "min": "0", "max": "1", "pos": "10" },
      { "type": "float", "name": "11. Saturation", "default": "2.25", "min": "0", "max": "4", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Colour Glow 2" },
      { "type": "float", "name": "12. Size", "default": "5", "min": "0", "max": "100", "pos": "12" },
      { "type": "float", "name": "13. Intensity", "default": "0.2", "min": "0", "max": "3", "pos": "13" },
      { "type": "float", "name": "14. Darken", "default": "0.1", "min": "0", "max": "1", "pos": "14" },
      { "type": "float", "name": "15. Saturation", "default": "2.25", "min": "0", "max": "4", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "Boost Glow" },
      { "type": "float", "name": "16. Size", "default": "2", "min": "0", "max": "5", "pos": "16" },
      { "type": "float", "name": "17. Intensity", "default": "1", "min": "0", "max": "2", "pos": "17" }
      ]
    },
    {
      "name": "Otsu-Hessian Blend", "lang": "en", "command": "fx_otsu_hessian_blend", "command_preview": "fx_otsu_hessian_blend_preview", "parameters": [
      { "type": "note", "text": "Expansion of <a href=\"https://discuss.pixls.us/t/one-liner-challenge/8785/7?u=joan_rake1\">a one-line filter by Afre</a>." },
      { "type": "int", "name": "Otsu Levels", "default": "4", "min": "1", "max": "32", "pos": "1" },
      { "type": "float", "name": "Norm 1", "default": "0", "min": "-5", "max": "5", "pos": "2" },
      { "type": "float", "name": "Norm 2", "default": "1", "min": "-5", "max": "5", "pos": "3" },
      { "type": "choice", "name": "Merging Option", "default": "27", "pos": "4", "choices": { "0": "add", "1": "alpha", "2": "and", "3": "average", "4": "blue", "5": "burn", "6": "darken", "7": "difference", "8": "divide", "9": "dodge", "10": "exclusion", "11": "freeze", "12": "grainextract", "13": "grainmerge", "14": "green", "15": "hardlight", "16": "hardmix", "17": "hue", "18": "interpolation", "19": "lighten", "20": "lightness", "21": "linearburn", "22": "linearlight", "23": "luminance", "24": "multiply", "25": "negation", "26": "or", "27": "overlay", "28": "pinlight", "29": "red", "30": "reflect", "31": "saturation", "32": "screen", "33": "shapeaverage", "34": "softburn", "35": "softdodge", "36": "softlight", "37": "stamp", "38": "subtract", "39": "value", "40": "vividlight", "41": "xor" } },
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "5" },
      { "type": "bool", "name": "Reverse Order", "default": "0", "pos": "6" }
      ]
    },
    {
      "name": "Paint With Brush", "lang": "en", "command": "fx_paint_with_brush", "command_preview": "fx_paint_with_brush_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Repaint image using a virtual brush. " },
      { "type": "separator" },
      { "type": "choice", "name": "Predefined style", "default": "0", "pos": "1", "choices": { "0": "Default", "1": "Felt Spots", "2": "Colored Edges", "3": "Circles", "4": "Dreamy", "5": "Fuzzy", "6": "Whirls", "7": "Smooth" } },
      { "type": "value", "value": "-1", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Global Settings:</span>" },
      { "type": "choice", "name": "Painting Order", "default": "1", "pos": "3", "choices": { "0": "Random", "1": "Coarse to Fine", "2": "Fine to Coarse" } },
      { "type": "int", "name": "Number of Iterations", "default": "16", "min": "1", "max": "128", "pos": "4" },
      { "type": "float", "name": "Precision (%)", "default": "30", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "Details (%)", "default": "100", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "Background (%)", "default": "100", "min": "0", "max": "100", "pos": "7" },
      { "type": "float", "name": "Sharpness (%)", "default": "10", "min": "0", "max": "100", "pos": "8" },
      { "type": "float", "name": "Anisotropy (%)", "default": "80", "min": "0", "max": "100", "pos": "9" },
      { "type": "float", "name": "Smoothness", "default": "0.5", "min": "0", "max": "8", "pos": "10" },
      { "type": "float", "name": "Coherence", "default": "3", "min": "0", "max": "16", "pos": "11" },
      { "type": "int", "name": "Twist Angle (°)", "default": "45", "min": "-1", "max": "360", "pos": "12", "visibility": "0" },
      { "type": "note", "text": "(-1 means 'Random Angle').", "visibility": "0" },
      { "type": "int", "name": "Twist strength (%)", "default": "0", "min": "-1", "max": "100", "pos": "13", "visibility": "0" },
      { "type": "note", "text": "(-1 means 'Angle Shift').", "visibility": "0" },
      { "type": "choice", "name": "Init Canvas", "default": "6", "pos": "14", "choices": { "0": "Black", "1": "Gray", "2": "White", "3": "Self", "4": "Blur", "5": "Kuwahara", "6": "Vector Painting" } },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Brush for Details:</span>", "visibility": "0" },
      { "type": "float", "name": "Brush Diameter (px)", "default": "2", "min": "0", "max": "100", "pos": "15", "visibility": "0" },
      { "type": "float", "name": "Stroke Length (px)", "default": "10", "min": "0", "max": "100", "pos": "16", "visibility": "0" },
      { "type": "float", "name": "Hue Randomness (%)", "default": "0", "min": "0", "max": "100", "pos": "17", "visibility": "0" },
      { "type": "float", "name": "Saturation Randomness (%)", "default": "0", "min": "0", "max": "100", "pos": "18" },
      { "type": "float", "name": "Value Randomness (%)", "default": "0", "min": "0", "max": "100", "pos": "19" },
      { "type": "float", "name": "Opacity (%)", "default": "60", "min": "0", "max": "100", "pos": "20", "visibility": "0" },
      { "type": "separator", "visibility": "0" },
      { "type": "note", "text": "<span color=\"#EE5500\">Brush for Background:</span>", "visibility": "0" },
      { "type": "float", "name": "Brush Diameter (px)", "default": "20", "min": "0", "max": "100", "pos": "21", "visibility": "0" },
      { "type": "float", "name": "Stroke Length (px)", "default": "1", "min": "0", "max": "100", "pos": "22" },
      { "type": "float", "name": "Hue Randomness (%)", "default": "0", "min": "0", "max": "100", "pos": "23" },
      { "type": "float", "name": "Saturation Randomness (%)", "default": "0", "min": "0", "max": "100", "pos": "24", "visibility": "0" },
      { "type": "float", "name": "Value Randomness (%)", "default": "0", "min": "0", "max": "100", "pos": "25", "visibility": "0" },
      { "type": "float", "name": "Opacity (%)", "default": "30", "min": "0", "max": "100", "pos": "26", "visibility": "0" },
      { "type": "separator", "visibility": "0" },
      { "type": "note", "text": "<span color=\"#EE5500\">Brush Dynamics:</span>" },
      { "type": "float", "name": "Brush Diameter", "default": "15", "min": "0", "max": "255", "pos": "27" },
      { "type": "float", "name": "Stroke Length", "default": "15", "min": "0", "max": "255", "pos": "28", "visibility": "0" },
      { "type": "float", "name": "Hue Randomness", "default": "15", "min": "0", "max": "255", "pos": "29", "visibility": "0" },
      { "type": "float", "name": "Saturation Randomness", "default": "15", "min": "0", "max": "255", "pos": "30", "visibility": "0" },
      { "type": "float", "name": "Value Randomness", "default": "15", "min": "0", "max": "255", "pos": "31", "visibility": "0" },
      { "type": "float", "name": "Opacity", "default": "15", "min": "0", "max": "255", "pos": "32" },
      { "type": "float", "name": "Spatial Step", "default": "1", "min": "0", "max": "3", "pos": "33" },
      { "type": "float", "name": "Angular Step (°)", "default": "45", "min": "0", "max": "90", "pos": "34", "visibility": "0" },
      { "type": "separator", "visibility": "0" },
      { "type": "bool", "name": "Preview Progression While Running", "default": "0", "pos": "35", "visibility": "0" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2021/08/30.", "visibility": "0" }
      ]
    },
    {
      "name": "Painting", "lang": "en", "command": "fx_painting", "command_preview": "fx_painting", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Converts the photo into a generic painting style. " },
      { "type": "separator" },
      { "type": "int", "name": "Abstraction", "default": "5", "min": "1", "max": "10", "pos": "1" },
      { "type": "float", "name": "Details Scale", "default": "2.5", "min": "0", "max": "5", "pos": "2" },
      { "type": "float", "name": "Color", "default": "1.5", "min": "0", "max": "4", "pos": "3" },
      { "type": "float", "name": "Smoothness", "default": "50", "min": "0", "max": "1000", "pos": "4" },
      { "type": "bool", "name": "Sharpen Shades", "default": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Authors: Lyle Kroll, Angelo Lama and David Tschumperlé.       Latest Update: 2011/02/28." }
      ]
    },
    {
      "name": "Plasmic", "lang": "en", "command": "samj_Plasmic", "command_preview": "samj_Plasmic", "parameters": [
      { "type": "note", "text": "Plasmic filter is based on a composition of Lylejk" },
      { "type": "link", "name": "https://www.flickr.com/photos/34520999@N05/24513476052/sizes/o/", "url": "https://www.flickr.com/photos/34520999@N05/24513476052/sizes/o/", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Blur</span>" },
      { "type": "float", "name": "Blur", "default": "0", "min": "0", "max": "10", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Contours</span>" },
      { "type": "float", "name": "Pow", "default": "1.1", "min": "0.2", "max": "2", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Segment</span>" },
      { "type": "float", "name": "Edge threshold", "default": "2", "min": "0", "max": "15", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Cut</span>" },
      { "type": "int", "name": "Cut", "default": "40", "min": "0", "max": "255", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Dilate</span>" },
      { "type": "int", "name": "Dilate Contours", "default": "0", "min": "0", "max": "16", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Plasma</span>" },
      { "type": "int", "name": "Plasmic", "default": "0", "min": "0", "max": "20", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Dégradation Deform</span>" },
      { "type": "float", "name": "Deform", "default": "0", "min": "0", "max": "10", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Dégradation Spread</span>" },
      { "type": "float", "name": "Spread", "default": "0", "min": "0", "max": "10", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Update : 2016/02/03." }
      ]
    },
    {
      "name": "Plasmic V2", "lang": "en", "command": "samj_Plasmic_V2", "command_preview": "samj_Plasmic_V2", "parameters": [
      { "type": "note", "text": "samj_Plasmic_V2" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Plasma</span>" },
      { "type": "int", "name": "Plasmic", "default": "2", "min": "-20", "max": "20", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Lines</span>" },
      { "type": "int", "name": "Thickness", "default": "4", "min": "1", "max": "32", "pos": "2" },
      { "type": "int", "name": "Accuracy", "default": "10", "min": "1", "max": "32", "pos": "3" },
      { "type": "float", "name": "Coeff. Accuracy", "default": "2", "min": "0.1", "max": "8", "pos": "4" },
      { "type": "float", "name": "Coeff. Blur", "default": "0.02", "min": "0", "max": "1", "pos": "5" },
      { "type": "int", "name": "Isophotes", "default": "8", "min": "2", "max": "32", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Dégradation Deform</span>" },
      { "type": "float", "name": "Deform", "default": "0", "min": "-200", "max": "200", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Dilate</span>" },
      { "type": "int", "name": "Dilate Contours", "default": "0", "min": "0", "max": "16", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Dégradation Spread</span>" },
      { "type": "float", "name": "Spread", "default": "0", "min": "0", "max": "10", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Background</span>" },
      { "type": "color", "name": "Color", "default": "0,0,0,255", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Update : 2020/10/24." }
      ]
    },
    {
      "name": "Pointillisme", "lang": "en", "command": "samj_Pointillisme", "command_preview": "samj_Pointillisme ", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Points</span>" },
      { "type": "int", "name": "Intensite", "default": "10", "min": "1", "max": "100", "pos": "1" },
      { "type": "float", "name": "Densité", "default": "2", "min": "0", "max": "100", "pos": "2" },
      { "type": "int", "name": "Dimension", "default": "5", "min": "2", "max": "20", "pos": "3" },
      { "type": "bool", "name": "Rond vs Carré", "default": "1", "pos": "4" },
      { "type": "float", "name": "Variation", "default": "1", "min": "0.2", "max": "2", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Arriere plan</span>" },
      { "type": "bool", "name": "Fond Transparent", "default": "1", "pos": "6" },
      { "type": "color", "name": "Couleur", "default": "0,0,0,255", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/12/08." }
      ]
    },
    {
      "name": "Pointillisme B", "lang": "en", "command": "samj_Pointillisme_B", "command_preview": "samj_Pointillisme_B ", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Couleurs</span>" },
      { "type": "float", "name": "Variation", "default": "1", "min": "0.2", "max": "2", "pos": "1" },
      { "type": "int", "name": "Dilatation", "default": "0", "min": "0", "max": "16", "pos": "2" },
      { "type": "float", "name": "Pixels", "default": "90", "min": "0", "max": "100", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Points</span>" },
      { "type": "int", "name": "Dimension", "default": "3", "min": "0", "max": "20", "pos": "4" },
      { "type": "bool", "name": "Rond vs Carré", "default": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Arriere plan</span>" },
      { "type": "bool", "name": "Fond Transparent", "default": "1", "pos": "6" },
      { "type": "color", "name": "Couleur", "default": "0,0,0,255", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2019/12/14." }
      ]
    },
    {
      "name": "Polygonize [Delaunay]", "lang": "en", "command": "fx_polygonize_delaunay", "command_preview": "fx_polygonize_delaunay", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Triangulates the image based on Delaunay tessellation. " },
      { "type": "separator" },
      { "type": "float", "name": "Density (%)", "default": "40", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Edges", "default": "5", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Boundaries (%)", "default": "75", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Smoothness", "default": "0.5", "min": "0", "max": "8", "pos": "4" },
      { "type": "choice", "name": "Filling", "default": "3", "pos": "5", "choices": { "0": "Black", "1": "White", "2": "Random", "3": "Average", "4": "Linear" } },
      { "type": "float", "name": "Outline (%)", "default": "50", "min": "0", "max": "100", "pos": "6" },
      { "type": "color", "name": "Outline Color", "default": "0,0,0,255", "pos": "7" },
      { "type": "bool", "name": "Anti-Aliasing", "default": "1", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2018/06/05." }
      ]
    },
    {
      "name": "Polygonize [Energy]", "lang": "en", "command": "fx_polygonize", "command_preview": "fx_polygonize", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Approximates the image using polygonal shapes based on energy minimization. " },
      { "type": "separator" },
      { "type": "int", "name": "Amplitude", "default": "300", "min": "0", "max": "2000", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "10", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Minimal Area", "default": "10", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "X-Resolution", "default": "10", "min": "1", "max": "256", "pos": "4" },
      { "type": "float", "name": "Y-Resolution", "default": "10", "min": "1", "max": "256", "pos": "5" },
      { "type": "color", "name": "Outline Color", "default": "0,0,0,255", "pos": "6" },
      { "type": "separator" },
      { "type": "link", "name": "Click here for a detailed description of this filter.", "url": "http://www.gimpchat.com/viewtopic.php?f=28&t=9174", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/12/02." }
      ]
    },
    {
      "name": "Poster Edges", "lang": "en", "command": "fx_poster_edges", "command_preview": "fx_poster_edges", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Reduces colors and emphasizes edges with dark lines. " },
      { "type": "separator" },
      { "type": "float", "name": "Image Smoothness", "default": "20", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Edge Threshold", "default": "60", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Edge Shade", "default": "5", "min": "0", "max": "30", "pos": "3" },
      { "type": "float", "name": "Edge Thickness", "default": "0", "min": "0", "max": "5", "pos": "4" },
      { "type": "float", "name": "Edge Antialiasing", "default": "10", "min": "0", "max": "100", "pos": "5" },
      { "type": "int", "name": "Posterization Level", "default": "0", "min": "0", "max": "15", "pos": "6" },
      { "type": "float", "name": "Posterization Antialiasing", "default": "0", "min": "0", "max": "100", "pos": "7" },
      { "type": "separator" },
      { "type": "link", "name": "Click here for a detailed description of this filter.", "url": "http://www.davidrevoy.com/article147/gmic-new-filter-poster-edges", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Authors: David Tschumperlé and David Revoy.       Latest Update: 2012/11/30." }
      ]
    },
    {
      "name": "Posterize", "lang": "en", "command": "fx_posterize", "command_preview": "fx_posterize", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Reduces the number of distinct colors in the image and apply a smooth look. " },
      { "type": "separator" },
      { "type": "float", "name": "Smoothness", "default": "150", "min": "0", "max": "800", "pos": "1" },
      { "type": "float", "name": "Edges (%)", "default": "30", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Paint", "default": "1", "min": "0", "max": "10", "pos": "3" },
      { "type": "int", "name": "Colors", "default": "12", "min": "2", "max": "256", "pos": "4" },
      { "type": "int", "name": "Minimal Area", "default": "0", "min": "0", "max": "64", "pos": "5" },
      { "type": "float", "name": "Outline (%)", "default": "0", "min": "0", "max": "100", "pos": "6" },
      { "type": "bool", "name": "Normalize Colors", "default": "0", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/10/25." }
      ]
    },
    {
      "name": "Posterize B", "lang": "en", "command": "samj_Posterize_B", "command_preview": "samj_Posterize_B", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Posterize B</span>" },
      { "type": "float", "name": "Blur", "default": "1", "min": "0", "max": "5", "pos": "1" },
      { "type": "int", "name": "Colors", "default": "12", "min": "2", "max": "32", "pos": "2" },
      { "type": "float", "name": "Inpaint Holes", "default": "1", "min": "0.1", "max": "5", "pos": "3" },
      { "type": "int", "name": "Smooth", "default": "0", "min": "0", "max": "8", "pos": "4" },
      { "type": "float", "name": "Smooth - Smoothness", "default": "40", "min": "10", "max": "800", "pos": "5" },
      { "type": "float", "name": "Smooth - Edges (%)", "default": "30", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "Smooth - Paint", "default": "1", "min": "0", "max": "10", "pos": "7" },
      { "type": "int", "name": "Sharpen", "default": "0", "min": "0", "max": "5000", "pos": "8" },
      { "type": "bool", "name": "Normalize Colors", "default": "0", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Contours Difference</span>" },
      { "type": "bool", "name": "Contours Difference", "default": "0", "pos": "10" },
      { "type": "choice", "name": "XY-Offset", "default": "0", "pos": "11", "choices": { "0": "1 1", "1": "1 -1", "2": "-1 1", "3": "-1 -1", "4": "0 1", "5": "1 0", "6": "0 -1", "7": "-1 0" } },
      { "type": "int", "name": "Thickness", "default": "1", "min": "1", "max": "8", "pos": "12" },
      { "type": "bool", "name": "Dithering", "default": "0", "pos": "13" },
      { "type": "int", "name": "Erasure Grid", "default": "0", "min": "0", "max": "16", "pos": "14" },
      { "type": "choice", "name": "Vivid Light - Type", "default": "0", "pos": "15", "choices": { "0": "No", "1": "Vivid Light 1", "2": "Vivid Light 2", "3": "Vivid Light 3" } },
      { "type": "int", "name": "Vivid Light - Colors", "default": "0", "min": "0", "max": "200", "pos": "16" },
      { "type": "bool", "name": "Black and White", "default": "0", "pos": "17" },
      { "type": "bool", "name": "Negative Colors", "default": "0", "pos": "18" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Quadtree Variations", "lang": "en", "command": "fx_quadtree", "command_preview": "fx_quadtree", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Decomposes the image into rectangles of different sizes using a Quadtree algorithm. " },
      { "type": "separator" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "1", "choices": { "0": "Squares", "1": "Sierpinksi Design", "2": "Ellipse Painting" } },
      { "type": "int", "name": "Precision", "default": "1024", "min": "2", "max": "4096", "pos": "2" },
      { "type": "float", "name": "Homogeneity", "default": "0.5", "min": "0", "max": "2", "pos": "3" },
      { "type": "int", "name": "Outline", "default": "0", "min": "0", "max": "4", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "For 'Ellipse painting' only:" },
      { "type": "float", "name": "Primary Radius", "default": "3", "min": "0", "max": "5", "pos": "5" },
      { "type": "float", "name": "Secondary Radius", "default": "1.5", "min": "0", "max": "5", "pos": "6" },
      { "type": "float", "name": "Anisotropy", "default": "1", "min": "0", "max": "4", "pos": "7" },
      { "type": "bool", "name": "Only Leafs", "default": "1", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2017/06/15." }
      ]
    },
    {
      "name": "Rodilius", "lang": "en", "command": "fx_rodilius", "command_preview": "fx_rodilius", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Creates a high-frequency, glowing line effect similar to the \"Fractalius\" plugin. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "10", "min": "0", "max": "30", "pos": "1" },
      { "type": "float", "name": "Thickness", "default": "10", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Sharpness", "default": "300", "min": "0", "max": "1000", "pos": "3" },
      { "type": "int", "name": "Orientations", "default": "5", "min": "2", "max": "36", "pos": "4" },
      { "type": "float", "name": "Offset", "default": "30", "min": "0", "max": "180", "pos": "5" },
      { "type": "int", "name": "Smoothness", "default": "0", "min": "0", "max": "5", "pos": "6" },
      { "type": "choice", "name": "Color Mode", "default": "1", "pos": "7", "choices": { "0": "Darker", "1": "Lighter" } },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "8", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "choice", "name": "Value Action", "default": "0", "pos": "9", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } },
      { "type": "separator" },
      { "type": "link", "name": "Click here for a video tutorial", "url": "http://www.youtube.com/watch?v=RC07VUpzwGc", "align": "center" },
      { "type": "note", "text": "Authors: David Tschumperlé and Rod/GimpChat.       Latest Update: 2013/03/05." }
      ]
    },
    {
      "name": "samj_ripple_houghsketchbw", "lang": "en", "command": "samj_ripple_houghsketchbw", "command_preview": "samj_ripple_houghsketchbw_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Blur</span>" },
      { "type": "float", "name": "1 - Blur", "default": "2", "min": "0.1", "max": "10", "pos": "1" },
      { "type": "note", "text": "<span foreground=\"orangered\">Ripple</span>" },
      { "type": "int", "name": "2 Amplitude", "default": "100", "min": "1", "max": "300", "pos": "2" },
      { "type": "float", "name": "3 Bandwidth", "default": "50", "min": "1", "max": "300", "pos": "3" },
      { "type": "choice", "name": "4 Shape", "default": "1", "pos": "4", "choices": { "0": "Sine", "1": "Sine+" } },
      { "type": "float", "name": "5 Angle", "default": "45", "min": "0", "max": "360", "pos": "5" },
      { "type": "float", "name": "6 Offset", "default": "0", "min": "0", "max": "500", "pos": "6" },
      { "type": "note", "text": "<span foreground=\"orangered\">houghsketchbw</span>" },
      { "type": "float", "name": "7 Density", "default": "10", "min": "0", "max": "70", "pos": "7" },
      { "type": "int", "name": "8 Radius", "default": "5", "min": "0", "max": "30", "pos": "8" },
      { "type": "float", "name": "9 Threshold", "default": "80", "min": "0", "max": "100", "pos": "9" },
      { "type": "float", "name": "10 Opacity", "default": "0.1", "min": "0", "max": "1", "pos": "10" },
      { "type": "float", "name": "11 Votesize", "default": "100", "min": "10", "max": "200", "pos": "11" },
      { "type": "note", "text": "<span foreground=\"orangered\">Color</span>" },
      { "type": "bool", "name": "12 Blend Color", "default": "1", "pos": "12" },
      { "type": "choice", "name": "13 Mode", "default": "17", "pos": "13", "choices": { "0": "add", "1": "alpha", "2": "and", "3": "average", "4": "blue", "5": "burn", "6": "darken", "7": "difference", "8": "divide", "9": "dodge", "10": "edges", "11": "exclusion", "12": "freeze", "13": "grainextract", "14": "grainmerge", "15": "green", "16": "hardlight", "17": "hardmix", "18": "hue", "19": "interpolation", "20": "lighten", "21": "lightness", "22": "linearburn", "23": "linearlight", "24": "luminance", "25": "multiply", "26": "negation", "27": "or", "28": "overlay", "29": "pinlight", "30": "red", "31": "reflect", "32": "saturation", "33": "seamless", "34": "seamless_mixed", "35": "screen", "36": "shapeareamax", "37": "shapeareamax0", "38": "shapeareamin", "39": "shapeareamin0", "40": "shapeaverage", "41": "shapeaverage0", "42": "shapemedian", "43": "shapemedian0", "44": "shapemin", "45": "shapemin0", "46": "shapemax", "47": "shapemax0", "48": "softburn", "49": "softdodge", "50": "softlight", "51": "stamp", "52": "subtract", "53": "value", "54": "vividlight", "55": "xor" } },
      { "type": "float", "name": "14 Opacity", "default": "1", "min": "0", "max": "1", "pos": "14" },
      { "type": "bool", "name": "15 Reverse Layers", "default": "0", "pos": "15" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "16", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2023/05/28." }
      ]
    },
    {
      "name": "Shapeism", "lang": "en", "command": "fx_shapeism", "command_preview": "fx_shapeism_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Recreates the image using colored, geometric shapes. " },
      { "type": "separator" },
      { "type": "choice", "name": "Shape", "default": "2", "pos": "1", "choices": { "0": "Squares", "1": "Triangles", "2": "Circles", "3": "Diamond", "4": "Hexagon", "5": "Octagon", "6": "Star", "7": "Heart", "8": "Custom" } },
      { "type": "int", "name": "Branches", "default": "7", "min": "3", "max": "16", "pos": "2" },
      { "type": "float", "name": "Thickness", "default": "0.38", "min": "0", "max": "1", "pos": "3" },
      { "type": "float", "name": "Angle", "default": "0", "min": "0", "max": "360", "pos": "4" },
      { "type": "note", "text": "Note: Parameters Branches, Thickness and Angle are used only for Custom shapes." },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "int", "name": "Scales", "default": "5", "min": "1", "max": "16", "pos": "6" },
      { "type": "int", "name": "Maximal Size", "default": "32", "min": "1", "max": "256", "pos": "7" },
      { "type": "int", "name": "Minimal Size", "default": "8", "min": "1", "max": "256", "pos": "8" },
      { "type": "choice", "name": "Allow Angle", "default": "3", "pos": "9", "choices": { "0": "0 deg.", "1": "180 deg.", "2": "90 deg.", "3": "Any" } },
      { "type": "int", "name": "Spacing", "default": "0", "min": "-5", "max": "5", "pos": "10" },
      { "type": "int", "name": "Precision", "default": "5", "min": "1", "max": "10", "pos": "11" },
      { "type": "float", "name": "Edges", "default": "0.5", "min": "0", "max": "2", "pos": "12" },
      { "type": "float", "name": "Smoothness", "default": "1", "min": "0", "max": "10", "pos": "13" },
      { "type": "color", "name": "Background", "default": "0,0,0,255", "pos": "14" },
      { "type": "separator" },
      { "type": "link", "name": "Click here for a detailed description of this filter.", "url": "http://gimpchat.com/viewtopic.php?f=28&t=7500&sid=5b483979826903b8f8fc8fdaf1767dae", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2025/06/06." }
      ]
    },
    {
      "name": "Sharp Abstract", "lang": "en", "command": "fx_sharp_abstract", "command_preview": "fx_sharp_abstract", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Creates an abstract look with sharp, defined edges. " },
      { "type": "separator" },
      { "type": "float", "name": "Spatial Scale", "default": "4", "min": "0", "max": "32", "pos": "1" },
      { "type": "float", "name": "Value Scale", "default": "10", "min": "0", "max": "16", "pos": "2" },
      { "type": "float", "name": "Precision", "default": "0.5", "min": "0", "max": "2", "pos": "3" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "4", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/09/20." }
      ]
    },
    {
      "name": "Simple Noise Canvas", "lang": "en", "command": "fx_SimpleNoiseCanvas", "command_preview": "fx_SimpleNoiseCanvasPreview", "parameters": [
      { "type": "note", "text": "Simpe noise based xy canvas effect. Preserve canvas and bumpmap image with canvas after filtering for best results. Merge option DoNothing outputs only original image if Preserve canvas option is not selected." },
      { "type": "separator" },
      { "type": "float", "name": "Scale Factor", "default": "0", "min": "0", "max": "1", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Noise Parameters" },
      { "type": "float", "name": "Amplitude", "default": "3", "min": "0", "max": "20", "pos": "2" },
      { "type": "choice", "name": "Noise Type", "default": "2", "pos": "3", "choices": { "0": "Gaussian", "1": "Uniform", "2": "Salt and Pepper", "3": "Poisson" } },
      { "type": "separator" },
      { "type": "note", "text": "Thread Length" },
      { "type": "float", "name": "Horisontal Length", "default": "5", "min": "2", "max": "15", "pos": "4" },
      { "type": "float", "name": "Vertical Length", "default": "5", "min": "2", "max": "15", "pos": "5" },
      { "type": "float", "name": "Overall Blur", "default": "0", "min": "0", "max": "15", "pos": "6" },
      { "type": "float", "name": "Canvas Brightness", "default": "255", "min": "230", "max": "255", "pos": "7" },
      { "type": "float", "name": "Canvas Darkness", "default": "0", "min": "0", "max": "255", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "How to combine XY threads" },
      { "type": "choice", "name": "Merging Option", "default": "2", "pos": "9", "choices": { "0": "Average", "1": "Multiply", "2": "Darken", "3": "Edges" } },
      { "type": "bool", "name": "Invert Canvas Colors", "default": "0", "pos": "10" },
      { "type": "bool", "name": "Invert Image Colors", "default": "0", "pos": "11" },
      { "type": "note", "text": "How to combine image + canvas" },
      { "type": "bool", "name": "Reverse Order", "default": "0", "pos": "12" },
      { "type": "choice", "name": "Merging Option", "default": "1", "pos": "13", "choices": { "0": "Avg", "1": "Multiply", "2": "Scr", "3": "Darken", "4": "Lighten", "5": "Dif", "6": "Negation", "7": "Exclusion", "8": "Overlay", "9": "Hardlight", "10": "Softlight", "11": "Dodge", "12": "Colorburn", "13": "Reflect", "14": "Freeze", "15": "Stamp", "16": "Interpolate", "17": "Grainext", "18": "Grainmerge", "19": "Xor", "20": "Edges", "21": "DoNothing" } },
      { "type": "bool", "name": "Preserve Canvas for Post Bump Mapping", "default": "0", "pos": "14" },
      { "type": "color", "name": "Canvas Color", "default": "255,255,255,255", "pos": "15" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "19", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Arto Huotari.      Latest update : 2013/09/28." },
      { "type": "link", "name": "Filter Explained here", "url": "http://www.flickr.com/photos/naggobot/6152040642/", "align": "center" }
      ]
    },
    {
      "name": "Skeletik", "lang": "en", "command": "samj_Test_Skeletik", "command_preview": "samj_Test_Skeletik", "parameters": [
      { "type": "note", "text": "samj_Test_Skeletik" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Lines - Cobweb</span>" },
      { "type": "int", "name": "Itérations", "default": "10", "min": "1", "max": "50", "pos": "1" },
      { "type": "int", "name": "Skeleton", "default": "1", "min": "1", "max": "20", "pos": "2" },
      { "type": "float", "name": "Deform", "default": "0", "min": "0", "max": "200", "pos": "3" },
      { "type": "int", "name": "Dilate", "default": "0", "min": "0", "max": "16", "pos": "4" },
      { "type": "float", "name": "Spread", "default": "0", "min": "0", "max": "10", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Blend</span>" },
      { "type": "choice", "name": "Mode", "default": "3", "pos": "6", "choices": { "0": "Add", "1": "Alpha", "2": "And", "3": "Average", "4": "Blue", "5": "Burn", "6": "Darken", "7": "Difference", "8": "Divide", "9": "Dodge", "10": "Edges", "11": "Exclusion", "12": "Freeze", "13": "Grain extract", "14": "Grain merge", "15": "Green", "16": "Hard light", "17": "Hard mix", "18": "Hue", "19": "Interpolation", "20": "Lighten", "21": "Lightness", "22": "Linear burn", "23": "Linear light", "24": "Luminance", "25": "Multiply", "26": "Negation", "27": "Or", "28": "Overlay", "29": "Pin light", "30": "Red", "31": "Reflect", "32": "Saturation", "33": "Shape area max", "34": "Shape area max0", "35": "Shape area min", "36": "Shape area min0", "37": "Shape average", "38": "Shape average0", "39": "Shape min", "40": "Shape min0", "41": "Shape max", "42": "Shape max0", "43": "Soft burn", "44": "Soft dodge", "45": "Soft light", "46": "Screen", "47": "Stamp", "48": "Subtract", "49": "Value", "50": "Vivid light", "51": "Xor" } },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Colors</span>" },
      { "type": "float", "name": "Lines", "default": "1", "min": "0.75", "max": "1.25", "pos": "7" },
      { "type": "color", "name": "Background Color", "default": "0,0,0,255", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Update : 2019/12/14." }
      ]
    },
    {
      "name": "Sketch", "lang": "en", "command": "fx_sketchbw", "command_preview": "fx_sketchbw", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simulates a pencil sketch effect. " },
      { "type": "separator" },
      { "type": "int", "name": "Number of Orientations", "default": "3", "min": "1", "max": "16", "pos": "1" },
      { "type": "float", "name": "Starting Angle", "default": "45", "min": "0", "max": "180", "pos": "2" },
      { "type": "float", "name": "Angle Range", "default": "180", "min": "0", "max": "180", "pos": "3" },
      { "type": "float", "name": "Stroke Length", "default": "30", "min": "0", "max": "1000", "pos": "4" },
      { "type": "float", "name": "Contour Threshold", "default": "1.75", "min": "0", "max": "10", "pos": "5" },
      { "type": "float", "name": "Opacity", "default": "0.02", "min": "0", "max": "0.3", "pos": "6" },
      { "type": "float", "name": "Background Intensity", "default": "0.5", "min": "0", "max": "2", "pos": "7" },
      { "type": "float", "name": "Density", "default": "0.75", "min": "0", "max": "5", "pos": "8" },
      { "type": "float", "name": "Sharpness", "default": "0.1", "min": "0", "max": "1", "pos": "9" },
      { "type": "float", "name": "Anisotropy", "default": "0.7", "min": "0", "max": "1", "pos": "10" },
      { "type": "float", "name": "Smoothness", "default": "3", "min": "0", "max": "10", "pos": "11" },
      { "type": "float", "name": "Coherence", "default": "6", "min": "0", "max": "10", "pos": "12" },
      { "type": "bool", "name": "Boost Stroke", "default": "0", "pos": "13", "visibility": "0" },
      { "type": "bool", "name": "Curved Stroke", "default": "1", "pos": "14" },
      { "type": "choice", "name": "Color Model", "default": "4", "pos": "15", "choices": { "0": "Black on white", "1": "White on black", "2": "Black on transparent white", "3": "White on transparent black", "4": "Color on white" } },
      { "type": "int", "name": "Random Seed", "default": "0", "min": "0", "max": "65535", "pos": "16" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2018/05/11." }
      ]
    },
    {
      "name": "Smooth Abstract", "lang": "en", "command": "fx_smooth_abstract", "command_preview": "fx_smooth_abstract", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Creates an abstract look with smooth, flowing regions. " },
      { "type": "separator" },
      { "type": "float", "name": "Smoothness (%)", "default": "75", "min": "0", "max": "100", "pos": "1" },
      { "type": "choice", "name": "Regularization", "default": "0", "pos": "2", "choices": { "0": "Isotropic", "1": "Delaunay-Guided", "2": "Edge-Oriented" } },
      { "type": "int", "name": "Regularization Iterations", "default": "20", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Geometry", "default": "1", "min": "0", "max": "5", "pos": "4" },
      { "type": "float", "name": "Details", "default": "30", "min": "0", "max": "50", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/04/06." }
      ]
    },
    {
      "name": "Stringify", "lang": "en", "command": "fx_stringify", "command_preview": "fx_stringify", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Reconstructs the image as if woven from continuous strings. " },
      { "type": "separator" },
      { "type": "int", "name": "Smoothness", "default": "2", "min": "0", "max": "10", "pos": "1" },
      { "type": "int", "name": "Levels", "default": "32", "min": "2", "max": "64", "pos": "2" },
      { "type": "float", "name": "Sampling rate (%)", "default": "20", "min": "0", "max": "100", "pos": "3" },
      { "type": "choice", "name": "Link", "default": "1", "pos": "4", "choices": { "0": "2 points", "1": "3 points", "2": "4 points", "3": "All points" } },
      { "type": "float", "name": "Offset (%)", "default": "100", "min": "0", "max": "100", "pos": "5" },
      { "type": "int", "name": "Threshold", "default": "32", "min": "0", "max": "1024", "pos": "6" },
      { "type": "float", "name": "Opacity (%)", "default": "20", "min": "0", "max": "100", "pos": "7" },
      { "type": "float", "name": "Normalization (%)", "default": "25", "min": "0", "max": "100", "pos": "8" },
      { "type": "bool", "name": "Fill holes", "default": "0", "pos": "9" },
      { "type": "color", "name": "Background color", "default": "0,0,0", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2024/03/07." }
      ]
    },
    {
      "name": "Stylize", "lang": "en", "command": "fx_stylize", "command_preview": "fx_stylize_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Transfers the style of a reference image to the target image. " },
      { "type": "separator" },
      { "type": "choice", "name": "Style", "default": "0", "pos": "1", "choices": { "0": "Custom Style (Top Layer)", "1": "Custom Style (Bottom Layer)", "2": "Braque: Landscape near Antwerp", "3": "Braque: Le Viaduc &agrave; l'Estaque", "4": "Braque: Little Bay at La Ciotat", "5": "Braque: The Mandola", "6": "Christine Garner: Black Colour Pencil", "7": "Christine Garner: Colour Pencil Sepia", "8": "Christine Garner: Dark Coloured Pencil", "9": "Christine Garner: Pencil", "10": "Christine Garner: Sketching Pastel", "11": "Christine Garner: Willow Charcoal", "12": "Delaunay: Windows Open Simultaneously", "13": "Delaunay: Portrait de Metzinger", "14": "Hokusai: The Great Wave", "15": "Kandinsky: Squares with Concentric Circles", "16": "Kandinsky: Yellow-Red-Blue", "17": "Klee: Death and Fire", "18": "Klee: In the Style of Kairouan", "19": "Klee: Oriental Pleasure Garden Anagoria", "20": "Klee: Polyphony 2", "21": "Klee: Red waistcoat", "22": "Klimt: The Kiss", "23": "Mondrian: Composition in Red-Yellow-Blue", "24": "Mondrian: Evening; Red Tree", "25": "Mondrian: Gray Tree", "26": "Monet: San Giorgio Maggiore at Dusk", "27": "Monet: Water-Lily Pond", "28": "Monet: Wheatstacks - End of Summer", "29": "Munch: The Scream", "30": "Picabia: Udnie", "31": "Picasso: Les Demoiselles d'Avignon", "32": "Picasso: Seated Woman", "33": "Picasso: The Reservoir - Horta de Ebro", "34": "Pollock: Convergence", "35": "Pollock: Summertime Number 9A", "36": "Van Gogh: Almond Blossom", "37": "Van Gogh: Irises", "38": "Van Gogh: The Starry Night", "39": "Van Gogh: Wheat Field with Crows" } },
      { "type": "choice", "name": "Scale Style to Fit Target Resolution", "default": "5", "pos": "2", "choices": { "0": "No rescaling", "1": "10%", "2": "20%", "3": "30%", "4": "50%", "5": "75%", "6": "100%", "7": "150%", "8": "200%", "9": "250%", "10": "300%" } },
      { "type": "choice", "name": "Style Variations", "default": "0", "pos": "3", "choices": { "0": "None", "1": "All XY-flips", "2": "All 90&deg; rotations", "3": "All 45&deg; rotations" } },
      { "type": "bool", "name": "Preview Progression While Running", "default": "1", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"blue\">Style/Target Parameters:</span>" },
      { "type": "float", "name": "Fidelity to Target (Finest)", "default": "0.5", "min": "0", "max": "5", "pos": "5" },
      { "type": "float", "name": "Fidelity to Target (Coarsest)", "default": "2", "min": "0", "max": "5", "pos": "6" },
      { "type": "float", "name": "Fidelity Smoothness (Finest)", "default": "3", "min": "0", "max": "5", "pos": "7" },
      { "type": "float", "name": "Fidelity Smoothness (Coarsest)", "default": "0.5", "min": "0", "max": "5", "pos": "8" },
      { "type": "float", "name": "Fidelity Chromaticity", "default": "0.1", "min": "0", "max": "1", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"blue\">Image Matching Parameters:</span>" },
      { "type": "choice", "name": "Match Colors With", "default": "3", "pos": "10", "choices": { "0": "Nothing", "1": "Gamma Balance", "2": "Histogram Transfer", "3": "PCA transfer" } },
      { "type": "choice", "name": "Colorspace", "default": "3", "pos": "11", "choices": { "0": "sRGB", "1": "Linear RGB", "2": "YCbCr", "3": "YCbCr (Luma/Chroma)", "4": "YCbCr (Luma Only)", "5": "YCbCr (Chroma Only)", "6": "Lab", "7": "Lab (Luma/Chroma)", "8": "Lab (Luma Only)", "9": "Lab (Chroma Only)" } },
      { "type": "choice", "name": "Keep Color Channels", "default": "0", "pos": "12", "choices": { "0": "All", "1": "Luminance Only (YCbCr)", "2": "Luminance Only (Lab)", "3": "Chrominances Only (CbCr)", "4": "Chrominances Only (ab)" } },
      { "type": "float", "name": "Smoothness", "default": "0.7", "min": "0", "max": "5", "pos": "13" },
      { "type": "float", "name": "Also Match Gradients", "default": "1", "min": "0", "max": "5", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"blue\">Advanced Parameters:</span>" },
      { "type": "choice", "name": "Init. Type", "default": "0", "pos": "15", "choices": { "0": "Best Match", "1": "Identity", "2": "Randomized" } },
      { "type": "choice", "name": "Init. Resolution", "default": "1", "pos": "16", "choices": { "0": "8px", "1": "16px", "2": "32px", "3": "64px", "4": "128px", "5": "256px" } },
      { "type": "float", "name": "Init. With High Gradients Only", "default": "0", "min": "0", "max": "100", "pos": "17" },
      { "type": "int", "name": "Patch Size for Analysis", "default": "5", "min": "2", "max": "16", "pos": "18" },
      { "type": "int", "name": "Patch Size for Synthesis", "default": "5", "min": "2", "max": "16", "pos": "19" },
      { "type": "int", "name": "Patch Size for Synthesis (Final)", "default": "7", "min": "2", "max": "16", "pos": "20" },
      { "type": "int", "name": "Number of Matches (Finest)", "default": "1", "min": "0", "max": "10", "pos": "21" },
      { "type": "int", "name": "Number of Matches (Coarsest)", "default": "30", "min": "0", "max": "200", "pos": "22" },
      { "type": "int", "name": "Penalize Patch Repetitions", "default": "2", "min": "0", "max": "300", "pos": "23" },
      { "type": "float", "name": "Matching Precision (Smaller is Faster)", "default": "2", "min": "0", "max": "10", "pos": "24" },
      { "type": "float", "name": "Scale Factor", "default": "1.85", "min": "1.1", "max": "4", "pos": "25" },
      { "type": "int", "name": "Skip Finest Scales", "default": "0", "min": "0", "max": "3", "pos": "26" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2021/03/23." }
      ]
    },
    {
      "name": "Tensor Test", "lang": "en", "command": "samj_TensorTest", "command_preview": "samj_TensorTest", "parameters": [
      { "type": "note", "text": "Tensor Test" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">diffusiontensors</span>" },
      { "type": "float", "name": "Sharpness", "default": "0.3", "min": "0", "max": "1", "pos": "1" },
      { "type": "float", "name": "Anisotropy", "default": "0.9", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "Alpha", "default": "0.6", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Sigma", "default": "1.1", "min": "0", "max": "100", "pos": "4" },
      { "type": "bool", "name": "Is_Sqrt", "default": "0", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">ABS</span>" },
      { "type": "bool", "name": "Abs", "default": "0", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">resize2dx</span>" },
      { "type": "int", "name": "SizeX", "default": "20", "min": "8", "max": "64", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">display tensors</span>" },
      { "type": "int", "name": "Size Factor", "default": "32", "min": "16", "max": "128", "pos": "8" },
      { "type": "float", "name": "Ellipse Size", "default": "20", "min": "0", "max": "100", "pos": "9" },
      { "type": "choice", "name": "Color Mode", "default": "2", "pos": "10", "choices": { "0": "Monochrome", "1": "Grayscale", "2": "Color" } },
      { "type": "bool", "name": "Outline", "default": "1", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Couleur</span>" },
      { "type": "float", "name": "Couleur", "default": "0", "min": "0", "max": "2", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Resize</span>" },
      { "type": "choice", "name": "Resize", "default": "2", "pos": "13", "choices": { "0": "Non RVBA", "1": "Oui RVB", "2": "Oui RVBA" } },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/11/01." }
      ]
    },
    {
      "name": "Texture Coloree", "lang": "en", "command": "samj_texture_coloree", "command_preview": "samj_texture_coloree", "parameters": [
      { "type": "note", "text": "samj_texture_coloree" },
      { "type": "note", "text": "<span foreground=\"orangered\">diffusiontensors</span>" },
      { "type": "choice", "name": "Type", "default": "0", "pos": "1", "choices": { "0": "A", "1": "B", "2": "C", "3": "D", "4": "E", "5": "F" } },
      { "type": "float", "name": "Sharpness", "default": "0.7", "min": "0.2", "max": "2", "pos": "2" },
      { "type": "note", "text": "<span foreground=\"orangered\">Color</span>" },
      { "type": "color", "name": "Fond / Background Color", "default": "200,125,50", "pos": "3" },
      { "type": "note", "text": "<span foreground=\"orangered\">Blur Linear</span>" },
      { "type": "float", "name": "Amplitude A", "default": "5", "min": "0", "max": "10", "pos": "6" },
      { "type": "float", "name": "Amplitude B", "default": "5", "min": "0", "max": "100", "pos": "7" },
      { "type": "float", "name": "Angle", "default": "45", "min": "0", "max": "360", "pos": "8" },
      { "type": "note", "text": "<span foreground=\"orangered\">Sharpen</span>" },
      { "type": "int", "name": "Amplitude S", "default": "200", "min": "50", "max": "1000", "pos": "9" },
      { "type": "note", "text": "<span foreground=\"orangered\">Blend</span>" },
      { "type": "int", "name": "Itérations", "default": "4", "min": "1", "max": "8", "pos": "10" },
      { "type": "float", "name": "Opacité / Opacity", "default": "0.2", "min": "0", "max": "0.3", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2015/04/05." }
      ]
    },
    {
      "name": "Variations on a Single Color", "lang": "en", "command": "samj_texture_coloree_en", "command_preview": "samj_texture_coloree_en", "parameters": [
      { "type": "note", "text": "Variations On A Single Color" },
      { "type": "note", "text": "<span foreground=\"orangered\">Diffusion Tensors</span>" },
      { "type": "choice", "name": "Type", "default": "0", "pos": "1", "choices": { "0": "A", "1": "B", "2": "C", "3": "D", "4": "E", "5": "F" } },
      { "type": "float", "name": "Sharpness", "default": "0.7", "min": "0.2", "max": "1", "pos": "2" },
      { "type": "note", "text": "<span foreground=\"orangered\">Color</span>" },
      { "type": "color", "name": "Single Color", "default": "200,125,50", "pos": "3" },
      { "type": "note", "text": "<span foreground=\"orangered\">Blur Linear</span>" },
      { "type": "float", "name": "Amplitude A", "default": "5", "min": "0", "max": "10", "pos": "6" },
      { "type": "float", "name": "Amplitude B", "default": "5", "min": "0", "max": "100", "pos": "7" },
      { "type": "float", "name": "Angle", "default": "45", "min": "0", "max": "360", "pos": "8" },
      { "type": "note", "text": "<span foreground=\"orangered\">Sharpen</span>" },
      { "type": "int", "name": "Amplitude S", "default": "200", "min": "50", "max": "1000", "pos": "9" },
      { "type": "note", "text": "<span foreground=\"orangered\">Blend</span>" },
      { "type": "int", "name": "Iterations", "default": "4", "min": "1", "max": "8", "pos": "10" },
      { "type": "float", "name": "Opacity", "default": "0.2", "min": "0", "max": "0.3", "pos": "11" },
      { "type": "note", "text": "<span foreground=\"orangered\">Richardson Lucy</span>" },
      { "type": "float", "name": "Sigma", "default": "1", "min": "0.5", "max": "10", "pos": "12" },
      { "type": "int", "name": "Iterations", "default": "10", "min": "0", "max": "100", "pos": "13" },
      { "type": "choice", "name": "Blur", "default": "1", "pos": "14", "choices": { "0": "Exponential", "1": "Gaussian" } },
      { "type": "bool", "name": "Cut", "default": "1", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Update : 2015/04/13." }
      ]
    },
    {
      "name": "Vector Painting", "lang": "en", "command": "fx_vector_painting", "command_preview": "fx_vector_painting", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simulates a vector art style with clean areas of color. " },
      { "type": "separator" },
      { "type": "float", "name": "Details", "default": "9", "min": "0", "max": "10", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2015/08/25." }
      ]
    },
    {
      "name": "Warhol", "lang": "en", "command": "warhol", "command_preview": "warhol", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Recreates the pop-art style of Andy Warhol. " },
      { "type": "separator" },
      { "type": "int", "name": "X-Tiles", "default": "3", "min": "1", "max": "10", "pos": "1" },
      { "type": "int", "name": "Y-Tiles", "default": "3", "min": "1", "max": "10", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "2", "min": "0", "max": "10", "pos": "3" },
      { "type": "float", "name": "Color", "default": "40", "min": "0", "max": "60", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Whirling Lines", "lang": "en", "command": "fx_whirling_lines", "command_preview": "fx_whirling_lines_preview", "parameters": [
      { "type": "note", "text": "Creates fingerprint-like lines out of images by blurring and rounding their values. Works best with single-channel images." },
      { "type": "float", "name": "1. Blur", "default": "30", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "2. Round", "default": "6", "min": "0", "max": "255", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Gradient norm" },
      { "type": "choice", "name": "3. Norm Mode", "default": "0", "pos": "3", "choices": { "0": "Gradient norm", "1": "Hessian", "2": "Laplacian", "3": "Rotation-invariant gradient" } },
      { "type": "float", "name": "4. Smoothness", "default": "0", "min": "0", "max": "10", "pos": "4" },
      { "type": "float", "name": "5. Contrast", "default": "0.45", "min": "0", "max": "1.5", "pos": "5" },
      { "type": "float", "name": "6. Min Threshold", "default": "40", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "7. Max Threshold", "default": "60", "min": "0", "max": "100", "pos": "7" },
      { "type": "int", "name": "8. Dilate or Erode", "default": "0", "min": "-5", "max": "20", "pos": "8" },
      { "type": "bool", "name": "9. Negative", "default": "0", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Antialias" },
      { "type": "float", "name": "10. Amplitude", "default": "30", "min": "0", "max": "100", "pos": "10" },
      { "type": "float", "name": "11. Edge Threshold (%)", "default": "0", "min": "0", "max": "100", "pos": "11" },
      { "type": "float", "name": "12. Smoothness", "default": "3", "min": "0", "max": "10", "pos": "12" },
      { "type": "choice", "name": "13. Value Action", "default": "3", "pos": "13", "choices": { "0": "None", "1": "Cut", "2": "Normalize", "3": "Cut then normalize" } }
      ]
    }
    ]
  },
  {
    "name": "Black & White", "filters": [
    {
      "name": "B&W Stencil", "lang": "en", "command": "fx_stencilbw", "command_preview": "fx_stencilbw", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Converts the image to a black and white stencil. " },
      { "type": "separator" },
      { "type": "float", "name": "Threshold", "default": "10", "min": "0", "max": "30", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "10", "min": "0", "max": "30", "pos": "2" },
      { "type": "float", "name": "Hue", "default": "0", "min": "0", "max": "360", "pos": "3" },
      { "type": "float", "name": "Saturation", "default": "0", "min": "0", "max": "1", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Black & White", "lang": "en", "command": "fx_blackandwhite", "command_preview": "fx_blackandwhite", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Converts color images to grayscale with various mixing options. " },
      { "type": "separator" },
      { "type": "float", "name": "Red Level", "default": "0.299", "min": "0", "max": "1", "pos": "1", "visibility": "0" },
      { "type": "float", "name": "Red Smoothness", "default": "0", "min": "0", "max": "10", "pos": "2", "visibility": "0" },
      { "type": "float", "name": "Green Level", "default": "0.587", "min": "0", "max": "1", "pos": "3", "visibility": "0" },
      { "type": "float", "name": "Green Smoothness", "default": "0", "min": "0", "max": "10", "pos": "4", "visibility": "0" },
      { "type": "float", "name": "Blue Level", "default": "0.114", "min": "0", "max": "1", "pos": "5" },
      { "type": "float", "name": "Blue Smoothness", "default": "0", "min": "0", "max": "10", "pos": "6" },
      { "type": "separator" },
      { "type": "float", "name": "Brightness (%)", "default": "0", "min": "-100", "max": "100", "pos": "7" },
      { "type": "float", "name": "Contrast (%)", "default": "0", "min": "-100", "max": "100", "pos": "8" },
      { "type": "float", "name": "Gamma (%)", "default": "0", "min": "-100", "max": "100", "pos": "9" },
      { "type": "float", "name": "Hue (%)", "default": "0", "min": "-100", "max": "100", "pos": "10" },
      { "type": "float", "name": "Saturation (%)", "default": "0", "min": "-100", "max": "100", "pos": "11" },
      { "type": "separator" },
      { "type": "float", "name": "Grain (Shadows)", "default": "0", "min": "0", "max": "200", "pos": "12" },
      { "type": "float", "name": "Grain (Midtones)", "default": "0", "min": "0", "max": "200", "pos": "13" },
      { "type": "float", "name": "Grain (Highlights)", "default": "0", "min": "0", "max": "200", "pos": "14" },
      { "type": "float", "name": "Grain Tone Fading", "default": "2", "min": "0", "max": "10", "pos": "15" },
      { "type": "float", "name": "Grain Scale", "default": "0", "min": "0", "max": "3", "pos": "16" },
      { "type": "choice", "name": "Grain Type", "default": "0", "pos": "17", "choices": { "0": "Gaussian", "1": "Uniform", "2": "Salt and Pepper", "3": "Poisson" } },
      { "type": "separator" },
      { "type": "float", "name": "Local Contrast", "default": "0", "min": "0", "max": "60", "pos": "18" },
      { "type": "int", "name": "Radius", "default": "16", "min": "1", "max": "512", "pos": "19" },
      { "type": "float", "name": "Contrast Smoothness", "default": "4", "min": "0", "max": "10", "pos": "20" },
      { "type": "separator" },
      { "type": "int", "name": "Pseudo-Gray Dithering", "default": "0", "min": "0", "max": "5", "pos": "21" },
      { "type": "bool", "name": "Use Maximum Tones", "default": "0", "pos": "22" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/02/20." }
      ]
    },
    {
      "name": "Charcoal", "lang": "en", "command": "fx_charcoal", "command_preview": "fx_charcoal", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simulates a charcoal drawing. " },
      { "type": "separator" },
      { "type": "int", "name": "Granularity", "default": "65", "min": "0", "max": "800", "pos": "1" },
      { "type": "int", "name": "Lowlights Crossover Point", "default": "70", "min": "0", "max": "255", "pos": "2" },
      { "type": "int", "name": "Highlights Crossover Point", "default": "170", "min": "0", "max": "255", "pos": "3" },
      { "type": "bool", "name": "Boost Contrast", "default": "0", "pos": "4" },
      { "type": "bool", "name": "Resize Image for Optimum Effect", "default": "1", "pos": "5" },
      { "type": "bool", "name": "Add Chalk Highlights", "default": "0", "pos": "6" },
      { "type": "int", "name": "Minimal Highlights", "default": "50", "min": "0", "max": "255", "pos": "7" },
      { "type": "int", "name": "Maximal Highlights", "default": "70", "min": "0", "max": "255", "pos": "8" },
      { "type": "color", "name": "Background Color", "default": "255,255,255", "pos": "9" },
      { "type": "color", "name": "Foreground Color", "default": "0,0,0", "pos": "12" },
      { "type": "bool", "name": "Invert Background / Foreground", "default": "0", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2011/03/17." },
      { "type": "note", "text": "Inspired from the Charcoal script by micomicon." }
      ]
    },
    {
      "name": "Colored Engraving", "lang": "en", "command": "Engrave_colore", "command_preview": "Engrave_colore", "parameters": [
      { "type": "note", "text": "Modification du Filtre de Lyle Kroll et David Tschumperlé" },
      { "type": "note", "text": "pour obtenir des gravures colorées - samj 20150321" },
      { "type": "separator" },
      { "type": "choice", "name": "Exemples / Examples", "default": "0", "pos": "1", "choices": { "0": "Non / None", "1": "A", "2": "B", "3": "C", "4": "D ***", "5": "E", "6": "F", "7": "G" } },
      { "type": "note", "text": "Gravure / Engraving" },
      { "type": "float", "name": "Radius", "default": "0.5", "min": "0", "max": "2", "pos": "2" },
      { "type": "float", "name": "Densité A", "default": "4", "min": "0", "max": "10", "pos": "3" },
      { "type": "float", "name": "Edges", "default": "0", "min": "0", "max": "10", "pos": "4" },
      { "type": "float", "name": "Cohérence", "default": "8", "min": "0", "max": "40", "pos": "5" },
      { "type": "float", "name": "Threshold (%)", "default": "40", "min": "0", "max": "100", "pos": "6" },
      { "type": "int", "name": "Minimal area", "default": "0", "min": "-256", "max": "256", "pos": "7" },
      { "type": "int", "name": "Répétition", "default": "25", "min": "0", "max": "50", "pos": "8" },
      { "type": "note", "text": "Anti-aliasing" },
      { "type": "choice", "name": "Anti-aliasing", "default": "1", "pos": "9", "choices": { "0": "Disabled", "1": "A", "2": "B", "3": "C" } },
      { "type": "note", "text": "Couleurs / Colors" },
      { "type": "choice", "name": "Gravure / Engraving", "default": "2", "pos": "10", "choices": { "0": "Avant Plan", "1": "Image Avec Contours Des Couleurs 8", "2": "Image Avec Contours Des Couleurs 16", "3": "Image Avec Contours Des Couleurs 32", "4": "Image Avec Contours Des Couleurs 64", "5": "Image Sans Contours Des Couleurs 8", "6": "Image Sans Contours Des Couleurs 16", "7": "Image Sans Contours Des Couleurs 32", "8": "Image Sans Contours Des Couleurs 64", "9": "3 calques - Image Sans Contours Des Couleurs 8", "10": "3 calques - Image Sans Contours Des Couleurs 16", "11": "3 calques - Image Sans Contours Des Couleurs 32", "12": "3 calques - Image Sans Contours Des Couleurs 64" } },
      { "type": "color", "name": "Avant Plan", "default": "0,0,0", "pos": "11" },
      { "type": "color", "name": "Fond / Background Color", "default": "255,255,255", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "Authors: Lyle Kroll and David Tschumperlé .      Latest update: 2020/10/24." }
      ]
    },
    {
      "name": "Colorize [Interactive]", "lang": "en", "command": "fx_colorize_interactive", "command_preview": "fx_colorize_interactive_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds color to B&W images using user-placed color control points. " },
      { "type": "separator" },
      { "type": "choice", "name": "Input Type", "default": "0", "pos": "1", "choices": { "0": "B&W Photograph", "1": "Lineart" } },
      { "type": "choice", "name": "Output Type", "default": "0", "pos": "2", "choices": { "0": "Colorized Image (1 Layer)", "1": "Colors Only (1 Layer)", "2": "Image + Colors (2 Layers)", "3": "Image + Colors (Multi-Layers)" } },
      { "type": "choice", "name": "View Resolution", "default": "1", "pos": "3", "choices": { "0": "Small (Faster)", "1": "Medium", "2": "High (Slower)", "3": "Very High (Even Slower)" } },
      { "type": "file", "name": "1st Additional Palette (.gpl)", "default": "", "pos": "4" },
      { "type": "file", "name": "2nd Additional Palette (.gpl)", "default": "", "pos": "5" },
      { "type": "file", "name": "Image to Grab Color from (.png)", "default": "", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Description:\n This filter allows to quickly colorize a B&W image or lineart. Click on the Apply or OK buttons below to open the G'MIC interactive window and start adding color control points. When you're done, exit the interactive window: your colored result will be transferred back to the host software.\n\n If you are not satisfied with the result, Undo it (CTRL+Z), and click on Apply once again to modify your control points defined previously. To clear all control points, click on the Reset button above. " },
      { "type": "button", "name": "Clear Control Points", "alignment": "0.5", "pos": "7" },
      { "type": "value", "value": "0,0", "pos": "8" },
      { "type": "value", "value": "-1", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Interactions:\n Use the following actions in the interactive window to manage your colorization :\n\n - Left mouse button creates a new color control point (or move an existing one).\n - Right mouse button or key X over a control point deletes it.\n - Right mouse button or key P anywhere else picks a color from the image.\n - Mouse wheel, or keys CTRL+arrows up/down zoom view in/out.\n - CTRL+mouse wheel, SHIFT+wheel or arrow keys move image in zoomed view.\n - Key SPACE updates the extrapolated color field.\n - Key TAB toggles markers view modes.\n - Key BACKSPACE deletes the last control point added.\n - Key PAGE UP increases image contrast.\n - Key PAGE DOWN decreases image contrast.\n - Key R enters/exits color replace mode.\n - Keys CTRL+D increase window size.\n - Keys CTRL+C decrease window size.\n - Keys CTRL+R resets window size.\n - Keys ESC, Q or RETURN exit the interactive window. " },
      { "type": "separator" },
      { "type": "note", "text": "You can find more information on how to use this filter here :" },
      { "type": "link", "name": "David Revoy's G'MIC Colorization Page", "url": "http://www.davidrevoy.com/article240/gmic-line-art-colorization", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/07/12." }
      ]
    },
    {
      "name": "Colorize [Photographs]", "lang": "en", "command": "fx_recolorize", "command_preview": "fx_recolorize_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Colorizes B&W photos. " },
      { "type": "separator" },
      { "type": "int", "name": "Smoothness", "default": "2", "min": "0", "max": "6", "pos": "1" },
      { "type": "float", "name": "Anisotropy", "default": "0.2", "min": "0", "max": "1", "pos": "2" },
      { "type": "choice", "name": "Output Mode", "default": "0", "pos": "3", "choices": { "0": "Merge Brightness / Colors", "1": "Split Brightness / Colors" } },
      { "type": "separator" },
      { "type": "note", "text": "Note: This filter needs two layers to work properly. The bottom layer must be a B&W image, while the top layer contains color patches that will be extrapolated in a smart way (edge-directed) to fill the entire image. At the end, you get a completely recolored image." },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/01/16." }
      ]
    },
    {
      "name": "Colorize [with Colormap]", "lang": "en", "command": "fx_bwrecolorize", "command_preview": "fx_bwrecolorize", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Remaps the grayscale values of the image to a specific color map. " },
      { "type": "separator" },
      { "type": "float", "name": "Brightness (%)", "default": "0", "min": "-100", "max": "100", "pos": "1" },
      { "type": "float", "name": "Contrast (%)", "default": "0", "min": "-100", "max": "100", "pos": "2" },
      { "type": "float", "name": "Gamma (%)", "default": "0", "min": "-100", "max": "100", "pos": "3" },
      { "type": "bool", "name": "Normalize Input", "default": "0", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "Gradient Preset", "default": "0", "pos": "5", "choices": { "0": "User-Defined", "1": "Black to White", "2": "White to Black", "3": "Sepia", "4": "Solarize" } },
      { "type": "choice", "name": "Interpolation Type", "default": "1", "pos": "6", "choices": { "0": "Nearest", "1": "Linear", "2": "Cubic", "3": "Lanczos" } },
      { "type": "bool", "name": "Preserve Initial Brightness", "default": "0", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "<u>User-defined gradient :</u>" },
      { "type": "int", "name": "Number of Tones", "default": "5", "min": "2", "max": "8", "pos": "8" },
      { "type": "color", "name": "1st Tone", "default": "0,0,0,255", "pos": "9" },
      { "type": "color", "name": "2nd Tone", "default": "43,25,55,255", "pos": "13" },
      { "type": "color", "name": "3rd Tone", "default": "158,137,189,255", "pos": "17" },
      { "type": "color", "name": "4th Tone", "default": "224,191,228,255", "pos": "21" },
      { "type": "color", "name": "5th Tone", "default": "255,255,255,255", "pos": "25" },
      { "type": "color", "name": "6th Tone", "default": "255,255,255,255", "pos": "29" },
      { "type": "color", "name": "7th Tone", "default": "255,255,255,255", "pos": "33" },
      { "type": "color", "name": "8th Tone", "default": "255,255,255,255", "pos": "37" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Colorize Lineart [Auto-Fill]", "lang": "en", "command": "fx_autofill_lineart", "command_preview": "fx_autofill_lineart_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Automatically fills distinct regions in line art with random flat colors. " },
      { "type": "separator" },
      { "type": "float", "name": "Contour Threshold (%)", "default": "90", "min": "0", "max": "100", "pos": "1" },
      { "type": "bool", "name": "Contour Normalization", "default": "1", "pos": "2" },
      { "type": "int", "name": "Minimal Region Area", "default": "8", "min": "0", "max": "256", "pos": "3" },
      { "type": "int", "name": "Tolerance to Gaps", "default": "0", "min": "0", "max": "10", "pos": "4" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "5", "choices": { "0": "Lineart + Colors", "1": "Colors Only" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/11/12." }
      ]
    },
    {
      "name": "Colorize Lineart [Propagation]", "lang": "en", "command": "fx_colorize_lineart", "command_preview": "fx_colorize_lineart_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Colorizes line art by propagating color from user-defined spots. " },
      { "type": "separator" },
      { "type": "note", "text": "Layers ordering:" },
      { "type": "choice", "name": "Input Layers", "default": "0", "pos": "1", "choices": { "0": "Color Spots + Lineart", "1": "Lineart + Color Spots", "2": "Color Spots + Extrapolated Colors + Lineart", "3": "Lineart + Color Spots + Extrapolated Colors" } },
      { "type": "choice", "name": "Output Layers", "default": "1", "pos": "2", "choices": { "0": "Single (Merged)", "1": "Extrapolated Colors + Lineart", "2": "Lineart + Extrapolated Colors", "3": "Color Spots + Extrapolated Colors + Lineart", "4": "Lineart + Color Spots + Extrapolated Colors" } },
      { "type": "choice", "name": "Extrapolate Colors As", "default": "0", "pos": "3", "choices": { "0": "One Layer", "1": "Two Layers", "2": "Three Layers", "3": "Four Layers", "4": "Five Layers", "5": "Six Layers", "6": "Seven Layers", "7": "Eight Layers", "8": "Nine Layers", "9": "Ten Layers", "10": "One Layer per Single Color", "11": "One Layer per Single Region" } },
      { "type": "separator" },
      { "type": "float", "name": "Smoothness", "default": "0.05", "min": "0", "max": "1", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Note: You probably need to select All for the Input layers option on the left.\n Color Spots = your layer with color indications.\n Lineart = your layer with line-art (B&W or transparent).\n Extrapolated Colors = the G'MIC generated layer with flat colors.\n\n Warnings: \n  - Do not rely too much on the preview, it is probably not accurate ! \n  - Activate option Extrapolate color as one layer per single color/region only if you have a lot of available memory ! " },
      { "type": "separator" },
      { "type": "link", "name": "Click here for a detailed description of this filter.", "url": "http://www.gimpchat.com/viewtopic.php?f=28&t=7567", "align": "center" },
      { "type": "separator", "visibility": "1" },
      { "type": "note", "text": "Authors: David Tschumperlé, Timothée Giet and David Revoy.       Latest Update: 2013/06/19.", "visibility": "1" }
      ]
    },
    {
      "name": "Colorize Lineart [Smart Coloring]", "lang": "en", "command": "fx_colorize_lineart_smart", "command_preview": "fx_colorize_lineart_smart_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> An advanced assisted coloring tool for line art. " },
      { "type": "separator" },
      { "type": "choice", "name": "Colorize Mode", "default": "0", "pos": "1", "choices": { "0": "Generate Random-Colors Layer", "1": "Extrapolate Color Spots on Transparent Top Layer", "2": "Auto-Clean Bottom Color Layer" } },
      { "type": "separator" },
      { "type": "note", "text": "Global geometry parameters:" },
      { "type": "float", "name": "Contour Detection (%)", "default": "95", "min": "0", "max": "100", "pos": "2" },
      { "type": "bool", "name": "Discard Contour Guides", "default": "0", "pos": "3" },
      { "type": "note", "text": "Add strokes with a saturated color having value 255 (e.g. pure red) on your lineart allows to guide the colorization algorithm with virtual contours." },
      { "type": "bool", "name": "Output Region Delimiters", "default": "0", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "For Random colors mode only:" },
      { "type": "float", "name": "Make Hue Depends on Region Size", "default": "1", "min": "0", "max": "1", "pos": "5" },
      { "type": "int", "name": "Maximal Color Saturation", "default": "24", "min": "0", "max": "255", "pos": "6" },
      { "type": "int", "name": "Minimal Color Intensity", "default": "200", "min": "0", "max": "255", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "For color spots mode only:" },
      { "type": "int", "name": "Color Shading (%)", "default": "0", "min": "0", "max": "100", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Connection parameters:" },
      { "type": "float", "name": "End Point Rate (%)", "default": "75", "min": "0", "max": "100", "pos": "9" },
      { "type": "int", "name": "End Point Connectivity", "default": "2", "min": "1", "max": "5", "pos": "10" },
      { "type": "float", "name": "Spline Max Length (px)", "default": "60", "min": "0", "max": "256", "pos": "11" },
      { "type": "float", "name": "Segment Max Length (px)", "default": "20", "min": "0", "max": "256", "pos": "12" },
      { "type": "float", "name": "Spline Max Angle (deg)", "default": "90", "min": "0", "max": "180", "pos": "13" },
      { "type": "float", "name": "Spline Roundness", "default": "1", "min": "0", "max": "2", "pos": "14" },
      { "type": "float", "name": "Minimal Region Area", "default": "10", "min": "0", "max": "100", "pos": "15" },
      { "type": "bool", "name": "Allow Self Intersections", "default": "1", "pos": "16" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "17", "choices": { "0": "Colored geometry", "1": "Colored regions", "2": "Colored lineart" } },
      { "type": "separator" },
      { "type": "note", "text": "Authors: David Tschumperlé, Sébastien Fourey and David Revoy.      Latest Update: 2018/11/09." }
      ]
    },
    {
      "name": "Desaturate Norm", "lang": "en", "command": "fx_gcd_norm_eq", "command_preview": "fx_gcd_norm_eq_preview", "parameters": [
      { "type": "note", "text": "Desaturate sRGB using equalized norm" },
      { "type": "separator" },
      { "type": "float", "name": "Red", "default": "0.5", "min": "0", "max": "1", "pos": "1" },
      { "type": "float", "name": "Blue", "default": "0.5", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "Exp", "default": "2", "min": "1", "max": "3", "pos": "3" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "4", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2016/12/27." }
      ]
    },
    {
      "name": "Dithering", "lang": "en", "command": "fx_ditheredbw", "command_preview": "fx_ditheredbw", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Converts to 1-bit B&W using dithering algorithm. " },
      { "type": "separator" },
      { "type": "float", "name": "Brightness (%)", "default": "0", "min": "-100", "max": "100", "pos": "1" },
      { "type": "float", "name": "Contrast (%)", "default": "0", "min": "-100", "max": "100", "pos": "2" },
      { "type": "float", "name": "Gamma (%)", "default": "0", "min": "-100", "max": "100", "pos": "3" },
      { "type": "float", "name": "Hue", "default": "0", "min": "0", "max": "360", "pos": "4" },
      { "type": "float", "name": "Saturation (%)", "default": "0", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Engrave", "lang": "en", "command": "fx_engrave", "command_preview": "fx_engrave_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simulates an engraving style. " },
      { "type": "separator" },
      { "type": "note", "text": "Black & White foreground:" },
      { "type": "float", "name": "Radius", "default": "0.5", "min": "0", "max": "2", "pos": "1" },
      { "type": "float", "name": "Density", "default": "50", "min": "0", "max": "200", "pos": "2" },
      { "type": "float", "name": "Edges", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "float", "name": "Coherence", "default": "8", "min": "0", "max": "40", "pos": "4" },
      { "type": "float", "name": "Threshold (%)", "default": "40", "min": "0", "max": "100", "pos": "5" },
      { "type": "int", "name": "Minimal Area", "default": "0", "min": "-256", "max": "256", "pos": "6" },
      { "type": "float", "name": "Flat Regions Removal", "default": "0", "min": "0", "max": "10", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Color background:" },
      { "type": "bool", "name": "Add Color Background", "default": "0", "pos": "8" },
      { "type": "float", "name": "Quantization", "default": "10", "min": "0", "max": "40", "pos": "9" },
      { "type": "int", "name": "Shading", "default": "1", "min": "0", "max": "5", "pos": "10" },
      { "type": "float", "name": "Hue", "default": "0", "min": "-180", "max": "180", "pos": "11" },
      { "type": "float", "name": "Saturation (%)", "default": "0", "min": "-100", "max": "100", "pos": "12" },
      { "type": "float", "name": "Lightness (%)", "default": "0", "min": "-100", "max": "100", "pos": "13" },
      { "type": "separator" },
      { "type": "choice", "name": "Anti-Aliasing", "default": "1", "pos": "14", "choices": { "0": "Disabled", "1": "x1.5", "2": "x2", "3": "x3" } },
      { "type": "separator" },
      { "type": "note", "text": "Authors: Lyle Kroll and David Tschumperlé.       Latest Update: 2015/03/13." }
      ]
    },
    {
      "name": "Engrave Modifie", "lang": "en", "command": "engrave_modifie", "command_preview": "engrave_modifie", "parameters": [
      { "type": "note", "text": "Aussi pour obtenir des contours" },
      { "type": "choice", "name": "Exemples / Examples", "default": "0", "pos": "1", "choices": { "0": "Non / None", "1": "A", "2": "B", "3": "C", "4": "D ***", "5": "E", "6": "F", "7": "G" } },
      { "type": "note", "text": "Black & White foreground:" },
      { "type": "float", "name": "Radius", "default": "0.5", "min": "0", "max": "2", "pos": "2" },
      { "type": "float", "name": "Densité A", "default": "4", "min": "0", "max": "10", "pos": "3" },
      { "type": "float", "name": "Edges", "default": "0", "min": "0", "max": "10", "pos": "4" },
      { "type": "float", "name": "Cohérence", "default": "8", "min": "0", "max": "40", "pos": "5" },
      { "type": "float", "name": "Threshold (%)", "default": "40", "min": "0", "max": "100", "pos": "6" },
      { "type": "int", "name": "Minimal area", "default": "0", "min": "-256", "max": "256", "pos": "7" },
      { "type": "int", "name": "Répétition", "default": "25", "min": "0", "max": "50", "pos": "8" },
      { "type": "separator" },
      { "type": "choice", "name": "Anti-aliasing", "default": "1", "pos": "9", "choices": { "0": "Disabled", "1": "x1.5", "2": "x2", "3": "x3" } },
      { "type": "separator" },
      { "type": "note", "text": "Authors: Lyle Kroll and David Tschumperlé.      Latest update: samj 2015/03/20." }
      ]
    },
    {
      "name": "Filaments", "lang": "en", "command": "fx_filaments", "command_preview": "fx_filaments", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Converts the image into a network of fine filaments. " },
      { "type": "separator" },
      { "type": "float", "name": "Density (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Length (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Contour (%)", "default": "75", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Distortion (%)", "default": "30", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Smoothness", "default": "10", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "Rotation (deg.)", "default": "0", "min": "-180", "max": "180", "pos": "6" },
      { "type": "bool", "name": "Local normalization", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "bool", "name": "Throw From Left", "default": "1", "pos": "8" },
      { "type": "bool", "name": "Throw From Right", "default": "1", "pos": "9" },
      { "type": "bool", "name": "Throw From Above", "default": "1", "pos": "10" },
      { "type": "bool", "name": "Throw From Below", "default": "1", "pos": "11" },
      { "type": "separator" },
      { "type": "float", "name": "Opacity (%)", "default": "50", "min": "0", "max": "100", "pos": "12" },
      { "type": "choice", "name": "Color model", "default": "0", "pos": "13", "choices": { "0": "White on Black", "1": "Black on White", "2": "White on Transparent", "3": "Black on Transparent" }, "visibility": "0" },
      { "type": "separator", "visibility": "0" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2023/12/18." }
      ]
    },
    {
      "name": "Freaky B&W", "lang": "en", "command": "fx_freaky_bw", "command_preview": "fx_freaky_bw", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Creates a high-contrast, dramatic black and white effect. " },
      { "type": "separator" },
      { "type": "float", "name": "Strength (%)", "default": "90", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Oddness (%)", "default": "20", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Brightness (%)", "default": "0", "min": "-100", "max": "100", "pos": "3" },
      { "type": "float", "name": "Contrast (%)", "default": "0", "min": "-100", "max": "100", "pos": "4" },
      { "type": "float", "name": "Gamma (%)", "default": "0", "min": "-100", "max": "100", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2015/09/30." }
      ]
    },
    {
      "name": "Grid BW Color", "lang": "en", "command": "samj_Grid_BW_Color", "command_preview": "samj_Grid_BW_Color", "parameters": [
      { "type": "link", "name": "https://samjcreations.blogspot.com/2020/12/samuser-avec-gmic-gimp-filtre-grid-bw.html", "url": "https://samjcreations.blogspot.com/2020/12/samuser-avec-gmic-gimp-filtre-grid-bw.html", "align": "center" },
      { "type": "float", "name": "1 Flou/Blur", "default": "3", "min": "0", "max": "10", "pos": "1" },
      { "type": "int", "name": "2 - Adoucir/Smooth", "default": "0", "min": "0", "max": "5000", "pos": "2" },
      { "type": "note", "text": "<span foreground=\"orangered\">Grille/Grid</span>" },
      { "type": "choice", "name": "3 - Grille/Grid", "default": "1", "pos": "3", "choices": { "0": "Non/No", "1": "Rectangle", "2": "Triangle", "3": "Hexagone Paramètre 4", "4": "Rectangle Sans Contour", "5": "Triangle Sans Contour", "6": "Hexagone Sans Contour Paramètre 4" } },
      { "type": "int", "name": "4 - X Grille/Grid", "default": "4", "min": "2", "max": "64", "pos": "4" },
      { "type": "int", "name": "5 - Y Grille/Grid", "default": "4", "min": "2", "max": "64", "pos": "5" },
      { "type": "note", "text": "<span foreground=\"orangered\">Fond Noir/Black Background</span>" },
      { "type": "int", "name": "6 - Noir/Black", "default": "32", "min": "16", "max": "160", "pos": "6" },
      { "type": "bool", "name": "7 - Negate", "default": "1", "pos": "7" },
      { "type": "int", "name": "8 - Index", "default": "2", "min": "2", "max": "8", "pos": "8" },
      { "type": "note", "text": "<span foreground=\"orangered\">Couleur/Color</span>" },
      { "type": "bool", "name": "9 - Color", "default": "0", "pos": "9" },
      { "type": "int", "name": "10 - Index", "default": "32", "min": "2", "max": "32", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/12/19." }
      ]
    },
    {
      "name": "Hard Sketch XY", "lang": "en", "command": "XY_hardsketchbw_samj", "command_preview": "XY_hardsketchbw_samj", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Paramètres Filtre Hard Sketch BW" },
      { "type": "float", "name": "XY", "default": "0.2", "min": "0", "max": "1", "pos": "1" },
      { "type": "float", "name": "Densité / Amplitude", "default": "300", "min": "0", "max": "4000", "pos": "2" },
      { "type": "float", "name": "Density / Density", "default": "50", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Douceur / Smoothness", "default": "1", "min": "0", "max": "10", "pos": "4" },
      { "type": "float", "name": "Opacité / Opacity", "default": "0.1", "min": "0", "max": "1", "pos": "5" },
      { "type": "float", "name": "Bordure / Edge", "default": "20", "min": "0", "max": "100", "pos": "6" },
      { "type": "bool", "name": "Approximation Rapide / Fast approximation", "default": "0", "pos": "7" },
      { "type": "choice", "name": "Color model", "default": "0", "pos": "8", "choices": { "0": "Black on white", "1": "White on black", "2": "Black on transparent white", "3": "White on transparent black", "4": "Color on white" } },
      { "type": "separator" },
      { "type": "note", "text": "Calques / Layers" },
      { "type": "choice", "name": "Nb.", "default": "0", "pos": "9", "choices": { "0": "1 : XY", "1": "2 : XY + Hard Sketch BW Normal" } },
      { "type": "separator" },
      { "type": "note", "text": "Netteté / Sharpen" },
      { "type": "bool", "name": "Filtre Octave Sharpening", "default": "0", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "XY_hardsketch Color" },
      { "type": "color", "name": "Couleur / Color", "default": "180,40,160,255", "pos": "11" },
      { "type": "bool", "name": "Remplir / Fill", "default": "0", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "samj      Dernière mise à jour : 2015/03/10." }
      ]
    },
    {
      "name": "Ink Wash", "lang": "en", "command": "fx_ink_wash", "command_preview": "fx_ink_wash", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simulates an ink wash painting style. " },
      { "type": "separator" },
      { "type": "note", "text": "Ink wash controls" },
      { "type": "float", "name": "Size", "default": "0.14", "min": "0", "max": "4", "pos": "1" },
      { "type": "float", "name": "Amplitude", "default": "23", "min": "0", "max": "200", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Check if you wish visual control on this step" },
      { "type": "bool", "name": "Skip All Other Steps", "default": "0", "pos": "3" },
      { "type": "note", "text": "UNcheck to reactivate the other controls" },
      { "type": "separator" },
      { "type": "float", "name": "Smoother Sharpness", "default": "0.5", "min": "0", "max": "2", "pos": "4" },
      { "type": "float", "name": "Smoother Edge Protection", "default": "0.54", "min": "0", "max": "1", "pos": "5" },
      { "type": "float", "name": "Smoother Softness", "default": "2.25", "min": "0", "max": "10", "pos": "6" },
      { "type": "separator" },
      { "type": "choice", "name": "Stretch Contrast", "default": "0", "pos": "7", "choices": { "0": "None", "1": "Automatic", "2": "Automatic & Contrast Mask", "3": "Manual Controls" } },
      { "type": "note", "text": "To activate the sliders below chose 'Manual Controls'" },
      { "type": "separator" },
      { "type": "float", "name": "LN Amplitude", "default": "2", "min": "0", "max": "60", "pos": "8" },
      { "type": "float", "name": "LN Size", "default": "6", "min": "0", "max": "64", "pos": "9" },
      { "type": "float", "name": "LN Neightborhood-Smoothness", "default": "5", "min": "0", "max": "40", "pos": "10" },
      { "type": "float", "name": "LN Average-Smoothness", "default": "20", "min": "0", "max": "40", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Author: PhotoComiX.       Latest Update: 2011/04/05." },
      { "type": "link", "name": "Forum thread about the filter discussion", "url": "http://gimpchat.com/viewtopic.php?f=10&t=914", "align": "left" }
      ]
    },
    {
      "name": "Lineart", "lang": "en", "command": "cl_lineart", "command_preview": "cl_lineart_preview", "parameters": [
      { "type": "note", "text": "Photo to Line Art" },
      { "type": "separator" },
      { "type": "note", "text": " " },
      { "type": "int", "name": "Local Contrast Enhancement", "default": "0", "min": "0", "max": "4", "pos": "1" },
      { "type": "bool", "name": "Simplification", "default": "0", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "For edges:" },
      { "type": "int", "name": "Flattening for Edge (bilateral)", "default": "2", "min": "0", "max": "5", "pos": "3" },
      { "type": "float", "name": "Line Thickness", "default": "1", "min": "0.5", "max": "2", "pos": "4" },
      { "type": "float", "name": "Line Strength", "default": "15", "min": "0", "max": "19", "pos": "5" },
      { "type": "int", "name": "Lines Antialias", "default": "15", "min": "0", "max": "100", "pos": "6" },
      { "type": "separator" },
      { "type": "bool", "name": "Add Black or Gray", "default": "1", "pos": "7" },
      { "type": "note", "text": "For black and grays:" },
      { "type": "int", "name": "Luminosity Increase", "default": "0", "min": "0", "max": "40", "pos": "8" },
      { "type": "int", "name": "Final Flattening (bilateral)", "default": "6", "min": "0", "max": "10", "pos": "9" },
      { "type": "choice", "name": "Type", "default": "2", "pos": "10", "choices": { "0": "Soft Threshold", "1": "Gray Patches", "2": "Lines and Black", "3": "Black and Lines" } },
      { "type": "separator" },
      { "type": "choice", "name": "Final Antialias", "default": "2", "pos": "11", "choices": { "0": "None", "1": "Light Simple", "2": "Simple", "3": "Very Strong" } },
      { "type": "choice", "name": "Pen Drawing", "default": "0", "pos": "12", "choices": { "0": "None", "1": "Simple", "2": "Undoing Patterns" } },
      { "type": "separator" },
      { "type": "choice", "name": "Effect", "default": "0", "pos": "13", "choices": { "0": "None", "1": "Charcoal", "2": "Groove" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "14", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "15", "visibility": "0" },
      { "type": "separator" },
      { "type": "link", "name": "Filter discussed here", "url": "http://gimpchat.com/viewtopic.php?f=15&t=5328&start=20#p272779", "align": "center" },
      { "type": "note", "text": "Author: Claude Lion.      Latest Update: 2022/05/10." },
      { "type": "note", "text": "It uses filters of David Tschumperlé and a few filters of Jérôme Boulanger." },
      { "type": "note", "text": "Type='Lines and Black' is a shortcut of 'Black and Lines' with 'Local Contrast Enhancement = 1' and 'Luminosity Increase = 40'. In this case, 'Local Contrast Enhancement' and 'Luminosity Increase' cursors have no effect." }
      ]
    },
    {
      "name": "Masques B&W Masks", "lang": "en", "command": "samj_Masques_Noir_Et_Blanc", "command_preview": "samj_Masques_Noir_Et_Blanc_Preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Création de 2 masques : Noir/Transparent et Blanc/Transparent" },
      { "type": "note", "text": "Create 2 masks : Black/Transparent and White/Transparent" },
      { "type": "float", "name": "1 - Flou/Blur", "default": "3", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "2 - Masque/Mask %", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2022/03/06." }
      ]
    },
    {
      "name": "Multi-Layer Etch", "lang": "en", "command": "fx_gcd_layeretch", "command_preview": "fx_gcd_layeretch", "parameters": [
      { "type": "note", "text": "<u>Etch with selectable number of layers</u>" },
      { "type": "note", "text": "Warning: With high number of layers this can be VERY slow!" },
      { "type": "separator" },
      { "type": "int", "name": "Total Layers", "default": "11", "min": "2", "max": "16", "pos": "1" },
      { "type": "int", "name": "White Layers", "default": "4", "min": "1", "max": "15", "pos": "2" },
      { "type": "int", "name": "Etch Tones", "default": "12", "min": "2", "max": "32", "pos": "3" },
      { "type": "float", "name": "Tone Blur", "default": "0.12", "min": "0", "max": "1", "pos": "4" },
      { "type": "int", "name": "Noise Level", "default": "100", "min": "5", "max": "200", "pos": "5" },
      { "type": "float", "name": "Dark Length", "default": "8.5", "min": "0", "max": "20", "pos": "6" },
      { "type": "float", "name": "Bright Length", "default": "5", "min": "0", "max": "20", "pos": "7" },
      { "type": "int", "name": "Start Angle", "default": "0", "min": "0", "max": "180", "pos": "8" },
      { "type": "int", "name": "Random Angle", "default": "0", "min": "0", "max": "45", "pos": "9" },
      { "type": "int", "name": "Max Curve", "default": "3", "min": "0", "max": "20", "pos": "10" },
      { "type": "float", "name": "Gamma", "default": "1", "min": "0.01", "max": "2", "pos": "11" },
      { "type": "bool", "name": "Spread Angles", "default": "1", "pos": "12" },
      { "type": "bool", "name": "Fast Resize", "default": "0", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2012/12/21." }
      ]
    },
    {
      "name": "NB Edges Engrave", "lang": "en", "command": "samj_NB_EdgesO_Engrave", "command_preview": "samj_NB_EdgesO_Engrave", "parameters": [
      { "type": "note", "text": "samj_NB_EdgesO_Engrave" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Edges offsets</span>" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "Threshold", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "int", "name": "Scale", "default": "9", "min": "0", "max": "32", "pos": "3" },
      { "type": "int", "name": "Thickness", "default": "1", "min": "0", "max": "16", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Engrave</span>" },
      { "type": "float", "name": "Radius", "default": "2", "min": "0", "max": "4", "pos": "5" },
      { "type": "float", "name": "Density", "default": "50", "min": "0", "max": "200", "pos": "6" },
      { "type": "float", "name": "Edges", "default": "0", "min": "0", "max": "10", "pos": "7" },
      { "type": "float", "name": "Cohérence", "default": "8", "min": "0", "max": "40", "pos": "8" },
      { "type": "float", "name": "Threshold (%)", "default": "40", "min": "0", "max": "100", "pos": "9" },
      { "type": "int", "name": "Minimal area", "default": "0", "min": "-256", "max": "256", "pos": "10" },
      { "type": "float", "name": "Flat regions removal", "default": "0", "min": "0", "max": "10", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Variation</span>" },
      { "type": "float", "name": "Variation", "default": "1", "min": "0.8", "max": "1.2", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/02/24." }
      ]
    },
    {
      "name": "Pencil", "lang": "en", "command": "fx_pencilbw", "command_preview": "fx_pencilbw", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simulates a standard pencil drawing. " },
      { "type": "separator" },
      { "type": "float", "name": "Size", "default": "0.3", "min": "0", "max": "5", "pos": "1" },
      { "type": "float", "name": "Amplitude", "default": "60", "min": "0", "max": "200", "pos": "2" },
      { "type": "float", "name": "Hue", "default": "0", "min": "0", "max": "360", "pos": "3" },
      { "type": "float", "name": "Saturation", "default": "0", "min": "0", "max": "1", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/03/05." }
      ]
    },
    {
      "name": "Pencil Portrait", "lang": "en", "command": "fx_pencil_portraitbw", "command_preview": "fx_pencil_portraitbw", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Optimized pencil sketch effect for portraits. " },
      { "type": "separator" },
      { "type": "float", "name": "Stroke Length", "default": "30", "min": "0", "max": "500", "pos": "1" },
      { "type": "float", "name": "Stroke Angle", "default": "120", "min": "0", "max": "180", "pos": "2" },
      { "type": "float", "name": "Contour Threshold", "default": "1", "min": "0", "max": "10", "pos": "3" },
      { "type": "float", "name": "Opacity", "default": "0.5", "min": "0", "max": "1", "pos": "4" },
      { "type": "color", "name": "Color", "default": "144,79,21", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Authors: Jamac4k and David Tschumperlé.       Latest Update: 2015/06/29." }
      ]
    },
    {
      "name": "Scintillements", "lang": "en", "command": "samj_scintillements", "command_preview": "samj_scintillements", "parameters": [
      { "type": "note", "text": "samj_scintillements" },
      { "type": "choice", "name": "Exemples", "default": "0", "pos": "1", "choices": { "0": "Non", "1": "A", "2": "B", "3": "C", "4": "D Image Noire", "5": "E Image Noire - Scintillements", "6": "F Image Noire - Stars" } },
      { "type": "note", "text": "<span foreground=\"orangered\">Dog</span>" },
      { "type": "float", "name": "Sigma 1", "default": "5", "min": "0", "max": "10", "pos": "2" },
      { "type": "float", "name": "Sigma 2", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "int", "name": "Itérations", "default": "1", "min": "1", "max": "8", "pos": "4" },
      { "type": "note", "text": "<span foreground=\"orangered\">Noise</span>" },
      { "type": "int", "name": "Variation", "default": "20", "min": "0", "max": "100", "pos": "5" },
      { "type": "choice", "name": "Type", "default": "2", "pos": "6", "choices": { "0": "Gaussian", "1": "Uniform", "2": "Salt and Pepper", "3": "Poisson", "4": "Rice" } },
      { "type": "note", "text": "<span foreground=\"orangered\">Circle</span>" },
      { "type": "int", "name": "Amplitude", "default": "6", "min": "3", "max": "20", "pos": "7" },
      { "type": "note", "text": "<span foreground=\"orangered\">Blur Linear</span>" },
      { "type": "float", "name": "Amplitude A", "default": "20", "min": "0", "max": "100", "pos": "8" },
      { "type": "float", "name": "Amplitude B", "default": "5", "min": "0", "max": "100", "pos": "9" },
      { "type": "float", "name": "Angle", "default": "45", "min": "0", "max": "120", "pos": "10" },
      { "type": "note", "text": "<span foreground=\"orangered\">Local normalization</span>" },
      { "type": "float", "name": "Amplitude", "default": "2", "min": "0", "max": "60", "pos": "11" },
      { "type": "int", "name": "Radius", "default": "6", "min": "1", "max": "64", "pos": "12" },
      { "type": "float", "name": "Neighborhood smoothness", "default": "5", "min": "0", "max": "40", "pos": "13" },
      { "type": "float", "name": "Average smoothness", "default": "20", "min": "0", "max": "40", "pos": "14" },
      { "type": "bool", "name": "Constrain values", "default": "1", "pos": "15" },
      { "type": "choice", "name": "Channel(s)", "default": "7", "pos": "16", "choices": { "0": "All", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "YCbCr [luminance]", "8": "YCbCr [blue-red chrominances]", "9": "YCbCr [blue chrominance]", "10": "YCbCr [red chrominance]", "11": "YCbCr [green chrominance]", "12": "Lab [lightness]", "13": "Lab [ab-chrominances]", "14": "Lab [a-chrominance]", "15": "Lab [b-chrominance]", "16": "Lch [ch-chrominances]", "17": "Lch [c-chrominance]", "18": "Lch [h-chrominance]", "19": "HSV [hue]", "20": "HSV [saturation]", "21": "HSV [value]", "22": "HSI [intensity]", "23": "HSL [lightness]", "24": "CMYK [cyan]", "25": "CMYK [magenta]", "26": "CMYK [yellow]", "27": "CMYK [key]" } },
      { "type": "note", "text": "<span foreground=\"orangered\">Couleurs</span>" },
      { "type": "bool", "name": "Inverser Couleur", "default": "0", "pos": "17" },
      { "type": "float", "name": "Dégradation", "default": "0", "min": "-50", "max": "50", "pos": "18" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/01/19." }
      ]
    },
    {
      "name": "Stamp", "lang": "en", "command": "fx_stamp", "command_preview": "fx_stamp", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Creates a rubber stamp effect. " },
      { "type": "separator" },
      { "type": "bool", "name": "Auto-Threshold", "default": "1", "pos": "1" },
      { "type": "int", "name": "Threshold", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "float", "name": "Sharpening", "default": "0", "min": "0", "max": "30", "pos": "4" },
      { "type": "float", "name": "Grain", "default": "0", "min": "0", "max": "100", "pos": "5" },
      { "type": "bool", "name": "Negative", "default": "0", "pos": "6" },
      { "type": "bool", "name": "Anti-Aliasing", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Authors: Antaron, Mahvin and David Tschumperlé.      Latest Update: 2015/03/16." }
      ]
    },
    {
      "name": "Threshold Etch", "lang": "en", "command": "fx_gcd_etch", "command_preview": "fx_gcd_etch_preview", "parameters": [
      { "type": "note", "text": "<u>Replace tones with noise generated lines</u>" },
      { "type": "note", "text": "\nInput Image Settings" },
      { "type": "separator" },
      { "type": "int", "name": "Threshold Low", "default": "125", "min": "10", "max": "255", "pos": "1" },
      { "type": "int", "name": "Threshold Mid", "default": "153", "min": "10", "max": "255", "pos": "2" },
      { "type": "int", "name": "Threshold High", "default": "171", "min": "10", "max": "255", "pos": "3" },
      { "type": "int", "name": "Threshold Max", "default": "185", "min": "10", "max": "255", "pos": "4" },
      { "type": "float", "name": "Blur Amount", "default": "0.1", "min": "0", "max": "2", "pos": "5" },
      { "type": "note", "text": "\nOutput Etch Settings" },
      { "type": "separator" },
      { "type": "int", "name": "Horizontal Amount", "default": "50", "min": "0", "max": "100", "pos": "6" },
      { "type": "int", "name": "Cross-Hatch Amount", "default": "80", "min": "0", "max": "100", "pos": "7" },
      { "type": "int", "name": "Vertical 1 Amount", "default": "50", "min": "0", "max": "100", "pos": "8" },
      { "type": "int", "name": "Vertical 2 Amount", "default": "10", "min": "0", "max": "100", "pos": "9" },
      { "type": "separator" },
      { "type": "int", "name": "Horizontal Length", "default": "15", "min": "0", "max": "50", "pos": "10" },
      { "type": "int", "name": "Vertical 1 Length", "default": "12", "min": "0", "max": "50", "pos": "11" },
      { "type": "int", "name": "Vertical 2 Length", "default": "20", "min": "0", "max": "50", "pos": "12" },
      { "type": "bool", "name": "Flip Cross-Hatch", "default": "0", "pos": "13" },
      { "type": "separator" },
      { "type": "int", "name": "Curve Amount", "default": "1", "min": "0", "max": "20", "pos": "14" },
      { "type": "float", "name": "Gamma", "default": "0.3", "min": "0.01", "max": "1", "pos": "15" },
      { "type": "bool", "name": "Fast Resize", "default": "1", "pos": "16" },
      { "type": "bool", "name": "Color Image", "default": "0", "pos": "17" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "18", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2013/02/09." }
      ]
    }
    ]
  },
  {
    "name": "Chris From Pixls", "filters": [
    {
      "name": "Remove Scratches", "lang": "en", "command": "fx_remove_scratches", "command_preview": "fx_remove_scratches_preview", "parameters": [
      { "type": "note", "text": "Note: Scratch removal for scanned film images" },
      { "type": "separator" },
      { "type": "float", "name": "Threshold", "default": "72", "min": "0", "max": "100", "pos": "1" },
      { "type": "int", "name": "Erosion", "default": "2", "min": "0", "max": "5", "pos": "2" },
      { "type": "int", "name": "Dilation", "default": "4", "min": "0", "max": "7", "pos": "3" },
      { "type": "choice", "name": "Show Preview After", "default": "3", "pos": "4", "choices": { "0": "Threshold", "1": "Erosion", "2": "Dilation", "3": "Final image" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "5", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Chris/Pixls.us.      Latest update: 2017/04/01." }
      ]
    }
    ]
  },
  {
    "name": "Colors", "filters": [
    {
      "name": "64 Couleurs Max", "lang": "en", "command": "samj_64_Couleurs_Max", "command_preview": "samj_64_Couleurs_Max", "parameters": [
      { "type": "link", "name": "https://samjcreations.blogspot.com/2020/10/samuser-avec-gmic-gimp-filtre-64.html", "url": "https://samjcreations.blogspot.com/2020/10/samuser-avec-gmic-gimp-filtre-64.html", "align": "center" },
      { "type": "int", "name": "Graine/Seed", "default": "9", "min": "0", "max": "65536", "pos": "1" },
      { "type": "int", "name": "Nb. Max. Couleurs/Colors", "default": "4", "min": "2", "max": "64", "pos": "2" },
      { "type": "float", "name": "Flou/Blur", "default": "2", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Netteté/Sharpen", "default": "50", "min": "0", "max": "100", "pos": "4" },
      { "type": "bool", "name": "Map Sur Gris/On Gray", "default": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Palette de couleurs predefinie/Preset color palette</span>" },
      { "type": "choice", "name": "Palette Prédéfinie/Preset Color", "default": "0", "pos": "6", "choices": { "0": "Non/No", "1": "Palette Origine", "2": "N&B-Gris/B&W-Grey", "3": "B&N-Gris/W&B-Grey", "4": "Choix/Choice 2 Colors A B", "5": "Choix/Choice 2 Colors B A" } },
      { "type": "color", "name": "Couleur - Color A", "default": "240,240,40", "pos": "7" },
      { "type": "color", "name": "Couleur - Color B", "default": "120,40,240", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/18." }
      ]
    },
    {
      "name": "9 colors", "lang": "en", "command": "samj_test_9_colors", "command_preview": "samj_test_9_colors", "parameters": [
      { "type": "link", "name": "https://samjcreations.blogspot.com/2020/10/samuser-avec-gmic-gimp-filtre-9-colors.html", "url": "https://samjcreations.blogspot.com/2020/10/samuser-avec-gmic-gimp-filtre-9-colors.html", "align": "center" },
      { "type": "link", "name": "https://discuss.pixls.us/t/help-with-gmic-map-command/20801", "url": "https://discuss.pixls.us/t/help-with-gmic-map-command/20801", "align": "center" },
      { "type": "color", "name": "Couleur/Color 1", "default": "70,17,10", "pos": "1" },
      { "type": "color", "name": "Couleur/Color 2", "default": "134,35,20", "pos": "4" },
      { "type": "color", "name": "Couleur/Color 3", "default": "154,27,58", "pos": "7" },
      { "type": "color", "name": "Couleur/Color 4", "default": "186,61,89", "pos": "10" },
      { "type": "color", "name": "Couleur/Color 5", "default": "220,103,129", "pos": "13" },
      { "type": "color", "name": "Couleur/Color 6", "default": "239,151,169", "pos": "16" },
      { "type": "color", "name": "Couleur/Color 7", "default": "246,194,205", "pos": "19" },
      { "type": "color", "name": "Couleur/Color 8", "default": "253,201,212", "pos": "22" },
      { "type": "color", "name": "Couleur/Color 9", "default": "255,255,255", "pos": "25" },
      { "type": "float", "name": "Flou/Blur", "default": "0", "min": "0", "max": "5", "pos": "28" },
      { "type": "float", "name": "Netteté/Sharpen", "default": "0", "min": "0", "max": "200", "pos": "29" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/19." }
      ]
    },
    {
      "name": "Abstraction", "lang": "en", "command": "fx_color_abstraction", "command_preview": "fx_color_abstraction", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simplifies the image colors into a more abstract palette. " },
      { "type": "separator" },
      { "type": "float", "name": "Smoothness", "default": "1", "min": "0", "max": "10", "pos": "1" },
      { "type": "int", "name": "Levels", "default": "10", "min": "2", "max": "100", "pos": "2" },
      { "type": "float", "name": "Contrast", "default": "0.2", "min": "0.01", "max": "1", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2011/10/19." }
      ]
    },
    {
      "name": "Apply External CLUT", "lang": "en", "command": "fx_apply_haldclut", "command_preview": "fx_apply_haldclut_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Applies an external HaldCLUT (Color Look-Up Table) file. " },
      { "type": "separator" },
      { "type": "choice", "name": "Specify HaldCLUT As", "default": "2", "pos": "1", "choices": { "0": "Top Layer", "1": "Bottom Layer", "2": "Filename" } },
      { "type": "note", "text": "Note: Do not forget to set the Input layers option if you select Top layer or Bottom layer." },
      { "type": "file", "name": "HaldCLUT Filename", "default": "", "pos": "2" },
      { "type": "bool", "name": "Pre-Normalize CLUT", "default": "0", "pos": "3" },
      { "type": "separator" },
      { "type": "float", "name": "Strength (%)", "default": "100", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Brightness (%)", "default": "0", "min": "-100", "max": "100", "pos": "5" },
      { "type": "float", "name": "Contrast (%)", "default": "0", "min": "-100", "max": "100", "pos": "6" },
      { "type": "float", "name": "Gamma (%)", "default": "0", "min": "-100", "max": "100", "pos": "7" },
      { "type": "float", "name": "Hue (%)", "default": "0", "min": "-100", "max": "100", "pos": "8" },
      { "type": "float", "name": "Saturation (%)", "default": "0", "min": "-100", "max": "100", "pos": "9" },
      { "type": "choice", "name": "Normalize Colors", "default": "0", "pos": "10", "choices": { "0": "None", "1": "Pre-Normalize", "2": "Post-Normalize", "3": "Both" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2025/05/28." }
      ]
    },
    {
      "name": "Apply From CLUT Set", "lang": "en", "command": "apply_from_clut_set", "command_preview": "apply_from_clut_set_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Applies a CLUT from a built-in predefined set (.gmz format). " },
      { "type": "separator" },
      { "type": "file", "name": "CLUT Set (.gmz File)", "default": "", "pos": "1" },
      { "type": "int", "name": "Index", "default": "1", "min": "1", "max": "1024", "pos": "2" },
      { "type": "separator" },
      { "type": "float", "name": "Strength (%)", "default": "100", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Brightness (%)", "default": "0", "min": "-100", "max": "100", "pos": "4" },
      { "type": "float", "name": "Contrast (%)", "default": "0", "min": "-100", "max": "100", "pos": "5" },
      { "type": "float", "name": "Gamma (%)", "default": "0", "min": "-100", "max": "100", "pos": "6" },
      { "type": "float", "name": "Hue (%)", "default": "0", "min": "-100", "max": "100", "pos": "7" },
      { "type": "float", "name": "Saturation (%)", "default": "0", "min": "-100", "max": "100", "pos": "8" },
      { "type": "choice", "name": "Normalize Colors", "default": "0", "pos": "9", "choices": { "0": "None", "1": "Pre-Normalize", "2": "Post-Normalize", "3": "Both" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2022/05/08." }
      ]
    },
    {
      "name": "At06A 2017 VarCouleurs", "lang": "en", "command": "samj_At06A_2017_VarCouleurs", "command_preview": "samj_At06A_2017_VarCouleurs", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">samj_At06A_2017_VarCouleurs</span>" },
      { "type": "float", "name": "Puissance", "default": "1", "min": "0", "max": "8", "pos": "1" },
      { "type": "float", "name": "Couper A %", "default": "0", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Couper B %", "default": "100", "min": "0", "max": "100", "pos": "3" },
      { "type": "choice", "name": "Noir et Blanc", "default": "0", "pos": "4", "choices": { "0": "Non", "1": "To Gray", "2": "Lightness - Lab" } },
      { "type": "bool", "name": "Normaliser", "default": "0", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2017/02/27." }
      ]
    },
    {
      "name": "Basic Adjustments", "lang": "en", "command": "fx_adjust_colors", "command_preview": "", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Controls brightness, contrast, hue, and saturation. " },
      { "type": "separator" },
      { "type": "float", "name": "Brightness (%)", "default": "0", "min": "-100", "max": "100", "pos": "1" },
      { "type": "float", "name": "Contrast (%)", "default": "0", "min": "-100", "max": "100", "pos": "2" },
      { "type": "float", "name": "Gamma (%)", "default": "0", "min": "-100", "max": "100", "pos": "3", "visibility": "0" },
      { "type": "float", "name": "Hue (%)", "default": "0", "min": "-100", "max": "100", "pos": "4", "visibility": "0" },
      { "type": "float", "name": "Saturation (%)", "default": "0", "min": "-100", "max": "100", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/06/16." }
      ]
    },
    {
      "name": "Boost Chromaticity", "lang": "en", "command": "fx_boost_chroma", "command_preview": "fx_boost_chroma", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Increases or decreases the intensity of colors without affecting luminance. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "choice", "name": "Color Space", "default": "0", "pos": "2", "choices": { "0": "YCbCr (Distinct)", "1": "YCbCr (Mixed)", "2": "Lab (Distinct)", "3": "Lab (Mixed)" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/07/19." }
      ]
    },
    {
      "name": "Boost-Fade", "lang": "en", "command": "fx_boost_fade", "command_preview": "", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Enhances/reduces color vibrance. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "5", "min": "0", "max": "10", "pos": "1" },
      { "type": "choice", "name": "Chromaticity From", "default": "0", "pos": "2", "choices": { "0": "YCbCr", "1": "Lab" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2018/11/26." }
      ]
    },
    {
      "name": "Brightness", "lang": "en", "command": "afre_brightness", "command_preview": "afre_brightness_preview", "parameters": [
      { "type": "note", "text": "<strong>Enhance luminance brightness.  Filter by <a href=\"https://discuss.pixls.us/u/afre\">afre</a> 2020-2021 Jan8.</strong>\n\n" },
      { "type": "int", "name": "Amount", "default": "50", "min": "-300", "max": "300", "pos": "1" },
      { "type": "int", "name": "Smooth", "default": "0", "min": "0", "max": "50", "pos": "2" },
      { "type": "note", "text": "\n\n<strong>Note</strong>\n\nG'MIC's preview is inaccurate. Apply the filter and review the results in your host editor." }
      ]
    },
    {
      "name": "CeKoaSa 013", "lang": "en", "command": "samj_CeKoaSa_013", "command_preview": "samj_CeKoaSa_013", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\"> CeKoaSa 013 Hallucinogens</span>" },
      { "type": "int", "name": "1 - SRand - 0 Random", "default": "1", "min": "0", "max": "512", "pos": "1" },
      { "type": "float", "name": "2 - Blur", "default": "1", "min": "0", "max": "10", "pos": "2" },
      { "type": "bool", "name": "3 - Negate", "default": "1", "pos": "3" },
      { "type": "bool", "name": "4 - Colored", "default": "1", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\"> Configure Color Curve </span>" },
      { "type": "bool", "name": "5 - Configure", "default": "0", "pos": "5" },
      { "type": "bool", "name": "6 - X0", "default": "1", "pos": "6" },
      { "type": "bool", "name": "7 - X32", "default": "0", "pos": "7" },
      { "type": "bool", "name": "8 - X64", "default": "1", "pos": "8" },
      { "type": "bool", "name": "9 - X96", "default": "0", "pos": "9" },
      { "type": "bool", "name": "10 - X128", "default": "1", "pos": "10" },
      { "type": "bool", "name": "11 - X160", "default": "0", "pos": "11" },
      { "type": "bool", "name": "12 - X192", "default": "1", "pos": "12" },
      { "type": "bool", "name": "13 - X224", "default": "0", "pos": "13" },
      { "type": "bool", "name": "14 - X255", "default": "1", "pos": "14" },
      { "type": "separator" },
      { "type": "bool", "name": "15 - Text Points Curve", "default": "0", "pos": "15" },
      { "type": "button", "name": "Random Update Screen", "pos": "16" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2024/12/05." }
      ]
    },
    {
      "name": "Channel Processing", "lang": "en", "command": "fx_channel_processing", "command_preview": "fx_channel_processing", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Applies operations to specific color channels. " },
      { "type": "separator" },
      { "type": "float", "name": "Brightness (%)", "default": "0", "min": "-100", "max": "100", "pos": "1" },
      { "type": "float", "name": "Contrast (%)", "default": "0", "min": "-100", "max": "100", "pos": "2" },
      { "type": "float", "name": "Gamma (%)", "default": "0", "min": "-100", "max": "100", "pos": "3" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "4" },
      { "type": "choice", "name": "Value Action", "default": "0", "pos": "5", "choices": { "0": "None", "1": "Cut", "2": "Cut & Normalize", "3": "Normalize", "4": "Threshold" } },
      { "type": "float", "name": "Low Value", "default": "0", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "High Value", "default": "100", "min": "0", "max": "100", "pos": "7" },
      { "type": "int", "name": "Quantization", "default": "256", "min": "1", "max": "256", "pos": "8" },
      { "type": "bool", "name": "Equalization", "default": "0", "pos": "9" },
      { "type": "bool", "name": "Negation", "default": "0", "pos": "10" },
      { "type": "separator" },
      { "type": "choice", "name": "Tones Range", "default": "0", "pos": "11", "choices": { "0": "All tones", "1": "Shadows", "2": "Mid-Tones", "3": "Highlights" } },
      { "type": "float", "name": "Tones Smoothness", "default": "2", "min": "0", "max": "10", "pos": "12" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "13", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Channels to Layers", "lang": "en", "command": "fx_channels2layers", "command_preview": "fx_channels2layers_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Splits the image color channels into separate layers. " },
      { "type": "separator" },
      { "type": "choice", "name": "Colorspace", "default": "0", "pos": "1", "choices": { "0": "RGB", "1": "CMY", "2": "HSV" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2015/07/15." }
      ]
    },
    {
      "name": "CLUT from After - Before Layers", "lang": "en", "command": "fx_clut_from_ab", "command_preview": "fx_clut_from_ab_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a CLUT based on the difference between two layers. " },
      { "type": "separator" },
      { "type": "choice", "name": "Output Mode", "default": "0", "pos": "1", "choices": { "0": "Replace Layer with CLUT", "1": "Insert New CLUT Layer", "2": "Save CLUT as .cube or .png File" } },
      { "type": "choice", "name": "Output CLUT Resolution", "default": "4", "pos": "2", "choices": { "0": "16", "1": "25", "2": "36", "3": "49", "4": "64", "5": "81", "6": "100", "7": "121", "8": "144", "9": "169", "10": "225", "11": "256" }, "visibility": "2" },
      { "type": "choice", "name": "CLUT format", "default": "0", "pos": "3", "choices": { "0": "Hald CLUT", "1": "RGB LUT" } },
      { "type": "separator" },
      { "type": "folder", "name": "Output Folder", "default": "", "pos": "4", "visibility": "1" },
      { "type": "text", "name": "Output Filename", "default": "output.cube", "pos": "5", "visibility": "1" },
      { "type": "separator" },
      { "type": "float", "name": "Influence of Color Samples (%)", "default": "50", "min": "0", "max": "100", "pos": "6", "visibility": "2" },
      { "type": "separator" },
      { "type": "note", "text": "What is this filter for?\n\n This filter requires at least two input layers to work properly.\n It assumes you have an input top layer A and a base layer B such that A and B both represent the same image but with only color variations (typically A has been obtained from B using the color curves tool).\n\n This filter is then able to estimate and outputs a color HaldCLUT H so that applying H on the base layer B gives back A.\n\n This is useful when you have a color transformation between two images, that you want to recover and re-apply on a bunch of other images. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé. Latest Update: 2019/08/27." }
      ]
    },
    {
      "name": "CMYK Tone", "lang": "en", "command": "iain_cmyk_tone_p", "command_preview": "iain_cmyk_tone_p", "parameters": [
      { "type": "note", "text": "Adjust cyans for pixels that have:" },
      { "type": "int", "name": "A Lot of Cyan", "default": "0", "min": "-255", "max": "255", "pos": "1" },
      { "type": "int", "name": "Some Cyan", "default": "0", "min": "-255", "max": "255", "pos": "2" },
      { "type": "int", "name": "Little Cyan", "default": "0", "min": "-255", "max": "255", "pos": "3" },
      { "type": "note", "text": "Adjust cyans for pixels that have:" },
      { "type": "int", "name": "A Lot of Magenta", "default": "0", "min": "-255", "max": "255", "pos": "4" },
      { "type": "int", "name": "Some Magenta", "default": "0", "min": "-255", "max": "255", "pos": "5" },
      { "type": "int", "name": "Little Magenta", "default": "0", "min": "-255", "max": "255", "pos": "6", "visibility": "0" },
      { "type": "note", "text": "Adjust cyans for pixels that have:", "visibility": "0" },
      { "type": "int", "name": "A Lot of Yellow", "default": "0", "min": "-255", "max": "255", "pos": "7", "visibility": "0" },
      { "type": "int", "name": "Some Yellow", "default": "0", "min": "-255", "max": "255", "pos": "8", "visibility": "0" },
      { "type": "int", "name": "Little Yellow", "default": "0", "min": "-255", "max": "255", "pos": "9", "visibility": "0" },
      { "type": "note", "text": "Adjust cyans for pixels that have:" },
      { "type": "int", "name": "A Lot of Key", "default": "0", "min": "-255", "max": "255", "pos": "10" },
      { "type": "int", "name": "Some Key", "default": "0", "min": "-255", "max": "255", "pos": "11" },
      { "type": "int", "name": "Little Key", "default": "0", "min": "-255", "max": "255", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "Adjust Magentas for pixels that have:" },
      { "type": "int", "name": "A Lot of Cyan", "default": "0", "min": "-255", "max": "255", "pos": "13" },
      { "type": "int", "name": "Some Cyan", "default": "0", "min": "-255", "max": "255", "pos": "14" },
      { "type": "int", "name": "Little Cyan", "default": "0", "min": "-255", "max": "255", "pos": "15" },
      { "type": "note", "text": "Adjust Magentas for pixels that have:" },
      { "type": "int", "name": "A Lot of Magenta", "default": "0", "min": "-255", "max": "255", "pos": "16" },
      { "type": "int", "name": "Some Magenta", "default": "0", "min": "-255", "max": "255", "pos": "17" },
      { "type": "int", "name": "Little Magenta", "default": "0", "min": "-255", "max": "255", "pos": "18" },
      { "type": "note", "text": "Adjust Magentas for pixels that have:" },
      { "type": "int", "name": "A Lot of Yellow", "default": "0", "min": "-255", "max": "255", "pos": "19" },
      { "type": "int", "name": "Some Yellow", "default": "0", "min": "-255", "max": "255", "pos": "20" },
      { "type": "int", "name": "Little Yellow", "default": "0", "min": "-255", "max": "255", "pos": "21" },
      { "type": "note", "text": "Adjust Magentas for pixels that have:" },
      { "type": "int", "name": "A Lot of Key", "default": "0", "min": "-255", "max": "255", "pos": "22" },
      { "type": "int", "name": "Some Key", "default": "0", "min": "-255", "max": "255", "pos": "23" },
      { "type": "int", "name": "Little Key", "default": "0", "min": "-255", "max": "255", "pos": "24" },
      { "type": "separator" },
      { "type": "note", "text": "Adjust Yellows for pixels that have:" },
      { "type": "int", "name": "A Lot of Cyan", "default": "0", "min": "-255", "max": "255", "pos": "25" },
      { "type": "int", "name": "Some Cyan", "default": "0", "min": "-255", "max": "255", "pos": "26" },
      { "type": "int", "name": "Little Cyan", "default": "0", "min": "-255", "max": "255", "pos": "27" },
      { "type": "note", "text": "Adjust Yellows for pixels that have:" },
      { "type": "int", "name": "A Lot of Magenta", "default": "0", "min": "-255", "max": "255", "pos": "28" },
      { "type": "int", "name": "Some Magenta", "default": "0", "min": "-255", "max": "255", "pos": "29" },
      { "type": "int", "name": "Little Magenta", "default": "0", "min": "-255", "max": "255", "pos": "30" },
      { "type": "note", "text": "Adjust Yellows for pixels that have:" },
      { "type": "int", "name": "A Lot of Yellow", "default": "0", "min": "-255", "max": "255", "pos": "31" },
      { "type": "int", "name": "Some Yellow", "default": "0", "min": "-255", "max": "255", "pos": "32" },
      { "type": "int", "name": "Little Yellow", "default": "0", "min": "-255", "max": "255", "pos": "33" },
      { "type": "note", "text": "Adjust Yellows for pixels that have:" },
      { "type": "int", "name": "A Lot of Key", "default": "0", "min": "-255", "max": "255", "pos": "34" },
      { "type": "int", "name": "Some Key", "default": "0", "min": "-255", "max": "255", "pos": "35" },
      { "type": "int", "name": "Little Key", "default": "0", "min": "-255", "max": "255", "pos": "36" },
      { "type": "separator" },
      { "type": "note", "text": "Adjust Key for pixels that have:" },
      { "type": "int", "name": "A Lot of Cyan", "default": "0", "min": "-255", "max": "255", "pos": "37" },
      { "type": "int", "name": "Some Cyan", "default": "0", "min": "-255", "max": "255", "pos": "38" },
      { "type": "int", "name": "Little Cyan", "default": "0", "min": "-255", "max": "255", "pos": "39" },
      { "type": "note", "text": "Adjust Key for pixels that have:" },
      { "type": "int", "name": "A Lot of Magenta", "default": "0", "min": "-255", "max": "255", "pos": "40" },
      { "type": "int", "name": "Some Magenta", "default": "0", "min": "-255", "max": "255", "pos": "41" },
      { "type": "int", "name": "Little Magenta", "default": "0", "min": "-255", "max": "255", "pos": "42" },
      { "type": "note", "text": "Adjust Key for pixels that have:" },
      { "type": "int", "name": "A Lot of Yellow", "default": "0", "min": "-255", "max": "255", "pos": "43" },
      { "type": "int", "name": "Some Yellow", "default": "0", "min": "-255", "max": "255", "pos": "44" },
      { "type": "int", "name": "Little Yellow", "default": "0", "min": "-255", "max": "255", "pos": "45" },
      { "type": "note", "text": "Adjust Key for pixels that have:" },
      { "type": "int", "name": "A Lot of Key", "default": "0", "min": "-255", "max": "255", "pos": "46" },
      { "type": "int", "name": "Some Key", "default": "0", "min": "-255", "max": "255", "pos": "47" },
      { "type": "int", "name": "Little Key", "default": "0", "min": "-255", "max": "255", "pos": "48" },
      { "type": "separator" },
      { "type": "note", "text": "Strength of effect for Saturation level:" },
      { "type": "int", "name": "None", "default": "255", "min": "0", "max": "255", "pos": "49" },
      { "type": "int", "name": "Little", "default": "255", "min": "0", "max": "255", "pos": "50" },
      { "type": "int", "name": "Some", "default": "255", "min": "0", "max": "255", "pos": "51" },
      { "type": "int", "name": "Much", "default": "255", "min": "0", "max": "255", "pos": "52" },
      { "type": "int", "name": "Most", "default": "255", "min": "0", "max": "255", "pos": "53" },
      { "type": "separator" },
      { "type": "choice", "name": "Output", "default": "0", "pos": "54", "choices": { "0": "Perserve Luminance", "1": "Clip CMYK", "2": "Clip RGB", "3": "Scale CMYK", "4": "Scale RGB" } },
      { "type": "separator" },
      { "type": "choice", "name": "Parallel Processing", "default": "0", "pos": "55", "choices": { "0": "Auto", "1": "Off" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Iain Fergusson. Update: 4 March 2014 - Added parallel processing option" }
      ]
    },
    {
      "name": "Color Balance", "lang": "en", "command": "fx_balance_gamma", "command_preview": "", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adjusts the color balance. " },
      { "type": "separator" },
      { "type": "color", "name": "Neutral Color", "default": "128,128,128", "pos": "1" },
      { "type": "bool", "name": "Stretch Colors", "default": "1", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2011/01/07." }
      ]
    },
    {
      "name": "Color Blindness", "lang": "en", "command": "colorblind", "command_preview": "", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simulates various types of color blindness. " },
      { "type": "separator" },
      { "type": "choice", "name": "Blindness Type", "default": "0", "pos": "1", "choices": { "0": "Protanopia", "1": "Protanomaly", "2": "Deuteranopia", "3": "Deuteranomaly", "4": "Tritanopia", "5": "Tritanomaly", "6": "Achromatopsia", "7": "Achromatomaly" } },
      { "type": "separator" },
      { "type": "note", "text": "Note: This filter simulates different types of colorblindness vision. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/04/20." }
      ]
    },
    {
      "name": "Color Grading", "lang": "en", "command": "jl_colorgrading", "command_preview": "jl_colorgrading_preview", "parameters": [
      { "type": "note", "text": "A filter for basic photo editing and color grading." },
      { "type": "note", "text": "Note: Saturation channel gamma affects more the less saturated areas. S-curve contrast, affects shadows and highlights equally. When using noise reduction or sharpening tools, zoom in for more accurate view." },
      { "type": "separator" },
      { "type": "float", "name": "HDR Effect (Tone Map)", "default": "0.", "min": "0.0", "max": "1", "pos": "1" },
      { "type": "int", "name": "Cool / Warm", "default": "0", "min": "-50", "max": "50", "pos": "2" },
      { "type": "float", "name": "Saturation", "default": "1", "min": "0", "max": "2", "pos": "3" },
      { "type": "float", "name": "Saturation Channel Gamma", "default": "1", "min": "0.1", "max": "3", "pos": "4" },
      { "type": "note", "text": "Note: Saturation channel gamma may introduce artifacts depending on the image." },
      { "type": "separator" },
      { "type": "int", "name": "S-Curve Contrast", "default": "0", "min": "-30", "max": "30", "pos": "5" },
      { "type": "int", "name": "Shadows", "default": "0", "min": "-50", "max": "50", "pos": "6" },
      { "type": "int", "name": "Highlights", "default": "0", "min": "-50", "max": "50", "pos": "7" },
      { "type": "int", "name": "Blacks", "default": "0", "min": "0", "max": "50", "pos": "8" },
      { "type": "int", "name": "Brightness", "default": "0", "min": "-50", "max": "50", "pos": "9" },
      { "type": "int", "name": "Contrast", "default": "0", "min": "-50", "max": "50", "pos": "10" },
      { "type": "float", "name": "Gamma", "default": "1", "min": "0.1", "max": "3", "pos": "11" },
      { "type": "separator" },
      { "type": "float", "name": "Clarity", "default": "0", "min": "0.0", "max": "2.0", "pos": "12" },
      { "type": "float", "name": "Local Contrast Enhance", "default": "0", "min": "0", "max": "3", "pos": "13" },
      { "type": "separator" },
      { "type": "bool", "name": "Color Grading", "default": "0", "pos": "14" },
      { "type": "int", "name": "Highlights Color Intensity", "default": "70", "min": "0", "max": "130", "pos": "15" },
      { "type": "int", "name": "Highlights Hue", "default": "0", "min": "0", "max": "360", "pos": "16" },
      { "type": "int", "name": "Highlights Brightness", "default": "0", "min": "-100", "max": "100", "pos": "17" },
      { "type": "int", "name": "Midtones Color Intensity", "default": "0", "min": "0", "max": "130", "pos": "18" },
      { "type": "int", "name": "Midtones Hue", "default": "0", "min": "0", "max": "360", "pos": "19" },
      { "type": "int", "name": "Midtones Brightness", "default": "0", "min": "-100", "max": "100", "pos": "20" },
      { "type": "int", "name": "Shadows Color Intensity", "default": "70", "min": "0", "max": "130", "pos": "21" },
      { "type": "int", "name": "Shadows Hue Shift", "default": "180", "min": "0", "max": "360", "pos": "22" },
      { "type": "int", "name": "Shadows Brightness", "default": "0", "min": "-100", "max": "100", "pos": "23" },
      { "type": "note", "text": "Color grading subsection usage: Use intensity sliders to control the amount of color being applied in the highlights/midtones/shadows, use brightness sliders for bringing up or down highlights/midtones/shadows. Hues here follow rotation axis in color wheel ie: 0 or 360 deg is red, 180 is blue it's complimentary. Shadows hue shift in default position uses always the complimentary color of highlights in the shadows. Default sliders for grading apply red highlights and blue shadows effect." },
      { "type": "separator" },
      { "type": "float", "name": "Output Saturation", "default": "1", "min": "0", "max": "2", "pos": "24" },
      { "type": "float", "name": "Output Sharpening", "default": "0", "min": "0", "max": "10", "pos": "25" },
      { "type": "float", "name": "Output Chroma NR", "default": "0", "min": "0", "max": "20", "pos": "26" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "27", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: John Lakkas.      Latest update: 17/03/2015." }
      ]
    },
    {
      "name": "Color Harmonies", "lang": "en", "command": "samj_Color_Palettes", "command_preview": "samj_Color_Palettes", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">samj_Color_Palettes</span>" },
      { "type": "separator" },
      { "type": "note", "text": "Geometry" },
      { "type": "float", "name": "Position X (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Position Y (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Tilt Angle", "default": "0", "min": "0", "max": "360", "pos": "3" },
      { "type": "float", "name": "Radius Center Circle", "default": "6", "min": "0", "max": "100", "pos": "4" },
      { "type": "int", "name": "Number Of Shades Per Circle", "default": "24", "min": "16", "max": "90", "pos": "5" },
      { "type": "float", "name": "Angle Offset Rings", "default": "0", "min": "0", "max": "360", "pos": "6" },
      { "type": "float", "name": "Variation Dimension", "default": "0", "min": "-100", "max": "200", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Color - Palettes" },
      { "type": "color", "name": "Reference Color", "default": "180,90,45", "pos": "8" },
      { "type": "bool", "name": "Fill Color", "default": "1", "pos": "11" },
      { "type": "int", "name": "RGB XYZ Matrices", "default": "3", "min": "0", "max": "15", "pos": "12" },
      { "type": "int", "name": "XYZ Tristimulus", "default": "2", "min": "0", "max": "18", "pos": "13", "visibility": "0" },
      { "type": "bool", "name": "Outline Reference Color", "default": "1", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Update : 2020/10/24." }
      ]
    },
    {
      "name": "Color Mask [Interactive]", "lang": "en", "command": "fx_mask_color", "command_preview": "gui_no_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Interactively selects a specific color range to create a mask. " },
      { "type": "separator" },
      { "type": "choice", "name": "Color Metric", "default": "13", "pos": "1", "choices": { "0": "RGB [All]", "1": "RGB [Red]", "2": "RGB [Green]", "3": "RGB [Blue]", "4": "Linear RGB [All]", "5": "Linear RGB [Red]", "6": "Linear RGB [Green]", "7": "Linear RGB [Blue]", "8": "YCbCr [Luminance]", "9": "YCbCr [Blue-Red Chrominances]", "10": "YCbCr [Blue Chrominance]", "11": "YCbCr [red chrominance]", "12": "YCbCr [green chrominance]", "13": "Lab [all]", "14": "Lab [lightness]", "15": "Lab [ab-Chrominances]", "16": "Lab [a-Chrominance]", "17": "Lab [b-Chrominance]", "18": "Lch [all]", "19": "Lch [ch-Chrominances]", "20": "Lch [c-Chrominance]", "21": "Lch [h-Chrominance]", "22": "HSV [all]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [all]", "27": "HSI [intensity]", "28": "HSL [all]", "29": "HSL [lightness]", "30": "CMYK [cyan]", "31": "CMYK [magenta]", "32": "CMYK [yellow]", "33": "CMYK [key]", "34": "YIQ [luma]", "35": "YIQ [chromas]" } },
      { "type": "float", "name": "Spatial Tolerance", "default": "10", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Color Tolerance", "default": "5", "min": "0", "max": "100", "pos": "3" },
      { "type": "separator" },
      { "type": "choice", "name": "Output Mode", "default": "0", "pos": "4", "choices": { "0": "Masked image", "1": "Color mask" } },
      { "type": "separator" },
      { "type": "note", "text": "Note: This filter is CPU consuming, so use it at least with 4+ cores (or reduce the size of the interactive window to speed up computation)." },
      { "type": "note", "text": "Interactions:\n Use the following actions in the interactive window to build your color mask :\n\n - Left mouse button make the color pointed by the mouse wanted for the mask.\n - Right mouse button make the color pointed by the mouse unwanted for the mask.\n - Middle mouse button or key R resets color mask.\n - Key SPACE or TAB toggles view modes (half/full-masked RGB or color mask).\n - Keys CTRL+D increase window size.\n - Keys CTRL+C decrease window size.\n - Keys CTRL+R resets window size.\n - Keys ESC, Q or RETURN exit the interactive window. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 01/20/2017." }
      ]
    },
    {
      "name": "Color Presets", "lang": "en", "command": "fx_color_presets", "command_preview": "fx_color_presets_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Applies various predefined color grading presets." },
      { "type": "separator" },
      { "type": "choice", "name": "LUTs Pack", "default": "22", "pos": "1", "choices": { "0": "Abigail Gonzalez (21)", "1": "Alex Jordan (81)", "2": "Berat (10)", "3": "Cinematic (8)", "4": "Cinematic Travel (29)", "5": "Creative Pack (33)", "6": "Debrup Travel & Films (30)", "7": "EditingCorp (60)", "8": "Eric Ellerbrock (14)", "9": "FilterGrade Cinematic (8)", "10": "Hollywood Movies (74)", "11": "InAvision (15)", "12": "J.T. Semple (14)", "13": "Kyler Holland (10)", "14": "Lutify.Me (7)", "15": "Michael Ezra (2)", "16": "Moviz (48)", "17": "Ohad Peretz (7)", "18": "Olivio Sarikas (19)", "19": "ON1 Photography (90)", "20": "PictureFX (25)", "21": "Pixelmator (45)", "22": "PIXLS.US (31)", "23": "Purple11 (12)", "24": "RocketStock (35)", "25": "Shamoon Abbasi (25)", "26": "SmallHD Movie Look (7)", "27": "Todd Blankenship (13)", "28": "Youssef Hossam (5)", "29": "Others (69)" } },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "2", "choices": { "0": "All [Collage]", "1": "None", "2": "Blade Runner", "3": "Blue House", "4": "Blue Ice", "5": "Caribe", "6": "Cinema", "7": "Cinema 2", "8": "Cinema 3", "9": "Cinema 4", "10": "Cinema 5", "11": "Cinema Noir", "12": "Cinematic for Flog", "13": "Day4Nite", "14": "Eterna for Flog", "15": "Filmic", "16": "Fuji HDR", "17": "Golden Gate", "18": "Matrix", "19": "Monochrome 1", "20": "Monochrome 2", "21": "Old West", "22": "Science Fiction" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "3", "choices": { "0": "All [Collage]", "1": "None", "2": "Action Magenta 01", "3": "Action Red 01", "4": "Adventure 1453", "5": "Aggressive Highlights Recovery 5", "6": "Bleech Bypass Green", "7": "Bleech Bypass Yellow 01", "8": "Blue Dark", "9": "Blue Shadows 01", "10": "Bright Green 01", "11": "Brownish", "12": "Colorful 0209", "13": "Conflict 01", "14": "Contrast with Highlights Protection", "15": "Contrasty Afternoon", "16": "Contrasty Green", "17": "Cross Process CP 130", "18": "Cross Process CP 14", "19": "Cross Process CP 15", "20": "Cross Process CP 16", "21": "Cross Process CP 18", "22": "Cross Process CP 3", "23": "Cross Process CP 4", "24": "Cross Process CP 6", "25": "Dark Green 02", "26": "Dark Green 1", "27": "Dark Place 01", "28": "Dream 1", "29": "Dream 85", "30": "Faded Retro 01", "31": "Faded Retro 02", "32": "Film 0987", "33": "Film 9879", "34": "Film Highlight Contrast", "35": "Flat 30", "36": "Green 2025", "37": "Green Action", "38": "Green Afternoon", "39": "Green Conflict", "40": "Green Day 01", "41": "Green Day 02", "42": "Green G09", "43": "Green Indoor", "44": "Green Light", "45": "Harsh Day", "46": "Harsh Sunset", "47": "Highlights Protection", "48": "Indoor Blue", "49": "Low Contrast Blue", "50": "Low Key 01", "51": "Magenta Day", "52": "Magenta Day 01", "53": "Magenta Dream", "54": "Memories", "55": "Moonlight 01", "56": "Mostly Blue", "57": "Muted 01", "58": "Night 01", "59": "Only Red", "60": "Only Red and Blue", "61": "Operation Yellow", "62": "Orange Dark 4", "63": "Orange Dark 7", "64": "Orange Dark Look", "65": "Orange Underexposed", "66": "Protect Highlights 01", "67": "Red Afternoon 01", "68": "Red Day 01", "69": "Red Dream 01", "70": "Retro Brown 01", "71": "Retro Magenta 01", "72": "Retro Yellow 01", "73": "Saturated Blue", "74": "Smart Contrast", "75": "Subtle Blue", "76": "Subtle Green", "77": "Yellow 55B", "78": "Yellow Film 01" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "4", "choices": { "0": "All [Collage]", "1": "None", "2": "Brown BM", "3": "Cine Blue", "4": "Cine BM4k", "5": "Golden Time", "6": "Green and Orange", "7": "Monochrome", "8": "Sevsuz", "9": "Sunlight Love", "10": "Western", "11": "Western Lut 2" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "5", "choices": { "0": "All [Collage]", "1": "None", "2": "Deep", "3": "Dimension", "4": "Enchanted", "5": "Flavin", "6": "Frosted", "7": "Shine", "8": "Ultra Water", "9": "Wipe" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "6", "choices": { "0": "All [Collage]", "1": "None", "2": "Blue Cold Fade", "3": "Bright Teal Orange", "4": "Bright Warm", "5": "Clear Teal Fade", "6": "Cold Clear Blue", "7": "Cold Clear Blue 1", "8": "Deep Blue", "9": "Deep Dark Warm", "10": "Deep High Contrast", "11": "Deep Teal Fade", "12": "Deep Warm Fade", "13": "Faded Green", "14": "Greenish Contrasty", "15": "Greenish Fade", "16": "Greenish Fade 1", "17": "Hard Teal Orange", "18": "Neutral Teal Orange", "19": "Neutral Warm Fade", "20": "Smooth Clear", "21": "Smooth Green Orange", "22": "Smooth Teal Orange", "23": "Teal Fade", "24": "Very Warm Greenish", "25": "Warm Dark Contrasty", "26": "Warm Fade", "27": "Warm Fade 1", "28": "Warm Neutral", "29": "Warm Sunset Red", "30": "Warm Teal" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "7", "choices": { "0": "All [Collage]", "1": "None", "2": "Anime", "3": "Bleach Bypass 1", "4": "Bleach Bypass 2", "5": "Bleach Bypass 3", "6": "Bleach Bypass 4", "7": "Candle Light", "8": "Color Negative", "9": "Crisp Warm", "10": "Crip Winter", "11": "Drop Blues", "12": "Edgy Ember", "13": "Fall Colors", "14": "Foggy Night", "15": "Futuristic Bleak 1", "16": "Futuristic Bleak 2", "17": "Futuristic Bleak 3", "18": "Futuristic Bleak 4", "19": "Horror Blue", "20": "Late Sunset", "21": "Moonlight", "22": "Night From Day", "23": "Red Blue Yellow", "24": "Smokey", "25": "Soft Warming", "26": "Teal Magenta Gold", "27": "Teal Orange", "28": "Teal Orange 1", "29": "Teal Orange 2", "30": "Teal Orange 3", "31": "Tension Green 1", "32": "Tension Green 2", "33": "Tension Green 3", "34": "Tension Green 4" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "8", "choices": { "0": "All [Collage]", "1": "None", "2": "Cine-1", "3": "Cine-2", "4": "Cine-3", "5": "Cine-4", "6": "Cine-5", "7": "Cine-6", "8": "Cine-7", "9": "Cine-8", "10": "Cine-9", "11": "Cine-10", "12": "Cine-11", "13": "Cine-12", "14": "Cine-13", "15": "Cine-14", "16": "Cine-15", "17": "Cine-16", "18": "Cine-17", "19": "Cine-18", "20": "Cine-19", "21": "Cine-20", "22": "Cine-21", "23": "Cine-22", "24": "Cine-23", "25": "Cine-24", "26": "Cine-25", "27": "Cine-26", "28": "Cine-27", "29": "Cine-28", "30": "Cine-29", "31": "Cine-30" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "9", "choices": { "0": "All [Collage]", "1": "None", "2": "Ampio", "3": "Asistas", "4": "Atusa", "5": "Basuco", "6": "Beati", "7": "Bisogno", "8": "Boyado", "9": "Calidum", "10": "Colore", "11": "Convold", "12": "Cosa", "13": "Culor", "14": "Dimmer", "15": "Ensaya", "16": "Falua", "17": "Farkling", "18": "Fatos", "19": "Fezzle", "20": "Filo", "21": "Foresta", "22": "Huesio", "23": "Husmes", "24": "Huyan", "25": "Ideo", "26": "Jarklin", "27": "Lavark", "28": "Levex", "29": "Litore", "30": "Loro", "31": "Lotta", "32": "Maesky", "33": "Mercato", "34": "Molti", "35": "Motus", "36": "Mucca", "37": "Nigrum", "38": "Onda", "39": "Padre", "40": "Partia", "41": "Perso", "42": "Picola", "43": "Randas", "44": "Satid", "45": "Scala", "46": "Scrittle", "47": "Seges", "48": "Selor", "49": "Sensum", "50": "Sino", "51": "Soldi", "52": "Strano", "53": "Stringa", "54": "Tirare", "55": "Tutto", "56": "Upglow", "57": "Valize", "58": "Valsky", "59": "Vita", "60": "Vubes", "61": "Wavefire" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "10", "choices": { "0": "All [Collage]", "1": "None", "2": "Avalanche", "3": "Black Star", "4": "Helios", "5": "Hydracore", "6": "Hypnosis", "7": "Killstreak", "8": "Nemesis", "9": "Night Blade 4", "10": "Paladin", "11": "Seringe 4", "12": "Serpent", "13": "Terra 4", "14": "Victory", "15": "Yellowstone" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "11", "choices": { "0": "All [Collage]", "1": "None", "2": "Cine Basic", "3": "Cine Bright", "4": "Cine Cold", "5": "Cine Drama", "6": "Cine Teal Orange 1", "7": "Cine Teal Orange 2", "8": "Cine Vibrant", "9": "Cine Warm" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "12", "choices": { "0": "All [Collage]", "1": "None", "2": "12 Years a Slave", "3": "1917", "4": "Ad Astra", "5": "Aladdin", "6": "Ant-Man", "7": "Aquaman", "8": "Avengers Endgame", "9": "Baby Driver", "10": "Bad Boys for Life", "11": "Beauty and the Beast", "12": "Black Panther", "13": "Bohemian Rhapsody", "14": "Bombshell", "15": "Captain Marvel", "16": "City of God", "17": "Creed 2", "18": "Doctor Strange", "19": "Dunkirk", "20": "Fight Club", "21": "Ford v Ferrari", "22": "Green Book", "23": "Greyhound", "24": "Inception", "25": "I Tonya", "26": "Jojo Rabbit", "27": "Joker ", "28": "Jumanji The Next Level", "29": "Jurassic World Fallen Kingdom", "30": "Justice League", "31": "Kingsman The Golden Circle", "32": "Knives Out", "33": "La La Land", "34": "Little Women", "35": "Logan", "36": "Mad Max Fury Road", "37": "Marriage Story", "38": "Moonlight", "39": "Mother!", "40": "No Time to Die", "41": "Once Upon a Time in Hollywood", "42": "Parasite", "43": "Pirates of the Caribbean", "44": "Rocketman", "45": "Separation", "46": "Sicario", "47": "Spider-Man Far From Home", "48": "Spotlight", "49": "Star Wars The Rise of Skywalker", "50": "Sully", "51": "TENET", "52": "The Darkest Hour", "53": "The Dark Knight", "54": "The Gentelmen", "55": "The Grand Budapest Hotel", "56": "The Hurt Locker", "57": "The Irishman", "58": "The Lighthouse", "59": "The Lobster", "60": "The Martian", "61": "The Revenant", "62": "The Shape of Water", "63": "The Social Network", "64": "The Two Popes", "65": "The Way Back", "66": "Thor Ragnarok", "67": "Top Gun Maverick", "68": "Uncut Gems", "69": "Underwater", "70": "Venom", "71": "War for the Planet of the Apes", "72": "Wolf of Wall Street", "73": "Wonder Woman", "74": "X-Men Dark Phoenix", "75": "Zombieland Double Tap" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "13", "choices": { "0": "All [Collage]", "1": "None", "2": "7Drk21", "3": "BC Darkum", "4": "Brown Mobster", "5": "Cold Ice", "6": "Dark Man X", "7": "Film GB-19", "8": "Formula B", "9": "Gremerta", "10": "Hitman", "11": "J. Wick 21", "12": "London Nights", "13": "Louetta", "14": "Nightlife", "15": "VFB 21", "16": "Vintage Mob" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "14", "choices": { "0": "All [Collage]", "1": "None", "2": "Bright Green", "3": "Crisp Romance", "4": "Crushin", "5": "Frosted Beach Picnic", "6": "Just Peachy", "7": "Late Afternoon Wanderlust", "8": "Lush Green Summer", "9": "Magenta Coffee", "10": "Minimalist Caffeination", "11": "Mystic Purple Sunset", "12": "Nostalgia Honey", "13": "Spring Morning", "14": "Toasted Garden", "15": "Winter Lighthouse" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "15", "choices": { "0": "All [Collage]", "1": "None", "2": "KH 1", "3": "KH 2", "4": "KH 3", "5": "KH 4", "6": "KH 5", "7": "KH 6", "8": "KH 7", "9": "KH 8", "10": "KH 9", "11": "KH 10" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "16", "choices": { "0": "All [Collage]", "1": "None", "2": "Hackmanite", "3": "Herderite", "4": "Heulandite", "5": "Hiddenite", "6": "Hilutite", "7": "Howlite", "8": "Hypersthene" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "17", "choices": { "0": "All [Collage]", "1": "None", "2": "Deep Skin Tones 2", "3": "Deep Skin Tones 3" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "18", "choices": { "0": "All [Collage]", "1": "None", "2": "Moviz 1", "3": "Moviz 2", "4": "Moviz 3", "5": "Moviz 4", "6": "Moviz 5", "7": "Moviz 6", "8": "Moviz 7", "9": "Moviz 8", "10": "Moviz 9", "11": "Moviz 10", "12": "Moviz 11", "13": "Moviz 12", "14": "Moviz 13", "15": "Moviz 14", "16": "Moviz 15", "17": "Moviz 16", "18": "Moviz 17", "19": "Moviz 18", "20": "Moviz 19", "21": "Moviz 20", "22": "Moviz 21", "23": "Moviz 22", "24": "Moviz 23", "25": "Moviz 24", "26": "Moviz 25", "27": "Moviz 26", "28": "Moviz 27", "29": "Moviz 28", "30": "Moviz 29", "31": "Moviz 30", "32": "Moviz 31", "33": "Moviz 32", "34": "Moviz 33", "35": "Moviz 34", "36": "Moviz 35", "37": "Moviz 36", "38": "Moviz 37", "39": "Moviz 38", "40": "Moviz 39", "41": "Moviz 40", "42": "Moviz 41", "43": "Moviz 42", "44": "Moviz 43", "45": "Moviz 44", "46": "Moviz 45", "47": "Moviz 46", "48": "Moviz 47", "49": "Moviz 48" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "19", "choices": { "0": "All [Collage]", "1": "None", "2": "Cold Simplicity 2", "3": "D and O 1", "4": "Retro Summer 3", "5": "Subtle Yellow", "6": "Teal Moonlight", "7": "True Colors 8", "8": "Vintage Warmth 1" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "20", "choices": { "0": "All [Collage]", "1": "None", "2": "Analog Film 1", "3": "Atomic Pink", "4": "Beach Aqua Orange", "5": "Beach Faded Analog", "6": "BW but Yellow", "7": "City Dust", "8": "Dark Orange Teal", "9": "Day to Night King's Blue", "10": "DuoTone Blue Red", "11": "Faded Pink-ish", "12": "Flat Blue Moon", "13": "Honey Light", "14": "Infrared - Dust Pink", "15": "Neutral Pump", "16": "Shade King's Ink", "17": "Sunset Aqua Orange", "18": "Sunset Intense Violet Blue", "19": "Sunset Violet Mood", "20": "Violet Taste" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "21", "choices": { "0": "All [Collage]", "1": "None", "2": "2-Strip Process", "3": "Aqua", "4": "Aqua and Orange Dark", "5": "Berlin Sky", "6": "Blues", "7": "Black & White-1", "8": "Black & White-2", "9": "Black & White-3", "10": "Black & White-4", "11": "Black & White-5", "12": "Black & White-6", "13": "Black & White-7", "14": "Black & White-8", "15": "Black & White-9", "16": "Black & White-10", "17": "Chrome 01", "18": "Cinematic-1", "19": "Cinematic-2", "20": "Cinematic-3", "21": "Cinematic-4", "22": "Cinematic-5", "23": "Cinematic-6", "24": "Cinematic-7", "25": "Cinematic-8", "26": "Cinematic-9", "27": "Cinematic-10", "28": "Classic Teal and Orange", "29": "Earth Tone Boost", "30": "Fade to Green", "31": "Film Print 01", "32": "Film Print 02", "33": "French Comedy", "34": "Green Blues", "35": "Green Yellow", "36": "Landscape-1", "37": "Landscape-2", "38": "Landscape-3", "39": "Landscape-4", "40": "Landscape-5", "41": "Landscape-6", "42": "Landscape-7", "43": "Landscape-8", "44": "Landscape-9", "45": "Landscape-10", "46": "Lifestyle & Commercial-1", "47": "Lifestyle & Commercial-2", "48": "Lifestyle & Commercial-3", "49": "Lifestyle & Commercial-4", "50": "Lifestyle & Commercial-5", "51": "Lifestyle & Commercial-6", "52": "Lifestyle & Commercial-7", "53": "Lifestyle & Commercial-8", "54": "Lifestyle & Commercial-9", "55": "Lifestyle & Commercial-10", "56": "Moody-1", "57": "Moody-2", "58": "Moody-3", "59": "Moody-4", "60": "Moody-5", "61": "Moody-6", "62": "Moody-7", "63": "Moody-8", "64": "Moody-9", "65": "Moody-10", "66": "Nature & Wildlife-1", "67": "Nature & Wildlife-2", "68": "Nature & Wildlife-3", "69": "Nature & Wildlife-4", "70": "Nature & Wildlife-5", "71": "Nature & Wildlife-6", "72": "Nature & Wildlife-7", "73": "Nature & Wildlife-8", "74": "Nature & Wildlife-9", "75": "Nature & Wildlife-10", "76": "Oranges", "77": "Portrait-1", "78": "Portrait-2", "79": "Portrait-3", "80": "Portrait-4", "81": "Portrait-5", "82": "Portrait-6", "83": "Portrait-7", "84": "Portrait-8", "85": "Portrait-9", "86": "Portrait10", "87": "Purple", "88": "Reds", "89": "Reds Oranges Yellows", "90": "Studio Skin Tone Shaper", "91": "Vintage Chrome" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "22", "choices": { "0": "All [Collage]", "1": "None", "2": "AnalogFX - Anno 1870 Color", "3": "AnalogFX - Old Style I", "4": "AnalogFX - Old Style II", "5": "AnalogFX - Old Style III", "6": "AnalogFX - Sepia Color", "7": "AnalogFX - Soft Sepia I", "8": "AnalogFX - Soft Sepia II", "9": "PictureFX - Faux Infrared B&W1", "10": "PictureFX - Faux Infrared Color P2", "11": "PictureFX - Faux Infrared Color P3", "12": "PictureFX - Faux Infrared R0a", "13": "PictureFX - Faux Infrared R0b", "14": "PictureFX - Faux Infrared YP1", "15": "GoldFX - Bright Spring Breeze", "16": "GoldFX - Bright Summer Heat", "17": "GoldFX - Hot Summer Heat", "18": "GoldFX - Perfect Sunset 01min", "19": "GoldFX - Perfect Sunset 05min", "20": "GoldFX - Perfect Sunset 10min", "21": "GoldFX - Spring Breeze", "22": "GoldFX - Summer Heat", "23": "TechnicalFX - Backlight Filter", "24": "ZilverFX - B&W Solarization", "25": "ZilverFX - InfraRed", "26": "ZilverFX - Vintage B&W" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "23", "choices": { "0": "All [Collage]", "1": "None", "2": "Black & White 01", "3": "Black & White 02", "4": "Black & White 03", "5": "Black & White 04", "6": "Black & White 05", "7": "Black & White 06", "8": "Cinematic 01", "9": "Cinematic 02", "10": "Cinematic 03", "11": "Cinematic 04", "12": "Cinematic 05", "13": "Cinematic 06", "14": "Cinematic 07", "15": "Classic Films 01", "16": "Classic Films 02", "17": "Classic Films 03", "18": "Classic Films 04", "19": "Classic Films 05", "20": "Landscape 01", "21": "Landscape 02", "22": "Landscape 03", "23": "Landscape 04", "24": "Landscape 05", "25": "Modern Films 01", "26": "Modern Films 02", "27": "Modern Films 03", "28": "Modern Films 04", "29": "Modern Films 05", "30": "Modern Films 06", "31": "Modern Films 07", "32": "Night 01", "33": "Night 02", "34": "Night 03", "35": "Night 04", "36": "Night 05", "37": "Urban 01", "38": "Urban 02", "39": "Urban 03", "40": "Urban 04", "41": "Urban 05", "42": "Vintage 01", "43": "Vintage 02", "44": "Vintage 03", "45": "Vintage 04", "46": "Vintage 05" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "24", "choices": { "0": "All [Collage]", "1": "None", "2": "Amstragram", "3": "Amstragram+", "4": "Autumn", "5": "Cinematic Lady Bird", "6": "Cinematic Mexico", "7": "Dark Blues in Sunlight", "8": "Delicatessen", "9": "Expired 69", "10": "Faded Look", "11": "Faded Print", "12": "Hypressen", "13": "Magenta Yellow", "14": "Metropolis", "15": "Modern Film", "16": "Newspaper", "17": "Night Spy", "18": "Progressen", "19": "Prussian Blue", "20": "Seventies Magazine", "21": "Street", "22": "Sweet Bubblegum", "23": "Sweet Gelatto", "24": "Taiga", "25": "Tarraco", "26": "Unknown", "27": "Uzbek Bukhara", "28": "Uzbek Marriage", "29": "Uzbek Samarcande", "30": "Velvetia", "31": "Warm Vintage", "32": "Whiter Whites" }, "visibility": "2" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "25", "choices": { "0": "All [Collage]", "1": "None", "2": "Going for a Walk", "3": "Good Morning", "4": "Nah", "5": "Once Upon a Time", "6": "Passing By", "7": "Serenity", "8": "Smooth Sailing", "9": "Undeniable", "10": "Undeniable 2", "11": "Urban Cowboy", "12": "We'll See", "13": "You Can Do It" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "26", "choices": { "0": "All [Collage]", "1": "None", "2": "Arabica 12", "3": "Ava 614", "4": "Azrael 93", "5": "Bourbon 64", "6": "Byers 11", "7": "Chemical 168", "8": "Clayton 33", "9": "Clouseau 54", "10": "Cobi 3", "11": "Contrail 35", "12": "Cubicle 99", "13": "Django 25", "14": "Domingo 145", "15": "Faded 47", "16": "Folger 50", "17": "Fusion 88", "18": "Hyla 68", "19": "Korben 214", "20": "Lenox 340", "21": "Lucky 64", "22": "McKinnon 75", "23": "Milo 5", "24": "Neon 770", "25": "Paladin 1875", "26": "Pasadena 21", "27": "Pitaya 15", "28": "Reeve 38", "29": "Remy 24", "30": "Sprocket 231", "31": "Teigen 28", "32": "Trent 18", "33": "Tweed 71", "34": "Vireo 37", "35": "Zed 32", "36": "Zeke 39" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "27", "choices": { "0": "All [Collage]", "1": "None", "2": "City 7", "3": "Coffee 44", "4": "Date 39", "5": "Day for Night", "6": "Denoise Simple 40", "7": "Desert Gold 37", "8": "Directions 23", "9": "Drop Green Tint 14", "10": "Elegance 38", "11": "Golden Night Softner 43", "12": "Golden Sony 37", "13": "Green 15", "14": "Happyness 133", "15": "HLG 1", "16": "Industrial 33", "17": "Morning 6", "18": "Morroco 16", "19": "Night King 141", "20": "Rest 33", "21": "Shadow King 39", "22": "Spy 29", "23": "Thriller 2", "24": "Turkiest 42", "25": "Vintage 163", "26": "Wooden Gold 20" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "28", "choices": { "0": "All [Collage]", "1": "None", "2": "Apocalypse This Very Moment", "3": "B-Boyz 2", "4": "Bob Ford", "5": "Life Giving Tree", "6": "Moonrise", "7": "Saving Private Damon", "8": "The Matrices" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "29", "choices": { "0": "All [Collage]", "1": "None", "2": "Blue Architecture", "3": "Blue Hour", "4": "Cold Chrome", "5": "Crisp Autumn", "6": "Dark And Somber", "7": "Hard Boost", "8": "Long Beach Morning", "9": "Lush Green", "10": "Magic Hour", "11": "Natural Boost", "12": "Orange And Blue", "13": "Soft Black And White", "14": "Waves" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "30", "choices": { "0": "All [Collage]", "1": "None", "2": "Cinematic Forest", "3": "City", "4": "Darkness", "5": "Hallowen Dark", "6": "Sea" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "31", "choices": { "0": "All [Collage]", "1": "None", "2": "60's", "3": "60's (faded)", "4": "60's (faded alt)", "5": "Alien green", "6": "Black & White", "7": "Bleach bypass", "8": "Blue mono", "9": "Cinematic-01", "10": "Cinematic-02", "11": "Cinematic-03", "12": "Color (rich)", "13": "Faded", "14": "Faded (alt)", "15": "Faded (analog)", "16": "Faded (extreme)", "17": "Faded (vivid)", "18": "Expired (fade)", "19": "Expired (polaroid)", "20": "Extreme", "21": "Fade", "22": "Faux infrared", "23": "Golden", "24": "Golden (bright)", "25": "Golden (fade)", "26": "Golden (mono)", "27": "Golden (vibrant)", "28": "Green mono", "29": "Hong Kong", "30": "Instant-C", "31": "K-Tone Vintage Kodachrome", "32": "Light (blown)", "33": "Lomo", "34": "Mono tinted", "35": "Muted fade", "36": "Mute shift", "37": "Natural (vivid)", "38": "Nostalgic", "39": "Orange tone", "40": "Pink fade", "41": "Purple", "42": "Retro", "43": "Rotate (muted)", "44": "Rotate (vibrant)", "45": "Rotated", "46": "Rotated (crush)", "47": "Smooth crome-ish", "48": "Smooth fade", "49": "Soft fade", "50": "Solarize color", "51": "Solarized color2", "52": "Summer", "53": "Summer (alt)", "54": "Sunny", "55": "Sunny (alt)", "56": "Sunny (warm)", "57": "Sunny (rich)", "58": "Super warm", "59": "Super warm (rich)", "60": "Sutro FX", "61": "Vibrant", "62": "Vibrant (alien)", "63": "Vibrant (contrast)", "64": "Vibrant (crome-ish)", "65": "Vintage", "66": "Vintage (alt)", "67": "Vintage (brighter)", "68": "Warm", "69": "Warm (highlight)", "70": "Warm (yellow)" }, "visibility": "0" },
      { "type": "int", "name": "Thumbnail Size", "default": "512", "min": "0", "max": "1024", "pos": "32", "visibility": "1" },
      { "type": "separator" },
      { "type": "float", "name": "Strength (%)", "default": "100", "min": "0", "max": "100", "pos": "33" },
      { "type": "float", "name": "Brightness (%)", "default": "0", "min": "-100", "max": "100", "pos": "34" },
      { "type": "float", "name": "Contrast (%)", "default": "0", "min": "-100", "max": "100", "pos": "35" },
      { "type": "float", "name": "Gamma (%)", "default": "0", "min": "-100", "max": "100", "pos": "36" },
      { "type": "float", "name": "Hue (%)", "default": "0", "min": "-100", "max": "100", "pos": "37" },
      { "type": "float", "name": "Saturation (%)", "default": "0", "min": "-100", "max": "100", "pos": "38" },
      { "type": "choice", "name": "Normalize Colors", "default": "0", "pos": "39", "choices": { "0": "None", "1": "Pre-Normalize", "2": "Post-Normalize", "3": "Both" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "40", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "41", "visibility": "0" },
      { "type": "value", "value": "0", "pos": "43", "visibility": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Note: The color LUTs proposed in this category come from:\n" },
      { "type": "value", "value": "0", "pos": "44", "visibility": "0" },
      { "type": "note", "text": "<center><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAgCAMAAAA7dZg3AAADAFBMVEUAAAAGBgYwHyUFBAQMDAwuHSMQDg8+LTMICAg2JStDMTfmu5gKBgfs6evgs5DipopINz06KS/tzrnnuarUmGxSQEVHOTE4JyNHIxggEBMVCg4NBwj29fXmx8Pu0rzoyrPlyLHoxKzgtKTdr5/pvpzjuY7ep4ritIjbooXgpYTgtYPcn4PAlYPZnIHYmn7NkHS6iXS7gGevc1mOVUhVRUiWW0GHSjM4Jy0+LyscGB4TCQkoBwk2Cgju7e7z1NDuzcjnx8bqzMXn0b/lxbvotaPit5PlsZLYrYvnqouYjInmrYXjq3/cnH/NkH/iqHzTl3zfpHnanHneona+kXCignDGimvHhWvVi2Z+Z2bMkWW3el6ldl3RflzAgli4bFadXlRrXVNvVlOoak+vY09hU0tYRkuhW0NOPUNZSUB+Tz5URDp2RzVcQDVqPi5yOy5WNihHLyAdFxcrChNCGA4aCQphCAjw6unry9HyzMrrxL/wxbfuyrLIr6/iqqWspqXnvaTtwqDnt5/mtpjlr5jbqpbfrY/ftYvFm4e5mYWWf4HYoYDEi3uPg3nGm3jYjXTEkXHOi3GFdXDDjm/ThW+6e2+vfWzSlGnakWmzdWiZc2fOi2PGe2HCh1uoaVt2Y1iZa1fBdlZ4VFOIXlFbSlCUWEyHWEhmS0aST0WBRDmPSzhvQjJaPCl3QChmNii6EiiiFyY0ISGQEB+bCxswHBlcDxh3CRIgDBEzEQ7g3Nzc3Nzu4tbevcPw1L7SyL3TrqzUq5mamJnCp5XCp5TZpJDroonQlYXon4S+hoOJgYPqnX3clHzAlHqBdHbboHTBgnTYnXG+f3FxZm+6j216YGnLhWfUg2WlcmSzcGSWa2N3ZmPEiV3IeliJXFW2e1HKdFGmVVGSYEyGU0toTUugaEqsYUpwVEqhYEh5V0Z7U0bIYUOQYUN/KUNIPkKGTD9vQzyJQjppPDhWOTWZMC7AGC0qJyhfLyRdLyA/IBgKBxgwJhcvIRcsEhdFKRSCDRRICw5SCAxjV0wNAAADGElEQVQoz23NBUxbYRAH8O9JX1+FlrrhMIa7O8PGcN1wBgx3xtzdBXd3GQ5zd3d3d3d/LcmyLLvkkrv/L5cD9nIJqbF8MguGYZIgORkmwZbkjZ5TklpWgmlrvvJjrWC+FQmGE9YkUGGYRTYza0yaMgnMSxVZ8QdYG80oMCzg95JIMIVFpVLlCfKMPV4jgGFLEkyEFBJJamQyVd7ME2yx35FqRaFQWNKdSiZbUiyJQT6JNwnIKRy6/jL9TUtN8Iq9e1YYm9Q21NdPvsLj8SYDua1HJq7za7iopqKswlZ119TW2jd355yV5xoJGjfxyQVmxC62Enscez5jkdtCzkxFJ6dtepeB/azImwFaZ1W2KykvXLreJDxoCcdZcfp0R06B9CpybFCQipIqw+NYxO1m8zg/jouiotPcOiDnrH1Qe+1aZSVVLcMDh8+UW8SFaKrrFdemGIE5b33Ga2hoqLKV3Zeu8lle1J6oubg4SyjM0wPPvt3Zr0Fzmz97Ns1jlWFoUVzoIjXT7C+f7PSAnWhA352h47ZgAc1D08/QUH/xLE5zRuf3vAIwbJPtPWECgzZmLJOppau7xMVxhpppZkZ38HIgpqcH+MtoPJPpfdTVwcFR3byrK2XzNCBBOku4XsukpO29odDV2WGm+kMLi2AFBYAiwmsV/jq0MTq+3POF61xdZqipJ7a/uLubIMg2MbLUl7FM5wQ3QFfXIISpv9rcIoslP4+gqd3RpYFeXr5cAwMDfZ+Tp8ti0l7nWL9/DlCcPtIWdSrQPzAsJHTDeqOy6hjTjF4Ms7YGGHGWZ14Rxi2JqqqLvx9/KcY0LTsHQzFMSnRb4b0bYVejqioro2+1ZnZ8HBajECQGOIqi4qnCpybG4eHR8a2v2jI/iDAUgXARQHAcsxHTR9IiVhsZmzR1ZAls6CiOQLk9ACAQKpFAuERQbmRc3ZSSboNDOA5Bg+8AABAKAQhCEIz34NHj5BxIVrl9mwgiYqKBtFAMQmRC/9UvJYAgyKjIFpnYDfX3/In+NsQ2/0ff4L8w+sAufyhX9F+S/My3/Wz9Gwm+5rUIT8ACAAAAAElFTkSuQmCC\">  <a href=\"https://www.abigailgonzalez.com/\">Abigail Gonzalez - FreshLUTs</a></center>" },
      { "type": "value", "value": "0", "pos": "45", "visibility": "0" },
      { "type": "note", "text": "<center><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAADAFBMVEXU1NTV0cfT0MXNyb6fmo7V0cvX08i2trza1tDX083UzsHQx7YSDxHW1NTb19PMysjKxb68uKqdnJ1MRUjO0dnKzdna2NfBws3BwcnTz8fOycHIwLXEu6+hn6BkWVdBPD8uKCvU1+DX1NHT0dHIydDZ1c3PzMu9vsm9vcPQzcLJxsK1tcG4uMDTzL3Iw73OyLvLw7nNwK+sqau+tqmZl595dntoZWZsWlpVUVNVTUxIQ0M6NDclJCchICQgHh8dHB4FBAXW2+TRz8/Y1MnKyMXNxr3JwrjOxbe2tLOsrLLIwKyjpKzFuqq7tai5s6SNi4+emI2clIiLgH1zcHt8dHJxbXJ4Yl1ZS0hQR0gtIiUYFxoNCwzh4+bQzs24ucXV0MTRzMSws8TIwrrTyrmurrjMxLXFvrSxsLTLw7KoqbKlpKien6jHvKePjpmZmJaWkpCIhYySjYuOiIaZjYWIgYOCfHungHiTfXB3cXB2aGKDa1xnUlFUREh3T0MzLzM5LzA6JigoHR8ZFRfP0t3f3dvCx9jT0tbEx9TT09G7vs/Fxs24vM2jqsbKxru7ubaxra60r6eop6ehoKa5qZqVk5qblZWlmpPGto6dloqjlIaAf4OcgHqWe3mBd3h3bWuMcmqDcGZqYWBaV1uDYVN4X1NfTk5tVUo6OT5ZQD1MPDpANDNILCvm6u3i5urR1N3W1tbKzNPU0M6wts7LyMvDwcPSy7+xsru+urWqqK/AtqyamqzOrqq8rqm7pqjayafDvKW3rqG7vJ+zqp+upp/Ir5ivpJetoZewlZSJipSymI24kYuvi4iTin6RhXqvg3iScnFtaG+YfG5hYWqXcWRuZWR9ZmGMb2BhXFuKYFlzXVhoW1RaVVJhTEJOQ0JIPj9nQz3s7+7Dy925wdq+x9nBvb24srbYyq63s66rq63Qv6i9qKTZxqKqn6LFup3Lu5esr5aej5bjx4yDgoyqnoeig4a7qYCfjoCbi3qkiHh5amagcWN/XmNKS1mEXExqRkNuRDpq42GmAAAD9klEQVQ4y0XRZVRTYRzH8YfpHBtzzAUbsQIcsEA21w0ijXSjlHR3p510d5fd3d3d3d3ddxw9ft/+Pud/zz0PSElJwaWeOJGZ6eXV5Ok5/n+enp5NXl5ewMnJafm+g/v37dkzw93dfdLfpkK5u8+AAhtYLPutU7eaxBg7LFs27l9ToBwdo6Pj4oC9vr69iYmxzfRxVlYwWEy6b0aVoY4ODAZDobjcKD09wGIy9bW7kRVMB87Ku3xdcj0dOWGCDoTCUFwI2M+cyYpxgHZDOBJJ6aBKZTKp9WTktGmQCUONAbtI6IB21zWtz/wqkcnwj3V1J0+eBp0Jm6IH9O3sIh1sjLQ7Zm3l9mOdVwvxVZh/AmUFAbNIh+nhcKQpxsB0/fZjp84XyBowkNAC6DNA38zMOtIoHA7tc9fuPHw851LBtR2Y8Og4Fxc3N7cpcAgstF5mZGhqYDA31G5nW2th4dWL4RiHR7sO8FxckkyQWoDFjoH5hIeHPxz3P93lv1nX5vnbp4de73WBABNoAdxg/nqSBb/94umiInE/hb85apfe+727eW5wMBMALJYZSjAnW8ya7SH+XiSn+XngKpebJO1O4r2CgNlEgGWFhhJJi8nkWQJqEQ3vc0ZIiXV64hQdx0uaqgPAxInWTMZK4mJzS/NZbB+xWPguTeCMQCQkxBgbG48zHANzCSuJa9ZYkjikbf5ZyYIt0D47gWINC4PeTAuwd+bYziOYW3LI5hHJiRwEYgsC4VpNWY6CggFIrF4xhzhv1WIOmWy5yZVjsYDEdmW78nHVXC5340YIrF7BWDBvCXRhQ32qd3osAvqbxNnOfBxfz9HR0QaA+bYM0oJFi+YQLCy98096p1NiN8UnxnNicdW1tZ+aDwFge/d+xKIlEbYEEqIjv6E+D+fs7Jp2hF2Do3xuPlhQAJg72OuWLl1HtCVa1Hg/qEwVCeLjhXSVpKYOFxXFG+gDz3Jaty29t4TBILJ9qb77M0QeAgFNHRxcl5z6srGxbwAcPdv2JuJICmMVOZsaIM/PvixMSxsMRquTPYS1Hxu/nAWtnW0vqlr4CXmBtJISekC3RCQS9SiUNJ8WYW7u0QM80OmdleEbKJUGyvuHRuSBeLG/f++AQlE6iu++MZTb2wHEed1U/K1bN/tzTn37WUyT3i4u/j2sVKvKy+hB5ddunAGBFy5QAwKaL13JOX+l+HZQRdnoaBm9RKGoGBkevtmVKwM+Pnh8aUB+V2lhX++voSANGh2iQSuVwWjqycymBj8V+JHooZS2l44Eo4PKystDNJqQkBB0j192VkZWtm+7Ag0GW+okSppcTqfTg1TqCnSFWqVSlwxKzp3z8xP1aDR/AFuiV5UIiV63AAAAAElFTkSuQmCC\">  <a href=\"https://freshluts.com/users/1\">Alex Jordan - FreshLUTs</a></center>" },
      { "type": "value", "value": "0", "pos": "46", "visibility": "0" },
      { "type": "note", "text": "<center><a href=\"https://freshluts.com/users/10185\">Berat - FreshLUTs</a></center>" },
      { "type": "value", "value": "0", "pos": "47", "visibility": "0" },
      { "type": "note", "text": "<center><a href=\"http://fixthephoto.com/free-cinematic-luts\">Free Cinematic LUTs</a></center>" },
      { "type": "value", "value": "0", "pos": "48", "visibility": "0" },
      { "type": "note", "text": "<center><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADkAAAAgCAMAAACfHyDkAAAC9FBMVEUUITIXITMfITUcITQfIzYhITYZIDNBMHbKPi/HKE3HLkPGKn9BL3PIMj/JODXJOjLHJ1TKRC3HJXxrOIfIJnZFLm/HKFzHK0fKPDDHJ23HJ2XINDzJNTnKQS7FLoJpPXYmJUgiJEEeIjrJNzcrJDTKSS7KQy1xOot1QIdiNIRWMH1KMHlFL3UuJlAmIjbNXTWKR5GFRpB8QY52PYtmNYbFMoRdMoHHJ357QHpPL3pdOHZQMHUpJ08cIz7MXDzNYTdKJjbKQC7ENYbHLYBfNH1TMHpaNHlVNHZKMHJGLnJCLGrHKGrHKGHFT1YrIju+NzfNVDXKRDUzKTVaLDLLTDCRSZKBRJCCRInGVYZuPYR+QYJyP37IJXrIJ3NQMnE8LW2FR2nIT2bHKklCI0MqJkHOWDfIO4FnOYBYMH9qPHyXSXpjOnnBJ3Z2QXJbM3FML2WUTGMzKl7BKFktKlg0KFg2KFJkJVJALU/KSU68KE7IM0szKkouJUeLJUXIQELMUDsZIzmuVDifUDiXLzh+QzeNSTZLMTaZSZJ8Q4vJToe+NIbKSIOyMX7BKX2kTHqsLnrLSXdvPnZUM3BvNm9gOGyNSWtWNGtLLWuFMGc4LGeUK2evKWdyNWS7UGBXM2A/Kl/JPV5IMVt3JFmqVVSjMUy9WEbLVkO3LkJsJEE1JEDJPz08Ijk1IzZjOTU+LTWGMTPMUTLJQDB/NjCgOS+/QC6kSI+HRYqZR4e4QIe1UoasT4G8MYB1PHqGOnfFUnWSOnWaMHTILnDJO2/KRm22KWynS2qlLWqeS2hnMmfIL2ClJ16EMVlOL1m4VlO3LFKvJlLJQE2zWExfN0vMVUq/LUZ6JkTEXUDLST2uND2VTjnDXji4VzhvQDZaNzVpODS1QC6sPYefP4KfP4FzNni2Jne6UnOkR3GqNHBqMXCuT2WIJGBlKlyxUlmMQFjHK1aIJVWdS1StTU+RM05VJE5zP0WCJEJYI0BTIzzFWTSmNzHHTC7FQC5jTTRlAAAEvUlEQVQ4y6XTdVRTcRTAcd7e3htjU8E5kBkLN2ADBgiyMWCEdJdSSiMCEkqISimK3d1SAlIidnd3d3d3/uP9bXAQD/qHfv/hnnv4vPvgbBqUzqN2EtGh/5A4jncCCaEwKKjx1s2JN4PUyu/8tWsNQSpS+3HCpFIpSKiDCWosvXV74qQJ4687ODiYmY1vRHD0inMwTwInPRlz2czsa8MvkqAGlTYgceMGGLPEgPUhISEi0ffbCMoXOqwXie4AXCWvMBOJRBtAoqSlEyeMVyqViYmJASBEOn36GBgY6KjaQFBHb5ZXBahG6YLQGGWIjs7GYLXkn69SFhVdCQwMbG7uqYlycuoDIb8xmDouIiJTKYLRkTi5ObIiUcfAoEVIaJAkbur1du26fv26orqhekKaKPAtwoTI0LRzAU5OzU3C0aERMZdDnJx+BFMoIE3Z7HeFvaDevXv3gwcg73/Vv5UHU1dZRGYqAzU17zj6RYbOrQiAZYsQSYGXJ/tVoVYXFPDqyvcnVsx/+mBPoOr6N+E4IyNuVRGMTUSZRWTMWtj7w0mQdibGnosq9bRUnWAyaTQTYxvr/lsK0Xn/YGLRlORM+GO6+tcnwDNOFcG2RKiWTGMbj6On4/Sgi0fVUsIa/KwQvX0JnAxPO3UF5iYiY0pyzIV1MDpS2qSra9SKMXQ6PS6ucrWpHY+/WmyY4tsF8nfE041SMy/AeLUuPzmc+zIPxhIKDmmQfJDDXaOWjNKmQ5+kJPzPxJaH8rSgEjzfMGmu71kYL1EyLFMX+o7V0qp2xNUSH2lsM9zaPX2ZrjY0pgYncS9xhO/YOHh5R8G8cMWRvLF6etX1Cawk7so82BZIWyUpiAYpdks/7OOjq6s76jPOk1gd8qVDBdIcVmrayrMw1lAyWAo4SaePgZOtkuR5SqzFVm7zl3M4Pj4+Z+KXSnbGrkH3v1DmJSmOxL7W1j5Tn+/iwl2JtgVEq8Qgno21mMVym39Q39vbm3M83eVx7DE4X4DnWLmlxa6BF6khFlspUtD2dB3eJlHZErGVIUuxa8TQofr6+k9m7T7A4XBG1QlsXdxnHfDmcI778cRu3Ef74aUuEaQ6tRSstrZiGYan7hnRAxo6Z84+fX3vN5QcF3f57v0w5uKLrd1T0HZ5PNkmIUQXg7Q04u7tjhoyBPzBeL6tq2L7dHjScsJUYssNGwZjOd4u1ZTvBrK/0dzZMplMrZ9TsofbysMGdh8yIlfgJYlKmcqA0Y/sKKF8F5CDp8hnMFTJHvrZ29q6b5vOkMmW+cHJnWHDGLKZ5STWllqiclggLUJ37RgIMRjlWLarhxx+nTHzA+lpEzVrKiwP12KdSCzDEKS5+f0BfaHZtXy2R9T26TAuo5raeCjChvXtOzOX7FQKFln2tzAfNHmr84ABO3LhQ8metw3GGfH2Xh5s7lQY9xJYJxLiJyE5aNNWZ+clhL2JJ9sjYprzjBdUUxM22/3etGmz47GOsr2E8MHmcHTT3SVUjZEmbPRVZWdjxUxPJg1GLx72R4mNS0avu2UVVcM+mkmDou0wDR5NNS7lY3+UkKBswYKyBNgWL6XRmNEj7WHHZ6LRrhj7q2zPPivLDhyKl5XFK4afv8l/7iccu3t+6IPmuwAAAABJRU5ErkJggg==\">  <a href=\"https://911templates.com/30travel_presets\">30 Cinematic Travel Color</a></center>" },
      { "type": "value", "value": "0", "pos": "49", "visibility": "0" },
      { "type": "note", "text": "<center><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACIAAAAgCAMAAABAUVr7AAAC91BMVEUhISH9DA39+QAhJCkpKSElJSElJDMxMCJFQCE4NyEIXKcmPyIqNSH80gUTJrp8HLEmJ04fOEgzJ0EiLDUhMi8hIib8ahT1phACygX5xwQFsdYbJKUjLj8gNTlfIiw2KyJfWB5oWx38gBhCSdiIG7tyGqsUH6TzEJnsEY49J00dRUr8Nzr31DA+JTAu5i8hKC78xyEzRh/3tBj3rBcArwYFvwRr0gEq1vEBgtEBo8wDcL4TJKxsGqPnEoPlGn/kE3cZVF9HK0ovJjYsLS4xIitTJicqIiYhSiL5mCE+PiFgOSFIRSBWUB/6vB78jBuEcBkHtQj5ywOT3gAAxOAAu9sueMsCZ7UUIbAEU50yN5cdO1dWJUFKJTexKS4nMCr68icvKiNBLSJIMSEiWSBRSSBgSx/76R1lZRyUjhf8dBZg0wj37QMBuAKk4gF81wEBqcyLPskCecj4Q6buOZnWO5IcSXghJXOdJmhoKVptIUgbVz5SJT79jTd59C1HJSv9/Cjg2ya9aSZTMyK/uCEffyAfah5PWh6UGx40Uh00YhuDfRl0dRj6Uhf83QZazgTt9QGD2wAAzOadSOKURNcCrdABw80ksMYtbbgTVLZVHa0bmKtwH6u0FqkLv6CkFpVnM5QZWZPPEocdK4YtNIMacYFjH3BPJ2ruLmkcNWFEJF01JVdTKlUfL1RaJ00HpkH1DT47JzzyijrlfjUfPzL16S7gzSv8fivetijNpSRz7COARSKBJCKXeSGgKCGskyBFkiD3CyBtOB8+VB39+RfU0RbGwxZMbBYMkxFxjQz82gjx1Af43gRGyQEsseIXvN1dStM3aNCGNMYCkMQkbr4DhrhwHrh+PLfBPrNQKbAApq85IK4mZ6MJkp0OaYXxEHgpxHITZmoBtmgZTmD0TzyeFzQ62y1p3Cpm1ypixidXuiXS4yObYSOSUCLLhx5LVx6R7B37nhx9XxyNWBs+dhpA0RlYfRn8MxEUnw3l8gaOywaizgW15gMlxgLHnPo6AAAA/XRSTlP9/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39wCUWrAAAA0ZJREFUOMt103k803Ecx/GFbLNpmTW1piHLJmoSMxlmreauoQO5ReQoldwlUpR03/fpzH3kKDfRfd/3fd/nH31+3x8P80evv5+P9+f72EHoa+i0aVNNU1NlYyCZLCiQE6A2lKAUCAC+Pj71WfOgxvpmp/QgTsAgg0BC/JLj41FPyleeckoP5MCQkkhKiI9bHHd8CGpddXIZoKABM2JqadLyJYvjbO3szuCEyaxOLn+LmT6hTpeAACAWn0SEuYDJZCaXvQklEdVw4cA/FnvD1s5WLOYh8t3AYAEguUlDqCMRO6XqQM+/vnn3Plsxj8e7j+64uQEy0DGpcg8hq6Ez/P2baDbcfTyekZER9hgDORg3cx0dk1p9Z5hRVacf23zJhsul7QFx8GlWVuNKuVz+0XWSuc4kkwYXshrcgZHdNlwazXDPwfgE+HCdmj+/Mxe4umIzNfokIkGdXhAbi4Qh7ejy4iRfmSw99FOtQIDPwGsI6sOXXbi5kwvC8GhhYbGPb2pgICnUvQYnlU0ujkAOjx09bvTtndds8vkSicTUlMMhh+g3CQSjIP9VeiQgc4FMmT1s2KECPl9S6iANCCCS9LK7uzU1Z46aX6WvTJYNp9PpDlKplEh21nM/ux6RFYNJEZutrS3186M6uvyHHDqhxdbVZvhRYSQsvAcnbYgcxsgOayvrpd5augwgZu/DctpVIiN7NGfiz2WfuLhDY5b1IiurA4+NgVAoZqtzwiNVsCL9w/XIBFV20XYvDdzcszeuANHS0dWmgmqtzA4Boq211EtjDmZYHncfJgYHr+3o+v1nAyJp7WHORILqRLb39itzwIg8Nm7cWtLZ+eNXVJQiCjOt/uHY1ziif+ayp6eHx9aRUF6UQpGnAJO2Kgz7MaCZA14aV7ewWJ6eezHSq8iLtrSM/pm2IgcbgWDG+845ligG0CML6G80iNzcD6+zV+M/THTKfpvwvEgUE1OyEJphaRmRG5Hy/BuI/r/ARF1j+11CIUt0azKqNyKiLuXllxYzKhLoFGaObBMK91rMgCy+1qW8OL12DYUKV5SMFqBdDyagnr0CABMDAn8PoMTEzMyMjIzM4OA1ZpTBAh9iMBgVlOlYFApVCfwDpbUmiFdSYzcAAAAASUVORK5CYII=\">  <a href=\"https://rawpedia.rawtherapee.com/Film_Simulation\">RawTherapee Film Simulation</a></center>" },
      { "type": "value", "value": "0", "pos": "50", "visibility": "0" },
      { "type": "note", "text": "<center><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAATEElEQVRYhY1WabBcR3Xu7fbdZ595+6qnp6fF1mLJyLKxvCR4gTJO2RCHUBAqxVKACSRVKUKqQpwQEpIUqaSSmJBKIKQw4GwQFtsYx7Zsgy3J+yZLT5b09jdvljt3v7e3/BhLkS0bcqrr1Lk93dNfn/P1OQd+5ot3uq7ruJZtmLZtGbquaVjXqEERxphgjDEOw6BYLEopNU2DDCc4AZibqTKJozDOYUYIV0yDEAIA+vqcIAAAAEqpN+jzP8+fJ6/bf95SKaVSKs/zguvWarVep7u8vKyAKLsDVs3JQGoa5YzoaZ4pBBwBIX4djjcIhPAcjvPtC4VACCFSSAEA+jAFkAgAkHFm27amQBgGJ4+vfuGP7xgbGb3/3ntvvfU9raQngvjm99y2aXSaDJbHyxVN5vznwLkAVt94U2T48ne8y6Q6pZQQQjVNwxhjjAk0LCNLU4PqXqv9+5/7bNDtrCwuuo7zzFOPRF735AsvPvSDHz773NMcsD27dsCcQUwgAAjCvj43+gLOhvINAT0vNq9FjaCzUYIAACABAABKAEAcRq7rcpZ3vfby4hKSQsPQtZ2KU4IJx2VnGDrPvfLMjtM7FNEMTlPAIIQAqL6+wDdAKXW+PrtGnTcAAIq8btvZ/0EKGLoBhYQKtJobie9ZtiUESJK4TMuiYFAppQZhayGFwoJWLATC7PzQXHj7N43dhcvIazCVOuce3CcWAGkUV8ql5599DihhmDqUQimRpTGq6uHpRadI/upjH4HTozYSXR046k2gnH/8G3jzVtQm59x7/s8QQiCkZZgAgIceeghAKKVkaappGjdyI+gw4d/xzg/e+I4D6+0wzjeE5kL2Rih9cD/nQb2poHObz5FOQqCUiiXQNJdnnV1X7sYABqlHONJ1sbtUwQm8bf/ugWEtjf3p4QpnI0WuXej8cwkGXMDoN8yfv5Gos3JuCikAgLQsLUgjq1QeqU4WZLZry+zTS80sBR0e1Fzn8GJSe+nVR1/tDnEwvOek2rlv2+SWX3j7t+LN+QY6exuhlAJQQgghVBBCzFLXIiRUB6+5YRIYM4iVVF40q5tHCh+54qIJ2eu+8Mi3/uex1S4fFAsnF1/8+TguPPitPIr6E+DsE0NnuelTLFI/0sTs+PQNn/t0Or9YrhqtyDux0Hp6vrevTi8r4GYz/LXrr33+gf/avXXrW934LQ2poAJQvWYAqfoGPnDtjZQSSqmmYUop1TAhRCPEIQ6FuWMaMmDOpsGn7/5vy9JdqxwZymEbA4PF4vTbHJ0OYrX9E18pN6YV4OA8TvwfOaTqZ5k+wyE4a19QxcBrhOkHS6qz7AGon9kyuGFLP/R5BY8MTlzzp3esLTVZ3qsDs43Lperg/NJCK4zhbB1O1RIYqbcQAH/BUED2dX+QfhGViitF++CUkgAALHiJEeCaVsISAHftvToK+eig3s67BmRLQWF807Chh5N7rtBCaSV5aunnOPH6HPM60rxphT9fIymlEvLCmwlTWZwIRiId6lJBYgKAPcnr2khF2d+5b+HYqdWbL7841mGa9zqm/abn/f/l3Hry6vGXHcfRdd1xnEqlgqlmWKbtFGqEh4ZeKo0mgbIMevSeb2tV09GChGFtsPSpHcPX7drPrruuPrgTevF6croZSIAR0ogACmMsmTRNUzCuJDcMgzGW5zmlFGPMOZdSSikJIZxzIQRCSErJOccYkyRJLMvCGEME4iSiXDdNE0oBC1MyitdOeZ2ORzTx06OHc6iIlCNUXWKEB7fX3GsOFMZ2J1ASR5jOCB8y4iTxgmB1fU1Iqet60POllJapr6+v67qu67rneZxzTdOEEH3WM8b6+IQQnHMAAL707ddUKhXbtg3TQADallUpODxLT3ttwrhtEAmkYWu1wYrnd+JOcNXsyPQN75u5+Tfx0CBKY59xphthHslEIAiHh4YwxL7vCyEAVG7B8Xu+YRgQwjRNpZQQQsaYEIIxlmVZH0Sfx0opzjmBQEVhEMVhrVYbbAyMDQ36nfYLR4/MzV1qpD5ypUk0Gaq5mUsG3j8w7tiX7trcEyDXDdBKWNUpKT1HqB3nFYz8Xliv1gaqVc/rrjabEMJmHLu2o5QSQhiGoet6EARKqVKpFPl+nucIIYxxnud5niuleJaROAjLtappWwCAoNcNDNpeXYnarUQwYlFkA9ehjtD8zupFM2PDRbuFiN5rmxpURgkoyvyNhGgq0YGtNASzKFQIzExOUU2DGonjmHMBIcQYJ0nS6/Usy7Jtu91uW7oOLxCEEBkZHdJNm1BN0zTXsW1dO+O1eRQAFiOLMJAFsdB0p1qvmqbZZdkggy29BGEDwBTlvcTAFtcM3vVD3qgPQgjjMKzWa4ZGelEsOQdSpVmmlMIYU0yyOFFKGRrt++a1HogQCKGmaYZhEM/zXAWrdq1YLFZcGwHoNZs6VDCHaZxXTbdaaRDXoUhJySfGR1faAdVYw+hkFAUJ9HVTGkACSRI941mcxYorBGCjXveCk3ES+r2oUChwzpMksW3bMIz+a4IQ9PnUJ5AQQghBCCEaJmEYAgSFELaGoeTtjXVNCiD95om10z+Y17xe2dLD4y/csnXL0Jape3vRTZNz2uZac3VNtNjcFVeHB3Zhv1gYL6yvrikhHcvq9Xq265QLRUJIoz6Upmm/U4/jOE1TCKEQQggOABBCAAAwxlJKAACllNjFUqVSsm3bcmwFoB/4mkYoy4jUvO5y+vBPAM55LqtIGw+jpaOHtm4sFZM178GVpcMnrxwG7H3v9KERojUnrJSt/Nhq7pCCCTyWsuFa8cSrvYh3TMPIsiRJQS6QRJgiAHmmIFRKEYyVUkpKBCEiRApBOs0NJIXIcsGYjrXm4pJrWnkara+36gOz+EMfNUxSM0wdpypXa62Xtw7eELdJ++Cts58eQ6zXm9qcd7r1xuDq+rEiByYXp5pnRocncQhGaha1x3iwIDOhUpFnOVMQU41zlSZpuVztJ8N+sCCE/diRyPNNjFXOBeOuaXU2WmXDVJomkxUfuzzNC+Wx+SQaHR3zC079wIEl6nDJkjhyEB/cvHMyFUUTMsAXH3/C1w19ZBZD6nVDreEAlk2Pj5w60U7ThFJL100JFEREAFUoFNIk6edDIUQ/cXPOOecEAJllCYQKIaRjQggJQx8AkCQbj7z05MtPvSARBFDRHOREd7gKEaVSIJCkNjAi+v0jz11ZGfGQd/iBQwduuk54nmvVY9rjXqsUYM8/GXGU5Uw3DaAky1OogFAAYAokh0oRCAjBAGClFMeIIYgnN88qJSACmGq2bepUO3H8RZ0iHmQ7Ji9abi4N02oY9LCFWK4RRBXKscpSDQBp/vbtt9/y6+8UabO1/KrWKJHRrabMs8yDjkXnn6rOP13Q0BLWgEYExinngGcEKqgAywVAAoB+3yMRhpgghCFCkBCkABRC5mkcNps87LYPPXpooGjCdvKBT+791Wt+2a5OD5TqG2pNmaW3D9WqhCZV0+J2JO25g9vD08umWezixsisvbzalkRMzc78+Gv/dPi7d37g1usPumbZdgMhWnFMNN0mOI4CKSBARs7yftHoF1dCSP+TpFGPKJvqOkWAItTrdiyDYgTmDl4V6fj5b96lgL4daBSHOQHuoI7S7AUPjkrj4CV1/J/Xii98PsnNieHG/NEXUe63FcgWWw2Laq79j4892+7El95YM4uDQa4k1CSEURQpCSRiECqM8blC1u9AOOdIspwARRFESirOmivLrmkAJQZGdxC9QDbX5OZyXra8IbKpWm1g84mm3szU2w9sN3Cef/ITDCnoRhnrFF2rKSGCIGVJ/ZJLGwObrMT45pPHTj/xqNbraRn3Wu1ut6sgNGwrzrMkiRjLAJAYQ4whAH1a58TvrZYNY2O96bquWysYnseIqnSJNaBFsOht2js9eFG08hIsSK+y46XpLUMz9o21BjWs3sRInumFlC7rYdHAq47lrAa8m+um3FD63E3v7d3112g9//aDT39x54Rp7jdQpLmmFxpA5WWkEqwBpQTnQoiciX53xhgjBa68pVeIZfDUXW+RM34L6GJs78yEUbjvyD2P//jep8BPmGGzrIfAQ1LL5+YuW+s1e2dO/+4f/t7HP/5xEfrDwO4ILpnf80OFEZY+MV1sOhPb9sT5yydbq4eeeGXHVZPNLswSjgxNhnkAAEU4jmMAgKZpUrA0TRUAGGO8ZdvbEikIxYZlZl663l6fMvC2rQMyRSWXDu3Y9+xLT0kuXSUBBYKL9vpCGrSBIT714d+YGxu0LRMLmsaEyXR18RjAWthpqSxmANkmbS2cCdJsrRXdsm/EY0YoYOyvRZ7vJbnKUoIRVCoM/DAKEcJSSs/zyILPRkZmBgp61O22lpcgMvZPXWRSm5UabDWmQP/KV+6mjJG0GRbMkLBt5qhlmGNWwdk+zgQPlKR5aNhGvNrbOH3MaQyDNIcgEzK3TGN4YiwKkhdX2seePNzYffXh48uGyDJCLa2INSONfN7PjVyknCGIdYJJa+HJ5ROs4VQwxp1WOy/reWGop/Rx6Af+WvuBH/3H3X9vIzElwS4At43QKQMNDIxohSG098ozH35vIxk+HntDjtZoNFhnJZE5gAaIYC9PDCAK1bppL7qZuv/J07cf4N3FeccumvV6zaUbQTeO4zxnAEJENEqpREQIgQcsXC8WIONpGjRGy4kIj58+PjAxgsfHXXv05POPIFU2RaJTUKMuA/EQNYpDg6DD+S3Xk007FhSwDFqmMEr5Y/d8iyWR1+mGfhjHvkh8RWy9aAZrzSMnlq7aPDYxudnHBHGx3DwTeR5LY8GZkoIQZFDKsrTVXCcMm4Irx6UuwFHau3R0bCXcmH/iPj9xl+ZX3/1bXxgdnDC8bqt1slQdLaeRnBzihQqCenj5xSxFG6tLM9MTNMrrlapVnyyZWPq+z1A3j10NhynP8rhSdpbDxjfuP/rRD206dGI54yAXEYY0z7hpW5ViUULodzbiNENKkizno1U3CTdqhUrPA7CtGARuKrZNTd9z713Pf+lBh4O3v/t9c3MzOcVl2zwhM9xeZ7ax6/gZzdH3TE230iwuVVSWLnXSSBc1EUUZWuoGw3Nj5dIo9LE+PtW+/5k7H3zqioM7aB6vhqnNswRT3TAMgiO/1wvCKE4AIoQQuHlkyMnWM3soVcSQ+UC1knXXkiC47U/+9b4ffu/pI4f87prgHEAAEAUKAgH6L+KeH/1g69wWDSsdAwxhVqj95Ot/891/uLM4UFvrpYteZ//szOryCsRoz+7tbo7++f4H50rux247+HCbm4rDobECiJZP+xnfEIo60GzlvYqlY113SqVSs90Z1NLNg4U0Y1AIBUl55KKdF++8/vqbrr/xVy67/KpqdSDo+r7XM2x7cnriL/78S5fu25fnMSbEsu0wSQlhCjmf+/LfTaBsYKzc6iFk6BUELIeEMvuXex7fMlT78cLidbu2PPzUCX+9WQPijK9ZJo8jGkR5kkcYaBwMwSsmK1wvdGI5SMOSZXQSYGMwNDk3sOfmZrs5MzN92WX78zTMk7BRLSVhZNZKQIpauQABB0Kajs2FIpquAT/RKt//7sNB6/j937rrwRdePjg7uWWsPu8FreU2KtfKoAOAdBSuzk63XtmY3L3tp48c3XP1vhMLnXxt/ujpVZjg9998JZ4q6lmWK5E7FMTIXfbyoNvZdsmB4tS2aqUQ9ZpERJPDVV2DSZpyCJIodixD5IlIY1OnSZRYbjFJ8xQajJOktzY2MLz/2oM3/dI1ztg0JLTabC9HzYVXz4xMNBZPp545e5HNGhP0y//28MFtY8H6Sl1thCEbHyocmB46tLyOp/ZdpyPF/RWK5LHldiq1scGqPTiF7WIS9zrrK73OxtrqysrycpJneZ6ZmoaUgJyxNIVAIQjTJKOY1FlHMyt3fPpDP3v8cDcVOlJGpbJnIG9c9rbxnXtrm/YuPXuk1eny+PQHD+64dv/OA7t3PPfS8YdOrV09OXPS89rdeD7ouYBgP1bjk+PDW/dxarea66MVkwedx555KU2yzdPTm2bmNL2Yc5hnIk/S0OvGQU8wnjNGdYqxZhg6y1LXMqgiPz103/w9X9MNEZ45dfTIA889++LCyqmNxW+gTkzqm4a3XWUOVpbbaxsbq0ZWvnHX5qsvv2RXqfjZ7z9alVTVy44st9sbcKpWiDPRs0d3b5+9ZLqS+t4zR352arXXTgQAGBK6ZXbb1VcenNsyUyraBcemmiJUL5QqQgilBEtDA8GXX3z2e9/5d9Y6owxRhTq3bArNhaADDXvAXU8FhLxHB97lFswzqyJ65clO2vzbD9+Cs/JC75myO/qZr95VLgwV3dIGS+Fko1bCUQB0KGU3ikf2Xn/F3j1f/cs/socbca9nYAQ4j2MmAVAIAwWx4pphpBmHGlUsx5ATCS7eOuJ7goP0dDP6zLVjdaLffVyur5zpEPPihrG9rpta6wyZRN08MY2MFdveQjFY/vztv/Moqo+bJVO3/uDrf2bOn9GHC/8L/iyrdSr9/U8AAAAASUVORK5CYII=\">  <a href=\"https://youtu.be/c8zV6Wcgv8E?si=RHkpzzzYnklbeSji\">Debrup Travel & Films</a></center>" },
      { "type": "value", "value": "0", "pos": "51", "visibility": "0" },
      { "type": "note", "text": "<center><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEsAAAAYCAYAAACyVACzAAABg2lDQ1BJQ0MgcHJvZmlsZQAAKJF9kTtIw1AUhv+makUqDnYQcchQnayIijhqFYpQIdQKrTqY3PQFTRqSFBdHwbXg4GOx6uDirKuDqyAIPkBcXZwUXaTEc5NCixgPHO7Hf89/OPdcQKiXmWZ1jAOabpupRFzMZFfF0Cu6EKAcA2RmGXOSlIRvfN1TLcVdjPfyr/szetWcxYCASDzLDNMm3iCe3rQNzvvEEVaUVeJz4lGTBiR+5Lri8RvngssC7xkx06l54gixWGhjpY1Z0dSIp4ijqqZTfyHjscp5i7NWrrLmnPyF4Zy+ssx1yiEksIglSBChoIoSyrARo1MnxUKK7uM+/kHXL5FLIVcJjBwLqECD7PrB/+D3bq385ITXKRwHOl8c52MYCO0CjZrjfB87TuMECD4DV3rLX6kDM5+k11pa9Ajo2wYurluasgdc7gADT4Zsyq4UpBTyeeD9jL4pC/TfAj1r3t6a9zh9ANK0q+QNcHAIjBSo97rPu7vb9/ZvTXN/PwUtcnuaQgoLAAAABmJLR0QAAAAAAAD5Q7t/AAAACXBIWXMAAC4jAAAuIwF4pT92AAAAB3RJTUUH5wYBBxoOorPSBgAAABl0RVh0Q29tbWVudABDcmVhdGVkIHdpdGggR0lNUFeBDhcAAAs+SURBVFjD5Zl7cFzVfcc/5967e/etXb1WL0taWbYsYRtsC8u2DDYkBhPqUpOQDAkUUidMMjgmnSRtmGnpUEqYdqZpoI84TFJSCpNgsNME4gEcMJbBtoxfkmVbtiU/9fJDq6f3cffec/rHrmUrAkL7R8fj3v/23HPu+f2+v+/5/b6/s2LJug2K6+jRhECqyS4JFBoKhUKiAWLSe0MT2PIPw6BdLyAp4HM3lfLE/fPQtCwYuspQ5R1nVZ1kzWKTJ79QzSPNIUKuK8DUlwR49ptLqS7w/sE9jOsFLBvBN+9dQDjowXRpbNy8nUX1+dy6pJGAz0tvby/RkihN871YmXd5aU+KsjwPf/u1pZQWBlh7z1y+9dNdmJq4vsESQDRkEvS7AUXzTVUsqIvS39+HbaUZTKXpPTfE7z44iM/npbI4wKN3VbJwTiUlBQEUUB4NYegaKHVtg6UhKdUGGFZhLinf/+oInh8eY2T0EgWRECiJ1+slFC7gmfW/oiuuE7fdaEIQVcf53oO30TSjCq/PC0ohNI2jpy7iOBL9E5h1TeQsJ5Pg8YeW89AtRdSY5wgyhkvIT7XWhUWtb4Sn7q3G0BRKKUAghKCoIMxdn13GkPRhaBol2gUeu385VipBKpXi2NGjCE3j8InzPPNaO+5PAOqaYVbUzFBWVkasuorPLG2k+1QP+zqOc/RsnIvjkkuOG0tqSKEjUJjCodAHDRU+6qqKmDm9img0iuM47G3roCYWIxLyI4TgMzfHiMcHeef9XTx8TzP1M2sQCHbt2kVeOI+us4Os/bf3sTLOtZ/gFVBbqOMxTaSUuF0uGmbGmD1rOum0xdtbtrCkeSmjo+PYjo2uaSSTCWprYrhNN1JK2tva0Q2TzVv38HrbKDOm9fDY6npkJsmZM2cocOn8zdr78HlMpCPRdZ1QMIhtRPjac9uwPwVQ1whYglhpECEEhqHjOBKlFI4jMU03tp2hqCCfvGAgN8egre0AHo9JMpnibN85dh86y3ubOhkTYaQWpK13nH/adJjvfelGGhsX0N7ejqHl9JVQdHYeoetcmv/YdfhTA3VNgKUj2XWolwvxV6itilJTVUZBfgTT7cZjurHSFqlUioxt40jF2Pg4feeHOPbGVg4cv8jRuCChfCiRP6k6tveO8+zGDtbdewMzZ85kZ2sr5WXldJ/uJ255+dX+EdKW8z+y1QAQH5PXlPq/YVaPU8JgT4L2vj6MHScwNIlbk5guHcdxOPAvr5GyJClbMG4bpKSLFB6UCCGZIsgnlPz7p0a4L54mVmzy8s5h6ipcPPHInWx8t5OEFZ+yTClwck4LmFIZxZJ1G1RFvo/CkGdSm6AJONo3ymjKRuQA1a9C9er2QIiPBvbqcUV2/eU9NCEQgK0UItdyXDZSKoVUamJPkVuvcu7l+dzMqQyTth0OnBoiY0+tnFLAMw80csv8ajQBA4PjmG6DSNCLVIoX32jjZ+8en2T3LTMLWb18ZtYGKTndP8zL204yOJ7OMksqePSPGrh1QYyr/c3YDj994yAP3NGA7UisjEPXmYv8+PUO+kbS/Pyx5RSEs5qo7dgApUUhiiOTNdL+o/1URMMUhb3ZSB84w6xYEfkhD60He+jqGeLBu+eSyUi++g9vk7JsHrp9BkvnVVIU9pFM2xw7fZEfbWqjbziF29D5/hfmcltjDJeRVT2jCYtfvnmQF1tOXgFKQU2BDwSMJdKE/CaXklZWdAL9F8eI5vtwGzqpjDPBsJKIlwWzStG17Lym2dO4Y/EMHl+/jYM9o9lj6FzFEpWDWqksDUM+dw59RTRSSUNNMX+5fjsBr5tIwEQp8HlcBLwuwn4TkWOfVAq/mRsPmAgEPtMg6HWR5zdpnjuNgaEEYb9JOuNgaIKnH26iaXbFRLT9Hjfp0jAosBX8/QPzab6peuL7QkDQ66Z5XiWbWs+QthV3zy9jUUMJVkay5cPTPL2hjb+4dw5PbWhjRpGPFfMq+M/3uvn84kqefnAB54eTbG49TXvvKIgs4xGQTGXwuA3CAQ+PrJrDuvUfXEnwSmWj8Mb7x3GkJJV2GE9YE4a1dvTQ2FBGOOjhG6tms33/Kb64YjYKxa9bjlNfXUBdVT4LG8pxpOKtnV10no5TcW6UL362gUTa5rc7TzBnRhRNCAJ+k+Xzq1AKhBAsqS+maXYFUinajw2w+1AvhRE/G1q6ORZPcntthJtnTwPg9MAwr245TDhoMn1aPn/3y/0kbcmzX1/MwhvKJwK//OYaXm/p5K9e2ouhCTr7x0ikT/H8n99GeXFoYt6Kpun8ZOOeiSA5juQ767fz3c/fSKwin8JIALeuXQFLCAj43PzJslkoFPs6+/mgrWeC1s+9tp+HV6a4c/EMYuURWjt6JzY71DvG1iMXuL+5ioUN5UipeP63hzg3nuH+pVkmOFJx4vw4giu5KVaah1JgO5JlN01DKYiPJFn7kx3YEl5Ydws/WBMlZdm8d6AH06UD8MNX9rDv5BBSQdrpwmNo/NnyGhobylAKOrrP4TUNasrzWXXrLN7ac5aDZ0dIS8Wj98yhrDhE2nJoO9ZPZWmYaH6AL981l01bj2TzqSZ49I/nUF6cB8ClRJqMo6a2O7aU2I6adDQBXLpGMpWZcFRcleyFAE3LFoXLA7om0MTvFyoxtdrmhi7nk3TGZsSSLK4JU1tZSKw8n+qyCFeb4zONnBGgGzopR1IfK0Ip6O6N86c/2sbX/7mFodEkuhAsqY+iAI9Lp6Y8KzG2tHbxred38tQLO5BKURTxkx/yonLF54ZYEW63jlLw+vbjSKUmH8NLyQy/a+1GOhJHKkzTmKiMX1lRx/LGGApF38WxK3JDgd9jcGH0o6XB5W+Iy06S7d9GLllEgtmcZ+ga+44OML+ulJKCIP/4wDxaOgboj48zrSiEEHByYJRE2sbrNvjulxdSu7WTPL+bWxfE+MWbB0mmMwigKOxnUSxCNOzF53WjBAyNpyeHSUFdVSGVBT4W3VCCrglSloNlX9FdiXSGi8MJ/mvrEX69t3eqKA163ay+rX6iGv58c8dEmb9z8QwUikzG4aW3j/Dt+xZMMOPbq+eybv2OiWp6uUj43Tqrl81CKQh4XaxZWY8jszLgnd3drFxSi9/jAmDz3h5WLqqhvDjEiqZaVjTVTmLgsYExtu7uZmXzTApCPtbcMz/nt2Ltlxby7Kt7WDa/mpDf5MffWYFS2XfxkSRv7e+bEsTaaQVseOJuyMmbo6cuMDicQClFxlZ8f30Le0/GJx09A7I5I2XZOTVzWTpIbEeSzjhIKVEqq1V+9ps2dnTF+UbGIWllQEE61zLYjiJlOWSc7HylFOmMnY26ENiOg2XbpC2boZEE2/ac5PaF07EdiWNLHvvXFv76K43UVRWiaxq2I9E0gZWrlk++2s7FkRR3L60l4MuycnAkwctvdrDxwx6U4/DQ5+YSCnhQCs7Fx/jhLz5kOJnhY7QrKDhy6gJPvthKXVmIPUf6UMBIwkKbhEhOlOYH3AS9rinfiY9ZFARNFIqEJTk5mCBgCISAsogPQxegIGHZXBhN4zcNCkMelFL0DGajVJ7vQ9ezZo4lM3jdBoYmGBxPY9mS0ohvYr5UioQtiRX6KcszOR1PURTI2tV1bhxHZsWqo+ncWBbAshUHB8bw5HKjAtA1mqrCpG3J7tPDmFchpOkarzx+B6WFQQYGx8gP+XC7NI6cvMCa51pAKjK55OjWxRRwxfX2h8Un3qjqGhtyYO073EP7iQt8ddU8lIIXfrOP59/pmtSlXLd38J+uEVXs7+zjVNBD19k4//5uNwUhL4V5XoojfkxDx3Y+/tLx/xWz+P0c9BG/P+n5b7k6A0glXE2TAAAAAElFTkSuQmCC\">  <a href=\"https://www.editingcorp.com/free-hand-picked-luts-for-cinematic-color-grading/\">EditingCorp - 60 Free Hand-Picked LUTs For Cinematic Color Grading</a></center>" },
      { "type": "value", "value": "0", "pos": "52", "visibility": "0" },
      { "type": "note", "text": "<center><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAC91BMVEX+/v78/f4nKTn+/f4nKzspLTxJQkQlJzh3odlzndQyM0EsLzwlKDUlJzD6/f6XxvmUwfWItuuFsuh9p907OkExMjw2MzUrKS/v/f6PvPGMue6CreNuls5wXVpaT01SR0c1N0Y5OD0mKDcoKzUiJDX2/f2cwfWXu++KfXOHdW+UdWiDcWeQcWSEa2JxZmF9ZlxpXVhtWVRUUVJGS1A9PkdDP0BAPEA/OjwrLTsmKTosLjgiJS/R9v3B6P2byv2lyPv6+/pvmtBskstNVGRnX116ZFx1X1hGSFdaVFFhU1BOR0xBR0xeTkovMEBFPDw+OTkxLzcpKzen1v6j0v6gzv6ozP6t0f2fy/3I7fvr7O2Ltet/q+J9p996o91rkcZpjcVlisJfhbxhdY5oeo2ejYBbX29obW57YVlfXFdlWlR3XFNlU0xoUEtLTkotL0hTRkQ2NUIsM0ErLkFFRj8vLjO23f6s2v6x1f7c/f3h/P274P2w3/yQtuyEr+VwmtJwj7uJna1ogaWYnZtrgJt1hYthboN5gYBvdn2WhntaZXpda3lsd3NPXG12bGl7b2aKb2R9bGN5ZmOAaF9NUVpgV1dPV1ZUWVJTTkxXSklbSkZNRkQ1NTs7NTY0MDEoKzG32v7X+/2exficw/iUu/D28+7Y3N/t5NyNstrH1dh0n9fZ19XEzM7u28FiisFbgbhZfLSzrKSlpqDLtpi9qJW4oY2Ulo17hYhbbIaki39jaHlMXXeulHVDVmxPXGluZmRrYl87SV9YYF5bX1tiXlVnVU8tNkpGR0dFQUY1O0FZRz83OzhEOTfo/P7n/P3l/P3o/fzy+fr8+vKo0/Hx8e+cwezc5+ql0er17t2gx9210NycudyyzNPT0dKbtc56oM6Kq83z6MyEocqDpMOGnr3izryhrq7Vx62eoKuCj5x5hpvGsZpWdJqil5KomYazloKOeXKPhHGMc2tWWmsqV2qffWZxbWZdZmGEZ2A2QlpUXVmBaViAZlMyOlJoAiFnAAADzElEQVQ4yy2TZViaURTHL/i+sIG4OYkVIKAbDOkWN91AWsBtujZm94x1d9jdrru7u7u7u7vjw+6L/j/c++H3O/ec5zzPBRs3boiPi4vp171v+3YjhvtNnT596uShQydNWtrTk0lgQ3x8XGxM9yntV4/w83t7KJemNJt3Pu7Yo0ePxUvgsRTEr4+L7Qd5uxHDYn55e3vz3I3Uk4aZ10JDo0JDBy1eAtbHxni437AHx/V6PYVB5ygJisqkO9Fjo6OjokJBLNZ9NeST91D0FArD7co/kaWQW15NGL1w4djoKNA2XbdO3XIplJaCZhebxaqVp1btGNy794TRo8cCyLHyTr5TeXpKAd3FljLFTOZBY/HzkBDMARjv1snXt+tIHoVRcKbByjSVlwmFQv6azuMXQQV4+NCuXbsYWuCAOcdM4RVCwad5iR9WhAV2HhcyGLQbjvEuHVfWn2U0c+RMcblIwE/c+mLdMhzO5+K4EAC5L+QdnmaeduXX19XKjWX8XVufXcZ5AeADuwCsP+QdkjKtBGm4Kc0iFfN3bbmJAzC4wPPjQCvvs9ImY9WlSCRHU48eFMx78ygMM7zgEwCOB/nAh8aMBodEJLSkphlL+O+3rFvWKlwAEEM+4L6RoGJJSoMq0lIPFAvmJW7bdBUTAs8BWD5o4ID+08Q2p0MS1KvX5zJxyUf+9hmbw+AMuMDOwIPHXJkrPqlmhUOhl0giKhVsnzEE1yYMgnjijfnFUpWmDgpBonKmNVxwD+PQ8AkEEE+8VUSqkqmobGZFqcnCYrOk7+AWsMBdgSfTdx46TiZT0wicBllKSobVwbZUrWnlwAve/7LRSC6PnCtnczSyn+np6cdkKcIVONihLdnZeWStFv26T6Th2GSm9Myc+sRNa1ddD/MoXjiQl52HomRtrrLWSWtUEwiEnMxtcwrnTFvlWSVYDlAUjSCTecGjqBp6k4vDURP+7k0+kjztro8XDO4lIOpQMh7VQoPmzFGpCBpC0N4f1b9n3b4UNmTI8rW7ARFBETyKx0fSSG4H25HhzPhWcthePWvujrkLEmbO3A3weAQPg2hH0YKDqeo/p63S6sN2e2FhQsKC2SNHzgZ4LjR0eIQ0KpgX6VZqmlroarldqagxmxULEqBA5OoQBNGS/EnwW0WSaU59AZ126kR+lmJ/TY1h33wQoCPqiBH+/v4kLhS8kbMMKuOU/fuZLMX8I/lmwx4QEEAkQoEEBYTLRfD0ZhW1slFNz1Imb042fCnChABiXgTJPyKAFozoUHcTg5pkq7QdmPN6RtL+WUX/AdPoMUu7nvi/AAAAAElFTkSuQmCC\">  <a href=\"https://www.facebook.com/eric.ellerbrockom\">Eric Ellerbrock - FreshLUTs</a></center>" },
      { "type": "value", "value": "0", "pos": "53", "visibility": "0" },
      { "type": "note", "text": "<center><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJsAAAAgCAMAAAAysvoIAAAAz1BMVEUAAAD///9AQEDQ0NCFhYU+Pj4EBAT+/v6ioqLk5OTi4uL29vYKCgrr6+t7e3v7+/sGBgYnJye8vLxcXFxVVVVra2v09PQ1NTXu7u6srKyoqKghISHLy8u2traysrKdnZ1zc3Pd3d0cHBz4+PhgYGBFRUUrKyu/v7+YmJiIiIiBgYEVFRURERHx8fHp6emOjo5nZ2czMzMvLy/19fXGxsagoKCUlJR4eHhSUlLV1dWEhIRKSko5OTnm5ubY2NjOzs5qampNTU3BwcFtbW0lJSWTtii3AAADCklEQVRYw+2XaXPaMBCG9w2OxWHikDRgwBAIR7hvCFfu/v/f1NUiDKFM6TD5QDs8H+JIWsnP7GoHIJwuZ7fj3QoXp0fBuF3S6XF5dju7HcG3uP0IrZkQhUL+NVEuFHog5ioU8EF0EwyqOkR4nAxoRbWRf/XTbw5pTNxNPUsrKjxK0wqzc1x2gqUV4d/c7rAmR6QQ4x1RIEHMBAEeUSQYLHWIIfZGTCtTgtD5QUwQ2X4nIcf/u30SYFDxguQmCPb3uRXDQmHX7ZYnR8AzP2rilg4LWQnJh8OZIstxFh/4qYq5XBwoleX1boZXnwGvRUxCzMekMYt5Pk6NV27RsNDY53ZPhh038QNuiBG3BzLoEF0v5xWwiD44YVM97Lqhhbw+ds2PJkf1iOkC6STaLeOW1Iv2VQmqLG55MnyrG9WBDC0USqZgKaKNG2XEnOw4StU8UNi4yV6F4kG31yvh4qBbV+KergM32wfqVNOCARs3x+StDIxoAbx8dWtx4rLa7eVKeP9DL3QPuRmGTQnJ1Gr3MwV3QI/Ana5cWlhdqXteLQJtjiUfKOv9qrLtJjMX2s2wt09jcWF+0M2TuKi4GZKfpN10t84gbPepp2/h0oXHNnMg/9XNg1pqt1JcmOxzC9sCHXSrmkAJKc48wNeBpqbh0ch3jZt6mbXZRS7omI9IpVK3CsPstlvfhWppt5wtfGMvJOjSRTKrz1NwK6S5bhs3PoZdoi3drW0E1LfcbE734zF9OrA1u26J7bxlJSOPph+H9YTjDCaciqAXblZX6AkbOra4tWzbqfi8KUVH5K0T0Qx23HhW01+7NTtQPZ2uvAJcz9N/64FbdQh3QVTkF6Q0lSRwKwV/jkR0bKxM4haLCLm/czOkdtwMy7UbfSp4Uuhe0QXj+hUK3KgLRJ13BfcnCWlgFDSKiuWqhz6z+pY1DdzmVkNXwTI0iaqWVSZBZgW2KViWYyYrJPR7jUY5QYIlx5A9t6zU1LIKtGLA8w5ZQmFqLm8iOLb3T31HOjHObv+v2yn/dj5Vzm7H8Qt/zkuzg1TiwQAAAABJRU5ErkJggg==\">  <a href=\"https://filtergrade.com/free-cinematic-luts-video-editing/\">FilterGrade Free Cinematic LUTs Pack</a></center>" },
      { "type": "value", "value": "0", "pos": "54", "visibility": "0" },
      { "type": "note", "text": "<center><a href=\"https://drive.google.com/file/d/1G8sk_TEI14xbpNQaJnuFmrFlJ8_nHIyl/view\">Hollywood LUTs</a></center>" },
      { "type": "value", "value": "0", "pos": "55", "visibility": "0" },
      { "type": "note", "text": "<center><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACIAAAApCAIAAADf4mxWAAAKkklEQVRYhV1XTYxdR1b+zqmq+959P91td7fdjp3EsZOZJNaAEjEjmAi2CCFAGjQLZsVidiPEAokFYsNqtiCEGFhPpAFpAEUIxI8gIghBEqE4E0JiO7GdxG33z3vd/d677/5U1flYvG6PmaPSlUqnqr7zW/cruXh+jSQhpIiICmOM6nqwTGQAqmoZoiRJEwpWQmYBeDYxCqAGKEBmwAAAutJ7MSTLFBicJTiaiApSNjrniWRmFIAEBGJnO01ESAIQkVOdnc3FAQLAzEQEgDeB88HMet6VI2dSqLHtFlE0G0GCTpSnZlMhICmiK3tXp5y6JCLQMwsAQIiV2huZjJLsucvbX3vlyxvPvlyqvvPOWzd/9MnJrA7e5aQZ5igAZOUWV7YqQNIewzgRAwU/Bn4smkGngaRaWh/o9vZ2v6eSUuGVzEwGmMA9uUdEACVPvyRBPqHCWWJAAcUopk4ASaIUp73B0Lte7JqubYXmnRM4YSZJMSJzVScigJ2N0zwLAZiQjzEAiJzCqxDCRGEoB2ubF4eD9a5uLJqqmpkZnNPH2YYYxER/fJaIKOQM+9QPgcHI09pEBhWidIHJMS6HozVfhNQem2TAU+h9Z3DeOhV5HJOcsxr11FYznFaz8HTQnJytV4KkCiAESfFhMBg5J03T5JxVIVBAieycO2uPswpWWU1NTn2i4GwYlCRXASOphBcz5xyZvSsG4/NJbFkvVF3wCgDiBBRR587idgYGqqpmJlGQRiPIU7zHFQEQEBG/QgPgQlGO1xcns6ZpiqLo91eNqaKSDHYa9Cd8AgAEURgBoRBnGcog1JkaqSBJ6mq9iPhQDIbnEOt62Ybgt86vJcIEOWcz2BNCgCuwbKvIqMA77TlXhlAE3/M+eA3qgrrgvXfOq6qqA6DBF/1h7qqmSf1B2e+NLUMKJMtBC4o4QgmqOOcIWKIKDAYhIA50KipUwKAEM5lXuQU8xRmFFFXvQ1kvj9smPvXsJbFeSkYxgVKMJCAkxUAlAYWtGkNFvKBQUcFKQwglGySZJRCi3gwilixDJBT9ZTWLZufPbxxPmpSSGbzvp5RWoQdgZkwEoISHd6IK9FQLFUcIIeLESWeg2spbFXgnKRtgor4sZLactYxy8cL2wwe3Vb1naDWH4MycqQR1UUh0AwhQWO6cFN5b4VhCvXphciKWQ0/YJBqdeN9Y9CbiCBFCnNAmR7u9EltbG/PZTFUz1dq4rBdGZ5oVaAmV0FlUQc+HHpLz6Pl1r64Y2rpfK3WwkKqqsplBXRW7wqtPmYUKmZ0LTHW1aPuDwXh8rlrUIYiBX3v1xa+/+qU0ui6aNFbLRbVc5Gpx3DWT9mh60rmQm3UUIetgbbh1eaev5f7ew8n+0d7kcFZXA6+VZW+r+xw5hF5THU+my9HautMiNtkHzTk+f3XzV3/5Z6/+zG90kTTnNGWaifm4m/Zu3b93a/LFybIjjGuDzfXLLxVr5+689+6bf/XG8bH2QxG7xtG8emdMJIog86ODRTV78YWnhblqaqW1WdB13vUXi4g0hxslOLMmSZFwqXfh0uWNy888+8X0we5sEU2KcqM33Dp346uvHtz68PbdT51zJFW8V6GZgBIkV7Np23U7l7abpk6pA1TMeiFsX77uR6Ucvt1V2a+/EEZb4gqhNS1l+NMcP/fMU/vN4afLWZVyk/bvpKb66s/d+Pe33757/7Do9eu69jlHQRBxqV0cTQ/axi7vPH00mbrgVSGA9zLcerqpln/9gzfe/Z9bt+/ONst+Ebh15crvffd7IVg53Pnh9/7y337wF+vr66/90qs3vvLMYlaPzunLN57/6M6u82Vi8kKDqIhrFkdHh5PQKy5evPjfn30izq3+jCGE0eZTszvv3/70k7sPjm5+dM8lXTT1jRvTjdJ1Ohr0yzv37r35Xzevbl37+Nbd7/7Rbz17bbxc1Jvb52KM5j1WlIdi6tzJcbN7OOv39Pzm8OH+pO8D0Weue+UaZG1+MrHsRr2B9EIYluNhOR6Pp/f+AbwHMy/FYKypxO7e9ESu7Lzy81deulquh3lCQk6EFxFVOEXXtccnJ1tbO2UxnB8dlz1HpAz0hwNBrGaTxWK5vbkBQ7IULSfjP/7TW1fPf/Dar/xa0xzGLMSxcD4eXkDxU8Xlq9h4r7LYZ5HR82ZGJrNUNfXJfH5p5+kU25PJxPtCNGeBK88Jw3TvQU649qWnCgmUlBPVhf29+Wd3duvuZPeTj2r0Z11hZeE3lAJwnLDWCqL6SPOqzkG1KGhaLXnty9cXTZsRisGIKTqouJEAB3uPIO7K0xcLCcmiKAEs5vXB8cnN/x09mlUs0LRdQzIEoBMU0VynoYpdZ+aVSogZDg6PF9Vs/+hvf/g3/zo/qdt4NCiL2NSucJB4cHBQjobjjXHbtiEYU3LKxbJqq3S0OKqPzayrgsfMtQ9v8ivPd3KhJUl6DZ0mLyJCEe/rmJuufTS5HxOchixxY9RnRq8XECcPH00uXNgO6qpqvrk9UtXgpE3N0aJmr0ySiCKbpJ57+63/7IfFy699s8+lGQwZSB5GY3JeRJV0DuiXvdgmXxRmJlBIaBfTw4Pj69dfqKsGUIorfBFCuP7SC58+fGd+dHgcq2nKA8tlP9z//ODNf36/OV4+uPMeIBEZTB4AkUU8YRmE0xQbBbMpnO9I7/3+g0/qqt3eOncyXxRlH+q6yF45/O3f/Z3ndr7/xt+9GRv21StjJOYp3nqwF3O6ffc2NFmC076KiPfeCMsk1cxM1RB8Uue8CDU2+3uPmjZubG/vHU2UKtHlvs5n8fDzz7/x7d/8/T/4zvnNdabsvF8rtK4Ws1ne3T+cL0JpqhQi62OysxIvKkZVBcCUlGjr+e7nDyjh/Lmdw4MT8c7gveuT6U//5M++/8d/eHFnsHVlPdGyCcIgEfP5o8N5dTSfaJE1uJyz/0nqbsxmlAzSNKn4anH0MKXhqPTeT6ez0PMiatkVXg/2Zx9+cPdHH955eHffeUZGy7Hw5d78OGubDckgKUoWPSPVBCCWBc57f8q1AKo7OHy4t3dwfms95a6qKjjrUlS48XAQG8zgPv74sDpuxSwmQNpvffMXvv7KtVzXdd264MUVIk6fQMHqdAKGTEFMJqqH08n+3vTS5Uuz2axtojqSKcUaaNrYsF5Gyx068Y4SoDJaC9/59q9/6xu/uDEqSUU2E9OfCJqZpZRMICIxw3mZz6rp0ezSzpXDvalFQzZ1yWknmlJeSpKubjKRjYzLcbn2+uv/8uev//2LLz5z+cqF1HWCrI5P5EYIQhyQ4VUsw7FnqOezhk53dnbufPwRSOdC19Q5x6IY9PvhcNH46JlU1TufBr3e/rR+6/3/uH3/7he7E69wznVd/H/eiAhWfI60lL0WzNY0yWkYrJXH08nG2jjHzEiFu/XR/b39+fG02z1Y1BZFLYs8ms2alHx0736wd/+zaRFKy6JSyPZoDA9VTTmvnkunTNwHiwlAEVxZ9EbjUuBi200mU6gIXJdTjFGUKt45pw5Q5JxzzE57BkJqVW/ZZetkc22oqhAxswyG1VPs9C2mZGY2VWWOJL33q3YmmWgASJNVuYpAGHNWSuqyCwXRkGLZmaX/A0GLBDxi5LN0AAAAAElFTkSuQmCC\">  <a href=\"https://freshluts.com/users/64078\">InAvision - FreshLUTs</a></center>" },
      { "type": "value", "value": "0", "pos": "56", "visibility": "0" },
      { "type": "note", "text": "<center><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAC/VBMVEUEAwju6+4FBAnv7O8FBgoIDxju5+oPERcICQ8HCA0GBwwLEBkRFR/u6e05SFU6PkYzO0YSFx8MEx0HDRYOCQ1aXmcpOEcgLToJCxFHT1lFTFUtPUwsOUUhMD0YHCcTGCEKERvt5OdrcHZdYmpUX2dSWmNKVWBQVl9EVF4/T1o9S1c3RVEzRFEzPkomNUMlM0AqMTwdIysKDhUGCxPu6evDtLh0eH1ta25XXWVOXGVNVF1JUVtMUFo/R1ExQE0vPEkqNkIyOUEfKzgjKzYqKzIiKTIgJS0SFhwdFxsQDhMLCg/ZxsjIu8DIuLq+sLO5rLGwpKZ7foSThIBjaHFpaG1lZWtZW2NLWmNTWV9QVFpNTFA6Qk1MRUk3PEksPEkuNkJBPUEoLjobJTMmKC4rICUgICUVGCI2ISAgGh4QFB3m2t3d0NLVwsPOv8O7sbnOtbLIsLG3oJ2mm5yYk5bPnZKGh4l8dnm6eXJwb3JmaG5ZYmlVWWOIY2FKWV9DT1pATFiKW1Y7RVG4YUqPUEE4NjscKTcdKDRwODAeJjBFKSoTGyQoGh4xGhkgExQUDRDTwMTLvcK4tMGvr7zKtLSvqK63qaver6rAq6q1pqepoKGXlqC5op+zmZOVkJKrlpHKl4yBgIXfj32JeXxtdHh0dHZwcnSmfnJobXJoa3DEeWxeY2xnYWhSXGWfa2G0dV+4bV6ybl2QZFqZX1m2Z1WBWFR5U1CRVk5GRk5lQEFWP0ExNjx3QzhbOTc2LTFOMTBfNC0XICwdHyo1JSc+Hx04GxsWFBns4OLp3N+/ucXAt77MurzQuLjRsanFqqmfnKbQrKW9qKWqoKLCpJzZp5qfl5nFopi4m5WHi5WgkpHfl4y7kYWch4WYhYF8fX+DfX6Jfn24gnt/fnunfHpeaneRenWqenKCcnKkeXBYZ27BhW2Xbm3Kf2yTZmZyYmRhYmN2ZGJuX2C/clxKTlqqalhYTE4+Rko9QEpvSUaBTkU2OUFNNzY8LzJaMSoaIyUoFRRPuIDSAAAD7UlEQVQ4y0WQY3RjURSF77y+l4ekQeM0TdJYbZPO1HabqW1zbBt1O7Zt27Zt2zbW3FmZtWb/uD/u+dY+ex8QUSoMDAxiMn0Xzu3RgUajtXN0dGxjl0MbBwcH0Li3KCfIzdmk8knv097VTvwfQyCCLcnOczeq+Bk+N0627+D6D3CEAIQgEBakyx7uru2fnt4v9dL5rtAEInYLO1AUmufm7MzUZKgy0udf7tEj0avjYWhDo7nS7EBJkZu7i8DIzxzIV/VPndl9StduiV6dxhyL79y5oyv0AaVCFw93qWmokck06nxuzp7RdUq3pKTELl4JCfHtj3ToCGqlppBQaQhcE8zUqvqlzp5xduqkSRMTJyR4He80ZuxYYAmWuki1ZmdBodkwWD1gyb3ePadNm5qcnNRtwuQTCfHxoFYoFIa6ObsLgs2GLPXgLL+nix6+efs4tXuvUxfOeHWZDmpHh4fDGIKQQrPWb2WWXq/ZWBVbHtu07tnMXnOSrriAvaWjw11gzsJgU4BGbdDrc1t4vNhDtt0jF6++3uVBISgNFwo9BAIBc6hRO4Q5RG9k2XitzVVVLSNXj1g8btx4YHELDWFmqf1DpAKDQZmi9sttInktv3/W7Rm5Krnz0fEgIlxq0gebhvqp56YYFviZzeydX3c0HzxQt667d8rpidNBvcVjdKjH8AXKnhfP9Z6lFK+YP2jzmrU79jzq1DNsyEptCpBFscXeqt6zvG/3ueozCufNeb5+zbu1H570Sc4JioqSMUB9hHjAALHmjs+i1ywSAWDQtvUbRsx7UUXimRYZ7ikCubmSwADvpUsXZn+KAVCxW5dtGFF3AKGI6PdicaAvSBNn5ATcUmoirFYUIAio3Hpt3rKDCEoSeGAmP00Jlvfr7z04m8W2NsbABQixj7d/1bA4gJKUiDWQr/QF7C1hkrBoOYfD8fwLMHD4ogSgCJT4rOMv8Qf1siiWNQanxzBEMAHPhsRFHqJq4AqEYOmW83VAVsmolFVyoEg4v3u/vLqsjEVQNhQCA9MkvoAhp3PkcjlHzkABqO77cr8nhX1DCZJCyDBNWh4fMBg1jBqc7kkXwQrf+w5rwHFPGYB9EHS7vy87E9TQ6QwnOr0tRsC/TX0bmnCRaNcPkiQpKjpAZ8kBXC7mBAG6ApZANm3+0ozvHjZ5G4qiFFUi8S+RAC6mwLgYxuU6VVTj5a0AKd85qFcriiJoDDvI31IAuG0xblsoLLL44/biONGujQ35r/KrAYJGF+QFsEsAxlVgmEKByUflR0b/Yo0qjgUVKyqK8wEqiiqQFFmBAlM4/VVjZJm1rMIWBw9JbImM4wGEwtnDC/b9AdM3HYNA1prqAAAAAElFTkSuQmCC\">  <a href=\"https://freshluts.com/users/120\">J.T. Semple - FreshLUTs</a></center>" },
      { "type": "value", "value": "0", "pos": "57", "visibility": "0" },
      { "type": "note", "text": "<center><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACYAAAAmCAMAAACf4xmcAAACMVBMVEULFiILFyEOGSMJFSEOGyQOGCELGCITHykLGCELFh8JFh8NFyEQHSYSHicUISoNFyINGSULGCQWICoJFiMhKzQbJS8mMToKFSIdKDEZIy0RHSchLTgZJi8XIiwTGyQQGiMpMzsbKDQYJTAKFiQ4Qkg0PkYlLzgeKjQNFh8yPUQfLDcXIy0RHisQHCkWGyRUXmojLzkjLTYTIC0PGyceHyTr7/jK2eyhssZIVWFDTlo3Q047RksvOkIuOEEtNz8pNj8nMz4eKTMaJzITGSEQFyHe6PTV4O7D1+vE1+a+0OTH1uPCzt6VsNGdrL2PlKNhfJxqd4ZocX4+SVQ6RlA3QUgtOkclMTwXJC8aHybl6PLT4fLQ3uzM2erR1+O5zOOvxNysvtSEps2jtcqNqsiAocecp7hohaR+jaJyfolSaodLYn6DdX1kcHtnZ3RZZG9JWG1LWWVPWWM3TGMyP01GREgqN0QxNEAjMT8aKTdFNzEdJSkzKicXHyHk7fbG3vbN3PTW4PHM3PDn5Oq2z+rC0Oa0yd2sxN2ivdy6yNrLy9avvs6otsmTrMmmrsCUpsB7lbd5krOMnq/VuJmFj5lsgJlYdJSDhZF7fo2ciIxvfIuMg4Z8cYCDbndeanZCWnNiYW85UW9OVWlhYmRrWWSJdmNiWmFQU15LT1xXT1oxRFo8SldQR0snN0oyPUdTTUQ4OkRoT0EeLD5IRD0uLTcyNTVWPzIfIzA7MC4sKCsgJCokISPHXUUCAAAD5klEQVQ4y0WSBXfbMBRGnxRbppniLJx0gSZpk6w0bFfumJmZmZmZmZmZGX7dnqLBPZKPYl19T1IM4PMB/YcBGd0gHhCZ2kTTDJtWJfv22/2LW/ylLDQZdM02dCA45ppKq/r2+3BpN6CFGiI80Bo/lgjouFBHTZZR+7qzH/g4clITogzu+vVvMkBsaggNi+7s15dreqawR0Nsm9KQ83B1vUcAqA18b6h1f+/uAUDNy+g+7gNCb9/ZohKqyVgZV2Jc949kD86GdJ/nAeLjXX3x+JvnUkNiPkIMojJmzNBs1CCkY9hfqp5+Lm1udChzfCoxDAMrJ2XUMA47j0LfrTt5Y/Xa0acm9LYzoPlIIdlTmFFlaKihI7ale+6Evf0PzZx7YM7ARjmEe9YL5pdPM6pk1IDHAYe4U8cO7d9/7sxhC5bvcDyZkUKg77snj3r+pglCGTZw3ohZJ4YOX3lllQNJanfv+vl6yx7ZIMAlnsbJeAMPzh95es6YB+fukRDB7WuFAj9GCAjhjsBlAxcdPTJq+PFVs1+Cx0+laTpCdNR0DiAE1KULRgwYNm/MyoubPJfoREMIERpHJSri0rGjhw2YdezC1UWbXFtV+aWhhirIMpUrMMYcZ/mooQNGLj4/fulElzJbNiqgDZQjNOpIN2f3HzF/4Zjx97cx8VZggEp4OLUqRZ3ma6OHn1mycPzaXY6NcQSNCkAQzeyt65X/iz0/O2DxsiXLroeT+IufUcA1zNMqd+yBve3WuP2H9417z+wMIEQgNB0712wA69m4USPHTpzM+Ecl5jjAs4iKI57mQeOGDVOb8oO220zHGd6EpqoMG2PYwXUdZcKgmLN1Ui3gxH8IUCoJKB9Rc/KgdNO6urxDKWNiNQ+CaNQ0eeuFmKaU2Di1nB60rrHp71Jhg1+gKKap4ENpHRxT2qelTL6Mi8KFSCSSSCT4g8t+q94pK1asCQsoJvcEEO6NhMPhThxEEv743eaS1T74bVkRYGpFCwgaGgKBMHrxNZPjVmzFYMvycwktoQVzuYaGXC4XzDVwr7NuRcKyJq75k/UnjEIw2CdY6blAJy9/eVLAsgbXFYUnwvAIfThtbX2CsXw43jsS2DgpGPHXNVuWhZY4BJMY1LS1ttZks63B2q54vFicvjnvN3s1x5rEBVmYho1CS3ZKtjpb01bfmS4Wi+lXZWASje7Y7jBGJSVuYWGJMWhpaclWV9e019em0tPT6S5L6RVV0ltLrhS1FKzMs7Bodkp19ZAhQ9qnxWK1qVRXKh+bXnKcUpcLUI5iZUlCD/c2pQa9jo5pHR31tSjmU/l4vAwcH7gsKjHqMvob3PCdJnRHhgoAAAAASUVORK5CYII=\">  <a href=\"https://sellfy.com/p/SGnG/\">Kyler Holland 10 Free CLUTs</a></center>" },
      { "type": "value", "value": "0", "pos": "58", "visibility": "0" },
      { "type": "note", "text": "<center><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIMAAAAWCAMAAADU6N+kAAAANlBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAABH0wLDAAAAEHRSTlMAv0Dfn4CP78+vIDBgcFAQ4LAwBQAAAopJREFUSMeVlVmy4yAMRcFMNuA47H+z/TQgMSSp6vsRhAT4IAQxoBMUill1gdCd/Z+sTagI4iG5ettQztrbmOpAV1+h4oQX2uUF6pFy3BEUqHs00r0yoDdZe7ZduE5cImdlwzIh9RIwPQ5tMEuww5wMI2Nr7/ebJz4ehLg3+BvrLSJvzdGtARQaiRgsdml7nlcLl6xIMUy0oy4xVCIvnQ1iu1qLSQFE3cMML/mQA4TOOc9DhtJGhkDkHnfx/qrmZgBJ0cjgpO8uwcN2ZYgTg2Xcxzzt/xl6mzilOprsnYHOwvWoJXaO9CU4qke+M0h6+0rEcCrDNHhZr+ih8b3ovdLZ8FfyuDNQcS+1Wem6qWcMTugJhnphyGNxlFsPUKzrOIRBvfZPMwNeq2v0zQxq00siS3mj8K1V+cYJvr522MlQJ3bGhOYFQUplcDNDkaUqMejCPM572Ttcm8+VNZ69f/CC7Qz7TGII+oGFQXaVWrd+MWg9AoKW+n59NwYrRxFAyiC5K2PBXP2AvjPU/Cc+1P3jc+HMDKplZpAS8UYZoFXhxRAL5KJ+c2p7w0qVGVTKoJmV1OSRQRPF0t5cTiLuqpeQV4b9CXEvKJE+Whnu8fk/ve764sCSF3sLw6RfDJ32MMLgJgbbD+iG9ET5o2BLGW6zFPtvhv0dC/pkEIMXhu5EyZejWJK9kaF9ZIirUw+Sn60yMlTsKEOcGVJWhkZQwtAWBmXMnbjLcou1gEqtCcNDNjA0bJmB3UGsi1vDyrymnas1HTydwzGAsk/UrX164Dh2Lurkg1rGrGDj81QaqdrWM8mYHpSLayobMwVfAVSz+arDgwrt5wDlbgjnCaqAY0EvUwLo+bAaK/fYPzbBi89MLkUDAAAAAElFTkSuQmCC\">  <a href=\"https://lutify.me/free-luts/\">Lutify.Me Free LUTs</a></center>" },
      { "type": "value", "value": "0", "pos": "59", "visibility": "0" },
      { "type": "note", "text": "<center><a href=\"https://michaelezra.com\">Michael Ezra</a></center>" },
      { "type": "value", "value": "0", "pos": "60", "visibility": "0" },
      { "type": "note", "text": "<center>Moviz LUTs</center>" },
      { "type": "value", "value": "0", "pos": "61", "visibility": "0" },
      { "type": "note", "text": "<center><a href=\"https://freshluts.com/users/992\">Ohad Peretz - FreshLUTs</a></center>" },
      { "type": "value", "value": "0", "pos": "62", "visibility": "0" },
      { "type": "note", "text": "<center><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAC/VBMVEX9AEL7AUL9AUP8AED9AUH6AkL4AkP6A0L4A0H7AUT6AkD7AUD2BEP6AkT+AUX0BUL+AUD4+Pj0BkT9AUTxBkL3A0D9+fv2BUb5Az79+/r/AEL6+fr6/Pf81uPlD0b4BEXuCUT6/f32+/j8+Pjv8O/bGEnhE0frC0T2BUL++/38/fn98/f96vHML1XXH03oDUX+8/z99fr38fby8vH83+nk4uT50d/4us/uVn7tPWrrM2DqGVHSI1DoEUjzCEXxB0X5+f397vj88vTy7PP58vH65+z62ur84+jn6Of5x9ja19bTztD0sce0r7HncozkPGywVGvrNmTkLmDQNFnCN1fZKVbRJ1TsEkzyDEjpDUfyBz77Aj7sCz39/f3/8vn29/X79vT39vL19PL77u/96O7t6+vs3975ztzOz8/TyMj2sMPzqcLzpb31oLrDtbnNsrm7u7f1l7P1ka7xkqvvgqOtnZ+0m53ndJPtbY30ZIazeoWodYPmWHylb3inZ3euZnboSXTuRnG6Smm3RWDaMmDrLlvFNVrsJ1rlIlfLKlTqH1TvGk/bIk7pGUv5A0niDUP/AUPnC0HuCEH05ens5eXb3tz6y9vtz9fk1Nbt0dT3rsvQwsbIxcXqrcLGvL3Pt7r0m7byobXFra6xqqzOnqqtpKPtjKKolaDJj53udpvahZmkkpbvbpauj5PwaY/lZI2egoi+dIToVIS8boLFYHvjXHu6YXboRXS1WnHjRnC9T2+vXW7KUW7XRWzoQWy+QmCyTF/mK169PVvtIVPdIFLjHk/jE03tDErZHUn0BTz2+fr+5/Xz6uru6Oju2Nvv19vh2dn2xNPW09L4xdLY0ND3tczjv8jhxcfWwMbhtL71rL69t72+vLrSt7rfq7nqp7fMq7DVoK7jmq68oaXelKTgi52nm5rMkprNhpa/hJTngJTmYIvgboquhYmmf4jqY4KxdIG8aYGcdn3YZX3QaXvZX3vnTHfrT3WqWmvjNWjOOmPJOF/GM1XYIFXtDUL6xIL1AAAFQklEQVRIx6XWA3QcQRgA4J2ZNc527KRtnDRJbdu2bdu2bdu2bdu2XueS9vU2TfX6v3f7bubm239v5p+5IwAgCMJC/HWkB/8ewB2e7QzGyEawLA0YiPugQjsMut/8HgBGoJQRfln79y8T7p+ipH8eb7H8ACSJoOjoU6zz4pszpl5uOuv+qtIBGi3uJjIMEo/f/7nHssIFfNU+matUCTFXjRw3a3MSY0K/+r7KoTueXMpXc0zzJW+Kvi8aN79BVDWfkTd6aTIGAEp+71rXyVGoe9lkmoNaQIvD+y6yqw/U7SaiDAji9fs6N8s55u0IAIAgCAQSBEQYd88JNYd20ul/FiDQr0uzyEIDRB4CAiHkfpEWzhnwNG9Q3rUigjDdzKLhxQrnnDDARA2RBATAtyLgJE2l1bWCYvoByMkAx4ml7kTm7xfIA47j9w/33zcoPNzPX6dQQP2XIpkM01IAR3pOr4Lzf3Gi5hanRAHgLB+2rkObJk2mzLj72qiAApM02RoSzylkgHCWmlm9eQVuCACUf7GFBX19zEGV1d55XRxEgmbzqGzTjQB5AMA6uozO3ZungIWM6FLY1yfqdONGhexZco8QAL6F45ZPre16eUmWaV21kYsXAMmGtfY1Ty9Rjg7UJXZrrOPdQLnpULV2ckBvnZQ5jnIXq25jAYM9iSEtSE+LLr0bACbrGduFSjIQsWZ0VD8thFDheuYbNFkHaKgSAEWlDaIc87zzDJYtg//jGrEpTggJ6OqgrhxTlhPx2n+vYsDqntcI7S0D4W3U02gaA0Jck8uQ+UFSMsC91HfAbDicubvskbI2CWqrJyGEDDtovNWr2tVeAXqa/ZYC8HSpY+Y44FFPVNikoKWpgGCVq3N7mW11FvTaywhEGgBU2Clze8YTfKpnWGFSuQHD6jpFmYPVVY8u2CWyAKUSqXR9qxyULGhYwavSCo5M3t0yr9rLZhvbqZKe4oEbhNU3tAfpwMOK5LcHYHhlQota3gav3EWUPOXukfrUt8alA9a2pjRAQECamJTijUK8vA4WZxgIgUTvqGftTiDPWZpobilJGAAAIIRYcXuLhHgZmgdCAovAHgVCE2Tr4HfN1kBJYyBgkBpGTfkr3sHHyxEQA93GfHkGEp7hmGezl00DNEwlTo1upW9w/nKp2tHRN9YlyzBiVWT2eMm9mY2lXSLExyRkhnasHdzASCuGQSZrG59WogxQH+rYWikx4CNW3i65J9kppfj1nK32aZcKlFunVFkryQC967yt7mCEABvRocaR68vXbejacWY+dd1EmsY1PLRrdP6yWhlgNa+yqJfQIq0sv7x6cHD12qPyRVbOFtubggQUNaVmZ1lkFJHnnqaYQWO97QMlmtKUbpE/KkdISGieCUsTWdJCQMa/cwF7Isd5AkAxmke5srUsx0Atp4zYWTw+PmFnQAUTj/BnAdsK52pn5LSyUwMAsKdhtixtKwgizgJ4nmXdVwAgUann3JwNk6BWm/5spUvEeNcsUt6owIcXoVKpIL7i/RTQc2F0zHYJKhTpAGnSrR9pzTEncQjHQQInTy0QjV+xudF5EjSSFjfThYDoLTFq6/iX4Q4W4AxIUDrCty27mPNkAoM1Bj8FYvo2zuGd6+y9TR/DypTp36dH18XNokNbDFCSMGOA7xoQF5vZoK497tzUpk0n1ovOkr1hfIWKLPELQJJICHQVbxVrz54JR3Z7ofl9dYGy9crgd4hkxeTBJYp2W1+0xEAnRapY8If/ATxLEUJFk8lUUYUsBCmwiIC/JQhhRgAc35sY/FP8L/gKJ0Uj1jCuNAUAAAAASUVORK5CYII=\">  <a href=\"https://gumroad.com/sarikasat\">Olivio Sarikas - Free LUT Packs</a></center>" },
      { "type": "value", "value": "0", "pos": "63", "visibility": "0" },
      { "type": "note", "text": "<center><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAClFBMVEUAAABzk3pTeVfj8PHk7u3Q39rp9PW1x726zcSUrJt4l3/Y7fLq5Ojt9PTv9fPn9Pbp8fHk7+/h7u66zMO5y8JtjnRxkXdkhmlnim7R6/Hc7/Ln9fbn8PDq8O/n9Pbt9PPR4Nvn7ezg6+zO3di3y8K2yL64zMOZs6KYsaF1lXyu3vDq2d/o5url5uru9PPo9vfm8/Xn8PC2yL+3y8G3ysCkuqtmim1oi2/0PVwAsO7m8fMBru33O1kGqe3r8/QKrO32PFrp8vT5PFjzO1r3N1YIp+zyOln0NFbnydHn8fLB4/ABrO4Npez2PVv1OFdNTU3j9PQRoesFq+0LpuwQouvpvMaCgoLzZX1SUlK95PG03vB4ze9Rve4ZsO4HpOwVnermx9C9wMHyc4jwbINra2vV6/Kl2PGs3e9aw+4gsu4Ire4vse0Mre1AsewRqewVn+samuoZl+nn3uPW2drstMDotb+nq6ztjZ6HiIjucIbySmX0P11YWFj6OFT3MlLs9Pbm8/Xn8fTu8vPh8fPB5fG34/Gl2/GQ1fGb1PGf2vBox+5vxO5Uwu7k6+0TsO3n6exRsewDqezh5+kSmenc4+TqxM7rt8Lsp7XwkqOen6DshpmRkZKAgYHvXnbwWHFnZ2fzRmP0QmBVVVX3NlX5NVL5L07j8vPe8PPM6fJsyfGDyPCs3u+Dzu9gw+9Hvu49uu5duu1Que1KrO1Ku+xJtewmrey/1+ssoOodnuoTkOjj4eXM1eTS1OLa39/k2N7Y29zbztnl0NfjzNPsusS3ubrrrbm1uLjnrLixsrLmpLGur6+urq/snqzolaTvip2WmJjxfZHsfZCLjY3raIB9fn7uYXjxUGryTWj1O1r4PVn6PFdLSkoQ11vXAAAAOHRSTlMAGwXd07u0iIRHJv796eTi4tjXiG8eGQ8M/vvp3dnU1L+6urmBdGxCQRj+/vv76+rn2oWCgmwODToLEi0AAAKySURBVDjLZdNlW9tQFAfwFCiluDOc4XPf2hQyUqF0pe3oVvcWdxhuw204A4YPm7u7u7t+mSW5GS0Pv1d5zvkn5ya5F7JaExftGO7uGe4YHbcHWo3itC0oS5N9tbVbczYoxIkCrWQX69aa3SdkMns6WExhX4/KLdbOtr8uyiVbyMTkq3RMnFAbSLV5iLODOoeoszTdTJJuvYPz8v0OWfmgmtOWy/wvt8uBQs6PUpN9YdcFplVuFhWsY1dLDgu42C5k2dAF+uJ9/63lp0F9sC1v7wpaN3yI05OlRzop1peeR2EgYx+gyvDBvp99db2iY1AqlRZmCMjAqcJEQBuyG4rf9PvP4tO8xETeORQmoRoeCBS60KGdsiU2u0adystrESAIIkBRBEFPXucR9JnbIcdj9Wz24jutvh01yafkpvGKyW/P0E79AZz+yFoozMzG1N69hgxJ0ifTlXXKV+l/7yMFqYTLoZCHAg/Uf26Ej0oqDr9Rzj9E5JJDsCrtIK7AHQsk4LiPBXjgrXJ+thkLCNBLaTgsEGZOIHxvHJLMfsFG1DVPYU+YvnfLUFRUNBCKLZJLBBrKUVNVVZVp/CP6Qt77ssF8ZthgMGCL3CFrSCL87MVfE8bfFOmvSeIabxYXD2fSoPiNIhBYeN8Ek5oquUkJM5klxSUudOxTm7mAuBQmPRCLRKKF51dKBjwDsJ/lakwB7uwnnICrf2EBRs2N22oa/ruDLckkDuGHjM/AiSs7N/tBGN/SOYYNfvkMeXW8PwZsOapMbBNQvBaTybIIcuv7e5dZE+KUWrI/5kVZ3vbesjkOKHMmJsBVbZm3s825o5Za+GCuMZm4XbEhgrLi6PluGalm8Dn8sa8MDp9hGQmOAfOt/HzsXUcrPxmnLR9GXe19/KDVAui0SC9PD69IGj3AWv0HukgIS3/cZL8AAAAASUVORK5CYII=\">  <a href=\"https://www.on1.com/free/lut-packs/\">ON1 Free Photography LUTs</a></center>" },
      { "type": "value", "value": "0", "pos": "64", "visibility": "0" },
      { "type": "note", "text": "<center><a href=\"https://marcrphoto.wordpress.com/picturefx-pro-2024/\">PictureFX - A Free HaldCLUT Set</a></center>" },
      { "type": "value", "value": "0", "pos": "65", "visibility": "0" },
      { "type": "note", "text": "<center><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAC+lBMVEUAAAAAAAAAAADw8O8AAABiYmLv7+84ODgAAAAaGhoJCQjs7OwmDwjQ0NDu7u7k5OSPj4/s7Oy2trYAAAAAAACpqanv7+/Z2dnHx8fl5eWRkZFsbGzCwsLg4ODi4uLPz8/s7Ozn5+dfX1/v7++oqKgyGA0uIBseCwTb29vS0tIdDwzy8vLt7ezHxsb+rB26urrr6urz2sGTc63vUQPn5+fk5ORYkczWbo4kJCT9pBrY3N1YsJjVKAfkMQToRQCwsLCZe7CPaqZZMGX8pir3ggvd4d/y5tjT09Pz0q2am5vSZIJKHEakFBn7lBXkKA6xFQ7MHwL1awHzZQDyWwDbOgDy7eVZm9OTk5ZasYp/gYJZOXVsbnEZNmr3sGGzNVKzK0P6mzdNFjeEGjNeFC0dHiH9pQ/6jQjeSAPgYADX19fOzs5hjcXYn7yoqKh2VJIeQ4v0xIlbs3/GTWq7Q2LyZlH5q05hIkovMkKtHzDt1gLt2+Feo9eBpsSqqqrRfZ7QdJmJiotnRYRDVX72uHJJJFpdK1cVOVVKRk83Hk9yKE36qEBxFS6eGyz8nB32dw3XHwGek7eFhLSQeLFCa6/zzqN7XZvzx5ZKopXGVnVMLGkRXl5rMl6UNE1aGz66KC6UVSfY0wdmJATCFwQ+EgStbADqWQDv19niyNdqncmvyb1Wf7jj3bOQkrKGda9YqqmZu6Xt5aBBbZlusYbzhoD0vX7w33pfRXlqOG9HRW5bYWSLNl6eJUByHjyQGC7rTir+sSX2nwHNwgDJYgDBUABvks3E28y0wcyNrsi1rMKyoreOdK7Kw6tyqaGXX5OGd3Pma3OXd2xTWWctRWIpb2AoIl73mVDFrzgmLTNbjRJ3OBHQpgC/hQDahABgoNGlvtDgts7yzMzuwb6cg7qipqmkpKS4gJ+JtJs/gpuDdpdWcI44kIYnZ36rjn0eTnt9V3p3RHovjHEnhG9sdWoigmXweFRcglMtekwkF0qkc0Lh1z3VRDurkQCLhADNWgC0rmDQAAAAK3RSTlMABRL+FyPzRw0IIuj+Ou7HXtmKNi0Y5aqgl3lULNTPwKxuN82+rJCPjmZXgENtfQAABTVJREFUWMPtl2dUUmEYx4NLBmju9t7jBUFFAyQxxdSMUjRNwTRzlZlarkzLnC0tLRtmVrb33mV777333nvXOT0X7XTuvcTl5Nf+XzzH1//v/p5HDrzU+Z9/TP3mteybtmLUps+xkFqya9FnNBEOMf8boEGb1u0aGmFId4xMLVq3aV4fSQVcju56EwzRBxMNac9i6NxNQ2RIMCm/KVtn3wgZFNEQuU5AA8rzsX49bT1te1IFHjg017VbXfWEnIshtoTfgoBAjsw4VAHS/qAO/ZDksKgwAoEn5cd5IFSfItCF0vecNj0nOaxQCQSiQCAPoc4M8qurEdFf298YMiFMqYyKCvP8I+DOj5PDTzPyGtlmRAFbz+kJG0NwgcLIyD1uCWs3rcWgjgtkucMfGFMAFgRAT8/pG3NCJrgVSqCuUETtmTdy5KZ+mFbAC+FhkgBMYwLANiEnJHmCm0RiExlV5KvyvXENCGt5mMhDEOiB8NTVC8Cm4XU3iY1NpMJXpfJVxdzYO2/kJlwgMwtVAxgkgClhghyo20Cg7+fnp1LF7AOFFQgX4P8FYESYILm6L4ny9bO3t/cDwPW9XzFcIIhnCGDabhttX1nkZ+/s7LxoEQ5YgYQeAi8BogWk31mcsBsIEolSoYJ+dLTzopj9Cy8hngM/LkhIC0jfkLThokQiKVQqYQHOzv7+/tE4oFpAjmgBi08nJSUVKRSKoiJfGKA7DogGAQwEMoNE9IB+G5KSqqrstYG+TCbzj/658MdxrUAcogegux+q+vTpXhOZj4+Pf8z3K1d4GL4BBwMAwqGnv8n6aDMZ4uMji/7y8dMaJBwsCPRC9ID0oWO6Da+o9JFBoF1ZWVlRvjk7WwQCme9OGACAfq/hoX1r0rt370nls4O3rsRAwOv8aqdldID00d0AMKAiDapQ3hUeHj5+tutWKQjIt52f4dR/GQ3g9hgtILQiLS1t0qTwiYMm7hyf5/oE44FAftkbJ6f+7voB+AQzRwwIDYX+romDIDiAjwuczS97DwqPeIYBduyCxw+EzElJeYULBObnl70FwHqpXsCS0TABAHZAfc4cb28t4SgmAgFNftkzJ6fExIN6AcKhWsCO8J0pKSl5ed548oS4gEajeQ4Cievd9QLwfwOMUD4edg/JzfUeN64ga7BAvlWjefl4df/ExDWYfgAM0WtE+fbZW7ZsCXZ1nZWbCwAP9WW1Jj5+3WpcwAHRAIAwc/v212PHbg4OnjUrd9zn1Cy+OCI1Pn5q7Ik1yw6KEBlAfVNd/PDkyWHDcAIgLlwo4G8TR0D/QEb19PQAJL3n0qN0GKS0dGx2dtB9ccS5qVNjD0iRoQA0pcSuR3VKl2dnFogjlsfGxmYgwwEOq0rsID3s7Ipj1UHiiHWOjo5LD+kHWCCCwqpjOMHFpfipV6r4siMOQISwyAAz4nkxEKDvslKtrhYIOEw4N2aSP1wbEQHC4pIS6B8NzEoVpzoGBATclBLOW1IAloiUI1NWTjniELQNNgj9URnE08ZsEoDTFkOU8JBcnSo+NwqylHRMuaoyWI0QNfyrC0zEhw5nZNwiHbSk3jTZbU0pfeHcufNNCoRUMGbOBABZwZwyxHEcoOZRAZYsjo5LPLcp+ar64ur8BSYC6vMtuTqvumxus1ZEiTPQP0URaNGMy2boAjA4LOtmjc2MsT8A6BPLpi0am1uzCH0Cgs3iWltZ1fudDiYd6xFiZWXNZTEJ81Ms2EwmqybcTl25LEKYTDabwaD/TlMTDhdkCaEpUnUYdf7HgPwCbcV8KluLH2kAAAAASUVORK5CYII=\">  <a href=\"https://www.pixelmator.com/pro/free-luts/\">Pixelmator Free LUTs</a></center>" },
      { "type": "value", "value": "0", "pos": "66", "visibility": "2" },
      { "type": "note", "text": "<center><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAA5FBMVEX///8AAABJSUnMzMzKysr39/fW1tb9/f3u7u7w8PD6+vrn5+d9fX2VlZXy8vKSkpKHh4e3t7eMjIz8/Pz7+/t2dnZra2tQUFD5+fn09PTq6urj4+PU1NSpqamamprt7e3c3NzY2NjR0dHDw8O/v7+vr6+ioqKDg4NFRUXOzs7GxsY1NTUqKioGBga5ubmmpqaenp56enphYWFcXFxNTU09PT3g4ODe3t61tbWxsbGrq6uPj49vb29lZWVXV1dCQkIKCgrAwMC8vLx+fn5zc3M5OTloaGgyMjIjIyMZGRkTExMeHh4Ueor/AAADBElEQVRYw+2X53LaQBSF74IaoghVQIjei023Daa4x3be/31yV7vYBKyMCPlhe3JmgHMumk+rvbArATlRQM4iJ+gMARE4QZHvCxDFowFlwZcHkLtN9wl5NGo5YJIEpqyfVJ6kPUCS+LLF+Svh6tUYIMFzzE8pnhIfAzJjsqNr6zgA19mylZhxghwaUNV1jY2hlsIoX7b8VEcv6ANqNTax2QIN97pw2IUoP4xLp/FHyvfnaMfsG9lA76APAJjwJv+8V8wv0Bpv3EgMAgHwruwU84R5WeOwCh1WHMIA+EWUmDdxTl4rUJrhJEsQEuDSQpUH8Z6QjbvEShfCAkxaON+m2IqQn1hoQGgATHcBoET8NsERgKffARmCujwGQHYBWYdQTZXwgBwtdHgwDQwP+FrlQgMkWnB5KKC3rSG+t6ywgCLmNvd19JsYWDZ+JuVwAPcGc4F5j6DKtJm0M/NQAHX0/kPM99DeMdtHWwsGdLZJNGhcsAau0Wp84F30L14ggBiSiD5V95u+ov528UT9kK8HixmGXqERBEBNRmtulOAl7SYAsKulAscDRmSrx7oFfwEA5VZzHGc0qKrAVYkysYLKUycIEFr/Af8eoBuGQwGGYdxBKAVvrsUvClDib1I+w13atwOIirxXieUOABpZtycSOESDq+eN67afhVq/TXcCudHPZPJoPJrj7Z5Xstu9orkHUIkIlZkMBL2QMOV0FyAdBZQ0ToGQiQPP0SZcN0BNFz8ApIjpA6Co1zV5CxBGMlgVcQdwj/BS/gDQrbWawABiZpqDLSC3fqgrADuAzkuyasEB4K5WBg7ITsb8jD5O0Ppzaq45AFx9lYl/cAmwBQwbV0MOUEuKApD31/RGne5sBTWugjxI/gFQtS050WGAfGLQknF2YqYoe7YJcsuLRQQAXdsDNNhG3iRziD7aimJvKl7ETiYfElkn0RwXoIyDGDrJJR5W6RWTs8s9wIXkV8rSBbiSJIqSpCgSCnO2KlwA5CQLx1P1J78kdGJf67/w6QEnP3yfqF/1kj/apHwTgAAAAABJRU5ErkJggg==\">  <a href=\"https://discuss.pixls.us/t/help-to-create-a-set-of-pixls-us-color-luts\">PIXLS.US Contributors</a></center>" },
      { "type": "value", "value": "0", "pos": "67", "visibility": "0" },
      { "type": "note", "text": "<center><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAAZlBMVEX18vny7PauecS0g8jt5PPr4fHz7vju5/Tm2e7IptjXv+Pw6fXo2++wfMXMrdrj1OusdsPq3/C3icu6jc2yf8fdyOfUueDEn9Xl1u3ezOjaxeXStt/BmdK8ks/h0OrPst2mbL6lar0clnGlAAABY0lEQVQ4y5WT2ZqDIAyFhbIp++JWt5n3f8kBtVorc1Eu+ID8JCcJFF8NwimlnPxn5oJZO9d1xzDImIGwXRmgmzyUbW9vbijT/tHQbb3AVvOrHQkl6zd3cUcv9zs/XuP2pnojgHbLZ0xmnucVMam7am30kZ/yubQHh/ZVZ9DKNUr1qVxPpZp04IZdQVmubkzZDLAgFRybZr2iH5tOHEScjOKRhUUYbTx74OQKil1vLFvd4sWDCBhe+W4DCjeTxM0hzvOvVBBF4Me0U7UDUw/WIoS1ltFvAigpyhfgNE3qLFwj7UAcByDxCmDJ8wCXOFmAHes88GwFSCJFPeaBqWdbJwBEOQBBirde46HNAeUgyN5MHvQdEBLj13NgDKJPAISekeNBiWdAV8B6xVIKJwH1BZDlZj8JLVt4An45/B86cGMiAABnrioYJrdvh1hHgJNSutIWJPszYyOZYMyi3ZyFCCm+HH88KhF9A33HkAAAAABJRU5ErkJggg==\">  <a href=\"https://purple11.com/free-luts/\">Purple11 - Free LUTs</a></center>" },
      { "type": "value", "value": "0", "pos": "68", "visibility": "0" },
      { "type": "note", "text": "<center><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAgCAMAAAAynjhNAAAA1VBMVEX+/v4ODg4DAwP7+/sQEBD5+flRUVFubm7z8/Pw8PCioqJSUlKAgIC3t7dqamo6Ojrk5OTn5+elpaU/Pz8iIiIYGBjh4eHa2trX19eysrKtra1eXl5YWFg9PT0tLS0kJCT29vb09PSJiYlwcHBgYGBVVVVMTExCQkIyMjInJycUFBTt7e3U1NTR0dHOzs6+vr66urqRkZFzc3NJSUkgICAICAjJycnFxcWvr6+cnJx3d3dlZWXp6em/v7+1tbWWlpZ7e3s3Nzfc3Nynp6eEhIR8fHxaWlqIUZ+rAAABlklEQVQoz4WT13KrMBRFZUsCgwFhegdjinFvcb1p997k/z8pJJa7ZrIeNGdmaaTzsDdoXvFk6PFT8xrQbJxZBZ7lHVaNCxeNVrlmQ4BVzY/Rg0YkHWPwDXbmZHCrzXdp0gInWqOUmBeN+spsCMEFOHxe9AdUV4HXweAW+Gd7qFCtUbGzIGCg7nKzCcJx92ch4UyL3u5O2g3AHefNnueVXq9XH+mmS1fkEdVQI1wYZYoSxsWSc5N7LXLeG2cL68K37AU3ftBtWWqrdi+YQbjVXczSYync1v/OdI+ll3PyfwihkJZr1uNGFCmS9JZxosDUhFSryiDiEDBXs5ws/vRLF7N1Bz8v9xPl4DD0S60B3hXiNNhbD3r5qnAdAKyPQlv0xdad9kr93a81dIIyjPIJvNFAncryOqkHPJrJ8lQ9ad1JjhHDGB4fwnRMRnkDoFxTAYvOP9+sw4SizGWE6YWPBqco8lMBXkthQ6NIg0xSJznb7t95aN7WYKDPR7QG9mtpPpYoDmiJsuquRBTDd1VXMa4r+EuBvwA2hClvJ4GaGgAAAABJRU5ErkJggg==\">  <a href=\"https://www.rocketstock.com/free-after-effects-templates/35-free-luts-for-color-grading-videos/\">RocketStock 35 Free LUTs for Color Grading</a></center>" },
      { "type": "value", "value": "0", "pos": "69", "visibility": "0" },
      { "type": "note", "text": "<center><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAC91BMVEVLNHxKKWxjXKBTO4Pr6nZoYqXWemJON4BNLnVtbqzRa19aUZeILkrJIyaQ69NdV5vr6YyUaoPs63qIY3pKL3nag2QzHFnXc1jlnk9zQk1TFUdoMT1XxK9saKjv36BZS5Xi6JDq64TEb3bikW/hhmvSdWLe41pqOFjgaVI5GkmOEzHJQiu8Fh5u5NOD58dq18Viw8J357/l2bxt3LaqmK1dU5/o657p6pNZSJFWQY7X2oxUQ4lFNYatdX+khXybbni1b3Xm2HB4V25TKm6SXW24ZmmiYWeGVGadUGBeJGBIHFqGSlnJZVhVFVLQalFtIE/PXUlVKEi/QEbjxkWtMETi40GdOD+SJTx4JzuoHjjcMDdIFDK5GyufECS9IB2A69zHwsiT8L7s5rRy5a3Y7qPGsqKCmpuBeZVRdJLHzYnTm4nIh4aJcIJVXHvh5nrlmHrmv3Xl623gdGO/cmPFXE1MLE3TgErhgElGQEeEO0ciGEdJG0PlcUKHHEDJVz65JD3fPDhlFzDULSnCLSWDzOGm0dt81dBe1Lea8bCH7bDSvq6Nf6qF36fPyqXNjqJqhqE6QqB2d5muiJjJ5pWjmJFShJB90Y+xu4lmV4nW4oRSNnjJqHLNdXGqdmiHNWXd42Ti1WNlOWLGX2GyVFy2ZlvJV1pSOlrXW1nmkFU2LlLoslCORk6tRE15NEvlp0rlXEo7Y0eWNUVdPEBkHTzgTznSNTnMJTfTRC2wHyPC79mUu8Sqs8Oqn790q7ZdqLWNl7WzrbOMnq+DtKtydaedw6WprZzij5dfzZPDvo6ZeI5qZ4XQwH7FnHt6WXk0N3dsPnTlzWy0mGxnLWztiWooF2pEZ2nkxWc4JWW4iWPewl/MR1/YnF1DQViYKlaOY1Xfr0ujgj8bMjGJJS53DieS2Liai6k4W6bc3Z9gwZmKgJDxrI7zqIyl1IttQYVajoCMhnyWYHpYU2rgrmeOkmWpLGDOk17YiVrFLVXm2lHdp0W4cjZMJjAgVhoxthLEAAAEA0lEQVQ4yy2RZVTaURjGr4LIGDAQAREFJEbZ3d3dCfbsmt3Oud7sdnZ317q7u7u7ex/2F/c7771fnt957jn3BZl2+HPbjtXRaJHa4Rs37t6zt3JjdeyRIyuWUFZWlgG9lnhrWry29sHT/UN3kw/FxFXur4zdrrycy8hIgxAzPF6fFt6kWFoUUBQUdO5AfVxybJO0zDLS0qC37WON9p7+kCdisUikKhajD1Qn42FQsswq4GpnqxvOfSIOxWCgwSwKxrY/I7RI6+mtkrAStDJt9zpgFueD160LDg6eDxII7m3XldLTWymBbgimbU/pWkz4e1H9vb29R734BR5FM45dRnp0QzqdbmhoBLL4+Wav4p5XXZWXancyJTm7uV0u8rZuoRuaGJmYGMFggMAdwl+LS25y43eVdOW7KSoqerT3EWyMTGAmMBhMVhZQKf1Jk5O5fHDVcXbqPD8EEtDdFk6ykhQ6gOJAqJn+O3m+aiVqIvRdlfOFyx4BrWZOSFlTU1MAZAEIzM09VffoUf4N+ze8OdGFfBKpXZCR6GQDlS9hCubzqC7hFS7oktTX6bO3S77e+1EykpDgZiMP/iPq8X9skeA50N1qNzBVMBMYNBdw/2yCkw1SHtkiEfz9A0tdEpm2tvYuFK8Qr4JS3wDzm5e4zlJIJFIeQEOhUKf/mFs4BFo6otHomZCxQPRohu7pIZKUPFRigwS5dz992LaG4MI8XsG87RuE9uAKVBdqNuyqdpaSAMrLjQ1o22KTLC3tRxwfB4wVcFUxC3UaYbsdSDckghwcLodbs8bawt6uezQvj5slUF2/LkZTbVP6cWs+ieQMOlavhavspJknmVky7RwpWb4iSNinqaHmeuUKOxGfBVZLBKu0+4QkB4K1l2+wKma9t6bmZrWMwpycVPNDYHUHHK5y5uKtO70UKnVqbn1oaFmZvabGZjXzwpzBtvr3ACqQw5252GmVVihcmBAulgmFwhglSDhcODj47Vr9kgDHnUyz6ryV7c7jCYuLPXmZm5R0dLQ2ZSsoKNz5AjpSUlJwJ3dadV7/ziYXu5PJnrw2rJKWuk7YpeFhhXEfkMKIxxlrZ6Rd/5xd7IlIZZPJvGMSQf3o+PD4Lx/AaGQYG0f2sFgshKc7KxVBZBOfYpWwWupa6tATD3xAI8OgERfZgyIi3N3JLCKRxT6rs+sldmtEVNjNnOwHfqDWIN5YRd9sIB2BQBARHOg6vCO6IWLrlqiwmNnfPn6AwYhXgf7aN53DRnA4KA654ugO/bc7tmyN0NhX9hASDJqb5eBykSN9KFdXFArFSTwY3aBfe2JLFFZpQ+nDn34gulkFWpdBeV6fa2YmCsXUfVHbEK1/IiIKu3+DItXK7x94612QcMazZgAAAABJRU5ErkJggg==\">  <a href=\"https://www.facebook.com/shamoon\">Shamoon Abbasi - FreshLUTs</a></center>" },
      { "type": "value", "value": "0", "pos": "70", "visibility": "0" },
      { "type": "note", "text": "<center><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAE4AAAAgCAQAAAAWXYa8AAAG3UlEQVRYhe3WaYyV1RkH8N/cWa7AzCiCIiMuSBW3AtagYLQWitpQa7VVazRgMLbEiEuitqRRa6WgRUxFTRfjiMaoVGuNQm1IaajLB7WKbcS2Am5RtDDDNsyd5c7c+/TDe+879w5D0v2T//PhPec5zznvc/7Pck6NMr6f9rarxCqfGAqzHTak/N/HmLR3e/Kpq5ydbtI/ZVcZ/337dltZMaoybsapPy13O6BjDL4J2kvyd8ASd8IfNNDutHSD1Y4GJ6SSnej2WsVPRlbNDcK1VaMq44p27a1fjSNAxuegSxcjjEtnh5sw5KqTfZgeD5+3w5YhFfP7No7T3aRNrbqWlz2o4Bj3F8q7/sLbrvbD0qjenW7Q4nJ3GOVh39DHNLIWu9FUtyekNT9hbTNaLPSxY/Elvmo5rJar+nk1bVXGFWF/a92Helf5gVsNt97CVKWlRBxl8hocgTrjLPATUGMCmqyzFGMscqrFcKHnNZVXdyefakdV07Y3c2X0uc/awcKWtHfx4HUvmaZliPTZar5VTrSBYyHrJK/oKYArbAKrdQ5tRaZqtDNtjipHRbdu3Z7z3NAbJKi3yCKaZGXRo8c663xEeMCF0ACTNWnxXnnZmIryMQT2Yu5kl6g13pG+C45zCdjsdRxVGlE/sPRVI9nQtMOZXqjebLMW/uTSVDDb8ybb5hZLTTF+36RhMHPo1G6rjVv2bJm3RafOPjk5Ob2gPMrJiYFFO3XyI99TDzUV270s351vyJfjabfXjNHuU42m2VPTWam7FwaYy2o0hneSWNvypDvNtMNmq+D4ROmjZMSwrMvLK8eWf/yYq+ofkFhYwnwOtQ3eTA7XpNlmpzjBbusM092gxlwTMHpfxk11tYOqZvpef2rC1B0HqwXnlaXqcWaF3jTZMv+Pe8avyyTNKit8xctwpAsadDvaWw7pru3ett8XnOYlWFxRKaEoXKdQNi7jEaPJ+pITZaz2Lr6ceXhsQto5RnrX06DWGWrQoCmpDMOgxQywzlIHOgCcrh4jzLfAVH9Ei6IjrJcd9mI37VrU6WUcTS4wwe7ydVh1K45VVJwa2yJBPu6Px/I394mT4pPoL0k/iNnxUL458lFGV/wyfh5iTBSiEjNiZjwYuyokb4QQcyOiKw4PIS+3PZfLNeQUxfHxUUmvEPdHbcGzib/SmEvIa7XGIa41yvW21jHPWO3u8r5p5mjzM5B3s35jzXWxe7DLSpd6Ja2MH8hZ4yIstwd8mvIwzG2uGJSIrcZZaaWxbnJYZaKVmRsbxdgVmRCiMUaEvJgYfdEVk0MIMTKEfHPkozOyIcQ5EfFiCLEwIu4u6ZVbW0S0VEnmRsTfIx/Hh4JCmbn9ohj50o63xP4hZS49QU6vRnNk0CnHNi5S5yl/hnZtO9u0oVhqJT6GGxIdQ4t5XMaiKkmfPerNV4s+u+kloS81rkOrWiusd2Xyw0OZTJJP3WaZaKKJ6Y4Z9nM93kpFX7TMMsvMJr0nby3JRqRa7VY5P6bVqElSiYLlwnIbLNAIw5xl/IDxzbpFXTwTOyMi4uOYGUKsiYgLQngk1cs3F/KFQmFDvB27ImJbHJO6tYw7QmhL3FrGQalbfxwnRX9xbVGxvZjLNeTkRCZuKGl3xXlJCCwYYK5DK/1eNd5NPnaoZxyMPRgFF5luuukDj8iMJvvb5GQb0xM+aooppri3wmVnl2Q7Kih/05NmmqmDLIiiu413jfcMszJ5ElbcHJclcbQwhGiOv0XEpSFui4gVyUn6y625kC90FrIxKnZEX5IsxSESom1fCXFXiKOLPfHbeDVy0RAKCgrJ/PB4PSIWhHBNVcwxr6apRON7JdN/peBbCV21aqfX1tQOaG+3TF3yWh/qftzrKqrEJq3OqniBzckcCLq8W7VdWucu06pLj81Ocbac32ODFa60zj0+cIZvW+JWkrdYQf29FjjHrLS6TXJVqfeCv5R6c+0Gea2V1hUX1841TheY7WFtHvBXk5yv15pBR7lMcWTxifQu2BVfLzkiGw+l1X9zTA79zfl8vjOfzQuxICLeiMyghIj4Tlrnyuiocqt+sTii5NbGQmv0lfR6Y07y52sGXHKZR1GzxIcO8Knf2E5BT1IBjjNDk02e10Ohrvg1RasU80Y0OFeN3+kw0YkVZ13vfZxbinfo9ywON9VGb9GpsdlZ+j0nisgcaZbRtjrBjeSFSQOZNtIT+sXCyvDdZaGHyqGatnzaOgfN/Cvtrop+Tt/AaGEIveYkZg1E3xLmJa/mfVb3/xQ595HziY2OSYUTspnrkrwcTaOb4cZkauCx2cGK/5VV1XjawMWSdV2vpUm/Z7DiQCnZ+n8w6zN8Bv4Bs+PSzRd3ZU8AAAAASUVORK5CYII=\">  <a href=\"https://www.smallhd.com/community/movie-looks-download\">SmallHD Free Movie Look Pack</a></center>" },
      { "type": "value", "value": "0", "pos": "71", "visibility": "0" },
      { "type": "note", "text": "<center><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAAAAACPAi4CAAAK/klEQVRYhT1WSY+d13E9p+p+3/fm9/r13Owmu5siJcUU7CiSoMBwEE+AF0GyCIwgWWSTZX5Tss/CGRQnAQJtBNuR7GiyOIkS526yu9lzv/l991Zl8cjcxd1V3apz65xT/LFQRAkjleJCcZEgJtSgImWCBpVEMheB+dCqzTpVVFQpZCBJEoCJqTkUEUEEcHeDm0FJhzGoEJwqAIgISSpdhCAJgqQj2RSpjBESlDBPMXIWAZgRRFA6jBTQRJgxkITDCTelUzyVVnEnYIBd7FbrrbbShUiBZm5uCEIA4qB4cAIKigkgGUSiu7i4J0yenz0yD9XWXHZtPgZ31wgaHQJxCiiQAMJjIDSBDKRElVB4iv3TRydwIvb6x7q3fWUuZESGBIIESNAVDEIYFCAAU4qTeRg8f36ePDngAG2cje4NLl1Twl0DGUACIB0MLtEdJNRJwt2sf38nOkgD4YQTcdx4gsmNhsBtJOICQYADShGI5oFwqgpFtOh99agE4EY4hLO7rA6mN0mlK40UETeZYQAKCZoFAGTv26cGMQDwV82aechCq2PqTroKaITCPaiQQop76cmFmH711CAOYJZZyMAmk0VMlr10EcySiogIjEJQFO4klDGdnhrgDgAERFTdCiukHGtRxtIoQoiA0NkbAiEVgSFkGuzg9hSAU2YT7qJZRSybhoBTCSlNIgKVqirQoEIIQRFhKLJM05ObF3j5OEgyIEHawvmSzbE0AtxeVQ06NKgEOlHqrKWzZ8NZPAXuDnpWWNDFSYWDYTEQFyAahOIkZFa7JBAucFfbuwBAODVLZiIMWa1W6VzSgQ8OxzaqpmiuAgfBl/CFGKV0MmgADmfoC2EAQ6XWbDZXi8WlisZiVH46yINYGSkCkuIkidCfIoHCLKvHM8Kz5ABKZ1bUWp16d67ZCvUi804Y7VG0lAB/+UEkTEM/WgIpUkl7ycGiL6C55kHVzenMKyHLKHLj3gZS5pGAEcYEOhD67k4hxaanDsoEJo4gRk3msEqtqFZrQRAWlzJ3CGb8h8ON5sEpIEnaZALMZERUIbkKzDS0m/V6NQRH9b3npSRipj9IQohFAWbyl9LUADcD4W6A5bmYhKLSqGZ5HkIW/tDdQJhHJxxmniwFnQ03gDgjEJyECZHnUiGrDNVKpq7IKks7hMOjG41kdEkSRJ1CwpzE7DjcocIiE9X+PGFGRC2zhYcCh00nQojThZQgpGiAJ6sUQ/x/CobcvCLoD/vjoEoaymlWqieLMiJIOCiUAIhq5s4yqw8BgA7AXWjlWD2Oy0HVEiDuKSY3WIpxQorDha4BAFXcqK6zWBBwWnQrW/W8KCTkgaKUiaUEmLs5zCBwCwgz2RG6e/GqAUKVKUVGSJKqMEBkNCiHl9PpRIQOB0AIRYMT7oki7oEzLoChEEOiVRauzdcn03FP5aC31PA3eiuN/dsJLs4ZbTXA3ZOpm7somAAGreQ5vXJ943VrHvZevH+yfWdrY/6xd89jZeNBAujCGYaiixQ46HTwTBQAzajiYf677x7vXPXdi8/Ww2r55Oa/fLHSOJi2vu0xCyQVQlXVZSVe+msYTl0cDhFVbaab733z64tvh0cHYfGz1Um39oO5wXHtYCeKZgQUKpoFXRWhgBQR9R4pADVoVmsNe3fz7P0/yc5H7774dXVpc+G16u9DY3iRmGWAQkSChFCSIEVISiVzxJlYiZRF15q40O1u+clo59alhg/LSZYfAjAHnXRxoTZSTDHGVMayTHEaASdVxVBbaG/E8qzS/2XvzkRaGzLo7q1jF5FZ9rJolSyMiFdLCoXuFCbzNLU8yzxolu3fbz89qZ0d795Q2R7cIgAXgAICbiGSmQZRlKXRQXe4lQTTKMUv/rTZlta/PWlVsoWrCdx/4HCSThenOwARknmt1e3UAkFlMCcsmpWD81jePq+tnDxo31jPZLjj1naQFDqUboDBQ5YYavWi5igdKIxZhFuCxFFeSGd9cdC/dtbPN1r79X5VXPzVPkVBoiUpgmggNaOnyWhkxExtUkzJ653G0Ye/Pxker/1l/x//YxATASfcQbNksJhmO6APjs8HCaDFFAjCPYomqbZuf3ASneGwj/Hdo79/vPuaT6MAcCHgbikAcBsdTwGbGXcKdKfREplu/W5SqzZWNucX64df7X3y6NY3PxuftZsAnQBNki5E5+R0Yswi4HDBrE2nhcL25LqepuJSd9C8tIPJzvQobWGy2J5AoJQgqt2EmCiOGtNLMs/2A/cylZ317w0qV9+6vFqd1nKVpzZZ8+3Lh0tLWopIyIoiRJfgoZoGkyqn0eFiQsCB5OPqCJPW3Prl6l7vSmd4B1msZ5ealU5/uDJ3NpIs5IU2Qi1rprzZaWeSTADaS/uFW3lxeFJfnMvVaiuDX9yeFoOtP8q2NfcUkTc8rzca2gxZqGfVuZZ2uyMYAFAdIEAvy9HZYSU8jQvNna8/HlbGtb9+1Fk6Ppg/u5jLB52sUm0El8pYNlr07XEaXRwNWdJU0szlCJS9L/dCdf3g4vaFDLM/m398dbhzBXcXFsaf/nCU50XINXh3rt1KCYdXH5XTKEyel9E4U2efHve69w8aZ1+P6/H6u/unq/1J8ezB6wxom2QaqtLTzqXVwzJvflubO6EL631WptOZwJpDpxf3cj3tozn5YfujYv6L+uBhb3XwJPrCQBFGYbVbPL3cHLWL+YPNwWggca5kyMLYZmNL48QSo1fX33j7+b2Not89fVTpTr+e73cKoWzkR7I++bzeWGheH/XmuwrvrbBozHUKzLQbPp3EaVlbGVwPd19s+tCOT9eHg4vX0jCHS3xn9Sxeu/f1mlpn7sFqJXfp5e2i2VlZbunM+5PFGFqL1jjafyhb5jgbrqZH9bU0ITw8kR+fvqi8/vHqZab1m5ivjTXub581m95fOO+N6im7KGXh7PJ5ZWX3V/F5e2Es43NflYffq+BJPUdo7Hz483Snsfmff8dsufJssX2iZSlr+UKIvWVpXFnvnD5YPPqHzVsX2dtf7o62mr3q8Xmz+6x/Pcnu0prL1sbJB43N+Gb/5py2l+8urlGycr9db65trCyvrnZXVt7+i9c/K4KM9n9TT7Kpvf1e64r+9vtZ6j87VZOl7/7B9J/ml+LlD6fN7psv0mbHi9R/tpTVFy9vbm0u1wqMd7/UehhP+Z2dzjqf7zVWrxxurUe9vzcnSXrV7e+3/3l98ubod97Yzh5d+Q4zxdG/p0qj211cWmzw4vC/x7WqB9w46i0vDp+OiqWNxuaJ73z4xiohpweNpZ8s/dcGrv1qitX1O42tBpYqOv7IREXzzM+fff6b+XoRqlI+bCy0Dp82tlBt3a/3/7X4SW4qzUen1cofF98239g96lde359uXIMsZ23/YJLG5bD/7Iv/+cXgnaXxtm3H0FyR+8dvNk/rd2qTX+78TQum+qODk+WOLt2/5vvT9ebok/XNyQ7qrfLFwc1qZXT++NHzj3fzn6fdt+/PNWzhrfy35z8d78vz9Y8+/9srNfGgf753wWankSaXejffqcb/xQ+mJ2fSmNuT8uvYfnK0d+tJWvlRfNhZtkqY3xp/cum9OzIInz7+q2vVzEEpwuTisJe/Cb8+Hpe17tNs7Y3KpF9fsmp29+zxN/eeprBxXlu7srDWaTWyx/230u328WdnP10qI6INpNOU1enDs/r2cG1ldxzapyeLq4u4eHItTVk5OxocRORbe8MbwqvIG+FZ49qzi/Mv597v7JxLCXvwf/yT2b+v/qeLAAAAAElFTkSuQmCC\">  <a href=\"https://www.shutterstock.com/blog/free-luts-for-log-footage\">Todd Blankenship - Free LUTs</a></center>" },
      { "type": "value", "value": "0", "pos": "72", "visibility": "0" },
      { "type": "note", "text": "<center><a href=\"https://freshluts.com/users/52679\">Youssef Hossam</a></center>" },
      { "type": "value", "value": "0", "pos": "73", "visibility": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.         Latest Update: 2023/06/01." }
      ]
    },
    {
      "name": "Color Temperature", "lang": "en", "command": "fx_tk_colortemp", "command_preview": "fx_tk_colortemp_preview", "parameters": [
      { "type": "float", "name": "Color Temperature", "default": "0", "min": "-20", "max": "20", "pos": "1" },
      { "type": "bool", "name": "Automatic Color Balance", "default": "0", "pos": "2" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "3", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Tom Keil.      Latest update: 2012/04/05." }
      ]
    },
    {
      "name": "Colorful Blobs", "lang": "en", "command": "fx_colorful_blobs", "command_preview": "fx_colorful_blobs_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Create random colorful blobs to be used as a palette. " },
      { "type": "separator" },
      { "type": "choice", "name": "Colorspace", "default": "1", "pos": "1", "choices": { "0": "sRGB", "1": "Linear RGB", "2": "Lab" } },
      { "type": "color", "name": "Background Color", "default": "200,200,200,0", "pos": "2" },
      { "type": "bool", "name": "Display Blob Controls", "default": "1", "pos": "6" },
      { "type": "separator" },
      { "type": "point", "name": "Blob 1", "position": "25,25", "pos": "7" },
      { "type": "point", "name": "Radius", "position": "50,50", "pos": "9", "visibility": "0" },
      { "type": "color", "name": "Blob 1 Color", "default": "255,0,0", "pos": "11" },
      { "type": "value", "value": "-1,-1,-1,-1", "pos": "14" },
      { "type": "separator" },
      { "type": "point", "name": "Blob2", "position": "75,25", "pos": "15" },
      { "type": "point", "name": "Radius", "position": "50,50", "pos": "17", "visibility": "0" },
      { "type": "color", "name": "Blob 2 Color", "default": "0,255,0", "pos": "19" },
      { "type": "value", "value": "-1,-1,-1,-1", "pos": "22" },
      { "type": "separator" },
      { "type": "point", "name": "Blob 3", "position": "50,75", "pos": "23" },
      { "type": "point", "name": "Radius", "position": "50,50", "pos": "25", "visibility": "0" },
      { "type": "color", "name": "Blob 3 Color", "default": "0,0,255", "pos": "27" },
      { "type": "value", "value": "-1,-1,-1,-1", "pos": "30" },
      { "type": "separator" },
      { "type": "point", "name": "Blob 4", "position": "5,90", "pos": "31" },
      { "type": "point", "name": "Radius", "position": "50,50", "pos": "33", "visibility": "0" },
      { "type": "color", "name": "Blob 4 Color", "default": "255,255,0", "pos": "35" },
      { "type": "value", "value": "-1,-1,-1,-1", "pos": "38" },
      { "type": "separator" },
      { "type": "point", "name": "Blob 5", "position": "5,90", "pos": "39" },
      { "type": "point", "name": "Radius", "position": "50,50", "pos": "41", "visibility": "0" },
      { "type": "color", "name": "Blob 5 Color", "default": "255,0,255", "pos": "43" },
      { "type": "value", "value": "-1,-1,-1,-1", "pos": "46" },
      { "type": "separator" },
      { "type": "point", "name": "Blob 6", "position": "5,90", "pos": "47" },
      { "type": "point", "name": "Radius", "position": "50,50", "pos": "49", "visibility": "0" },
      { "type": "color", "name": "Blob 6 Color", "default": "0,255,255", "pos": "51" },
      { "type": "value", "value": "-1,-1,-1,-1", "pos": "54" },
      { "type": "separator" },
      { "type": "point", "name": "Blob 7", "position": "5,90", "pos": "55" },
      { "type": "point", "name": "Radius", "position": "50,50", "pos": "57", "visibility": "0" },
      { "type": "color", "name": "Blob 7 Color", "default": "255,255,255", "pos": "59" },
      { "type": "value", "value": "-1,-1,-1,-1", "pos": "62" },
      { "type": "separator" },
      { "type": "point", "name": "Blob 8", "position": "5,90", "pos": "63" },
      { "type": "point", "name": "Radius", "position": "50,50", "pos": "65", "visibility": "0" },
      { "type": "color", "name": "Blob 8 Color", "default": "0,0,0", "pos": "67" },
      { "type": "value", "value": "-1,-1,-1,-1", "pos": "70" },
      { "type": "separator" },
      { "type": "point", "name": "Blob 9", "position": "5,90", "pos": "71" },
      { "type": "point", "name": "Radius", "position": "50,50", "pos": "73", "visibility": "0" },
      { "type": "color", "name": "Blob 9 Color", "default": "255,128,64", "pos": "75" },
      { "type": "value", "value": "-1,-1,-1,-1", "pos": "78" },
      { "type": "separator" },
      { "type": "point", "name": "Blob 10", "position": "5,90", "pos": "79" },
      { "type": "point", "name": "Radius", "position": "50,50", "pos": "81", "visibility": "0" },
      { "type": "color", "name": "Blob 10 Color", "default": "255,64,128", "pos": "83" },
      { "type": "value", "value": "-1,-1,-1,-1", "pos": "86" },
      { "type": "separator" },
      { "type": "point", "name": "Blob 11", "position": "5,90", "pos": "87" },
      { "type": "point", "name": "Radius", "position": "50,50", "pos": "89", "visibility": "0" },
      { "type": "color", "name": "Blob 11 Color", "default": "128,64,255", "pos": "91" },
      { "type": "value", "value": "-1,-1,-1,-1", "pos": "94" },
      { "type": "separator" },
      { "type": "point", "name": "Blob 12", "position": "5,90", "pos": "95" },
      { "type": "point", "name": "Radius", "position": "50,50", "pos": "97", "visibility": "0" },
      { "type": "color", "name": "Blob 12 Color", "default": "64,128,255", "pos": "99" },
      { "type": "value", "value": "-1,-1,-1,-1", "pos": "102" },
      { "type": "separator" },
      { "type": "note", "text": "This filter can be used to create custom palettes with given color shades. It has been inspired by <a href=\"https://research.adobe.com/publication/playful-palette-an-interactive-parametric-color-mixer-for-artists/\"> Adobe's Playful Palette</a>." },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2018/08/26." }
      ]
    },
    {
      "name": "Colormap", "lang": "en", "command": "fx_colormap", "command_preview": "fx_colormap_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Remaps image colors to a fixed palette. " },
      { "type": "separator" },
      { "type": "choice", "name": "Colormap", "default": "2", "pos": "1", "choices": { "0": "Adaptive", "1": "Custom", "2": "Standard (256)", "3": "HSV (256)", "4": "Lines (256)", "5": "Hot (256)", "6": "Cool (256)", "7": "Jet (256)", "8": "Flag (256)", "9": "Cube (256)" } },
      { "type": "float", "name": "Dithering", "default": "1", "min": "0", "max": "1", "pos": "2" },
      { "type": "separator", "visibility": "1" },
      { "type": "int", "name": "Number of Tones", "default": "32", "min": "2", "max": "256", "pos": "3", "visibility": "0" },
      { "type": "int", "name": "Number of Colors", "default": "8", "min": "2", "max": "8", "pos": "4", "visibility": "0" },
      { "type": "color", "name": "1st Color", "default": "0,0,0", "pos": "5", "visibility": "0" },
      { "type": "color", "name": "2nd Color", "default": "255,255,255", "pos": "8", "visibility": "0" },
      { "type": "color", "name": "3rd Color", "default": "255,0,0", "pos": "11", "visibility": "0" },
      { "type": "color", "name": "4th Color", "default": "0,255,0", "pos": "14", "visibility": "0" },
      { "type": "color", "name": "5th Color", "default": "0,0,255", "pos": "17", "visibility": "0" },
      { "type": "color", "name": "6th Color", "default": "255,255,0", "pos": "20", "visibility": "0" },
      { "type": "color", "name": "7th Color", "default": "255,0,255", "pos": "23", "visibility": "0" },
      { "type": "color", "name": "8th Color", "default": "0,255,255", "pos": "26", "visibility": "0" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "29", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "30", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2011/12/27." }
      ]
    },
    {
      "name": "Colour Space Swap", "lang": "en", "command": "csswap", "command_preview": "csswap_preview", "parameters": [
      { "type": "choice", "name": "To RGB From", "default": "0", "pos": "1", "choices": { "0": "RGB", "1": "sRGB", "2": "CMY", "3": "RYB", "4": "Ohta8", "5": "Ohta", "6": "YES8", "7": "YES", "8": "Kodak1-8", "9": "Kodak1", "10": "Lab8", "11": "Lab", "12": "Oklab", "13": "LUV", "14": "Jzazbz", "15": "YIQ8", "16": "YIQ", "17": "YUV8", "18": "YUV", "19": "YCbCr", "20": "YCbCrGLIC", "21": "YCbCrJPEG", "22": "YDbDr", "23": "XYZ8", "24": "XYZ", "25": "HSV8", "26": "HSV", "27": "HSL8", "28": "HSL", "29": "HSI8", "30": "HSI", "31": "LCH8", "32": "LCH", "33": "JzCzHz", "34": "HCY" } },
      { "type": "choice", "name": "From RGB To", "default": "0", "pos": "2", "choices": { "0": "RGB", "1": "sRGB", "2": "CMY", "3": "RYB", "4": "Ohta8", "5": "Ohta", "6": "YES8", "7": "YES", "8": "Kodak1-8", "9": "Kodak1", "10": "Lab8", "11": "Lab", "12": "Oklab", "13": "LUV", "14": "Jzazbz", "15": "YIQ8", "16": "YIQ", "17": "YUV8", "18": "YUV", "19": "YCbCr", "20": "YCbCrGLIC", "21": "YCbCrJPEG", "22": "YDbDr", "23": "XYZ8", "24": "XYZ", "25": "HSV8", "26": "HSV", "27": "HSL8", "28": "HSL", "29": "HSI8", "30": "HSI", "31": "LCH8", "32": "LCH", "33": "Jzczhz", "34": "HCY" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "3", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "4" }
      ]
    },
    {
      "name": "Contrast", "lang": "en", "command": "afre_contrast", "command_preview": "afre_contrast_preview", "parameters": [
      { "type": "note", "text": "<strong>Enhance luminance contrast.  Filter by <a href=\"https://discuss.pixls.us/u/afre\">afre</a> 2020 Jan9.</strong>\n\n" },
      { "type": "int", "name": "Amount", "default": "50", "min": "-200", "max": "200", "pos": "1" },
      { "type": "bool", "name": "Ignore Alpha", "default": "0", "pos": "2" },
      { "type": "note", "text": "\n\n<strong>Note</strong>\n\nG'MIC's preview is inaccurate. Apply the filter and review the results in your host editor." }
      ]
    },
    {
      "name": "Couleurs Metalliques", "lang": "en", "command": "Couleurs_Metalliques", "command_preview": "Couleurs_Metalliques_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Rendu - Rendering" },
      { "type": "choice", "name": "Transparence / transparency", "default": "0", "pos": "1", "choices": { "0": "Conserver / Preserve", "1": "Supprimer / Remove" } },
      { "type": "choice", "name": "Rendu / Rendering", "default": "0", "pos": "2", "choices": { "0": "YCbCr [luminance]", "1": "Lab [lightness]", "2": "HSV [value]", "3": "HSL [lightness]", "4": "Linear RGB [all]", "5": "RGB [all]", "6": "RGB [all]" } },
      { "type": "separator" },
      { "type": "note", "text": "Paramètres Filtre Noise - Noise parameters" },
      { "type": "float", "name": "Amplitude", "default": "22", "min": "0", "max": "200", "pos": "3" },
      { "type": "choice", "name": "Type de bruit / Noise type", "default": "0", "pos": "4", "choices": { "0": "Gaussian", "1": "Uniform", "2": "Salt and pepper", "3": "Poisson" } },
      { "type": "choice", "name": "Étendue / Value range", "default": "0", "pos": "5", "choices": { "0": "Cut", "1": "Normalize" } },
      { "type": "separator" },
      { "type": "note", "text": "Paramètres Filtre Local normalization - Local normalization parameters" },
      { "type": "bool", "name": "Double effet", "default": "0", "pos": "6" },
      { "type": "float", "name": "Amplitude", "default": "0", "min": "0", "max": "60", "pos": "7" },
      { "type": "int", "name": "Rayon / Radius", "default": "6", "min": "1", "max": "64", "pos": "8" },
      { "type": "float", "name": "Lissage voisinage / Neighborhood smoothness", "default": "5", "min": "0", "max": "40", "pos": "9" },
      { "type": "float", "name": "Lissage moyenne / Average smoothness", "default": "20", "min": "0", "max": "40", "pos": "10" },
      { "type": "bool", "name": "Imposer valeurs / Constrain values", "default": "1", "pos": "11" },
      { "type": "choice", "name": "Canaux / Channel(s)", "default": "0", "pos": "12", "choices": { "0": "All", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "Linear RGB [all]", "8": "Linear RGB [red]", "9": "Linear RGB [green]", "10": "Linear RGB [blue]", "11": "YCbCr [luminance]", "12": "YCbCr [blue-red chrominances]", "13": "YCbCr [blue chrominance]", "14": "YCbCr [red chrominance]", "15": "YCbCr [green chrominance]", "16": "Lab [lightness]", "17": "Lab [ab-chrominances]", "18": "Lab [a-chrominance]", "19": "Lab [b-chrominance]", "20": "Lch [ch-chrominances]", "21": "Lch [c-chrominance]", "22": "Lch [h-chrominance]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [intensity]", "27": "HSL [lightness]", "28": "CMYK [cyan]", "29": "CMYK [magenta]", "30": "CMYK [yellow]", "31": "CMYK [key]" } },
      { "type": "separator" },
      { "type": "note", "text": "Paramètres Filtre Boost-Fade - Boost-Fade parameters : Siif Amplitude Sup. 0" },
      { "type": "float", "name": "Amplitude", "default": "0", "min": "0", "max": "10", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "PhotoComix Options" },
      { "type": "bool", "name": "Utiliser / Use PC Options", "default": "0", "pos": "14" },
      { "type": "float", "name": "Filtre Pencilbw Taille / Size", "default": "0.3", "min": "0", "max": "5", "pos": "15" },
      { "type": "float", "name": "Filtre Pencilbw Amplitude", "default": "60", "min": "0", "max": "200", "pos": "16" },
      { "type": "float", "name": "Opacité Mélange / Blend Opacity", "default": "1", "min": "0", "max": "1", "pos": "17" },
      { "type": "bool", "name": "Mélange Permuter Calques / Blend Revert layers", "default": "1", "pos": "18" },
      { "type": "separator" },
      { "type": "separator" },
      { "type": "choice", "name": "Type Aperçu", "default": "0", "pos": "19", "choices": { "0": "Tout", "1": "Rendu en bas", "2": "Rendu a droite", "3": "Rendu en haut", "4": "Rendu a gauche" } },
      { "type": "separator" },
      { "type": "note", "text": "samj      Dernière mise à jour : 2015/03/31." }
      ]
    },
    {
      "name": "CubeHelix", "lang": "en", "command": "fx_cubehelix", "command_preview": "fx_cubehelix_preview", "parameters": [
      { "type": "note", "text": "Implements and extends <a href=\"https://www.mrao.cam.ac.uk/~dag/CUBEHELIX/\">the CubeHelix family of colour schemes</a>, allowing for interpolation between two colours as well as scaling the helix dimensions for each individual channel based on those colours." },
      { "type": "choice", "name": "Pre-Greyscale", "default": "1", "pos": "1", "choices": { "0": "Off", "1": "Luminance", "2": "sRGB Mean" } },
      { "type": "float", "name": "Min Threshold", "default": "0", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Max Threshold", "default": "100", "min": "0", "max": "100", "pos": "3" },
      { "type": "bool", "name": "Pre-Normalise", "default": "0", "pos": "4" },
      { "type": "color", "name": "Start Colour", "default": "0,0,0", "pos": "5" },
      { "type": "color", "name": "End Colour", "default": "255,255,255", "pos": "8" },
      { "type": "separator" },
      { "type": "float", "name": "Start Hue", "default": "1", "min": "0", "max": "3", "pos": "11" },
      { "type": "float", "name": "Rotations", "default": "-1.5", "min": "-20", "max": "20", "pos": "12" },
      { "type": "float", "name": "Rotation Bend", "default": "0", "min": "-3", "max": "3", "pos": "13" },
      { "type": "separator" },
      { "type": "float", "name": "Saturation Bend", "default": "0", "min": "-3", "max": "3", "pos": "14" },
      { "type": "float", "name": "Saturation Start", "default": "1", "min": "0", "max": "5", "pos": "15" },
      { "type": "float", "name": "Saturation End", "default": "1", "min": "0", "max": "5", "pos": "16" },
      { "type": "float", "name": "Gamma Bend", "default": "0", "min": "-3", "max": "3", "pos": "17" },
      { "type": "float", "name": "Gamma Start", "default": "0", "min": "0", "max": "1", "pos": "18" },
      { "type": "float", "name": "Gamma End", "default": "1", "min": "0", "max": "1", "pos": "19" },
      { "type": "separator" },
      { "type": "float", "name": "Scale Colour Variations", "default": "1", "min": "-4", "max": "4", "pos": "20" },
      { "type": "note", "text": "Scales the colour variations to reflect the difference between the start and end colours. For example, a value of 0 when going from black to yellow will flatten the helix so that only the red and green channels vary." },
      { "type": "separator" },
      { "type": "float", "name": "Red Amplitude", "default": "1", "min": "0", "max": "4.00000", "pos": "21" },
      { "type": "float", "name": "Red Phase Shift", "default": "0", "min": "0", "max": "360", "pos": "22" },
      { "type": "float", "name": "Green Amplitude", "default": "1", "min": "0", "max": "4.00000", "pos": "23" },
      { "type": "float", "name": "Green Phase Shift", "default": "0", "min": "0", "max": "360", "pos": "24" },
      { "type": "float", "name": "Blue Amplitude", "default": "1", "min": "0", "max": "4.00000", "pos": "25" },
      { "type": "float", "name": "Blue Phase Shift", "default": "0", "min": "0", "max": "360", "pos": "26" },
      { "type": "separator" },
      { "type": "bool", "name": "Preview Colour Scheme", "default": "0", "pos": "27" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "28", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "29" }
      ]
    },
    {
      "name": "Curves", "lang": "en", "command": "fx_curves_interactive", "command_preview": "fx_curves_interactive_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adjusts tonal response using interactive curves. " },
      { "type": "separator" },
      { "type": "choice", "name": "Colorspace", "default": "0", "pos": "1", "choices": { "0": "RGB", "1": "CMY", "2": "CMYK", "3": "HSI", "4": "HSL", "5": "HSV", "6": "Lab", "7": "Lch", "8": "YCbCr" } },
      { "type": "choice", "name": "Output Preset as a HaldCLUT Layer", "default": "0", "pos": "2", "choices": { "0": "Disable", "1": "Lowres CLUT", "2": "Highres CLUT" } },
      { "type": "choice", "name": "Apply Transformation From", "default": "0", "pos": "3", "choices": { "0": "New Curves [Interactive]", "1": "Curves Previously Defined" } },
      { "type": "value", "value": "0", "pos": "4" },
      { "type": "value", "value": "0,0,100,100,-1,0,0,100,100,-1,0,0,100,100,-1,0,0,100,100,-1,0,0,100,100", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Description:\n This filter allows to apply color curves on your images, in many different colorspaces. Click on the Apply or OK buttons below to open the G'MIC interactive windows and start building your color curves. When you're done, exit the main image window: your modified result will be transferred back to the host software.\n\n Once you've set curves, you can save them by pressing the Add to faves button below the filter tree. To clear control points for your curves, click on the Reset button above. " },
      { "type": "separator" },
      { "type": "note", "text": "Interactions:\n Use the following actions in the interactive windows to manage your colorization :\n\n - Left mouse button on a curve creates a new color control point (or move an existing one).\n - Right mouse button on a control point deletes it.\n - Left mouse button on the main image window shows the initial image until button is released.\n - Right mouse button on the main image window adds a keypoint to all curves from picked color.\n - Key R on a curve resets it.\n - Keys CTRL+D increase window size.\n - Keys CTRL+C decrease window size.\n - Keys CTRL+R resets window size.\n - Keys ESC, Q or RETURN close the current window. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 09/28/2014." }
      ]
    },
    {
      "name": "Customize CLUT", "lang": "en", "command": "fx_customize_clut", "command_preview": "fx_customize_clut_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Tool to build a customized 3D Color Look-Up Table. " },
      { "type": "separator" },
      { "type": "float", "name": "Keypoint Influence (%)", "default": "100", "min": "0", "max": "100", "pos": "1" },
      { "type": "choice", "name": "Lock Uniform Sampling", "default": "0", "pos": "2", "choices": { "0": "None", "1": "8 Keypoints (RGB Corners)", "2": "27 Keypoints", "3": "64 Keypoints", "4": "125 Keypoints", "5": "216 Keypoints", "6": "343 Keypoints" } },
      { "type": "int", "name": "Spatial Regularization", "default": "10", "min": "0", "max": "30", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Global correction:" },
      { "type": "float", "name": "Brightness (%)", "default": "0", "min": "-100", "max": "100", "pos": "4" },
      { "type": "float", "name": "Contrast (%)", "default": "0", "min": "-100", "max": "100", "pos": "5" },
      { "type": "float", "name": "Gamma (%)", "default": "0", "min": "-100", "max": "100", "pos": "6" },
      { "type": "float", "name": "Hue (%)", "default": "0", "min": "-100", "max": "100", "pos": "7" },
      { "type": "float", "name": "Saturation (%)", "default": "0", "min": "-100", "max": "100", "pos": "8" },
      { "type": "bool", "name": "Post-Normalize", "default": "0", "pos": "9" },
      { "type": "separator" },
      { "type": "choice", "name": "Output Corresponding CLUT", "default": "0", "pos": "10", "choices": { "0": "Disable", "1": "512x512 Layer", "2": "4096x4096 Layer" } },
      { "type": "choice", "name": "Preview Type", "default": "8", "pos": "11", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Horizontal", "6": "Duplicate Vertical", "7": "HaldCLUT", "8": "3D CLUT (Fast)", "9": "3D CLUT (Precise)" } },
      { "type": "float", "name": "CLUT Opacity", "default": "0.5", "min": "0", "max": "1", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "Color correspondences:" },
      { "type": "choice", "name": "Action #1", "default": "1", "pos": "13", "choices": { "0": "Ignore", "1": "Lock Source", "2": "Replace Source by Target" } },
      { "type": "color", "name": "Source Color #1", "default": "0,0,0", "pos": "14" },
      { "type": "color", "name": "Target Color #1", "default": "0,0,0", "pos": "17" },
      { "type": "separator" },
      { "type": "choice", "name": "Action #2", "default": "1", "pos": "20", "choices": { "0": "Ignore", "1": "Lock Source", "2": "Replace Source by Target" } },
      { "type": "color", "name": "Source Color #2", "default": "255,255,255", "pos": "21" },
      { "type": "color", "name": "Target Color #2", "default": "255,196,128", "pos": "24" },
      { "type": "separator" },
      { "type": "choice", "name": "Action #3", "default": "0", "pos": "27", "choices": { "0": "Ignore", "1": "Lock Source", "2": "Replace Source by Target" } },
      { "type": "color", "name": "Source Color #3", "default": "0,0,0", "pos": "28" },
      { "type": "color", "name": "Target Color #3", "default": "0,0,0", "pos": "31" },
      { "type": "separator" },
      { "type": "choice", "name": "Action #4", "default": "0", "pos": "34", "choices": { "0": "Ignore", "1": "Lock Source", "2": "Replace Source by Target" } },
      { "type": "color", "name": "Source Color #4", "default": "0,0,0", "pos": "35" },
      { "type": "color", "name": "Target Color #4", "default": "0,0,0", "pos": "38" },
      { "type": "separator" },
      { "type": "choice", "name": "Action #5", "default": "0", "pos": "41", "choices": { "0": "Ignore", "1": "Lock Source", "2": "Replace Source by Target" } },
      { "type": "color", "name": "Source Color #5", "default": "0,0,0", "pos": "42" },
      { "type": "color", "name": "Target Color #5", "default": "0,0,0", "pos": "45" },
      { "type": "separator" },
      { "type": "choice", "name": "Action #6", "default": "0", "pos": "48", "choices": { "0": "Ignore", "1": "Lock Source", "2": "Replace Source by Target" } },
      { "type": "color", "name": "Source Color #6", "default": "0,0,0", "pos": "49" },
      { "type": "color", "name": "Target Color #6", "default": "0,0,0", "pos": "52" },
      { "type": "separator" },
      { "type": "choice", "name": "Action #7", "default": "0", "pos": "55", "choices": { "0": "Ignore", "1": "Lock Source", "2": "Replace Source by Target" } },
      { "type": "color", "name": "Source Color #7", "default": "0,0,0", "pos": "56" },
      { "type": "color", "name": "Target Color #7", "default": "0,0,0", "pos": "59" },
      { "type": "separator" },
      { "type": "choice", "name": "Action #8", "default": "0", "pos": "62", "choices": { "0": "Ignore", "1": "Lock Source", "2": "Replace Source by Target" } },
      { "type": "color", "name": "Source Color #8", "default": "0,0,0", "pos": "63" },
      { "type": "color", "name": "Target Color #8", "default": "0,0,0", "pos": "66" },
      { "type": "separator" },
      { "type": "choice", "name": "Action #9", "default": "0", "pos": "69", "choices": { "0": "Ignore", "1": "Lock Source", "2": "Replace Source by Target" } },
      { "type": "color", "name": "Source Color #9", "default": "0,0,0", "pos": "70" },
      { "type": "color", "name": "Target Color #9", "default": "0,0,0", "pos": "73" },
      { "type": "separator" },
      { "type": "choice", "name": "Action #10", "default": "0", "pos": "76", "choices": { "0": "Ignore", "1": "Lock Source", "2": "Replace Source by Target" } },
      { "type": "color", "name": "Source Color #10", "default": "0,0,0", "pos": "77" },
      { "type": "color", "name": "Target Color #10", "default": "0,0,0", "pos": "80" },
      { "type": "separator" },
      { "type": "choice", "name": "Action #11", "default": "0", "pos": "83", "choices": { "0": "Ignore", "1": "Lock Source", "2": "Replace Source by Target" } },
      { "type": "color", "name": "Source Color #11", "default": "0,0,0", "pos": "84" },
      { "type": "color", "name": "Target Color #11", "default": "0,0,0", "pos": "87" },
      { "type": "separator" },
      { "type": "choice", "name": "Action #12", "default": "0", "pos": "90", "choices": { "0": "Ignore", "1": "Lock Source", "2": "Replace Source by Target" } },
      { "type": "color", "name": "Source Color #12", "default": "0,0,0", "pos": "91" },
      { "type": "color", "name": "Target Color #12", "default": "0,0,0", "pos": "94" },
      { "type": "separator" },
      { "type": "choice", "name": "Action #13", "default": "0", "pos": "97", "choices": { "0": "Ignore", "1": "Lock Source", "2": "Replace Source by Target" } },
      { "type": "color", "name": "Source Color #13", "default": "0,0,0", "pos": "98" },
      { "type": "color", "name": "Target Color #13", "default": "0,0,0", "pos": "101" },
      { "type": "separator" },
      { "type": "choice", "name": "Action #14", "default": "0", "pos": "104", "choices": { "0": "Ignore", "1": "Lock Source", "2": "Replace Source by Target" } },
      { "type": "color", "name": "Source Color #14", "default": "0,0,0", "pos": "105" },
      { "type": "color", "name": "Target Color #14", "default": "0,0,0", "pos": "108" },
      { "type": "separator" },
      { "type": "choice", "name": "Action #15", "default": "0", "pos": "111", "choices": { "0": "Ignore", "1": "Lock Source", "2": "Replace Source by Target" } },
      { "type": "color", "name": "Source Color #15", "default": "0,0,0", "pos": "112" },
      { "type": "color", "name": "Target Color #15", "default": "0,0,0", "pos": "115" },
      { "type": "separator" },
      { "type": "choice", "name": "Action #16", "default": "0", "pos": "118", "choices": { "0": "Ignore", "1": "Lock Source", "2": "Replace Source by Target" } },
      { "type": "color", "name": "Source Color #16", "default": "0,0,0", "pos": "119" },
      { "type": "color", "name": "Target Color #16", "default": "0,0,0", "pos": "122" },
      { "type": "separator" },
      { "type": "choice", "name": "Action #17", "default": "0", "pos": "125", "choices": { "0": "Ignore", "1": "Lock Source", "2": "Replace Source by Target" } },
      { "type": "color", "name": "Source Color #17", "default": "0,0,0", "pos": "126" },
      { "type": "color", "name": "Target Color #17", "default": "0,0,0", "pos": "129" },
      { "type": "separator" },
      { "type": "choice", "name": "Action #18", "default": "0", "pos": "132", "choices": { "0": "Ignore", "1": "Lock Source", "2": "Replace Source by Target" } },
      { "type": "color", "name": "Source Color #18", "default": "0,0,0", "pos": "133" },
      { "type": "color", "name": "Target Color #18", "default": "0,0,0", "pos": "136" },
      { "type": "separator" },
      { "type": "choice", "name": "Action #19", "default": "0", "pos": "139", "choices": { "0": "Ignore", "1": "Lock Source", "2": "Replace Source by Target" } },
      { "type": "color", "name": "Source Color #19", "default": "0,0,0", "pos": "140" },
      { "type": "color", "name": "Target Color #19", "default": "0,0,0", "pos": "143" },
      { "type": "separator" },
      { "type": "choice", "name": "Action #20", "default": "0", "pos": "146", "choices": { "0": "Ignore", "1": "Lock Source", "2": "Replace Source by Target" } },
      { "type": "color", "name": "Source Color #20", "default": "0,0,0", "pos": "147" },
      { "type": "color", "name": "Target Color #20", "default": "0,0,0", "pos": "150" },
      { "type": "separator" },
      { "type": "choice", "name": "Action #21", "default": "0", "pos": "153", "choices": { "0": "Ignore", "1": "Lock Source", "2": "Replace Source by Target" } },
      { "type": "color", "name": "Source Color #21", "default": "0,0,0", "pos": "154" },
      { "type": "color", "name": "Target Color #21", "default": "0,0,0", "pos": "157" },
      { "type": "separator" },
      { "type": "choice", "name": "Action #22", "default": "0", "pos": "160", "choices": { "0": "Ignore", "1": "Lock Source", "2": "Replace Source by Target" } },
      { "type": "color", "name": "Source Color #22", "default": "0,0,0", "pos": "161" },
      { "type": "color", "name": "Target Color #22", "default": "0,0,0", "pos": "164" },
      { "type": "separator" },
      { "type": "choice", "name": "Action #23", "default": "0", "pos": "167", "choices": { "0": "Ignore", "1": "Lock Source", "2": "Replace Source by Target" } },
      { "type": "color", "name": "Source Color #23", "default": "0,0,0", "pos": "168" },
      { "type": "color", "name": "Target Color #23", "default": "0,0,0", "pos": "171" },
      { "type": "separator" },
      { "type": "choice", "name": "Action #24", "default": "0", "pos": "174", "choices": { "0": "Ignore", "1": "Lock Source", "2": "Replace Source by Target" } },
      { "type": "color", "name": "Source Color #24", "default": "0,0,0", "pos": "175" },
      { "type": "color", "name": "Target Color #24", "default": "0,0,0", "pos": "178" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/06/14." }
      ]
    },
    {
      "name": "Dark Sky", "lang": "en", "command": "afre_darksky", "command_preview": "afre_darksky_preview", "parameters": [
      { "type": "note", "text": "<strong>Enhance landscape by darkening the sky.  Filter by <a href=\"https://discuss.pixls.us/u/afre\">afre</a> 2017-2020 Sep9.</strong>\n\n" },
      { "type": "choice", "name": "Blend", "default": "0", "pos": "1", "choices": { "0": "Softlight", "1": "Overlay" } },
      { "type": "int", "name": "Contrast", "default": "0", "min": "-100", "max": "100", "pos": "2" },
      { "type": "choice", "name": "Smooth", "default": "1", "pos": "3", "choices": { "0": "Fast (approx.)", "1": "Slow (accurate)" } },
      { "type": "int", "name": "Radius", "default": "0", "min": "0", "max": "3", "pos": "4" },
      { "type": "note", "text": "\n\n<strong>Note</strong>\n\nG'MIC's preview is inaccurate. Apply the filter and review the results in your host editor.\n\nE.g. <code>Smooth(fast)</code> may appear to cause artifacts when in fact it does not." }
      ]
    },
    {
      "name": "Decompose Channels", "lang": "en", "command": "fx_decompose_channels", "command_preview": "fx_decompose_channels_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Decomposes the image into various color space components. " },
      { "type": "separator" },
      { "type": "choice", "name": "Color Basis", "default": "7", "pos": "1", "choices": { "0": "RGB", "1": "HSV", "2": "HSL", "3": "HSI", "4": "YUV", "5": "YCbCr", "6": "XYZ", "7": "Lab", "8": "Lch", "9": "CMY", "10": "CMYK", "11": "YIQ" } },
      { "type": "choice", "name": "Action", "default": "0", "pos": "2", "choices": { "0": "Decompose", "1": "Recompose" } },
      { "type": "bool", "name": "Output Multiple Layers", "default": "0", "pos": "3" },
      { "type": "bool", "name": "Include Opacity Layer", "default": "1", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/07/19." }
      ]
    },
    {
      "name": "Detect Skin", "lang": "en", "command": "fx_detect_skin", "command_preview": "fx_detect_skin_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a mask highlighting skin tones. " },
      { "type": "separator" },
      { "type": "choice", "name": "Skin Estimation", "default": "1", "pos": "1", "choices": { "0": "Manual", "1": "Automatic" } },
      { "type": "separator" },
      { "type": "float", "name": "Tolerance", "default": "0.5", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "0.5", "min": "0", "max": "5", "pos": "3" },
      { "type": "float", "name": "Threshold", "default": "1", "min": "0", "max": "10", "pos": "4" },
      { "type": "bool", "name": "Pre-Normalize Image", "default": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Manual estimation:\n Use the sliders below to target as much skin pixels as you can." },
      { "type": "float", "name": "X-Coordinate", "default": "50", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "Y-Coordinate", "default": "50", "min": "0", "max": "100", "pos": "7" },
      { "type": "float", "name": "Radius", "default": "5", "min": "0", "max": "25", "pos": "8" },
      { "type": "separator" },
      { "type": "choice", "name": "Output Mode", "default": "1", "pos": "9", "choices": { "0": "Probability Map", "1": "Opaque Skin", "2": "Transparent Skin" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "10", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "11", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2014/01/03." }
      ]
    },
    {
      "name": "Dorure Gilding", "lang": "en", "command": "samj_Dorure", "command_preview": "samj_Dorure", "parameters": [
      { "type": "link", "name": "https://samjcreations.blogspot.com/2020/10/samuser-avec-gmic-gimp-filtre-dorure.html", "url": "https://samjcreations.blogspot.com/2020/10/samuser-avec-gmic-gimp-filtre-dorure.html", "align": "center" },
      { "type": "note", "text": "<span foreground=\"orangered\">Relief Light</span>" },
      { "type": "note", "text": "Obtenir une couleur dorée ou cuivrée par Lightness et Darkness." },
      { "type": "note", "text": "Obtain a golden or copper color by Lightness et Darkness." },
      { "type": "float", "name": "Ambient Lightness", "default": "0.4", "min": "0.2", "max": "0.7", "pos": "1" },
      { "type": "float", "name": "Specular Lightness", "default": "0.2", "min": "0", "max": "2", "pos": "2" },
      { "type": "float", "name": "Specular Size", "default": "0.2", "min": "0", "max": "1", "pos": "3" },
      { "type": "float", "name": "Darkness", "default": "0", "min": "0", "max": "1", "pos": "4" },
      { "type": "float", "name": "Light Smoothness", "default": "1", "min": "0", "max": "5", "pos": "5" },
      { "type": "point", "name": "XY-Light", "position": "20,20", "pos": "6" },
      { "type": "float", "name": "Z-Light", "default": "0", "min": "0", "max": "20", "pos": "8" },
      { "type": "float", "name": "Z-Scale", "default": "0.5", "min": "0", "max": "3", "pos": "9" },
      { "type": "note", "text": "<span foreground=\"orangered\">Dorure/Gilding</span>" },
      { "type": "bool", "name": "Inverser/Invert Relief", "default": "0", "pos": "10" },
      { "type": "int", "name": "Adoucir/Smooth", "default": "60", "min": "0", "max": "200", "pos": "11" },
      { "type": "bool", "name": "Large Image", "default": "0", "pos": "12" },
      { "type": "float", "name": "Flou/Blur", "default": "0", "min": "0", "max": "5", "pos": "13" },
      { "type": "float", "name": "Netteté/Sharpen", "default": "100", "min": "0", "max": "200", "pos": "14" },
      { "type": "float", "name": "Aspect", "default": "45", "min": "0", "max": "360", "pos": "15" },
      { "type": "int", "name": "Map 1", "default": "18", "min": "2", "max": "64", "pos": "16" },
      { "type": "int", "name": "Map 2", "default": "32", "min": "2", "max": "255", "pos": "17" },
      { "type": "bool", "name": "Map 3", "default": "1", "pos": "18" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2022/03/04." }
      ]
    },
    {
      "name": "Equalize HSI-HSL-HSV", "lang": "en", "command": "fx_equalize_hsv", "command_preview": "fx_equalize_hsv_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Equalizes histogram in HSI, HSL, or HSV color spaces. " },
      { "type": "separator" },
      { "type": "choice", "name": "Colorspace", "default": "1", "pos": "1", "choices": { "0": "HSI", "1": "HSL", "2": "HSV" } },
      { "type": "float", "name": "Opacity (%)", "default": "100", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Value Blending", "default": "0", "min": "0", "max": "64", "pos": "3" },
      { "type": "float", "name": "Color Blending", "default": "0", "min": "0", "max": "64", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Mapping", "default": "0", "pos": "5", "choices": { "0": "None", "1": "Grey", "2": "Color" } },
      { "type": "separator" },
      { "type": "note", "text": "Black:" },
      { "type": "float", "name": "Hue Offset", "default": "0", "min": "-180", "max": "180", "pos": "6" },
      { "type": "float", "name": "Saturation Offset", "default": "0", "min": "-1", "max": "1", "pos": "7" },
      { "type": "float", "name": "Value Offset", "default": "0", "min": "-1", "max": "1", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Near black:" },
      { "type": "float", "name": "Hue Offset", "default": "0", "min": "-180", "max": "180", "pos": "9" },
      { "type": "float", "name": "Saturation Offset", "default": "0", "min": "-1", "max": "1", "pos": "10" },
      { "type": "float", "name": "Value Offset", "default": "0", "min": "-1", "max": "1", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Dark grey:" },
      { "type": "float", "name": "Hue Offset", "default": "0", "min": "-180", "max": "180", "pos": "12" },
      { "type": "float", "name": "Saturation Offset", "default": "0", "min": "-1", "max": "1", "pos": "13" },
      { "type": "float", "name": "Value Offset", "default": "0", "min": "-1", "max": "1", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "Mi-dark grey:" },
      { "type": "float", "name": "Hue Offset", "default": "0", "min": "-180", "max": "180", "pos": "15" },
      { "type": "float", "name": "Saturation Offset", "default": "0", "min": "-1", "max": "1", "pos": "16" },
      { "type": "float", "name": "Value Offset", "default": "0", "min": "-1", "max": "1", "pos": "17" },
      { "type": "separator" },
      { "type": "note", "text": "Middle grey:" },
      { "type": "float", "name": "Hue Offset", "default": "0", "min": "-180", "max": "180", "pos": "18" },
      { "type": "float", "name": "Saturation Offset", "default": "0", "min": "-1", "max": "1", "pos": "19" },
      { "type": "float", "name": "Value Offset", "default": "0", "min": "-1", "max": "1", "pos": "20" },
      { "type": "separator" },
      { "type": "note", "text": "Mid-light grey:" },
      { "type": "float", "name": "Hue Offset", "default": "0", "min": "-180", "max": "180", "pos": "21" },
      { "type": "float", "name": "Saturation Offset", "default": "0", "min": "-1", "max": "1", "pos": "22" },
      { "type": "float", "name": "Value Offset", "default": "0", "min": "-1", "max": "1", "pos": "23" },
      { "type": "separator" },
      { "type": "note", "text": "Light grey:" },
      { "type": "float", "name": "Hue Offset", "default": "0", "min": "-180", "max": "180", "pos": "24" },
      { "type": "float", "name": "Saturation Offset", "default": "0", "min": "-1", "max": "1", "pos": "25" },
      { "type": "float", "name": "Value Offset", "default": "0", "min": "-1", "max": "1", "pos": "26" },
      { "type": "separator" },
      { "type": "note", "text": "Highlights:" },
      { "type": "float", "name": "Hue Offset", "default": "0", "min": "-180", "max": "180", "pos": "27" },
      { "type": "float", "name": "Saturation Offset", "default": "0", "min": "-1", "max": "1", "pos": "28" },
      { "type": "float", "name": "Value Offset", "default": "0", "min": "-1", "max": "1", "pos": "29" },
      { "type": "separator" },
      { "type": "note", "text": "White:" },
      { "type": "float", "name": "Hue Offset", "default": "0", "min": "-180", "max": "180", "pos": "30" },
      { "type": "float", "name": "Saturation Offset", "default": "0", "min": "-1", "max": "1", "pos": "31" },
      { "type": "float", "name": "Value Offset", "default": "0", "min": "-1", "max": "1", "pos": "32" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "33", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "34", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Authors: David Tschumperlé and David Revoy.       Latest Update: 2018/01/19." }
      ]
    },
    {
      "name": "Equalize HSV", "lang": "en", "command": "fx_hsv_equalizer", "command_preview": "fx_hsv_equalizer_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Equalizes the Hue, Saturation, or Value channels. " },
      { "type": "separator" },
      { "type": "bool", "name": "Preview Bands", "default": "0", "pos": "1" },
      { "type": "separator" },
      { "type": "float", "name": "Hue Band", "default": "180", "min": "0", "max": "360", "pos": "2" },
      { "type": "float", "name": "Band Width", "default": "40", "min": "1", "max": "360", "pos": "3" },
      { "type": "float", "name": "Hue Shift", "default": "0", "min": "-180", "max": "180", "pos": "4" },
      { "type": "float", "name": "Saturation Correction", "default": "0", "min": "-0.99", "max": "0.99", "pos": "5" },
      { "type": "float", "name": "Value Correction", "default": "0", "min": "-0.99", "max": "0.99", "pos": "6" },
      { "type": "separator" },
      { "type": "float", "name": "Hue Band", "default": "180", "min": "0", "max": "360", "pos": "7", "visibility": "0" },
      { "type": "float", "name": "Band Width", "default": "40", "min": "1", "max": "360", "pos": "8" },
      { "type": "float", "name": "Hue Shift", "default": "0", "min": "-180", "max": "180", "pos": "9" },
      { "type": "float", "name": "Saturation Correction", "default": "0", "min": "-0.99", "max": "0.99", "pos": "10" },
      { "type": "float", "name": "Value Correction", "default": "0", "min": "-0.99", "max": "0.99", "pos": "11" },
      { "type": "separator" },
      { "type": "float", "name": "Hue Band", "default": "180", "min": "0", "max": "360", "pos": "12" },
      { "type": "float", "name": "Band Width", "default": "40", "min": "1", "max": "360", "pos": "13" },
      { "type": "float", "name": "Hue Shift", "default": "0", "min": "-180", "max": "180", "pos": "14" },
      { "type": "float", "name": "Saturation Correction", "default": "0", "min": "-0.99", "max": "0.99", "pos": "15" },
      { "type": "float", "name": "Value Correction", "default": "0", "min": "-0.99", "max": "0.99", "pos": "16" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Jérome Ferrari.       Latest Update: 01/14/2011." },
      { "type": "link", "name": "Filter explained here", "url": "http://www.flickr.com/groups/gmic/discuss/72157625798533482", "align": "center" }
      ]
    },
    {
      "name": "Frequency Representation", "lang": "en", "command": "fx_frequency_representation", "command_preview": "fx_frequency_representation_preview", "parameters": [
      { "type": "note", "text": "Changes values based on relative frequencies of those values in a histogram of image intensity." },
      { "type": "int", "name": "Iterations", "default": "3", "min": "1", "max": "20", "pos": "1" },
      { "type": "int", "name": "Clusters", "default": "256", "min": "2", "max": "1024", "pos": "2" },
      { "type": "bool", "name": "Split Channels", "default": "0", "pos": "3" },
      { "type": "float", "name": "Blur", "default": "40", "min": "0", "max": "100", "pos": "4" },
      { "type": "choice", "name": "Colour Space", "default": "0", "pos": "5", "choices": { "0": "RGB", "1": "sRGB", "2": "CMY", "3": "RYB", "4": "Ohta8", "5": "Ohta", "6": "YES8", "7": "YES", "8": "Kodak 1-8", "9": "Kodak1", "10": "Lab8", "11": "Lab", "12": "Oklab", "13": "LUV", "14": "Jzazbz", "15": "YIQ8", "16": "YIQ", "17": "YUV8", "18": "YUV", "19": "YCbCr", "20": "YCbCrGLIC", "21": "YCbCrJPEG", "22": "YDbDr", "23": "XYZ8", "24": "XYZ", "25": "HSV8", "26": "HSV", "27": "HSL8", "28": "HSL", "29": "HSI8", "30": "HSI", "31": "LCH8", "32": "LCH", "33": "JzCzHz", "34": "HCY" } }
      ]
    },
    {
      "name": "HSL Adjustment", "lang": "en", "command": "gcd_hsl", "command_preview": "gcd_hsl_preview", "parameters": [
      { "type": "note", "text": "\nInput Saturation Settings" },
      { "type": "separator" },
      { "type": "float", "name": "Contrast", "default": "1", "min": "0", "max": "2", "pos": "1" },
      { "type": "float", "name": "Level", "default": "0", "min": "-1", "max": "1", "pos": "2" },
      { "type": "bool", "name": "Auto Reduce Level (Level Slider Is Disabled)", "default": "0", "pos": "3" },
      { "type": "note", "text": "\nOutput Hue Settings" },
      { "type": "separator" },
      { "type": "float", "name": "Hue", "default": "180", "min": "0", "max": "360", "pos": "4" },
      { "type": "float", "name": "Amount", "default": "0.2", "min": "0", "max": "1", "pos": "5" },
      { "type": "bool", "name": "Auto Set Hue Inverse (Hue Slider Is Disabled)", "default": "0", "pos": "6" },
      { "type": "note", "text": "\nOutput Luminance Settings" },
      { "type": "separator" },
      { "type": "float", "name": "Gamma", "default": "1", "min": "0", "max": "2", "pos": "7" },
      { "type": "float", "name": "Contrast", "default": "1", "min": "0", "max": "2", "pos": "8" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "9", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2015/05/15." }
      ]
    },
    {
      "name": "HSV Select", "lang": "en", "command": "gcd_hsv_select", "command_preview": "gcd_hsv_select", "parameters": [
      { "type": "note", "text": "Color Selection" },
      { "type": "separator" },
      { "type": "int", "name": "Hue", "default": "0", "min": "0", "max": "360", "pos": "1" },
      { "type": "float", "name": "Saturation", "default": "0.5", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "Value", "default": "1", "min": "0", "max": "1", "pos": "3" },
      { "type": "note", "text": "\nColor Range" },
      { "type": "separator" },
      { "type": "int", "name": "Hue Range", "default": "180", "min": "0", "max": "180", "pos": "4" },
      { "type": "float", "name": "Sat Range", "default": "0.5", "min": "0", "max": "0.5", "pos": "5" },
      { "type": "float", "name": "Val Range", "default": "0.5", "min": "0", "max": "0.5", "pos": "6" },
      { "type": "note", "text": "\nOutput Options" },
      { "type": "separator" },
      { "type": "int", "name": "Grow Alpha", "default": "2", "min": "-20", "max": "20", "pos": "7" },
      { "type": "int", "name": "Blur Alpha", "default": "2", "min": "0", "max": "20", "pos": "8" },
      { "type": "note", "text": "\nAdvanced Options" },
      { "type": "separator" },
      { "type": "int", "name": "Patch Size", "default": "18", "min": "3", "max": "100", "pos": "9" },
      { "type": "int", "name": "Fill Holes %", "default": "0", "min": "0", "max": "50", "pos": "10" },
      { "type": "int", "name": "Min Area %", "default": "0", "min": "0", "max": "50", "pos": "11" },
      { "type": "bool", "name": "Show Watershed", "default": "0", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2013/02/11." }
      ]
    },
    {
      "name": "Hue Lighten-Darken", "lang": "en", "command": "iain_hue_light_dark_p", "command_preview": "iain_hue_light_dark_p", "parameters": [
      { "type": "float", "name": "Red", "default": "0", "min": "-255", "max": "255", "pos": "1" },
      { "type": "float", "name": "2", "default": "0", "min": "-255", "max": "255", "pos": "2" },
      { "type": "float", "name": "3", "default": "0", "min": "-255", "max": "255", "pos": "3" },
      { "type": "float", "name": "Yellow", "default": "0", "min": "-255", "max": "255", "pos": "4" },
      { "type": "float", "name": "5", "default": "0", "min": "-255", "max": "255", "pos": "5" },
      { "type": "float", "name": "6", "default": "0", "min": "-255", "max": "255", "pos": "6" },
      { "type": "float", "name": "Green", "default": "0", "min": "-255", "max": "255", "pos": "7" },
      { "type": "float", "name": "8", "default": "0", "min": "-255", "max": "255", "pos": "8" },
      { "type": "float", "name": "Cyan", "default": "0", "min": "-255", "max": "255", "pos": "9" },
      { "type": "float", "name": "10", "default": "0", "min": "-255", "max": "255", "pos": "10" },
      { "type": "float", "name": "11", "default": "0", "min": "-255", "max": "255", "pos": "11" },
      { "type": "float", "name": "Blue", "default": "0", "min": "-255", "max": "255", "pos": "12" },
      { "type": "float", "name": "13", "default": "0", "min": "-255", "max": "255", "pos": "13" },
      { "type": "float", "name": "14", "default": "0", "min": "-255", "max": "255", "pos": "14" },
      { "type": "float", "name": "Magenta", "default": "0", "min": "-255", "max": "255", "pos": "15" },
      { "type": "float", "name": "16", "default": "0", "min": "-255", "max": "255", "pos": "16" },
      { "type": "float", "name": "17", "default": "0", "min": "-255", "max": "255", "pos": "17" },
      { "type": "float", "name": "18", "default": "0", "min": "-255", "max": "255", "pos": "18" },
      { "type": "separator" },
      { "type": "float", "name": "Global", "default": "0", "min": "-255", "max": "255", "pos": "19" },
      { "type": "bool", "name": "HSL", "default": "0", "pos": "20" },
      { "type": "separator" },
      { "type": "float", "name": "Sat Top", "default": "255", "min": "0", "max": "255", "pos": "21" },
      { "type": "float", "name": "Sat Bottom", "default": "100", "min": "0", "max": "255", "pos": "22" },
      { "type": "float", "name": "Value Top", "default": "255", "min": "0", "max": "255", "pos": "23" },
      { "type": "float", "name": "Value Bottom", "default": "0", "min": "0", "max": "255", "pos": "24" },
      { "type": "separator" },
      { "type": "bool", "name": "B&W", "default": "0", "pos": "25" },
      { "type": "separator" },
      { "type": "choice", "name": "Parallel Processing", "default": "0", "pos": "26", "choices": { "0": "Auto", "1": "Off" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Iain Fergusson. Update: 4 March 2014 - Added parallel processing option" }
      ]
    },
    {
      "name": "Local Contrast", "lang": "en", "command": "afre_localcontrast", "command_preview": "afre_localcontrast_preview", "parameters": [
      { "type": "note", "text": "<strong>Enhance local contrast.  Filter by <a href=\"https://discuss.pixls.us/u/afre\">afre</a> 2020 Jul28-Sep5.</strong>\n\n" },
      { "type": "int", "name": "Radius", "default": "1", "min": "1", "max": "10", "pos": "1" },
      { "type": "int", "name": "Amount", "default": "50", "min": "-100", "max": "100", "pos": "2" },
      { "type": "note", "text": "\n\n<strong>Note</strong>\n\nG'MIC's preview is inaccurate. Apply the filter and review the results in your host editor." }
      ]
    },
    {
      "name": "Metallic Look", "lang": "en", "command": "fx_tk_metallic", "command_preview": "fx_tk_metallic_preview", "parameters": [
      { "type": "float", "name": "Strength", "default": "1", "min": "0", "max": "1", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "20", "pos": "2" },
      { "type": "choice", "name": "Metal", "default": "0", "pos": "3", "choices": { "0": "Silver", "1": "Gold", "2": "Copper", "3": "Bronze", "4": "Blue steel" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "4", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Tom Keil.      Latest update: 2011/12/04." }
      ]
    },
    {
      "name": "Mixer [CMYK]", "lang": "en", "command": "fx_mix_cmyk", "command_preview": "fx_mix_cmyk", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Mixes channels using the CMYK color model. " },
      { "type": "separator" },
      { "type": "float", "name": "Cyan Factor", "default": "1", "min": "0", "max": "4", "pos": "1" },
      { "type": "float", "name": "Cyan Shift", "default": "0", "min": "-255", "max": "255", "pos": "2" },
      { "type": "float", "name": "Cyan Smoothness", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "separator" },
      { "type": "float", "name": "Magenta Factor", "default": "1", "min": "0", "max": "4", "pos": "4" },
      { "type": "float", "name": "Magenta Shift", "default": "0", "min": "-255", "max": "255", "pos": "5" },
      { "type": "float", "name": "Magenta Smoothness", "default": "0", "min": "0", "max": "10", "pos": "6" },
      { "type": "separator" },
      { "type": "float", "name": "Yellow Factor", "default": "1", "min": "0", "max": "4", "pos": "7" },
      { "type": "float", "name": "Yellow Shift", "default": "0", "min": "-255", "max": "255", "pos": "8" },
      { "type": "float", "name": "Yellow Smoothness", "default": "0", "min": "0", "max": "10", "pos": "9" },
      { "type": "separator" },
      { "type": "float", "name": "Key Factor", "default": "1", "min": "0", "max": "4", "pos": "10" },
      { "type": "float", "name": "Key Shift", "default": "0", "min": "-255", "max": "255", "pos": "11" },
      { "type": "float", "name": "Key Smoothness", "default": "0", "min": "0", "max": "10", "pos": "12" },
      { "type": "separator" },
      { "type": "choice", "name": "Tones Range", "default": "0", "pos": "13", "choices": { "0": "All tones", "1": "Shadows", "2": "Mid-Tones", "3": "Highlights" } },
      { "type": "float", "name": "Tones Smoothness", "default": "2", "min": "0", "max": "10", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/06/20." }
      ]
    },
    {
      "name": "Mixer [Generic]", "lang": "en", "command": "fx_mixer_generic", "command_preview": "fx_mixer_generic_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> A generic matrix mixer for color channels. " },
      { "type": "separator" },
      { "type": "choice", "name": "Colorspace", "default": "7", "pos": "1", "choices": { "0": "CMY", "1": "CMYK", "2": "HCY", "3": "HSI", "4": "HSL", "5": "HSV", "6": "Jzazbz", "7": "Lab", "8": "Lch", "9": "OKlab", "10": "RGB", "11": "RYB", "12": "XYZ", "13": "YCbCr", "14": "YIQ", "15": "YUV" } },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Channel #0:</span>" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "5", "pos": "2" },
      { "type": "float", "name": "Offset (%)", "default": "0", "min": "-100", "max": "100", "pos": "3" },
      { "type": "float", "name": "Gamma", "default": "0", "min": "-3", "max": "3", "pos": "4" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Channel #1:</span>" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "5", "pos": "6" },
      { "type": "float", "name": "Offset (%)", "default": "0", "min": "-100", "max": "100", "pos": "7" },
      { "type": "float", "name": "Gamma", "default": "0", "min": "-3", "max": "3", "pos": "8" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Channel #2:</span>" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "5", "pos": "10" },
      { "type": "float", "name": "Offset (%)", "default": "0", "min": "-100", "max": "100", "pos": "11" },
      { "type": "float", "name": "Gamma", "default": "0", "min": "-3", "max": "3", "pos": "12" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Channel #3:</span>" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "5", "pos": "14", "visibility": "1" },
      { "type": "float", "name": "Offset (%)", "default": "0", "min": "-100", "max": "100", "pos": "15", "visibility": "1" },
      { "type": "float", "name": "Gamma", "default": "0", "min": "-3", "max": "3", "pos": "16", "visibility": "1" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "17", "visibility": "1" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "18", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "19", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2023/04/29." }
      ]
    },
    {
      "name": "Mixer [HSV]", "lang": "en", "command": "fx_mix_hsv", "command_preview": "fx_mix_hsv", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Mixes channels using the HSV color model. " },
      { "type": "separator" },
      { "type": "float", "name": "Hue Factor", "default": "1", "min": "0", "max": "4", "pos": "1" },
      { "type": "float", "name": "Hue Shift", "default": "0", "min": "-180", "max": "180", "pos": "2" },
      { "type": "float", "name": "Hue Smoothness", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "separator" },
      { "type": "float", "name": "Saturation Factor", "default": "1", "min": "0", "max": "4", "pos": "4" },
      { "type": "float", "name": "Saturation Shift", "default": "0", "min": "-1", "max": "1", "pos": "5" },
      { "type": "float", "name": "Saturation Smoothness", "default": "0", "min": "0", "max": "10", "pos": "6" },
      { "type": "separator" },
      { "type": "float", "name": "Value Factor", "default": "1", "min": "0", "max": "4", "pos": "7" },
      { "type": "float", "name": "Value Shift", "default": "0", "min": "-1", "max": "1", "pos": "8" },
      { "type": "float", "name": "Value Smoothness", "default": "0", "min": "0", "max": "10", "pos": "9" },
      { "type": "separator" },
      { "type": "choice", "name": "Tones Range", "default": "0", "pos": "10", "choices": { "0": "All Tones", "1": "Shadows", "2": "Mid-Tones", "3": "Highlights" } },
      { "type": "float", "name": "Tones Smoothness", "default": "2", "min": "0", "max": "10", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/06/20." }
      ]
    },
    {
      "name": "Mixer [Lab]", "lang": "en", "command": "fx_mix_lab", "command_preview": "fx_mix_lab", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Mixes channels using the Lab color model. " },
      { "type": "separator" },
      { "type": "float", "name": "Lightness Factor", "default": "1", "min": "0.5", "max": "1.5", "pos": "1" },
      { "type": "float", "name": "Lightness Shift", "default": "0", "min": "-50", "max": "50", "pos": "2" },
      { "type": "float", "name": "Lightness Smoothness", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "separator" },
      { "type": "float", "name": "A-Color Factor", "default": "1", "min": "0", "max": "4", "pos": "4" },
      { "type": "float", "name": "A-Color Shift", "default": "0", "min": "-20", "max": "20", "pos": "5" },
      { "type": "float", "name": "A-Color Smoothness", "default": "0", "min": "0", "max": "10", "pos": "6" },
      { "type": "separator" },
      { "type": "float", "name": "B-Color Factor", "default": "1", "min": "0", "max": "4", "pos": "7" },
      { "type": "float", "name": "B-Color Shift", "default": "0", "min": "-20", "max": "20", "pos": "8" },
      { "type": "float", "name": "B-Color Smoothness", "default": "0", "min": "0", "max": "10", "pos": "9" },
      { "type": "separator" },
      { "type": "choice", "name": "Tones Range", "default": "0", "pos": "10", "choices": { "0": "All Tones", "1": "Shadows", "2": "Mid-Tones", "3": "Highlights" } },
      { "type": "float", "name": "Tones Smoothness", "default": "2", "min": "0", "max": "10", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/06/20." }
      ]
    },
    {
      "name": "Mixer [PCA]", "lang": "en", "command": "fx_mix_pca", "command_preview": "fx_mix_pca_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Mixes colors based on Principal Component Analysis. " },
      { "type": "separator" },
      { "type": "float", "name": "Primary Factor", "default": "0", "min": "-1.5", "max": "1.5", "pos": "1" },
      { "type": "float", "name": "Primary Shift", "default": "0", "min": "-255", "max": "255", "pos": "2" },
      { "type": "float", "name": "Primary Twist", "default": "0", "min": "-180", "max": "180", "pos": "3" },
      { "type": "float", "name": "Primary Gamma", "default": "0", "min": "-100", "max": "100", "pos": "4" },
      { "type": "separator" },
      { "type": "float", "name": "Secondary Factor", "default": "0", "min": "-1.5", "max": "1.5", "pos": "5" },
      { "type": "float", "name": "Secondary Shift", "default": "0", "min": "-255", "max": "255", "pos": "6" },
      { "type": "float", "name": "Secondary Twist", "default": "0", "min": "-180", "max": "180", "pos": "7" },
      { "type": "float", "name": "Secondary Gamma", "default": "0", "min": "-100", "max": "100", "pos": "8" },
      { "type": "separator" },
      { "type": "float", "name": "Tertiary Factor", "default": "0", "min": "-1.5", "max": "1.5", "pos": "9" },
      { "type": "float", "name": "Tertiary Shift", "default": "0", "min": "-255", "max": "255", "pos": "10" },
      { "type": "float", "name": "Tertiary Twist", "default": "0", "min": "-180", "max": "180", "pos": "11" },
      { "type": "float", "name": "Tertiary Gamma", "default": "0", "min": "-100", "max": "100", "pos": "12" },
      { "type": "separator" },
      { "type": "bool", "name": "Display Color Axes", "default": "1", "pos": "13" },
      { "type": "value", "value": "-1,-1,-1,-1", "pos": "14" },
      { "type": "value", "value": "0,0,0,0,0,0,0,0,0,0,0,0", "pos": "15" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "16", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "17", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2018/07/18." }
      ]
    },
    {
      "name": "Mixer [RGB]", "lang": "en", "command": "fx_mix_rgb", "command_preview": "fx_mix_rgb", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Standard RGB channel mixer. " },
      { "type": "separator" },
      { "type": "float", "name": "Red Factor", "default": "1", "min": "0", "max": "4", "pos": "1" },
      { "type": "float", "name": "Red Shift", "default": "0", "min": "-255", "max": "255", "pos": "2" },
      { "type": "float", "name": "Red Smoothness", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "separator" },
      { "type": "float", "name": "Green Factor", "default": "1", "min": "0", "max": "4", "pos": "4" },
      { "type": "float", "name": "Green Shift", "default": "0", "min": "-255", "max": "255", "pos": "5" },
      { "type": "float", "name": "Green Smoothness", "default": "0", "min": "0", "max": "10", "pos": "6" },
      { "type": "separator" },
      { "type": "float", "name": "Blue Factor", "default": "1", "min": "0", "max": "4", "pos": "7" },
      { "type": "float", "name": "Blue Shift", "default": "0", "min": "-255", "max": "255", "pos": "8" },
      { "type": "float", "name": "Blue Smoothness", "default": "0", "min": "0", "max": "10", "pos": "9" },
      { "type": "separator" },
      { "type": "choice", "name": "Tones Range", "default": "0", "pos": "10", "choices": { "0": "All Tones", "1": "Shadows", "2": "Mid-Tones", "3": "Highlights" } },
      { "type": "float", "name": "Tones Smoothness", "default": "2", "min": "0", "max": "10", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/06/20." }
      ]
    },
    {
      "name": "Mixer [YCbCr]", "lang": "en", "command": "fx_mix_ycbcr", "command_preview": "fx_mix_ycbcr", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Mixes channels using the YCbCr color model. " },
      { "type": "separator" },
      { "type": "float", "name": "Luminance Factor", "default": "1", "min": "0", "max": "4", "pos": "1" },
      { "type": "float", "name": "Luminance Shift", "default": "0", "min": "-255", "max": "255", "pos": "2" },
      { "type": "float", "name": "Luminance Smoothness", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "separator" },
      { "type": "float", "name": "Blue Chroma Factor", "default": "1", "min": "0", "max": "4", "pos": "4" },
      { "type": "float", "name": "Blue Chroma Shift", "default": "0", "min": "-255", "max": "255", "pos": "5" },
      { "type": "float", "name": "Blue Chroma Smoothness", "default": "0", "min": "0", "max": "10", "pos": "6" },
      { "type": "separator" },
      { "type": "float", "name": "Red Chroma Factor", "default": "1", "min": "0", "max": "4", "pos": "7" },
      { "type": "float", "name": "Red Chroma Shift", "default": "0", "min": "-255", "max": "255", "pos": "8" },
      { "type": "float", "name": "Red Chroma Smoothness", "default": "0", "min": "0", "max": "10", "pos": "9" },
      { "type": "separator" },
      { "type": "choice", "name": "Tones Range", "default": "0", "pos": "10", "choices": { "0": "All Tones", "1": "Shadows", "2": "Mid-Tones", "3": "Highlights" } },
      { "type": "float", "name": "Tones Smoothness", "default": "2", "min": "0", "max": "10", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/06/20." }
      ]
    },
    {
      "name": "Quick Desaturate", "lang": "en", "command": "jr_desaturate", "command_preview": "jr_desaturate_preview", "parameters": [
      { "type": "note", "text": "Generates greyscale images, allowing for different (s/)RGB channel intensities before merging. A smaller counterpart to the 'Black & White' filter intended for generating intensity maps." },
      { "type": "choice", "name": "Colour Space", "default": "0", "pos": "1", "choices": { "0": "RGB", "1": "sRGB" } },
      { "type": "float", "name": "Channel 1", "default": "1", "min": "0", "max": "3", "pos": "2" },
      { "type": "float", "name": "Channel 2", "default": "1", "min": "0", "max": "3", "pos": "3" },
      { "type": "float", "name": "Channel 3", "default": "1", "min": "0", "max": "3", "pos": "4" },
      { "type": "bool", "name": "Normalize", "default": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "6", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "7" }
      ]
    },
    {
      "name": "Random Color Transformation", "lang": "en", "command": "fx_random_color_transformation", "command_preview": "fx_random_color_transformation_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Applies random changes to image colors, using randomly generated CLUT. " },
      { "type": "separator" },
      { "type": "float", "name": "Seed", "default": "0", "min": "0", "max": "100000", "pos": "1" },
      { "type": "button", "name": "Randomize Seed", "pos": "2" },
      { "type": "value", "value": "1", "pos": "3" },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude (%)", "default": "100", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Brightness (%)", "default": "0", "min": "-100", "max": "100", "pos": "5" },
      { "type": "float", "name": "Contrast (%)", "default": "0", "min": "-100", "max": "100", "pos": "6" },
      { "type": "float", "name": "Gamma (%)", "default": "0", "min": "-100", "max": "100", "pos": "7" },
      { "type": "float", "name": "Hue (%)", "default": "0", "min": "-100", "max": "100", "pos": "8" },
      { "type": "float", "name": "Saturation (%)", "default": "0", "min": "-100", "max": "100", "pos": "9" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "10", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "11", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2023/03/10." }
      ]
    },
    {
      "name": "Retinex", "lang": "en", "command": "fx_retinex", "command_preview": "fx_retinex", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Enhances dynamic range to simulate human vision (Retinex theory). " },
      { "type": "separator" },
      { "type": "float", "name": "Strength (%)", "default": "75", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Value Offset", "default": "16", "min": "1", "max": "256", "pos": "2" },
      { "type": "choice", "name": "Colorspace", "default": "1", "pos": "3", "choices": { "0": "HSI", "1": "HSV", "2": "Lab", "3": "Linear RGB", "4": "RGB", "5": "YCbCr" } },
      { "type": "float", "name": "Min Cut (%)", "default": "1", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Max Cut (%)", "default": "1", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "Regularization", "default": "5", "min": "0", "max": "32", "pos": "6" },
      { "type": "separator" },
      { "type": "float", "name": "Low Scale", "default": "15", "min": "1", "max": "512", "pos": "7" },
      { "type": "float", "name": "Middle Scale", "default": "80", "min": "1", "max": "512", "pos": "8" },
      { "type": "float", "name": "High Scale", "default": "250", "min": "1", "max": "512", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Note: This filter implements the Multiscale Color Retinex algorithm, as described in:" },
      { "type": "link", "name": "http://www.ipol.im/pub/art/2014/107/", "url": "http://www.ipol.im/pub/art/2014/107/", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/09/13." }
      ]
    },
    {
      "name": "Retro Fade", "lang": "en", "command": "fx_retrofade", "command_preview": "", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Mimics the look of aged, faded photographs. " },
      { "type": "separator" },
      { "type": "int", "name": "Iterations", "default": "20", "min": "1", "max": "64", "pos": "1" },
      { "type": "int", "name": "Colors", "default": "6", "min": "2", "max": "32", "pos": "2" },
      { "type": "float", "name": "Grain", "default": "40", "min": "1", "max": "100", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/10/25." }
      ]
    },
    {
      "name": "RGB Tone", "lang": "en", "command": "iain_rgb_tone", "command_preview": "iain_rgb_tone", "parameters": [
      { "type": "note", "text": "Adjust Reds for pixels that have:" },
      { "type": "float", "name": "Little Red", "default": "0", "min": "-255", "max": "255", "pos": "1" },
      { "type": "float", "name": "Some Red", "default": "0", "min": "-255", "max": "255", "pos": "2" },
      { "type": "float", "name": "Much Red", "default": "0", "min": "-255", "max": "255", "pos": "3" },
      { "type": "note", "text": "Adjust Reds for pixels that have:" },
      { "type": "float", "name": "Little Green", "default": "0", "min": "-255", "max": "255", "pos": "4" },
      { "type": "float", "name": "Some Green", "default": "0", "min": "-255", "max": "255", "pos": "5" },
      { "type": "float", "name": "Much Green", "default": "0", "min": "-255", "max": "255", "pos": "6" },
      { "type": "note", "text": "Adjust Reds for pixels that have:" },
      { "type": "float", "name": "Little Blue", "default": "0", "min": "-255", "max": "255", "pos": "7" },
      { "type": "float", "name": "Some Blue", "default": "0", "min": "-255", "max": "255", "pos": "8" },
      { "type": "float", "name": "Much Blue", "default": "0", "min": "-255", "max": "255", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Adjust Greens for pixels that have:" },
      { "type": "float", "name": "Little Red", "default": "0", "min": "-255", "max": "255", "pos": "10" },
      { "type": "float", "name": "Some Red", "default": "0", "min": "-255", "max": "255", "pos": "11" },
      { "type": "float", "name": "Much Red", "default": "0", "min": "-255", "max": "255", "pos": "12" },
      { "type": "note", "text": "Adjust Greens for pixels that have:" },
      { "type": "float", "name": "Little Green", "default": "0", "min": "-255", "max": "255", "pos": "13" },
      { "type": "float", "name": "Some Green", "default": "0", "min": "-255", "max": "255", "pos": "14" },
      { "type": "float", "name": "Much Green", "default": "0", "min": "-255", "max": "255", "pos": "15" },
      { "type": "note", "text": "Adjust Greens for pixels that have:" },
      { "type": "float", "name": "Little Blue", "default": "0", "min": "-255", "max": "255", "pos": "16" },
      { "type": "float", "name": "Some Blue", "default": "0", "min": "-255", "max": "255", "pos": "17" },
      { "type": "float", "name": "Much Blue", "default": "0", "min": "-255", "max": "255", "pos": "18" },
      { "type": "separator" },
      { "type": "note", "text": "Adjust Blues for pixels that have:" },
      { "type": "float", "name": "Little Red", "default": "0", "min": "-255", "max": "255", "pos": "19" },
      { "type": "float", "name": "Some Red", "default": "0", "min": "-255", "max": "255", "pos": "20" },
      { "type": "float", "name": "Much Red", "default": "0", "min": "-255", "max": "255", "pos": "21" },
      { "type": "note", "text": "Adjust Blues for pixels that have:" },
      { "type": "float", "name": "Little Green", "default": "0", "min": "-255", "max": "255", "pos": "22" },
      { "type": "float", "name": "Some Green", "default": "0", "min": "-255", "max": "255", "pos": "23" },
      { "type": "float", "name": "Much Green", "default": "0", "min": "-255", "max": "255", "pos": "24" },
      { "type": "note", "text": "Adjust Blues for pixels that have:" },
      { "type": "float", "name": "Little Blue", "default": "0", "min": "-255", "max": "255", "pos": "25" },
      { "type": "float", "name": "Some Blue", "default": "0", "min": "-255", "max": "255", "pos": "26" },
      { "type": "float", "name": "Much Blue", "default": "0", "min": "-255", "max": "255", "pos": "27" },
      { "type": "separator" },
      { "type": "note", "text": "Strength of effect for Saturation level:" },
      { "type": "float", "name": "None", "default": "255", "min": "0", "max": "255", "pos": "28" },
      { "type": "float", "name": "Little", "default": "255", "min": "0", "max": "255", "pos": "29" },
      { "type": "float", "name": "Some", "default": "255", "min": "0", "max": "255", "pos": "30" },
      { "type": "float", "name": "Much", "default": "255", "min": "0", "max": "255", "pos": "31" },
      { "type": "float", "name": "Most", "default": "255", "min": "0", "max": "255", "pos": "32" },
      { "type": "separator" },
      { "type": "choice", "name": "Output", "default": "0", "pos": "33", "choices": { "0": "Perserve Luminance", "1": "Clip", "2": "Scale" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Iain Fergusson." }
      ]
    },
    {
      "name": "samj_Remplir_Fill_Flood", "lang": "en", "command": "samj_Remplir_Fill_Flood", "command_preview": "samj_Remplir_Fill_Flood", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Position</span>" },
      { "type": "point", "name": "1 2 - Origine Flood/Remplissage", "position": "50,50", "pos": "1" },
      { "type": "note", "text": "<span foreground=\"orangered\">Remplissage/Filling</span>" },
      { "type": "color", "name": "3 4 5 6 - Couleur/Color", "default": "255,0,0,255", "pos": "3" },
      { "type": "float", "name": "7 - Seuil/Threshold", "default": "20", "min": "0", "max": "255", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2023/05/04." }
      ]
    },
    {
      "name": "samj_test_shapeprevalent", "lang": "en", "command": "samj_test_shapeprevalent", "command_preview": "samj_test_shapeprevalent", "parameters": [
      { "type": "separator" },
      { "type": "float", "name": "1 - Flou/Blur", "default": "2", "min": "1", "max": "5", "pos": "1" },
      { "type": "int", "name": "2 - Quantize", "default": "32", "min": "4", "max": "128", "pos": "2" },
      { "type": "int", "name": "3 - Surface/Area", "default": "50", "min": "2", "max": "100", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2023/03/18." }
      ]
    },
    {
      "name": "samj_Topographie_Eliminate_Contour_Lines", "lang": "en", "command": "samj_Topographie_Eliminate_Contour_Lines", "command_preview": "samj_Topographie_Eliminate_Contour_Lines_preview", "parameters": [
      { "type": "separator" },
      { "type": "link", "name": "discuss.pixls.us", "url": "https://discuss.pixls.us/t/is-there-a-way-to-filter-out-lines-that-are-within-a-common-color/36840", "align": "center" },
      { "type": "link", "name": "Cartes/GPS Nautical Charts", "url": "https://www.gpsnauticalcharts.com/", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Chercher/Look For Minimum</span>" },
      { "type": "int", "name": "1 - Dilate/Erode", "default": "10", "min": "1", "max": "30", "pos": "1" },
      { "type": "note", "text": "<span foreground=\"orangered\">Couleur/Color 1 Masque/Mask</span>" },
      { "type": "color", "name": "2 3 4 - Couleur/Color 1", "default": "152,197,242", "pos": "2" },
      { "type": "float", "name": "5 - Minimum Precision Couleur/Color 1", "default": "10", "min": "0", "max": "100", "pos": "5" },
      { "type": "note", "text": "<span foreground=\"orangered\">Couleur/Color 2 Masque/Mask</span>" },
      { "type": "color", "name": "6 7 8 - Couleur/Color 2", "default": "114,182,239", "pos": "6" },
      { "type": "float", "name": "9 - Minimum Precision Couleur/Color 2", "default": "90", "min": "0", "max": "100", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Lignes/Lines 1</span>" },
      { "type": "color", "name": "10 11 12 - Lignes/Lines 1", "default": "92,95,98", "pos": "10" },
      { "type": "float", "name": "13 - Minimum Precision Lignes/Lines 1", "default": "30", "min": "0", "max": "100", "pos": "13" },
      { "type": "note", "text": "<span foreground=\"orangered\">Lignes/Lines 2</span>" },
      { "type": "color", "name": "14 15 16 - Lignes/Lines 2", "default": "133,164,196", "pos": "14" },
      { "type": "float", "name": "17 - Minimum Precision Lignes/Lines 2", "default": "10", "min": "0", "max": "100", "pos": "17" },
      { "type": "note", "text": "<span foreground=\"orangered\">Lignes/Lines 3</span>" },
      { "type": "color", "name": "18 19 20 - Lignes/Lines 3", "default": "120,143,166", "pos": "18" },
      { "type": "float", "name": "21 - Minimum Precision Lignes/Lines 3", "default": "10", "min": "0", "max": "100", "pos": "21" },
      { "type": "note", "text": "<span foreground=\"orangered\">Texte/Text</span>" },
      { "type": "color", "name": "22 23 24 - Texte/Text", "default": "22,0,245", "pos": "22" },
      { "type": "float", "name": "25 - Minimum Precision Texte/Text", "default": "60", "min": "0", "max": "100", "pos": "25" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Finition</span>" },
      { "type": "bool", "name": "26 - Finition/Finishing", "default": "1", "pos": "26" },
      { "type": "separator" },
      { "type": "separator" },
      { "type": "note", "text": "<span>Pour améliorer les finitions essayer le filtre Select-Replace Color par David Tschumperlé.</span>" },
      { "type": "note", "text": "<span>To improve finishes try the Select-Replace Color filter by David Tschumperlé.</span>" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "27", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2023/05/03." }
      ]
    },
    {
      "name": "Satellite", "lang": "en", "command": "fx_satellite", "command_preview": "fx_satellite_preview", "parameters": [
      { "type": "note", "text": "Expresses luminance of images using <a href=\"https://www.ospo.noaa.gov/Organization/FAQ/enhancements.html\">image enhancement colour schemes</a> which are used in NOAA satellite weather products." },
      { "type": "separator" },
      { "type": "choice", "name": "Colour Scheme", "default": "0", "pos": "1", "choices": { "0": "Aviation", "1": "Dvorak", "2": "Funktop", "3": "JSL2", "4": "Shortwave IR2 (Standard and Tropical)", "5": "Shortwave IR2 (Fire)", "6": "Shortwave IR2 (Summer Fire)", "7": "Shortwave IR2 (Winter Fire)", "8": "Rainbow (Old)", "9": "Rainbow (New)", "10": "Water Vapour", "11": "Water Vapour (Blue)", "12": "IR Window (White-White&#41", "13": "IR Window (White-Brown&#41", "14": "IR Window (White-Black&#41", "15": "IR Window (Blue-White&#41", "16": "IR Window (Blue-Brown&#41", "17": "IR Window (Blue-Black&#41" } },
      { "type": "float", "name": "Gamma Bend", "default": "0", "min": "-3", "max": "3", "pos": "2" },
      { "type": "note", "text": "Cut range from original image" },
      { "type": "float", "name": "Cut Lower Threshold", "default": "0", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Cut Higher Threshold", "default": "100", "min": "0", "max": "100", "pos": "4" },
      { "type": "note", "text": "Apply range of colour scheme to image" },
      { "type": "bool", "name": "Normalise", "default": "1", "pos": "5" },
      { "type": "float", "name": "Normalise Lower Threshold", "default": "0", "min": "0", "max": "255", "pos": "6" },
      { "type": "float", "name": "Normalise Higher Threshold", "default": "255", "min": "0", "max": "255", "pos": "7" },
      { "type": "bool", "name": "To sRGB", "default": "0", "pos": "8" },
      { "type": "bool", "name": "Preview Colour Scheme", "default": "0", "pos": "9" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "10", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "11" }
      ]
    },
    {
      "name": "Saturation EQ", "lang": "en", "command": "Saturation_EQ_p", "command_preview": "Saturation_EQ_p", "parameters": [
      { "type": "note", "text": "Lightness" },
      { "type": "float", "name": "Black", "default": "0", "min": "-128", "max": "128", "pos": "1" },
      { "type": "float", "name": "Near Black", "default": "0", "min": "-128", "max": "128", "pos": "2" },
      { "type": "float", "name": "Dark Grey", "default": "0", "min": "-128", "max": "128", "pos": "3" },
      { "type": "float", "name": "Mid-Dark Grey", "default": "0", "min": "-128", "max": "128", "pos": "4" },
      { "type": "float", "name": "Middle Grey", "default": "0", "min": "-128", "max": "128", "pos": "5" },
      { "type": "float", "name": "Mid-Light Grey", "default": "0", "min": "-128", "max": "128", "pos": "6" },
      { "type": "float", "name": "Light Grey", "default": "0", "min": "-128", "max": "128", "pos": "7" },
      { "type": "float", "name": "Highlights", "default": "0", "min": "-128", "max": "128", "pos": "8" },
      { "type": "float", "name": "White", "default": "0", "min": "-128", "max": "128", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Hue" },
      { "type": "float", "name": "0", "default": "0", "min": "-128", "max": "128", "pos": "10" },
      { "type": "float", "name": "45", "default": "0", "min": "-128", "max": "128", "pos": "11" },
      { "type": "float", "name": "90", "default": "0", "min": "-128", "max": "128", "pos": "12" },
      { "type": "float", "name": "135", "default": "0", "min": "-128", "max": "128", "pos": "13" },
      { "type": "float", "name": "180", "default": "0", "min": "-128", "max": "128", "pos": "14" },
      { "type": "float", "name": "225", "default": "0", "min": "-128", "max": "128", "pos": "15" },
      { "type": "float", "name": "270", "default": "0", "min": "-128", "max": "128", "pos": "16" },
      { "type": "float", "name": "315", "default": "0", "min": "-128", "max": "128", "pos": "17" },
      { "type": "float", "name": "360", "default": "0", "min": "-128", "max": "128", "pos": "18" },
      { "type": "float", "name": "Rotate Hue Bands", "default": "0", "min": "-45", "max": "45", "pos": "19" },
      { "type": "separator" },
      { "type": "choice", "name": "Parallel Processing", "default": "0", "pos": "20", "choices": { "0": "Auto", "1": "Off" } },
      { "type": "separator" },
      { "type": "note", "text": "This filter allows you to adjust the Saturation based on the Lightness or Hue of the pixel. The Rotate Hue Bands control allows you shift the hue that each band controls by 45 degrees." },
      { "type": "separator" },
      { "type": "note", "text": "Author : Iain Fergusson. Update: 4 March 2014 - Added parallel processing option" }
      ]
    },
    {
      "name": "Select-Replace Color", "lang": "en", "command": "fx_select_color", "command_preview": "fx_select_color", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Selects a specific color and replaces it with another. " },
      { "type": "separator" },
      { "type": "choice", "name": "Similarity Space", "default": "0", "pos": "1", "choices": { "0": "RGB[A]", "1": "RGB", "2": "YCbCr", "3": "Red", "4": "Green", "5": "Blue", "6": "Opacity", "7": "Luminance", "8": "Blue & Red Chrominances", "9": "Hue", "10": "Saturation" } },
      { "type": "float", "name": "Tolerance", "default": "20", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "int", "name": "Fill Holes", "default": "0", "min": "0", "max": "256", "pos": "4" },
      { "type": "color", "name": "Selected Color", "default": "255,255,255,255", "pos": "5" },
      { "type": "choice", "name": "Output As", "default": "0", "pos": "9", "choices": { "0": "Selected Colors", "1": "Selected Mask", "2": "Rejected Colors", "3": "Rejected Mask", "4": "Replaced Color" } },
      { "type": "color", "name": "Replacement Color", "default": "255,0,0,255", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Selective Desaturation", "lang": "en", "command": "fx_selective_desaturation", "command_preview": "fx_selective_desaturation", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Desaturates the image except for a specific color range. " },
      { "type": "separator" },
      { "type": "color", "name": "Reference Color", "default": "255,255,255", "pos": "1" },
      { "type": "choice", "name": "Desaturate", "default": "0", "pos": "4", "choices": { "0": "Reference Color", "1": "All but Reference Color" } },
      { "type": "float", "name": "Strength", "default": "3", "min": "0", "max": "10", "pos": "5" },
      { "type": "int", "name": "Regularization", "default": "0", "min": "0", "max": "20", "pos": "6" },
      { "type": "choice", "name": "Maximum Saturation", "default": "0", "pos": "7", "choices": { "0": "From Input", "1": "From Reference Color", "2": "Maximum Value" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2015/07/15." }
      ]
    },
    {
      "name": "Sepia", "lang": "en", "command": "fx_sepia", "command_preview": "", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Applies a classic sepia tone. " },
      { "type": "separator" },
      { "type": "float", "name": "Brightness (%)", "default": "0", "min": "-100", "max": "100", "pos": "1" },
      { "type": "float", "name": "Contrast (%)", "default": "0", "min": "-100", "max": "100", "pos": "2" },
      { "type": "float", "name": "Gamma (%)", "default": "0", "min": "-100", "max": "100", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Simulate Film", "lang": "en", "command": "fx_simulate_film", "command_preview": "fx_simulate_film_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Emulates the look of various analog film stocks. " },
      { "type": "separator" },
      { "type": "choice", "name": "Category", "default": "0", "pos": "1", "choices": { "0": "Black & White (25)", "1": "Instant [Consumer] (54)", "2": "Instant [Pro] (68)", "3": "Fuji XTrans III (15)", "4": "Negative [Color] (13)", "5": "Negative [New] (39)", "6": "Negative [Old] (44)", "7": "Print Films (12)", "8": "Slide [Color] (26)" } },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "2", "choices": { "0": "All [Collage]", "1": "None", "2": "Agfa APX 100", "3": "Agfa APX 25", "4": "Fuji Neopan 1600", "5": "Fuji Neopan Acros 100", "6": "Ilford Delta 100", "7": "Ilford Delta 3200", "8": "Ilford Delta 400", "9": "Ilford FP4 Plus 125", "10": "Ilford HP5 Plus 400", "11": "Ilford HPS 800", "12": "Ilford Pan F Plus 50", "13": "Ilford XP2", "14": "Kodak BW 400 CN", "15": "Kodak HIE (HS Infra)", "16": "Kodak T-Max 100", "17": "Kodak T-Max 3200", "18": "Kodak T-Max 400", "19": "Kodak Tri-X 400", "20": "Polaroid 664", "21": "Polaroid 667", "22": "Polaroid 672", "23": "Rollei IR 400", "24": "Rollei Ortho 25", "25": "Rollei Retro 100 Tonal", "26": "Rollei Retro 80s" }, "visibility": "2" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "3", "choices": { "0": "All [Collage]", "1": "None", "2": "Polaroid PX-100UV+ Cold --", "3": "Polaroid PX-100UV+ Cold -", "4": "Polaroid PX-100UV+ Cold", "5": "Polaroid PX-100UV+ Cold +", "6": "Polaroid PX-100UV+ Cold ++", "7": "Polaroid PX-100UV+ Cold +++", "8": "Polaroid PX-100UV+ Warm --", "9": "Polaroid PX-100UV+ Warm -", "10": "Polaroid PX-100UV+ Warm", "11": "Polaroid PX-100UV+ Warm +", "12": "Polaroid PX-100UV+ Warm ++", "13": "Polaroid PX-100UV+ Warm +++", "14": "Polaroid PX-680 --", "15": "Polaroid PX-680 -", "16": "Polaroid PX-680", "17": "Polaroid PX-680 +", "18": "Polaroid PX-680 ++", "19": "Polaroid PX-680 Cold --", "20": "Polaroid PX-680 Cold -", "21": "Polaroid PX-680 Cold", "22": "Polaroid PX-680 Cold +", "23": "Polaroid PX-680 Cold ++", "24": "Polaroid PX-680 Cold ++a", "25": "Polaroid PX-680 Warm --", "26": "Polaroid PX-680 Warm -", "27": "Polaroid PX-680 Warm", "28": "Polaroid PX-680 Warm +", "29": "Polaroid PX-680 Warm ++", "30": "Polaroid PX-70 --", "31": "Polaroid PX-70 -", "32": "Polaroid PX-70", "33": "Polaroid PX-70 +", "34": "Polaroid PX-70 ++", "35": "Polaroid PX-70 +++", "36": "Polaroid PX-70 Cold --", "37": "Polaroid PX-70 Cold -", "38": "Polaroid PX-70 Cold", "39": "Polaroid PX-70 Cold +", "40": "Polaroid PX-70 Cold ++", "41": "Polaroid PX-70 Warm --", "42": "Polaroid PX-70 Warm -", "43": "Polaroid PX-70 Warm", "44": "Polaroid PX-70 Warm +", "45": "Polaroid PX-70 Warm ++", "46": "Polaroid Time Zero (Expired) ---", "47": "Polaroid Time Zero (Expired) --", "48": "Polaroid Time Zero (Expired) -", "49": "Polaroid Time Zero (Expired)", "50": "Polaroid Time Zero (Expired) +", "51": "Polaroid Time Zero (Expired) ++", "52": "Polaroid Time Zero (Expired) Cold ---", "53": "Polaroid Time Zero (Expired) Cold --", "54": "Polaroid Time Zero (Expired) Cold -", "55": "Polaroid Time Zero (Expired) Cold" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "4", "choices": { "0": "All [Collage]", "1": "None", "2": "Fuji FP-100c --", "3": "Fuji FP-100c -", "4": "Fuji FP-100c", "5": "Fuji FP-100c (alt)", "6": "Fuji FP-100c +", "7": "Fuji FP-100c ++", "8": "Fuji FP-100c ++a", "9": "Fuji FP-100c +++", "10": "Fuji FP-100c Cool --", "11": "Fuji FP-100c Cool -", "12": "Fuji FP-100c Cool", "13": "Fuji FP-100c Cool +", "14": "Fuji FP-100c Cool ++", "15": "Fuji FP-100c Negative --", "16": "Fuji FP-100c Negative -", "17": "Fuji FP-100c Negative", "18": "Fuji FP-100c Negative +", "19": "Fuji FP-100c Negative ++", "20": "Fuji FP-100c Negative ++a", "21": "Fuji FP-100c Negative +++", "22": "Fuji FP-3000b --", "23": "Fuji FP-3000b -", "24": "Fuji FP-3000b", "25": "Fuji FP-3000b +", "26": "Fuji FP-3000b ++", "27": "Fuji FP-3000b +++", "28": "Fuji FP-3000b HC", "29": "Fuji FP-3000b Negative --", "30": "Fuji FP-3000b Negative -", "31": "Fuji FP-3000b Negative", "32": "Fuji FP-3000b Negative +", "33": "Fuji FP-3000b Negative ++", "34": "Fuji FP-3000b Negative +++", "35": "Fuji FP-3000b Negative Early", "36": "Polaroid 665 --", "37": "Polaroid 665 -", "38": "Polaroid 665", "39": "Polaroid 665 +", "40": "Polaroid 665 ++", "41": "Polaroid 665 Negative -", "42": "Polaroid 665 Negative", "43": "Polaroid 665 Negative +", "44": "Polaroid 665 Negative HC", "45": "Polaroid 669 --", "46": "Polaroid 669 -", "47": "Polaroid 669", "48": "Polaroid 669 +", "49": "Polaroid 669 ++", "50": "Polaroid 669 +++", "51": "Polaroid 669 Cold --", "52": "Polaroid 669 Cold -", "53": "Polaroid 669 Cold", "54": "Polaroid 669 Cold +", "55": "Polaroid 690 --", "56": "Polaroid 690 -", "57": "Polaroid 690", "58": "Polaroid 690 +", "59": "Polaroid 690 ++", "60": "Polaroid 690 Cold --", "61": "Polaroid 690 Cold -", "62": "Polaroid 690 Cold", "63": "Polaroid 690 Cold +", "64": "Polaroid 690 Cold ++", "65": "Polaroid 690 Warm --", "66": "Polaroid 690 Warm -", "67": "Polaroid 690 Warm", "68": "Polaroid 690 Warm +", "69": "Polaroid 690 Warm ++" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "5", "choices": { "0": "All [Collage]", "1": "None", "2": "Acros", "3": "Acros+G", "4": "Acros+R", "5": "Acros+Ye", "6": "Astia", "7": "Classic Chrome", "8": "Mono", "9": "Mono+G", "10": "Mono+R", "11": "Mono+Ye", "12": "Pro Neg Hi", "13": "Pro Neg Std", "14": "Provia", "15": "Sepia", "16": "Velvia" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "6", "choices": { "0": "All [Collage]", "1": "None", "2": "Agfa Ultra Color 100", "3": "Agfa Vista 200", "4": "Fuji Superia 200", "5": "Fuji Superia HG 1600", "6": "Fuji Superia Reala 100", "7": "Fuji Superia X-Tra 800", "8": "Kodak Ektar 100", "9": "Kodak Elite 100 XPRO", "10": "Kodak Elite Color 200", "11": "Kodak Elite Color 400", "12": "Kodak Portra 160 NC", "13": "Kodak Portra 160 VC", "14": "Lomography Redscale 100" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "7", "choices": { "0": "All [Collage]", "1": "None", "2": "Fuji 160C -", "3": "Fuji 160C", "4": "Fuji 160C +", "5": "Fuji 160C ++", "6": "Fuji 400H -", "7": "Fuji 400H", "8": "Fuji 400H +", "9": "Fuji 400H ++", "10": "Fuji 800Z -", "11": "Fuji 800Z", "12": "Fuji 800Z +", "13": "Fuji 800Z ++", "14": "Fuji Ilford HP5 -", "15": "Fuji Ilford HP5", "16": "Fuji Ilford HP5 +", "17": "Fuji Ilford HP5 ++", "18": "Kodak Portra 160 -", "19": "Kodak Portra 160", "20": "Kodak Portra 160 +", "21": "Kodak Portra 160 ++", "22": "Kodak Portra 400 -", "23": "Kodak Portra 400", "24": "Kodak Portra 400 +", "25": "Kodak Portra 400 ++", "26": "Kodak Portra 800 -", "27": "Kodak Portra 800", "28": "Kodak Portra 800 +", "29": "Kodak Portra 800 ++", "30": "Kodak Portra 800 HC", "31": "Kodak T-MAX 3200 -", "32": "Kodak T-MAX 3200", "33": "Kodak T-MAX 3200 +", "34": "Kodak T-MAX 3200 ++", "35": "Kodak T-MAX 3200 (alt)", "36": "Kodak TRI-X 400 -", "37": "Kodak TRI-X 400", "38": "Kodak TRI-X 400 +", "39": "Kodak TRI-X 400 ++", "40": "Kodak TRI-X 400 (alt)" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "8", "choices": { "0": "All [Collage]", "1": "None", "2": "Fuji Ilford Delta 3200 -", "3": "Fuji Ilford Delta 3200", "4": "Fuji Ilford Delta 3200 +", "5": "Fuji Ilford Delta 3200 ++", "6": "Fuji Neopan 1600 -", "7": "Fuji Neopan 1600", "8": "Fuji Neopan 1600 +", "9": "Fuji Neopan 1600 ++", "10": "Fuji Superia 100 -", "11": "Fuji Superia 100", "12": "Fuji Superia 100 +", "13": "Fuji Superia 100 ++", "14": "Fuji Superia 400 -", "15": "Fuji Superia 400", "16": "Fuji Superia 400 +", "17": "Fuji Superia 400 ++", "18": "Fuji Superia 800 -", "19": "Fuji Superia 800", "20": "Fuji Superia 800 +", "21": "Fuji Superia 800 ++", "22": "Fuji Superia 1600 -", "23": "Fuji Superia 1600", "24": "Fuji Superia 1600 +", "25": "Fuji Superia 1600 ++", "26": "Kodak Portra 160 NC -", "27": "Kodak Portra 160 NC", "28": "Kodak Portra 160 NC +", "29": "Kodak Portra 160 NC ++", "30": "Kodak Portra 160 VC -", "31": "Kodak Portra 160 VC", "32": "Kodak Portra 160 VC +", "33": "Kodak Portra 160 VC ++", "34": "Kodak Portra 400 NC -", "35": "Kodak Portra 400 NC", "36": "Kodak Portra 400 NC +", "37": "Kodak Portra 400 NC ++", "38": "Kodak Portra 400 UC -", "39": "Kodak Portra 400 UC", "40": "Kodak Portra 400 UC +", "41": "Kodak Portra 400 UC ++", "42": "Kodak Portra 400 VC -", "43": "Kodak Portra 400 VC", "44": "Kodak Portra 400 VC +", "45": "Kodak Portra 400 VC ++" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "9", "choices": { "0": "All [Collage]", "1": "None", "2": "Fuji 3510 (Constlclip)", "3": "Fuji 3510 (Constlmap)", "4": "Fuji 3510 (Cuspclip)", "5": "Fuji 3513 (Constlclip)", "6": "Fuji 3513 (Constlmap)", "7": "Fuji 3513 (Cuspclip)", "8": "Kodak 2383 (Constlclip)", "9": "Kodak 2383 (Constlmap)", "10": "Kodak 2383 (Cuspclip)", "11": "Kodak 2393 (Constlclip)", "12": "Kodak 2393 (Constlmap)", "13": "Kodak 2393 (Cuspclip)" }, "visibility": "0" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "10", "choices": { "0": "All [Collage]", "1": "None", "2": "Agfa Precisa 100", "3": "Fuji Astia 100F", "4": "Fuji FP 100C", "5": "Fuji Provia 100F", "6": "Fuji Provia 400F", "7": "Fuji Provia 400X", "8": "Fuji Sensia 100", "9": "Fuji Superia 200 XPRO", "10": "Fuji Velvia 50", "11": "Generic Fuji Astia 100", "12": "Generic Fuji Provia 100", "13": "Generic Fuji Velvia 100", "14": "Generic Kodachrome 64", "15": "Generic Kodak Ektachrome 100 VS", "16": "Kodak E-100 GX Ektachrome 100", "17": "Kodak Ektachrome 100 VS", "18": "Kodak Elite Chrome 200", "19": "Kodak Elite Chrome 400", "20": "Kodak Elite ExtraColor 100", "21": "Kodak Kodachrome 200", "22": "Kodak Kodachrome 25", "23": "Kodak Kodachrome 64", "24": "Lomography X-Pro Slide 200", "25": "Polaroid 669", "26": "Polaroid 690", "27": "Polaroid Polachrome" }, "visibility": "0" },
      { "type": "int", "name": "Thumbnail Size", "default": "512", "min": "0", "max": "1024", "pos": "11", "visibility": "1" },
      { "type": "separator" },
      { "type": "float", "name": "Strength (%)", "default": "100", "min": "0", "max": "100", "pos": "12" },
      { "type": "float", "name": "Brightness (%)", "default": "0", "min": "-100", "max": "100", "pos": "13" },
      { "type": "float", "name": "Contrast (%)", "default": "0", "min": "-100", "max": "100", "pos": "14" },
      { "type": "float", "name": "Gamma (%)", "default": "0", "min": "-100", "max": "100", "pos": "15" },
      { "type": "float", "name": "Hue (%)", "default": "0", "min": "-100", "max": "100", "pos": "16" },
      { "type": "float", "name": "Saturation (%)", "default": "0", "min": "-100", "max": "100", "pos": "17" },
      { "type": "choice", "name": "Normalize Colors", "default": "0", "pos": "18", "choices": { "0": "None", "1": "Pre-Normalize", "2": "Post-Normalize", "3": "Both" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "19", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "20", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Note: The color LUTs proposed in this filter come from various free sources :" },
      { "type": "note", "text": "* <a href=\"https://rawpedia.rawtherapee.com/Film_Simulation\">RawTherapee Film Simulation</a>." },
      { "type": "note", "text": "* <a href=\"https://patdavid.net/2013/08/film-emulation-presets-in-gmic-gimp.html\">Pat David Film Emulation</a>. " },
      { "type": "note", "text": "* <a href=\"http://blog.sowerby.me/fuji-film-simulation-profiles\">Fuji Film Simulation Profiles</a>." },
      { "type": "note", "text": "* <a href=\"http://juanmelara.com.au/print-film-emulation-luts-for-download/\">Print Film LUTs For Download</a>. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2019/02/27." }
      ]
    },
    {
      "name": "Softlight", "lang": "en", "command": "afre_softlight", "command_preview": "afre_softlight_preview", "parameters": [
      { "type": "note", "text": "<strong>Blend image with itself or another image using softlight.  Filter by <a href=\"https://discuss.pixls.us/u/afre\">afre</a> 2019-2020 Sept9.</strong>\n\n" },
      { "type": "int", "name": "Amount", "default": "50", "min": "-100", "max": "100", "pos": "1" },
      { "type": "bool", "name": "Reverse Order", "default": "0", "pos": "2" },
      { "type": "note", "text": "\n\n<strong>Hint</strong>\n\nUse the  <code>Input</code> <code>layers</code>  menu to select the layer(s) you would like to blend." },
      { "type": "note", "text": "\n<strong>Note</strong>\n\nG'MIC's preview is inaccurate. Apply the filter and review the results in your host editor." }
      ]
    },
    {
      "name": "Specific Saturation", "lang": "en", "command": "gcd_hio_levels", "command_preview": "gcd_hio_levels_preview", "parameters": [
      { "type": "note", "text": "\nHue Levels" },
      { "type": "separator" },
      { "type": "float", "name": "Input", "default": "1", "min": "0", "max": "2", "pos": "1" },
      { "type": "float", "name": "Opposing", "default": "1", "min": "0", "max": "2", "pos": "2" },
      { "type": "int", "name": "Hue", "default": "39", "min": "0", "max": "360", "pos": "3" },
      { "type": "float", "name": "Level", "default": "0", "min": "-0.5", "max": "0.5", "pos": "4" },
      { "type": "note", "text": "\nLuma Levels" },
      { "type": "separator" },
      { "type": "float", "name": "Gamma", "default": "1", "min": "0.2", "max": "1.8", "pos": "5" },
      { "type": "float", "name": "Contrast", "default": "1", "min": "0.2", "max": "1.8", "pos": "6" },
      { "type": "bool", "name": "sRGB Conversion", "default": "0", "pos": "7" },
      { "type": "bool", "name": "Process Top Layer Only", "default": "0", "pos": "8" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview", "default": "0", "pos": "9", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate horizontal", "6": "Duplicate vertical", "7": "Blend all layers" } },
      { "type": "value", "value": "0", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2016/01/22." }
      ]
    },
    {
      "name": "Tone Presets", "lang": "en", "command": "iain_tone_presets_p", "command_preview": "iain_tone_presets_p", "parameters": [
      { "type": "choice", "name": "Preset", "default": "0", "pos": "1", "choices": { "0": "Whiter Whites", "1": "Warm Vintage", "2": "Magenta-Yellow", "3": "Velvetia", "4": "Seventies Magazine", "5": "Faded Print", "6": "Expired 69", "7": "Modern Film" } },
      { "type": "float", "name": "Strength", "default": "100", "min": "-200", "max": "200", "pos": "2" },
      { "type": "bool", "name": "Scale Output", "default": "0", "pos": "3" },
      { "type": "separator" },
      { "type": "choice", "name": "Parallel Processing", "default": "0", "pos": "4", "choices": { "0": "Auto", "1": "Off" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Iain Fergusson. Update: 4 March 2014 - Added parallel processing option" }
      ]
    },
    {
      "name": "Transfer Colors [Histogram]", "lang": "en", "command": "fx_transfer_histogram", "command_preview": "fx_transfer_histogram_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Matches the color histogram of the image to a reference. " },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "1", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "choice", "name": "Reference Colors", "default": "0", "pos": "2", "choices": { "0": "Bottom Layer", "1": "Top Layer" } },
      { "type": "separator" },
      { "type": "point", "name": "Preview_ref_point", "position": "1,1", "pos": "3", "visibility": "0" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "5", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "6", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Note:  This filter needs at least two layers to work properly. Set the Input layers option to handle multiple input layers. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2020/01/13." }
      ]
    },
    {
      "name": "Transfer Colors [Patch-Based]", "lang": "en", "command": "fx_gcd_transfer_colors_patch", "command_preview": "fx_gcd_transfer_colors_patch_preview", "parameters": [
      { "type": "note", "text": "Generate a CLUT and apply it to other images." },
      { "type": "note", "text": "\nInput Options" },
      { "type": "separator" },
      { "type": "int", "name": "Resolution", "default": "6", "min": "2", "max": "8", "pos": "1" },
      { "type": "float", "name": "Smooth", "default": "3", "min": "0", "max": "10", "pos": "2" },
      { "type": "int", "name": "Iters", "default": "5", "min": "0", "max": "20", "pos": "3" },
      { "type": "int", "name": "Random", "default": "5", "min": "0", "max": "20", "pos": "4" },
      { "type": "note", "text": "\nOutput Options" },
      { "type": "separator" },
      { "type": "choice", "name": "Reference", "default": "0", "pos": "5", "choices": { "0": "Top layer", "1": "Bottom layer" } },
      { "type": "choice", "name": "Output CLUT", "default": "0", "pos": "6", "choices": { "0": "Disable", "1": "512x512 layer", "2": "4096x4096 layer" } },
      { "type": "note", "text": "\n" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2017/08/17." },
      { "type": "note", "text": "\n<u>Notes</u>" },
      { "type": "note", "text": "Set the Input layers option to transfer colors to other layers." },
      { "type": "note", "text": "If only one input layer is selected a CLUT is always output." },
      { "type": "note", "text": "Higher resolution, iters, or random generally produce better results - at the cost of processing time." },
      { "type": "note", "text": "Results are not necessarily the same every time due to the random based algorithm." }
      ]
    },
    {
      "name": "Transfer Colors [PCA]", "lang": "en", "command": "fx_transfer_pca", "command_preview": "fx_transfer_pca_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Transfers colors from a reference image using PCA. " },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "1", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "choice", "name": "Reference Colors", "default": "0", "pos": "2", "choices": { "0": "Bottom Layer", "1": "Top Layer" } },
      { "type": "separator" },
      { "type": "point", "name": "Preview_ref_point", "position": "1,1", "pos": "3", "visibility": "0" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "5", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "6", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Note:  This filter needs at least two layers to work properly. Set the Input layers option to handle multiple input layers. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2020/01/13." }
      ]
    },
    {
      "name": "Transfer Colors [Variational]", "lang": "en", "command": "fx_transfer_rgb", "command_preview": "fx_transfer_rgb_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Transfers colors using a variational method. " },
      { "type": "separator" },
      { "type": "int", "name": "Regularization", "default": "8", "min": "0", "max": "32", "pos": "1" },
      { "type": "float", "name": "Preserve Luminance", "default": "0.2", "min": "0", "max": "1", "pos": "2" },
      { "type": "choice", "name": "Precision", "default": "1", "pos": "3", "choices": { "0": "Low", "1": "Normal", "2": "High", "3": "Very High" } },
      { "type": "choice", "name": "Reference Colors", "default": "0", "pos": "4", "choices": { "0": "Bottom Layer", "1": "Top Layer" } },
      { "type": "bool", "name": "Add User-Defined Constraints (Interactive)", "default": "0", "pos": "5", "visibility": "1" },
      { "type": "separator", "visibility": "1" },
      { "type": "point", "name": "Preview_ref_point", "position": "1,1", "pos": "6", "visibility": "0" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "8", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "9", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Instructions:\n - This filter transfers the colors of one layer to all the others.\n - Don't forget to set the Input layers... option on the left to manage your input layers.\n " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2015/04/04." }
      ]
    },
    {
      "name": "Tune HSV Colors", "lang": "en", "command": "fx_tune_hsv", "command_preview": "fx_tune_hsv_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Fine-tunes specific hue, saturation, and value ranges. " },
      { "type": "separator" },
      { "type": "choice", "name": "Dark", "default": "2", "pos": "1", "choices": { "0": "Ignore", "1": "Lock", "2": "Remap" } },
      { "type": "color", "name": "Dark Color", "default": "0,0,0", "pos": "2" },
      { "type": "float", "name": "Target Hue (%)", "default": "100", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "Target Saturation (%)", "default": "100", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "Target Value (%)", "default": "100", "min": "0", "max": "100", "pos": "7" },
      { "type": "separator" },
      { "type": "choice", "name": "Light", "default": "2", "pos": "8", "choices": { "0": "Ignore", "1": "Lock", "2": "Remap" } },
      { "type": "color", "name": "Light Color", "default": "255,255,255", "pos": "9" },
      { "type": "float", "name": "Target Hue (%)", "default": "100", "min": "0", "max": "100", "pos": "12" },
      { "type": "float", "name": "Target Saturation (%)", "default": "100", "min": "0", "max": "100", "pos": "13" },
      { "type": "float", "name": "Target Value (%)", "default": "100", "min": "0", "max": "100", "pos": "14" },
      { "type": "separator" },
      { "type": "choice", "name": "Average", "default": "1", "pos": "15", "choices": { "0": "Ignore", "1": "Lock", "2": "Remap" } },
      { "type": "color", "name": "Average Color", "default": "128,128,128", "pos": "16", "visibility": "0" },
      { "type": "float", "name": "Target Hue (%)", "default": "0", "min": "0", "max": "100", "pos": "19", "visibility": "0" },
      { "type": "float", "name": "Target Saturation (%)", "default": "50", "min": "0", "max": "100", "pos": "20", "visibility": "0" },
      { "type": "float", "name": "Target Value (%)", "default": "100", "min": "0", "max": "100", "pos": "21", "visibility": "0" },
      { "type": "separator" },
      { "type": "choice", "name": "Red", "default": "0", "pos": "22", "choices": { "0": "Ignore", "1": "Lock", "2": "Remap" } },
      { "type": "color", "name": "Red Color", "default": "255,0,0", "pos": "23", "visibility": "0" },
      { "type": "float", "name": "Target Hue (%)", "default": "100", "min": "0", "max": "100", "pos": "26", "visibility": "0" },
      { "type": "float", "name": "Target Saturation (%)", "default": "12.5", "min": "0", "max": "100", "pos": "27", "visibility": "0" },
      { "type": "float", "name": "Target Value (%)", "default": "0", "min": "0", "max": "100", "pos": "28", "visibility": "0" },
      { "type": "separator" },
      { "type": "choice", "name": "Yellow", "default": "0", "pos": "29", "choices": { "0": "Ignore", "1": "Lock", "2": "Remap" } },
      { "type": "color", "name": "Yellow Color", "default": "255,255,0", "pos": "30", "visibility": "0" },
      { "type": "float", "name": "Target Hue (%)", "default": "100", "min": "0", "max": "100", "pos": "33", "visibility": "0" },
      { "type": "float", "name": "Target Saturation (%)", "default": "12.5", "min": "0", "max": "100", "pos": "34", "visibility": "0" },
      { "type": "float", "name": "Target Value (%)", "default": "0", "min": "0", "max": "100", "pos": "35", "visibility": "0" },
      { "type": "separator" },
      { "type": "choice", "name": "Green", "default": "0", "pos": "36", "choices": { "0": "Ignore", "1": "Lock", "2": "Remap" } },
      { "type": "color", "name": "Green Color", "default": "0,255,0", "pos": "37", "visibility": "0" },
      { "type": "float", "name": "Target Hue (%)", "default": "100", "min": "0", "max": "100", "pos": "40", "visibility": "0" },
      { "type": "float", "name": "Target Saturation (%)", "default": "12.5", "min": "0", "max": "100", "pos": "41", "visibility": "0" },
      { "type": "float", "name": "Target Value (%)", "default": "0", "min": "0", "max": "100", "pos": "42", "visibility": "0" },
      { "type": "separator" },
      { "type": "choice", "name": "Cyan", "default": "0", "pos": "43", "choices": { "0": "Ignore", "1": "Lock", "2": "Remap" } },
      { "type": "color", "name": "Cyan Color", "default": "0,255,255", "pos": "44", "visibility": "0" },
      { "type": "float", "name": "Target Hue (%)", "default": "100", "min": "0", "max": "100", "pos": "47", "visibility": "0" },
      { "type": "float", "name": "Target Saturation (%)", "default": "12.5", "min": "0", "max": "100", "pos": "48", "visibility": "0" },
      { "type": "float", "name": "Target Value (%)", "default": "0", "min": "0", "max": "100", "pos": "49", "visibility": "0" },
      { "type": "separator" },
      { "type": "choice", "name": "Blue", "default": "0", "pos": "50", "choices": { "0": "Ignore", "1": "Lock", "2": "Remap" } },
      { "type": "color", "name": "Blue Color", "default": "0,0,255", "pos": "51", "visibility": "0" },
      { "type": "float", "name": "Target Hue (%)", "default": "100", "min": "0", "max": "100", "pos": "54", "visibility": "0" },
      { "type": "float", "name": "Target Saturation (%)", "default": "12.5", "min": "0", "max": "100", "pos": "55", "visibility": "0" },
      { "type": "float", "name": "Target Value (%)", "default": "0", "min": "0", "max": "100", "pos": "56", "visibility": "0" },
      { "type": "separator" },
      { "type": "choice", "name": "Magenta", "default": "0", "pos": "57", "choices": { "0": "Ignore", "1": "Lock", "2": "Remap" } },
      { "type": "color", "name": "Magenta Color", "default": "255,0,255", "pos": "58", "visibility": "0" },
      { "type": "float", "name": "Target Hue (%)", "default": "100", "min": "0", "max": "100", "pos": "61", "visibility": "0" },
      { "type": "float", "name": "Target Saturation (%)", "default": "12.5", "min": "0", "max": "100", "pos": "62", "visibility": "0" },
      { "type": "float", "name": "Target Value (%)", "default": "0", "min": "0", "max": "100", "pos": "63", "visibility": "0" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview color mapping", "default": "2", "pos": "64", "choices": { "0": "None", "1": "Center", "2": "Top Left", "3": "Top Right", "4": "Bottom Left", "5": "Bottom Right" } },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "65", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "66", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2020/12/17." }
      ]
    },
    {
      "name": "User-Defined", "lang": "en", "command": "fx_custom_transform", "command_preview": "fx_custom_transform", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Applies a user-defined mathematical formula to image colors. " },
      { "type": "separator" },
      { "type": "text", "name": "Red - Green - Blue - Alpha", "default": "i", "pos": "1" },
      { "type": "text", "name": "Red - Green - Blue", "default": "i + 90*(x/w)*cos(i/10)", "pos": "2" },
      { "type": "text", "name": "Red", "default": "i", "pos": "3" },
      { "type": "text", "name": "Green", "default": "i", "pos": "4" },
      { "type": "text", "name": "Blue", "default": "i", "pos": "5" },
      { "type": "text", "name": "Alpha", "default": "i", "pos": "6" },
      { "type": "choice", "name": "Value Normalization", "default": "0", "pos": "7", "choices": { "0": "None", "1": "RGB", "2": "RGBA" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Valeur Moyenne LCH", "lang": "en", "command": "samj_Valeur_Moyenne_LCH", "command_preview": "samj_Valeur_Moyenne_LCH_Preview", "parameters": [
      { "type": "separator" },
      { "type": "link", "name": "http://colormine.org/convert/rgb-to-lch", "url": "http://colormine.org/convert/rgb-to-lch", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">samj_Valeur_Moyenne_LCH</span>" },
      { "type": "int", "name": "Dimension Echantillon Image", "default": "400", "min": "10", "max": "800", "pos": "1" },
      { "type": "link", "name": "http://www.brucelindbloom.com/Eqn_RGB_XYZ_Matrix.html", "url": "http://www.brucelindbloom.com/Eqn_RGB_XYZ_Matrix.html", "align": "center" },
      { "type": "choice", "name": "RGB XYZ Matrices", "default": "14", "pos": "2", "choices": { "0": "0 Adobe RGB 1998 D65", "1": "1 AppleRGB D65", "2": "2 Best RGB D50", "3": "3 Beta RGB D50", "4": "4 Bruce RGB D65", "5": "5 CIE RGB E", "6": "6 ColorMatch RGB D50", "7": "7 Don RGB 4 D50", "8": "8 ECI RGB D50", "9": "9 Ekta Space PS5 D50 ", "10": "10 NTSC RGB C", "11": "11 PAL SECAM RGB D65", "12": "12 ProPhoto RGB D50", "13": "13 SMPTE C RGB D65", "14": "14 Observateur 2deg Illuminant D65 sRGB REF", "15": "15 Wide Gamut RGB D50" } },
      { "type": "choice", "name": "XYZ_Tristimulus", "default": "4", "pos": "3", "choices": { "0": "0 2deg CIE 1931 A Incandescent", "1": "1 2deg CIE 1931 C", "2": "2 2deg CIE 1931 D50", "3": "3 2deg CIE 1931 D55", "4": "4 2deg CIE 1931 D65 Daylight REF", "5": "5 2deg CIE 1931 D75", "6": "6 2deg CIE 1931 F2 Fluorescent", "7": "7 2deg CIE 1931 F7", "8": "8 2deg CIE 1931 F11", "9": "9 RIEN NONE", "10": "10 10deg CIE 1964 A Incandescent", "11": "11 10deg CIE 1964 C", "12": "12 10deg CIE 1964 D50", "13": "13 10deg CIE 1964 D55", "14": "14 10deg CIE 1964 D65 Daylight ", "15": "15 10deg CIE 1964 D75 ", "16": "16 10deg CIE 1964 F2 Fluorescent ", "17": "17 10deg CIE 1964 F7 ", "18": "18 10deg CIE 1964 F11" } },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Fichier Sauvegarde File</span>" },
      { "type": "folder", "name": "Output Folder", "default": "", "pos": "4" },
      { "type": "text", "name": "Output Filename", "default": "samj_Valeur_Moyenne_LCH.txt", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Latest update : 2019/03/26." }
      ]
    },
    {
      "name": "Variations RVB", "lang": "en", "command": "samj_Variations_RVB", "command_preview": "samj_Variations_RVB", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">samj_Variations_RVB</span>" },
      { "type": "separator" },
      { "type": "note", "text": "Geometry" },
      { "type": "float", "name": "Position X (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Position Y (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Tilt Angle", "default": "0", "min": "0", "max": "360", "pos": "3" },
      { "type": "float", "name": "Radius Center Circle", "default": "6", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Angle Offset Rings", "default": "0", "min": "0", "max": "360", "pos": "5" },
      { "type": "float", "name": "Variation Dimension", "default": "0", "min": "-100", "max": "200", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Variations RVB" },
      { "type": "color", "name": "Reference Color", "default": "180,90,45", "pos": "7" },
      { "type": "bool", "name": "Fill Color", "default": "0", "pos": "10" },
      { "type": "bool", "name": "Outline Reference Color", "default": "1", "pos": "11" },
      { "type": "int", "name": "Type Variation", "default": "0", "min": "0", "max": "20", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Update : 2020/10/24." }
      ]
    },
    {
      "name": "Vibrance", "lang": "en", "command": "fx_vibrance", "command_preview": "", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Smart saturation adjustment. " },
      { "type": "separator" },
      { "type": "float", "name": "Strength", "default": "0.5", "min": "-1", "max": "3", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Age / Pixls.us.      Latest Update: 2022/06/28." }
      ]
    },
    {
      "name": "Vintage Style", "lang": "en", "command": "fx_tk_vintage", "command_preview": "fx_tk_vintage_preview", "parameters": [
      { "type": "float", "name": "Exposure", "default": "2", "min": "-5", "max": "5", "pos": "1" },
      { "type": "float", "name": "Contrast", "default": "0.85", "min": "0.5", "max": "1.5", "pos": "2" },
      { "type": "float", "name": "Saturation", "default": "0.7", "min": "0", "max": "4", "pos": "3" },
      { "type": "float", "name": "Shadows Threshold", "default": "80", "min": "0", "max": "128", "pos": "4" },
      { "type": "float", "name": "Highlights Threshold", "default": "200", "min": "128", "max": "255", "pos": "5" },
      { "type": "float", "name": "Transition Smoothness", "default": "5", "min": "0", "max": "50", "pos": "6" },
      { "type": "separator" },
      { "type": "color", "name": "Color Shadows", "default": "147,26,161", "pos": "7" },
      { "type": "float", "name": "Strength Shadows", "default": "0.3", "min": "0", "max": "1", "pos": "10" },
      { "type": "color", "name": "Color Midtones", "default": "235,220,176", "pos": "11" },
      { "type": "float", "name": "Strength Midtones", "default": "0.4", "min": "0", "max": "1", "pos": "14" },
      { "type": "color", "name": "Color Highlights", "default": "190,181,108", "pos": "15" },
      { "type": "float", "name": "Strength Highlights", "default": "0.2", "min": "0", "max": "1", "pos": "18" },
      { "type": "color", "name": "Color Overall Effect", "default": "0,0,100", "pos": "19" },
      { "type": "choice", "name": "Color Effect Mode", "default": "0", "pos": "22", "choices": { "0": "exclusion", "1": "overlay", "2": "soft  Light", "3": "multiply", "4": "screen" } },
      { "type": "float", "name": "Strength Effect", "default": "0.3", "min": "0", "max": "1", "pos": "23" },
      { "type": "separator" },
      { "type": "float", "name": "Vignette Size", "default": "25", "min": "0", "max": "100", "pos": "24" },
      { "type": "float", "name": "Vignette Strenth", "default": "0", "min": "0", "max": "1", "pos": "25" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "26", "choices": { "0": "Full", "1": "Forward  horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Tom Keil.       Latest update: 2011/04/06." }
      ]
    },
    {
      "name": "Zone System", "lang": "en", "command": "fx_zonesystem", "command_preview": "fx_zonesystem_preview", "parameters": [
      { "type": "int", "name": "Shadows Zone", "default": "1", "min": "1", "max": "5", "pos": "1" },
      { "type": "int", "name": "Highlights Zone", "default": "10", "min": "6", "max": "10", "pos": "2" },
      { "type": "float", "name": "Gamma", "default": "1", "min": "0", "max": "5", "pos": "3" },
      { "type": "float", "name": "Contrast", "default": "1", "min": "0", "max": "4", "pos": "4" },
      { "type": "int", "name": "Black Point", "default": "0", "min": "0", "max": "255", "pos": "5" },
      { "type": "int", "name": "White Point", "default": "255", "min": "0", "max": "255", "pos": "6" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "7", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Tom Keil.      Latest update: 2011/13/02." }
      ]
    }
    ]
  },
  {
    "name": "Contours", "filters": [
    {
      "name": "Carte De Repoussage", "lang": "en", "command": "samj_Carte_De_Repoussage", "command_preview": "samj_Carte_De_Repoussage", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">15 Matrices Emboss Pivotees</span>" },
      { "type": "int", "name": "Matrices Emboss", "default": "30", "min": "0", "max": "59", "pos": "1" },
      { "type": "bool", "name": "Gris/Gray", "default": "1", "pos": "2" },
      { "type": "float", "name": "Flou/Blur", "default": "0", "min": "0", "max": "32", "pos": "3" },
      { "type": "float", "name": "Netteté/Sharpen", "default": "0", "min": "0", "max": "10", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2019/03/22." }
      ]
    },
    {
      "name": "Colored Outlines", "lang": "en", "command": "samj_Colored_Outlines", "command_preview": "samj_Colored_Outlines", "parameters": [
      { "type": "note", "text": "samj_Colored_Outlines" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Blur</span>" },
      { "type": "choice", "name": "Axes", "default": "0", "pos": "1", "choices": { "0": "XY", "1": "X", "2": "Y" } },
      { "type": "float", "name": "Blur", "default": "2", "min": "0", "max": "10", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Isophote</span>" },
      { "type": "float", "name": "Isophote", "default": "8", "min": "6", "max": "16", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Smooth</span>" },
      { "type": "int", "name": "Smooth", "default": "0", "min": "0", "max": "100", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Dilate</span>" },
      { "type": "int", "name": "Dilate", "default": "0", "min": "0", "max": "16", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Background</span>" },
      { "type": "color", "name": "Color", "default": "0,0,0,255", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/01/29." }
      ]
    },
    {
      "name": "Coloriage", "lang": "en", "command": "samj_Coloriage", "command_preview": "samj_Coloriage_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Filtre Lent</u></span>" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Pour obtenir un contour de 1 couleur</u></span>" },
      { "type": "separator" },
      { "type": "int", "name": "Dimension Max Echantillon", "default": "612", "min": "256", "max": "800", "pos": "1" },
      { "type": "int", "name": "Limites", "default": "255", "min": "1", "max": "255", "pos": "2" },
      { "type": "float", "name": "Flou Lissage", "default": "2", "min": "0", "max": "10", "pos": "3" },
      { "type": "int", "name": "Isophotes Nb Levels", "default": "6", "min": "4", "max": "16", "pos": "4" },
      { "type": "int", "name": "Dilatation", "default": "2", "min": "1", "max": "16", "pos": "5" },
      { "type": "color", "name": "Couleur Contour", "default": "0,0,0,255", "pos": "6" },
      { "type": "bool", "name": "Dimensions Origine", "default": "0", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/12/04." }
      ]
    },
    {
      "name": "Contours Arrondis", "lang": "en", "command": "samj_Contours_Arrondis", "command_preview": "samj_Contours_Arrondis", "parameters": [
      { "type": "note", "text": "samj_Contours_Arrondis" },
      { "type": "note", "text": "<span foreground=\"orangered\">Lissage</span>" },
      { "type": "int", "name": "Itérations", "default": "1", "min": "1", "max": "25", "pos": "1" },
      { "type": "int", "name": "Quantize", "default": "3", "min": "2", "max": "25", "pos": "2" },
      { "type": "int", "name": "Blur", "default": "5", "min": "5", "max": "50", "pos": "3" },
      { "type": "note", "text": "<span foreground=\"orangered\">Traits</span>" },
      { "type": "int", "name": "Isophotes", "default": "10", "min": "2", "max": "50", "pos": "4" },
      { "type": "bool", "name": "RGBA", "default": "0", "pos": "5" },
      { "type": "int", "name": "Dilate Circ", "default": "0", "min": "0", "max": "10", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2015/04/06." }
      ]
    },
    {
      "name": "Contours Blancs", "lang": "en", "command": "samj_Contours_Blancs", "command_preview": "samj_Contours_Blancs_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<u>Option Quantize</u>" },
      { "type": "choice", "name": "Quantize", "default": "1", "pos": "1", "choices": { "0": "No", "1": "A", "2": "B", "3": "A + B" } },
      { "type": "int", "name": "Levels", "default": "16", "min": "2", "max": "256", "pos": "2" },
      { "type": "float", "name": "Blur", "default": "2", "min": "0", "max": "100", "pos": "3" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Gradient Norm</u></span>" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "4" },
      { "type": "float", "name": "Linearity", "default": "0.5", "min": "0", "max": "1.5", "pos": "5" },
      { "type": "float", "name": "Min threshold", "default": "0", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "Max threshold", "default": "100", "min": "0", "max": "100", "pos": "7" },
      { "type": "bool", "name": "Negative colors", "default": "0", "pos": "8" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Blanc Contours</u></span>" },
      { "type": "int", "name": "White Level Contour", "default": "3", "min": "0", "max": "12", "pos": "9" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Segment Watershed</u></span>" },
      { "type": "float", "name": "Edge threshold", "default": "2", "min": "0", "max": "15", "pos": "10" },
      { "type": "float", "name": "Smoothness", "default": "1", "min": "0", "max": "5", "pos": "11" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "12", "choices": { "0": "All", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "Linear RGB [all]", "8": "Linear RGB [red]", "9": "Linear RGB [green]", "10": "Linear RGB [blue]", "11": "YCbCr [luminance]", "12": "YCbCr [blue-red chrominances]", "13": "YCbCr [blue chrominance]", "14": "YCbCr [red chrominance]", "15": "YCbCr [green chrominance]", "16": "Lab [lightness]", "17": "Lab [ab-chrominances]", "18": "Lab [a-chrominance]", "19": "Lab [b-chrominance]", "20": "Lch [ch-chrominances]", "21": "Lch [c-chrominance]", "22": "Lch [h-chrominance]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [intensity]", "27": "HSL [lightness]", "28": "CMYK [cyan]", "29": "CMYK [magenta]", "30": "CMYK [yellow]", "31": "CMYK [key]", "32": "YIQ [luma]", "33": "YIQ [chromas]" } },
      { "type": "choice", "name": "Value action", "default": "0", "pos": "13", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Edges Offsets</u></span>" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "14" },
      { "type": "float", "name": "Threshold", "default": "15", "min": "0", "max": "50", "pos": "15" },
      { "type": "int", "name": "Scale", "default": "4", "min": "0", "max": "32", "pos": "16" },
      { "type": "int", "name": "Thickness", "default": "1", "min": "0", "max": "16", "pos": "17" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "18", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: samj.      Latest update: 2019/12/16." }
      ]
    },
    {
      "name": "Contours Coins Vifs", "lang": "en", "command": "samj_Contours_Coins_Vifs", "command_preview": "samj_Contours_Coins_Vifs", "parameters": [
      { "type": "separator" },
      { "type": "int", "name": "1 - Autoindex (Détails)", "default": "20", "min": "2", "max": "255", "pos": "1" },
      { "type": "int", "name": "2 - Dilate (Étendue Zones/Size Areas)", "default": "20", "min": "2", "max": "100", "pos": "2" },
      { "type": "int", "name": "3 - Grosseur Traits/Thickness Lines", "default": "2", "min": "1", "max": "100", "pos": "3" },
      { "type": "choice", "name": "4 - Rendu/Rendering", "default": "0", "pos": "4", "choices": { "0": "Couleurs", "1": "Blanc", "2": "Noir" } },
      { "type": "note", "text": "<span foreground=\"orangered\">Couleurs/Colors</span>" },
      { "type": "float", "name": "5 - Intensité/intensity", "default": "0.05", "min": "-0.1", "max": "0.2", "pos": "5" },
      { "type": "note", "text": "<span foreground=\"orangered\">Flou/Blur</span>" },
      { "type": "int", "name": "6 - Étendue/Extent", "default": "0", "min": "0", "max": "300", "pos": "6" },
      { "type": "float", "name": "7 - Intensité/Intensity", "default": "0", "min": "-0.05", "max": "0.2", "pos": "7" },
      { "type": "note", "text": "<span foreground=\"orangered\">Fond/Background</span>" },
      { "type": "color", "name": "8-9-10-11 Color", "default": "0,0,0,0", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2021/01/15." }
      ]
    },
    {
      "name": "Contours Colores", "lang": "en", "command": "samj_Contours_Colores", "command_preview": "samj_Contours_Colores", "parameters": [
      { "type": "note", "text": "samj_Contours_Colores" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Contours</span>" },
      { "type": "float", "name": "Puissance / Pow", "default": "1.1", "min": "1", "max": "2", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Segment</span>" },
      { "type": "float", "name": "Edge threshold", "default": "2", "min": "0", "max": "15", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Cut</span>" },
      { "type": "int", "name": "Couper / Cut", "default": "40", "min": "0", "max": "255", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Dilate</span>" },
      { "type": "int", "name": "Dilate Contours", "default": "0", "min": "0", "max": "16", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Dégradation Spread</span>" },
      { "type": "float", "name": "Spread", "default": "0", "min": "0", "max": "10", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/01/25." }
      ]
    },
    {
      "name": "Convolve", "lang": "en", "command": "fx_convolve", "command_preview": "fx_convolve", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Convolves the image with a customizable kernel. " },
      { "type": "separator" },
      { "type": "choice", "name": "Kernel", "default": "0", "pos": "1", "choices": { "0": "Custom", "1": "Average 3x3", "2": "Average 5x5", "3": "Average 7x7", "4": "Average 9x9", "5": "Prewitt-X", "6": "Prewitt-Y", "7": "Sobel-X", "8": "Sobel-Y", "9": "Rotinv-X", "10": "Rotinv-Y", "11": "Laplacian", "12": "Robert Cross 1", "13": "Robert Cross 2", "14": "Impulses 5x5", "15": "Impulses 7x7", "16": "Impulses 9x9" } },
      { "type": "choice", "name": "Boundary", "default": "1", "pos": "2", "choices": { "0": "Dirichlet", "1": "Neumann" } },
      { "type": "separator" },
      { "type": "note", "text": "Note: If parameter Kernel is set to Custom, it uses the custom convolution kernel defined below. Use commas and semicolons as separators for res. matrix columns and rows. " },
      { "type": "text", "name": "Custom Kernel", "default": "0", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Note: Kernel multiplier is useful only when parameter Value range is set to Cut." },
      { "type": "choice", "name": "Value Range", "default": "1", "pos": "4", "choices": { "0": "Cut", "1": "Normalize" } },
      { "type": "float", "name": "Kernel Multiplier", "default": "1", "min": "0", "max": "50", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "2", "pos": "6", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/06/06." }
      ]
    },
    {
      "name": "Curvature", "lang": "en", "command": "fx_curvature", "command_preview": "fx_curvature", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Computes the curvature of image isophotes. " },
      { "type": "separator" },
      { "type": "float", "name": "Smoothness", "default": "2", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "Min Threshold", "default": "0", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Max Threshold", "default": "100", "min": "0", "max": "100", "pos": "3" },
      { "type": "bool", "name": "Absolute Value", "default": "0", "pos": "4" },
      { "type": "bool", "name": "Negative Colors", "default": "0", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Difference of Gaussians", "lang": "en", "command": "fx_dog", "command_preview": "fx_dog", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Highlights edges using the Difference of Gaussians method. " },
      { "type": "separator" },
      { "type": "float", "name": "1st Variance", "default": "1.4", "min": "0", "max": "5", "pos": "1" },
      { "type": "float", "name": "2nd Variance", "default": "1.5", "min": "0", "max": "5", "pos": "2" },
      { "type": "float", "name": "Threshold", "default": "0", "min": "0", "max": "49", "pos": "3" },
      { "type": "bool", "name": "Negative Colors", "default": "0", "pos": "4" },
      { "type": "bool", "name": "Monochrome", "default": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Distance Transform", "lang": "en", "command": "fx_distance", "command_preview": "fx_distance", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Computes the distance of each pixel to the nearest edge. " },
      { "type": "separator" },
      { "type": "int", "name": "Value", "default": "128", "min": "0", "max": "255", "pos": "1" },
      { "type": "choice", "name": "Metric", "default": "2", "pos": "2", "choices": { "0": "Chebyshev", "1": "Manhattan", "2": "Euclidean", "3": "Squared-Euclidean" } },
      { "type": "choice", "name": "Normalization", "default": "2", "pos": "3", "choices": { "0": "Cut", "1": "Normalize", "2": "Modulo" } },
      { "type": "int", "name": "Modulo Value", "default": "32", "min": "1", "max": "255", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2011/07/04." }
      ]
    },
    {
      "name": "Edge", "lang": "en", "command": "afre_edge", "command_preview": "afre_edge_preview", "parameters": [
      { "type": "note", "text": "<strong>Compute edge.  Filter by <a href=\"https://discuss.pixls.us/u/afre\">afre</a> 2019-2020 May3.</strong>\n\n" },
      { "type": "choice", "name": "Method", "default": "0", "pos": "1", "choices": { "0": "Gradient", "1": "Standard Deviation" } },
      { "type": "int", "name": "Thinning", "default": "1", "min": "1", "max": "10", "pos": "2" },
      { "type": "float", "name": "Recovery", "default": "1", "min": "0.5", "max": "4", "pos": "3" },
      { "type": "float", "name": "Brightness", "default": "1", "min": "0.5", "max": "4", "pos": "4" },
      { "type": "float", "name": "Details", "default": "1", "min": "0.5", "max": "4", "pos": "5" }
      ]
    },
    {
      "name": "Edges", "lang": "en", "command": "fx_edges", "command_preview": "fx_edges", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generic edge detection filter. " },
      { "type": "separator" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "Threshold", "default": "15", "min": "0", "max": "50", "pos": "2" },
      { "type": "bool", "name": "Negative Colors", "default": "0", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Edges (Canny)", "lang": "en", "command": "fx_canny", "command_preview": "fx_canny", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Implements the Canny edge detection algorithm. " },
      { "type": "separator" },
      { "type": "float", "name": "Sigma", "default": "5", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "Lower Threshold", "default": "0.05", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "Upper Threshold", "default": "0.15", "min": "0", "max": "1", "pos": "3" },
      { "type": "bool", "name": "Monochrome", "default": "1", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Garagecoder and David Tschumperlé.      Latest Update: 2023/12/04." }
      ]
    },
    {
      "name": "Edges Offsets", "lang": "en", "command": "fx_edge_offsets", "command_preview": "fx_edge_offsets", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Detects edges and computes their offset. " },
      { "type": "separator" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "Threshold", "default": "15", "min": "0", "max": "50", "pos": "2" },
      { "type": "int", "name": "Scale", "default": "4", "min": "0", "max": "32", "pos": "3" },
      { "type": "int", "name": "Thickness", "default": "1", "min": "0", "max": "16", "pos": "4" },
      { "type": "bool", "name": "Negative Colors", "default": "0", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Edges Offsets Dots", "lang": "en", "command": "samj_Edges_Offsets_Dots", "command_preview": "samj_Edges_Offsets_Dots", "parameters": [
      { "type": "note", "text": "<span foreground=\"orangered\">Edges Offsets</span>" },
      { "type": "float", "name": "1 - Smoothness", "default": "1.3", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "2 - Threshold", "default": "40", "min": "0", "max": "50", "pos": "2" },
      { "type": "int", "name": "3 - Scale", "default": "18", "min": "4", "max": "32", "pos": "3" },
      { "type": "note", "text": "<span foreground=\"orangered\">Points/Dots</span>" },
      { "type": "int", "name": "4 - Rayon/Radius", "default": "2", "min": "1", "max": "4", "pos": "4" },
      { "type": "int", "name": "5 - Densité/Density", "default": "4", "min": "1", "max": "5", "pos": "5" },
      { "type": "float", "name": "6 - Couleurs", "default": "0", "min": "-0.1", "max": "0.2", "pos": "6" },
      { "type": "note", "text": "<span foreground=\"orangered\">Fond/Background</span>" },
      { "type": "color", "name": "7-8-9-10 Couleur/Color", "default": "0,0,0,0", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2021/01/19." }
      ]
    },
    {
      "name": "Extract Foreground [Interactive]", "lang": "en", "command": "fx_extract_foreground", "command_preview": "gui_no_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Interactively separates foreground from background (Matting). " },
      { "type": "separator" },
      { "type": "float", "name": "Feathering", "default": "0", "min": "0", "max": "4", "pos": "1" },
      { "type": "int", "name": "Dilation", "default": "0", "min": "-32", "max": "32", "pos": "2" },
      { "type": "choice", "name": "Output Mode", "default": "3", "pos": "3", "choices": { "0": "RGBA Image (Full-Transparency / 1 Layer)", "1": "RGBA Image (Updatable / 1 Layer)", "2": "RGB Image + Binary Mask (2 Layers)", "3": "RGBA Foreground + Background (2 Layers)" } },
      { "type": "choice", "name": "View Resolution", "default": "1", "pos": "4", "choices": { "0": "Small (Faster)", "1": "Medium", "2": "High (Slower)", "3": "Very High (Even Slower)" } },
      { "type": "separator" },
      { "type": "note", "text": "Description:\n This filter allows to quickly extract foreground objects from background in opaque RGB images. Click on the Apply or OK buttons below to open the interactive window and start adding foreground and background control points. When you're done, exit the interactive window: your extracted foreground will be transferred back to the host software.\n\n If you are not satisfied with the result, click on Apply once again to modify your control points defined previously. To remove all control points, click on the Reset button above. " },
      { "type": "value", "value": "0,0", "pos": "5" },
      { "type": "value", "value": "-1", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Interactions:\n Use the following actions in the interactive window to build your extraction mask :\n\n - Left mouse button or key F create a new foreground control point (or move an existing one).\n - Right mouse button or key B create a new background control point (or move an existing one).\n - Mouse wheel, or keys CTRL+arrows UP/DOWN zoom view in/out.\n - Key SPACE updates the extraction mask.\n - Key TAB toggles background view modes.\n - Key M toggles marker view modes.\n - Key BACKSPACE deletes the last control point added.\n - Key PAGE UP increases background opacity.\n - Key PAGE DOWN decreases background opacity.\n - Keys CTRL+D increase window size.\n - Keys CTRL+C decrease window size.\n - Keys CTRL+R reset window size.\n - Keys ESC, Q or RETURN exit the interactive window. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2014/09/29." }
      ]
    },
    {
      "name": "Gradient Norm", "lang": "en", "command": "fx_gradient_norm", "command_preview": "fx_gradient_norm", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Computes the magnitude of the image gradient. " },
      { "type": "separator" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "Linearity", "default": "0.5", "min": "0", "max": "1.5", "pos": "2" },
      { "type": "float", "name": "Min Threshold", "default": "0", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Max Threshold", "default": "100", "min": "0", "max": "100", "pos": "4" },
      { "type": "bool", "name": "Negative Colors", "default": "0", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Gradient Norm [JR's Mod]", "lang": "en", "command": "fx_jr_gradient_norm", "command_preview": "fx_jr_gradient_norm_preview", "parameters": [
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "Contrast", "default": "0.45", "min": "0", "max": "1.5", "pos": "2" },
      { "type": "float", "name": "Min Threshold", "default": "40", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Max Threshold", "default": "60", "min": "0", "max": "100", "pos": "4" },
      { "type": "bool", "name": "Negative", "default": "0", "pos": "5" },
      { "type": "choice", "name": "Include Orientation", "default": "0", "pos": "6", "choices": { "0": "Off", "1": "On", "2": "On (extrapolate if negative)" } },
      { "type": "float", "name": "Scale X", "default": "1", "min": "0", "max": "5", "pos": "7" },
      { "type": "float", "name": "Scale Y", "default": "1", "min": "0", "max": "5", "pos": "8" },
      { "type": "choice", "name": "Interpolation", "default": "2", "pos": "9", "choices": { "0": "Nearest", "1": "Average", "2": "Bilinear", "3": "Bicubic" } },
      { "type": "bool", "name": "Alpha", "default": "0", "pos": "10" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "11", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "Author: <a href=\"http://ow.ly/wpsV30fzhdI\">David Tschumperlé</a>.      Latest update: 2010/29/12." }
      ]
    },
    {
      "name": "Gradient RGB", "lang": "en", "command": "fx_gradient2rgb", "command_preview": "fx_gradient2rgb", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Visualizes the gradient vectors as RGB colors. " },
      { "type": "separator" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "Min Threshold", "default": "0", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Max Threshold", "default": "100", "min": "0", "max": "100", "pos": "3" },
      { "type": "bool", "name": "Orientation Only", "default": "0", "pos": "4" },
      { "type": "bool", "name": "Negative Colors", "default": "0", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Isophotes", "lang": "en", "command": "fx_isophotes", "command_preview": "fx_isophotes", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Draws lines connecting points of equal brightness. " },
      { "type": "separator" },
      { "type": "int", "name": "Levels", "default": "8", "min": "1", "max": "256", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "4", "min": "0", "max": "10", "pos": "2" },
      { "type": "choice", "name": "Filling", "default": "1", "pos": "3", "choices": { "0": "Transparent", "1": "Colors" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Laplacian", "lang": "en", "command": "fx_laplacian", "command_preview": "fx_laplacian", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Computes the Laplacian of the image (second derivative). " },
      { "type": "separator" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "Min Threshold (%)", "default": "0", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Max Threshold (%)", "default": "100", "min": "0", "max": "100", "pos": "3" },
      { "type": "bool", "name": "Absolute Value", "default": "0", "pos": "4" },
      { "type": "bool", "name": "Negative Colors", "default": "0", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Local Orientation", "lang": "en", "command": "fx_local_orientation", "command_preview": "fx_local_orientation", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Visualizes the local orientation of image structures. " },
      { "type": "separator" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "5", "pos": "1" },
      { "type": "float", "name": "Min Threshold", "default": "0", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Max Threshold", "default": "100", "min": "0", "max": "100", "pos": "3" },
      { "type": "bool", "name": "Negative Colors", "default": "0", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "5", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Morphological Filter", "lang": "en", "command": "fx_morphological", "command_preview": "fx_morphological_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Applies morphological operations (erosion, dilation, etc.). " },
      { "type": "separator" },
      { "type": "choice", "name": "Action", "default": "0", "pos": "1", "choices": { "0": "Erosion", "1": "Dilation", "2": "Opening", "3": "Closing", "4": "Original - Erosion", "5": "Dilation - Original", "6": "Original - Opening", "7": "Closing - Original", "8": "Original - (Opening + Closing)/2", "9": "Closing - Opening" } },
      { "type": "choice", "name": "Kernel", "default": "0", "pos": "2", "choices": { "0": "Square", "1": "Octagonal", "2": "Circular", "3": "Custom" } },
      { "type": "int", "name": "Size", "default": "5", "min": "2", "max": "60", "pos": "3" },
      { "type": "note", "text": "Parameter Size is inactive for Custom kernel." },
      { "type": "text", "name": "Custom Kernel", "default": "1", "pos": "4" },
      { "type": "bool", "name": "Negative", "default": "0", "pos": "5" },
      { "type": "bool", "name": "Process Transparency", "default": "0", "pos": "6" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "7", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "choice", "name": "Value Action", "default": "0", "pos": "8", "choices": { "0": "None", "1": "Cut", "2": "Stretch" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "9", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "10", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/06/22." }
      ]
    },
    {
      "name": "Quelques Isophotes", "lang": "en", "command": "samj_Quelques_Isophotes", "command_preview": "samj_Quelques_Isophotes ", "parameters": [
      { "type": "int", "name": "Épaisseur", "default": "10", "min": "1", "max": "32", "pos": "1" },
      { "type": "int", "name": "Précision", "default": "10", "min": "1", "max": "32", "pos": "2" },
      { "type": "float", "name": "Coeff précision", "default": "1", "min": "0.1", "max": "8", "pos": "3" },
      { "type": "float", "name": "Coeff Flou", "default": "0.02", "min": "0", "max": "1", "pos": "4" },
      { "type": "int", "name": "Isophotes", "default": "8", "min": "2", "max": "32", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/11/23." }
      ]
    },
    {
      "name": "Quelques Isophotes B", "lang": "en", "command": "samj_Quelques_Isophotes_B", "command_preview": "samj_Quelques_Isophotes_B ", "parameters": [
      { "type": "int", "name": "Nb Décomposition Couleurs", "default": "16", "min": "2", "max": "32", "pos": "1" },
      { "type": "float", "name": "Variation Couleurs %", "default": "100", "min": "25", "max": "100", "pos": "2" },
      { "type": "choice", "name": "Type Variation Couleurs", "default": "0", "pos": "3", "choices": { "0": "Min", "1": "Max", "2": "Min Max" } },
      { "type": "int", "name": "Dilate", "default": "0", "min": "0", "max": "8", "pos": "4" },
      { "type": "int", "name": "Isophotes", "default": "4", "min": "2", "max": "16", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2017/01/14." }
      ]
    },
    {
      "name": "Quelques Isophotes C", "lang": "en", "command": "samj_Quelques_Isophotes_C", "command_preview": "samj_Quelques_Isophotes_C", "parameters": [
      { "type": "link", "name": "https://samjcreations.blogspot.com/2020/10/samuser-avec-gmic-gimp-filtre-quelques.html", "url": "https://samjcreations.blogspot.com/2020/10/samuser-avec-gmic-gimp-filtre-quelques.html", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Contours</span>" },
      { "type": "float", "name": "Flou/Blur", "default": "0", "min": "0", "max": "20", "pos": "1" },
      { "type": "int", "name": "Normalize Min", "default": "0", "min": "0", "max": "255", "pos": "2" },
      { "type": "int", "name": "Normalize Max", "default": "160", "min": "0", "max": "255", "pos": "3" },
      { "type": "int", "name": "Cut Min", "default": "0", "min": "0", "max": "255", "pos": "4" },
      { "type": "int", "name": "Cut Max", "default": "80", "min": "0", "max": "255", "pos": "5" },
      { "type": "int", "name": "Isophotes", "default": "6", "min": "2", "max": "64", "pos": "6" },
      { "type": "int", "name": "Épaisseur/thickness", "default": "4", "min": "1", "max": "64", "pos": "7" },
      { "type": "int", "name": "Decalage X", "default": "1", "min": "-20", "max": "+20", "pos": "8" },
      { "type": "int", "name": "Decalage Y", "default": "1", "min": "-20", "max": "+20", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Wind</span>" },
      { "type": "bool", "name": "Wind", "default": "0", "pos": "10" },
      { "type": "int", "name": "Amplitude", "default": "20", "min": "1", "max": "100", "pos": "11" },
      { "type": "float", "name": "Angle", "default": "45", "min": "0", "max": "360", "pos": "12" },
      { "type": "float", "name": "Attenuation", "default": "0.7", "min": "0", "max": "1", "pos": "13" },
      { "type": "int", "name": "Threshold", "default": "20", "min": "1", "max": "50", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/28." }
      ]
    },
    {
      "name": "samj_shapeprevalent_contours", "lang": "en", "command": "samj_shapeprevalent_contours", "command_preview": "samj_shapeprevalent_contours_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Fond/Background" },
      { "type": "float", "name": "1 - Flou/Blur", "default": "4", "min": "0", "max": "8", "pos": "1" },
      { "type": "int", "name": "2 - Sharpen", "default": "0", "min": "0", "max": "4000", "pos": "2" },
      { "type": "int", "name": "3 - Smooth", "default": "200", "min": "0", "max": "400", "pos": "3" },
      { "type": "int", "name": "4 - Quantize", "default": "32", "min": "8", "max": "128", "pos": "4" },
      { "type": "int", "name": "5 - Dilate", "default": "8", "min": "0", "max": "32", "pos": "5" },
      { "type": "int", "name": "6 - Erode", "default": "4", "min": "0", "max": "32", "pos": "6" },
      { "type": "int", "name": "7 - Surface/Area", "default": "50", "min": "2", "max": "100", "pos": "7" },
      { "type": "int", "name": "8 - Repeat", "default": "1", "min": "1", "max": "10", "pos": "8" },
      { "type": "float", "name": "9 - Couleurs/Colors", "default": "1", "min": "0.5", "max": "2", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Contours" },
      { "type": "int", "name": "10 - Ligne/Thickness", "default": "2", "min": "1", "max": "16", "pos": "10" },
      { "type": "bool", "name": "11 - Antialiasing", "default": "1", "pos": "11" },
      { "type": "bool", "name": "12 - Seulement/Only Contours", "default": "0", "pos": "12" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "13", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2023/04/08." }
      ]
    },
    {
      "name": "Scintillements Colores Contours", "lang": "en", "command": "samj_Scintillements_Colores_Contours", "command_preview": "samj_Scintillements_Colores_Contours", "parameters": [
      { "type": "note", "text": "samj_Scintillements_Colores_Contours" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Limites via Isophote</span>" },
      { "type": "int", "name": "Flou", "default": "0", "min": "0", "max": "10", "pos": "1" },
      { "type": "int", "name": "Isophotes", "default": "8", "min": "6", "max": "16", "pos": "2" },
      { "type": "int", "name": "Dilate", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Scintillement</span>" },
      { "type": "int", "name": "Résolution L", "default": "8", "min": "1", "max": "32", "pos": "4" },
      { "type": "int", "name": "Résolution H", "default": "8", "min": "1", "max": "32", "pos": "5" },
      { "type": "float", "name": "Dimension Variation", "default": "1", "min": "0.3", "max": "3", "pos": "6" },
      { "type": "int", "name": "Variation Couleur", "default": "768", "min": "1", "max": "768", "pos": "7" },
      { "type": "int", "name": "Scintillement", "default": "12", "min": "3", "max": "24", "pos": "8" },
      { "type": "float", "name": "Angle Décalage", "default": "0", "min": "0", "max": "120", "pos": "9" },
      { "type": "int", "name": "Variation Aléatoire", "default": "0", "min": "0", "max": "100", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Flou</span>" },
      { "type": "float", "name": "Flou / Blur Contours", "default": "0", "min": "0", "max": "5", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Overlay</span>" },
      { "type": "bool", "name": "Overlay", "default": "0", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Fond</span>" },
      { "type": "color", "name": "Couleur Fond / Background Color", "default": "0,0,0,255", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/02/04." }
      ]
    },
    {
      "name": "Segmentation", "lang": "en", "command": "fx_segment_watershed", "command_preview": "fx_segment_watershed", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Segments the image using the Watershed algorithm. " },
      { "type": "separator" },
      { "type": "float", "name": "Edge Threshold", "default": "2", "min": "0", "max": "15", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "1", "min": "0", "max": "5", "pos": "2" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "3", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "choice", "name": "Value Action", "default": "0", "pos": "4", "choices": { "0": "None", "1": "Cut", "2": "Normalize" }, "visibility": "0" },
      { "type": "separator", "visibility": "0" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Skeletation", "lang": "en", "command": "samj_Skeletation", "command_preview": "samj_Skeletation", "parameters": [
      { "type": "note", "text": "samj_Skeletation" },
      { "type": "note", "text": "<span foreground=\"orangered\">Skeleton</span>" },
      { "type": "int", "name": "Skeletation", "default": "2", "min": "2", "max": "10", "pos": "1", "visibility": "0" },
      { "type": "int", "name": "Smoothness A %", "default": "100", "min": "10", "max": "100", "pos": "2", "visibility": "0" },
      { "type": "int", "name": "Smoothness B %", "default": "100", "min": "10", "max": "100", "pos": "3", "visibility": "0" },
      { "type": "note", "text": "<span foreground=\"orangered\">Blend</span>", "visibility": "0" },
      { "type": "bool", "name": "Blend", "default": "0", "pos": "4", "visibility": "0" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "5", "choices": { "0": "Add", "1": "Alpha", "2": "And", "3": "Average", "4": "Blue", "5": "Burn", "6": "Darken", "7": "Difference", "8": "Divide", "9": "Dodge", "10": "Edges", "11": "Exclusion", "12": "Freeze", "13": "Grain extract", "14": "Grain merge", "15": "Green", "16": "Hard light", "17": "Hard mix", "18": "Hue", "19": "Interpolation", "20": "Lighten", "21": "Lightness", "22": "Linear burn", "23": "Linear light", "24": "Luminance", "25": "Multiply", "26": "Negation", "27": "Or", "28": "Overlay", "29": "Pin light", "30": "Red", "31": "Reflect", "32": "Saturation", "33": "Shape Average", "34": "Shape Average0", "35": "Soft burn", "36": "Soft dodge", "37": "Soft light", "38": "Screen", "39": "Stamp", "40": "Subtract", "41": "Value", "42": "Vivid light", "43": "Xor" } },
      { "type": "float", "name": "Opacité / Opacity", "default": "1", "min": "0", "max": "1", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/01/20." }
      ]
    },
    {
      "name": "Skeleton", "lang": "en", "command": "fx_skeleton", "command_preview": "fx_skeleton", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Computes the morphological skeleton of shapes. " },
      { "type": "separator" },
      { "type": "choice", "name": "Method", "default": "0", "pos": "1", "choices": { "0": "Distance (Fast)", "1": "Thinning (Slow)" } },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2011/07/04." }
      ]
    },
    {
      "name": "Super-Pixels", "lang": "en", "command": "fx_superpixels", "command_preview": "fx_superpixels", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Groups pixels into perceptually meaningful regions (superpixels). " },
      { "type": "separator" },
      { "type": "int", "name": "Size", "default": "16", "min": "4", "max": "64", "pos": "1" },
      { "type": "float", "name": "Regularity", "default": "10", "min": "0", "max": "128", "pos": "2" },
      { "type": "int", "name": "Iterations", "default": "5", "min": "1", "max": "16", "pos": "3" },
      { "type": "choice", "name": "Colors", "default": "1", "pos": "4", "choices": { "0": "Random", "1": "Average" } },
      { "type": "float", "name": "Border Opacity", "default": "1", "min": "0", "max": "1", "pos": "5" },
      { "type": "int", "name": "Border Thickness (px)", "default": "1", "min": "1", "max": "16", "pos": "6" },
      { "type": "color", "name": "Border Color", "default": "0,0,0,255", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2017/11/16." }
      ]
    },
    {
      "name": "Test Mauvais Contours", "lang": "en", "command": "samj_Test_Mauvais_Contours", "command_preview": "samj_Test_Mauvais_Contours", "parameters": [
      { "type": "note", "text": "samj_Test_Mauvais_Contours" },
      { "type": "float", "name": "Spread -  Watershed +", "default": "0", "min": "-30", "max": "30", "pos": "1" },
      { "type": "int", "name": "Déformation A", "default": "0", "min": "0", "max": "20", "pos": "2" },
      { "type": "int", "name": "Déformation B", "default": "0", "min": "0", "max": "20", "pos": "3" },
      { "type": "int", "name": "Itérations", "default": "2", "min": "1", "max": "10", "pos": "4" },
      { "type": "float", "name": "Pow", "default": "1", "min": "0.1", "max": "3", "pos": "5" },
      { "type": "int", "name": "Na", "default": "0", "min": "0", "max": "255", "pos": "6" },
      { "type": "int", "name": "Nb", "default": "255", "min": "0", "max": "255", "pos": "7" },
      { "type": "int", "name": "Ca", "default": "0", "min": "0", "max": "255", "pos": "8" },
      { "type": "int", "name": "Cb", "default": "255", "min": "0", "max": "255", "pos": "9" },
      { "type": "bool", "name": "Negate", "default": "0", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Blend</span>" },
      { "type": "bool", "name": "Blend", "default": "0", "pos": "11" },
      { "type": "choice", "name": "Mode", "default": "3", "pos": "12", "choices": { "0": "Add", "1": "Alpha", "2": "And", "3": "Average", "4": "Blue", "5": "Burn", "6": "Darken", "7": "Difference", "8": "Divide", "9": "Dodge", "10": "Edges", "11": "Exclusion", "12": "Freeze", "13": "Grain extract", "14": "Grain merge", "15": "Green", "16": "Hard light", "17": "Hard mix", "18": "Hue", "19": "Interpolation", "20": "Lighten", "21": "Lightness", "22": "Linear burn", "23": "Linear light", "24": "Luminance", "25": "Multiply", "26": "Negation", "27": "Or", "28": "Overlay", "29": "Pin light", "30": "Red", "31": "Reflect", "32": "Saturation", "33": "Shape area max", "34": "Shape area max0", "35": "Shape area min", "36": "Shape area min0", "37": "Shape average", "38": "Shape average0", "39": "Shape min", "40": "Shape min0", "41": "Shape max", "42": "Shape max0", "43": "Soft burn", "44": "Soft dodge", "45": "Soft light", "46": "Screen", "47": "Stamp", "48": "Subtract", "49": "Value", "50": "Vivid light", "51": "Xor" } },
      { "type": "bool", "name": "Reverse", "default": "1", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Update : 2016/12/30." }
      ]
    },
    {
      "name": "Thin Edges", "lang": "en", "command": "fx_thin_edges", "command_preview": "fx_thin_edges", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Thins detected edges to single-pixel lines. " },
      { "type": "separator" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "Threshold", "default": "15", "min": "0", "max": "50", "pos": "2" },
      { "type": "bool", "name": "Negative Colors", "default": "0", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    }
    ]
  },
  {
    "name": "Corvo", "filters": [
    {
      "name": "Corvo's Painting_5", "lang": "en", "command": "fx_corvo_painting_5", "command_preview": "fx_corvo_painting_5", "parameters": [
      { "type": "note", "text": "Polygonize settings" },
      { "type": "int", "name": "Amplitude", "default": "35", "min": "0", "max": "2000", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "10", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Minimal Area", "default": "10", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Alpha Polygonize", "default": "0.5", "min": "0", "max": "1", "pos": "4" },
      { "type": "separator" },
      { "type": "float", "name": "Texture", "default": "50", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "Plasma", "default": "0.3", "min": "0", "max": "1", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Smooth settings" },
      { "type": "float", "name": "Amplitude", "default": "50", "min": "0", "max": "1000", "pos": "7" },
      { "type": "float", "name": "Gradient Smoothness", "default": "2", "min": "0", "max": "10", "pos": "8" },
      { "type": "float", "name": "Tensor Smoothness", "default": "5", "min": "0", "max": "10", "pos": "9" },
      { "type": "float", "name": "Alpha Filter", "default": "1", "min": "0", "max": "1", "pos": "10" }
      ]
    }
    ]
  },
  {
    "name": "Curves [Lab]", "filters": [
    {
      "name": "A-Color", "lang": "en", "command": "fx_apply_Labcurve", "command_preview": "fx_apply_acurve_preview", "parameters": [
      { "type": "int", "name": "Starting Y", "default": "0", "min": "0", "max": "255", "pos": "1" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(1)", "default": "-1", "min": "-1", "max": "255", "pos": "2" },
      { "type": "int", "name": "Y-Coord(1)", "default": "128", "min": "0", "max": "255", "pos": "3" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(2)", "default": "-1", "min": "-1", "max": "255", "pos": "4" },
      { "type": "int", "name": "Y-Coord(2)", "default": "128", "min": "0", "max": "255", "pos": "5" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(3)", "default": "-1", "min": "-1", "max": "255", "pos": "6" },
      { "type": "int", "name": "Y-Coord(3)", "default": "128", "min": "0", "max": "255", "pos": "7" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(4)", "default": "-1", "min": "-1", "max": "255", "pos": "8" },
      { "type": "int", "name": "Y-Coord(4)", "default": "128", "min": "0", "max": "255", "pos": "9" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(5)", "default": "-1", "min": "-1", "max": "255", "pos": "10" },
      { "type": "int", "name": "Y-Coord(5)", "default": "128", "min": "0", "max": "255", "pos": "11" },
      { "type": "separator" },
      { "type": "int", "name": "Ending Y", "default": "255", "min": "0", "max": "255", "pos": "12" },
      { "type": "separator" },
      { "type": "float", "name": "Curve Smoothness", "default": "1", "min": "0", "max": "1", "pos": "13" },
      { "type": "float", "name": "Display Histogram", "default": "0", "min": "0", "max": "100", "pos": "14" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "15", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest update: 2010/29/12." }
      ]
    },
    {
      "name": "B-Color", "lang": "en", "command": "fx_apply_Labcurve", "command_preview": "fx_apply_bcurve_preview", "parameters": [
      { "type": "int", "name": "Starting Y", "default": "0", "min": "0", "max": "255", "pos": "1" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(1)", "default": "-1", "min": "-1", "max": "255", "pos": "2" },
      { "type": "int", "name": "Y-Coord(1)", "default": "128", "min": "0", "max": "255", "pos": "3" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(2)", "default": "-1", "min": "-1", "max": "255", "pos": "4" },
      { "type": "int", "name": "Y-Coord(2)", "default": "128", "min": "0", "max": "255", "pos": "5" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(3)", "default": "-1", "min": "-1", "max": "255", "pos": "6" },
      { "type": "int", "name": "Y-Coord(3)", "default": "128", "min": "0", "max": "255", "pos": "7" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(4)", "default": "-1", "min": "-1", "max": "255", "pos": "8" },
      { "type": "int", "name": "Y-Coord(4)", "default": "128", "min": "0", "max": "255", "pos": "9" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(5)", "default": "-1", "min": "-1", "max": "255", "pos": "10" },
      { "type": "int", "name": "Y-Coord(5)", "default": "128", "min": "0", "max": "255", "pos": "11" },
      { "type": "separator" },
      { "type": "int", "name": "Ending Y", "default": "255", "min": "0", "max": "255", "pos": "12" },
      { "type": "separator" },
      { "type": "float", "name": "Curve Smoothness", "default": "1", "min": "0", "max": "1", "pos": "13" },
      { "type": "float", "name": "Display Histogram", "default": "0", "min": "0", "max": "100", "pos": "14" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "15", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest update: 2010/29/12." }
      ]
    },
    {
      "name": "Lightness", "lang": "en", "command": "fx_apply_Labcurve", "command_preview": "fx_apply_Lcurve_preview", "parameters": [
      { "type": "int", "name": "Starting Y", "default": "0", "min": "0", "max": "255", "pos": "1" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(1)", "default": "-1", "min": "-1", "max": "255", "pos": "2" },
      { "type": "int", "name": "Y-Coord(1)", "default": "128", "min": "0", "max": "255", "pos": "3" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(2)", "default": "-1", "min": "-1", "max": "255", "pos": "4" },
      { "type": "int", "name": "Y-Coord(2)", "default": "128", "min": "0", "max": "255", "pos": "5" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(3)", "default": "-1", "min": "-1", "max": "255", "pos": "6" },
      { "type": "int", "name": "Y-Coord(3)", "default": "128", "min": "0", "max": "255", "pos": "7" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(4)", "default": "-1", "min": "-1", "max": "255", "pos": "8" },
      { "type": "int", "name": "Y-Coord(4)", "default": "128", "min": "0", "max": "255", "pos": "9" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(5)", "default": "-1", "min": "-1", "max": "255", "pos": "10" },
      { "type": "int", "name": "Y-Coord(5)", "default": "128", "min": "0", "max": "255", "pos": "11" },
      { "type": "separator" },
      { "type": "int", "name": "Ending Y", "default": "255", "min": "0", "max": "255", "pos": "12" },
      { "type": "separator" },
      { "type": "float", "name": "Curve Smoothness", "default": "1", "min": "0", "max": "1", "pos": "13" },
      { "type": "float", "name": "Display Histogram", "default": "0", "min": "0", "max": "100", "pos": "14" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "15", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest update: 2010/29/12." }
      ]
    }
    ]
  },
  {
    "name": "Curves [RGB]", "filters": [
    {
      "name": "Blue", "lang": "en", "command": "fx_apply_RGBcurve", "command_preview": "fx_apply_Bcurve_preview", "parameters": [
      { "type": "int", "name": "Starting Y", "default": "0", "min": "0", "max": "255", "pos": "1" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(1)", "default": "-1", "min": "-1", "max": "255", "pos": "2" },
      { "type": "int", "name": "Y-Coord(1)", "default": "128", "min": "0", "max": "255", "pos": "3" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(2)", "default": "-1", "min": "-1", "max": "255", "pos": "4" },
      { "type": "int", "name": "Y-Coord(2)", "default": "128", "min": "0", "max": "255", "pos": "5" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(3)", "default": "-1", "min": "-1", "max": "255", "pos": "6" },
      { "type": "int", "name": "Y-Coord(3)", "default": "128", "min": "0", "max": "255", "pos": "7" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(4)", "default": "-1", "min": "-1", "max": "255", "pos": "8" },
      { "type": "int", "name": "Y-Coord(4)", "default": "128", "min": "0", "max": "255", "pos": "9" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(5)", "default": "-1", "min": "-1", "max": "255", "pos": "10" },
      { "type": "int", "name": "Y-Coord(5)", "default": "128", "min": "0", "max": "255", "pos": "11" },
      { "type": "separator" },
      { "type": "int", "name": "Ending Y", "default": "255", "min": "0", "max": "255", "pos": "12" },
      { "type": "separator" },
      { "type": "float", "name": "Curve Smoothness", "default": "1", "min": "0", "max": "1", "pos": "13" },
      { "type": "float", "name": "Display Histogram", "default": "0", "min": "0", "max": "100", "pos": "14" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "15", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest update: 2010/29/12." }
      ]
    },
    {
      "name": "Green", "lang": "en", "command": "fx_apply_RGBcurve", "command_preview": "fx_apply_Gcurve_preview", "parameters": [
      { "type": "int", "name": "Starting Y", "default": "0", "min": "0", "max": "255", "pos": "1" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(1)", "default": "-1", "min": "-1", "max": "255", "pos": "2" },
      { "type": "int", "name": "Y-Coord(1)", "default": "128", "min": "0", "max": "255", "pos": "3" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(2)", "default": "-1", "min": "-1", "max": "255", "pos": "4" },
      { "type": "int", "name": "Y-Coord(2)", "default": "128", "min": "0", "max": "255", "pos": "5" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(3)", "default": "-1", "min": "-1", "max": "255", "pos": "6" },
      { "type": "int", "name": "Y-Coord(3)", "default": "128", "min": "0", "max": "255", "pos": "7" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(4)", "default": "-1", "min": "-1", "max": "255", "pos": "8" },
      { "type": "int", "name": "Y-Coord(4)", "default": "128", "min": "0", "max": "255", "pos": "9" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(5)", "default": "-1", "min": "-1", "max": "255", "pos": "10" },
      { "type": "int", "name": "Y-Coord(5)", "default": "128", "min": "0", "max": "255", "pos": "11" },
      { "type": "separator" },
      { "type": "int", "name": "Ending Y", "default": "255", "min": "0", "max": "255", "pos": "12" },
      { "type": "separator" },
      { "type": "float", "name": "Curve Smoothness", "default": "1", "min": "0", "max": "1", "pos": "13" },
      { "type": "float", "name": "Display Histogram", "default": "0", "min": "0", "max": "100", "pos": "14" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "15", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest update: 2010/29/12." }
      ]
    },
    {
      "name": "Red", "lang": "en", "command": "fx_apply_RGBcurve", "command_preview": "fx_apply_Rcurve_preview", "parameters": [
      { "type": "int", "name": "Starting Y", "default": "0", "min": "0", "max": "255", "pos": "1" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(1)", "default": "-1", "min": "-1", "max": "255", "pos": "2" },
      { "type": "int", "name": "Y-Coord(1)", "default": "128", "min": "0", "max": "255", "pos": "3" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(2)", "default": "-1", "min": "-1", "max": "255", "pos": "4" },
      { "type": "int", "name": "Y-Coord(2)", "default": "128", "min": "0", "max": "255", "pos": "5" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(3)", "default": "-1", "min": "-1", "max": "255", "pos": "6" },
      { "type": "int", "name": "Y-Coord(3)", "default": "128", "min": "0", "max": "255", "pos": "7" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(4)", "default": "-1", "min": "-1", "max": "255", "pos": "8" },
      { "type": "int", "name": "Y-Coord(4)", "default": "128", "min": "0", "max": "255", "pos": "9" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(5)", "default": "-1", "min": "-1", "max": "255", "pos": "10" },
      { "type": "int", "name": "Y-Coord(5)", "default": "128", "min": "0", "max": "255", "pos": "11" },
      { "type": "separator" },
      { "type": "int", "name": "Ending Y", "default": "255", "min": "0", "max": "255", "pos": "12" },
      { "type": "separator" },
      { "type": "float", "name": "Curve Smoothness", "default": "1", "min": "0", "max": "1", "pos": "13" },
      { "type": "float", "name": "Display Histogram", "default": "0", "min": "0", "max": "100", "pos": "14" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "15", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest update: 2010/29/12." }
      ]
    }
    ]
  },
  {
    "name": "Curves [YCbCr]", "filters": [
    {
      "name": "Blue Chrominance", "lang": "en", "command": "fx_apply_YCbCrcurve", "command_preview": "fx_apply_Cbcurve_preview", "parameters": [
      { "type": "int", "name": "Starting Y", "default": "0", "min": "0", "max": "255", "pos": "1" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(1)", "default": "-1", "min": "-1", "max": "255", "pos": "2" },
      { "type": "int", "name": "Y-Coord(1)", "default": "128", "min": "0", "max": "255", "pos": "3" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(2)", "default": "-1", "min": "-1", "max": "255", "pos": "4" },
      { "type": "int", "name": "Y-Coord(2)", "default": "128", "min": "0", "max": "255", "pos": "5" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(3)", "default": "-1", "min": "-1", "max": "255", "pos": "6" },
      { "type": "int", "name": "Y-Coord(3)", "default": "128", "min": "0", "max": "255", "pos": "7" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(4)", "default": "-1", "min": "-1", "max": "255", "pos": "8" },
      { "type": "int", "name": "Y-Coord(4)", "default": "128", "min": "0", "max": "255", "pos": "9" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(5)", "default": "-1", "min": "-1", "max": "255", "pos": "10" },
      { "type": "int", "name": "Y-Coord(5)", "default": "128", "min": "0", "max": "255", "pos": "11" },
      { "type": "separator" },
      { "type": "int", "name": "Ending Y", "default": "255", "min": "0", "max": "255", "pos": "12" },
      { "type": "separator" },
      { "type": "float", "name": "Curve Smoothness", "default": "1", "min": "0", "max": "1", "pos": "13" },
      { "type": "float", "name": "Display Histogram", "default": "0", "min": "0", "max": "100", "pos": "14" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "15", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest update: 2010/29/12." }
      ]
    },
    {
      "name": "Luminance", "lang": "en", "command": "fx_apply_YCbCrcurve", "command_preview": "fx_apply_Ycurve_preview", "parameters": [
      { "type": "int", "name": "Starting Y", "default": "0", "min": "0", "max": "255", "pos": "1" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(1)", "default": "-1", "min": "-1", "max": "255", "pos": "2" },
      { "type": "int", "name": "Y-Coord(1)", "default": "128", "min": "0", "max": "255", "pos": "3" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(2)", "default": "-1", "min": "-1", "max": "255", "pos": "4" },
      { "type": "int", "name": "Y-Coord(2)", "default": "128", "min": "0", "max": "255", "pos": "5" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(3)", "default": "-1", "min": "-1", "max": "255", "pos": "6" },
      { "type": "int", "name": "Y-Coord(3)", "default": "128", "min": "0", "max": "255", "pos": "7" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(4)", "default": "-1", "min": "-1", "max": "255", "pos": "8" },
      { "type": "int", "name": "Y-Coord(4)", "default": "128", "min": "0", "max": "255", "pos": "9" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(5)", "default": "-1", "min": "-1", "max": "255", "pos": "10" },
      { "type": "int", "name": "Y-Coord(5)", "default": "128", "min": "0", "max": "255", "pos": "11" },
      { "type": "separator" },
      { "type": "int", "name": "Ending Y", "default": "255", "min": "0", "max": "255", "pos": "12" },
      { "type": "separator" },
      { "type": "float", "name": "Curve Smoothness", "default": "1", "min": "0", "max": "1", "pos": "13" },
      { "type": "float", "name": "Display Histogram", "default": "0", "min": "0", "max": "100", "pos": "14" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "15", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest update: 2010/29/12." }
      ]
    },
    {
      "name": "Red Chrominance", "lang": "en", "command": "fx_apply_YCbCrcurve", "command_preview": "fx_apply_Crcurve_preview", "parameters": [
      { "type": "int", "name": "Starting Y", "default": "0", "min": "0", "max": "255", "pos": "1" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(1)", "default": "-1", "min": "-1", "max": "255", "pos": "2" },
      { "type": "int", "name": "Y-Coord(1)", "default": "128", "min": "0", "max": "255", "pos": "3" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(2)", "default": "-1", "min": "-1", "max": "255", "pos": "4" },
      { "type": "int", "name": "Y-Coord(2)", "default": "128", "min": "0", "max": "255", "pos": "5" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(3)", "default": "-1", "min": "-1", "max": "255", "pos": "6" },
      { "type": "int", "name": "Y-Coord(3)", "default": "128", "min": "0", "max": "255", "pos": "7" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(4)", "default": "-1", "min": "-1", "max": "255", "pos": "8" },
      { "type": "int", "name": "Y-Coord(4)", "default": "128", "min": "0", "max": "255", "pos": "9" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(5)", "default": "-1", "min": "-1", "max": "255", "pos": "10" },
      { "type": "int", "name": "Y-Coord(5)", "default": "128", "min": "0", "max": "255", "pos": "11" },
      { "type": "separator" },
      { "type": "int", "name": "Ending Y", "default": "255", "min": "0", "max": "255", "pos": "12" },
      { "type": "separator" },
      { "type": "float", "name": "Curve Smoothness", "default": "1", "min": "0", "max": "1", "pos": "13" },
      { "type": "float", "name": "Display Histogram", "default": "0", "min": "0", "max": "100", "pos": "14" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "15", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest update: 2010/29/12." }
      ]
    }
    ]
  },
  {
    "name": "Deformations", "filters": [
    {
      "name": "Auto-Gnarl", "lang": "en", "command": "fx_auto_gnarl", "command_preview": "fx_auto_gnarl_preview", "parameters": [
      { "type": "note", "text": "Applies random deformations mainly to sharp edges." },
      { "type": "separator" },
      { "type": "note", "text": "Gradient Norm" },
      { "type": "float", "name": "Smoothness", "default": "3", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "Contrast", "default": "0.45", "min": "0", "max": "1.5", "pos": "2" },
      { "type": "float", "name": "Min Threshold", "default": "40", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Max Threshold", "default": "60", "min": "0", "max": "100", "pos": "4" },
      { "type": "bool", "name": "Negative", "default": "0", "pos": "5" },
      { "type": "float", "name": "Scale X", "default": "1", "min": "0", "max": "5", "pos": "6" },
      { "type": "float", "name": "Scale Y", "default": "1", "min": "0", "max": "5", "pos": "7" },
      { "type": "choice", "name": "Interpolation", "default": "2", "pos": "8", "choices": { "0": "Nearest", "1": "Average", "2": "Bilinear", "3": "Bicubic" } },
      { "type": "separator" },
      { "type": "note", "text": "Noise Local Normalisation" },
      { "type": "float", "name": "Amplitude", "default": "4", "min": "0", "max": "60", "pos": "9" },
      { "type": "int", "name": "Radius", "default": "6", "min": "1", "max": "64", "pos": "10" },
      { "type": "float", "name": "Neighborhood Smoothness", "default": "5", "min": "0", "max": "40", "pos": "11" },
      { "type": "float", "name": "Average Smoothness", "default": "20", "min": "0", "max": "40", "pos": "12" },
      { "type": "bool", "name": "Constrain Values", "default": "1", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "Warping" },
      { "type": "float", "name": "Smoothness", "default": "2.5", "min": "0", "max": "30", "pos": "14" },
      { "type": "float", "name": "Rounding", "default": "0.5", "min": "0", "max": "1", "pos": "15" },
      { "type": "float", "name": "Amplitude", "default": "2", "min": "0", "max": "5", "pos": "16" },
      { "type": "choice", "name": "Interpolation", "default": "2", "pos": "17", "choices": { "0": "Nearest", "1": "Bilinear", "2": "Bicubic" } },
      { "type": "choice", "name": "Boundary", "default": "3", "pos": "18", "choices": { "0": "None", "1": "Nearest", "2": "Periodic", "3": "Mirror" } }
      ]
    },
    {
      "name": "Beigne Donut", "lang": "en", "command": "samj_Beigne", "command_preview": "samj_Beigne", "parameters": [
      { "type": "link", "name": "Documentation", "url": "https://samjcreations.blogspot.com/2021/01/samuser-avec-gmic-gimp-filtre-beigne.html", "align": "center" },
      { "type": "note", "text": "Bonne Année 2021" },
      { "type": "float", "name": "1 - Trou De Beigne/Donut Hole", "default": "100", "min": "0", "max": "300", "pos": "1" },
      { "type": "choice", "name": "2 - Effet/Effect", "default": "0", "pos": "2", "choices": { "0": "Circulaire/Circular", "1": "Carré/Square" } },
      { "type": "choice", "name": "3 - Rotation Angle", "default": "0", "pos": "3", "choices": { "0": "0", "1": "90", "2": "-90", "3": "180" } },
      { "type": "color", "name": "4-5-6-7 Fond/Background", "default": "0,0,0,0", "pos": "4" },
      { "type": "note", "text": "<span foreground=\"orangered\">Contours</span>" },
      { "type": "bool", "name": "8 - Contours", "default": "0", "pos": "8" },
      { "type": "int", "name": "9 - X", "default": "20", "min": "0", "max": "300", "pos": "9" },
      { "type": "int", "name": "10 - Y", "default": "20", "min": "0", "max": "300", "pos": "10" },
      { "type": "color", "name": "11-12-13-14 Couleur/Color", "default": "255,255,255,255", "pos": "11" },
      { "type": "note", "text": "<span foreground=\"orangered\">Symétrie/Symmetry</span>" },
      { "type": "bool", "name": "15 - Symétrie/Symmetry", "default": "0", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2021/01/01." }
      ]
    },
    {
      "name": "Breaks", "lang": "en", "command": "fx_breaks", "command_preview": "fx_breaks", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Displaces image slices to create a \"broken\" glass effect. " },
      { "type": "separator" },
      { "type": "choice", "name": "Type", "default": "0", "pos": "1", "choices": { "0": "Flat", "1": "Relief" } },
      { "type": "float", "name": "Amplitude", "default": "30", "min": "0", "max": "300", "pos": "2" },
      { "type": "float", "name": "Frequency (%)", "default": "30", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Smoothness", "default": "0.5", "min": "0", "max": "10", "pos": "4" },
      { "type": "choice", "name": "Boundary", "default": "3", "pos": "5", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2021/09/09." }
      ]
    },
    {
      "name": "Buffer Destroyer", "lang": "en", "command": "fx_buffer_destroyer", "command_preview": "fx_buffer_destroyer_preview", "parameters": [
      { "type": "note", "text": "A preset combo of filters which rip images apart through simulated buffer manipulation and warping." },
      { "type": "button", "name": "0. Recompute", "alignment": "0", "pos": "1" },
      { "type": "bool", "name": "1. Alpha", "default": "1", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Buffer Error 1" },
      { "type": "float", "name": "2. Width", "default": "75", "min": "0", "max": "200", "pos": "3" },
      { "type": "float", "name": "3. Height", "default": "40", "min": "0", "max": "200", "pos": "4" },
      { "type": "float", "name": "4. Buffer Selection Start (%)", "default": "0", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "5. Buffer Selection Length (%)", "default": "100", "min": "0", "max": "400", "pos": "6" },
      { "type": "float", "name": "6. Buffer Selection Shift (%)", "default": "0", "min": "0", "max": "100", "pos": "7" },
      { "type": "bool", "name": "7. Repeat Buffer", "default": "1", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Shredder" },
      { "type": "bool", "name": "8. Randomised Start", "default": "1", "pos": "9" },
      { "type": "choice", "name": "9. Channels", "default": "0", "pos": "10", "choices": { "0": "Correlated", "1": "RGB", "2": "sRGB", "3": "CMY", "4": "RYB", "5": "Ohta8", "6": "Ohta", "7": "YES8", "8": "YES", "9": "Kodak 1-8", "10": "Kodak1", "11": "Lab8", "12": "Lab", "13": "Oklab", "14": "LUV", "15": "Jzazbz", "16": "YIQ8", "17": "YIQ", "18": "YUV8", "19": "YUV", "20": "YCbCr", "21": "YCbCrGLIC", "22": "YCbCrJPEG", "23": "YDbDr", "24": "XYZ8", "25": "XYZ", "26": "HSV8", "27": "HSV", "28": "HSL8", "29": "HSL", "30": "HSI8", "31": "HSI", "32": "LCH8", "33": "LCH", "34": "JzCzHz", "35": "HCY" } },
      { "type": "float", "name": "10. Min Gap", "default": "50", "min": "0", "max": "100", "pos": "11" },
      { "type": "float", "name": "11. Max Gap", "default": "100", "min": "0", "max": "100", "pos": "12" },
      { "type": "float", "name": "12. Strength", "default": "0.5", "min": "0", "max": "1", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "Pixel Sort" },
      { "type": "note", "text": "Sorting parameters:" },
      { "type": "choice", "name": "13. Order", "default": "1", "pos": "14", "choices": { "0": "Decreasing", "1": "Increasing" } },
      { "type": "choice", "name": "14. Axis", "default": "0", "pos": "15", "choices": { "0": "X-axis", "1": "Y-axis", "2": "X-axis Then Y-axis", "3": "Y-axis Then X-axis" } },
      { "type": "choice", "name": "15. Sorting Criterion", "default": "3", "pos": "16", "choices": { "0": "Red", "1": "Green", "2": "Blue", "3": "Intensity", "4": "Luminance", "5": "Lightness", "6": "Hue", "7": "Saturation", "8": "Minimum", "9": "Maximum", "10": "Random" } },
      { "type": "note", "text": "Masking parameters:" },
      { "type": "choice", "name": "16. Mask By", "default": "0", "pos": "17", "choices": { "0": "Criterion", "1": "Contours", "2": "Random" } },
      { "type": "float", "name": "17. Lower Mask Threshold (%)", "default": "50", "min": "0", "max": "100", "pos": "18" },
      { "type": "float", "name": "18. Higher Mask Threshold (%)", "default": "100", "min": "0", "max": "100", "pos": "19" },
      { "type": "float", "name": "19. Mask Smoothness (%)", "default": "0", "min": "0", "max": "5", "pos": "20" },
      { "type": "bool", "name": "20. Invert Mask", "default": "0", "pos": "21" },
      { "type": "bool", "name": "21. Preview Mask", "default": "0", "pos": "22" },
      { "type": "separator" },
      { "type": "note", "text": "Shifter" },
      { "type": "note", "text": "Amplitudes are cubed to tame the distortion a little bit." },
      { "type": "choice", "name": "22. Channels", "default": "0", "pos": "23", "choices": { "0": "Correlated", "1": "RGB", "2": "sRGB", "3": "CMY", "4": "RYB", "5": "Ohta8", "6": "Ohta", "7": "YES8", "8": "YES", "9": "Kodak 1-8", "10": "Kodak1", "11": "Lab8", "12": "Lab", "13": "Oklab", "14": "LUV", "15": "Jzazbz", "16": "YIQ8", "17": "YIQ", "18": "YUV8", "19": "YUV", "20": "YCbCr", "21": "YCbCrGLIC", "22": "YCbCrJPEG", "23": "YDbDr", "24": "XYZ8", "25": "XYZ", "26": "HSV8", "27": "HSV", "28": "HSL8", "29": "HSL", "30": "HSI8", "31": "HSI", "32": "LCH8", "33": "LCH", "34": "JzCzHz", "35": "HCY" } },
      { "type": "float", "name": "23. X Amplitude", "default": "2.5", "min": "0", "max": "10", "pos": "24" },
      { "type": "int", "name": "24. X Iterations", "default": "20", "min": "0", "max": "400", "pos": "25" },
      { "type": "float", "name": "25. Y Amplitude", "default": "2.5", "min": "0", "max": "10", "pos": "26" },
      { "type": "int", "name": "26. Y Iterations", "default": "20", "min": "0", "max": "400", "pos": "27" },
      { "type": "float", "name": "27. Matrix Warp Multiplier", "default": "1", "min": "0", "max": "5", "pos": "28" },
      { "type": "choice", "name": "28. Matrix Boundary", "default": "5", "pos": "29", "choices": { "0": "Random", "1": "Random [non-transparent]", "2": "Transparent", "3": "Nearest", "4": "Periodic", "5": "Mirror" } },
      { "type": "choice", "name": "29. Warp Boundary", "default": "5", "pos": "30", "choices": { "0": "Random", "1": "Random [non-transparent]", "2": "Transparent", "3": "Nearest", "4": "Periodic", "5": "Mirror" } },
      { "type": "separator" },
      { "type": "note", "text": "Buffer Error 2" },
      { "type": "bool", "name": "30. Inverse Of BE1", "default": "1", "pos": "31" },
      { "type": "float", "name": "31. Width", "default": "120", "min": "0", "max": "200", "pos": "32" },
      { "type": "float", "name": "32. Height", "default": "80", "min": "0", "max": "200", "pos": "33" },
      { "type": "float", "name": "33. Buffer Selection Start (%)", "default": "0", "min": "0", "max": "100", "pos": "34" },
      { "type": "float", "name": "34. Buffer Selection Length (%)", "default": "100", "min": "0", "max": "100", "pos": "35" },
      { "type": "float", "name": "35. Buffer Selection Shift (%)", "default": "0", "min": "0", "max": "100", "pos": "36" },
      { "type": "bool", "name": "36. Repeat Buffer", "default": "1", "pos": "37" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "38", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "39" }
      ]
    },
    {
      "name": "Buffer Error", "lang": "en", "command": "fx_buffer_error", "command_preview": "fx_buffer_error_preview", "parameters": [
      { "type": "note", "text": "Resizes an image without changing the positions of pixels in a specified selection of a simulated image buffer. Buffer shift scales with the buffer length." },
      { "type": "float", "name": "1. Width", "default": "50", "min": "0", "max": "200", "pos": "1" },
      { "type": "float", "name": "2. Height", "default": "50", "min": "0", "max": "200", "pos": "2" },
      { "type": "float", "name": "3. Buffer Selection Start (%)", "default": "0", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "4. Buffer Selection Length (%)", "default": "100", "min": "0", "max": "400", "pos": "4" },
      { "type": "float", "name": "5. Buffer Selection Shift (%)", "default": "0", "min": "0", "max": "100", "pos": "5" },
      { "type": "bool", "name": "6. Repeat Buffer", "default": "1", "pos": "6" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "7", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "8" }
      ]
    },
    {
      "name": "Cartesian Transform", "lang": "en", "command": "fx_custom_deformation", "command_preview": "fx_custom_deformation", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Applies a deformation based on Cartesian coordinates formulae. " },
      { "type": "separator" },
      { "type": "text", "name": "X-Warping", "default": "(w*a%)*cos(b*y/h)", "pos": "1" },
      { "type": "text", "name": "Y-Warping", "default": "(h*c%)*cos(d*x/w)", "pos": "2" },
      { "type": "bool", "name": "Relative Warping", "default": "1", "pos": "3" },
      { "type": "choice", "name": "Interpolation", "default": "1", "pos": "4", "choices": { "0": "Nearest Neighbor", "1": "Linear" } },
      { "type": "choice", "name": "Boundary", "default": "3", "pos": "5", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "separator" },
      { "type": "note", "text": "Note:The parameters below can be used in the warping formulas:" },
      { "type": "float", "name": "a", "default": "10", "min": "-100", "max": "100", "pos": "6" },
      { "type": "float", "name": "b", "default": "10", "min": "-100", "max": "100", "pos": "7" },
      { "type": "float", "name": "c", "default": "10", "min": "-100", "max": "100", "pos": "8" },
      { "type": "float", "name": "d", "default": "10", "min": "-100", "max": "100", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "This filter allows to define custom mapping functions." },
      { "type": "link", "name": "Check this page for more information", "url": "https://screamingbrainstudios.com/cartesian-transform/", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2023/10/26." }
      ]
    },
    {
      "name": "Cercle Polaire", "lang": "en", "command": "samj_Cercle_Polaire", "command_preview": "samj_Cercle_Polaire", "parameters": [
      { "type": "note", "text": "samj_Cercle_Polaire" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Rendu</span>" },
      { "type": "int", "name": "Répétitions", "default": "1", "min": "1", "max": "4", "pos": "1" },
      { "type": "float", "name": "Rotation", "default": "0", "min": "0", "max": "360", "pos": "2" },
      { "type": "choice", "name": "Type Raccord", "default": "0", "pos": "3", "choices": { "0": "Sans", "1": "A", "2": "B", "3": "A+B", "4": "C" } },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Array [mirrored]</span>" },
      { "type": "int", "name": "Itérations", "default": "1", "min": "1", "max": "4", "pos": "4" },
      { "type": "float", "name": "X-offset (%)", "default": "0", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "Y-offset (%)", "default": "0", "min": "0", "max": "100", "pos": "6" },
      { "type": "choice", "name": "Array mode", "default": "2", "pos": "7", "choices": { "0": "x-axis", "1": "y-axis", "2": "xy-axes", "3": "2xy-axes" } },
      { "type": "choice", "name": "Initialization", "default": "0", "pos": "8", "choices": { "0": "Original", "1": "Mirror X", "2": "Mirror Y", "3": "Rotate 90 deg.", "4": "Rotate 180 deg.", "5": "Rotate 270 deg." } },
      { "type": "bool", "name": "Expand size", "default": "0", "pos": "9" },
      { "type": "int", "name": "Crop (%)", "default": "0", "min": "0", "max": "100", "pos": "10" },
      { "type": "note", "text": "<span foreground=\"orangered\">Polar To Euclidean</span>" },
      { "type": "float", "name": "X-center (%)", "default": "50", "min": "0", "max": "100", "pos": "11" },
      { "type": "float", "name": "Y-center (%)", "default": "50", "min": "0", "max": "100", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Circle Transform", "lang": "en", "command": "fx_circle_transform", "command_preview": "fx_circle_transform_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Warps the image according to a circle shape. " },
      { "type": "separator" },
      { "type": "point", "name": "Center (%)", "position": "50,50", "pos": "1" },
      { "type": "point", "name": "Radius", "position": "75,50", "pos": "3" },
      { "type": "float", "name": "X-Scale", "default": "-2", "min": "-16", "max": "16", "pos": "5" },
      { "type": "float", "name": "Y-Scale", "default": "-2", "min": "-16", "max": "16", "pos": "6" },
      { "type": "choice", "name": "Symmetry", "default": "0", "pos": "7", "choices": { "0": "None", "1": "Inside", "2": "Outside" } },
      { "type": "choice", "name": "Interpolation", "default": "1", "pos": "8", "choices": { "0": "Nearest Neighbor", "1": "Linear" } },
      { "type": "choice", "name": "Boundary", "default": "3", "pos": "9", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "bool", "name": "Preview Reference Circle", "default": "1", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/01/08." }
      ]
    },
    {
      "name": "Conformal Maps", "lang": "en", "command": "fx_conformal_maps", "command_preview": "fx_conformal_maps_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Applies complex conformal mapping deformations. " },
      { "type": "separator" },
      { "type": "choice", "name": "Mapping", "default": "8", "pos": "1", "choices": { "0": "Custom Formula", "1": "z", "2": "(z+1)/(z-1)", "3": "cos(z)", "4": "sin(z)", "5": "tan(z)", "6": "exp(z)", "7": "log(z)", "8": "Dipole: 1/(4*z^2-1)", "9": "Star: -5*(z^3/3-z/4)/2" } },
      { "type": "float", "name": "Exponent (Real)", "default": "1", "min": "-16", "max": "16", "pos": "2" },
      { "type": "float", "name": "Exponent (Imaginary)", "default": "0", "min": "-16", "max": "16", "pos": "3" },
      { "type": "text", "name": "Custom Formula", "default": "1", "pos": "4" },
      { "type": "separator" },
      { "type": "float", "name": "Zoom", "default": "0", "min": "-4", "max": "4", "pos": "5" },
      { "type": "float", "name": "Angle", "default": "0", "min": "-180", "max": "180", "pos": "6" },
      { "type": "float", "name": "Aspect Ratio", "default": "0", "min": "-1", "max": "1", "pos": "7" },
      { "type": "float", "name": "X-Shift", "default": "0", "min": "-5", "max": "5", "pos": "8" },
      { "type": "float", "name": "Y-Shift", "default": "0", "min": "-5", "max": "5", "pos": "9" },
      { "type": "choice", "name": "Boundary", "default": "3", "pos": "10", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "int", "name": "Anti-Aliasing", "default": "0", "min": "0", "max": "3", "pos": "11" },
      { "type": "separator" },
      { "type": "bool", "name": "Specify Different Output Size", "default": "0", "pos": "12" },
      { "type": "text", "name": "Output Width", "default": "1024", "pos": "13" },
      { "type": "text", "name": "Output Height", "default": "1024", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2017/02/15." }
      ]
    },
    {
      "name": "Continuous Droste", "lang": "en", "command": "souphead_droste10", "command_preview": "souphead_droste10_preview", "parameters": [
      { "type": "float", "name": "Inner Radius", "default": "40", "min": "1", "max": "100", "pos": "1" },
      { "type": "float", "name": "Outer Radius", "default": "100", "min": "1", "max": "100", "pos": "2" },
      { "type": "float", "name": "Periodicity", "default": "1", "min": "-6", "max": "6", "pos": "3" },
      { "type": "int", "name": "Strands", "default": "1", "min": "-6", "max": "6", "pos": "4" },
      { "type": "int", "name": "Zoom", "default": "1", "min": "1", "max": "100", "pos": "5" },
      { "type": "int", "name": "Rotate", "default": "0", "min": "-360", "max": "360", "pos": "6" },
      { "type": "int", "name": "X-Shift", "default": "0", "min": "-100", "max": "100", "pos": "7" },
      { "type": "int", "name": "Y-Shift", "default": "0", "min": "-100", "max": "100", "pos": "8" },
      { "type": "int", "name": "Center X-Shift", "default": "0", "min": "-100", "max": "100", "pos": "9" },
      { "type": "int", "name": "Center Y-Shift", "default": "0", "min": "-100", "max": "100", "pos": "10" },
      { "type": "int", "name": "Starting Level", "default": "1", "min": "1", "max": "20", "pos": "11" },
      { "type": "int", "name": "Number of Levels", "default": "10", "min": "1", "max": "20", "pos": "12" },
      { "type": "int", "name": "Level Frequency", "default": "1", "min": "1", "max": "10", "pos": "13" },
      { "type": "separator" },
      { "type": "bool", "name": "Show Both Poles", "default": "0", "pos": "14" },
      { "type": "int", "name": "Pole Rotation", "default": "90", "min": "-180", "max": "180", "pos": "15" },
      { "type": "int", "name": "Pole Long", "default": "0", "min": "-100", "max": "100", "pos": "16" },
      { "type": "int", "name": "Pole Lat", "default": "0", "min": "-100", "max": "100", "pos": "17" },
      { "type": "separator" },
      { "type": "bool", "name": "Tile Poles", "default": "0", "pos": "18" },
      { "type": "bool", "name": "Hyper Droste", "default": "0", "pos": "19" },
      { "type": "int", "name": "Fractal Points", "default": "1", "min": "1", "max": "10", "pos": "20" },
      { "type": "separator" },
      { "type": "bool", "name": "Auto-Set Periodicity", "default": "0", "pos": "21" },
      { "type": "bool", "name": "No Transparency", "default": "0", "pos": "22" },
      { "type": "bool", "name": "External Transparency", "default": "1", "pos": "23" },
      { "type": "bool", "name": "Mirror Effect", "default": "0", "pos": "24" },
      { "type": "bool", "name": "Untwist", "default": "0", "pos": "25" },
      { "type": "bool", "name": "Do Not Flatten Transparency", "default": "0", "pos": "26" },
      { "type": "separator" },
      { "type": "bool", "name": "Show Grid", "default": "0", "pos": "27" },
      { "type": "bool", "name": "Show Frame", "default": "0", "pos": "28" },
      { "type": "separator" },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "29" },
      { "type": "choice", "name": "Edge Behavior X", "default": "0", "pos": "30", "choices": { "0": "Blank", "1": "Wrap", "2": "Reflect", "3": "Rotate" } },
      { "type": "choice", "name": "Edge Behavior Y", "default": "0", "pos": "31", "choices": { "0": "Blank", "1": "Wrap", "2": "Reflect", "3": "Rotate" } },
      { "type": "separator" },
      { "type": "note", "text": "This filter is a conversion of the Mathmap script originally proposed here:" },
      { "type": "link", "name": "Droste effect for Mathmap.", "url": "https://www.flickr.com/groups/88221799@N00/discuss/72157601071820707/", "align": "center" },
      { "type": "note", "text": "Original design by Breic and coding by Josh Sommers." },
      { "type": "separator" },
      { "type": "note", "text": "Author : Souphead.      Latest update : 2016/19/01." }
      ]
    },
    {
      "name": "Crease", "lang": "en", "command": "fx_crease", "command_preview": "fx_crease", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Deforms image with creases. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "30", "min": "0", "max": "300", "pos": "1" },
      { "type": "float", "name": "Frequency (%)", "default": "10", "min": "0", "max": "100", "pos": "2" },
      { "type": "choice", "name": "Boundary", "default": "3", "pos": "3", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2018/01/22." }
      ]
    },
    {
      "name": "Distort [RBF]", "lang": "en", "command": "fx_distort_rbf", "command_preview": "fx_distort_rbf_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Distorts the image using Radial Basis Functions. " },
      { "type": "separator" },
      { "type": "point", "name": "Upper-Left Corner", "position": "10,10", "pos": "1", "visibility": "0" },
      { "type": "point", "name": "Upper-Right Corner", "position": "90,10", "pos": "3", "visibility": "0" },
      { "type": "point", "name": "Lower-Left Corner", "position": "10,90", "pos": "5", "visibility": "0" },
      { "type": "point", "name": "Lower-Right Corner", "position": "90,90", "pos": "7", "visibility": "0" },
      { "type": "int", "name": "Sampling", "default": "3", "min": "2", "max": "8", "pos": "9" },
      { "type": "text", "name": "Radial Function", "default": "r", "pos": "10" },
      { "type": "choice", "name": "Boundary", "default": "0", "pos": "11", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2024/04/20." }
      ]
    },
    {
      "name": "Distort Lens", "lang": "en", "command": "fx_distort_lens", "command_preview": "fx_distort_lens", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Corrects or applies lens distortion (barrel/pincushion). " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "0.1", "min": "-1", "max": "1", "pos": "1" },
      { "type": "float", "name": "Aspect Ratio", "default": "0", "min": "-2", "max": "2", "pos": "2" },
      { "type": "float", "name": "Zoom", "default": "0", "min": "-4", "max": "4", "pos": "3" },
      { "type": "point", "name": "Center (%)", "position": "50,50", "pos": "4" },
      { "type": "choice", "name": "Boundary", "default": "0", "pos": "6", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2017/02/18." }
      ]
    },
    {
      "name": "Drop Water", "lang": "en", "command": "fx_drop_water", "command_preview": "fx_drop_water_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simulates water drops locally distorting the image. " },
      { "type": "separator" },
      { "type": "note", "text": "Shape geometry:" },
      { "type": "choice", "name": "Shapes", "default": "0", "pos": "1", "choices": { "0": "Procedural", "1": "Opaque Regions on Top Layer" } },
      { "type": "float", "name": "Density", "default": "20", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Radius", "default": "2", "min": "0", "max": "5", "pos": "3" },
      { "type": "float", "name": "Variability", "default": "80", "min": "0", "max": "100", "pos": "4" },
      { "type": "int", "name": "Random Seed", "default": "0", "min": "0", "max": "16384", "pos": "5" },
      { "type": "note", "text": "Parameters Density, Radius, Variability and Random seed are used only in Procedural shapes mode." },
      { "type": "separator" },
      { "type": "note", "text": "Light parameters:" },
      { "type": "float", "name": "Refraction", "default": "3", "min": "0", "max": "20", "pos": "6" },
      { "type": "float", "name": "Light Angle", "default": "35", "min": "0", "max": "360", "pos": "7" },
      { "type": "float", "name": "Specular Size", "default": "10", "min": "0", "max": "100", "pos": "8" },
      { "type": "float", "name": "Specular Intensity", "default": "1", "min": "0", "max": "1", "pos": "9" },
      { "type": "float", "name": "Specular Centering", "default": "0.5", "min": "0", "max": "1", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "Shadow parameters:" },
      { "type": "float", "name": "Shadow Size", "default": "0.25", "min": "0", "max": "3", "pos": "11" },
      { "type": "float", "name": "Shadow Intensity", "default": "0.5", "min": "0", "max": "1", "pos": "12" },
      { "type": "float", "name": "Shadow Smoothness", "default": "0.75", "min": "0", "max": "3", "pos": "13" },
      { "type": "float", "name": "Diffuse Shadow", "default": "0.05", "min": "0", "max": "3", "pos": "14" },
      { "type": "separator" },
      { "type": "float", "name": "Smoothness", "default": "0.15", "min": "0", "max": "3", "pos": "15" },
      { "type": "bool", "name": "Output as Separate Layers", "default": "1", "pos": "16" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2015/07/21." }
      ]
    },
    {
      "name": "Ecraser Etirer", "lang": "en", "command": "samj_Ecraser_Etirer", "command_preview": "samj_Ecraser_Etirer_preview", "parameters": [
      { "type": "note", "text": "<span foreground=\"orangered\"><u>samj_Ecraser_Etirer</u></span>" },
      { "type": "int", "name": "Découpage", "default": "12", "min": "2", "max": "32", "pos": "1" },
      { "type": "choice", "name": "Effet", "default": "0", "pos": "2", "choices": { "0": "Ecraser le Bas", "1": "Ecraser le Haut", "2": "Etirer le haut", "3": "Etirer le bas" } },
      { "type": "bool", "name": "Taille Origine", "default": "0", "pos": "3" },
      { "type": "bool", "name": "Pivoter Image Origine 90", "default": "0", "pos": "4" },
      { "type": "float", "name": "Pourcentage Step", "default": "100", "min": "1", "max": "300", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "6", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: samj.      Latest update: 2018/04/25." }
      ]
    },
    {
      "name": "Ecraser Etirer V2", "lang": "en", "command": "samj_Ecraser_Etirer_V2", "command_preview": "samj_Ecraser_Etirer_V2_preview", "parameters": [
      { "type": "note", "text": "<span foreground=\"orangered\"><u>samj_Ecraser_Etirer_V2</u></span>" },
      { "type": "int", "name": "Découpage", "default": "12", "min": "2", "max": "32", "pos": "1" },
      { "type": "choice", "name": "Effet", "default": "0", "pos": "2", "choices": { "0": "A", "1": "B", "2": "C", "3": "D" } },
      { "type": "bool", "name": "Taille Origine", "default": "0", "pos": "3" },
      { "type": "float", "name": "Pourcentage Step", "default": "100", "min": "1", "max": "300", "pos": "4" },
      { "type": "float", "name": "Pourcentage Découpe", "default": "50", "min": "25", "max": "75", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "6", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: samj.      Latest update: 2020/10/24." }
      ]
    },
    {
      "name": "Equirectangular to Nadir-Zenith", "lang": "en", "command": "fx_equirectangular2nadirzenith", "command_preview": "fx_equirectangular2nadirzenith", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Converts 360 panoramas to nadir/zenith views. " },
      { "type": "separator" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "1", "choices": { "0": "to Nadir / Zenith", "1": "to Equirectangular" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2015/12/29." }
      ]
    },
    {
      "name": "Euclidean - Polar", "lang": "en", "command": "fx_euclidean2polar", "command_preview": "fx_euclidean2polar", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Converts between Cartesian and Polar coordinates. " },
      { "type": "separator" },
      { "type": "point", "name": "Center (%)", "position": "50,50", "pos": "1" },
      { "type": "float", "name": "Stretch Factor", "default": "1", "min": "0.1", "max": "10", "pos": "3" },
      { "type": "choice", "name": "Boundary", "default": "1", "pos": "4", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "bool", "name": "Inverse Transform", "default": "0", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Fish-Eye", "lang": "en", "command": "fisheye", "command_preview": "fisheye", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Applies a fish-eye lens effect. " },
      { "type": "separator" },
      { "type": "point", "name": "Center (%)", "position": "50,50", "pos": "1" },
      { "type": "float", "name": "Radius", "default": "70", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Amplitude", "default": "1", "min": "0", "max": "2", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Flower", "lang": "en", "command": "fx_flower", "command_preview": "fx_flower_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Warps the image into a flower-like shape. " },
      { "type": "separator" },
      { "type": "point", "name": "Center (%)", "position": "50,50", "pos": "1" },
      { "type": "point", "name": "Amplitude / Angle", "position": "75,50", "pos": "3" },
      { "type": "int", "name": "Petals", "default": "6", "min": "2", "max": "20", "pos": "5" },
      { "type": "float", "name": "Offset (%)", "default": "0", "min": "0", "max": "100", "pos": "6" },
      { "type": "choice", "name": "Boundary", "default": "3", "pos": "7", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Heightfield Warp", "lang": "en", "command": "fx_heightfield_warp", "command_preview": "fx_heightfield_warp_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Apply a geometric warp by projecting the image onto a 3D heightfield surface. " },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Heighfield Geometry:</span>" },
      { "type": "choice", "name": "Type", "default": "1", "pos": "1", "choices": { "0": "Custom", "1": "Sphere", "2": "Cylinder" } },
      { "type": "text", "name": "Custom Heighfield", "default": "0.25*cos(3*pi*x)*sin(3*pi*y)", "pos": "2" },
      { "type": "float", "name": "Factor (%)", "default": "100", "min": "-500", "max": "500", "pos": "3" },
      { "type": "float", "name": "Smoothnness (%)", "default": "0", "min": "0", "max": "10", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">3D Parameters:</span>" },
      { "type": "bool", "name": "Align Camera Center", "default": "1", "pos": "5" },
      { "type": "float", "name": "Focale", "default": "1.5", "min": "0.5", "max": "10", "pos": "6" },
      { "type": "point", "name": "Light On/Off", "position": "80,20", "pos": "7" },
      { "type": "float", "name": "Ambient Light (%)", "default": "50", "min": "0", "max": "100", "pos": "9", "visibility": "1" },
      { "type": "float", "name": "Diffuse Shadows (%)", "default": "20", "min": "0", "max": "100", "pos": "10", "visibility": "1" },
      { "type": "float", "name": "Diffuse Highlights (%)", "default": "20", "min": "0", "max": "100", "pos": "11", "visibility": "1" },
      { "type": "float", "name": "Specular Light (%)", "default": "40", "min": "0", "max": "200", "pos": "12", "visibility": "1" },
      { "type": "float", "name": "Specular Material", "default": "30", "min": "1", "max": "100", "pos": "13", "visibility": "1" },
      { "type": "separator" },
      { "type": "float", "name": "Preview Grid Overlay (%)", "default": "20", "min": "0", "max": "100", "pos": "14" },
      { "type": "choice", "name": "Preview Resolution", "default": "1", "pos": "15", "choices": { "0": "Full", "1": "Mid", "2": "Low" } },
      { "type": "value", "value": "50,50", "pos": "16" },
      { "type": "point", "name": "Center", "position": "50,50", "pos": "17", "visibility": "0" },
      { "type": "point", "name": "Size / Angle", "position": "75,50", "pos": "19", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2026/02/03." }
      ]
    },
    {
      "name": "Kaleidoscope [Blended]", "lang": "en", "command": "fx_rotoidoscope", "command_preview": "fx_rotoidoscope", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Creates a kaleidoscope effect with blended rotations. " },
      { "type": "separator" },
      { "type": "point", "name": "Center (%)", "position": "50,50", "pos": "1" },
      { "type": "int", "name": "Angular Tiles", "default": "10", "min": "1", "max": "72", "pos": "3" },
      { "type": "float", "name": "Smoothness", "default": "0.5", "min": "0", "max": "5", "pos": "4" },
      { "type": "choice", "name": "Boundary", "default": "3", "pos": "5", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Kaleidoscope [Polar]", "lang": "en", "command": "fx_kaleidoscope", "command_preview": "fx_kaleidoscope", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Creates a kaleidoscope effect using polar mirroring. " },
      { "type": "separator" },
      { "type": "point", "name": "Center (%)", "position": "50,50", "pos": "1" },
      { "type": "float", "name": "X-Offset (%)", "default": "0", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Y-Offset (%)", "default": "0", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Radius Cut", "default": "100", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "Angle Cut", "default": "10", "min": "0", "max": "100", "pos": "6" },
      { "type": "choice", "name": "Boundary", "default": "3", "pos": "7", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Kaleidoscope [Symmetry]", "lang": "en", "command": "fx_symmetrizoscope", "command_preview": "fx_symmetrizoscope", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Creates a kaleidoscope effect based on symmetry axes. " },
      { "type": "separator" },
      { "type": "int", "name": "Iterations", "default": "4", "min": "1", "max": "32", "pos": "1" },
      { "type": "float", "name": "Angle", "default": "0", "min": "0", "max": "360", "pos": "2" },
      { "type": "choice", "name": "Boundary", "default": "3", "pos": "3", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "choice", "name": "Symmetry Sides", "default": "0", "pos": "4", "choices": { "0": "Backward", "1": "Forward", "2": "Swap" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/01/07." }
      ]
    },
    {
      "name": "Kaleidoscope Layer Cake", "lang": "en", "command": "fx_jr_klc", "command_preview": "fx_jr_klc_preview", "parameters": [
      { "type": "separator" },
      { "type": "int", "name": "Kaleidoscope Mirrors", "default": "6", "min": "0", "max": "64", "pos": "1" },
      { "type": "float", "name": "Mirror Rotation", "default": "0", "min": "-360", "max": "360", "pos": "2" },
      { "type": "choice", "name": "M-Rot Mode", "default": "0", "pos": "3", "choices": { "0": "Fixed Mirrors", "1": "Fixed Background" } },
      { "type": "float", "name": "Result Rotation", "default": "0", "min": "-360", "max": "360", "pos": "4" },
      { "type": "choice", "name": "R-Rot Mode", "default": "0", "pos": "5", "choices": { "0": "Full", "1": "Sector" } },
      { "type": "point", "name": "Mirror Offset (%)", "position": "50,50", "pos": "6" },
      { "type": "point", "name": "Centre (%)", "position": "50,50", "pos": "8" },
      { "type": "choice", "name": "Slice Mode", "default": "0", "pos": "10", "choices": { "0": "Symmetric", "1": "Asymmetric", "2": "Reverse Asymmetric" } },
      { "type": "separator" },
      { "type": "float", "name": "Layer Cake Density", "default": "30", "min": "0", "max": "100", "pos": "11" },
      { "type": "float", "name": "Angle", "default": "0", "min": "-1440", "max": "1440", "pos": "12" },
      { "type": "choice", "name": "Angle Mode", "default": "0", "pos": "13", "choices": { "0": "Layer", "1": "Density", "2": "Sector", "3": "Density & Sector" } },
      { "type": "separator" },
      { "type": "float", "name": "Scale (%)", "default": "100", "min": "0", "max": "1000", "pos": "14" },
      { "type": "float", "name": "Anti-Alias", "default": "1", "min": "0", "max": "2", "pos": "15" },
      { "type": "choice", "name": "Interpolation", "default": "2", "pos": "16", "choices": { "0": "None", "1": "Linear", "2": "Bicubic" } },
      { "type": "choice", "name": "Boundary", "default": "3", "pos": "17", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } }
      ]
    },
    {
      "name": "Layer Cake", "lang": "en", "command": "fx_layer_cake", "command_preview": "fx_layer_cake_preview", "parameters": [
      { "type": "note", "text": "Splits image into annular or circular layers and rotates each layer. Based on <a href=\"https://forums.getpaint.net/topic/26566-layer-cake-plugin/\">the Paint.NET plugin</a>." },
      { "type": "int", "name": "Iterations", "default": "4", "min": "1", "max": "32", "pos": "1" },
      { "type": "float", "name": "Angle at Centre", "default": "360", "min": "-1440", "max": "1440", "pos": "2" },
      { "type": "bool", "name": "Angle Times Iteration", "default": "0", "pos": "3" },
      { "type": "float", "name": "Size", "default": "75", "min": "0", "max": "200", "pos": "4" },
      { "type": "point", "name": "Centre", "position": "50,50", "pos": "5" },
      { "type": "choice", "name": "Boundary", "default": "3", "pos": "7", "choices": { "0": "None", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "choice", "name": "Interpolation", "default": "1", "pos": "8", "choices": { "0": "None", "1": "Linear", "2": "Bicubic" } },
      { "type": "float", "name": "Blur", "default": "0", "min": "0", "max": "200", "pos": "9" },
      { "type": "separator" },
      { "type": "float", "name": "Anti-Alias Amplitude", "default": "30", "min": "0", "max": "100", "pos": "10" },
      { "type": "float", "name": "Edge Threshold (%)", "default": "0", "min": "0", "max": "100", "pos": "11" },
      { "type": "float", "name": "Smoothness", "default": "3", "min": "0", "max": "10", "pos": "12" },
      { "type": "choice", "name": "Output Layers", "default": "0", "pos": "13", "choices": { "0": "Off", "1": "Hollow", "2": "Filled" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "14", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "15" }
      ]
    },
    {
      "name": "Layer Cake 2", "lang": "en", "command": "fx_layer_cake_2", "command_preview": "fx_layer_cake_2_preview", "parameters": [
      { "type": "float", "name": "Layer Density", "default": "4", "min": "1", "max": "100", "pos": "1" },
      { "type": "float", "name": "Angle Value", "default": "360", "min": "-2880", "max": "2880", "pos": "2" },
      { "type": "choice", "name": "Angle Mode", "default": "0", "pos": "3", "choices": { "0": "Divided by Density", "1": "Per Layer" } },
      { "type": "point", "name": "Centre", "position": "50,50", "pos": "4" },
      { "type": "choice", "name": "Interpolation", "default": "2", "pos": "6", "choices": { "0": "None", "1": "Linear", "2": "Bicubic" } },
      { "type": "choice", "name": "Boundary", "default": "3", "pos": "7", "choices": { "0": "None", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "float", "name": "Blur", "default": "50", "min": "0", "max": "100", "pos": "8" },
      { "type": "choice", "name": "Blur Mode", "default": "0", "pos": "9", "choices": { "0": "Anti-Alias", "1": "Layer Smoothing" } },
      { "type": "choice", "name": "Output Mode", "default": "0", "pos": "10", "choices": { "0": "Full", "1": "Filled Layers", "2": "Hollow Layers" } }
      ]
    },
    {
      "name": "Morph [Interactive]", "lang": "en", "command": "fx_morph_interactive", "command_preview": "fx_morph_interactive_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Interactively warps two layers using control points. " },
      { "type": "separator" },
      { "type": "int", "name": "Number of Frames", "default": "16", "min": "3", "max": "1024", "pos": "1" },
      { "type": "choice", "name": "Preview Precision", "default": "2", "pos": "2", "choices": { "0": "Coarsest (faster)", "1": "Coarse", "2": "Normal", "3": "Fine", "4": "Finest (slower)" } },
      { "type": "value", "value": "-1", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Instructions:" },
      { "type": "note", "text": " Use mouse buttons to add/move/remove correspondence keypoints over the interactive window that will appear, in order to create the morphing.\n\n <span color=\"#EE5500\">Source/target window:</span>\n\n - Left mouse button: Add new keypoint on current image and move it on the other one.\n - Right mouse button: Add/move keypoint on current image.\n - Key DELETE or middle mouse button: Delete keypoint.\n - Key SPACE or mouse wheel: Toggle source/target.\n\n <span color=\"#EE5500\">In-between window:</span>\n\n - Mouse wheel: Change morphing time, from 0 to 1.\n - Left mouse button: Reset morphing time to 0.5.\n\n <span color=\"#EE5500\">Both windows:</span>\n\n - Key TAB: Change keypoint radius.\n - Key RETURN: Play/stop in-between animation.\n - Key R: Reset keypoints.\n - Key K: Show/hide keypoints.\n - Keys ESC or Q: Process fullres and exit. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2019/04/16." }
      ]
    },
    {
      "name": "Perspective", "lang": "en", "command": "fx_warp_perspective", "command_preview": "fx_warp_perspective", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Apply a perspective transform to the image. " },
      { "type": "separator" },
      { "type": "float", "name": "X-Angle", "default": "1.73", "min": "-4", "max": "4", "pos": "1" },
      { "type": "float", "name": "Y-Angle", "default": "0", "min": "-4", "max": "4", "pos": "2" },
      { "type": "float", "name": "Zoom", "default": "1", "min": "0.1", "max": "4", "pos": "3" },
      { "type": "point", "name": "Center (%)", "position": "50,50", "pos": "4" },
      { "type": "float", "name": "X-Offset", "default": "0", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "Y-Offset", "default": "0", "min": "0", "max": "100", "pos": "7" },
      { "type": "choice", "name": "Boundary", "default": "2", "pos": "8", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Poincaré Disk", "lang": "en", "command": "fx_poincare_disk", "command_preview": "fx_poincare_disk", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Maps the image onto a Poincaré disk (hyperbolic geometry). " },
      { "type": "separator" },
      { "type": "int", "name": "P-Value", "default": "5", "min": "3", "max": "16", "pos": "1" },
      { "type": "int", "name": "Q-Value", "default": "6", "min": "3", "max": "32", "pos": "2" },
      { "type": "float", "name": "Size (%)", "default": "100", "min": "0", "max": "200", "pos": "3" },
      { "type": "int", "name": "Iterations", "default": "20", "min": "0", "max": "40", "pos": "4" },
      { "type": "float", "name": "Angle (deg.)", "default": "0", "min": "-180", "max": "180", "pos": "5" },
      { "type": "choice", "name": "Tiling", "default": "1", "pos": "6", "choices": { "0": "Triangular", "1": "Polygonal" } },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "choice", "name": "Filling", "default": "1", "pos": "8", "choices": { "0": "Binary", "1": "Image" } },
      { "type": "point", "name": "Shift", "position": "50,50", "pos": "9" },
      { "type": "float", "name": "Zoom", "default": "0", "min": "-10", "max": "10", "pos": "11" },
      { "type": "float", "name": "Angle (deg.)", "default": "0", "min": "-180", "max": "180", "pos": "12" },
      { "type": "int", "name": "Outline (px)", "default": "2", "min": "0", "max": "8", "pos": "13" },
      { "type": "color", "name": "Outline Color", "default": "0,0,0", "pos": "14" },
      { "type": "color", "name": "First Color", "default": "0,0,0", "pos": "17", "visibility": "0" },
      { "type": "color", "name": "Second Color", "default": "255,255,255", "pos": "20", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2024/01/13." }
      ]
    },
    {
      "name": "Polar Transform", "lang": "en", "command": "fx_transform_polar", "command_preview": "fx_transform_polar", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Applies a polar coordinate transformation. " },
      { "type": "separator" },
      { "type": "choice", "name": "Preset", "default": "0", "pos": "1", "choices": { "0": "Custom Transform", "1": "Inverse Radius", "2": "Swap Radius / Angle" } },
      { "type": "point", "name": "Center (%)", "position": "50,50", "pos": "2" },
      { "type": "text", "name": "Radius", "default": "r + R/10*cos(a*5)", "pos": "4" },
      { "type": "text", "name": "Angle", "default": "a", "pos": "5" },
      { "type": "choice", "name": "Boundary", "default": "3", "pos": "6", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "PowerTwirl", "lang": "en", "command": "fx_powertwirl", "command_preview": "fx_powertwirl_preview", "parameters": [
      { "type": "float", "name": "Amplitude", "default": "1", "min": "-20", "max": "20", "pos": "1" },
      { "type": "float", "name": "Offset", "default": "0", "min": "-180", "max": "180", "pos": "2" },
      { "type": "point", "name": "Center (%)", "position": "50,50", "pos": "3" },
      { "type": "float", "name": "Power", "default": "1", "min": "-20", "max": "20", "pos": "5" },
      { "type": "choice", "name": "Boundary", "default": "3", "pos": "6", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "7", "choices": { "0": "Polar", "1": "Cartesian" } }
      ]
    },
    {
      "name": "Quadrangle", "lang": "en", "command": "fx_quadrangle", "command_preview": "fx_quadrangle_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Remaps the image into a defined quadrangle region. " },
      { "type": "separator" },
      { "type": "point", "name": "Top-Left Vertex (%)", "position": "5,5", "pos": "1" },
      { "type": "point", "name": "Top-Right Vertex (%)", "position": "95,25", "pos": "3" },
      { "type": "point", "name": "Bottom-Right Vertex (%)", "position": "60,95", "pos": "5" },
      { "type": "point", "name": "Bottom-Left Vertex (%)", "position": "40,95", "pos": "7" },
      { "type": "choice", "name": "Interpolation", "default": "1", "pos": "9", "choices": { "0": "Nearest Neighbor", "1": "Linear" } },
      { "type": "choice", "name": "Boundary", "default": "3", "pos": "10", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "choice", "name": "Preview Type", "default": "1", "pos": "11", "choices": { "0": "Input", "1": "Output", "2": "Both" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2017/10/11." }
      ]
    },
    {
      "name": "Raindrops", "lang": "en", "command": "raindrops", "command_preview": "raindrops", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simulates multiple raindrops on a surface. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "80", "min": "0", "max": "300", "pos": "1" },
      { "type": "float", "name": "Density", "default": "0.1", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "Wavelength", "default": "1", "min": "0", "max": "2", "pos": "3" },
      { "type": "int", "name": "Merging Steps", "default": "0", "min": "0", "max": "20", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2012/11/28." }
      ]
    },
    {
      "name": "Random", "lang": "en", "command": "deform", "command_preview": "deform", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Applies random, smooth deformations. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "10", "min": "0", "max": "100", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Random Deformations (JR's Mod)", "lang": "en", "command": "fx_jr_deform", "command_preview": "fx_jr_deform_preview", "parameters": [
      { "type": "button", "name": "Recompute", "alignment": "0", "pos": "1" },
      { "type": "float", "name": "Amplitude", "default": "5", "min": "0", "max": "50", "pos": "2" },
      { "type": "choice", "name": "Interpolation", "default": "1", "pos": "3", "choices": { "0": "None", "1": "Linear", "2": "Bicubic" } },
      { "type": "float", "name": "Matrix Density", "default": "10", "min": "1", "max": "100", "pos": "4" },
      { "type": "choice", "name": "Matrix Interpolation", "default": "1", "pos": "5", "choices": { "0": "Linear", "1": "Bicubic" } },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "6", "choices": { "0": "Noise", "1": "Spread noise" } },
      { "type": "float", "name": "Character", "default": "0", "min": "-100", "max": "100", "pos": "7" },
      { "type": "choice", "name": "Boundary", "default": "1", "pos": "8", "choices": { "0": "Dirichlet", "1": "Neumann", "2": "Periodic", "3": "Mirror" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "9", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "10" }
      ]
    },
    {
      "name": "Random Small Deformations", "lang": "en", "command": "samj_Random_Small_Deformations", "command_preview": "samj_Random_Small_Deformations", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">samj_Random_Small_Deformations</span>" },
      { "type": "float", "name": "Noise Amplitude", "default": "10", "min": "0", "max": "200", "pos": "1" },
      { "type": "int", "name": "Dilate", "default": "5", "min": "1", "max": "20", "pos": "2" },
      { "type": "float", "name": "Blur", "default": "3", "min": "0", "max": "20", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Latest update : 2016/12/07." }
      ]
    },
    {
      "name": "Random Small Deformations B", "lang": "en", "command": "samj_Random_Small_Deformations_B", "command_preview": "samj_Random_Small_Deformations_B", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">samj_Random_Small_Deformations_B</span>" },
      { "type": "float", "name": "1 - Noise Amplitude", "default": "10", "min": "0", "max": "200", "pos": "1" },
      { "type": "int", "name": "2 - Dilate", "default": "5", "min": "1", "max": "20", "pos": "2" },
      { "type": "float", "name": "3 - Blur", "default": "3", "min": "0", "max": "20", "pos": "3" },
      { "type": "float", "name": "4 - Outline", "default": "0", "min": "0", "max": "100", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Latest update : 2022/08/18." }
      ]
    },
    {
      "name": "Rays from Image", "lang": "en", "command": "fx_rays_from_image", "command_preview": "fx_rays_from_image", "parameters": [
      { "type": "note", "text": "Creates rays from the colours of an image. If the power is 5, the lines radiate outwards as if the image is being exploded from the chosen point." },
      { "type": "separator" },
      { "type": "float", "name": "Power", "default": "5", "min": "0", "max": "10", "pos": "1" },
      { "type": "point", "name": "Centre", "position": "50,50", "pos": "2" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "4", "choices": { "0": "All", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "Linear RGB [all]", "8": "Linear RGB [red]", "9": "Linear RGB [green]", "10": "Linear RGB [blue]", "11": "YCbCr [luminance]", "12": "YCbCr [blue-red chrominances]", "13": "YCbCr [blue chrominance]", "14": "YCbCr [red chrominance]", "15": "YCbCr [green chrominance]", "16": "Lab [lightness]", "17": "Lab [ab-chrominances]", "18": "Lab [a-chrominance]", "19": "Lab [b-chrominance]", "20": "Lch [ch-chrominances]", "21": "Lch [c-chrominance]", "22": "Lch [h-chrominance]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [intensity]", "27": "HSL [lightness]", "28": "CMYK [cyan]", "29": "CMYK [magenta]", "30": "CMYK [yellow]", "31": "CMYK [key]", "32": "YIQ [luma]", "33": "YIQ [chromas]" } },
      { "type": "choice", "name": "Value Action", "default": "0", "pos": "5", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } }
      ]
    },
    {
      "name": "Reflection", "lang": "en", "command": "fx_reflect", "command_preview": "fx_reflect", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds a water reflection effect. " },
      { "type": "separator" },
      { "type": "float", "name": "Height", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Attenuation", "default": "1", "min": "0.1", "max": "4", "pos": "2" },
      { "type": "color", "name": "Color", "default": "110,160,190,64", "pos": "3" },
      { "type": "float", "name": "Waves Amplitude", "default": "0", "min": "0", "max": "100", "pos": "7" },
      { "type": "float", "name": "Waves Smoothness", "default": "1.5", "min": "0", "max": "4", "pos": "8" },
      { "type": "float", "name": "X-Angle", "default": "0", "min": "-10", "max": "10", "pos": "9" },
      { "type": "float", "name": "Y-Angle", "default": "-3.30", "min": "-10", "max": "10", "pos": "10" },
      { "type": "float", "name": "Focale", "default": "7", "min": "0", "max": "10", "pos": "11" },
      { "type": "float", "name": "Zoom", "default": "1.5", "min": "1", "max": "5", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Ripple", "lang": "en", "command": "ripple", "command_preview": "ripple", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds ripple wave distortions. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "10", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Bandwidth", "default": "20", "min": "1", "max": "300", "pos": "2" },
      { "type": "choice", "name": "Shape", "default": "2", "pos": "3", "choices": { "0": "Block", "1": "Triangle", "2": "Sine", "3": "Sine+", "4": "Random" } },
      { "type": "float", "name": "Angle", "default": "0", "min": "0", "max": "360", "pos": "4" },
      { "type": "float", "name": "Offset", "default": "0", "min": "0", "max": "500", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2011/08/23." }
      ]
    },
    {
      "name": "samj_deformation_20230712", "lang": "en", "command": "samj_deformation_20230712", "command_preview": "samj_deformation_20230712", "parameters": [
      { "type": "separator" },
      { "type": "int", "name": "1 - Deform Iter", "default": "6", "min": "3", "max": "12", "pos": "1" },
      { "type": "int", "name": "2 - Deform", "default": "6", "min": "3", "max": "12", "pos": "2" },
      { "type": "float", "name": "3 - Mélange/Blend", "default": "0.25", "min": "0.25", "max": "1", "pos": "3" },
      { "type": "bool", "name": "4 - Normalize", "default": "1", "pos": "4" },
      { "type": "int", "name": "5 - Graine/Seed", "default": "1", "min": "0", "max": "65536", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2023/07/12." }
      ]
    },
    {
      "name": "Seamcarve", "lang": "en", "command": "fx_seamcarve", "command_preview": "fx_seamcarve_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Resizes the image content-awarely by removing low-energy seams. " },
      { "type": "separator" },
      { "type": "float", "name": "Width (%)", "default": "85", "min": "0", "max": "200", "pos": "1" },
      { "type": "float", "name": "Height (%)", "default": "100", "min": "0", "max": "200", "pos": "2" },
      { "type": "float", "name": "Maximal Seams per Iteration (%)", "default": "15", "min": "0", "max": "100", "pos": "3" },
      { "type": "bool", "name": "Use Top Layer as a Priority Mask", "default": "0", "pos": "4" },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Note: You can define a transparent top layer that will help the seam-carving algorithm to preserve or force removing image structures:\n \n  - Draw areas in red to force removing them. \n  - Draw areas in green to preserve them. \n  - Don't forget also to set the Input layers... parameter to input both layers to the filter. " },
      { "type": "separator" },
      { "type": "note", "text": "Authors: Garagecoder and David Tschumperlé.       Latest Update: 2014/06/02." }
      ]
    },
    {
      "name": "Shifter", "lang": "en", "command": "fx_shifter", "command_preview": "fx_shifter_preview", "parameters": [
      { "type": "note", "text": "Shifts portions of an image using warp maps made from difference blending of rectangles." },
      { "type": "separator" },
      { "type": "button", "name": "Recompute", "alignment": "0", "pos": "1" },
      { "type": "choice", "name": "Channels", "default": "0", "pos": "2", "choices": { "0": "Correlated", "1": "RGB", "2": "sRGB", "3": "CMY", "4": "RYB", "5": "Ohta8", "6": "Ohta", "7": "YES8", "8": "YES", "9": "Kodak 1-8", "10": "Kodak1", "11": "Lab8", "12": "Lab", "13": "Oklab", "14": "LUV", "15": "Jzazbz", "16": "YIQ8", "17": "YIQ", "18": "YUV8", "19": "YUV", "20": "YCbCr", "21": "YCbCrGLIC", "22": "YCbCrJPEG", "23": "YDbDr", "24": "XYZ8", "25": "XYZ", "26": "HSV8", "27": "HSV", "28": "HSL8", "29": "HSL", "30": "HSI8", "31": "HSI", "32": "LCH8", "33": "LCH", "34": "JzCzHz", "35": "HCY" } },
      { "type": "bool", "name": "Alpha", "default": "1", "pos": "3" },
      { "type": "float", "name": "X Amplitude", "default": "1", "min": "0", "max": "10", "pos": "4" },
      { "type": "int", "name": "X Iterations", "default": "20", "min": "0", "max": "400", "pos": "5" },
      { "type": "float", "name": "Y Amplitude", "default": "1", "min": "0", "max": "10", "pos": "6" },
      { "type": "int", "name": "Y Iterations", "default": "20", "min": "0", "max": "400", "pos": "7" },
      { "type": "float", "name": "Matrix Warp Multiplier", "default": "1", "min": "0", "max": "5", "pos": "8" },
      { "type": "choice", "name": "Matrix Boundary", "default": "5", "pos": "9", "choices": { "0": "Random", "1": "Random [non-transparent]", "2": "Transparent", "3": "Nearest", "4": "Periodic", "5": "Mirror" } },
      { "type": "choice", "name": "Warp Boundary", "default": "5", "pos": "10", "choices": { "0": "Random", "1": "Random [non-transparent]", "2": "Transparent", "3": "Nearest", "4": "Periodic", "5": "Mirror" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "11", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "12" }
      ]
    },
    {
      "name": "Sphere", "lang": "en", "command": "fx_map_sphere", "command_preview": "fx_map_sphere_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Maps the image onto a sphere. " },
      { "type": "separator" },
      { "type": "int", "name": "Width", "default": "512", "min": "1", "max": "4096", "pos": "1" },
      { "type": "int", "name": "Height", "default": "512", "min": "1", "max": "4096", "pos": "2" },
      { "type": "float", "name": "Radius", "default": "90", "min": "0", "max": "400", "pos": "3" },
      { "type": "float", "name": "Dilation", "default": "0.5", "min": "0", "max": "1", "pos": "4", "visibility": "2" },
      { "type": "float", "name": "Angle", "default": "0", "min": "-50", "max": "50", "pos": "5", "visibility": "2" },
      { "type": "float", "name": "Border Smoothness", "default": "0", "min": "0", "max": "200", "pos": "6" },
      { "type": "float", "name": "Border Width", "default": "20", "min": "0", "max": "100", "pos": "7" },
      { "type": "choice", "name": "Orientation", "default": "0", "pos": "8", "choices": { "0": "0 deg.", "1": "90 deg.", "2": "180 deg.", "3": "270 deg." }, "visibility": "0" },
      { "type": "choice", "name": "Background", "default": "0", "pos": "9", "choices": { "0": "Transparent", "1": "Mean Color" }, "visibility": "0" },
      { "type": "float", "name": "Fading", "default": "0", "min": "0", "max": "100", "pos": "10" },
      { "type": "float", "name": "Fading Shape", "default": "0.5", "min": "0", "max": "3", "pos": "11" },
      { "type": "separator", "visibility": "0" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2011/07/11.", "visibility": "0" }
      ]
    },
    {
      "name": "Spherize", "lang": "en", "command": "fx_spherize", "command_preview": "fx_spherize_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Distorts the image to look like it's projected on a sphere. " },
      { "type": "separator" },
      { "type": "float", "name": "Radius (%)", "default": "50", "min": "0", "max": "300", "pos": "1" },
      { "type": "float", "name": "Strength", "default": "1", "min": "-10", "max": "10", "pos": "2" },
      { "type": "float", "name": "Smoothness (%)", "default": "0", "min": "0", "max": "4", "pos": "3" },
      { "type": "point", "name": "Center (%)", "position": "50,50", "pos": "4" },
      { "type": "float", "name": "Ratio", "default": "0", "min": "-2", "max": "2", "pos": "6" },
      { "type": "float", "name": "Angle", "default": "0", "min": "-90", "max": "90", "pos": "7" },
      { "type": "choice", "name": "Interpolation", "default": "2", "pos": "8", "choices": { "0": "Nearest Neighbor", "1": "Linear", "2": "Cubic" } },
      { "type": "bool", "name": "Preview Grid", "default": "0", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2017/10/03." }
      ]
    },
    {
      "name": "Spiral Matrix Transformation", "lang": "en", "command": "fx_jr_spiral_transform", "command_preview": "fx_jr_spiral_transform_preview", "parameters": [
      { "type": "note", "text": "Transforms images into rectangular spirals. The main use is to run effects on the transformed images and then use a corresponding reverse transformation for unusual effects. Preview may be highly-inaccurate. Based off an unfinished script from the <a href=\"https://forums.getpaint.net/topic/30276-glitch-effect-plugin-polyglitch-v14b/\">PolyGlitch Paint.NET plugin</a>.\n\n Details of the Spiral Matrix Transform's mathematics can be found in this thread - <a href=\"https://discuss.pixls.us/t/challenge-spiralbw-as-a-parametric-function-x-t-y-t/12779\">Challenge: Spiralbw as a parametric function (x(t),y(t))</a>." },
      { "type": "separator" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "1", "choices": { "0": "Spiral", "1": "Inverse Spiral" } },
      { "type": "choice", "name": "Spiral Rotation", "default": "0", "pos": "2", "choices": { "0": "Clockwise", "1": "Anticlockwise" } },
      { "type": "choice", "name": "Direction", "default": "0", "pos": "3", "choices": { "0": "Down", "1": "Up" } },
      { "type": "choice", "name": "Starting Axis", "default": "0", "pos": "4", "choices": { "0": "X", "1": "Y" } },
      { "type": "choice", "name": "Spiral Start", "default": "0", "pos": "5", "choices": { "0": "Outside", "1": "Inside" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian, <a href=\"http://bit.ly/2CmhX65\">David Tschumperlé</a>.,Joan Rake and Garagecoder. Latest Update: 2019/5/28." }
      ]
    },
    {
      "name": "Square to Circle", "lang": "en", "command": "fx_square_circle", "command_preview": "fx_square_circle", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Warps a square image into a circle. " },
      { "type": "separator" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "1", "choices": { "0": "Square to Circle", "1": "Circle to Square" } },
      { "type": "choice", "name": "Interpolation", "default": "1", "pos": "2", "choices": { "0": "Nearest Neighbor", "1": "Linear" } },
      { "type": "choice", "name": "Boundary", "default": "0", "pos": "3", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "separator" },
      { "type": "float", "name": "X-Factor (%)", "default": "0", "min": "-100", "max": "100", "pos": "4" },
      { "type": "float", "name": "Y-Factor (%)", "default": "0", "min": "-100", "max": "100", "pos": "5" },
      { "type": "float", "name": "X-Offset (%)", "default": "0", "min": "-300", "max": "300", "pos": "6" },
      { "type": "float", "name": "Y-Offset (%)", "default": "0", "min": "-300", "max": "300", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "This filter implements the mapping functions described in this page, by C. Fong:" },
      { "type": "link", "name": "http://squircular.blogspot.com/2015/09/mapping-circle-to-square.html", "url": "http://squircular.blogspot.com/2015/09/mapping-circle-to-square.html", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2017/10/30." }
      ]
    },
    {
      "name": "Square to Circle [alt]", "lang": "en", "command": "fx_square_circle_alt", "command_preview": "fx_square_circle_alt", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Alternative algorithm to warp a square to a circle. " },
      { "type": "separator" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "1", "choices": { "0": "Square to Circle", "1": "Circle to Square" } },
      { "type": "point", "name": "Center", "position": "50,50", "pos": "2" },
      { "type": "float", "name": "Strength (%)", "default": "100", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Zoom (%)", "default": "0", "min": "-100", "max": "100", "pos": "5" },
      { "type": "float", "name": "Angle (deg.)", "default": "0", "min": "-180", "max": "180", "pos": "6" },
      { "type": "choice", "name": "Interpolation", "default": "1", "pos": "7", "choices": { "0": "Nearest Neighbor", "1": "Linear" } },
      { "type": "choice", "name": "Boundary", "default": "0", "pos": "8", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "bool", "name": "Adapt to Image Ratio", "default": "1", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2023/12/24." }
      ]
    },
    {
      "name": "Stereographic Projection", "lang": "en", "command": "fx_project_stereographic", "command_preview": "fx_project_stereographic_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Applies a stereographic projection (Little Planet effect). " },
      { "type": "separator" },
      { "type": "choice", "name": "Transform", "default": "0", "pos": "1", "choices": { "0": "Direct", "1": "Inverse" } },
      { "type": "point", "name": "Center (%)", "position": "50,50", "pos": "2" },
      { "type": "point", "name": "Radius / Angle", "position": "50,75", "pos": "4" },
      { "type": "float", "name": "Horizon Leveling (deg)", "default": "0", "min": "-10", "max": "10", "pos": "6" },
      { "type": "float", "name": "Left / Right Blur (%)", "default": "0", "min": "0", "max": "20", "pos": "7" },
      { "type": "float", "name": "Dilation", "default": "0", "min": "-2", "max": "2", "pos": "8" },
      { "type": "choice", "name": "Mirror", "default": "0", "pos": "9", "choices": { "0": "None", "1": "X-Axis", "2": "Y-Axis", "3": "XY-Axis" } },
      { "type": "choice", "name": "Boundary", "default": "0", "pos": "10", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "value", "value": "50,50", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2018/07/04." }
      ]
    },
    {
      "name": "Symmetrize", "lang": "en", "command": "fx_symmetrize", "command_preview": "fx_symmetrize_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Mirrors one side of the image onto the other. " },
      { "type": "separator" },
      { "type": "point", "name": "Point 1", "position": "50,50", "pos": "1" },
      { "type": "point", "name": "Point 2", "position": "50,75", "pos": "3" },
      { "type": "float", "name": "Angle", "default": "0", "min": "-180", "max": "180", "pos": "5" },
      { "type": "choice", "name": "Boundary", "default": "0", "pos": "6", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "choice", "name": "Type", "default": "0", "pos": "7", "choices": { "0": "Symmetry", "1": "Antisymmetry" } },
      { "type": "bool", "name": "Swap Sides", "default": "0", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2018/06/11." }
      ]
    },
    {
      "name": "Textured Glass", "lang": "en", "command": "fx_textured_glass", "command_preview": "fx_textured_glass", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Distorts the image as if seen through textured glass. " },
      { "type": "separator" },
      { "type": "float", "name": "X-Amplitude", "default": "40", "min": "0", "max": "400", "pos": "1" },
      { "type": "float", "name": "Y-Amplitude", "default": "40", "min": "0", "max": "400", "pos": "2" },
      { "type": "float", "name": "X-Smoothness", "default": "1", "min": "0", "max": "5", "pos": "3" },
      { "type": "float", "name": "Y-Smoothness", "default": "1", "min": "0", "max": "5", "pos": "4" },
      { "type": "float", "name": "Edge Attenuation", "default": "0", "min": "0", "max": "1", "pos": "5" },
      { "type": "float", "name": "Edge Influence", "default": "2", "min": "0", "max": "10", "pos": "6" },
      { "type": "int", "name": "Noise Scale", "default": "0", "min": "0", "max": "16", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/11/21." }
      ]
    },
    {
      "name": "Twirl", "lang": "en", "command": "fx_twirl", "command_preview": "fx_twirl", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Twists the image around a center point. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "1", "min": "-5", "max": "5", "pos": "1" },
      { "type": "point", "name": "Center (%)", "position": "50,50", "pos": "2" },
      { "type": "choice", "name": "Boundary", "default": "3", "pos": "4", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "UltraWarp 2", "lang": "en", "command": "fx_ultrawarptwo", "command_preview": "fx_ultrawarptwo_preview", "parameters": [
      { "type": "note", "text": "A sequence of multiple self-warps and HSV/HSI/HSL operations. A remake of UltraWarp++++ but with more focus on granular features rather than preset combinations of filters. 'Range' parameters determine the upper and lower bounds while the 'centre' parameters set the mean values." },
      { "type": "separator" },
      { "type": "button", "name": "0. Recompute", "alignment": "0", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Warping" },
      { "type": "int", "name": "1. Iterations", "default": "3", "min": "1", "max": "30", "pos": "2" },
      { "type": "choice", "name": "2. From RGB To", "default": "1", "pos": "3", "choices": { "0": "Random", "1": "RGB", "2": "sRGB", "3": "CMY", "4": "RYB", "5": "Ohta8", "6": "Ohta", "7": "YES8", "8": "YES", "9": "Kodak 1-8", "10": "Kodak1", "11": "Lab8", "12": "Lab", "13": "Oklab", "14": "LUV", "15": "Jzazbz", "16": "YIQ8", "17": "YIQ", "18": "YUV8", "19": "YUV", "20": "YCbCr", "21": "YCbCrGLIC", "22": "YCbCrJPEG", "23": "YDbDr", "24": "XYZ8", "25": "XYZ", "26": "HSV8", "27": "HSV", "28": "HSL8", "29": "HSL", "30": "HSI8", "31": "HSI", "32": "LCH8", "33": "LCH", "34": "JzCzHz", "35": "HCY" } },
      { "type": "float", "name": "3. X-Factor Centre", "default": "0", "min": "-30", "max": "30", "pos": "4" },
      { "type": "float", "name": "4. X-Factor Range", "default": "3", "min": "0", "max": "30", "pos": "5" },
      { "type": "float", "name": "5. Y-Factor Centre", "default": "0", "min": "-30", "max": "30", "pos": "6" },
      { "type": "float", "name": "6. Y-Factor Range", "default": "3", "min": "0", "max": "30", "pos": "7" },
      { "type": "float", "name": "7. X-Offset Centre", "default": "0", "min": "-30", "max": "30", "pos": "8", "visibility": "0" },
      { "type": "float", "name": "8. X-Offset Range", "default": "3", "min": "0", "max": "30", "pos": "9" },
      { "type": "float", "name": "9. Y-Offset Centre", "default": "0", "min": "-30", "max": "30", "pos": "10" },
      { "type": "float", "name": "10. Y-Offset Range", "default": "3", "min": "0", "max": "30", "pos": "11" },
      { "type": "choice", "name": "11. Correlated Channels", "default": "2", "pos": "12", "choices": { "0": "On", "1": "Off", "2": "Random" } },
      { "type": "choice", "name": "12. Interpolation", "default": "2", "pos": "13", "choices": { "0": "Nearest", "1": "Linear", "2": "Random" } },
      { "type": "choice", "name": "13. Boundary", "default": "5", "pos": "14", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror", "4": "Random", "5": "Random (non-transparent)" } },
      { "type": "choice", "name": "14. Warp Channel(s)", "default": "3", "pos": "15", "choices": { "0": "None", "1": "Random", "2": "All", "3": "RGB [all]", "4": "RGB [red]", "5": "RGB [green]", "6": "RGB [blue]", "7": "Linear RGB [all]", "8": "Linear RGB [red]", "9": "Linear RGB [green]", "10": "Linear RGB [blue]", "11": "YCbCr [luminance]", "12": "YCbCr [blue-red chrominances]", "13": "YCbCr [blue chrominance]", "14": "YCbCr [red chrominance]", "15": "YCbCr [green chrominance]", "16": "Lab [lightness]", "17": "Lab [ab-chrominances]", "18": "Lab [a-chrominance]", "19": "Lab [b-chrominance]", "20": "Lch [ch-chrominances]", "21": "Lch [c-chrominance]", "22": "Lch [h-chrominance]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [intensity]", "27": "HSL [lightness]", "28": "CMYK [cyan]", "29": "CMYK [magenta]", "30": "CMYK [yellow]", "31": "CMYK [key]", "32": "YIQ [luma]", "33": "YIQ [chromas]" } },
      { "type": "bool", "name": "15. Include Alpha", "default": "0", "pos": "16" },
      { "type": "choice", "name": "16. To RGB From", "default": "1", "pos": "17", "choices": { "0": "Random", "1": "RGB", "2": "sRGB", "3": "CMY", "4": "RYB", "5": "Ohta8", "6": "Ohta", "7": "YES8", "8": "YES", "9": "Kodak 1-8", "10": "Kodak1", "11": "Lab8", "12": "Lab", "13": "Oklab", "14": "LUV", "15": "Jzazbz", "16": "YIQ8", "17": "YIQ", "18": "YUV8", "19": "YUV", "20": "YCbCr", "21": "YCbCrGLIC", "22": "YCbCrJPEG", "23": "YDbDr", "24": "XYZ8", "25": "XYZ", "26": "HSV8", "27": "HSV", "28": "HSL8", "29": "HSL", "30": "HSI8", "31": "HSI", "32": "LCH8", "33": "LCH", "34": "JzCzHz", "35": "HCY" } },
      { "type": "bool", "name": "17. Random Negation", "default": "1", "pos": "18" },
      { "type": "separator" },
      { "type": "note", "text": "Post-warping HSX8 mixing" },
      { "type": "bool", "name": "18. Repeat For Each Iteration", "default": "1", "pos": "19" },
      { "type": "choice", "name": "19. X Channel", "default": "0", "pos": "20", "choices": { "0": "Value", "1": "Intensity", "2": "Lightness" } },
      { "type": "float", "name": "20. Hue Factor Centre", "default": "1", "min": "-20", "max": "20", "pos": "21" },
      { "type": "float", "name": "21. Hue Factor Range", "default": "0.5", "min": "0", "max": "20", "pos": "22" },
      { "type": "float", "name": "22. Saturation Factor Centre", "default": "2.5", "min": "-20", "max": "20", "pos": "23" },
      { "type": "float", "name": "23. Saturation Factor Range", "default": "5", "min": "0", "max": "20", "pos": "24" },
      { "type": "float", "name": "24. X Channel Factor Centre", "default": "1", "min": "-20", "max": "20", "pos": "25" },
      { "type": "float", "name": "25. X Channel Factor Range", "default": "0", "min": "0", "max": "20", "pos": "26" },
      { "type": "float", "name": "26. Alpha Factor Centre", "default": "1", "min": "-20", "max": "20", "pos": "27" },
      { "type": "float", "name": "27. Alpha Factor Range", "default": "0", "min": "0", "max": "20", "pos": "28" },
      { "type": "float", "name": "28. Hue Shift Centre", "default": "0", "min": "-255", "max": "255", "pos": "29" },
      { "type": "float", "name": "29. Hue Shift Range", "default": "255", "min": "0", "max": "255", "pos": "30" },
      { "type": "float", "name": "30. Saturation Shift Centre", "default": "0", "min": "-255", "max": "255", "pos": "31" },
      { "type": "float", "name": "31. Saturation Shift Range", "default": "255", "min": "0", "max": "255", "pos": "32" },
      { "type": "float", "name": "32. X Channel Shift Centre", "default": "0", "min": "-255", "max": "255", "pos": "33" },
      { "type": "float", "name": "33. X Channel Shift Range", "default": "0", "min": "0", "max": "255", "pos": "34" },
      { "type": "float", "name": "34. Alpha Shift Centre", "default": "0", "min": "-255", "max": "255", "pos": "35" },
      { "type": "float", "name": "35. Alpha Shift Range", "default": "0", "min": "0", "max": "255", "pos": "36" }
      ]
    },
    {
      "name": "UltraWarp++++", "lang": "en", "command": "fx_ultrawarp4plus", "command_preview": "fx_ultrawarp4plus_preview", "parameters": [
      { "type": "note", "text": "A sequence of multiple partially-randomised texture generation and image deformation filters with multi-iteration warping." },
      { "type": "note", "text": "This modular filter is extremely complex and its logic may not follow that which you expect. Left on its default settings, it is very likely to munge your image beyond recognition. This original version has been kept alive despite being slower than UltraWarp 2." },
      { "type": "separator" },
      { "type": "button", "name": "0.  Recompute", "alignment": "0", "pos": "1" },
      { "type": "separator" },
      { "type": "bool", "name": "1.  Plasma Texture [Discards Input Image]", "default": "0", "pos": "2" },
      { "type": "float", "name": "2.  Plasma Scale", "default": "3.3", "min": "0", "max": "20", "pos": "3" },
      { "type": "bool", "name": "3.  Plasma Alpha Channel", "default": "0", "pos": "4" },
      { "type": "separator" },
      { "type": "bool", "name": "4.  Segmentation [No Alpha Channel]", "default": "0", "pos": "5" },
      { "type": "float", "name": "5.  Edge Threshold", "default": "5", "min": "0.01", "max": "60", "pos": "6" },
      { "type": "float", "name": "6.  Smoothness", "default": "0", "min": "0", "max": "60", "pos": "7" },
      { "type": "separator" },
      { "type": "float", "name": "7.  Blur", "default": "0", "min": "0", "max": "30", "pos": "8" },
      { "type": "separator" },
      { "type": "bool", "name": "8.  Quadtree Pixelisation [No Alpha Channel]", "default": "0", "pos": "9" },
      { "type": "int", "name": "9.  Quadtree Min Precision", "default": "4", "min": "2", "max": "8192", "pos": "10" },
      { "type": "int", "name": "10.  Quadtree Max Precision", "default": "256", "min": "0", "max": "8192", "pos": "11" },
      { "type": "float", "name": "11.  Quadtree Min Homogeneity", "default": "4.8", "min": "0", "max": "5", "pos": "12" },
      { "type": "float", "name": "12.  Quadtree Max Homogeneity", "default": "5", "min": "0", "max": "5", "pos": "13" },
      { "type": "separator" },
      { "type": "choice", "name": "13. Noise Type", "default": "2", "pos": "14", "choices": { "0": "Gaussian", "1": "Uniform", "2": "Salt and pepper", "3": "Poisson" } },
      { "type": "float", "name": "14. Minimum Noise", "default": "0", "min": "0", "max": "8", "pos": "15" },
      { "type": "float", "name": "15. Maximum Noise", "default": "0", "min": "0", "max": "8", "pos": "16" },
      { "type": "choice", "name": "16. Noise Channel(s)", "default": "2", "pos": "17", "choices": { "0": "All", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "Linear RGB [all]", "8": "Linear RGB [red]", "9": "Linear RGB [green]", "10": "Linear RGB [blue]", "11": "YCbCr [luminance]", "12": "YCbCr [blue-red chrominances]", "13": "YCbCr [blue chrominance]", "14": "YCbCr [red chrominance]", "15": "YCbCr [green chrominance]", "16": "Lab [lightness]", "17": "Lab [ab-chrominances]", "18": "Lab [a-chrominance]", "19": "Lab [b-chrominance]", "20": "Lch [ch-chrominances]", "21": "Lch [c-chrominance]", "22": "Lch [h-chrominance]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [intensity]", "27": "HSL [lightness]", "28": "CMYK [cyan]", "29": "CMYK [magenta]", "30": "CMYK [yellow]", "31": "CMYK [key]", "32": "YIQ [luma]", "33": "YIQ [chromas]" } },
      { "type": "separator" },
      { "type": "note", "text": "Warping" },
      { "type": "int", "name": "17. Warp Iterations", "default": "3", "min": "0", "max": "30", "pos": "18" },
      { "type": "float", "name": "18. Warp Intensity", "default": "3", "min": "0", "max": "10", "pos": "19" },
      { "type": "float", "name": "19. Warp Offset", "default": "20", "min": "0", "max": "2000", "pos": "20" },
      { "type": "bool", "name": "20. Scale to Width", "default": "1", "pos": "21" },
      { "type": "bool", "name": "21. Scale to Height", "default": "1", "pos": "22" },
      { "type": "choice", "name": "22. Correlated Channels", "default": "0", "pos": "23", "choices": { "0": "Random", "1": "Off", "2": "On" } },
      { "type": "choice", "name": "23. Boundary", "default": "5", "pos": "24", "choices": { "0": "Random", "1": "Random [non-transparent]", "2": "Transparent", "3": "Nearest", "4": "Periodic", "5": "Mirror" } },
      { "type": "choice", "name": "24. Warp Channel(s)", "default": "2", "pos": "25", "choices": { "0": "Random", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "Linear RGB [all]", "8": "Linear RGB [red]", "9": "Linear RGB [green]", "10": "Linear RGB [blue]", "11": "YCbCr [luminance]", "12": "YCbCr [blue-red chrominances]", "13": "YCbCr [blue chrominance]", "14": "YCbCr [red chrominance]", "15": "YCbCr [green chrominance]", "16": "Lab [lightness]", "17": "Lab [ab-chrominances]", "18": "Lab [a-chrominance]", "19": "Lab [b-chrominance]", "20": "Lch [ch-chrominances]", "21": "Lch [c-chrominance]", "22": "Lch [h-chrominance]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [intensity]", "27": "HSL [lightness]", "28": "CMYK [cyan]", "29": "CMYK [magenta]", "30": "CMYK [yellow]", "31": "CMYK [key]", "32": "YIQ [luma]", "33": "YIQ [chromas]" } },
      { "type": "bool", "name": "25. Random Negation", "default": "1", "pos": "26" },
      { "type": "choice", "name": "26. Random Negation Channel(s)", "default": "2", "pos": "27", "choices": { "0": "Random", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "Linear RGB [all]", "8": "Linear RGB [red]", "9": "Linear RGB [green]", "10": "Linear RGB [blue]", "11": "YCbCr [luminance]", "12": "YCbCr [blue-red chrominances]", "13": "YCbCr [blue chrominance]", "14": "YCbCr [red chrominance]", "15": "YCbCr [green chrominance]", "16": "Lab [lightness]", "17": "Lab [ab-chrominances]", "18": "Lab [a-chrominance]", "19": "Lab [b-chrominance]", "20": "Lch [ch-chrominances]", "21": "Lch [c-chrominance]", "22": "Lch [h-chrominance]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [intensity]", "27": "HSL [lightness]", "28": "CMYK [cyan]", "29": "CMYK [magenta]", "30": "CMYK [yellow]", "31": "CMYK [key]", "32": "YIQ [luma]", "33": "YIQ [chromas]" } },
      { "type": "float", "name": "27. Gamma Offset", "default": "0.25", "min": "0", "max": "1", "pos": "28" },
      { "type": "float", "name": "28. Hue Offset", "default": "1", "min": "0", "max": "1", "pos": "29" },
      { "type": "bool", "name": "29. Normalise", "default": "1", "pos": "30" },
      { "type": "separator" },
      { "type": "note", "text": "Final HSV Scaling" },
      { "type": "float", "name": "30. Minimum Hue", "default": "0", "min": "0", "max": "20", "pos": "31" },
      { "type": "float", "name": "31. Maximum Hue", "default": "5", "min": "0", "max": "20", "pos": "32" },
      { "type": "float", "name": "32. Minimum Saturation", "default": "0", "min": "0", "max": "20", "pos": "33" },
      { "type": "float", "name": "33. Maximum Saturation", "default": "3", "min": "0", "max": "20", "pos": "34" },
      { "type": "float", "name": "34. Minimum Value", "default": "0.5", "min": "0", "max": "20", "pos": "35" },
      { "type": "float", "name": "35. Maximum Value", "default": "2", "min": "0", "max": "20", "pos": "36" },
      { "type": "note", "text": "Set these to their minimum values for randomisation" },
      { "type": "float", "name": "36. Hue Offset", "default": "-180", "min": "-180", "max": "180", "pos": "37" },
      { "type": "float", "name": "37. Saturation Offset", "default": "0", "min": "-1.01", "max": "1", "pos": "38" },
      { "type": "float", "name": "38. Value Offset", "default": "0", "min": "-20.01", "max": "20", "pos": "39" },
      { "type": "separator" },
      { "type": "bool", "name": "-4. Normalise", "default": "1", "pos": "40" },
      { "type": "choice", "name": "-3. Normalisation Channel(s)", "default": "11", "pos": "41", "choices": { "0": "All", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "Linear RGB [all]", "8": "Linear RGB [red]", "9": "Linear RGB [green]", "10": "Linear RGB [blue]", "11": "YCbCr [luminance]", "12": "YCbCr [blue-red chrominances]", "13": "YCbCr [blue chrominance]", "14": "YCbCr [red chrominance]", "15": "YCbCr [green chrominance]", "16": "Lab [lightness]", "17": "Lab [ab-chrominances]", "18": "Lab [a-chrominance]", "19": "Lab [b-chrominance]", "20": "Lch [ch-chrominances]", "21": "Lch [c-chrominance]", "22": "Lch [h-chrominance]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [intensity]", "27": "HSL [lightness]", "28": "CMYK [cyan]", "29": "CMYK [magenta]", "30": "CMYK [yellow]", "31": "CMYK [key]", "32": "YIQ [luma]", "33": "YIQ [chromas]" } },
      { "type": "separator" },
      { "type": "choice", "name": "-2. Overall Channel(s)", "default": "0", "pos": "42", "choices": { "0": "All", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "Linear RGB [all]", "8": "Linear RGB [red]", "9": "Linear RGB [green]", "10": "Linear RGB [blue]", "11": "YCbCr [luminance]", "12": "YCbCr [blue-red chrominances]", "13": "YCbCr [blue chrominance]", "14": "YCbCr [red chrominance]", "15": "YCbCr [green chrominance]", "16": "Lab [lightness]", "17": "Lab [ab-chrominances]", "18": "Lab [a-chrominance]", "19": "Lab [b-chrominance]", "20": "Lch [ch-chrominances]", "21": "Lch [c-chrominance]", "22": "Lch [h-chrominance]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [intensity]", "27": "HSL [lightness]", "28": "CMYK [cyan]", "29": "CMYK [magenta]", "30": "CMYK [yellow]", "31": "CMYK [key]", "32": "YIQ [luma]", "33": "YIQ [chromas]" } },
      { "type": "choice", "name": "-1. Value Action", "default": "0", "pos": "43", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } }
      ]
    },
    {
      "name": "Warp [Interactive]", "lang": "en", "command": "fx_warp_interactive", "command_preview": "fx_warp_interactive_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Interactive deformation tool. " },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Precision", "default": "1", "pos": "1", "choices": { "0": "Coarsest (faster)", "1": "Coarse", "2": "Normal", "3": "Fine", "4": "Finest (slower)" } },
      { "type": "separator" },
      { "type": "note", "text": "Pre-defined keypoints" },
      { "type": "int", "name": "Regular Grid", "default": "2", "min": "2", "max": "10", "pos": "2" },
      { "type": "int", "name": "Contours", "default": "0", "min": "0", "max": "32", "pos": "3" },
      { "type": "value", "value": "-1", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Instructions:" },
      { "type": "note", "text": " Use mouse to add/move/delete keypoints over the interactive window that will appear, in order to create the deformation map.\n\n - Left mouse button: Add and move keypoint.\n - Right mouse button: Delete keypoint.\n - Key SPACE or middle mouse button: Show/hide keypoints.\n - Key TAB: Change keypoint radius.\n - Key SHIFT: Toggle to original image.\n - Key R: Reset keypoints.\n - Keys ESC, RETURN or Q: Process fullres and exit. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2019/04/08." }
      ]
    },
    {
      "name": "Warp [RBF]", "lang": "en", "command": "fx_warp_rbf", "command_preview": "fx_warp_rbf_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Warps the image using Radial Basis Functions control points. " },
      { "type": "separator" },
      { "type": "bool", "name": "Displace Keypoints", "default": "0", "pos": "1" },
      { "type": "note", "text": "\nNote: Enable Displace Keypoints when your keypoints have been placed on your image" },
      { "type": "separator" },
      { "type": "value", "value": "0", "pos": "2" },
      { "type": "choice", "name": "Boundary", "default": "3", "pos": "3", "choices": { "0": "Dirichlet", "1": "Neumann", "2": "Periodic", "3": "Mirror" } },
      { "type": "choice", "name": "Lock", "default": "2", "pos": "4", "choices": { "0": "Disable", "1": "Lock Corners", "2": "Lock Edges" } },
      { "type": "choice", "name": "Phi(r)", "default": "2", "pos": "5", "choices": { "0": "sqrt(r)", "1": "r", "2": "r.log(1+r)" } },
      { "type": "separator" },
      { "type": "point", "name": "Point #0", "position": "25,25", "pos": "6" },
      { "type": "value", "value": "25,25", "pos": "8" },
      { "type": "value", "value": "25,25", "pos": "9" },
      { "type": "point", "name": "Point #1", "position": "75,25", "pos": "10" },
      { "type": "value", "value": "75,25", "pos": "12" },
      { "type": "value", "value": "75,25", "pos": "13" },
      { "type": "point", "name": "Point #2", "position": "75,75", "pos": "14" },
      { "type": "value", "value": "75,75", "pos": "16" },
      { "type": "value", "value": "75,75", "pos": "17" },
      { "type": "point", "name": "Point #3", "position": "25,75", "pos": "18" },
      { "type": "value", "value": "25,75", "pos": "20" },
      { "type": "value", "value": "25,75", "pos": "21" },
      { "type": "point", "name": "Point #4", "position": "50,50", "pos": "22" },
      { "type": "value", "value": "50,50", "pos": "24" },
      { "type": "value", "value": "50,50", "pos": "25" },
      { "type": "point", "name": "Point #5", "position": "10,50", "pos": "26" },
      { "type": "value", "value": "10,50", "pos": "28" },
      { "type": "value", "value": "10,50", "pos": "29" },
      { "type": "point", "name": "Point #6", "position": "20,50", "pos": "30" },
      { "type": "value", "value": "20,50", "pos": "32" },
      { "type": "value", "value": "20,50", "pos": "33" },
      { "type": "point", "name": "Point #7", "position": "30,50", "pos": "34" },
      { "type": "value", "value": "30,50", "pos": "36" },
      { "type": "value", "value": "30,50", "pos": "37" },
      { "type": "point", "name": "Point #8", "position": "40,50", "pos": "38" },
      { "type": "value", "value": "40,50", "pos": "40" },
      { "type": "value", "value": "40,50", "pos": "41" },
      { "type": "point", "name": "Point #9", "position": "60,50", "pos": "42" },
      { "type": "value", "value": "60,50", "pos": "44" },
      { "type": "value", "value": "60,50", "pos": "45" },
      { "type": "point", "name": "Point #10", "position": "70,50", "pos": "46" },
      { "type": "value", "value": "70,50", "pos": "48" },
      { "type": "value", "value": "70,50", "pos": "49" },
      { "type": "point", "name": "Point #11", "position": "80,50", "pos": "50" },
      { "type": "value", "value": "80,50", "pos": "52" },
      { "type": "value", "value": "80,50", "pos": "53" },
      { "type": "point", "name": "Point #12", "position": "90,50", "pos": "54" },
      { "type": "value", "value": "90,50", "pos": "56" },
      { "type": "value", "value": "90,50", "pos": "57" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé       Latest Update: 2025/03/17." }
      ]
    },
    {
      "name": "Water", "lang": "en", "command": "water", "command_preview": "water", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simulates water surface undulations. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "30", "min": "0", "max": "300", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "1.5", "min": "0", "max": "4", "pos": "2" },
      { "type": "float", "name": "Angle", "default": "45", "min": "0", "max": "180", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/10/07." }
      ]
    },
    {
      "name": "Wave", "lang": "en", "command": "wave", "command_preview": "wave", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Applies a sinusoidal wave distortion. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "10", "min": "0", "max": "30", "pos": "1" },
      { "type": "float", "name": "Frequency", "default": "0.4", "min": "0", "max": "2", "pos": "2" },
      { "type": "point", "name": "Center (%)", "position": "50,50", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Wind", "lang": "en", "command": "fx_wind", "command_preview": "fx_wind", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Smears the image to simulate a wind effect. " },
      { "type": "separator" },
      { "type": "int", "name": "Amplitude (px)", "default": "20", "min": "0", "max": "512", "pos": "1" },
      { "type": "float", "name": "Angle (deg)", "default": "0", "min": "0", "max": "360", "pos": "2" },
      { "type": "float", "name": "Attenuation", "default": "0.7", "min": "0", "max": "1", "pos": "3" },
      { "type": "float", "name": "Threshold (%)", "default": "20", "min": "0", "max": "100", "pos": "4" },
      { "type": "choice", "name": "Mode", "default": "1", "pos": "5", "choices": { "0": "Darker", "1": "Brighter" } },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "6", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "choice", "name": "Value Action", "default": "0", "pos": "7", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2023/05/26." }
      ]
    },
    {
      "name": "Zoom", "lang": "en", "command": "fx_zoom_v2", "command_preview": "fx_zoom_v2_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Applies a zoom to the image. " },
      { "type": "separator" },
      { "type": "value", "value": "50", "pos": "1" },
      { "type": "value", "value": "50", "pos": "2" },
      { "type": "point", "name": "Center", "position": "50,50", "pos": "3", "visibility": "0" },
      { "type": "point", "name": "Vector", "position": "75,50", "pos": "5", "visibility": "0" },
      { "type": "choice", "name": "Interpolation", "default": "1", "pos": "7", "choices": { "0": "Nearest Neighbor", "1": "Linear", "2": "Cubic" } },
      { "type": "choice", "name": "Boundary", "default": "0", "pos": "8", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2024/05/02." }
      ]
    }
    ]
  },
  {
    "name": "Degradations", "filters": [
    {
      "name": "Add Grain", "lang": "en", "command": "fx_simulate_grain", "command_preview": "fx_simulate_grain_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds film grain noise to the image. " },
      { "type": "separator" },
      { "type": "choice", "name": "Preset", "default": "0", "pos": "1", "choices": { "0": "Orwo NP20-GDR", "1": "Kodak TMAX 400", "2": "Kodak TMAX 3200", "3": "Kodak TRI-X 1600", "4": "Unknown" } },
      { "type": "choice", "name": "Blend Mode", "default": "1", "pos": "2", "choices": { "0": "Alpha", "1": "Grain Merge", "2": "Hard Light", "3": "Overlay", "4": "Soft Light", "5": "Grain Only" } },
      { "type": "float", "name": "Opacity", "default": "0.2", "min": "0", "max": "1", "pos": "3" },
      { "type": "float", "name": "Scale", "default": "100", "min": "30", "max": "800", "pos": "4" },
      { "type": "float", "name": "Sharpness", "default": "0", "min": "0", "max": "512", "pos": "5" },
      { "type": "bool", "name": "Colored Grain", "default": "0", "pos": "6" },
      { "type": "separator" },
      { "type": "float", "name": "Brightness (%)", "default": "0", "min": "-100", "max": "100", "pos": "7" },
      { "type": "float", "name": "Contrast (%)", "default": "0", "min": "-100", "max": "100", "pos": "8" },
      { "type": "float", "name": "Gamma (%)", "default": "0", "min": "-100", "max": "100", "pos": "9" },
      { "type": "float", "name": "Hue (%)", "default": "0", "min": "-100", "max": "100", "pos": "10" },
      { "type": "float", "name": "Saturation (%)", "default": "0", "min": "-100", "max": "100", "pos": "11" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "12", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "bool", "name": "Preview Grain Alone", "default": "0", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/08/02." }
      ]
    },
    {
      "name": "Blur [Angular]", "lang": "en", "command": "fx_blur_angular", "command_preview": "fx_blur_angular_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Blurs the image rotationally around a center. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude (%)", "default": "2", "min": "0", "max": "20", "pos": "1" },
      { "type": "point", "name": "Center (%)", "position": "50,50", "pos": "2" },
      { "type": "float", "name": "Sharpness", "default": "0", "min": "0", "max": "500", "pos": "4" },
      { "type": "bool", "name": "Preview Guides", "default": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "7", "pos": "6", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "choice", "name": "Value Action", "default": "0", "pos": "7", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2015/01/16." }
      ]
    },
    {
      "name": "Blur [Bloom Glare]", "lang": "en", "command": "fx_blur_bloom_glare", "command_preview": "fx_blur_bloom_glare_preview", "parameters": [
      { "type": "float", "name": "Amplitude", "default": "1", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "Ratio", "default": "2", "min": "0", "max": "10", "pos": "2" },
      { "type": "int", "name": "Iterations", "default": "5", "min": "0", "max": "200", "pos": "3" },
      { "type": "choice", "name": "Operator", "default": "0", "pos": "4", "choices": { "0": "Add", "1": "Max", "2": "Min" } },
      { "type": "choice", "name": "Kernel", "default": "0", "pos": "5", "choices": { "0": "Quasi-gaussian", "1": "Gaussian", "2": "Box", "3": "Triangle", "4": "Quadratic" } },
      { "type": "bool", "name": "Normalize Scales", "default": "0", "pos": "6" },
      { "type": "bool", "name": "Anisotropy", "default": "0", "pos": "7" },
      { "type": "float", "name": "Angle", "default": "0", "min": "0", "max": "180", "pos": "8" },
      { "type": "int", "name": "Axis", "default": "3", "min": "1", "max": "20", "pos": "9" },
      { "type": "float", "name": "Opacity", "default": "0.5", "min": "0", "max": "1", "pos": "10" },
      { "type": "note", "text": "Parameters Angle, Axis and Opacity are only active when Anisotropy is checked" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "7", "pos": "11", "choices": { "0": "All", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "Linear RGB [all]", "8": "Linear RGB [red]", "9": "Linear RGB [green]", "10": "Linear RGB [blue]", "11": "YCbCr [luminance]", "12": "YCbCr [blue-red chrominances]", "13": "YCbCr [blue chrominance]", "14": "YCbCr [red chrominance]", "15": "YCbCr [green chrominance]", "16": "Lab [lightness]", "17": "Lab [ab-chrominances]", "18": "Lab [a-chrominance]", "19": "Lab [b-chrominance]", "20": "Lch [ch-chrominances]", "21": "Lch [c-chrominance]", "22": "Lch [h-chrominance]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [intensity]", "27": "HSL [lightness]", "28": "CMYK [cyan]", "29": "CMYK [magenta]", "30": "CMYK [yellow]", "31": "CMYK [key]", "32": "YIQ [luma]", "33": "YIQ [chromas]" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "12", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right" } },
      { "type": "separator", "visibility": "2" },
      { "type": "note", "text": "Authors: <a href=\"https://goo.gl/Ryf7Cv\">David Tschumperlé</a>.      Latest update: 2015/03/02." }
      ]
    },
    {
      "name": "Blur [Bloom]", "lang": "en", "command": "fx_blur_bloom", "command_preview": "fx_blur_bloom", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Creates a soft, glowing light effect. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "1", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "Ratio", "default": "2", "min": "0", "max": "5", "pos": "2" },
      { "type": "int", "name": "Iterations", "default": "5", "min": "0", "max": "100", "pos": "3" },
      { "type": "choice", "name": "Operator", "default": "0", "pos": "4", "choices": { "0": "Add", "1": "Max", "2": "Min" } },
      { "type": "choice", "name": "Kernel", "default": "1", "pos": "5", "choices": { "0": "Deriche", "1": "Gaussian", "2": "Box", "3": "Triangle", "4": "Quadratic" } },
      { "type": "bool", "name": "Normalize Scales", "default": "0", "pos": "6" },
      { "type": "float", "name": "Anisotropy", "default": "0", "min": "0", "max": "1", "pos": "7" },
      { "type": "float", "name": "Angle", "default": "0", "min": "-180", "max": "180", "pos": "8" },
      { "type": "note", "text": "Parameter Angle is only active when Anisotropy&gt;0" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "7", "pos": "9", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2015/03/02." }
      ]
    },
    {
      "name": "Blur [Depth-of-Field]", "lang": "en", "command": "fx_blur_dof", "command_preview": "fx_blur_dof_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simulates camera depth of field blurring. " },
      { "type": "separator" },
      { "type": "float", "name": "Blur Amplitude", "default": "3", "min": "0", "max": "20", "pos": "1" },
      { "type": "int", "name": "Blur Precision", "default": "16", "min": "2", "max": "64", "pos": "2" },
      { "type": "choice", "name": "Depth-of-Field Type", "default": "0", "pos": "3", "choices": { "0": "Gaussian", "1": "User-Defined (Bottom Layer)" } },
      { "type": "bool", "name": "Invert Blur", "default": "0", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Gaussian depth-of-field:" },
      { "type": "point", "name": "Center (%)", "position": "50,50", "pos": "5" },
      { "type": "float", "name": "First Radius", "default": "30", "min": "0", "max": "200", "pos": "7" },
      { "type": "float", "name": "Second Radius", "default": "30", "min": "0", "max": "200", "pos": "8" },
      { "type": "float", "name": "Angle", "default": "0", "min": "0", "max": "180", "pos": "9" },
      { "type": "float", "name": "Sharpness", "default": "1", "min": "0", "max": "8", "pos": "10" },
      { "type": "bool", "name": "Preview Guides", "default": "1", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "User-defined depth-of-field:" },
      { "type": "float", "name": "Gamma", "default": "0", "min": "-2", "max": "2", "pos": "12" },
      { "type": "note", "text": "You can specify your own depth-of-field image, as a bottom layer image whose luminance encodes the depth for each pixel. Don't forget to modify the Input layers combo-box to make this layer active for the filter." },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2014/02/25." }
      ]
    },
    {
      "name": "Blur [Gaussian]", "lang": "en", "command": "fx_blur_gaussian", "command_preview": "fx_blur_gaussian", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Applies a standard Gaussian blur. " },
      { "type": "separator" },
      { "type": "float", "name": "XY-Amplitude (%)", "default": "3", "min": "0", "max": "50", "pos": "1" },
      { "type": "float", "name": "X-Amplitude (%)", "default": "0", "min": "0", "max": "50", "pos": "2" },
      { "type": "float", "name": "Y-Amplitude (%)", "default": "0", "min": "0", "max": "50", "pos": "3" },
      { "type": "choice", "name": "Boundary", "default": "3", "pos": "4", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "7", "pos": "5", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "choice", "name": "Value Action", "default": "0", "pos": "6", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Blur [Glow]", "lang": "en", "command": "fx_glow", "command_preview": "fx_glow", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds a luminous glow blur. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "6", "min": "0", "max": "20", "pos": "1" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "7", "pos": "2", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "choice", "name": "Value Action", "default": "0", "pos": "3", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Blur [Linear]", "lang": "en", "command": "fx_blur_linear", "command_preview": "fx_blur_linear", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Applies a directional linear blur. " },
      { "type": "separator" },
      { "type": "float", "name": "Tangent Radius (%)", "default": "10", "min": "0", "max": "25", "pos": "1" },
      { "type": "float", "name": "Orthogonal Radius (%)", "default": "0.5", "min": "0", "max": "25", "pos": "2" },
      { "type": "float", "name": "Angle", "default": "0", "min": "0", "max": "180", "pos": "3" },
      { "type": "float", "name": "Sharpness", "default": "0", "min": "0", "max": "500", "pos": "4" },
      { "type": "choice", "name": "Boundary", "default": "2", "pos": "5", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "7", "pos": "6", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "choice", "name": "Value Action", "default": "0", "pos": "7", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Blur [Motion]", "lang": "en", "command": "fx_blur_motion", "command_preview": "fx_blur_motion_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simulates motion blur. " },
      { "type": "separator" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "1", "choices": { "0": "Average", "1": "Max (Slower)" } },
      { "type": "float", "name": "Strength", "default": "1", "min": "0", "max": "5", "pos": "2" },
      { "type": "separator" },
      { "type": "choice", "name": "Control Points", "default": "2", "pos": "3", "choices": { "0": "3", "1": "4", "2": "5" } },
      { "type": "value", "value": "-1", "pos": "4" },
      { "type": "point", "name": "Point0", "position": "50,50", "pos": "5", "visibility": "0" },
      { "type": "point", "name": "Point1", "position": "50,50", "pos": "7", "visibility": "0" },
      { "type": "point", "name": "Point2", "position": "50,50", "pos": "9", "visibility": "0" },
      { "type": "point", "name": "Point3", "position": "50,50", "pos": "11", "visibility": "0" },
      { "type": "point", "name": "Point4", "position": "50,50", "pos": "13", "visibility": "0" },
      { "type": "bool", "name": "Centering", "default": "1", "pos": "15" },
      { "type": "float", "name": "Weight Decay (%)", "default": "75", "min": "0", "max": "100", "pos": "16" },
      { "type": "int", "name": "Subsampling", "default": "0", "min": "0", "max": "20", "pos": "17" },
      { "type": "note", "text": "Set Subsampling to 0 to disable subsampling." },
      { "type": "separator" },
      { "type": "choice", "name": "Boundary", "default": "3", "pos": "18", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2024/04/02." }
      ]
    },
    {
      "name": "Blur [Multidirectional]", "lang": "en", "command": "fx_blur_multidirectional", "command_preview": "fx_blur_multidirectional", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Blurs in multiple directions simultaneously. " },
      { "type": "separator" },
      { "type": "int", "name": "Number of Orientations", "default": "5", "min": "1", "max": "16", "pos": "1" },
      { "type": "float", "name": "Reference Angle (deg.)", "default": "0", "min": "0", "max": "360", "pos": "2" },
      { "type": "float", "name": "Angle Range (deg.)", "default": "360", "min": "0", "max": "360", "pos": "3" },
      { "type": "separator" },
      { "type": "float", "name": "Smoothness", "default": "150", "min": "0", "max": "1024", "pos": "4" },
      { "type": "choice", "name": "Kernel type", "default": "0", "pos": "5", "choices": { "0": "Mono-Directional", "1": "Bi-Directional" } },
      { "type": "choice", "name": "Boundary", "default": "1", "pos": "6", "choices": { "0": "Dirichlet", "1": "Neumann", "2": "Periodic", "3": "Mirror" } },
      { "type": "float", "name": "Sharpness", "default": "0", "min": "0", "max": "1000", "pos": "7" },
      { "type": "choice", "name": "Blend Mode", "default": "2", "pos": "8", "choices": { "0": "Min", "1": "Max", "2": "Average", "3": "Edges-0.5 (beware: memory-consuming!)", "4": "Edges-1 (beware: memory-consuming!)", "5": "Edges-2 (beware: memory-consuming!)", "6": "Median (beware: memory-consuming!)" } },
      { "type": "float", "name": "Boost Contrast", "default": "2", "min": "0", "max": "32", "pos": "9" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "7", "pos": "10", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2020/09/11." }
      ]
    },
    {
      "name": "Blur [Radial]", "lang": "en", "command": "fx_blur_radial", "command_preview": "fx_blur_radial_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Blurs radially from a center point (zoom blur). " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "3", "min": "0", "max": "20", "pos": "1" },
      { "type": "point", "name": "Center (%)", "position": "50,50", "pos": "2" },
      { "type": "float", "name": "Sharpness", "default": "0", "min": "0", "max": "500", "pos": "4" },
      { "type": "bool", "name": "Preview Guides", "default": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "7", "pos": "6", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "choice", "name": "Value Action", "default": "0", "pos": "7", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2015/01/16." }
      ]
    },
    {
      "name": "Bomb Blend", "lang": "en", "command": "fx_blend_bomb", "command_preview": "fx_blend_bomb_preview", "parameters": [
      { "type": "note", "text": "Creates a random transfer function 'mesh' and then blends images accordingly. Based on method shown <a href=\"https://discuss.pixls.us/t/im-generating-new-blending-modes-for-krita/8104/16\">on discuss.pixls.us</a>." },
      { "type": "button", "name": "Recompute", "alignment": "0", "pos": "1" },
      { "type": "choice", "name": "Process As", "default": "1", "pos": "2", "choices": { "0": "Two-by-two", "1": "Self-blend for each layer" } },
      { "type": "int", "name": "Mesh X", "default": "16", "min": "1", "max": "256", "pos": "3", "visibility": "0" },
      { "type": "int", "name": "Mesh Y", "default": "16", "min": "1", "max": "256", "pos": "4" },
      { "type": "float", "name": "Mesh Smoothness", "default": "2", "min": "0", "max": "10", "pos": "5" },
      { "type": "choice", "name": "Contrast Scheme", "default": "0", "pos": "6", "choices": { "0": "Arctan", "1": "Clip", "2": "Power" } },
      { "type": "float", "name": "Mesh Contrast", "default": "50", "min": "0", "max": "100", "pos": "7" },
      { "type": "bool", "name": "Reverse Blending Layers", "default": "0", "pos": "8" },
      { "type": "choice", "name": "Dimensions", "default": "0", "pos": "9", "choices": { "0": "Bottom layer", "1": "Top layer" } },
      { "type": "bool", "name": "Alpha", "default": "0", "pos": "10" },
      { "type": "bool", "name": "Normalise", "default": "0", "pos": "11" },
      { "type": "bool", "name": "Output Mesh", "default": "0", "pos": "12" }
      ]
    },
    {
      "name": "Broken Texture_Afre", "lang": "en", "command": "fx_texture_afre_broken", "command_preview": "fx_texture_afre_broken_preview", "parameters": [
      { "type": "note", "text": "This shouldn't have happened." },
      { "type": "separator" },
      { "type": "float", "name": "P1", "default": "1", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "P2", "default": "10", "min": "0", "max": "100", "pos": "2" },
      { "type": "bool", "name": "Difference", "default": "0", "pos": "3" }
      ]
    },
    {
      "name": "Butterworth Bandpass", "lang": "en", "command": "fx_butterworth_bp", "command_preview": "fx_butterworth_bp_preview", "parameters": [
      { "type": "note", "text": "Lowpass and highpass zero-phase resonant Butterworth-style filters." },
      { "type": "separator" },
      { "type": "float", "name": "LP Frequency Power", "default": "3", "min": "0", "max": "16", "pos": "1" },
      { "type": "float", "name": "LP Order Cube Root", "default": "2", "min": "0", "max": "4", "pos": "2" },
      { "type": "float", "name": "LP Resonance", "default": "0", "min": "0", "max": "5", "pos": "3" },
      { "type": "float", "name": "HP Frequency Power", "default": "4", "min": "0", "max": "16", "pos": "4" },
      { "type": "float", "name": "HP Order Cube Root", "default": "2", "min": "0", "max": "4", "pos": "5" },
      { "type": "float", "name": "HP Resonance", "default": "0", "min": "0", "max": "5", "pos": "6" },
      { "type": "choice", "name": "Colour Space", "default": "0", "pos": "7", "choices": { "0": "RGB", "1": "sRGB", "2": "CMY", "3": "RYB", "4": "Ohta8", "5": "Ohta", "6": "YES8", "7": "YES", "8": "Kodak 1-8", "9": "Kodak1", "10": "Lab8", "11": "Lab", "12": "Oklab", "13": "LUV", "14": "Jzazbz", "15": "YIQ8", "16": "YIQ", "17": "YUV8", "18": "YUV", "19": "YCbCr", "20": "YCbCrGLIC", "21": "YCbCrJPEG", "22": "YDbDr", "23": "XYZ8", "24": "XYZ", "25": "HSV8", "26": "HSV", "27": "HSL8", "28": "HSL", "29": "HSI8", "30": "HSI", "31": "LCH8", "32": "LCH", "33": "JzCzHz", "34": "HCY" } },
      { "type": "bool", "name": "Alpha", "default": "0", "pos": "8" },
      { "type": "bool", "name": "Absolute", "default": "1", "pos": "9" },
      { "type": "bool", "name": "Makeup Gain", "default": "1", "pos": "10" },
      { "type": "bool", "name": "Preview Frequency Response", "default": "0", "pos": "11" }
      ]
    },
    {
      "name": "Cascading Self Glitching", "lang": "en", "command": "fx_self_glitching_cascade", "command_preview": "fx_self_glitching_cascade_preview", "parameters": [
      { "type": "note", "text": "Shifts images in a cascading fashion but computes values based on shifted and original images." },
      { "type": "note", "text": "This filter has many channel options and many operation options allowing for extremely-distorted images. Don't always trust the preview!" },
      { "type": "separator" },
      { "type": "choice", "name": "1. Shift Channels", "default": "0", "pos": "1", "choices": { "0": "RGB/sRGB", "1": "CMYK/CMY", "2": "HSV/HSV8", "3": "HSL/HSL8", "4": "HSI/HSI8", "5": "LCH/LCH8", "6": "Lab/Lab8", "7": "YCbCr/YCbCrGLIC", "8": "YIQ/YIQ8", "9": "YUV/YUV8", "10": "RYB/HCY", "11": "XYZ/XYZ8" } },
      { "type": "bool", "name": "2. Alt Choice", "default": "0", "pos": "2" },
      { "type": "bool", "name": "3. Process Alpha", "default": "0", "pos": "3" },
      { "type": "point", "name": "4,5. Zeroth Shift", "position": "50,50", "pos": "4" },
      { "type": "choice", "name": "6. Boundary", "default": "3", "pos": "6", "choices": { "0": "Zero", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "separator" },
      { "type": "int", "name": "7. Iterations", "default": "3", "min": "1", "max": "64", "pos": "7" },
      { "type": "bool", "name": "8. Repeat Post-Shift Operations", "default": "1", "pos": "8" },
      { "type": "separator" },
      { "type": "point", "name": "9,10. Shift Target", "position": "55,55", "pos": "9" },
      { "type": "bool", "name": "11. Target for Final (Rather than First) Shift", "default": "0", "pos": "11" },
      { "type": "point", "name": "12,13. Cascade Centre Point", "position": "45,45", "pos": "12" },
      { "type": "float", "name": "14. Shift Randomness", "default": "0.75", "min": "0", "max": "4", "pos": "14" },
      { "type": "choice", "name": "15. Boundary", "default": "3", "pos": "15", "choices": { "0": "Zero", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "float", "name": "16. Power", "default": "0", "min": "-5", "max": "5", "pos": "16" },
      { "type": "float", "name": "17. Bias", "default": "0", "min": "-256", "max": "256", "pos": "17" },
      { "type": "bool", "name": "18. Negation", "default": "0", "pos": "18" },
      { "type": "choice", "name": "19. Shift Operator", "default": "0", "pos": "19", "choices": { "0": "Add", "1": "Multiply", "2": "Bitwise And", "3": "Bitwise Or", "4": "Bitwise Xor", "5": "Power", "6": "Reverse Power", "7": "Modulo", "8": "Reverse Modulo", "9": "Divide", "10": "Reverse Divide", "11": "Subtract", "12": "Reverse Subtract", "13": "Left Bitwise Shift", "14": "Reverse LBS", "15": "Right Bitwise Shift", "16": "Reverse RBS", "17": "Left Bitwise Rotation", "18": "Reverse LBR", "19": "Right Bitwise Rotation", "20": "Reverse RBR", "21": "Average", "22": "Round", "23": "Reverse Round", "24": "Sine", "25": "Reverse Sine", "26": "Cosine", "27": "Reverse Cosine", "28": "Tangent", "29": "Reverse Tangent (CPU-intensive)", "30": "Cosecant", "31": "Reverse Cosecant", "32": "Secant", "33": "Reverse Secant", "34": "Cotangent", "35": "Reverse Cotangent", "36": "Variance", "37": "Difference", "38": "Minimum", "39": "Maximum", "40": "Interference (Add)", "41": "Reverse Interference (Add)", "42": "Interference (Multiply)", "43": "Interference (Divide)", "44": "Reverse Interference (Div)", "45": "Interference (Subtract)", "46": "Reverse Interference (Subt)", "47": "Interference (Rev Subt)", "48": "Reverse Interference (Rev Subt)", "49": "Interference (Difference)", "50": "Reverse Interference (Diff)", "51": "Interference (Variance)", "52": "Screen", "53": "Colour Dodge", "54": "Reverse Colour Dodge", "55": "Colour Burn", "56": "Reverse Colour Burn", "57": "Soft Light (illusions.hu)", "58": "Reverse Soft Light (illusions.hu)", "59": "Geometric Mean", "60": "Bright Hard Mix", "61": "Dark Hard Mix" } },
      { "type": "float", "name": "20. Multiplier 1", "default": "1", "min": "-10", "max": "10", "pos": "20" },
      { "type": "int", "name": "21. Addition 1", "default": "0", "min": "-1024", "max": "1024", "pos": "21" },
      { "type": "choice", "name": "22. Sawtoother Mode", "default": "0", "pos": "22", "choices": { "0": "Modulo", "1": "Triangular-Modulo", "2": "Legacy Modulo" } },
      { "type": "int", "name": "23. Maximum End Value", "default": "256", "min": "0", "max": "1024", "pos": "23" },
      { "type": "float", "name": "24. Multiplier 2", "default": "1", "min": "-10", "max": "10", "pos": "24" },
      { "type": "int", "name": "25. Addition 2", "default": "0", "min": "-1024", "max": "1024", "pos": "25" },
      { "type": "separator" },
      { "type": "choice", "name": "26. Run on channel(s)", "default": "0", "pos": "26", "choices": { "0": "All", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "Linear RGB [all]", "8": "Linear RGB [red]", "9": "Linear RGB [green]", "10": "Linear RGB [blue]", "11": "YCbCr [luminance]", "12": "YCbCr [blue-red chrominances]", "13": "YCbCr [blue chrominance]", "14": "YCbCr [red chrominance]", "15": "YCbCr [green chrominance]", "16": "Lab [lightness]", "17": "Lab [ab-chrominances]", "18": "Lab [a-chrominance]", "19": "Lab [b-chrominance]", "20": "Lch [ch-chrominances]", "21": "Lch [c-chrominance]", "22": "Lch [h-chrominance]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [intensity]", "27": "HSL [lightness]", "28": "CMYK [cyan]", "29": "CMYK [magenta]", "30": "CMYK [yellow]", "31": "CMYK [key]", "32": "YIQ [luma]", "33": "YIQ [chromas]" } },
      { "type": "separator" },
      { "type": "note", "text": "Original author: <a href=\"https://goo.gl/Ryf7Cv\">David Tschumperlé</a>; extended by some nobody who calls themselves 'Joan Rake' or something.<p>Latest update: 2018/08/24." }
      ]
    },
    {
      "name": "Chromatic Aberrations", "lang": "en", "command": "fx_chromatic_aberrations", "command_preview": "fx_chromatic_aberrations", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simulates lens color fringing artifacts. " },
      { "type": "separator" },
      { "type": "color", "name": "Primary Color", "default": "255,0,0", "pos": "1" },
      { "type": "choice", "name": "Deformation Type", "default": "0", "pos": "4", "choices": { "0": "Shift", "1": "Radial", "2": "Angular", "3": "Random" } },
      { "type": "float", "name": "X-Amplitude", "default": "2", "min": "-32", "max": "32", "pos": "5" },
      { "type": "float", "name": "Y-Amplitude", "default": "2", "min": "-32", "max": "32", "pos": "6" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "7" },
      { "type": "float", "name": "Attenuation Near Center (%)", "default": "50", "min": "-100", "max": "100", "pos": "8" },
      { "type": "float", "name": "Attenuation Decay", "default": "1", "min": "0", "max": "8", "pos": "9" },
      { "type": "separator" },
      { "type": "color", "name": "Secondary Color", "default": "0,255,0", "pos": "10" },
      { "type": "choice", "name": "Deformation Type", "default": "0", "pos": "13", "choices": { "0": "Shift", "1": "Radial", "2": "Angular", "3": "Random" } },
      { "type": "float", "name": "X-Amplitude", "default": "0", "min": "-32", "max": "32", "pos": "14" },
      { "type": "float", "name": "Y-Amplitude", "default": "0", "min": "-32", "max": "32", "pos": "15" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "16" },
      { "type": "float", "name": "Attenuation Near Center (%)", "default": "0", "min": "-100", "max": "100", "pos": "17" },
      { "type": "float", "name": "Attenuation Decay", "default": "1", "min": "0", "max": "8", "pos": "18" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2021/08/10." }
      ]
    },
    {
      "name": "CRT Phosphors", "lang": "en", "command": "fx_crt_phosphors", "command_preview": "fx_crt_phosphors_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simulates the phosphor triad pattern of a CRT screen. " },
      { "type": "separator" },
      { "type": "choice", "name": "Phosphor Type", "default": "0", "pos": "1", "choices": { "0": "Phosphor-1", "1": "Phosphor-2", "2": "Phosphor-3" } },
      { "type": "choice", "name": "Upscale Factor", "default": "3", "pos": "2", "choices": { "0": "x1", "1": "x2", "2": "x3", "3": "x4", "4": "x5", "5": "x6", "6": "x7", "7": "x8" } },
      { "type": "choice", "name": "Rendering Precision", "default": "0", "pos": "3", "choices": { "0": "Low (Faster)", "1": "High (Slower)" } },
      { "type": "float", "name": "Smoothness (%)", "default": "0", "min": "0", "max": "10", "pos": "4" },
      { "type": "int", "name": "Neighborhood Size (px)", "default": "4", "min": "1", "max": "16", "pos": "5" },
      { "type": "float", "name": "Stride (%)", "default": "50", "min": "0", "max": "100", "pos": "6" },
      { "type": "separator" },
      { "type": "bool", "name": "Adaptive Pattern", "default": "1", "pos": "7" },
      { "type": "bool", "name": "Use Luma for Adaptive Pattern", "default": "0", "pos": "8" },
      { "type": "bool", "name": "Transpose Pattern", "default": "0", "pos": "9" },
      { "type": "bool", "name": "Average Over Pattern", "default": "0", "pos": "10" },
      { "type": "bool", "name": "Normalize Image", "default": "1", "pos": "11" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "12", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "13", "visibility": "0" },
      { "type": "float", "name": "Preview Zoom (%)", "default": "0", "min": "0", "max": "100", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2023/12/26." }
      ]
    },
    {
      "name": "CRT Scanlines", "lang": "en", "command": "fx_crt_scanlines", "command_preview": "fx_crt_scanlines_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds scanlines to mimic an old monitor. " },
      { "type": "separator" },
      { "type": "int", "name": "Upscale Factor", "default": "4", "min": "1", "max": "16", "pos": "1" },
      { "type": "int", "name": "Neighborhood size", "default": "16", "min": "8", "max": "64", "pos": "2" },
      { "type": "separator" },
      { "type": "choice", "name": "Bloom Shape", "default": "1", "pos": "3", "choices": { "0": "Square", "1": "Triangular", "2": "Sine", "3": "Gaussian" } },
      { "type": "float", "name": "Bloom Threshold", "default": "0", "min": "-1", "max": "1", "pos": "4" },
      { "type": "bool", "name": "Use Luma For Bloom", "default": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Fuzz Shape", "default": "1", "pos": "6", "choices": { "0": "Square", "1": "Triangular", "2": "Sine", "3": "Gaussian" } },
      { "type": "separator" },
      { "type": "bool", "name": "Normalize Image", "default": "0", "pos": "7" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "8", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "9", "visibility": "0" },
      { "type": "float", "name": "Preview Zoom (%)", "default": "50", "min": "0", "max": "100", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Authors: Romain Hérault and David Tschumperlé.      Latest Update: 2024/01/10." }
      ]
    },
    {
      "name": "CRT Sub-Pixels", "lang": "en", "command": "fx_gcd_crt", "command_preview": "fx_gcd_crt", "parameters": [
      { "type": "note", "text": "Cathode ray tube sub-pixel rendering filter" },
      { "type": "separator" },
      { "type": "float", "name": "Horizontal Blur", "default": "1.8", "min": "0", "max": "5", "pos": "1" },
      { "type": "float", "name": "Vertical Blur", "default": "1.8", "min": "0", "max": "5", "pos": "2" },
      { "type": "bool", "name": "Screen Border", "default": "0", "pos": "3" },
      { "type": "bool", "name": "Equalize", "default": "0", "pos": "4" },
      { "type": "separator", "visibility": "0" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2014/12/11.", "visibility": "0" }
      ]
    },
    {
      "name": "DCT FSU", "lang": "en", "command": "fx_dct_fsu", "command_preview": "fx_dct_fsu_preview", "parameters": [
      { "type": "choice", "name": "1. Operation", "default": "0", "pos": "1", "choices": { "0": "Low Pass 1", "1": "Low Pass 2", "2": "High Pass 1", "3": "High Pass 2", "4": "Isolate", "5": "Plaid", "6": "Plaid LP", "7": "Plaid HP", "8": "Randomised Spread", "9": "Randomised Spread [intense]" } },
      { "type": "float", "name": "2. X (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "3. Y (%)", "default": "50", "min": "0", "max": "100", "pos": "3" },
      { "type": "point", "name": "4-5. Shift Before", "position": "0,0", "pos": "4" },
      { "type": "point", "name": "6-7. Shift After", "position": "100,100", "pos": "6" },
      { "type": "bool", "name": "8. Absolute", "default": "0", "pos": "8" },
      { "type": "bool", "name": "9. Normalise", "default": "1", "pos": "9" },
      { "type": "choice", "name": "10. Colour Space", "default": "0", "pos": "10", "choices": { "0": "RGB", "1": "sRGB", "2": "CMY", "3": "RYB", "4": "Ohta8", "5": "Ohta", "6": "YES8", "7": "YES", "8": "Kodak 1-8", "9": "Kodak1", "10": "Lab8", "11": "Lab", "12": "Oklab", "13": "LUV", "14": "Jzazbz", "15": "YIQ8", "16": "YIQ", "17": "YUV8", "18": "YUV", "19": "YCbCr", "20": "YCbCrGLIC", "21": "YCbCrJPEG", "22": "YDbDr", "23": "XYZ8", "24": "XYZ", "25": "HSV8", "26": "HSV", "27": "HSL8", "28": "HSL", "29": "HSI8", "30": "HSI", "31": "LCH8", "32": "LCH", "33": "JzCzHz", "34": "HCY" } },
      { "type": "bool", "name": "11. Alpha", "default": "0", "pos": "11" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "12", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "13" }
      ]
    },
    {
      "name": "Deteriorated Areas", "lang": "en", "command": "samj_Zones_Grises", "command_preview": "samj_Zones_Grises", "parameters": [
      { "type": "note", "text": "samj_Zones_Grises / Deteriorated Areas" },
      { "type": "note", "text": "<span foreground=\"orangered\">Contours</span>" },
      { "type": "int", "name": "Itérations", "default": "3", "min": "1", "max": "10", "pos": "1" },
      { "type": "choice", "name": "Type", "default": "0", "pos": "2", "choices": { "0": "A", "1": "B", "2": "C" } },
      { "type": "float", "name": "Variations", "default": "3", "min": "1", "max": "10", "pos": "3" },
      { "type": "note", "text": "<span foreground=\"orangered\">Blend</span>" },
      { "type": "int", "name": "Itérations", "default": "4", "min": "1", "max": "8", "pos": "4" },
      { "type": "float", "name": "Opacité / Opacity", "default": "1", "min": "0", "max": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "samj      Dernière mise à jour : 2015/04/04." }
      ]
    },
    {
      "name": "Dirty", "lang": "en", "command": "fx_dirty", "command_preview": "fx_dirty", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds dirt and grunge patches to the image. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "30", "min": "0", "max": "100", "pos": "1" },
      { "type": "bool", "name": "Monochrome", "default": "1", "pos": "2" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "3", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "choice", "name": "Value Action", "default": "0", "pos": "4", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2014/11/24." }
      ]
    },
    {
      "name": "Ellipses Inpaint", "lang": "en", "command": "samj_Ellipses_Inpaint", "command_preview": "samj_Ellipses_Inpaint", "parameters": [
      { "type": "note", "text": "samj_Ellipses_Inpaint" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Limite</span>" },
      { "type": "color", "name": "Couleur Limite", "default": "0,0,0", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Ellipse</span>" },
      { "type": "int", "name": "Rayon L", "default": "8", "min": "1", "max": "32", "pos": "4" },
      { "type": "int", "name": "Rayon H", "default": "8", "min": "1", "max": "32", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Limite</span>" },
      { "type": "choice", "name": "Rendu", "default": "2", "pos": "6", "choices": { "0": "A", "1": "Inverser", "2": "A + Inverser" } },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Random Dégradation</span>" },
      { "type": "bool", "name": "Dégradation", "default": "0", "pos": "7" },
      { "type": "int", "name": "Sponge", "default": "10", "min": "1", "max": "16", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Fake JFIF (JPEG) Encoder", "lang": "en", "command": "fx_jfif_fake", "command_preview": "fx_jfif_fake_preview", "parameters": [
      { "type": "note", "text": "A fake jfif encoder." },
      { "type": "int", "name": "Quality (%)", "default": "50", "min": "1", "max": "100", "pos": "1" },
      { "type": "choice", "name": "Encoding", "default": "444", "pos": "2", "choices": { "0": "442", "1": "424", "2": "422" } },
      { "type": "separator" },
      { "type": "note", "text": "Fake Glitch" },
      { "type": "float", "name": "Power", "default": "0", "min": "0", "max": "5", "pos": "3" },
      { "type": "float", "name": "Colour Distortion", "default": "1.25", "min": "0", "max": "10", "pos": "4" },
      { "type": "int", "name": "Max Tile Error Length", "default": "5", "min": "1", "max": "10", "pos": "5" },
      { "type": "float", "name": "Persistent Tile Error Power", "default": "0.25", "min": "0", "max": "1", "pos": "6" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "7", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Joan Rake, 'borrowed' from <a href=\"https://goo.gl/Ryf7Cv\">David Tschumperlé</a>.      Latest Update: 2017/05/07." }
      ]
    },
    {
      "name": "Faux-QAM Glitch", "lang": "en", "command": "fx_qam_glitch", "command_preview": "fx_qam_glitch_preview", "parameters": [
      { "type": "note", "text": "Tries to emulate the effect of a faulty Quadrature Amplitude Modulator." },
      { "type": "separator" },
      { "type": "note", "text": "Channel Modulation" },
      { "type": "float", "name": "1. Amplitude", "default": "2", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "2. Period", "default": "20", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "3. Phase Offset", "default": "0", "min": "-180", "max": "180", "pos": "3" },
      { "type": "float", "name": "4. Angle", "default": "0", "min": "-180", "max": "180", "pos": "4" },
      { "type": "float", "name": "5. Amplitude Offset", "default": "1", "min": "-10", "max": "10", "pos": "5" },
      { "type": "float", "name": "6. Wave Offset", "default": "127.5", "min": "0", "max": "255", "pos": "6" },
      { "type": "choice", "name": "7. Colour Space", "default": "0", "pos": "7", "choices": { "0": "RGBA", "1": "sRGBA", "2": "HSVA8", "3": "HSVA", "4": "HSLA8", "5": "HSLA", "6": "HSIA8", "7": "HSIA", "8": "LCHA8", "9": "LCHA", "10": "LabA8", "11": "LabA", "12": "YCbCrA", "13": "YCbCrAGLIC", "14": "YCbCrAJPEG", "15": "YIQA8", "16": "YIQA", "17": "YUVA8", "18": "YUVA", "19": "HCYA", "20": "XYZA8", "21": "XYZA", "22": "RYBA", "23": "CMYA" } },
      { "type": "bool", "name": "8. Channel 0", "default": "1", "pos": "8" },
      { "type": "bool", "name": "9. Channel 1", "default": "1", "pos": "9" },
      { "type": "bool", "name": "10. Channel 2", "default": "1", "pos": "10" },
      { "type": "bool", "name": "11. Alpha", "default": "0", "pos": "11" },
      { "type": "bool", "name": "12. Glitch Negation", "default": "0", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "Scanlines" },
      { "type": "float", "name": "13. Amplitude", "default": "20", "min": "0", "max": "255", "pos": "13" },
      { "type": "float", "name": "14. Bandwidth", "default": "5", "min": "0", "max": "20", "pos": "14" },
      { "type": "choice", "name": "15. Shape", "default": "0", "pos": "15", "choices": { "0": "Bloc", "1": "Triangle", "2": "Sine", "3": "Sine+", "4": "Random" } },
      { "type": "float", "name": "16. Angle Offset", "default": "0", "min": "-180", "max": "180", "pos": "16" },
      { "type": "float", "name": "17. Offset", "default": "0", "min": "0", "max": "500", "pos": "17" },
      { "type": "float", "name": "18. Blur", "default": "2", "min": "0", "max": "10", "pos": "18" },
      { "type": "float", "name": "19. Amplitude Modulation", "default": "0.6", "min": "0", "max": "1", "pos": "19" },
      { "type": "float", "name": "20. Phase Modulation", "default": "0.05", "min": "0", "max": "1", "pos": "20" },
      { "type": "separator" },
      { "type": "choice", "name": "21-23. Preview type", "default": "0", "pos": "21", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "22" }
      ]
    },
    {
      "name": "Flip & Rotate Blocks", "lang": "en", "command": "fx_flip_blocks", "command_preview": "fx_flip_blocks", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Randomly flips and rotates small blocks of the image. " },
      { "type": "separator" },
      { "type": "int", "name": "X-Size (px)", "default": "4", "min": "1", "max": "128", "pos": "1" },
      { "type": "int", "name": "Y-Size (px)", "default": "4", "min": "1", "max": "128", "pos": "2" },
      { "type": "choice", "name": "Flip", "default": "3", "pos": "3", "choices": { "0": "None", "1": "X-axis", "2": "Y-axis", "3": "XY-axes" } },
      { "type": "choice", "name": "Rotate", "default": "1", "pos": "4", "choices": { "0": "-90 deg.", "1": "0 deg.", "2": "90 deg." } },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "5", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/09/01." }
      ]
    },
    {
      "name": "Huffman Glitches", "lang": "en", "command": "fx_huffman_glitches", "command_preview": "fx_huffman_glitches_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simulates data corruption (glitch art) based on Huffman coding. " },
      { "type": "separator" },
      { "type": "float", "name": "Noise Level (%)", "default": "30", "min": "0", "max": "100", "pos": "1" },
      { "type": "choice", "name": "Split Mode", "default": "0", "pos": "2", "choices": { "0": "None", "1": "Horizontal Blocks", "2": "Vertical Blocks", "3": "Patches" } },
      { "type": "int", "name": "Block Size (%)", "default": "25", "min": "0", "max": "100", "pos": "3", "visibility": "1" },
      { "type": "float", "name": "Patch Overlap (%)", "default": "0", "min": "0", "max": "50", "pos": "4", "visibility": "1" },
      { "type": "choice", "name": "Color Space", "default": "0", "pos": "5", "choices": { "0": "RGB", "1": "CMYK", "2": "HCY", "3": "HSI", "4": "HSL", "5": "HSV", "6": "Jzazbz", "7": "Lab", "8": "Lch", "9": "OKLab", "10": "YCbCr", "11": "YIQ" } },
      { "type": "int", "name": "Quantization", "default": "0", "min": "0", "max": "64", "pos": "6" },
      { "type": "note", "text": "(Set to 0 to turn quantization off)" },
      { "type": "separator" },
      { "type": "int", "name": "Random Seed", "default": "0", "min": "0", "max": "65536", "pos": "7" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "8", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "9", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Beware:</span>\n\n- The preview does not perfectly reflect what the resulting image will be. It just gives an idea on the kind of effects the filter produces with the specified parameters.\n\n- The filter is slow to compute on large images." },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2023/04/26." }
      ]
    },
    {
      "name": "Image Segments Degrades", "lang": "en", "command": "samj_Image_Segments_Degrades", "command_preview": "samj_Image_Segments_Degrades", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Ce filtre est très lent - This filter is very slow" },
      { "type": "separator" },
      { "type": "note", "text": "Mettre au moins 2000 pour avoir des résultats intéressants." },
      { "type": "note", "text": "Configure 2000 to have interesting results." },
      { "type": "int", "name": "1 - Densité/Density", "default": "2000", "min": "1", "max": "33333", "pos": "1" },
      { "type": "separator" },
      { "type": "float", "name": "2 - Variation", "default": "5", "min": "1", "max": "100", "pos": "2" },
      { "type": "int", "name": "3 - Dilate", "default": "1", "min": "1", "max": "5", "pos": "3" },
      { "type": "bool", "name": "4 - Fond/Background", "default": "0", "pos": "4" },
      { "type": "color", "name": "5 6 7 8 - Fond/Background", "default": "0,0,0,255", "pos": "5" },
      { "type": "int", "name": "9 - Graine/Seed", "default": "1234", "min": "0", "max": "65536", "pos": "9" },
      { "type": "int", "name": "10 - Deformation", "default": "0", "min": "0", "max": "10", "pos": "10" },
      { "type": "choice", "name": "11 - X", "default": "0", "pos": "11", "choices": { "0": "Sans/Without", "1": "X" } },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2022/09/06." }
      ]
    },
    {
      "name": "Image Vers Segments", "lang": "en", "command": "samj_Image_Vers_Segments", "command_preview": "samj_Image_Vers_Segments", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Ce filtre est très lent - This filter is very slow" },
      { "type": "separator" },
      { "type": "note", "text": "Mettre au moins 15000 pour avoir des résultats intéressants." },
      { "type": "note", "text": "Configure 15000 to have interesting results.", "visibility": "0" },
      { "type": "int", "name": "1 - Densité/Density", "default": "1500", "min": "1", "max": "33333", "pos": "1", "visibility": "0" },
      { "type": "separator", "visibility": "0" },
      { "type": "note", "text": "Si le paramètre 2 est à 0 tracé des segments sur toute l'image pour faire un cadre par exemple.", "visibility": "0" },
      { "type": "note", "text": "If parameter 2 is 0 drawn segments over the entire image to make a frame for example." },
      { "type": "float", "name": "2 - Variation", "default": "5", "min": "0", "max": "100", "pos": "2" },
      { "type": "separator" },
      { "type": "int", "name": "3 - Dilate", "default": "1", "min": "1", "max": "5", "pos": "3" },
      { "type": "bool", "name": "4 - Fond/Background", "default": "0", "pos": "4" },
      { "type": "color", "name": "5 6 7 8 - Fond/Background", "default": "0,0,0,255", "pos": "5" },
      { "type": "int", "name": "9 - Graine/Seed", "default": "1234", "min": "0", "max": "65536", "pos": "9" },
      { "type": "int", "name": "10 - Deformation", "default": "0", "min": "0", "max": "10", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2022/08/26." }
      ]
    },
    {
      "name": "JFIF [JPEG] Self-Bomb", "lang": "en", "command": "fx_jfif_bomb", "command_preview": "fx_jfif_bomb_preview", "parameters": [
      { "type": "note", "text": "OI! TRY SMOOTHING THIS!" },
      { "type": "note", "text": "Adds JPEG artefacts and then self-bomb-blends. Use grid interpolation with scale factors above 1 to destroy the results even more." },
      { "type": "button", "name": "Recompute", "alignment": "0", "pos": "1" },
      { "type": "separator" },
      { "type": "int", "name": "Quality (%)", "default": "50", "min": "1", "max": "100", "pos": "2" },
      { "type": "int", "name": "Mesh X", "default": "16", "min": "1", "max": "256", "pos": "3" },
      { "type": "int", "name": "Mesh Y", "default": "16", "min": "1", "max": "256", "pos": "4" },
      { "type": "float", "name": "Mesh Smoothness", "default": "0.5", "min": "0", "max": "10", "pos": "5" },
      { "type": "choice", "name": "Contrast Scheme", "default": "1", "pos": "6", "choices": { "0": "Arctan", "1": "Clip", "2": "Power" } },
      { "type": "float", "name": "Mesh Contrast", "default": "75", "min": "0", "max": "100", "pos": "7" },
      { "type": "float", "name": "Scale X", "default": "1", "min": "0.05", "max": "16", "pos": "8" },
      { "type": "float", "name": "Scale Y", "default": "1", "min": "0.05", "max": "16", "pos": "9" },
      { "type": "choice", "name": "Interpolation", "default": "0", "pos": "10", "choices": { "0": "None", "1": "Nearest", "2": "Average", "3": "Bilinear", "4": "Grid", "5": "Bicubic" } },
      { "type": "bool", "name": "Normalize", "default": "0", "pos": "11" },
      { "type": "bool", "name": "Output Mesh", "default": "0", "pos": "12" },
      { "type": "separator" },
      { "type": "bool", "name": "Solidify Alpha", "default": "1", "pos": "13" },
      { "type": "float", "name": "Smoothness (%)", "default": "75", "min": "0", "max": "100", "pos": "14" },
      { "type": "choice", "name": "Regularization", "default": "1", "pos": "15", "choices": { "0": "Isotropic", "1": "Delaunay-oriented", "2": "Edge-oriented" } },
      { "type": "int", "name": "Regularization Iterations", "default": "20", "min": "0", "max": "100", "pos": "16" },
      { "type": "int", "name": "Dilation / Erosion", "default": "0", "min": "-20", "max": "20", "pos": "17" },
      { "type": "choice", "name": "Colorspace", "default": "1", "pos": "18", "choices": { "0": "sRGB", "1": "Linear RGB" } }
      ]
    },
    {
      "name": "JFIF Effects", "lang": "en", "command": "fx_jfif", "command_preview": "fx_jfif_preview", "parameters": [
      { "type": "note", "text": "A poorly-implemented JFIF encoder with extras, all designed to screw with images. Quite slow and very aggressive." },
      { "type": "int", "name": "1. Quality (%)", "default": "50", "min": "1", "max": "100", "pos": "1" },
      { "type": "choice", "name": "2. Encoding", "default": "3", "pos": "2", "choices": { "0": "444", "1": "442", "2": "424", "3": "422" } },
      { "type": "separator" },
      { "type": "note", "text": "Fake Glitch" },
      { "type": "float", "name": "3. Power", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "float", "name": "4. Colour Distortion", "default": "1", "min": "0", "max": "2", "pos": "4" },
      { "type": "int", "name": "5. Max Glitch Length", "default": "5", "min": "2", "max": "10", "pos": "5" },
      { "type": "int", "name": "6. Max Value Errors Per Tile", "default": "5", "min": "0", "max": "10", "pos": "6" },
      { "type": "float", "name": "7. Error Strength", "default": "3", "min": "0", "max": "8", "pos": "7" },
      { "type": "float", "name": "8. Persistent Value Errors Power", "default": "0.25", "min": "0", "max": "1", "pos": "8" },
      { "type": "float", "name": "9. Error Bias", "default": "0.5", "min": "0", "max": "1", "pos": "9" },
      { "type": "float", "name": "10. Tile Shift Power", "default": "0.25", "min": "0", "max": "1", "pos": "10" },
      { "type": "choice", "name": "11. Mirror", "default": "0", "pos": "11", "choices": { "0": "None", "1": "X", "2": "Y", "3": "XY" } },
      { "type": "choice", "name": "12. Rotate", "default": "0", "pos": "12", "choices": { "0": "None", "1": "90 clockwise", "2": "180", "3": "90 anticlockwise" } },
      { "type": "separator" },
      { "type": "note", "text": "Self-Bomb" },
      { "type": "bool", "name": "13. Enable", "default": "0", "pos": "13" },
      { "type": "int", "name": "14. Mesh X", "default": "16", "min": "1", "max": "256", "pos": "14" },
      { "type": "int", "name": "15. Mesh Y", "default": "16", "min": "1", "max": "256", "pos": "15" },
      { "type": "float", "name": "16. Mesh Smoothness", "default": "0.5", "min": "0", "max": "10", "pos": "16" },
      { "type": "choice", "name": "17. Contrast Scheme", "default": "1", "pos": "17", "choices": { "0": "Arctan", "1": "Clip", "2": "Power" } },
      { "type": "float", "name": "18. Mesh Contrast", "default": "75", "min": "0", "max": "100", "pos": "18" },
      { "type": "float", "name": "19. Scale X", "default": "1", "min": "0.05", "max": "16", "pos": "19" },
      { "type": "float", "name": "20. Scale Y", "default": "1", "min": "0.05", "max": "16", "pos": "20" },
      { "type": "choice", "name": "21. Interpolation", "default": "0", "pos": "21", "choices": { "0": "None", "1": "Nearest", "2": "Average", "3": "Bilinear", "4": "Grid", "5": "Bicubic" } },
      { "type": "bool", "name": "22. Normalise", "default": "0", "pos": "22" },
      { "type": "bool", "name": "23. Output Mesh", "default": "0", "pos": "23" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "24", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "25" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Joan Rake, 'borrowed' from <a href=\"https://goo.gl/Ryf7Cv\">David Tschumperlé</a>.      Latest Update: 2017/05/07." }
      ]
    },
    {
      "name": "JFIF Effects Extended", "lang": "en", "command": "fx_jfif_xt", "command_preview": "fx_jfif_xt_preview", "parameters": [
      { "type": "note", "text": "A poorly-implemented JFIF encoder with extras, all designed to screw with images. Quite slow and very aggressive." },
      { "type": "float", "name": "1. Quality (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "int", "name": "2. Size X", "default": "8", "min": "1", "max": "100", "pos": "2" },
      { "type": "int", "name": "3. Size Y", "default": "8", "min": "1", "max": "100", "pos": "3" }
      ]
    },
    {
      "name": "JPEG Artefacts", "lang": "en", "command": "fx_jpeg_artefacts", "command_preview": "fx_jpeg_artefacts", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simulates JPEG compression blocks and noise. " },
      { "type": "separator" },
      { "type": "note", "text": "This filter simulates the JPEG compression artifacts, using DCT quantization on 8x8 blocks." },
      { "type": "int", "name": "Quality (%)", "default": "50", "min": "1", "max": "100", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2024/02/21." }
      ]
    },
    {
      "name": "JPEG Encoder", "lang": "en", "command": "fx_jpeg_preview", "command_preview": "", "parameters": [
      { "type": "separator" },
      { "type": "float", "name": "1. Quality", "default": "80", "min": "0", "max": "100", "pos": "1" },
      { "type": "choice", "name": "2. Colour Space", "default": "21", "pos": "2", "choices": { "0": "RGB", "1": "sRGB", "2": "CMY", "3": "RYB", "4": "Ohta8", "5": "Ohta", "6": "YES8", "7": "YES", "8": "Kodak 1-8", "9": "Kodak1", "10": "Lab8", "11": "Lab", "12": "Oklab", "13": "LUV", "14": "Jzazbz", "15": "YIQ8", "16": "YIQ", "17": "YUV8", "18": "YUV", "19": "YCbCr", "20": "YCbCrGLIC", "21": "YCbCrJPEG", "22": "YDbDr", "23": "XYZ8", "24": "XYZ", "25": "HSV8", "26": "HSV", "27": "HSL8", "28": "HSL", "29": "HSI8", "30": "HSI", "31": "LCH8", "32": "LCH", "33": "JzCzHz", "34": "HCY" } },
      { "type": "int", "name": "3. Channel 1 Block Width", "default": "8", "min": "2", "max": "32", "pos": "3" },
      { "type": "int", "name": "4. Channel 1 Block Height", "default": "8", "min": "2", "max": "32", "pos": "4" },
      { "type": "int", "name": "5. Channel 2 Block Width", "default": "16", "min": "2", "max": "32", "pos": "5" },
      { "type": "int", "name": "6. Channel 2 Block Height", "default": "16", "min": "2", "max": "32", "pos": "6" },
      { "type": "int", "name": "7. Channel 3 Block Width", "default": "16", "min": "2", "max": "32", "pos": "7" },
      { "type": "int", "name": "8. Channel 3 Block Height", "default": "16", "min": "2", "max": "32", "pos": "8" },
      { "type": "bool", "name": "Toggle Block Offsets", "default": "0", "pos": "9" },
      { "type": "int", "name": "9. Channel 1 Block X Offset", "default": "0", "min": "-32", "max": "32", "pos": "10" },
      { "type": "int", "name": "10. Channel 1 Block Y Offset", "default": "0", "min": "-32", "max": "32", "pos": "11" },
      { "type": "int", "name": "11. Channel 2 Block X Offset", "default": "0", "min": "-32", "max": "32", "pos": "12" },
      { "type": "int", "name": "12. Channel 2 Block Y Offset", "default": "0", "min": "-32", "max": "32", "pos": "13" },
      { "type": "int", "name": "13. Channel 3 Block X Offset", "default": "0", "min": "-32", "max": "32", "pos": "14" },
      { "type": "int", "name": "14. Channel 3 Block Y Offset", "default": "0", "min": "-32", "max": "32", "pos": "15" }
      ]
    },
    {
      "name": "Lomo", "lang": "en", "command": "fx_lomo", "command_preview": "fx_lomo", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simulates the high-contrast, vignetted look of Lomo cameras. " },
      { "type": "separator" },
      { "type": "float", "name": "Vignette Size", "default": "20", "min": "0", "max": "100", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Authors: Jérome Boulanger and David Tschumperlé.       Latest Update: 2012/06/06." }
      ]
    },
    {
      "name": "Mess with Bits", "lang": "en", "command": "fx_mess_with_bits", "command_preview": "", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Corrupts the image by flipping bits in the pixel data. " },
      { "type": "separator" },
      { "type": "note", "text": "Input processing:" },
      { "type": "bool", "name": "Pre-Normalize", "default": "1", "pos": "1" },
      { "type": "float", "name": "Smoothness (%)", "default": "15", "min": "0", "max": "100", "pos": "2" },
      { "type": "int", "name": "Multiplier", "default": "1", "min": "1", "max": "256", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Output processing:" },
      { "type": "choice", "name": "Reversing", "default": "1", "pos": "4", "choices": { "0": "None", "1": "Reverse bits", "2": "Reverse bytes" } },
      { "type": "int", "name": "Bit Masking (Start)", "default": "0", "min": "0", "max": "15", "pos": "5" },
      { "type": "int", "name": "Bit Masking (End)", "default": "15", "min": "0", "max": "15", "pos": "6" },
      { "type": "float", "name": "Opacity (%)", "default": "100", "min": "0", "max": "100", "pos": "7" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "8", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2019/01/16." }
      ]
    },
    {
      "name": "Multi-Mosaic", "lang": "en", "command": "fx_jr_multi_mosaic_preview", "command_preview": "", "parameters": [
      { "type": "separator" },
      { "type": "button", "name": "0. Recompute", "pos": "1" },
      { "type": "int", "name": "1. Iterations", "default": "3", "min": "1", "max": "10", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Mosaic" },
      { "type": "float", "name": "2. Lowest Density", "default": "15", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "3. Highest Density", "default": "45", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "4. Details Influence", "default": "50", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "5. Details Smoothness", "default": "0", "min": "0", "max": "100", "pos": "6" },
      { "type": "color", "name": "6-8. Colour Balance", "default": "128,128,128", "pos": "7" },
      { "type": "float", "name": "9. Luma Range", "default": "0", "min": "0", "max": "100", "pos": "10" },
      { "type": "float", "name": "10. Chroma Range", "default": "0", "min": "0", "max": "100", "pos": "11" },
      { "type": "float", "name": "11. Hue Range", "default": "0", "min": "0", "max": "100", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "Edges [Gradient Norm]" },
      { "type": "float", "name": "12. Opacity", "default": "1", "min": "-1", "max": "1", "pos": "13" },
      { "type": "float", "name": "13. Smoothness", "default": "0", "min": "0", "max": "10", "pos": "14" },
      { "type": "float", "name": "14. Linearity", "default": "0.5", "min": "0", "max": "1.5", "pos": "15" },
      { "type": "float", "name": "15. Min Threshold", "default": "0", "min": "0", "max": "100", "pos": "16" },
      { "type": "float", "name": "16. Max Threshold", "default": "100", "min": "0", "max": "100", "pos": "17" },
      { "type": "int", "name": "17. Thickness", "default": "1", "min": "1", "max": "10", "pos": "18" },
      { "type": "color", "name": "18-20. Color", "default": "0,0,0", "pos": "19" },
      { "type": "float", "name": "21. Luma Range", "default": "0", "min": "0", "max": "100", "pos": "22" },
      { "type": "float", "name": "22. Chroma Range", "default": "0", "min": "0", "max": "100", "pos": "23" },
      { "type": "float", "name": "23. Hue Range", "default": "0", "min": "0", "max": "100", "pos": "24" },
      { "type": "separator" },
      { "type": "note", "text": "Final Edge Blend" },
      { "type": "bool", "name": "24. Edge Blend", "default": "1", "pos": "25" },
      { "type": "float", "name": "25. Smoothness", "default": "15", "min": "0", "max": "100", "pos": "26" },
      { "type": "separator" },
      { "type": "note", "text": "Smooth [Diffusion]" },
      { "type": "int", "name": "26. Iterations", "default": "16", "min": "0", "max": "100", "pos": "27" },
      { "type": "float", "name": "27. Sharpness", "default": "0.5", "min": "0", "max": "2", "pos": "28" },
      { "type": "float", "name": "28. Anisotropy", "default": "1", "min": "0", "max": "1", "pos": "29" },
      { "type": "float", "name": "29. Gradient Smoothness", "default": "3", "min": "0", "max": "10", "pos": "30" },
      { "type": "float", "name": "30. Tensor Smoothness", "default": "5", "min": "0", "max": "10", "pos": "31" },
      { "type": "float", "name": "31. Time Step", "default": "15", "min": "5", "max": "50", "pos": "32" },
      { "type": "separator" },
      { "type": "note", "text": "Local Normalization" },
      { "type": "float", "name": "32. Amplitude", "default": "2", "min": "0", "max": "60", "pos": "33" },
      { "type": "int", "name": "33. Radius", "default": "6", "min": "1", "max": "64", "pos": "34" },
      { "type": "float", "name": "34. Neighborhood Smoothness", "default": "5", "min": "0", "max": "40", "pos": "35" },
      { "type": "float", "name": "35. Average Smoothness", "default": "20", "min": "0", "max": "40", "pos": "36" },
      { "type": "bool", "name": "36. Constrain Values", "default": "1", "pos": "37" },
      { "type": "choice", "name": "37 .Channel(s)", "default": "2", "pos": "38", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGB [All]", "3": "RGB [Red]", "4": "RGB [Green]", "5": "RGB [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [Luminance]", "12": "YCbCr [Blue-Red Chrominances]", "13": "YCbCr [Blue Chrominance]", "14": "YCbCr [Red Chrominance]", "15": "YCbCr [Green Chrominance]", "16": "Lab [Lightness]", "17": "Lab [ab-Chrominances]", "18": "Lab [a-Chrominance]", "19": "Lab [b-Chrominance]", "20": "Lch [ch-Chrominances]", "21": "Lch [c-Chrominance]", "22": "Lch [h-Chrominance]", "23": "HSV [Hue]", "24": "HSV [Saturation]", "25": "HSV [Value]", "26": "HSI [Intensity]", "27": "HSL [Lightness]", "28": "CMYK [Cyan]", "29": "CMYK [Magenta]", "30": "CMYK [Yellow]", "31": "CMYK [Key]", "32": "YIQ [Luma]", "33": "YIQ [Chromas]", "34": "RYB [All]", "35": "RYB [Red]", "36": "RYB [Yellow]", "37": "RYB [Blue]" } }
      ]
    },
    {
      "name": "Noise [Additive]", "lang": "en", "command": "fx_noise", "command_preview": "fx_noise", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds standard random noise (Gaussian, Uniform, etc.). " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "10", "min": "0", "max": "200", "pos": "1" },
      { "type": "choice", "name": "Noise Type", "default": "0", "pos": "2", "choices": { "0": "Gaussian", "1": "Uniform", "2": "Salt and Pepper", "3": "Poisson" } },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "7", "pos": "3", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "choice", "name": "Value Action", "default": "1", "pos": "4", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Noise [Gradient]", "lang": "en", "command": "fx_noise_gradient", "command_preview": "fx_noise_gradient", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds noise on image gradients. " },
      { "type": "separator" },
      { "type": "float", "name": "Strength", "default": "100", "min": "0", "max": "255", "pos": "1" },
      { "type": "float", "name": "Smoothness[%]", "default": "0", "min": "0", "max": "100", "pos": "2" },
      { "type": "choice", "name": "Noise Type", "default": "0", "pos": "3", "choices": { "0": "Gaussian", "1": "Uniform" } },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "2", "pos": "4", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2023/12/06.", "visibility": "1" }
      ]
    },
    {
      "name": "Noise [Perlin]", "lang": "en", "command": "fx_noise_perlin", "command_preview": "fx_noise_perlin", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds Perlin (procedural) noise. " },
      { "type": "separator" },
      { "type": "int", "name": "Random Seed", "default": "0", "min": "0", "max": "65536", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "1st scale:" },
      { "type": "float", "name": "Amplitude", "default": "100", "min": "0", "max": "512", "pos": "2" },
      { "type": "float", "name": "Scale (%)", "default": "8", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "X/Y-Ratio", "default": "0", "min": "-4", "max": "4", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "2nd scale:" },
      { "type": "float", "name": "Amplitude", "default": "0", "min": "0", "max": "512", "pos": "5" },
      { "type": "float", "name": "Scale (%)", "default": "4", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "X/Y-Ratio", "default": "0", "min": "-4", "max": "4", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "3rd scale:" },
      { "type": "float", "name": "Amplitude", "default": "0", "min": "0", "max": "512", "pos": "8" },
      { "type": "float", "name": "Scale (%)", "default": "2", "min": "0", "max": "100", "pos": "9" },
      { "type": "float", "name": "X/Y-Ratio", "default": "0", "min": "-4", "max": "4", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "4th scale:" },
      { "type": "float", "name": "Amplitude", "default": "0", "min": "0", "max": "512", "pos": "11" },
      { "type": "float", "name": "Scale (%)", "default": "1", "min": "0", "max": "100", "pos": "12" },
      { "type": "float", "name": "X/Y-Ratio", "default": "0", "min": "-4", "max": "4", "pos": "13" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "2", "pos": "14", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2019/01/24." }
      ]
    },
    {
      "name": "Noise [Spread]", "lang": "en", "command": "fx_spread", "command_preview": "fx_spread", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Displaces pixels randomly. " },
      { "type": "separator" },
      { "type": "float", "name": "X-Variations", "default": "4", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "Y-Variations", "default": "4", "min": "0", "max": "20", "pos": "2" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "3", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "choice", "name": "Value Action", "default": "0", "pos": "4", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Offset Stripes", "lang": "en", "command": "fx_offset_stripes", "command_preview": "fx_offset_stripes", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Iteratively shifts horizontal/vertical stripes of the image. " },
      { "type": "separator" },
      { "type": "int", "name": "Iterations", "default": "1", "min": "0", "max": "256", "pos": "1" },
      { "type": "int", "name": "Random Seed", "default": "0", "min": "0", "max": "65535", "pos": "2" },
      { "type": "bool", "name": "Per-Channel Shift", "default": "0", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Horizontal Stripes:</span>" },
      { "type": "float", "name": "Height (%)", "default": "10", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Random Shift Amplitude (%)", "default": "20", "min": "0", "max": "100", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Vertical Stripes:</span>" },
      { "type": "float", "name": "Width (%)", "default": "10", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "Random Shift Amplitude (%)", "default": "20", "min": "0", "max": "100", "pos": "7" },
      { "type": "separator" },
      { "type": "choice", "name": "Boundary", "default": "3", "pos": "8", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "9", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2025/12/01." }
      ]
    },
    {
      "name": "Old-Movie Stripes", "lang": "en", "command": "fx_stripes_y", "command_preview": "fx_stripes_y", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds vertical scratches like old film. " },
      { "type": "separator" },
      { "type": "float", "name": "Frequency", "default": "10", "min": "0", "max": "100", "pos": "1" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "2", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" }, "visibility": "0" },
      { "type": "choice", "name": "Value Action", "default": "0", "pos": "3", "choices": { "0": "None", "1": "Cut", "2": "Normalize" }, "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Oldschool 8bits", "lang": "en", "command": "fx_8bits", "command_preview": "fx_8bits", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Reduces color depth to simulate 8-bit graphics. " },
      { "type": "separator" },
      { "type": "float", "name": "Scale", "default": "25", "min": "1", "max": "100", "pos": "1" },
      { "type": "float", "name": "Dithering", "default": "800", "min": "0", "max": "10000", "pos": "2" },
      { "type": "int", "name": "Levels", "default": "16", "min": "2", "max": "256", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2011/02/11." }
      ]
    },
    {
      "name": "Path Et Solidify", "lang": "en", "command": "samj_Degradations_Path_Solidify", "command_preview": "samj_Degradations_Path_Solidify ", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">samj_Degradations_Path_Solidify</span>" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Dégradations Image Origine</span>" },
      { "type": "int", "name": "Pixelise", "default": "0", "min": "0", "max": "32", "pos": "1" },
      { "type": "int", "name": "Spread", "default": "0", "min": "0", "max": "32", "pos": "2" },
      { "type": "int", "name": "Deform", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "int", "name": "Isophotes", "default": "0", "min": "0", "max": "15", "pos": "4" },
      { "type": "float", "name": "Blur", "default": "0", "min": "0", "max": "2", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Path</span>", "visibility": "0" },
      { "type": "choice", "name": "Patch Type", "default": "2", "pos": "6", "choices": { "0": "Max Patch", "1": "Min Patch", "2": "Max et Min Path" }, "visibility": "0" },
      { "type": "int", "name": "Valeur Patch", "default": "10", "min": "1", "max": "50", "pos": "7", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Dégradations Apres Path</span>", "visibility": "2" },
      { "type": "choice", "name": "Dilate Type", "default": "1", "pos": "8", "choices": { "0": "Dilate Circ", "1": "Dilate" }, "visibility": "2" },
      { "type": "int", "name": "Valeur Dilate", "default": "0", "min": "0", "max": "16", "pos": "9", "visibility": "2" },
      { "type": "separator", "visibility": "2" },
      { "type": "int", "name": "Valeur Erode", "default": "0", "min": "0", "max": "16", "pos": "10", "visibility": "2" },
      { "type": "separator", "visibility": "2" },
      { "type": "note", "text": "<span foreground=\"orangered\">Solidify</span>" },
      { "type": "bool", "name": "Valider Solidify", "default": "1", "pos": "11", "visibility": "0" },
      { "type": "float", "name": "Smoothness %", "default": "75", "min": "0", "max": "100", "pos": "12", "visibility": "0" },
      { "type": "choice", "name": "Diffusion Type", "default": "0", "pos": "13", "choices": { "0": "Isotropic", "1": "Delaunay Oriented", "2": "Edge Oriented" }, "visibility": "0" },
      { "type": "int", "name": "Diffusion Iter", "default": "20", "min": "1", "max": "200", "pos": "14", "visibility": "0" },
      { "type": "separator", "visibility": "0" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2019/12/14.", "visibility": "0" }
      ]
    },
    {
      "name": "Pixel Sort", "lang": "en", "command": "fx_pixelsort", "command_preview": "fx_pixelsort_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Sorts pixels (Glitch art). " },
      { "type": "separator" },
      { "type": "note", "text": "Sorting parameters:" },
      { "type": "choice", "name": "Order", "default": "1", "pos": "1", "choices": { "0": "Decreasing", "1": "Increasing" }, "visibility": "0" },
      { "type": "choice", "name": "Axis", "default": "0", "pos": "2", "choices": { "0": "X-axis", "1": "Y-axis", "2": "X-axis Then Y-axis", "3": "Y-axis Then X-axis" }, "visibility": "0" },
      { "type": "choice", "name": "Sorting Criterion", "default": "0", "pos": "3", "choices": { "0": "Red", "1": "Green", "2": "Blue", "3": "Intensity", "4": "Luminance", "5": "Lightness", "6": "Hue", "7": "Saturation", "8": "Minimum", "9": "Maximum", "10": "Random" }, "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Masking parameters:", "visibility": "0" },
      { "type": "choice", "name": "Mask By", "default": "1", "pos": "4", "choices": { "0": "Bottom Layer", "1": "Criterion", "2": "Contours", "3": "Random" } },
      { "type": "float", "name": "Lower Mask Threshold (%)", "default": "0", "min": "0", "max": "100", "pos": "5", "visibility": "0" },
      { "type": "float", "name": "Higher Mask Threshold (%)", "default": "100", "min": "0", "max": "100", "pos": "6", "visibility": "0" },
      { "type": "float", "name": "Mask Smoothness (%)", "default": "0", "min": "0", "max": "5", "pos": "7", "visibility": "0" },
      { "type": "bool", "name": "Invert Mask", "default": "0", "pos": "8", "visibility": "0" },
      { "type": "bool", "name": "Preview Mask", "default": "0", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Note: This filter implements one version of the algorithm described here : " },
      { "type": "link", "name": "http://satyarth.me/articles/pixel-sorting/", "url": "http://satyarth.me/articles/pixel-sorting/", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2021/10/29." }
      ]
    },
    {
      "name": "Pseudo-ECB (Electronic Code Book Algorithm)", "lang": "en", "command": "pseudo_ecb", "command_preview": "_pseudo_ecb_preview", "parameters": [
      { "type": "note", "text": "This filter is inspired by one of the glitch plugin for Paint.NET. This doesn't actually emulate how the codebook encryption algorithm actually work, but it is inspired from it.  This filter uses bomb blending mode which involves RGBA Transfer Function Mesh. See Mesh Blend filter for a link. \n\n <u>Note that the filter works best on images with large patches of single colors.</u> " },
      { "type": "separator" },
      { "type": "note", "text": "Color Space Choice \n\n Keep in mind that you may not necessarily get what you imagine. Just treat these as themes. " },
      { "type": "choice", "name": "Colour Space", "default": "0", "pos": "1", "choices": { "0": "RGB", "1": "sRGB", "2": "CMY", "3": "RYB", "4": "Ohta8", "5": "Ohta", "6": "YES8", "7": "YES", "8": "Kodak 1-8", "9": "Kodak1", "10": "Lab8", "11": "Lab", "12": "Oklab", "13": "LUV", "14": "Jzazbz", "15": "YIQ8", "16": "YIQ", "17": "YUV8", "18": "YUV", "19": "YCbCr", "20": "YCbCrGLIC", "21": "YCbCrJPEG", "22": "YDbDr", "23": "XYZ8", "24": "XYZ", "25": "HSV8", "26": "HSV", "27": "HSL8", "28": "HSL", "29": "HSI8", "30": "HSI", "31": "LCH8", "32": "LCH", "33": "JzCzHz", "34": "HCY" } },
      { "type": "separator" },
      { "type": "note", "text": "Final Color Processing \n\n This refers to the how the colors are going to be processed. If you find that there's too little difference in hues or chroma or luminosity in local areas, this should be on. Sometimes, the result are better without the final processing." },
      { "type": "bool", "name": "Equalize Filter", "default": "0", "pos": "2" },
      { "type": "bool", "name": "Pseudo-Coloring", "default": "1", "pos": "3" },
      { "type": "choice", "name": "Tonality Blend", "default": "20", "pos": "4", "choices": { "0": "add", "1": "alpha", "2": "and", "3": "average", "4": "blue", "5": "burn", "6": "darken", "7": "difference", "8": "divide", "9": "dodge", "10": "exclusion", "11": "freeze", "12": "grainextract", "13": "grainmerge", "14": "green", "15": "hardlight", "16": "hardmix", "17": "hue", "18": "interpolation", "19": "lighten", "20": "lightness", "21": "linearburn", "22": "linearlight", "23": "luminance", "24": "multiply", "25": "negation", "26": "or", "27": "overlay", "28": "pinlight", "29": "red", "30": "reflect", "31": "saturation", "32": "screen", "33": "shapeaverage", "34": "softburn", "35": "softdodge", "36": "softlight", "37": "stamp", "38": "subtract", "39": "value", "40": "vividlight", "41": "xor" } },
      { "type": "float", "name": "Tonality Blend Opacity", "default": "1", "min": "0", "max": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "ECB Pattern Key Generator" },
      { "type": "bool", "name": "Double Gradient?", "default": "1", "pos": "6" },
      { "type": "float", "name": "Length of Gradient#1", "default": "5", "min": "0", "max": "32", "pos": "7" },
      { "type": "float", "name": "ECB Gradient#1 Angle", "default": "0", "min": "0", "max": "360", "pos": "8" },
      { "type": "bool", "name": "ECB Inversion#1", "default": "0", "pos": "9" },
      { "type": "float", "name": "Length of Gradient#2", "default": "5", "min": "0", "max": "32", "pos": "10" },
      { "type": "float", "name": "ECB Gradient#2 Angle", "default": "90", "min": "0", "max": "360", "pos": "11" },
      { "type": "bool", "name": "ECB Inversion#2", "default": "0", "pos": "12" },
      { "type": "choice", "name": "Gradient Blend", "default": "41", "pos": "13", "choices": { "0": "add", "1": "alpha", "2": "and", "3": "average", "4": "blue", "5": "burn", "6": "darken", "7": "difference", "8": "divide", "9": "dodge", "10": "exclusion", "11": "freeze", "12": "grainextract", "13": "grainmerge", "14": "green", "15": "hardlight", "16": "hardmix", "17": "hue", "18": "interpolation", "19": "lighten", "20": "lightness", "21": "linearburn", "22": "linearlight", "23": "luminance", "24": "multiply", "25": "negation", "26": "or", "27": "overlay", "28": "pinlight", "29": "red", "30": "reflect", "31": "saturation", "32": "screen", "33": "shapeaverage", "34": "softburn", "35": "softdodge", "36": "softlight", "37": "stamp", "38": "subtract", "39": "value", "40": "vividlight", "41": "xor" } },
      { "type": "float", "name": "Gradient Blend Opacity", "default": "1", "min": "0", "max": "1", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "Sharpen Filtering" },
      { "type": "float", "name": "Sharpening Noise Processing", "default": "15", "min": "0", "max": "200", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "ECB Image Processing" },
      { "type": "int", "name": "Transfer Mesh Size for Image (Squared)", "default": "256", "min": "2", "max": "256", "pos": "16" },
      { "type": "int", "name": "Image Mesh Contrast", "default": "75", "min": "25", "max": "100", "pos": "17" },
      { "type": "int", "name": "Transfer Mesh Size for Gradient (Squared)", "default": "16", "min": "2", "max": "256", "pos": "18" },
      { "type": "int", "name": "Gradient Mesh Contrast", "default": "100", "min": "25", "max": "100", "pos": "19" },
      { "type": "bool", "name": "Double Encryption Effect", "default": "1", "pos": "20" },
      { "type": "choice", "name": "Inner Blend", "default": "41", "pos": "21", "choices": { "0": "add", "1": "alpha", "2": "and", "3": "average", "4": "blue", "5": "burn", "6": "darken", "7": "difference", "8": "divide", "9": "dodge", "10": "exclusion", "11": "freeze", "12": "grainextract", "13": "grainmerge", "14": "green", "15": "hardlight", "16": "hardmix", "17": "hue", "18": "interpolation", "19": "lighten", "20": "lightness", "21": "linearburn", "22": "linearlight", "23": "luminance", "24": "multiply", "25": "negation", "26": "or", "27": "overlay", "28": "pinlight", "29": "red", "30": "reflect", "31": "saturation", "32": "screen", "33": "shapeaverage", "34": "softburn", "35": "softdodge", "36": "softlight", "37": "stamp", "38": "subtract", "39": "value", "40": "vividlight", "41": "xor" } },
      { "type": "float", "name": "Inner Blend Opacity", "default": "1", "min": "0", "max": "1", "pos": "22" },
      { "type": "choice", "name": "Outer Blend", "default": "41", "pos": "23", "choices": { "0": "add", "1": "alpha", "2": "and", "3": "average", "4": "blue", "5": "burn", "6": "darken", "7": "difference", "8": "divide", "9": "dodge", "10": "exclusion", "11": "freeze", "12": "grainextract", "13": "grainmerge", "14": "green", "15": "hardlight", "16": "hardmix", "17": "hue", "18": "interpolation", "19": "lighten", "20": "lightness", "21": "linearburn", "22": "linearlight", "23": "luminance", "24": "multiply", "25": "negation", "26": "or", "27": "overlay", "28": "pinlight", "29": "red", "30": "reflect", "31": "saturation", "32": "screen", "33": "shapeaverage", "34": "softburn", "35": "softdodge", "36": "softlight", "37": "stamp", "38": "subtract", "39": "value", "40": "vividlight", "41": "xor" } },
      { "type": "float", "name": "Outer Blend Opacity", "default": "1", "min": "0", "max": "1", "pos": "24" },
      { "type": "separator" },
      { "type": "note", "text": "Self-Image Post-Processing \n\n This invokes a self-blending operation after the main pseudo-ecb has been generated with different blend mode." },
      { "type": "bool", "name": "Activate Self-Image Post-Processing", "default": "1", "pos": "25" },
      { "type": "bool", "name": "Equalize ECB Processing", "default": "0", "pos": "26" },
      { "type": "bool", "name": "Pseudo-Coloring", "default": "1", "pos": "27" },
      { "type": "choice", "name": "Self-Blend", "default": "41", "pos": "28", "choices": { "0": "add", "1": "alpha", "2": "and", "3": "average", "4": "blue", "5": "burn", "6": "darken", "7": "difference", "8": "divide", "9": "dodge", "10": "exclusion", "11": "freeze", "12": "grainextract", "13": "grainmerge", "14": "green", "15": "hardlight", "16": "hardmix", "17": "hue", "18": "interpolation", "19": "lighten", "20": "lightness", "21": "linearburn", "22": "linearlight", "23": "luminance", "24": "multiply", "25": "negation", "26": "or", "27": "overlay", "28": "pinlight", "29": "red", "30": "reflect", "31": "saturation", "32": "screen", "33": "shapeaverage", "34": "softburn", "35": "softdodge", "36": "softlight", "37": "stamp", "38": "subtract", "39": "value", "40": "vividlight", "41": "xor" } },
      { "type": "float", "name": "Self-Blend Opacity", "default": "1", "min": "0", "max": "1", "pos": "29" },
      { "type": "separator" },
      { "type": "note", "text": "Multilayer processing\n\nWarning:All layer must be of same size for expected result!" },
      { "type": "bool", "name": "Apply to all layers?", "default": "0", "pos": "30" },
      { "type": "choice", "name": "Boundary Condition", "default": "0", "pos": "31", "choices": { "0": "Neumann", "1": "Periodic", "2": "Mirror" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "32", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "33" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Reptorian      Latest update: 2018/12/30." }
      ]
    },
    {
      "name": "Rain & Snow", "lang": "en", "command": "fx_rain", "command_preview": "fx_rain_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Procedural generator for rain or snow overlays. " },
      { "type": "separator" },
      { "type": "float", "name": "Angle", "default": "65", "min": "-180", "max": "180", "pos": "1" },
      { "type": "float", "name": "Speed", "default": "10", "min": "0", "max": "50", "pos": "2" },
      { "type": "float", "name": "Density (%)", "default": "50", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Radius", "default": "0.1", "min": "0", "max": "3", "pos": "4" },
      { "type": "float", "name": "Gamma", "default": "1", "min": "0", "max": "2", "pos": "5" },
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "6" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "7", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "8", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2024/02/21." }
      ]
    },
    {
      "name": "Random Plasma", "lang": "en", "command": "samj_Random_Plasma", "command_preview": "samj_Random_Plasma", "parameters": [
      { "type": "note", "text": "samj_Random_Plasma" },
      { "type": "int", "name": "Random Colors", "default": "0", "min": "0", "max": "4", "pos": "1" },
      { "type": "int", "name": "Blur", "default": "80", "min": "20", "max": "120", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Latest update : 2016/11/05." }
      ]
    },
    {
      "name": "Random Shade Stripes", "lang": "en", "command": "fx_shade_stripes", "command_preview": "fx_shade_stripes", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds random darkened stripes. " },
      { "type": "separator" },
      { "type": "float", "name": "Frequency", "default": "30", "min": "1", "max": "100", "pos": "1" },
      { "type": "choice", "name": "Orientation", "default": "1", "pos": "2", "choices": { "0": "Horizontal", "1": "Vertical" } },
      { "type": "float", "name": "Darkness", "default": "0.8", "min": "0", "max": "3", "pos": "3" },
      { "type": "float", "name": "Lightness", "default": "1.3", "min": "0", "max": "3", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "5", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "choice", "name": "Value Action", "default": "0", "pos": "6", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Rebuild From Similar Blocks", "lang": "en", "command": "fx_rebuild_from_similar_blocks", "command_preview": "fx_rebuild_from_similar_blocks", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Reconstructs the image using self-similarity (blocky effect). " },
      { "type": "separator" },
      { "type": "float", "name": "Block Size (%)", "default": "5", "min": "2", "max": "50", "pos": "1" },
      { "type": "separator" },
      { "type": "float", "name": "Regularization factor", "default": "10", "min": "0", "max": "20", "pos": "2" },
      { "type": "float", "name": "Luminance factor", "default": "0.75", "min": "0", "max": "3", "pos": "3" },
      { "type": "choice", "name": "Norm type", "default": "1", "pos": "4", "choices": { "0": "L1", "1": "L2" } },
      { "type": "separator" },
      { "type": "note", "text": "This filter subdivides the image into blocks, and replace each block by the most similar block found in the other blocks." },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2020/09/17." }
      ]
    },
    {
      "name": "Row Shifter", "lang": "en", "command": "fx_row_shift", "command_preview": "fx_row_shift_preview", "parameters": [
      { "type": "note", "text": "Shifts rows." },
      { "type": "separator" },
      { "type": "choice", "name": "Order", "default": "0", "pos": "1", "choices": { "0": "X then Y", "1": "Simultaneous", "2": "Y then X" } },
      { "type": "float", "name": "X Shift", "default": "0", "min": "-5", "max": "5", "pos": "2" },
      { "type": "float", "name": "X Centre", "default": "0.5", "min": "0", "max": "1", "pos": "3" },
      { "type": "float", "name": "Y Shift", "default": "0", "min": "-5", "max": "5", "pos": "4" },
      { "type": "float", "name": "Y Centre", "default": "0.5", "min": "0", "max": "1", "pos": "5" },
      { "type": "choice", "name": "Interpolation", "default": "3", "pos": "6", "choices": { "0": "None", "1": "Nearest", "2": "Average", "3": "Bilinear", "4": "Grid", "5": "Bicubic", "6": "Lanczos" } },
      { "type": "bool", "name": "Invert Shifts", "default": "0", "pos": "7" }
      ]
    },
    {
      "name": "samj Bruit Noise", "lang": "en", "command": "samj_bruit_noise", "command_preview": "samj_bruit_noise", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\"> Bruit Aléatoire / Random Noise </span>" },
      { "type": "int", "name": "1 - Bruit / Noise", "default": "0", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "2 - %Effet / Effect", "default": "0.75", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "3 - Couleur / Color", "default": "0", "min": "-0.1", "max": "0.4", "pos": "3" },
      { "type": "bool", "name": "4 - Boost", "default": "0", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2024/11/21." }
      ]
    },
    {
      "name": "samj_rotate_flip_image", "lang": "en", "command": "samj_rotate_flip_image", "command_preview": "samj_rotate_flip_image", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Rotation</span>" },
      { "type": "bool", "name": "1 - Rotation", "default": "1", "pos": "1" },
      { "type": "float", "name": "2 - Angle Degrés/Degrees", "default": "-45", "min": "-180", "max": "180", "pos": "2" },
      { "type": "choice", "name": "3 - Interpolation", "default": "2", "pos": "3", "choices": { "0": "None", "1": "Linear", "2": "Bicubic" } },
      { "type": "choice", "name": "4 - Remplissage/Boundary Conditions", "default": "0", "pos": "4", "choices": { "0": "Dirichlet", "1": "Neumann", "2": "Periodic", "3": "Mirror" } },
      { "type": "bool", "name": "5 - Ajuster/Adjust Image", "default": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Retourner / Flip</span>" },
      { "type": "bool", "name": "6 - Retourner/Flip", "default": "0", "pos": "6" },
      { "type": "bool", "name": "7 - Horizontal vs Vertical", "default": "0", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Couleur du fond / Background Color</span>" },
      { "type": "bool", "name": "8 - Fond/Background", "default": "0", "pos": "8" },
      { "type": "color", "name": "9 10 11 12 - Fond/Background", "default": "255,255,255,255", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2023/05/06." }
      ]
    },
    {
      "name": "samj_Selection_Ellipse", "lang": "en", "command": "samj_Selection_Ellipse", "command_preview": "samj_Selection_Ellipse_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Position</span>" },
      { "type": "point", "name": "1 2 - Centre", "position": "50,50", "pos": "1" },
      { "type": "note", "text": "<span foreground=\"orangered\">Dimensions</span>" },
      { "type": "float", "name": "3 - R % Diagonale/Diagonal", "default": "30", "min": "0", "max": "200", "pos": "3" },
      { "type": "float", "name": "4 - r % Diagonale/Diagonal", "default": "20", "min": "0", "max": "200", "pos": "4" },
      { "type": "note", "text": "<span foreground=\"orangered\">Angle</span>" },
      { "type": "float", "name": "5 - Degrés/Degrees", "default": "0", "min": "-180", "max": "180", "pos": "5" },
      { "type": "note", "text": "<span foreground=\"orangered\">Complément/Complement</span>" },
      { "type": "bool", "name": "6 - Extérieur/Outside", "default": "0", "pos": "6" },
      { "type": "note", "text": "<span foreground=\"orangered\">Rogner selon le contenu / Crop to content</span>" },
      { "type": "bool", "name": "7 - Autocrop", "default": "0", "pos": "7" },
      { "type": "note", "text": "<span foreground=\"orangered\">Pivoter la sélection / Rotate the selection</span>" },
      { "type": "choice", "name": "8 - Pivoter/Rotate", "default": "0", "pos": "8", "choices": { "0": "Non/No", "1": "Angle", "2": "Angle-90", "3": "Angle+90", "4": "Angle+180" } },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Aperçu Grille / Preview Grid</span>" },
      { "type": "bool", "name": "9 - Visualiser/Preview", "default": "0", "pos": "9" },
      { "type": "int", "name": "10 - Divisions X Y", "default": "2", "min": "2", "max": "40", "pos": "10" },
      { "type": "int", "name": "11 - Couleur Grille/Color Grid", "default": "255", "min": "0", "max": "255", "pos": "11" },
      { "type": "separator" },
      { "type": "separator" },
      { "type": "note", "text": "<span>Pour ajouter un flou utiliser le filtre Blur [Depth-Of-Field] par David Tschumperlé.</span>" },
      { "type": "note", "text": "<span>To add a blur use the Blur [Depth-Of-Field] filter by David Tschumperlé.</span>" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2023/05/06." }
      ]
    },
    {
      "name": "samj_Selection_Hermite_Spline", "lang": "en", "command": "samj_Selection_Hermite_Spline", "command_preview": "gui_no_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"blue\">Ce filtre utilise la commande interactive 'x_spline'\net affichera une nouvelle fenêtre selon le paramètrage ci-dessous.\n</span>" },
      { "type": "note", "text": "<span foreground=\"blue\">This filter uses the interactive command 'x_spline'\nand will display a new window according to the parameters below.\n</span>" },
      { "type": "separator", "visibility": "1" },
      { "type": "note", "text": "<span foreground=\"orangered\">Launch spline curve editor.</span>" },
      { "type": "note", "text": "Spline curve editor:\n\nMouse to insert/move/delete points.\nKey 'R' to reset the curve.\nKey 'SPACE' to shows/hide spline curve.\nKey 'P' to shows/hide control points." },
      { "type": "note", "text": "Key 'ENTER' to shows/hide control polygon.\nKey 'T' to shows/hide point tangents.\nKey 'I' to shows/hide point indices." },
      { "type": "note", "text": "Key 'C' to shows/hide point coordinates.\nKeys '+' and '-' to increase/decrease roundness.\nKeys 'ESC' or 'Q' to exit.\n" },
      { "type": "separator" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Rogner selon le contenu / Crop to content</span>" },
      { "type": "bool", "name": "1 - Autocrop", "default": "0", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2023/05/06." }
      ]
    },
    {
      "name": "samj_Selection_Polygone", "lang": "en", "command": "samj_Selection_Polygone", "command_preview": "samj_Selection_Polygone_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Nombre de points/Number of points</span>" },
      { "type": "int", "name": "1 - Points", "default": "8", "min": "3", "max": "8", "pos": "1" },
      { "type": "note", "text": "<span foreground=\"orangered\">Point A</span>" },
      { "type": "point", "name": "2 3 - A", "position": "3,3", "pos": "2" },
      { "type": "note", "text": "<span foreground=\"orangered\">Point B</span>" },
      { "type": "point", "name": "4 5 - B", "position": "50,20", "pos": "4" },
      { "type": "note", "text": "<span foreground=\"orangered\">Point C</span>" },
      { "type": "point", "name": "6 7 - C", "position": "97,3", "pos": "6" },
      { "type": "note", "text": "<span foreground=\"orangered\">Point D</span>" },
      { "type": "point", "name": "8 9 - D", "position": "80,50", "pos": "8" },
      { "type": "note", "text": "<span foreground=\"orangered\">Point E</span>" },
      { "type": "point", "name": "10 11 - E", "position": "97,97", "pos": "10" },
      { "type": "note", "text": "<span foreground=\"orangered\">Point F</span>" },
      { "type": "point", "name": "12 13 - F", "position": "50,80", "pos": "12" },
      { "type": "note", "text": "<span foreground=\"orangered\">Point G</span>" },
      { "type": "point", "name": "14 15 - G", "position": "3,97", "pos": "14" },
      { "type": "note", "text": "<span foreground=\"orangered\">Point H</span>" },
      { "type": "point", "name": "16 17 - H", "position": "20,50", "pos": "16" },
      { "type": "note", "text": "<span foreground=\"orangered\">Complément/Complement</span>" },
      { "type": "bool", "name": "18 - Extérieur/Outside", "default": "0", "pos": "18" },
      { "type": "note", "text": "<span foreground=\"orangered\">Rogner selon le contenu / Crop to content</span>" },
      { "type": "bool", "name": "19 - Autocrop", "default": "0", "pos": "19" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Aperçu Grille / Preview Grid</span>" },
      { "type": "bool", "name": "20 - Visualiser/Preview", "default": "0", "pos": "20" },
      { "type": "int", "name": "21 - Divisions X Y", "default": "2", "min": "2", "max": "40", "pos": "21" },
      { "type": "int", "name": "22 - Couleur Grille/Color Grid", "default": "255", "min": "0", "max": "255", "pos": "22" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2023/05/15." }
      ]
    },
    {
      "name": "samj_Selection_Rectangle", "lang": "en", "command": "samj_Selection_Rectangle", "command_preview": "samj_Selection_Rectangle_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Position</span>" },
      { "type": "point", "name": "1 2 - Centre", "position": "50,50", "pos": "1" },
      { "type": "note", "text": "<span foreground=\"orangered\">Dimensions</span>" },
      { "type": "float", "name": "3 - Côté/Side A % Diagonale/Diagonal Image", "default": "50", "min": "0", "max": "200", "pos": "3" },
      { "type": "float", "name": "4 - Côté/Side B % Diagonale/Diagonal Image", "default": "40", "min": "0", "max": "200", "pos": "4" },
      { "type": "note", "text": "<span foreground=\"orangered\">Angle</span>" },
      { "type": "float", "name": "5 - Degrés/Degrees", "default": "0", "min": "-180", "max": "180", "pos": "5" },
      { "type": "note", "text": "<span foreground=\"orangered\">Complément/Complement</span>" },
      { "type": "bool", "name": "6 - Extérieur/Outside", "default": "0", "pos": "6" },
      { "type": "note", "text": "<span foreground=\"orangered\">Rogner selon le contenu / Crop to content</span>" },
      { "type": "bool", "name": "7 - Autocrop", "default": "0", "pos": "7" },
      { "type": "note", "text": "<span foreground=\"orangered\">Pivoter la sélection / Rotate the selection</span>" },
      { "type": "choice", "name": "8 - Pivoter/Rotate", "default": "0", "pos": "8", "choices": { "0": "Non/No", "1": "Angle", "2": "Angle-90", "3": "Angle+90", "4": "Angle+180" } },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Aperçu Grille / Preview Grid</span>" },
      { "type": "bool", "name": "9 - Visualiser/Preview", "default": "0", "pos": "9" },
      { "type": "int", "name": "10 - Divisions X Y", "default": "2", "min": "2", "max": "40", "pos": "10" },
      { "type": "int", "name": "11 - Couleur Grille/Color Grid", "default": "255", "min": "0", "max": "255", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2023/05/06." }
      ]
    },
    {
      "name": "samj_Selection_Spline_Rounded", "lang": "en", "command": "samj_Selection_Spline_Rounded", "command_preview": "samj_Selection_Spline_Rounded_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Précision du trait / Precision of the line</span>" },
      { "type": "int", "name": "1 - Précision/Precision", "default": "20", "min": "1", "max": "200", "pos": "1" },
      { "type": "note", "text": "<span foreground=\"orangered\">4 Splines Ou/Or 3 Splines </span>" },
      { "type": "bool", "name": "2 - Quatre/Four Splines", "default": "1", "pos": "2" },
      { "type": "note", "text": "<span foreground=\"orangered\">Point A</span>" },
      { "type": "point", "name": "3 4 - A", "position": "80,20", "pos": "3" },
      { "type": "note", "text": "<span foreground=\"orangered\">Point B</span>" },
      { "type": "point", "name": "5 6 - Deform. AC", "position": "95,50", "pos": "5" },
      { "type": "note", "text": "<span foreground=\"orangered\">Point C</span>" },
      { "type": "point", "name": "7 8 - B", "position": "97,97", "pos": "7" },
      { "type": "note", "text": "<span foreground=\"orangered\">Point D</span>" },
      { "type": "point", "name": "9 10 - Deform. CE", "position": "50,95", "pos": "9" },
      { "type": "note", "text": "<span foreground=\"orangered\">Point E</span>" },
      { "type": "point", "name": "11 12 - C", "position": "20,80", "pos": "11" },
      { "type": "note", "text": "<span foreground=\"orangered\">Point F</span>" },
      { "type": "point", "name": "13 14 - Deform. CA ou/or CF", "position": "25,40", "pos": "13" },
      { "type": "note", "text": "<span foreground=\"orangered\">Point G</span>" },
      { "type": "point", "name": "15 16 - G", "position": "3,3", "pos": "15" },
      { "type": "note", "text": "<span foreground=\"orangered\">Point H</span>" },
      { "type": "point", "name": "17 18 - Deform. GA", "position": "40,25", "pos": "17" },
      { "type": "note", "text": "<span foreground=\"orangered\">Barycentre - Pour tester/Try Out</span>" },
      { "type": "bool", "name": "19 - Point vs Deform", "default": "0", "pos": "19" },
      { "type": "note", "text": "<span foreground=\"orangered\">Inverser la sélection / Reverse the selection</span>" },
      { "type": "bool", "name": "20 - Inverser/Reverse", "default": "0", "pos": "20" },
      { "type": "note", "text": "<span foreground=\"orangered\">Rogner selon le contenu / Crop to content</span>" },
      { "type": "bool", "name": "21 - Autocrop", "default": "0", "pos": "21" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Aperçu Grille / Preview Grid</span>" },
      { "type": "bool", "name": "22 - Visualiser/Preview", "default": "0", "pos": "22" },
      { "type": "int", "name": "23 - Divisions X Y", "default": "2", "min": "2", "max": "40", "pos": "23" },
      { "type": "int", "name": "24 - Couleur Grille/Color Grid", "default": "255", "min": "0", "max": "255", "pos": "24" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2023/05/15." }
      ]
    },
    {
      "name": "samj_shapeprevalent_degradations", "lang": "en", "command": "samj_shapeprevalent_degradations", "command_preview": "samj_shapeprevalent_degradations_preview", "parameters": [
      { "type": "separator" },
      { "type": "float", "name": "1 - Flou/Blur", "default": "2", "min": "0", "max": "5", "pos": "1" },
      { "type": "int", "name": "2 - Sharpen", "default": "200", "min": "0", "max": "4000", "pos": "2" },
      { "type": "int", "name": "3 - Smooth", "default": "20", "min": "0", "max": "200", "pos": "3" },
      { "type": "int", "name": "4 - Quantize", "default": "64", "min": "2", "max": "128", "pos": "4" },
      { "type": "int", "name": "5 - Dilate", "default": "8", "min": "0", "max": "32", "pos": "5" },
      { "type": "int", "name": "6 - Erode", "default": "4", "min": "0", "max": "32", "pos": "6" },
      { "type": "int", "name": "7 - Surface/Area", "default": "50", "min": "2", "max": "100", "pos": "7" },
      { "type": "int", "name": "8 - Repeat", "default": "1", "min": "1", "max": "10", "pos": "8" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "9", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2023/04/06." }
      ]
    },
    {
      "name": "Sawtoother [CMY(-K)]", "lang": "en", "command": "sawtoother_cmy_k", "command_preview": "sawtoother_cmy_k_preview", "parameters": [
      { "type": "note", "text": "Splits image into CMY or CMYK channels and uses modulo operations to generate sawtooth waves and map channel intensities to them." },
      { "type": "note", "text": "This filter was intended for screwing up images but it can also be used for quick analysis among other things." },
      { "type": "separator" },
      { "type": "note", "text": "Cyan" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-256", "max": "256", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "4" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "5" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-256", "max": "256", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Magenta" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "7" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-256", "max": "256", "pos": "8" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "9" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "10" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "11" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-256", "max": "256", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "Yellow" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "13" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-256", "max": "256", "pos": "14" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "15" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "16" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "17" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-256", "max": "256", "pos": "18" },
      { "type": "separator" },
      { "type": "note", "text": "Key" },
      { "type": "bool", "name": "Include Channel", "default": "0", "pos": "19" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "20" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-256", "max": "256", "pos": "21" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "22" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "23" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "24" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-256", "max": "256", "pos": "25" },
      { "type": "separator" },
      { "type": "choice", "name": "Tones Range", "default": "0", "pos": "26", "choices": { "0": "All tones", "1": "Shadows", "2": "Mid-tones", "3": "Highlights" } },
      { "type": "float", "name": "Tones Smoothness", "default": "2", "min": "0", "max": "10", "pos": "27" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "28", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right" } }
      ]
    },
    {
      "name": "Sawtoother [HSX]", "lang": "en", "command": "sawtoother_hsx", "command_preview": "sawtoother_hsx_preview", "parameters": [
      { "type": "note", "text": "Splits image into HSV, HSI or HSL channels and uses modulo operations to generate sawtooth waves and map channel intensities to them." },
      { "type": "note", "text": "This filter was intended for screwing up images but it can also be used for quick analysis among other things." },
      { "type": "separator" },
      { "type": "note", "text": "Hue" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-180", "max": "180", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "4" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "5" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-180", "max": "180", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Saturation" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "7" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-1", "max": "1", "pos": "8" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "9" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "10" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "11" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-1", "max": "1", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "Value/Intensity/Lightness" },
      { "type": "choice", "name": "Channel", "default": "0", "pos": "13", "choices": { "0": "Value", "1": "Intensity", "2": "Lightness" } },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "14" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-1", "max": "1", "pos": "15" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "16" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "17" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "18" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-1", "max": "1", "pos": "19" },
      { "type": "separator" },
      { "type": "choice", "name": "Tones Range", "default": "0", "pos": "20", "choices": { "0": "All tones", "1": "Shadows", "2": "Mid-tones", "3": "Highlights" } },
      { "type": "float", "name": "Tones Smoothness", "default": "2", "min": "0", "max": "10", "pos": "21" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "22", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right" } }
      ]
    },
    {
      "name": "Sawtoother [Lab8]", "lang": "en", "command": "sawtoother_lab8", "command_preview": "sawtoother_lab8_preview", "parameters": [
      { "type": "note", "text": "Splits image into Lab8 channels and uses modulo operations to generate sawtooth waves and map channel intensities to them." },
      { "type": "note", "text": "This filter was intended for screwing up images but it can also be used for quick analysis among other things." },
      { "type": "separator" },
      { "type": "note", "text": "Luminance" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-256", "max": "256", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "4" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "5" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-256", "max": "256", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Chrominance a" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "7" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-256", "max": "256", "pos": "8" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "9" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "10" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "11" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-256", "max": "256", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "Chrominance b" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "13" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-256", "max": "256", "pos": "14" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "15" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "16" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "17" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-256", "max": "256", "pos": "18" },
      { "type": "separator" },
      { "type": "choice", "name": "Tones Range", "default": "0", "pos": "19", "choices": { "0": "All tones", "1": "Shadows", "2": "Mid-tones", "3": "Highlights" } },
      { "type": "float", "name": "Tones Smoothness", "default": "2", "min": "0", "max": "10", "pos": "20" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "21", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right" } }
      ]
    },
    {
      "name": "Sawtoother [LCH8]", "lang": "en", "command": "sawtoother_lch8", "command_preview": "sawtoother_lch8_preview", "parameters": [
      { "type": "note", "text": "Splits image into LCH8 channels and uses modulo operations to generate sawtooth waves and map channel intensities to them." },
      { "type": "note", "text": "This filter was intended for screwing up images but it can also be used for quick analysis among other things." },
      { "type": "separator" },
      { "type": "note", "text": "Luminance" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-256", "max": "256", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "4" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "5" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-256", "max": "256", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Chroma" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "7" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-256", "max": "256", "pos": "8" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "9" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "10" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "11" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-256", "max": "256", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "Hue" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "13" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-256", "max": "256", "pos": "14" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "15" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "16" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "17" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-256", "max": "256", "pos": "18" },
      { "type": "separator" },
      { "type": "choice", "name": "Tones Range", "default": "0", "pos": "19", "choices": { "0": "All tones", "1": "Shadows", "2": "Mid-tones", "3": "Highlights" } },
      { "type": "float", "name": "Tones Smoothness", "default": "2", "min": "0", "max": "10", "pos": "20" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "21", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right" } }
      ]
    },
    {
      "name": "Sawtoother [RGB]", "lang": "en", "command": "sawtoother_rgb", "command_preview": "sawtoother_rgb_preview", "parameters": [
      { "type": "note", "text": "Splits image into RGB channels and uses modulo operations to generate sawtooth waves and map channel intensities to them." },
      { "type": "note", "text": "This filter was intended for screwing up images but it can also be used for quick analysis among other things." },
      { "type": "separator" },
      { "type": "note", "text": "Red" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-256", "max": "256", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "4" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "5" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-256", "max": "256", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Green" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "7" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-256", "max": "256", "pos": "8" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "9" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "10" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "11" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-256", "max": "256", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "Blue" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "13" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-256", "max": "256", "pos": "14" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "15" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "16" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "17" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-256", "max": "256", "pos": "18" },
      { "type": "separator" },
      { "type": "choice", "name": "Tones Range", "default": "0", "pos": "19", "choices": { "0": "All tones", "1": "Shadows", "2": "Mid-tones", "3": "Highlights" } },
      { "type": "float", "name": "Tones Smoothness", "default": "2", "min": "0", "max": "10", "pos": "20" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "21", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right" } }
      ]
    },
    {
      "name": "Sawtoother [sRGB]", "lang": "en", "command": "sawtoother_srgb", "command_preview": "sawtoother_srgb_preview", "parameters": [
      { "type": "note", "text": "Splits image into sRGB channels and uses modulo operations to generate sawtooth waves and map channel intensities to them." },
      { "type": "note", "text": "This filter was intended for screwing up images but it can also be used for quick analysis among other things." },
      { "type": "separator" },
      { "type": "note", "text": "Red" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-256", "max": "256", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "4" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "5" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-256", "max": "256", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Green" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "7" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-256", "max": "256", "pos": "8" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "9" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "10" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "11" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-256", "max": "256", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "Blue" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "13" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-256", "max": "256", "pos": "14" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "15" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "16" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "17" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-256", "max": "256", "pos": "18" },
      { "type": "separator" },
      { "type": "choice", "name": "Tones Range", "default": "0", "pos": "19", "choices": { "0": "All tones", "1": "Shadows", "2": "Mid-tones", "3": "Highlights" } },
      { "type": "float", "name": "Tones Smoothness", "default": "2", "min": "0", "max": "10", "pos": "20" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "21", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right" } }
      ]
    },
    {
      "name": "Sawtoother [XYZ8]", "lang": "en", "command": "sawtoother_xyz8", "command_preview": "sawtoother_xyz8_preview", "parameters": [
      { "type": "note", "text": "Splits image into XYZ8 channels and uses modulo operations to generate sawtooth waves and map channel intensities to them." },
      { "type": "note", "text": "This filter was intended for screwing up images but it can also be used for quick analysis among other things." },
      { "type": "separator" },
      { "type": "note", "text": "X" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-256", "max": "256", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "4" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "5" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-256", "max": "256", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Y" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "7" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-256", "max": "256", "pos": "8" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "9" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "10" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "11" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-256", "max": "256", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "Z" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "13" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-256", "max": "256", "pos": "14" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "15" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "16" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "17" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-256", "max": "256", "pos": "18" },
      { "type": "separator" },
      { "type": "choice", "name": "Tones Range", "default": "0", "pos": "19", "choices": { "0": "All tones", "1": "Shadows", "2": "Mid-tones", "3": "Highlights" } },
      { "type": "float", "name": "Tones Smoothness", "default": "2", "min": "0", "max": "10", "pos": "20" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "21", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right" } }
      ]
    },
    {
      "name": "Sawtoother [YCbCr-(-GLIC-JPEG)]", "lang": "en", "command": "sawtoother_ycbcr", "command_preview": "sawtoother_ycbcr_preview", "parameters": [
      { "type": "note", "text": "Splits image into YCbCr channels and uses modulo operations to generate sawtooth waves and map channel intensities to them. One can choose between the original G'MIC implementation, <a href=\"https://web.archive.org/web/20180906062556/https://github.com/GlitchCodec/GLIC/blob/master/colorspaces.pde\">the GLIC implementation</a>, and the JPEG-style implementation by Garagecoder." },
      { "type": "note", "text": "This filter was intended for screwing up images but it can also be used for quick analysis among other things." },
      { "type": "choice", "name": "Channel", "default": "0", "pos": "1", "choices": { "0": "YCbCr", "1": "YCbCrGLIC", "2": "YCbCrJPEG" } },
      { "type": "separator" },
      { "type": "note", "text": "Y (Luminance)" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "2" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-256", "max": "256", "pos": "3" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "4" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "5" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "6" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-256", "max": "256", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Blue Chrominance" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "8" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-256", "max": "256", "pos": "9" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "10" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "11" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "12" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-256", "max": "256", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "Red Chrominance" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "14" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-256", "max": "256", "pos": "15" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "16" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "17" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "18" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-256", "max": "256", "pos": "19" },
      { "type": "separator" },
      { "type": "choice", "name": "Tones Range", "default": "0", "pos": "20", "choices": { "0": "All tones", "1": "Shadows", "2": "Mid-tones", "3": "Highlights" } },
      { "type": "float", "name": "Tones Smoothness", "default": "2", "min": "0", "max": "10", "pos": "21" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "22", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right" } }
      ]
    },
    {
      "name": "Sawtoother [YIQ8]", "lang": "en", "command": "sawtoother_yiq8", "command_preview": "sawtoother_yiq8_preview", "parameters": [
      { "type": "note", "text": "Splits image into YIQ8 channels and uses modulo operations to generate sawtooth waves and map channel intensities to them." },
      { "type": "note", "text": "This filter was intended for screwing up images but it can also be used for quick analysis among other things." },
      { "type": "separator" },
      { "type": "note", "text": "Y (Luminance)" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-256", "max": "256", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "4" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "5" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-256", "max": "256", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Chrominance I" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "7" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-256", "max": "256", "pos": "8" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "9" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "10" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "11" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-256", "max": "256", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "Chrominance Q" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "13" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-256", "max": "256", "pos": "14" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "15" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "16" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "17" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-256", "max": "256", "pos": "18" },
      { "type": "separator" },
      { "type": "choice", "name": "Tones Range", "default": "0", "pos": "19", "choices": { "0": "All tones", "1": "Shadows", "2": "Mid-tones", "3": "Highlights" } },
      { "type": "float", "name": "Tones Smoothness", "default": "2", "min": "0", "max": "10", "pos": "20" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "21", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right" } }
      ]
    },
    {
      "name": "Sawtoother [YUV8]", "lang": "en", "command": "sawtoother_yuv8", "command_preview": "sawtoother_yuv8_preview", "parameters": [
      { "type": "note", "text": "Splits image into YUV8 channels and uses modulo operations to generate sawtooth waves and map channel intensities to them." },
      { "type": "note", "text": "This filter was intended for screwing up images but it can also be used for quick analysis among other things." },
      { "type": "separator" },
      { "type": "note", "text": "Y (Luminance)" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-256", "max": "256", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "4" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "5" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-256", "max": "256", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Chrominance I" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "7" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-256", "max": "256", "pos": "8" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "9" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "10" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "11" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-256", "max": "256", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "Chrominance Q" },
      { "type": "float", "name": "Factor", "default": "1", "min": "0", "max": "20", "pos": "13" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-256", "max": "256", "pos": "14" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "15" },
      { "type": "bool", "name": "Modulo", "default": "1", "pos": "16" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "0", "max": "20", "pos": "17" },
      { "type": "float", "name": "Phase Shift", "default": "0", "min": "-256", "max": "256", "pos": "18" },
      { "type": "separator" },
      { "type": "choice", "name": "Tones Range", "default": "0", "pos": "19", "choices": { "0": "All tones", "1": "Shadows", "2": "Mid-tones", "3": "Highlights" } },
      { "type": "float", "name": "Tones Smoothness", "default": "2", "min": "0", "max": "10", "pos": "20" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "21", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right" } }
      ]
    },
    {
      "name": "Scanlines", "lang": "en", "command": "fx_scanlines", "command_preview": "fx_scanlines", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds simple horizontal scanlines. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "60", "min": "0", "max": "255", "pos": "1" },
      { "type": "float", "name": "Bandwidth", "default": "2", "min": "1", "max": "300", "pos": "2" },
      { "type": "choice", "name": "Shape", "default": "0", "pos": "3", "choices": { "0": "Block", "1": "Triangle", "2": "Sine", "3": "Sine+", "4": "Random" } },
      { "type": "float", "name": "Angle", "default": "0", "min": "0", "max": "360", "pos": "4" },
      { "type": "float", "name": "Offset", "default": "0", "min": "0", "max": "500", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "6", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "choice", "name": "Value Action", "default": "0", "pos": "7", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } },
      { "type": "separator", "visibility": "0" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2014/11/19." }
      ]
    },
    {
      "name": "Self Glitching", "lang": "en", "command": "fx_self_glitching", "command_preview": "fx_self_glitching", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Creates glitches by mixing shifted image data with itself. " },
      { "type": "separator" },
      { "type": "float", "name": "Multiplier", "default": "0", "min": "-5", "max": "5", "pos": "1" },
      { "type": "float", "name": "Bias", "default": "0", "min": "-255", "max": "255", "pos": "2" },
      { "type": "bool", "name": "Negate", "default": "0", "pos": "3" },
      { "type": "choice", "name": "Operator", "default": "0", "pos": "4", "choices": { "0": "Add", "1": "Mul", "2": "And", "3": "Or", "4": "Xor", "5": "Pow", "6": "Reverse Pow", "7": "Mod", "8": "Reverse Mod" } },
      { "type": "point", "name": "Shift Point", "position": "50,50", "pos": "5" },
      { "type": "choice", "name": "Boundary", "default": "3", "pos": "7", "choices": { "0": "Zero", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "8", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2018/08/19." }
      ]
    },
    {
      "name": "Shredder", "lang": "en", "command": "fx_shredder", "command_preview": "fx_shredder_preview", "parameters": [
      { "type": "note", "text": "Re-fills an image with its own values but makes random jumps in the relative positions where the lookup for the values takes place. Can be channel-independent. Relative gap sizes are cubed to make it easier to use small gaps between jumps." },
      { "type": "button", "name": "0. Recompute", "alignment": "0", "pos": "1" },
      { "type": "bool", "name": "1. Randomised Start", "default": "1", "pos": "2" },
      { "type": "choice", "name": "2. Channels", "default": "0", "pos": "3", "choices": { "0": "Correlated", "1": "RGB", "2": "sRGB", "3": "CMY", "4": "RYB", "5": "Ohta8", "6": "Ohta", "7": "YES8", "8": "YES", "9": "Kodak 1-8", "10": "Kodak1", "11": "Lab8", "12": "Lab", "13": "Oklab", "14": "LUV", "15": "Jzazbz", "16": "YIQ8", "17": "YIQ", "18": "YUV8", "19": "YUV", "20": "YCbCr", "21": "YCbCrGLIC", "22": "YCbCrJPEG", "23": "YDbDr", "24": "XYZ8", "25": "XYZ", "26": "HSV8", "27": "HSV", "28": "HSL8", "29": "HSL", "30": "HSI8", "31": "HSI", "32": "LCH8", "33": "LCH", "34": "JzCzHz", "35": "HCY" } },
      { "type": "bool", "name": "3. Alpha", "default": "1", "pos": "4" },
      { "type": "float", "name": "4. X Min Gap", "default": "0", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "5. X Max Gap", "default": "100", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "6. X Strength", "default": "0.5", "min": "0", "max": "1", "pos": "7" },
      { "type": "float", "name": "7. Y Min Gap", "default": "0", "min": "0", "max": "100", "pos": "8" },
      { "type": "float", "name": "8. Y Max Gap", "default": "100", "min": "0", "max": "100", "pos": "9" },
      { "type": "float", "name": "9. Y Strength", "default": "0.5", "min": "0", "max": "1", "pos": "10" },
      { "type": "choice", "name": "10. Mirror", "default": "0", "pos": "11", "choices": { "0": "None", "1": "X", "2": "Y", "3": "XY" } },
      { "type": "choice", "name": "11. Rotate", "default": "0", "pos": "12", "choices": { "0": "None", "1": "90 clockwise", "2": "180", "3": "90 anticlockwise" } }
      ]
    },
    {
      "name": "Sloppy Mess", "lang": "en", "command": "pr_sloppymess", "command_preview": "pr_sloppymess_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Slices the image then rotates and mirror each slice. " },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Slices:</span>" },
      { "type": "int", "name": "Angle", "default": "0", "min": "0", "max": "360", "pos": "1" },
      { "type": "int", "name": "Width (px)", "default": "1", "min": "1", "max": "1000", "pos": "2" },
      { "type": "choice", "name": "Axis", "default": "0", "pos": "3", "choices": { "0": "X-Axis", "1": "Y-Axis" } },
      { "type": "choice", "name": "Mirror Axis", "default": "0", "pos": "4", "choices": { "0": "X-Axis", "1": "Y-Axis" } },
      { "type": "int", "name": "Mirror Selection Interval (0:Off, -1:Random)", "default": "-1", "min": "-1", "max": "50", "pos": "5" },
      { "type": "bool", "name": "Invert Mirror Selection", "default": "0", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Rotation:</span>" },
      { "type": "bool", "name": "Apply to channels", "default": "0", "pos": "7" },
      { "type": "int", "name": "Range Clockwise", "default": "35", "min": "0", "max": "90", "pos": "8" },
      { "type": "int", "name": "Range Counter-Clockwise", "default": "-35", "min": "-90", "max": "0", "pos": "9" },
      { "type": "int", "name": "Boundary Conditions", "default": "2", "min": "0", "max": "3", "pos": "10" },
      { "type": "int", "name": "Center X(%)", "default": "0", "min": "0", "max": "100", "pos": "11" },
      { "type": "int", "name": "Center Y(%)", "default": "0", "min": "0", "max": "100", "pos": "12" },
      { "type": "separator" },
      { "type": "bool", "name": "Apply to channels", "default": "0", "pos": "13" },
      { "type": "int", "name": "Deform", "default": "2", "min": "0", "max": "20", "pos": "14" },
      { "type": "float", "name": "Scale", "default": "2", "min": "0.1", "max": "20", "pos": "15" },
      { "type": "separator" },
      { "type": "int", "name": "Iterations", "default": "1", "min": "1", "max": "20", "pos": "16" },
      { "type": "choice", "name": "Blending", "default": "3", "pos": "17", "choices": { "0": "Add", "1": "Alpha", "2": "And", "3": "Average", "4": "Blue", "5": "Burn", "6": "Darken", "7": "Difference", "8": "Divide", "9": "Dodge", "10": "Edges", "11": "Exclusion", "12": "Freeze", "13": "Grainextract", "14": "Grainmerge", "15": "Green", "16": "Hardlight", "17": "Hardmix", "18": "Hue", "19": "Interpolation", "20": "Lchlightness", "21": "Lighten", "22": "Lightness", "23": "Linearburn", "24": "Linearlight", "25": "Luminance", "26": "Multiply", "27": "Negation", "28": "Or", "29": "Overlay", "30": "Pinlight", "31": "Red", "32": "Reflect", "33": "Saturation", "34": "Screen", "35": "Seamless", "36": "Seamless_mixed", "37": "Softburn", "38": "Softdodge", "39": "Softlight", "40": "Stamp", "41": "Subtract", "42": "Value", "43": "Vividlight", "44": "Xor" } },
      { "type": "float", "name": "Strength", "default": "100", "min": "0", "max": "100", "pos": "18" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Prawnsushi.      Latest Update: 2024/07/07." }
      ]
    },
    {
      "name": "Smooth EQ", "lang": "en", "command": "fx_jr_smooth_eq", "command_preview": "fx_jr_smooth_eq_preview", "parameters": [
      { "type": "note", "text": "A zero-phase equaliser with low-pass and high-pass filters and 5 band shelves." },
      { "type": "separator" },
      { "type": "note", "text": "Low Pass" },
      { "type": "float", "name": "Frequency Power", "default": "8", "min": "0", "max": "16", "pos": "1" },
      { "type": "float", "name": "Order Cube Root", "default": "2", "min": "0", "max": "4", "pos": "2" },
      { "type": "float", "name": "Resonance", "default": "0", "min": "0", "max": "5", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Band Shelf 1" },
      { "type": "float", "name": "Frequency Power", "default": "3", "min": "0", "max": "16", "pos": "4" },
      { "type": "float", "name": "Order Cube Root", "default": "2", "min": "0", "max": "4", "pos": "5" },
      { "type": "float", "name": "Bandwidth", "default": "1.5", "min": "0", "max": "16", "pos": "6" },
      { "type": "float", "name": "Gain", "default": "0", "min": "-10", "max": "10", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Band Shelf 2" },
      { "type": "float", "name": "Frequency Power", "default": "4", "min": "0", "max": "16", "pos": "8" },
      { "type": "float", "name": "Order Cube Root", "default": "2", "min": "0", "max": "4", "pos": "9" },
      { "type": "float", "name": "Bandwidth", "default": "2", "min": "0", "max": "16", "pos": "10" },
      { "type": "float", "name": "Gain", "default": "0", "min": "-10", "max": "10", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Band Shelf 3" },
      { "type": "float", "name": "Frequency Power", "default": "5", "min": "0", "max": "16", "pos": "12" },
      { "type": "float", "name": "Order Cube Root", "default": "2", "min": "0", "max": "4", "pos": "13" },
      { "type": "float", "name": "Bandwidth", "default": "2", "min": "0", "max": "16", "pos": "14" },
      { "type": "float", "name": "Gain", "default": "0", "min": "-10", "max": "10", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "Band Shelf 4" },
      { "type": "float", "name": "Frequency Power", "default": "6", "min": "0", "max": "16", "pos": "16" },
      { "type": "float", "name": "Order Cube Root", "default": "2", "min": "0", "max": "4", "pos": "17" },
      { "type": "float", "name": "Bandwidth", "default": "2", "min": "0", "max": "16", "pos": "18" },
      { "type": "float", "name": "Gain", "default": "0", "min": "-10", "max": "10", "pos": "19" },
      { "type": "separator" },
      { "type": "note", "text": "Band Shelf 5" },
      { "type": "float", "name": "Frequency Power", "default": "7", "min": "0", "max": "16", "pos": "20" },
      { "type": "float", "name": "Order Cube Root", "default": "2", "min": "0", "max": "4", "pos": "21" },
      { "type": "float", "name": "Bandwidth", "default": "2", "min": "0", "max": "16", "pos": "22" },
      { "type": "float", "name": "Gain", "default": "0", "min": "-10", "max": "10", "pos": "23" },
      { "type": "separator" },
      { "type": "note", "text": "High Pass" },
      { "type": "float", "name": "Frequency Power", "default": "3", "min": "0", "max": "16", "pos": "24" },
      { "type": "float", "name": "Order Cube Root", "default": "2", "min": "0", "max": "4", "pos": "25" },
      { "type": "float", "name": "Resonance", "default": "0", "min": "0", "max": "5", "pos": "26" },
      { "type": "choice", "name": "Colour Space", "default": "0", "pos": "27", "choices": { "0": "RGB", "1": "sRGB", "2": "CMY", "3": "RYB", "4": "Ohta8", "5": "Ohta", "6": "YES8", "7": "YES", "8": "Kodak 1-8", "9": "Kodak1", "10": "Lab8", "11": "Lab", "12": "Oklab", "13": "LUV", "14": "Jzazbz", "15": "YIQ8", "16": "YIQ", "17": "YUV8", "18": "YUV", "19": "YCbCr", "20": "YCbCrGLIC", "21": "YCbCrJPEG", "22": "YDbDr", "23": "XYZ8", "24": "XYZ", "25": "HSV8", "26": "HSV", "27": "HSL8", "28": "HSL", "29": "HSI8", "30": "HSI", "31": "LCH8", "32": "LCH", "33": "JzCzHz", "34": "HCY" } },
      { "type": "bool", "name": "Alpha", "default": "0", "pos": "28" },
      { "type": "bool", "name": "Absolute", "default": "1", "pos": "29" },
      { "type": "bool", "name": "Makeup Gain", "default": "1", "pos": "30" },
      { "type": "bool", "name": "Preview Frequency Response", "default": "0", "pos": "31" }
      ]
    },
    {
      "name": "Streak", "lang": "en", "command": "fx_streak", "command_preview": "fx_streak", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Fill mask with shifted versions of the image. " },
      { "type": "separator" },
      { "type": "color", "name": "Mask Color", "default": "255,0,0,255", "pos": "1" },
      { "type": "float", "name": "Step (%)", "default": "0", "min": "0", "max": "30", "pos": "5" },
      { "type": "float", "name": "Angle", "default": "0", "min": "0", "max": "360", "pos": "6" },
      { "type": "choice", "name": "Propagation", "default": "3", "pos": "7", "choices": { "0": "Backward", "1": "Forward", "2": "Bidirectional [Sharp]", "3": "Bidirectional [Smooth]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2017/12/22." }
      ]
    },
    {
      "name": "Superstreak", "lang": "en", "command": "fx_superstreak", "command_preview": "fx_superstreak_preview", "parameters": [
      { "type": "separator" },
      { "type": "int", "name": "1. Random Seed", "default": "10", "min": "0", "max": "65535", "pos": "1" },
      { "type": "int", "name": "2. Iterations", "default": "10", "min": "1", "max": "20", "pos": "2" },
      { "type": "choice", "name": "3. Propagation", "default": "3", "pos": "3", "choices": { "0": "Backward", "1": "Forward", "2": "Bidirectional [Sharp]", "3": "Bidirectional [Smooth]" } },
      { "type": "float", "name": "4. Min Threshold", "default": "0.50", "min": "0.00", "max": "1.00", "pos": "4" },
      { "type": "float", "name": "5. Max Threshold", "default": "0.50", "min": "0.00", "max": "1.00", "pos": "5" },
      { "type": "float", "name": "6. Min Step Size", "default": "10", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "7. Max Step Size", "default": "30", "min": "0", "max": "100", "pos": "7" }
      ]
    },
    {
      "name": "UltraWarp 3", "lang": "en", "command": "fx_ultrawarp3_preview", "command_preview": "", "parameters": [
      { "type": "separator" },
      { "type": "button", "name": "0. Recompute", "pos": "1" },
      { "type": "int", "name": "1. Random Seed", "default": "-1", "min": "-1", "max": "65535", "pos": "2" },
      { "type": "int", "name": "2. Iterations", "default": "1", "min": "1", "max": "10", "pos": "3" },
      { "type": "float", "name": "3. Warp Magnitude", "default": "1", "min": "0", "max": "10", "pos": "4" },
      { "type": "float", "name": "4. WM Range", "default": "1", "min": "0", "max": "10", "pos": "5" },
      { "type": "float", "name": "5. Warp Angle", "default": "0", "min": "0", "max": "360", "pos": "6" },
      { "type": "float", "name": "6. WA Range", "default": "360", "min": "0", "max": "360", "pos": "7" },
      { "type": "float", "name": "7. Offset Magnitude", "default": "1", "min": "0", "max": "100", "pos": "8" },
      { "type": "float", "name": "8. OM Range", "default": "1", "min": "0", "max": "100", "pos": "9" },
      { "type": "float", "name": "9. Offset Angle", "default": "0", "min": "0", "max": "360", "pos": "10" },
      { "type": "float", "name": "10. OA Range", "default": "360", "min": "0", "max": "360", "pos": "11" },
      { "type": "bool", "name": "11. Correlated Channels", "default": "0", "pos": "12" },
      { "type": "choice", "name": "12. Interpolation", "default": "1", "pos": "13", "choices": { "0": "Nearest Neighbor", "1": "Linear" } },
      { "type": "choice", "name": "13. Boundary", "default": "3", "pos": "14", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "choice", "name": "14. Colour Space", "default": "0", "pos": "15", "choices": { "0": "RGB", "1": "sRGB", "2": "CMY", "3": "RYB", "4": "Ohta8", "5": "Ohta", "6": "YES8", "7": "YES", "8": "Kodak 1-8", "9": "Kodak1", "10": "Lab8", "11": "Lab", "12": "Oklab", "13": "LUV", "14": "Jzazbz", "15": "YIQ8", "16": "YIQ", "17": "YUV8", "18": "YUV", "19": "YCbCr", "20": "YCbCrGLIC", "21": "YCbCrJPEG", "22": "YDbDr", "23": "XYZ8", "24": "XYZ", "25": "HSV8", "26": "HSV", "27": "HSL8", "28": "HSL", "29": "HSI8", "30": "HSI", "31": "LCH8", "32": "LCH", "33": "JzCzHz", "34": "HCY" } },
      { "type": "separator" },
      { "type": "choice", "name": "15. Channel(s)", "default": "0", "pos": "16", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGB [All]", "3": "RGB [Red]", "4": "RGB [Green]", "5": "RGB [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [Luminance]", "12": "YCbCr [Blue-Red Chrominances]", "13": "YCbCr [Blue Chrominance]", "14": "YCbCr [Red Chrominance]", "15": "YCbCr [Green Chrominance]", "16": "Lab [Lightness]", "17": "Lab [ab-Chrominances]", "18": "Lab [a-Chrominance]", "19": "Lab [b-Chrominance]", "20": "Lch [ch-Chrominances]", "21": "Lch [c-Chrominance]", "22": "Lch [h-Chrominance]", "23": "HSV [Hue]", "24": "HSV [Saturation]", "25": "HSV [Value]", "26": "HSI [Intensity]", "27": "HSL [Lightness]", "28": "CMYK [Cyan]", "29": "CMYK [Magenta]", "30": "CMYK [Yellow]", "31": "CMYK [Key]", "32": "YIQ [Luma]", "33": "YIQ [Chromas]", "34": "RYB [All]", "35": "RYB [Red]", "36": "RYB [Yellow]", "37": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "button", "name": "0. Recompute", "pos": "17" },
      { "type": "float", "name": "1. Density", "default": "15", "min": "0", "max": "100", "pos": "18" },
      { "type": "float", "name": "2. Details Influence", "default": "50", "min": "0", "max": "100", "pos": "19" },
      { "type": "float", "name": "3. X Offset Centre", "default": "0", "min": "-100", "max": "100", "pos": "20" },
      { "type": "float", "name": "4. X Offset Range", "default": "25", "min": "0", "max": "200", "pos": "21" },
      { "type": "float", "name": "5. Y Offset Centre", "default": "0", "min": "-100", "max": "100", "pos": "22" },
      { "type": "float", "name": "6. Y Offset Range", "default": "25", "min": "0", "max": "200", "pos": "23" },
      { "type": "float", "name": "7. Z Offset Centre", "default": "0", "min": "-100", "max": "100", "pos": "24" },
      { "type": "float", "name": "8. Z Offset Range", "default": "0", "min": "0", "max": "200", "pos": "25" },
      { "type": "float", "name": "9. Rot Angle Centre", "default": "0", "min": "-360", "max": "360", "pos": "26" },
      { "type": "float", "name": "10. Rot Angle Range", "default": "360", "min": "0", "max": "360", "pos": "27" },
      { "type": "float", "name": "11. Rot Axis X Centre", "default": "0", "min": "-1", "max": "1", "pos": "28" },
      { "type": "float", "name": "12. Rot Axis X Range", "default": "0", "min": "0", "max": "2", "pos": "29" },
      { "type": "float", "name": "13. Rot Axis Y Centre", "default": "0", "min": "-1", "max": "1", "pos": "30" },
      { "type": "float", "name": "14. Rot Axis Y Range", "default": "0", "min": "0", "max": "2", "pos": "31" },
      { "type": "float", "name": "15. Rot Axis Z Centre", "default": "1", "min": "-1", "max": "1", "pos": "32" },
      { "type": "float", "name": "16. Rot Axis Z Range", "default": "0", "min": "0", "max": "2", "pos": "33" },
      { "type": "int", "name": "17. AA Iterations", "default": "16", "min": "0", "max": "100", "pos": "34" },
      { "type": "float", "name": "18. Sharpness", "default": "0", "min": "0", "max": "2", "pos": "35" },
      { "type": "float", "name": "19. AA Anisotropy", "default": "1", "min": "0", "max": "1", "pos": "36" },
      { "type": "float", "name": "20. AA Gradient Smoothness", "default": "1", "min": "0", "max": "10", "pos": "37" },
      { "type": "float", "name": "21. Tensor Smoothness", "default": "5", "min": "0", "max": "10", "pos": "38" },
      { "type": "float", "name": "22. Time Step", "default": "15", "min": "5", "max": "50", "pos": "39" }
      ]
    },
    {
      "name": "VHS Filter", "lang": "en", "command": "fx_vhs_filter", "command_preview": "fx_vhs_filter", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Filter for applying VHS effect over image. " },
      { "type": "separator" },
      { "type": "float", "name": "Chromatic aberration", "default": "3", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Noise", "default": "15", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Chroma blur", "default": "20", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Luma blur", "default": "5", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Sharpen", "default": "1", "min": "0", "max": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author: <a href=\"https://bsky.app/profile/glairedaggers.bsky.social\">Hazel Stagner</a>.      Latest Update: 2024/11/16." }
      ]
    },
    {
      "name": "Visible Watermark", "lang": "en", "command": "fx_watermark_visible", "command_preview": "fx_watermark_visible", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds a visible text watermark. " },
      { "type": "separator" },
      { "type": "text", "name": "Text", "default": "\\251 G'MIC", "pos": "1" },
      { "type": "float", "name": "Opacity", "default": "0.4", "min": "0", "max": "1", "pos": "2" },
      { "type": "choice", "name": "Font", "default": "27", "pos": "3", "choices": { "0": "Acme", "1": "Arial", "2": "Arial Black", "3": "Black Ops One", "4": "Black Chancery", "5": "Cabin Sketch", "6": "Caprasimo", "7": "Carnevalee Freakshow", "8": "Cheese Burger", "9": "Cheque", "10": "Cheque Black", "11": "Chlorinar", "12": "Comic Sans MS", "13": "Courier New", "14": "Creepster", "15": "Georgia", "16": "Hidayatullah", "17": "Impact", "18": "Jaro", "19": "Lobster", "20": "Luckiest Guy", "21": "Macondo", "22": "Medieval Sharp", "23": "Odin Rounded", "24": "Oswald", "25": "Palatino Linotype", "26": "Playfair Display", "27": "Roboto", "28": "Satisfy", "29": "Sofia", "30": "Sunday Milk", "31": "Tex Gyre Adventor", "32": "Times New Roman", "33": "Titan One", "34": "Typewriter", "35": "Verdana" } },
      { "type": "int", "name": "Size", "default": "50", "min": "13", "max": "512", "pos": "4" },
      { "type": "bool", "name": "Bold Face", "default": "0", "pos": "5" },
      { "type": "float", "name": "Angle", "default": "25", "min": "0", "max": "360", "pos": "6" },
      { "type": "choice", "name": "Lightness", "default": "1", "pos": "7", "choices": { "0": "Darker", "1": "Brighter" } },
      { "type": "float", "name": "Smoothness", "default": "0.5", "min": "0", "max": "5", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2023/09/16." }
      ]
    },
    {
      "name": "Warp by Intensity", "lang": "en", "command": "fx_warp_by_intensity", "command_preview": "fx_warp_by_intensity", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Warps the image based on its own pixel intensity. " },
      { "type": "separator" },
      { "type": "float", "name": "X-Factor", "default": "0.04", "min": "-6", "max": "6", "pos": "1" },
      { "type": "float", "name": "Y-Factor", "default": "0.04", "min": "-6", "max": "6", "pos": "2" },
      { "type": "separator" },
      { "type": "float", "name": "X-Offset", "default": "128", "min": "0", "max": "255", "pos": "3" },
      { "type": "float", "name": "Y-Offset", "default": "128", "min": "0", "max": "255", "pos": "4" },
      { "type": "separator" },
      { "type": "bool", "name": "Correlated Channels", "default": "0", "pos": "5" },
      { "type": "choice", "name": "Interpolation", "default": "1", "pos": "6", "choices": { "0": "Nearest Neighbor", "1": "Linear" } },
      { "type": "choice", "name": "Boundary", "default": "3", "pos": "7", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "8", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/09/02." }
      ]
    }
    ]
  },
  {
    "name": "Details", "filters": [
    {
      "name": "8-Bit Plane Splitter", "lang": "en", "command": "fx_bitplane8", "command_preview": "fx_bitplane8_preview", "parameters": [
      { "type": "choice", "name": "Mode", "default": "0", "pos": "1", "choices": { "0": "Decompose", "1": "Recompose" } },
      { "type": "choice", "name": "Split Mode", "default": "1", "pos": "2", "choices": { "0": "Z layers", "1": "Separate images" } },
      { "type": "choice", "name": "Value Mode", "default": "0", "pos": "3", "choices": { "0": "Real", "1": "1", "2": "255" } },
      { "type": "bool", "name": "Alpha", "default": "0", "pos": "4" }
      ]
    },
    {
      "name": "Antialias Wavelet", "lang": "en", "command": "samj_Antialias_Wavelet", "command_preview": "samj_Antialias_Wavelet ", "parameters": [
      { "type": "note", "text": "<span foreground=\"orangered\">Pour dessins avec crenelage</span>" },
      { "type": "int", "name": "Flou", "default": "40", "min": "0", "max": "255", "pos": "1" },
      { "type": "int", "name": "Trait", "default": "0", "min": "0", "max": "255", "pos": "2" },
      { "type": "int", "name": "Cut Bas", "default": "127", "min": "0", "max": "255", "pos": "3" },
      { "type": "int", "name": "Cut Haut", "default": "255", "min": "0", "max": "255", "pos": "4" },
      { "type": "int", "name": "Dilate Circle W", "default": "1", "min": "1", "max": "3", "pos": "5" },
      { "type": "int", "name": "Netteté", "default": "60", "min": "0", "max": "128", "pos": "6" },
      { "type": "int", "name": "Dilate Circle R", "default": "1", "min": "1", "max": "3", "pos": "7" },
      { "type": "bool", "name": "Normaliser", "default": "1", "pos": "8" },
      { "type": "int", "name": "Itérations", "default": "1", "min": "1", "max": "3", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/11/17." }
      ]
    },
    {
      "name": "Bilinear Enhancement", "lang": "en", "command": "fx_jr_bilinear", "command_preview": "fx_jr_bilinear_preview", "parameters": [
      { "type": "int", "name": "Overall Iterations", "default": "1", "min": "1", "max": "10", "pos": "1" },
      { "type": "int", "name": "Bilateral Sub-Iterations", "default": "3", "min": "1", "max": "10", "pos": "2" },
      { "type": "float", "name": "Spatial Variance", "default": "10", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Value Variance", "default": "10", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Amplitude", "default": "1", "min": "-10", "max": "10", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "6", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGB [All]", "3": "RGB [Red]", "4": "RGB [Green]", "5": "RGB [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [Luminance]", "12": "YCbCr [Blue-Red Chrominances]", "13": "YCbCr [Blue Chrominance]", "14": "YCbCr [Red Chrominance]", "15": "YCbCr [Green Chrominance]", "16": "Lab [Lightness]", "17": "Lab [ab-Chrominances]", "18": "Lab [a-Chrominance]", "19": "Lab [b-Chrominance]", "20": "Lch [ch-Chrominances]", "21": "Lch [c-Chrominance]", "22": "Lch [h-Chrominance]", "23": "HSV [Hue]", "24": "HSV [Saturation]", "25": "HSV [Value]", "26": "HSI [Intensity]", "27": "HSL [Lightness]", "28": "CMYK [Cyan]", "29": "CMYK [Magenta]", "30": "CMYK [Yellow]", "31": "CMYK [Key]", "32": "YIQ [Luma]", "33": "YIQ [Chromas]", "34": "RYB [All]", "35": "RYB [Red]", "36": "RYB [Yellow]", "37": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "7", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "8", "visibility": "0" }
      ]
    },
    {
      "name": "Constrained Sharpen", "lang": "en", "command": "iain_constrained_sharpen", "command_preview": "iain_constrained_sharpen", "parameters": [
      { "type": "float", "name": "Sharpen Radius", "default": ".75", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "Amount", "default": "2", "min": "0", "max": "10", "pos": "2" },
      { "type": "float", "name": "Threshold", "default": "1", "min": "0", "max": "50", "pos": "3" },
      { "type": "int", "name": "Constraint Radius", "default": "5", "min": "0", "max": "10", "pos": "4" },
      { "type": "float", "name": "Overshoot", "default": "0", "min": "0", "max": "50", "pos": "5" },
      { "type": "choice", "name": "Channel(s)", "default": "11", "pos": "6", "choices": { "0": "All", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "Linear RGB [all]", "8": "Linear RGB [red]", "9": "Linear RGB [green]", "10": "Linear RGB [blue]", "11": "YCbCr [luminance]", "12": "YCbCr [blue-red chrominances]", "13": "YCbCr [blue chrominance]", "14": "YCbCr [red chrominance]", "15": "YCbCr [green chrominance]", "16": "Lab [lightness]", "17": "Lab [ab-chrominances]", "18": "Lab [a-chrominance]", "19": "Lab [b-chrominance]", "20": "Lch [ch-chrominances]", "21": "Lch [c-chrominance]", "22": "Lch [h-chrominance]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [intensity]", "27": "HSL [lightness]", "28": "CMYK [cyan]", "29": "CMYK [magenta]", "30": "CMYK [yellow]", "31": "CMYK [key]" } },
      { "type": "choice", "name": "Value Action", "default": "1", "pos": "7", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } },
      { "type": "separator" },
      { "type": "note", "text": "Sharpens image but restricts pixels values to local minimum and maximum values to significantly reduce halos." },
      { "type": "note", "text": "Sharpen Radius, Amount and Threshold are the normal unsharp controls." },
      { "type": "note", "text": "A high Amount will produce aliasing" },
      { "type": "note", "text": "Constraint Radius sets the radius to find the local minimum and maximum." },
      { "type": "note", "text": "Overshoot sets how far the sharpening is allowed to go past the local minimum and maximum values." },
      { "type": "note", "text": "Author : Iain Fergusson. release: 2 August 2016 update: 25 August 2018" }
      ]
    },
    {
      "name": "DCP Dehaze", "lang": "en", "command": "jeje_dehaze", "command_preview": "jeje_dehaze_preview", "parameters": [
      { "type": "int", "name": "Scale", "default": "5", "min": "1", "max": "20", "pos": "1" },
      { "type": "float", "name": "Strength", "default": "1", "min": "0", "max": "2", "pos": "2" },
      { "type": "float", "name": "Min", "default": ".2", "min": "0", "max": "1", "pos": "3" },
      { "type": "float", "name": "Max", "default": "1", "min": "0", "max": "1", "pos": "4" },
      { "type": "float", "name": "Brighness", "default": "0", "min": "-100", "max": "100", "pos": "5" },
      { "type": "float", "name": "Contrast", "default": "0", "min": "-100", "max": "100", "pos": "6" },
      { "type": "float", "name": "Gamma", "default": "0", "min": "-100", "max": "100", "pos": "7" },
      { "type": "bool", "name": "Transmittance Map", "default": "0", "pos": "8" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "9", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Dark Channel Prior dehazing.Author : Jérôme Boulanger. Latest update: 2016/08/09." }
      ]
    },
    {
      "name": "Details Equalizer", "lang": "en", "command": "fx_equalize_details", "command_preview": "fx_equalize_details", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adjusts image details at different spatial scales (frequencies). " },
      { "type": "separator" },
      { "type": "float", "name": "Base Scale", "default": "5", "min": "0", "max": "15", "pos": "1" },
      { "type": "float", "name": "Detail Scale", "default": "0.5", "min": "0", "max": "5", "pos": "2" },
      { "type": "note", "text": "Coarse scale:" },
      { "type": "float", "name": "Threshold", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "4" },
      { "type": "choice", "name": "Smoothness Type", "default": "2", "pos": "5", "choices": { "0": "Gaussian", "1": "Bilateral", "2": "Diffusion" } },
      { "type": "float", "name": "Gain", "default": "0", "min": "-4", "max": "4", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Medium scale:" },
      { "type": "float", "name": "Threshold", "default": "0", "min": "0", "max": "10", "pos": "7" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "8" },
      { "type": "choice", "name": "Smoothness Type", "default": "2", "pos": "9", "choices": { "0": "Gaussian", "1": "Bilateral", "2": "Diffusion" } },
      { "type": "float", "name": "Gain", "default": "0", "min": "-4", "max": "4", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "Small scale:" },
      { "type": "float", "name": "Threshold", "default": "0", "min": "0", "max": "10", "pos": "11" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "12" },
      { "type": "choice", "name": "Smoothness Type", "default": "2", "pos": "13", "choices": { "0": "Gaussian", "1": "Bilateral", "2": "Diffusion" } },
      { "type": "float", "name": "Gain", "default": "0", "min": "-4", "max": "4", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "Fine scale:" },
      { "type": "float", "name": "Threshold", "default": "0", "min": "0", "max": "10", "pos": "15" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "16" },
      { "type": "choice", "name": "Smoothness Type", "default": "2", "pos": "17", "choices": { "0": "Gaussian", "1": "Bilateral", "2": "Diffusion" } },
      { "type": "float", "name": "Gain", "default": "0", "min": "-4", "max": "4", "pos": "18" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "19", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "choice", "name": "Value Action", "default": "0", "pos": "20", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } },
      { "type": "separator" },
      { "type": "choice", "name": "Parallel Processing", "default": "0", "pos": "21", "choices": { "0": "Auto", "1": "One Thread", "2": "Two Threads", "3": "Four Threads", "4": "Eight Threads", "5": "Sixteen Threads" } },
      { "type": "int", "name": "Spatial Overlap", "default": "32", "min": "0", "max": "256", "pos": "22" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Jérome Boulanger and David Tschumperlé.       Latest Update: 2015/11/11." }
      ]
    },
    {
      "name": "Dynamic Range Increase", "lang": "en", "command": "fx_tk_dri", "command_preview": "fx_tk_dri_preview", "parameters": [
      { "type": "float", "name": "Map Tones", "default": "0", "min": "0", "max": "1", "pos": "1" },
      { "type": "float", "name": "Recover Shadows", "default": "0", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "Recover Highlights", "default": "0", "min": "0", "max": "1", "pos": "3" },
      { "type": "float", "name": "Enhance Details", "default": "1", "min": "0", "max": "5", "pos": "4" },
      { "type": "float", "name": "Detail Strength", "default": "0.5", "min": "0", "max": "1", "pos": "5" },
      { "type": "bool", "name": "Map Tones", "default": "1", "pos": "6" },
      { "type": "bool", "name": "Enhance Details", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "8", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Tom Keil      Latest update: 2011/12/04." }
      ]
    },
    {
      "name": "Equalize Local Histograms", "lang": "en", "command": "fx_equalize_local_histograms", "command_preview": "fx_equalize_local_histograms", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Enhances contrast locally using histogram equalization. " },
      { "type": "separator" },
      { "type": "float", "name": "Strength (%)", "default": "75", "min": "0", "max": "100", "pos": "1" },
      { "type": "choice", "name": "Mode", "default": "2", "pos": "2", "choices": { "0": "Raw", "1": "Hard", "2": "Soft" } },
      { "type": "int", "name": "Radius", "default": "4", "min": "1", "max": "16", "pos": "3" },
      { "type": "float", "name": "Sigma", "default": "100", "min": "0", "max": "256", "pos": "4" },
      { "type": "float", "name": "Regularization", "default": "8", "min": "0", "max": "32", "pos": "5" },
      { "type": "bool", "name": "Reduce Halos", "default": "1", "pos": "6" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "7", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2018/01/31." }
      ]
    },
    {
      "name": "Freaky Details", "lang": "en", "command": "fx_freaky_details", "command_preview": "fx_freaky_details", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Strongly enhances local contrast for a \"HDR-like\" gritty look. " },
      { "type": "separator" },
      { "type": "int", "name": "Amplitude", "default": "2", "min": "1", "max": "5", "pos": "1" },
      { "type": "float", "name": "Scale", "default": "10", "min": "0", "max": "100", "pos": "2" },
      { "type": "int", "name": "Iterations", "default": "1", "min": "1", "max": "4", "pos": "3" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "7", "pos": "4", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Authors: David Tschumperlé and Patrick David.       Latest Update: 2013/02/27." },
      { "type": "separator" },
      { "type": "note", "text": "This effect has been done following:" },
      { "type": "link", "name": "This tutorial from Patrick David", "url": "https://patdavid.net/2013/02/calvin-hollywood-freaky-details-in-gimp.html", "align": "center" }
      ]
    },
    {
      "name": "High Pass", "lang": "en", "command": "fx_highpass", "command_preview": "fx_highpass_preview", "parameters": [
      { "type": "float", "name": "Radius", "default": "5", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Contrast", "default": "2", "min": "0", "max": "7", "pos": "2" },
      { "type": "bool", "name": "Inverse", "default": "0", "pos": "3" },
      { "type": "bool", "name": "Greyscale", "default": "0", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "5", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Tom Keil.      Latest update: 2011/05/01." }
      ]
    },
    {
      "name": "Local Contrast Enhancement", "lang": "en", "command": "fx_LCE", "command_preview": "fx_LCE_preview", "parameters": [
      { "type": "note", "text": "Local contrast enhancement is Unsharp Mask with high radius. Apply filter to RGB channels for color and contrast enhancement." },
      { "type": "float", "name": "Spatial Radius", "default": "80", "min": "30", "max": "200", "pos": "1" },
      { "type": "float", "name": "Amount", "default": "0.5", "min": "0", "max": "5", "pos": "2" },
      { "type": "float", "name": "Darkness Level", "default": "1", "min": "0", "max": "4", "pos": "3" },
      { "type": "float", "name": "Lightness Level", "default": "1", "min": "0", "max": "4", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "5", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CYMK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "6", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "note", "text": "\n\nNote :  Original USM code by by David Tschumperlé. " },
      { "type": "separator" },
      { "type": "note", "text": "Authors : Arto Huotari, PhotoComiX.      Latest update : 2013/03/23." }
      ]
    },
    {
      "name": "Local Normalization", "lang": "en", "command": "fx_normalize_local", "command_preview": "fx_normalize_local", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Normalizes brightness/contrast within local neighborhoods. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "2", "min": "0", "max": "60", "pos": "1" },
      { "type": "int", "name": "Radius", "default": "6", "min": "1", "max": "64", "pos": "2" },
      { "type": "float", "name": "Neighborhood Smoothness", "default": "5", "min": "0", "max": "40", "pos": "3" },
      { "type": "float", "name": "Average Smoothness", "default": "20", "min": "0", "max": "40", "pos": "4" },
      { "type": "bool", "name": "Constrain Values", "default": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "12", "pos": "6", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Local Processing", "lang": "en", "command": "fx_local_processing", "command_preview": "fx_local_processing", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Applies processing steps to local image blocks. " },
      { "type": "separator" },
      { "type": "choice", "name": "Action", "default": "0", "pos": "1", "choices": { "0": "Normalize", "1": "Equalize" } },
      { "type": "float", "name": "Strength (%)", "default": "75", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Neighborhood Size (%)", "default": "10", "min": "1", "max": "100", "pos": "3" },
      { "type": "float", "name": "Overlap (%)", "default": "50", "min": "0", "max": "75", "pos": "4" },
      { "type": "float", "name": "Regularization (%)", "default": "20", "min": "0", "max": "100", "pos": "5" },
      { "type": "bool", "name": "Process Channels Individually", "default": "0", "pos": "6" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "7", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2018/02/28." }
      ]
    },
    {
      "name": "Local Variance Normalization", "lang": "en", "command": "jeje_normalize_local_variance", "command_preview": "jeje_normalize_local_variance_preview", "parameters": [
      { "type": "float", "name": "Amplitude", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "5", "min": "0", "max": "20", "pos": "2" },
      { "type": "float", "name": "Threshold", "default": "5", "min": "0", "max": "100", "pos": "3" },
      { "type": "int", "name": "Repeat", "default": "1", "min": "1", "max": "4", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "5", "choices": { "0": "All", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "Linear RGB [all]", "8": "Linear RGB [red]", "9": "Linear RGB [green]", "10": "Linear RGB [blue]", "11": "YCbCr [luminance]", "12": "YCbCr [blue-red chrominances]", "13": "YCbCr [blue chrominance]", "14": "YCbCr [red chrominance]", "15": "YCbCr [green chrominance]", "16": "Lab [lightness]", "17": "Lab [ab-chrominances]", "18": "Lab [a-chrominance]", "19": "Lab [b-chrominance]", "20": "Lch [ch-chrominances]", "21": "Lch [c-chrominance]", "22": "Lch [h-chrominance]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [intensity]", "27": "HSL [lightness]", "28": "CMYK [cyan]", "29": "CMYK [magenta]", "30": "CMYK [yellow]", "31": "CMYK [key]", "32": "YIQ [luma]", "33": "YIQ [chromas]" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "6", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Jérôme Boulanger. Latest update: 2013/10/30." }
      ]
    },
    {
      "name": "Magic Details", "lang": "en", "command": "fx_magic_details", "command_preview": "fx_magic_details", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Enhances details locally using Bilateral filter. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "6", "min": "0", "max": "30", "pos": "1" },
      { "type": "float", "name": "Spatial Scale", "default": "3", "min": "0", "max": "10", "pos": "2" },
      { "type": "float", "name": "Value Scale", "default": "15", "min": "0", "max": "20", "pos": "3" },
      { "type": "float", "name": "Edges", "default": "-0.5", "min": "-3", "max": "3", "pos": "4" },
      { "type": "float", "name": "Smoothness", "default": "2", "min": "0", "max": "20", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "12", "pos": "6", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2018/01/10." }
      ]
    },
    {
      "name": "Make Up", "lang": "en", "command": "make_up", "command_preview": "make_up_preview", "parameters": [
      { "type": "float", "name": "Space", "default": "15", "min": "1", "max": "40", "pos": "1" },
      { "type": "float", "name": "Value", "default": "4", "min": "0", "max": "30", "pos": "2" },
      { "type": "bool", "name": "Fast", "default": "0", "pos": "3" },
      { "type": "bool", "name": "Limit Hue Range", "default": "0", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "5", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Iain Fergusson.  - Update: 1 March 2013: Fixed resizing issue, some memory useage improvements, and added more options." }
      ]
    },
    {
      "name": "Mask Creator", "lang": "en", "command": "fx_tk_mask", "command_preview": "fx_tk_mask_preview", "parameters": [
      { "type": "separator" },
      { "type": "choice", "name": "Mask Type", "default": "0", "pos": "1", "choices": { "0": "Luminance", "1": "Saturation", "2": "Hue", "3": "LAB-lightness" } },
      { "type": "choice", "name": "Color Channels", "default": "0", "pos": "2", "choices": { "0": "All", "1": "Red", "2": "Green", "3": "Blue", "4": "Yellow", "5": "Magenta", "6": "Cyan", "7": "LAB-A", "8": "LAB-B" } },
      { "type": "float", "name": "Shadows Threshold", "default": "0", "min": "0", "max": "255", "pos": "3" },
      { "type": "float", "name": "Highlights Threshold", "default": "255", "min": "0", "max": "255", "pos": "4" },
      { "type": "float", "name": "Tones Smoothness", "default": "0", "min": "0", "max": "20", "pos": "5" },
      { "type": "float", "name": "Mask Contrast", "default": "1", "min": "0", "max": "10", "pos": "6" },
      { "type": "bool", "name": "Negative", "default": "0", "pos": "7" },
      { "type": "bool", "name": "Apply Mask", "default": "0", "pos": "8" },
      { "type": "float", "name": "Transparency", "default": "1", "min": "0", "max": "1", "pos": "9" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "10", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Tom Keil.      Latest update: 2011/11/04." }
      ]
    },
    {
      "name": "Mighty Details", "lang": "en", "command": "fx_mighty_details", "command_preview": "fx_mighty_details", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Another algorithm for strong local detail enhancement. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "25", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Details Amount", "default": "1", "min": "0", "max": "2", "pos": "2" },
      { "type": "float", "name": "Details Scale", "default": "25", "min": "1", "max": "100", "pos": "3" },
      { "type": "int", "name": "Details Smoothness", "default": "1", "min": "0", "max": "10", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "12", "pos": "5", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2014/08/08." }
      ]
    },
    {
      "name": "Portrait Retouching", "lang": "en", "command": "fx_tk_portrait", "command_preview": "fx_tk_portrait_preview", "parameters": [
      { "type": "separator" },
      { "type": "choice", "name": "Retouching Style", "default": "0", "pos": "1", "choices": { "0": "Standard", "1": "Glamour glow", "2": "Masculine", "3": "High key", "4": "Low Key" } },
      { "type": "float", "name": "Effect Strength", "default": "100", "min": "0", "max": "100", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Retouching settings:" },
      { "type": "float", "name": "Fine Details Smoothness", "default": "1", "min": "0", "max": "10", "pos": "3" },
      { "type": "float", "name": "Medium Details Smoothness", "default": "5", "min": "0", "max": "25", "pos": "4" },
      { "type": "float", "name": "Areas Smoothness", "default": "20", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "Fine Details Threshold", "default": "3", "min": "0", "max": "10", "pos": "6" },
      { "type": "float", "name": "Medium Details Threshold", "default": "20", "min": "0", "max": "100", "pos": "7" },
      { "type": "float", "name": "Areas Light Adjustment", "default": "10", "min": "0", "max": "100", "pos": "8" },
      { "type": "choice", "name": "Smoothing Type", "default": "0", "pos": "9", "choices": { "0": "Gaussian", "1": "Bilateral", "2": "Anisotropic", "3": "Median" } },
      { "type": "choice", "name": "Output Mode", "default": "0", "pos": "10", "choices": { "0": "Retouched image", "1": "Composed layers", "2": "All layers and masks" }, "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Skin tone mask settings:" },
      { "type": "bool", "name": "Apply Skin Tone Mask", "default": "1", "pos": "11" },
      { "type": "choice", "name": "Similarity Space", "default": "2", "pos": "12", "choices": { "0": "RGB[A]", "1": "RGB", "2": "YCbCr", "3": "Red", "4": "Green", "5": "Blue", "6": "Opacity", "7": "Luminance", "8": "Blue & Red chrominances", "9": "Hue", "10": "Saturation" } },
      { "type": "float", "name": "Tolerance", "default": "25", "min": "0", "max": "100", "pos": "13" },
      { "type": "float", "name": "Smoothness", "default": "2", "min": "0", "max": "25", "pos": "14" },
      { "type": "color", "name": "Selected Color", "default": "250,180,150,255", "pos": "15" },
      { "type": "bool", "name": "Generic Skin Structure", "default": "0", "pos": "19" },
      { "type": "separator" },
      { "type": "note", "text": "Enhancement settings:" },
      { "type": "choice", "name": "Apply Adjustments On", "default": "0", "pos": "20", "choices": { "0": "Final image", "1": "Retouched areas only", "2": "Sharpened areas only", "3": "Retouched and sharpened areas" } },
      { "type": "float", "name": "Sharpening Radius", "default": "1", "min": "0", "max": "10", "pos": "21" },
      { "type": "float", "name": "Sharpening Strength", "default": "1.5", "min": "0", "max": "5", "pos": "22" },
      { "type": "float", "name": "Edge Threshold", "default": "10", "min": "0", "max": "50", "pos": "23" },
      { "type": "float", "name": "Edge Smoothness", "default": "1", "min": "0", "max": "10", "pos": "24" },
      { "type": "float", "name": "Color Temperature", "default": "0", "min": "-20", "max": "20", "pos": "25" },
      { "type": "float", "name": "Lightness", "default": "0", "min": "-50", "max": "50", "pos": "26" },
      { "type": "float", "name": "Contrast", "default": "1", "min": "0.5", "max": "1.5", "pos": "27" },
      { "type": "float", "name": "Saturation", "default": "1", "min": "0", "max": "4", "pos": "28" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Selection", "default": "0", "pos": "29", "choices": { "0": "Retouched image final", "1": "Retouched image basic", "2": "Retouch layer", "3": "Sharpening layer", "4": "Skin tone mask", "5": "Skin tone colors", "6": "Edge mask", "7": "High frequency layer", "8": "Medium frequency layer", "9": "Low frequency layer" } },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "30", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Tom Keil.      Latest update: 2012/18/04." }
      ]
    },
    {
      "name": "Pyramid Processing", "lang": "en", "command": "iain_pyramid_processing", "command_preview": "iain_pyramid_processing", "parameters": [
      { "type": "int", "name": "1 Levels", "default": "4", "min": "1", "max": "6", "pos": "1" },
      { "type": "float", "name": "2 Noise", "default": "50", "min": "1", "max": "100", "pos": "2" },
      { "type": "float", "name": "3 Mix", "default": ".5", "min": "0", "max": "1", "pos": "3" },
      { "type": "choice", "name": "Type", "default": "0", "pos": "4", "choices": { "0": "Mix", "1": "Add" } },
      { "type": "choice", "name": "Channels", "default": "0", "pos": "5", "choices": { "0": "Lightness", "1": "Luma", "2": "RGB" } },
      { "type": "note", "text": "Author : Iain Fergusson. 20 Aug 2019 - Update" },
      { "type": "note", "text": " 14 June 2017 - First release" }
      ]
    },
    {
      "name": "Sharpen [Alpha]", "lang": "en", "command": "fx_sharpen_alpha", "command_preview": "fx_sharpen_alpha", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Sharpens the image while trying to avoid halos. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude (%)", "default": "100", "min": "0", "max": "400", "pos": "1" },
      { "type": "int", "name": "Number of Scales", "default": "5", "min": "1", "max": "10", "pos": "2" },
      { "type": "float", "name": "Anisotropy (%)", "default": "50", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Minimize Alpha (%)", "default": "100", "min": "0", "max": "100", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "5", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2023/10/14." }
      ]
    },
    {
      "name": "Sharpen [Deblur]", "lang": "en", "command": "fx_deblur", "command_preview": "fx_deblur", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generic deblurring filter. " },
      { "type": "separator" },
      { "type": "float", "name": "Radius", "default": "2", "min": "0", "max": "20", "pos": "1" },
      { "type": "int", "name": "Iterations", "default": "10", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Time Step", "default": "20", "min": "0", "max": "50", "pos": "3" },
      { "type": "float", "name": "Smoothness", "default": "0.1", "min": "0", "max": "10", "pos": "4" },
      { "type": "choice", "name": "Regularization", "default": "1", "pos": "5", "choices": { "0": "Tikhonov", "1": "Mean Curvature", "2": "Total Variation" } },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "6", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "choice", "name": "Parallel Processing", "default": "0", "pos": "7", "choices": { "0": "Auto", "1": "One Thread", "2": "Two Threads", "3": "Four Threads", "4": "Eight Threads", "5": "Sixteen Threads" } },
      { "type": "int", "name": "Spatial Overlap", "default": "24", "min": "0", "max": "256", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Sharpen [Gold-Meinel]", "lang": "en", "command": "fx_unsharp_goldmeinel", "command_preview": "fx_unsharp_goldmeinel", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Deconvolution-based sharpening algorithm. " },
      { "type": "separator" },
      { "type": "float", "name": "Sigma", "default": "1", "min": "0.5", "max": "10", "pos": "1" },
      { "type": "int", "name": "Iterations", "default": "5", "min": "1", "max": "15", "pos": "2" },
      { "type": "float", "name": "Acceleration", "default": "1", "min": "1", "max": "3", "pos": "3" },
      { "type": "choice", "name": "Blur", "default": "1", "pos": "4", "choices": { "0": "Exponential", "1": "Gaussian" } },
      { "type": "bool", "name": "Cut", "default": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "6", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "choice", "name": "Parallel Processing", "default": "0", "pos": "7", "choices": { "0": "Auto", "1": "One Thread", "2": "Two Threads", "3": "Four Threads", "4": "Eight Threads", "5": "Sixteen Threads" } },
      { "type": "int", "name": "Spatial Overlap", "default": "24", "min": "0", "max": "256", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Jérôme Boulanger.      Latest Update: 2013/03/29." }
      ]
    },
    {
      "name": "Sharpen [Hessian]", "lang": "en", "command": "jeje_hessian_sharpen", "command_preview": "jeje_hessian_sharpen_preview", "parameters": [
      { "type": "int", "name": "Number of scales", "default": "3", "min": "2", "max": "10", "pos": "1" },
      { "type": "float", "name": "Strength", "default": "1", "min": "0", "max": "10", "pos": "2" },
      { "type": "float", "name": "Repeat", "default": "1", "min": "1", "max": "5", "pos": "3" },
      { "type": "bool", "name": "Cut", "default": "0", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "5", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Jérôme Boulanger.      Latest update: 2019/04/30." }
      ]
    },
    {
      "name": "Sharpen [Inverse Diffusion]", "lang": "en", "command": "fx_sharpen_inversediff", "command_preview": "fx_sharpen_inversediff", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Sharpens image by reversing a diffusion process. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "50", "min": "1", "max": "300", "pos": "1" },
      { "type": "int", "name": "Iterations", "default": "2", "min": "1", "max": "10", "pos": "2" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "3", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Sharpen [Multiscale]", "lang": "en", "command": "fx_sharpen_multiscale", "command_preview": "fx_sharpen_multiscale", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Sharpens details at multiple image scales. " },
      { "type": "separator" },
      { "type": "float", "name": "Strength (%)", "default": "15", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Regularity (%)", "default": "20", "min": "0", "max": "100", "pos": "2" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "3", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" }, "visibility": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2020/01/14." }
      ]
    },
    {
      "name": "Sharpen [Octave Sharpening]", "lang": "en", "command": "fx_unsharp_octave", "command_preview": "fx_unsharp_octave", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Sharpens the image using octave-based band separation. " },
      { "type": "separator" },
      { "type": "int", "name": "Scales", "default": "4", "min": "1", "max": "10", "pos": "1" },
      { "type": "float", "name": "Maximal Radius", "default": "5", "min": "0", "max": "20", "pos": "2" },
      { "type": "float", "name": "Amount", "default": "3", "min": "0", "max": "10", "pos": "3" },
      { "type": "float", "name": "Threshold", "default": "0", "min": "0", "max": "255", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "5", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "choice", "name": "Parallel Processing", "default": "1", "pos": "6", "choices": { "0": "Auto", "1": "One Thread", "2": "Two Threads", "3": "Four Threads", "4": "Eight Threads", "5": "Sixteen Threads" } },
      { "type": "int", "name": "Spatial Overlap", "default": "24", "min": "0", "max": "256", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Sharpen [Richardson-Lucy]", "lang": "en", "command": "fx_unsharp_richardsonlucy", "command_preview": "fx_unsharp_richardsonlucy", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Image deconvolution using the Richardson-Lucy algorithm. " },
      { "type": "separator" },
      { "type": "float", "name": "Sigma", "default": "1", "min": "0.5", "max": "10", "pos": "1" },
      { "type": "int", "name": "Iterations", "default": "10", "min": "1", "max": "100", "pos": "2" },
      { "type": "choice", "name": "Blur", "default": "1", "pos": "3", "choices": { "0": "Exponential", "1": "Gaussian" } },
      { "type": "bool", "name": "Cut", "default": "1", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Jérôme Boulanger.      Latest Update: 2013/03/29." }
      ]
    },
    {
      "name": "Sharpen [Shock Filters]", "lang": "en", "command": "fx_sharpen_shock", "command_preview": "fx_sharpen_shock", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Sharpen edges using shock filters. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "150", "min": "1", "max": "400", "pos": "1" },
      { "type": "float", "name": "Edge Threshold", "default": "0.1", "min": "0", "max": "0.7", "pos": "2" },
      { "type": "float", "name": "Gradient Smoothness", "default": "0.8", "min": "0", "max": "10", "pos": "3" },
      { "type": "float", "name": "Tensor Smoothness", "default": "1.1", "min": "0", "max": "10", "pos": "4" },
      { "type": "int", "name": "Iterations", "default": "1", "min": "1", "max": "10", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "6", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Sharpen [Texture]", "lang": "en", "command": "fx_sharpen_texture", "command_preview": "fx_sharpen_texture", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Enhances texture details specifically. " },
      { "type": "separator" },
      { "type": "float", "name": "Strength", "default": "1", "min": "0", "max": "4", "pos": "1" },
      { "type": "float", "name": "Radius", "default": "4", "min": "0", "max": "32", "pos": "2" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "3", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/09/20." }
      ]
    },
    {
      "name": "Sharpen [Unsharp Mask]", "lang": "en", "command": "fx_unsharp", "command_preview": "fx_unsharp", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Classic unsharp mask sharpening. " },
      { "type": "separator" },
      { "type": "choice", "name": "Sharpening Type", "default": "1", "pos": "1", "choices": { "0": "Gaussian", "1": "Bilateral" } },
      { "type": "float", "name": "Spatial Radius", "default": "1.25", "min": "0", "max": "20", "pos": "2" },
      { "type": "float", "name": "Bilateral Radius", "default": "10", "min": "0", "max": "60", "pos": "3" },
      { "type": "float", "name": "Amount", "default": "2", "min": "0", "max": "10", "pos": "4" },
      { "type": "float", "name": "Threshold", "default": "0", "min": "0", "max": "20", "pos": "5" },
      { "type": "float", "name": "Darkness Level", "default": "1", "min": "0", "max": "4", "pos": "6" },
      { "type": "float", "name": "Lightness Level", "default": "1", "min": "0", "max": "4", "pos": "7" },
      { "type": "int", "name": "Iterations", "default": "1", "min": "1", "max": "10", "pos": "8" },
      { "type": "bool", "name": "Negative Effect", "default": "0", "pos": "9" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "10", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "\n\nNote:  This filter is inspired by the original GIMP Unsharp Mask filter, with additional parameters. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Sharpen [Wavelet]", "lang": "en", "command": "samj_Wavelet_Sharpen_Test_en", "command_preview": "samj_Wavelet_Sharpen_Test_en", "parameters": [
      { "type": "note", "text": "Test" },
      { "type": "choice", "name": "Type", "default": "0", "pos": "1", "choices": { "0": "Decompose 2", "1": "Decompose 6" } },
      { "type": "int", "name": "Iterations", "default": "0", "min": "0", "max": "2", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Latest update : 2016/11/07." }
      ]
    },
    {
      "name": "Sharpen [Whiten]", "lang": "en", "command": "jeje_whiten_frequency", "command_preview": "jeje_whiten_frequency_preview", "parameters": [
      { "type": "float", "name": "Alpha", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "bool", "name": "Cut", "default": "0", "pos": "2" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "3", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Note:This filter equalizes frequencies in the image." },
      { "type": "separator" },
      { "type": "note", "text": "Author : Jérôme Boulanger.      Latest update: 2013/06/01." }
      ]
    },
    {
      "name": "Split Details [Alpha]", "lang": "en", "command": "fx_split_details_alpha", "command_preview": "fx_split_details_alpha_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Separates the image into base and partially transparent detail layers. " },
      { "type": "separator" },
      { "type": "int", "name": "Number of Levels", "default": "0", "min": "0", "max": "16", "pos": "1" },
      { "type": "note", "text": "Set Number of Levels to 0 for automatic setting." },
      { "type": "separator" },
      { "type": "choice", "name": "Set Scales", "default": "0", "pos": "2", "choices": { "0": "Auto", "1": "User-defined" } },
      { "type": "float", "name": "Base Scale", "default": "10", "min": "0", "max": "30", "pos": "3", "visibility": "1" },
      { "type": "float", "name": "Details Scale", "default": "1", "min": "0", "max": "20", "pos": "4", "visibility": "1" },
      { "type": "separator" },
      { "type": "bool", "name": "Preview Without Alpha", "default": "0", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2023/10/06." }
      ]
    },
    {
      "name": "Split Details [Gaussian]", "lang": "en", "command": "fx_split_details_gaussian", "command_preview": "fx_split_details_gaussian_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Splits image using Gaussian blur differences. " },
      { "type": "separator" },
      { "type": "int", "name": "Number of Scales", "default": "6", "min": "3", "max": "12", "pos": "1" },
      { "type": "float", "name": "Base Scale", "default": "10", "min": "0", "max": "200", "pos": "2" },
      { "type": "float", "name": "Details Scale", "default": "1", "min": "0", "max": "20", "pos": "3" },
      { "type": "separator" },
      { "type": "bool", "name": "Sharpen Details in Preview", "default": "0", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2015/01/22." }
      ]
    },
    {
      "name": "Split Details [Wavelets]", "lang": "en", "command": "fx_split_details_wavelets", "command_preview": "fx_split_details_wavelets_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Splits image using wavelet decomposition. " },
      { "type": "separator" },
      { "type": "int", "name": "Number of Scales", "default": "6", "min": "2", "max": "12", "pos": "1" },
      { "type": "bool", "name": "Add Alpha Channels to Detail Scale Layers", "default": "0", "pos": "2" },
      { "type": "separator" },
      { "type": "bool", "name": "Sharpen Details in Preview", "default": "0", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Note: This filter decomposes an image into several detail scales, using wavelet atrous. It should provide similar results to the <a href=\"https://docs.gimp.org/en/plug-in-wavelet-decompose.html\">Wavelet Decompose Plug-in</a> (by Marco Rossini). " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/03/23." }
      ]
    },
    {
      "name": "Spotify", "lang": "en", "command": "jeje_spotify", "command_preview": "jeje_spotify_preview", "parameters": [
      { "type": "float", "name": "Scale", "default": "1", "min": "0.75", "max": "10", "pos": "1" },
      { "type": "int", "name": "Iteration", "default": "1", "min": "1", "max": "50", "pos": "2" },
      { "type": "float", "name": "Gamma", "default": "1", "min": "0", "max": "10", "pos": "3" },
      { "type": "bool", "name": "Cut", "default": "1", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "12", "pos": "5", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CYMK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "6", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Jérôme Boulanger. Latest update: 2013/12/16." }
      ]
    },
    {
      "name": "Texture", "lang": "en", "command": "afre_texture", "command_preview": "afre_texture_preview", "parameters": [
      { "type": "note", "text": "<strong>Enhance texture with detail scales.  Filter by <a href=\"https://discuss.pixls.us/u/afre\">afre</a> 2020 Aug10-18.</strong>\n\n" },
      { "type": "note", "text": "<strong>Detail Scale</strong>" },
      { "type": "int", "name": "Coarse", "default": "0", "min": "-100", "max": "100", "pos": "1" },
      { "type": "int", "name": "Medium", "default": "0", "min": "-100", "max": "100", "pos": "2" },
      { "type": "int", "name": "Fine", "default": "0", "min": "-100", "max": "100", "pos": "3" },
      { "type": "note", "text": "\n\n<strong>Note</strong>\n\nG'MIC's preview is inaccurate. Apply the filter and review the results in your host editor." }
      ]
    },
    {
      "name": "Texture Enhance", "lang": "en", "command": "iain_texture_enhance_p", "command_preview": "iain_texture_enhance_p_preview", "parameters": [
      { "type": "int", "name": "Radius", "default": "2", "min": "2", "max": "11", "pos": "1" },
      { "type": "float", "name": "Strength", "default": "2", "min": "0", "max": "10", "pos": "2" },
      { "type": "float", "name": "Reduce Halos", "default": "30", "min": "0", "max": "255", "pos": "3" },
      { "type": "float", "name": "Reduce Noise", "default": "0", "min": "0", "max": "255", "pos": "4" },
      { "type": "choice", "name": "Channel(s)", "default": "11", "pos": "5", "choices": { "0": "All", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "Linear RGB [all]", "8": "Linear RGB [red]", "9": "Linear RGB [green]", "10": "Linear RGB [blue]", "11": "YCbCr [luminance]", "12": "YCbCr [blue-red chrominances]", "13": "YCbCr [blue chrominance]", "14": "YCbCr [red chrominance]", "15": "YCbCr [green chrominance]", "16": "Lab [lightness]", "17": "Lab [ab-chrominances]", "18": "Lab [a-chrominance]", "19": "Lab [b-chrominance]", "20": "Lch [ch-chrominances]", "21": "Lch [c-chrominance]", "22": "Lch [h-chrominance]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [intensity]", "27": "HSL [lightness]", "28": "CMYK [cyan]", "29": "CMYK [magenta]", "30": "CMYK [yellow]", "31": "CMYK [key]" } },
      { "type": "separator" },
      { "type": "choice", "name": "Parallel Processing", "default": "0", "pos": "6", "choices": { "0": "Auto", "1": "Off" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "7", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Iain Fergusson. Update: 4 March 2014 - Added parallel processing option" },
      { "type": "note", "text": "Update: 4 March 2013 - Different halo protection method, added option to reduce noise, faster." }
      ]
    },
    {
      "name": "Tone Enhance", "lang": "en", "command": "gcd_tone_enhance", "command_preview": "gcd_tone_enhance", "parameters": [
      { "type": "note", "text": "Sharpen or adjust shadows and highlights" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Shadows</span>" },
      { "type": "float", "name": "Detail", "default": "0", "min": "0", "max": "2", "pos": "1" },
      { "type": "float", "name": "Gamma", "default": "1", "min": "0.2", "max": "1.8", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Highlights</span>" },
      { "type": "float", "name": "Detail", "default": "0", "min": "0", "max": "2", "pos": "3" },
      { "type": "float", "name": "Gamma", "default": "1", "min": "0.2", "max": "1.8", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Mid Point</span>" },
      { "type": "int", "name": "Centre", "default": "128", "min": "0", "max": "255", "pos": "5" },
      { "type": "float", "name": "Detail", "default": "0", "min": "0", "max": "2", "pos": "6" },
      { "type": "float", "name": "Gamma", "default": "1", "min": "0.2", "max": "1.8", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Extra Shadow/Highlight recovery</span>" },
      { "type": "float", "name": "Boost", "default": "0.5", "min": "0", "max": "1", "pos": "8" },
      { "type": "float", "name": "Smooth", "default": "0", "min": "0", "max": "2", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Detail Mask</span>" },
      { "type": "int", "name": "Smooth", "default": "0", "min": "0", "max": "20", "pos": "10" },
      { "type": "separator" },
      { "type": "choice", "name": "Channels", "default": "4", "pos": "11", "choices": { "0": "HSI", "1": "HSV", "2": "Lab", "3": "Linear RGB", "4": "RGB", "5": "YCbCr" } },
      { "type": "choice", "name": "Values", "default": "0", "pos": "12", "choices": { "0": "cut", "1": "normalize" } },
      { "type": "bool", "name": "Color Median", "default": "0", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2017/01/03." }
      ]
    },
    {
      "name": "Tone Mapping", "lang": "en", "command": "fx_map_tones", "command_preview": "fx_map_tones", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Compresses dynamic range to reveal shadow/highlight details. " },
      { "type": "separator" },
      { "type": "float", "name": "Threshold", "default": "0.5", "min": "0", "max": "1", "pos": "1" },
      { "type": "float", "name": "Gamma", "default": "0.7", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "0.1", "min": "0", "max": "10", "pos": "3" },
      { "type": "int", "name": "Iterations", "default": "30", "min": "0", "max": "500", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "5", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Tone Mapping [Fast]", "lang": "en", "command": "fx_map_tones_fast", "command_preview": "fx_map_tones_fast", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> A faster implementation of tone mapping. " },
      { "type": "separator" },
      { "type": "float", "name": "Radius", "default": "3", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "Power", "default": "0.5", "min": "0", "max": "1", "pos": "2" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "12", "pos": "3", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Authors: Paul Nasca and David Tschumperlé.       Latest Update: 2011/10/06." }
      ]
    },
    {
      "name": "Wavelet Sharpen Test", "lang": "en", "command": "samj_Wavelet_Sharpen_Test", "command_preview": "samj_Wavelet_Sharpen_Test", "parameters": [
      { "type": "note", "text": "samj_Wavelet_Sharpen_Test" },
      { "type": "note", "text": "gimp_split_details_wavelets 2,0,0" },
      { "type": "int", "name": "Itérations", "default": "1", "min": "1", "max": "4", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Latest update : 2016/11/06." }
      ]
    },
    {
      "name": "YAG Effect", "lang": "en", "command": "fx_yag_soften", "command_preview": "fx_yag_soften_preview", "parameters": [
      { "type": "float", "name": "Darken", "default": "0", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Soften", "default": "0", "min": "0", "max": "100", "pos": "2" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "3", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Arto Huotari.      Latest update : 2013/09/28." },
      { "type": "link", "name": "Filter Explained here", "url": "http://www.flickr.com/photos/naggobot/6260257923/", "align": "center" }
      ]
    }
    ]
  },
  {
    "name": "Frames", "filters": [
    {
      "name": "At06B 2017 Frame_Painting", "lang": "en", "command": "samj_At06A_2017_frame_painting", "command_preview": "samj_At06A_2017_frame_painting", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Frame</span>" },
      { "type": "float", "name": "Size (%)", "default": "10", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Contrast", "default": "0.4", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "6", "min": "0", "max": "30", "pos": "3" },
      { "type": "color", "name": "Color", "default": "127,127,127", "pos": "4" },
      { "type": "float", "name": "Vignette size", "default": "2", "min": "0", "max": "50", "pos": "7" },
      { "type": "float", "name": "Vignette contrast", "default": "400", "min": "0", "max": "1000", "pos": "8" },
      { "type": "float", "name": "Defects contrast", "default": "50", "min": "0", "max": "512", "pos": "9" },
      { "type": "float", "name": "Defects density", "default": "10", "min": "0", "max": "100", "pos": "10" },
      { "type": "float", "name": "Defects size", "default": "1", "min": "0", "max": "10", "pos": "11" },
      { "type": "float", "name": "Defects smoothness", "default": "0.5", "min": "0", "max": "20", "pos": "12" },
      { "type": "int", "name": "Serial number", "default": "123456", "min": "0", "max": "1000000", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Blend GMIC</span>" },
      { "type": "choice", "name": "Mode", "default": "35", "pos": "14", "choices": { "0": "Add", "1": "Alpha", "2": "And", "3": "Average", "4": "Blue", "5": "Burn", "6": "Darken", "7": "Difference", "8": "Divide", "9": "Dodge", "10": "Edges", "11": "Exclusion", "12": "Freeze", "13": "Grain extract", "14": "Grain merge", "15": "Green", "16": "Hard light", "17": "Hard mix", "18": "Hue", "19": "Interpolation", "20": "Lighten", "21": "Lightness", "22": "Linear burn", "23": "Linear light", "24": "Luminance", "25": "Multiply", "26": "Negation", "27": "Or", "28": "Overlay", "29": "Pin light", "30": "Red", "31": "Reflect", "32": "Saturation", "33": "Shape Average", "34": "Shape Average0", "35": "Soft burn", "36": "Soft dodge", "37": "Soft light", "38": "Screen", "39": "Stamp", "40": "Subtract", "41": "Value", "42": "Vivid light", "43": "Xor" } },
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "15" },
      { "type": "bool", "name": "Reverse", "default": "1", "pos": "16" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Frame Color Variation</span>" },
      { "type": "float", "name": "Pow", "default": "1", "min": "0", "max": "8", "pos": "17" },
      { "type": "float", "name": "Cut A %", "default": "0", "min": "0", "max": "100", "pos": "18" },
      { "type": "float", "name": "Cut B %", "default": "100", "min": "0", "max": "100", "pos": "19" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé + modification samj.      Latest update: 2024/01/13." }
      ]
    },
    {
      "name": "Droste", "lang": "en", "command": "fx_droste", "command_preview": "fx_droste_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Creates a recursive \"picture within a picture\" effect. " },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"red\">Upper-left coordinates :</span>" },
      { "type": "point", "name": "Point #0", "position": "20,20", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"magenta\">Upper-right coordinates :</span>" },
      { "type": "point", "name": "Point #1", "position": "80,20", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"blue\">Lower-right coordinates :</span>" },
      { "type": "point", "name": "Point #2", "position": "80,80", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"cyan\">Lower-left coordinates :</span>" },
      { "type": "point", "name": "Point #3", "position": "20,80", "pos": "7" },
      { "type": "separator" },
      { "type": "int", "name": "Iterations", "default": "1", "min": "1", "max": "10", "pos": "9" },
      { "type": "float", "name": "X-Shift", "default": "0", "min": "-100", "max": "100", "pos": "10" },
      { "type": "float", "name": "Y-Shift", "default": "0", "min": "-100", "max": "100", "pos": "11" },
      { "type": "float", "name": "Angle", "default": "0", "min": "0", "max": "360", "pos": "12" },
      { "type": "float", "name": "Zoom", "default": "1", "min": "0.1", "max": "5", "pos": "13" },
      { "type": "choice", "name": "Mirror", "default": "0", "pos": "14", "choices": { "0": "None", "1": "X-Axis", "2": "Y-Axis", "3": "XY-Axes" } },
      { "type": "choice", "name": "Boundary", "default": "1", "pos": "15", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "choice", "name": "Drawing Mode", "default": "0", "pos": "16", "choices": { "0": "Replace", "1": "Replace (Sharpest)", "2": "Behind", "3": "Below" } },
      { "type": "bool", "name": "View Outlines Only", "default": "0", "pos": "17" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2012/06/11." }
      ]
    },
    {
      "name": "Frame [Blur]", "lang": "en", "command": "fx_frame_blur", "command_preview": "fx_frame_blur", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds a blurred border derived from the image content. " },
      { "type": "separator" },
      { "type": "float", "name": "Horizontal Size (%)", "default": "30", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Vertical Size (%)", "default": "30", "min": "0", "max": "100", "pos": "2" },
      { "type": "separator" },
      { "type": "float", "name": "Crop", "default": "0", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Blur", "default": "5", "min": "0", "max": "10", "pos": "4" },
      { "type": "float", "name": "Roundness", "default": "0", "min": "0", "max": "1", "pos": "5" },
      { "type": "bool", "name": "Apply Color Balance", "default": "0", "pos": "6" },
      { "type": "color", "name": "Balance Color", "default": "128,128,128", "pos": "7" },
      { "type": "choice", "name": "Normalization", "default": "0", "pos": "10", "choices": { "0": "None", "1": "Stretch", "2": "Equalize" } },
      { "type": "separator" },
      { "type": "float", "name": "Outline Size", "default": "5", "min": "0", "max": "50", "pos": "11" },
      { "type": "color", "name": "Outline Color", "default": "255,255,255", "pos": "12" },
      { "type": "float", "name": "X-Shadow", "default": "2", "min": "-10", "max": "10", "pos": "15" },
      { "type": "float", "name": "Y-Shadow", "default": "2", "min": "-10", "max": "10", "pos": "16" },
      { "type": "float", "name": "Shadow Smoothness", "default": "1", "min": "0", "max": "5", "pos": "17" },
      { "type": "float", "name": "Shadow Contrast", "default": "0", "min": "0", "max": "100", "pos": "18" },
      { "type": "float", "name": "X-Centering", "default": "0.5", "min": "0", "max": "1", "pos": "19" },
      { "type": "float", "name": "Y-Centering", "default": "0.5", "min": "0", "max": "1", "pos": "20" },
      { "type": "float", "name": "Angle", "default": "0", "min": "-180", "max": "180", "pos": "21" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2014/01/19." }
      ]
    },
    {
      "name": "Frame [Cube]", "lang": "en", "command": "fx_frame_cube", "command_preview": "fx_frame_cube", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Maps the image onto the inside faces of a 3D cube. " },
      { "type": "separator" },
      { "type": "float", "name": "Depth", "default": "3", "min": "0", "max": "30", "pos": "1" },
      { "type": "point", "name": "Center", "position": "50,50", "pos": "2" },
      { "type": "choice", "name": "Left Side Orientation", "default": "0", "pos": "4", "choices": { "0": "Normal", "1": "Mirror-X", "2": "Mirror-Y", "3": "Mirror-XY" } },
      { "type": "choice", "name": "Right Side Orientation", "default": "0", "pos": "5", "choices": { "0": "Normal", "1": "Mirror-X", "2": "Mirror-Y", "3": "Mirror-XY" } },
      { "type": "choice", "name": "Upper Side Orientation", "default": "0", "pos": "6", "choices": { "0": "Normal", "1": "Mirror-X", "2": "Mirror-Y", "3": "Mirror-XY" } },
      { "type": "choice", "name": "Lower Side Orientation", "default": "0", "pos": "7", "choices": { "0": "Normal", "1": "Mirror-X", "2": "Mirror-Y", "3": "Mirror-XY" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé, Angelo Lama.       Latest Update: 2012/01/29." }
      ]
    },
    {
      "name": "Frame [Fuzzy]", "lang": "en", "command": "fx_frame_fuzzy", "command_preview": "fx_frame_fuzzy", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds a fuzzy, irregular border. " },
      { "type": "separator" },
      { "type": "float", "name": "Horizontal Size (%)", "default": "5", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Vertical Size (%)", "default": "5", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Fuzzyness", "default": "10", "min": "0", "max": "40", "pos": "3" },
      { "type": "float", "name": "Smoothness", "default": "1", "min": "0", "max": "5", "pos": "4" },
      { "type": "color", "name": "Color", "default": "255,255,255,255", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Frame [Mirror]", "lang": "en", "command": "fx_frame_mirror", "command_preview": "fx_frame_mirror_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Creates a border by mirroring the image edges. " },
      { "type": "separator" },
      { "type": "note", "text": "Frame size:" },
      { "type": "float", "name": "Horizontal (%)", "default": "10", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Vertical (%)", "default": "10", "min": "0", "max": "100", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Image alignment:" },
      { "type": "float", "name": "Horizontal (%)", "default": "50", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Vertical (%)", "default": "50", "min": "0", "max": "100", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Frame dilation/shrinking:" },
      { "type": "float", "name": "Left", "default": "0", "min": "-5", "max": "5", "pos": "5" },
      { "type": "float", "name": "Right", "default": "0", "min": "-5", "max": "5", "pos": "6" },
      { "type": "float", "name": "Up", "default": "0", "min": "-5", "max": "5", "pos": "7" },
      { "type": "float", "name": "Bottom", "default": "0", "min": "-5", "max": "5", "pos": "8" },
      { "type": "separator" },
      { "type": "float", "name": "Preview Opacity (%)", "default": "0.75", "min": "0", "max": "1", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2018/08/20." }
      ]
    },
    {
      "name": "Frame [Painting]", "lang": "en", "command": "fx_frame_painting", "command_preview": "fx_frame_painting_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds a border that looks like a painting frame. " },
      { "type": "separator" },
      { "type": "float", "name": "Size (%)", "default": "10", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Contrast", "default": "0.4", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "6", "min": "0", "max": "30", "pos": "3" },
      { "type": "color", "name": "Color", "default": "225,200,120", "pos": "4" },
      { "type": "separator" },
      { "type": "float", "name": "Vignette Size", "default": "2", "min": "0", "max": "50", "pos": "7" },
      { "type": "float", "name": "Vignette Contrast", "default": "400", "min": "0", "max": "1000", "pos": "8" },
      { "type": "separator" },
      { "type": "float", "name": "Defects Contrast", "default": "50", "min": "0", "max": "512", "pos": "9" },
      { "type": "float", "name": "Defects Density", "default": "10", "min": "0", "max": "100", "pos": "10" },
      { "type": "float", "name": "Defects Size", "default": "1", "min": "0", "max": "10", "pos": "11" },
      { "type": "float", "name": "Defects Smoothness", "default": "0.5", "min": "0", "max": "20", "pos": "12" },
      { "type": "separator" },
      { "type": "int", "name": "Serial Number", "default": "123456", "min": "0", "max": "1000000", "pos": "13" },
      { "type": "bool", "name": "Frame as a New Layer", "default": "0", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2012/06/07." }
      ]
    },
    {
      "name": "Frame [Pattern]", "lang": "en", "command": "fx_frame_pattern", "command_preview": "fx_frame_pattern_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds a frame generated from a repeating pattern. " },
      { "type": "separator" },
      { "type": "int", "name": "Tiles", "default": "10", "min": "3", "max": "30", "pos": "1" },
      { "type": "choice", "name": "Pattern", "default": "1", "pos": "2", "choices": { "0": "Top Layer", "1": "Self Image" } },
      { "type": "int", "name": "Iterations", "default": "1", "min": "1", "max": "10", "pos": "3" },
      { "type": "bool", "name": "Constrain Image Size", "default": "1", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2014/08/01." }
      ]
    },
    {
      "name": "Frame [Regular]", "lang": "en", "command": "fx_frame", "command_preview": "fx_frame", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds a simple solid color frame. " },
      { "type": "separator" },
      { "type": "note", "text": "Crop parameters :" },
      { "type": "int", "name": "X-Start (%)", "default": "0", "min": "0", "max": "100", "pos": "1" },
      { "type": "int", "name": "X-End (%)", "default": "100", "min": "0", "max": "100", "pos": "2" },
      { "type": "int", "name": "Y-Start (%)", "default": "0", "min": "0", "max": "100", "pos": "3" },
      { "type": "int", "name": "Y-End (%)", "default": "100", "min": "0", "max": "100", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Frame parameters :" },
      { "type": "int", "name": "Width (%)", "default": "10", "min": "0", "max": "100", "pos": "5" },
      { "type": "int", "name": "Height (%)", "default": "10", "min": "0", "max": "100", "pos": "6" },
      { "type": "color", "name": "Color", "default": "0,0,0,255", "pos": "7" },
      { "type": "int", "name": "Outline Size", "default": "1", "min": "0", "max": "100", "pos": "11" },
      { "type": "color", "name": "Outline Color", "default": "255,255,255,255", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Frame [Relief]", "lang": "en", "command": "cl_reliefFrame", "command_preview": "cl_reliefFrame", "parameters": [
      { "type": "note", "text": "Frame Limit:" },
      { "type": "choice", "name": "Type", "default": "2", "pos": "1", "choices": { "0": "Outset", "1": "Inset", "2": "Groove", "3": "Ridge" } },
      { "type": "float", "name": "Size", "default": "10", "min": "6", "max": "40", "pos": "2" },
      { "type": "float", "name": "Relief Width", "default": "1.5", "min": "0", "max": "10", "pos": "3" },
      { "type": "float", "name": "Relief Amount", "default": "75", "min": "0", "max": "127", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Frame Area:" },
      { "type": "bool", "name": "Kaleidoscope Effect", "default": "1", "pos": "5" },
      { "type": "float", "name": "Frame Blur", "default": "60", "min": "5", "max": "80", "pos": "6" },
      { "type": "float", "name": "Frame Hue Change", "default": "0", "min": "-180", "max": "180", "pos": "7" },
      { "type": "float", "name": "Frame Saturation Change", "default": "0", "min": "-1", "max": "1", "pos": "8" },
      { "type": "float", "name": "Frame Luminosity Change", "default": "0", "min": "-0.5", "max": "0.5", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Uniform Frame Color:" },
      { "type": "note", "text": "This overrides \"Frame Area\" section." },
      { "type": "bool", "name": "Set Uniform Frame Color", "default": "0", "pos": "10" },
      { "type": "color", "name": "Frame Color", "default": "192,192,192", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Graininess:" },
      { "type": "choice", "name": "Graininess Type", "default": "0", "pos": "14", "choices": { "0": "Gaussian", "1": "Uniform", "2": "Poisson" } },
      { "type": "float", "name": "Graininess Amount", "default": "0", "min": "0", "max": "80", "pos": "15" },
      { "type": "choice", "name": "Graininess on", "default": "0", "pos": "16", "choices": { "0": "Frame", "1": "Picture", "2": "Both" } },
      { "type": "separator" },
      { "type": "link", "name": "Filter discussed here", "url": "http://gimpchat.com/viewtopic.php?f=28&t=20005#p274661", "align": "center" },
      { "type": "note", "text": "Author: Claude Lion. Latest Update: 2022/08/26." },
      { "type": "note", "text": "It uses filters of David Tschumperlé and an algorithm of Reptorian." }
      ]
    },
    {
      "name": "Frame [Round]", "lang": "en", "command": "fx_frame_round", "command_preview": "fx_frame_round", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds rounded corners or a circular frame. " },
      { "type": "separator" },
      { "type": "float", "name": "X-Size (%)", "default": "10", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Y-Size (%)", "default": "10", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Radius (%)", "default": "20", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Smoothness", "default": "0.1", "min": "0", "max": "15", "pos": "4" },
      { "type": "color", "name": "Color", "default": "0,0,0,255", "pos": "5" },
      { "type": "bool", "name": "Anti-alias", "default": "1", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2026/05/03." }
      ]
    },
    {
      "name": "Frame [Smooth]", "lang": "en", "command": "fx_frame_smooth", "command_preview": "fx_frame_smooth", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds a smooth, vignetted frame. " },
      { "type": "separator" },
      { "type": "int", "name": "Width (%)", "default": "5", "min": "0", "max": "100", "pos": "1" },
      { "type": "int", "name": "Height (%)", "default": "5", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Roundness", "default": "0.25", "min": "0", "max": "1", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/04/25." }
      ]
    },
    {
      "name": "Old Photograph", "lang": "en", "command": "fx_old_photo", "command_preview": "fx_old_photo", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds a border and aging effects to look like an old photo. " },
      { "type": "separator" },
      { "type": "float", "name": "Vignette Strength", "default": "200", "min": "0", "max": "255", "pos": "1" },
      { "type": "float", "name": "Vignette Min Radius", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Vignette Max Radius", "default": "85", "min": "0", "max": "100", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Polaroid", "lang": "en", "command": "fx_polaroid", "command_preview": "fx_polaroid", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds a classic white instant film border. " },
      { "type": "separator" },
      { "type": "int", "name": "Frame Size", "default": "10", "min": "0", "max": "400", "pos": "1" },
      { "type": "int", "name": "Bottom Size", "default": "20", "min": "0", "max": "400", "pos": "2" },
      { "type": "float", "name": "X-Shadow", "default": "0", "min": "-20", "max": "20", "pos": "3" },
      { "type": "float", "name": "Y-Shadow", "default": "0", "min": "-20", "max": "20", "pos": "4" },
      { "type": "float", "name": "Smoothness", "default": "3", "min": "0", "max": "5", "pos": "5" },
      { "type": "float", "name": "X-Curvature", "default": "0", "min": "0", "max": "1", "pos": "6" },
      { "type": "float", "name": "Y-Curvature", "default": "0", "min": "0", "max": "1", "pos": "7" },
      { "type": "float", "name": "Angle", "default": "20", "min": "-180", "max": "180", "pos": "8" },
      { "type": "float", "name": "Vignette Strength", "default": "50", "min": "0", "max": "255", "pos": "9" },
      { "type": "float", "name": "Vignette Min Radius", "default": "70", "min": "0", "max": "100", "pos": "10" },
      { "type": "float", "name": "Vignette Max Radius", "default": "95", "min": "0", "max": "100", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/06/20." }
      ]
    },
    {
      "name": "Tunnel", "lang": "en", "command": "fx_tunnel", "command_preview": "fx_tunnel", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Creates a 3D tunnel effect from the image. " },
      { "type": "separator" },
      { "type": "int", "name": "Depth", "default": "4", "min": "1", "max": "100", "pos": "1" },
      { "type": "float", "name": "Factor", "default": "80", "min": "1", "max": "99", "pos": "2" },
      { "type": "point", "name": "Center (%)", "position": "50,50", "pos": "3" },
      { "type": "float", "name": "Opacity", "default": "0.2", "min": "0", "max": "1", "pos": "5" },
      { "type": "float", "name": "Angle", "default": "0", "min": "-90", "max": "90", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2012/11/22." }
      ]
    },
    {
      "name": "Vignette", "lang": "en", "command": "fx_vignette", "command_preview": "fx_vignette", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Darkens the corners of the image. " },
      { "type": "separator" },
      { "type": "float", "name": "Strength", "default": "70", "min": "0", "max": "255", "pos": "1" },
      { "type": "float", "name": "Min Radius", "default": "70", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Max Radius", "default": "95", "min": "0", "max": "100", "pos": "3" },
      { "type": "color", "name": "Color", "default": "0,0,0,255", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2012/10/24." }
      ]
    }
    ]
  },
  {
    "name": "Frequencies", "filters": [
    {
      "name": "Bandpass", "lang": "en", "command": "fx_bandpass", "command_preview": "fx_bandpass", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Filters the image to keep only specific frequencies. " },
      { "type": "separator" },
      { "type": "float", "name": "Low Frequency", "default": "0", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "High Frequency", "default": "100", "min": "0", "max": "100", "pos": "2" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "3", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "choice", "name": "Value Action", "default": "2", "pos": "4", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Fourier Analysis", "lang": "en", "command": "fx_display_fft", "command_preview": "fx_display_fft", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Displays the Fourier magnitude. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Fourier Transform", "lang": "en", "command": "fx_fourier_transform", "command_preview": "fx_fourier_transform_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Computes the Forward/Inverse Fourier Transform. " },
      { "type": "separator" },
      { "type": "bool", "name": "Discard Transparency", "default": "1", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Note: Apply this filter once to get the direct FFT, and once again to get the reverse transform." },
      { "type": "link", "name": "Click here for a video tutorial", "url": "http://www.youtube.com/watch?v=3137dDa6P4s", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2022/04/26." }
      ]
    },
    {
      "name": "Fourier Watermark", "lang": "en", "command": "fx_watermark_fourier", "command_preview": "_none_", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Embeds a watermark in the frequency domain. " },
      { "type": "separator" },
      { "type": "text", "name": "Text", "default": "(c) G'MIC", "pos": "1" },
      { "type": "int", "name": "Size", "default": "53", "min": "13", "max": "128", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Note:  To make the watermark visible afterwards, use the 'Fourier Analysis' filter. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    }
    ]
  },
  {
    "name": "Garagecoder", "filters": [
    {
      "name": "Anti Alias", "lang": "en", "command": "gcd_anti_alias", "command_preview": "gcd_anti_alias_preview", "parameters": [
      { "type": "note", "text": "Selectively smooth resizing pixelation" },
      { "type": "separator" },
      { "type": "int", "name": "Smooth Amount", "default": "60", "min": "0", "max": "200", "pos": "1" },
      { "type": "float", "name": "Edge Exponent", "default": "0.3", "min": "0", "max": "10", "pos": "2" },
      { "type": "int", "name": "Lighten Edges", "default": "50", "min": "0", "max": "255", "pos": "3" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "4", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2013/02/09." }
      ]
    },
    {
      "name": "Aspect Adjustment", "lang": "en", "command": "fx_gcd_adjust_aspect", "command_preview": "fx_gcd_adjust_aspect", "parameters": [
      { "type": "note", "text": "Set or expand to aspect ratio" },
      { "type": "separator" },
      { "type": "choice", "name": "Aspect", "default": "6", "pos": "1", "choices": { "0": "Original", "1": "2:3", "2": "3:4", "3": "1:1", "4": "4:3", "5": "5:4", "6": "16:9", "7": "16:10", "8": "2.35:1", "9": "1.85:1" } },
      { "type": "choice", "name": "Source", "default": "1", "pos": "2", "choices": { "0": "Fixed", "1": "Dimensions", "2": "2:3", "3": "3:4", "4": "1:1", "5": "4:3", "6": "5:4", "7": "16:9", "8": "16:10", "9": "2.35:1", "10": "1.85:1" } },
      { "type": "choice", "name": "Inpaint", "default": "0", "pos": "3", "choices": { "0": "None", "1": "Flat", "2": "Blur", "3": "Pyramid" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2024/05/01." },
      { "type": "note", "text": "\n<u>Notes</u>" },
      { "type": "note", "text": "Use fixed source for border expansion" },
      { "type": "note", "text": "Dimensions source assumes aspect is width:height" },
      { "type": "note", "text": "Transparent regions will be inpainted" }
      ]
    },
    {
      "name": "Auto Balance", "lang": "en", "command": "gcd_auto_balance", "command_preview": "gcd_auto_balance", "parameters": [
      { "type": "note", "text": "Map based tone and color balance" },
      { "type": "separator" },
      { "type": "float", "name": "Area", "default": "30", "min": "0", "max": "200", "pos": "1" },
      { "type": "float", "name": "Smooth", "default": "0", "min": "0", "max": "2", "pos": "2" },
      { "type": "choice", "name": "Channels", "default": "0", "pos": "3", "choices": { "0": "HSI", "1": "HSV", "2": "Lab", "3": "Linear RGB", "4": "RGB", "5": "YCbCr" } },
      { "type": "bool", "name": "Balance sRGB", "default": "1", "pos": "4" },
      { "type": "bool", "name": "Reduce RAM", "default": "0", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2018/08/08." }
      ]
    },
    {
      "name": "Blend [Feather]", "lang": "en", "command": "gcd_blend_feather", "command_preview": "gcd_blend_feather", "parameters": [
      { "type": "note", "text": "<u>Overlay layers seamlessly by feathering edges</u>" },
      { "type": "note", "text": "1. Set Input layers to Active & below for two layers" },
      { "type": "note", "text": "2. For best results ensure layers are the same size" },
      { "type": "note", "text": "\nOutput Options" },
      { "type": "separator" },
      { "type": "int", "name": "Max Delta", "default": "100", "min": "0", "max": "200", "pos": "1" },
      { "type": "float", "name": "Color Transfer", "default": "0.5", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "Hue Extent", "default": "2", "min": "0", "max": "6", "pos": "3" },
      { "type": "int", "name": "Remove BG", "default": "0", "min": "0", "max": "20", "pos": "4" },
      { "type": "bool", "name": "Keep Layers", "default": "0", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2014/05/05." },
      { "type": "note", "text": "\n<u>Notes</u>" },
      { "type": "note", "text": "Remove BG can help mask off unwanted areas, which works" },
      { "type": "note", "text": "best on objects surrounded by simple backgrounds." },
      { "type": "note", "text": "Overlaying a larger area can sometimes improve the output." }
      ]
    },
    {
      "name": "Blend [Multiscale]", "lang": "en", "command": "fx_gcd_blend_multiscale", "command_preview": "fx_gcd_blend_multiscale", "parameters": [
      { "type": "note", "text": "Alpha blend with multiscale laplacian filter" },
      { "type": "separator" },
      { "type": "note", "text": "* Set Input layers to Active & below for two layers" },
      { "type": "int", "name": "Scales", "default": "5", "min": "1", "max": "10", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2022/05/29." },
      { "type": "note", "text": "\n<u>Notes</u>" },
      { "type": "note", "text": "Top layer must have an opacity channel" },
      { "type": "note", "text": "Blending occurs at the edges of an opaque region" },
      { "type": "note", "text": "Higher scales increase blend distance and cpu cost" }
      ]
    },
    {
      "name": "Canny Edge Detection", "lang": "en", "command": "fx_gcd_canny", "command_preview": "fx_gcd_canny", "parameters": [
      { "type": "note", "text": "Locate image edges using canny edge detector" },
      { "type": "separator" },
      { "type": "float", "name": "Sigma", "default": "1", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "Lower Threshold", "default": "0.05", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "Upper Threshold", "default": "0.15", "min": "0", "max": "1", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2023/12/04." }
      ]
    },
    {
      "name": "Colored signum", "lang": "en", "command": "fx_gcd_signum_color", "command_preview": "fx_gcd_signum_color", "parameters": [
      { "type": "separator" },
      { "type": "float", "name": "Sigma1", "default": "0.1", "min": "0", "max": "1", "pos": "1" },
      { "type": "float", "name": "Sigma2", "default": "5", "min": "0", "max": "20", "pos": "2" },
      { "type": "choice", "name": "Axes1", "default": "2", "pos": "3", "choices": { "0": "xy", "1": "x", "2": "y" } },
      { "type": "choice", "name": "Axes2", "default": "0", "pos": "4", "choices": { "0": "xy", "1": "x", "2": "y" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2022/11/01." }
      ]
    },
    {
      "name": "Compression Blur", "lang": "en", "command": "gcd_comp_blur", "command_preview": "gcd_comp_blur_preview", "parameters": [
      { "type": "note", "text": "For subtle smoothing of compression artifacts" },
      { "type": "separator" },
      { "type": "note", "text": "1. Preview will not show the final result accurately." },
      { "type": "note", "text": "2. Be sure to apply before any image resizing." },
      { "type": "note", "text": "3. Reduce grid width when increasing divisions to avoid over-smoothing." },
      { "type": "note", "text": "4. Set grid divisions to zero for 100% smoothing.\n" },
      { "type": "separator" },
      { "type": "int", "name": "Grid Divisions", "default": "2", "min": "0", "max": "3", "pos": "1" },
      { "type": "int", "name": "Grid Width", "default": "3", "min": "1", "max": "3", "pos": "2" },
      { "type": "float", "name": "Grid Smoothing", "default": "1", "min": "0", "max": "1", "pos": "3" },
      { "type": "int", "name": "Preserve Edges", "default": "100", "min": "0", "max": "100", "pos": "4" },
      { "type": "bool", "name": "Colour Channels", "default": "1", "pos": "5" },
      { "type": "bool", "name": "Boost Smooth", "default": "0", "pos": "6" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "7", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2015/05/15." }
      ]
    },
    {
      "name": "CRMT Tiles", "lang": "en", "command": "fx_gcd_crmt_tile", "command_preview": "fx_gcd_crmt_tile", "parameters": [
      { "type": "note", "text": "Tiling by Clone, Rotate, Mirror, Translate method." },
      { "type": "separator" },
      { "type": "text", "name": "Constants", "default": "t_w=[w] t_h=[round(1/2*sqrt(3)*)]", "pos": "1" },
      { "type": "text", "name": "Render Size", "default": "[3*", "pos": "2" },
      { "type": "text", "name": "Command List", "default": "1", "pos": "3" },
      { "type": "bool", "name": "Inpaint", "default": "0", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Implementation : Garagecoder.     Latest update : 2019/05/10." },
      { "type": "note", "text": "Author: G. Bachelier" },
      { "type": "note", "text": "\nWarning: alpha version, don't expect perfection!" }
      ]
    },
    {
      "name": "Cumulative Math", "lang": "en", "command": "fx_gcd_cumul_math", "command_preview": "fx_gcd_cumul_math_preview", "parameters": [
      { "type": "note", "text": "Cumulative Math glitch filter" },
      { "type": "separator" },
      { "type": "choice", "name": "Operation", "default": "0", "pos": "1", "choices": { "0": "Add", "1": "Or", "2": "Xor", "3": "And", "4": "Mod" } },
      { "type": "int", "name": "Amount", "default": "1", "min": "1", "max": "512", "pos": "2" },
      { "type": "int", "name": "Step", "default": "1", "min": "1", "max": "256", "pos": "3" },
      { "type": "bool", "name": "Horizontal", "default": "0", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "5", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2018/08/18." }
      ]
    },
    {
      "name": "Deblur Texture", "lang": "en", "command": "fx_gcd_blur_deblur_texture", "command_preview": "fx_gcd_blur_deblur_texture_preview", "parameters": [
      { "type": "note", "text": "Variance-based edge preserving deblur or smooth" },
      { "type": "separator" },
      { "type": "int", "name": "Iters", "default": "4", "min": "1", "max": "20", "pos": "1" },
      { "type": "float", "name": "Sigma", "default": "1", "min": "0", "max": "4", "pos": "2" },
      { "type": "float", "name": "Edges", "default": "0.5", "min": "0", "max": "1", "pos": "3" },
      { "type": "choice", "name": "Action", "default": "0", "pos": "4", "choices": { "0": "Deblur", "1": "Smooth" } },
      { "type": "choice", "name": "Channels", "default": "2", "pos": "5", "choices": { "0": "RGB", "1": "Linear RGB", "2": "Luma", "3": "Chroma" } },
      { "type": "bool", "name": "Percentage Sigma", "default": "0", "pos": "6" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "7", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "8", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2018/09/02." },
      { "type": "note", "text": "\n<u>Notes</u>" },
      { "type": "note", "text": "Iters: overall amount, increases computation time." },
      { "type": "note", "text": "Sigma: detail scale." },
      { "type": "note", "text": "Edges: amount of edge preservation." },
      { "type": "note", "text": "Percentage sigma: make detail scale relative to image size." }
      ]
    },
    {
      "name": "Depth Blur", "lang": "en", "command": "gcd_depth_blur", "command_preview": "gcd_depth_blur", "parameters": [
      { "type": "note", "text": "<u>Selectively blur based on estimated depth</u>" },
      { "type": "note", "text": "Amount of blur applied is relative to luminance of the depth map" },
      { "type": "note", "text": "\nFocus Options" },
      { "type": "separator" },
      { "type": "int", "name": "Distance Threshold", "default": "0", "min": "0", "max": "100", "pos": "1" },
      { "type": "int", "name": "Blur Amount", "default": "15", "min": "0", "max": "100", "pos": "2" },
      { "type": "note", "text": "\nDepth Map Options" },
      { "type": "separator" },
      { "type": "float", "name": "Blur Percentage", "default": "0.25", "min": "0", "max": "2", "pos": "3" },
      { "type": "float", "name": "Object Ratio", "default": "2", "min": "0", "max": "4", "pos": "4" },
      { "type": "int", "name": "Object Tolerance", "default": "4", "min": "0", "max": "5", "pos": "5" },
      { "type": "bool", "name": "Create/View Depth Map", "default": "0", "pos": "6" },
      { "type": "bool", "name": "Reverse Map", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2013/02/24." }
      ]
    },
    {
      "name": "Despeckle [test]", "lang": "en", "command": "gcd_despeckle_test", "command_preview": "gcd_despeckle_test", "parameters": [
      { "type": "note", "text": "Remove small dots and specks" },
      { "type": "separator" },
      { "type": "int", "name": "Tolerance", "default": "20", "min": "0", "max": "50", "pos": "1" },
      { "type": "int", "name": "Max Area", "default": "10", "min": "0", "max": "100", "pos": "2" },
      { "type": "bool", "name": "ClipIn", "default": "0", "pos": "3" },
      { "type": "bool", "name": "ClipOut", "default": "0", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.   Latest update : 2013/02/01." },
      { "type": "note", "text": "\n<u>Notes</u>" },
      { "type": "note", "text": "Set max area to 0 for no area size limit." }
      ]
    },
    {
      "name": "Dither sRGB", "lang": "en", "command": "fx_gcd_dither_srgb", "command_preview": "fx_gcd_dither_srgb", "parameters": [
      { "type": "note", "text": "Dither sRGB image with selected levels per channel" },
      { "type": "separator" },
      { "type": "int", "name": "Levels", "default": "2", "min": "2", "max": "16", "pos": "1" },
      { "type": "bool", "name": "Luminance", "default": "1", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2021/10/17." }
      ]
    },
    {
      "name": "Emboss", "lang": "en", "command": "gcd_emboss", "command_preview": "gcd_emboss_preview", "parameters": [
      { "type": "note", "text": "Make an image look embossed" },
      { "type": "separator" },
      { "type": "int", "name": "Midpoint", "default": "128", "min": "0", "max": "255", "pos": "1" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "2", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2014/11/11." }
      ]
    },
    {
      "name": "Geometric Color Balance", "lang": "en", "command": "gcd_geometric_balance", "command_preview": "gcd_geometric_balance", "parameters": [
      { "type": "note", "text": "Equalize XYZ channel gammas" },
      { "type": "separator" },
      { "type": "note", "text": "Input is assumed to be sRGB D65 [0,255]" },
      { "type": "float", "name": "Target", "default": "0", "min": "0", "max": "1", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2019/01/01." },
      { "type": "note", "text": "\nSet target to zero to use input Y geometric mean." }
      ]
    },
    {
      "name": "Gradient Exponent", "lang": "en", "command": "fx_gcd_gradient_exponent", "command_preview": "fx_gcd_gradient_exponent", "parameters": [
      { "type": "note", "text": "Adjust global gradient ratios" },
      { "type": "separator" },
      { "type": "float", "name": "Exponent", "default": "0.5", "min": "0", "max": "2", "pos": "1" },
      { "type": "separator" },
      { "type": "choice", "name": "Channels", "default": "0", "pos": "2", "choices": { "0": "RGB", "1": "HSI", "2": "HSV", "3": "YCbCr", "4": "Lab" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2022/09/02." }
      ]
    },
    {
      "name": "Image InfoMap", "lang": "en", "command": "gcd_infomap", "command_preview": "gcd_infomap", "parameters": [
      { "type": "note", "text": "View images in various informational ways" },
      { "type": "separator" },
      { "type": "choice", "name": "Output", "default": "0", "pos": "1", "choices": { "0": "Spectral tones", "1": "Detail map", "2": "JPEG CbCr detail", "3": "Local equality", "4": "Standard score" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2016/09/26." }
      ]
    },
    {
      "name": "Inpaint [Clone]", "lang": "en", "command": "fx_gcd_clone_inpaint", "command_preview": "fx_gcd_clone_inpaint", "parameters": [
      { "type": "note", "text": "Simple proximity cloning inpaint for object removal" },
      { "type": "separator" },
      { "type": "choice", "name": "Type", "default": "0", "pos": "1", "choices": { "0": "Horizontal", "1": "Vertical" } },
      { "type": "choice", "name": "Bias", "default": "1", "pos": "2", "choices": { "0": "Left/Top", "1": "None", "2": "Right/Bottom" } },
      { "type": "float", "name": "Scale", "default": "10", "min": "1", "max": "100", "pos": "3" },
      { "type": "bool", "name": "Blend to boundary", "default": "1", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2022/08/08." },
      { "type": "note", "text": "\n<u>Notes</u>" },
      { "type": "note", "text": "Transparent regions will be inpainted" },
      { "type": "note", "text": "This filter is not automatic: adjust scale as required" },
      { "type": "note", "text": "For best results, inpaint a single region with a simple shape" }
      ]
    },
    {
      "name": "Inverse Bezier Warp", "lang": "en", "command": "gcd_ebwarp", "command_preview": "gcd_ebwarp", "parameters": [
      { "type": "note", "text": "Horizontal inverse conformal bezier warp" },
      { "type": "separator" },
      { "type": "float", "name": "Mid", "default": "0.5", "min": "0", "max": "1", "pos": "1" },
      { "type": "float", "name": "End", "default": "1", "min": "0", "max": "1", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2016/02/06." },
      { "type": "link", "name": "http://benpaulthurstonblog.blogspot.co.uk/2015/12/ebezier.html", "url": "http://benpaulthurstonblog.blogspot.co.uk/2015/12/ebezier.html", "align": "center" }
      ]
    },
    {
      "name": "JPEG Smooth", "lang": "en", "command": "gcd_jpeg_smooth", "command_preview": "gcd_jpeg_smooth_preview", "parameters": [
      { "type": "note", "text": "Quick JPEG cleanup for moderate compression glitches" },
      { "type": "separator" },
      { "type": "bool", "name": "Compression Filter", "default": "1", "pos": "1" },
      { "type": "bool", "name": "Anti Alias", "default": "1", "pos": "2" },
      { "type": "bool", "name": "Quick Enlarge", "default": "0", "pos": "3" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "4", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2013/02/09." }
      ]
    },
    {
      "name": "Layer Manipulation", "lang": "en", "command": "gcd_layers", "command_preview": "gcd_layers_preview", "parameters": [
      { "type": "note", "text": "\nTransform" },
      { "type": "separator" },
      { "type": "float", "name": "Scale", "default": "100", "min": "1", "max": "200", "pos": "1" },
      { "type": "int", "name": "Angle", "default": "0", "min": "-90", "max": "90", "pos": "2" },
      { "type": "bool", "name": "Reduce Only (Requires Two Layers)", "default": "1", "pos": "3" },
      { "type": "note", "text": "\nPosition" },
      { "type": "separator" },
      { "type": "float", "name": "CentreX", "default": "0", "min": "-50", "max": "50", "pos": "4" },
      { "type": "float", "name": "CentreY", "default": "0", "min": "-50", "max": "50", "pos": "5" },
      { "type": "note", "text": "\nEdges" },
      { "type": "separator" },
      { "type": "float", "name": "Erode", "default": "0", "min": "0", "max": "50", "pos": "6" },
      { "type": "int", "name": "Smooth", "default": "0", "min": "0", "max": "25", "pos": "7" },
      { "type": "bool", "name": "Curvature (Instead of Gaussian)", "default": "0", "pos": "8" },
      { "type": "note", "text": "\nLayer" },
      { "type": "separator" },
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "9" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "10", "choices": { "0": "Normal", "1": "Add", "2": "Burn", "3": "Darken", "4": "Difference", "5": "Divide", "6": "Dodge", "7": "Grain Extract", "8": "Grain Merge", "9": "Hard Light", "10": "Hue", "11": "Lighten", "12": "Multiply", "13": "Overlay", "14": "Saturation", "15": "Soft Light", "16": "Screen", "17": "Subtract", "18": "Value" } },
      { "type": "choice", "name": "Flip", "default": "0", "pos": "11", "choices": { "0": "None", "1": "Horizontal", "2": "Vertical", "3": "Both" } },
      { "type": "bool", "name": "Match Lower Layer Size", "default": "1", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2017/06/05." },
      { "type": "note", "text": "\nNote: preview is low quality for speed" }
      ]
    },
    {
      "name": "LMS Adjustment", "lang": "en", "command": "gcd_balance_lms", "command_preview": "gcd_balance_lms", "parameters": [
      { "type": "note", "text": "Chromatically adapt to a new illuminant" },
      { "type": "separator" },
      { "type": "float", "name": "Long", "default": "1", "min": "0.5", "max": "1.5", "pos": "1" },
      { "type": "float", "name": "Medium", "default": "1", "min": "0.5", "max": "1.5", "pos": "2" },
      { "type": "float", "name": "Short", "default": "1", "min": "0.5", "max": "1.5", "pos": "3" },
      { "type": "separator" },
      { "type": "bool", "name": "Adapt Luminance", "default": "0", "pos": "4" },
      { "type": "bool", "name": "Pre Normalize", "default": "0", "pos": "5" },
      { "type": "bool", "name": "Auto Balance", "default": "0", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2018/09/08." },
      { "type": "note", "text": "\n<u>Notes</u>" },
      { "type": "note", "text": "sRGB D65 input is assumed." },
      { "type": "note", "text": "LMS sliders: control illuminant ratios." },
      { "type": "note", "text": "Adapt Luminance: adjust luminance as well, may cause clipping." },
      { "type": "note", "text": "Pre Normalize: stretch input RGB ranges to maximum." },
      { "type": "note", "text": "Auto Balance: attempt to set neutral grey lighting." }
      ]
    },
    {
      "name": "Local F-Mean", "lang": "en", "command": "gcd_fx_local_fmean", "command_preview": "gcd_fx_local_fmean", "parameters": [
      { "type": "note", "text": "Map local f-mean to match global or target" },
      { "type": "separator" },
      { "type": "float", "name": "Radius", "default": "15", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Bright", "default": "0", "min": "0", "max": "1", "pos": "2" },
      { "type": "choice", "name": "Mean", "default": "0", "pos": "3", "choices": { "0": "Harmonic", "1": "Geometric", "2": "Arithmetic", "3": "Quadratic" } },
      { "type": "choice", "name": "Channels", "default": "5", "pos": "4", "choices": { "0": "HSI", "1": "HSV", "2": "Lab", "3": "Linear RGB", "4": "RGB", "5": "Luminance", "6": "YCbCr" } },
      { "type": "bool", "name": "Normalize", "default": "0", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2019/05/11." },
      { "type": "link", "name": "https://en.wikipedia.org/wiki/Quasi-arithmetic_mean", "url": "https://en.wikipedia.org/wiki/Quasi-arithmetic_mean", "align": "center" },
      { "type": "note", "text": "\n<u>Notes</u>" },
      { "type": "note", "text": "Set bright to zero to auto match global f-mean" },
      { "type": "note", "text": "Normalize will disable bright control for arithmetic and quadratic" }
      ]
    },
    {
      "name": "Multi Thresholds", "lang": "en", "command": "tran_multi_threshold", "command_preview": "tran_multi_threshold", "parameters": [
      { "type": "note", "text": "Apply color to selectable tones" },
      { "type": "separator" },
      { "type": "int", "name": "Threshold_1", "default": "50", "min": "0", "max": "255", "pos": "1" },
      { "type": "int", "name": "Threshold_2", "default": "100", "min": "0", "max": "255", "pos": "2" },
      { "type": "int", "name": "Threshold_3", "default": "150", "min": "0", "max": "255", "pos": "3" },
      { "type": "int", "name": "Threshold_4", "default": "200", "min": "0", "max": "255", "pos": "4" },
      { "type": "color", "name": "1st Color", "default": "9,0,1", "pos": "5" },
      { "type": "color", "name": "2nd Color", "default": "175,42,27", "pos": "8" },
      { "type": "color", "name": "3rd Color", "default": "101,101,101", "pos": "11" },
      { "type": "color", "name": "4th Color", "default": "174,165,131", "pos": "14" },
      { "type": "color", "name": "5th Color", "default": "247,228,160", "pos": "17" },
      { "type": "separator" },
      { "type": "note", "text": "Author : trandoductin.      Latest update : 2016/08/25." }
      ]
    },
    {
      "name": "Normalize Brightness", "lang": "en", "command": "gcd_normalize_brightness", "command_preview": "gcd_normalize_brightness", "parameters": [
      { "type": "note", "text": "Normalize brightness across the image" },
      { "type": "separator" },
      { "type": "float", "name": "Bright", "default": "0", "min": "-2", "max": "2", "pos": "1" },
      { "type": "float", "name": "Area", "default": "10", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Smooth", "default": "0", "min": "0", "max": "4", "pos": "3" },
      { "type": "choice", "name": "Channels", "default": "3", "pos": "4", "choices": { "0": "HSI", "1": "HSV", "2": "Lab", "3": "YCbCr", "4": "sRGB" } },
      { "type": "choice", "name": "Mask", "default": "0", "pos": "5", "choices": { "0": "Normal", "1": "Darken", "2": "Lighten" } },
      { "type": "bool", "name": "Absolute Brightness", "default": "0", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2017/05/27." },
      { "type": "note", "text": "\n<u>Tips:</u>\n\nDefault settings for de-haze." },
      { "type": "note", "text": "Large area and Lab for very bright images." },
      { "type": "note", "text": "Small area and HSV for very dark images." },
      { "type": "note", "text": "Medium area and HSV for high contrast images." },
      { "type": "note", "text": "Smooth to reduce artifacts, however some detail may be lost." }
      ]
    },
    {
      "name": "PQCT Example", "lang": "en", "command": "gcd_pqct", "command_preview": "gcd_pqct", "parameters": [
      { "type": "note", "text": "Parameterized Quadratic Conformal transformation" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2016/02/07." },
      { "type": "note", "text": "\nBased on example code from:" },
      { "type": "link", "name": "http://benpaulthurstonblog.blogspot.co.uk/2015/12/parameterized-quadratic-conformal.html", "url": "http://benpaulthurstonblog.blogspot.co.uk/2015/12/parameterized-quadratic-conformal.html", "align": "center" }
      ]
    },
    {
      "name": "Quick Tonemap", "lang": "en", "command": "fx_gcd_quicktone", "command_preview": "fx_gcd_quicktone", "parameters": [
      { "type": "note", "text": "Simple tone and detail control" },
      { "type": "separator" },
      { "type": "float", "name": "Power", "default": "1", "min": "0.5", "max": "2.5", "pos": "1" },
      { "type": "float", "name": "Radius", "default": "4", "min": "0", "max": "10", "pos": "2" },
      { "type": "float", "name": "Range", "default": "20", "min": "0", "max": "20", "pos": "3" },
      { "type": "float", "name": "Smooth", "default": "0", "min": "0", "max": "4", "pos": "4" },
      { "type": "choice", "name": "Channels", "default": "3", "pos": "5", "choices": { "0": "HSI", "1": "HSV", "2": "Lab", "3": "YCbCr" } },
      { "type": "choice", "name": "Values", "default": "1", "pos": "6", "choices": { "0": "cut", "1": "normalize" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2018/06/26." }
      ]
    },
    {
      "name": "Recolor", "lang": "en", "command": "gcd_recol", "command_preview": "gcd_recol", "parameters": [
      { "type": "note", "text": "Apply colors to a black and white image" },
      { "type": "separator" },
      { "type": "int", "name": "Min Hue Drift", "default": "-14", "min": "-45", "max": "0", "pos": "1" },
      { "type": "int", "name": "Max Hue Drift", "default": "14", "min": "0", "max": "45", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Note : This filter needs two layers to work properly." },
      { "type": "note", "text": "Original Author : David Tschumperlé" },
      { "type": "note", "text": "Adapted by : Garagecoder.   Latest update: 2013/01/16." }
      ]
    },
    {
      "name": "Sharpen [Gradient]", "lang": "en", "command": "gcd_sharpen_gradient", "command_preview": "gcd_sharpen_gradient_preview", "parameters": [
      { "type": "note", "text": "Sharpen areas with low detail" },
      { "type": "separator" },
      { "type": "float", "name": "Amount", "default": "0.5", "min": "0", "max": "2", "pos": "1" },
      { "type": "float", "name": "Scale", "default": "2", "min": "0.1", "max": "2", "pos": "2" },
      { "type": "choice", "name": "Values", "default": "0", "pos": "3", "choices": { "0": "cut", "1": "normalize luma" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "4", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2015/09/28." }
      ]
    },
    {
      "name": "Sharpen [Tones]", "lang": "en", "command": "gcd_sharpen_tones", "command_preview": "gcd_sharpen_tones_preview", "parameters": [
      { "type": "note", "text": "Sharpen shadows and highlights" },
      { "type": "separator" },
      { "type": "float", "name": "Amount", "default": "1", "min": "0", "max": "4", "pos": "1" },
      { "type": "int", "name": "Centre", "default": "128", "min": "0", "max": "255", "pos": "2" },
      { "type": "choice", "name": "Values", "default": "0", "pos": "3", "choices": { "0": "cut", "1": "normalize luma" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "4", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2015/09/28." }
      ]
    },
    {
      "name": "Simple Dehaze", "lang": "en", "command": "gcd_simple_dehaze", "command_preview": "gcd_simple_dehaze", "parameters": [
      { "type": "note", "text": "Simple sRGB dehaze" },
      { "type": "separator" },
      { "type": "float", "name": "Haze", "default": "0.75", "min": "0", "max": "1", "pos": "1" },
      { "type": "float", "name": "Exposure", "default": "1", "min": "0", "max": "2", "pos": "2" },
      { "type": "float", "name": "Scale", "default": "0.75", "min": "0", "max": "25", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2023/04/08." }
      ]
    },
    {
      "name": "Simple Tone Curve", "lang": "en", "command": "gcd_simple_tonecurve", "command_preview": "gcd_simple_tonecurve", "parameters": [
      { "type": "note", "text": "Luminance adjustment with local contrast restoration" },
      { "type": "separator" },
      { "type": "float", "name": "Contrast", "default": "0.5", "min": "0", "max": "1", "pos": "1" },
      { "type": "float", "name": "Brightness", "default": "0.5", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "Saturation", "default": "1", "min": "0", "max": "2", "pos": "3" },
      { "type": "note", "text": "\nAdvanced Options" },
      { "type": "separator" },
      { "type": "float", "name": "Fulcrum", "default": "0.18", "min": "0", "max": "0.5", "pos": "4" },
      { "type": "float", "name": "Detail", "default": "0.75", "min": "0", "max": "2", "pos": "5" },
      { "type": "choice", "name": "Input", "default": "1", "pos": "6", "choices": { "0": "Linear RGB", "1": "sRGB" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2023/12/28." }
      ]
    },
    {
      "name": "Smart Rotate", "lang": "en", "command": "gcd_srotate", "command_preview": "gcd_srotate", "parameters": [
      { "type": "note", "text": "<u>Rotate an image and extrapolate the corners</u>" },
      { "type": "note", "text": "\nRotation Options" },
      { "type": "separator" },
      { "type": "int", "name": "Angle", "default": "0", "min": "-90", "max": "90", "pos": "1" },
      { "type": "int", "name": "Centrex", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "int", "name": "Centrey", "default": "50", "min": "0", "max": "100", "pos": "3" },
      { "type": "note", "text": "\nQuality Options" },
      { "type": "separator" },
      { "type": "choice", "name": "Interpolation", "default": "1", "pos": "4", "choices": { "0": "Linear", "1": "Bicubic" } },
      { "type": "choice", "name": "Inpainting", "default": "1", "pos": "5", "choices": { "0": "Low", "1": "Normal", "2": "High", "3": "Ultra" } },
      { "type": "int", "name": "Lookup Scale", "default": "6", "min": "1", "max": "16", "pos": "6" },
      { "type": "float", "name": "Lookup Factor", "default": "0.6", "min": "0.2", "max": "2", "pos": "7" },
      { "type": "bool", "name": "Seamless", "default": "0", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2014/12/05." },
      { "type": "note", "text": "\n<u>Notes</u>" },
      { "type": "note", "text": "* Dimensions are not altered" },
      { "type": "note", "text": "* Quality settings affect speed!" },
      { "type": "note", "text": "The preview is a rough guide only.  Images with simple edges tend to work best." },
      { "type": "note", "text": "Results can be improved by selecting a higher inpainting quality, but processing will take longer." },
      { "type": "note", "text": "Select seamless to reduce visible seams at the corners." }
      ]
    },
    {
      "name": "Smooth [Geometric-Median]", "lang": "en", "command": "fx_gcd_geometric_median", "command_preview": "fx_gcd_geometric_median_preview", "parameters": [
      { "type": "note", "text": "Smooth using windowed geometric median of vectors" },
      { "type": "separator" },
      { "type": "int", "name": "Radius", "default": "3", "min": "1", "max": "9", "pos": "1" },
      { "type": "int", "name": "Iters", "default": "12", "min": "1", "max": "20", "pos": "2" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "3", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CYMK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "4", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "5", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2018/07/18." },
      { "type": "note", "text": "\n<u>Notes</u>" },
      { "type": "note", "text": "This prototype filter can be extremely slow to compute!" },
      { "type": "note", "text": "Only odd window sizes are currently supported." }
      ]
    },
    {
      "name": "Split Objects", "lang": "en", "command": "gcd_splitobj", "command_preview": "gcd_splitobj_preview", "parameters": [
      { "type": "note", "text": "<u>Extract objects from an image to a new layer</u>" },
      { "type": "note", "text": "1. Create a new transparent layer, mark background red and objects green" },
      { "type": "note", "text": "2. Set Input layers to Active & below, objects will be split to two layers" },
      { "type": "note", "text": "\nEdge Detection Options" },
      { "type": "separator" },
      { "type": "int", "name": "Alpha Min", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "int", "name": "Edge Flow", "default": "3", "min": "0", "max": "20", "pos": "2" },
      { "type": "int", "name": "Median", "default": "3", "min": "0", "max": "7", "pos": "3" },
      { "type": "note", "text": "\nOutput Options" },
      { "type": "separator" },
      { "type": "bool", "name": "Swap Layers", "default": "0", "pos": "4" },
      { "type": "int", "name": "Grow Alpha", "default": "0", "min": "-20", "max": "20", "pos": "5" },
      { "type": "int", "name": "Blur Alpha", "default": "0", "min": "0", "max": "20", "pos": "6" },
      { "type": "int", "name": "Opacity", "default": "40", "min": "0", "max": "100", "pos": "7" },
      { "type": "choice", "name": "Inpainting", "default": "0", "pos": "8", "choices": { "0": "Off", "1": "Low", "2": "Normal", "3": "High", "4": "Ultra" } },
      { "type": "value", "value": "0", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Note : This filter needs two layers to work properly." },
      { "type": "note", "text": "Author : Garagecoder.   Latest update: 2016/01/22." }
      ]
    },
    {
      "name": "Stereo Video", "lang": "en", "command": "gcd_stereo_vid", "command_preview": "gcd_stereo_vid_preview", "parameters": [
      { "type": "note", "text": "<u>Convert a series of image files to 3D</u>" },
      { "type": "note", "text": "\nFile Options" },
      { "type": "separator" },
      { "type": "file", "name": "Start Image", "default": "", "pos": "1" },
      { "type": "file", "name": "End Image", "default": "", "pos": "2" },
      { "type": "folder", "name": "Output Folder", "default": "", "pos": "3" },
      { "type": "note", "text": "\n3D Options" },
      { "type": "separator" },
      { "type": "choice", "name": "3D Image Type", "default": "0", "pos": "4", "choices": { "0": "Anaglyph: Red/Cyan", "1": "Side by Side", "2": "Depth Map", "3": "Inverse Depth Map" } },
      { "type": "float", "name": "Balance Color", "default": "0.5", "min": "0", "max": "1", "pos": "5" },
      { "type": "float", "name": "Depth", "default": "1.2", "min": "0", "max": "2", "pos": "6" },
      { "type": "note", "text": "\nDepth Map Options" },
      { "type": "separator" },
      { "type": "float", "name": "Blur Percentage", "default": "0.25", "min": "0", "max": "2", "pos": "7" },
      { "type": "float", "name": "Object Ratio", "default": "2", "min": "0", "max": "4", "pos": "8" },
      { "type": "int", "name": "Object Tolerance", "default": "4", "min": "0", "max": "5", "pos": "9" },
      { "type": "bool", "name": "Despeckle", "default": "1", "pos": "10" },
      { "type": "note", "text": "\nVideo Options" },
      { "type": "separator" },
      { "type": "int", "name": "Frame Buffer", "default": "5", "min": "1", "max": "10", "pos": "11" },
      { "type": "bool", "name": "Scene Detection", "default": "1", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2015/07/02." }
      ]
    },
    {
      "name": "Target Color Spot", "lang": "en", "command": "fx_gcd_color_target", "command_preview": "fx_gcd_color_target", "parameters": [
      { "type": "note", "text": "Use color curves to make the selected point match the target" },
      { "type": "separator" },
      { "type": "point", "name": "Coordinates", "position": "50,50", "pos": "1", "visibility": "0" },
      { "type": "color", "name": "Target Color", "default": "175,175,175", "pos": "3" },
      { "type": "choice", "name": "Chromacity Range", "default": "0", "pos": "6", "choices": { "0": "Global", "1": "Wide", "2": "Narrow" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2022/06/15." },
      { "type": "note", "text": "\n<u>Notes</u>" },
      { "type": "note", "text": "Set the target to the desired color for the spot you selected." },
      { "type": "note", "text": "Reduce chromacity range to limit the affected regions." },
      { "type": "note", "text": "sRGB D65 input is assumed." }
      ]
    },
    {
      "name": "Temperature Balance", "lang": "en", "command": "gcd_temp_balance", "command_preview": "gcd_temp_balance", "parameters": [
      { "type": "note", "text": "Auto-detect lighting and adjust color temperature" },
      { "type": "separator" },
      { "type": "float", "name": "Saturation", "default": "0", "min": "-1", "max": "1", "pos": "1" },
      { "type": "float", "name": "Level", "default": "0", "min": "-1", "max": "1", "pos": "2" },
      { "type": "float", "name": "Color", "default": "1", "min": "0", "max": "2", "pos": "3" },
      { "type": "choice", "name": "Lighting", "default": "0", "pos": "4", "choices": { "0": "Automatic", "1": "Automatic [Scan All Hues]", "2": "Standard [No Scan]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2016/08/30." }
      ]
    },
    {
      "name": "Transfer Colors [Curves]", "lang": "en", "command": "fx_gcd_color_spot_matching", "command_preview": "fx_gcd_color_spot_matching_preview", "parameters": [
      { "type": "note", "text": "Use color curves to match the target to the source" },
      { "type": "separator" },
      { "type": "point", "name": "Source", "position": "75,75", "pos": "1" },
      { "type": "point", "name": "Target", "position": "25,25", "pos": "3" },
      { "type": "choice", "name": "Chromacity Range", "default": "1", "pos": "5", "choices": { "0": "Global", "1": "Wide", "2": "Narrow" } },
      { "type": "choice", "name": "Preview", "default": "0", "pos": "6", "choices": { "0": "Vertical", "1": "Horizontal", "2": "Layers" } },
      { "type": "bool", "name": "Swap layers", "default": "0", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2022/06/15." },
      { "type": "note", "text": "\n<u>Notes</u>" },
      { "type": "note", "text": "Ensure the layer dimensions match for best results." },
      { "type": "note", "text": "Reduce chromacity range to limit the affected regions." },
      { "type": "note", "text": "sRGB D65 input is assumed." }
      ]
    },
    {
      "name": "Undo Unsharp Mask", "lang": "en", "command": "fx_gcd_undo_unsharp", "command_preview": "fx_gcd_undo_unsharp_preview", "parameters": [
      { "type": "note", "text": "Reverse the effect of an unsharp mask" },
      { "type": "separator" },
      { "type": "float", "name": "Radius", "default": "3", "min": "0", "max": "30", "pos": "1" },
      { "type": "float", "name": "Amount", "default": "0.5", "min": "0", "max": "5", "pos": "2" },
      { "type": "choice", "name": "Type", "default": "1", "pos": "3", "choices": { "0": "Box", "1": "Gaussian" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "4", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "5", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2021/12/19." },
      { "type": "note", "text": "\n<u>Notes</u>" },
      { "type": "note", "text": "Useful for fixing halos due to excessive unsharp mask application." },
      { "type": "note", "text": "For best results, settings should match the original unsharp filter." },
      { "type": "note", "text": "This obviously requires estimation if the settings are unknown." }
      ]
    },
    {
      "name": "Unquantize [JPEG Smooth]", "lang": "en", "command": "gcd_unquantize", "command_preview": "gcd_unquantize", "parameters": [
      { "type": "note", "text": "<u>Remove quantization artifacts</u>" },
      { "type": "note", "text": "1. Preview will not show the final result accurately." },
      { "type": "note", "text": "2. Be sure to apply before any image resizing." },
      { "type": "note", "text": "\nBlock Smoothing Options" },
      { "type": "separator" },
      { "type": "int", "name": "Iterations", "default": "6", "min": "0", "max": "8", "pos": "1" },
      { "type": "float", "name": "Preserve Edges", "default": "1", "min": "0", "max": "1", "pos": "2" },
      { "type": "bool", "name": "Color Channels", "default": "1", "pos": "3" },
      { "type": "note", "text": "\nAnti-Aliasing Options" },
      { "type": "separator" },
      { "type": "int", "name": "Iterations", "default": "5", "min": "0", "max": "30", "pos": "4" },
      { "type": "int", "name": "Threshold", "default": "15", "min": "1", "max": "200", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2014/04/29." },
      { "type": "note", "text": "\n<u>Notes</u>" },
      { "type": "note", "text": "Useful for removal of common compression and rescaling artifacts." },
      { "type": "note", "text": "* If a specific glitch remains, try reducing edge preservation." },
      { "type": "note", "text": "* For AA only set Block Iterations to 0." }
      ]
    },
    {
      "name": "Upscale [Edge]", "lang": "en", "command": "fx_gcd_upscale_edge", "command_preview": "fx_gcd_upscale_edge_preview", "parameters": [
      { "type": "note", "text": "Edge sharpening upscale" },
      { "type": "separator" },
      { "type": "choice", "name": "Factor", "default": "1", "pos": "1", "choices": { "0": "custom", "1": "2", "2": "3", "3": "4", "4": "5", "5": "6", "6": "7", "7": "8" } },
      { "type": "float", "name": "Factor", "default": "1", "min": "1", "max": "8", "pos": "2", "visibility": "0" },
      { "type": "choice", "name": "Type", "default": "1", "pos": "3", "choices": { "0": "linear", "1": "bicubic" } },
      { "type": "choice", "name": "Values", "default": "1", "pos": "4", "choices": { "0": "unbounded", "1": "cut", "2": "normalize" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2021/01/12." },
      { "type": "note", "text": "\nVariance smoothed upscale for high scale factors." },
      { "type": "note", "text": "Image dimensions are multiplied by specified factor." }
      ]
    },
    {
      "name": "Upscale [Noise]", "lang": "en", "command": "gcd_upscale_noise", "command_preview": "gcd_upscale_noise_preview", "parameters": [
      { "type": "note", "text": "Upscale 2x using randomized estimation of original" },
      { "type": "separator" },
      { "type": "int", "name": "Noise", "default": "16", "min": "0", "max": "32", "pos": "1" },
      { "type": "int", "name": "Iters", "default": "2", "min": "1", "max": "3", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2018/08/08." },
      { "type": "note", "text": "\nNote: reduce iters and increase noise for poor images." }
      ]
    },
    {
      "name": "Upscale [Patch2x]", "lang": "en", "command": "fx_gcd_upscale_patch2x", "command_preview": "fx_gcd_upscale_patch2x_preview", "parameters": [
      { "type": "choice", "name": "Type", "default": "0", "pos": "1", "choices": { "0": "Patch2x", "1": "Tile2x", "2": "Patch4x", "3": "Tile4x" } },
      { "type": "bool", "name": "Smoothing", "default": "0", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2025/01/10." },
      { "type": "separator" },
      { "type": "note", "text": "Note: Results are partially random." }
      ]
    },
    {
      "name": "Upscale [Recursive2x]", "lang": "en", "command": "fx_gcd_upscale_recursive2x", "command_preview": "fx_gcd_upscale_recursive2x_preview", "parameters": [
      { "type": "note", "text": "<u>Self similarity 2x upscale</u>" },
      { "type": "note", "text": "\nQuality Options" },
      { "type": "separator" },
      { "type": "int", "name": "Kernel", "default": "4", "min": "0", "max": "10", "pos": "1" },
      { "type": "note", "text": "\nProcessing Options" },
      { "type": "separator" },
      { "type": "float", "name": "Sharpness", "default": "0.05", "min": "0", "max": "0.4", "pos": "2" },
      { "type": "float", "name": "Grain", "default": "0.01", "min": "0", "max": "0.1", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2023/02/14." },
      { "type": "note", "text": "\n<u>Notes</u>" },
      { "type": "note", "text": "Preview is fixed to lowest quality kernel." },
      { "type": "note", "text": "Kernel size zero will use randomized matching." },
      { "type": "note", "text": "Due to the algorithm some glitches are expected." },
      { "type": "note", "text": "\nWarning: large kernels are slow to compute." },
      { "type": "note", "text": "Image size also affects computation time significantly." }
      ]
    },
    {
      "name": "Upscale [Solver2x]", "lang": "en", "command": "fx_gcd_upscale_solver2x", "command_preview": "fx_gcd_upscale_solver2x_preview", "parameters": [
      { "type": "note", "text": "<u>Anisotropic 2x upscale with optional unsharpening</u>" },
      { "type": "note", "text": "\nQuality Options" },
      { "type": "separator" },
      { "type": "int", "name": "Kernel", "default": "4", "min": "1", "max": "6", "pos": "1" },
      { "type": "note", "text": "\nUnsharp Options" },
      { "type": "separator" },
      { "type": "bool", "name": "Enabled", "default": "0", "pos": "2" },
      { "type": "float", "name": "Radius", "default": "1", "min": "0", "max": "30", "pos": "3" },
      { "type": "float", "name": "Amount", "default": "1", "min": "0", "max": "5", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2022/12/20." },
      { "type": "note", "text": "\n<u>Usage</u>" },
      { "type": "note", "text": "Preview is fixed to lowest quality kernel." },
      { "type": "note", "text": "Very small images tend to require a small kernel." },
      { "type": "note", "text": "Enable unsharpening to counteract prominent halos." },
      { "type": "note", "text": "\nWarning: large kernels are slow to compute." },
      { "type": "note", "text": "Image size also affects computation time significantly." }
      ]
    },
    {
      "name": "Warp Map", "lang": "en", "command": "gcd_warpmap", "command_preview": "gcd_warpmap", "parameters": [
      { "type": "note", "text": "Warp an image using another as a surface" },
      { "type": "separator" },
      { "type": "float", "name": "Depth", "default": "5", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Detail", "default": "0", "min": "0", "max": "10", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "choice", "name": "Blend Mode", "default": "0", "pos": "4", "choices": { "0": "Warp", "1": "Multiply", "2": "Softlight", "3": "None" } },
      { "type": "bool", "name": "Swap Layers", "default": "0", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2013/02/09." },
      { "type": "note", "text": "\n<u>Notes</u>" },
      { "type": "note", "text": "The top layer will be warped using the bottom layer as a surface." },
      { "type": "note", "text": "\nDepth: Set the apparent depth of the surface." },
      { "type": "note", "text": "Detail: Perform second warp with no smooth for fine detail." },
      { "type": "note", "text": "Smooth: Set low for emboss, high to wrap around large objects." }
      ]
    },
    {
      "name": "Weighted Boxfilter", "lang": "en", "command": "fx_gcd_weighted_boxfilter", "command_preview": "fx_gcd_weighted_boxfilter", "parameters": [
      { "type": "note", "text": "Weighted box average filter" },
      { "type": "separator" },
      { "type": "float", "name": "Radius", "default": "1", "min": "0", "max": "2", "pos": "1" },
      { "type": "float", "name": "Weight", "default": "0", "min": "-2", "max": "2", "pos": "2" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "3", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CYMK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2023/09/30." }
      ]
    },
    {
      "name": "Wiremap", "lang": "en", "command": "gcd_wiremap", "command_preview": "gcd_wiremap", "parameters": [
      { "type": "note", "text": "Turn an image into a wireframe map" },
      { "type": "separator" },
      { "type": "int", "name": "Segments", "default": "100", "min": "4", "max": "400", "pos": "1" },
      { "type": "int", "name": "Depth", "default": "100", "min": "4", "max": "400", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "0.5", "min": "0", "max": "2", "pos": "3" },
      { "type": "float", "name": "Distance", "default": "0.5", "min": "-2", "max": "2", "pos": "4" },
      { "type": "choice", "name": "Output", "default": "0", "pos": "5", "choices": { "0": "Black & White", "1": "Color", "2": "Transparent Black & White", "3": "Transparent Color" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2016/01/27." },
      { "type": "note", "text": "\nWarning: can be extremely slow with high segments!" },
      { "type": "note", "text": "Lower layer will be used for color if available." }
      ]
    },
    {
      "name": "Xbr2x", "lang": "en", "command": "gcd_xbr2x", "command_preview": "gcd_xbr2x", "parameters": [
      { "type": "note", "text": "Implementation of the xBR 2x [noblend] algorithm by Hyllian." },
      { "type": "link", "name": "http://code.google.com/p/2dimagefilter/wiki/ImageResizer", "url": "http://code.google.com/p/2dimagefilter/wiki/ImageResizer", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.  Latest update : 2013/05/29." },
      { "type": "note", "text": "Disclaimer : This is a near complete recode based on C# source from ImageResizer" },
      { "type": "note", "text": "The results may not fully represent the original routine!" }
      ]
    }
    ]
  },
  {
    "name": "Gentlemanbeggar", "filters": [
    {
      "name": "60's Cinema", "lang": "en", "command": "fx_gb_cfx", "command_preview": "fx_gb_cfx_preview", "parameters": [
      { "type": "float", "name": "Grain", "default": "10", "min": "0", "max": "25", "pos": "1" },
      { "type": "bool", "name": "Noon for Midnight", "default": "0", "pos": "2" },
      { "type": "bool", "name": "GeneKelly", "default": "0", "pos": "3" },
      { "type": "bool", "name": "RayHarryhausen", "default": "0", "pos": "4" },
      { "type": "bool", "name": "CaryGrant", "default": "0", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "6", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "\nUsage Notes:  Set Output mode to 'New Layer'.  After running filter, I recommend setting the newly created layer blend mode to 'hard light' when using 'noon for midnight' and 'soft light' for other images.  This filter looks best on well lit scenes." }
      ]
    },
    {
      "name": "About", "lang": "en", "command": "_none_", "command_preview": "gui_gb_about", "parameters": [
      { "type": "note", "text": " <span foreground=\"purple\">( Gentlemanbeggar?s Filter Set for G'MIC)</span>\n\nis proposed to you by" },
      { "type": "note", "text": "Gentlemanbeggar" },
      { "type": "note", "text": "\n" },
      { "type": "separator" },
      { "type": "note", "text": " The source code of this filter is available at :" },
      { "type": "link", "name": "http://gentlemanbeggar.wordpress.com", "url": "http://gentlemanbeggar.wordpress.com", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "\nThe filters in this folder are still under development and may be subject to changes." }
      ]
    },
    {
      "name": "Lens Blur", "lang": "en", "command": "fx_gb_lb", "command_preview": "fx_gb_lb_preview", "parameters": [
      { "type": "note", "text": "\nUsage Notes:  Set Output mode to 'New image' or 'in place' to simply reverse the frames in this image.  Set mode to 'New layers' to add the reversing effect to your current image." },
      { "type": "float", "name": "Amplitude", "default": "10", "min": "5", "max": "20", "pos": "1" },
      { "type": "float", "name": "Bokeh", "default": "7", "min": "0", "max": "20", "pos": "2" },
      { "type": "separator" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "3", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } }
      ]
    },
    {
      "name": "Ping Pong", "lang": "en", "command": "fx_gb_pp", "command_preview": "gui_no_preview", "parameters": [
      { "type": "note", "text": "\nUsage Notes:  Set Output mode to 'New image' or 'in place' to simply reverse the frames in this image.  Set mode to 'New layers' to add the reversing effect to your current image." }
      ]
    }
    ]
  },
  {
    "name": "Gmic Tutorials", "filters": [
    {
      "name": "Blur by Color", "lang": "en", "command": "gtutor_blur_img", "command_preview": "gtutor_blur_img_preview", "parameters": [
      { "type": "choice", "name": "Range", "default": "3", "pos": "1", "choices": { "0": "XL", "1": "VL", "2": "L", "3": "N", "4": "M", "5": "VM", "6": "XM" } },
      { "type": "float", "name": "Amplitude", "default": "0.5", "min": "0", "max": "1", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Garry R. Osgood. Latest update: 2014/08/30." },
      { "type": "link", "name": "Blur by color instructions and tutorial.", "url": "https://gmic.eu/oldtutorial/blur-by-color-filter.shtml", "align": "center" }
      ]
    }
    ]
  },
  {
    "name": "Iain Fergusson", "filters": [
    {
      "name": "2D_scopes", "lang": "en", "command": "iain_2d_scopes", "command_preview": "iain_2d_scopes", "parameters": [
      { "type": "choice", "name": "Y axis", "default": "1", "pos": "1", "choices": { "0": "Yuv", "1": "yUv", "2": "yuV", "3": "Hsv", "4": "hSv", "5": "hsV", "6": "Lab", "7": "lAb", "8": "laB", "9": "lCh", "10": "lcH", "11": "Cmyk", "12": "cMyk", "13": "cmYk", "14": "cmyK", "15": "Rgb", "16": "rGb", "17": "rgB" } },
      { "type": "choice", "name": "X axis", "default": "2", "pos": "2", "choices": { "0": "Yuv", "1": "yUv", "2": "yuV", "3": "Hsv", "4": "hSv", "5": "hsV", "6": "Lab", "7": "lAb", "8": "laB", "9": "lCh", "10": "lcH", "11": "Cmyk", "12": "cMyk", "13": "cmYk", "14": "cmyK", "15": "Rgb", "16": "rGb", "17": "rgB" } },
      { "type": "choice", "name": "Type", "default": "2", "pos": "3", "choices": { "0": "Dots", "1": "Circles", "2": "Circles scaled by Luma", "3": "Heat map" } },
      { "type": "int", "name": "Colour bits", "default": "6", "min": "1", "max": "8", "pos": "4" },
      { "type": "int", "name": "Plot size", "default": "512", "min": "64", "max": "1024", "pos": "5" },
      { "type": "int", "name": "Max samples", "default": "2048", "min": "16", "max": "4096", "pos": "6" },
      { "type": "choice", "name": "Chart elements", "default": "1", "pos": "7", "choices": { "0": "no info", "1": "axes", "2": "underlay" } },
      { "type": "bool", "name": "Generate test colours", "default": "0", "pos": "8" },
      { "type": "bool", "name": "Mirror Y axis", "default": "0", "pos": "9" },
      { "type": "bool", "name": "Mirror X axis", "default": "0", "pos": "10" },
      { "type": "choice", "name": "Rotate", "default": "0", "pos": "11", "choices": { "0": "0", "1": "90", "2": "180", "3": "270" } }
      ]
    },
    {
      "name": "Anisotropic_tutorial", "lang": "en", "command": "iain_smooth_tutorial", "command_preview": "iain_smooth_tutorial", "parameters": [
      { "type": "float", "name": "Amplitude", "default": "1000", "min": "0", "max": "2000", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Edge Sensitivity" },
      { "type": "float", "name": "Sharpness", "default": "0.5", "min": "0", "max": "2", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Directionality" },
      { "type": "float", "name": "Anisotropy", "default": "1", "min": "0", "max": "1", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Swirl" },
      { "type": "float", "name": "Gradient Smoothness", "default": "0.6", "min": "0", "max": "20", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Align" },
      { "type": "float", "name": "Tensor Smoothness", "default": "1.1", "min": "0", "max": "20", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Show Tensor Field", "default": "0", "pos": "6", "choices": { "0": "hidden", "1": "overlay", "2": "exclusive" } },
      { "type": "bool", "name": "Show Gradient Blur", "default": "0", "pos": "7" }
      ]
    },
    {
      "name": "Auto WB by hue variance", "lang": "en", "command": "iain_auto_wb", "command_preview": "iain_auto_wb_preview", "parameters": [
      { "type": "note", "text": "Restrict analysis to this box" },
      { "type": "point", "name": "Corner 1", "position": "5,5", "pos": "1" },
      { "type": "point", "name": "Corner 2", "position": "95,95", "pos": "3" },
      { "type": "separator" },
      { "type": "bool", "name": "Normalise", "default": "1", "pos": "5" },
      { "type": "bool", "name": "Negative", "default": "0", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "This filter finds the white balance of the image by maxiumising the variation of hues. The area for analysis should contain a range of hues. Do not try to select a neutral grey area." }
      ]
    },
    {
      "name": "Automixer", "lang": "en", "command": "automixer", "command_preview": "automixer", "parameters": [
      { "type": "bool", "name": "Output Colour Difference", "default": "0", "pos": "1" },
      { "type": "bool", "name": "Use Partial Image for Noise Calculation", "default": "0", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "This filter creates a black and white mage with the most pleasant noise characteristics (IMHO). It measures the noise in each colour channel and scales each channel so that the noise levels are even and produces a greyscale output and optionally an extra image with the colour information." },
      { "type": "note", "text": "Author : Iain Fergusson.      Latest update : 2012/10/26" }
      ]
    },
    {
      "name": "Brown Spot Clean", "lang": "en", "command": "iain_brown_spot_clean", "command_preview": "iain_brown_spot_clean", "parameters": [
      { "type": "int", "name": "Red/Green Radius", "default": "1", "min": "1", "max": "7", "pos": "1" },
      { "type": "int", "name": "Blue Radius", "default": "2", "min": "1", "max": "7", "pos": "2" }
      ]
    },
    {
      "name": "CA Correction", "lang": "en", "command": "iain_CA_correction", "command_preview": "iain_CA_correction_pr", "parameters": [
      { "type": "float", "name": "Blue Adjustment", "default": "0", "min": "-5", "max": "5", "pos": "1" },
      { "type": "float", "name": "Red Adjustment", "default": "0", "min": "-5", "max": "5", "pos": "2" },
      { "type": "choice", "name": "Interpolation Quality", "default": "2", "pos": "3", "choices": { "0": "Low", "1": "Med", "2": "high" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Shows", "default": "0", "pos": "4", "choices": { "0": "Output", "1": "colours only" } },
      { "type": "choice", "name": "Preview Corner", "default": "3", "pos": "5", "choices": { "0": "North-West", "1": "Northeast", "2": "Southeast", "3": "South-West" } },
      { "type": "note", "text": "The preview is only accurate for the corners. Make sure you navigate to the same corner as selected above. " }
      ]
    },
    {
      "name": "Easy Skin Retouch", "lang": "en", "command": "iain_easy_skin_retouch", "command_preview": "iain_easy_skin_retouch_preview", "parameters": [
      { "type": "note", "text": "Base Smoothing" },
      { "type": "float", "name": "Edge Sensitivity", "default": "7", "min": "0", "max": "25", "pos": "1" },
      { "type": "int", "name": "Iterations", "default": "2", "min": "1", "max": "5", "pos": "2" },
      { "type": "float", "name": "Low Bias", "default": ".7", "min": "0", "max": "1", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Detail Intensity" },
      { "type": "note", "text": "If preview appears dark, increase size of preview window." },
      { "type": "bool", "name": "On", "default": "1", "pos": "4" },
      { "type": "float", "name": "Very Fine", "default": "1", "min": "0", "max": "2", "pos": "5", "visibility": "0" },
      { "type": "float", "name": "Fine 2", "default": ".7", "min": "0", "max": "2", "pos": "6" },
      { "type": "float", "name": "Medium 3", "default": ".6", "min": "0", "max": "2", "pos": "7" },
      { "type": "float", "name": "Course 4", "default": ".5", "min": "0", "max": "2", "pos": "8" },
      { "type": "float", "name": "Very Course 5", "default": ".5", "min": "0", "max": "2", "pos": "9" },
      { "type": "float", "name": "Reduce Redness", "default": ".5", "min": "0", "max": "1", "pos": "10" },
      { "type": "separator" },
      { "type": "bool", "name": "Split Base and Detail Output", "default": "0", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Iain Fergusson - update 12 May 2013 - now handles alpha channel and some internal changes" }
      ]
    },
    {
      "name": "Exfuse", "lang": "en", "command": "exfuse", "command_preview": "exfuse", "parameters": [
      { "type": "float", "name": "Exposure", "default": "1", "min": "0", "max": "2", "pos": "1" },
      { "type": "float", "name": "Contrast Bias", "default": "0.6", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "Saturation Bias", "default": "0", "min": "0", "max": "1", "pos": "3" },
      { "type": "float", "name": "Exposure Sigma", "default": "0.5", "min": "0", "max": "1", "pos": "4" },
      { "type": "float", "name": "Exposure Bias", "default": "1", "min": "0", "max": "1", "pos": "5" },
      { "type": "float", "name": "Blur", "default": "5", "min": "0", "max": "50", "pos": "6" }
      ]
    },
    {
      "name": "Exfusion", "lang": "en", "command": "exfusion", "command_preview": "exfusion", "parameters": [
      { "type": "float", "name": "Width", "default": "20", "min": "0", "max": "50", "pos": "1" }
      ]
    },
    {
      "name": "Exfusion3", "lang": "en", "command": "exfusion3", "command_preview": "exfusion3", "parameters": [
      { "type": "float", "name": "Contrast Bias", "default": "0.3", "min": "0", "max": "1", "pos": "1" },
      { "type": "float", "name": "Saturation Bias", "default": "0.3", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "Exposure Sigma", "default": "0.2", "min": "0", "max": "1", "pos": "3", "visibility": "0" },
      { "type": "float", "name": "Exposure Bias", "default": "0.3", "min": "0", "max": "1", "pos": "4" },
      { "type": "separator" },
      { "type": "int", "name": "Maxlevels Adjust", "default": "-1", "min": "-5", "max": "0", "pos": "5" },
      { "type": "bool", "name": "Base Level Median Stack", "default": "0", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Pyramid levels are calculated automatically, but you can reduce the number of pyramid levels to save memory. You can choose how the base level is fused, by using weight maps like normal, or by using a median of the image stack" }
      ]
    },
    {
      "name": "Exfusion5", "lang": "en", "command": "exfusion5", "command_preview": "exfusion5", "parameters": [
      { "type": "float", "name": "Contrast Bias", "default": "0", "min": "0", "max": "1", "pos": "1" },
      { "type": "float", "name": "Saturation Bias", "default": ".2", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "Exposure Sigma", "default": "0.2", "min": "0", "max": "1", "pos": "3" },
      { "type": "float", "name": "Exposure Bias", "default": "1", "min": "0", "max": "1", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Post Fusion Options" },
      { "type": "float", "name": "Local Contrast", "default": "0", "min": "0", "max": "3", "pos": "5" },
      { "type": "float", "name": "Curve", "default": "0", "min": "-127", "max": "127", "pos": "6" }
      ]
    },
    {
      "name": "Fast Formula", "lang": "en", "command": "iain_fast_formula", "command_preview": "iain_fast_formula", "parameters": [
      { "type": "text", "name": "Apply Formula", "default": "apply_gamma 2.2", "pos": "1" }
      ]
    },
    {
      "name": "Fast Median Stack", "lang": "en", "command": "iain_fast_median_stack", "command_preview": "iain_fast_median_stack", "parameters": [
      { "type": "note", "text": "This filter gives the median value of the input images at each pixel location and therefore a single input image will have no change. Two input images will be averaged." },
      { "type": "separator" },
      { "type": "note", "text": "Author : Iain Fergusson. Update 16 December 2014 - filter now accepts any number of images. " },
      { "type": "note", "text": "Author : Iain Fergusson. Update 8 March 2013 - Combined median_3_stack and median_5_stack into this filter, added median_4_stack and added auto-select based on number of input images. " }
      ]
    },
    {
      "name": "FFT Tile", "lang": "en", "command": "fft_tile", "command_preview": "fft_tile_preview", "parameters": [
      { "type": "float", "name": "Threshold", "default": "500", "min": "0", "max": "50000", "pos": "1" },
      { "type": "int", "name": "Tile Size", "default": "128", "min": "16", "max": "256", "pos": "2" },
      { "type": "bool", "name": "Fast", "default": "0", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Iain Fergusson.      Latest update : 2012/08/08" }
      ]
    },
    {
      "name": "Fill Holes", "lang": "en", "command": "fill_holes", "command_preview": "fill_holes_preview", "parameters": [
      { "type": "int", "name": "Morph Radius", "default": "11", "min": "3", "max": "50", "pos": "1" },
      { "type": "int", "name": "Edge Radius", "default": "21", "min": "0", "max": "50", "pos": "2" },
      { "type": "int", "name": "Close Radius", "default": "5", "min": "0", "max": "10", "pos": "3" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "4", "choices": { "0": "All", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "YCbCr [luminance]", "8": "YCbCr [blue-red chrominances]", "9": "YCbCr [blue chrominance]", "10": "YCbCr [red chrominance]", "11": "YCbCr [green chrominance]", "12": "Lab [lightness]", "13": "Lab [ab-chrominances]", "14": "Lab [a-chrominance]", "15": "Lab [b-chrominance]", "16": "Lch [ch-chrominances]", "17": "Lch [c-chrominance]", "18": "Lch [h-chrominance]", "19": "HSV [hue]", "20": "HSV [saturation]", "21": "HSV [value]", "22": "HSI [intensity]", "23": "HSL [lightness]", "24": "CMYK [cyan]", "25": "CMYK [magenta]", "26": "CMYK [yellow]", "27": "CMYK [key]" }, "visibility": "0" },
      { "type": "bool", "name": "Fill Light Colours", "default": "0", "pos": "5" },
      { "type": "bool", "name": "Fast", "default": "1", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Set Morph radius to close holes, set Edge radius to restore edges, set Close radius to fill small holes near the edge" },
      { "type": "note", "text": "Author : Iain Fergusson.      Latest update : 28 August 2012 - added 'fast' option" }
      ]
    },
    {
      "name": "Grey_Descreen", "lang": "en", "command": "iain_descreen2", "command_preview": "iain_descreen2", "parameters": [
      { "type": "float", "name": "Analysis Cindow", "default": "3", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "Strength", "default": "-10000", "min": "-10000", "max": "10000", "pos": "2" },
      { "type": "float", "name": "Range", "default": "10", "min": "0", "max": "20", "pos": "3" }
      ]
    },
    {
      "name": "Halftone Shapes", "lang": "en", "command": "iain_halftone_shapes", "command_preview": "iain_halftone_shapes", "parameters": [
      { "type": "float", "name": "Scale", "default": "100", "min": "5", "max": "200", "pos": "1" },
      { "type": "bool", "name": "Negative", "default": "0", "pos": "2" },
      { "type": "choice", "name": "Shape", "default": "0", "pos": "3", "choices": { "0": "Circle", "1": "Star", "2": "Triangle", "3": "Heart" } },
      { "type": "bool", "name": "Oversample", "default": "0", "pos": "4" },
      { "type": "float", "name": "Rotate", "default": "0", "min": "0", "max": "180", "pos": "5" },
      { "type": "float", "name": "Twirl", "default": "0", "min": "0", "max": "2", "pos": "6" },
      { "type": "bool", "name": "Turn on rotate and twirl", "default": "0", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Oversample gives smoother results but takes much longer." },
      { "type": "note", "text": "Twirl distorts the hafltone grid. The preview is not accurate. For best results use with oversample." },
      { "type": "separator" },
      { "type": "note", "text": "Author : Iain Fergusson." }
      ]
    },
    {
      "name": "Heart Tone", "lang": "en", "command": "iain_hearttone", "command_preview": "iain_hearttone", "parameters": [
      { "type": "float", "name": "Scale", "default": "100", "min": "10", "max": "200", "pos": "1" },
      { "type": "float", "name": "Enhance Details", "default": "0", "min": "0", "max": "10", "pos": "2" }
      ]
    },
    {
      "name": "Iain 2x", "lang": "en", "command": "iain_2x", "command_preview": "iain_2x", "parameters": [
      ]
    },
    {
      "name": "Iain Demosaic", "lang": "en", "command": "iain_demosiac", "command_preview": "iain_demosiac", "parameters": [
      { "type": "choice", "name": "Starting Pattern", "default": "0", "pos": "1", "choices": { "0": "Red-Green", "1": "Blue-Green", "2": "Green-Red", "3": "Green-Blue" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Iain Fergusson - released 6 June 2013" }
      ]
    },
    {
      "name": "Iain Denoise 2019 beta3", "lang": "en", "command": "iain_denoise_2019_beta3", "command_preview": "iain_denoise_2019_beta3_preview", "parameters": [
      { "type": "float", "name": "Gamma", "default": "1", "min": ".05", "max": "2", "pos": "1" },
      { "type": "float", "name": "Shadows", "default": "0", "min": "-1", "max": "1", "pos": "2" },
      { "type": "float", "name": "Light", "default": "0", "min": "-1", "max": "1", "pos": "3" },
      { "type": "float", "name": "Mid Offset", "default": "0", "min": "-0.5", "max": "0.5", "pos": "4" },
      { "type": "float", "name": "Desaturate", "default": "0.5", "min": "0", "max": "1", "pos": "5" },
      { "type": "float", "name": "Guide mix", "default": "1", "min": "0", "max": "1", "pos": "6" },
      { "type": "bool", "name": "Soften Guide", "default": "0", "pos": "7" },
      { "type": "float", "name": "Fine", "default": "5", "min": "0", "max": "30", "pos": "8" },
      { "type": "float", "name": "Mid", "default": "3", "min": "0", "max": "30", "pos": "9" },
      { "type": "float", "name": "Large", "default": "0", "min": "0", "max": "30", "pos": "10" },
      { "type": "int", "name": "Lookup", "default": "3", "min": "1", "max": "7", "pos": "11" },
      { "type": "choice", "name": "Recovery", "default": "0", "pos": "12", "choices": { "0": "no recovery", "1": "fast recovery", "2": "slow recovery", "3": "guide recovery" } },
      { "type": "float", "name": "Recover", "default": ".5", "min": "0", "max": "2", "pos": "13" },
      { "type": "choice", "name": "Preview shows", "default": "4", "pos": "14", "choices": { "0": "Noise", "1": "Fine Noise", "2": "Mid Noise", "3": "Large Noise", "4": "Output" } },
      { "type": "bool", "name": "Preview Tones map", "default": "0", "pos": "15" }
      ]
    },
    {
      "name": "Iain Remove Pattern", "lang": "en", "command": "iain_remove_pattern", "command_preview": "iain_remove_pattern_preview", "parameters": [
      { "type": "note", "text": "Smooth" },
      { "type": "float", "name": "Pre-Blur", "default": "3", "min": "1", "max": "50", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "3", "min": "1", "max": "14", "pos": "2" },
      { "type": "float", "name": "Radius", "default": "3", "min": "1", "max": "40", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Recover detials" },
      { "type": "bool", "name": "Recover Details", "default": "0", "pos": "4" },
      { "type": "float", "name": "Recovery Amount", "default": "4", "min": "0", "max": "10", "pos": "5" },
      { "type": "int", "name": "Tile Size", "default": "128", "min": "16", "max": "512", "pos": "6" },
      { "type": "choice", "name": "Quality", "default": "1", "pos": "7", "choices": { "0": "1", "1": "3", "2": "5", "3": "super slow" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview", "default": "0", "pos": "8", "choices": { "0": "output", "1": "FFT of input", "2": "FFT of output", "3": "FFT difference" } },
      { "type": "separator" },
      { "type": "note", "text": "This filter remove patterns by eliminating peaks in frequency domain while protecting edges." },
      { "type": "note", "text": "Stage 1 Pre-blur: Create a guide image that has the pattern blured out" },
      { "type": "note", "text": "Stage 2 Smooth: Use guide image to do edge-protected smoothing. Make sure pattern is removed before trying to recover detials." },
      { "type": "note", "text": "Stage 3 Detials: Recover detials by keeping non-peaks the the frequency domain." }
      ]
    },
    {
      "name": "Iain Star Burst", "lang": "en", "command": "iain_star_burst", "command_preview": "iain_star_burst", "parameters": [
      { "type": "int", "name": "Threshold", "default": "254", "min": "0", "max": "255", "pos": "1" },
      { "type": "float", "name": "Radius", "default": "50", "min": "1", "max": "255", "pos": "2" },
      { "type": "float", "name": "Intensity", "default": "5", "min": "0", "max": "10", "pos": "3" },
      { "type": "int", "name": "Rotate", "default": "45", "min": "0", "max": "90", "pos": "4" },
      { "type": "int", "name": "Lines", "default": "2", "min": "1", "max": "10", "pos": "5" },
      { "type": "bool", "name": "Colour Modify", "default": "0", "pos": "6" },
      { "type": "bool", "name": "Output Stars Only", "default": "0", "pos": "7" }
      ]
    },
    {
      "name": "Iain Unindex", "lang": "en", "command": "iain_unindex", "command_preview": "iain_unindex_preview", "parameters": [
      { "type": "float", "name": "Smooth", "default": "30", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Edge Threshold", "default": "20", "min": "0", "max": "50", "pos": "2" },
      { "type": "bool", "name": "Preview Zoom", "default": "1", "pos": "3" },
      { "type": "float", "name": "Zoom Center H", "default": "50", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Zoom Center V", "default": "50", "min": "0", "max": "100", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Iain Fergusson - released 19 Feb 2013" }
      ]
    },
    {
      "name": "Iain Weightmap", "lang": "en", "command": "iain_weightmap", "command_preview": "iain_weightmap", "parameters": [
      { "type": "float", "name": "Lap Weight", "default": "1", "min": "0", "max": "4", "pos": "1" },
      { "type": "float", "name": "Blur Width", "default": "40", "min": "0", "max": "100", "pos": "2" }
      ]
    },
    {
      "name": "Iain's Noise Reduction old", "lang": "en", "command": "iain_iains_nr", "command_preview": "iain_iains_nr_preview", "parameters": [
      { "type": "float", "name": "1 Luma NR", "default": "3", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "2 Chroma NR", "default": "3", "min": "0", "max": "20", "pos": "2" },
      { "type": "int", "name": "3 Despeckle", "default": "1", "min": "0", "max": "4", "pos": "3" },
      { "type": "note", "text": "       Adjust noise reduction by tone" },
      { "type": "float", "name": "4 Highlights", "default": "0", "min": "-50000", "max": "50000", "pos": "4" },
      { "type": "float", "name": "5 Shadows", "default": "0", "min": "-32000", "max": "32000", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Recover Details" },
      { "type": "choice", "name": "6 Recover Details", "default": "0", "pos": "6", "choices": { "0": "Do not Recover Details", "1": "Recover Details", "2": "Recover Details as separate layer" } },
      { "type": "float", "name": "7 Recovery Amount", "default": "1", "min": ".1", "max": "10", "pos": "7" },
      { "type": "note", "text": "       Adjust detial recovery by size" },
      { "type": "float", "name": "8 Adjust Fine Details", "default": "0", "min": "-500", "max": "500", "pos": "8" },
      { "type": "float", "name": "9 Adjust Medium Details", "default": "0", "min": "-500", "max": "500", "pos": "9" },
      { "type": "float", "name": "10 Adjust Large Details", "default": "0", "min": "-500", "max": "500", "pos": "10" },
      { "type": "float", "name": "11 Detail Emphasis", "default": "1.35", "min": "1", "max": "4", "pos": "11" },
      { "type": "separator" },
      { "type": "float", "name": "12 Sharpen Edges", "default": "0", "min": "0", "max": "4", "pos": "12" },
      { "type": "note", "text": "Preview options" },
      { "type": "choice", "name": "13 Preview Shows", "default": "0", "pos": "13", "choices": { "0": "Normal Output", "1": "Luma Noise", "2": "Chroma Noise", "3": "Details" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Iain Fergusson - update 10 Jan 2013" }
      ]
    },
    {
      "name": "iain_highlight_synthesis", "lang": "en", "command": "iain_highlight_synthesis", "command_preview": "iain_highlight_synthesis", "parameters": [
      { "type": "float", "name": "red", "default": "1", "min": "0", "max": "2", "pos": "1" },
      { "type": "float", "name": "green", "default": "0.6", "min": "0", "max": "2", "pos": "2" },
      { "type": "float", "name": "blue", "default": "1", "min": "0", "max": "2", "pos": "3" },
      { "type": "bool", "name": "rgb to srgb", "default": "0", "pos": "4" }
      ]
    },
    {
      "name": "IID Demosaic", "lang": "en", "command": "iain_iid_demosaic", "command_preview": "iain_iid_demosaic", "parameters": [
      { "type": "choice", "name": "1 Starting Pattern", "default": "1", "pos": "1", "choices": { "0": "Red-Green", "1": "Blue-Green", "2": "Green-Red", "3": "Green-Blue" } },
      { "type": "int", "name": "2 Clamp Radius", "default": "1", "min": "1", "max": "3", "pos": "2" },
      { "type": "int", "name": "3 Refinement Steps", "default": "1", "min": "0", "max": "10", "pos": "3" },
      { "type": "bool", "name": "4 Reduce Moire", "default": "0", "pos": "4" },
      { "type": "separator" },
      { "type": "bool", "name": "5 Use Gamma Adjustment", "default": "0", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "IID is a demosaicing algorithm that produces good colour detail and works well in the presence of chromatic aberrations. It attempts to reduce moire patterns. Noise tends to render as a maze like texture." },
      { "type": "separator" },
      { "type": "note", "text": "Clamp Radius: Interploated green pixels are clamped to local values. A clamp radius of 1 reduces ringing and overshoots but may limit some detials. A clamp radius of 3 will give more detials but also more ringing and overshoots. Not much difference can been seen unless you zoom in." },
      { "type": "note", "text": "Refinement Steps: Uses the initital demosaic as a guide for a new partial demosaic, and can be repeated. Each step gives better luma details and noise rendering but degrades chroma edges. Use a low value of clamp radius to reduce arefacts but also the effectiveness. Two or three refinements steps is probably the sweet spot." },
      { "type": "separator" },
      { "type": "note", "text": "Author : Iain Fergusson. 25 March 2017 - First release" }
      ]
    },
    {
      "name": "Luminance_NR2", "lang": "en", "command": "luminance_nr_two", "command_preview": "luminance_nr_two", "parameters": [
      { "type": "float", "name": "Patch Variance", "default": "10", "min": "0.1", "max": "20", "pos": "1" },
      { "type": "bool", "name": "Fast Approximation", "default": "1", "pos": "2" },
      { "type": "int", "name": "Iterations", "default": "1", "min": "1", "max": "5", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Adjust NR for for larger scales as %" },
      { "type": "float", "name": "Scale 2", "default": ".8", "min": "0", "max": "1", "pos": "4" },
      { "type": "float", "name": "Scale 3", "default": ".7", "min": "0", "max": "1", "pos": "5" },
      { "type": "float", "name": "Scale 4", "default": ".6", "min": "0", "max": "1", "pos": "6" },
      { "type": "float", "name": "Scale 5", "default": ".5", "min": "0", "max": "1", "pos": "7" },
      { "type": "float", "name": "Scale 6", "default": ".4", "min": "0", "max": "1", "pos": "8" },
      { "type": "float", "name": "Scale 7", "default": ".3", "min": "0", "max": "1", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Master threshold for details" },
      { "type": "float", "name": "Threshold", "default": "1200", "min": "0", "max": "10000", "pos": "10" },
      { "type": "int", "name": "Tile Size", "default": "64", "min": "32", "max": "128", "pos": "11" },
      { "type": "float", "name": "Nothing", "default": "0", "min": "0", "max": "0", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "Adjust threshold for detials" },
      { "type": "float", "name": "Fine", "default": "0", "min": "-1000", "max": "1000", "pos": "13" },
      { "type": "float", "name": "Medium", "default": "0", "min": "-1000", "max": "1000", "pos": "14" },
      { "type": "float", "name": "Course", "default": "0", "min": "-1000", "max": "1000", "pos": "15" },
      { "type": "bool", "name": "Recover Details", "default": "0", "pos": "16" },
      { "type": "separator" },
      { "type": "note", "text": "Adjust noise reduction by tone" },
      { "type": "int", "name": "Blacks", "default": "0", "min": "0", "max": "500", "pos": "17" },
      { "type": "int", "name": "Darks", "default": "0", "min": "0", "max": "500", "pos": "18" },
      { "type": "int", "name": "Midtones", "default": "0", "min": "0", "max": "500", "pos": "19" },
      { "type": "int", "name": "Lights", "default": "0", "min": "0", "max": "500", "pos": "20" },
      { "type": "int", "name": "White", "default": "0", "min": "0", "max": "500", "pos": "21" },
      { "type": "separator" },
      { "type": "bool", "name": "Median Pass First", "default": "0", "pos": "22" },
      { "type": "note", "text": "This filter is slow!" },
      { "type": "note", "text": "Author : Iain Fergusson.      Latest update : 25 August 2012" }
      ]
    },
    {
      "name": "Minimum Chroma Demosaic", "lang": "en", "command": "iain_minimum_chroma_demosaic", "command_preview": "iain_minimum_chroma_demosaic", "parameters": [
      { "type": "choice", "name": "Starting Pattern", "default": "0", "pos": "1", "choices": { "0": "Red-Green", "1": "Blue-Green", "2": "Green-Red", "3": "Green-Blue" } },
      { "type": "choice", "name": "Moire Size", "default": "2", "pos": "2", "choices": { "0": "Small", "1": "Medium", "2": "Large", "3": "Extra Large" } },
      { "type": "choice", "name": "Details", "default": "0", "pos": "3", "choices": { "0": "Less detial but better colour edges", "1": "More detial but degraded colour edges" } }
      ]
    },
    {
      "name": "Moire Removal", "lang": "en", "command": "iain_moire_removal", "command_preview": "iain_moire_removal", "parameters": [
      { "type": "float", "name": "Smoothing", "default": "5", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "Smart Threshold", "default": "5", "min": "0", "max": "10", "pos": "2", "visibility": "2" },
      { "type": "choice", "name": "Moire Removal Method", "default": "0", "pos": "3", "choices": { "0": "Smart", "1": "Aggresive", "2": "Smooth only" }, "visibility": "2" },
      { "type": "separator", "visibility": "2" },
      { "type": "note", "text": "Moire removal consists of two parts, first, an edge-protected smoothing and second a frequency analyisis of the difference between the smoothed and original image. The image is broken into tiles, and each tile processed. A tile that is a solid colour is skipped.", "visibility": "2" },
      { "type": "note", "text": "Smoothing must be high enough to remove the moire. The Smart Threshold sets the detection of moire for each frequency on each colour channel. If a frequency in one colour channel is determined to be moire it is replaced by the colour channel least likely to have moire.", "visibility": "2" },
      { "type": "note", "text": "The Agressive setting skips the thresolding step and uses the lowest frequency level from the colour channels.", "visibility": "2" },
      { "type": "note", "text": "The filter will reduce chroma details/noise", "visibility": "2" }
      ]
    },
    {
      "name": "Moire Removal Not Parallel", "lang": "en", "command": "iain_moire_removal_NP", "command_preview": "iain_moire_removal_NP", "parameters": [
      { "type": "float", "name": "Smoothing", "default": "5", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "Smart Threshold", "default": "5", "min": "0", "max": "10", "pos": "2" },
      { "type": "choice", "name": "Moire Removal Method", "default": "0", "pos": "3", "choices": { "0": "Smart", "1": "Aggresive", "2": "Smooth only" } },
      { "type": "separator" },
      { "type": "note", "text": "This filter is the same as the other one but doe snot have parallel processing" },
      { "type": "separator" },
      { "type": "note", "text": "Moire removal consists of two parts, first, an edge-protected smoothing and second a frequency analyisis of the difference between the smoothed and original image. The image is broken into tiles, and each tile processed. A tile that is a solid colour is skipped." },
      { "type": "note", "text": "Smoothing must be high enough to remove the moire. The Smart Threshold sets the detection of moire for each frequency on each colour channel. If a frequency in one colour channel is determined to be moire it is replaced by the colour channel least likely to have moire." },
      { "type": "note", "text": "The Agressive setting skips the thresolding step and uses the lowest frequency level from the colour channels." },
      { "type": "note", "text": "The filter will reduce chroma details/noise" }
      ]
    },
    {
      "name": "MS NL-Means C Noise2", "lang": "en", "command": "ms_nlmeans_c_noise2_p", "command_preview": "ms_nlmeans_c_noise2_p_preview", "parameters": [
      { "type": "note", "text": "Noise Reduction" },
      { "type": "float", "name": "1 Fine", "default": "3", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "2 Coarse", "default": "1", "min": "0", "max": "10", "pos": "2" },
      { "type": "float", "name": "3 Blacks", "default": "0", "min": "-10", "max": "10", "pos": "3" },
      { "type": "float", "name": "4 Shadows", "default": "0", "min": "-10", "max": "10", "pos": "4" },
      { "type": "float", "name": "5 Midtones", "default": "0", "min": "-10", "max": "10", "pos": "5" },
      { "type": "float", "name": "6 Highlights", "default": "0", "min": "-10", "max": "10", "pos": "6" },
      { "type": "float", "name": "7 Whites", "default": "0", "min": "-10", "max": "10", "pos": "7" },
      { "type": "float", "name": "8 Smooth Curve", "default": "10", "min": "0", "max": "50", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Advanced settings" },
      { "type": "float", "name": "9 Patch Size", "default": "2", "min": "1", "max": "10", "pos": "9" },
      { "type": "int", "name": "10 Search Radius", "default": "4", "min": "1", "max": "10", "pos": "10" },
      { "type": "float", "name": "11 Patch Size", "default": "2", "min": "1", "max": "10", "pos": "11" },
      { "type": "int", "name": "12 Search Radius", "default": "7", "min": "1", "max": "10", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "Side chain Processing" },
      { "type": "bool", "name": "13 Red/Blue Median", "default": "0", "pos": "13" },
      { "type": "bool", "name": "14 Green Despeckle", "default": "0", "pos": "14" },
      { "type": "separator" },
      { "type": "bool", "name": "15 Use Noise Estimate", "default": "0", "pos": "15" },
      { "type": "separator" },
      { "type": "bool", "name": "16 Show Info", "default": "0", "pos": "16" }
      ]
    },
    {
      "name": "MS Patch Chroma", "lang": "en", "command": "ms_patch_c", "command_preview": "ms_patch_c_preview", "parameters": [
      { "type": "note", "text": "Master Patch based smoothing (scale 1)" },
      { "type": "float", "name": "Patch Variance", "default": "5", "min": "0.1", "max": "50", "pos": "1" },
      { "type": "bool", "name": "Median Pass", "default": "1", "pos": "2" },
      { "type": "int", "name": "Global Iterations", "default": "1", "min": "1", "max": "5", "pos": "3" },
      { "type": "separator" },
      { "type": "float", "name": "Scale 2", "default": "5", "min": "0", "max": "25", "pos": "4" },
      { "type": "float", "name": "Scale 3", "default": "4", "min": "0", "max": "25", "pos": "5" },
      { "type": "float", "name": "Scale 4", "default": "3", "min": "0", "max": "25", "pos": "6" },
      { "type": "float", "name": "Scale 5", "default": "2", "min": "0", "max": "25", "pos": "7" },
      { "type": "float", "name": "Scale 6", "default": "1", "min": "0", "max": "25", "pos": "8" },
      { "type": "float", "name": "Scale 7", "default": "1", "min": "0", "max": "25", "pos": "9" },
      { "type": "float", "name": "Undo Gamma", "default": "1.3", "min": "1", "max": "3", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "Customise Luma weighting" },
      { "type": "float", "name": "Red", "default": "0.375", "min": "0", "max": "1", "pos": "11" },
      { "type": "float", "name": "Green", "default": ".5", "min": "0", "max": "1", "pos": "12" },
      { "type": "float", "name": "Blue", "default": "0.125", "min": "0", "max": "1", "pos": "13" },
      { "type": "separator" },
      { "type": "bool", "name": "Show Difference", "default": "0", "pos": "14" },
      { "type": "note", "text": "Author : Iain Fergusson.      Latest update : 10 December 2012 - added show difference option and changed interations from local operation to global operation." }
      ]
    },
    {
      "name": "MS Patch NR", "lang": "en", "command": "MS_Patch_NR", "command_preview": "MS_Patch_NR", "parameters": [
      { "type": "float", "name": "Gamma", "default": "1.3", "min": ".5", "max": "2", "pos": "1" },
      { "type": "float", "name": "Fine", "default": "0", "min": "0", "max": "250", "pos": "2" },
      { "type": "float", "name": "Coarse", "default": "0", "min": "0", "max": "250", "pos": "3" },
      { "type": "float", "name": "Coarsest", "default": "0", "min": "0", "max": "250", "pos": "4" },
      { "type": "int", "name": "Patch Size", "default": "3", "min": "3", "max": "7", "pos": "5" },
      { "type": "int", "name": "Search Radius", "default": "5", "min": "3", "max": "17", "pos": "6" }
      ]
    },
    {
      "name": "MS_Patch_NR3", "lang": "en", "command": "MS_Patch_NR3", "command_preview": "MS_Patch_NR3_p", "parameters": [
      { "type": "float", "name": "Gamma", "default": "1.3", "min": ".5", "max": "2", "pos": "1" },
      { "type": "int", "name": "L Fine", "default": "0", "min": "0", "max": "250", "pos": "2" },
      { "type": "int", "name": "L Coarse", "default": "0", "min": "0", "max": "250", "pos": "3" },
      { "type": "int", "name": "L Coarsest", "default": "0", "min": "0", "max": "250", "pos": "4" },
      { "type": "int", "name": "Patch Size", "default": "3", "min": "3", "max": "7", "pos": "5" },
      { "type": "int", "name": "Search Radius", "default": "5", "min": "3", "max": "17", "pos": "6" },
      { "type": "choice", "name": "Fast", "default": "1", "pos": "7", "choices": { "0": "smooth", "1": "fast" } },
      { "type": "choice", "name": "Pre-Salt and Pepper", "default": "0", "pos": "8", "choices": { "0": "none", "1": "smooth", "2": "fast", "3": "strong" } },
      { "type": "choice", "name": "Post-Salt and Pepper", "default": "0", "pos": "9", "choices": { "0": "none", "1": "smooth", "2": "fast", "3": "strong" } },
      { "type": "int", "name": "C Fine", "default": "0", "min": "0", "max": "250", "pos": "10" },
      { "type": "int", "name": "C Coarse", "default": "0", "min": "0", "max": "250", "pos": "11" },
      { "type": "int", "name": "C Coarsest", "default": "0", "min": "0", "max": "250", "pos": "12" }
      ]
    },
    {
      "name": "Multi Scale Patch Smoothing", "lang": "en", "command": "ms_patch_smooth", "command_preview": "ms_patch_smooth_preview", "parameters": [
      { "type": "note", "text": "Normal Patch based smoothing (scale 1)" },
      { "type": "float", "name": "Spatial Variance", "default": "10", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "Patch Variance", "default": "5", "min": "0.1", "max": "50", "pos": "2" },
      { "type": "int", "name": "Patch Size", "default": "3", "min": "2", "max": "21", "pos": "3" },
      { "type": "int", "name": "Lookup Size", "default": "5", "min": "2", "max": "21", "pos": "4" },
      { "type": "float", "name": "Patch Smoothness", "default": "0", "min": "0", "max": "4", "pos": "5" },
      { "type": "bool", "name": "Fast Approximation", "default": "1", "pos": "6" },
      { "type": "int", "name": "Iterations", "default": "1", "min": "1", "max": "5", "pos": "7" },
      { "type": "choice", "name": "Channel(s)", "default": "7", "pos": "8", "choices": { "0": "All", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "YCbCr [luminance]", "8": "YCbCr [blue-red chrominances]", "9": "YCbCr [blue chrominance]", "10": "YCbCr [red chrominance]", "11": "YCbCr [green chrominance]", "12": "Lab [lightness]", "13": "Lab [ab-chrominances]", "14": "Lab [a-chrominance]", "15": "Lab [b-chrominance]", "16": "Lch [ch-chrominances]", "17": "Lch [c-chrominance]", "18": "Lch [h-chrominance]", "19": "HSV [hue]", "20": "HSV [saturation]", "21": "HSV [value]", "22": "HSI [intensity]", "23": "HSL [lightness]", "24": "CMYK [cyan]", "25": "CMYK [magenta]", "26": "CMYK [yellow]", "27": "CMYK [key]" } },
      { "type": "separator" },
      { "type": "note", "text": "Patch Variance for additional scales" },
      { "type": "float", "name": "Scale 2", "default": "5", "min": "0", "max": "25", "pos": "9" },
      { "type": "float", "name": "Scale 3", "default": "4", "min": "0", "max": "25", "pos": "10" },
      { "type": "float", "name": "Scale 4", "default": "3", "min": "0", "max": "25", "pos": "11" },
      { "type": "float", "name": "Scale 5", "default": "2", "min": "0", "max": "25", "pos": "12" },
      { "type": "float", "name": "Scale 6", "default": "1", "min": "0", "max": "25", "pos": "13" },
      { "type": "float", "name": "Scale 7", "default": "1", "min": "0", "max": "25", "pos": "14" },
      { "type": "float", "name": "Undo Gamma", "default": "1.3", "min": "1", "max": "3", "pos": "15" },
      { "type": "separator" },
      { "type": "bool", "name": "Show Difference", "default": "0", "pos": "16" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Iain Fergusson.      Latest update : 28 August 2012 - minor speed up, but level 7 does not do anything now." }
      ]
    },
    {
      "name": "Multi Scale Smoothing", "lang": "en", "command": "ms_smooth", "command_preview": "ms_smooth_preview", "parameters": [
      { "type": "float", "name": "Smooth Scale 1", "default": "0", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Smooth Scale 2", "default": "0", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Smooth Scale 3", "default": "0", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Smooth Scale 4", "default": "0", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Smooth Scale 5", "default": "0", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "Smooth Scale 6", "default": "0", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "Smoothness", "default": "2", "min": "0", "max": "15", "pos": "7" },
      { "type": "bool", "name": "Log Scales", "default": "0", "pos": "8" },
      { "type": "int", "name": "Global Repeats", "default": "2", "min": "0", "max": "5", "pos": "9" },
      { "type": "bool", "name": "Show Difference", "default": "0", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Iain Fergusson - update 7 Dec 2012" }
      ]
    },
    {
      "name": "Noise Reduction 5", "lang": "en", "command": "nr5", "command_preview": "nr5_preview", "parameters": [
      { "type": "float", "name": "1 Luma Denoise", "default": "1.6", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "2 Colour Denoie", "default": "5", "min": "0", "max": "20", "pos": "2" },
      { "type": "separator" },
      { "type": "bool", "name": "3 Recover Details", "default": "1", "pos": "3" },
      { "type": "float", "name": "4 Amount", "default": "1", "min": "0.1", "max": "10", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": " sharpen details" },
      { "type": "float", "name": "5 Radius", "default": ".75", "min": ".25", "max": "5", "pos": "5" },
      { "type": "float", "name": "6 Amount", "default": "3", "min": "0", "max": "10", "pos": "6" },
      { "type": "float", "name": "7 Threshold", "default": "0", "min": "0", "max": "100", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": " sharpen edges" },
      { "type": "float", "name": "8 Radius", "default": ".75", "min": ".25", "max": "5", "pos": "8" },
      { "type": "float", "name": "9 Amount", "default": ".5", "min": "0", "max": "10", "pos": "9" },
      { "type": "float", "name": "10 Threshold", "default": "0", "min": "0", "max": "100", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "Advanced options" },
      { "type": "choice", "name": "11 Base Luma Method", "default": "1", "pos": "11", "choices": { "0": "Wavelet", "1": "Multi-scale patch smoothing", "2": "Semi-auto MS patch", "3": "Median first MS patch", "4": "Multi Scale Median" } },
      { "type": "choice", "name": "12 Chroma Method", "default": "1", "pos": "12", "choices": { "0": "Wavelet", "1": "Multi-scale patch smoothing" } },
      { "type": "separator" },
      { "type": "float", "name": "13 Adjust Fine Details", "default": "100", "min": "-5000", "max": "500", "pos": "13" },
      { "type": "float", "name": "14 Adjust Medium Details", "default": "0", "min": "-5000", "max": "500", "pos": "14" },
      { "type": "float", "name": "15 Adjust Large Details", "default": "-100", "min": "-5000", "max": "500", "pos": "15" },
      { "type": "separator" },
      { "type": "bool", "name": "Experimental Curves", "default": "0", "pos": "16" },
      { "type": "float", "name": "Gamma", "default": "1.3", "min": ".3", "max": "2", "pos": "17" },
      { "type": "bool", "name": "Show Noise", "default": "0", "pos": "18" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Iain Fergusson.      Latest update : 28 November 2012 - added abiltity to view noise" }
      ]
    },
    {
      "name": "PNG Processing", "lang": "en", "command": "iain_png_processing", "command_preview": "iain_png_processing", "parameters": [
      { "type": "int", "name": "Number of Colours", "default": "4", "min": "2", "max": "256", "pos": "1" },
      { "type": "bool", "name": "Refine Palette", "default": "0", "pos": "2" },
      { "type": "choice", "name": "Dither Pattern", "default": "0", "pos": "3", "choices": { "0": "Lines", "1": "Checkerboard", "2": "Diffusion", "3": "None" } },
      { "type": "separator" },
      { "type": "bool", "name": "Pre Smooth", "default": "0", "pos": "4" },
      { "type": "float", "name": "Smooth Radius", "default": "3", "min": "0", "max": "20", "pos": "5" },
      { "type": "float", "name": "Smooth Amount", "default": "3", "min": "0", "max": "20", "pos": "6" },
      { "type": "separator" },
      { "type": "bool", "name": "Pre-Sharpen (Constrained)", "default": "0", "pos": "7" },
      { "type": "float", "name": "Sharpen Radius", "default": ".75", "min": "0", "max": "10", "pos": "8" },
      { "type": "float", "name": "Amount", "default": "2", "min": "0", "max": "10", "pos": "9" },
      { "type": "float", "name": "Threshold", "default": "1", "min": "0", "max": "50", "pos": "10" },
      { "type": "int", "name": "Constraint Radius", "default": "5", "min": "0", "max": "10", "pos": "11" },
      { "type": "float", "name": "Overshoot", "default": "0", "min": "0", "max": "50", "pos": "12" },
      { "type": "separator" },
      { "type": "bool", "name": "Post Median", "default": "0", "pos": "13" },
      { "type": "int", "name": "Median Radius", "default": "1", "min": "1", "max": "10", "pos": "14" },
      { "type": "int", "name": "Median Repeats", "default": "1", "min": "1", "max": "5", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "This filter provides tools to improve the compressabilty or visual quality when creating an indexed image." },
      { "type": "note", "text": "Author : Iain Fergusson. release: 9 September 2018" }
      ]
    },
    {
      "name": "Save Noise Print", "lang": "en", "command": "iain_savenoiseprint", "command_preview": "iain_savenoiseprint_p", "parameters": [
      { "type": "choice", "name": "Pass", "default": "0", "pos": "1", "choices": { "0": "pass 1 create noise print", "1": "pass 2 remove noise" } },
      { "type": "float", "name": "Detail Threshold", "default": "1", "min": "0", "max": "5", "pos": "2" },
      { "type": "float", "name": "Gamma", "default": "1.4", "min": "1", "max": "4", "pos": "3" },
      { "type": "note", "text": "This filter requires 2 images as input, the bottom image should be noisey and the top image should be the same image only with some kind of noise reduction." },
      { "type": "note", "text": "You need to do 2 passes of this filter to get the results. The first pass analyses the residual noise and creates a noise print and saves it to your computer. On the 1st pass you can click apply and the noise print will be generated after a while. When that has finished switch to 2nd pass and adjust the Detail Threshold to your liking and hit okay or apply." },
      { "type": "note", "text": " Set output mode to 'New Layers'" }
      ]
    },
    {
      "name": "Simple Local Contrast", "lang": "en", "command": "simplelocalcontrast_p", "command_preview": "simplelocalcontrast_p", "parameters": [
      { "type": "float", "name": "Edge Sensitivity", "default": "16", "min": "0", "max": "25", "pos": "1" },
      { "type": "int", "name": "Iterations", "default": "2", "min": "1", "max": "5", "pos": "2" },
      { "type": "float", "name": "Paint Effect", "default": "0", "min": "0", "max": "50", "pos": "3" },
      { "type": "choice", "name": "Channels", "default": "1", "pos": "4", "choices": { "0": "Colour", "1": "Luminance Only" } },
      { "type": "float", "name": "Pre-Gamma", "default": "1", "min": ".1", "max": "5", "pos": "5" },
      { "type": "float", "name": "Post-Gamma", "default": "1", "min": ".1", "max": "5", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Luminance Mask" },
      { "type": "float", "name": "Blacks", "default": "1", "min": "0", "max": "1", "pos": "7" },
      { "type": "float", "name": "Dark Grey", "default": "1", "min": "0", "max": "1", "pos": "8" },
      { "type": "float", "name": "Mid Grey", "default": "1", "min": "0", "max": "1", "pos": "9" },
      { "type": "float", "name": "Light Grey", "default": "1", "min": "0", "max": "1", "pos": "10" },
      { "type": "float", "name": "Whites", "default": "1", "min": "0", "max": "1", "pos": "11" },
      { "type": "separator" },
      { "type": "choice", "name": "Parallel Processing", "default": "0", "pos": "12", "choices": { "0": "Auto", "1": "None" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Iain Fergusson - update 18 April 2014 - added parallel processing and luminance mask" }
      ]
    },
    {
      "name": "Skin Mask", "lang": "en", "command": "iain_fx_skin_mask", "command_preview": "iain_fx_skin_mask_pr", "parameters": [
      { "type": "note", "text": "Main Controls" },
      { "type": "float", "name": "Magenta Ratio", "default": "55", "min": "0", "max": "255", "pos": "1" },
      { "type": "float", "name": "Cyan Ratio", "default": "200", "min": "2", "max": "255", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Refine Hue Range" },
      { "type": "float", "name": "Remove Reds", "default": "0", "min": "0", "max": "255", "pos": "3" },
      { "type": "float", "name": "Remove Yellows", "default": "0", "min": "0", "max": "100", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "Output", "default": "0", "pos": "5", "choices": { "0": "Masked Image", "1": "Just the Mask" } },
      { "type": "choice", "name": "Preview Shows", "default": "1", "pos": "6", "choices": { "0": "Output", "1": "Highlighted Mask" } },
      { "type": "separator" },
      { "type": "note", "text": "Skin mask uses CMYK colour model to selct skin tones. Skin tones generally have a predictable ratios of Cyan, Magetna and Yellow. Different ethnicies have slighty different ratios. " },
      { "type": "note", "text": "Magenta Ratio: This sets how much the Magenta content is allowed to be below the Yellow content. Increase to include dark skin tones and shadows." },
      { "type": "note", "text": "Cyan Ratio: This set the how much the Cyan content is allowed to be below the Yellow content. Increase to include pale skin tones and highlights." },
      { "type": "note", "text": "Refine Hue Range: This allows you to remove tones that pass through the main controls but are not present in your subject." },
      { "type": "separator" },
      { "type": "note", "text": "Author : Iain Fergusson." }
      ]
    },
    {
      "name": "Smart Demosaic", "lang": "en", "command": "iain_smartdemos", "command_preview": "iain_smartdemos", "parameters": [
      { "type": "choice", "name": "Starting Pattern", "default": "0", "pos": "1", "choices": { "0": "Red-Green", "1": "Blue-Green", "2": "Green-Red", "3": "Green-Blue" } },
      { "type": "float", "name": "Blur Radius", "default": "1.5", "min": ".5", "max": "3", "pos": "2" },
      { "type": "float", "name": "Wrong Way-Zippers", "default": "2", "min": "0", "max": "5", "pos": "3" }
      ]
    },
    {
      "name": "Split Detials [Orientation]", "lang": "en", "command": "iain_split_orientation", "command_preview": "iain_split_orientation_preview", "parameters": [
      { "type": "point", "name": "Center (%)", "position": "75,50", "pos": "1" },
      { "type": "int", "name": "Angle range", "default": "45", "min": "1", "max": "90", "pos": "3" },
      { "type": "float", "name": "Residual size", "default": "10", "min": "0", "max": "50", "pos": "4" },
      { "type": "int", "name": "Snap to angle", "default": "5", "min": "0", "max": "45", "pos": "5" },
      { "type": "int", "name": "Angle transition", "default": "5", "min": "0", "max": "45", "pos": "6" },
      { "type": "bool", "name": "Preview line only", "default": "0", "pos": "7" },
      { "type": "choice", "name": "Top Layer", "default": "0", "pos": "8", "choices": { "0": "Isolate orientation", "1": "Remove orientation" } },
      { "type": "choice", "name": "Output", "default": "1", "pos": "9", "choices": { "0": "Isolated/Removed only", "1": "Isolated/Removed & Residual", "2": "Residual only" } }
      ]
    },
    {
      "name": "Star Tone", "lang": "en", "command": "star_tone", "command_preview": "star_tone", "parameters": [
      { "type": "float", "name": "Scale", "default": "100", "min": "10", "max": "200", "pos": "1" }
      ]
    },
    {
      "name": "Subtract Cast", "lang": "en", "command": "iain_sub_cast", "command_preview": "iain_sub_cast", "parameters": [
      { "type": "float", "name": "noise reduction", "default": "5", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "black level", "default": "20", "min": "0", "max": "128", "pos": "2" },
      { "type": "float", "name": "white level", "default": "250", "min": "128", "max": "255", "pos": "3" }
      ]
    },
    {
      "name": "Turbulent Halftone", "lang": "en", "command": "iain_turbulent_halftone", "command_preview": "iain_turbulent_halftone_preview", "parameters": [
      { "type": "float", "name": "Amplitude", "default": "15", "min": "0", "max": "30", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "20", "min": "0", "max": "40", "pos": "2" },
      { "type": "float", "name": "Orientation", "default": "0", "min": "0", "max": "180", "pos": "3" },
      { "type": "float", "name": "Deviation", "default": "1", "min": "0", "max": "1", "pos": "4" },
      { "type": "int", "name": "Tile Size", "default": "512", "min": "128", "max": "2048", "pos": "5" },
      { "type": "float", "name": "Blob Size", "default": "0.75", "min": "0", "max": "4", "pos": "6" },
      { "type": "choice", "name": "Colour Model", "default": "0", "pos": "7", "choices": { "0": "RGB", "1": "CMYK", "2": "Luminance" } },
      { "type": "float", "name": "Enhance Detail", "default": "0", "min": "0", "max": "10", "pos": "8" },
      { "type": "bool", "name": "Oversample", "default": "0", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Iain Fergusson.      Latest update: 2019/09/20 - Improved quality and added oversample." },
      { "type": "note", "text": "Older updates: 2018/08/24." }
      ]
    }
    ]
  },
  {
    "name": "Icons", "filters": [
    {
      "name": "Flip", "lang": "en", "command": "mc_flip", "command_preview": "mc_flip_preview", "parameters": [
      { "type": "float", "name": "Size (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "2" },
      { "type": "color", "name": "Color", "default": "255,255,255,255", "pos": "3" },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Mathew Callaghan. Last update: 5th of September 2018." }
      ]
    },
    {
      "name": "Information", "lang": "en", "command": "mc_information", "command_preview": "mc_information_preview", "parameters": [
      { "type": "float", "name": "Size (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "2" },
      { "type": "color", "name": "Color", "default": "255,255,255,255", "pos": "3" },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Mathew Callaghan. Last update: 5th of September 2018." }
      ]
    },
    {
      "name": "Mail", "lang": "en", "command": "mc_mail", "command_preview": "mc_mail_preview", "parameters": [
      { "type": "float", "name": "Size (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "2" },
      { "type": "color", "name": "Color", "default": "255,255,255,255", "pos": "3" },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Mathew Callaghan. Last update: 5th of September 2018." }
      ]
    },
    {
      "name": "Phone", "lang": "en", "command": "mc_phone", "command_preview": "mc_phone_preview", "parameters": [
      { "type": "float", "name": "Size (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "2" },
      { "type": "color", "name": "Color", "default": "255,255,255,255", "pos": "3" },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Mathew Callaghan. Last update: 5th of September 2018." }
      ]
    },
    {
      "name": "Shopping Cart", "lang": "en", "command": "mc_shopping_cart", "command_preview": "mc_shopping_cart_preview", "parameters": [
      { "type": "float", "name": "Size (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "2" },
      { "type": "color", "name": "Color", "default": "255,255,255,255", "pos": "3" },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Mathew Callaghan. Last update: 5th of September 2018." }
      ]
    }
    ]
  },
  {
    "name": "JéJé", "filters": [
    {
      "name": "3D Rendering", "lang": "en", "command": "jeje_render3d", "command_preview": "jeje_render3d_preview", "parameters": [
      { "type": "file", "name": "Input Image", "default": "", "pos": "1" },
      { "type": "int", "name": "Size", "default": "8", "min": "4", "max": "16", "pos": "2" },
      { "type": "int", "name": "Quality", "default": "6", "min": "2", "max": "16", "pos": "3" },
      { "type": "float", "name": "Opacity", "default": "0.1", "min": "0", "max": "1", "pos": "4" },
      { "type": "float", "name": "Angle X", "default": "240", "min": "0", "max": "360", "pos": "5" },
      { "type": "float", "name": "Angle Y", "default": "0", "min": "0", "max": "360", "pos": "6" },
      { "type": "float", "name": "Angle Z", "default": "30", "min": "0", "max": "360", "pos": "7" },
      { "type": "float", "name": "Zoom", "default": "1", "min": "0", "max": "3", "pos": "8" },
      { "type": "color", "name": "Top Color", "default": "32,32,64,255", "pos": "9" },
      { "type": "color", "name": "Bottom Color", "default": "64,128,96,255", "pos": "13" },
      { "type": "bool", "name": "Render", "default": "0", "pos": "17" },
      { "type": "separator" },
      { "type": "note", "text": "Note:Adjust the 3D view first and then enable render to compute the volume rendering." },
      { "type": "separator" },
      { "type": "note", "text": "Author : Jérôme Boulanger. Latest update: 2013/05/29." }
      ]
    },
    {
      "name": "Deconvolve", "lang": "en", "command": "jeje_deconvolve", "command_preview": "jeje_deconvolve_preview", "parameters": [
      { "type": "int", "name": "Iterations", "default": "20", "min": "1", "max": "100", "pos": "1" },
      { "type": "choice", "name": "Algorithm", "default": "0", "pos": "2", "choices": { "0": "Richardson-Lucy", "1": "Gold-Meinel" } },
      { "type": "separator" },
      { "type": "note", "text": "Need two layers (top layer is the blur)<br>Author : Jérôme Boulanger. Latest update: 2016/22/02." }
      ]
    },
    {
      "name": "Zernike", "lang": "en", "command": "jeje_zernike_preview", "command_preview": "", "parameters": [
      { "type": "float", "name": "X", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Y", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "R", "default": "50", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Piston", "default": "0", "min": "-1", "max": "1", "pos": "4" },
      { "type": "float", "name": "Horizontal Tilt", "default": "0", "min": "-1", "max": "1", "pos": "5" },
      { "type": "float", "name": "Vertical Tilt", "default": "0", "min": "-1", "max": "1", "pos": "6" },
      { "type": "float", "name": "Oblique Astigmatism", "default": "0", "min": "-1", "max": "1", "pos": "7" },
      { "type": "float", "name": "Defocus", "default": "0", "min": "-1", "max": "1", "pos": "8" },
      { "type": "float", "name": "Vertical Astigmatism", "default": "0", "min": "-1", "max": "1", "pos": "9" },
      { "type": "float", "name": "Vertical Trefoil", "default": "0", "min": "-1", "max": "1", "pos": "10" },
      { "type": "float", "name": "Vertical Coma", "default": "0", "min": "-1", "max": "1", "pos": "11" },
      { "type": "float", "name": "Horizontal Coma", "default": "0", "min": "-1", "max": "1", "pos": "12" },
      { "type": "float", "name": "Oblique Trefoil", "default": "0", "min": "-1", "max": "1", "pos": "13" },
      { "type": "float", "name": "Oblique Quadrafoil", "default": "0", "min": "-1", "max": "1", "pos": "14" },
      { "type": "float", "name": "Oblique Secondary Astigmatism", "default": "0", "min": "-1", "max": "1", "pos": "15" },
      { "type": "float", "name": "Primary Spherical", "default": "0", "min": "-1", "max": "1", "pos": "16" },
      { "type": "float", "name": "Vertical Secondary Astigmatism", "default": "0", "min": "-1", "max": "1", "pos": "17" },
      { "type": "float", "name": "Vertical Quadrafoil", "default": "0", "min": "-1", "max": "1", "pos": "18" },
      { "type": "bool", "name": "Binarize", "default": "0", "pos": "19" },
      { "type": "float", "name": "Period", "default": "0", "min": "0", "max": "256", "pos": "20" },
      { "type": "float", "name": "Cycle Ratio", "default": "0", "min": "0", "max": "100", "pos": "21" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "22", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "https://en.wikipedia.org/wiki/Zernike_polynomials <br>Author : Jérôme Boulanger. Latest update: 2018/03/12." }
      ]
    }
    ]
  },
  {
    "name": "Jayprich", "filters": [
    {
      "name": "About", "lang": "en", "command": "_none_", "command_preview": "jpr_about", "parameters": [
      { "type": "note", "text": "@jayprich filters for G'MIC\nare proposed to you by James Prichard" },
      { "type": "note", "text": "source code http://www.h-ps.demon.co.uk/GMIC/jayprich.gmic" }
      ]
    },
    {
      "name": "Jpr Colour Illusion", "lang": "en", "command": "jpr_colourillusion", "command_preview": "jpr_colourillusion", "parameters": [
      { "type": "note", "text": "recreated from a Java example http://fiji.sc/wiki/ see Spirals Macro" },
      { "type": "int", "name": "Arms", "default": "2", "min": "2", "max": "10", "pos": "1" },
      { "type": "float", "name": "Scale", "default": "25", "min": "10", "max": "50", "pos": "2" },
      { "type": "note", "text": "update 2013-Feb-06 author @jayprich" }
      ]
    },
    {
      "name": "Jpr Coltexindex", "lang": "en", "command": "jpr_coltexindex", "command_preview": "jpr_coltexindex", "parameters": [
      { "type": "note", "text": "Index the image using its colour channels plus the local analysis of its luminance channel." },
      { "type": "note", "text": "Inspired by questions on masking for similar textures and how to make poster art from a photo." },
      { "type": "note", "text": "Watch out for JPEG block-artifacts in colour channels" },
      { "type": "int", "name": "Number of Types", "default": "5", "min": "3", "max": "20", "pos": "1" },
      { "type": "float", "name": "X1", "default": "55", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Y1", "default": "55", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "X2", "default": "45", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Y2", "default": "45", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "Factor (X1,Y1) Vs (X2,Y2)", "default": "1", "min": "0", "max": "5", "pos": "6" },
      { "type": "bool", "name": "Display (X,Y)", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Luminance Y" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "5", "pos": "8" },
      { "type": "float", "name": "Black", "default": "0.05", "min": "0", "max": "1", "pos": "9" },
      { "type": "float", "name": "Midtone", "default": "0.5", "min": "0", "max": "1", "pos": "10" },
      { "type": "float", "name": "Highlight", "default": "0.95", "min": "0", "max": "1", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Colour & Texture" },
      { "type": "float", "name": "Colour Smoothing", "default": "0.5", "min": "0", "max": "5", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "Locally Average Gradient Norm or Variance from Luminance" },
      { "type": "bool", "name": "Use Gradient Norm", "default": "1", "pos": "13" },
      { "type": "float", "name": "Local Size", "default": "2", "min": "1", "max": "9", "pos": "14" },
      { "type": "float", "name": "Weight", "default": "0.7", "min": "0.2", "max": "2", "pos": "15" },
      { "type": "note", "text": "update 2013-Mar-17 author @jayprich" }
      ]
    },
    {
      "name": "Jpr Decimate", "lang": "en", "command": "jpr_decimate", "command_preview": "jpr_decimate", "parameters": [
      { "type": "note", "text": "Rescale in linear RGB space by cropping the frequency domain weighted" },
      { "type": "note", "text": "to decrease high frequency akin to Lanczos window on Sinc lobes." },
      { "type": "note", "text": "This filter may corrupt the alpha channel" },
      { "type": "note", "text": "High sharpness just crops frequency and gives bad halo" },
      { "type": "float", "name": "Downsample Scale", "default": "0.375", "min": "0.1", "max": "1", "pos": "1" },
      { "type": "float", "name": "Sharpness Factor", "default": "2", "min": "1.5", "max": "4", "pos": "2" },
      { "type": "note", "text": "update 2013-Jun-24 author @jayprich" }
      ]
    },
    {
      "name": "Jpr Gradient Smooth", "lang": "en", "command": "jpr_gradient_smooth", "command_preview": "jpr_gradient_smooth", "parameters": [
      { "type": "note", "text": "image and its gradient in x y are treated as solid angles and smoothed on the topology of the surface of a sphere\nthis means a loop bright/dark/bright cannot contract through the centre of the sphere" },
      { "type": "float", "name": "Offset Brightness", "default": "0", "min": "-0.9", "max": "0.9", "pos": "1" },
      { "type": "float", "name": "Smoothing Amount", "default": "1.5", "min": "0.8", "max": "2.5", "pos": "2" },
      { "type": "note", "text": "update 2013-Feb-03 author @jayprich" }
      ]
    },
    {
      "name": "Jpr Line Edges", "lang": "en", "command": "jpr_line_edges", "command_preview": "jpr_line_edges", "parameters": [
      { "type": "note", "text": "combines the results in several orientations, each one blurs one way and looks for points of max gradient at 90 degrees to the blur" },
      { "type": "note", "text": "works best on photographs not line-art" },
      { "type": "int", "name": "Angles per Quadrant", "default": "2", "min": "1", "max": "9", "pos": "1" },
      { "type": "int", "name": "Blurring", "default": "2", "min": "2", "max": "24", "pos": "2" },
      { "type": "float", "name": "Gradient Threshold", "default": "4", "min": "0", "max": "30", "pos": "3" },
      { "type": "bool", "name": "Anti Alias", "default": "1", "pos": "4" },
      { "type": "note", "text": "update 2013-Jan-22 author @jayprich" }
      ]
    },
    {
      "name": "Jpr Orientedthinning", "lang": "en", "command": "jpr_orientedthinning", "command_preview": "jpr_orientedthinning", "parameters": [
      { "type": "note", "text": "Skeleton of a shape against a zero-value (pure-black) background using locally oriented local maxima to find only relevant ridges - not micro ridges from a noisy boundary" },
      { "type": "float", "name": "Pre Smooth Borders", "default": "5", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "Propagate Direction", "default": "15", "min": "3", "max": "50", "pos": "2" },
      { "type": "int", "name": "Threshold Width", "default": "1", "min": "1", "max": "10", "pos": "3" },
      { "type": "bool", "name": "Preview Orientation", "default": "0", "pos": "4" },
      { "type": "choice", "name": "Distance Metric", "default": "0", "pos": "5", "choices": { "0": "max |x| |y| chebyshev", "1": "|x|+|y| manhattan", "2": "|x y| euclidean" } },
      { "type": "note", "text": "update 2013-Apr-14 author @jayprich" }
      ]
    },
    {
      "name": "Jpr Phasecongruence", "lang": "en", "command": "jpr_phasecongruence", "command_preview": "jpr_phasecongruence", "parameters": [
      { "type": "note", "text": "Edge detect with directional Phase Congruence using proportionality to Local Energy." },
      { "type": "float", "name": "Start Angle", "default": "45", "min": "0", "max": "360", "pos": "1" },
      { "type": "int", "name": "Directions", "default": "1", "min": "1", "max": "20", "pos": "2" },
      { "type": "float", "name": "Energy Threshold", "default": "50", "min": "0", "max": "500", "pos": "3" },
      { "type": "bool", "name": "Local Maxima", "default": "1", "pos": "4" },
      { "type": "note", "text": "update 2013-Mar-31 author @jayprich" }
      ]
    },
    {
      "name": "Jpr Remove Blocks1", "lang": "en", "command": "jpr_remove_blocks1", "command_preview": "jpr_remove_blocks1", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "subtracts square edged blocks with limited-amplitude while masking less-smooth areas of an image\n\nthis can reduce low quality jpeg artifacts in very smooth parts of an image\n1. choose a block size in pixels to fit\n2. set smallest amplitude that catches block noise in smooth areas but masks real edges in the image\n3. fine tune the strength around 70, the amount of estimated block-noise to subtract" },
      { "type": "float", "name": "Spatial Block Size", "default": "4", "min": "2", "max": "25", "pos": "1" },
      { "type": "float", "name": "Amplitude", "default": "3", "min": "1", "max": "64", "pos": "2" },
      { "type": "float", "name": "Strength Fine-Tune", "default": "70", "min": "20", "max": "300", "pos": "3" },
      { "type": "note", "text": "update 2012-Nov-30 author @jayprich" }
      ]
    },
    {
      "name": "Jpr Shapes Gradient", "lang": "en", "command": "jpr_shapes_gradient", "command_preview": "jpr_shapes_gradient", "parameters": [
      { "type": "note", "text": "convert an image to local patches with some gradient patch shape is via watershed algorithm" },
      { "type": "float", "name": "Pre Blur", "default": "2", "min": "0", "max": "15", "pos": "1" },
      { "type": "float", "name": "Watershed Threshold", "default": "0.25", "min": "0.01", "max": "10", "pos": "2" },
      { "type": "float", "name": "Gradient Flatten", "default": "0.001", "min": "0.001", "max": "0.1", "pos": "3" },
      { "type": "float", "name": "Gradient Cap", "default": "100", "min": "5", "max": "200", "pos": "4" },
      { "type": "note", "text": "update 2017-Jun-10 author @jayprich" }
      ]
    },
    {
      "name": "Jpr Specularbumps", "lang": "en", "command": "jpr_specularbumps", "command_preview": "jpr_specularbumps", "parameters": [
      { "type": "note", "text": "Add highlights using brightness gradient." },
      { "type": "float", "name": "Gradient Illuminate Angle", "default": "270", "min": "0", "max": "360", "pos": "1" },
      { "type": "float", "name": "Pre Smooth", "default": "1", "min": "0", "max": "5", "pos": "2" },
      { "type": "float", "name": "Gradient Range", "default": "13", "min": "0", "max": "30", "pos": "3" },
      { "type": "float", "name": "Illumination Adjust", "default": "0", "min": "-45", "max": "45", "pos": "4" },
      { "type": "float", "name": "Illumination Offset", "default": "80", "min": "0", "max": "90", "pos": "5" },
      { "type": "float", "name": "Highlight Size", "default": "0.1", "min": "0", "max": "0.25", "pos": "6" },
      { "type": "float", "name": "Roughness", "default": "0.1", "min": "0.05", "max": "0.35", "pos": "7" },
      { "type": "choice", "name": "Output Type", "default": "0", "pos": "8", "choices": { "0": "black and white", "1": "white with alpha", "2": "compose to image" } },
      { "type": "note", "text": "update 2013-Mar-31 author @jayprich" }
      ]
    },
    {
      "name": "Jpr Warpfromthreshold", "lang": "en", "command": "jpr_warpfromthreshold", "command_preview": "jpr_warpfromthreshold", "parameters": [
      { "type": "note", "text": "a dummy 100x100 grid is warped using smoothed orientation as a map" },
      { "type": "float", "name": "Brightness Threshold", "default": "170", "min": "10", "max": "245", "pos": "1" },
      { "type": "float", "name": "Simplify Regions", "default": "2", "min": "0", "max": "6", "pos": "2" },
      { "type": "int", "name": "Blur & Renormalise Loop", "default": "10", "min": "3", "max": "50", "pos": "3" },
      { "type": "float", "name": "Blur Amount per Step", "default": "2", "min": "1", "max": "10", "pos": "4" },
      { "type": "note", "text": "update 2013-Feb-03 author @jayprich" }
      ]
    }
    ]
  },
  {
    "name": "Joan Rake", "filters": [
    {
      "name": "Mesh Blend", "lang": "en", "command": "fx_mesh_blend", "command_preview": "fx_mesh_blend_preview", "parameters": [
      { "type": "note", "text": "Universal blending algorithm. Resizes an RGB(A) image to a 256x256 image and uses it as an RGBA LUT 'transfer function mesh' to blend two other images together. Based on method shown <a href=\"https://discuss.pixls.us/t/im-generating-new-blending-modes-for-krita/8104/16\">on discuss.pixls.us</a>." },
      { "type": "separator" },
      { "type": "note", "text": "[0] is bottom layer, [1] is top layer, [2] is mesh. Mesh origin is at bottom-left. Plugin GUI preview does not accurately show mesh." },
      { "type": "choice", "name": "Process As", "default": "0", "pos": "1", "choices": { "0": "Three-by-three", "1": "Self-mesh and self-blend for each layer" } },
      { "type": "choice", "name": "Resize Interpolation", "default": "3", "pos": "2", "choices": { "0": "None", "1": "Nearest", "2": "Average", "3": "Bilinear", "4": "Grid", "5": "Bicubic" } },
      { "type": "bool", "name": "Reverse Blending Layers", "default": "0", "pos": "3" },
      { "type": "choice", "name": "Dimensions", "default": "0", "pos": "4", "choices": { "0": "Bottom layer", "1": "Top layer" } },
      { "type": "bool", "name": "Blend Alpha Channels", "default": "0", "pos": "5" },
      { "type": "bool", "name": "Keep Mesh", "default": "0", "pos": "6" }
      ]
    }
    ]
  },
  {
    "name": "KaRo's Tests", "filters": [
    {
      "name": "About", "lang": "en", "command": "_none_", "command_preview": "karos_about", "parameters": [
      { "type": "note", "text": "KaRo's test files for G'MIC\nwritten by" },
      { "type": "link", "name": "Karsten Rodenacker", "url": "http://K.Rodenacker.de", "align": "center" },
      { "type": "note", "text": "\n" },
      { "type": "note", "text": "The source code of this set of filters is located at :" },
      { "type": "link", "name": "https://github.com/GreycLab/gmic-community/blob/master/karsten_rodenacker.gmic", "url": "https://github.com/GreycLab/gmic-community/blob/master/karsten_rodenacker.gmic", "align": "center" },
      { "type": "note", "text": "Some help can be found under " },
      { "type": "link", "name": "http://karo03.bplaced.net/gmic/html/", "url": "http://karo03.bplaced.net/gmic/html/", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Several operations here rely on external executables existing in search PATH (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin unter Mac/Unix). This means that the executable is downloaded or built and properly located on the local machine. E. g. CImg examples from github have to be built and copied to a location in the search path, (under unix /usr/local/bin). Similar with PINK executables. For Mac they have to be built according the README with ./makelin and PATH as to be extended by ..pink location../linux/bin." },
      { "type": "separator" },
      { "type": "note", "text": "  CImg Skeleton: use_skeleton and \n  CImg nlmeans: use_nlmeans in search PATH, sources are under: " },
      { "type": "link", "name": "https://github.com/GreycLab/CImg/blob/master/examples/", "url": "https://github.com/GreycLab/CImg/blob/master/examples/", "align": "center" },
      { "type": "note", "text": "  mM Differences: \n  mathematical morphology operation differences\nmM operation size - mM operation size2" },
      { "type": "note", "text": "  oC Differences: \n  mathematical morphology open/close differences\nmM open size - mM close size" },
      { "type": "note", "text": "  Pink operations binary: Pink applications in search PATH" },
      { "type": "link", "name": "https://perso.esiee.fr/~coupriem/Pink/doc/html/index.html", "url": "https://perso.esiee.fr/~coupriem/Pink/doc/html/index.html", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "\nThe functions defined are quite experimental and subject to changes. Please do not rely on the fact that they will perform equally forever." }
      ]
    },
    {
      "name": "CImg NL-Means", "lang": "en", "command": "fx_karo_cimg_nlmeans", "command_preview": "fx_karo_cimg_nlmeans_preview", "parameters": [
      { "type": "float", "name": "Add Gauss Noise", "default": "0.0", "min": "0.0", "max": "30.0", "pos": "1" },
      { "type": "float", "name": "Add Uniform Noise", "default": "0.0", "min": "0.0", "max": "30.0", "pos": "2" },
      { "type": "float", "name": "Add Salt & Pepper Noise", "default": "0.0", "min": "0.0", "max": "30.0", "pos": "3" },
      { "type": "int", "name": "Half Size of Patch", "default": "1", "min": "1", "max": "15", "pos": "4" },
      { "type": "float", "name": "Band Width Lambda", "default": "-1", "min": "-1", "max": "25", "pos": "5" },
      { "type": "float", "name": "Noise SD Sigma", "default": "-1", "min": "-1", "max": "25", "pos": "6" },
      { "type": "int", "name": "Neighborhood Size Alpha", "default": "3", "min": "1", "max": "15", "pos": "7" },
      { "type": "int", "name": "Sampling Step Size", "default": "2", "min": "1", "max": "5", "pos": "8" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "9", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "10", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Smoothing using CImg example plugin use_nlmeans." },
      { "type": "note", "text": "CImg nlmeans: use_nlmeans in search PATH" },
      { "type": "separator" },
      { "type": "note", "text": "Author : KaRo. Latest update : 2019/09/03." }
      ]
    },
    {
      "name": "CImg Skeleton", "lang": "en", "command": "fx_karo_cimg_skel", "command_preview": "fx_karo_cimg_skel_preview", "parameters": [
      { "type": "bool", "name": "Auto-Threshold", "default": "1", "pos": "1" },
      { "type": "float", "name": "Threshold (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "int", "name": "Size Median", "default": "0", "min": "0", "max": "15", "pos": "3" },
      { "type": "bool", "name": "Invert", "default": "0", "pos": "4" },
      { "type": "float", "name": "Threshold on Flux", "default": "-0.3", "min": "-5", "max": "5", "pos": "5" },
      { "type": "bool", "name": "Medial Curve", "default": "0", "pos": "6" },
      { "type": "bool", "name": "Torsello Correction", "default": "0", "pos": "7" },
      { "type": "int", "name": "Discrete Step", "default": "1", "min": "1", "max": "15", "pos": "8" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "9", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "10", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Skeleton using CImg example plugin use_skeleton." },
      { "type": "note", "text": "CImg Skeleton: use_skeleton in search PATH" },
      { "type": "separator" },
      { "type": "note", "text": "Author : KaRo. Latest update : 2012/10/26." }
      ]
    },
    {
      "name": "mM Differences", "lang": "en", "command": "fx_karo_mm_diff", "command_preview": "fx_karo_mm_diff_preview", "parameters": [
      { "type": "int", "name": "Size", "default": "5", "min": "1", "max": "25", "pos": "1" },
      { "type": "int", "name": "Size2", "default": "7", "min": "1", "max": "25", "pos": "2" },
      { "type": "choice", "name": "Operation", "default": "2", "pos": "3", "choices": { "0": "Erosion", "1": "Dilation", "2": "Open", "3": "Close" } },
      { "type": "choice", "name": "Shape", "default": "1", "pos": "4", "choices": { "0": "Square", "1": "Octagon", "2": "Circle" } },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "5", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CYMK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "bool", "name": "Scale", "default": "1", "pos": "6" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "7", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "8", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Arithmetical difference of a morphological operation of size and size2." },
      { "type": "separator" },
      { "type": "note", "text": "Author : KaRo. Latest update : 2012/10/26." }
      ]
    },
    {
      "name": "OC Differences", "lang": "en", "command": "fx_karo_oc_diff", "command_preview": "fx_karo_oc_diff_preview", "parameters": [
      { "type": "int", "name": "Size", "default": "5", "min": "2", "max": "25", "pos": "1" },
      { "type": "choice", "name": "Shape", "default": "1", "pos": "2", "choices": { "0": "Square", "1": "Octagon", "2": "Circle" } },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "3", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CYMK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "bool", "name": "Scale", "default": "1", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "5", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "6", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Difference of mean of morphological opening and closing with original." },
      { "type": "separator" },
      { "type": "note", "text": "Author : KaRo.           Latest update : 2013/07/04." }
      ]
    },
    {
      "name": "Pink Operator", "lang": "en", "command": "fx_karo_pink", "command_preview": "fx_karo_pink_preview", "parameters": [
      { "type": "choice", "name": "Pink Operator", "default": "0", "pos": "1", "choices": { "0": "wshedtopo", "1": "wshedtopo inv", "2": "minima", "3": "maxima", "4": "heightminima", "5": "heightmaxima", "6": "grayskel", "7": "htkern", "8": "htkernu", "9": "lvkern", "10": "lvkernu", "11": "saliency", "12": "asf", "13": "asflin", "14": "asfr", "15": "asft", "16": "asftmed", "17": "asftndg", "18": "dilatballnum", "19": "erosballnum", "20": "lintophat" } },
      { "type": "choice", "name": "Connectivity / Dir", "default": "0", "pos": "2", "choices": { "0": "Four/x", "1": "Eight/y" } },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "5", "pos": "3" },
      { "type": "int", "name": "Height/Rep", "default": "5", "min": "0", "max": "25", "pos": "4" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "5", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CYMK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "6", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "7", "visibility": "0" },
      { "type": "link", "name": "https://perso.esiee.fr/~coupriem/Pink/doc/html/", "url": "https://perso.esiee.fr/~coupriem/Pink/doc/html/", "align": "center" }
      ]
    },
    {
      "name": "Pink Operator Binary", "lang": "en", "command": "fx_karo_pink_bin", "command_preview": "fx_karo_pink_bin_preview", "parameters": [
      { "type": "bool", "name": "Auto-Threshold", "default": "1", "pos": "1" },
      { "type": "int", "name": "Threshold (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "choice", "name": "Pink Operator", "default": "3", "pos": "3", "choices": { "0": "skelpar", "1": "skelend", "2": "skelcurv", "3": "skeleton", "4": "barycentre", "5": "border", "6": "closeball", "7": "openball", "8": "convexhull", "9": "dist", "10": "distc", "11": "label pla", "12": "Lantuejoul" } },
      { "type": "choice", "name": "Connectivity / Dir", "default": "0", "pos": "4", "choices": { "0": "Four/x", "1": "Eight/y" } },
      { "type": "int", "name": "Height/Rep", "default": "5", "min": "-1", "max": "25", "pos": "5" },
      { "type": "int", "name": "Algorithm", "default": "4", "min": "0", "max": "31", "pos": "6" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "7", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CYMK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "8", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "9", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Binary operations with Pink externals." },
      { "type": "note", "text": "Diverse Pink executables in search PATH" },
      { "type": "separator" },
      { "type": "note", "text": "Author : KaRo.           Latest update : 2014/02/05." },
      { "type": "link", "name": "https://perso.esiee.fr/~coupriem/Pink/doc/html/", "url": "https://perso.esiee.fr/~coupriem/Pink/doc/html/", "align": "center" }
      ]
    },
    {
      "name": "Pink Test Operator Bianca", "lang": "en", "command": "fx_karo_pink_bianca", "command_preview": "fx_karo_pink_bianca_preview", "parameters": [
      { "type": "int", "name": "ASF Smooth Size", "default": "5", "min": "1", "max": "10", "pos": "1" },
      { "type": "int", "name": "Threshold (%)", "default": "60", "min": "0", "max": "100", "pos": "2" },
      { "type": "int", "name": "Watershed Height Min", "default": "5", "min": "0", "max": "20", "pos": "3" },
      { "type": "int", "name": "Opening Radius", "default": "1", "min": "0", "max": "10", "pos": "4" },
      { "type": "bool", "name": "Invert", "default": "0", "pos": "5" },
      { "type": "bool", "name": "Use G Instead of B", "default": "0", "pos": "6" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "7", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "8", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Pink test operator Bianca for RGB image; only B used." },
      { "type": "note", "text": "Pink executables in search PATH or C:\\Pink\\bin for Windows" },
      { "type": "separator" },
      { "type": "note", "text": "Author : KaRo.           Latest update : 2012/10/26." },
      { "type": "link", "name": "https://perso.esiee.fr/~coupriem/Pink/doc/html/files.html", "url": "https://perso.esiee.fr/~coupriem/Pink/doc/html/files.html", "align": "center" }
      ]
    }
    ]
  },
  {
    "name": "Layers", "filters": [
    {
      "name": "Align Layers", "lang": "en", "command": "fx_align_layers", "command_preview": "fx_align_layers_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Automatically aligns (registers) multiple layers. " },
      { "type": "separator" },
      { "type": "choice", "name": "Alignment Type", "default": "0", "pos": "1", "choices": { "0": "Rigid", "1": "Non-Rigid" } },
      { "type": "float", "name": "Smoothness", "default": "0.7", "min": "0", "max": "1", "pos": "2" },
      { "type": "choice", "name": "Scales", "default": "0", "pos": "3", "choices": { "0": "Auto", "1": "1", "2": "2", "3": "3", "4": "4", "5": "5", "6": "6", "7": "7", "8": "8" } },
      { "type": "bool", "name": "Revert Layers", "default": "0", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2020/01/11." }
      ]
    },
    {
      "name": "Blend [Average All]", "lang": "en", "command": "fx_blend_average_all", "command_preview": "fx_blend_average_all", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Averages all visible layers. " },
      { "type": "separator" },
      { "type": "choice", "name": "Colorspace", "default": "0", "pos": "1", "choices": { "0": "sRGB", "1": "Linear RGB", "2": "Lab" } },
      { "type": "separator" },
      { "type": "note", "text": "Note: This filter takes multiple layers as input and average them. Set the Input layers option to handle multiple input layers. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/08/11." }
      ]
    },
    {
      "name": "Blend [Edges]", "lang": "en", "command": "fx_blend_edges", "command_preview": "fx_blend_edges", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Blends layers based on edge detection. " },
      { "type": "separator" },
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "0.8", "min": "0", "max": "5", "pos": "2" },
      { "type": "bool", "name": "Revert Layers", "default": "0", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Note: This filter needs two layers to work properly. Set the Input layers option to handle multiple input layers. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/01/21." }
      ]
    },
    {
      "name": "Blend [Fade]", "lang": "en", "command": "fx_blend_fade", "command_preview": "fx_blend_fade", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Spatially fades layers into one another. " },
      { "type": "separator" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "1", "choices": { "0": "Custom", "1": "Linear", "2": "Circular", "3": "Wave", "4": "Keftales" } },
      { "type": "float", "name": "Offset", "default": "0", "min": "-1", "max": "1", "pos": "2" },
      { "type": "float", "name": "Thinness", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "float", "name": "Sharpness", "default": "5", "min": "1", "max": "20", "pos": "4" },
      { "type": "bool", "name": "Sharpest", "default": "0", "pos": "5" },
      { "type": "bool", "name": "Revert Layers", "default": "0", "pos": "6" },
      { "type": "choice", "name": "Colorspace", "default": "0", "pos": "7", "choices": { "0": "sRGB", "1": "Linear RGB", "2": "Lab" } },
      { "type": "note", "text": "\n The parameters below are used in most presets. " },
      { "type": "float", "name": "1st Parameter", "default": "0", "min": "-1", "max": "1", "pos": "8" },
      { "type": "float", "name": "2nd Parameter", "default": "0", "min": "-1", "max": "1", "pos": "9" },
      { "type": "float", "name": "3rd Parameter", "default": "0", "min": "-1", "max": "1", "pos": "10" },
      { "type": "note", "text": "\n The formula below is used for the Custom preset. " },
      { "type": "text", "name": "Formula", "default": "cos(4*pi*x/w) * sin(4*pi*y/h)", "pos": "11" },
      { "type": "note", "text": "Note: This filter needs two layers to work properly. Set the Input layers option to handle multiple input layers. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/01/21." }
      ]
    },
    {
      "name": "Blend [Median]", "lang": "en", "command": "fx_blend_median", "command_preview": "fx_blend_median", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Computes the median pixel value across layers (removes ghosts). " },
      { "type": "separator" },
      { "type": "choice", "name": "Colorspace", "default": "0", "pos": "1", "choices": { "0": "sRGB", "1": "Linear RGB", "2": "Lab" } },
      { "type": "separator" },
      { "type": "note", "text": "Note: This filter needs at least two layers to work properly. Set the Input layers option to handle multiple input layers. " },
      { "type": "separator" },
      { "type": "note", "text": "Authors: David Tschumperlé and Iain Fergusson.       Latest Update: 2014/12/16." }
      ]
    },
    {
      "name": "Blend [Seamless]", "lang": "en", "command": "fx_blend_seamless", "command_preview": "fx_blend_seamless_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Blends a source into a target layer seamlessly (Poisson blending). " },
      { "type": "separator" },
      { "type": "bool", "name": "Mixed Mode", "default": "0", "pos": "1" },
      { "type": "float", "name": "Inner Fading", "default": "0", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Outer Fading", "default": "25", "min": "0", "max": "100", "pos": "3" },
      { "type": "choice", "name": "Colorspace", "default": "0", "pos": "4", "choices": { "0": "sRGB", "1": "Linear RGB", "2": "Lab" } },
      { "type": "separator" },
      { "type": "bool", "name": "Output as Separate Layers", "default": "0", "pos": "5" },
      { "type": "separator", "visibility": "0" },
      { "type": "note", "text": "Note: This filter needs at least two layers to work properly. Set the Input layers option to handle multiple input layers. " },
      { "type": "separator" },
      { "type": "link", "name": "Click here for a detailed description of this filter.", "url": "http://gimpchat.com/viewtopic.php?f=28&t=10204", "align": "center" },
      { "type": "link", "name": "+ Video tutorial 1", "url": "http://www.youtube.com/watch?v=Nu-S1HmOCgE", "align": "center" },
      { "type": "link", "name": "+ Video tutorial 2", "url": "http://www.youtube.com/watch?v=zsHgQY6025I", "align": "center" },
      { "type": "link", "name": "+ Video tutorial 3", "url": "http://www.youtube.com/watch?v=2e6FikWMkaQ", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2014/05/04." }
      ]
    },
    {
      "name": "Blend [Standard]", "lang": "en", "command": "fx_blend", "command_preview": "fx_blend_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Provides standard layer blending modes (Multiply, Overlay, etc.). " },
      { "type": "separator" },
      { "type": "choice", "name": "Mode", "default": "6", "pos": "1", "choices": { "0": "Add", "1": "Alpha", "2": "And", "3": "Average", "4": "Blue", "5": "Burn", "6": "Custom formula", "7": "Darken", "8": "Difference", "9": "Divide", "10": "Dodge", "11": "Edges", "12": "Exclusion", "13": "Freeze", "14": "Grain Extract", "15": "Grain Merge", "16": "Green", "17": "Hard Light", "18": "Hard Mix", "19": "Hue", "20": "Interpolation", "21": "Lighten", "22": "Lightness", "23": "Linear Burn", "24": "Linear Light", "25": "Luminance", "26": "Multiply", "27": "Negation", "28": "Or", "29": "Overlay", "30": "Pin Light", "31": "Red", "32": "Reflect", "33": "Saturation", "34": "Shape Area Max", "35": "Shape Area Max0", "36": "Shape Area Min", "37": "Shape Area Min0", "38": "Shape Average", "39": "Shape Average0", "40": "Shape Median", "41": "Shape Median0", "42": "Shape Min", "43": "Shape Min0", "44": "Shape Max", "45": "Shape Max0", "46": "Shape Prevalent", "47": "Soft Burn", "48": "Soft Dodge", "49": "Soft Light", "50": "Screen", "51": "Stamp", "52": "Subtract", "53": "Value", "54": "Vivid Light", "55": "Xor" } },
      { "type": "choice", "name": "Process As", "default": "0", "pos": "2", "choices": { "0": "Two-by-Two", "1": "Upper Layer is the Top Layer for All Blends", "2": "Lower Layer is the Bottom Layer for All Blends" } },
      { "type": "float", "name": "Opacity (%)", "default": "100", "min": "0", "max": "100", "pos": "3" },
      { "type": "bool", "name": "Preview All Outputs", "default": "1", "pos": "4" },
      { "type": "separator" },
      { "type": "text", "name": "Custom Formula", "default": "1/2 - 1/4*cos(pi*a) - 1/4*cos(pi*b)", "pos": "5" },
      { "type": "note", "text": "Note: In custom formulas, <samp>a</samp> and <samp>b</samp> respectively stand for the values of the base layer and the blend layer, and are defined in value range [0,1]." },
      { "type": "separator" },
      { "type": "note", "text": "Note: This filter needs at least two layers to work properly. Do not forget to set the Input layers option below to handle multiple input layers. " },
      { "type": "link", "name": "Reference page for G'MIC blending modes", "url": "https://github.com/GreycLab/gmic-community/wiki/Blending-modes", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2017/03/08." }
      ]
    },
    {
      "name": "Colors to Layers", "lang": "en", "command": "fx_split_colors", "command_preview": "fx_split_colors_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Splits distinct colors into separate layers. " },
      { "type": "separator" },
      { "type": "float", "name": "Color Tolerance", "default": "50", "min": "0", "max": "256", "pos": "1" },
      { "type": "int", "name": "Maximum Number of Output Layers", "default": "16", "min": "2", "max": "256", "pos": "2" },
      { "type": "float", "name": "Minimal Area (%)", "default": "1", "min": "0", "max": "100", "pos": "3" },
      { "type": "bool", "name": "Autocrop Output Layers", "default": "0", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Note: This filter decomposes an image into several layers each with a single color + a residual layer (if any). " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2015/03/11." }
      ]
    },
    {
      "name": "Fade Layers", "lang": "en", "command": "fx_fade_layers", "command_preview": "fx_fade_layers_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Creates a transition opacity across multiple layers. " },
      { "type": "separator" },
      { "type": "int", "name": "Inter-Frames", "default": "10", "min": "2", "max": "100", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Note: This filter needs at least two layers to work properly. Set the Input layers option to handle multiple input layers. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2012/08/04." }
      ]
    },
    {
      "name": "Layers to Tiles", "lang": "en", "command": "append_tiles", "command_preview": "fx_append_tiles_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Arranges all layers into a single tiled image. " },
      { "type": "separator" },
      { "type": "int", "name": "X-Tiles", "default": "0", "min": "0", "max": "256", "pos": "1" },
      { "type": "int", "name": "Y-Tiles", "default": "0", "min": "0", "max": "256", "pos": "2" },
      { "type": "note", "text": "For both parameters, 0 means automatic." },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Morph Layers", "lang": "en", "command": "fx_morph_layers", "command_preview": "gui_no_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Morphs (interpolates with motion) between layers. " },
      { "type": "separator" },
      { "type": "int", "name": "Inter-Frames", "default": "10", "min": "2", "max": "100", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "0.2", "min": "0", "max": "2", "pos": "2" },
      { "type": "float", "name": "Precision", "default": "0.1", "min": "0", "max": "2", "pos": "3" },
      { "type": "bool", "name": "Revert Layers", "default": "0", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Multiscale Operator", "lang": "en", "command": "fx_apply_multiscale", "command_preview": "fx_apply_multiscale_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Applies a filter at different scales of the image pyramid. " },
      { "type": "separator" },
      { "type": "int", "name": "Number of Scales", "default": "4", "min": "2", "max": "16", "pos": "1" },
      { "type": "separator" },
      { "type": "float", "name": "Starting Scale (%)", "default": "25", "min": "0", "max": "400", "pos": "2" },
      { "type": "float", "name": "Ending Scale (%)", "default": "100", "min": "0", "max": "400", "pos": "3" },
      { "type": "float", "name": "Non-Linearity", "default": "0", "min": "-1", "max": "1", "pos": "4" },
      { "type": "choice", "name": "Rescaling", "default": "3", "pos": "5", "choices": { "0": "Block", "1": "Linear", "2": "Cubic", "3": "Lanczsos" } },
      { "type": "separator" },
      { "type": "float", "name": "X-Centering", "default": "0.5", "min": "0", "max": "1", "pos": "6" },
      { "type": "float", "name": "Y-Centering", "default": "0.5", "min": "0", "max": "1", "pos": "7" },
      { "type": "float", "name": "Angle", "default": "0", "min": "-180", "max": "180", "pos": "8" },
      { "type": "separator" },
      { "type": "bool", "name": "Enable Interpolated Motion", "default": "0", "pos": "9" },
      { "type": "float", "name": "Ending X-Centering", "default": "0.5", "min": "0", "max": "1", "pos": "10" },
      { "type": "float", "name": "Ending Y-Centering", "default": "0.5", "min": "0", "max": "1", "pos": "11" },
      { "type": "float", "name": "Ending Angle", "default": "0", "min": "-180", "max": "180", "pos": "12" },
      { "type": "separator" },
      { "type": "text", "name": "G'MIC Operator", "default": "", "pos": "13" },
      { "type": "choice", "name": "Return Scaling", "default": "0", "pos": "14", "choices": { "0": "None", "1": "Block", "2": "Linear", "3": "Cubic", "4": "Lanczos" } },
      { "type": "bool", "name": "Lock Return Scaling to Source Layer", "default": "0", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/03/30." }
      ]
    },
    {
      "name": "Pack", "lang": "en", "command": "fx_pack", "command_preview": "fx_pack_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Packs multiple layers into a sprite sheet. " },
      { "type": "separator" },
      { "type": "choice", "name": "Order By", "default": "2", "pos": "1", "choices": { "0": "Width", "1": "Height", "2": "Maximum Dimension", "3": "Area", "4": "Name" } },
      { "type": "bool", "name": "Tends to Be Square", "default": "1", "pos": "2" },
      { "type": "bool", "name": "Force Transparency", "default": "1", "pos": "3" },
      { "type": "bool", "name": "Add Image Label", "default": "0", "pos": "4" },
      { "type": "float", "name": "Font Height (px)", "default": "16", "min": "0", "max": "64", "pos": "5", "visibility": "0" },
      { "type": "choice", "name": "Font Colors", "default": "1", "pos": "6", "choices": { "0": "White on black", "1": "Black on white" }, "visibility": "0" },
      { "type": "separator" },
      { "type": "bool", "name": "Output Coordinates File", "default": "0", "pos": "7" },
      { "type": "folder", "name": "Output Folder", "default": "", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "This filter tries to pack all input layers into a single image, while trying to minimize the empty areas. This problem being NP-hard, the algorithm finds (of course) a non-optimal, but often acceptable solution to this packing problem." },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2019/03/20." }
      ]
    },
    {
      "name": "Spatial Blend Multi-Layers", "lang": "en", "command": "fx_smbl", "command_preview": "fx_sbml_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Blends layers using a spatial linearly-varying mask. " },
      { "type": "separator" },
      { "type": "point", "name": "P0", "position": "0,50", "pos": "1", "visibility": "0" },
      { "type": "point", "name": "P1", "position": "25,50", "pos": "3", "visibility": "0" },
      { "type": "point", "name": "P2", "position": "50,50", "pos": "5", "visibility": "0" },
      { "type": "point", "name": "P3", "position": "75,50", "pos": "7", "visibility": "0" },
      { "type": "point", "name": "P4", "position": "100,50", "pos": "9", "visibility": "0" },
      { "type": "value", "value": "0,50", "pos": "11" },
      { "type": "value", "value": "100,50", "pos": "12" },
      { "type": "float", "name": "Sigma (%)", "default": "5", "min": "0", "max": "50", "pos": "13" },
      { "type": "bool", "name": "Reverser order", "default": "0", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "Note: This filter requires several input layers. It creates a spatial blending of all layers, oriented along the specified axis shown in the preview..\n\nFor N input frames, the colored dots corresponds respectively to frames #1 (Red), #N/4 (Dark Orange), #N/2 (Orange), 3*#N/4 (Yellow) and #N (White).\n\nMove the dots on the preview widget to modify the geometry of the spatial blending." },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2024/03/11." }
      ]
    },
    {
      "name": "Stroke", "lang": "en", "command": "fx_stroke", "command_preview": "fx_stroke_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds a stroke/outline to the layer content. " },
      { "type": "separator" },
      { "type": "int", "name": "Thickness (px)", "default": "3", "min": "1", "max": "256", "pos": "1" },
      { "type": "float", "name": "Threshold (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Smoothness (px)", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "choice", "name": "Shape", "default": "2", "pos": "4", "choices": { "0": "Square", "1": "Diamond", "2": "Round" } },
      { "type": "choice", "name": "Direction", "default": "1", "pos": "5", "choices": { "0": "Inward", "1": "Outward" } },
      { "type": "separator" },
      { "type": "float", "name": "Zoom (%)", "default": "100", "min": "1", "max": "300", "pos": "6" },
      { "type": "int", "name": "X-Shift (px)", "default": "0", "min": "-256", "max": "256", "pos": "7" },
      { "type": "int", "name": "Y-Shift (px)", "default": "0", "min": "-256", "max": "256", "pos": "8" },
      { "type": "separator" },
      { "type": "color", "name": "Starting Color", "default": "255,255,255,255", "pos": "9" },
      { "type": "color", "name": "Ending Color", "default": "255,255,255,255", "pos": "13" },
      { "type": "color", "name": "Inside Color", "default": "0,0,0,0", "pos": "17" },
      { "type": "color", "name": "Outside Color", "default": "0,0,0,0", "pos": "21" },
      { "type": "separator" },
      { "type": "choice", "name": "Output Stroke Layer On", "default": "1", "pos": "25", "choices": { "0": "Bottom", "1": "Top" } },
      { "type": "bool", "name": "Keep Original Image Size", "default": "0", "pos": "26" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2015/06/24." }
      ]
    },
    {
      "name": "Tiles to Layers", "lang": "en", "command": "fx_tiles2layers", "command_preview": "fx_tiles2layers_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Splits a tiled image into separate layers. " },
      { "type": "separator" },
      { "type": "int", "name": "X-Tiles", "default": "3", "min": "1", "max": "100", "pos": "1" },
      { "type": "int", "name": "Y-Tiles", "default": "3", "min": "1", "max": "100", "pos": "2" },
      { "type": "bool", "name": "Force Tiles to Have Same Size", "default": "0", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Tones to Layers", "lang": "en", "command": "fx_tones2layers", "command_preview": "fx_tones2layers_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Separates the image into Shadow, Midtone, and Highlight layers. " },
      { "type": "separator" },
      { "type": "int", "name": "Number of Tones", "default": "3", "min": "2", "max": "10", "pos": "1" },
      { "type": "int", "name": "Start of Mid-Tones", "default": "85", "min": "0", "max": "255", "pos": "2" },
      { "type": "int", "name": "End of Mid-Tones", "default": "170", "min": "0", "max": "255", "pos": "3" },
      { "type": "float", "name": "Smoothness", "default": "0.5", "min": "0", "max": "5", "pos": "4" },
      { "type": "choice", "name": "Alpha", "default": "0", "pos": "5", "choices": { "0": "Binary", "1": "Scalar" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2014/04/05." }
      ]
    }
    ]
  },
  {
    "name": "Lights & Shadows", "filters": [
    {
      "name": "Burn", "lang": "en", "command": "fx_burn", "command_preview": "fx_burn", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Darkens areas to simulate the \"burn\" darkroom technique. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "0.5", "min": "0", "max": "1", "pos": "1" },
      { "type": "float", "name": "Scale", "default": "30", "min": "1", "max": "100", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "1", "min": "0", "max": "4", "pos": "3" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "4", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "choice", "name": "Value Action", "default": "0", "pos": "5", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2012/11/24." }
      ]
    },
    {
      "name": "Dodge and Burn", "lang": "en", "command": "fx_dodgeburn", "command_preview": "fx_dodgeburn_preview", "parameters": [
      { "type": "note", "text": "automatic dodging and burning" },
      { "type": "separator" },
      { "type": "float", "name": "Highlights Selection", "default": "15", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Highlights Abstraction", "default": "1.5", "min": "0", "max": "10", "pos": "2" },
      { "type": "float", "name": "Dodge Strength", "default": "25", "min": "0", "max": "256", "pos": "3" },
      { "type": "float", "name": "Dodge Blur", "default": "10", "min": "0", "max": "20", "pos": "4" },
      { "type": "float", "name": "Shadows Selection", "default": "40", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "Shadows Abstraction", "default": "1.5", "min": "0", "max": "10", "pos": "6" },
      { "type": "float", "name": "Burn Strength", "default": "25", "min": "0", "max": "256", "pos": "7" },
      { "type": "float", "name": "Burn Blur", "default": "10", "min": "0", "max": "20", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Advanved: output dodge and burn layer separate" },
      { "type": "bool", "name": "Keep Layers Separate", "default": "0", "pos": "9" },
      { "type": "bool", "name": "Keep Original Layer", "default": "0", "pos": "10" },
      { "type": "float", "name": "Blur Dodge and Burn Layer", "default": "10", "min": "0", "max": "20", "pos": "11" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "12", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Tom Keil.      Latest update: 2011/15/02." }
      ]
    },
    {
      "name": "Drop Shadow", "lang": "en", "command": "fx_drop_shadow", "command_preview": "fx_drop_shadow_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds a standard drop shadow behind the opaque object. " },
      { "type": "separator" },
      { "type": "float", "name": "X-Offset", "default": "3", "min": "-20", "max": "20", "pos": "1" },
      { "type": "float", "name": "Y-Offset", "default": "3", "min": "-20", "max": "20", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "1.8", "min": "0", "max": "5", "pos": "3" },
      { "type": "float", "name": "X-Curvature", "default": "0", "min": "-2", "max": "2", "pos": "4" },
      { "type": "float", "name": "Y-curvature", "default": "0", "min": "-2", "max": "2", "pos": "5" },
      { "type": "color", "name": "Color", "default": "0,0,0", "pos": "6" },
      { "type": "bool", "name": "Expand size", "default": "1", "pos": "9" },
      { "type": "bool", "name": "Output as separate layers", "default": "1", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2023/09/02." }
      ]
    },
    {
      "name": "Drop Shadow 3D", "lang": "en", "command": "fx_drop_shadow3d", "command_preview": "fx_drop_shadow3d_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds a projected 3D shadow. " },
      { "type": "separator" },
      { "type": "float", "name": "X-Angle", "default": "0", "min": "-90", "max": "90", "pos": "1" },
      { "type": "float", "name": "Y-Angle", "default": "0", "min": "-90", "max": "90", "pos": "2" },
      { "type": "float", "name": "Z-Angle", "default": "0", "min": "-90", "max": "90", "pos": "3" },
      { "type": "float", "name": "Zoom", "default": "0", "min": "-100", "max": "100", "pos": "4" },
      { "type": "float", "name": "X-Offset", "default": "1", "min": "-50", "max": "50", "pos": "5" },
      { "type": "float", "name": "Y-Offset", "default": "1", "min": "-50", "max": "50", "pos": "6" },
      { "type": "float", "name": "Perspective", "default": "2", "min": "0", "max": "10", "pos": "7" },
      { "type": "float", "name": "Smoothness", "default": "0.5", "min": "0", "max": "5", "pos": "8" },
      { "type": "color", "name": "Color", "default": "0,0,0,200", "pos": "9" },
      { "type": "bool", "name": "Preview Only Shadow", "default": "0", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/07/02." }
      ]
    },
    {
      "name": "Equalize Light", "lang": "en", "command": "fx_equalize_light", "command_preview": "fx_equalize_light", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Balances uneven lighting across the image. " },
      { "type": "separator" },
      { "type": "float", "name": "Amount (%)", "default": "75", "min": "0", "max": "100", "pos": "1" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "2", "choices": { "0": "Preserve range", "1": "Preserve covariance" } },
      { "type": "choice", "name": "Channel(s)", "default": "12", "pos": "3", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2021/03/23." }
      ]
    },
    {
      "name": "Equalize Shadow", "lang": "en", "command": "fx_equalize_shadow", "command_preview": "fx_equalize_shadow", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Boosts brightness in shadow areas. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "1", "min": "0", "max": "1", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Authors: Francois Grassard and David Tschumperlé.       Latest Update: 2021/03/23." }
      ]
    },
    {
      "name": "Guided Light Rays", "lang": "en", "command": "fx_guided_lightrays", "command_preview": "fx_guided_lightrays_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates light rays emanating from a user-defined point. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude (%)", "default": "10", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Ray Length", "default": "2", "min": "0", "max": "2", "pos": "2" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "3", "choices": { "0": "Boundary", "1": "Dense" } },
      { "type": "float", "name": "Density (%)", "default": "80", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Smoothness (%)", "default": "0.1", "min": "0", "max": "5", "pos": "5" },
      { "type": "float", "name": "Threshold (%)", "default": "50", "min": "0", "max": "100", "pos": "6" },
      { "type": "point", "name": "Light Position", "position": "50,50", "pos": "7" },
      { "type": "color", "name": "Light Color", "default": "255,255,255", "pos": "9" },
      { "type": "choice", "name": "Blend Mode", "default": "7", "pos": "12", "choices": { "0": "Add", "1": "Alpha", "2": "Grain Merge", "3": "Hard Light", "4": "Lighten", "5": "Lightness", "6": "Luminance", "7": "Overlay", "8": "Soft Light", "9": "Value" } },
      { "type": "float", "name": "Opacity (%)", "default": "100", "min": "0", "max": "100", "pos": "13" },
      { "type": "separator" },
      { "type": "bool", "name": "Preview Light Shape", "default": "1", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2021/04/06." }
      ]
    },
    {
      "name": "Illuminate 2D Shape", "lang": "en", "command": "fx_illuminate_shape2d", "command_preview": "fx_illuminate_shape2d_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds 3D-like shading to 2D shapes (automatic bump mapping). " },
      { "type": "separator" },
      { "type": "note", "text": "Input / Output:" },
      { "type": "choice", "name": "Input Type", "default": "0", "pos": "1", "choices": { "0": "Single Opaque Shapes Over Transp. BG", "1": "Multiple Colored Shapes Over Transp. BG", "2": "Bump Map", "3": "Normal Map" } },
      { "type": "choice", "name": "Output Type", "default": "0", "pos": "2", "choices": { "0": "Illumination", "1": "Bump Map", "2": "Normal Map" } },
      { "type": "color", "name": "Input Guide Color", "default": "255,0,0,255", "pos": "3" },
      { "type": "bool", "name": "Keep Base Layer as Input Background", "default": "1", "pos": "7" },
      { "type": "bool", "name": "Keep Transparency in Output", "default": "1", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Shape:" },
      { "type": "int", "name": "Minimal Shape Area", "default": "4", "min": "1", "max": "100", "pos": "9" },
      { "type": "note", "text": "Parameter Minimal shape area is only active in Multiple colored shapes input mode." },
      { "type": "bool", "name": "Preview Detected Shapes", "default": "0", "pos": "10" },
      { "type": "float", "name": "Erosion / Dilation", "default": "0", "min": "-10", "max": "10", "pos": "11" },
      { "type": "float", "name": "Smoothness", "default": "3", "min": "0", "max": "6", "pos": "12" },
      { "type": "float", "name": "Bump Factor", "default": "1", "min": "-5", "max": "5", "pos": "13" },
      { "type": "float", "name": "Std / Max Weight", "default": "0.5", "min": "0", "max": "1", "pos": "14" },
      { "type": "choice", "name": "Resolution", "default": "4", "pos": "15", "choices": { "0": "Full (Slower)", "1": "2048", "2": "1024", "3": "512", "4": "256", "5": "128", "6": "64 (Faster)" } },
      { "type": "separator" },
      { "type": "note", "text": "Illumination:" },
      { "type": "choice", "name": "Blending Mode", "default": "10", "pos": "16", "choices": { "0": "Normal", "1": "Lighten", "2": "Screen", "3": "Dodge", "4": "Add", "5": "Darken", "6": "Multiply", "7": "Burn", "8": "Overlay", "9": "Soft Light", "10": "Hard Light", "11": "Grain Merge" } },
      { "type": "float", "name": "Opacity (%)", "default": "75", "min": "0", "max": "100", "pos": "17" },
      { "type": "float", "name": "Ambient (%)", "default": "30", "min": "-100", "max": "100", "pos": "18" },
      { "type": "float", "name": "Diffuse (%)", "default": "40", "min": "0", "max": "200", "pos": "19" },
      { "type": "float", "name": "Specular (%)", "default": "40", "min": "0", "max": "300", "pos": "20" },
      { "type": "float", "name": "Shininess", "default": "80", "min": "0", "max": "100", "pos": "21" },
      { "type": "float", "name": "Smoothness", "default": "0.2", "min": "0", "max": "5", "pos": "22" },
      { "type": "float", "name": "Flatness", "default": "1", "min": "0", "max": "3", "pos": "23" },
      { "type": "float", "name": "Linearity", "default": "0", "min": "-100", "max": "100", "pos": "24" },
      { "type": "int", "name": "Levels", "default": "0", "min": "0", "max": "16", "pos": "25" },
      { "type": "float", "name": "Light-X", "default": "2", "min": "-20", "max": "20", "pos": "26" },
      { "type": "float", "name": "Light-Y", "default": "-2", "min": "-20", "max": "20", "pos": "27" },
      { "type": "float", "name": "Light-Z", "default": "2", "min": "0", "max": "20", "pos": "28" },
      { "type": "bool", "name": "Normalize Illumination", "default": "0", "pos": "29" },
      { "type": "separator" },
      { "type": "button", "name": "Open Interactive Preview", "pos": "30" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "31", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Note: This filter automatically adds illumination to an opaque shape defined over a transparent background." },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2018/05/18." }
      ]
    },
    {
      "name": "Light Glow", "lang": "en", "command": "fx_lightglow", "command_preview": "fx_lightglow", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds a soft glowing light effect. " },
      { "type": "separator" },
      { "type": "float", "name": "Density", "default": "30", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Amplitude", "default": "0.5", "min": "0", "max": "2", "pos": "2" },
      { "type": "choice", "name": "Mode", "default": "8", "pos": "3", "choices": { "0": "Burn", "1": "Dodge", "2": "Freeze", "3": "Grain Merge", "4": "Hard Light", "5": "Interpolation", "6": "Lighten", "7": "Multiply", "8": "Overlay", "9": "Reflect", "10": "Soft Light", "11": "Stamp", "12": "Value" } },
      { "type": "float", "name": "Opacity", "default": "0.8", "min": "0", "max": "1", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "12", "pos": "5", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2011/02/21." }
      ]
    },
    {
      "name": "Light Leaks", "lang": "en", "command": "fx_light_leaks", "command_preview": "fx_light_leaks_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simulates light leaking into a camera body. " },
      { "type": "separator" },
      { "type": "int", "name": "Leak Type", "default": "0", "min": "0", "max": "70", "pos": "1" },
      { "type": "float", "name": "Angle", "default": "0", "min": "-180", "max": "180", "pos": "2" },
      { "type": "float", "name": "X-Scale", "default": "1", "min": "1", "max": "10", "pos": "3" },
      { "type": "float", "name": "Y-Scale", "default": "1", "min": "1", "max": "10", "pos": "4" },
      { "type": "float", "name": "Hue", "default": "0", "min": "-180", "max": "180", "pos": "5" },
      { "type": "float", "name": "Opacity (%)", "default": "85", "min": "0", "max": "100", "pos": "6" },
      { "type": "choice", "name": "Blend Mode", "default": "2", "pos": "7", "choices": { "0": "Normal", "1": "Lighten", "2": "Screen", "3": "Dodge", "4": "Add", "5": "Darken", "6": "Multiply", "7": "Burn", "8": "Overlay", "9": "Soft Light", "10": "Hard Light", "11": "Difference", "12": "Subtract", "13": "Grain Extract", "14": "Grain Merge", "15": "Divide", "16": "Hue", "17": "Saturation", "18": "Value" } },
      { "type": "bool", "name": "Output as Separate Layers", "default": "1", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "This filter uses the free light leaks dataset available at :" },
      { "type": "link", "name": "Lomo Light Leaks", "url": "http://www.photoshoptutorials.ws/downloads/mockups-graphics/lomo-light-leaks/", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2024/02/27." }
      ]
    },
    {
      "name": "Light Patch", "lang": "en", "command": "fx_light_patch", "command_preview": "fx_light_patch", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds localized patches of light. " },
      { "type": "separator" },
      { "type": "int", "name": "Density", "default": "5", "min": "2", "max": "30", "pos": "1" },
      { "type": "float", "name": "Darkness", "default": "0.7", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "Lightness", "default": "2.5", "min": "1", "max": "4", "pos": "3" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "12", "pos": "4", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Light Rays", "lang": "en", "command": "fx_lightrays", "command_preview": "fx_lightrays", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates volumetric light rays (crepuscular rays). " },
      { "type": "separator" },
      { "type": "float", "name": "Density", "default": "30", "min": "0", "max": "100", "pos": "1" },
      { "type": "point", "name": "Center (%)", "position": "50,50", "pos": "2" },
      { "type": "float", "name": "Length", "default": "1", "min": "0", "max": "1", "pos": "4" },
      { "type": "float", "name": "Attenuation", "default": "0.5", "min": "0", "max": "1", "pos": "5" },
      { "type": "bool", "name": "Transparency", "default": "0", "pos": "6" },
      { "type": "color", "name": "Color", "default": "255,255,255", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2023/09/01." }
      ]
    },
    {
      "name": "Ombre Portee", "lang": "en", "command": "samj_Ombre_Portee", "command_preview": "samj_Ombre_Portee ", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Avant plan</span>" },
      { "type": "int", "name": "QuA", "default": "0", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "FlA", "default": "0", "min": "0", "max": "10", "pos": "2" },
      { "type": "bool", "name": "InvC", "default": "0", "pos": "3" },
      { "type": "int", "name": "Limite détails", "default": "128", "min": "1", "max": "255", "pos": "4" },
      { "type": "int", "name": "Dilate", "default": "0", "min": "0", "max": "8", "pos": "5" },
      { "type": "color", "name": "Couleur Avant", "default": "0,0,0,255", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Ombre</span>" },
      { "type": "color", "name": "Couleur Ombre", "default": "127,127,127,255", "pos": "10" },
      { "type": "int", "name": "Décalage Ombre", "default": "2", "min": "0", "max": "7", "pos": "14" },
      { "type": "int", "name": "Rendu", "default": "2", "min": "1", "max": "7", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Fond</span>" },
      { "type": "color", "name": "Couleur Fond", "default": "255,255,255,255", "pos": "16" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Flou</span>" },
      { "type": "float", "name": "Flou/Blur", "default": "0.1", "min": "0", "max": "2", "pos": "20" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2019/12/14." }
      ]
    },
    {
      "name": "Ombre Portee B", "lang": "en", "command": "samj_Ombre_Portee_B", "command_preview": "samj_Ombre_Portee_B ", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Avant plan</span>" },
      { "type": "int", "name": "Résolution", "default": "16", "min": "4", "max": "64", "pos": "1" },
      { "type": "int", "name": "Limite détails", "default": "128", "min": "1", "max": "255", "pos": "2" },
      { "type": "bool", "name": "Supprimer Noir", "default": "0", "pos": "3" },
      { "type": "bool", "name": "Contour", "default": "1", "pos": "4" },
      { "type": "int", "name": "Variation Contour", "default": "16", "min": "-127", "max": "127", "pos": "5" },
      { "type": "float", "name": "Clair Foncé", "default": "1", "min": "0", "max": "2", "pos": "6" },
      { "type": "float", "name": "Précision Blanc", "default": "0", "min": "0", "max": "1", "pos": "7" },
      { "type": "float", "name": "Précision Noir", "default": "0", "min": "0", "max": "1", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Ombre</span>" },
      { "type": "color", "name": "Couleur Ombre", "default": "127,127,127,255", "pos": "9" },
      { "type": "int", "name": "Dilate", "default": "2", "min": "0", "max": "16", "pos": "13" },
      { "type": "float", "name": "Flou/Blur", "default": "2", "min": "0", "max": "10", "pos": "14" },
      { "type": "int", "name": "Décalage Ombre", "default": "2", "min": "0", "max": "7", "pos": "15" },
      { "type": "int", "name": "Rendu", "default": "2", "min": "1", "max": "7", "pos": "16" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Fond</span>" },
      { "type": "color", "name": "Couleur Fond", "default": "255,255,255,255", "pos": "17" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/12/01." }
      ]
    },
    {
      "name": "Ombre Portee C", "lang": "en", "command": "samj_Ombre_Portee_C", "command_preview": "samj_Ombre_Portee_C ", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Avant plan</span>" },
      { "type": "int", "name": "Isophotes", "default": "32", "min": "4", "max": "64", "pos": "1" },
      { "type": "int", "name": "Dilatation", "default": "8", "min": "1", "max": "64", "pos": "2" },
      { "type": "note", "text": "<span foreground=\"blue\">samj_Ombre_Portee_B</span>" },
      { "type": "int", "name": "Résolution", "default": "16", "min": "4", "max": "64", "pos": "3" },
      { "type": "int", "name": "Limite détails", "default": "192", "min": "1", "max": "255", "pos": "4" },
      { "type": "bool", "name": "Supprimer Noir", "default": "0", "pos": "5" },
      { "type": "bool", "name": "Contour", "default": "1", "pos": "6" },
      { "type": "int", "name": "Variation Contour", "default": "16", "min": "-127", "max": "127", "pos": "7" },
      { "type": "float", "name": "Clair Foncé", "default": "1", "min": "0", "max": "2", "pos": "8" },
      { "type": "float", "name": "Précision Blanc", "default": "0", "min": "0", "max": "1", "pos": "9" },
      { "type": "float", "name": "Précision Noir", "default": "0", "min": "0", "max": "1", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Ombre</span>" },
      { "type": "color", "name": "Couleur Ombre", "default": "96,96,96,255", "pos": "11" },
      { "type": "int", "name": "Dilate", "default": "2", "min": "0", "max": "16", "pos": "15" },
      { "type": "float", "name": "Flou/Blur", "default": "2", "min": "0", "max": "10", "pos": "16" },
      { "type": "int", "name": "Décalage Ombre", "default": "2", "min": "0", "max": "7", "pos": "17" },
      { "type": "int", "name": "Rendu", "default": "2", "min": "1", "max": "7", "pos": "18" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Fond</span>" },
      { "type": "color", "name": "Couleur Fond", "default": "255,255,255,255", "pos": "19" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/12/01." }
      ]
    },
    {
      "name": "Ombre Portee D", "lang": "en", "command": "samj_Ombre_Portee_D", "command_preview": "samj_Ombre_Portee_D ", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Avant Plan</span>" },
      { "type": "int", "name": "Résolution", "default": "16", "min": "4", "max": "64", "pos": "1" },
      { "type": "int", "name": "Détection A", "default": "64", "min": "0", "max": "255", "pos": "2" },
      { "type": "int", "name": "Détection B", "default": "64", "min": "0", "max": "255", "pos": "3" },
      { "type": "float", "name": "Flou Lissage", "default": "2", "min": "0", "max": "10", "pos": "4" },
      { "type": "float", "name": "Couleur", "default": "1", "min": "0", "max": "4", "pos": "5" },
      { "type": "int", "name": "Isophotes AP", "default": "16", "min": "4", "max": "64", "pos": "6" },
      { "type": "int", "name": "Dilate AP", "default": "5", "min": "0", "max": "16", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Contours Avant Plan</span>" },
      { "type": "bool", "name": "Contour", "default": "1", "pos": "8" },
      { "type": "int", "name": "Variation Contour", "default": "-32", "min": "-127", "max": "127", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Ombre</span>" },
      { "type": "int", "name": "Dilate", "default": "4", "min": "0", "max": "16", "pos": "10" },
      { "type": "float", "name": "Couleur Ombre", "default": "1", "min": "0", "max": "4", "pos": "11" },
      { "type": "float", "name": "Flou/Blur", "default": "2", "min": "0", "max": "10", "pos": "12" },
      { "type": "int", "name": "Décalage Ombre", "default": "2", "min": "0", "max": "7", "pos": "13" },
      { "type": "int", "name": "Rendu", "default": "2", "min": "1", "max": "7", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Fond</span>" },
      { "type": "color", "name": "Couleur Fond", "default": "255,255,255,255", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/12/03." }
      ]
    },
    {
      "name": "Pop Shadows", "lang": "en", "command": "fx_pop_shadows", "command_preview": "fx_pop_shadows", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Enhances the density and color of shadows. " },
      { "type": "separator" },
      { "type": "float", "name": "Strength", "default": "0.75", "min": "0", "max": "1", "pos": "1" },
      { "type": "float", "name": "Scale", "default": "5", "min": "0", "max": "20", "pos": "2" },
      { "type": "bool", "name": "Post-Normalize", "default": "1", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Authors: Morgan Hardwood and David Tschumperlé.       Latest Update: 2017/03/05." }
      ]
    },
    {
      "name": "Posterize Relief", "lang": "en", "command": "samj_Posterize_Relief", "command_preview": "samj_Posterize_Relief", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Posterize</span>" },
      { "type": "float", "name": "1 - Blur", "default": "1", "min": "0", "max": "5", "pos": "1" },
      { "type": "int", "name": "2 - Colors", "default": "12", "min": "2", "max": "32", "pos": "2" },
      { "type": "float", "name": "3 - Inpaint Holes", "default": "20", "min": "0.1", "max": "50", "pos": "3" },
      { "type": "int", "name": "4 - Smooth", "default": "0", "min": "0", "max": "8", "pos": "4" },
      { "type": "float", "name": "5 - Smooth - Smoothness", "default": "40", "min": "10", "max": "800", "pos": "5" },
      { "type": "float", "name": "6 - Smooth - Edges (%)", "default": "30", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "7 - Smooth - Paint", "default": "1", "min": "0", "max": "10", "pos": "7" },
      { "type": "int", "name": "8 - Sharpen", "default": "0", "min": "0", "max": "1000", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Light Relief</span>" },
      { "type": "float", "name": "9 - Ambient Lightness", "default": "0.4", "min": "0.2", "max": "0.7", "pos": "9" },
      { "type": "float", "name": "10 - Darkness", "default": "0", "min": "0", "max": "1", "pos": "10" },
      { "type": "float", "name": "11 - Light Smoothness", "default": "1", "min": "0", "max": "5", "pos": "11" },
      { "type": "point", "name": "12 - XY-Light", "position": "15,60", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2022/08/17." }
      ]
    },
    {
      "name": "Relief Light", "lang": "en", "command": "fx_light_relief", "command_preview": "fx_light_relief", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simulates light shining on a relief surface. " },
      { "type": "separator" },
      { "type": "float", "name": "Ambient Lightness", "default": "0.3", "min": "0", "max": "5", "pos": "1" },
      { "type": "float", "name": "Specular Lightness", "default": "0.2", "min": "0", "max": "2", "pos": "2" },
      { "type": "float", "name": "Specular Size", "default": "0.2", "min": "0", "max": "1", "pos": "3" },
      { "type": "float", "name": "Darkness", "default": "0", "min": "0", "max": "1", "pos": "4" },
      { "type": "float", "name": "Light Smoothness", "default": "1", "min": "0", "max": "5", "pos": "5" },
      { "type": "point", "name": "XY-Light", "position": "50,50", "pos": "6" },
      { "type": "float", "name": "Z-Light", "default": "5", "min": "0", "max": "20", "pos": "8" },
      { "type": "float", "name": "Z-Scale", "default": "0.5", "min": "0", "max": "3", "pos": "9" },
      { "type": "bool", "name": "Opacity as Heightmap", "default": "0", "pos": "10" },
      { "type": "float", "name": "Image Smoothness", "default": "0", "min": "0", "max": "10", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Shadow Patch", "lang": "en", "command": "fx_shadow_patch", "command_preview": "fx_shadow_patch", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds localized patches of shadow. " },
      { "type": "separator" },
      { "type": "float", "name": "Opacity", "default": "0.7", "min": "0", "max": "1", "pos": "1" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "2", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Slice Luminosity", "lang": "en", "command": "fx_slice_luminosity", "command_preview": "fx_slice_luminosity_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Visualizes luminosity levels as topographic slices. " },
      { "type": "separator" },
      { "type": "choice", "name": "Luminosity Type", "default": "1", "pos": "1", "choices": { "0": "Average RGB", "1": "Luminance", "2": "Lightness", "3": "Value" } },
      { "type": "choice", "name": "Output As", "default": "1", "pos": "2", "choices": { "0": "Mask", "1": "Masked Image" } },
      { "type": "choice", "name": "Preview Type", "default": "2", "pos": "3", "choices": { "0": "Mask", "1": "Mask + Background", "2": "Image", "3": "Image + Background" } },
      { "type": "separator" },
      { "type": "note", "text": "Slice 1 (shadows):" },
      { "type": "bool", "name": "Activate Slice 1", "default": "1", "pos": "4" },
      { "type": "int", "name": "Starting Value", "default": "0", "min": "0", "max": "255", "pos": "5" },
      { "type": "int", "name": "Ending Value", "default": "64", "min": "0", "max": "255", "pos": "6" },
      { "type": "int", "name": "Starting Feathering", "default": "0", "min": "0", "max": "255", "pos": "7" },
      { "type": "int", "name": "Ending Feathering", "default": "0", "min": "0", "max": "255", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Slice 2 (low midtones):" },
      { "type": "bool", "name": "Activate Slice 2", "default": "1", "pos": "9" },
      { "type": "int", "name": "Starting Value", "default": "64", "min": "0", "max": "255", "pos": "10" },
      { "type": "int", "name": "Ending Value", "default": "128", "min": "0", "max": "255", "pos": "11" },
      { "type": "int", "name": "Starting Feathering", "default": "0", "min": "0", "max": "255", "pos": "12" },
      { "type": "int", "name": "Ending Feathering", "default": "0", "min": "0", "max": "255", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "Slice 3 (high midtones):" },
      { "type": "bool", "name": "Activate Slice 3", "default": "0", "pos": "14" },
      { "type": "int", "name": "Starting Value", "default": "128", "min": "0", "max": "255", "pos": "15" },
      { "type": "int", "name": "Ending Value", "default": "192", "min": "0", "max": "255", "pos": "16" },
      { "type": "int", "name": "Starting Feathering", "default": "0", "min": "0", "max": "255", "pos": "17" },
      { "type": "int", "name": "Ending Feathering", "default": "0", "min": "0", "max": "255", "pos": "18" },
      { "type": "separator" },
      { "type": "note", "text": "Slice 4 (highlights):" },
      { "type": "bool", "name": "Activate Slice 4", "default": "0", "pos": "19" },
      { "type": "int", "name": "Starting Value", "default": "192", "min": "0", "max": "255", "pos": "20" },
      { "type": "int", "name": "Ending Value", "default": "255", "min": "0", "max": "255", "pos": "21" },
      { "type": "float", "name": "Starting Feathering", "default": "0", "min": "0", "max": "255", "pos": "22" },
      { "type": "float", "name": "Ending Feathering", "default": "0", "min": "0", "max": "255", "pos": "23" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2015/09/22." }
      ]
    }
    ]
  },
  {
    "name": "Lylejk", "filters": [
    {
      "name": "Blend [Shape Average]", "lang": "en", "command": "fx_blend_shapeaverage", "command_preview": "fx_blend_shapeaverage", "parameters": [
      { "type": "bool", "name": "Preserve Shading", "default": "1", "pos": "1" },
      { "type": "bool", "name": "Transparency", "default": "0", "pos": "2" },
      { "type": "bool", "name": "Revert Layers", "default": "0", "pos": "3" },
      { "type": "note", "text": "Note: This filter needs two layers to work properly. Set the Input layers option to handle multiple input layers. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé/i>.      Latest update: 2011/19/10." }
      ]
    },
    {
      "name": "Lylejk Luma Invert", "lang": "en", "command": "Lylejk_Luma_Invert", "command_preview": "Lylejk_Luma_Invert_preview", "parameters": [
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Pow</u></span>" },
      { "type": "float", "name": "Value", "default": "1", "min": "0.5", "max": "4", "pos": "1" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "2", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: samj.      Latest update: 2018/05/03." }
      ]
    },
    {
      "name": "Lylejk Quantize Wicker", "lang": "en", "command": "Lylejk_Quantize_Wicker", "command_preview": "Lylejk_Quantize_Wicker_preview", "parameters": [
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Quantize</u></span>" },
      { "type": "int", "name": "Levels", "default": "16", "min": "2", "max": "256", "pos": "1" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Offset</u></span>" },
      { "type": "float", "name": "X (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Y (%)", "default": "50", "min": "0", "max": "100", "pos": "3" },
      { "type": "choice", "name": "Offset", "default": "0", "pos": "4", "choices": { "0": "No", "1": "Yes" } },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Superpixels</u></span>" },
      { "type": "int", "name": "Size", "default": "16", "min": "4", "max": "64", "pos": "5" },
      { "type": "float", "name": "Regularity", "default": "10", "min": "0", "max": "128", "pos": "6" },
      { "type": "int", "name": "Iterations", "default": "5", "min": "1", "max": "16", "pos": "7" },
      { "type": "choice", "name": "Colors", "default": "1", "pos": "8", "choices": { "0": "Random", "1": "Average" } },
      { "type": "float", "name": "Border opacity", "default": "1", "min": "0", "max": "1", "pos": "9" },
      { "type": "color", "name": "Border color", "default": "0,0,0,255", "pos": "10" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Dilate</u></span>" },
      { "type": "int", "name": "Dilatation", "default": "1", "min": "1", "max": "16", "pos": "14" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Lylejk_Wicker Rodilius</u></span>" },
      { "type": "float", "name": "Amplitude", "default": "10", "min": "0", "max": "30", "pos": "15" },
      { "type": "float", "name": "Thickness", "default": "10", "min": "0", "max": "100", "pos": "16" },
      { "type": "float", "name": "Sharpness", "default": "153", "min": "0", "max": "1000", "pos": "17" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Sharpen Deblur</u></span>" },
      { "type": "bool", "name": "Sharpen Deblur", "default": "0", "pos": "18" },
      { "type": "float", "name": "Radius", "default": "2", "min": "0", "max": "20", "pos": "19" },
      { "type": "int", "name": "Iterations", "default": "10", "min": "0", "max": "100", "pos": "20" },
      { "type": "float", "name": "Time step", "default": "20", "min": "0", "max": "50", "pos": "21" },
      { "type": "float", "name": "Smoothness", "default": "0.1", "min": "0", "max": "10", "pos": "22" },
      { "type": "choice", "name": "Regularization", "default": "1", "pos": "23", "choices": { "0": "Tikhonov", "1": "Mean curvature", "2": "Total variation" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "24", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Authors:  Lylejk - samj.      Latest update: 2018/04/06." }
      ]
    },
    {
      "name": "Lylejk Ribbon", "lang": "en", "command": "Lylejk_Ribbon", "command_preview": "Lylejk_Ribbon_preview", "parameters": [
      { "type": "link", "name": "http://gimpchat.com/viewtopic.php?f=11&t=16390", "url": "http://gimpchat.com/viewtopic.php?f=11&t=16390", "align": "center" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Fake Smudge</u></span>" },
      { "type": "float", "name": "Amplitude", "default": "150", "min": "0", "max": "1000", "pos": "1" },
      { "type": "float", "name": "Sharpness", "default": "0.42", "min": "0", "max": "2", "pos": "2" },
      { "type": "float", "name": "Anisotropy", "default": "0.85", "min": "0", "max": "1", "pos": "3" },
      { "type": "float", "name": "Gradient smoothness", "default": "0.6", "min": "0", "max": "10", "pos": "4" },
      { "type": "float", "name": "Tensor smoothness", "default": "7.83", "min": "0", "max": "10", "pos": "5" },
      { "type": "float", "name": "Spatial precision", "default": "0.68", "min": "0.1", "max": "2", "pos": "6" },
      { "type": "float", "name": "Angular precision", "default": "19", "min": "1", "max": "180", "pos": "7" },
      { "type": "float", "name": "Value precision", "default": "2.64", "min": "0.1", "max": "5", "pos": "8" },
      { "type": "choice", "name": "Interpolation", "default": "0", "pos": "9", "choices": { "0": "Nearest neighbor", "1": "Linear", "2": "Runge-Kutta" } },
      { "type": "bool", "name": "Fast approximation", "default": "1", "pos": "10" },
      { "type": "int", "name": "Iterations", "default": "2", "min": "1", "max": "10", "pos": "11" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Diffusion tensors</u></span>" },
      { "type": "float", "name": "Resolution (%)", "default": "16", "min": "0", "max": "20", "pos": "12" },
      { "type": "float", "name": "Size", "default": "3.44", "min": "0", "max": "16", "pos": "13" },
      { "type": "choice", "name": "Color mode", "default": "0", "pos": "14", "choices": { "0": "Monochrome", "1": "Grayscale", "2": "Orientation", "3": "Color" } },
      { "type": "int", "name": "Outline", "default": "3", "min": "0", "max": "16", "pos": "15" },
      { "type": "float", "name": "Sharpness", "default": "0.79", "min": "0", "max": "1", "pos": "16" },
      { "type": "float", "name": "Anisotropy", "default": "0.72", "min": "0", "max": "1", "pos": "17" },
      { "type": "float", "name": "Gradient smoothness", "default": "4.97", "min": "0", "max": "10", "pos": "18" },
      { "type": "float", "name": "Tensor smoothness", "default": "1.70", "min": "0", "max": "10", "pos": "19" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Fake Smudge</u></span>" },
      { "type": "float", "name": "Amplitude", "default": "150", "min": "0", "max": "1000", "pos": "20" },
      { "type": "float", "name": "Sharpness", "default": "0.42", "min": "0", "max": "2", "pos": "21" },
      { "type": "float", "name": "Anisotropy", "default": "0.85", "min": "0", "max": "1", "pos": "22" },
      { "type": "float", "name": "Gradient smoothness", "default": "0.6", "min": "0", "max": "10", "pos": "23" },
      { "type": "float", "name": "Tensor smoothness", "default": "7.83", "min": "0", "max": "10", "pos": "24" },
      { "type": "float", "name": "Spatial precision", "default": "0.68", "min": "0.1", "max": "2", "pos": "25" },
      { "type": "float", "name": "Angular precision", "default": "19", "min": "1", "max": "180", "pos": "26" },
      { "type": "float", "name": "Value precision", "default": "2.64", "min": "0.1", "max": "5", "pos": "27" },
      { "type": "choice", "name": "Interpolation", "default": "0", "pos": "28", "choices": { "0": "Nearest neighbor", "1": "Linear", "2": "Runge-Kutta" } },
      { "type": "bool", "name": "Fast approximation", "default": "1", "pos": "29" },
      { "type": "int", "name": "Iterations", "default": "2", "min": "1", "max": "10", "pos": "30" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Gradient Norm 3</u></span>" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "31" },
      { "type": "float", "name": "Linearity", "default": "0.32", "min": "0", "max": "1.5", "pos": "32" },
      { "type": "float", "name": "Min threshold", "default": "43.1", "min": "0", "max": "100", "pos": "33" },
      { "type": "float", "name": "Max threshold", "default": "100", "min": "0", "max": "100", "pos": "34" },
      { "type": "bool", "name": "Negative colors", "default": "0", "pos": "35" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Upscale [dcci2x] by Garagecoder</u></span>" },
      { "type": "choice", "name": "Upscale", "default": "2", "pos": "36", "choices": { "0": "No", "1": "Yes", "2": "Yes and No" } },
      { "type": "float", "name": "Threshold", "default": "1.15", "min": "1", "max": "2", "pos": "37" },
      { "type": "int", "name": "Exponent", "default": "5", "min": "1", "max": "6", "pos": "38" },
      { "type": "bool", "name": "Extend 1px", "default": "1", "pos": "39" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "40", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Authors:  Lylejk - samj.      Latest update: 2020/10/24." }
      ]
    },
    {
      "name": "Lylejk Ripple", "lang": "en", "command": "ripple", "command_preview": "ripple", "parameters": [
      { "type": "float", "name": "Amplitude", "default": "10", "min": "-100", "max": "100", "pos": "1" },
      { "type": "float", "name": "Bandwidth", "default": "20", "min": "1", "max": "300", "pos": "2" },
      { "type": "choice", "name": "Shape", "default": "2", "pos": "3", "choices": { "0": "Bloc", "1": "Triangle", "2": "Sine", "3": "Sine+", "4": "Random" } },
      { "type": "float", "name": "Angle", "default": "0", "min": "-360", "max": "360", "pos": "4" },
      { "type": "float", "name": "Offset", "default": "0", "min": "-500", "max": "500", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author: <a href=\"https://goo.gl/Ryf7Cv\">David Tschumperlé</a>.      Latest update: 2011/23/08." }
      ]
    },
    {
      "name": "Lylejk Test TRW", "lang": "en", "command": "lylejk_test_TRW", "command_preview": "lylejk_test_TRW_preview", "parameters": [
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Offset</u></span>" },
      { "type": "float", "name": "X (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Y (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "choice", "name": "Offset", "default": "1", "pos": "3", "choices": { "0": "A", "1": "B" } },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Superpixels</u></span>" },
      { "type": "int", "name": "Size", "default": "16", "min": "4", "max": "64", "pos": "4" },
      { "type": "float", "name": "Regularity", "default": "10", "min": "0", "max": "128", "pos": "5" },
      { "type": "int", "name": "Iterations", "default": "5", "min": "1", "max": "16", "pos": "6" },
      { "type": "choice", "name": "Colors", "default": "1", "pos": "7", "choices": { "0": "Random", "1": "Average" } },
      { "type": "float", "name": "Border opacity", "default": "1", "min": "0", "max": "1", "pos": "8" },
      { "type": "color", "name": "Border color", "default": "0,0,0,255", "pos": "9" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Euclidean - Polar</u></span>" },
      { "type": "float", "name": "X-center (%)", "default": "50", "min": "0", "max": "100", "pos": "13" },
      { "type": "float", "name": "Y-center (%)", "default": "50", "min": "0", "max": "100", "pos": "14" },
      { "type": "float", "name": "Stretch factor", "default": "1", "min": "0.1", "max": "10", "pos": "15" },
      { "type": "choice", "name": "Boundary", "default": "1", "pos": "16", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "note", "text": "<span foreground=\"blue\"><u>Lylejk_Wicker</u></span>" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Rodilius</u></span>" },
      { "type": "float", "name": "Amplitude", "default": "1.8", "min": "0", "max": "30", "pos": "17" },
      { "type": "float", "name": "Thickness", "default": "10", "min": "0", "max": "100", "pos": "18" },
      { "type": "float", "name": "Sharpness", "default": "153", "min": "0", "max": "1000", "pos": "19" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Fake Smudge</u></span>" },
      { "type": "float", "name": "Amplitude", "default": "150", "min": "0", "max": "1000", "pos": "20" },
      { "type": "float", "name": "Sharpness", "default": "0.42", "min": "0", "max": "2", "pos": "21" },
      { "type": "float", "name": "Anisotropy", "default": "0.85", "min": "0", "max": "1", "pos": "22" },
      { "type": "float", "name": "Gradient smoothness", "default": "0.6", "min": "0", "max": "10", "pos": "23" },
      { "type": "float", "name": "Tensor smoothness", "default": "7.83", "min": "0", "max": "10", "pos": "24" },
      { "type": "float", "name": "Spatial precision", "default": "0.68", "min": "0.1", "max": "2", "pos": "25" },
      { "type": "float", "name": "Angular precision", "default": "19", "min": "1", "max": "180", "pos": "26" },
      { "type": "float", "name": "Value precision", "default": "2.64", "min": "0.1", "max": "5", "pos": "27" },
      { "type": "choice", "name": "Interpolation", "default": "0", "pos": "28", "choices": { "0": "Nearest neighbor", "1": "Linear", "2": "Runge-Kutta" } },
      { "type": "bool", "name": "Fast approximation", "default": "1", "pos": "29" },
      { "type": "int", "name": "Iterations", "default": "1", "min": "1", "max": "10", "pos": "30" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Gradient Norm 1</u></span>" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "31" },
      { "type": "float", "name": "Linearity", "default": "0.5", "min": "0", "max": "1.5", "pos": "32" },
      { "type": "float", "name": "Min threshold", "default": "10.5", "min": "0", "max": "100", "pos": "33" },
      { "type": "float", "name": "Max threshold", "default": "100", "min": "0", "max": "100", "pos": "34" },
      { "type": "bool", "name": "Negative colors", "default": "0", "pos": "35" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Gradient Norm 2</u></span>" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "36" },
      { "type": "float", "name": "Linearity", "default": "0.5", "min": "0", "max": "1.5", "pos": "37" },
      { "type": "float", "name": "Min threshold", "default": "10.5", "min": "0", "max": "100", "pos": "38" },
      { "type": "float", "name": "Max threshold", "default": "100", "min": "0", "max": "100", "pos": "39" },
      { "type": "bool", "name": "Negative colors", "default": "0", "pos": "40" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Upscale [dcci2x] by Garagecoder</u></span>" },
      { "type": "float", "name": "Threshold", "default": "1.15", "min": "1", "max": "2", "pos": "41" },
      { "type": "int", "name": "Exponent", "default": "5", "min": "1", "max": "6", "pos": "42" },
      { "type": "bool", "name": "Extend 1px", "default": "1", "pos": "43" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Gradient Norm 3</u></span>" },
      { "type": "float", "name": "Smoothness", "default": "0.68", "min": "0", "max": "10", "pos": "44" },
      { "type": "float", "name": "Linearity", "default": "0.5", "min": "0", "max": "1.5", "pos": "45" },
      { "type": "float", "name": "Min threshold", "default": "10.5", "min": "0", "max": "100", "pos": "46" },
      { "type": "float", "name": "Max threshold", "default": "100", "min": "0", "max": "100", "pos": "47" },
      { "type": "bool", "name": "Negative colors", "default": "0", "pos": "48" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Option Lylejk stencil</u></span>" },
      { "type": "bool", "name": "Apply lylejk stencil", "default": "0", "pos": "49" },
      { "type": "int", "name": "Amplitude", "default": "1", "min": "1", "max": "10", "pos": "50" },
      { "type": "float", "name": "Sharpness", "default": "10", "min": "0", "max": "100", "pos": "51" },
      { "type": "float", "name": "Radius", "default": "1", "min": "0", "max": "10", "pos": "52" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "53", "choices": { "0": "All", "1": "RGBA", "2": "RGB", "3": "Luminance", "4": "Blue/red chrominances", "5": "Blue chrominance", "6": "Red chrominance", "7": "Lightness", "8": "ab-components", "9": "a-component", "10": "b-component", "11": "Hue", "12": "Saturation", "13": "Value", "14": "Key", "15": "Alpha", "16": "ch-components", "17": "c-component", "18": "h-component", "19": "Red", "20": "Green", "21": "Blue", "22": "Alpha" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "54", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Authors: Lyle Kroll - samj.      Latest update: 2018/04/06." }
      ]
    },
    {
      "name": "Lylejk Wicker", "lang": "en", "command": "Lylejk_Wicker", "command_preview": "Lylejk_Wicker_preview", "parameters": [
      { "type": "link", "name": "https://github.com/GreycLab/gmic-community/blob/master/tutorial/WickerTute.pdf", "url": "https://github.com/GreycLab/gmic-community/blob/master/tutorial/WickerTute.pdf", "align": "center" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Rodilius</u></span>" },
      { "type": "float", "name": "Amplitude", "default": "10", "min": "0", "max": "30", "pos": "1" },
      { "type": "float", "name": "Thickness", "default": "10", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Sharpness", "default": "153", "min": "0", "max": "1000", "pos": "3" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Fake Smudge</u></span>" },
      { "type": "float", "name": "Amplitude", "default": "150", "min": "0", "max": "1000", "pos": "4" },
      { "type": "float", "name": "Sharpness", "default": "0.42", "min": "0", "max": "2", "pos": "5" },
      { "type": "float", "name": "Anisotropy", "default": "0.85", "min": "0", "max": "1", "pos": "6" },
      { "type": "float", "name": "Gradient smoothness", "default": "0.6", "min": "0", "max": "10", "pos": "7" },
      { "type": "float", "name": "Tensor smoothness", "default": "7.83", "min": "0", "max": "10", "pos": "8" },
      { "type": "float", "name": "Spatial precision", "default": "0.68", "min": "0.1", "max": "2", "pos": "9" },
      { "type": "float", "name": "Angular precision", "default": "19", "min": "1", "max": "180", "pos": "10" },
      { "type": "float", "name": "Value precision", "default": "2.64", "min": "0.1", "max": "5", "pos": "11" },
      { "type": "choice", "name": "Interpolation", "default": "0", "pos": "12", "choices": { "0": "Nearest neighbor", "1": "Linear", "2": "Runge-Kutta" } },
      { "type": "bool", "name": "Fast approximation", "default": "1", "pos": "13" },
      { "type": "int", "name": "Iterations", "default": "1", "min": "1", "max": "10", "pos": "14" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Gradient Norm 1</u></span>" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "15" },
      { "type": "float", "name": "Linearity", "default": "0.5", "min": "0", "max": "1.5", "pos": "16" },
      { "type": "float", "name": "Min threshold", "default": "10.5", "min": "0", "max": "100", "pos": "17" },
      { "type": "float", "name": "Max threshold", "default": "100", "min": "0", "max": "100", "pos": "18" },
      { "type": "bool", "name": "Negative colors", "default": "0", "pos": "19" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Gradient Norm 2</u></span>" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "20" },
      { "type": "float", "name": "Linearity", "default": "0.5", "min": "0", "max": "1.5", "pos": "21" },
      { "type": "float", "name": "Min threshold", "default": "10.5", "min": "0", "max": "100", "pos": "22" },
      { "type": "float", "name": "Max threshold", "default": "100", "min": "0", "max": "100", "pos": "23" },
      { "type": "bool", "name": "Negative colors", "default": "0", "pos": "24" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Upscale [dcci2x] by Garagecoder</u></span>" },
      { "type": "float", "name": "Threshold", "default": "1.15", "min": "1", "max": "2", "pos": "25" },
      { "type": "int", "name": "Exponent", "default": "5", "min": "1", "max": "6", "pos": "26" },
      { "type": "bool", "name": "Extend 1px", "default": "1", "pos": "27" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Gradient Norm 3</u></span>" },
      { "type": "float", "name": "Smoothness", "default": "0.68", "min": "0", "max": "10", "pos": "28" },
      { "type": "float", "name": "Linearity", "default": "0.5", "min": "0", "max": "1.5", "pos": "29" },
      { "type": "float", "name": "Min threshold", "default": "10.5", "min": "0", "max": "100", "pos": "30" },
      { "type": "float", "name": "Max threshold", "default": "100", "min": "0", "max": "100", "pos": "31" },
      { "type": "bool", "name": "Negative colors", "default": "0", "pos": "32" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Option Lylejk stencil</u></span>" },
      { "type": "bool", "name": "Apply Lylejk stencil", "default": "0", "pos": "33" },
      { "type": "int", "name": "Amplitude", "default": "1", "min": "1", "max": "10", "pos": "34" },
      { "type": "float", "name": "Sharpness", "default": "10", "min": "0", "max": "100", "pos": "35" },
      { "type": "float", "name": "Radius", "default": "1", "min": "0", "max": "10", "pos": "36" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "37", "choices": { "0": "All", "1": "RGBA", "2": "RGB", "3": "Luminance", "4": "Blue/red chrominances", "5": "Blue chrominance", "6": "Red chrominance", "7": "Lightness", "8": "ab-components", "9": "a-component", "10": "b-component", "11": "Hue", "12": "Saturation", "13": "Value", "14": "Key", "15": "Alpha", "16": "ch-components", "17": "c-component", "18": "h-component", "19": "Red", "20": "Green", "21": "Blue", "22": "Alpha" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "38", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Lyle Kroll.      Latest update: 2018/04/03." }
      ]
    },
    {
      "name": "Lylejk Woven", "lang": "en", "command": "Lylejk_Woven", "command_preview": "Lylejk_Woven_preview", "parameters": [
      { "type": "link", "name": "http://gimpchat.com/viewtopic.php?f=11&t=16384&start=10#p226895", "url": "http://gimpchat.com/viewtopic.php?f=11&t=16384&start=10#p226895", "align": "center" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Ripple 1</u></span>" },
      { "type": "float", "name": "Amplitude", "default": "19.6", "min": "-100", "max": "100", "pos": "1" },
      { "type": "float", "name": "Bandwidth", "default": "32.4", "min": "1", "max": "300", "pos": "2" },
      { "type": "choice", "name": "Shape", "default": "1", "pos": "3", "choices": { "0": "Bloc", "1": "Triangle", "2": "Sine", "3": "Sine+", "4": "Random" } },
      { "type": "float", "name": "Angle", "default": "0", "min": "-360", "max": "360", "pos": "4" },
      { "type": "float", "name": "Offset", "default": "0", "min": "-500", "max": "500", "pos": "5" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Ripple 2</u></span>" },
      { "type": "float", "name": "Amplitude", "default": "19.6", "min": "-100", "max": "100", "pos": "6" },
      { "type": "float", "name": "Bandwidth", "default": "32.4", "min": "1", "max": "300", "pos": "7" },
      { "type": "choice", "name": "Shape", "default": "1", "pos": "8", "choices": { "0": "Bloc", "1": "Triangle", "2": "Sine", "3": "Sine+", "4": "Random" } },
      { "type": "float", "name": "Angle", "default": "0", "min": "-360", "max": "360", "pos": "9" },
      { "type": "float", "name": "Offset", "default": "0", "min": "-500", "max": "500", "pos": "10" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Superpixels</u></span>" },
      { "type": "int", "name": "Size", "default": "12", "min": "4", "max": "64", "pos": "11" },
      { "type": "float", "name": "Regularity", "default": "10", "min": "0", "max": "128", "pos": "12" },
      { "type": "int", "name": "Iterations", "default": "5", "min": "1", "max": "16", "pos": "13" },
      { "type": "choice", "name": "Colors", "default": "1", "pos": "14", "choices": { "0": "Random", "1": "Average" } },
      { "type": "float", "name": "Border opacity", "default": "1", "min": "0", "max": "1", "pos": "15" },
      { "type": "color", "name": "Border color", "default": "0,0,0,255", "pos": "16" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Ripple 3</u></span>" },
      { "type": "float", "name": "Amplitude", "default": "19.6", "min": "-100", "max": "100", "pos": "20" },
      { "type": "float", "name": "Bandwidth", "default": "32.4", "min": "1", "max": "300", "pos": "21" },
      { "type": "choice", "name": "Shape", "default": "1", "pos": "22", "choices": { "0": "Bloc", "1": "Triangle", "2": "Sine", "3": "Sine+", "4": "Random" } },
      { "type": "float", "name": "Angle", "default": "0", "min": "-360", "max": "360", "pos": "23" },
      { "type": "float", "name": "Offset", "default": "0", "min": "-500", "max": "500", "pos": "24" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Ripple 4</u></span>" },
      { "type": "float", "name": "Amplitude", "default": "19.6", "min": "-100", "max": "100", "pos": "25" },
      { "type": "float", "name": "Bandwidth", "default": "32.4", "min": "1", "max": "300", "pos": "26" },
      { "type": "choice", "name": "Shape", "default": "1", "pos": "27", "choices": { "0": "Bloc", "1": "Triangle", "2": "Sine", "3": "Sine+", "4": "Random" } },
      { "type": "float", "name": "Angle", "default": "0", "min": "-360", "max": "360", "pos": "28" },
      { "type": "float", "name": "Offset", "default": "0", "min": "-500", "max": "500", "pos": "29" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Fake Smudge</u></span>" },
      { "type": "float", "name": "Amplitude", "default": "150", "min": "0", "max": "1000", "pos": "30" },
      { "type": "float", "name": "Sharpness", "default": "0.61", "min": "0", "max": "2", "pos": "31" },
      { "type": "float", "name": "Anisotropy", "default": "0.85", "min": "0", "max": "1", "pos": "32" },
      { "type": "float", "name": "Gradient smoothness", "default": "0.6", "min": "0", "max": "10", "pos": "33" },
      { "type": "float", "name": "Tensor smoothness", "default": "7.83", "min": "0", "max": "10", "pos": "34" },
      { "type": "float", "name": "Spatial precision", "default": "0.68", "min": "0.1", "max": "2", "pos": "35" },
      { "type": "float", "name": "Angular precision", "default": "19", "min": "1", "max": "180", "pos": "36" },
      { "type": "float", "name": "Value precision", "default": "2.64", "min": "0.1", "max": "5", "pos": "37" },
      { "type": "choice", "name": "Interpolation", "default": "0", "pos": "38", "choices": { "0": "Nearest neighbor", "1": "Linear", "2": "Runge-Kutta" } },
      { "type": "bool", "name": "Fast approximation", "default": "1", "pos": "39" },
      { "type": "int", "name": "Iterations", "default": "1", "min": "1", "max": "10", "pos": "40" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Gradient Norm</u></span>" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "41" },
      { "type": "float", "name": "Linearity", "default": "0.29", "min": "0", "max": "1.5", "pos": "42" },
      { "type": "float", "name": "Min threshold", "default": "37.2", "min": "0", "max": "100", "pos": "43" },
      { "type": "float", "name": "Max threshold", "default": "100", "min": "0", "max": "100", "pos": "44" },
      { "type": "bool", "name": "Negative colors", "default": "0", "pos": "45" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Options Start With ...</u></span>" },
      { "type": "bool", "name": "Start With Blur", "default": "0", "pos": "46" },
      { "type": "float", "name": "Blur", "default": "2", "min": "0", "max": "20", "pos": "47" },
      { "type": "bool", "name": "Start With Quantize", "default": "0", "pos": "48" },
      { "type": "int", "name": "Quantize Levels", "default": "16", "min": "2", "max": "256", "pos": "49" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "50", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Lyle Kroll.      Latest update: 2018/04/22." }
      ]
    },
    {
      "name": "Lylejk's Stencil", "lang": "en", "command": "fx_lylejk_stencil", "command_preview": "fx_lylejk_stencil", "parameters": [
      { "type": "int", "name": "Amplitude", "default": "5", "min": "1", "max": "10", "pos": "1" },
      { "type": "float", "name": "Sharpness", "default": "10", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Radius", "default": "3", "min": "0", "max": "10", "pos": "3" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "4", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CYMK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Authors: Lyle Kroll, David Tschumperlé.      Latest update: 2010/29/12." }
      ]
    },
    {
      "name": "Lylejk_Wicker_2", "lang": "en", "command": "Lylejk_Wicker_2", "command_preview": "Lylejk_Wicker_2_preview", "parameters": [
      { "type": "link", "name": "https://github.com/GreycLab/gmic-community/blob/master/tutorial/wicker_tut.pdf", "url": "https://github.com/GreycLab/gmic-community/blob/master/tutorial/wicker_tut.pdf", "align": "center" },
      { "type": "note", "text": "Applying the tutorial from page 1 to 8" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Offset</u></span>" },
      { "type": "float", "name": "X (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Y (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "choice", "name": "Offset", "default": "1", "pos": "3", "choices": { "0": "No", "1": "Yes" } },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Euclidean - Polar</u></span>" },
      { "type": "float", "name": "X-center (%)", "default": "50", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Y-center (%)", "default": "50", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "Stretch factor", "default": "1", "min": "0.1", "max": "10", "pos": "6" },
      { "type": "choice", "name": "Boundary", "default": "1", "pos": "7", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Superpixels</u></span>" },
      { "type": "int", "name": "Size", "default": "12", "min": "4", "max": "64", "pos": "8" },
      { "type": "float", "name": "Regularity", "default": "10", "min": "0", "max": "128", "pos": "9" },
      { "type": "int", "name": "Iterations", "default": "5", "min": "1", "max": "16", "pos": "10" },
      { "type": "choice", "name": "Colors", "default": "1", "pos": "11", "choices": { "0": "Random", "1": "Average" } },
      { "type": "float", "name": "Border opacity", "default": "1", "min": "0", "max": "1", "pos": "12" },
      { "type": "color", "name": "Border color", "default": "0,0,0,255", "pos": "13" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Fake Smudge</u></span>" },
      { "type": "float", "name": "Amplitude", "default": "150", "min": "0", "max": "1000", "pos": "17" },
      { "type": "float", "name": "Sharpness", "default": "0.54", "min": "0", "max": "2", "pos": "18" },
      { "type": "float", "name": "Anisotropy", "default": "0.85", "min": "0", "max": "1", "pos": "19" },
      { "type": "float", "name": "Gradient smoothness", "default": "0.6", "min": "0", "max": "10", "pos": "20" },
      { "type": "float", "name": "Tensor smoothness", "default": "7.83", "min": "0", "max": "10", "pos": "21" },
      { "type": "float", "name": "Spatial precision", "default": "0.68", "min": "0.1", "max": "2", "pos": "22" },
      { "type": "float", "name": "Angular precision", "default": "19", "min": "1", "max": "180", "pos": "23" },
      { "type": "float", "name": "Value precision", "default": "2.64", "min": "0.1", "max": "5", "pos": "24" },
      { "type": "choice", "name": "Interpolation", "default": "0", "pos": "25", "choices": { "0": "Nearest neighbor", "1": "Linear", "2": "Runge-Kutta" } },
      { "type": "bool", "name": "Fast approximation", "default": "1", "pos": "26" },
      { "type": "int", "name": "Iterations", "default": "3", "min": "1", "max": "10", "pos": "27" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Gradient Norm</u></span>" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "28" },
      { "type": "float", "name": "Linearity", "default": "0.29", "min": "0", "max": "1.5", "pos": "29" },
      { "type": "float", "name": "Min threshold", "default": "28.7", "min": "0", "max": "100", "pos": "30" },
      { "type": "float", "name": "Max threshold", "default": "100", "min": "0", "max": "100", "pos": "31" },
      { "type": "bool", "name": "Negative colors", "default": "0", "pos": "32" },
      { "type": "separator" },
      { "type": "separator" },
      { "type": "note", "text": "<u>Improve Contrast</u>" },
      { "type": "choice", "name": "Apply a contrast", "default": "0", "pos": "33", "choices": { "0": "No", "1": "Sharpen Deblur", "2": "Improve Contrast By Lyle Kroll" } },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"blue\"><u>Sharpen Deblur</u></span>" },
      { "type": "float", "name": "Radius", "default": "1", "min": "0", "max": "20", "pos": "34" },
      { "type": "int", "name": "Iterations", "default": "10", "min": "0", "max": "100", "pos": "35" },
      { "type": "float", "name": "Time step", "default": "20", "min": "0", "max": "50", "pos": "36" },
      { "type": "float", "name": "Smoothness", "default": "0.1", "min": "0", "max": "10", "pos": "37" },
      { "type": "choice", "name": "Regularization", "default": "1", "pos": "38", "choices": { "0": "Tikhonov", "1": "Mean curvature", "2": "Total variation" } },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"blue\">Improve Contrast By Lyle Kroll</u></span>" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Smooth Bilateral Contrast</u></span>" },
      { "type": "float", "name": "Spatial variance", "default": "10", "min": "0", "max": "100", "pos": "39" },
      { "type": "float", "name": "Value variance", "default": "12", "min": "0", "max": "100", "pos": "40" },
      { "type": "int", "name": "Iterations", "default": "2", "min": "1", "max": "10", "pos": "41" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Fake Smudge Contrast</u></span>" },
      { "type": "float", "name": "Amplitude", "default": "40", "min": "0", "max": "1000", "pos": "42" },
      { "type": "float", "name": "Sharpness", "default": "0.7", "min": "0", "max": "2", "pos": "43" },
      { "type": "float", "name": "Anisotropy", "default": "0.3", "min": "0", "max": "1", "pos": "44" },
      { "type": "float", "name": "Gradient smoothness", "default": "0.6", "min": "0", "max": "10", "pos": "45" },
      { "type": "float", "name": "Tensor smoothness", "default": "1.1", "min": "0", "max": "10", "pos": "46" },
      { "type": "float", "name": "Spatial precision", "default": "0.8", "min": "0.1", "max": "2", "pos": "47" },
      { "type": "float", "name": "Angular precision", "default": "30", "min": "1", "max": "180", "pos": "48" },
      { "type": "float", "name": "Value precision", "default": "2", "min": "0.1", "max": "5", "pos": "49" },
      { "type": "choice", "name": "Interpolation", "default": "0", "pos": "50", "choices": { "0": "Nearest neighbor", "1": "Linear", "2": "Runge-Kutta" } },
      { "type": "bool", "name": "Fast approximation", "default": "1", "pos": "51" },
      { "type": "int", "name": "Iterations", "default": "3", "min": "1", "max": "10", "pos": "52" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Grain Merge Contrast</u></span>" },
      { "type": "float", "name": "Amplitude", "default": "1", "min": "0", "max": "1", "pos": "53" },
      { "type": "separator" },
      { "type": "separator" },
      { "type": "note", "text": "<u>Option Start With Quantize</u>" },
      { "type": "choice", "name": "Quantize", "default": "0", "pos": "54", "choices": { "0": "No", "1": "Yes" } },
      { "type": "int", "name": "Levels", "default": "16", "min": "2", "max": "256", "pos": "55" },
      { "type": "note", "text": "<u>Option Euclidian To Polar</u>" },
      { "type": "choice", "name": "Euclidian To Polar", "default": "1", "pos": "56", "choices": { "0": "No", "1": "Yes" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "57", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Lyle Kroll.      Latest update: 2018/04/07." }
      ]
    },
    {
      "name": "Pen Drawing", "lang": "en", "command": "fx_pen_drawing", "command_preview": "fx_pen_drawing", "parameters": [
      { "type": "float", "name": "Amplitude", "default": "10", "min": "0", "max": "30", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/29/12." }
      ]
    },
    {
      "name": "Point Star Outline", "lang": "en", "command": "garagecoder_lylejk_samj_points_outlines", "command_preview": "garagecoder_lylejk_samj_points_outlines_preview", "parameters": [
      { "type": "link", "name": "https://discuss.pixls.us/t/place-some-points-on-outlines-with-gmic/7006/5", "url": "https://discuss.pixls.us/t/place-some-points-on-outlines-with-gmic/7006/5", "align": "center" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Choice Filter</u></span>" },
      { "type": "choice", "name": "Choice Filter", "default": "0", "pos": "1", "choices": { "0": "Garagecoder Staroutline", "1": "Garagecoder Pointoutline", "2": "samj" } },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Garagecoder Staroutline</u></span>" },
      { "type": "float", "name": "Less Than Staroutline", "default": "0.05", "min": "0", "max": "0.5", "pos": "2" },
      { "type": "int", "name": "Shapecloud", "default": "10", "min": "3", "max": "20", "pos": "3" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Garagecoder Pointoutline</u></span>" },
      { "type": "float", "name": "Less Than Pointoutline", "default": "0.12", "min": "0", "max": "0.5", "pos": "4" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>samj</u></span>" },
      { "type": "int", "name": "Determination_Contours", "default": "0", "min": "0", "max": "2", "pos": "5" },
      { "type": "int", "name": "Type_Rendu", "default": "0", "min": "0", "max": "2", "pos": "6" },
      { "type": "int", "name": "Dilatation", "default": "2", "min": "0", "max": "10", "pos": "7" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "8", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Authors: Garagecoder - Lyle Kroll - samj.      Latest update: 2018/04/04." }
      ]
    }
    ]
  },
  {
    "name": "Map Projection", "filters": [
    {
      "name": "Albers Equal Area Conic", "lang": "en", "command": "albers_projection", "command_preview": "", "parameters": [
      { "type": "note", "text": "Rotate an equirectangular map or panorama around three axises in order and output it as an Albers equal area conic projection." },
      { "type": "separator" },
      { "type": "float", "name": "Roll", "default": "0", "min": "-360", "max": "360", "pos": "1" },
      { "type": "float", "name": "Pitch", "default": "0", "min": "-360", "max": "360", "pos": "2" },
      { "type": "float", "name": "Yaw", "default": "0", "min": "-360", "max": "360", "pos": "3" },
      { "type": "float", "name": "Central longitude", "default": "0", "min": "-180", "max": "180", "pos": "4" },
      { "type": "float", "name": "Reference parallel", "default": "0", "min": "-90", "max": "90", "pos": "5" },
      { "type": "float", "name": "Standard parallel #1", "default": "20", "min": "-90", "max": "90", "pos": "6" },
      { "type": "float", "name": "Standard parallel #2", "default": "60", "min": "-90", "max": "90", "pos": "7" },
      { "type": "float", "name": "Crop latitude to", "default": "180", "min": "0", "max": "180", "pos": "8" },
      { "type": "float", "name": "Crop longitude to", "default": "360", "min": "0", "max": "360", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Author: <a href=\"https://www.cartographersguild.com/showthread.php?t=47591\">Kristian Järventaus</a>.      Latest Update: 2024/03/05." }
      ]
    },
    {
      "name": "Azimuthal Equidistant", "lang": "en", "command": "azimuthal_equidistant_projection", "command_preview": "", "parameters": [
      { "type": "note", "text": "Rotate an equirectangular map or panorama around three axises in order and output it as an azimuthal equidistant map. All points on the map are at proportionally correct distances from the center point, and that all points on the map are at the correct azimuth (direction" },
      { "type": "separator" },
      { "type": "float", "name": "Roll", "default": "0", "min": "-360", "max": "360", "pos": "1" },
      { "type": "float", "name": "Pitch", "default": "0", "min": "-360", "max": "360", "pos": "2" },
      { "type": "float", "name": "Yaw", "default": "0", "min": "-360", "max": "360", "pos": "3" },
      { "type": "float", "name": "Central longitude", "default": "0", "min": "-180", "max": "180", "pos": "4" },
      { "type": "float", "name": "Standard parallel", "default": "0", "min": "-90", "max": "90", "pos": "5" },
      { "type": "float", "name": "Cut-off at", "default": "180", "min": "0", "max": "180", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Author: <a href=\"https://www.cartographersguild.com/showthread.php?t=47591\">Kristian Järventaus</a>.      Latest Update: 2024/03/05." }
      ]
    },
    {
      "name": "Conic Equidistant", "lang": "en", "command": "conic_equidistant_projection", "command_preview": "", "parameters": [
      { "type": "note", "text": "Rotate an equirectangular map or panorama around three axises in order and output it as a conic equidistant map. Neither equal-area or conformal." },
      { "type": "separator" },
      { "type": "float", "name": "Roll", "default": "0", "min": "-360", "max": "360", "pos": "1" },
      { "type": "float", "name": "Pitch", "default": "0", "min": "-360", "max": "360", "pos": "2" },
      { "type": "float", "name": "Yaw", "default": "0", "min": "-360", "max": "360", "pos": "3" },
      { "type": "float", "name": "Central longitude", "default": "0", "min": "-180", "max": "180", "pos": "4" },
      { "type": "float", "name": "Reference parallel", "default": "0", "min": "-90", "max": "90", "pos": "5" },
      { "type": "float", "name": "Standard parallel #1", "default": "20", "min": "-90", "max": "90", "pos": "6" },
      { "type": "float", "name": "Standard parallel #2", "default": "60", "min": "-90", "max": "90", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: <a href=\"https://www.cartographersguild.com/showthread.php?t=47591\">Kristian Järventaus</a>.      Latest Update: 2024/03/05." }
      ]
    },
    {
      "name": "Cylindrical Equal-Area Projection", "lang": "en", "command": "cylindrical_equal_area", "command_preview": "", "parameters": [
      { "type": "note", "text": "Rotate an equirectangular map or panorama around three axises in order and output it as a cylindrical equal-area projection." },
      { "type": "separator" },
      { "type": "float", "name": "Roll", "default": "0", "min": "-360", "max": "360", "pos": "1" },
      { "type": "float", "name": "Pitch (\"north and south\")", "default": "0", "min": "-360", "max": "360", "pos": "2" },
      { "type": "float", "name": "Yaw (\"east and west\")", "default": "0", "min": "-360", "max": "360", "pos": "3" },
      { "type": "float", "name": "Standard parallels", "default": "45", "min": "0", "max": "80", "pos": "4" },
      { "type": "choice", "name": "Named specializations", "default": "0", "pos": "5", "choices": { "0": "[Standard parallels ↑]", "1": "Lambert 0° π:1", "2": "Behrmann 30°", "3": "Smyth/Craster ≈37°04′17″ 2:1", "4": "Trystan Edwards 37°24′", "5": "Hobo-Dyer 37°30′", "6": "Gall-Peters 45°", "7": "Balthasar 50°", "8": "Tobler ≈55°39′14″ 1:1", "9": "[Custom formula ↓]" } },
      { "type": "text", "name": "Custom formula", "default": "acos(sqrt(1/pi))", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Author: <a href=\"https://www.cartographersguild.com/showthread.php?t=47591\">Kristian Järventaus</a>.      Latest Update: 2024/03/05." }
      ]
    },
    {
      "name": "Eckert IV", "lang": "en", "command": "eckert_iv_projection", "command_preview": "", "parameters": [
      { "type": "note", "text": "Rotate an equirectangular map or panorama around three axises in order and output it as an Eckert IV projection." },
      { "type": "separator" },
      { "type": "float", "name": "Roll", "default": "0", "min": "-360", "max": "360", "pos": "1" },
      { "type": "float", "name": "Pitch", "default": "0", "min": "-360", "max": "360", "pos": "2" },
      { "type": "float", "name": "Yaw", "default": "0", "min": "-360", "max": "360", "pos": "3" },
      { "type": "float", "name": "Central longitude", "default": "0", "min": "-180", "max": "180", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: <a href=\"https://www.cartographersguild.com/showthread.php?t=47591\">Kristian Järventaus</a>.      Latest Update: 2024/03/05." }
      ]
    },
    {
      "name": "Eckert VI", "lang": "en", "command": "eckert_vi_projection", "command_preview": "", "parameters": [
      { "type": "note", "text": "Rotate an equirectangular map or panorama around three axises in order and output it as an Eckert VI projection." },
      { "type": "separator" },
      { "type": "float", "name": "Roll", "default": "0", "min": "-360", "max": "360", "pos": "1" },
      { "type": "float", "name": "Pitch", "default": "0", "min": "-360", "max": "360", "pos": "2" },
      { "type": "float", "name": "Yaw", "default": "0", "min": "-360", "max": "360", "pos": "3" },
      { "type": "float", "name": "Central longitude", "default": "0", "min": "-180", "max": "180", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: <a href=\"https://www.cartographersguild.com/showthread.php?t=47591\">Kristian Järventaus</a>.      Latest Update: 2024/03/05." }
      ]
    },
    {
      "name": "Lambert Azimuthal Equal-Area", "lang": "en", "command": "lambert_azimuthal_projection", "command_preview": "", "parameters": [
      { "type": "note", "text": "Rotate an equirectangular map or panorama around three axises in order and output it as a Lambert Azimuthal Equal-Area map." },
      { "type": "separator" },
      { "type": "float", "name": "Roll", "default": "0", "min": "-360", "max": "360", "pos": "1" },
      { "type": "float", "name": "Pitch", "default": "0", "min": "-360", "max": "360", "pos": "2" },
      { "type": "float", "name": "Yaw", "default": "0", "min": "-360", "max": "360", "pos": "3" },
      { "type": "float", "name": "Central longitude", "default": "0", "min": "-180", "max": "180", "pos": "4" },
      { "type": "float", "name": "Standard parallel", "default": "0", "min": "-90", "max": "90", "pos": "5" },
      { "type": "float", "name": "Cut-off at", "default": "180", "min": "0", "max": "180", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Author: <a href=\"https://www.cartographersguild.com/showthread.php?t=47591\">Kristian Järventaus</a>.      Latest Update: 2024/03/05." }
      ]
    },
    {
      "name": "Lambert Conformal Conic", "lang": "en", "command": "lambert_conformal_conic_projection", "command_preview": "", "parameters": [
      { "type": "note", "text": "Rotate an equirectangular map or panorama around three axises in order and output it as a Lambert conic conformal map." },
      { "type": "separator" },
      { "type": "float", "name": "Roll", "default": "0", "min": "-360", "max": "360", "pos": "1" },
      { "type": "float", "name": "Pitch", "default": "0", "min": "-360", "max": "360", "pos": "2" },
      { "type": "float", "name": "Yaw", "default": "0", "min": "-360", "max": "360", "pos": "3" },
      { "type": "float", "name": "Central longitude", "default": "0", "min": "-180", "max": "180", "pos": "4" },
      { "type": "float", "name": "Reference parallel", "default": "0", "min": "-90", "max": "90", "pos": "5" },
      { "type": "float", "name": "Standard parallel #1", "default": "20", "min": "-90", "max": "90", "pos": "6" },
      { "type": "float", "name": "Standard parallel #2", "default": "60", "min": "-90", "max": "90", "pos": "7" },
      { "type": "float", "name": "Crop latitude to", "default": "180", "min": "0", "max": "180", "pos": "8" },
      { "type": "float", "name": "Crop longitude to", "default": "360", "min": "0", "max": "360", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Author: <a href=\"https://www.cartographersguild.com/showthread.php?t=47591\">Kristian Järventaus</a>.      Latest Update: 2024/03/05." }
      ]
    },
    {
      "name": "Mercator Projection", "lang": "en", "command": "mercator", "command_preview": "", "parameters": [
      { "type": "note", "text": "Rotate an equirectangular map or panorama around three axises in order and output it as a Mercator projection. You can get a Transverse Mercator by rolling the globe by 90" },
      { "type": "separator" },
      { "type": "float", "name": "Roll", "default": "0", "min": "-360", "max": "360", "pos": "1" },
      { "type": "float", "name": "Pitch", "default": "0", "min": "-360", "max": "360", "pos": "2" },
      { "type": "float", "name": "Yaw", "default": "0", "min": "-360", "max": "360", "pos": "3" },
      { "type": "float", "name": "Central longitude", "default": "0", "min": "-180", "max": "180", "pos": "4" },
      { "type": "float", "name": "Crop latitude to", "default": "85", "min": "0", "max": "85", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author: <a href=\"https://www.cartographersguild.com/showthread.php?t=47591\">Kristian Järventaus</a>.      Latest Update: 2024/03/05." }
      ]
    },
    {
      "name": "Mollweide", "lang": "en", "command": "mollweide_projection", "command_preview": "", "parameters": [
      { "type": "note", "text": "Rotate an equirectangular map or panorama around three axises in order and output it as a Mollweide equal-area pseudocylindrical map." },
      { "type": "separator" },
      { "type": "float", "name": "Roll", "default": "0", "min": "-360", "max": "360", "pos": "1" },
      { "type": "float", "name": "Pitch", "default": "0", "min": "-360", "max": "360", "pos": "2" },
      { "type": "float", "name": "Yaw", "default": "0", "min": "-360", "max": "360", "pos": "3" },
      { "type": "float", "name": "Central longitude", "default": "0", "min": "-180", "max": "180", "pos": "4" },
      { "type": "float", "name": "Standard parallel", "default": "0", "min": "-90", "max": "90", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author: <a href=\"https://www.cartographersguild.com/showthread.php?t=47591\">Kristian Järventaus</a>.      Latest Update: 2024/03/05." }
      ]
    },
    {
      "name": "Orthographic", "lang": "en", "command": "orthographic_projection", "command_preview": "", "parameters": [
      { "type": "note", "text": "Rotate an equirectangular map or panorama around three axises in order and output it as an orthographic hemisphere map. This map projection is basically the view you'd get if you looked at earth from an infinite distance." },
      { "type": "separator" },
      { "type": "float", "name": "Roll", "default": "0", "min": "-360", "max": "360", "pos": "1" },
      { "type": "float", "name": "Pitch", "default": "0", "min": "-360", "max": "360", "pos": "2" },
      { "type": "float", "name": "Yaw", "default": "0", "min": "-360", "max": "360", "pos": "3" },
      { "type": "float", "name": "Central longitude", "default": "0", "min": "-180", "max": "180", "pos": "4" },
      { "type": "float", "name": "Standard parallel", "default": "0", "min": "-90", "max": "90", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author: <a href=\"https://www.cartographersguild.com/showthread.php?t=47591\">Kristian Järventaus</a>.      Latest Update: 2024/03/05." }
      ]
    },
    {
      "name": "Rotate Equirectangular Map", "lang": "en", "command": "rotate_equirectangular_map", "command_preview": "", "parameters": [
      { "type": "note", "text": "Rotate an equirectangular map or panorama around three axises in order in degrees." },
      { "type": "separator" },
      { "type": "float", "name": "Roll", "default": "0", "min": "-360", "max": "360", "pos": "1" },
      { "type": "float", "name": "Pitch (\"north and south\")", "default": "0", "min": "-360", "max": "360", "pos": "2" },
      { "type": "float", "name": "Yaw (\"east and west\")", "default": "0", "min": "-360", "max": "360", "pos": "3" },
      { "type": "bool", "name": "Revert rotations", "default": "0", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: <a href=\"https://www.cartographersguild.com/showthread.php?t=47591\">Kristian Järventaus</a>.      Latest Update: 2024/03/05." }
      ]
    },
    {
      "name": "Sinusoidal Map", "lang": "en", "command": "sinusoidal_map", "command_preview": "", "parameters": [
      { "type": "note", "text": "Rotate an equirectangular map or panorama around three axises in order and output it as a sinusoidal projection." },
      { "type": "separator" },
      { "type": "float", "name": "Roll", "default": "0", "min": "-360", "max": "360", "pos": "1" },
      { "type": "float", "name": "Pitch (\"north and south\")", "default": "0", "min": "-360", "max": "360", "pos": "2" },
      { "type": "float", "name": "Yaw (\"east and west\")", "default": "0", "min": "-360", "max": "360", "pos": "3" },
      { "type": "color", "name": "Background color", "default": "128,128,128", "pos": "4" },
      { "type": "float", "name": "Background opacity (%)", "default": "100", "min": "0", "max": "100", "pos": "7" },
      { "type": "int", "name": "Slices", "default": "1", "min": "1", "max": "72", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Author: <a href=\"https://www.cartographersguild.com/showthread.php?t=47591\">Kristian Järventaus</a>.      Latest Update: 2024/03/05." }
      ]
    },
    {
      "name": "Triangular Projection", "lang": "en", "command": "triangular_projection", "command_preview": "", "parameters": [
      { "type": "note", "text": "Rotate an equirectangular map or panorama around three axises in order and output it as a naive rectilinear projection. This is not a Collignon projection, but a naive linear interpolation." },
      { "type": "note", "text": "When the width at the poles is 50%, this becomes the Eckert I projection. These projections are not equal-area nor do they have any other useful cartographical property." },
      { "type": "separator" },
      { "type": "float", "name": "Roll", "default": "0", "min": "-360", "max": "360", "pos": "1" },
      { "type": "float", "name": "Pitch (\"north and south\")", "default": "0", "min": "-360", "max": "360", "pos": "2" },
      { "type": "float", "name": "Yaw (\"east and west\")", "default": "0", "min": "-360", "max": "360", "pos": "3" },
      { "type": "color", "name": "Background color", "default": "128,128,128", "pos": "4" },
      { "type": "float", "name": "Background opacity (%)", "default": "100", "min": "0", "max": "100", "pos": "7" },
      { "type": "int", "name": "Slices", "default": "1", "min": "1", "max": "72", "pos": "8" },
      { "type": "float", "name": "Width at the poles %", "default": "50", "min": "0", "max": "100", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Author: <a href=\"https://www.cartographersguild.com/showthread.php?t=47591\">Kristian Järventaus</a>.      Latest Update: 2024/03/05." }
      ]
    }
    ]
  },
  {
    "name": "Marcos Capelini", "filters": [
    {
      "name": "Film Grain", "lang": "en", "command": "mc_film_grain", "command_preview": "mc_film_grain_preview", "parameters": [
      { "type": "note", "text": "<u>Grain Pattern</u>" },
      { "type": "file", "name": "Grain Pattern File:", "default": "", "pos": "1" },
      { "type": "choice", "name": "Texture Generator:", "default": "0", "pos": "2", "choices": { "0": "Syntexturize", "1": "Patch matching" } },
      { "type": "separator" },
      { "type": "note", "text": "<u>Blend</u>" },
      { "type": "choice", "name": "Blend Mode:", "default": "1", "pos": "3", "choices": { "0": "Grain Only", "1": "Grain Merge", "2": "Overlay", "3": "Soft Light", "4": "Hard Light", "5": "Alpha" } },
      { "type": "float", "name": "Opacity (%):", "default": "20", "min": "0", "max": "100", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "<u>Grain Size</u>" },
      { "type": "choice", "name": "Film Format:", "default": "0", "pos": "5", "choices": { "0": "135 (35mm)", "1": "135 Half-frame (Olympus PEN)", "2": "110 (Pocket Instamatic)", "3": "120 (Medium Format)", "4": "APS (H,C,P auto-detect)" } },
      { "type": "int", "name": "Scale (%):", "default": "100", "min": "20", "max": "300", "pos": "6" },
      { "type": "float", "name": "Micrograin:", "default": "0", "min": "0", "max": "10", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "<u>Grain Appearance</u>" },
      { "type": "float", "name": "Blur/Sharpen:", "default": "0", "min": "-10", "max": "10", "pos": "8" },
      { "type": "int", "name": "Contrast:", "default": "0", "min": "-100", "max": "100", "pos": "9" },
      { "type": "int", "name": "Gamma:", "default": "0", "min": "-50", "max": "50", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "<u>Grain Normalise/Cut</u>" },
      { "type": "choice", "name": "Mode:", "default": "1", "pos": "11", "choices": { "0": "None", "1": "Normalise", "2": "Cut" } },
      { "type": "int", "name": "Lowest Value:", "default": "0", "min": "0", "max": "127", "pos": "12" },
      { "type": "int", "name": "Highest Value:", "default": "255", "min": "128", "max": "255", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "<u>Image Adustments</u>" },
      { "type": "float", "name": "Blur/Sharpen:", "default": "0", "min": "-10", "max": "10", "pos": "14" },
      { "type": "float", "name": "Highlight Compression:", "default": "0", "min": "0", "max": "10", "pos": "15" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview:", "default": "0", "pos": "16", "choices": { "0": "Filter Output", "1": "Grain Only", "2": "Filter Output + Debug Info", "3": "Grain Only + Debug Info" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Marcos Capelini. Latest Update: 2023/04/25" },
      { "type": "note", "text": "Based on the \"Add Grain\" filter by: <a href=\"http://bit.ly/2CmhX65\">David Tschumperlé</a>." },
      { "type": "note", "text": "\n" },
      { "type": "button", "name": "Show Usage Tips", "alignment": "2", "pos": "17" }
      ]
    }
    ]
  },
  {
    "name": "McCap", "filters": [
    {
      "name": "Hue Overlay Masks", "lang": "en", "command": "fx_hue_overlay_masks", "command_preview": "fx_hue_overlay_masks_preview", "parameters": [
      { "type": "note", "text": "This plugin creates RGB hue masks. They are be exported in overlay mode into Gimp. Try each one to see how it changes your picture. Alternatively you can use them as masks to select regions based on hue." },
      { "type": "separator" },
      { "type": "bool", "name": "Stretch Constrast", "default": "0", "pos": "1" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "5", "pos": "2", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right" } },
      { "type": "separator" },
      { "type": "note", "text": "More details <a href=\"https://discuss.pixls.us/t/hue-overlay-masks-my-first-filter\">here</a>." },
      { "type": "separator" },
      { "type": "note", "text": "Author: <a href=\"https://discuss.pixls.us/u/McCap\">McCap/pixls.us</a>.      Latest update: 2017/09/02." }
      ]
    }
    ]
  },
  {
    "name": "Misc", "filters": [
    {
      "name": "Barbed Wire", "lang": "en", "command": "mc_barbed_wire", "command_preview": "mc_barbed_wire_preview", "parameters": [
      { "type": "float", "name": "Size (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "2" },
      { "type": "color", "name": "Color", "default": "255,255,255,255", "pos": "3" },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Mathew Callaghan. Last update: 4th of September 2018." }
      ]
    },
    {
      "name": "Crosshair", "lang": "en", "command": "mc_crosshair", "command_preview": "mc_crosshair_preview", "parameters": [
      { "type": "float", "name": "Size (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "2" },
      { "type": "color", "name": "Color", "default": "255,255,255,255", "pos": "3" },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Mathew Callaghan. Last update: 4th of September 2018." }
      ]
    },
    {
      "name": "Cupid", "lang": "en", "command": "fx_cupid", "command_preview": "fx_cupid_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Renders a Cupid silhouette. " },
      { "type": "separator" },
      { "type": "float", "name": "Size (%)", "default": "75", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "2" },
      { "type": "color", "name": "Color", "default": "255,255,255,255", "pos": "3" },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2018/01/08." }
      ]
    },
    {
      "name": "Gear", "lang": "en", "command": "fx_gear", "command_preview": "fx_gear_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Renders a gear/cog silhouette. " },
      { "type": "separator" },
      { "type": "float", "name": "Size (%)", "default": "75", "min": "0", "max": "100", "pos": "1" },
      { "type": "int", "name": "Number of Teeth", "default": "12", "min": "1", "max": "96", "pos": "2" },
      { "type": "float", "name": "Elevation (%)", "default": "15", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Angle (%)", "default": "0", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Inner Radius (%)", "default": "40", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "6" },
      { "type": "color", "name": "Color", "default": "255,255,255,255", "pos": "7" },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2018/01/08." }
      ]
    },
    {
      "name": "Heart", "lang": "en", "command": "fx_heart", "command_preview": "fx_heart_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Renders a heart silhouette. " },
      { "type": "separator" },
      { "type": "float", "name": "Size (%)", "default": "75", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "2" },
      { "type": "color", "name": "Color", "default": "255,255,255,255", "pos": "3" },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2018/01/08." }
      ]
    },
    {
      "name": "Paint Splat", "lang": "en", "command": "mc_paint_splat", "command_preview": "mc_paint_splat_preview", "parameters": [
      { "type": "float", "name": "Size (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "2" },
      { "type": "color", "name": "Color", "default": "255,255,255,255", "pos": "3" },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Mathew Callaghan. Last update: 5th of September 2018." }
      ]
    },
    {
      "name": "Sierpinski Triangle", "lang": "en", "command": "fx_sierpinski", "command_preview": "fx_sierpinski", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Renders a Sierpinski triangle fractal. " },
      { "type": "separator" },
      { "type": "int", "name": "Recursions", "default": "6", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "1st X-Coord", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "1st Y-Coord", "default": "0", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "2nd X-Coord", "default": "0", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "2nd Y-Coord", "default": "100", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "3rd X-Coord", "default": "100", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "3rd Y-Coord", "default": "100", "min": "0", "max": "100", "pos": "7" },
      { "type": "color", "name": "Color", "default": "255,255,255", "pos": "8" },
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    }
    ]
  },
  {
    "name": "Naggobot", "filters": [
    {
      "name": "Abstract Flood", "lang": "en", "command": "fx_AbstractFlood", "command_preview": "fx_AbstractFlood_Preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Warning: Really really slow filter especially with Cubism enabled. Use a maximum of 1 megapixel image. Random walk algorihm is used to select new areas to flood. If Cubism is enabled the filter has to run cubims for every succesful repeat defined in the flood settings section." },
      { "type": "bool", "name": "Preprocess with Bilateral Filtering", "default": "1", "pos": "1" },
      { "type": "float", "name": "Spatial Variance", "default": "10", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Value Variance", "default": "7", "min": "0", "max": "100", "pos": "3" },
      { "type": "int", "name": "Iterations", "default": "2", "min": "1", "max": "10", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Flood settings" },
      { "type": "bool", "name": "Activate Flood", "default": "0", "pos": "5" },
      { "type": "int", "name": "Repeats", "default": "10", "min": "1", "max": "1000", "pos": "6" },
      { "type": "int", "name": "Flood Tolerance", "default": "5", "min": "0", "max": "100", "pos": "7" },
      { "type": "int", "name": "Flood Base Step", "default": "3", "min": "1", "max": "10", "pos": "8" },
      { "type": "color", "name": "Canvas Color", "default": "255,255,255,255", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Abstraction setting, Consider disabling preview if using high flood repeats!" },
      { "type": "bool", "name": "Activate Cubism", "default": "0", "pos": "13" },
      { "type": "int", "name": "Cubism Iterations", "default": "300", "min": "1", "max": "2000", "pos": "14" },
      { "type": "float", "name": "Bloc Size", "default": "10", "min": "0", "max": "40", "pos": "15" },
      { "type": "float", "name": "Angle", "default": "90", "min": "0", "max": "360", "pos": "16" },
      { "type": "float", "name": "Opacity", "default": "0.7", "min": "0.01", "max": "1", "pos": "17" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "5", "pos": "18" },
      { "type": "note", "text": "Opacity threshold used to make decision about flooding. Use 0 if Cubism is not enabled." },
      { "type": "int", "name": "Opacity Tolerance", "default": "0", "min": "0", "max": "254", "pos": "19" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "20", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Arto Huotari.      Latest update : 2013/09/28." },
      { "type": "link", "name": "Filter Explained here", "url": "http://www.flickr.com/photos/naggobot/6243715666", "align": "center" }
      ]
    },
    {
      "name": "Black & White Film", "lang": "en", "command": "fx_bwfilmsimulate", "command_preview": "fx_bwfilmsimulate_preview", "parameters": [
      { "type": "choice", "name": "Film Type / RGB Balance", "default": "0", "pos": "1", "choices": { "0": "Manual", "1": "Agfa 200X", "2": "Agfapan 25", "3": "Agfapan 100", "4": "Agfapan 400", "5": "Iford Delta 100", "6": "Iford Delta 400", "7": "Iford Delta 400 pro & 3200", "8": "Ilford FP4", "9": "Ilford HP4", "10": "Ilford Pan F", "11": "Ilford SFX", "12": "Ilford XP2 Super", "13": "Kodak Tmax 100", "14": "Kodak Tmax 400", "15": "Kodak Tri-X" } },
      { "type": "note", "text": "Simpler version available in main tree. This filter will be removed in future from testing. PM me if you need this for some reason." },
      { "type": "note", "text": "RGB sliders work only with manual selection" },
      { "type": "float", "name": "Red Level", "default": "0.299", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "Red Smoothness", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "float", "name": "Green Level", "default": "0.587", "min": "0", "max": "1", "pos": "4" },
      { "type": "float", "name": "Green Smoothness", "default": "0", "min": "0", "max": "10", "pos": "5" },
      { "type": "float", "name": "Blue Level", "default": "0.114", "min": "0", "max": "1", "pos": "6" },
      { "type": "float", "name": "Blue Smoothness", "default": "0", "min": "0", "max": "10", "pos": "7" },
      { "type": "separator" },
      { "type": "float", "name": "Gamma", "default": "1", "min": "0.01", "max": "5", "pos": "8" },
      { "type": "float", "name": "Contrast", "default": "1", "min": "0", "max": "4", "pos": "9" },
      { "type": "float", "name": "Brightness", "default": "0", "min": "-255", "max": "255", "pos": "10" },
      { "type": "float", "name": "Hue", "default": "0", "min": "0", "max": "360", "pos": "11" },
      { "type": "float", "name": "Saturation", "default": "0", "min": "0", "max": "1", "pos": "12" },
      { "type": "separator" },
      { "type": "float", "name": "Grain (Shadows)", "default": "0", "min": "0", "max": "200", "pos": "13" },
      { "type": "float", "name": "Grain (Midtones)", "default": "0", "min": "0", "max": "200", "pos": "14" },
      { "type": "float", "name": "Grain (Highlights)", "default": "0", "min": "0", "max": "200", "pos": "15" },
      { "type": "float", "name": "Grain Tone Fading", "default": "2", "min": "0", "max": "10", "pos": "16" },
      { "type": "float", "name": "Grain Scale", "default": "0", "min": "0", "max": "3", "pos": "17" },
      { "type": "choice", "name": "Grain Type", "default": "0", "pos": "18", "choices": { "0": "Gaussian", "1": "Uniform", "2": "Salt and pepper", "3": "Poisson" } },
      { "type": "separator" },
      { "type": "float", "name": "Local Contrast", "default": "0", "min": "0", "max": "60", "pos": "19" },
      { "type": "int", "name": "Radius", "default": "16", "min": "1", "max": "512", "pos": "20" },
      { "type": "float", "name": "Contrast Smoothness", "default": "4", "min": "0", "max": "10", "pos": "21" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "22", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : David Tschumperl&#233, Arto Huotari;.      Latest update : 2019/09/28." }
      ]
    },
    {
      "name": "Blockism", "lang": "en", "command": "fx_blockism", "command_preview": "fx_blockism_preview", "parameters": [
      { "type": "note", "text": "Renders rectangles on to the image." },
      { "type": "note", "text": "Parameters" },
      { "type": "float", "name": "Relative Size", "default": "3", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "Ratio", "default": "1.6", "min": "1", "max": "10", "pos": "2" },
      { "type": "float", "name": "Size Variance", "default": "0.5", "min": "0", "max": "10", "pos": "3" },
      { "type": "int", "name": "Relative Block Count", "default": "50", "min": "0", "max": "500", "pos": "4" },
      { "type": "float", "name": "Opacity", "default": "0.5", "min": "0", "max": "1", "pos": "5" },
      { "type": "int", "name": "Flip Tolerance", "default": "64", "min": "0", "max": "255", "pos": "6" },
      { "type": "bool", "name": "Reverse Flip", "default": "0", "pos": "7" },
      { "type": "choice", "name": "Colorspace", "default": "0", "pos": "8", "choices": { "0": "Lab", "1": "RGB" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "9", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "link", "name": "Filter Explained here", "url": "http://www.flickr.com/photos/naggobot/8063058705/", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": " Author: Arto Huotari Latest update : 2012/10/07." }
      ]
    },
    {
      "name": "Composition Analysis", "lang": "en", "command": "fx_CompositionAnalysis", "command_preview": "gui_no_preview", "parameters": [
      { "type": "note", "text": "A tool to abstract the image for subjective composition analysis. Two different methods are available. Set filter output to New layers. For actual analysis the aesthetic sense of the artist is required." },
      { "type": "choice", "name": "Method", "default": "0", "pos": "1", "choices": { "0": "Thumbnail abstraction", "1": "Value and lines" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Arto Huotari.      Latest update : 2015/01/17." }
      ]
    },
    {
      "name": "Dodge Sketch", "lang": "en", "command": "fx_dodgesketch", "command_preview": "fx_dodgesketchpreview", "parameters": [
      { "type": "note", "text": "Simple BW sketch" },
      { "type": "link", "name": "Method is described here", "url": "http://www.gimpusers.com/tutorials/making-a-pencil-drawing-from-a-photo.html", "align": "center" },
      { "type": "note", "text": "in addition an option to color the sketch is included" },
      { "type": "separator" },
      { "type": "note", "text": "Power setting for sketch" },
      { "type": "int", "name": "Power", "default": "3", "min": "0", "max": "10", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Presmoothing settins of bilateral filter" },
      { "type": "float", "name": "Spatial Variance", "default": "10", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Value Variance", "default": "7", "min": "0", "max": "100", "pos": "3" },
      { "type": "int", "name": "Iterations", "default": "2", "min": "1", "max": "10", "pos": "4" },
      { "type": "separator" },
      { "type": "bool", "name": "Colored?", "default": "0", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "6", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Arto Huotari.      Latest update : 2013/09/28." }
      ]
    },
    {
      "name": "Exposure Fusion Weight Map", "lang": "en", "command": "fx_ExposureWeightMap", "command_preview": "fx_ExposureWeightMapPreview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Create exposure fusion weight map" },
      { "type": "separator" },
      { "type": "note", "text": "Set filter output to \"New layers\". Copy filter output to corresponding layer mask. Use aligned layers to combine multiple exposures." },
      { "type": "separator" },
      { "type": "float", "name": "Contrast Bias", "default": "0.3", "min": "0", "max": "1", "pos": "1" },
      { "type": "float", "name": "Saturation Bias", "default": "0.3", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "Exposure Sigma", "default": "0.2", "min": "0", "max": "1", "pos": "3" },
      { "type": "float", "name": "Exposure Bias", "default": "0.3", "min": "0", "max": "1", "pos": "4" },
      { "type": "bool", "name": "BlurMap", "default": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "6", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": " Author: Arto Huotari Latest update : 2014/11/30 v2." }
      ]
    },
    {
      "name": "GMic Structure Tensors", "lang": "en", "command": "fx_StructureTensors", "command_preview": "fx_StructureTensorsPreview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Structure tensors calculation for Gimp plugin. This is just an interface to built in GMic Structure tensors command" },
      { "type": "float", "name": "Power", "default": "0.1", "min": "0.1", "max": "2", "pos": "1" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "2", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Arto Huotari.      Latest update : 2011/12/06." }
      ]
    },
    {
      "name": "Import 16bits Image", "lang": "en", "command": "fx_import_image_16", "command_preview": "fx_import_image_16", "parameters": [
      { "type": "note", "text": "Filter can be used to import and adjust 16 bit images to Gimp. Plugin may have limited set of import formats available depending on compilation. At minimum only .png should work reliably." },
      { "type": "note", "text": "1. Create new empty image to Gimp" },
      { "type": "note", "text": "2. Open G'Mic from filters menu" },
      { "type": "note", "text": "3. Set G'Mic output to \"new layers" },
      { "type": "note", "text": "4. Select 16 bit image from folder" },
      { "type": "note", "text": "5. Make adjustments using sliders" },
      { "type": "note", "text": "6. Image will be outputted to Gimp" },
      { "type": "note", "text": "By default a scaled down image is processed. Before processing full size disable preview window from gui." },
      { "type": "note", "text": "LAB adjustment often yields more aesthetic results than RGB adjustment." },
      { "type": "file", "name": "Input Image", "default": "", "pos": "1" },
      { "type": "choice", "name": "Process Selection", "default": "1", "pos": "2", "choices": { "0": "Preview Only", "1": "Histogram", "2": "Logarithmic Histogram", "3": "Full resolution" } },
      { "type": "float", "name": "Gamma", "default": "2.2", "min": "0", "max": "5", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "LAB adjustment" },
      { "type": "float", "name": "Brightness", "default": "0", "min": "-1", "max": "1", "pos": "4" },
      { "type": "float", "name": "Contrast", "default": "1", "min": "0", "max": "3", "pos": "5" },
      { "type": "float", "name": "Equalize", "default": "0", "min": "0", "max": "1", "pos": "6" },
      { "type": "float", "name": "Saturation", "default": "0", "min": "-1", "max": "10", "pos": "7" },
      { "type": "float", "name": "A(R-G)", "default": "0", "min": "-1", "max": "1", "pos": "8" },
      { "type": "float", "name": "B(Y-B)", "default": "0", "min": "-1", "max": "1", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "RGB cut and normalize histogram by percentage" },
      { "type": "float", "name": "Cut Highlight Values", "default": "100", "min": "0", "max": "100", "pos": "10" },
      { "type": "float", "name": "Cut Dark Values", "default": "0", "min": "0", "max": "100", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Arto Huotari;.      Latest update: 2014/04/02." }
      ]
    },
    {
      "name": "Luminance to Alpha", "lang": "en", "command": "fx_split_luminance", "command_preview": "fx_split_luminance", "parameters": [
      { "type": "note", "text": "Filter splits image to different levels of Luminance. Set preview output to \"all outputs\". Order of output to Gimp from top to bottom is Midtones,Light,LL,[-2],Dark,DD,.. If reduced overlap is used then first Light layer is removed from output as redundant if more than one level is processed. Mutilevel output becomes Midtones,,LL,LLL,[-2],Dark,DD,DDD.. with intermediary light and dark levels containing midtones. " },
      { "type": "separator" },
      { "type": "int", "name": "Levels", "default": "1", "min": "1", "max": "6", "pos": "1" },
      { "type": "bool", "name": "Output as Alpha", "default": "1", "pos": "2" },
      { "type": "bool", "name": "Reduce Overlap", "default": "1", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Use keep[] or remove[] to select output images" },
      { "type": "bool", "name": "Keep Custom", "default": "0", "pos": "4" },
      { "type": "text", "name": "Keep Custom", "default": "0", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Arto Huotari;.      Latest update: 2014/04/13." }
      ]
    },
    {
      "name": "Make Old Squiggly", "lang": "en", "command": "fx_OldSquiggly", "command_preview": "fx_OldSquiggly", "parameters": [
      { "type": "note", "text": "Development version. This version will be removed in future from sources so if you prefer this then copy and save the source to your local .gmic file" },
      { "type": "float", "name": "Spread Noise Amount", "default": "2", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "Segmentation Edge Threshold", "default": "12", "min": "0", "max": "15", "pos": "2" },
      { "type": "float", "name": "Segmentation Smoothness", "default": "0.8", "min": "0", "max": "5", "pos": "3" },
      { "type": "float", "name": "GradienNormSmoothness", "default": "0", "min": "0", "max": "10", "pos": "4" },
      { "type": "float", "name": "GradienNormLinearity", "default": "0.5", "min": "0", "max": "1.5", "pos": "5" },
      { "type": "float", "name": "IncreaseChroma1", "default": "3", "min": "1", "max": "4", "pos": "6" },
      { "type": "float", "name": "Tone Threshold", "default": "0.2", "min": "0", "max": "1", "pos": "7" },
      { "type": "float", "name": "Tone Gamma", "default": "0.4", "min": "0", "max": "1", "pos": "8" },
      { "type": "int", "name": "Paper Grayness", "default": "50", "min": "0", "max": "255", "pos": "9" },
      { "type": "int", "name": "Paper Whiteness", "default": "245", "min": "0", "max": "255", "pos": "10" },
      { "type": "int", "name": "Squiggle Gamma", "default": "45", "min": "1", "max": "128", "pos": "11" },
      { "type": "float", "name": "Squiggle Multiplier", "default": "0.5", "min": "0", "max": "1", "pos": "12" }
      ]
    },
    {
      "name": "Mapped Smoothing", "lang": "en", "command": "fx_MappedSmooth", "command_preview": "fx_MappedSmooth", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Two layers required if automap is not used. Set input to active and below. Filter Smooths image with a vector field map. Map is created from R and G channels so that R128,G128 becomes [0 0]. Experiment with solid 128,128,0 color layer and add hues of red and green. Angle shift rotates the vector field and Zero point offset moves the default 0 0 point. This is somewhat a development version, sample art is still missing." },
      { "type": "separator" },
      { "type": "choice", "name": "Map Type", "default": "0", "pos": "1", "choices": { "0": "Automap", "1": "Layer Map" } },
      { "type": "float", "name": "Angle Shift", "default": "0", "min": "-180", "max": "180", "pos": "2" },
      { "type": "float", "name": "Zero Point Offset", "default": "0", "min": "-128", "max": "128", "pos": "3" },
      { "type": "float", "name": "Amplitude", "default": "300", "min": "10", "max": "10000", "pos": "4" },
      { "type": "float", "name": "Vector Length Multipler", "default": "1", "min": "0.1", "max": "5", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Optional viewing of vector field" },
      { "type": "bool", "name": "Show Quiver", "default": "0", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Arto Huotari.      Latest update : 2012/02/25." }
      ]
    },
    {
      "name": "Night HDR Image Black Noise Correction", "lang": "en", "command": "fx_fix_HDR_black", "command_preview": "fx_fix_HDR_black_preview", "parameters": [
      { "type": "note", "text": "Filter to remove blue, magenta and red noise from the black areas of HDR images. Filter is designed specifically for HDR night shots but may work on other images as well. Bilateral filtering and Haar Wavelets are used to filter the noise from the image and mask is used to apply the noise removal only to dark areas." },
      { "type": "separator" },
      { "type": "note", "text": "Mask opacity settings, Black values must be lower than Highlight values. Tick Show mask to view mask and to see the effect of the sliders." },
      { "type": "note", "text": "Black cutoff" },
      { "type": "int", "name": "X-Coord(1)", "default": "20", "min": "0", "max": "255", "pos": "1" },
      { "type": "int", "name": "Y-Coord(1)", "default": "25", "min": "0", "max": "255", "pos": "2" },
      { "type": "note", "text": "Highlight raising" },
      { "type": "int", "name": "X-Coord(2)", "default": "50", "min": "0", "max": "255", "pos": "3" },
      { "type": "int", "name": "Y-Coord(2)", "default": "200", "min": "0", "max": "255", "pos": "4" },
      { "type": "bool", "name": "Show Mask", "default": "0", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "6", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": " Author: Arto Huotari Latest update : 2013/11/02." }
      ]
    },
    {
      "name": "Noise Painting", "lang": "en", "command": "fx_noisepainting", "command_preview": "fx_noisepainting_preview", "parameters": [
      { "type": "note", "text": "A preprocess suggestion for the painting filter." },
      { "type": "separator" },
      { "type": "note", "text": "Pre process for painting" },
      { "type": "int", "name": "Spread Noise", "default": "0", "min": "0", "max": "20", "pos": "1" },
      { "type": "int", "name": "Additive Noise", "default": "0", "min": "0", "max": "30", "pos": "2" },
      { "type": "bool", "name": "Luminance Only", "default": "0", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Painting abstration" },
      { "type": "int", "name": "Abstraction", "default": "5", "min": "1", "max": "10", "pos": "4" },
      { "type": "float", "name": "Details Scale", "default": "2.5", "min": "0", "max": "5", "pos": "5" },
      { "type": "float", "name": "Color", "default": "1.5", "min": "0", "max": "4", "pos": "6" },
      { "type": "float", "name": "Smoothness", "default": "50", "min": "0", "max": "1000", "pos": "7" },
      { "type": "bool", "name": "Sharpen Shades", "default": "1", "pos": "8" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "9", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": " Author: Arto Huotari Latest update : 2012/07/12." }
      ]
    },
    {
      "name": "Pastell Art", "lang": "en", "command": "fx_pastell", "command_preview": "fx_pastell_preview", "parameters": [
      { "type": "float", "name": "MasterOpacity", "default": "0.6", "min": "0.3", "max": "1", "pos": "1" },
      { "type": "bool", "name": "BG Textured", "default": "1", "pos": "2" },
      { "type": "bool", "name": "Reverse Effect", "default": "0", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Rodilius settings" },
      { "type": "float", "name": "Amplitude", "default": "20", "min": "0", "max": "30", "pos": "4" },
      { "type": "float", "name": "Thickness", "default": "30", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "Sharpness", "default": "300", "min": "0", "max": "1000", "pos": "6" },
      { "type": "int", "name": "Orientations", "default": "1", "min": "1", "max": "36", "pos": "7" },
      { "type": "float", "name": "Offset", "default": "30", "min": "0", "max": "180", "pos": "8" },
      { "type": "choice", "name": "Color Mode", "default": "1", "pos": "9", "choices": { "0": "Darker", "1": "Lighter" } },
      { "type": "separator" },
      { "type": "note", "text": "Gradient settings" },
      { "type": "float", "name": "Smoothness", "default": "1", "min": "0", "max": "10", "pos": "10" },
      { "type": "float", "name": "Linearity", "default": "0.5", "min": "0", "max": "1.5", "pos": "11" },
      { "type": "bool", "name": "Negative Colors", "default": "0", "pos": "12" },
      { "type": "separator" },
      { "type": "bool", "name": "Activate Shakes", "default": "0", "pos": "13" },
      { "type": "float", "name": "Amount", "default": "10", "min": "0", "max": "30", "pos": "14" },
      { "type": "float", "name": "Strength", "default": "3", "min": "1", "max": "300", "pos": "15" },
      { "type": "separator" },
      { "type": "bool", "name": "Activate Lizards", "default": "0", "pos": "16" },
      { "type": "float", "name": "Toes", "default": "9", "min": "0", "max": "300", "pos": "17" },
      { "type": "float", "name": "Shivers", "default": "3", "min": "0", "max": "4", "pos": "18" },
      { "type": "separator" },
      { "type": "bool", "name": "Activate Pink elephants", "default": "0", "pos": "19" },
      { "type": "float", "name": "Trunks", "default": "12", "min": "0", "max": "100", "pos": "20" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "21", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Arto Huotari.      Latest update : 2013/09/28." },
      { "type": "link", "name": "Filter Explained here", "url": "http://www.flickr.com/photos/naggobot/6294075073/", "align": "center" }
      ]
    },
    {
      "name": "Smooth Sketch", "lang": "en", "command": "fx_SmoothSketch", "command_preview": "fx_SmoothSketch_preview", "parameters": [
      { "type": "note", "text": "Convert image to black and white sketch. By default gradient edges are used but if filter input set to Active and Below a premade edge layer can be used from the layer below. Sketch strength slider will not have any effect if premade edges layer is used." },
      { "type": "separator" },
      { "type": "note", "text": "Sketch and edges" },
      { "type": "bool", "name": "Create Sketch", "default": "1", "pos": "1" },
      { "type": "float", "name": "Sketch Strength", "default": "6", "min": "0", "max": "20", "pos": "2" },
      { "type": "float", "name": "Sharpness", "default": "0.8", "min": "0", "max": "1", "pos": "3" },
      { "type": "float", "name": "Anisotropy", "default": "0.3", "min": "0.1", "max": "1", "pos": "4" },
      { "type": "float", "name": "Smoother Scaling", "default": "0.3", "min": "0.1", "max": "2.5", "pos": "5" },
      { "type": "float", "name": "Smoother Degradation", "default": "0", "min": "0", "max": "1", "pos": "6" },
      { "type": "float", "name": "Smoothing Amplitude", "default": "1000", "min": "1", "max": "3000", "pos": "7" },
      { "type": "float", "name": "Smudge Angle", "default": "0", "min": "-180", "max": "180", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Empty area coloring" },
      { "type": "float", "name": "Coloring Density", "default": "50", "min": "0", "max": "200", "pos": "9" },
      { "type": "float", "name": "Coloring Stroke Length", "default": "10", "min": "0", "max": "100", "pos": "10" },
      { "type": "choice", "name": "Coloring Style", "default": "2", "pos": "11", "choices": { "0": "Linear", "1": "Angular", "2": "Linear wavy", "3": "Angular wavy" } },
      { "type": "float", "name": "Coloring Opacity", "default": "0.6", "min": "0", "max": "1", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "Post processing parameters" },
      { "type": "float", "name": "Post Gamma", "default": "0.55", "min": "0.1", "max": "2", "pos": "13" },
      { "type": "bool", "name": "Fast", "default": "1", "pos": "14" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "15", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Arto Huotari.      Latest update : 2014/08/31." },
      { "type": "link", "name": "Filter Explained here", "url": "http://www.flickr.com/groups/gmic/discuss/72157628307225747", "align": "center" }
      ]
    },
    {
      "name": "Vector Field Rotation Demo", "lang": "en", "command": "fx_DemoVecRot", "command_preview": "fx_DemoVecRot", "parameters": [
      { "type": "note", "text": "Vector field rotation and quiver sample" },
      { "type": "float", "name": "Angle Shift", "default": "0", "min": "-180", "max": "180", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Arto Huotari with help from David Tschumperlé.     Latest update : 2012/02/25." }
      ]
    },
    {
      "name": "Warp Test", "lang": "en", "command": "fx_WarpTest", "command_preview": "fx_WarpTest", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Two layers required if automap is not used. Set input to active and below. Filter offsetts image with a vector field map. Map is created from R and G channels so that R128,G128 becomes [0 0]. Experiment with solid 128,128,0 color layer and add hues of red and green. Angle shift rotates the vector field and Zero point offset moves the default 0 0 point. This is mainly for fun and testing." },
      { "type": "separator" },
      { "type": "choice", "name": "Map Type", "default": "0", "pos": "1", "choices": { "0": "Automap", "1": "Layer Map" } },
      { "type": "float", "name": "Angle Shift", "default": "0", "min": "-180", "max": "180", "pos": "2" },
      { "type": "float", "name": "Zero Point Offset", "default": "0", "min": "-128", "max": "128", "pos": "3" },
      { "type": "float", "name": "Vector Length Multipler", "default": "1", "min": "0.1", "max": "128", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Optional viewing of vector field" },
      { "type": "bool", "name": "Show Quiver", "default": "0", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Arto Huotari.      Latest update : 2012/02/28." }
      ]
    }
    ]
  },
  {
    "name": "Nature", "filters": [
    {
      "name": "Australia", "lang": "en", "command": "mc_australia", "command_preview": "mc_australia_preview", "parameters": [
      { "type": "float", "name": "Size (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "2" },
      { "type": "color", "name": "Color", "default": "255,255,255,255", "pos": "3" },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Mathew Callaghan. Last update: 4th of September 2018." }
      ]
    },
    {
      "name": "Barnsley Fern", "lang": "en", "command": "fx_barnsley_fern", "command_preview": "fx_barnsley_fern_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Renders a Barnsley Fern fractal. " },
      { "type": "separator" },
      { "type": "choice", "name": "Type", "default": "0", "pos": "1", "choices": { "0": "Asplenium Adiantum-Nigrum", "1": "Thelypteridaceae" } },
      { "type": "float", "name": "Density (%)", "default": "100", "min": "0", "max": "300", "pos": "2" },
      { "type": "float", "name": "Angle", "default": "30", "min": "-180", "max": "180", "pos": "3" },
      { "type": "float", "name": "Opacity (%)", "default": "40", "min": "0", "max": "100", "pos": "4" },
      { "type": "color", "name": "Color", "default": "10,178,0,255", "pos": "5" },
      { "type": "bool", "name": "Add as a New Layer", "default": "1", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "This filter renders the Barnsley fern fractal, described here:", "visibility": "0" },
      { "type": "link", "name": "https://en.wikipedia.org/wiki/Barnsley_fern", "url": "https://en.wikipedia.org/wiki/Barnsley_fern", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/10/18." }
      ]
    },
    {
      "name": "Gum Leaf", "lang": "en", "command": "mc_gum_leaf", "command_preview": "mc_gum_leaf_preview", "parameters": [
      { "type": "float", "name": "Size (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "2" },
      { "type": "color", "name": "Color", "default": "255,255,255,255", "pos": "3" },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Mathew Callaghan. Last update: 4th of September 2018." }
      ]
    },
    {
      "name": "Japanese Maple Leaf", "lang": "en", "command": "mc_maple_leaf", "command_preview": "mc_maple_leaf_preview", "parameters": [
      { "type": "float", "name": "Size (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "2" },
      { "type": "color", "name": "Color", "default": "255,255,255,255", "pos": "3" },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Mathew Callaghan. Last update: 4th of September 2018." }
      ]
    },
    {
      "name": "Snowflake", "lang": "en", "command": "fx_snowflake", "command_preview": "fx_snowflake", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Renders a Koch snowflake fractal. " },
      { "type": "separator" },
      { "type": "int", "name": "Recursions", "default": "5", "min": "0", "max": "6", "pos": "1" },
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "2" },
      { "type": "color", "name": "Color", "default": "255,255,255", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    }
    ]
  },
  {
    "name": "Okyl168", "filters": [
    {
      "name": "Jobs Colors", "lang": "en", "command": "fx_jobs_colors", "command_preview": "fx_jobs_colors_preview", "parameters": [
      { "type": "float", "name": "Gamma", "default": "0", "min": "-2", "max": "2", "pos": "1" },
      { "type": "bool", "name": "Equalize", "default": "0", "pos": "2" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "3", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Oberon Leung.      Latest update: 2014/25/01." }
      ]
    }
    ]
  },
  {
    "name": "Others", "filters": [
    {
      "name": "Dragon Curve", "lang": "en", "command": "fx_dragoncurve", "command_preview": "fx_dragoncurve", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Renders a Dragon Curve fractal. " },
      { "type": "separator" },
      { "type": "int", "name": "Recursions", "default": "20", "min": "0", "max": "30", "pos": "1" },
      { "type": "float", "name": "Angle", "default": "0", "min": "-180", "max": "180", "pos": "2" },
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "3" },
      { "type": "color", "name": "Color", "default": "255,255,255", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2019/01/29." }
      ]
    }
    ]
  },
  {
    "name": "Patterns", "filters": [
    {
      "name": "Bayer Filter", "lang": "en", "command": "rgb2bayer", "command_preview": "rgb2bayer", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simulates the Bayer pattern of a raw camera sensor. " },
      { "type": "separator" },
      { "type": "choice", "name": "Starting Pattern", "default": "0", "pos": "1", "choices": { "0": "Red-Green", "1": "Blue-Green", "2": "Green-Red", "3": "Green-Blue" } },
      { "type": "bool", "name": "Keep Colors", "default": "1", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Box Fitting", "lang": "en", "command": "fx_boxfitting", "command_preview": "fx_boxfitting", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Fills the image with non-overlapping colored boxes. " },
      { "type": "separator" },
      { "type": "int", "name": "Minimal Size", "default": "3", "min": "1", "max": "32", "pos": "1" },
      { "type": "int", "name": "Maximal Size", "default": "0", "min": "0", "max": "32", "pos": "2" },
      { "type": "note", "text": "Note: Set Maximal size to 0 to allow any size for the squares." },
      { "type": "float", "name": "Initial Density", "default": "0.25", "min": "0", "max": "1", "pos": "3" },
      { "type": "int", "name": "Minimal Spacing", "default": "2", "min": "1", "max": "16", "pos": "4" },
      { "type": "bool", "name": "Transparency", "default": "0", "pos": "5" },
      { "type": "separator", "visibility": "0" },
      { "type": "note", "text": "Note: This filter has been highly inspired by the work of Jared Tarbell, described on the page:" },
      { "type": "link", "name": "http://www.complexification.net/gallery/machines/boxFittingImg/", "url": "http://www.complexification.net/gallery/machines/boxFittingImg/", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/06/06." }
      ]
    },
    {
      "name": "Camouflage", "lang": "en", "command": "fx_camouflage", "command_preview": "fx_camouflage", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a military camouflage pattern. " },
      { "type": "separator" },
      { "type": "int", "name": "Scale", "default": "9", "min": "2", "max": "12", "pos": "1" },
      { "type": "int", "name": "Levels", "default": "12", "min": "2", "max": "32", "pos": "2" },
      { "type": "float", "name": "Coherence", "default": "100", "min": "0", "max": "1000", "pos": "3" },
      { "type": "color", "name": "Color 1", "default": "30,46,33", "pos": "4" },
      { "type": "color", "name": "Color 2", "default": "75,90,65", "pos": "7", "visibility": "0" },
      { "type": "color", "name": "Color 3", "default": "179,189,117", "pos": "10" },
      { "type": "color", "name": "Color 4", "default": "255,246,158", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/10/26." }
      ]
    },
    {
      "name": "Canvas", "lang": "en", "command": "fx_canvas", "command_preview": "fx_canvas", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Applies a canvas relief texture. " },
      { "type": "separator" },
      { "type": "note", "text": "First direction :" },
      { "type": "float", "name": "Amplitude", "default": "70", "min": "0", "max": "300", "pos": "1" },
      { "type": "float", "name": "Angle", "default": "45", "min": "0", "max": "180", "pos": "2" },
      { "type": "float", "name": "Sharpness", "default": "400", "min": "0", "max": "2000", "pos": "3" },
      { "type": "note", "text": "\nSecond direction : " },
      { "type": "bool", "name": "Activate Second Direction", "default": "1", "pos": "4", "visibility": "0" },
      { "type": "float", "name": "Amplitude", "default": "70", "min": "0", "max": "300", "pos": "5" },
      { "type": "float", "name": "Angle", "default": "135", "min": "0", "max": "180", "pos": "6" },
      { "type": "float", "name": "Sharpness", "default": "400", "min": "0", "max": "2000", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Canvas Texture", "lang": "en", "command": "texturize_canvas", "command_preview": "texturize_canvas", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds a canvas texture overlay. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "20", "min": "0", "max": "256", "pos": "1" },
      { "type": "float", "name": "Fibrousness", "default": "3", "min": "0", "max": "20", "pos": "2" },
      { "type": "float", "name": "Emboss", "default": "0.6", "min": "0", "max": "1", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Clouds", "lang": "en", "command": "jeje_clouds", "command_preview": "jeje_clouds_preview", "parameters": [
      { "type": "float", "name": "Density", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": ".5", "min": "0", "max": "1", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Jérôme Boulanger. Latest update: 2013/05/29." }
      ]
    },
    {
      "name": "Contours Gros Pixels", "lang": "en", "command": "samj_Contours_Gros_Pixels", "command_preview": "samj_Contours_Gros_Pixels", "parameters": [
      { "type": "note", "text": "Contours GrosPixels" },
      { "type": "float", "name": "Flou/Blur", "default": "1", "min": "0", "max": "5", "pos": "1" },
      { "type": "int", "name": "Isophotes Nb Levels", "default": "8", "min": "1", "max": "256", "pos": "2" },
      { "type": "int", "name": "Dilatation", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "int", "name": "Gros Pixels X", "default": "20", "min": "5", "max": "90", "pos": "4" },
      { "type": "int", "name": "Gros Pixels Y", "default": "20", "min": "5", "max": "90", "pos": "5" },
      { "type": "int", "name": "Quantize Levels", "default": "16", "min": "1", "max": "256", "pos": "6" },
      { "type": "float", "name": "Couleur", "default": "1.1", "min": "0.8", "max": "4", "pos": "7" },
      { "type": "bool", "name": "Alpha", "default": "0", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Edges</span>" },
      { "type": "bool", "name": "VALIDATION EDGES", "default": "0", "pos": "9" },
      { "type": "float", "name": "Threshold", "default": "15", "min": "0.5", "max": "50", "pos": "10" },
      { "type": "bool", "name": "Colorization", "default": "0", "pos": "11" },
      { "type": "bool", "name": "Alpha Colorization", "default": "0", "pos": "12" },
      { "type": "choice", "name": "Colorization Mode", "default": "0", "pos": "13", "choices": { "0": "Add", "1": "Alpha", "2": "And", "3": "Average", "4": "Blue", "5": "Burn", "6": "Darken", "7": "Difference", "8": "Divide", "9": "Dodge", "10": "Edges", "11": "Exclusion", "12": "Freeze", "13": "Grain extract", "14": "Grain merge", "15": "Green", "16": "Hard light", "17": "Hard mix", "18": "Hue", "19": "Interpolation", "20": "Lighten", "21": "Lightness", "22": "Linear burn", "23": "Linear light", "24": "Luminance", "25": "Multiply", "26": "Negation", "27": "Or", "28": "Overlay", "29": "Pin light", "30": "Red", "31": "Reflect", "32": "Saturation", "33": "Shape Average", "34": "Shape Average0", "35": "Soft burn", "36": "Soft dodge", "37": "Soft light", "38": "Screen", "39": "Stamp", "40": "Subtract", "41": "Value", "42": "Vivid light", "43": "Xor" } },
      { "type": "float", "name": "Colorization Opacity", "default": "1", "min": "0", "max": "1", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2024/11/16." }
      ]
    },
    {
      "name": "Cracks", "lang": "en", "command": "fx_cracks", "command_preview": "fx_cracks", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates procedural crack patterns. " },
      { "type": "separator" },
      { "type": "float", "name": "Density (%)", "default": "30", "min": "0", "max": "100", "pos": "1" },
      { "type": "bool", "name": "Relief", "default": "1", "pos": "2" },
      { "type": "color", "name": "Color", "default": "255,255,255,128", "pos": "3" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "7", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/07/20." }
      ]
    },
    {
      "name": "Crystal", "lang": "en", "command": "fx_crystal", "command_preview": "fx_crystal", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a crystalline polygon pattern. " },
      { "type": "separator" },
      { "type": "float", "name": "Density", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "0.2", "min": "0", "max": "2", "pos": "2" },
      { "type": "float", "name": "Edges", "default": "20", "min": "0", "max": "100", "pos": "3" },
      { "type": "bool", "name": "Fast Fill", "default": "1", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2015/01/19." }
      ]
    },
    {
      "name": "Crystal Background", "lang": "en", "command": "fx_crystal_background", "command_preview": "fx_crystal_background", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a background of abstract crystals. " },
      { "type": "separator" },
      { "type": "int", "name": "Iterations", "default": "10", "min": "1", "max": "32", "pos": "1" },
      { "type": "float", "name": "Density (%)", "default": "25", "min": "0", "max": "100", "pos": "2" },
      { "type": "int", "name": "Random Seed", "default": "0", "min": "0", "max": "65535", "pos": "3" },
      { "type": "float", "name": "Opacity (%)", "default": "100", "min": "0", "max": "100", "pos": "4" },
      { "type": "bool", "name": "Color", "default": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/10/18." }
      ]
    },
    {
      "name": "Degrades HSL TSL", "lang": "en", "command": "samj_Degrades_HSL_TSL", "command_preview": "samj_Degrades_HSL_TSL", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Rendu" },
      { "type": "choice", "name": "Type dégradé", "default": "4", "pos": "1", "choices": { "0": "V Couleur A", "1": "H Couleur A", "2": "V Couleur B", "3": "H Couleur B", "4": "V Couleurs A/B", "5": "H Couleurs A/B", "6": "V Couleurs A/B Inv.", "7": "H Couleurs A/B Inv." } },
      { "type": "int", "name": "Dimensions image", "default": "800", "min": "128", "max": "2048", "pos": "2" },
      { "type": "color", "name": "Couleur a", "default": "240,240,40,255", "pos": "3" },
      { "type": "color", "name": "Couleur b", "default": "120,40,240,255", "pos": "7" },
      { "type": "float", "name": "Décalage h", "default": "0", "min": "0", "max": "360", "pos": "11" },
      { "type": "float", "name": "Décalage s", "default": "0", "min": "0", "max": "100", "pos": "12" },
      { "type": "float", "name": "Décalage l", "default": "0", "min": "0", "max": "100", "pos": "13" },
      { "type": "float", "name": "Variation h", "default": "360", "min": "1", "max": "360", "pos": "14" },
      { "type": "float", "name": "Variation s", "default": "100", "min": "1", "max": "100", "pos": "15" },
      { "type": "float", "name": "Variation l", "default": "100", "min": "1", "max": "100", "pos": "16" },
      { "type": "bool", "name": "Valider variations canal alpha", "default": "0", "pos": "17" },
      { "type": "bool", "name": "Dégradés aléatoires", "default": "0", "pos": "18" },
      { "type": "float", "name": "H min. ded. aléa.", "default": "0", "min": "0", "max": "718", "pos": "19" },
      { "type": "float", "name": "H max. ded. aléa.", "default": "718", "min": "0", "max": "718", "pos": "20" },
      { "type": "float", "name": "S min. ded. aléa.", "default": "75", "min": "0", "max": "100", "pos": "21" },
      { "type": "float", "name": "S max. ded. aléa.", "default": "100", "min": "0", "max": "100", "pos": "22" },
      { "type": "float", "name": "L min. ded. aléa.", "default": "0", "min": "0", "max": "100", "pos": "23" },
      { "type": "float", "name": "L max. ded. aléa.", "default": "100", "min": "0", "max": "100", "pos": "24" },
      { "type": "bool", "name": "Inverser dégradé", "default": "0", "pos": "25" },
      { "type": "choice", "name": "Formes", "default": "0", "pos": "26", "choices": { "0": "Non", "1": "Sinus V - Param A B", "2": "Sinus H - Param A B", "3": "Cercles - Param A B", "4": "Rayons - Param A B", "5": "Lignes V Norm - Param A B", "6": "Lignes H Norm - Param A B", "7": "Plaid", "8": "Carré", "9": "Croix", "10": "Perspective - Param A", "11": "Sphere A", "12": "Sphere B" } },
      { "type": "int", "name": "Paramètre forme a", "default": "0", "min": "0", "max": "100", "pos": "27" },
      { "type": "int", "name": "Paramètre forme b", "default": "0", "min": "0", "max": "100", "pos": "28" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Denim Texture", "lang": "en", "command": "Denim_samj", "command_preview": "Denim_samj", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Texture</span>" },
      { "type": "int", "name": "Dimension motif base", "default": "5", "min": "2", "max": "30", "pos": "1" },
      { "type": "int", "name": "Dilatation Motif / Pattern", "default": "2", "min": "0", "max": "5", "pos": "2" },
      { "type": "bool", "name": "Retourner Motif / Flip Pattern", "default": "0", "pos": "3" },
      { "type": "int", "name": "Déformation 1", "default": "40", "min": "0", "max": "200", "pos": "4" },
      { "type": "int", "name": "Déformation 2", "default": "40", "min": "0", "max": "200", "pos": "5" },
      { "type": "int", "name": "Denim [bruit/noise]", "default": "25", "min": "0", "max": "100", "pos": "6" },
      { "type": "int", "name": "Usure [bruit/noise]", "default": "50", "min": "0", "max": "100", "pos": "7" },
      { "type": "float", "name": "Netteté / Sharpness", "default": "0", "min": "0", "max": "500", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Couleur</span>" },
      { "type": "color", "name": "Couleur Denim", "default": "43,108,126,255", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Version : 2024/11/16." }
      ]
    },
    {
      "name": "EPPE Transform", "lang": "en", "command": "samj_EPPE_Transform", "command_preview": "samj_EPPE_Transform", "parameters": [
      { "type": "note", "text": "samj_EPPE_Transform" },
      { "type": "float", "name": "X Centre", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Y Centre", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "choice", "name": "Rendu", "default": "0", "pos": "3", "choices": { "0": "Imagegrid", "1": "Imagegrid Hexagonal", "2": "Imagegrid Triangular", "3": "BoxFitting" } },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Imagegrid</span>" },
      { "type": "int", "name": "X-size", "default": "10", "min": "2", "max": "100", "pos": "4" },
      { "type": "int", "name": "Y-size", "default": "10", "min": "2", "max": "100", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Imagegrid Hexagonal</span>" },
      { "type": "int", "name": "Résolution", "default": "32", "min": "1", "max": "128", "pos": "6" },
      { "type": "float", "name": "Outline", "default": "0.1", "min": "0", "max": "0.5", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Imagegrid Triangular</span>" },
      { "type": "int", "name": "Pattern width", "default": "10", "min": "8", "max": "128", "pos": "8" },
      { "type": "int", "name": "Pattern height", "default": "18", "min": "8", "max": "128", "pos": "9" },
      { "type": "choice", "name": "Pattern type", "default": "0", "pos": "10", "choices": { "0": "Horizontal", "1": "Vertical", "2": "Crossed", "3": "Cube", "4": "Decreasing", "5": "Increasing" } },
      { "type": "color", "name": "Outline color", "default": "255,255,255,255", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">BoxFitting</span>" },
      { "type": "int", "name": "Minimal size", "default": "3", "min": "1", "max": "32", "pos": "15" },
      { "type": "int", "name": "Maximal size", "default": "0", "min": "0", "max": "32", "pos": "16" },
      { "type": "float", "name": "Initial density", "default": "0.1", "min": "0", "max": "1", "pos": "17" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2024/11/16." }
      ]
    },
    {
      "name": "Fibers", "lang": "en", "command": "jeje_fibers", "command_preview": "jeje_fibers_preview", "parameters": [
      { "type": "int", "name": "Number", "default": "10", "min": "1", "max": "100", "pos": "1" },
      { "type": "int", "name": "Length", "default": "50", "min": "1", "max": "100", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "10", "min": "0", "max": "100", "pos": "3" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "4", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Jérôme Boulanger. Latest update: 2015/07/17." }
      ]
    },
    {
      "name": "Formes Couleurs Variees Dans Image", "lang": "en", "command": "samj_Formes_Couleurs_Variees_Dans_Image", "command_preview": "samj_Formes_Couleurs_Variees_Dans_Image", "parameters": [
      { "type": "choice", "name": "Formes", "default": "0", "pos": "1", "choices": { "0": "Sinus V - Param A B", "1": "Sinus H - Param A B", "2": "Cercles - Param A B", "3": "Rayons - Param A B", "4": "Lignes V", "5": "Lignes H", "6": "Tiled V - Param A B C D", "7": "Tiled H - Param A B C D", "8": "Lignes V Norm - Param A B", "9": "Lignes H Norm - Param A B", "10": "Plaid", "11": "Carré", "12": "Croix", "13": "Perspective - Param A", "14": "Sphere A", "15": "Sphere B" } },
      { "type": "int", "name": "Paramètre forme a", "default": "0", "min": "0", "max": "100", "pos": "2" },
      { "type": "int", "name": "Paramètre forme b", "default": "0", "min": "0", "max": "100", "pos": "3" },
      { "type": "int", "name": "Paramètre forme c", "default": "0", "min": "0", "max": "100", "pos": "4" },
      { "type": "int", "name": "Paramètre forme d", "default": "0", "min": "0", "max": "100", "pos": "5" },
      { "type": "int", "name": "Canal r", "default": "192", "min": "0", "max": "255", "pos": "6" },
      { "type": "int", "name": "Canal v", "default": "128", "min": "0", "max": "255", "pos": "7" },
      { "type": "int", "name": "Canal b", "default": "64", "min": "0", "max": "255", "pos": "8" },
      { "type": "int", "name": "Canal alpha", "default": "255", "min": "0", "max": "255", "pos": "9" },
      { "type": "bool", "name": "Valider variations canal r", "default": "1", "pos": "10" },
      { "type": "bool", "name": "Valider variations canal v", "default": "1", "pos": "11" },
      { "type": "bool", "name": "Valider variations canal b", "default": "1", "pos": "12" },
      { "type": "bool", "name": "Valider variations canal alpha", "default": "0", "pos": "13" },
      { "type": "choice", "name": "Type variations", "default": "0", "pos": "14", "choices": { "0": "A", "1": "B", "2": "C", "3": "D", "4": "E", "5": "F" } },
      { "type": "int", "name": "Décalage", "default": "127", "min": "0", "max": "255", "pos": "15" },
      { "type": "int", "name": "Etendue", "default": "255", "min": "1", "max": "255", "pos": "16" },
      { "type": "bool", "name": "Couleurs aléatoires / random colors", "default": "0", "pos": "17" },
      { "type": "float", "name": "Flou / blur", "default": "0", "min": "0", "max": "5", "pos": "18" },
      { "type": "float", "name": "Déformation", "default": "0", "min": "0", "max": "5", "pos": "19" },
      { "type": "float", "name": "Bruit / noise", "default": "0", "min": "0", "max": "200", "pos": "20" },
      { "type": "bool", "name": "Canal alpha", "default": "1", "pos": "21" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2024/11/16." }
      ]
    },
    {
      "name": "Freqy Pattern", "lang": "en", "command": "jeje_freqy_pattern", "command_preview": "jeje_freqy_pattern_preview", "parameters": [
      { "type": "float", "name": "Random", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Scale 1", "default": "33", "min": "1", "max": "100", "pos": "2" },
      { "type": "float", "name": "Scale 2", "default": "50", "min": "1", "max": "100", "pos": "3" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "4", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Jérôme Boulanger. Latest update: 2018/09/25." }
      ]
    },
    {
      "name": "Halftone", "lang": "en", "command": "fx_halftone", "command_preview": "fx_halftone", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simulates a printing halftone pattern (dots). " },
      { "type": "separator" },
      { "type": "note", "text": "Image parameters :" },
      { "type": "float", "name": "Brightness (%)", "default": "0", "min": "-100", "max": "100", "pos": "1" },
      { "type": "float", "name": "Contrast (%)", "default": "0", "min": "-100", "max": "100", "pos": "2" },
      { "type": "float", "name": "Gamma (%)", "default": "0", "min": "-100", "max": "100", "pos": "3" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Halftone parameters :" },
      { "type": "int", "name": "Number of Tones", "default": "5", "min": "2", "max": "32", "pos": "5" },
      { "type": "int", "name": "Size for Dark Tones", "default": "8", "min": "2", "max": "256", "pos": "6" },
      { "type": "int", "name": "Size for Bright Tones", "default": "8", "min": "2", "max": "256", "pos": "7" },
      { "type": "choice", "name": "Shape", "default": "5", "pos": "8", "choices": { "0": "Square", "1": "Diamond", "2": "Circle", "3": "Square (Inv.)", "4": "Diamond (Inv.)", "5": "Circle (Inv.)" } },
      { "type": "float", "name": "Smoothness", "default": "0.1", "min": "0", "max": "32", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2012/07/23." }
      ]
    },
    {
      "name": "Halftone [Generic]", "lang": "en", "command": "fx_generic_halftone", "command_preview": "fx_generic_halftone_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> A versatile halftone generator with various shapes. " },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Global Settings:</span>" },
      { "type": "choice", "name": "Background", "default": "0", "pos": "1", "choices": { "0": "Black", "1": "White" } },
      { "type": "choice", "name": "Base shape", "default": "1", "pos": "2", "choices": { "0": "Square", "1": "Disc" } },
      { "type": "float", "name": "Max Radius (%)", "default": "100", "min": "0", "max": "300", "pos": "3" },
      { "type": "float", "name": "Smoothness (%)", "default": "10", "min": "0", "max": "100", "pos": "4" },
      { "type": "choice", "name": "Antialiasing", "default": "1", "pos": "5", "choices": { "0": "None", "1": "x1.25", "2": "x1.5", "3": "x2", "4": "x2.5" } },
      { "type": "bool", "name": "Black & White", "default": "0", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Halftoning Shape:</span>" },
      { "type": "choice", "name": "Shape", "default": "4", "pos": "7", "choices": { "0": "Custom (Top Layer)", "1": "Dots", "2": "Lines", "3": "Self", "4": "Spiral" } },
      { "type": "choice", "name": "Layout", "default": "0", "pos": "8", "choices": { "0": "Regular", "1": "Semi-Regular", "2": "Random" }, "visibility": "0" },
      { "type": "float", "name": "Density (%)", "default": "75", "min": "0", "max": "100", "pos": "9" },
      { "type": "float", "name": "Smoothness (%)", "default": "1", "min": "0", "max": "100", "pos": "10", "visibility": "0" },
      { "type": "float", "name": "Angle", "default": "0", "min": "0", "max": "360", "pos": "11", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Note: When adding a top layer that defines a custom halftoning shape, it is recommended to use 1px wide strokes, for a better (and faster) result. " },
      { "type": "value", "value": "-1", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.       Latest Update: 2022/11/07." }
      ]
    },
    {
      "name": "Hearts", "lang": "en", "command": "fx_hearts", "command_preview": "fx_hearts", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a pattern of flat-colored heart shapes. " },
      { "type": "separator" },
      { "type": "float", "name": "Density", "default": "2", "min": "0", "max": "30", "pos": "1" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "2", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Hedcut", "lang": "en", "command": "hedcut", "command_preview": "gtutor_hedcut_preview", "parameters": [
      { "type": "note", "text": "Photometric:" },
      { "type": "float", "name": "Contrast", "default": "0.5", "min": "0", "max": "1", "pos": "1" },
      { "type": "float", "name": "Luminance Level", "default": "0.5", "min": "0", "max": "1", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Pattern:" },
      { "type": "float", "name": "Smoothing", "default": "0.5", "min": "0", "max": "1", "pos": "3" },
      { "type": "float", "name": "Size", "default": "0.0", "min": "0", "max": "1", "pos": "4" },
      { "type": "float", "name": "Step", "default": "0.5", "min": "0", "max": "1", "pos": "5" },
      { "type": "note", "text": "Choice:" },
      { "type": "bool", "name": "Quality", "default": "0", "pos": "6" },
      { "type": "bool", "name": "Force Gray", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "8", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Garry R. Osgood. Latest update: 2015/03/05." },
      { "type": "link", "name": "Hedcut instructions and tutorial", "url": "https://gmic.eu/oldtutorial/hedcut-filter.shtml", "align": "center" }
      ]
    },
    {
      "name": "Lava", "lang": "en", "command": "fx_lava", "command_preview": "fx_lava", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a fluid, lava-like pattern. " },
      { "type": "separator" },
      { "type": "int", "name": "Perturbation", "default": "8", "min": "0", "max": "15", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "5", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Scale", "default": "3", "min": "0", "max": "20", "pos": "3" },
      { "type": "float", "name": "Sharpness", "default": "0", "min": "0", "max": "1000", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2012/11/26." }
      ]
    },
    {
      "name": "Lignes H Ou V Colorees", "lang": "en", "command": "samj_Lignes_H_ou_V_Colorees", "command_preview": "samj_Lignes_H_ou_V_Colorees", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">samj_Lignes_H_ou_V_Colorees - Colored Lines</span>" },
      { "type": "color", "name": "Couleur - Color A", "default": "159,190,195", "pos": "1" },
      { "type": "color", "name": "Couleur - Color B", "default": "55,67,140", "pos": "4" },
      { "type": "color", "name": "Couleur - Color C", "default": "54,40,39", "pos": "7" },
      { "type": "color", "name": "Couleur - Color D", "default": "140,81,88", "pos": "10" },
      { "type": "color", "name": "Couleur - Color E", "default": "207,175,190", "pos": "13" },
      { "type": "color", "name": "Couleur - Color F", "default": "220,202,196", "pos": "16" },
      { "type": "color", "name": "Couleur - Color G", "default": "170,186,192", "pos": "19" },
      { "type": "color", "name": "Couleur - Color H", "default": "130,149,139", "pos": "22" },
      { "type": "color", "name": "Couleur - Color I", "default": "112,96,96", "pos": "25" },
      { "type": "color", "name": "Couleur - Color J", "default": "237,168,138", "pos": "28" },
      { "type": "color", "name": "Couleur - Color K", "default": "220,199,205", "pos": "31" },
      { "type": "color", "name": "Couleur - Color L", "default": "234,217,219", "pos": "34" },
      { "type": "int", "name": "Alpha", "default": "255", "min": "1", "max": "255", "pos": "37" },
      { "type": "int", "name": "Largeur - Width", "default": "256", "min": "2", "max": "1024", "pos": "38" },
      { "type": "int", "name": "Nombre De Lignes - Number Of Lines", "default": "256", "min": "2", "max": "1024", "pos": "39" },
      { "type": "int", "name": "Hauteur De Une Ligne - Height Of One Line", "default": "1", "min": "1", "max": "20", "pos": "40" },
      { "type": "bool", "name": "Rotation 90 Degrés - Vertical Lines", "default": "0", "pos": "41" },
      { "type": "choice", "name": "Origine - First Color", "default": "0", "pos": "42", "choices": { "0": "A", "1": "B", "2": "C", "3": "D", "4": "E", "5": "F", "6": "G", "7": "H", "8": "I", "9": "J", "10": "K", "11": "L" } },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Marble", "lang": "en", "command": "fx_marble", "command_preview": "fx_marble", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a marble-like texture. " },
      { "type": "separator" },
      { "type": "float", "name": "Image Weight", "default": ".5", "min": "0", "max": "30", "pos": "1" },
      { "type": "float", "name": "Pattern Weight", "default": "1", "min": "0", "max": "30", "pos": "2" },
      { "type": "float", "name": "Pattern Angle", "default": "0", "min": "0", "max": "360", "pos": "3" },
      { "type": "float", "name": "Amplitude", "default": "0", "min": "0", "max": "1000", "pos": "4" },
      { "type": "float", "name": "Sharpness", "default": ".4", "min": "0", "max": "5", "pos": "5" },
      { "type": "float", "name": "Anisotropy", "default": ".6", "min": "0", "max": "1", "pos": "6" },
      { "type": "float", "name": "Alpha", "default": ".6", "min": "0", "max": "20", "pos": "7" },
      { "type": "float", "name": "Sigma", "default": "1.1", "min": "0", "max": "20", "pos": "8" },
      { "type": "float", "name": "Cut Low", "default": "0", "min": "0", "max": "100", "pos": "9" },
      { "type": "float", "name": "Cut High", "default": "100", "min": "0", "max": "100", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Preben Soeberg.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Marbre Marble", "lang": "en", "command": "samj_Marbre", "command_preview": "samj_Marbre", "parameters": [
      { "type": "note", "text": "samj_Marbre" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Plasma</span>" },
      { "type": "float", "name": "Alpha", "default": "1", "min": "0", "max": "5", "pos": "1" },
      { "type": "float", "name": "Beta", "default": "1", "min": "0", "max": "100", "pos": "2" },
      { "type": "int", "name": "Scale", "default": "8", "min": "2", "max": "10", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Flou-Blur</span>" },
      { "type": "float", "name": "Flou/Blur", "default": "5", "min": "2", "max": "20", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Gris-Gray</span>" },
      { "type": "float", "name": "Gris/Gray", "default": "0.2", "min": "0.1", "max": "0.6", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Bruit-Noise</span>" },
      { "type": "int", "name": "Spread", "default": "0", "min": "0", "max": "10", "pos": "6" },
      { "type": "float", "name": "Atténuation", "default": "0", "min": "0", "max": "2", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Couleur-Color</span>" },
      { "type": "bool", "name": "Colorisation", "default": "0", "pos": "8" },
      { "type": "color", "name": "Couleur / Color", "default": "140,120,220", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Blend Image</span>" },
      { "type": "bool", "name": "Blend Image", "default": "0", "pos": "12" },
      { "type": "choice", "name": "Mode", "default": "3", "pos": "13", "choices": { "0": "Add", "1": "Alpha", "2": "And", "3": "Average", "4": "Blue", "5": "Burn", "6": "Darken", "7": "Difference", "8": "Divide", "9": "Dodge", "10": "Edges", "11": "Exclusion", "12": "Freeze", "13": "Grain extract", "14": "Grain merge", "15": "Green", "16": "Hard light", "17": "Hard mix", "18": "Hue", "19": "Interpolation", "20": "Lighten", "21": "Lightness", "22": "Linear burn", "23": "Linear light", "24": "Luminance", "25": "Multiply", "26": "Negation", "27": "Or", "28": "Overlay", "29": "Pin light", "30": "Red", "31": "Reflect", "32": "Saturation", "33": "Shape Average", "34": "Shape Average0", "35": "Soft burn", "36": "Soft dodge", "37": "Soft light", "38": "Screen", "39": "Stamp", "40": "Subtract", "41": "Value", "42": "Vivid light", "43": "Xor" } },
      { "type": "float", "name": "Opacité / Opacity", "default": "1", "min": "0", "max": "1", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Maze", "lang": "en", "command": "fx_maze", "command_preview": "fx_maze", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a random maze. " },
      { "type": "separator" },
      { "type": "int", "name": "Cell Size", "default": "24", "min": "1", "max": "256", "pos": "1" },
      { "type": "int", "name": "Thickness", "default": "1", "min": "1", "max": "10", "pos": "2" },
      { "type": "choice", "name": "Masking", "default": "0", "pos": "3", "choices": { "0": "None", "1": "Render on Dark Areas", "2": "Render on White Areas" } },
      { "type": "bool", "name": "Preserve Image Dimension", "default": "1", "pos": "4" },
      { "type": "choice", "name": "Maze Type", "default": "0", "pos": "5", "choices": { "0": "Dark Walls", "1": "White Walls" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2011/02/09." }
      ]
    },
    {
      "name": "Mineral Mosaic", "lang": "en", "command": "fx_mineral_mosaic", "command_preview": "fx_mineral_mosaic", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Creates a mosaic looking like mineral cross-sections. " },
      { "type": "separator" },
      { "type": "float", "name": "Density", "default": "1", "min": "0", "max": "3", "pos": "1" },
      { "type": "float", "name": "Area", "default": "2", "min": "0", "max": "32", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "1", "min": "0", "max": "10", "pos": "3" },
      { "type": "float", "name": "Shade Strength", "default": "100", "min": "0", "max": "255", "pos": "4" },
      { "type": "float", "name": "Shade Angle", "default": "0", "min": "0", "max": "360", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/02/01." }
      ]
    },
    {
      "name": "Mosaic", "lang": "en", "command": "fx_mosaic", "command_preview": "fx_mosaic", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Applies a classic tile mosaic effect. " },
      { "type": "separator" },
      { "type": "float", "name": "Density (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "2", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/07/19." }
      ]
    },
    {
      "name": "Mosaic A", "lang": "en", "command": "samj_Mosaic_A", "command_preview": "samj_Mosaic_A", "parameters": [
      { "type": "int", "name": "1 - Tuiles Taille/Tiles Size", "default": "20", "min": "10", "max": "40", "pos": "1" },
      { "type": "int", "name": "2 - Joints", "default": "3", "min": "2", "max": "5", "pos": "2" },
      { "type": "note", "text": "<span foreground=\"orangered\">Relief</span>" },
      { "type": "bool", "name": "3 - Relief", "default": "1", "pos": "3" },
      { "type": "float", "name": "4 - Lumière/Light", "default": "0", "min": "0", "max": "1", "pos": "4" },
      { "type": "int", "name": "5 - Lumière/Light Orientation", "default": "0", "min": "0", "max": "3", "pos": "5" },
      { "type": "bool", "name": "6 - Fancy Mosaic - Slow", "default": "0", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2023/09/10." }
      ]
    },
    {
      "name": "Mosaic B", "lang": "en", "command": "samj_Mosaic_B", "command_preview": "samj_Mosaic_B", "parameters": [
      { "type": "note", "text": "Rendu aléatoire/Random rendering" },
      { "type": "int", "name": "1 - Tuiles Densité/Tiles Density", "default": "30", "min": "5", "max": "50", "pos": "1" },
      { "type": "int", "name": "2 - Créativité/Creativity A", "default": "400", "min": "0", "max": "4000", "pos": "2" },
      { "type": "int", "name": "3 - Créativité/Creativity B", "default": "1", "min": "0", "max": "10", "pos": "3" },
      { "type": "int", "name": "4 - Créativité/Creativity C", "default": "100", "min": "0", "max": "200", "pos": "4" },
      { "type": "int", "name": "5 - Joints", "default": "1", "min": "0", "max": "5", "pos": "5" },
      { "type": "note", "text": "<span foreground=\"orangered\">Relief</span>" },
      { "type": "bool", "name": "6 - Relief", "default": "1", "pos": "6" },
      { "type": "float", "name": "7 - Lumière/Light", "default": "0", "min": "0", "max": "1", "pos": "7" },
      { "type": "int", "name": "8 - Lumière/Light Orientation", "default": "0", "min": "0", "max": "3", "pos": "8" },
      { "type": "bool", "name": "9 - Fancy Mosaic - Slow", "default": "0", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2023/02/13." }
      ]
    },
    {
      "name": "Motif Plasma", "lang": "en", "command": "samj_Motif_Plasma", "command_preview": "samj_Motif_Plasma", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Motif Plasma</span>" },
      { "type": "int", "name": "Détails", "default": "2", "min": "1", "max": "8", "pos": "1" },
      { "type": "int", "name": "Plasma A", "default": "20", "min": "0", "max": "32", "pos": "2" },
      { "type": "int", "name": "Plasma B", "default": "20", "min": "0", "max": "32", "pos": "3" },
      { "type": "int", "name": "Flou Pourcent", "default": "30", "min": "1", "max": "100", "pos": "4" },
      { "type": "int", "name": "Mélange Mode", "default": "1", "min": "0", "max": "1", "pos": "5" },
      { "type": "int", "name": "Mélange Pourcent", "default": "75", "min": "0", "max": "100", "pos": "6" },
      { "type": "int", "name": "Graine - 0 Pour Motif Aléatoire", "default": "0", "min": "0", "max": "1000000", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2024/11/16." }
      ]
    },
    {
      "name": "Motifs 7200", "lang": "en", "command": "samj_Motifs_7200", "command_preview": "samj_Motifs_7200", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Motif Plasma</span>" },
      { "type": "int", "name": "Détails", "default": "2", "min": "1", "max": "8", "pos": "1" },
      { "type": "bool", "name": "Plasma 0 - Bruit Aléatoire 1", "default": "0", "pos": "2" },
      { "type": "int", "name": "Plasma A - Bruit Dimension", "default": "20", "min": "0", "max": "32", "pos": "3" },
      { "type": "int", "name": "Plasma B - Bruit Dimension", "default": "20", "min": "0", "max": "32", "pos": "4" },
      { "type": "int", "name": "Flou Pourcent", "default": "30", "min": "1", "max": "100", "pos": "5" },
      { "type": "int", "name": "Mélange Mode", "default": "1", "min": "0", "max": "1", "pos": "6" },
      { "type": "int", "name": "Mélange Pourcent", "default": "75", "min": "0", "max": "100", "pos": "7" },
      { "type": "int", "name": "Graine - 0 Pour Motif Aléatoire", "default": "0", "min": "0", "max": "1000000", "pos": "8" },
      { "type": "choice", "name": "Effet", "default": "0", "pos": "9", "choices": { "0": "0 Plasma", "1": "1 CA", "2": "2 BR", "3": "3 CA BR", "4": "4 RS CA", "5": "5 RS BR", "6": "6 RS CA BR", "7": "7 PD", "8": "8 PD RS", "9": "9 PD BR", "10": "10 PD RS BR" } },
      { "type": "color", "name": "Couleur Random Shade", "default": "255,0,221,255", "pos": "10" },
      { "type": "bool", "name": "Ajouter Rolling Guidance [lissage]", "default": "0", "pos": "14" },
      { "type": "bool", "name": "Ajouter Mess With Bits", "default": "0", "pos": "15" },
      { "type": "bool", "name": "Ajouter CeKoaSa 004", "default": "0", "pos": "16" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2024/11/16." }
      ]
    },
    {
      "name": "Motifs 7200 Variante A", "lang": "en", "command": "samj_Motifs_7200_VarianteA", "command_preview": "samj_Motifs_7200_VarianteA", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"blue\">Pour obtenir des motifs autour de la couleur choisie</span>" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Motif Plasma</span>" },
      { "type": "int", "name": "Détails", "default": "2", "min": "1", "max": "8", "pos": "1" },
      { "type": "bool", "name": "Plasma 0 - Bruit Aléatoire 1", "default": "0", "pos": "2" },
      { "type": "int", "name": "Plasma A - Bruit Dimension", "default": "20", "min": "0", "max": "32", "pos": "3" },
      { "type": "int", "name": "Plasma B - Bruit Dimension", "default": "20", "min": "0", "max": "32", "pos": "4" },
      { "type": "int", "name": "Flou Pourcent", "default": "30", "min": "1", "max": "100", "pos": "5" },
      { "type": "int", "name": "Mélange Mode", "default": "1", "min": "0", "max": "1", "pos": "6" },
      { "type": "int", "name": "Mélange Pourcent", "default": "75", "min": "0", "max": "100", "pos": "7" },
      { "type": "int", "name": "Graine - 0 Pour Motif Aléatoire", "default": "0", "min": "0", "max": "1000000", "pos": "8" },
      { "type": "choice", "name": "Effet", "default": "0", "pos": "9", "choices": { "0": "0 Plasma", "1": "1 CA", "2": "2 BR", "3": "3 CA BR", "4": "4 RS CA", "5": "5 RS BR", "6": "6 RS CA BR", "7": "7 PD", "8": "8 PD RS", "9": "9 PD BR", "10": "10 PD RS BR" } },
      { "type": "color", "name": "Couleur Random Shade", "default": "255,0,221,255", "pos": "10" },
      { "type": "bool", "name": "Ajouter Rolling Guidance [lissage]", "default": "0", "pos": "14" },
      { "type": "bool", "name": "Ajouter Mess With Bits", "default": "0", "pos": "15" },
      { "type": "bool", "name": "Ajouter CeKoaSa 004", "default": "0", "pos": "16" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2024/11/16." }
      ]
    },
    {
      "name": "Motifs 7200 VarianteB", "lang": "en", "command": "samj_Motifs_7200_VarianteB", "command_preview": "samj_Motifs_7200_VarianteB", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"blue\">Pour obtenir des motifs cheveux peignes</span>" },
      { "type": "int", "name": "Détails", "default": "4", "min": "1", "max": "8", "pos": "1" },
      { "type": "int", "name": "Bruit En Plus", "default": "0", "min": "0", "max": "64", "pos": "2" },
      { "type": "int", "name": "Déformation En Plus", "default": "0", "min": "0", "max": "100", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">sketchbw</span>" },
      { "type": "int", "name": "Number of Orientations", "default": "3", "min": "1", "max": "16", "pos": "4" },
      { "type": "float", "name": "Starting Angle", "default": "45", "min": "0", "max": "180", "pos": "5" },
      { "type": "float", "name": "Angle Range", "default": "180", "min": "0", "max": "180", "pos": "6" },
      { "type": "float", "name": "Stroke Length", "default": "30", "min": "0", "max": "1000", "pos": "7" },
      { "type": "float", "name": "Contour Threshold", "default": "0.75", "min": "0", "max": "10", "pos": "8" },
      { "type": "float", "name": "Opacity", "default": "0.02", "min": "0", "max": "0.3", "pos": "9" },
      { "type": "float", "name": "Background Intensity", "default": "0.5", "min": "0", "max": "2", "pos": "10" },
      { "type": "float", "name": "Density", "default": "1.5", "min": "0", "max": "5", "pos": "11" },
      { "type": "float", "name": "Sharpness", "default": "0.1", "min": "0", "max": "1", "pos": "12" },
      { "type": "float", "name": "Anisotropy", "default": "1", "min": "0", "max": "1", "pos": "13" },
      { "type": "float", "name": "Smoothness", "default": "10", "min": "0", "max": "10", "pos": "14" },
      { "type": "float", "name": "Cohérence", "default": "10", "min": "0", "max": "10", "pos": "15" },
      { "type": "bool", "name": "Boost Stroke", "default": "1", "pos": "16" },
      { "type": "bool", "name": "Curved Stroke", "default": "1", "pos": "17" },
      { "type": "choice", "name": "Color Model", "default": "4", "pos": "18", "choices": { "0": "Black on white", "1": "White on black", "2": "Black on transparent white", "3": "White on transparent black", "4": "Color on white" } },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Dispersion</span>" },
      { "type": "int", "name": "Dispersion", "default": "48", "min": "1", "max": "100", "pos": "19" },
      { "type": "int", "name": "DispersionDeform", "default": "4", "min": "1", "max": "10", "pos": "20" },
      { "type": "bool", "name": "Cut vs Norm", "default": "1", "pos": "21" },
      { "type": "bool", "name": "Seamless vs Edges", "default": "1", "pos": "22" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2024/11/16." }
      ]
    },
    {
      "name": "Motifs 7200 VarianteC", "lang": "en", "command": "samj_Motifs_7200_VarianteC", "command_preview": "samj_Motifs_7200_VarianteC", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"blue\">Pour obtenir des chemins courbes</span>" },
      { "type": "int", "name": "Détails", "default": "4", "min": "1", "max": "8", "pos": "1" },
      { "type": "int", "name": "Bruit", "default": "32", "min": "2", "max": "64", "pos": "2" },
      { "type": "int", "name": "Flou A", "default": "64", "min": "2", "max": "128", "pos": "3" },
      { "type": "int", "name": "Déformation", "default": "32", "min": "1", "max": "100", "pos": "4" },
      { "type": "bool", "name": "Seamless vs Edges A", "default": "1", "pos": "5" },
      { "type": "int", "name": "Flou B", "default": "5", "min": "2", "max": "10", "pos": "6" },
      { "type": "color", "name": "Couleur", "default": "255,0,221", "pos": "7" },
      { "type": "bool", "name": "Seamless vs Edges B", "default": "0", "pos": "10" },
      { "type": "choice", "name": "Etendue Couleurs", "default": "0", "pos": "11", "choices": { "0": "Cut Norm", "1": "Cut", "2": "Norm", "3": "Rien" } },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Dégradé</span>" },
      { "type": "bool", "name": "Ajouter Dégradé", "default": "0", "pos": "12" },
      { "type": "choice", "name": "Type H / V", "default": "0", "pos": "13", "choices": { "0": "H", "1": "V" } },
      { "type": "bool", "name": "Swap colors", "default": "0", "pos": "14" },
      { "type": "color", "name": "Starting color A", "default": "240,40,160,255", "pos": "15" },
      { "type": "color", "name": "Ending color B", "default": "240,240,40,255", "pos": "19" },
      { "type": "choice", "name": "Colorspace", "default": "0", "pos": "23", "choices": { "0": "sRGB", "1": "Linear RGB", "2": "Lab" } },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2024/11/16." }
      ]
    },
    {
      "name": "Motifs Aleatoires Symetriques Degrades", "lang": "en", "command": "samj_Motifs_Aleatoires_Symetriques_Degrades", "command_preview": "samj_Motifs_Aleatoires_Symetriques_Degrades", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Rendu" },
      { "type": "choice", "name": "Type dégradé", "default": "1", "pos": "1", "choices": { "0": "Dégradés_XYZ_CIE A", "1": "Dégradés_XYZ_CIE B", "2": "Dégradés_HSL_TSL", "3": "Formes_Couleurs_Variees_Dans_Image" } },
      { "type": "int", "name": "Dimensions motif", "default": "400", "min": "128", "max": "2048", "pos": "2" },
      { "type": "int", "name": "Forme", "default": "4", "min": "3", "max": "12", "pos": "3" },
      { "type": "int", "name": "Limite / boundary", "default": "1", "min": "0", "max": "2", "pos": "4" },
      { "type": "int", "name": "Symétrie", "default": "1", "min": "0", "max": "2", "pos": "5" },
      { "type": "bool", "name": "Utiliser GIMP feltpen", "default": "1", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2024/11/16." }
      ]
    },
    {
      "name": "Motifs Degrades CIE", "lang": "en", "command": "samj_Degrades_XYZ_CIE", "command_preview": "samj_Degrades_XYZ_CIE", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Dégradé Rendu CIE Lab" },
      { "type": "choice", "name": "Type dégradé", "default": "6", "pos": "1", "choices": { "0": "V Couleur A", "1": "H Couleur A", "2": "V Couleur B", "3": "H Couleur B", "4": "V Couleurs A/B Inv.", "5": "H Couleurs A/B Inv.", "6": "V Couleurs A/B", "7": "H Couleurs A/B" } },
      { "type": "int", "name": "Dimensions image", "default": "800", "min": "128", "max": "2048", "pos": "2" },
      { "type": "color", "name": "Couleur a", "default": "240,240,40,255", "pos": "3" },
      { "type": "color", "name": "Couleur b", "default": "120,40,240,255", "pos": "7" },
      { "type": "float", "name": "Décalage l", "default": "0", "min": "0", "max": "100", "pos": "11" },
      { "type": "float", "name": "Décalage a", "default": "0", "min": "-128", "max": "127", "pos": "12" },
      { "type": "float", "name": "Décalage b", "default": "0", "min": "-128", "max": "127", "pos": "13" },
      { "type": "float", "name": "Variation l", "default": "100", "min": "0", "max": "100", "pos": "14" },
      { "type": "float", "name": "Variation a", "default": "64", "min": "0", "max": "255", "pos": "15" },
      { "type": "float", "name": "Variation b", "default": "64", "min": "0", "max": "255", "pos": "16" },
      { "type": "bool", "name": "Valider variations canal alpha", "default": "0", "pos": "17" },
      { "type": "choice", "name": "Trou noir", "default": "0", "pos": "18", "choices": { "0": "Non", "1": "Mode A", "2": "Mode B" } },
      { "type": "bool", "name": "Dégradés aléatoires", "default": "1", "pos": "19" },
      { "type": "float", "name": "L min. ded. aléa.", "default": "0", "min": "0", "max": "100", "pos": "20" },
      { "type": "float", "name": "L max. ded. aléa.", "default": "100", "min": "0", "max": "100", "pos": "21" },
      { "type": "float", "name": "A min. ded. aléa.", "default": "-128", "min": "-128", "max": "127", "pos": "22" },
      { "type": "float", "name": "A max. ded. aléa.", "default": "128", "min": "-128", "max": "127", "pos": "23" },
      { "type": "float", "name": "B min. ded. aléa.", "default": "-128", "min": "-128", "max": "127", "pos": "24" },
      { "type": "float", "name": "B max. ded. aléa.", "default": "128", "min": "-128", "max": "127", "pos": "25" },
      { "type": "bool", "name": "Inverser dégradé", "default": "0", "pos": "26" },
      { "type": "choice", "name": "Formes", "default": "11", "pos": "27", "choices": { "0": "Non", "1": "Sinus V - Param A B", "2": "Sinus H - Param A B", "3": "Cercles - Param A B", "4": "Rayons - Param A B", "5": "Lignes V Norm - Param A B", "6": "Lignes H Norm - Param A B", "7": "Plaid", "8": "Carré", "9": "Croix", "10": "Perspective - Param A", "11": "Sphere A", "12": "Sphere B" } },
      { "type": "int", "name": "Paramètre forme a", "default": "0", "min": "0", "max": "100", "pos": "28" },
      { "type": "int", "name": "Paramètre forme b", "default": "0", "min": "0", "max": "100", "pos": "29" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Samj. - Dernière mise à jour : 2010/10/24." }
      ]
    },
    {
      "name": "Op Art", "lang": "en", "command": "fx_shapes", "command_preview": "fx_shapes_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Transform image with geometric, halftone-like patterns. " },
      { "type": "separator" },
      { "type": "choice", "name": "Shape", "default": "1", "pos": "1", "choices": { "0": "Custom Layers", "1": "Circles", "2": "Squares", "3": "Diamonds", "4": "Triangles", "5": "Horizontal Stripes", "6": "Vertical Stripes", "7": "Balls", "8": "Hearts", "9": "Stars", "10": "Arrows", "11": "Truchet", "12": "Circles (Outline)", "13": "Squares (Outline)", "14": "Diamonds (Outline)", "15": "Triangles (Outline)", "16": "Hearts (Outline)", "17": "Stars (Outline)", "18": "Arrows (Outline)" } },
      { "type": "int", "name": "Number of Scales", "default": "16", "min": "2", "max": "24", "pos": "2" },
      { "type": "float", "name": "Resolution", "default": "10", "min": "1", "max": "50", "pos": "3" },
      { "type": "int", "name": "Zoom Factor", "default": "2", "min": "1", "max": "8", "pos": "4" },
      { "type": "float", "name": "Minimal Size", "default": "5", "min": "0", "max": "150", "pos": "5" },
      { "type": "float", "name": "Maximal Size", "default": "90", "min": "0", "max": "150", "pos": "6" },
      { "type": "choice", "name": "Stencil Type", "default": "0", "pos": "7", "choices": { "0": "Black & White", "1": "RGB", "2": "Color" } },
      { "type": "choice", "name": "Allow Angle", "default": "0", "pos": "8", "choices": { "0": "0 deg.", "1": "90 deg.", "2": "180 deg." } },
      { "type": "bool", "name": "Negative", "default": "1", "pos": "9" },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "Note: If you set the parameter Shape to Custom layers, the different shapes used to map the pixel intensities will be defined as the Number of scales top layers of your image. Don't forget to set also Input layers to All to be sure these layers are passed to the filter. " },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "11", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/12/16." }
      ]
    },
    {
      "name": "Organic Fibers", "lang": "en", "command": "fx_organic_fibers", "command_preview": "fx_organic_fibers", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a texture resembling organic fibers. " },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Global Parameters:</span>" },
      { "type": "float", "name": "Agent Density (%)", "default": "20", "min": "0", "max": "50", "pos": "1" },
      { "type": "int", "name": "Iterations", "default": "20", "min": "1", "max": "256", "pos": "2" },
      { "type": "int", "name": "Orientations", "default": "3", "min": "2", "max": "16", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Sensor Parameters:</span>" },
      { "type": "int", "name": "Sensor Distance (px)", "default": "15", "min": "0", "max": "400", "pos": "4" },
      { "type": "float", "name": "Sensor Angle (deg.)", "default": "15", "min": "0", "max": "180", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Motion Parameters:</span>" },
      { "type": "int", "name": "Motion Distance (px)", "default": "3", "min": "0", "max": "400", "pos": "6" },
      { "type": "float", "name": "Motion Angle (deg.)", "default": "15", "min": "0", "max": "180", "pos": "7" },
      { "type": "float", "name": "Moment (%)", "default": "30", "min": "0", "max": "100", "pos": "8" },
      { "type": "float", "name": "Trail Blur (px)", "default": "1", "min": "0", "max": "20", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Rendering Parameters:</span>" },
      { "type": "int", "name": "Particle Size (px)", "default": "19", "min": "1", "max": "128", "pos": "10" },
      { "type": "float", "name": "Particle Thickness (%)", "default": "10", "min": "0", "max": "100", "pos": "11" },
      { "type": "int", "name": "Quantize Orientations", "default": "24", "min": "1", "max": "32", "pos": "12" },
      { "type": "float", "name": "Opacity (%)", "default": "50", "min": "0", "max": "100", "pos": "13" },
      { "type": "float", "name": "Sharpening (%)", "default": "0", "min": "0", "max": "100", "pos": "14" },
      { "type": "choice", "name": "Palette", "default": "33", "pos": "15", "choices": { "0": "Default", "1": "HSV", "2": "Lines", "3": "Hot", "4": "Cool", "5": "Jet", "6": "Flag", "7": "Cube", "8": "Rainbow", "9": "Parula", "10": "Spring", "11": "Summer", "12": "Autumn", "13": "Winter", "14": "Bone", "15": "Copper", "16": "Pink", "17": "Vga", "18": "Algae", "19": "Amp", "20": "Balance", "21": "Curl", "22": "Deep", "23": "Delta", "24": "Dense", "25": "Diff", "26": "Gray", "27": "Haline", "28": "Ice", "29": "Matter", "30": "Oxy", "31": "Phase", "32": "Rain", "33": "Solar", "34": "Speed", "35": "Tarn", "36": "Tempo", "37": "Thermal", "38": "Topo", "39": "Turbid", "40": "Aurora", "41": "Hocuspocus", "42": "SRB2", "43": "Uzebox", "44": "Amiga7800", "45": "Amiga7800mess", "46": "Fornaxvoid1" } },
      { "type": "separator" },
      { "type": "note", "text": "This filter has been inspired by the following web page, written by Etienne Jacob (aka Bleuje):" },
      { "type": "link", "name": "https://bleuje.com/physarum-explanation/", "url": "https://bleuje.com/physarum-explanation/", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2025/07/14." }
      ]
    },
    {
      "name": "Pack Ellipses", "lang": "en", "command": "fx_pack_ellipses", "command_preview": "fx_pack_ellipses_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Fills the image with non-overlapping, packed ellipses. " },
      { "type": "separator" },
      { "type": "float", "name": "Min Radius (px)", "default": "3", "min": "1", "max": "256", "pos": "1" },
      { "type": "float", "name": "Max Radius (px)", "default": "20", "min": "1", "max": "256", "pos": "2" },
      { "type": "float", "name": "Radius Dilation/Erosion (px)", "default": "0", "min": "-10", "max": "10", "pos": "3" },
      { "type": "float", "name": "Min Isotropy (%)", "default": "30", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Max Isotropy (%)", "default": "100", "min": "0", "max": "100", "pos": "5" },
      { "type": "int", "name": "Isotropy Quantization", "default": "6", "min": "0", "max": "16", "pos": "6" },
      { "type": "choice", "name": "Orientation", "default": "1", "pos": "7", "choices": { "0": "Isotropic (Circles Only)", "1": "Anisotropic (Along Contours)", "2": "Anisotropic (Orthogonal to Contours)" } },
      { "type": "int", "name": "Region Analysis Size", "default": "3", "min": "0", "max": "10", "pos": "8" },
      { "type": "color", "name": "Background Color", "default": "0,0,0,255", "pos": "9" },
      { "type": "choice", "name": "Render Resolution", "default": "0", "pos": "13", "choices": { "0": "x1", "1": "x2", "2": "x3", "3": "x4", "4": "x5", "5": "x6", "6": "x7", "7": "x8" } },
      { "type": "bool", "name": "Preserve Image Size", "default": "0", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2023/03/29." }
      ]
    },
    {
      "name": "Pack Sprites", "lang": "en", "command": "fx_pack_sprites", "command_preview": "fx_pack_sprites_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Fills the image by packing small sprite images. " },
      { "type": "separator" },
      { "type": "int", "name": "Number of Scales", "default": "5", "min": "1", "max": "16", "pos": "1" },
      { "type": "float", "name": "Minimal Scale (%)", "default": "25", "min": "1", "max": "100", "pos": "2" },
      { "type": "choice", "name": "Allow Angle", "default": "3", "pos": "3", "choices": { "0": "0 deg.", "1": "180 deg.", "2": "90 deg.", "3": "Any" } },
      { "type": "int", "name": "Spacing", "default": "1", "min": "-16", "max": "16", "pos": "4" },
      { "type": "int", "name": "Precision", "default": "5", "min": "1", "max": "10", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Masking", "default": "0", "pos": "6", "choices": { "0": "No Masking", "1": "Mask as Bottom Layer" } },
      { "type": "int", "name": "Width", "default": "512", "min": "32", "max": "2048", "pos": "7" },
      { "type": "int", "name": "Height", "default": "512", "min": "32", "max": "2048", "pos": "8" },
      { "type": "note", "text": "Notes:\n - Parameters Width and Height are considered only when No masking mode is selected.\n - Set different sprites on different layers to pack multiple sprites at the same time." },
      { "type": "link", "name": "Click here for a video tutorial", "url": "http://www.youtube.com/watch?v=bpg7CGH7vCM", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2025/06/06." }
      ]
    },
    {
      "name": "Paper Texture", "lang": "en", "command": "fx_paper", "command_preview": "fx_paper", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds a paper grain texture. " },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "1", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Periodic Dots", "lang": "en", "command": "jeje_periodic_dots", "command_preview": "jeje_periodic_dots_preview", "parameters": [
      { "type": "int", "name": "Number", "default": "6", "min": "2", "max": "32", "pos": "1" },
      { "type": "float", "name": "Scale", "default": "4", "min": "1", "max": "12", "pos": "2" },
      { "type": "float", "name": "Angle", "default": "0", "min": "0", "max": "360", "pos": "3" },
      { "type": "int", "name": "Repeat", "default": "1", "min": "1", "max": "10", "pos": "4" },
      { "type": "choice", "name": "Map", "default": "0", "pos": "5", "choices": { "0": "None", "1": "default", "2": "HSV", "3": "lines", "4": "hot", "5": "cool", "6": "jet", "7": "flag", "8": "cube" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Jérôme Boulanger. Latest update: 2013/05/29." }
      ]
    },
    {
      "name": "Perpendicular Lines", "lang": "en", "command": "samj_Lignes_Perpendiculaires", "command_preview": "samj_Lignes_Perpendiculaires", "parameters": [
      { "type": "link", "name": "https://samjcreations.blogspot.com", "url": "https://samjcreations.blogspot.com", "align": "center" },
      { "type": "note", "text": "<span foreground=\"orangered\">Lignes / Lines </span>" },
      { "type": "color", "name": "Couleur/Color", "default": "255,255,255,255", "pos": "1" },
      { "type": "int", "name": "Fréquence/Frequency", "default": "10", "min": "1", "max": "100", "pos": "5" },
      { "type": "int", "name": "Répétitions/Repeat", "default": "1", "min": "1", "max": "100", "pos": "6" },
      { "type": "int", "name": "Dilate", "default": "2", "min": "1", "max": "64", "pos": "7" },
      { "type": "int", "name": "Graine/Seed A", "default": "1234", "min": "1", "max": "65536", "pos": "8" },
      { "type": "int", "name": "Graine/Seed B", "default": "5678", "min": "1", "max": "65536", "pos": "9" },
      { "type": "note", "text": "<span foreground=\"orangered\">Mélange/Blend</span>" },
      { "type": "bool", "name": "Mélange Avec Image / Blend", "default": "0", "pos": "10" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "11", "choices": { "0": "add", "1": "alpha", "2": "and", "3": "average", "4": "blue", "5": "burn", "6": "darken", "7": "difference", "8": "divide", "9": "dodge", "10": "edges", "11": "exclusion", "12": "freeze", "13": "grainextract", "14": "grainmerge", "15": "green", "16": "hardlight", "17": "hardmix", "18": "hue", "19": "interpolation", "20": "lighten", "21": "lightness", "22": "linearburn", "23": "linearlight", "24": "luminance", "25": "multiply", "26": "negation", "27": "or", "28": "overlay", "29": "pinlight", "30": "red", "31": "reflect", "32": "saturation", "33": "seamless", "34": "seamless_mixed", "35": "screen", "36": "shapeareamax", "37": "shapeareamax0", "38": "shapeareamin", "39": "shapeareamin0", "40": "shapeaverage", "41": "shapeaverage0", "42": "shapemedian", "43": "shapemedian0", "44": "shapemin", "45": "shapemin0", "46": "shapemax", "47": "shapemax0", "48": "softburn", "49": "softdodge", "50": "softlight", "51": "stamp", "52": "subtract", "53": "value", "54": "vividlight", "55": "xor" } },
      { "type": "float", "name": "Opacité / Opacity", "default": "1", "min": "0", "max": "1", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2024/11/16." }
      ]
    },
    {
      "name": "Pills", "lang": "en", "command": "fx_pills", "command_preview": "fx_pills_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a pattern resembling pills or capsules. " },
      { "type": "separator" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "1", "choices": { "0": "Gray", "1": "RGB" } },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Gray Settings:</span>" },
      { "type": "float", "name": "Cycles", "default": "4", "min": "0", "max": "32", "pos": "2", "visibility": "2" },
      { "type": "float", "name": "Angle", "default": "0", "min": "0", "max": "360", "pos": "3", "visibility": "2" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Red Settings:</span>" },
      { "type": "float", "name": "Cycles", "default": "4", "min": "0", "max": "32", "pos": "4", "visibility": "0" },
      { "type": "float", "name": "Angle", "default": "0", "min": "0", "max": "360", "pos": "5", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Green Settings:</span>" },
      { "type": "float", "name": "Cycles", "default": "4", "min": "0", "max": "32", "pos": "6", "visibility": "0" },
      { "type": "float", "name": "Angle", "default": "0", "min": "0", "max": "360", "pos": "7", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Blue Settings:</span>" },
      { "type": "float", "name": "Cycles", "default": "4", "min": "0", "max": "32", "pos": "8", "visibility": "0" },
      { "type": "float", "name": "Angle", "default": "0", "min": "0", "max": "360", "pos": "9", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Note: This filter evaluates the awesome math formula proposed by Miloslav Číž (a.k.a. DrummyFish) on <a href=\"https://commons.wikimedia.org/wiki/File:2D_function_pills.png\">this Wikipedia page</a>. " },
      { "type": "separator" },
      { "type": "note", "text": "Authors: Miloslav Číž and David Tschumperlé.       Latest Update: 2022/11/08." }
      ]
    },
    {
      "name": "Plaid", "lang": "en", "command": "fx_plaid_texture", "command_preview": "fx_plaid_texture", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a tartan/plaid cloth pattern. " },
      { "type": "separator" },
      { "type": "float", "name": "Line", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "int", "name": "Number of Angles", "default": "2", "min": "1", "max": "8", "pos": "2" },
      { "type": "float", "name": "Starting Angle", "default": "0", "min": "0", "max": "360", "pos": "3" },
      { "type": "float", "name": "Angle Range", "default": "90", "min": "0", "max": "360", "pos": "4" },
      { "type": "float", "name": "Smoothness", "default": "1", "min": "0", "max": "5", "pos": "5" },
      { "type": "float", "name": "Sharpen", "default": "300", "min": "0", "max": "1000", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2011/05/16." }
      ]
    },
    {
      "name": "Points Aleatoires 001", "lang": "en", "command": "samj_Points_Aleatoires_001", "command_preview": "gui_no_preview", "parameters": [
      { "type": "separator" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Points</span>" },
      { "type": "int", "name": "Itérations", "default": "10", "min": "1", "max": "200", "pos": "1" },
      { "type": "color", "name": "Couleur Point", "default": "255,255,0,255", "pos": "2" },
      { "type": "choice", "name": "Mode", "default": "3", "pos": "6", "choices": { "0": "XY Aléatoire", "1": "X Aléatoire", "2": "Y Aléatoire", "3": "Cavalier", "4": "Fou", "5": "Tour", "6": "Reine" } },
      { "type": "bool", "name": "Couleurs Aléatoires", "default": "0", "pos": "7" },
      { "type": "bool", "name": "Continuité entre itérations", "default": "1", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Polka Dots", "lang": "en", "command": "fx_polka_dots", "command_preview": "fx_polka_dots", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a polka dot pattern. " },
      { "type": "separator" },
      { "type": "float", "name": "Size", "default": "80", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Density", "default": "20", "min": "0.1", "max": "100", "pos": "2" },
      { "type": "float", "name": "First Offset", "default": "50", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Second Offset", "default": "50", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Angle", "default": "0", "min": "0", "max": "180", "pos": "5" },
      { "type": "float", "name": "Aliasing", "default": "0.5", "min": "0.1", "max": "1", "pos": "6" },
      { "type": "float", "name": "Shading", "default": "0.1", "min": "0.1", "max": "1", "pos": "7" },
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "8" },
      { "type": "color", "name": "Color", "default": "255,0,0,255", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Pouring", "lang": "en", "command": "samj_pouring", "command_preview": "samj_pouring", "parameters": [
      { "type": "choice", "name": "1 - Orientation", "default": "0", "pos": "1", "choices": { "0": "-X", "1": "-Y", "2": "+X", "3": "+Y", "4": "-XY", "5": "-YX", "6": "+XY", "7": "+YX" } },
      { "type": "float", "name": "2 - Mélange/Mix A", "default": "1", "min": "0", "max": "2", "pos": "2" },
      { "type": "choice", "name": "3 - Mélange/Mix B", "default": "0", "pos": "3", "choices": { "0": "Forme A", "1": "Forme B", "2": "Forme C", "3": "Forme D", "4": "Forme E", "5": "Forme F" } },
      { "type": "float", "name": "4 - Couleurs/Colors", "default": "0", "min": "0", "max": "25", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2024/11/16." }
      ]
    },
    {
      "name": "Pseudo Vitrail", "lang": "en", "command": "samj_Pseudo_Vitrail", "command_preview": "samj_Pseudo_Vitrail", "parameters": [
      { "type": "separator" },
      { "type": "int", "name": "1 - Autoindex", "default": "0", "min": "0", "max": "1024", "pos": "1" },
      { "type": "int", "name": "2 - Densité/Density", "default": "40", "min": "1", "max": "100", "pos": "2" },
      { "type": "bool", "name": "3 - Voronoi", "default": "0", "pos": "3" },
      { "type": "float", "name": "4 - Détails", "default": "0", "min": "0", "max": "1", "pos": "4" },
      { "type": "int", "name": "5 - Grosseur Trait/Line Thickness", "default": "2", "min": "1", "max": "5", "pos": "5" },
      { "type": "color", "name": "6-7-8-9 Trait/Line", "default": "0,0,0,255", "pos": "6" },
      { "type": "bool", "name": "10 - Itération", "default": "0", "pos": "10" },
      { "type": "float", "name": "11 - Couleurs/Colors", "default": "0", "min": "-0.1", "max": "0.2", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2021/01/17." }
      ]
    },
    {
      "name": "Quickly create colorful patterns", "lang": "en", "command": "samj_Motifs_Rapides", "command_preview": "samj_Motifs_Rapides", "parameters": [
      { "type": "link", "name": "https://samjcreations.blogspot.com/2020/10/samuser-avec-gmic-gimp-filtre-quickly.html", "url": "https://samjcreations.blogspot.com/2020/10/samuser-avec-gmic-gimp-filtre-quickly.html", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Array</span>" },
      { "type": "int", "name": "Color", "default": "2345", "min": "0", "max": "65536", "pos": "1" },
      { "type": "note", "text": "Set dimension to 20 or very close for very large images." },
      { "type": "float", "name": "Dimension", "default": "19", "min": "0", "max": "20", "pos": "2" },
      { "type": "note", "text": "<span foreground=\"orangered\">Deform</span>" },
      { "type": "int", "name": "Seed", "default": "1234", "min": "1", "max": "65536", "pos": "3" },
      { "type": "int", "name": "Amplitude", "default": "30", "min": "0", "max": "1000", "pos": "4" },
      { "type": "note", "text": "<span foreground=\"orangered\">Tiles</span>" },
      { "type": "bool", "name": "Tiles", "default": "0", "pos": "5" },
      { "type": "int", "name": "Nb X Y Tiles", "default": "10", "min": "2", "max": "32", "pos": "6" },
      { "type": "note", "text": "<span foreground=\"orangered\">Spread</span>" },
      { "type": "int", "name": "Seed", "default": "1234", "min": "1", "max": "65536", "pos": "7" },
      { "type": "int", "name": "DxDy", "default": "0", "min": "0", "max": "100", "pos": "8" },
      { "type": "note", "text": "<span foreground=\"orangered\">Blur</span>" },
      { "type": "bool", "name": "Add Blur", "default": "0", "pos": "9" },
      { "type": "float", "name": "Blur", "default": "1", "min": "0", "max": "100", "pos": "10" },
      { "type": "note", "text": "<span foreground=\"orangered\">Dominant Color</span>" },
      { "type": "bool", "name": "Add A Dominant Color", "default": "0", "pos": "11" },
      { "type": "color", "name": "Color", "default": "255,170,0,128", "pos": "12" },
      { "type": "note", "text": "<span foreground=\"orangered\">Geometry</span>" },
      { "type": "bool", "name": "Symmetrize", "default": "0", "pos": "16" },
      { "type": "bool", "name": "Mirror X Y", "default": "0", "pos": "17" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2024/11/16." }
      ]
    },
    {
      "name": "Quickly Create Colorful Patterns B", "lang": "en", "command": "samj_Motifs_Rapides_B", "command_preview": "samj_Motifs_Rapides_B", "parameters": [
      { "type": "link", "name": "https://samjcreations.blogspot.com", "url": "https://samjcreations.blogspot.com", "align": "center" },
      { "type": "note", "text": "Pour créer rapidement des motifs sur des grosses images 7800*11400 - 13/19" },
      { "type": "note", "text": "To quickly create patterns on large images 7800*11400 - 13/19" },
      { "type": "note", "text": "<span foreground=\"orangered\">Fond/Background</span>" },
      { "type": "bool", "name": "Lignes Verticales/Vertical Lines", "default": "1", "pos": "1" },
      { "type": "int", "name": "Couleurs/Colors", "default": "1234", "min": "1", "max": "65536", "pos": "2" },
      { "type": "int", "name": "Épaisseur Des Lignes/Line Thickness", "default": "16", "min": "1", "max": "128", "pos": "3" },
      { "type": "note", "text": "<span foreground=\"orangered\">Bandes/Strips</span>" },
      { "type": "bool", "name": "Bandes/Strips", "default": "0", "pos": "4" },
      { "type": "int", "name": "Nb", "default": "8", "min": "2", "max": "16", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2024/16/11." }
      ]
    },
    {
      "name": "Random Color Ellipses", "lang": "en", "command": "fx_color_ellipses", "command_preview": "fx_color_ellipses", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Draws random colored ellipses over the image. " },
      { "type": "separator" },
      { "type": "int", "name": "Density", "default": "400", "min": "0", "max": "3000", "pos": "1" },
      { "type": "float", "name": "Radius", "default": "8", "min": "0", "max": "30", "pos": "2" },
      { "type": "float", "name": "Opacity", "default": "0.1", "min": "0.01", "max": "0.5", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Random Pattern", "lang": "en", "command": "fx_random_pattern", "command_preview": "fx_random_pattern_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a random noise-based pattern. " },
      { "type": "separator" },
      { "type": "int", "name": "Size", "default": "1024", "min": "16", "max": "8192", "pos": "1" },
      { "type": "float", "name": "Min Detail Level", "default": "2", "min": "0", "max": "20", "pos": "2" },
      { "type": "float", "name": "Seed", "default": "4038", "min": "0", "max": "100000", "pos": "3" },
      { "type": "button", "name": "Randomize Seed", "pos": "4" },
      { "type": "separator" },
      { "type": "float", "name": "Brightness (%)", "default": "0", "min": "-100", "max": "100", "pos": "5" },
      { "type": "float", "name": "Contrast (%)", "default": "0", "min": "-100", "max": "100", "pos": "6" },
      { "type": "float", "name": "Gamma (%)", "default": "0", "min": "-100", "max": "100", "pos": "7" },
      { "type": "float", "name": "Hue (%)", "default": "0", "min": "-100", "max": "100", "pos": "8" },
      { "type": "float", "name": "Saturation (%)", "default": "0", "min": "-100", "max": "100", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2020/10/08." }
      ]
    },
    {
      "name": "Random Pattern Courtepointe", "lang": "en", "command": "samj_Courtepointe", "command_preview": "gui_no_preview", "parameters": [
      { "type": "note", "text": "Motif au rendu aléatoire / Random Pattern" },
      { "type": "separator" },
      { "type": "int", "name": "Cossin 1 / Parameter 1", "default": "20", "min": "1", "max": "100", "pos": "1" },
      { "type": "bool", "name": "Cossin 2 / Parameter 2", "default": "0", "pos": "2" },
      { "type": "int", "name": "Répetition / Repeat", "default": "1", "min": "1", "max": "5", "pos": "3" },
      { "type": "bool", "name": "Croix / Cross", "default": "0", "pos": "4" },
      { "type": "bool", "name": "Texture", "default": "1", "pos": "5" },
      { "type": "choice", "name": "Courbes des couleurs /  Color Curves", "default": "0", "pos": "6", "choices": { "0": "RGB", "1": "CMY", "2": "CMYK", "3": "HSI", "4": "HSL", "5": "HSV", "6": "Lab", "7": "Lch", "8": "YCbCr" } },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Random Rectangles", "lang": "en", "command": "fx_random_rectangles", "command_preview": "fx_random_rectangles", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Subdivide image as a set of random-sized colored rectangles. " },
      { "type": "separator" },
      { "type": "float", "name": "Density (%)", "default": "10", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Consistency (%)", "default": "100", "min": "0", "max": "100", "pos": "2" },
      { "type": "int", "name": "Outline (px)", "default": "0", "min": "1", "max": "16", "pos": "3" },
      { "type": "color", "name": "Outline Color", "default": "0,0,0", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2023/02/05." }
      ]
    },
    {
      "name": "Rays", "lang": "en", "command": "jeje_rays", "command_preview": "jeje_rays_preview", "parameters": [
      { "type": "float", "name": "X Center", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Y Center", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Frequency", "default": "10", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Angle", "default": "0", "min": "0", "max": "360", "pos": "4" },
      { "type": "float", "name": "Proportion", "default": "0.5", "min": "0", "max": "1", "pos": "5" },
      { "type": "color", "name": "Color 1", "default": "255,0,0", "pos": "6" },
      { "type": "color", "name": "Color 2", "default": "255,255,0", "pos": "9" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "12", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Jérôme Boulanger. Latest update: 2023/07/13." }
      ]
    },
    {
      "name": "Rays Of Colors", "lang": "en", "command": "samj_Rays_Of_Colors", "command_preview": "samj_Rays_Of_Colors", "parameters": [
      { "type": "int", "name": "Color Intensity", "default": "300", "min": "1", "max": "1600", "pos": "1" },
      { "type": "int", "name": "Color Density", "default": "12", "min": "2", "max": "40", "pos": "2" },
      { "type": "float", "name": "Radius", "default": "40", "min": "0", "max": "400", "pos": "3" },
      { "type": "float", "name": "Border smoothness", "default": "16", "min": "0", "max": "200", "pos": "4" },
      { "type": "float", "name": "Border width", "default": "38", "min": "0", "max": "100", "pos": "5" },
      { "type": "bool", "name": "Merge Layers", "default": "1", "pos": "6" },
      { "type": "color", "name": "Background Color", "default": "0,0,0", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Latest update : 2020/10/24." }
      ]
    },
    {
      "name": "Reaction-Diffusion", "lang": "en", "command": "fx_reaction_diffusion", "command_preview": "fx_reaction_diffusion", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simulates a Turing reaction-diffusion pattern. " },
      { "type": "separator" },
      { "type": "int", "name": "Iterations", "default": "5", "min": "1", "max": "10", "pos": "1" },
      { "type": "float", "name": "Size", "default": "5", "min": "0", "max": "20", "pos": "2" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "3", "choices": { "0": "Monochrome", "1": "Monochrome + Alpha", "2": "RGB Colors", "3": "RGB Colors + Alpha" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2024/01/14." }
      ]
    },
    {
      "name": "Resynthetize Texture [FFT]", "lang": "en", "command": "syntexturize", "command_preview": "fx_syntexturize_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Resynthesizes a micro-texture at any size, using Fourier Transform. " },
      { "type": "separator" },
      { "type": "int", "name": "Width", "default": "1024", "min": "32", "max": "8192", "pos": "1" },
      { "type": "int", "name": "Height", "default": "1024", "min": "32", "max": "8192", "pos": "2" },
      { "type": "float", "name": "Equalize Light", "default": "0", "min": "0", "max": "100", "pos": "3" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "4", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "5", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Note: This filter tries to re-synthetize a micro-texture (given as the input image) onto an output (seamless) image with an arbitrary size. It uses a phase randomization technique, as described in:" },
      { "type": "link", "name": "Micro-Texture Synthesis by Phase Randomization", "url": "http://www.ipol.im/pub/art/2011/ggm_rpn/", "align": "center" },
      { "type": "note", "text": "This filter is based on the work of Bruno Galerne, Yann Gousseau and Jean-Michel Morel." },
      { "type": "separator" },
      { "type": "link", "name": "Click here for a detailed description of this filter.", "url": "http://gimpchat.com/viewtopic.php?f=28&t=10141", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Authors: David Tschumperlé and Jérome Boulanger.       Latest Update: 2014/04/09." }
      ]
    },
    {
      "name": "Resynthetize Texture [Patch-Based]", "lang": "en", "command": "syntexturize_matchpatch", "command_preview": "fx_syntexturize_matchpatch_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Resynthesizes a texture at any size, using a patch-based method. " },
      { "type": "separator" },
      { "type": "int", "name": "Width", "default": "512", "min": "32", "max": "8192", "pos": "1" },
      { "type": "int", "name": "Height", "default": "512", "min": "32", "max": "8192", "pos": "2" },
      { "type": "int", "name": "Number of Scales", "default": "0", "min": "0", "max": "16", "pos": "3" },
      { "type": "int", "name": "Patch Size", "default": "7", "min": "1", "max": "32", "pos": "4" },
      { "type": "int", "name": "Blending Size", "default": "5", "min": "1", "max": "24", "pos": "5" },
      { "type": "float", "name": "Precision", "default": "1", "min": "0", "max": "5", "pos": "6" },
      { "type": "float", "name": "Equalize Light", "default": "0", "min": "0", "max": "100", "pos": "7" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "8", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "9", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Note: This filter tries to re-synthetize an input texture image onto a bigger output image (with an arbitrary size). Beware, this filter is quite slow to compute!" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2015/10/22." }
      ]
    },
    {
      "name": "Rorschach", "lang": "en", "command": "fx_rorschach", "command_preview": "fx_rorschach", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a Rorschach inkblot test image. " },
      { "type": "separator" },
      { "type": "float", "name": "Scale", "default": "3", "min": "0", "max": "10", "pos": "1" },
      { "type": "choice", "name": "Mirror", "default": "1", "pos": "2", "choices": { "0": "None", "1": "X-Axis", "2": "Y-Axis", "3": "XY-Axes" } },
      { "type": "choice", "name": "Stencil Type", "default": "2", "pos": "3", "choices": { "0": "Black & White", "1": "RGB", "2": "Color" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2011/12/03." }
      ]
    },
    {
      "name": "Satin", "lang": "en", "command": "fx_satin", "command_preview": "fx_satin", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a smooth, satin-like folded fabric texture. " },
      { "type": "separator" },
      { "type": "int", "name": "Iterations", "default": "20", "min": "4", "max": "128", "pos": "1" },
      { "type": "float", "name": "Smoothness (%)", "default": "1", "min": "0", "max": "5", "pos": "2" },
      { "type": "int", "name": "Seed", "default": "0", "min": "0", "max": "65535", "pos": "3" },
      { "type": "separator" },
      { "type": "color", "name": "Dark Color", "default": "0,0,0,255", "pos": "4" },
      { "type": "color", "name": "Light Color", "default": "255,255,255,255", "pos": "8" },
      { "type": "bool", "name": "Stretch Contrast", "default": "0", "pos": "12" },
      { "type": "separator" },
      { "type": "float", "name": "Brightness (%)", "default": "0", "min": "-100", "max": "100", "pos": "13" },
      { "type": "float", "name": "Contrast (%)", "default": "0", "min": "-100", "max": "100", "pos": "14" },
      { "type": "float", "name": "Gamma (%)", "default": "-50", "min": "-100", "max": "100", "pos": "15" },
      { "type": "float", "name": "Hue (%)", "default": "0", "min": "-100", "max": "100", "pos": "16" },
      { "type": "float", "name": "Saturation (%)", "default": "0", "min": "-100", "max": "100", "pos": "17" },
      { "type": "separator" },
      { "type": "note", "text": "This filter has been inspired by <a href=\"https://fence-post.deviantart.com/art/Satin-Texture-in-GIMP-46937633\">this tutorial</a> from DeviantArt user fence-post." },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2017/11/27." }
      ]
    },
    {
      "name": "Seamless Deco", "lang": "en", "command": "fx_mad_rorscharchp", "command_preview": "fx_mad_rorscharchp", "parameters": [
      { "type": "float", "name": "Scale", "default": "3", "min": "0", "max": "15", "pos": "1" },
      { "type": "choice", "name": "Mixer", "default": "0", "pos": "2", "choices": { "0": "Average", "1": "Grain Extract", "2": "Vivid Edges", "3": "Difference", "4": "Exclusion", "5": "Negation" } },
      { "type": "separator" },
      { "type": "float", "name": "Line", "default": "50", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Smoothness", "default": "1", "min": "0", "max": "5", "pos": "4" },
      { "type": "float", "name": "Sharpen", "default": "300", "min": "0", "max": "1000", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Remix", "default": "0", "pos": "6", "choices": { "0": "Vivid Edges", "1": "Average", "2": "Difference", "3": "Negation", "4": "Dark Edges" } },
      { "type": "choice", "name": "PhotoComix Preset", "default": "0", "pos": "7", "choices": { "0": "Neat Merge", "1": "Lighty Smooth", "2": "Dream", "3": "Moody", "4": "Soft", "5": "Naif", "6": "Dark Boost", "7": "Whitening", "8": "None- Skip" } },
      { "type": "choice", "name": "Activate Mirror", "default": "0", "pos": "8", "choices": { "0": "No-Skip", "1": "XY Mirror", "2": "2XY Mirror" } },
      { "type": "separator" },
      { "type": "note", "text": "WARNING,'Expanding Mirrors' multiply image size of x4 or if '2XY Mirrors' x9" },
      { "type": "separator" },
      { "type": "bool", "name": "Expanding Mirrors", "default": "0", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Author: PhotoComix.      Latest update : 2011/13/11." }
      ]
    },
    {
      "name": "Seamless Turbulence", "lang": "en", "command": "fx_seamless_turbulence", "command_preview": "fx_seamless_turbulence", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a tileable turbulence noise pattern. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "15", "min": "0", "max": "30", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "20", "min": "0", "max": "40", "pos": "2" },
      { "type": "float", "name": "Orientation", "default": "0", "min": "0", "max": "180", "pos": "3" },
      { "type": "float", "name": "Deviation", "default": "1", "min": "0", "max": "1", "pos": "4" },
      { "type": "float", "name": "Contrast", "default": "3", "min": "0", "max": "4", "pos": "5" },
      { "type": "bool", "name": "Color Rendering", "default": "0", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/04/02." }
      ]
    },
    {
      "name": "Shock Waves", "lang": "en", "command": "fx_shockwaves", "command_preview": "", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a pattern of interfering shock waves. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "10", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Low Frequency", "default": "10", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Frequency Range", "default": "20", "min": "0", "max": "100", "pos": "3" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "4", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2014/12/01." }
      ]
    },
    {
      "name": "Soft Random Shades", "lang": "en", "command": "samj_Soft_Random_Shades", "command_preview": "samj_Soft_Random_Shades", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">samj_Soft_Random_Shades</span>" },
      { "type": "color", "name": "Background Color", "default": "140,120,220,255", "pos": "1" },
      { "type": "int", "name": "Variation A", "default": "0", "min": "0", "max": "4", "pos": "5" },
      { "type": "int", "name": "Variation B", "default": "20", "min": "20", "max": "120", "pos": "6" },
      { "type": "float", "name": "Variation C", "default": "0", "min": "0", "max": "0.25", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Latest update : 2024/11/16." }
      ]
    },
    {
      "name": "Sponge", "lang": "en", "command": "fx_sponge", "command_preview": "fx_sponge", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a sponge-like porous texture. " },
      { "type": "separator" },
      { "type": "int", "name": "Size", "default": "13", "min": "3", "max": "21", "pos": "1" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "2", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Stained Glass", "lang": "en", "command": "fx_stained_glass", "command_preview": "fx_stained_glass", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Simulates a stained glass window. " },
      { "type": "separator" },
      { "type": "float", "name": "Edges (%)", "default": "40", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Shading", "default": "0.1", "min": "0", "max": "0.5", "pos": "2" },
      { "type": "bool", "name": "Thin Separators", "default": "0", "pos": "3" },
      { "type": "separator" },
      { "type": "bool", "name": "Equalize", "default": "1", "pos": "4" },
      { "type": "float", "name": "Colors", "default": "1", "min": "0", "max": "3", "pos": "5" },
      { "type": "float", "name": "Brightness (%)", "default": "0", "min": "-100", "max": "100", "pos": "6" },
      { "type": "float", "name": "Contrast (%)", "default": "0", "min": "-100", "max": "100", "pos": "7" },
      { "type": "float", "name": "Gamma (%)", "default": "0", "min": "-100", "max": "100", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2011/03/18." }
      ]
    },
    {
      "name": "Stars", "lang": "en", "command": "fx_stars", "command_preview": "fx_stars", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Overlay a set of randomly located stars. " },
      { "type": "separator" },
      { "type": "float", "name": "Density", "default": "10", "min": "0", "max": "200", "pos": "1" },
      { "type": "float", "name": "Depth", "default": "0", "min": "0", "max": "5", "pos": "2" },
      { "type": "int", "name": "Size", "default": "32", "min": "8", "max": "128", "pos": "3" },
      { "type": "int", "name": "Branches", "default": "5", "min": "3", "max": "16", "pos": "4" },
      { "type": "float", "name": "Thickness", "default": "0.38", "min": "0.1", "max": "1", "pos": "5" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "6" },
      { "type": "color", "name": "Color", "default": "255,255,100,200", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2012/10/01." }
      ]
    },
    {
      "name": "Stencil", "lang": "en", "command": "fx_stencil", "command_preview": "fx_stencil", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Creates a two-tone stencil pattern. " },
      { "type": "separator" },
      { "type": "float", "name": "Radius", "default": "3", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "30", "pos": "2" },
      { "type": "int", "name": "Iterations", "default": "8", "min": "1", "max": "100", "pos": "3" },
      { "type": "float", "name": "Aliasing", "default": "0", "min": "0", "max": "5", "pos": "4" },
      { "type": "choice", "name": "Stencil Type", "default": "2", "pos": "5", "choices": { "0": "Black & White", "1": "RGB", "2": "Color" } },
      { "type": "bool", "name": "Transparency", "default": "0", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Steps V2", "lang": "en", "command": "samj_Steps_V2", "command_preview": "samj_Steps_V2", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Background</span>" },
      { "type": "int", "name": "Pixelise X", "default": "10", "min": "1", "max": "256", "pos": "1" },
      { "type": "int", "name": "Pixelise X", "default": "10", "min": "1", "max": "256", "pos": "2" },
      { "type": "int", "name": "Area", "default": "4", "min": "1", "max": "16", "pos": "3" },
      { "type": "bool", "name": "Area IHC", "default": "1", "pos": "4" },
      { "type": "int", "name": "Isophotes", "default": "10", "min": "1", "max": "127", "pos": "5" },
      { "type": "int", "name": "Dilate Circle", "default": "2", "min": "1", "max": "5", "pos": "6" },
      { "type": "float", "name": "Smoothness", "default": "60", "min": "0", "max": "100", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Background</span>" },
      { "type": "bool", "name": "Background", "default": "0", "pos": "8" },
      { "type": "float", "name": "Color", "default": "1.1", "min": "1", "max": "1.2", "pos": "9" },
      { "type": "int", "name": "Variation", "default": "10", "min": "5", "max": "200", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Update : 2024/11/16." }
      ]
    },
    {
      "name": "Strip", "lang": "en", "command": "jeje_strip", "command_preview": "jeje_strip_preview", "parameters": [
      { "type": "float", "name": "Angle", "default": "45", "min": "0", "max": "90", "pos": "1" },
      { "type": "float", "name": "Frequency", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Phase", "default": "0", "min": "0", "max": "180", "pos": "3" },
      { "type": "float", "name": "Amplitude", "default": "1", "min": "0", "max": "2", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "5", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Jérôme Boulanger. Latest update: 2013/06/07." }
      ]
    },
    {
      "name": "Stripes", "lang": "en", "command": "fx_stripes", "command_preview": "fx_stripes_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates diagonal or straight stripes. " },
      { "type": "separator" },
      { "type": "float", "name": "Angle (deg.)", "default": "0", "min": "-180", "max": "180", "pos": "1" },
      { "type": "choice", "name": "Number of sections", "default": "1", "pos": "2", "choices": { "0": "One", "1": "Two", "2": "Three", "3": "Four", "4": "Five" } },
      { "type": "choice", "name": "Alignment", "default": "1", "pos": "3", "choices": { "0": "Top / Left", "1": "Center", "2": "Bottom / Right" } },
      { "type": "choice", "name": "Projection", "default": "0", "pos": "4", "choices": { "0": "Rectangular", "1": "Concentric", "2": "Rays" } },
      { "type": "bool", "name": "Anti-Aliasing", "default": "1", "pos": "5" },
      { "type": "int", "name": "Outline Size (px)", "default": "0", "min": "0", "max": "16", "pos": "6" },
      { "type": "color", "name": "Outline Color", "default": "0,0,0,255", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Section #1:</span>" },
      { "type": "int", "name": "Size (px)", "default": "32", "min": "0", "max": "512", "pos": "11" },
      { "type": "color", "name": "Color", "default": "255,255,0,255", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Section #2:</span>" },
      { "type": "int", "name": "Size (px)", "default": "32", "min": "0", "max": "512", "pos": "16", "visibility": "2" },
      { "type": "color", "name": "Color", "default": "255,0,0,255", "pos": "17" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Section #3:</span>" },
      { "type": "int", "name": "Size (px)", "default": "32", "min": "0", "max": "512", "pos": "21", "visibility": "1" },
      { "type": "color", "name": "Color", "default": "0,196,0,255", "pos": "22", "visibility": "1" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Section #4:</span>" },
      { "type": "int", "name": "Size (px)", "default": "32", "min": "0", "max": "512", "pos": "26", "visibility": "1" },
      { "type": "color", "name": "Color", "default": "0,128,196,255", "pos": "27", "visibility": "1" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Section #5:</span>" },
      { "type": "int", "name": "Size (px)", "default": "32", "min": "0", "max": "512", "pos": "31", "visibility": "1" },
      { "type": "color", "name": "Color", "default": "128,0,196,255", "pos": "32", "visibility": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2024/12/19." }
      ]
    },
    {
      "name": "Tetris", "lang": "en", "command": "fx_tetris", "command_preview": "fx_tetris", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a pattern of Tetris blocks. " },
      { "type": "separator" },
      { "type": "int", "name": "Scale", "default": "10", "min": "1", "max": "20", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Tissu Fond Flou", "lang": "en", "command": "samj_Tissu_Fond_Flou", "command_preview": "samj_Tissu_Fond_Flou_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Capture Ligne</span>" },
      { "type": "float", "name": "X Origine", "default": "0", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Y Origine", "default": "0", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "X Fin", "default": "100", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Y Fin", "default": "100", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Déplacement A", "default": "0", "min": "0", "max": "100", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Tissu</span>" },
      { "type": "bool", "name": "Tissu", "default": "1", "pos": "6" },
      { "type": "choice", "name": "Forme", "default": "0", "pos": "7", "choices": { "0": "A", "1": "B", "2": "C", "3": "D" } },
      { "type": "float", "name": "Blend 0pacity", "default": "1", "min": "0", "max": "1", "pos": "8" },
      { "type": "bool", "name": "Inversion Calques Blend", "default": "0", "pos": "9" },
      { "type": "float", "name": "Angle Rotation", "default": "0", "min": "0", "max": "360", "pos": "10" },
      { "type": "float", "name": "Déplacement B", "default": "0", "min": "0", "max": "100", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Flou/Blur</span>" },
      { "type": "float", "name": "Flou/Blur", "default": "0", "min": "0", "max": "1", "pos": "12" },
      { "type": "choice", "name": "Coeff. Flou", "default": "0", "pos": "13", "choices": { "0": "Flou/Blur *1", "1": "Flou/Blur *10", "2": "Flou/Blur *100", "3": "Flou/Blur *1000" } },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2024/11/16." }
      ]
    },
    {
      "name": "Triangular Pattern", "lang": "en", "command": "fx_triangular_pattern", "command_preview": "fx_triangular_pattern", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a random pattern made of triangles. " },
      { "type": "separator" },
      { "type": "int", "name": "Random Seed", "default": "43", "min": "0", "max": "65535", "pos": "1" },
      { "type": "separator" },
      { "type": "int", "name": "Depth", "default": "7", "min": "0", "max": "16", "pos": "2" },
      { "type": "int", "name": "Split Type-1", "default": "4", "min": "0", "max": "20", "pos": "3" },
      { "type": "int", "name": "Split Type-2", "default": "4", "min": "0", "max": "20", "pos": "4" },
      { "type": "int", "name": "Split Type-3", "default": "4", "min": "0", "max": "20", "pos": "5" },
      { "type": "int", "name": "Split Type-4", "default": "0", "min": "0", "max": "20", "pos": "6" },
      { "type": "int", "name": "Split Type-5", "default": "0", "min": "0", "max": "20", "pos": "7" },
      { "type": "float", "name": "Holes Probability (Type-5) (%)", "default": "0", "min": "0", "max": "100", "pos": "8" },
      { "type": "separator" },
      { "type": "float", "name": "Filling opacity (%)", "default": "100", "min": "0", "max": "100", "pos": "9" },
      { "type": "color", "name": "Outline Color", "default": "0,0,0,160", "pos": "10" },
      { "type": "choice", "name": "Anti-aliasing", "default": "1", "pos": "14", "choices": { "0": "None", "1": "x1.5", "2": "x2", "3": "x3", "4": "x4" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2021/09/29." }
      ]
    },
    {
      "name": "Truchet", "lang": "en", "command": "fx_truchet", "command_preview": "fx_truchet", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a Truchet tiling pattern. " },
      { "type": "separator" },
      { "type": "int", "name": "Scale", "default": "32", "min": "1", "max": "256", "pos": "1" },
      { "type": "int", "name": "Radius", "default": "5", "min": "1", "max": "64", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "1", "min": "0", "max": "10", "pos": "3" },
      { "type": "choice", "name": "Type", "default": "1", "pos": "4", "choices": { "0": "Straight", "1": "Curved" } },
      { "type": "choice", "name": "Color", "default": "0", "pos": "5", "choices": { "0": "White on Black", "1": "Black on White", "2": "White on Transparent", "3": "Black on Transparent", "4": "Transparent on White", "5": "Transparent on Black", "6": "Random" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2011/10/26." }
      ]
    },
    {
      "name": "Turing", "lang": "en", "command": "jeje_turing_pattern", "command_preview": "gui_no_preview", "parameters": [
      { "type": "float", "name": "Scale", "default": "1", "min": "0", "max": "1", "pos": "1" },
      { "type": "int", "name": "Iterations", "default": "2000", "min": "1", "max": "10000", "pos": "2" },
      { "type": "float", "name": "Time Step", "default": ".1", "min": ".01", "max": "1", "pos": "3" },
      { "type": "float", "name": "Alpha", "default": ".899", "min": "0", "max": "2", "pos": "4" },
      { "type": "float", "name": "Beta", "default": "-.91", "min": "-2", "max": "2", "pos": "5" },
      { "type": "float", "name": "Q", "default": "2", "min": "0", "max": "3", "pos": "6" },
      { "type": "float", "name": "R", "default": ".1", "min": "0", "max": "3", "pos": "7" },
      { "type": "float", "name": "Diffusivity", "default": ".25", "min": ".01", "max": ".6", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Generate turing pattern using a system of coupled reaction/diffusion equations. The patterns can change from line to spots like structures depending on the parameters. You may use the 'Stencil' filter to achieve similar effects. http://en.wikipedia.org/wiki/The_Chemical_Basis_of_Morphogenesis" },
      { "type": "note", "text": "Since the computation is long there is no preview. " },
      { "type": "separator" },
      { "type": "note", "text": "Author : Jérôme Boulanger. Latest update: 2015/01/16." }
      ]
    },
    {
      "name": "Variation Stained Glass", "lang": "en", "command": "samj_Variation_Stained_Glass", "command_preview": "samj_Variation_Stained_Glass", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Colored Outlines</span>" },
      { "type": "choice", "name": "Axes", "default": "0", "pos": "1", "choices": { "0": "XY", "1": "X", "2": "Y" } },
      { "type": "float", "name": "Blur", "default": "2", "min": "0", "max": "10", "pos": "2" },
      { "type": "float", "name": "Isophote", "default": "8", "min": "6", "max": "16", "pos": "3" },
      { "type": "int", "name": "Smooth", "default": "0", "min": "0", "max": "100", "pos": "4" },
      { "type": "int", "name": "Dilate", "default": "3", "min": "1", "max": "16", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Stained Glass</span>" },
      { "type": "float", "name": "Edges", "default": "40", "min": "0", "max": "100", "pos": "6" },
      { "type": "int", "name": "Shading", "default": "100", "min": "0", "max": "200", "pos": "7" },
      { "type": "bool", "name": "Is Precise", "default": "0", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Background</span>" },
      { "type": "float", "name": "Color", "default": "1.1", "min": "1", "max": "1.2", "pos": "9" },
      { "type": "int", "name": "Variation", "default": "20", "min": "10", "max": "200", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2024/11/16." }
      ]
    },
    {
      "name": "Voronoi", "lang": "en", "command": "fx_voronoi", "command_preview": "fx_voronoi_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a Voronoi diagram pattern. " },
      { "type": "separator" },
      { "type": "float", "name": "Threshold", "default": "160", "min": "0", "max": "255", "pos": "1" },
      { "type": "choice", "name": "Threshold on", "default": "1", "pos": "2", "choices": { "0": "Pixel values", "1": "Gradient values" } },
      { "type": "float", "name": "Smoothness", "default": "0.5", "min": "0", "max": "10", "pos": "3" },
      { "type": "float", "name": "Subsampling (%)", "default": "50", "min": "0", "max": "100", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "Flat color", "default": "3", "pos": "5", "choices": { "0": "Black", "1": "White", "2": "Transparent", "3": "Image" } },
      { "type": "int", "name": "Outline thickness", "default": "1", "min": "0", "max": "8", "pos": "6" },
      { "type": "color", "name": "Outline color", "default": "0,0,0,100", "pos": "7" },
      { "type": "int", "name": "Centers radius", "default": "2", "min": "0", "max": "10", "pos": "11" },
      { "type": "color", "name": "Centers color", "default": "255,255,255,40", "pos": "12" },
      { "type": "separator" },
      { "type": "choice", "name": "Anti-aliasing", "default": "1", "pos": "16", "choices": { "0": "x1 (none)", "1": "x1.5", "2": "x2", "3": "x2.5" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2020/04/30." }
      ]
    },
    {
      "name": "Weave", "lang": "en", "command": "weave", "command_preview": "weave", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a woven fabric pattern. " },
      { "type": "separator" },
      { "type": "int", "name": "Density", "default": "6", "min": "1", "max": "32", "pos": "1" },
      { "type": "float", "name": "Thickness", "default": "65", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Shadow", "default": "0", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Shading", "default": "0.5", "min": "0", "max": "3", "pos": "4" },
      { "type": "float", "name": "Fibers Amplitude", "default": "0", "min": "0", "max": "255", "pos": "5" },
      { "type": "float", "name": "Fibers Smoothness", "default": "0", "min": "0", "max": "10", "pos": "6" },
      { "type": "choice", "name": "Angle", "default": "0", "pos": "7", "choices": { "0": "0 deg.", "1": "22.5 deg.", "2": "45 deg.", "3": "67.5 deg." } },
      { "type": "float", "name": "X-Curvature", "default": "0", "min": "-1", "max": "1", "pos": "8" },
      { "type": "float", "name": "Y-Curvature", "default": "0", "min": "-1", "max": "1", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/01/18." }
      ]
    },
    {
      "name": "Whirl Drawing", "lang": "en", "command": "fx_draw_whirl", "command_preview": "fx_draw_whirl", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Overlay a pattern using whirling strokes. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "20", "min": "0", "max": "100", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Whirls", "lang": "en", "command": "fx_whirls", "command_preview": "fx_whirls", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Overlay a pattern of random whirls. " },
      { "type": "separator" },
      { "type": "int", "name": "Density", "default": "7", "min": "3", "max": "20", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "2", "min": "0", "max": "10", "pos": "2" },
      { "type": "float", "name": "Darkness", "default": "0.2", "min": "0", "max": "1", "pos": "3" },
      { "type": "float", "name": "Lightness", "default": "1.8", "min": "1", "max": "3", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "5", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    }
    ]
  },
  {
    "name": "PhotoComix", "filters": [
    {
      "name": "B&W Steampunk Pencil", "lang": "en", "command": "fx_steampen", "command_preview": "fx_steampen_preview", "parameters": [
      { "type": "separator" },
      { "type": "float", "name": "Radius", "default": "0.95", "min": "0", "max": "4", "pos": "1" },
      { "type": "float", "name": "Amplitude", "default": "14", "min": "0", "max": "200", "pos": "2" },
      { "type": "int", "name": "Iterations", "default": "2", "min": "1", "max": "20", "pos": "3" },
      { "type": "int", "name": "Steam Pressure", "default": "2", "min": "1", "max": "30", "pos": "4" },
      { "type": "float", "name": "Lubrication", "default": "0.9", "min": "0", "max": "1.9", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Contrast FX", "default": "0", "pos": "6", "choices": { "0": "None-Skip", "1": "L Normalization", "2": "Mask", "3": "Boost", "4": "Fast Tone Map" } },
      { "type": "bool", "name": "Equalize", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "For a more 'painted' effect" },
      { "type": "bool", "name": "Add Painter's Touch", "default": "0", "pos": "8" },
      { "type": "note", "text": "If unchecked the 3 sliders below are disabled" },
      { "type": "separator" },
      { "type": "float", "name": "Painter's Touch Sharpness", "default": "0.5", "min": "0", "max": "2", "pos": "9" },
      { "type": "float", "name": "Painter's Edge Protection Flow", "default": "0.75", "min": "0", "max": "1", "pos": "10" },
      { "type": "float", "name": "Painter's Smoothness", "default": "0.48", "min": "0", "max": "10", "pos": "11" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "12", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: PhotoComiX.      Last update : 2011/6/29 ." }
      ]
    },
    {
      "name": "Black Crayon Graffiti", "lang": "en", "command": "fx_crayongraffiti2", "command_preview": "fx_crayongraffiti2_preview", "parameters": [
      { "type": "float", "name": "Amplitude", "default": "300", "min": "0", "max": "4000", "pos": "1" },
      { "type": "float", "name": "Density", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "1", "min": "0", "max": "10", "pos": "3" },
      { "type": "float", "name": "Opacity", "default": "0.4", "min": "0", "max": "1", "pos": "4" },
      { "type": "float", "name": "Edge", "default": "12", "min": "0", "max": "50", "pos": "5" },
      { "type": "bool", "name": "Fast Approximation", "default": "1", "pos": "6" },
      { "type": "float", "name": "Color Smoothness", "default": "2", "min": "1", "max": "30", "pos": "7" },
      { "type": "choice", "name": "Mixer Style", "default": "2", "pos": "8", "choices": { "0": "Lightness", "1": "Value", "2": "Color Doping" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "9", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: PhotoComiX.      Latest update : 2011/07/12." }
      ]
    },
    {
      "name": "Boost Screen", "lang": "en", "command": "fx_compose_boostscreen", "command_preview": "fx_compose_boostscreen", "parameters": [
      { "type": "float", "name": "Opacity", "default": "0.7", "min": "0", "max": "1", "pos": "1" },
      { "type": "bool", "name": "Revert Layers", "default": "0", "pos": "2" },
      { "type": "float", "name": "Opacity 2", "default": "0.7", "min": "0", "max": "1", "pos": "3" },
      { "type": "note", "text": "This filter needs two layers to work properly. Set the Input layers option to handle multiple input layers." },
      { "type": "separator" },
      { "type": "note", "text": "Author: PhotoComiX.      Latest update : 2011/13/11." }
      ]
    },
    {
      "name": "Color Doping", "lang": "en", "command": "fx_compose_colordoping", "command_preview": "fx_compose_colordoping", "parameters": [
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "1" },
      { "type": "bool", "name": "Revert Layers", "default": "0", "pos": "2" },
      { "type": "note", "text": "This filter needs two layers to work properly. Set the Input layers option to handle multiple input layers." },
      { "type": "separator" },
      { "type": "note", "text": "Author: PhotoComiX.      Latest update : 2011/13/11." }
      ]
    },
    {
      "name": "Color Sketch", "lang": "en", "command": "fx_colorsketchbw", "command_preview": "fx_colorsketchbw_preview", "parameters": [
      { "type": "float", "name": "Amplitude", "default": "300", "min": "0", "max": "4000", "pos": "1" },
      { "type": "float", "name": "Density", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "1", "min": "0", "max": "10", "pos": "3" },
      { "type": "float", "name": "Opacity", "default": "0.1", "min": "0", "max": "1", "pos": "4" },
      { "type": "float", "name": "Edge", "default": "20", "min": "0", "max": "100", "pos": "5" },
      { "type": "bool", "name": "Fast Approximation", "default": "1", "pos": "6" },
      { "type": "bool", "name": "Negative", "default": "0", "pos": "7" },
      { "type": "int", "name": "Quantize Colors", "default": "20", "min": "2", "max": "255", "pos": "8" },
      { "type": "float", "name": "Color Smoothness", "default": "2", "min": "0.50", "max": "30", "pos": "9" },
      { "type": "choice", "name": "Mixer Mode", "default": "0", "pos": "10", "choices": { "0": "Color Doping", "1": "Darken", "2": "Hard Light", "3": "Grain Merge", "4": "Lightness", "5": "Multiply", "6": "Value" } },
      { "type": "float", "name": "Color Intensity", "default": "1", "min": "0", "max": "1", "pos": "11" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "12", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: PhotoComiX.      Latest update : 2010/29/12." }
      ]
    },
    {
      "name": "Color Stamp", "lang": "en", "command": "fx_colorstamp", "command_preview": "fx_colorstamp_preview", "parameters": [
      { "type": "note", "text": "BW module,analog to Stamp filter" },
      { "type": "separator" },
      { "type": "bool", "name": "Auto-Threshold", "default": "1", "pos": "1" },
      { "type": "int", "name": "Threshold", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Color module" },
      { "type": "bool", "name": "Activate Color Module", "default": "1", "pos": "3" },
      { "type": "int", "name": "Quantize Colors", "default": "20", "min": "2", "max": "255", "pos": "4" },
      { "type": "float", "name": "Color Smoothness", "default": "2", "min": "0", "max": "20", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "6", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Authors: PhotoComiX , Antaron, Mahvin, David Tschumperlé.             Latest update : 2011/17/05." }
      ]
    },
    {
      "name": "Comix Colors", "lang": "en", "command": "fx_compose_comix_color", "command_preview": "fx_compose_comix_color", "parameters": [
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "1" },
      { "type": "bool", "name": "Revert Layers", "default": "0", "pos": "2" },
      { "type": "float", "name": "Opacity 2", "default": "1", "min": "0", "max": "1", "pos": "3" },
      { "type": "note", "text": "This filter needs two layers to work properly. Set the Input layers option to handle multiple input layers." },
      { "type": "separator" },
      { "type": "note", "text": "Author: PhotoComiX.      Latest update : 2011/13/11." }
      ]
    },
    {
      "name": "Contrast Swiss Mask", "lang": "en", "command": "fx_contrast_swm", "command_preview": "fx_contrast_swm", "parameters": [
      { "type": "separator" },
      { "type": "float", "name": "Blur the Mask", "default": "2", "min": "0.5", "max": "10", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Contrast Mask need the negative of the mask" },
      { "type": "bool", "name": "Skip to Use the Mask to Boost", "default": "0", "pos": "2" },
      { "type": "note", "text": "Uncheck for Contrast Mask,Check for Contrast Boost" },
      { "type": "separator" },
      { "type": "note", "text": "Merge the Mask" },
      { "type": "float", "name": "Intensity", "default": "1", "min": "0", "max": "1", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Author: PhotoComiX.      Latest Update: 2011/01/01." },
      { "type": "link", "name": "Filter explained here", "url": "http://www.gimpchat.com/viewtopic.php?f=9&t=864", "align": "center" }
      ]
    },
    {
      "name": "Dark Edges", "lang": "en", "command": "fx_compose_darkedges", "command_preview": "fx_compose_darkedges", "parameters": [
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "1" },
      { "type": "float", "name": "Edges Smoothness", "default": "0.5", "min": "0", "max": "5", "pos": "2" },
      { "type": "bool", "name": "Revert Layers", "default": "0", "pos": "3" },
      { "type": "float", "name": "Opacity 2", "default": "0.7", "min": "0", "max": "1", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: PhotoComiX.      Latest update : 2011/13/11." }
      ]
    },
    {
      "name": "Dark Screen", "lang": "en", "command": "fx_compose_darkscreen", "command_preview": "fx_compose_darkscreen", "parameters": [
      { "type": "float", "name": "Opacity", "default": "0.7", "min": "0", "max": "1", "pos": "1" },
      { "type": "bool", "name": "Revert Layers", "default": "0", "pos": "2" },
      { "type": "float", "name": "Opacity 2", "default": "0.7", "min": "0", "max": "1", "pos": "3" },
      { "type": "note", "text": "This filter needs two layers to work properly. Set the Input layers option to handle multiple input layers." },
      { "type": "separator" },
      { "type": "note", "text": "Author: PhotoComiX.      Latest update : 2011/13/11." }
      ]
    },
    {
      "name": "Graphic Boost-Old", "lang": "en", "command": "fx_graphic_boost", "command_preview": "fx_graphic_boost_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Unsharp Mask controls" },
      { "type": "float", "name": "Radius", "default": "1.25", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "Darken", "default": "2", "min": "0", "max": "10", "pos": "2" },
      { "type": "separator" },
      { "type": "bool", "name": "Skip Others Steps", "default": "0", "pos": "3" },
      { "type": "note", "text": "Check for visual control, UNcheck to reactivate the other controls" },
      { "type": "separator" },
      { "type": "separator" },
      { "type": "note", "text": "BW_Pencil Controls" },
      { "type": "float", "name": "Pencil Size", "default": "0.15", "min": "0", "max": "4", "pos": "4" },
      { "type": "float", "name": "Pencil Amplitude", "default": "14", "min": "0", "max": "200", "pos": "5" },
      { "type": "separator" },
      { "type": "bool", "name": "Skip Others Steps", "default": "0", "pos": "6" },
      { "type": "separator" },
      { "type": "separator" },
      { "type": "bool", "name": "Activate 'Pencil Smoother'", "default": "1", "pos": "7" },
      { "type": "note", "text": "If unchecked the 3 sliders below are disabled" },
      { "type": "float", "name": "Pencil Smoother Sharpness", "default": "0.5", "min": "0", "max": "2", "pos": "8" },
      { "type": "float", "name": "Pencil Smoother Edge Protection", "default": "0.45", "min": "0", "max": "1", "pos": "9" },
      { "type": "float", "name": "Pencil Smoother Smoothness", "default": "2", "min": "0", "max": "10", "pos": "10" },
      { "type": "separator" },
      { "type": "bool", "name": "Skip Others Steps", "default": "0", "pos": "11" },
      { "type": "separator" },
      { "type": "separator" },
      { "type": "note", "text": "Merging Options" },
      { "type": "bool", "name": "Swap Layers", "default": "1", "pos": "12" },
      { "type": "note", "text": "'Swap' change the effect of Merging and Intensity" },
      { "type": "choice", "name": "Merging Option", "default": "0", "pos": "13", "choices": { "0": "Hard Light", "1": "Grain Merge", "2": "Multiply", "3": "Color Burn", "4": "Overlay", "5": "Value", "6": "Darken", "7": "Stamp" } },
      { "type": "float", "name": "Intensity", "default": "1", "min": "0", "max": "1", "pos": "14" },
      { "type": "separator" },
      { "type": "bool", "name": "Add Painter's Touch", "default": "1", "pos": "15" },
      { "type": "note", "text": "If unchecked the 3 sliders below are disabled" },
      { "type": "separator" },
      { "type": "float", "name": "Painter's Touch Sharpness", "default": "0.5", "min": "0", "max": "2", "pos": "16" },
      { "type": "float", "name": "Painter's Edge Protection Flow", "default": "0.45", "min": "0", "max": "1", "pos": "17" },
      { "type": "float", "name": "Painter's Smoothness", "default": "1", "min": "0", "max": "10", "pos": "18" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "19", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: PhotoComiX.      Latest update : 2011/10/01." },
      { "type": "link", "name": "Filter explained here", "url": "http://www.gimpchat.com/viewtopic.php?f=9&t=775", "align": "center" }
      ]
    },
    {
      "name": "Graphic Colors", "lang": "en", "command": "fx_compose_graphicolor", "command_preview": "fx_compose_graphicolor", "parameters": [
      { "type": "float", "name": "Opacity", "default": "0.6", "min": "0", "max": "1", "pos": "1" },
      { "type": "bool", "name": "Revert Layers", "default": "0", "pos": "2" },
      { "type": "float", "name": "Opacity 2", "default": "0.8", "min": "0", "max": "1", "pos": "3" },
      { "type": "note", "text": "This filter needs two layers to work properly. Set the Input layers option to handle multiple input layers." },
      { "type": "separator" },
      { "type": "note", "text": "Author: PhotoComiX.      Latest update : 2011/13/11." }
      ]
    },
    {
      "name": "Graphic Novel-Old", "lang": "en", "command": "fx_novelfx", "command_preview": "fx_novelfx_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Apply Local Normalization" },
      { "type": "bool", "name": "Skip This Step", "default": "0", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Local Normalization Controls" },
      { "type": "float", "name": "LN Amplititude", "default": "2", "min": "0", "max": "60", "pos": "2" },
      { "type": "float", "name": "LN Size", "default": "6", "min": "0", "max": "64", "pos": "3" },
      { "type": "float", "name": "LN Neightborhood-Smoothness", "default": "5", "min": "0", "max": "40", "pos": "4" },
      { "type": "float", "name": "LN Average-Smoothness", "default": "20", "min": "0", "max": "40", "pos": "5" },
      { "type": "separator" },
      { "type": "bool", "name": "Skip All Other Steps", "default": "0", "pos": "6" },
      { "type": "separator" },
      { "type": "separator" },
      { "type": "note", "text": "Pencil Options" },
      { "type": "float", "name": "Pencil Size", "default": "0.62", "min": "0", "max": "4", "pos": "7" },
      { "type": "float", "name": "Pencil Amplitude", "default": "14", "min": "0", "max": "200", "pos": "8" },
      { "type": "separator" },
      { "type": "bool", "name": "Skip All Other Steps", "default": "0", "pos": "9" },
      { "type": "separator" },
      { "type": "separator" },
      { "type": "bool", "name": "Activate 'Pencil Smoother'", "default": "1", "pos": "10" },
      { "type": "note", "text": "If unchecked the 3 sliders below are disabled" },
      { "type": "separator" },
      { "type": "float", "name": "Pencil Smoother Sharpness", "default": "0.5", "min": "0", "max": "2", "pos": "11" },
      { "type": "float", "name": "Pencil Smoother Edge Protection", "default": "0.78", "min": "0", "max": "1", "pos": "12" },
      { "type": "float", "name": "Pencil Smoother Smoothness", "default": "1.92", "min": "0", "max": "10", "pos": "13" },
      { "type": "separator" },
      { "type": "bool", "name": "Skip All Other Steps", "default": "0", "pos": "14" },
      { "type": "separator" },
      { "type": "separator" },
      { "type": "note", "text": "Boost Merging Options" },
      { "type": "bool", "name": "Swap Layers", "default": "0", "pos": "15" },
      { "type": "choice", "name": "Boost Merging Option", "default": "0", "pos": "16", "choices": { "0": "Overlay", "1": "Multiply", "2": "Soft light", "3": "Color Burn", "4": "Darken", "5": "Stamp", "6": "Hard Light", "7": "Value", "8": "Grain Merge", "9": "Freeze" } },
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "17" },
      { "type": "separator" },
      { "type": "bool", "name": "Add Painter's Touch", "default": "1", "pos": "18" },
      { "type": "separator" },
      { "type": "float", "name": "Painter's Touch Sharpness", "default": "0.5", "min": "0", "max": "2", "pos": "19" },
      { "type": "float", "name": "Painter's Edge Protection Flow", "default": "0.8", "min": "0", "max": "1", "pos": "20" },
      { "type": "float", "name": "Painter's Smoothness", "default": "1.28", "min": "0", "max": "10", "pos": "21" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "22", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: PhotoComiX.      Latest update : 2011/24/04." },
      { "type": "link", "name": "Filter explained here", "url": "http://www.gimpchat.com/viewtopic.php?f=9&t=1582", "align": "center" }
      ]
    },
    {
      "name": "GraphiX Colors", "lang": "en", "command": "fx_compose_graphixcolor", "command_preview": "fx_compose_graphixcolor", "parameters": [
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "1" },
      { "type": "bool", "name": "Revert Layers", "default": "0", "pos": "2" },
      { "type": "note", "text": "This filter needs two layers to work properly. Set the Input layers option to handle multiple input layers." },
      { "type": "separator" },
      { "type": "note", "text": "Author: PhotoComiX.      Latest update : 2011/13/11." }
      ]
    },
    {
      "name": "Heavy Screen", "lang": "en", "command": "fx_compose_heavyscreen", "command_preview": "fx_compose_heavyscreen", "parameters": [
      { "type": "float", "name": "Opacity", "default": "0.6", "min": "0", "max": "1", "pos": "1" },
      { "type": "bool", "name": "Revert Layers", "default": "0", "pos": "2" },
      { "type": "float", "name": "Opacity 2", "default": "0.7", "min": "0", "max": "1", "pos": "3" },
      { "type": "note", "text": "This filter needs two layers to work properly. Set the Input layers option to handle multiple input layers" },
      { "type": "separator", "visibility": "0" },
      { "type": "note", "text": "Author: PhotoComiX.      Latest update : 2011/13/11.", "visibility": "0" }
      ]
    },
    {
      "name": "Metallic Grain", "lang": "en", "command": "fx_metalgrain", "command_preview": "fx_metalgrain_preview", "parameters": [
      { "type": "note", "text": "add a metallic grain adapt to pictorial and special effects" },
      { "type": "separator" },
      { "type": "note", "text": "dependent from 'Couleurs Metalliques' by Samj" },
      { "type": "separator" },
      { "type": "float", "name": "Intensity", "default": "0.5", "min": "0.1", "max": "1", "pos": "1" },
      { "type": "bool", "name": "Swap Layers", "default": "0", "pos": "2" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "3", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: PhotoComix,a hack of a Samj filter.      Latest update : 2012/29/02." }
      ]
    },
    {
      "name": "Metallic Stencils", "lang": "en", "command": "fx_metallicstencils", "command_preview": "fx_metallicstencils_preview", "parameters": [
      { "type": "choice", "name": "Set Mode", "default": "0", "pos": "1", "choices": { "0": "Darken", "1": "Lighten", "2": "Overlay" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "2", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: PhotoComix,a hack of a Samj filter.      Latest update : 2012/03/10." }
      ]
    },
    {
      "name": "Phoenix Steam-Pencil", "lang": "en", "command": "fx_phoenix", "command_preview": "fx_phoenix_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Controls for 'Pencil' applied on a copy of original" },
      { "type": "separator" },
      { "type": "float", "name": "Radius", "default": "0.95", "min": "0", "max": "4", "pos": "1" },
      { "type": "float", "name": "Amplitude", "default": "14", "min": "0", "max": "200", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Controls for 'Steam' applied on the Pencil layer" },
      { "type": "separator" },
      { "type": "int", "name": "Iterations", "default": "2", "min": "1", "max": "7", "pos": "3" },
      { "type": "int", "name": "Steam Pressure", "default": "2", "min": "1", "max": "7", "pos": "4", "visibility": "0" },
      { "type": "float", "name": "Lubrication", "default": "0.9", "min": "0", "max": "1.9", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "To exit here or merge with the original" },
      { "type": "choice", "name": "BW or Colours", "default": "0", "pos": "6", "choices": { "0": "Black and White", "1": "Colours" } },
      { "type": "note", "text": "to activate the Merging Options below chose 'Colours'" },
      { "type": "separator" },
      { "type": "bool", "name": "Swap Layers", "default": "0", "pos": "7" },
      { "type": "choice", "name": "Merging Options", "default": "0", "pos": "8", "choices": { "0": "Value", "1": "Lightness", "2": "Luminance", "3": "*Colors Doping*", "4": "*Comix Colors*", "5": "Graphic Colors*", "6": "*Dark Edges*", "7": "*Vivid Edges*", "8": "Multiply", "9": "Color Burn", "10": "Darken", "11": "Lighten", "12": "Hard Light", "13": "Soft Light", "14": "Overlay", "15": "Grain Merge", "16": "Edges", "17": "Interpolation" } },
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "9" },
      { "type": "float", "name": "*Intensity*", "default": "1", "min": "0", "max": "1", "pos": "10" },
      { "type": "separator" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "11", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: PhotoComiX.      Last update : 2011/11/14 ." },
      { "type": "link", "name": "Filter how to and help", "url": "http://www.gimpchat.com/viewtopic.php?f=9&t=2983", "align": "center" }
      ]
    },
    {
      "name": "PhotoComiX Smoothing", "lang": "en", "command": "fx_smooth_anisotropic", "command_preview": "fx_smooth_anisotropic", "parameters": [
      { "type": "float", "name": "Amplitude", "default": "60", "min": "0", "max": "1000", "pos": "1" },
      { "type": "float", "name": "Sharpness", "default": "0.16", "min": "0", "max": "2", "pos": "2" },
      { "type": "float", "name": "Anisotropy", "default": "0.63", "min": "0", "max": "1", "pos": "3" },
      { "type": "float", "name": "Gradient Smoothness", "default": "0.6", "min": "0", "max": "10", "pos": "4" },
      { "type": "float", "name": "Tensor Smoothness", "default": "2.35", "min": "0", "max": "10", "pos": "5" },
      { "type": "float", "name": "Spatial Precision", "default": "0.8", "min": "0.1", "max": "2", "pos": "6" },
      { "type": "float", "name": "Angular Precision", "default": "30", "min": "1", "max": "180", "pos": "7" },
      { "type": "float", "name": "Value Precision", "default": "2", "min": "0.1", "max": "5", "pos": "8" },
      { "type": "choice", "name": "Interpolation", "default": "0", "pos": "9", "choices": { "0": "Nearest neighbor", "1": "Linear", "2": "Runge-Kutta" } },
      { "type": "bool", "name": "Fast Approximation", "default": "1", "pos": "10" },
      { "type": "int", "name": "Iterations", "default": "1", "min": "1", "max": "10", "pos": "11" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "12", "choices": { "0": "RGB", "1": "Luminance", "2": "Blue & Red chrominances", "3": "Blue chrominance", "4": "Red chrominance" } },
      { "type": "int", "name": "Tiles", "default": "1", "min": "1", "max": "10", "pos": "13" },
      { "type": "note", "text": "\nNote : This set of anisotropic smoothing parameters has been suggested by PhotoComiX." },
      { "type": "separator" },
      { "type": "note", "text": "Author: PhotoComiX.      Latest update : 2010/29/12." }
      ]
    },
    {
      "name": "Posterized Dithering", "lang": "en", "command": "fx_pdithered", "command_preview": "fx_pdithered_preview", "parameters": [
      { "type": "float", "name": "Gamma", "default": "1", "min": "0.01", "max": "5", "pos": "1" },
      { "type": "float", "name": "Contrast", "default": "1", "min": "0", "max": "4", "pos": "2" },
      { "type": "float", "name": "Brightness", "default": "0", "min": "-255", "max": "255", "pos": "3" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "4" },
      { "type": "int", "name": "Quantize Colors", "default": "20", "min": "2", "max": "255", "pos": "5" },
      { "type": "float", "name": "Smooth Colors", "default": "1", "min": "0", "max": "30", "pos": "6" },
      { "type": "choice", "name": "Mixer Mode", "default": "0", "pos": "7", "choices": { "0": "Color Doping", "1": "Darken", "2": "Soft Light", "3": "Grain Merge", "4": "Multiply", "5": "Value" } },
      { "type": "float", "name": "Color Intensity", "default": "1", "min": "0", "max": "1", "pos": "8" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "9", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: PhotoComiX.      Latest update : 2010/29/12." }
      ]
    },
    {
      "name": "Psychedelic Glasswork Tiler", "lang": "en", "command": "fx_psyglass", "command_preview": "fx_psyglass_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Stained Glass controls" },
      { "type": "bool", "name": "White Separators", "default": "0", "pos": "1" },
      { "type": "float", "name": "Edges", "default": "20", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Shading", "default": "0.1", "min": "0", "max": "0.5", "pos": "3" },
      { "type": "bool", "name": "Thin Separators", "default": "1", "pos": "4" },
      { "type": "bool", "name": "Equalize", "default": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "separator", "visibility": "0" },
      { "type": "note", "text": "To skip Layer Fx set Opacity to 0" },
      { "type": "separator" },
      { "type": "choice", "name": "Layer Fx", "default": "0", "pos": "6", "choices": { "0": "Grain Merge", "1": "Hard Light", "2": "Soft Light", "3": "Overlay", "4": "Color Burn", "5": "Multiply" } },
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "7", "visibility": "0" },
      { "type": "separator", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Quick Corrections and Special Fx" },
      { "type": "bool", "name": "Apply Mask", "default": "1", "pos": "8" },
      { "type": "note", "text": "Contrast Mask preset" },
      { "type": "separator" },
      { "type": "bool", "name": "Raise Local Contrast", "default": "0", "pos": "9" },
      { "type": "note", "text": "Local Normalization preset" },
      { "type": "separator" },
      { "type": "separator" },
      { "type": "note", "text": "Mirrors Controls", "visibility": "0" },
      { "type": "bool", "name": "Activate Mirrors", "default": "1", "pos": "10", "visibility": "0" },
      { "type": "separator", "visibility": "0" },
      { "type": "int", "name": "Iterations", "default": "1", "min": "1", "max": "10", "pos": "11", "visibility": "0" },
      { "type": "float", "name": "X-Offset", "default": "0", "min": "0", "max": "100", "pos": "12", "visibility": "0" },
      { "type": "float", "name": "Y-Offset", "default": "0", "min": "0", "max": "100", "pos": "13", "visibility": "0" },
      { "type": "choice", "name": "Array Mode", "default": "2", "pos": "14", "choices": { "0": "X-axis", "1": "Y-axis", "2": "XY-axes", "3": "2XY-axes" }, "visibility": "0" },
      { "type": "choice", "name": "Initialization", "default": "0", "pos": "15", "choices": { "0": "Original", "1": "Mirror X", "2": "Mirror Y", "3": "Rotate 90 deg.", "4": "Rotate 180 deg.", "5": "Rotate 270 deg." }, "visibility": "0" },
      { "type": "bool", "name": "Expand Size", "default": "0", "pos": "16" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "17", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "separator" },
      { "type": "note", "text": "Author: PhotoComiX. Latest update : 2011/30/03." }
      ]
    },
    {
      "name": "Scale Down Neat", "lang": "en", "command": "fx_scaledown3", "command_preview": "fx_scaledown3_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "To scale down preserving clean edges and smoothly sharpen" },
      { "type": "separator" },
      { "type": "bool", "name": "Automatic Pre-Blur", "default": "0", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Automatic pre-blur disable the 2 sliders below" },
      { "type": "separator" },
      { "type": "float", "name": "Blur X", "default": "1", "min": "0.2", "max": "4", "pos": "2" },
      { "type": "float", "name": "Blur Y", "default": "1", "min": "0.2", "max": "4", "pos": "3" },
      { "type": "separator" },
      { "type": "choice", "name": "Scale Down To", "default": "1", "pos": "4", "choices": { "0": "New Width and Height", "1": "preserve_image_ratio Set new Width", "2": "preserve_image_ratio Set new Height" } },
      { "type": "int", "name": "New Width", "default": "1600", "min": "16", "max": "3200", "pos": "5" },
      { "type": "int", "name": "New Height", "default": "1600", "min": "16", "max": "3200", "pos": "6", "visibility": "0" },
      { "type": "separator" },
      { "type": "bool", "name": "Skip Post Sharpening", "default": "0", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Skip Post Sharpening\": if chosen will deactivate all controls below" },
      { "type": "separator" },
      { "type": "float", "name": "Amount", "default": "2.3", "min": "0", "max": "10", "pos": "8" },
      { "type": "float", "name": "Darkness/Lightness Level", "default": "1", "min": "0", "max": "4", "pos": "9" },
      { "type": "choice", "name": "Channel(s)", "default": "12", "pos": "10", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CYMK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "11", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "separator" },
      { "type": "note", "text": "Author: PhotoComix.      Latest update : 2012/25/09." }
      ]
    },
    {
      "name": "Symmetry Master", "lang": "en", "command": "fx_viral", "command_preview": "fx_viral", "parameters": [
      { "type": "float", "name": "Scale", "default": "8", "min": "0", "max": "15", "pos": "1" },
      { "type": "choice", "name": "Mixer", "default": "0", "pos": "2", "choices": { "0": "Average", "1": "Grain Extract", "2": "Vivid", "3": "Difference", "4": "Exclusion", "5": "Negation" } },
      { "type": "choice", "name": "Remix", "default": "0", "pos": "3", "choices": { "0": "Vivid", "1": "Average", "2": "Difference", "3": "Negation", "4": "Darken" } },
      { "type": "choice", "name": "PhotoComix Preset", "default": "0", "pos": "4", "choices": { "0": "Neat Merge", "1": "Lighty Smooth", "2": "Dream", "3": "Moody", "4": "Soft", "5": "Naif", "6": "Dark Boost", "7": "Whitening", "8": "None- Skip" } },
      { "type": "choice", "name": "Activate Mirror", "default": "0", "pos": "5", "choices": { "0": "No-Skip", "1": "XY Mirror", "2": "2XY Mirror" } },
      { "type": "separator" },
      { "type": "note", "text": "WARNING,'Expanding Mirrors' multiply image size of x4 or if '2XY Mirrors' x9" },
      { "type": "separator" },
      { "type": "bool", "name": "Expanding Mirrors", "default": "0", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Author: PhotoComix.      Latest update : 2011/13/11." }
      ]
    },
    {
      "name": "Vivid Colors", "lang": "en", "command": "fx_compose_vivid_color", "command_preview": "fx_compose_vivid_color", "parameters": [
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "1" },
      { "type": "bool", "name": "Revert Layers", "default": "0", "pos": "2" },
      { "type": "float", "name": "Opacity 2", "default": "1", "min": "0", "max": "1", "pos": "3" },
      { "type": "note", "text": "This filter needs two layers to work properly. Set the Input layers option to handle multiple input layers." },
      { "type": "separator", "visibility": "0" },
      { "type": "note", "text": "Author: PhotoComiX.      Latest update : 2011/13/11.", "visibility": "0" }
      ]
    },
    {
      "name": "Vivid Edges", "lang": "en", "command": "fx_compose_vividedges", "command_preview": "fx_compose_vividedges", "parameters": [
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "1" },
      { "type": "float", "name": "Edges Smoothness", "default": "0.5", "min": "0", "max": "5", "pos": "2" },
      { "type": "bool", "name": "Revert Layers", "default": "0", "pos": "3" },
      { "type": "float", "name": "Opacity 2", "default": "0.7", "min": "0", "max": "1", "pos": "4" },
      { "type": "note", "text": "This filter needs two layers to work properly. Set the Input layers option to handle multiple input layers." },
      { "type": "separator" },
      { "type": "note", "text": "Author: PhotoComiX.      Latest update : 2011/13/11." }
      ]
    },
    {
      "name": "Vivid Screen", "lang": "en", "command": "fx_compose_vividscreen", "command_preview": "fx_compose_vividscreen", "parameters": [
      { "type": "float", "name": "Opacity", "default": "0.6", "min": "0", "max": "1", "pos": "1" },
      { "type": "bool", "name": "Revert Layers", "default": "0", "pos": "2" },
      { "type": "float", "name": "Opacity 2", "default": "0.7", "min": "0", "max": "1", "pos": "3" },
      { "type": "note", "text": "This filter needs two layers to work properly. Set the Input layers option to handle multiple input layers." },
      { "type": "separator" },
      { "type": "note", "text": "Author: PhotoComiX.      Latest update : 2011/13/11." }
      ]
    },
    {
      "name": "Wild Cartoonizer", "lang": "en", "command": "fx_m_l_unsharp2", "command_preview": "fx_m_l_unsharp2_preview", "parameters": [
      { "type": "separator" },
      { "type": "separator" },
      { "type": "float", "name": "Radius 1", "default": "12", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Amount 1", "default": "2.18", "min": "0", "max": "10", "pos": "2" },
      { "type": "float", "name": "Radius 2", "default": "0.3", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Amount 2", "default": "1.5", "min": "0", "max": "10", "pos": "4" },
      { "type": "float", "name": "Darken Merge Opacity", "default": "1", "min": "0", "max": "1", "pos": "5" },
      { "type": "float", "name": "Lighten Merge Opacity", "default": "0.5", "min": "0", "max": "1", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Additional Painter Module" },
      { "type": "separator" },
      { "type": "bool", "name": "Add Painter's Touch", "default": "0", "pos": "7" },
      { "type": "float", "name": "Painter's Touch Sharpness", "default": "0.5", "min": "0", "max": "2", "pos": "8" },
      { "type": "float", "name": "Painter's Edge Protection Flow", "default": "0.8", "min": "0", "max": "1", "pos": "9" },
      { "type": "float", "name": "Painter's Smoothness", "default": "1.28", "min": "0", "max": "10", "pos": "10" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "11", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "note", "text": "Author: PhotoComiX. Latest update : 12/29/2010." }
      ]
    }
    ]
  },
  {
    "name": "Prawnsushi", "filters": [
    {
      "name": "3D Abstract", "lang": "en", "command": "pr_3dabstract", "command_preview": "pr_3dabstract_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Draws random colored 3d objects on the image to give an abscract psychedelic look. " },
      { "type": "separator" },
      { "type": "int", "name": "Objects", "default": "5", "min": "2", "max": "20", "pos": "1" },
      { "type": "int", "name": "Complexity", "default": "20", "min": "2", "max": "100", "pos": "2" },
      { "type": "int", "name": "Mesh Resolution", "default": "128", "min": "16", "max": "256", "pos": "3" },
      { "type": "float", "name": "Smooth*", "default": "0", "min": "0", "max": "1", "pos": "4" },
      { "type": "float", "name": "Max Spin Angle*", "default": "360", "min": "0", "max": "360", "pos": "5" },
      { "type": "float", "name": "Min Opacity*", "default": ".5", "min": "0", "max": "1", "pos": "6" },
      { "type": "float", "name": "Max Opacity*", "default": "1", "min": "0", "max": "1", "pos": "7" },
      { "type": "float", "name": "Max Rotation*", "default": "90", "min": "0", "max": "360", "pos": "8" },
      { "type": "float", "name": "Min Zoom*", "default": ".8", "min": "0", "max": "3", "pos": "9" },
      { "type": "float", "name": "Max Zoom*", "default": "3", "min": "0", "max": "3", "pos": "10" },
      { "type": "float", "name": "Min FOV*", "default": "100", "min": "0", "max": "1000", "pos": "11" },
      { "type": "float", "name": "Max FOV*", "default": "500", "min": "0", "max": "1000", "pos": "12" },
      { "type": "note", "text": "<span color=\"#EE5500\">*Randomized per object.</span>" },
      { "type": "int", "name": "Dilate", "default": "0", "min": "0", "max": "10", "pos": "13" },
      { "type": "choice", "name": "Glow Mode", "default": "16", "pos": "14", "choices": { "0": "Add", "1": "Alpha", "2": "And", "3": "Average", "4": "Blue", "5": "Burn", "6": "Darken", "7": "Difference", "8": "Divide", "9": "Dodge", "10": "Edges", "11": "Exclusion", "12": "Freeze", "13": "Grainextract", "14": "Grainmerge", "15": "Green", "16": "Hardlight", "17": "Hardmix", "18": "Hue", "19": "Interpolation", "20": "Lchlightness", "21": "Lighten", "22": "Lightness", "23": "Linearburn", "24": "Linearlight", "25": "Luminance", "26": "Multiply", "27": "Negation", "28": "Or", "29": "Overlay", "30": "Pinlight", "31": "Red", "32": "Reflect", "33": "Saturation", "34": "Screen", "35": "Softburn", "36": "Softdodge", "37": "Softlight", "38": "Stamp", "39": "Subtract", "40": "Value", "41": "Vividlight", "42": "Xor" } },
      { "type": "float", "name": "G. Spread", "default": "1", "min": "0", "max": "5", "pos": "15" },
      { "type": "float", "name": "G. Strength", "default": "0.3", "min": "0", "max": "1", "pos": "16" },
      { "type": "choice", "name": "Render mode", "default": "4", "pos": "17", "choices": { "0": "Dots", "1": "Wireframe", "2": "Flat", "3": "Flat shaded", "4": "Gouraud", "5": "Phong" } },
      { "type": "bool", "name": "Layers Only*", "default": "0", "pos": "18" },
      { "type": "note", "text": "<span color=\"#EE5500\">*Don't merge layers. Glow will not be applied.</span>" },
      { "type": "int", "name": "Seed", "default": "0", "min": "0", "max": "9999999", "pos": "19" },
      { "type": "note", "text": "Author: Prawnsushi.Latest Update: 2025/02/01." }
      ]
    },
    {
      "name": "Channel Shuffle", "lang": "en", "command": "pr_chanshuff", "command_preview": "pr_chanshuff_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Slices and shuffles the channels of the image. " },
      { "type": "separator" },
      { "type": "int", "name": "Slices (0:Random)", "default": "0", "min": "0", "max": "1000", "pos": "1" },
      { "type": "int", "name": "Angle", "default": "0", "min": "0", "max": "360", "pos": "2", "visibility": "0" },
      { "type": "choice", "name": "Axis", "default": "0", "pos": "3", "choices": { "0": "X", "1": "Y" }, "visibility": "0" },
      { "type": "choice", "name": "Sorting", "default": "1", "pos": "4", "choices": { "0": "Reverse", "1": "Shuffle", "2": "Minimum Value X", "3": "Minimum Value Y", "4": "Minimum Value Z", "5": "Minimum Value C", "6": "Maximum Value X", "7": "Maximum Value Y", "8": "Maximum Value Z", "9": "Maximum Value C", "10": "Red", "11": "Green", "12": "Blue", "13": "Alpha", "14": "Minimum Deviation", "15": "Maximum Deviation", "16": "Average Deviation", "17": "Variance Deviation", "18": "Standard Deviation", "19": "Sum Value", "20": "Product Value", "21": "Median Value", "22": "L2-Norm", "23": "Width", "24": "Height", "25": "Depth" }, "visibility": "0" },
      { "type": "choice", "name": "Ordering", "default": "0", "pos": "5", "choices": { "0": "Positive", "1": "Negative" } },
      { "type": "note", "text": "Author: Prawnsushi, <a href=\"https://tschumperle.users.greyc.fr/\">David Tschumperlé</a>.Latest Update: 2023/08/17." }
      ]
    },
    {
      "name": "Fluffy Cloud", "lang": "en", "command": "pr_fluffcloud", "command_preview": "pr_fluffcloud", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Draws positionable puffs of cloud on an image. " },
      { "type": "separator" },
      { "type": "separator" },
      { "type": "note", "text": "Puffs Squadron:" },
      { "type": "point", "name": "Puffy", "position": "20,40", "pos": "1" },
      { "type": "point", "name": "Puffina", "position": "35,25", "pos": "3" },
      { "type": "point", "name": "Pufffel", "position": "50,40", "pos": "5" },
      { "type": "point", "name": "Puffio", "position": "65,25", "pos": "7" },
      { "type": "point", "name": "Puffer", "position": "80,40", "pos": "9" },
      { "type": "point", "name": "Puffed", "position": "10,90", "pos": "11" },
      { "type": "point", "name": "Puffeth", "position": "30,90", "pos": "13" },
      { "type": "point", "name": "Puffilla", "position": "50,90", "pos": "15" },
      { "type": "point", "name": "Puffent", "position": "70,90", "pos": "17" },
      { "type": "point", "name": "Puffor", "position": "90,90", "pos": "19" },
      { "type": "separator" },
      { "type": "note", "text": "Cotton Balls:" },
      { "type": "int", "name": "Seed", "default": "0", "min": "0", "max": "100000", "pos": "21" },
      { "type": "int", "name": "Amount", "default": "500", "min": "100", "max": "1000", "pos": "22" },
      { "type": "float", "name": "Opacity", "default": ".02", "min": ".001", "max": ".1", "pos": "23" },
      { "type": "float", "name": "Max Size", "default": "10", "min": "1", "max": "20", "pos": "24" },
      { "type": "float", "name": "Max Ratio", "default": "1", "min": ".1", "max": "1", "pos": "25" },
      { "type": "float", "name": "Max Span", "default": "30", "min": "0", "max": "100", "pos": "26" },
      { "type": "float", "name": "Min Angle", "default": "0", "min": "0", "max": "180", "pos": "27" },
      { "type": "float", "name": "Max Angle", "default": "180", "min": "0", "max": "180", "pos": "28" },
      { "type": "float", "name": "Dilate (%)(slow)", "default": ".5", "min": "0", "max": "3", "pos": "29" },
      { "type": "float", "name": "Fuzziness", "default": "2", "min": "0", "max": "20", "pos": "30" },
      { "type": "float", "name": "F. Scale", "default": "200", "min": "1", "max": "250", "pos": "31" },
      { "type": "float", "name": "Blur", "default": ".2", "min": "0", "max": "2", "pos": "32" },
      { "type": "float", "name": "Spread X (%)", "default": "0", "min": "0", "max": "20", "pos": "33" },
      { "type": "float", "name": "Spread Y (%)", "default": "0", "min": "0", "max": "20", "pos": "34" },
      { "type": "float", "name": "Softening", "default": "0", "min": "0", "max": "100", "pos": "35" },
      { "type": "float", "name": "Sharpening", "default": "0", "min": "0", "max": "1000", "pos": "36" },
      { "type": "float", "name": "Local Norm", "default": ".2", "min": "0.1", "max": "5", "pos": "37" },
      { "type": "float", "name": "N. Smoothing", "default": "1", "min": ".01", "max": "5", "pos": "38" },
      { "type": "bool", "name": "Do not blend", "default": "0", "pos": "39" },
      { "type": "choice", "name": "Blending Mode 1", "default": "17", "pos": "40", "choices": { "0": "Add", "1": "Alpha", "2": "Average", "3": "Blue", "4": "Burn", "5": "Darken", "6": "Difference", "7": "Divide", "8": "Dodge", "9": "Edges", "10": "Exclusion", "11": "Freeze", "12": "Grainextract", "13": "Grainmerge", "14": "Green", "15": "Hardlight", "16": "Hue", "17": "Interpolation", "18": "Lchlightness", "19": "Lighten", "20": "Lightness", "21": "Linearburn", "22": "Linearlight", "23": "Luminance", "24": "Multiply", "25": "Negation", "26": "Overlay", "27": "Pinlight", "28": "Red", "29": "Reflect", "30": "Saturation", "31": "Screen", "32": "Seamless", "33": "Seamless_mixed", "34": "Softburn", "35": "Softdodge", "36": "Softlight", "37": "Stamp", "38": "Subtract", "39": "Value", "40": "Vividlight" } },
      { "type": "float", "name": "Value 1", "default": ".9", "min": "0", "max": "1", "pos": "41" },
      { "type": "choice", "name": "Blending Mode 2", "default": "31", "pos": "42", "choices": { "0": "Add", "1": "Alpha", "2": "Average", "3": "Blue", "4": "Burn", "5": "Darken", "6": "Difference", "7": "Divide", "8": "Dodge", "9": "Edges", "10": "Exclusion", "11": "Freeze", "12": "Grainextract", "13": "Grainmerge", "14": "Green", "15": "Hardlight", "16": "Hue", "17": "Interpolation", "18": "Lchlightness", "19": "Lighten", "20": "Lightness", "21": "Linearburn", "22": "Linearlight", "23": "Luminance", "24": "Multiply", "25": "Negation", "26": "Overlay", "27": "Pinlight", "28": "Red", "29": "Reflect", "30": "Saturation", "31": "Screen", "32": "Seamless", "33": "Seamless_mixed", "34": "Softburn", "35": "Softdodge", "36": "Softlight", "37": "Stamp", "38": "Subtract", "39": "Value", "40": "Vividlight" } },
      { "type": "float", "name": "Value 2", "default": ".9", "min": "0", "max": "1", "pos": "43" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Prawnsushi.      Latest Update: 2025/02/28." }
      ]
    },
    {
      "name": "Gimp Random Layer Modes", "lang": "en", "command": "pr_laymod", "command_preview": "pr_laymod_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Randomizes the fusion modes in an image containing multiple layers. " },
      { "type": "separator" },
      { "type": "note", "text": "Please select all layers. Base layer will not be changed." },
      { "type": "bool", "name": "Randomize Layer Stack", "default": "0", "pos": "1" },
      { "type": "int", "name": "Min Opacity", "default": "30", "min": "0", "max": "100", "pos": "2" },
      { "type": "int", "name": "Max Opacity", "default": "70", "min": "0", "max": "100", "pos": "3" },
      { "type": "bool", "name": "Addition", "default": "0", "pos": "4" },
      { "type": "bool", "name": "Burn", "default": "0", "pos": "5" },
      { "type": "bool", "name": "Darken", "default": "0", "pos": "6" },
      { "type": "bool", "name": "Difference", "default": "0", "pos": "7" },
      { "type": "bool", "name": "Divide", "default": "0", "pos": "8" },
      { "type": "bool", "name": "Dodge", "default": "0", "pos": "9" },
      { "type": "bool", "name": "Exclusion", "default": "0", "pos": "10" },
      { "type": "bool", "name": "Grain Extract", "default": "0", "pos": "11" },
      { "type": "bool", "name": "Grain Merge", "default": "0", "pos": "12" },
      { "type": "bool", "name": "Hard Light", "default": "0", "pos": "13" },
      { "type": "bool", "name": "Hard Mix", "default": "0", "pos": "14" },
      { "type": "bool", "name": "Hue", "default": "0", "pos": "15" },
      { "type": "bool", "name": "LCH Lightness", "default": "0", "pos": "16" },
      { "type": "bool", "name": "Lighten", "default": "0", "pos": "17" },
      { "type": "bool", "name": "Linear Light", "default": "0", "pos": "18" },
      { "type": "bool", "name": "Luminance", "default": "0", "pos": "19" },
      { "type": "bool", "name": "Multiply", "default": "0", "pos": "20" },
      { "type": "bool", "name": "Overlay", "default": "0", "pos": "21" },
      { "type": "bool", "name": "Pin Light", "default": "0", "pos": "22" },
      { "type": "bool", "name": "Saturation", "default": "0", "pos": "23" },
      { "type": "bool", "name": "Screen", "default": "0", "pos": "24" },
      { "type": "bool", "name": "Soft Light", "default": "0", "pos": "25" },
      { "type": "bool", "name": "Subtract", "default": "0", "pos": "26" },
      { "type": "bool", "name": "Value", "default": "0", "pos": "27" },
      { "type": "bool", "name": "Vivid Light", "default": "0", "pos": "28" },
      { "type": "bool", "name": "Color", "default": "0", "pos": "29" },
      { "type": "bool", "name": "LCH Color", "default": "0", "pos": "30" },
      { "type": "bool", "name": "LCH Chroma", "default": "0", "pos": "31" },
      { "type": "bool", "name": "Erase", "default": "0", "pos": "32" },
      { "type": "bool", "name": "Luma Darken", "default": "0", "pos": "33" },
      { "type": "bool", "name": "Luma Lighten", "default": "0", "pos": "34" },
      { "type": "bool", "name": "Color Erase", "default": "0", "pos": "35" },
      { "type": "bool", "name": "Merge", "default": "0", "pos": "36" },
      { "type": "bool", "name": "LCH Hue", "default": "0", "pos": "37" },
      { "type": "bool", "name": "Dissolve", "default": "0", "pos": "38" },
      { "type": "note", "text": "Author: Prawnsushi.Latest Update: 2024/03/19." }
      ]
    },
    {
      "name": "Iris", "lang": "en", "command": "pr_iris", "command_preview": "pr_iris_gui", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Renders a pupil and iris texture. " },
      { "type": "separator" },
      { "type": "int", "name": "Resolution", "default": "800", "min": "800", "max": "2048", "pos": "1", "visibility": "0" },
      { "type": "bool", "name": "Internal 2x Upscale", "default": "0", "pos": "2" },
      { "type": "float", "name": "Iris Lines Size", "default": "10", "min": "2", "max": "200", "pos": "3" },
      { "type": "float", "name": "Pupil Height", "default": "0.4", "min": "0", "max": "1", "pos": "4" },
      { "type": "float", "name": "Pupil Width", "default": "0.4", "min": "0", "max": "1", "pos": "5" },
      { "type": "float", "name": "Fire Ring Height", "default": "20", "min": "0", "max": "40", "pos": "6" },
      { "type": "float", "name": "Fire Ring Width", "default": "20", "min": "0", "max": "40", "pos": "7" },
      { "type": "float", "name": "Defect Width", "default": "0", "min": "0", "max": "200", "pos": "8" },
      { "type": "float", "name": "Ring Width", "default": "100", "min": "0", "max": "200", "pos": "9" },
      { "type": "int", "name": "Seed (0:Random)", "default": "0", "min": "0", "max": "999999", "pos": "10" },
      { "type": "color", "name": "Color 1", "default": "100,100,0", "pos": "11" },
      { "type": "color", "name": "Color 2", "default": "30,150,150", "pos": "14" },
      { "type": "color", "name": "Color 3", "default": "255,100,0", "pos": "17" },
      { "type": "int", "name": "Variation", "default": "50", "min": "0", "max": "200", "pos": "20" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Prawnsushi.Latest Update: 2023/09/08." }
      ]
    },
    {
      "name": "Kaleido Patterns", "lang": "en", "command": "pr_kalpat", "command_preview": "pr_kalpat", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Draws colored patterns on an image. " },
      { "type": "separator" },
      { "type": "int", "name": "Seed", "default": "0", "min": "0", "max": "100000", "pos": "1" },
      { "type": "float", "name": "Amount", "default": "1", "min": "0.1", "max": "1.5", "pos": "2" },
      { "type": "float", "name": "Center X", "default": "50", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Center Y", "default": "50", "min": "0", "max": "100", "pos": "4" },
      { "type": "choice", "name": "Size", "default": "0", "pos": "5", "choices": { "0": "Increase", "1": "Decrease" } },
      { "type": "float", "name": "Ratio", "default": "1", "min": "0.01", "max": "1", "pos": "6" },
      { "type": "choice", "name": "Interpolation", "default": "2", "pos": "7", "choices": { "0": "Nearest", "1": "Linear", "2": "Cubic" } },
      { "type": "int", "name": "Max Angle", "default": "180", "min": "0", "max": "360", "pos": "8", "visibility": "0" },
      { "type": "int", "name": "Rotations", "default": "5", "min": "0", "max": "20", "pos": "9", "visibility": "0" },
      { "type": "int", "name": "Thickness", "default": "0", "min": "0", "max": "30", "pos": "10", "visibility": "0" },
      { "type": "text", "name": "Line Pattern", "default": "0", "pos": "11", "visibility": "0" },
      { "type": "bool", "name": "Grayscale", "default": "0", "pos": "12", "visibility": "0" },
      { "type": "file", "name": "Custom Palette", "default": "", "pos": "13", "visibility": "0" },
      { "type": "int", "name": "Max Pal. Colors", "default": "128", "min": "2", "max": "512", "pos": "14", "visibility": "0" },
      { "type": "color", "name": "Color 1", "default": "255,0,0", "pos": "15", "visibility": "0" },
      { "type": "color", "name": "Color 2", "default": "255,113,57", "pos": "18" },
      { "type": "color", "name": "Color 3", "default": "255,255,0", "pos": "21" },
      { "type": "color", "name": "Color 4", "default": "85,0,255", "pos": "24" },
      { "type": "color", "name": "Color 5", "default": "0,0,255", "pos": "27" },
      { "type": "color", "name": "Color 6", "default": "0,113,165", "pos": "30" },
      { "type": "color", "name": "Color 7", "default": "85,170,0", "pos": "33" },
      { "type": "color", "name": "Color 8", "default": "255,255,255", "pos": "36" },
      { "type": "color", "name": "Color 9", "default": "255,0,0", "pos": "39" },
      { "type": "color", "name": "Color 10", "default": "255,113,57", "pos": "42" },
      { "type": "color", "name": "Color 11", "default": "255,255,0", "pos": "45" },
      { "type": "color", "name": "Color 12", "default": "85,0,255", "pos": "48" },
      { "type": "color", "name": "Color 13", "default": "0,0,255", "pos": "51" },
      { "type": "color", "name": "Color 14", "default": "0,113,165", "pos": "54" },
      { "type": "color", "name": "Color 15", "default": "85,170,0", "pos": "57" },
      { "type": "color", "name": "Color 16", "default": "255,255,255", "pos": "60" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Prawnsushi.      Latest Update: 2025/01/22." }
      ]
    },
    {
      "name": "Line Spam", "lang": "en", "command": "pr_linespam", "command_preview": "pr_linespam_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Draws a flurry of lines on the image. " },
      { "type": "separator" },
      { "type": "int", "name": "Iterations", "default": "30", "min": "1", "max": "100", "pos": "1" },
      { "type": "float", "name": "Line Base Thickness", "default": "3", "min": "0.01", "max": "50", "pos": "2" },
      { "type": "float", "name": "Thickness Scaling", "default": "1.02", "min": "0.01", "max": "1.2", "pos": "3" },
      { "type": "float", "name": "Line Opacity", "default": "0.8", "min": "0", "max": "1", "pos": "4" },
      { "type": "float", "name": "Start X", "default": "-1", "min": "-100", "max": "100", "pos": "5" },
      { "type": "float", "name": "Start Y", "default": "10", "min": "-100", "max": "100", "pos": "6" },
      { "type": "float", "name": "End X", "default": "101", "min": "0", "max": "200", "pos": "7" },
      { "type": "float", "name": "End Y", "default": "100", "min": "0", "max": "200", "pos": "8" },
      { "type": "float", "name": "Deform", "default": "0", "min": "0", "max": "20", "pos": "9" },
      { "type": "choice", "name": "Style", "default": "0", "pos": "10", "choices": { "0": "A", "1": "B", "2": "C", "3": "D" } },
      { "type": "color", "name": "Base Color", "default": "255,85,0,255", "pos": "11" },
      { "type": "float", "name": "Color Variation", "default": "0", "min": "-15", "max": "15", "pos": "15" },
      { "type": "bool", "name": "Randomize Colors", "default": "0", "pos": "16" },
      { "type": "separator" },
      { "type": "bool", "name": "Antialiasing", "default": "0", "pos": "17" },
      { "type": "int", "name": "Amplitude", "default": "5", "min": "0", "max": "100", "pos": "18" },
      { "type": "int", "name": "Edge Threshold (%)", "default": "10", "min": "0", "max": "100", "pos": "19" },
      { "type": "float", "name": "Smoothness", "default": "0.8", "min": "0", "max": "5", "pos": "20" },
      { "type": "separator" },
      { "type": "int", "name": "Spam!", "default": "1", "min": "1", "max": "10", "pos": "21" },
      { "type": "bool", "name": "Transparent Background", "default": "0", "pos": "22" },
      { "type": "note", "text": "Author: Prawnsushi.Latest Update: 2023/08/17." }
      ]
    },
    {
      "name": "Little Boxy Things", "lang": "en", "command": "pr_lilboxy", "command_preview": "pr_lilboxy_gui", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Uses decimation and oversharpening to give a mosaic look to an image. " },
      { "type": "separator" },
      { "type": "float", "name": "Decimate", "default": "20", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Dilate X", "default": "40", "min": "0", "max": "500", "pos": "2" },
      { "type": "float", "name": "Dilate Y", "default": "60", "min": "0", "max": "500", "pos": "3" },
      { "type": "float", "name": "Erode X", "default": "2", "min": "0", "max": "50", "pos": "4", "visibility": "0" },
      { "type": "float", "name": "Erode Y", "default": "2", "min": "0", "max": "50", "pos": "5" },
      { "type": "float", "name": "Angle", "default": "0", "min": "0", "max": "360", "pos": "6" },
      { "type": "color", "name": "Gaps Color", "default": "0,0,0,255", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Prawnsushi.Latest Update: 2024/02/13." }
      ]
    },
    {
      "name": "Nonscape - Grass", "lang": "en", "command": "pr_nongrass", "command_preview": "pr_nongrass_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Renders a grass patch. Used in Nonscape - Woods. " },
      { "type": "separator" },
      { "type": "int", "name": "Sparsity", "default": "3", "min": "1", "max": "100", "pos": "1" },
      { "type": "color", "name": "Color", "default": "36,144,30", "pos": "2" },
      { "type": "int", "name": "Color Variation", "default": "10", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "Y Start", "default": "50", "min": "5", "max": "150", "pos": "6" },
      { "type": "float", "name": "Y End", "default": "100", "min": "0", "max": "150", "pos": "7" },
      { "type": "float", "name": "Height", "default": ".1", "min": "0", "max": ".5", "pos": "8" },
      { "type": "float", "name": "Width", "default": "6", "min": ".1", "max": "30", "pos": "9" },
      { "type": "float", "name": "Tidiness", "default": "20", "min": ".1", "max": "100", "pos": "10" },
      { "type": "float", "name": "Undulations", "default": "10", "min": "0", "max": "40", "pos": "11" },
      { "type": "float", "name": "Scale", "default": ".7", "min": ".1", "max": "10", "pos": "12" },
      { "type": "int", "name": "DupliCheat", "default": "10", "min": "0", "max": "10", "pos": "13" },
      { "type": "int", "name": "ShadeCheat", "default": "3", "min": "0", "max": "10", "pos": "14" },
      { "type": "note", "text": "Author: Prawnsushi.Latest Update: 2024/05/19.", "visibility": "0" }
      ]
    },
    {
      "name": "Nonscape - Woods", "lang": "en", "command": "pr_nonwoods", "command_preview": "pr_nonwoods_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Render a 2D night scene with grass, trees, light, casted shadows and particles. " },
      { "type": "separator" },
      { "type": "button", "name": "Reload current parameters", "alignment": "2", "pos": "1" },
      { "type": "int", "name": "Preview Scaling", "default": "50", "min": "1", "max": "100", "pos": "2" },
      { "type": "int", "name": "Output Size X", "default": "1920", "min": "256", "max": "4096", "pos": "3" },
      { "type": "int", "name": "Output Size Y", "default": "1080", "min": "256", "max": "4096", "pos": "4" },
      { "type": "note", "text": "Downscaling will make preview update faster." },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Light:</span>" },
      { "type": "point", "name": "Light Source Location", "position": "80,5", "pos": "5" },
      { "type": "float", "name": "Source Width", "default": "3", "min": "0", "max": "100", "pos": "7" },
      { "type": "float", "name": "Source Height", "default": "3", "min": "0", "max": "100", "pos": "8" },
      { "type": "float", "name": "Rays Max Opacity", "default": "0.2", "min": "0", "max": "1", "pos": "9" },
      { "type": "color", "name": "Color", "default": "255,255,255", "pos": "10" },
      { "type": "choice", "name": "Blending", "default": "34", "pos": "13", "choices": { "0": "Add", "1": "Alpha", "2": "And", "3": "Average", "4": "Blue", "5": "Burn", "6": "Darken", "7": "Difference", "8": "Divide", "9": "Dodge", "10": "Edges", "11": "Exclusion", "12": "Freeze", "13": "Grainextract", "14": "Grainmerge", "15": "Green", "16": "Hardlight", "17": "Hardmix", "18": "Hue", "19": "Interpolation", "20": "Lchlightness", "21": "Lighten", "22": "Lightness", "23": "Linearburn", "24": "Linearlight", "25": "Luminance", "26": "Multiply", "27": "Negation", "28": "Or", "29": "Overlay", "30": "Pinlight", "31": "Red", "32": "Reflect", "33": "Saturation", "34": "Screen", "35": "Seamless", "36": "Seamless_mixed", "37": "Softburn", "38": "Softdodge", "39": "Softlight", "40": "Stamp", "41": "Subtract", "42": "Value", "43": "Vividlight", "44": "Xor" } },
      { "type": "int", "name": "Particles", "default": "1500", "min": "0", "max": "10000", "pos": "14" },
      { "type": "float", "name": "P. Max Opacity", "default": "1", "min": "0", "max": "1", "pos": "15" },
      { "type": "color", "name": "Color", "default": "255,255,255", "pos": "16" },
      { "type": "float", "name": "Rim Light Softness", "default": "0.8", "min": "0", "max": "2", "pos": "19" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Trees:</span>" },
      { "type": "int", "name": "Tree Shape Seed (0 : Random)", "default": "0", "min": "0", "max": "100000", "pos": "20" },
      { "type": "int", "name": "Tree Position Seed (0 : Random)", "default": "0", "min": "0", "max": "100000", "pos": "21" },
      { "type": "int", "name": "Complexity", "default": "10", "min": "5", "max": "20", "pos": "22" },
      { "type": "bool", "name": "Simplify Back Rows", "default": "0", "pos": "23" },
      { "type": "float", "name": "Deformity", "default": "4", "min": "0", "max": "50", "pos": "24" },
      { "type": "float", "name": "Deform Scale", "default": "2", "min": "0", "max": "10", "pos": "25" },
      { "type": "float", "name": "Height Adjust", "default": "0", "min": "-1", "max": "1", "pos": "26" },
      { "type": "float", "name": "Width Adjust", "default": "0", "min": "-0.2", "max": "0.2", "pos": "27" },
      { "type": "int", "name": "Amount", "default": "40", "min": "1", "max": "100", "pos": "28" },
      { "type": "float", "name": "Ground - Tree Ratio", "default": "50", "min": "10", "max": "100", "pos": "29" },
      { "type": "float", "name": "Vertical Shift", "default": "0", "min": "0", "max": "3", "pos": "30" },
      { "type": "note", "text": "<span color=\"#EE5500\">V-Shift is Broken!</span>" },
      { "type": "color", "name": "Trunk Color", "default": "24,16,0", "pos": "31" },
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "34" },
      { "type": "color", "name": "Leaves Color", "default": "0,23,0", "pos": "35" },
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "38" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Grass:</span>" },
      { "type": "color", "name": "Grass color", "default": "38,76,56", "pos": "39" },
      { "type": "int", "name": "Color Variation", "default": "20", "min": "0", "max": "100", "pos": "42" },
      { "type": "int", "name": "Sparsity", "default": "3", "min": "1", "max": "100", "pos": "43" },
      { "type": "float", "name": "Height (0 : Off)", "default": ".12", "min": "0", "max": ".5", "pos": "44" },
      { "type": "float", "name": "Width (0 : Off)", "default": "8", "min": "0", "max": "30", "pos": "45" },
      { "type": "float", "name": "Tidiness", "default": "10", "min": ".1", "max": "80", "pos": "46" },
      { "type": "float", "name": "Undulations", "default": "20", "min": "0", "max": "80", "pos": "47" },
      { "type": "int", "name": "DupliCheat", "default": "10", "min": "1", "max": "10", "pos": "48" },
      { "type": "int", "name": "ShadeCheat", "default": "10", "min": "0", "max": "10", "pos": "49" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Ambiance:</span>" },
      { "type": "color", "name": "BG Top 1", "default": "0,46,67", "pos": "50" },
      { "type": "color", "name": "BG Top 2", "default": "0,124,182", "pos": "53" },
      { "type": "color", "name": "BG Middle", "default": "255,255,255", "pos": "56" },
      { "type": "color", "name": "BG Bottom 1", "default": "0,169,200", "pos": "59" },
      { "type": "color", "name": "BG Bottom 2", "default": "0,85,127", "pos": "62" },
      { "type": "float", "name": "Opacity", "default": "0.4", "min": "0", "max": "1", "pos": "65" },
      { "type": "choice", "name": "Blending", "default": "19", "pos": "66", "choices": { "0": "Add", "1": "Alpha", "2": "And", "3": "Average", "4": "Blue", "5": "Burn", "6": "Darken", "7": "Difference", "8": "Divide", "9": "Dodge", "10": "Edges", "11": "Exclusion", "12": "Freeze", "13": "Grainextract", "14": "Grainmerge", "15": "Green", "16": "Hardlight", "17": "Hardmix", "18": "Hue", "19": "Interpolation", "20": "Lchlightness", "21": "Lighten", "22": "Lightness", "23": "Linearburn", "24": "Linearlight", "25": "Luminance", "26": "Multiply", "27": "Negation", "28": "Or", "29": "Overlay", "30": "Pinlight", "31": "Red", "32": "Reflect", "33": "Saturation", "34": "Screen", "35": "Seamless", "36": "Seamless_mixed", "37": "Softburn", "38": "Softdodge", "39": "Softlight", "40": "Stamp", "41": "Subtract", "42": "Value", "43": "Vividlight", "44": "Xor" } },
      { "type": "bool", "name": "???", "default": "0", "pos": "67" },
      { "type": "bool", "name": "preview", "default": "0", "pos": "68", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Rotation:</span>" },
      { "type": "note", "text": "Author: Prawnsushi.Latest Update: 2024/05/19." }
      ]
    },
    {
      "name": "Paper Cuts", "lang": "en", "command": "pr_papercuts", "command_preview": "pr_papercuts_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Tries to simulate a papercut structure. " },
      { "type": "separator" },
      { "type": "float", "name": "Simplification", "default": "3", "min": "0", "max": "32", "pos": "1" },
      { "type": "float", "name": "Local Normalization", "default": "0", "min": "0", "max": "6", "pos": "2" },
      { "type": "int", "name": "Colors* ( RAM hungry! )", "default": "8", "min": "2", "max": "40", "pos": "3" },
      { "type": "choice", "name": "Color mode", "default": "1", "pos": "4", "choices": { "0": "Original", "1": "Monochrome", "2": "Random" } },
      { "type": "color", "name": "Monochrome Color", "default": "80,127,255", "pos": "5" },
      { "type": "int", "name": "Color Variation (Off if Random)", "default": "0", "min": "0", "max": "10", "pos": "8" },
      { "type": "choice", "name": "Sorting", "default": "14", "pos": "9", "choices": { "0": "None", "1": "Reverse", "2": "Shuffle", "3": "Minimum Value X", "4": "Minimum Value Y", "5": "Minimum Value Z", "6": "Minimum Value C", "7": "Maximum Value X", "8": "Maximum Value Y", "9": "Maximum Value Z", "10": "Maximum Value C", "11": "Red", "12": "Green", "13": "Blue", "14": "Alpha", "15": "Minimum Deviation", "16": "Maximum Deviation", "17": "Average Deviation", "18": "Variance Deviation", "19": "Standard Deviation", "20": "Sum Value", "21": "Product Value", "22": "Median Value", "23": "L2-Norm", "24": "Width", "25": "Height", "26": "Depth" } },
      { "type": "choice", "name": "Ordering", "default": "1", "pos": "10", "choices": { "0": "Forward", "1": "Backward" }, "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Shadows:</span>" },
      { "type": "float", "name": "Softness", "default": "4", "min": "0", "max": "6", "pos": "11" },
      { "type": "float", "name": "Opacity", "default": "0.6", "min": "0", "max": "1", "pos": "12" },
      { "type": "float", "name": "Shifting", "default": "4", "min": "0", "max": "10", "pos": "13" },
      { "type": "choice", "name": "Light angle (degrees)", "default": "0", "pos": "14", "choices": { "0": "0", "1": "45", "2": "90", "3": "135", "4": "180", "5": "225", "6": "270", "7": "315", "8": "360" } },
      { "type": "separator" },
      { "type": "bool", "name": "Multiple Layers", "default": "0", "pos": "15" },
      { "type": "note", "text": "First layer will contain all other layers, merged" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Imperfections:</span>" },
      { "type": "bool", "name": "Color Dithering", "default": "0", "pos": "16" },
      { "type": "float", "name": "Deformation", "default": "0", "min": "0", "max": "40", "pos": "17" },
      { "type": "int", "name": "Seed", "default": "0", "min": "0", "max": "100000", "pos": "18" },
      { "type": "bool", "name": "Canvas Effect", "default": "0", "pos": "19" },
      { "type": "float", "name": "Canvas Strength", "default": "0.6", "min": "0", "max": "1", "pos": "20" },
      { "type": "float", "name": "Downscaling % (Uses less RAM)", "default": "100", "min": "1", "max": "100", "pos": "21" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Prawnsushi.# Latest Update: 2023/04/09." },
      { "type": "separator" },
      { "type": "note", "text": "*Depends on the number of colors in the indexed version of the input image.\n If \"Output to Multiple Layers\" is checked, 1 color = 1 layer. \n Try not to use a lot of colors if you have less than 16 GB of RAM, or use downsampling.\n Preview itself is already downscaled by 50% unless you choose a value lower than 100." }
      ]
    },
    {
      "name": "Prawn Canvas", "lang": "en", "command": "pr_canvas", "command_preview": "pr_canvas_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Renders a canvas texture over the image. " },
      { "type": "separator" },
      { "type": "float", "name": "Strength", "default": "0.3", "min": "0", "max": "1", "pos": "1" },
      { "type": "float", "name": "Details", "default": "0", "min": "0", "max": "30", "pos": "2" },
      { "type": "bool", "name": "Colored", "default": "0", "pos": "3" },
      { "type": "color", "name": "Color", "default": "255,255,255,255", "pos": "4" },
      { "type": "note", "text": "Author: Prawnsushi.Latest Update: 2023/08/17." }
      ]
    },
    {
      "name": "Seamless Chaotic Pattern", "lang": "en", "command": "pr_scpat", "command_preview": "pr_scpat_gui", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Draws all kinds of lines, ellipses and polygons on the image. " },
      { "type": "separator" },
      { "type": "float", "name": "Margin Left (%)", "default": "0", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Margin Right (%)", "default": "0", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Margin Top (%)", "default": "0", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Margin Bottom (%)", "default": "0", "min": "0", "max": "100", "pos": "4" },
      { "type": "int", "name": "Quads", "default": "5", "min": "0", "max": "10", "pos": "5" },
      { "type": "int", "name": "Rectangles", "default": "5", "min": "0", "max": "10", "pos": "6" },
      { "type": "int", "name": "Triangles", "default": "5", "min": "0", "max": "10", "pos": "7" },
      { "type": "int", "name": "Circles", "default": "5", "min": "0", "max": "10", "pos": "8" },
      { "type": "int", "name": "Ellipses", "default": "5", "min": "0", "max": "10", "pos": "9" },
      { "type": "int", "name": "Lines", "default": "5", "min": "0", "max": "10", "pos": "10" },
      { "type": "int", "name": "Splines", "default": "5", "min": "0", "max": "10", "pos": "11" },
      { "type": "int", "name": "Layers*", "default": "10", "min": "1", "max": "20", "pos": "12" },
      { "type": "int", "name": "Dilate", "default": "2", "min": "0", "max": "20", "pos": "13", "visibility": "0" },
      { "type": "text", "name": "Outline Pattern - All but Splines", "default": "0", "pos": "14" },
      { "type": "int", "name": "Seed", "default": "0", "min": "0", "max": "1000000", "pos": "15" },
      { "type": "int", "name": "Tiles**", "default": "0", "min": "0", "max": "2", "pos": "16" },
      { "type": "int", "name": "Shift X", "default": "40", "min": "0", "max": "100", "pos": "17" },
      { "type": "int", "name": "Shift Y", "default": "60", "min": "0", "max": "100", "pos": "18" },
      { "type": "color", "name": "Color 1***", "default": "255,0,0", "pos": "19" },
      { "type": "color", "name": "Color 2", "default": "255,113,57", "pos": "22" },
      { "type": "color", "name": "Color 3", "default": "255,255,0", "pos": "25" },
      { "type": "color", "name": "Color 4", "default": "85,0,255", "pos": "28" },
      { "type": "color", "name": "Color 5", "default": "0,0,255", "pos": "31" },
      { "type": "color", "name": "Color 6", "default": "0,113,165", "pos": "34" },
      { "type": "color", "name": "Color 7", "default": "85,170,0", "pos": "37" },
      { "type": "color", "name": "Color 8", "default": "255,255,255", "pos": "40" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Prawnsushi.Latest Update: 2025/01/13." },
      { "type": "note", "text": "* This will create n layers +1 for the preview." },
      { "type": "note", "text": "** Mostly for preview. Layers will be resized to the width and height of the original file.This won't make your original image seamless." },
      { "type": "note", "text": "*** Colors will be randomly chosen in this list." }
      ]
    },
    {
      "name": "Sick Painter", "lang": "en", "command": "pr_sickpaint", "command_preview": "pr_sickpaint_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> An experimental effect that will detroy the image and throw paint everywhere like a mad painter. " },
      { "type": "separator" },
      { "type": "int", "name": "Obstinacy", "default": "30", "min": "5", "max": "100", "pos": "1" },
      { "type": "int", "name": "Start X (px range)", "default": "0", "min": "-1000", "max": "1000", "pos": "2" },
      { "type": "int", "name": "Start Y (px range)", "default": "0", "min": "-1000", "max": "1000", "pos": "3" },
      { "type": "int", "name": "Step X (px range)", "default": "100", "min": "50", "max": "1000", "pos": "4" },
      { "type": "int", "name": "Step Y (px range)", "default": "100", "min": "50", "max": "1000", "pos": "5" },
      { "type": "int", "name": "Line Base Thickness (px range)", "default": "100", "min": "10", "max": "500", "pos": "6" },
      { "type": "float", "name": "Max opacity", "default": "0.7", "min": "0.01", "max": "1", "pos": "7", "visibility": "0" },
      { "type": "float", "name": "Min Opacity", "default": "0.4", "min": "0.01", "max": "1", "pos": "8" },
      { "type": "int", "name": "Anger & Rage", "default": "1000", "min": "1", "max": "2000", "pos": "9" },
      { "type": "color", "name": "Color 1", "default": "255,0,0", "pos": "10" },
      { "type": "color", "name": "Color 2", "default": "32,153,162", "pos": "13" },
      { "type": "int", "name": "Panels", "default": "12", "min": "3", "max": "50", "pos": "16" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Prawnsushi.Latest Update: 2023/08/17." }
      ]
    },
    {
      "name": "Sketchy Ellipses", "lang": "en", "command": "pr_sketchy_ellipses", "command_preview": "pr_sketchy_ellipses", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Draws a flurry of ellipses on the image. " },
      { "type": "separator" },
      { "type": "int", "name": "Amount", "default": "2000", "min": "1", "max": "5000", "pos": "1" },
      { "type": "float", "name": "Center X", "default": "35", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Center Y", "default": "35", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Center XB", "default": "35", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Center YB", "default": "35", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "Increment X", "default": "7", "min": "-10", "max": "10", "pos": "6" },
      { "type": "float", "name": "Increment Y", "default": "4", "min": "-10", "max": "10", "pos": "7" },
      { "type": "float", "name": "Increment XB", "default": "4", "min": "-10", "max": "10", "pos": "8" },
      { "type": "float", "name": "Increment YB", "default": "4", "min": "-10", "max": "10", "pos": "9" },
      { "type": "int", "name": "Inc Modifier", "default": "1000", "min": "10", "max": "1000", "pos": "10" },
      { "type": "float", "name": "Starting Size", "default": "0", "min": "0", "max": "50", "pos": "11" },
      { "type": "float", "name": "Ratio", "default": "2", "min": "0.1", "max": "5", "pos": "12" },
      { "type": "float", "name": "Increment Size", "default": "4", "min": "1", "max": "10", "pos": "13" },
      { "type": "float", "name": "Angle Modifier", "default": "1", "min": ".01", "max": "10", "pos": "14" },
      { "type": "bool", "name": "Add B Set", "default": "1", "pos": "15" },
      { "type": "bool", "name": "Invert B Direction", "default": "1", "pos": "16" },
      { "type": "float", "name": "Opacity", "default": ".3", "min": ".01", "max": "1", "pos": "17" },
      { "type": "text", "name": "Line Pattern", "default": "0", "pos": "18" },
      { "type": "color", "name": "Color 1", "default": "0,0,0", "pos": "19" },
      { "type": "color", "name": "Color 2", "default": "255,255,255", "pos": "22" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Prawnsushi.      Latest Update: 2025/01/30." }
      ]
    },
    {
      "name": "Slice Stretch-Squeeze", "lang": "en", "command": "pr_streeze", "command_preview": "pr_streeze_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Slices the image and stretches the different parts. " },
      { "type": "separator" },
      { "type": "int", "name": "Iterations", "default": "10", "min": "1", "max": "100", "pos": "1" },
      { "type": "note", "text": "Do not set this higher than the smallest side of the image:" },
      { "type": "int", "name": "Slices", "default": "101", "min": "5", "max": "1001", "pos": "2" },
      { "type": "note", "text": "If there is a seam in the image try adding or removing Slices. Odd numbers seem to work better. " },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Resizing:</span>", "visibility": "0" },
      { "type": "int", "name": "Outer Range A (Starting @0%)", "default": "20", "min": "0", "max": "100", "pos": "3" },
      { "type": "int", "name": "Outer Range B (Ending @100%)", "default": "80", "min": "0", "max": "100", "pos": "4" },
      { "type": "int", "name": "O.R. Factor (%)", "default": "80", "min": "1", "max": "200", "pos": "5" },
      { "type": "int", "name": "Inner Selection A (Starting %)", "default": "20", "min": "0", "max": "100", "pos": "6" },
      { "type": "int", "name": "Inner Selection B (Ending %)", "default": "80", "min": "0", "max": "100", "pos": "7" },
      { "type": "int", "name": "I.S. Factor (%)", "default": "120", "min": "1", "max": "200", "pos": "8" },
      { "type": "choice", "name": "Axis", "default": "0", "pos": "9", "choices": { "0": "X", "1": "Y", "2": "XY" } },
      { "type": "choice", "name": "Interpolation", "default": "2", "pos": "10", "choices": { "0": "Nearest", "1": "Average", "2": "Linear", "3": "Grid", "4": "Bicubic", "5": "Lanczos" } },
      { "type": "bool", "name": "Show Steps", "default": "0", "pos": "11" },
      { "type": "int", "name": "Delay (ms)", "default": "25", "min": "1", "max": "1000", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Prawnsushi.Latest Update: 2023/08/17." }
      ]
    },
    {
      "name": "Smoothelate", "lang": "en", "command": "pr_smoothelate", "command_preview": "pr_smoothelate_gui", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Decimates and smoothes an image to give a melted mosaic look. If colors is set lower than 2, then the filter will not reduce colors. " },
      { "type": "separator" },
      { "type": "int", "name": "Saturation", "default": "0", "min": "0", "max": "100", "pos": "1" },
      { "type": "int", "name": "Colors", "default": "0", "min": "0", "max": "256", "pos": "2" },
      { "type": "int", "name": "Remove Hotpixels", "default": "0", "min": "0", "max": "20", "pos": "3" },
      { "type": "float", "name": "Decimate", "default": "2.5", "min": "0", "max": "5", "pos": "4" },
      { "type": "float", "name": "Smooth", "default": "4", "min": "0", "max": "100", "pos": "5" },
      { "type": "int", "name": "Sharpen", "default": "500", "min": "0", "max": "1000", "pos": "6" },
      { "type": "int", "name": "Sharp Smooth Iterations", "default": "3", "min": "1", "max": "20", "pos": "7" },
      { "type": "int", "name": "Dilate - Erode", "default": "0", "min": "-10", "max": "10", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Prawnsushi.Latest Update: 2024/02/12." }
      ]
    },
    {
      "name": "Stringify Mod", "lang": "en", "command": "pr_stringify", "command_preview": "pr_stringify", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Reconstructs the image as if woven from continuous strings. This mods adds filled polygons, 128 color levels and an optional pre-process. " },
      { "type": "separator" },
      { "type": "choice", "name": "Pre-Process", "default": "0", "pos": "1", "choices": { "0": "Sponge", "1": "Erode", "2": "Dilate", "3": "Blur" } },
      { "type": "int", "name": "Process Strength", "default": "0", "min": "0", "max": "20", "pos": "2" },
      { "type": "int", "name": "Smoothness", "default": "1", "min": "0", "max": "10", "pos": "3" },
      { "type": "int", "name": "Levels", "default": "64", "min": "2", "max": "128", "pos": "4" },
      { "type": "float", "name": "Sampling rate (%)", "default": "50", "min": "0", "max": "100", "pos": "5" },
      { "type": "choice", "name": "Link", "default": "2", "pos": "6", "choices": { "0": "2 points", "1": "3 points", "2": "3 points filled", "3": "4 points", "4": "4 points filled", "5": "All points" } },
      { "type": "float", "name": "Offset (%)", "default": "100", "min": "0", "max": "100", "pos": "7" },
      { "type": "int", "name": "Threshold", "default": "32", "min": "0", "max": "1024", "pos": "8" },
      { "type": "float", "name": "Opacity (%)", "default": "50", "min": "0", "max": "100", "pos": "9" },
      { "type": "float", "name": "Normalization (%)", "default": "10", "min": "0", "max": "100", "pos": "10" },
      { "type": "bool", "name": "Fill holes", "default": "0", "pos": "11" },
      { "type": "color", "name": "Background color", "default": "0,0,0,255", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "Original Author: David Tschumperlé." },
      { "type": "note", "text": "Mod Author: Prawnsushi.      Latest Update: 2025/01/14." }
      ]
    },
    {
      "name": "Uglify", "lang": "en", "command": "uglify", "command_preview": "uglify_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> My first script! Tries to simulate watercolors - experimental. " },
      { "type": "separator" },
      { "type": "bool", "name": "Write settings on picture", "default": "0", "pos": "1" },
      { "type": "note", "text": "Use original input image resolution or choose processing resolution (i.e. Half res + Upscale 2x). Beware: Preview lies." },
      { "type": "bool", "name": "Original Resolution", "default": "0", "pos": "2" },
      { "type": "int", "name": "Processing Resolution", "default": "1000", "min": "500", "max": "5000", "pos": "3" },
      { "type": "int", "name": "Upscale 2x (Iterations)", "default": "0", "min": "0", "max": "5", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "- Presets", "default": "0", "pos": "5", "choices": { "0": "Default", "1": "1 - From Scratch", "2": "2 - Soft", "3": "3 - Cracked", "4": "4 - Black", "5": "5 - Faded Black", "6": "6 - Nuudlz for a blank page" } },
      { "type": "separator" },
      { "type": "bool", "name": "Pre-Process", "default": "0", "pos": "6" },
      { "type": "int", "name": "- Sharpening", "default": "0", "min": "0", "max": "500", "pos": "7" },
      { "type": "float", "name": "- Blur", "default": "0", "min": "0", "max": "10", "pos": "8" },
      { "type": "float", "name": "- Local normalization", "default": "0", "min": "0", "max": "3", "pos": "9" },
      { "type": "separator" },
      { "type": "bool", "name": "Sloppiness", "default": "0", "pos": "10" },
      { "type": "float", "name": "- Distort", "default": "3", "min": "0", "max": "20", "pos": "11" },
      { "type": "float", "name": "- Blur", "default": "3", "min": "0", "max": "50", "pos": "12" },
      { "type": "choice", "name": "- Blend Mode", "default": "13", "pos": "13", "choices": { "0": "add", "1": "and", "2": "average", "3": "blue", "4": "burn", "5": "darken", "6": "difference", "7": "divide", "8": "dodge", "9": "exclusion", "10": "grainextract", "11": "grainmerge", "12": "green", "13": "hardlight", "14": "hardmix", "15": "hue", "16": "interpolation", "17": "lighten", "18": "lightness", "19": "linearburn", "20": "linearlight", "21": "luminance", "22": "multiply", "23": "negation", "24": "or", "25": "overlay", "26": "pinlight", "27": "red", "28": "reflect", "29": "saturation", "30": "screen", "31": "shapeaverage", "32": "softburn", "33": "softdodge", "34": "softlight", "35": "stamp", "36": "subtract", "37": "value", "38": "vividlight", "39": "xor" } },
      { "type": "float", "name": "- Strength", "default": "0.5", "min": "0.0", "max": "1.0", "pos": "14" },
      { "type": "separator" },
      { "type": "bool", "name": "Watering", "default": "0", "pos": "15" },
      { "type": "int", "name": "- Smoothing", "default": "12", "min": "0", "max": "40", "pos": "16" },
      { "type": "int", "name": "- Iterations", "default": "1", "min": "0", "max": "10", "pos": "17" },
      { "type": "float", "name": "Fuzzy Frame Size (%)", "default": "5", "min": "0", "max": "45", "pos": "18" },
      { "type": "int", "name": "- Frame Blur", "default": "20", "min": "0", "max": "150", "pos": "19" },
      { "type": "float", "name": "- Frame Strentgh", "default": "0.5", "min": "0", "max": "1", "pos": "20" },
      { "type": "int", "name": "Plasma Seed ( -1 : Random )", "default": "-1", "min": "-1", "max": "999999", "pos": "21" },
      { "type": "int", "name": "- Plasma Saturation", "default": "-100", "min": "-100", "max": "100", "pos": "22" },
      { "type": "float", "name": "- Plasma Blur", "default": "0", "min": "0", "max": "50", "pos": "23" },
      { "type": "choice", "name": "- Blend Mode", "default": "7", "pos": "24", "choices": { "0": "add", "1": "and", "2": "average", "3": "blue", "4": "burn", "5": "darken", "6": "difference", "7": "divide", "8": "dodge", "9": "exclusion", "10": "grainextract", "11": "grainmerge", "12": "green", "13": "hardlight", "14": "hardmix", "15": "hue", "16": "interpolation", "17": "lighten", "18": "lightness", "19": "linearburn", "20": "linearlight", "21": "luminance", "22": "multiply", "23": "negation", "24": "or", "25": "overlay", "26": "pinlight", "27": "red", "28": "reflect", "29": "saturation", "30": "screen", "31": "shapeaverage", "32": "softburn", "33": "softdodge", "34": "softlight", "35": "stamp", "36": "subtract", "37": "value", "38": "vividlight", "39": "xor" } },
      { "type": "float", "name": "- Plasma Strength", "default": "0.6", "min": "0", "max": "1", "pos": "25" },
      { "type": "separator" },
      { "type": "bool", "name": "Cracks", "default": "0", "pos": "26" },
      { "type": "int", "name": "Sharpening", "default": "150", "min": "0", "max": "500", "pos": "27" },
      { "type": "int", "name": "- Shock Filter", "default": "1", "min": "0", "max": "1", "pos": "28" },
      { "type": "float", "name": "Light Relief (0 means all off)", "default": "0.05", "min": "0", "max": "1", "pos": "29" },
      { "type": "float", "name": "- Light2", "default": "0.02", "min": "0", "max": "1", "pos": "30" },
      { "type": "float", "name": "- Light3", "default": "0.02", "min": "0", "max": "1", "pos": "31" },
      { "type": "separator" },
      { "type": "bool", "name": "Sketch", "default": "0", "pos": "32" },
      { "type": "int", "name": "- Likeness", "default": "25", "min": "0", "max": "30", "pos": "33" },
      { "type": "int", "name": "- Contrast", "default": "0", "min": "-100", "max": "100", "pos": "34" },
      { "type": "int", "name": "- Gamma", "default": "0", "min": "-100", "max": "100", "pos": "35" },
      { "type": "int", "name": "- Thickness", "default": "2", "min": "0", "max": "40", "pos": "36" },
      { "type": "float", "name": "- Sketch strength", "default": "1", "min": "0", "max": "1", "pos": "37" },
      { "type": "float", "name": "--- Messy lines", "default": "0.8", "min": "0", "max": "1", "pos": "38" },
      { "type": "float", "name": "- White lines", "default": "0.6", "min": "0", "max": "1", "pos": "39" },
      { "type": "float", "name": "--- W. L. Deform", "default": "1.6", "min": "0", "max": "40", "pos": "40" },
      { "type": "choice", "name": "- Blend Mode", "default": "22", "pos": "41", "choices": { "0": "add", "1": "and", "2": "average", "3": "blue", "4": "burn", "5": "darken", "6": "difference", "7": "divide", "8": "dodge", "9": "exclusion", "10": "grainextract", "11": "grainmerge", "12": "green", "13": "hardlight", "14": "hardmix", "15": "hue", "16": "interpolation", "17": "lighten", "18": "lightness", "19": "linearburn", "20": "linearlight", "21": "luminance", "22": "multiply", "23": "negation", "24": "or", "25": "overlay", "26": "pinlight", "27": "red", "28": "reflect", "29": "saturation", "30": "screen", "31": "shapeaverage", "32": "softburn", "33": "softdodge", "34": "softlight", "35": "stamp", "36": "subtract", "37": "value", "38": "vividlight", "39": "xor" }, "visibility": "0" },
      { "type": "note", "text": "Setting Sktech Strength to 0 disables Messy lines too.\n Messy lines uses 'Breaks' by David Tschumperlé." },
      { "type": "separator" },
      { "type": "float", "name": "Noise", "default": "3", "min": "0", "max": "6", "pos": "42" },
      { "type": "float", "name": "Canvas", "default": "0.3", "min": "0", "max": "1", "pos": "43" },
      { "type": "int", "name": "Canvas density", "default": "0", "min": "0", "max": "30", "pos": "44" },
      { "type": "color", "name": "Color", "default": "255,255,255,255", "pos": "45" },
      { "type": "separator" },
      { "type": "bool", "name": "Post-Process", "default": "0", "pos": "49" },
      { "type": "float", "name": "Emboss", "default": "1.5", "min": "0", "max": "5", "pos": "50" },
      { "type": "float", "name": "Mix Original Hue/Sat", "default": "0.5", "min": "0", "max": "1", "pos": "51" },
      { "type": "float", "name": "Brightness", "default": "0", "min": "-100", "max": "100", "pos": "52", "visibility": "0" },
      { "type": "float", "name": "Contrast", "default": "0", "min": "-100", "max": "100", "pos": "53" },
      { "type": "float", "name": "Gamma", "default": "0", "min": "-100", "max": "100", "pos": "54" },
      { "type": "float", "name": "Hue", "default": "0", "min": "-100", "max": "100", "pos": "55" },
      { "type": "float", "name": "Saturation", "default": "0", "min": "-100", "max": "100", "pos": "56" },
      { "type": "separator" },
      { "type": "choice", "name": "- Old Presets", "default": "0", "pos": "57", "choices": { "0": "Default", "1": "1 - From Scratch", "2": "2 -Soft", "3": "3 - Cracked", "4": "4 - Black", "5": "5 - Faded Black", "6": "6 - Nuudlz for blank page" }, "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Prawnsushi.      Latest Update: 2023/08/17." }
      ]
    }
    ]
  },
  {
    "name": "Rendering", "filters": [
    {
      "name": "2.5D Extrusion", "lang": "en", "command": "fx_extrude25d", "command_preview": "fx_extrude25d_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Extrudes 2D shapes to simulate depth (2.5D). " },
      { "type": "separator" },
      { "type": "float", "name": "Depth (%)", "default": "10", "min": "0", "max": "100", "pos": "1" },
      { "type": "point", "name": "Angle", "position": "80,60", "pos": "2", "visibility": "0" },
      { "type": "float", "name": "Shear (%)", "default": "25", "min": "0", "max": "100", "pos": "4" },
      { "type": "bool", "name": "Negate", "default": "0", "pos": "5" },
      { "type": "float", "name": "Normal Smoothness", "default": "10", "min": "0", "max": "50", "pos": "6" },
      { "type": "separator" },
      { "type": "float", "name": "Color Shading (%)", "default": "50", "min": "0", "max": "100", "pos": "7" },
      { "type": "color", "name": "Top Color", "default": "255,200,0", "pos": "8" },
      { "type": "color", "name": "Right Color", "default": "255,128,0", "pos": "11" },
      { "type": "color", "name": "Bottom Color", "default": "128,64,0", "pos": "14" },
      { "type": "color", "name": "Left Color", "default": "64,0,0", "pos": "17" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2025/01/31." }
      ]
    },
    {
      "name": "3D Blocks", "lang": "en", "command": "fx_blocks3d", "command_preview": "fx_blocks3d", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Renders a field of 3D blocks based on image brightness. " },
      { "type": "separator" },
      { "type": "int", "name": "Resolution", "default": "32", "min": "1", "max": "128", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "40", "pos": "2" },
      { "type": "float", "name": "Elevation", "default": "4", "min": "-10", "max": "10", "pos": "3" },
      { "type": "float", "name": "Size", "default": "1.5", "min": "0", "max": "3", "pos": "4" },
      { "type": "float", "name": "Angle", "default": "30", "min": "0", "max": "360", "pos": "5" },
      { "type": "float", "name": "Tilt", "default": "60", "min": "0", "max": "90", "pos": "6" },
      { "type": "float", "name": "FOV", "default": "45", "min": "1", "max": "90", "pos": "7" },
      { "type": "point", "name": "Centering (%)", "position": "50,50", "pos": "8" },
      { "type": "separator" },
      { "type": "float", "name": "X-Light", "default": "0", "min": "-100", "max": "100", "pos": "10" },
      { "type": "float", "name": "Y-Light", "default": "-50", "min": "-100", "max": "100", "pos": "11" },
      { "type": "float", "name": "Z-Light", "default": "-100", "min": "-100", "max": "0", "pos": "12" },
      { "type": "float", "name": "Specular Lightness", "default": "0.5", "min": "0", "max": "1", "pos": "13" },
      { "type": "float", "name": "Specular Shininess", "default": "0.7", "min": "0", "max": "3", "pos": "14" },
      { "type": "bool", "name": "Use Light", "default": "1", "pos": "15" },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "16" },
      { "type": "color", "name": "Outline Color", "default": "0,0,0,128", "pos": "17" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2014/02/10." }
      ]
    },
    {
      "name": "3D Colored Object", "lang": "en", "command": "fx_coloredobject3d", "command_preview": "fx_coloredobject3d_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Renders a custom 3D colored object. " },
      { "type": "separator" },
      { "type": "choice", "name": "Type", "default": "1", "pos": "1", "choices": { "0": "Plane", "1": "Box", "2": "Pyramid", "3": "Ellipsoid", "4": "Torus", "5": "Gyroid", "6": "Weird", "7": "Cup" } },
      { "type": "color", "name": "Color", "default": "128,128,128,255", "pos": "2" },
      { "type": "separator" },
      { "type": "float", "name": "Size-1", "default": "0.5", "min": "0", "max": "3", "pos": "6" },
      { "type": "float", "name": "Size-2", "default": "0.5", "min": "0", "max": "3", "pos": "7" },
      { "type": "float", "name": "Size-3", "default": "0.5", "min": "0", "max": "3", "pos": "8" },
      { "type": "float", "name": "X-Angle", "default": "57", "min": "0", "max": "360", "pos": "9" },
      { "type": "float", "name": "Y-Angle", "default": "41", "min": "0", "max": "360", "pos": "10" },
      { "type": "float", "name": "Z-Angle", "default": "21", "min": "0", "max": "360", "pos": "11" },
      { "type": "float", "name": "FOV", "default": "45", "min": "1", "max": "90", "pos": "12" },
      { "type": "float", "name": "X-Light", "default": "0", "min": "-100", "max": "100", "pos": "13" },
      { "type": "float", "name": "Y-Light", "default": "0", "min": "-100", "max": "100", "pos": "14" },
      { "type": "float", "name": "Z-Light", "default": "-100", "min": "-100", "max": "0", "pos": "15" },
      { "type": "float", "name": "Specular Lightness", "default": "0.5", "min": "0", "max": "1", "pos": "16" },
      { "type": "float", "name": "Specular Shininess", "default": "0.7", "min": "0", "max": "3", "pos": "17" },
      { "type": "choice", "name": "Rendering", "default": "4", "pos": "18", "choices": { "0": "Dots", "1": "Wireframe", "2": "Flat", "3": "Flat-Shaded", "4": "Gouraud", "5": "Phong" } },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "19" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2011/05/16." }
      ]
    },
    {
      "name": "3D Elevation", "lang": "en", "command": "fx_elevation3d", "command_preview": "fx_elevation3d_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Renders the image as a 3D terrain heightmap. " },
      { "type": "separator" },
      { "type": "float", "name": "Factor", "default": "100", "min": "-1000", "max": "1000", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "1", "min": "0", "max": "10", "pos": "2" },
      { "type": "separator" },
      { "type": "int", "name": "Width", "default": "1024", "min": "8", "max": "4096", "pos": "3" },
      { "type": "int", "name": "Height", "default": "1024", "min": "8", "max": "4096", "pos": "4" },
      { "type": "float", "name": "Size", "default": "0.8", "min": "0", "max": "3", "pos": "5" },
      { "type": "float", "name": "X-Angle", "default": "25", "min": "0", "max": "360", "pos": "6" },
      { "type": "float", "name": "Y-Angle", "default": "0", "min": "0", "max": "360", "pos": "7" },
      { "type": "float", "name": "Z-Angle", "default": "21", "min": "0", "max": "360", "pos": "8" },
      { "type": "float", "name": "FOV", "default": "45", "min": "1", "max": "90", "pos": "9" },
      { "type": "float", "name": "X-Light", "default": "0", "min": "-100", "max": "100", "pos": "10" },
      { "type": "float", "name": "Y-Light", "default": "0", "min": "-100", "max": "100", "pos": "11", "visibility": "0" },
      { "type": "float", "name": "Z-Light", "default": "-100", "min": "-100", "max": "0", "pos": "12" },
      { "type": "float", "name": "Specular Lightness", "default": "0.5", "min": "0", "max": "1", "pos": "13", "visibility": "0" },
      { "type": "float", "name": "Specular Shininess", "default": "0.7", "min": "0", "max": "3", "pos": "14" },
      { "type": "choice", "name": "Rendering", "default": "2", "pos": "15", "choices": { "0": "Dots", "1": "Wireframe", "2": "Flat", "3": "Flat-Shaded", "4": "Gouraud", "5": "Phong" } },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "16" },
      { "type": "separator" },
      { "type": "bool", "name": "Top Layer Defines Object Texture", "default": "0", "pos": "17" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2021/11/10." }
      ]
    },
    {
      "name": "3D Extrusion", "lang": "en", "command": "fx_extrude3d", "command_preview": "fx_extrude3d_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Extrudes the image into a 3D volume. " },
      { "type": "separator" },
      { "type": "float", "name": "Depth", "default": "10", "min": "1", "max": "1024", "pos": "1" },
      { "type": "int", "name": "Resolution", "default": "512", "min": "1", "max": "1024", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "0.6", "min": "0", "max": "3", "pos": "3" },
      { "type": "separator" },
      { "type": "int", "name": "Width", "default": "1024", "min": "1", "max": "4096", "pos": "4" },
      { "type": "int", "name": "Height", "default": "1024", "min": "1", "max": "4096", "pos": "5" },
      { "type": "float", "name": "Size", "default": "0.5", "min": "0", "max": "3", "pos": "6" },
      { "type": "float", "name": "X-Angle", "default": "57", "min": "0", "max": "360", "pos": "7" },
      { "type": "float", "name": "Y-Angle", "default": "41", "min": "0", "max": "360", "pos": "8" },
      { "type": "float", "name": "Z-Angle", "default": "21", "min": "0", "max": "360", "pos": "9" },
      { "type": "float", "name": "FOV", "default": "45", "min": "1", "max": "90", "pos": "10" },
      { "type": "float", "name": "X-Light", "default": "0", "min": "-100", "max": "100", "pos": "11" },
      { "type": "float", "name": "Y-Light", "default": "0", "min": "-100", "max": "100", "pos": "12" },
      { "type": "float", "name": "Z-Light", "default": "-100", "min": "-100", "max": "0", "pos": "13" },
      { "type": "float", "name": "Specular Lightness", "default": "0.5", "min": "0", "max": "1", "pos": "14" },
      { "type": "float", "name": "Specular Shininess", "default": "0.7", "min": "0", "max": "3", "pos": "15" },
      { "type": "choice", "name": "Rendering", "default": "4", "pos": "16", "choices": { "0": "Dots", "1": "Wireframe", "2": "Flat", "3": "Flat-Shaded", "4": "Gouraud", "5": "Phong" } },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "17" },
      { "type": "separator", "visibility": "0" },
      { "type": "bool", "name": "Top Layer Defines Object Texture", "default": "0", "pos": "18" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2021/11/10." }
      ]
    },
    {
      "name": "3D Image Object", "lang": "en", "command": "fx_imageobject3d", "command_preview": "fx_imageobject3d_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Maps the image onto a 3D object. " },
      { "type": "separator" },
      { "type": "choice", "name": "Type", "default": "1", "pos": "1", "choices": { "0": "Plane", "1": "Cube", "2": "Pyramid", "3": "Sphere", "4": "Torus", "5": "Gyroid", "6": "Weird", "7": "Cup", "8": "Rubik" } },
      { "type": "separator" },
      { "type": "int", "name": "Width", "default": "1024", "min": "1", "max": "4096", "pos": "2" },
      { "type": "int", "name": "Height", "default": "1024", "min": "1", "max": "4096", "pos": "3" },
      { "type": "float", "name": "Size", "default": "0.5", "min": "0", "max": "3", "pos": "4" },
      { "type": "float", "name": "X-Angle", "default": "57", "min": "0", "max": "360", "pos": "5" },
      { "type": "float", "name": "Y-Angle", "default": "41", "min": "0", "max": "360", "pos": "6" },
      { "type": "float", "name": "Z-Angle", "default": "21", "min": "0", "max": "360", "pos": "7" },
      { "type": "float", "name": "FOV", "default": "45", "min": "1", "max": "90", "pos": "8", "visibility": "0" },
      { "type": "float", "name": "X-Light", "default": "0", "min": "-100", "max": "100", "pos": "9" },
      { "type": "float", "name": "Y-Light", "default": "0", "min": "-100", "max": "100", "pos": "10" },
      { "type": "float", "name": "Z-Light", "default": "-100", "min": "-100", "max": "0", "pos": "11" },
      { "type": "float", "name": "Specular Lightness", "default": "0.5", "min": "0", "max": "1", "pos": "12" },
      { "type": "float", "name": "Specular Shininess", "default": "0.7", "min": "0", "max": "3", "pos": "13" },
      { "type": "choice", "name": "Rendering", "default": "4", "pos": "14", "choices": { "0": "Dots", "1": "Wireframe", "2": "Flat", "3": "Flat-Shaded", "4": "Gouraud", "5": "Phong" } },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "3D Lathing", "lang": "en", "command": "fx_lathing3d", "command_preview": "fx_lathing3d_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Creates a 3D object by rotating a profile curve (lathe). " },
      { "type": "separator" },
      { "type": "int", "name": "Resolution", "default": "76", "min": "1", "max": "1024", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "2", "min": "0", "max": "5", "pos": "2" },
      { "type": "float", "name": "Max Angle", "default": "361", "min": "0", "max": "361", "pos": "3" },
      { "type": "separator" },
      { "type": "int", "name": "Width", "default": "1024", "min": "1", "max": "4096", "pos": "4" },
      { "type": "int", "name": "Height", "default": "1024", "min": "1", "max": "4096", "pos": "5" },
      { "type": "float", "name": "Size", "default": "0.5", "min": "0", "max": "3", "pos": "6" },
      { "type": "float", "name": "X-Angle", "default": "0", "min": "0", "max": "360", "pos": "7" },
      { "type": "float", "name": "Y-Angle", "default": "0", "min": "0", "max": "360", "pos": "8" },
      { "type": "float", "name": "Z-Angle", "default": "0", "min": "0", "max": "360", "pos": "9" },
      { "type": "float", "name": "FOV", "default": "45", "min": "1", "max": "90", "pos": "10", "visibility": "0" },
      { "type": "float", "name": "X-Light", "default": "0", "min": "-100", "max": "100", "pos": "11" },
      { "type": "float", "name": "Y-Light", "default": "0", "min": "-100", "max": "100", "pos": "12" },
      { "type": "float", "name": "Z-Light", "default": "-100", "min": "-100", "max": "0", "pos": "13" },
      { "type": "float", "name": "Specular Lightness", "default": "0.5", "min": "0", "max": "1", "pos": "14" },
      { "type": "float", "name": "Specular Shininess", "default": "0.7", "min": "0", "max": "3", "pos": "15" },
      { "type": "choice", "name": "Rendering", "default": "4", "pos": "16", "choices": { "0": "Dots", "1": "Wireframe", "2": "Flat", "3": "Flat-Shaded", "4": "Gouraud", "5": "Phong" } },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "17" },
      { "type": "separator" },
      { "type": "bool", "name": "Top Layer Defines Object Texture", "default": "0", "pos": "18" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "3D Mesh", "lang": "en", "command": "fx_mesh3d", "command_preview": "fx_mesh3d_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Overlay a rendering of a 3D mesh over the image. " },
      { "type": "separator" },
      { "type": "file", "name": "3D Mesh Filename", "default": "", "pos": "1" },
      { "type": "note", "text": "(supported file formats are: .obj, .off and .gmz)." },
      { "type": "value", "value": "0", "pos": "2" },
      { "type": "separator" },
      { "type": "point", "name": "X-Axis", "position": "80,50", "pos": "3", "visibility": "0" },
      { "type": "point", "name": "Y-Axis", "position": "50,70", "pos": "5", "visibility": "0" },
      { "type": "point", "name": "Scale", "position": "60,60", "pos": "7", "visibility": "0" },
      { "type": "point", "name": "Center", "position": "50,50", "pos": "9", "visibility": "0" },
      { "type": "value", "value": "-1", "pos": "11" },
      { "type": "value", "value": "-1", "pos": "12" },
      { "type": "choice", "name": "Pre-Rotate / X", "default": "0", "pos": "13", "choices": { "0": "0 deg.", "1": "45 deg.", "2": "90 deg.", "3": "135 deg.", "4": "180 deg.", "5": "225 deg.", "6": "270 deg.", "7": "315 deg." } },
      { "type": "choice", "name": "Pre-Rotate / Y", "default": "0", "pos": "14", "choices": { "0": "0 deg.", "1": "45 deg.", "2": "90 deg.", "3": "135 deg.", "4": "180 deg.", "5": "225 deg.", "6": "270 deg.", "7": "315 deg." } },
      { "type": "choice", "name": "Pre-Rotate / Z", "default": "0", "pos": "15", "choices": { "0": "0 deg.", "1": "45 deg.", "2": "90 deg.", "3": "135 deg.", "4": "180 deg.", "5": "225 deg.", "6": "270 deg.", "7": "315 deg." } },
      { "type": "choice", "name": "Rendering Mode", "default": "5", "pos": "16", "choices": { "0": "Bounding Box", "1": "Dots", "2": "Wireframe", "3": "Flat", "4": "Flat Shaded", "5": "Gouraud Shaded", "6": "Phong Shaded" } },
      { "type": "choice", "name": "Face Orientation", "default": "0", "pos": "17", "choices": { "0": "Normal", "1": "Reverted", "2": "Double-Sided" } },
      { "type": "choice", "name": "Materials", "default": "2", "pos": "18", "choices": { "0": "Discard Colors", "1": "Discard Textures", "2": "Keep Textures" } },
      { "type": "color", "name": "Recovery Color", "default": "200,200,200", "pos": "19" },
      { "type": "float", "name": "Focale (%)", "default": "100", "min": "0", "max": "500", "pos": "22" },
      { "type": "choice", "name": "Anti-aliasing", "default": "1", "pos": "23", "choices": { "0": "None", "1": "x1.5", "2": "x2", "3": "x3", "4": "x4" } },
      { "type": "point", "name": "Custom Light", "position": "50,50", "pos": "24" },
      { "type": "button", "name": "Reset 3D Position", "pos": "26" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé       Latest Update: 2022/06/21." }
      ]
    },
    {
      "name": "3D Random Objects", "lang": "en", "command": "fx_random3d", "command_preview": "fx_random3d", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates random 3D geometric shapes over the image. " },
      { "type": "separator" },
      { "type": "choice", "name": "Type", "default": "0", "pos": "1", "choices": { "0": "Cube", "1": "Cone", "2": "Cylinder", "3": "Sphere", "4": "Torus" } },
      { "type": "int", "name": "Density", "default": "50", "min": "1", "max": "300", "pos": "2" },
      { "type": "float", "name": "Size", "default": "3", "min": "1", "max": "20", "pos": "3" },
      { "type": "float", "name": "Z-Range", "default": "100", "min": "0", "max": "300", "pos": "4" },
      { "type": "float", "name": "FOV", "default": "45", "min": "1", "max": "90", "pos": "5" },
      { "type": "float", "name": "X-Light", "default": "0", "min": "-100", "max": "100", "pos": "6" },
      { "type": "float", "name": "Y-Light", "default": "0", "min": "-100", "max": "100", "pos": "7" },
      { "type": "float", "name": "Z-Light", "default": "-100", "min": "-100", "max": "0", "pos": "8" },
      { "type": "float", "name": "Specular Lightness", "default": "0.5", "min": "0", "max": "1", "pos": "9" },
      { "type": "float", "name": "Specular Shininess", "default": "0.7", "min": "0", "max": "3", "pos": "10" },
      { "type": "choice", "name": "Rendering", "default": "3", "pos": "11", "choices": { "0": "Dots", "1": "Wireframe", "2": "Flat", "3": "Flat-Shaded", "4": "Gouraud", "5": "Phong" } },
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "ABN Filigrees", "lang": "en", "command": "gtutor_abn", "command_preview": "gtutor_abn_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#FF9600\">The American Bank Note Co. Filigree Machine</span>" },
      { "type": "point", "name": "Red Spinner  (%)", "position": "60,40", "pos": "1", "visibility": "2" },
      { "type": "int", "name": "Red Frequency", "default": "1", "min": "-50", "max": "50", "pos": "3", "visibility": "2" },
      { "type": "point", "name": "Green Spinner (%)", "position": "50,50", "pos": "4", "visibility": "2" },
      { "type": "int", "name": "Green Frequency", "default": "1", "min": "-50", "max": "50", "pos": "6", "visibility": "2" },
      { "type": "point", "name": "Blue Spinner (%)", "position": "50,50", "pos": "7", "visibility": "2" },
      { "type": "int", "name": "Blue Frequency", "default": "1", "min": "-50", "max": "50", "pos": "9", "visibility": "2" },
      { "type": "point", "name": "Gray Spinner  (%)", "position": "50,50", "pos": "10", "visibility": "2" },
      { "type": "int", "name": "Gray Frequency", "default": "1", "min": "-50", "max": "50", "pos": "12", "visibility": "2" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#FF9600\">Pen Settings:</span>" },
      { "type": "float", "name": "Relative Width", "default": "5", "min": "1", "max": "100", "pos": "13", "visibility": "2" },
      { "type": "color", "name": "Color", "default": "255,255,255,255", "pos": "14", "visibility": "2" },
      { "type": "float", "name": "Opacity", "default": "100", "min": "0", "max": "100", "pos": "18", "visibility": "2" },
      { "type": "float", "name": "Shape (Flat-Full)", "default": "100", "min": "0", "max": "100", "pos": "19", "visibility": "2" },
      { "type": "float", "name": "Tilt°", "default": "0", "min": "0", "max": "90", "pos": "20", "visibility": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Garry R. Osgood.      Latest Update: 2024/19/02." },
      { "type": "link", "name": "Technical Notes", "url": "https://gmic.eu/tutorial/wheelies.html", "align": "center" }
      ]
    },
    {
      "name": "Adjacent Annular Steiner Chains", "lang": "en", "command": "samj_Adjacent_Annular_Steiner_Chains", "command_preview": "samj_Adjacent_Annular_Steiner_Chains", "parameters": [
      { "type": "link", "name": "http://en.wikipedia.org/wiki/Steiner_chain", "url": "http://en.wikipedia.org/wiki/Steiner_chain", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Rendu - Rendering" },
      { "type": "float", "name": "Position X (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Position Y (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Angle Inclinaison / Tilt", "default": "0", "min": "0", "max": "360", "pos": "3" },
      { "type": "bool", "name": "Canal Alpha", "default": "0", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Cercles" },
      { "type": "float", "name": "Rayon Cercle Centre / Radius Center Circle A", "default": "6", "min": "-100", "max": "100", "pos": "5" },
      { "type": "int", "name": "Nb Cercles Extérieurs / Circles Surrounding", "default": "56", "min": "7", "max": "360", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Anneaux" },
      { "type": "int", "name": "Nb Anneaux", "default": "20", "min": "1", "max": "100", "pos": "7" },
      { "type": "float", "name": "Angle Décalage / Offset Angle %", "default": "50", "min": "-100", "max": "100", "pos": "8" },
      { "type": "float", "name": "Variation Increment Anneaux %", "default": "0", "min": "-100", "max": "200", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Couleurs Cercles" },
      { "type": "color", "name": "Couleur / Color A", "default": "255,0,221,127", "pos": "10" },
      { "type": "color", "name": "Couleur / Color B", "default": "72,0,255,127", "pos": "14" },
      { "type": "color", "name": "Couleur / Color C", "default": "0,145,255,127", "pos": "18" },
      { "type": "color", "name": "Couleur / Color D", "default": "0,255,144,127", "pos": "22" },
      { "type": "color", "name": "Couleur / Color E", "default": "72,255,0,127", "pos": "26" },
      { "type": "color", "name": "Couleur / Color F", "default": "255,217,0,127", "pos": "30" },
      { "type": "color", "name": "Couleur / Color G", "default": "255,0,0,127", "pos": "34" },
      { "type": "choice", "name": "Choix Des Couleurs / Choice Of Colors", "default": "5", "pos": "38", "choices": { "0": "Couleurs / Colors AB", "1": "Couleurs / Colors ABC", "2": "Couleurs / Colors ABCD", "3": "Couleurs / Colors ABCDE", "4": "Couleurs / Colors ABCDEF", "5": "Couleurs / Colors ABCDEFG", "6": "Ordre ABCDEFG" } },
      { "type": "float", "name": "Variations Des Couleurs", "default": "0", "min": "-2", "max": "2", "pos": "39" },
      { "type": "choice", "name": "Couleurs aléatoires / Random Colors", "default": "0", "pos": "40", "choices": { "0": "Non / No", "1": "A", "2": "B", "3": "C" } },
      { "type": "separator" },
      { "type": "note", "text": "Contours" },
      { "type": "choice", "name": "Affichage / Display Contours", "default": "2", "pos": "41", "choices": { "0": "Non / No", "1": "A", "2": "B", "3": "C", "4": "D", "5": "E" } },
      { "type": "color", "name": "Contours", "default": "0,0,0,255", "pos": "42" },
      { "type": "int", "name": "Dilate Contours", "default": "0", "min": "0", "max": "16", "pos": "46" },
      { "type": "float", "name": "Flou / Blur Contours", "default": "0", "min": "0", "max": "5", "pos": "47" },
      { "type": "int", "name": "Sharpen", "default": "0", "min": "0", "max": "600", "pos": "48" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Adjacent Rectangles", "lang": "en", "command": "samj_Rectangles_Adjacents", "command_preview": "samj_Rectangles_Adjacents", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Rendu - Rendering" },
      { "type": "float", "name": "Position X Haut Gauche / Top Left", "default": "10", "min": "-100", "max": "100", "pos": "1" },
      { "type": "float", "name": "Position Y Haut Gauche / Top Left", "default": "10", "min": "-100", "max": "100", "pos": "2" },
      { "type": "float", "name": "Position X Bas Droite / Down Right", "default": "80", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Position Y Bas Droite / Down Right", "default": "80", "min": "0", "max": "100", "pos": "4" },
      { "type": "choice", "name": "Type / Location Contact", "default": "0", "pos": "5", "choices": { "0": "Haut - Top", "1": "Bas - Down", "2": "Gauche - Left", "3": "Droite - Right" } },
      { "type": "float", "name": "Position Contact", "default": "50", "min": "0", "max": "100", "pos": "6" },
      { "type": "int", "name": "Nb Rectangles", "default": "6", "min": "2", "max": "25", "pos": "7" },
      { "type": "choice", "name": "Type n", "default": "0", "pos": "8", "choices": { "0": "Inc 1", "1": "Lin 0.1", "2": "Lin 0.2", "3": "Lin 0.3", "4": "Rand", "5": "M1", "6": "M2" } },
      { "type": "float", "name": "Angle Inclinaison / Tilt", "default": "0", "min": "0", "max": "360", "pos": "9" },
      { "type": "color", "name": "Contours", "default": "0,0,0,255", "pos": "10" },
      { "type": "bool", "name": "Affichage / Display Contours", "default": "1", "pos": "14" },
      { "type": "color", "name": "Rectangle A", "default": "255,255,0,127", "pos": "15" },
      { "type": "color", "name": "Rectangle B", "default": "0,0,255,127", "pos": "19" },
      { "type": "bool", "name": "Couleurs aléatoires / Random Colors", "default": "0", "pos": "23" },
      { "type": "choice", "name": "Miroir /  Mirror", "default": "0", "pos": "24", "choices": { "0": "Sans - Wihout", "1": " X ", "2": " Y ", "3": " X Y " } },
      { "type": "float", "name": "Flou / Blur", "default": "0", "min": "0", "max": "5", "pos": "25" },
      { "type": "int", "name": "Dilate", "default": "0", "min": "0", "max": "48", "pos": "26", "visibility": "0" },
      { "type": "float", "name": "Déformation", "default": "0", "min": "0", "max": "5", "pos": "27" },
      { "type": "float", "name": "Bruit / Noise", "default": "0", "min": "0", "max": "100", "pos": "28" },
      { "type": "bool", "name": "Ombre / Shadow", "default": "0", "pos": "29" },
      { "type": "float", "name": "X-Ombre X-Shadow", "default": "0.5", "min": "-5", "max": "5", "pos": "30" },
      { "type": "float", "name": "Y-Ombre Y-Shadow", "default": "0.5", "min": "-5", "max": "5", "pos": "31" },
      { "type": "float", "name": "Douceur Ombre / Smoothness Shadow", "default": "1.8", "min": "0", "max": "5", "pos": "32" },
      { "type": "float", "name": "Courbure Ombre / Curvature Shadow", "default": "0", "min": "0", "max": "1", "pos": "33" },
      { "type": "float", "name": "Décalage Ombre X / Shadow Offset X", "default": "0", "min": "-20", "max": "20", "pos": "34" },
      { "type": "float", "name": "Décalage Ombre Y / Shadow Offset Y", "default": "0", "min": "-20", "max": "20", "pos": "35" },
      { "type": "bool", "name": "Canal Alpha", "default": "0", "pos": "36" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Algorithm A", "lang": "en", "command": "fx_memoakten_algorithm_a", "command_preview": "fx_memoakten_algorithm_a_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates abstract art based on Memo Akten's Algorithm A. " },
      { "type": "separator" },
      { "type": "int", "name": "Random Seed", "default": "0", "min": "0", "max": "65535", "pos": "1" },
      { "type": "float", "name": "Density of Initial Points (%)", "default": "20", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Rate of Primary Segments (%)", "default": "60", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Rate of Secondary Segments (%)", "default": "30", "min": "0", "max": "100", "pos": "4" },
      { "type": "int", "name": "Max Secondary Segments Occurrences", "default": "2", "min": "1", "max": "16", "pos": "5" },
      { "type": "float", "name": "Secondary Segments Centering Constraint (%)", "default": "50", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "Min Segment Length (%)", "default": "10", "min": "0", "max": "100", "pos": "7" },
      { "type": "float", "name": "Max Segment Length (%)", "default": "50", "min": "0", "max": "100", "pos": "8" },
      { "type": "float", "name": "Angle Constraint (%)", "default": "40", "min": "0", "max": "100", "pos": "9" },
      { "type": "int", "name": "Line Thickness (px)", "default": "3", "min": "1", "max": "16", "pos": "10" },
      { "type": "float", "name": "Density of Color Fill (%)", "default": "60", "min": "0", "max": "100", "pos": "11" },
      { "type": "choice", "name": "Anti-aliasing", "default": "1", "pos": "12", "choices": { "0": "None", "1": "x1.5", "2": "x2" } },
      { "type": "separator" },
      { "type": "color", "name": "Foreground Color", "default": "0,0,0", "pos": "13" },
      { "type": "color", "name": "Background Color", "default": "255,255,255", "pos": "16" },
      { "type": "color", "name": "Fill Color 1", "default": "255,0,0", "pos": "19" },
      { "type": "color", "name": "Fill Color 2", "default": "255,128,0", "pos": "22" },
      { "type": "color", "name": "Fill Color 3", "default": "255,255,0", "pos": "25" },
      { "type": "color", "name": "Fill Color 4", "default": "0,0,0", "pos": "28" },
      { "type": "separator" },
      { "type": "note", "text": "Note: This filter has been implemented after reading the following tweet from Memo Akten:" },
      { "type": "link", "name": "https://twitter.com/memotv/status/1556619064491102209", "url": "https://twitter.com/memotv/status/1556619064491102209", "align": "center" },
      { "type": "note", "text": "I (David) found the idea really nice so I tried to convert the algorithm into a G'MIC script. The code is not optimized and probably very perfectible, but at least it works :)" },
      { "type": "separator" },
      { "type": "note", "text": "Authors: <a href=\"https://www.memo.tv/\">Memo Akten</a> (algorithm) and <a href=\"https://tschumperle.users.greyc.fr/\">David Tschumperlé</a> (G'MIC conversion)       Latest Update: 2022/08/09." }
      ]
    },
    {
      "name": "Annular Steiner Chains", "lang": "en", "command": "samj_Annular_Steiner_Chains", "command_preview": "samj_Annular_Steiner_Chains", "parameters": [
      { "type": "link", "name": "http://en.wikipedia.org/wiki/Steiner_chain", "url": "http://en.wikipedia.org/wiki/Steiner_chain", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Rendu - Rendering" },
      { "type": "float", "name": "Position X (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Position Y (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Rayon Cercle Extérieur / Radius Outer Circle A (>0 W%) (<0 H%)", "default": "50", "min": "-400", "max": "400", "pos": "3", "visibility": "0" },
      { "type": "int", "name": "Nb Cercles Extérieurs / Circles Surrounding", "default": "6", "min": "3", "max": "360", "pos": "4" },
      { "type": "float", "name": "Angle Inclinaison / Tilt", "default": "0", "min": "0", "max": "360", "pos": "5" },
      { "type": "color", "name": "Contours", "default": "0,0,0,255", "pos": "6" },
      { "type": "choice", "name": "Affichage / Display Contours", "default": "1", "pos": "10", "choices": { "0": "Sans", "1": "CE CI CA", "2": "CE CI CA CC", "3": "CE CI CA CC CT", "4": "CE CI CA CT", "5": "CE CA", "6": "CI CA", "7": "CA" } },
      { "type": "color", "name": "Cercle Extérieur / Exterior Circle A", "default": "255,255,0,127", "pos": "11" },
      { "type": "color", "name": "Cercle Centre  / Centre Circle B", "default": "64,192,128,127", "pos": "15" },
      { "type": "color", "name": "Cercle / Circle C", "default": "0,255,0,127", "pos": "19" },
      { "type": "color", "name": "Cercle / Circle D", "default": "0,0,255,127", "pos": "23" },
      { "type": "bool", "name": "Couleurs aléatoires / Random Colors", "default": "0", "pos": "27" },
      { "type": "int", "name": "Inversions", "default": "0", "min": "0", "max": "3", "pos": "28" },
      { "type": "float", "name": "Flou / Blur", "default": "0", "min": "0", "max": "5", "pos": "29" },
      { "type": "int", "name": "Dilate", "default": "0", "min": "0", "max": "48", "pos": "30" },
      { "type": "float", "name": "Déformation", "default": "0", "min": "0", "max": "5", "pos": "31" },
      { "type": "float", "name": "Bruit / Noise", "default": "0", "min": "0", "max": "100", "pos": "32" },
      { "type": "bool", "name": "Ombre / Shadow", "default": "0", "pos": "33" },
      { "type": "float", "name": "X-Ombre X-Shadow", "default": "0.5", "min": "-5", "max": "5", "pos": "34" },
      { "type": "float", "name": "Y-Ombre Y-Shadow", "default": "0.5", "min": "-5", "max": "5", "pos": "35" },
      { "type": "float", "name": "Douceur Ombre / Smoothness Shadow", "default": "1.8", "min": "0", "max": "5", "pos": "36" },
      { "type": "float", "name": "Courbure Ombre / Curvature Shadow", "default": "0", "min": "0", "max": "1", "pos": "37" },
      { "type": "float", "name": "Décalage Ombre X / Shadow Offset X", "default": "0", "min": "-20", "max": "20", "pos": "38" },
      { "type": "float", "name": "Décalage Ombre Y / Shadow Offset Y", "default": "0", "min": "-20", "max": "20", "pos": "39" },
      { "type": "bool", "name": "Canal Alpha", "default": "0", "pos": "40" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Ball", "lang": "en", "command": "fx_ball", "command_preview": "fx_ball_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Renders a 3D sphere/ball. " },
      { "type": "separator" },
      { "type": "int", "name": "Radius", "default": "200", "min": "1", "max": "1024", "pos": "1" },
      { "type": "color", "name": "Color", "default": "255,0,255", "pos": "2" },
      { "type": "float", "name": "Ambient Light", "default": "0.25", "min": "0", "max": "2", "pos": "5" },
      { "type": "float", "name": "Diffuse Light", "default": "1", "min": "0", "max": "2", "pos": "6", "visibility": "0" },
      { "type": "float", "name": "Specular Light", "default": "1", "min": "0", "max": "2", "pos": "7" },
      { "type": "float", "name": "Shininess", "default": "20", "min": "0", "max": "100", "pos": "8" },
      { "type": "point", "name": "Light", "position": "85,15", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2024/12/17." }
      ]
    },
    {
      "name": "Chains Solidify", "lang": "en", "command": "samj_Chains_Solidify", "command_preview": "samj_Chains_Solidify", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">samj_Chains_Solidify</span>" },
      { "type": "separator" },
      { "type": "note", "text": "Rendering" },
      { "type": "float", "name": "Position X (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Position Y (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Angle Tilt", "default": "0", "min": "0", "max": "360", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Circles" },
      { "type": "float", "name": "Radius Center Circle", "default": "6", "min": "-100", "max": "100", "pos": "4" },
      { "type": "int", "name": "Nb Circles Surrounding", "default": "56", "min": "7", "max": "360", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Rings" },
      { "type": "int", "name": "Nb Rings", "default": "20", "min": "1", "max": "100", "pos": "6" },
      { "type": "float", "name": "Offset Angle %", "default": "50", "min": "-100", "max": "100", "pos": "7" },
      { "type": "float", "name": "Change Increment %", "default": "0", "min": "-100", "max": "200", "pos": "8" },
      { "type": "separator", "visibility": "0" },
      { "type": "note", "text": "Coulors" },
      { "type": "color", "name": "Color A", "default": "255,0,221,255", "pos": "9" },
      { "type": "color", "name": "Color B", "default": "72,0,255,255", "pos": "13" },
      { "type": "color", "name": "Color C", "default": "0,145,255,255", "pos": "17" },
      { "type": "color", "name": "Color D", "default": "0,255,144,255", "pos": "21" },
      { "type": "color", "name": "Color E", "default": "72,255,0,255", "pos": "25" },
      { "type": "color", "name": "Color F", "default": "255,217,0,255", "pos": "29" },
      { "type": "color", "name": "Color G", "default": "255,0,0,255", "pos": "33" },
      { "type": "choice", "name": "Choice Of Colors", "default": "5", "pos": "37", "choices": { "0": "Couleurs / Colors AB", "1": "Couleurs / Colors ABC", "2": "Couleurs / Colors ABCD", "3": "Couleurs / Colors ABCDE", "4": "Couleurs / Colors ABCDEF", "5": "Couleurs / Colors ABCDEFG", "6": "Ordre ABCDEFG" } },
      { "type": "color", "name": "Center Color", "default": "255,127,0,255", "pos": "38" },
      { "type": "color", "name": "Background", "default": "0,0,0,255", "pos": "42" },
      { "type": "float", "name": "Variation", "default": "100", "min": "0", "max": "1000", "pos": "46" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Update : 2020/10/24." }
      ]
    },
    {
      "name": "Christmas Balls", "lang": "en", "command": "samj_Noel_2016", "command_preview": "samj_Noel_2016", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">samj_Noel_2016</span>" },
      { "type": "float", "name": "X Origine", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Y Origine", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Ellipse / Circle A", "default": "100", "min": "1", "max": "500", "pos": "3" },
      { "type": "float", "name": "Ellipse B", "default": "150", "min": "1", "max": "500", "pos": "4", "visibility": "0" },
      { "type": "int", "name": "Depth Max", "default": "7", "min": "1", "max": "13", "pos": "5" },
      { "type": "bool", "name": "Line", "default": "0", "pos": "6" },
      { "type": "color", "name": "Color", "default": "240,45,15,255", "pos": "7" },
      { "type": "int", "name": "Color Variation", "default": "-15", "min": "-255", "max": "255", "pos": "11" },
      { "type": "float", "name": "Spacing", "default": "2.5", "min": "0", "max": "8", "pos": "12" },
      { "type": "choice", "name": "Rendering", "default": "2", "pos": "13", "choices": { "0": "Ellipse A", "1": "Ellipse B", "2": "Ball A", "3": "Ball B" } },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Ball [light]</span>" },
      { "type": "float", "name": "Specular light", "default": "0.8", "min": "0", "max": "8", "pos": "14" },
      { "type": "float", "name": "Specular size", "default": "1", "min": "0", "max": "8", "pos": "15" },
      { "type": "float", "name": "Shadow", "default": "1.5", "min": "0", "max": "4", "pos": "16" },
      { "type": "float", "name": "Angle", "default": "0", "min": "-180", "max": "180", "pos": "17" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Rotation</span>" },
      { "type": "float", "name": "Rotate", "default": "0", "min": "-180", "max": "180", "pos": "18" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Smooth [antialias]</span>" },
      { "type": "bool", "name": "Smooth [antialias]", "default": "0", "pos": "19" },
      { "type": "float", "name": "Amplitude", "default": "0.25", "min": "0", "max": "100", "pos": "20" },
      { "type": "float", "name": "Edge threshold (%)", "default": "10", "min": "0", "max": "100", "pos": "21" },
      { "type": "float", "name": "Smoothness", "default": "0.8", "min": "0", "max": "5", "pos": "22" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Update : 2020/10/24." }
      ]
    },
    {
      "name": "Chryzodes", "lang": "en", "command": "samj_Chryzodes", "command_preview": "samj_Chryzodes", "parameters": [
      { "type": "link", "name": "http://www.chryzode.org/fr/ligne.htm", "url": "http://www.chryzode.org/fr/ligne.htm", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"red\">New Image</span>" },
      { "type": "float", "name": "Image Dimensions", "default": "100", "min": "30", "max": "400", "pos": "1" },
      { "type": "color", "name": "Background Color", "default": "0,0,0,255", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"blue\">Rendering</span>" },
      { "type": "choice", "name": "Examples", "default": "0", "pos": "6", "choices": { "0": "None", "1": "431/7/VC=0", "2": "353/3/VC=0", "3": "619/4/VC=0", "4": "691/12/VC=0", "5": "613/20/VC=0", "6": "358/13/VC=1", "7": "118/20/VC=1", "8": "699/6/VC=0" } },
      { "type": "float", "name": "X Position (%)", "default": "50", "min": "0", "max": "100", "pos": "7", "visibility": "0" },
      { "type": "float", "name": "Y Position (%)", "default": "50", "min": "0", "max": "100", "pos": "8" },
      { "type": "float", "name": "External Circle Radius", "default": "45", "min": "10", "max": "200", "pos": "9" },
      { "type": "int", "name": "Number of Points - Module", "default": "79", "min": "10", "max": "1080", "pos": "10" },
      { "type": "int", "name": "Multiplier", "default": "3", "min": "3", "max": "33", "pos": "11" },
      { "type": "int", "name": "First Point", "default": "1", "min": "1", "max": "1080", "pos": "12" },
      { "type": "color", "name": "Color Straight Lines", "default": "240,128,64,255", "pos": "13" },
      { "type": "float", "name": "Tilt Angle", "default": "0", "min": "-360", "max": "360", "pos": "17" },
      { "type": "choice", "name": "Type Straight Lines", "default": "0", "pos": "18", "choices": { "0": "Lines Inside The Circle", "1": "Over The Entire Image" } },
      { "type": "choice", "name": "Random Colors", "default": "0", "pos": "19", "choices": { "0": "None", "1": "Variations", "2": "Lines" } },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"blue\">Variations Rendering Image Filter</span>" },
      { "type": "int", "name": "Variations A", "default": "0", "min": "0", "max": "1080", "pos": "20" },
      { "type": "int", "name": "Variations B", "default": "0", "min": "0", "max": "3", "pos": "21" },
      { "type": "bool", "name": "Variation C", "default": "0", "pos": "22" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"blue\">Changes Rendering Image Filter</span>" },
      { "type": "float", "name": "Blur", "default": "0", "min": "0", "max": "5", "pos": "23" },
      { "type": "int", "name": "Dilate", "default": "0", "min": "0", "max": "48", "pos": "24" },
      { "type": "float", "name": "Deform", "default": "0", "min": "0", "max": "5", "pos": "25" },
      { "type": "float", "name": "Noise", "default": "0", "min": "0", "max": "100", "pos": "26" },
      { "type": "bool", "name": "Draw The Circle", "default": "0", "pos": "27" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Latest update : 2020/10/24." }
      ]
    },
    {
      "name": "Circle Art", "lang": "en", "command": "fx_circle_art", "command_preview": "fx_circle_art", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Abstract rendering of spiraled circles. " },
      { "type": "separator" },
      { "type": "choice", "name": "Type", "default": "1", "pos": "1", "choices": { "0": "Random", "1": "Lissajous spiral" } },
      { "type": "float", "name": "Density", "default": "15", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Radius", "default": "0.5", "min": "0", "max": "1", "pos": "3" },
      { "type": "int", "name": "Modulo", "default": "8", "min": "2", "max": "16", "pos": "4" },
      { "type": "bool", "name": "Anti-Aliasing", "default": "1", "pos": "5" },
      { "type": "bool", "name": "Random Colors", "default": "1", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Lissajous parameters:" },
      { "type": "float", "name": "Curve Length", "default": "15", "min": "0", "max": "50", "pos": "7" },
      { "type": "float", "name": "Curve Angle", "default": "0", "min": "0", "max": "360", "pos": "8" },
      { "type": "float", "name": "Minimal Radius", "default": "0", "min": "-5", "max": "5", "pos": "9" },
      { "type": "float", "name": "Maximal Radius", "default": "0.5", "min": "-5", "max": "5", "pos": "10" },
      { "type": "float", "name": "X-Dispersion", "default": "1", "min": "0", "max": "4", "pos": "11" },
      { "type": "float", "name": "Y-Dispersion", "default": "1", "min": "0", "max": "4", "pos": "12" },
      { "type": "int", "name": "X-Factor", "default": "1", "min": "0", "max": "16", "pos": "13" },
      { "type": "int", "name": "Y-Factor", "default": "1", "min": "0", "max": "16", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2014/08/22." }
      ]
    },
    {
      "name": "Color Wheel", "lang": "en", "command": "cl_colorWheel", "command_preview": "cl_colorWheel", "parameters": [
      { "type": "note", "text": "Warning: This is an enormously gross approximation of the color models." },
      { "type": "note", "text": "Dimension:" },
      { "type": "float", "name": "External Circle Radius", "default": "200", "min": "10", "max": "1000", "pos": "1" },
      { "type": "float", "name": "Internal Circle Radius Percentage", "default": "80", "min": "1", "max": "99", "pos": "2" },
      { "type": "choice", "name": "Parts", "default": "0", "pos": "3", "choices": { "0": "x1", "1": "x2", "2": "x3", "3": "x4", "4": "Continuous" } },
      { "type": "separator" },
      { "type": "note", "text": "Colors:" },
      { "type": "choice", "name": "Type", "default": "0", "pos": "4", "choices": { "0": "Red-Green-Blue Model", "1": "Red-Yellow-Blue Model", "2": "Opponent Model" } },
      { "type": "separator" },
      { "type": "note", "text": "Rotation:" },
      { "type": "bool", "name": "Inverse Order", "default": "0", "pos": "5" },
      { "type": "float", "name": "Rotation", "default": "0", "min": "0", "max": "360", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Claude Lion. Latest Update: 2024/01/23." }
      ]
    },
    {
      "name": "Contour Line Laser", "lang": "en", "command": "samj_Contour_Line_Laser_LED", "command_preview": "samj_Contour_Line_Laser_LED", "parameters": [
      { "type": "link", "name": "https://samjcreations.blogspot.com/2019/12/samuser-avec-gmic-gimp-decoupes-laser.html", "url": "https://samjcreations.blogspot.com/2019/12/samuser-avec-gmic-gimp-decoupes-laser.html", "align": "center" },
      { "type": "note", "text": "Epaissir Adoucir Les Lignes Du Contour" },
      { "type": "note", "text": "Thick / Soft Contour Line" },
      { "type": "separator" },
      { "type": "note", "text": "Rendu - Rendering" },
      { "type": "choice", "name": "Type", "default": "0", "pos": "1", "choices": { "0": "Non / No", "1": "Gros/Thick Contour", "2": "Doux/Soft Contour", "3": "Gros+Doux/Thick+Soft Contour" } },
      { "type": "int", "name": "Dilatation", "default": "1", "min": "1", "max": "48", "pos": "2" },
      { "type": "bool", "name": "Ajuster Dimension Image", "default": "0", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2019/12/28." }
      ]
    },
    {
      "name": "Crazy Texture", "lang": "en", "command": "fx_crazy_texture", "command_preview": "fx_crazy_texture_preview", "parameters": [
      { "type": "note", "text": "Generates black and white textures using deformed edge offsets applied to Poisson-disk noise. The textures can range from smoothly-deformed and trippy to gnarled and wood-like." },
      { "type": "button", "name": "0. Recompute", "alignment": "0", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Poisson-Disk Noise" },
      { "type": "float", "name": "1. Radius", "default": "75", "min": "1", "max": "1000", "pos": "2" },
      { "type": "int", "name": "2. Max Sampling Attempts", "default": "30", "min": "1", "max": "200", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Edge Offsets" },
      { "type": "float", "name": "3. Smoothness", "default": "0", "min": "0", "max": "10", "pos": "4" },
      { "type": "float", "name": "4. Threshold", "default": "15", "min": "0", "max": "50", "pos": "5" },
      { "type": "int", "name": "5. Scale", "default": "6", "min": "0", "max": "64", "pos": "6" },
      { "type": "int", "name": "6. Thickness", "default": "3", "min": "0", "max": "32", "pos": "7" },
      { "type": "bool", "name": "7. Negative Colors", "default": "0", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Deform 1" },
      { "type": "note", "text": "Set matrix density to 1 for automatic size (coarse)" },
      { "type": "float", "name": "8. Strength", "default": "15", "min": "0", "max": "30", "pos": "9" },
      { "type": "choice", "name": "9. Interpolation", "default": "0", "pos": "10", "choices": { "0": "none", "1": "bilinear", "2": "bicubic" } },
      { "type": "float", "name": "10. Matrix Density (%)", "default": "1", "min": "1", "max": "100", "pos": "11" },
      { "type": "choice", "name": "11. Matrix Interpolation (%)", "default": "1", "pos": "12", "choices": { "0": "bilinear", "1": "bicubic" } },
      { "type": "float", "name": "12. Matrix Contrast", "default": "0", "min": "-100", "max": "100", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "Deform 2" },
      { "type": "note", "text": "Set matrix density to 1 for automatic size (fine)" },
      { "type": "float", "name": "13. Strength", "default": "1.5", "min": "0", "max": "30", "pos": "14" },
      { "type": "choice", "name": "14. Interpolation", "default": "0", "pos": "15", "choices": { "0": "none", "1": "bilinear", "2": "bicubic" } },
      { "type": "float", "name": "15. Matrix Density (%)", "default": "1", "min": "1", "max": "100", "pos": "16" },
      { "type": "choice", "name": "16. Matrix Interpolation (%)", "default": "1", "pos": "17", "choices": { "0": "bilinear", "1": "bicubic" } },
      { "type": "float", "name": "17. Matrix Contrast", "default": "0", "min": "-100", "max": "100", "pos": "18" },
      { "type": "separator" },
      { "type": "note", "text": "This can slow things down a lot if both deform strengths are high!" },
      { "type": "bool", "name": "18. Accurate Boundaries", "default": "1", "pos": "19" },
      { "type": "float", "name": "19. Crop Strength", "default": "1", "min": "0", "max": "1", "pos": "20" }
      ]
    },
    {
      "name": "Dessiner Un Polygone - Draw a Polygon", "lang": "en", "command": "samj_dessiner_un_polygone", "command_preview": "samj_dessiner_un_polygone", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Polygone / Polygone" },
      { "type": "int", "name": "Nombre de côtés / Number of sides", "default": "5", "min": "3", "max": "90", "pos": "1" },
      { "type": "float", "name": "Position X (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Position Y (%)", "default": "50", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Angle inclinaison", "default": "0", "min": "0", "max": "120", "pos": "4" },
      { "type": "float", "name": "Rayon cercle circonscrit / Circumcircle radius (>0 W%) (<0 H%)", "default": "40", "min": "-400", "max": "400", "pos": "5" },
      { "type": "float", "name": "Rayon cercle intérieur / Inner circle radius (%)", "default": "50", "min": "0", "max": "100", "pos": "6" },
      { "type": "bool", "name": "Remplir polygone extérieur / Fill", "default": "1", "pos": "7" },
      { "type": "color", "name": "Couleur polygone extérieur", "default": "255,255,0", "pos": "8" },
      { "type": "bool", "name": "Contour polygone extérieur", "default": "0", "pos": "11" },
      { "type": "color", "name": "Couleur contour polygone extérieur", "default": "0,0,0", "pos": "12" },
      { "type": "bool", "name": "Remplir polygone intérieur / Fill", "default": "1", "pos": "15" },
      { "type": "color", "name": "Couleur polygone intérieur", "default": "0,0,255", "pos": "16" },
      { "type": "bool", "name": "Contour polygone intérieur", "default": "0", "pos": "19" },
      { "type": "color", "name": "Couleur contour polygone intérieur", "default": "0,255,0", "pos": "20" },
      { "type": "choice", "name": "Variation de couleur / Color variation", "default": "0", "pos": "23", "choices": { "0": "Pas de variation / No change", "1": "Couleurs aleatoires / Random Colors", "2": "Faiblement nuancee / Poorly nuanced", "3": "Moyennement nuancee / Moderately nuanced", "4": "Fortement nuancee / Highly nuanced" } },
      { "type": "separator" },
      { "type": "note", "text": "cercles / circles" },
      { "type": "bool", "name": "Remplir cercle intérieur / Fill", "default": "0", "pos": "24" },
      { "type": "color", "name": "Couleur cercle intérieur", "default": "127,127,127", "pos": "25" },
      { "type": "bool", "name": "Contour cercle intérieur", "default": "0", "pos": "28" },
      { "type": "color", "name": "Couleur contour cercle intérieur", "default": "0,0,0", "pos": "29" },
      { "type": "bool", "name": "Remplir cercle extérieur / Fill", "default": "0", "pos": "32" },
      { "type": "color", "name": "Couleur cercle extérieur", "default": "255,255,255", "pos": "33" },
      { "type": "bool", "name": "Contour cercle extérieur", "default": "0", "pos": "36" },
      { "type": "color", "name": "Couleur contour cercle extérieur", "default": "0,0,0", "pos": "37" },
      { "type": "int", "name": "Dilatation (épaisseur)", "default": "1", "min": "1", "max": "48", "pos": "40" },
      { "type": "separator" },
      { "type": "note", "text": "Transparence / Transparency" },
      { "type": "int", "name": "Transparence des couleurs / Color transparency", "default": "255", "min": "0", "max": "255", "pos": "41" },
      { "type": "separator" },
      { "type": "note", "text": "Divers / Foo" },
      { "type": "float", "name": "Flou / Blur", "default": "0", "min": "0", "max": "10", "pos": "42" },
      { "type": "float", "name": "Spread", "default": "0", "min": "0", "max": "10", "pos": "43" },
      { "type": "float", "name": "Déformation", "default": "0", "min": "0", "max": "25", "pos": "44" },
      { "type": "separator" },
      { "type": "note", "text": "Mélange / Blend" },
      { "type": "choice", "name": "Mode", "default": "1", "pos": "45", "choices": { "0": "Add", "1": "Alpha", "2": "And", "3": "Average", "4": "Blue", "5": "Burn", "6": "Darken", "7": "Difference", "8": "Divide", "9": "Dodge", "10": "Exclusion", "11": "Freeze", "12": "Grain extract", "13": "Grain merge", "14": "Green", "15": "Hard light", "16": "Hard mix", "17": "Hue", "18": "Interpolation", "19": "Lighten", "20": "Lightness", "21": "Linear burn", "22": "Linear light", "23": "Luminance", "24": "Multiply", "25": "Negation", "26": "Or", "27": "Overlay", "28": "Pin light", "29": "Red", "30": "Reflect", "31": "Saturation", "32": "Shape Average", "33": "Shape Average0", "34": "Soft burn", "35": "Soft dodge", "36": "Soft light", "37": "Screen", "38": "Stamp", "39": "Subtract", "40": "Value", "41": "Vivid light", "42": "Xor" } },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/02/02." }
      ]
    },
    {
      "name": "Egg Oeuf Granville", "lang": "en", "command": "samj_Egg_Oeuf_Granville", "command_preview": "samj_Egg_Oeuf_Granville", "parameters": [
      { "type": "link", "name": "http://en.wikipedia.org/wiki/William_Anthony_Granville", "url": "http://en.wikipedia.org/wiki/William_Anthony_Granville", "align": "center" },
      { "type": "link", "name": "http://www.mathcurve.com/courbes2d/oeuf/oeufgranville.shtml", "url": "http://www.mathcurve.com/courbes2d/oeuf/oeufgranville.shtml", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Rendu - Rendering" },
      { "type": "float", "name": "Position X (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Position Y (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Décalage X", "default": "0", "min": "-100", "max": "100", "pos": "3" },
      { "type": "float", "name": "Valeur A Forme", "default": "20", "min": "0", "max": "100", "pos": "4", "visibility": "0" },
      { "type": "float", "name": "Valeur B Forme", "default": "30", "min": "1", "max": "100", "pos": "5" },
      { "type": "float", "name": "Valeur R Forme", "default": "10", "min": "0.1", "max": "99", "pos": "6" },
      { "type": "float", "name": "Angle Inclinaison", "default": "0", "min": "0", "max": "360", "pos": "7" },
      { "type": "color", "name": "Contours", "default": "0,0,0,255", "pos": "8" },
      { "type": "choice", "name": "Affichage Contours", "default": "1", "pos": "12", "choices": { "0": "Sans", "1": "Egg Oeuf", "2": "Egg Oeuf CA CB CR" } },
      { "type": "color", "name": "Couleur", "default": "255,255,0,127", "pos": "13" },
      { "type": "bool", "name": "Couleur aléatoire / Random color", "default": "0", "pos": "17" },
      { "type": "int", "name": "Inversions", "default": "0", "min": "0", "max": "3", "pos": "18" },
      { "type": "float", "name": "Flou / Blur", "default": "0", "min": "0", "max": "5", "pos": "19" },
      { "type": "int", "name": "Dilate", "default": "0", "min": "0", "max": "48", "pos": "20" },
      { "type": "float", "name": "Déformation", "default": "0", "min": "0", "max": "5", "pos": "21" },
      { "type": "float", "name": "Bruit / Noise", "default": "0", "min": "0", "max": "100", "pos": "22" },
      { "type": "bool", "name": "Ombre", "default": "0", "pos": "23" },
      { "type": "float", "name": "X-Ombre", "default": "0.5", "min": "-5", "max": "5", "pos": "24" },
      { "type": "float", "name": "Y-Ombre", "default": "0.5", "min": "-5", "max": "5", "pos": "25" },
      { "type": "float", "name": "Douceur / Smoothness Ombre", "default": "1.8", "min": "0", "max": "5", "pos": "26" },
      { "type": "float", "name": "Courbure / Curvature Ombre", "default": "0", "min": "0", "max": "1", "pos": "27" },
      { "type": "float", "name": "Compensation Décalage Ombre X", "default": "0", "min": "-50", "max": "50", "pos": "28" },
      { "type": "float", "name": "Compensation Décalage Ombre Y", "default": "0", "min": "-50", "max": "50", "pos": "29" },
      { "type": "bool", "name": "Canal Alpha", "default": "0", "pos": "30" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/02/02." }
      ]
    },
    {
      "name": "Egg Oeuf Hugelschaffer", "lang": "en", "command": "samj_Egg_Oeuf_Hugelschaffer", "command_preview": "samj_Egg_Oeuf_Hugelschaffer", "parameters": [
      { "type": "link", "name": "http://www.mathcurve.com/courbes2d/oeuf/oeuf.shtml", "url": "http://www.mathcurve.com/courbes2d/oeuf/oeuf.shtml", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Rendu - Rendering" },
      { "type": "float", "name": "Position X (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Position Y (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Dimension", "default": "50", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Valeur A Forme", "default": "6", "min": "0", "max": "10", "pos": "4" },
      { "type": "float", "name": "Valeur B Forme", "default": "48", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "Valeur D Forme", "default": "0", "min": "0", "max": "24", "pos": "6" },
      { "type": "float", "name": "Angle Inclinaison", "default": "0", "min": "0", "max": "360", "pos": "7" },
      { "type": "color", "name": "Contours", "default": "0,0,0,255", "pos": "8" },
      { "type": "choice", "name": "Affichage Contours", "default": "1", "pos": "12", "choices": { "0": "Sans", "1": "Egg Oeuf", "2": "Egg Oeuf CA CB" } },
      { "type": "color", "name": "Couleur", "default": "255,255,0,127", "pos": "13" },
      { "type": "bool", "name": "Couleur aléatoire / Random color", "default": "0", "pos": "17" },
      { "type": "int", "name": "Inversions", "default": "0", "min": "0", "max": "3", "pos": "18" },
      { "type": "float", "name": "Flou / Blur", "default": "0", "min": "0", "max": "5", "pos": "19" },
      { "type": "int", "name": "Dilate", "default": "0", "min": "0", "max": "48", "pos": "20" },
      { "type": "float", "name": "Déformation", "default": "0", "min": "0", "max": "5", "pos": "21" },
      { "type": "float", "name": "Bruit / Noise", "default": "0", "min": "0", "max": "100", "pos": "22" },
      { "type": "bool", "name": "Ombre", "default": "0", "pos": "23" },
      { "type": "float", "name": "X-Ombre", "default": "0.5", "min": "-5", "max": "5", "pos": "24" },
      { "type": "float", "name": "Y-Ombre", "default": "0.5", "min": "-5", "max": "5", "pos": "25" },
      { "type": "float", "name": "Douceur / Smoothness Ombre", "default": "1.8", "min": "0", "max": "5", "pos": "26" },
      { "type": "float", "name": "Courbure / Curvature Ombre", "default": "0", "min": "0", "max": "1", "pos": "27" },
      { "type": "float", "name": "Compensation Décalage Ombre X", "default": "0", "min": "-20", "max": "20", "pos": "28" },
      { "type": "float", "name": "Compensation Décalage Ombre Y", "default": "0", "min": "-20", "max": "20", "pos": "29" },
      { "type": "bool", "name": "Canal Alpha", "default": "0", "pos": "30" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/02/02." }
      ]
    },
    {
      "name": "Egg Oeuf Rosillo", "lang": "en", "command": "samj_Egg_Oeuf_Rosillo", "command_preview": "samj_Egg_Oeuf_Rosillo", "parameters": [
      { "type": "link", "name": "http://www.mathcurve.com/courbes2d/rosillo/rosillo.shtml", "url": "http://www.mathcurve.com/courbes2d/rosillo/rosillo.shtml", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Rendu - Rendering" },
      { "type": "float", "name": "Position X (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Position Y (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Valeur A Dimension", "default": "40", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Valeur B Forme 200%A", "default": "200", "min": "0", "max": "400", "pos": "4" },
      { "type": "float", "name": "Valeur C Forme 300%A", "default": "300", "min": "0", "max": "400", "pos": "5" },
      { "type": "float", "name": "Angle Inclinaison", "default": "0", "min": "0", "max": "360", "pos": "6" },
      { "type": "color", "name": "Contours", "default": "0,0,0,255", "pos": "7" },
      { "type": "choice", "name": "Affichage Contours", "default": "1", "pos": "11", "choices": { "0": "Sans", "1": "Egg Oeuf", "2": "Egg Oeuf CA CB CC" } },
      { "type": "color", "name": "Couleur", "default": "255,255,0,127", "pos": "12" },
      { "type": "bool", "name": "Couleur aléatoire / Random color", "default": "0", "pos": "16" },
      { "type": "int", "name": "Inversions", "default": "0", "min": "0", "max": "3", "pos": "17" },
      { "type": "float", "name": "Flou / Blur", "default": "0", "min": "0", "max": "5", "pos": "18" },
      { "type": "int", "name": "Dilate", "default": "0", "min": "0", "max": "48", "pos": "19" },
      { "type": "float", "name": "Déformation", "default": "0", "min": "0", "max": "5", "pos": "20" },
      { "type": "float", "name": "Bruit / Noise", "default": "0", "min": "0", "max": "100", "pos": "21" },
      { "type": "bool", "name": "Ombre", "default": "0", "pos": "22" },
      { "type": "float", "name": "X-Ombre", "default": "0.5", "min": "-5", "max": "5", "pos": "23" },
      { "type": "float", "name": "Y-Ombre", "default": "0.5", "min": "-5", "max": "5", "pos": "24" },
      { "type": "float", "name": "Douceur / Smoothness Ombre", "default": "1.8", "min": "0", "max": "5", "pos": "25" },
      { "type": "float", "name": "Courbure / Curvature Ombre", "default": "0", "min": "0", "max": "1", "pos": "26" },
      { "type": "float", "name": "Compensation Décalage Ombre X", "default": "0", "min": "-50", "max": "50", "pos": "27" },
      { "type": "float", "name": "Compensation Décalage Ombre Y", "default": "0", "min": "-50", "max": "50", "pos": "28" },
      { "type": "bool", "name": "Canal Alpha", "default": "0", "pos": "29" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/02/02." }
      ]
    },
    {
      "name": "Engrenages Gears Laser", "lang": "en", "command": "samj_Engrenages_Laser_LED", "command_preview": "samj_Engrenages_Laser_LED_Preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Engrenages Gears Laser Cutting Engraving" },
      { "type": "link", "name": "https://samjcreations.blogspot.com/2020/01/samuser-avec-gmic-gimp-engrenages.html", "url": "https://samjcreations.blogspot.com/2020/01/samuser-avec-gmic-gimp-engrenages.html", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Paramètres / Settings</span>" },
      { "type": "link", "name": "https://fr.wikipedia.org/wiki/Engrenage", "url": "https://fr.wikipedia.org/wiki/Engrenage", "align": "center" },
      { "type": "int", "name": "Module m [pixels]", "default": "80", "min": "10", "max": "200", "pos": "1" },
      { "type": "note", "text": "<span foreground=\"red\">Diminuer Angle De Pression alpha pour inscrire Z1 ou Z2 dans cercle de tête [ 14.5 par exemple ] </span>" },
      { "type": "float", "name": "Angle De Pression alpha / Pressure Angle [20 Degrés]", "default": "20", "min": "10", "max": "20", "pos": "2" },
      { "type": "int", "name": "Diam. trou central [pixels]", "default": "12", "min": "12", "max": "600", "pos": "3" },
      { "type": "int", "name": "Nb de dents roue Z1 / Nb of teeth gear Z1  [13...17]", "default": "14", "min": "7", "max": "151", "pos": "4" },
      { "type": "int", "name": "Nb de dents roue Z2 / Nb of teeth gear Z2 [13...39]", "default": "17", "min": "7", "max": "151", "pos": "5" },
      { "type": "choice", "name": "Forme", "default": "1", "pos": "6", "choices": { "0": "Dent plus petite - Calcul sur Cercle De Base", "1": "Dent=Creux sur Cercle Primitif" } },
      { "type": "bool", "name": "Contours +", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Trous pour assemblage / Mechanical assembly</span>" },
      { "type": "int", "name": "Nb. trous assemblage / Holes", "default": "2", "min": "0", "max": "12", "pos": "8" },
      { "type": "int", "name": "Diam. trous assemblage / Holes [pixels]", "default": "19", "min": "12", "max": "600", "pos": "9" },
      { "type": "int", "name": "Distance du centre / Center spacing [pixels]", "default": "250", "min": "12", "max": "3000", "pos": "10" },
      { "type": "float", "name": "Décalage Angulaire / Angular offset [Degrés]", "default": "0", "min": "0", "max": "360", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Mortaise clavette trou central / Keyway cutting</span>" },
      { "type": "link", "name": "https://fr.wikipedia.org/wiki/Clavette_(mécanique)", "url": "https://fr.wikipedia.org/wiki/Clavette_(mécanique)", "align": "center" },
      { "type": "int", "name": "Largeur / Width [pixels]", "default": "0", "min": "0", "max": "150", "pos": "12" },
      { "type": "int", "name": "Hauteur / Height [pixels]", "default": "0", "min": "0", "max": "100", "pos": "13" },
      { "type": "float", "name": "Décalage Angulaire / Angular offset [Degrés]", "default": "0", "min": "0", "max": "360", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"magenta\">Ce script est lent car les engrenages sont dessinés point par point.</span>" },
      { "type": "note", "text": "<span foreground=\"magenta\">Le script donne 3 calques de dimensions identiques max. 7200 pixels : </span>" },
      { "type": "note", "text": "<span foreground=\"magenta\"> - 1 calque au fond transparent avec des  données techniques.</span>" },
      { "type": "note", "text": "<span foreground=\"magenta\"> - 1 calque blanc avec un dessin noir pour la roue Z2.</span>" },
      { "type": "note", "text": "<span foreground=\"magenta\"> - 1 calque blanc avec un dessin noir pour la roue Z1.</span>" },
      { "type": "note", "text": "<span foreground=\"magenta\">This script is slow because the gears are plotted point by point.</span>" },
      { "type": "note", "text": "<span foreground=\"magenta\">The script gives 3 layers of the same dimensions max.7200 pixels : </span>" },
      { "type": "note", "text": "<span foreground=\"magenta\"> - 1 layer with transparent background with technical data.</span>" },
      { "type": "note", "text": "<span foreground=\"magenta\"> - 1 white layer with a black outline for the Z2 wheel.</span>" },
      { "type": "note", "text": "<span foreground=\"magenta\"> - 1 white layer with a black outline for the Z1 wheel.</span>" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/01/06." }
      ]
    },
    {
      "name": "Equation Plot [Implicit]", "lang": "en", "command": "cl_implicitEqua", "command_preview": "cl_implicitEqua", "parameters": [
      { "type": "note", "text": "Plot the equation: f(x,y)=0" },
      { "type": "note", "text": "- The x axis is drawn from left to right" },
      { "type": "note", "text": "- The y axis is drawn from bottom to top" },
      { "type": "note", "text": "- To reverse an axis, just swap min and max" },
      { "type": "separator" },
      { "type": "text", "name": "f(x,y)", "default": "( x^2 + y^2 - 25 )   *   ( (x-2)^2 + (y-2)^2 - 1 )   *   ( (x+2)^2 + (y-2)^2 - 1 )   *   ( abs(x) + abs(y) - 1 )   *   ( x^2 + (4*y+12-x^2)^2 - 9 )", "pos": "1" },
      { "type": "int", "name": "Width (pixels)", "default": "500", "min": "10", "max": "2000", "pos": "2" },
      { "type": "int", "name": "Height (pixels)", "default": "500", "min": "10", "max": "2000", "pos": "3" },
      { "type": "float", "name": "Min x", "default": "-6", "min": "-10000", "max": "10000", "pos": "4" },
      { "type": "float", "name": "Max x", "default": "6", "min": "-10000", "max": "10000", "pos": "5" },
      { "type": "float", "name": "Min y", "default": "-6", "min": "-10000", "max": "10000", "pos": "6" },
      { "type": "float", "name": "Max y", "default": "6", "min": "-10000", "max": "10000", "pos": "7" },
      { "type": "bool", "name": "Axes", "default": "0", "pos": "8" },
      { "type": "bool", "name": "Grid", "default": "0", "pos": "9" },
      { "type": "int", "name": "Grid Cell Size", "default": "1", "min": "1", "max": "5", "pos": "10" },
      { "type": "separator" },
      { "type": "link", "name": "Filter discussed here", "url": "http://gimpchat.com/viewtopic.php?f=28&t=21315", "align": "center" },
      { "type": "note", "text": "Author: Claude Lion. Latest Update: 2024/10/22." }
      ]
    },
    {
      "name": "Equation Plot [Parametric]", "lang": "en", "command": "fx_equation_parametric", "command_preview": "fx_equation_parametric", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Plots a parametric curve. " },
      { "type": "separator" },
      { "type": "text", "name": "X(t)", "default": "sin(t)*(exp(cos(t))-2*cos(4*t)-sin(t/12)^5)", "pos": "1" },
      { "type": "text", "name": "Y(t)", "default": "cos(t)*(exp(cos(t))-2*cos(4*t)-sin(t/12)^5)", "pos": "2" },
      { "type": "float", "name": "Min-t", "default": "0", "min": "-1000", "max": "1000", "pos": "3" },
      { "type": "float", "name": "Max-t", "default": "100", "min": "-1000", "max": "1000", "pos": "4" },
      { "type": "int", "name": "Resolution", "default": "4096", "min": "2", "max": "32768", "pos": "5" },
      { "type": "float", "name": "Outline Opacity", "default": "1", "min": "0", "max": "1", "pos": "6" },
      { "type": "int", "name": "Dot Size", "default": "0", "min": "0", "max": "16", "pos": "7" },
      { "type": "color", "name": "Start Color", "default": "64,0,0", "pos": "8" },
      { "type": "color", "name": "End Color", "default": "128,0,0", "pos": "11" },
      { "type": "bool", "name": "Colored Outline", "default": "1", "pos": "14" },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "15", "visibility": "0" },
      { "type": "bool", "name": "Decoration", "default": "1", "pos": "16" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/11/13." }
      ]
    },
    {
      "name": "Equation Plot [Y=f(X)]", "lang": "en", "command": "fx_equation_plot", "command_preview": "fx_equation_plot", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Plots a mathematical function y=f(x). " },
      { "type": "separator" },
      { "type": "text", "name": "F(X)", "default": "X*c+10*cos(X+c+u)", "pos": "1" },
      { "type": "float", "name": "X-Min", "default": "-10", "min": "-100", "max": "100", "pos": "2" },
      { "type": "float", "name": "X-Max", "default": "10", "min": "-100", "max": "100", "pos": "3" },
      { "type": "int", "name": "Resolution", "default": "100", "min": "2", "max": "1024", "pos": "4" },
      { "type": "int", "name": "Channels", "default": "3", "min": "1", "max": "32", "pos": "5" },
      { "type": "choice", "name": "Plot Type", "default": "2", "pos": "6", "choices": { "0": "None", "1": "Lines", "2": "Splines", "3": "Bars" } },
      { "type": "choice", "name": "Vertex Type", "default": "0", "pos": "7", "choices": { "0": "None", "1": "Points", "2": "Crosses 1", "3": "Crosses 2", "4": "Circles 1", "5": "Circles 2", "6": "Square 1", "7": "Square 2" } },
      { "type": "separator" },
      { "type": "note", "text": "Note : Use variable X instead of x in the above equation to take care of the X-min/max settings. Variable c refers to the current channel number. Variable u refers to a uniformly distributed random value in [0,1]. Reduce resolution to be able to view separate graph vertices." },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Etoile de Pompei", "lang": "en", "command": "samj_etoile_de_pompei_153", "command_preview": "samj_etoile_de_pompei_153", "parameters": [
      { "type": "separator" },
      { "type": "float", "name": "1 - Position X (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "2 - Position Y (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "3 - Angle inclinaison", "default": "30", "min": "0", "max": "60", "pos": "3" },
      { "type": "float", "name": "4 - Dimension (%)", "default": "90", "min": "0", "max": "200", "pos": "4" },
      { "type": "color", "name": "5 6 7 8 - Couleur / Color 1", "default": "255,255,255,255", "pos": "5" },
      { "type": "color", "name": "9 10 11 12 -Couleur / Color 2", "default": "170,255,255,255", "pos": "9" },
      { "type": "color", "name": "13 14 15 16 - Couleur / Color 3", "default": "0,98,147,255", "pos": "13" },
      { "type": "color", "name": "17 18 19 20 - Couleur / Color 4", "default": "0,59,89,255", "pos": "17" },
      { "type": "bool", "name": "21 - Remplir cercle / Fill circle", "default": "1", "pos": "21" },
      { "type": "int", "name": "22 - Smooth", "default": "0", "min": "0", "max": "2000", "pos": "22" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2022/08/21." }
      ]
    },
    {
      "name": "Etoile De Pompei Triangles Sierpinski", "lang": "en", "command": "samj_Etoile_De_Pompei_Triangles_Sierpinski", "command_preview": "samj_Etoile_De_Pompei_Triangles_Sierpinski", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Rendu - Rendering" },
      { "type": "float", "name": "Position X (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Position Y (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Angle inclinaison", "default": "30", "min": "0", "max": "60", "pos": "3" },
      { "type": "float", "name": "Dimension (>0 W%) (<0 H%)", "default": "100", "min": "-400", "max": "400", "pos": "4" },
      { "type": "color", "name": "Cadre", "default": "0,0,0,255", "pos": "5" },
      { "type": "choice", "name": "Afficher Cadre", "default": "0", "pos": "9", "choices": { "0": "Pas Affichage", "1": "Affichage Contours Centre", "2": "Affichage Contours" } },
      { "type": "int", "name": "Récursions Sierpinski", "default": "5", "min": "1", "max": "7", "pos": "10" },
      { "type": "color", "name": "Centre A", "default": "255,0,0,127", "pos": "11" },
      { "type": "color", "name": "Centre B", "default": "255,0,255,127", "pos": "15" },
      { "type": "color", "name": "Triangle", "default": "0,0,255,127", "pos": "19" },
      { "type": "color", "name": "Demi Losange A", "default": "0,255,255,127", "pos": "23" },
      { "type": "color", "name": "Demi Losange B", "default": "255,255,0,127", "pos": "27" },
      { "type": "color", "name": "Cercle", "default": "0,63,255,64", "pos": "31" },
      { "type": "bool", "name": "Couleurs aléatoires / Random Colors", "default": "0", "pos": "35" },
      { "type": "int", "name": "Inversions", "default": "0", "min": "0", "max": "3", "pos": "36" },
      { "type": "float", "name": "Flou / Blur", "default": "0", "min": "0", "max": "5", "pos": "37", "visibility": "0" },
      { "type": "int", "name": "Dilate", "default": "0", "min": "0", "max": "48", "pos": "38" },
      { "type": "float", "name": "Déformation", "default": "0", "min": "0", "max": "5", "pos": "39" },
      { "type": "float", "name": "Bruit / Noise", "default": "0", "min": "0", "max": "100", "pos": "40" },
      { "type": "bool", "name": "Ombre / Shadow", "default": "0", "pos": "41" },
      { "type": "float", "name": "X-Ombre X-Shadow", "default": "0.5", "min": "-5", "max": "5", "pos": "42" },
      { "type": "float", "name": "Y-Ombre Y-Shadow", "default": "0.5", "min": "-5", "max": "5", "pos": "43" },
      { "type": "float", "name": "Douceur Ombre / Smoothness Shadow", "default": "1.8", "min": "0", "max": "5", "pos": "44" },
      { "type": "float", "name": "Courbure Ombre / Curvature Shadow", "default": "0", "min": "0", "max": "1", "pos": "45" },
      { "type": "float", "name": "Décalage Ombre X / Shadow Offset X", "default": "0", "min": "-20", "max": "20", "pos": "46" },
      { "type": "float", "name": "Décalage Ombre Y / Shadow Offset Y", "default": "0", "min": "-20", "max": "20", "pos": "47" },
      { "type": "bool", "name": "Canal Alpha", "default": "0", "pos": "48" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/02/02." }
      ]
    },
    {
      "name": "Etoiles Remplies Triangles Sierpinski", "lang": "en", "command": "samj_Etoiles_Remplies_Triangles_Sierpinski", "command_preview": "samj_Etoiles_Remplies_Triangles_Sierpinski", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Rendu - Rendering" },
      { "type": "int", "name": "Nombre De Sommets", "default": "6", "min": "2", "max": "18", "pos": "1" },
      { "type": "float", "name": "Position X (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Position Y (%)", "default": "50", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Rayon cercle extérieur / Outer circle radius (>0 W%) (<0 H%)", "default": "50", "min": "-400", "max": "400", "pos": "4" },
      { "type": "float", "name": "Rayon cercle intérieur / Inner circle radius (%)", "default": "40", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "Angle inclinaison", "default": "30", "min": "0", "max": "60", "pos": "6" },
      { "type": "float", "name": "Excentricité / Eccentricity (%)", "default": "0", "min": "0", "max": "100", "pos": "7" },
      { "type": "float", "name": "Angle excentricité / Eccentricity angle", "default": "0", "min": "0", "max": "360", "pos": "8" },
      { "type": "color", "name": "Contours", "default": "0,0,0,255", "pos": "9" },
      { "type": "choice", "name": "Affichage", "default": "1", "pos": "13", "choices": { "0": "Pas De Contours A", "1": "Pas De Contours B", "2": "Pas De Contours C", "3": "Pas De Contours D", "4": "Contours A", "5": "Contours B", "6": "Contours C", "7": "Contours D" } },
      { "type": "int", "name": "Recursions Sierpinski", "default": "4", "min": "0", "max": "7", "pos": "14" },
      { "type": "color", "name": "Centre A", "default": "255,0,0,127", "pos": "15" },
      { "type": "color", "name": "Centre B", "default": "255,192,64,127", "pos": "19" },
      { "type": "color", "name": "Sommets A", "default": "0,0,255,127", "pos": "23" },
      { "type": "color", "name": "Sommets B", "default": "0,255,255,127", "pos": "27" },
      { "type": "color", "name": "Cercle", "default": "255,255,0,127", "pos": "31" },
      { "type": "bool", "name": "Couleurs aléatoires / Random Colors", "default": "0", "pos": "35" },
      { "type": "int", "name": "Inversions", "default": "0", "min": "0", "max": "3", "pos": "36" },
      { "type": "float", "name": "Flou / Blur", "default": "0", "min": "0", "max": "5", "pos": "37" },
      { "type": "int", "name": "Dilate", "default": "0", "min": "0", "max": "48", "pos": "38" },
      { "type": "float", "name": "Déformation", "default": "0", "min": "0", "max": "5", "pos": "39" },
      { "type": "float", "name": "Bruit / Noise", "default": "0", "min": "0", "max": "100", "pos": "40" },
      { "type": "bool", "name": "Ombre / Shadow", "default": "0", "pos": "41", "visibility": "0" },
      { "type": "float", "name": "X-Ombre X-Shadow", "default": "0.5", "min": "-5", "max": "5", "pos": "42" },
      { "type": "float", "name": "Y-Ombre Y-Shadow", "default": "0.5", "min": "-5", "max": "5", "pos": "43" },
      { "type": "float", "name": "Douceur Ombre / Smoothness Shadow", "default": "1.8", "min": "0", "max": "5", "pos": "44" },
      { "type": "float", "name": "Courbure Ombre / Curvature Shadow", "default": "0", "min": "0", "max": "1", "pos": "45" },
      { "type": "float", "name": "Décalage Ombre X / Shadow Offset X", "default": "0", "min": "-20", "max": "20", "pos": "46" },
      { "type": "float", "name": "Décalage Ombre Y / Shadow Offset Y", "default": "0", "min": "-20", "max": "20", "pos": "47" },
      { "type": "bool", "name": "Canal Alpha", "default": "0", "pos": "48" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Etoiles Stars Laser", "lang": "en", "command": "samj_Etoiles_Laser_LED", "command_preview": "samj_Etoiles_Laser_LED", "parameters": [
      { "type": "note", "text": "Étoiles/Stars Laser Cutting Engraving" },
      { "type": "note", "text": "Formes Arrondies / Rounded Shapes" },
      { "type": "separator" },
      { "type": "note", "text": "Rendu - Rendering" },
      { "type": "int", "name": "Dimension X Y", "default": "1400", "min": "800", "max": "3200", "pos": "1" },
      { "type": "int", "name": "Nb Branches / Rays", "default": "5", "min": "5", "max": "72", "pos": "2" },
      { "type": "choice", "name": "Type", "default": "2", "pos": "3", "choices": { "0": "Pompei A 12 Branches/Rays", "1": "Pompei B 12 Branches/Rays", "2": "C", "3": "Annular SteinerChains", "4": "Traits/Strokes", "5": "Gear", "6": "Spirographe 4" } },
      { "type": "choice", "name": "Affichage / Display Contours", "default": "0", "pos": "4", "choices": { "0": "Non / No", "1": "Contours Image", "2": "Contours Étoile/Star", "3": "Contours Image + Étoile/Star" } },
      { "type": "int", "name": "Dilate", "default": "0", "min": "0", "max": "48", "pos": "5" },
      { "type": "float", "name": "Cercle Central Noir/Black", "default": "0", "min": "0", "max": "48", "pos": "6" },
      { "type": "float", "name": "Cercle Central Blanc/White", "default": "0", "min": "0", "max": "48", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2019/12/27." }
      ]
    },
    {
      "name": "Flocon Snowflake Laser", "lang": "en", "command": "samj_Flocon_Laser_LED", "command_preview": "samj_Flocon_Laser_LED", "parameters": [
      { "type": "note", "text": "Flocon/Snowflake Laser Cutting Engraving" },
      { "type": "separator" },
      { "type": "note", "text": "Rendu - Rendering" },
      { "type": "int", "name": "Dimension X Y", "default": "1400", "min": "800", "max": "3200", "pos": "1" },
      { "type": "int", "name": "Nb Branches / Rays", "default": "6", "min": "3", "max": "15", "pos": "2" },
      { "type": "choice", "name": "Type Flocon / Snowflake", "default": "5", "pos": "3", "choices": { "0": "A", "1": "B", "2": "C", "3": "A2", "4": "B2", "5": "C2" } },
      { "type": "choice", "name": "Affichage / Display Contours", "default": "0", "pos": "4", "choices": { "0": "Non / No", "1": "Contours Image", "2": "Contours Flocon/Snowflake", "3": "Contours Image + Flocon/Snowflake" } },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2019/12/26." }
      ]
    },
    {
      "name": "Fractal Tree", "lang": "en", "command": "samj_Fractal_Tree", "command_preview": "samj_Fractal_Tree", "parameters": [
      { "type": "separator" },
      { "type": "link", "name": "Source code from rosettacode.org", "url": "https://www.rosettacode.org/wiki/Fractal_tree", "align": "center" },
      { "type": "float", "name": "X Origine", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Y Origine", "default": "100", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Angle Origine", "default": "-90", "min": "-360", "max": "360", "pos": "3" },
      { "type": "int", "name": "Depth", "default": "8", "min": "1", "max": "13", "pos": "4" },
      { "type": "float", "name": "Variation Dimension", "default": "10", "min": "1", "max": "500", "pos": "5" },
      { "type": "float", "name": "Variation Angle", "default": "20", "min": "-360", "max": "360", "pos": "6", "visibility": "0" },
      { "type": "color", "name": "Color", "default": "255,0,0,255", "pos": "7" },
      { "type": "int", "name": "Color Variation [random -1]", "default": "20", "min": "-1", "max": "255", "pos": "11" },
      { "type": "choice", "name": "Rendering", "default": "0", "pos": "12", "choices": { "0": "Lines", "1": "Circles A", "2": "Circles B" } },
      { "type": "int", "name": "Circle Dimension", "default": "4", "min": "1", "max": "50", "pos": "13" },
      { "type": "int", "name": "Dilatation", "default": "1", "min": "1", "max": "8", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Smooth [antialias]</span>" },
      { "type": "bool", "name": "Smooth [antialias]", "default": "0", "pos": "15" },
      { "type": "float", "name": "Amplitude", "default": "0.25", "min": "0", "max": "100", "pos": "16" },
      { "type": "float", "name": "Edge threshold (%)", "default": "10", "min": "0", "max": "100", "pos": "17" },
      { "type": "float", "name": "Smoothness", "default": "0.8", "min": "0", "max": "5", "pos": "18" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Update : 2020/10/24." }
      ]
    },
    {
      "name": "Generate Random Portrait", "lang": "en", "command": "fx_generate_random_portrait", "command_preview": "fx_generate_random_portrait_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a random face (StyleGAN). " },
      { "type": "separator" },
      { "type": "int", "name": "Resolution (px)", "default": "800", "min": "0", "max": "2048", "pos": "1" },
      { "type": "button", "name": "Update Portrait", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "This filter loads data from the website:" },
      { "type": "link", "name": "https://thispersondoesnotexist.com/", "url": "https://thispersondoesnotexist.com/", "align": "center" },
      { "type": "note", "text": "It means it doesn't perform any calculations on your machine and it requires an active Internet connection." },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.       Latest Update: 2022/04/14." }
      ]
    },
    {
      "name": "Gradient [Corners]", "lang": "en", "command": "fx_corner_gradient", "command_preview": "fx_corner_gradient", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a gradient from defined corner colors. " },
      { "type": "separator" },
      { "type": "color", "name": "Color 1 (Up/Left Corner)", "default": "255,255,255,128", "pos": "1" },
      { "type": "color", "name": "Color 2 (Up/Right Corner)", "default": "255,0,0,255", "pos": "5" },
      { "type": "color", "name": "Color 3 (Bottom/Left Corner)", "default": "0,255,0,255", "pos": "9" },
      { "type": "color", "name": "Color 4 (Bottom/Right Corner)", "default": "0,0,255,255", "pos": "13" },
      { "type": "int", "name": "Quantization", "default": "0", "min": "0", "max": "64", "pos": "17" },
      { "type": "separator" },
      { "type": "choice", "name": "Colorspace", "default": "1", "pos": "18", "choices": { "0": "sRGB", "1": "Linear RGB", "2": "Lab" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2025/10/20." }
      ]
    },
    {
      "name": "Gradient [Custom Shape]", "lang": "en", "command": "fx_custom_gradient", "command_preview": "fx_custom_gradient_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a gradient conforming to an input shape. " },
      { "type": "separator" },
      { "type": "note", "text": "Shape selection:" },
      { "type": "choice", "name": "Select By", "default": "0", "pos": "1", "choices": { "0": "Auto", "1": "Dark Pixels", "2": "Bright Pixels", "3": "Opaque Pixels" } },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "2", "visibility": "0" },
      { "type": "float", "name": "Threshold", "default": "0", "min": "0", "max": "100", "pos": "3" },
      { "type": "bool", "name": "Preview Shape", "default": "1", "pos": "4" },
      { "type": "note", "text": "Note: Shapes with small strokes may lead to incorrect previews." },
      { "type": "separator" },
      { "type": "note", "text": "Gradient parameters:" },
      { "type": "int", "name": "Number of Colors", "default": "4", "min": "2", "max": "10", "pos": "5" },
      { "type": "float", "name": "Cycles", "default": "1", "min": "1", "max": "16", "pos": "6" },
      { "type": "float", "name": "Offset", "default": "0", "min": "0", "max": "100", "pos": "7" },
      { "type": "float", "name": "Shading", "default": "128", "min": "1", "max": "256", "pos": "8" },
      { "type": "float", "name": "Inner Length", "default": "100", "min": "0", "max": "100", "pos": "9" },
      { "type": "float", "name": "Outer Length", "default": "100", "min": "0", "max": "100", "pos": "10" },
      { "type": "choice", "name": "Spatial Metric", "default": "2", "pos": "11", "choices": { "0": "Chebyshev", "1": "Manhattan", "2": "Euclidean" } },
      { "type": "choice", "name": "Color Metric", "default": "0", "pos": "12", "choices": { "0": "RGB", "1": "HSV", "2": "Lab" } },
      { "type": "bool", "name": "Shade Back to First Color", "default": "1", "pos": "13" },
      { "type": "bool", "name": "Preview Gradient", "default": "0", "pos": "14" },
      { "type": "text", "name": "Save Gradient As", "default": "", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "Color definitions:" },
      { "type": "choice", "name": "Colormap Type", "default": "1", "pos": "16", "choices": { "0": "Pre-Defined", "1": "User-Defined" } },
      { "type": "int", "name": "Pre-Defined Colormap", "default": "0", "min": "0", "max": "65535", "pos": "17" },
      { "type": "color", "name": "1st Color", "default": "0,0,0,255", "pos": "18" },
      { "type": "color", "name": "2nd Color", "default": "255,0,0,255", "pos": "22" },
      { "type": "color", "name": "3rd Color", "default": "255,255,0,255", "pos": "26" },
      { "type": "color", "name": "4th Color", "default": "255,255,255,255", "pos": "30" },
      { "type": "color", "name": "5th Color", "default": "0,255,255,255", "pos": "34" },
      { "type": "color", "name": "6th Color", "default": "0,255,0,255", "pos": "38" },
      { "type": "color", "name": "7th Color", "default": "0,0,255,255", "pos": "42" },
      { "type": "color", "name": "8th Color", "default": "128,128,128,255", "pos": "46" },
      { "type": "color", "name": "9th Color", "default": "255,0,255,255", "pos": "50" },
      { "type": "color", "name": "10th Color", "default": "0,0,0,0", "pos": "54" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/10/03." }
      ]
    },
    {
      "name": "Gradient [from Curve]", "lang": "en", "command": "fx_gradient_from_curve", "command_preview": "fx_gradient_from_curve_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Extract a color gradient that follows a curve. " },
      { "type": "separator" },
      { "type": "int", "name": "Number of Control Points", "default": "2", "min": "2", "max": "6", "pos": "1" },
      { "type": "point", "name": "Starting Point (%)", "position": "0,0", "pos": "2" },
      { "type": "point", "name": "Mid Point #1 (%)", "position": "20,20", "pos": "4", "visibility": "0" },
      { "type": "point", "name": "Mid Point #2 (%)", "position": "40,40", "pos": "6", "visibility": "0" },
      { "type": "point", "name": "Mid Point #3 (%)", "position": "60,60", "pos": "8", "visibility": "0" },
      { "type": "point", "name": "Mid Point #4 (%)", "position": "80,80", "pos": "10", "visibility": "0" },
      { "type": "point", "name": "Ending Point (%)", "position": "100,100", "pos": "12" },
      { "type": "separator" },
      { "type": "float", "name": "Sampling (%)", "default": "100", "min": "0", "max": "100", "pos": "14" },
      { "type": "int", "name": "Length", "default": "0", "min": "0", "max": "4096", "pos": "15" },
      { "type": "note", "text": "Note: Set length to 0 to release gradient length constraints." },
      { "type": "choice", "name": "Sort Colors", "default": "0", "pos": "16", "choices": { "0": "Don't Sort", "1": "By Red Component", "2": "By Green Component", "3": "By Blue Component", "4": "By Luminance", "5": "By Blue Chrominance", "6": "By Red Chrominance", "7": "By Lightness" } },
      { "type": "bool", "name": "Reverse Gradient", "default": "0", "pos": "17" },
      { "type": "separator" },
      { "type": "bool", "name": "Preview Gradient", "default": "1", "pos": "18" },
      { "type": "file", "name": "Save Gradient As", "default": "", "pos": "19" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2025/02/05." }
      ]
    },
    {
      "name": "Gradient [Linear]", "lang": "en", "command": "fx_linear_gradient", "command_preview": "fx_linear_gradient", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a standard linear color gradient. " },
      { "type": "separator" },
      { "type": "color", "name": "Starting Color", "default": "0,0,0,255", "pos": "1" },
      { "type": "color", "name": "Ending Color", "default": "255,255,255,255", "pos": "5" },
      { "type": "bool", "name": "Swap Colors", "default": "0", "pos": "9" },
      { "type": "float", "name": "Angle (deg.)", "default": "45", "min": "0", "max": "360", "pos": "10" },
      { "type": "float", "name": "Fade Start (%)", "default": "0", "min": "0", "max": "100", "pos": "11" },
      { "type": "float", "name": "Fade End (%)", "default": "100", "min": "0", "max": "100", "pos": "12" },
      { "type": "int", "name": "Quantization", "default": "0", "min": "0", "max": "64", "pos": "13" },
      { "type": "separator" },
      { "type": "choice", "name": "Colorspace", "default": "0", "pos": "14", "choices": { "0": "sRGB", "1": "Linear RGB", "2": "Lab" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2025/10/20." }
      ]
    },
    {
      "name": "Gradient [Poles]", "lang": "en", "command": "fx_gradient_poles", "command_preview": "fx_gradient_poles_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a color gradient between control points. " },
      { "type": "separator" },
      { "type": "choice", "name": "φ(r)", "default": "4", "pos": "1", "choices": { "0": "exp(-r)", "1": "√(1+r²)", "2": "r", "3": "r³", "4": "r.log(1+r)" } },
      { "type": "choice", "name": "Colorspace", "default": "0", "pos": "2", "choices": { "0": "sRGB", "1": "Linear RGB", "2": "Lab" } },
      { "type": "int", "name": "Quantization", "default": "0", "min": "0", "max": "64", "pos": "3" },
      { "type": "separator" },
      { "type": "point", "name": "Point #0", "position": "25,25", "pos": "4", "visibility": "0" },
      { "type": "color", "name": "Color #0", "default": "0,0,0,255", "pos": "6" },
      { "type": "separator" },
      { "type": "point", "name": "Point #1", "position": "75,25", "pos": "10" },
      { "type": "color", "name": "Color #1", "default": "0,0,255,255", "pos": "12" },
      { "type": "separator" },
      { "type": "point", "name": "Point #2", "position": "75,75", "pos": "16" },
      { "type": "color", "name": "Color #2", "default": "0,255,0,255", "pos": "18" },
      { "type": "separator" },
      { "type": "point", "name": "Point #3", "position": "25,75", "pos": "22" },
      { "type": "color", "name": "Color #3", "default": "0,255,255,255", "pos": "24" },
      { "type": "separator" },
      { "type": "point", "name": "Point #4", "position": "50,50", "pos": "28" },
      { "type": "color", "name": "Color #4", "default": "255,0,0,255", "pos": "30" },
      { "type": "separator" },
      { "type": "point", "name": "Point #5", "position": "10,50", "pos": "34" },
      { "type": "color", "name": "Color #5", "default": "255,0,255,255", "pos": "36" },
      { "type": "separator" },
      { "type": "point", "name": "Point #6", "position": "20,50", "pos": "40" },
      { "type": "color", "name": "Color #6", "default": "255,255,0,255", "pos": "42" },
      { "type": "separator" },
      { "type": "point", "name": "Point #7", "position": "30,50", "pos": "46" },
      { "type": "color", "name": "Color #7", "default": "255,255,255,255", "pos": "48" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé       Latest Update: 2025/10/23." }
      ]
    },
    {
      "name": "Gradient [Radial]", "lang": "en", "command": "fx_radial_gradient", "command_preview": "fx_radial_gradient", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a circular radial color gradient. " },
      { "type": "separator" },
      { "type": "color", "name": "Starting Color", "default": "0,0,0,255", "pos": "1" },
      { "type": "color", "name": "Ending Color", "default": "255,255,255,255", "pos": "5" },
      { "type": "bool", "name": "Swap Colors", "default": "0", "pos": "9" },
      { "type": "float", "name": "Fade Start", "default": "0", "min": "0", "max": "100", "pos": "10" },
      { "type": "float", "name": "Fade End", "default": "100", "min": "0", "max": "100", "pos": "11" },
      { "type": "int", "name": "Quantization", "default": "0", "min": "0", "max": "64", "pos": "12" },
      { "type": "point", "name": "Center (%)", "position": "50,50", "pos": "13" },
      { "type": "separator" },
      { "type": "choice", "name": "Colorspace", "default": "0", "pos": "15", "choices": { "0": "sRGB", "1": "Linear RGB", "2": "Lab" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2015/06/29." }
      ]
    },
    {
      "name": "Gradient [Random]", "lang": "en", "command": "fx_random_gradient", "command_preview": "fx_random_gradient", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a color gradient with random colors/positions. " },
      { "type": "separator" },
      { "type": "int", "name": "Density", "default": "32", "min": "1", "max": "1024", "pos": "1" },
      { "type": "int", "name": "Seed", "default": "0", "min": "0", "max": "65535", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "3" },
      { "type": "int", "name": "Quantization", "default": "0", "min": "0", "max": "64", "pos": "4" },
      { "type": "color", "name": "Color Balance", "default": "128,128,128", "pos": "5" },
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/04/08." }
      ]
    },
    {
      "name": "Gradient CIE Lab [Linear]", "lang": "en", "command": "samj_Linear_Gradient_CIE_Lab", "command_preview": "samj_Linear_Gradient_CIE_Lab", "parameters": [
      { "type": "link", "name": "http://samjcreations.blogspot.ca", "url": "http://samjcreations.blogspot.ca", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Dégradé / Gradient CIE Lab" },
      { "type": "choice", "name": "Type H / V", "default": "0", "pos": "1", "choices": { "0": "H", "1": "V" } },
      { "type": "bool", "name": "Swap colors", "default": "0", "pos": "2" },
      { "type": "color", "name": "Starting color A", "default": "240,40,160,255", "pos": "3" },
      { "type": "color", "name": "Ending color B", "default": "240,240,40,255", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Latest update : 2020/10/24." }
      ]
    },
    {
      "name": "Gradient CIE Lab [Shape]", "lang": "en", "command": "samj_Shape_Linear_Gradient_CIE_Lab", "command_preview": "samj_Shape_Linear_Gradient_CIE_Lab", "parameters": [
      { "type": "link", "name": "http://samjcreations.blogspot.ca", "url": "http://samjcreations.blogspot.ca", "align": "center" },
      { "type": "note", "text": "Dégradé / Gradient CIE Lab" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"red\">Starting Point / Diameter :</span>" },
      { "type": "float", "name": "X0", "default": "10", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Y0", "default": "10", "min": "0", "max": "100", "pos": "2" },
      { "type": "note", "text": "<span foreground=\"blue\">Ending Point / Center :</span>" },
      { "type": "float", "name": "X1", "default": "90", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Y1", "default": "90", "min": "0", "max": "100", "pos": "4", "visibility": "0" },
      { "type": "note", "text": "<span foreground=\"black\">Parameters :</span>" },
      { "type": "choice", "name": "Shape", "default": "2", "pos": "5", "choices": { "0": "Linear H", "1": "Linear V", "2": "Square", "3": "Square Overflow", "4": "Circle X0", "5": "Circle X0+YO" } },
      { "type": "bool", "name": "Swap colors", "default": "0", "pos": "6" },
      { "type": "color", "name": "Starting color A", "default": "240,40,160,255", "pos": "7" },
      { "type": "color", "name": "Ending color B", "default": "240,240,40,255", "pos": "11" },
      { "type": "choice", "name": "Background", "default": "0", "pos": "15", "choices": { "0": "Image", "1": "Transparent", "2": "Color" } },
      { "type": "color", "name": "Background color", "default": "0,0,0,255", "pos": "16" },
      { "type": "choice", "name": "Examples", "default": "0", "pos": "20", "choices": { "0": "None", "1": "10 10 90 90 Linear H", "2": "10 10 90 90 Linear V", "3": "10 10 90 90 Square", "4": "10 10 90 90 Square Overflow", "5": "40 40 50 50 Circle X0", "6": "40 40 50 50 Circle X0+YO", "7": "71 71 100 100 Circle X0+YO" } },
      { "type": "separator" },
      { "type": "note", "text": "samj - Latest update : 2020/10/24." }
      ]
    },
    {
      "name": "Hair Locks", "lang": "en", "command": "gtutor_hairlock", "command_preview": "gtutor_hairlock_preview", "parameters": [
      { "type": "note", "text": "Geometry" },
      { "type": "float", "name": "Spread", "default": "0.5", "min": "0", "max": "1", "pos": "1" },
      { "type": "float", "name": "Thickness", "default": "0.5", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "Length", "default": "0.5", "min": "0", "max": "1", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Color" },
      { "type": "color", "name": "Color", "default": "255,255,0,255", "pos": "4" },
      { "type": "float", "name": "Variance", "default": "0.5", "min": "0", "max": "1", "pos": "8", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Lighting" },
      { "type": "float", "name": "Azimuth", "default": "45", "min": "0", "max": "360", "pos": "9" },
      { "type": "float", "name": "Highlight", "default": "0.5", "min": "0", "max": "1", "pos": "10" },
      { "type": "float", "name": "Specular", "default": "0.5", "min": "0", "max": "1", "pos": "11" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "12", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Garry R. Osgood. Latest update: 2014/12/11." },
      { "type": "link", "name": "Hairlock instructions and tutorial.", "url": "https://gmic.eu/oldtutorial/the-hairlock-filter.shtml", "align": "center" }
      ]
    },
    {
      "name": "Harmonograph", "lang": "en", "command": "Harmonograph_samj", "command_preview": "Harmonograph_samj", "parameters": [
      { "type": "link", "name": "http://en.wikipedia.org/wiki/Harmonograph", "url": "http://en.wikipedia.org/wiki/Harmonograph", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Centre / Center" },
      { "type": "float", "name": "Centre / Center X (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Centre / Center Y (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Harmonograph" },
      { "type": "color", "name": "Stylo / Pen (Couleur/Color)", "default": "192,128,64,255", "pos": "3" },
      { "type": "choice", "name": "Stylo / Pen (Variation de couleur/Color variation)", "default": "0", "pos": "7", "choices": { "0": "Pas de variation / No change", "1": "Couleurs aleatoires / Random Colors", "2": "Faiblement nuancee / Poorly nuanced", "3": "Moyennement nuancee / Moderately nuanced", "4": "Fortement nuancee / Highly nuanced" } },
      { "type": "int", "name": "Stylo / Pen (Dilate Pixels)", "default": "0", "min": "0", "max": "32", "pos": "8" },
      { "type": "int", "name": "Itérations", "default": "1000", "min": "2", "max": "30000", "pos": "9", "visibility": "0" },
      { "type": "choice", "name": "Multiplier", "default": "0", "pos": "10", "choices": { "0": "Iterations * 1", "1": "Iterations * 5 LENT / SLOW", "2": "Iterations * 10 TRES LENT / VERY SLOW" } },
      { "type": "float", "name": "Increment Temps / Time increment [*10000]", "default": "400", "min": "10", "max": "500", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Amplitude" },
      { "type": "float", "name": "Amplitude 1 (>0 W) (<0 H)", "default": "150", "min": "-1000", "max": "1000", "pos": "12" },
      { "type": "float", "name": "Amplitude 2 (>0 W) (<0 H)", "default": "200", "min": "-1000", "max": "1000", "pos": "13" },
      { "type": "float", "name": "Amplitude 3 (>0 W) (<0 H)", "default": "200", "min": "-1000", "max": "1000", "pos": "14" },
      { "type": "float", "name": "Amplitude 4 (>0 W) (<0 H)", "default": "100", "min": "-1000", "max": "1000", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "Fréquence / Frequency" },
      { "type": "float", "name": "Fréquence 1", "default": "4", "min": "0", "max": "16", "pos": "16" },
      { "type": "float", "name": "Fréquence 2", "default": "6", "min": "0", "max": "16", "pos": "17" },
      { "type": "float", "name": "Fréquence 3", "default": "2", "min": "0", "max": "16", "pos": "18" },
      { "type": "float", "name": "Fréquence 4", "default": "2", "min": "0", "max": "16", "pos": "19" },
      { "type": "separator" },
      { "type": "note", "text": "Phase" },
      { "type": "float", "name": "Phase 1", "default": "15", "min": "0", "max": "360", "pos": "20" },
      { "type": "float", "name": "Phase 2", "default": "270", "min": "0", "max": "360", "pos": "21" },
      { "type": "float", "name": "Phase 3", "default": "75", "min": "0", "max": "360", "pos": "22" },
      { "type": "float", "name": "Phase 4", "default": "60", "min": "0", "max": "360", "pos": "23" },
      { "type": "separator" },
      { "type": "note", "text": "Amortissement / Damping" },
      { "type": "float", "name": "Amortissement 1", "default": "0.04", "min": "0", "max": "1", "pos": "24" },
      { "type": "float", "name": "Amortissement 2", "default": "0.04", "min": "0", "max": "1", "pos": "25" },
      { "type": "float", "name": "Amortissement 3", "default": "0.05", "min": "0", "max": "1", "pos": "26" },
      { "type": "float", "name": "Amortissement 4", "default": "0.06", "min": "0", "max": "1", "pos": "27" },
      { "type": "separator" },
      { "type": "note", "text": "Divers / Foo" },
      { "type": "float", "name": "Flou / Blur", "default": "0", "min": "0", "max": "10", "pos": "28" },
      { "type": "float", "name": "Spread", "default": "0", "min": "0", "max": "10", "pos": "29" },
      { "type": "float", "name": "Déformation", "default": "0", "min": "0", "max": "25", "pos": "30" },
      { "type": "separator" },
      { "type": "note", "text": "Mélange / Blend" },
      { "type": "choice", "name": "Mode", "default": "1", "pos": "31", "choices": { "0": "Add", "1": "Alpha", "2": "And", "3": "Average", "4": "Blue", "5": "Burn", "6": "Darken", "7": "Difference", "8": "Divide", "9": "Dodge", "10": "Edges", "11": "Exclusion", "12": "Freeze", "13": "Grain extract", "14": "Grain merge", "15": "Green", "16": "Hard light", "17": "Hard mix", "18": "Hue", "19": "Interpolation", "20": "Lighten", "21": "Lightness", "22": "Linear burn", "23": "Linear light", "24": "Luminance", "25": "Multiply", "26": "Negation", "27": "Or", "28": "Overlay", "29": "Pin light", "30": "Red", "31": "Reflect", "32": "Saturation", "33": "Shape Average", "34": "Shape Average0", "35": "Soft burn", "36": "Soft dodge", "37": "Soft light", "38": "Screen", "39": "Stamp", "40": "Subtract", "41": "Value", "42": "Vivid light", "43": "Xor" } },
      { "type": "float", "name": "Opacité / Opacity", "default": "1", "min": "0", "max": "1", "pos": "32" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/02/02." }
      ]
    },
    {
      "name": "Hawaiian Earring", "lang": "en", "command": "samj_Hawaiian_Earring", "command_preview": "samj_Hawaiian_Earring", "parameters": [
      { "type": "link", "name": "http://en.wikipedia.org/wiki/Hawaiian_earring", "url": "http://en.wikipedia.org/wiki/Hawaiian_earring", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Rendu - Rendering" },
      { "type": "float", "name": "Position X (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Position Y (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Rayon Cercle A / Circle A Radius (%)", "default": "40", "min": "1", "max": "200", "pos": "3" },
      { "type": "int", "name": "Nb Cercles / Circles", "default": "6", "min": "2", "max": "25", "pos": "4" },
      { "type": "choice", "name": "Type n", "default": "0", "pos": "5", "choices": { "0": "Inc 1", "1": "Lin 0.1", "2": "Lin 0.2", "3": "Lin 0.3", "4": "Rand" } },
      { "type": "float", "name": "Angle Inclinaison / Tilt", "default": "0", "min": "0", "max": "360", "pos": "6" },
      { "type": "color", "name": "Contours", "default": "0,0,0,255", "pos": "7" },
      { "type": "bool", "name": "Affichage / Display Contours", "default": "1", "pos": "11" },
      { "type": "color", "name": "Cercle A / Circle A", "default": "255,255,0,127", "pos": "12" },
      { "type": "color", "name": "Cercles B / Circles B", "default": "0,0,255,127", "pos": "16" },
      { "type": "bool", "name": "Couleurs aléatoires / Random Colors", "default": "0", "pos": "20" },
      { "type": "choice", "name": "Miroir /  Mirror", "default": "0", "pos": "21", "choices": { "0": "Sans - Wihout", "1": " X ", "2": " Y ", "3": " X Y " } },
      { "type": "float", "name": "Flou / Blur", "default": "0", "min": "0", "max": "5", "pos": "22" },
      { "type": "int", "name": "Dilate", "default": "0", "min": "0", "max": "48", "pos": "23" },
      { "type": "float", "name": "Déformation", "default": "0", "min": "0", "max": "5", "pos": "24" },
      { "type": "float", "name": "Bruit / Noise", "default": "0", "min": "0", "max": "100", "pos": "25" },
      { "type": "bool", "name": "Ombre / Shadow", "default": "0", "pos": "26" },
      { "type": "float", "name": "X-Ombre X-Shadow", "default": "0.5", "min": "-5", "max": "5", "pos": "27" },
      { "type": "float", "name": "Y-Ombre Y-Shadow", "default": "0.5", "min": "-5", "max": "5", "pos": "28" },
      { "type": "float", "name": "Douceur Ombre / Smoothness Shadow", "default": "1.8", "min": "0", "max": "5", "pos": "29" },
      { "type": "float", "name": "Courbure Ombre / Curvature Shadow", "default": "0", "min": "0", "max": "1", "pos": "30" },
      { "type": "float", "name": "Décalage Ombre X / Shadow Offset X", "default": "0", "min": "-20", "max": "20", "pos": "31" },
      { "type": "float", "name": "Décalage Ombre Y / Shadow Offset Y", "default": "0", "min": "-20", "max": "20", "pos": "32" },
      { "type": "bool", "name": "Canal Alpha", "default": "0", "pos": "33" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Hypotrochoid", "lang": "en", "command": "fx_hypotrochoid", "command_preview": "fx_hypotrochoid", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Draws hypotrochoid curves (Spirograph-like). " },
      { "type": "separator" },
      { "type": "int", "name": "Periods", "default": "37", "min": "1", "max": "100", "pos": "1" },
      { "type": "float", "name": "Outer Radius (%)", "default": "100", "min": "0", "max": "300", "pos": "2" },
      { "type": "float", "name": "Inner Radius (%)", "default": "74", "min": "0", "max": "300", "pos": "3" },
      { "type": "float", "name": "Distance to center (%)", "default": "80", "min": "0", "max": "300", "pos": "4" },
      { "type": "float", "name": "Thickness (%)", "default": "0.5", "min": "0", "max": "5", "pos": "5" },
      { "type": "color", "name": "Color", "default": "255,255,255,255", "pos": "6" },
      { "type": "bool", "name": "Anti-aliasing", "default": "1", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2021/01/25." }
      ]
    },
    {
      "name": "Lightning", "lang": "en", "command": "fx_lightning", "command_preview": "fx_lightning_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates procedural lightning bolts. " },
      { "type": "separator" },
      { "type": "note", "text": "Global parameters:" },
      { "type": "int", "name": "Number of Streaks", "default": "20", "min": "1", "max": "1024", "pos": "1" },
      { "type": "float", "name": "Size (%)", "default": "90", "min": "0", "max": "150", "pos": "2", "visibility": "0" },
      { "type": "int", "name": "Resolution", "default": "256", "min": "2", "max": "4096", "pos": "3" },
      { "type": "float", "name": "Randomness", "default": "3", "min": "0", "max": "16", "pos": "4", "visibility": "0" },
      { "type": "float", "name": "Smoothness", "default": "1.5", "min": "0", "max": "10", "pos": "5" },
      { "type": "float", "name": "Balance", "default": "0.75", "min": "0", "max": "1", "pos": "6", "visibility": "0" },
      { "type": "color", "name": "Color", "default": "255,255,255,255", "pos": "7" },
      { "type": "int", "name": "Seed", "default": "0", "min": "0", "max": "65535", "pos": "11", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Initial streak:" },
      { "type": "point", "name": "XY-Coordinates (%)", "position": "50,5", "pos": "12", "visibility": "0" },
      { "type": "float", "name": "Angle (deg)", "default": "0", "min": "-180", "max": "180", "pos": "14" },
      { "type": "int", "name": "Thickness (px)", "default": "6", "min": "1", "max": "64", "pos": "15", "visibility": "0" },
      { "type": "float", "name": "Blur", "default": "0.2", "min": "0", "max": "3", "pos": "16" },
      { "type": "separator", "visibility": "0" },
      { "type": "note", "text": "Auxiliary streaks:", "visibility": "0" },
      { "type": "float", "name": "Min Offset (%)", "default": "25", "min": "0", "max": "100", "pos": "17", "visibility": "0" },
      { "type": "float", "name": "Max Offset (%)", "default": "60", "min": "0", "max": "100", "pos": "18", "visibility": "0" },
      { "type": "float", "name": "Min Length (%)", "default": "95", "min": "0", "max": "200", "pos": "19" },
      { "type": "float", "name": "Max Length (%)", "default": "100", "min": "0", "max": "200", "pos": "20" },
      { "type": "float", "name": "Min Angle Deviation (deg)", "default": "30", "min": "0", "max": "180", "pos": "21" },
      { "type": "float", "name": "Max Angle Deviation (deg)", "default": "40", "min": "0", "max": "180", "pos": "22" },
      { "type": "float", "name": "Thickness Factor", "default": "-0.25", "min": "-1", "max": "1", "pos": "23" },
      { "type": "float", "name": "Blur Factor", "default": "-0.1", "min": "-1", "max": "1", "pos": "24" },
      { "type": "float", "name": "Opacity Factor", "default": "-0.20", "min": "-1", "max": "1", "pos": "25" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2014/11/27." }
      ]
    },
    {
      "name": "Lines of Varying Thickness", "lang": "en", "command": "samj_Lignes_Epaisseur_Variable", "command_preview": "samj_Lignes_Epaisseur_Variable", "parameters": [
      { "type": "note", "text": "Lignes Épaisseur Variable / Lines Of Varying Thickness" },
      { "type": "separator" },
      { "type": "note", "text": "Rendu - Rendering" },
      { "type": "choice", "name": "Orientation Lignes / Lines", "default": "0", "pos": "1", "choices": { "0": "Vertical lines", "1": "Horizontal lines" }, "visibility": "0" },
      { "type": "int", "name": "Résolution Largeur / Width", "default": "32", "min": "16", "max": "64", "pos": "2" },
      { "type": "int", "name": "Épaisseur Ligne / Line Thickness", "default": "3", "min": "1", "max": "7", "pos": "3" },
      { "type": "color", "name": "Fond / Background", "default": "0,0,0,255", "pos": "4" },
      { "type": "color", "name": "Ligne / Line", "default": "255,255,255,255", "pos": "8" },
      { "type": "bool", "name": "Inverser Fond-Ligne / Invert Background-Line", "default": "0", "pos": "12" },
      { "type": "bool", "name": "Couleurs aléatoires / Random Colors", "default": "0", "pos": "13" },
      { "type": "choice", "name": "Resize", "default": "1", "pos": "14", "choices": { "0": "Non / No", "1": "Dim. Origines" } },
      { "type": "int", "name": "Flou / Blur", "default": "0", "min": "0", "max": "200", "pos": "15" },
      { "type": "int", "name": "Deblur", "default": "0", "min": "0", "max": "48", "pos": "16" },
      { "type": "int", "name": "Dilate", "default": "0", "min": "0", "max": "48", "pos": "17" },
      { "type": "float", "name": "Déformation / Deform", "default": "0", "min": "0", "max": "5", "pos": "18" },
      { "type": "float", "name": "Bruit / Noise", "default": "0", "min": "0", "max": "100", "pos": "19" },
      { "type": "bool", "name": "Ombre / Shadow", "default": "0", "pos": "20" },
      { "type": "float", "name": "X-Ombre X-Shadow", "default": "0.5", "min": "-5", "max": "5", "pos": "21" },
      { "type": "float", "name": "Y-Ombre Y-Shadow", "default": "0.5", "min": "-5", "max": "5", "pos": "22" },
      { "type": "float", "name": "Douceur Ombre / Smoothness Shadow", "default": "1.8", "min": "0", "max": "5", "pos": "23" },
      { "type": "float", "name": "Courbure Ombre / Curvature Shadow", "default": "0", "min": "0", "max": "1", "pos": "24" },
      { "type": "bool", "name": "Canal Alpha", "default": "0", "pos": "25" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Lissajous", "lang": "en", "command": "fx_lissajous", "command_preview": "fx_lissajous", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Draws Lissajous curves. " },
      { "type": "separator" },
      { "type": "int", "name": "Resolution", "default": "4096", "min": "2", "max": "8192", "pos": "1" },
      { "type": "separator" },
      { "type": "float", "name": "X-Size", "default": "0.9", "min": "0", "max": "2", "pos": "2" },
      { "type": "float", "name": "Y-Size", "default": "0.9", "min": "0", "max": "2", "pos": "3" },
      { "type": "float", "name": "Z-Size", "default": "3", "min": "1", "max": "10", "pos": "4" },
      { "type": "separator" },
      { "type": "float", "name": "X-Multiplier", "default": "8", "min": "0", "max": "32", "pos": "5" },
      { "type": "float", "name": "Y-Multiplier", "default": "7", "min": "0", "max": "32", "pos": "6" },
      { "type": "float", "name": "Z-Multiplier", "default": "0", "min": "0", "max": "32", "pos": "7" },
      { "type": "separator" },
      { "type": "float", "name": "X-Offset", "default": "0", "min": "0", "max": "1", "pos": "8" },
      { "type": "float", "name": "Y-Offset", "default": "0", "min": "0", "max": "1", "pos": "9" },
      { "type": "float", "name": "Z-Offset", "default": "0", "min": "0", "max": "1", "pos": "10" },
      { "type": "separator" },
      { "type": "float", "name": "X-Angle", "default": "0", "min": "0", "max": "360", "pos": "11" },
      { "type": "float", "name": "Y-Angle", "default": "0", "min": "0", "max": "360", "pos": "12" },
      { "type": "float", "name": "Z-Angle", "default": "0", "min": "0", "max": "360", "pos": "13" },
      { "type": "separator" },
      { "type": "float", "name": "Thickness", "default": "4", "min": "0", "max": "50", "pos": "14" },
      { "type": "color", "name": "Color", "default": "255,255,255,255", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2011/04/18." }
      ]
    },
    {
      "name": "Mandelbrot - Julia Sets", "lang": "en", "command": "fx_mandelbrot", "command_preview": "fx_mandelbrot_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Renders Mandelbrot and Julia set fractals. " },
      { "type": "separator" },
      { "type": "value", "value": "-2", "pos": "1" },
      { "type": "value", "value": "-2", "pos": "2" },
      { "type": "value", "value": "2", "pos": "3" },
      { "type": "value", "value": "2", "pos": "4" },
      { "type": "note", "text": "Fractal Type:" },
      { "type": "choice", "name": "Fractal Set", "default": "0", "pos": "5", "choices": { "0": "Mandelbrot", "1": "Julia" } },
      { "type": "int", "name": "Iterations", "default": "1024", "min": "16", "max": "65535", "pos": "6" },
      { "type": "float", "name": "X-Seed (Julia)", "default": "0.317", "min": "-2", "max": "2", "pos": "7" },
      { "type": "float", "name": "Y-Seed (Julia)", "default": "0.03", "min": "-2", "max": "2", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Colormap:" },
      { "type": "int", "name": "Number of Colors", "default": "16", "min": "2", "max": "2048", "pos": "9" },
      { "type": "int", "name": "Smoothness", "default": "8", "min": "1", "max": "256", "pos": "10" },
      { "type": "int", "name": "Seed", "default": "255", "min": "0", "max": "65536", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Navigation:" },
      { "type": "point", "name": "Zoom Center", "position": "50,50", "pos": "12", "visibility": "0" },
      { "type": "float", "name": "Zoom Factor", "default": "0.75", "min": "0", "max": "1", "pos": "14" },
      { "type": "button", "name": "Zoom In", "pos": "15" },
      { "type": "button", "name": "Center", "pos": "16" },
      { "type": "button", "name": "Zoom Out", "pos": "17" },
      { "type": "bool", "name": "Display Coordinates", "default": "0", "pos": "18" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2018/06/27." }
      ]
    },
    {
      "name": "Neon Carpet", "lang": "en", "command": "cl_neonCarpet", "command_preview": "cl_neonCarpet", "parameters": [
      { "type": "int", "name": "Sequence Number", "default": "0", "min": "0", "max": "200", "pos": "1" },
      { "type": "int", "name": "Item Number", "default": "0", "min": "0", "max": "100", "pos": "2" },
      { "type": "bool", "name": "Invert", "default": "0", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Note: Some combinations of parameters give a completely black result" },
      { "type": "note", "text": "Author: Claude Lion. Latest Update: 2024/12/11." },
      { "type": "note", "text": "It uses filters of David Tschumperlé and Andy Kelday (garagecoder)" }
      ]
    },
    {
      "name": "Neon Lightning", "lang": "en", "command": "fx_neon_lightning", "command_preview": "fx_neon_lightning", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates neon-colored glowing lightning. " },
      { "type": "separator" },
      { "type": "point", "name": "Source (%)", "position": "50,50", "pos": "1" },
      { "type": "float", "name": "R0", "default": "0", "min": "0", "max": "100", "pos": "3" },
      { "type": "point", "name": "Destination (%)", "position": "50,50", "pos": "4" },
      { "type": "float", "name": "R1", "default": "100", "min": "0", "max": "100", "pos": "6" },
      { "type": "separator" },
      { "type": "int", "name": "Density", "default": "50", "min": "1", "max": "512", "pos": "7" },
      { "type": "float", "name": "Glow", "default": "0.7", "min": "0", "max": "5", "pos": "8" },
      { "type": "float", "name": "Thickness", "default": "3", "min": "0", "max": "20", "pos": "9" },
      { "type": "separator" },
      { "type": "color", "name": "Color", "default": "130,80,50", "pos": "10" },
      { "type": "float", "name": "Color Dispersion", "default": "0.25", "min": "0", "max": "1", "pos": "13" },
      { "type": "float", "name": "Transparency", "default": "0", "min": "0", "max": "1", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2015/06/30." }
      ]
    },
    {
      "name": "Newton Fractal", "lang": "en", "command": "fx_newton_fractal", "command_preview": "fx_newton_fractal_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Renders a Newton fractal. " },
      { "type": "separator" },
      { "type": "value", "value": "-2", "pos": "1" },
      { "type": "value", "value": "-2", "pos": "2" },
      { "type": "value", "value": "2", "pos": "3" },
      { "type": "value", "value": "2", "pos": "4" },
      { "type": "note", "text": "<span color=\"#EE5500\">Fractal Type:</span>" },
      { "type": "choice", "name": "Expression", "default": "2", "pos": "5", "choices": { "0": "Custom", "1": "z^^2 - 1", "2": "z^^3 - 1", "3": "z^^5 - 1", "4": "z^^6 + z^^3 - 1", "5": "z^^8 + 15*z^^4 - 1" } },
      { "type": "text", "name": "p(z)", "default": "rot(35°)*z^^3 - z^^2 + 1", "pos": "6", "visibility": "1" },
      { "type": "text", "name": "p'(z)", "default": "3*z^^2 - 2*z", "pos": "7", "visibility": "1" },
      { "type": "text", "name": "p''(z)", "default": "6*z - 2", "pos": "8", "visibility": "1" },
      { "type": "choice", "name": "Descent method", "default": "1", "pos": "9", "choices": { "0": "Secant", "1": "Newton", "2": "Householder" } },
      { "type": "int", "name": "Max iterations", "default": "200", "min": "16", "max": "1024", "pos": "10" },
      { "type": "float", "name": "Precision", "default": "2", "min": "0", "max": "12", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Rendering:</span>" },
      { "type": "choice", "name": "Coloring", "default": "1", "pos": "12", "choices": { "0": "By Custom Expression", "1": "By Iteration", "2": "By Value" } },
      { "type": "int", "name": "Number of Colors", "default": "16", "min": "2", "max": "2048", "pos": "13" },
      { "type": "int", "name": "Smoothness", "default": "8", "min": "1", "max": "256", "pos": "14" },
      { "type": "int", "name": "Seed", "default": "255", "min": "0", "max": "65536", "pos": "15" },
      { "type": "choice", "name": "Colorspace", "default": "2", "pos": "16", "choices": { "0": "HSI", "1": "HSL", "2": "HSV" }, "visibility": "0" },
      { "type": "float", "name": "Hue min (%)", "default": "100", "min": "0", "max": "500", "pos": "17", "visibility": "0" },
      { "type": "float", "name": "Hue max (%)", "default": "150", "min": "0", "max": "500", "pos": "18", "visibility": "0" },
      { "type": "float", "name": "Lightness min (%)", "default": "20", "min": "0", "max": "500", "pos": "19", "visibility": "0" },
      { "type": "float", "name": "Lightness max (%)", "default": "400", "min": "0", "max": "500", "pos": "20", "visibility": "0" },
      { "type": "choice", "name": "Colorspace", "default": "3", "pos": "21", "choices": { "0": "RGB", "1": "HSI", "2": "HSL", "3": "HSV", "4": "Lab" }, "visibility": "0" },
      { "type": "choice", "name": "Pre-Process", "default": "2", "pos": "22", "choices": { "0": "None", "1": "Equalize", "2": "Normalize", "3": "Equalize and Normalize" }, "visibility": "0" },
      { "type": "note", "text": "<span color=\"#EE5500\">Tips for Custom expressions:</span>\n - Variables i0,i1 stand for the real and imaginary parts of the iterated complex number.\n - Variable i2 is the number of iterations required for convergence.\n - Variable z is the complex number with value [ i0,i1 ].\n - Functions p(z), dp(z) and d2p(z) are the expressions used for computing the fractal. " },
      { "type": "text", "name": "Channel #1", "default": "carg(-z)", "pos": "23", "visibility": "0" },
      { "type": "text", "name": "Channel #2", "default": "(i0 + i1)/2", "pos": "24", "visibility": "0" },
      { "type": "text", "name": "Channel #3", "default": "10*(i2^0.4)", "pos": "25", "visibility": "0" },
      { "type": "choice", "name": "Post-Process", "default": "0", "pos": "26", "choices": { "0": "None", "1": "Equalize", "2": "Normalize", "3": "Equalize and Normalize" }, "visibility": "0" },
      { "type": "float", "name": "Brightness (%)", "default": "0", "min": "-100", "max": "100", "pos": "27" },
      { "type": "float", "name": "Contrast (%)", "default": "0", "min": "-100", "max": "100", "pos": "28" },
      { "type": "float", "name": "Gamma (%)", "default": "0", "min": "-100", "max": "100", "pos": "29" },
      { "type": "float", "name": "Hue (%)", "default": "0", "min": "-100", "max": "100", "pos": "30" },
      { "type": "float", "name": "Saturation (%)", "default": "0", "min": "-100", "max": "100", "pos": "31" },
      { "type": "float", "name": "Equalization (%)", "default": "0", "min": "0", "max": "100", "pos": "32" },
      { "type": "choice", "name": "Anti-aliasing", "default": "2", "pos": "33", "choices": { "0": "x1", "1": "x1.5", "2": "x2", "3": "x2.5", "4": "x3", "5": "x3.5", "6": "4" } },
      { "type": "note", "text": "Note: Anti-aliasing is applied on final rendering only, not on preview." },
      { "type": "value", "value": "0", "pos": "34", "visibility": "2" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Navigation:</span>" },
      { "type": "point", "name": "Zoom Center", "position": "50,50", "pos": "35" },
      { "type": "float", "name": "Zoom Factor", "default": "0.5", "min": "0", "max": "1", "pos": "37" },
      { "type": "float", "name": "Angle", "default": "0", "min": "-180", "max": "180", "pos": "38" },
      { "type": "button", "name": "Zoom In", "pos": "39" },
      { "type": "button", "name": "Center", "pos": "40" },
      { "type": "button", "name": "Zoom Out", "pos": "41" },
      { "type": "button", "name": "Reset View", "pos": "42" },
      { "type": "bool", "name": "Display Coordinates on Preview Window", "default": "1", "pos": "43" },
      { "type": "choice", "name": "Preview subsampling", "default": "2", "pos": "44", "choices": { "0": "None", "1": "x1.5", "2": "x2", "3": "x2.5", "4": "x3", "5": "x3.5", "6": "x4" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2019/01/09." }
      ]
    },
    {
      "name": "Orbites", "lang": "en", "command": "samj_Orbites", "command_preview": "samj_Orbites", "parameters": [
      { "type": "link", "name": "https://youtu.be/_JgHQU1Fntg", "url": "https://youtu.be/_JgHQU1Fntg", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"red\">New Image</span>" },
      { "type": "float", "name": "Image Dimensions", "default": "100", "min": "30", "max": "400", "pos": "1" },
      { "type": "color", "name": "Background Color", "default": "0,0,0,255", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"blue\">Rendering</span>" },
      { "type": "float", "name": "X Position (%)", "default": "50", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "Y Position (%)", "default": "50", "min": "0", "max": "100", "pos": "7" },
      { "type": "float", "name": "Circle A Radius", "default": "20", "min": "10", "max": "1000", "pos": "8" },
      { "type": "int", "name": "Number of Points Circle A", "default": "79", "min": "10", "max": "1080", "pos": "9" },
      { "type": "float", "name": "Circle B Radius", "default": "45", "min": "1", "max": "1000", "pos": "10" },
      { "type": "float", "name": "Multiplier Number of Points Circle B", "default": "2", "min": "0.1", "max": "20", "pos": "11" },
      { "type": "color", "name": "Color Straight Lines", "default": "240,128,64,255", "pos": "12" },
      { "type": "float", "name": "Tilt Angle A", "default": "0", "min": "-360", "max": "360", "pos": "16" },
      { "type": "float", "name": "Tilt Angle B", "default": "0", "min": "-360", "max": "360", "pos": "17" },
      { "type": "bool", "name": "Random Colors", "default": "0", "pos": "18" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"blue\">Changes Rendering Image Filter</span>" },
      { "type": "float", "name": "Blur", "default": "0", "min": "0", "max": "5", "pos": "19" },
      { "type": "int", "name": "Dilate", "default": "0", "min": "0", "max": "48", "pos": "20" },
      { "type": "float", "name": "Deform", "default": "0", "min": "0", "max": "5", "pos": "21" },
      { "type": "float", "name": "Noise", "default": "0", "min": "0", "max": "100", "pos": "22" },
      { "type": "bool", "name": "Draw Circles", "default": "0", "pos": "23" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Latest update : 2018/02/04." }
      ]
    },
    {
      "name": "Palette De Degrades", "lang": "en", "command": "samj_Palette_De_Degrades", "command_preview": "samj_Palette_De_Degrades_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">samj_Palette_De_Degrades - Gradient Palette</span>" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"blue\">Obtenir des degrades avec 12 couleurs plus noir et blanc en option - Lent</span>" },
      { "type": "note", "text": "<span foreground=\"blue\">Get gradients from 12 colors with optional black and white - Slow</span>" },
      { "type": "separator" },
      { "type": "color", "name": "Couleur - Color A", "default": "159,190,195", "pos": "1" },
      { "type": "color", "name": "Couleur - Color B", "default": "55,67,140", "pos": "4" },
      { "type": "color", "name": "Couleur - Color C", "default": "54,40,39", "pos": "7" },
      { "type": "color", "name": "Couleur - Color D", "default": "140,81,88", "pos": "10" },
      { "type": "color", "name": "Couleur - Color E", "default": "207,175,190", "pos": "13" },
      { "type": "color", "name": "Couleur - Color F", "default": "220,202,196", "pos": "16" },
      { "type": "color", "name": "Couleur - Color G", "default": "170,186,192", "pos": "19" },
      { "type": "color", "name": "Couleur - Color H", "default": "130,149,139", "pos": "22" },
      { "type": "color", "name": "Couleur - Color I", "default": "112,96,96", "pos": "25" },
      { "type": "color", "name": "Couleur - Color J", "default": "237,168,138", "pos": "28" },
      { "type": "color", "name": "Couleur - Color K", "default": "220,199,205", "pos": "31" },
      { "type": "color", "name": "Couleur - Color L", "default": "234,217,219", "pos": "34" },
      { "type": "bool", "name": "Ajouter du Noir - Add Black", "default": "0", "pos": "37" },
      { "type": "bool", "name": "Ajouter du Blanc - Add White", "default": "0", "pos": "38" },
      { "type": "int", "name": "Étendue Degradé - Width", "default": "256", "min": "2", "max": "1024", "pos": "39" },
      { "type": "int", "name": "Hauteur d'un Degradé - Height Of One Gradient", "default": "2", "min": "2", "max": "20", "pos": "40" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Pappus Chain", "lang": "en", "command": "samj_Cercles_Tangents_Dans_Cercle", "command_preview": "samj_Cercles_Tangents_Dans_Cercle", "parameters": [
      { "type": "link", "name": "http://en.wikipedia.org/wiki/Pappus_chain", "url": "http://en.wikipedia.org/wiki/Pappus_chain", "align": "center" },
      { "type": "link", "name": "http://en.wikipedia.org/wiki/Steiner_chain", "url": "http://en.wikipedia.org/wiki/Steiner_chain", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Rendu - Rendering" },
      { "type": "float", "name": "Position X (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Position Y (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Rayon Cercle Extérieur / Radius Outer Circle A (>0 W%) (<0 H%)", "default": "50", "min": "-400", "max": "400", "pos": "3" },
      { "type": "float", "name": "Rayon Premier Cercle B", "default": "40", "min": "0", "max": "99", "pos": "4" },
      { "type": "float", "name": "Angle Inclinaison / Tilt", "default": "0", "min": "0", "max": "360", "pos": "5" },
      { "type": "color", "name": "Contours", "default": "0,0,0,255", "pos": "6" },
      { "type": "bool", "name": "Affichage / Display Contours", "default": "1", "pos": "10" },
      { "type": "color", "name": "Cercle Extérieur / Outer Circle A", "default": "127,127,127,127", "pos": "11" },
      { "type": "color", "name": "Premier Cercle / First Circle B", "default": "255,0,0,127", "pos": "15" },
      { "type": "color", "name": "Cercle / Circle C", "default": "0,255,0,127", "pos": "19" },
      { "type": "color", "name": "Cercle / Circle D", "default": "0,0,255,127", "pos": "23" },
      { "type": "color", "name": "Cercle / Circle E", "default": "255,0,255,127", "pos": "27" },
      { "type": "color", "name": "Cercle / Circle F", "default": "255,255,0,127", "pos": "31" },
      { "type": "color", "name": "Cercle / Circle G", "default": "0,255,255,127", "pos": "35" },
      { "type": "color", "name": "Cercle / Circle H", "default": "192,128,64,127", "pos": "39" },
      { "type": "color", "name": "Cercle / Circle I", "default": "64,192,128,127", "pos": "43" },
      { "type": "color", "name": "Cercle / Circle J", "default": "128,64,192,127", "pos": "47" },
      { "type": "color", "name": "Cercle / Circle K", "default": "192,64,128,127", "pos": "51" },
      { "type": "bool", "name": "Couleurs aléatoires / Random Colors", "default": "0", "pos": "55" },
      { "type": "int", "name": "Inversions", "default": "0", "min": "0", "max": "3", "pos": "56" },
      { "type": "float", "name": "Flou / Blur", "default": "0", "min": "0", "max": "5", "pos": "57" },
      { "type": "int", "name": "Dilate", "default": "0", "min": "0", "max": "48", "pos": "58" },
      { "type": "float", "name": "Déformation", "default": "0", "min": "0", "max": "5", "pos": "59" },
      { "type": "float", "name": "Bruit / Noise", "default": "0", "min": "0", "max": "100", "pos": "60" },
      { "type": "bool", "name": "Ombre / Shadow", "default": "0", "pos": "61" },
      { "type": "float", "name": "X-Ombre X-Shadow", "default": "0.5", "min": "-5", "max": "5", "pos": "62" },
      { "type": "float", "name": "Y-Ombre Y-Shadow", "default": "0.5", "min": "-5", "max": "5", "pos": "63" },
      { "type": "float", "name": "Douceur Ombre / Smoothness Shadow", "default": "1.8", "min": "0", "max": "5", "pos": "64" },
      { "type": "float", "name": "Courbure Ombre / Curvature Shadow", "default": "0", "min": "0", "max": "1", "pos": "65" },
      { "type": "float", "name": "Décalage Ombre X / Shadow Offset X", "default": "0", "min": "-20", "max": "20", "pos": "66" },
      { "type": "float", "name": "Décalage Ombre Y / Shadow Offset Y", "default": "0", "min": "-20", "max": "20", "pos": "67" },
      { "type": "bool", "name": "Canal Alpha", "default": "0", "pos": "68" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/12/20." }
      ]
    },
    {
      "name": "Pintograph", "lang": "en", "command": "Pintograph_samj", "command_preview": "Pintograph_samj", "parameters": [
      { "type": "link", "name": "http://en.wikipedia.org/wiki/Pintograph", "url": "http://en.wikipedia.org/wiki/Pintograph", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Centre / Center" },
      { "type": "float", "name": "Centre / Center X (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Centre / Center Y (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Pintograph" },
      { "type": "color", "name": "Stylo / Pen (Couleur/Color)", "default": "192,128,64,255", "pos": "3" },
      { "type": "choice", "name": "Stylo / Pen (Variation de couleur/Color variation)", "default": "0", "pos": "7", "choices": { "0": "Pas de variation / No change", "1": "Couleurs aleatoires / Random Colors", "2": "Faiblement nuancee / Poorly nuanced", "3": "Moyennement nuancee / Moderately nuanced", "4": "Fortement nuancee / Highly nuanced" } },
      { "type": "int", "name": "Stylo / Pen (Dilate Pixels)", "default": "0", "min": "0", "max": "32", "pos": "8" },
      { "type": "int", "name": "Itérations", "default": "1000", "min": "2", "max": "30000", "pos": "9" },
      { "type": "choice", "name": "Multiplier", "default": "0", "pos": "10", "choices": { "0": "Itérations * 1", "1": "Itérations * 5 LENT / SLOW", "2": "Itérations * 10 TRES LENT / VERY SLOW" } },
      { "type": "float", "name": "Increment Temps / Time increment [*10000]", "default": "400", "min": "10", "max": "500", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Amplitude" },
      { "type": "float", "name": "Amplitude 1 (>0 W) (<0 H)", "default": "150", "min": "-1000", "max": "1000", "pos": "12" },
      { "type": "float", "name": "Amplitude 2 (>0 W) (<0 H)", "default": "200", "min": "-1000", "max": "1000", "pos": "13" },
      { "type": "float", "name": "Amplitude 3 (>0 W) (<0 H)", "default": "200", "min": "-1000", "max": "1000", "pos": "14" },
      { "type": "float", "name": "Amplitude 4 (>0 W) (<0 H)", "default": "100", "min": "-1000", "max": "1000", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "Fréquence / Frequency" },
      { "type": "float", "name": "Fréquence 1", "default": "4.00", "min": "0", "max": "16", "pos": "16" },
      { "type": "float", "name": "Fréquence 2", "default": "4.05", "min": "0", "max": "16", "pos": "17" },
      { "type": "float", "name": "Fréquence 3", "default": "4.16", "min": "0", "max": "16", "pos": "18" },
      { "type": "float", "name": "Fréquence 4", "default": "4.32", "min": "0", "max": "16", "pos": "19" },
      { "type": "separator" },
      { "type": "note", "text": "Phase" },
      { "type": "float", "name": "Phase 1", "default": "75", "min": "0", "max": "360", "pos": "20" },
      { "type": "float", "name": "Phase 2", "default": "150", "min": "0", "max": "360", "pos": "21" },
      { "type": "float", "name": "Phase 3", "default": "75", "min": "0", "max": "360", "pos": "22" },
      { "type": "float", "name": "Phase 4", "default": "60", "min": "0", "max": "360", "pos": "23" },
      { "type": "separator" },
      { "type": "note", "text": "Divers / Foo" },
      { "type": "float", "name": "Flou / Blur", "default": "0", "min": "0", "max": "10", "pos": "24" },
      { "type": "float", "name": "Spread", "default": "0", "min": "0", "max": "10", "pos": "25" },
      { "type": "float", "name": "Déformation", "default": "0", "min": "0", "max": "25", "pos": "26" },
      { "type": "separator" },
      { "type": "note", "text": "Mélange / Blend" },
      { "type": "choice", "name": "Mode", "default": "1", "pos": "27", "choices": { "0": "Add", "1": "Alpha", "2": "And", "3": "Average", "4": "Blue", "5": "Burn", "6": "Darken", "7": "Difference", "8": "Divide", "9": "Dodge", "10": "Edges", "11": "Exclusion", "12": "Freeze", "13": "Grain extract", "14": "Grain merge", "15": "Green", "16": "Hard light", "17": "Hard mix", "18": "Hue", "19": "Interpolation", "20": "Lighten", "21": "Lightness", "22": "Linear burn", "23": "Linear light", "24": "Luminance", "25": "Multiply", "26": "Negation", "27": "Or", "28": "Overlay", "29": "Pin light", "30": "Red", "31": "Reflect", "32": "Saturation", "33": "Shape Average", "34": "Shape Average0", "35": "Soft burn", "36": "Soft dodge", "37": "Soft light", "38": "Screen", "39": "Stamp", "40": "Subtract", "41": "Value", "42": "Vivid light", "43": "Xor" } },
      { "type": "float", "name": "Opacité / Opacity", "default": "1", "min": "0", "max": "1", "pos": "28" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/02/02." }
      ]
    },
    {
      "name": "Plasma", "lang": "en", "command": "fx_plasma", "command_preview": "fx_plasma", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a colorful plasma cloud effect. " },
      { "type": "separator" },
      { "type": "float", "name": "Alpha", "default": "0.5", "min": "0", "max": "5", "pos": "1" },
      { "type": "float", "name": "Beta", "default": "0", "min": "0", "max": "100", "pos": "2" },
      { "type": "int", "name": "Scale", "default": "8", "min": "2", "max": "10", "pos": "3" },
      { "type": "bool", "name": "Randomize", "default": "0", "pos": "4" },
      { "type": "bool", "name": "Transparency", "default": "0", "pos": "5" },
      { "type": "color", "name": "Color Balance", "default": "128,128,128", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2011/03/20." }
      ]
    },
    {
      "name": "Poisson D'Avril", "lang": "en", "command": "samj_Poisson_D_Avril", "command_preview": "samj_Poisson_D_Avril", "parameters": [
      { "type": "link", "name": "http://www.mathcurve.com/courbes2d/poisson/poisson.shtml", "url": "http://www.mathcurve.com/courbes2d/poisson/poisson.shtml", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Rendu - Rendering" },
      { "type": "float", "name": "Position X (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Position Y (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Valeur A Dimension", "default": "40", "min": "1", "max": "100", "pos": "3" },
      { "type": "float", "name": "Valeur K", "default": "2", "min": "0", "max": "4", "pos": "4" },
      { "type": "float", "name": "Angle Inclinaison", "default": "0", "min": "0", "max": "360", "pos": "5" },
      { "type": "color", "name": "Contours", "default": "0,0,0,255", "pos": "6" },
      { "type": "choice", "name": "Affichage Contours", "default": "1", "pos": "10", "choices": { "0": "Sans", "1": "Poisson", "2": "Poisson CA" } },
      { "type": "color", "name": "Couleur A", "default": "250,60,10,255", "pos": "11" },
      { "type": "color", "name": "Couleur B", "default": "255,255,255,255", "pos": "15" },
      { "type": "bool", "name": "Couleur aléatoire / Random color", "default": "0", "pos": "19" },
      { "type": "int", "name": "Inversions", "default": "0", "min": "0", "max": "3", "pos": "20" },
      { "type": "float", "name": "Flou / Blur", "default": "0", "min": "0", "max": "5", "pos": "21" },
      { "type": "int", "name": "Dilate", "default": "0", "min": "0", "max": "48", "pos": "22" },
      { "type": "float", "name": "Déformation", "default": "0", "min": "0", "max": "5", "pos": "23" },
      { "type": "float", "name": "Bruit / Noise", "default": "0", "min": "0", "max": "100", "pos": "24" },
      { "type": "bool", "name": "Ombre", "default": "0", "pos": "25" },
      { "type": "float", "name": "X-Ombre", "default": "0.5", "min": "-5", "max": "5", "pos": "26" },
      { "type": "float", "name": "Y-Ombre", "default": "0.5", "min": "-5", "max": "5", "pos": "27" },
      { "type": "float", "name": "Douceur / Smoothness Ombre", "default": "1.8", "min": "0", "max": "5", "pos": "28" },
      { "type": "float", "name": "Courbure / Curvature Ombre", "default": "0", "min": "0", "max": "1", "pos": "29" },
      { "type": "float", "name": "Compensation Décalage Ombre X", "default": "0", "min": "-50", "max": "50", "pos": "30" },
      { "type": "float", "name": "Compensation Décalage Ombre Y", "default": "0", "min": "-50", "max": "50", "pos": "31" },
      { "type": "bool", "name": "Canal Alpha", "default": "0", "pos": "32" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/02/02." }
      ]
    },
    {
      "name": "Pythagoras Tree", "lang": "en", "command": "samj_Arbre_Pythagore", "command_preview": "samj_Arbre_Pythagore", "parameters": [
      { "type": "separator" },
      { "type": "link", "name": "Source code from rosettacode.org", "url": "https://rosettacode.org/wiki/Pythagoras_tree", "align": "center" },
      { "type": "float", "name": "X Origine", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Y Origine", "default": "95", "min": "0", "max": "100", "pos": "2" },
      { "type": "int", "name": "Depth", "default": "8", "min": "1", "max": "14", "pos": "3" },
      { "type": "float", "name": "Dimension [Diff]", "default": "12", "min": "4", "max": "100", "pos": "4" },
      { "type": "color", "name": "Color", "default": "255,0,0,255", "pos": "5" },
      { "type": "int", "name": "Color Variation [Random -1]", "default": "20", "min": "-1", "max": "255", "pos": "9" },
      { "type": "choice", "name": "Rendering", "default": "0", "pos": "10", "choices": { "0": "A", "1": "B", "2": "C" } },
      { "type": "int", "name": "Dilatation", "default": "1", "min": "1", "max": "8", "pos": "11" },
      { "type": "float", "name": "Rotate Tree", "default": "0", "min": "-180", "max": "180", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Smooth [antialias]</span>" },
      { "type": "bool", "name": "Smooth [Antialias]", "default": "0", "pos": "13" },
      { "type": "float", "name": "Amplitude", "default": "0.25", "min": "0", "max": "100", "pos": "14" },
      { "type": "float", "name": "Edge Threshold (%)", "default": "10", "min": "0", "max": "100", "pos": "15" },
      { "type": "float", "name": "Smoothness", "default": "0.8", "min": "0", "max": "5", "pos": "16" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Update : 2020/10/24." }
      ]
    },
    {
      "name": "Quick Copyright", "lang": "en", "command": "fx_quick_copyright", "command_preview": "fx_quick_copyright_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds a quick copyright text overlay. " },
      { "type": "separator" },
      { "type": "text", "name": "Text", "default": "\\251 John Doe", "pos": "1" },
      { "type": "choice", "name": "Font", "default": "24", "pos": "2", "choices": { "0": "Acme", "1": "Arial", "2": "Arial Black", "3": "Black Ops One", "4": "Black Chancery", "5": "Cabin Sketch", "6": "Caprasimo", "7": "Carnevalee Freakshow", "8": "Cheese Burger", "9": "Cheque", "10": "Cheque Black", "11": "Chlorinar", "12": "Comic Sans MS", "13": "Courier New", "14": "Creepster", "15": "Georgia", "16": "Hidayatullah", "17": "Impact", "18": "Jaro", "19": "Lobster", "20": "Luckiest Guy", "21": "Macondo", "22": "Medieval Sharp", "23": "Odin Rounded", "24": "Oswald", "25": "Palatino Linotype", "26": "Playfair Display", "27": "Roboto", "28": "Satisfy", "29": "Sofia", "30": "Sunday Milk", "31": "Tex Gyre Adventor", "32": "Times New Roman", "33": "Titan One", "34": "Typewriter", "35": "Verdana" } },
      { "type": "float", "name": "Size (%)", "default": "10", "min": "0", "max": "50", "pos": "3" },
      { "type": "bool", "name": "Bold Face", "default": "0", "pos": "4" },
      { "type": "color", "name": "Color", "default": "255,255,255", "pos": "5" },
      { "type": "float", "name": "Opacity (%)", "default": "90", "min": "0", "max": "100", "pos": "8" },
      { "type": "separator" },
      { "type": "float", "name": "Outline (%)", "default": "3", "min": "0", "max": "20", "pos": "9" },
      { "type": "color", "name": "Outline Color", "default": "0,0,0", "pos": "10" },
      { "type": "separator" },
      { "type": "choice", "name": "Position", "default": "4", "pos": "13", "choices": { "0": "Up-Left", "1": "Up-Right", "2": "Center", "3": "Bottom-Left", "4": "Bottom-Right", "5": "Corners", "6": "Everywhere" } },
      { "type": "float", "name": "X-Offset (%)", "default": "1", "min": "0", "max": "50", "pos": "14" },
      { "type": "float", "name": "Y-Offset (%)", "default": "1", "min": "0", "max": "50", "pos": "15" },
      { "type": "float", "name": "Orientation (deg.)", "default": "-180", "min": "0", "max": "180", "pos": "16" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2024/02/21." }
      ]
    },
    {
      "name": "Rainbow", "lang": "en", "command": "fx_rainbow", "command_preview": "fx_rainbow", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Draws a rainbow arc. " },
      { "type": "separator" },
      { "type": "float", "name": "Left Position", "default": "80", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Right Position", "default": "80", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Left Slope", "default": "175", "min": "0", "max": "400", "pos": "3" },
      { "type": "float", "name": "Right Slope", "default": "175", "min": "0", "max": "400", "pos": "4" },
      { "type": "float", "name": "Thinness", "default": "3", "min": "0.1", "max": "8", "pos": "5" },
      { "type": "float", "name": "Opacity", "default": "80", "min": "0", "max": "199", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Random Signature", "lang": "en", "command": "fx_random_signature", "command_preview": "fx_random_signature_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a random scribble looking like a signature. " },
      { "type": "separator" },
      { "type": "int", "name": "Seed", "default": "16", "min": "0", "max": "65536", "pos": "1" },
      { "type": "int", "name": "Complexity", "default": "16", "min": "2", "max": "32", "pos": "2" },
      { "type": "point", "name": "Top-Left Corner", "position": "10,10", "pos": "3", "visibility": "0" },
      { "type": "point", "name": "Bottom-Right Corner", "position": "90,90", "pos": "5", "visibility": "0" },
      { "type": "float", "name": "Thickness (%)", "default": "1.5", "min": "0", "max": "10", "pos": "7" },
      { "type": "float", "name": "Tilt (deg.)", "default": "0", "min": "-180", "max": "180", "pos": "8" },
      { "type": "float", "name": "Tilt Strength (%)", "default": "75", "min": "0", "max": "100", "pos": "9" },
      { "type": "color", "name": "Color", "default": "0,0,0,255", "pos": "10" },
      { "type": "bool", "name": "Anti-Alias", "default": "1", "pos": "14" },
      { "type": "button", "name": "Change Seed", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2024/01/04." }
      ]
    },
    {
      "name": "Rectangular Tiling", "lang": "en", "command": "fx_rec_tileit", "command_preview": "gtutor_rectangular_tiling_preview", "parameters": [
      { "type": "note", "text": "Generate a mosaic from an image. Works best with line art cartoons with flat color." },
      { "type": "separator" },
      { "type": "float", "name": "Tile Size", "default": "1.0", "min": "0.05", "max": "5.0", "pos": "1" },
      { "type": "float", "name": "Disrupt Orientation", "default": "5.0", "min": "0.0", "max": "10.0", "pos": "2" },
      { "type": "float", "name": "Spread Tiles Apart", "default": "1.5", "min": "0.25", "max": "5.0", "pos": "3" },
      { "type": "bool", "name": "Fill Holes", "default": "1", "pos": "4" },
      { "type": "int", "name": "Color Count", "default": "4", "min": "2", "max": "32", "pos": "5" },
      { "type": "bool", "name": "Flat Color", "default": "0", "pos": "6" },
      { "type": "float", "name": "Light Angle", "default": "45.0", "min": "-180", "max": "180", "pos": "7" },
      { "type": "float", "name": "Soften Lighting", "default": "0.5", "min": "0.0", "max": "5.0", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Garry R. Osgood. Latest Update: 2023/07/01" },
      { "type": "link", "name": "Technical Notes", "url": "https://gmic.eu/tutorial/tiled_art.html", "align": "center" }
      ]
    },
    {
      "name": "Rectexture", "lang": "en", "command": "fx_rectexture", "command_preview": "fx_rectexture", "parameters": [
      { "type": "note", "text": "Generates textures from rectangles, difference blending and warping." },
      { "type": "button", "name": "Recompute", "pos": "1" },
      { "type": "int", "name": "Iterations", "default": "10", "min": "0", "max": "500", "pos": "2" },
      { "type": "choice", "name": "Colours", "default": "3", "pos": "3", "choices": { "0": "Random colours (difference blending)", "1": "Random colours (diffblend + sine mapping)", "2": "Random colours (diffblend + sinemap + random HSV mixing)", "3": "Black and white" } },
      { "type": "float", "name": "Warp Multiplier", "default": "1", "min": "0", "max": "5", "pos": "4" },
      { "type": "choice", "name": "Warp Boundary", "default": "5", "pos": "5", "choices": { "0": "Random", "1": "Random [non-transparent]", "2": "Transparent", "3": "Nearest", "4": "Periodic", "5": "Mirror" } },
      { "type": "choice", "name": "Channel(s)", "default": "2", "pos": "6", "choices": { "0": "All", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "Linear RGB [all]", "8": "Linear RGB [red]", "9": "Linear RGB [green]", "10": "Linear RGB [blue]", "11": "YCbCr [luminance]", "12": "YCbCr [blue-red chrominances]", "13": "YCbCr [blue chrominance]", "14": "YCbCr [red chrominance]", "15": "YCbCr [green chrominance]", "16": "Lab [lightness]", "17": "Lab [ab-chrominances]", "18": "Lab [a-chrominance]", "19": "Lab [b-chrominance]", "20": "Lch [ch-chrominances]", "21": "Lch [c-chrominance]", "22": "Lch [h-chrominance]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [intensity]", "27": "HSL [lightness]", "28": "CMYK [cyan]", "29": "CMYK [magenta]", "30": "CMYK [yellow]", "31": "CMYK [key]", "32": "YIQ [luma]", "33": "YIQ [chromas]" } },
      { "type": "choice", "name": "Value Action", "default": "0", "pos": "7", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } }
      ]
    },
    {
      "name": "Rosace Triangles Sierpinski", "lang": "en", "command": "samj_Rosace_Triangles_Sierpinski", "command_preview": "samj_Rosace_Triangles_Sierpinski", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Rendu - Rendering" },
      { "type": "int", "name": "Nombre De Zones", "default": "6", "min": "3", "max": "24", "pos": "1" },
      { "type": "int", "name": "Nombre De Couches", "default": "6", "min": "1", "max": "50", "pos": "2" },
      { "type": "float", "name": "Position X (%)", "default": "50", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Position Y (%)", "default": "50", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Rayon Premier Cercle (>0 W%) (<0 H%)", "default": "50", "min": "-400", "max": "400", "pos": "5" },
      { "type": "float", "name": "Décalage Angle", "default": "-15", "min": "-30", "max": "30", "pos": "6" },
      { "type": "float", "name": "Dimension Triangle", "default": "25", "min": "0", "max": "100", "pos": "7" },
      { "type": "float", "name": "Recouvrement Triangle", "default": "5", "min": "0", "max": "100", "pos": "8" },
      { "type": "float", "name": "Angle inclinaison", "default": "30", "min": "0", "max": "360", "pos": "9" },
      { "type": "color", "name": "Contours", "default": "0,0,0,255", "pos": "10" },
      { "type": "choice", "name": "Affichage Contours", "default": "0", "pos": "14", "choices": { "0": "Sans", "1": "Triangle A et B", "2": "Triangle A", "3": "Triangle B", "4": "Triangle A et B et Cercle", "5": "Triangle A et Cercle", "6": "Triangle B et Cercle" } },
      { "type": "choice", "name": "Type Triangles A", "default": "0", "pos": "15", "choices": { "0": "JDH", "1": "JDE", "2": "JDB", "3": "JAH", "4": "JAE", "5": "JAB", "6": "Sans" } },
      { "type": "choice", "name": "Type Triangles B", "default": "0", "pos": "16", "choices": { "0": "HBI", "1": "HBF", "2": "HBC", "3": "Sans" } },
      { "type": "choice", "name": "Type Decalage", "default": "0", "pos": "17", "choices": { "0": "Couches", "1": "Cercles", "2": "Couches et Cercles" } },
      { "type": "int", "name": "Recursions Sierpinski", "default": "3", "min": "0", "max": "7", "pos": "18" },
      { "type": "color", "name": "Triangle A", "default": "0,0,255,127", "pos": "19" },
      { "type": "color", "name": "Triangle Ab", "default": "255,255,0,127", "pos": "23" },
      { "type": "color", "name": "Triangle B", "default": "128,64,192,127", "pos": "27" },
      { "type": "color", "name": "Triangle Ba", "default": "64,128,192,127", "pos": "31" },
      { "type": "color", "name": "Cercle", "default": "0,255,255,127", "pos": "35" },
      { "type": "bool", "name": "Afficher Cercle", "default": "0", "pos": "39" },
      { "type": "bool", "name": "Couleurs aléatoires / Random Colors", "default": "0", "pos": "40" },
      { "type": "int", "name": "Inversions", "default": "0", "min": "0", "max": "3", "pos": "41" },
      { "type": "float", "name": "Flou / Blur", "default": "0", "min": "0", "max": "5", "pos": "42" },
      { "type": "int", "name": "Dilate", "default": "0", "min": "0", "max": "48", "pos": "43" },
      { "type": "float", "name": "Déformation", "default": "0", "min": "0", "max": "5", "pos": "44" },
      { "type": "float", "name": "Bruit / Noise", "default": "0", "min": "0", "max": "100", "pos": "45" },
      { "type": "bool", "name": "Ombre / Shadow", "default": "0", "pos": "46" },
      { "type": "float", "name": "X-Ombre X-Shadow", "default": "0.5", "min": "-5", "max": "5", "pos": "47" },
      { "type": "float", "name": "Y-Ombre Y-Shadow", "default": "0.5", "min": "-5", "max": "5", "pos": "48" },
      { "type": "float", "name": "Douceur Ombre / Smoothness Shadow", "default": "1.8", "min": "0", "max": "5", "pos": "49" },
      { "type": "float", "name": "Courbure Ombre / Curvature Shadow", "default": "0", "min": "0", "max": "1", "pos": "50" },
      { "type": "float", "name": "Décalage Ombre X / Shadow Offset X", "default": "0", "min": "-20", "max": "20", "pos": "51" },
      { "type": "float", "name": "Décalage Ombre Y / Shadow Offset Y", "default": "0", "min": "-20", "max": "20", "pos": "52" },
      { "type": "bool", "name": "Canal Alpha", "default": "0", "pos": "53" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Rotating Circles", "lang": "en", "command": "samj_Cercles_Qui_Tournent", "command_preview": "samj_Cercles_Qui_Tournent", "parameters": [
      { "type": "note", "text": "Cercles Qui Tournent / Rotating Circles" },
      { "type": "link", "name": "http://rouxjeanbernard.ch/AM/html/amch57.html", "url": "http://rouxjeanbernard.ch/AM/html/amch57.html", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Nouvelle New Image" },
      { "type": "int", "name": "Dimension Image", "default": "800", "min": "2", "max": "32768", "pos": "1" },
      { "type": "color", "name": "Fond / Background", "default": "255,255,255,255", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Exemples Examples" },
      { "type": "choice", "name": "Examples", "default": "0", "pos": "6", "choices": { "0": "Non No", "1": "A", "2": "B", "3": "C", "4": "D", "5": "E", "6": "F" } },
      { "type": "separator" },
      { "type": "note", "text": "Param. X" },
      { "type": "float", "name": "Cax", "default": "1", "min": "0.5", "max": "2", "pos": "7" },
      { "type": "float", "name": "Cbx", "default": "0.5", "min": "0.05", "max": "5", "pos": "8" },
      { "type": "float", "name": "Ccx", "default": "0.33", "min": "0.05", "max": "5", "pos": "9" },
      { "type": "int", "name": "Vbx", "default": "7", "min": "-50", "max": "50", "pos": "10" },
      { "type": "int", "name": "Vcx", "default": "17", "min": "-50", "max": "50", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Param. Y" },
      { "type": "float", "name": "Cay", "default": "1", "min": "0.5", "max": "2", "pos": "12" },
      { "type": "float", "name": "Cby", "default": "0.5", "min": "0.05", "max": "5", "pos": "13" },
      { "type": "float", "name": "Ccy", "default": "0.33", "min": "0.05", "max": "5", "pos": "14" },
      { "type": "int", "name": "Vby", "default": "7", "min": "-50", "max": "50", "pos": "15" },
      { "type": "int", "name": "Vcy", "default": "17", "min": "-50", "max": "50", "pos": "16" },
      { "type": "separator" },
      { "type": "note", "text": "Rendu Rendering" },
      { "type": "bool", "name": "Égalite / Equality : Param. X & Param. Y", "default": "1", "pos": "17" },
      { "type": "int", "name": "Théta", "default": "10", "min": "1", "max": "5000", "pos": "18" },
      { "type": "color", "name": "Ligne / Line", "default": "0,0,0,255", "pos": "19" },
      { "type": "float", "name": "Angle Inclinaison", "default": "0", "min": "-360", "max": "360", "pos": "23" },
      { "type": "bool", "name": "Couleurs aléatoires / Random Colors", "default": "0", "pos": "24" },
      { "type": "float", "name": "Flou / Blur", "default": "0", "min": "0", "max": "5", "pos": "25" },
      { "type": "int", "name": "Dilate", "default": "0", "min": "0", "max": "48", "pos": "26" },
      { "type": "float", "name": "Déformation", "default": "0", "min": "0", "max": "5", "pos": "27" },
      { "type": "float", "name": "Bruit / Noise", "default": "0", "min": "0", "max": "200", "pos": "28" },
      { "type": "bool", "name": "Ombre / Shadow", "default": "0", "pos": "29" },
      { "type": "float", "name": "X-Ombre X-Shadow", "default": "0.5", "min": "-5", "max": "5", "pos": "30" },
      { "type": "float", "name": "Y-Ombre Y-Shadow", "default": "0.5", "min": "-5", "max": "5", "pos": "31" },
      { "type": "float", "name": "Douceur Ombre / Smoothness Shadow", "default": "1.8", "min": "0", "max": "5", "pos": "32" },
      { "type": "float", "name": "Courbure Ombre / Curvature Shadow", "default": "0", "min": "0", "max": "1", "pos": "33" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2019/12/14." }
      ]
    },
    {
      "name": "Rows Columns", "lang": "en", "command": "samj_Lignes_Colonnes", "command_preview": "samj_Lignes_Colonnes", "parameters": [
      { "type": "int", "name": "Colonnes/Columns", "default": "16", "min": "2", "max": "128", "pos": "1" },
      { "type": "int", "name": "Lignes/Rows", "default": "16", "min": "2", "max": "128", "pos": "2" },
      { "type": "choice", "name": "Afficher/Display", "default": "0", "pos": "3", "choices": { "0": "Lignes Colonnes/Rows Columns", "1": "Colonnes/Columns", "2": "Lignes/Rows" } },
      { "type": "color", "name": "Couleur/Color", "default": "0,0,0,64", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2024/11/16." }
      ]
    },
    {
      "name": "Shade Bobs", "lang": "en", "command": "fx_shadebobs", "command_preview": "fx_shadebobs", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Renders \"shade bobs\" (accumulated transparent shapes). " },
      { "type": "separator" },
      { "type": "note", "text": "Bobs parameters :" },
      { "type": "int", "name": "Density", "default": "50", "min": "1", "max": "200", "pos": "1" },
      { "type": "int", "name": "Radius", "default": "5", "min": "1", "max": "100", "pos": "2" },
      { "type": "int", "name": "Duration", "default": "200", "min": "1", "max": "500", "pos": "3" },
      { "type": "float", "name": "Velocity", "default": "1", "min": "0", "max": "10", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Curve parameters :" },
      { "type": "float", "name": "Rx", "default": "-1", "min": "-3", "max": "3", "pos": "5" },
      { "type": "float", "name": "Ry", "default": "2", "min": "-3", "max": "3", "pos": "6" },
      { "type": "float", "name": "Rz", "default": "1", "min": "-3", "max": "3", "pos": "7" },
      { "type": "float", "name": "Rt", "default": "0.8", "min": "-3", "max": "3", "pos": "8" },
      { "type": "float", "name": "Rcx", "default": "0", "min": "-3", "max": "3", "pos": "9" },
      { "type": "choice", "name": "Colormap", "default": "8", "pos": "10", "choices": { "0": "Grayscale", "1": "Standard", "2": "HSV", "3": "Lines", "4": "Hot", "5": "Cool", "6": "Jet", "7": "Flag", "8": "Cube" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2012/04/18." }
      ]
    },
    {
      "name": "Simple Geometric Shapes", "lang": "en", "command": "samj_Formes_Geometriques_Simples", "command_preview": "samj_Formes_Geometriques_Simples", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"black\">Formes Géometriques Simples / Simple Geometric Shapes</span>" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Effet</span>" },
      { "type": "float", "name": "Position X (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Position Y (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "color", "name": "Couleur Externe / External Color", "default": "127,127,127,127", "pos": "3" },
      { "type": "color", "name": "Couleur Interne / Interior Color", "default": "255,255,0,255", "pos": "7" },
      { "type": "color", "name": "Couleur / Color Contour", "default": "0,0,255,255", "pos": "11" },
      { "type": "choice", "name": "Forme / Shape", "default": "5", "pos": "15", "choices": { "0": "Polygone Inscrit Dimension 1", "1": "Polygone Inscrit Dimension 2", "2": "Cercle / Ellipse", "3": "Étoile Star Dimension 1", "4": "Étoile Star Dimension 2", "5": "Polygone Étoile Star Dimension 1", "6": "Polygone Étoile Star Dimension 2" } },
      { "type": "float", "name": "Dimension 1  (% Width)", "default": "40", "min": "0", "max": "400", "pos": "16" },
      { "type": "float", "name": "Dimension 2  (% Height)", "default": "40", "min": "0", "max": "400", "pos": "17" },
      { "type": "int", "name": "Nb Côtés / Number Of Sides", "default": "4", "min": "3", "max": "26", "pos": "18" },
      { "type": "float", "name": "Angle Inclinaison / Tilt", "default": "0", "min": "0", "max": "120", "pos": "19" },
      { "type": "int", "name": "Dilate", "default": "0", "min": "0", "max": "48", "pos": "20" },
      { "type": "bool", "name": "Blend", "default": "1", "pos": "21" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2015/03/09." }
      ]
    },
    {
      "name": "Sine Curve", "lang": "en", "command": "fx_sine_curve", "command_preview": "fx_sine_curve_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Draws a sine curve. " },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Curve parameters:</span>" },
      { "type": "choice", "name": "Preset", "default": "1", "pos": "1", "choices": { "0": "Default (Circle)", "1": "Alien Rasta", "2": "All Round", "3": "Carnivorous Plant", "4": "Cat Pad", "5": "Flower", "6": "Flower Cushion", "7": "Fly Karateka", "8": "Hearts", "9": "Moving Leaf", "10": "Radioactive Flower", "11": "Rosace", "12": "Spaceship", "13": "Transformer", "14": "Tubular Waves", "15": "Twisted Heart", "16": "Twisted Heart 2", "17": "Twisted Tunnel", "18": "Waterslide" } },
      { "type": "value", "value": "-1", "pos": "2" },
      { "type": "float", "name": "Resolution (%)", "default": "75", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Periods", "default": "1", "min": "0", "max": "3", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "Parameter Settings", "default": "1", "pos": "5", "choices": { "0": "Ratios", "1": "Multipliers", "2": "Offsets", "3": "Exponents", "4": "Signs", "5": "3D Angles" } },
      { "type": "note", "text": "<span color=\"#EE0055\">Ratios:</span>" },
      { "type": "float", "name": "Xa/Xb", "default": "0.5", "min": "0", "max": "1", "pos": "6", "visibility": "0" },
      { "type": "float", "name": "Ya/Yb", "default": "0.5", "min": "0", "max": "1", "pos": "7", "visibility": "0" },
      { "type": "float", "name": "Za/Zb", "default": "0.5", "min": "0", "max": "1", "pos": "8", "visibility": "0" },
      { "type": "note", "text": "<span color=\"#EE0055\">Multipliers:</span>" },
      { "type": "int", "name": "Xa-Multiplier", "default": "1", "min": "0", "max": "1024", "pos": "9", "visibility": "2" },
      { "type": "int", "name": "Ya-Multiplier", "default": "1", "min": "0", "max": "1024", "pos": "10", "visibility": "2" },
      { "type": "int", "name": "Za-Multiplier", "default": "0", "min": "0", "max": "1024", "pos": "11", "visibility": "2" },
      { "type": "int", "name": "Xb-Multiplier", "default": "800", "min": "0", "max": "1024", "pos": "12", "visibility": "2" },
      { "type": "int", "name": "Yb-Multiplier", "default": "800", "min": "0", "max": "1024", "pos": "13", "visibility": "2" },
      { "type": "int", "name": "Zb-Multiplier", "default": "1", "min": "0", "max": "1024", "pos": "14", "visibility": "2" },
      { "type": "note", "text": "<span color=\"#EE0055\">Offsets:</span>" },
      { "type": "float", "name": "Xa-Offset (deg.)", "default": "90", "min": "0", "max": "360", "pos": "15", "visibility": "0" },
      { "type": "float", "name": "Ya-Offset (deg.)", "default": "0", "min": "0", "max": "360", "pos": "16", "visibility": "0" },
      { "type": "float", "name": "Za-Offset (deg.)", "default": "0", "min": "0", "max": "360", "pos": "17", "visibility": "0" },
      { "type": "float", "name": "Xb-Offset (deg.)", "default": "90", "min": "0", "max": "360", "pos": "18", "visibility": "0" },
      { "type": "float", "name": "Yb-Offset (deg.)", "default": "0", "min": "0", "max": "360", "pos": "19", "visibility": "0" },
      { "type": "float", "name": "Zb-Offset (deg.)", "default": "0", "min": "0", "max": "360", "pos": "20", "visibility": "0" },
      { "type": "note", "text": "<span color=\"#EE0055\">Exponents:</span>" },
      { "type": "float", "name": "Xa-Exponent", "default": "1", "min": "0", "max": "32", "pos": "21", "visibility": "0" },
      { "type": "float", "name": "Ya-Exponent", "default": "1", "min": "0", "max": "32", "pos": "22", "visibility": "0" },
      { "type": "float", "name": "Za-Exponent", "default": "1", "min": "0", "max": "32", "pos": "23", "visibility": "0" },
      { "type": "float", "name": "Xb-Exponent", "default": "1", "min": "0", "max": "32", "pos": "24", "visibility": "0" },
      { "type": "float", "name": "Yb-Exponent", "default": "1", "min": "0", "max": "32", "pos": "25", "visibility": "0" },
      { "type": "float", "name": "Zb-Exponent", "default": "1", "min": "0", "max": "32", "pos": "26", "visibility": "0" },
      { "type": "note", "text": "<span color=\"#EE0055\">Signs:</span>" },
      { "type": "choice", "name": "Xa-Sign", "default": "0", "pos": "27", "choices": { "0": "Preserve", "1": "Invert", "2": "Negative", "3": "Positive" }, "visibility": "0" },
      { "type": "choice", "name": "Ya-Sign", "default": "0", "pos": "28", "choices": { "0": "Preserve", "1": "Invert", "2": "Negative", "3": "Positive" }, "visibility": "0" },
      { "type": "choice", "name": "Za-Sign", "default": "0", "pos": "29", "choices": { "0": "Preserve", "1": "Invert", "2": "Negative", "3": "Positive" }, "visibility": "0" },
      { "type": "choice", "name": "Xb-Sign", "default": "0", "pos": "30", "choices": { "0": "Preserve", "1": "Invert", "2": "Negative", "3": "Positive" }, "visibility": "0" },
      { "type": "choice", "name": "Yb-Sign", "default": "0", "pos": "31", "choices": { "0": "Preserve", "1": "Invert", "2": "Negative", "3": "Positive" }, "visibility": "0" },
      { "type": "choice", "name": "Zb-Sign", "default": "0", "pos": "32", "choices": { "0": "Preserve", "1": "Invert", "2": "Negative", "3": "Positive" }, "visibility": "0" },
      { "type": "note", "text": "<span color=\"#EE0055\">3D Angles:</span>" },
      { "type": "float", "name": "X-Angle (deg.)", "default": "0", "min": "-180", "max": "180", "pos": "33", "visibility": "0" },
      { "type": "float", "name": "Y-Angle (deg.)", "default": "0", "min": "-180", "max": "180", "pos": "34", "visibility": "0" },
      { "type": "float", "name": "Z-Angle (deg.)", "default": "0", "min": "-180", "max": "180", "pos": "35", "visibility": "0" },
      { "type": "float", "name": "Zoom", "default": "1", "min": "0", "max": "10", "pos": "36", "visibility": "0" },
      { "type": "int", "name": "Focale", "default": "8", "min": "1", "max": "20", "pos": "37", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Rendering parameters:</span>" },
      { "type": "point", "name": "Center", "position": "50,50", "pos": "38", "visibility": "0" },
      { "type": "value", "value": "50", "pos": "40" },
      { "type": "value", "value": "50", "pos": "41" },
      { "type": "point", "name": "Radius", "position": "68,68", "pos": "42", "visibility": "0" },
      { "type": "point", "name": "Angle", "position": "75,50", "pos": "44", "visibility": "0" },
      { "type": "value", "value": "75", "pos": "46" },
      { "type": "value", "value": "50", "pos": "47" },
      { "type": "float", "name": "Primary radius (%)", "default": "3", "min": "0", "max": "100", "pos": "48" },
      { "type": "float", "name": "Secondary radius (%)", "default": "2", "min": "0", "max": "100", "pos": "49" },
      { "type": "float", "name": "Opacity (%)", "default": "40", "min": "0", "max": "100", "pos": "50" },
      { "type": "color", "name": "Color", "default": "255,255,255", "pos": "51" },
      { "type": "choice", "name": "Anti-aliasing", "default": "2", "pos": "54", "choices": { "0": "None", "1": "× 1.25", "2": "× 1.5", "3": "× 2", "4": "× 3" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview background", "default": "1", "pos": "55", "choices": { "0": "Image", "1": "Black", "2": "White" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2021/03/04." }
      ]
    },
    {
      "name": "Snowflake 2", "lang": "en", "command": "samj_Flocon_De_Neige", "command_preview": "samj_Flocon_De_Neige", "parameters": [
      { "type": "note", "text": "Ah! comme la neige a neigé! Soir d'hiver / Ėmile Nelligan" },
      { "type": "separator" },
      { "type": "note", "text": "Rendu - Rendering" },
      { "type": "float", "name": "Position X (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Position Y (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "int", "name": "Nb Branches / Rays", "default": "6", "min": "3", "max": "12", "pos": "3" },
      { "type": "float", "name": "Rayon Cercle Extérieur / Radius Outer Circle A (>0 W%) (<0 H%)", "default": "50", "min": "-400", "max": "400", "pos": "4" },
      { "type": "float", "name": "Rayon Cercle Milieu / Radius Middle Circle", "default": "40", "min": "1", "max": "100", "pos": "5" },
      { "type": "float", "name": "Angle Inclinaison / Tilt", "default": "0", "min": "0", "max": "360", "pos": "6" },
      { "type": "int", "name": "Récursions Contours", "default": "3", "min": "0", "max": "5", "pos": "7" },
      { "type": "color", "name": "Contours", "default": "192,192,192", "pos": "8" },
      { "type": "float", "name": "Opacité / Opacity Contours", "default": "1", "min": "0", "max": "1", "pos": "11" },
      { "type": "choice", "name": "Affichage / Display Contours", "default": "0", "pos": "12", "choices": { "0": "Non / No", "1": "Contours + Flocon/Snowflake", "2": "Contours" } },
      { "type": "int", "name": "Recursions Flocon / Snowflake", "default": "3", "min": "0", "max": "5", "pos": "13" },
      { "type": "color", "name": "Flocon / Snowflake", "default": "255,255,255", "pos": "14" },
      { "type": "float", "name": "Opacité Flocon / Opacity Snowflake", "default": "0.7", "min": "0", "max": "1", "pos": "17" },
      { "type": "choice", "name": "Type Flocon / Snowflake", "default": "0", "pos": "18", "choices": { "0": "A", "1": "B", "2": "C", "3": "A2", "4": "B2", "5": "C2" } },
      { "type": "bool", "name": "Couleurs aléatoires / Random Colors", "default": "0", "pos": "19" },
      { "type": "int", "name": "Inversions", "default": "0", "min": "0", "max": "3", "pos": "20" },
      { "type": "float", "name": "Flou / Blur", "default": "0", "min": "0", "max": "5", "pos": "21" },
      { "type": "int", "name": "Dilate", "default": "0", "min": "0", "max": "48", "pos": "22" },
      { "type": "float", "name": "Déformation", "default": "0", "min": "0", "max": "5", "pos": "23" },
      { "type": "float", "name": "Bruit / Noise", "default": "0", "min": "0", "max": "100", "pos": "24" },
      { "type": "bool", "name": "Ombre / Shadow", "default": "0", "pos": "25" },
      { "type": "float", "name": "X-Ombre X-Shadow", "default": "0.5", "min": "-5", "max": "5", "pos": "26" },
      { "type": "float", "name": "Y-Ombre Y-Shadow", "default": "0.5", "min": "-5", "max": "5", "pos": "27" },
      { "type": "float", "name": "Douceur Ombre / Smoothness Shadow", "default": "1.8", "min": "0", "max": "5", "pos": "28" },
      { "type": "float", "name": "Courbure Ombre / Curvature Shadow", "default": "0", "min": "0", "max": "1", "pos": "29" },
      { "type": "float", "name": "Décalage Ombre X / Shadow Offset X", "default": "0", "min": "-20", "max": "20", "pos": "30" },
      { "type": "float", "name": "Décalage Ombre Y / Shadow Offset Y", "default": "0", "min": "-20", "max": "20", "pos": "31" },
      { "type": "bool", "name": "Canal Alpha", "default": "0", "pos": "32" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/02/02." }
      ]
    },
    {
      "name": "Speech Bubble", "lang": "en", "command": "fx_speech_bubble", "command_preview": "fx_speech_bubble", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Adds a comic-style speech bubble. " },
      { "type": "separator" },
      { "type": "value", "value": "50,50", "pos": "1" },
      { "type": "point", "name": "P0", "position": "50,50", "pos": "2", "visibility": "0" },
      { "type": "point", "name": "P1", "position": "80,50", "pos": "4", "visibility": "0" },
      { "type": "point", "name": "P2", "position": "50,30", "pos": "6", "visibility": "0" },
      { "type": "value", "value": "30,70", "pos": "8" },
      { "type": "point", "name": "P3", "position": "30,70", "pos": "9", "visibility": "0" },
      { "type": "value", "value": "38,70", "pos": "11" },
      { "type": "point", "name": "P4", "position": "38,70", "pos": "12", "visibility": "0" },
      { "type": "point", "name": "P5", "position": "45,80", "pos": "14", "visibility": "0" },
      { "type": "point", "name": "P6", "position": "30,75", "pos": "16", "visibility": "0" },
      { "type": "point", "name": "P7", "position": "38,75", "pos": "18", "visibility": "0" },
      { "type": "float", "name": "Roundness (%)", "default": "25", "min": "0", "max": "100", "pos": "20" },
      { "type": "bool", "name": "Anti-aliasing", "default": "1", "pos": "21" },
      { "type": "separator" },
      { "type": "choice", "name": "Tail Type", "default": "1", "pos": "22", "choices": { "0": "Straight", "1": "Curved" } },
      { "type": "choice", "name": "Tail Waveform", "default": "0", "pos": "23", "choices": { "0": "Flat", "1": "Square", "2": "Triangle", "3": "Ascending Sawtooth", "4": "Descending Sawtooth", "5": "Sine" } },
      { "type": "float", "name": "Tail Amplitude (%)", "default": "1.5", "min": "0", "max": "10", "pos": "24" },
      { "type": "float", "name": "Tail Frequency", "default": "3", "min": "1", "max": "20", "pos": "25" },
      { "type": "separator" },
      { "type": "int", "name": "Outline (px)", "default": "2", "min": "0", "max": "32", "pos": "26" },
      { "type": "color", "name": "Fill Color", "default": "255,255,255", "pos": "27" },
      { "type": "color", "name": "Outline Color", "default": "0,0,0", "pos": "30" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé       Latest Update: 2025/05/13." }
      ]
    },
    {
      "name": "Spirographe", "lang": "en", "command": "Spirographe_samj", "command_preview": "Spirographe_samj", "parameters": [
      { "type": "link", "name": "http://en.wikipedia.org/wiki/Spirograph", "url": "http://en.wikipedia.org/wiki/Spirograph", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Centre / Center" },
      { "type": "float", "name": "Centre / Center X (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Centre / Center Y (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Spirographe" },
      { "type": "float", "name": "Rayon/Radius R (>0 W) (<0 H)", "default": "200", "min": "-500", "max": "500", "pos": "3" },
      { "type": "float", "name": "Rayon/Radius r (>0 W) (<0 H)", "default": "50", "min": "-500", "max": "500", "pos": "4" },
      { "type": "float", "name": "Stylo / Pen (Position) (>0 W) (<0 H)", "default": "150", "min": "-500", "max": "500", "pos": "5" },
      { "type": "color", "name": "Stylo / Pen (Couleur/Color)", "default": "192,128,64,255", "pos": "6" },
      { "type": "choice", "name": "Stylo / Pen (Variation de couleur/Color variation)", "default": "0", "pos": "10", "choices": { "0": "Pas de variation / No change", "1": "Couleurs aleatoires / Random Colors", "2": "Faiblement nuancee / Poorly nuanced", "3": "Moyennement nuancee / Moderately nuanced", "4": "Fortement nuancee / Highly nuanced" } },
      { "type": "int", "name": "Stylo / Pen (Dilate Pixels)", "default": "0", "min": "0", "max": "32", "pos": "11" },
      { "type": "float", "name": "Nombre de tours / Number of turns", "default": "3", "min": "0.01", "max": "20", "pos": "12" },
      { "type": "choice", "name": "Multiplier", "default": "0", "pos": "13", "choices": { "0": "Tours / Turns * 1", "1": "Tours / Turns * 10 LENT / SLOW", "2": "Tours / Turns * 100 TRES LENT / VERY SLOW" } },
      { "type": "float", "name": "Incrément angulaire / Angular increment (Degrés)", "default": "1", "min": "1", "max": "360", "pos": "14" },
      { "type": "choice", "name": "Diviser / Divide", "default": "0", "pos": "15", "choices": { "0": "Increment angulaire-Angular increment / 1", "1": "Increment angulaire-Angular increment /10 LENT / SLOW", "2": "Increment angulaire-Angular increment /100 TRES LENT / VERY SLOW" } },
      { "type": "choice", "name": "Type de rendu / Rendering type", "default": "0", "pos": "16", "choices": { "0": "Formule/Formula 1", "1": "Formule/Formula 2", "2": "Formule/Formula 3", "3": "Formule/Formula 4", "4": "Formule/Formula 5", "5": "Formule/Formula 6", "6": "Formule/Formula 7", "7": "Formule/Formula 8" } },
      { "type": "int", "name": "Points (Rayon/Radius)", "default": "0", "min": "0", "max": "32", "pos": "17" },
      { "type": "color", "name": "Points (Couleur/Color)", "default": "255,0,0,255", "pos": "18" },
      { "type": "int", "name": "Lignes (Épaisseur/Thickness)", "default": "0", "min": "0", "max": "32", "pos": "22" },
      { "type": "color", "name": "Lignes (Couleur/Color)", "default": "255,255,0,255", "pos": "23" },
      { "type": "separator" },
      { "type": "note", "text": "Divers / Foo" },
      { "type": "float", "name": "Flou / Blur", "default": "0", "min": "0", "max": "10", "pos": "27" },
      { "type": "float", "name": "Spread", "default": "0", "min": "0", "max": "10", "pos": "28" },
      { "type": "float", "name": "Déformation", "default": "0", "min": "0", "max": "25", "pos": "29" },
      { "type": "separator" },
      { "type": "note", "text": "Mélange / Blend" },
      { "type": "choice", "name": "Mode", "default": "1", "pos": "30", "choices": { "0": "Add", "1": "Alpha", "2": "And", "3": "Average", "4": "Blue", "5": "Burn", "6": "Darken", "7": "Difference", "8": "Divide", "9": "Dodge", "10": "Edges", "11": "Exclusion", "12": "Freeze", "13": "Grain extract", "14": "Grain merge", "15": "Green", "16": "Hard light", "17": "Hard mix", "18": "Hue", "19": "Interpolation", "20": "Lighten", "21": "Lightness", "22": "Linear burn", "23": "Linear light", "24": "Luminance", "25": "Multiply", "26": "Negation", "27": "Or", "28": "Overlay", "29": "Pin light", "30": "Red", "31": "Reflect", "32": "Saturation", "33": "Shape Average", "34": "Shape Average0", "35": "Soft burn", "36": "Soft dodge", "37": "Soft light", "38": "Screen", "39": "Stamp", "40": "Subtract", "41": "Value", "42": "Vivid light", "43": "Xor" } },
      { "type": "float", "name": "Opacité / Opacity", "default": "1", "min": "0", "max": "1", "pos": "31" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Spline Spirograph", "lang": "en", "command": "fx_spline_spirograph", "command_preview": "fx_spline_spirograph_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Draws spirograph patterns using splines. " },
      { "type": "separator" },
      { "type": "int", "name": "Seed", "default": "0", "min": "0", "max": "65535", "pos": "1" },
      { "type": "button", "name": "Randomize Seed", "pos": "2" },
      { "type": "separator" },
      { "type": "float", "name": "Complexity (%)", "default": "50", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Sampling (%)", "default": "100", "min": "0", "max": "200", "pos": "4" },
      { "type": "float", "name": "Radius (%)", "default": "20", "min": "0", "max": "100", "pos": "5" },
      { "type": "int", "name": "Vertices", "default": "3", "min": "2", "max": "16", "pos": "6" },
      { "type": "float", "name": "Twist (%)", "default": "50", "min": "0", "max": "100", "pos": "7" },
      { "type": "float", "name": "Offset (deg.)", "default": "0", "min": "-180", "max": "180", "pos": "8" },
      { "type": "choice", "name": "Colors", "default": "3", "pos": "9", "choices": { "0": "Default", "1": "HSV", "2": "Lines", "3": "Hot", "4": "Cool", "5": "Jet", "6": "Flag", "7": "Cube", "8": "Rainbow", "9": "Parula", "10": "Spring", "11": "Summer", "12": "Autumn", "13": "Winter", "14": "Bone", "15": "Copper", "16": "Pink", "17": "VGA", "18": "Algae", "19": "Amp", "20": "Balance", "21": "Curl", "22": "Deep", "23": "Delta", "24": "Dense", "25": "Diff", "26": "Gray", "27": "Haline", "28": "Ice", "29": "Matter", "30": "Oxy", "31": "Phase", "32": "Rain", "33": "Solar", "34": "Speed", "35": "Tarn", "36": "Tempo", "37": "Thermal", "38": "Topo", "39": "Turbid", "40": "Aurora", "41": "Hocuspocus", "42": "SRB2", "43": "Uzebox", "44": "Amiga7800", "45": "Amiga7800mess", "46": "Fornaxvoid1" } },
      { "type": "bool", "name": "Alpha Channel", "default": "0", "pos": "10" },
      { "type": "button", "name": "Randomize Parameters", "pos": "11" },
      { "type": "separator" },
      { "type": "float", "name": "Normalization Strength (%)", "default": "50", "min": "0", "max": "100", "pos": "12" },
      { "type": "float", "name": "Normalization Radius (%)", "default": "50", "min": "0", "max": "100", "pos": "13" },
      { "type": "separator" },
      { "type": "int", "name": "Number of Output Frames", "default": "1", "min": "1", "max": "512", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2024/04/10." }
      ]
    },
    {
      "name": "Splines Test", "lang": "en", "command": "samj_Splines_Test", "command_preview": "samj_Splines_Test_preview ", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">samj_Splines_Test</span>" },
      { "type": "float", "name": "X Origine", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Y Origine", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Angle Origine", "default": "30", "min": "0", "max": "360", "pos": "3" },
      { "type": "float", "name": "Variation Angle", "default": "30", "min": "-360", "max": "360", "pos": "4" },
      { "type": "int", "name": "Variation Dimension", "default": "90", "min": "1", "max": "400", "pos": "5" },
      { "type": "int", "name": "Répétition Spline", "default": "30", "min": "1", "max": "360", "pos": "6" },
      { "type": "int", "name": "Répétition Dim", "default": "1", "min": "1", "max": "8", "pos": "7" },
      { "type": "float", "name": "Increment Angle", "default": "10", "min": "-360", "max": "360", "pos": "8" },
      { "type": "float", "name": "uA0", "default": "2", "min": "-100", "max": "100", "pos": "9" },
      { "type": "float", "name": "vA0", "default": "2", "min": "-100", "max": "100", "pos": "10" },
      { "type": "float", "name": "uA1", "default": "2", "min": "-100", "max": "100", "pos": "11" },
      { "type": "float", "name": "vA1", "default": "2", "min": "-100", "max": "100", "pos": "12" },
      { "type": "float", "name": "uB0", "default": "2", "min": "-100", "max": "100", "pos": "13" },
      { "type": "float", "name": "vB0", "default": "2", "min": "-100", "max": "100", "pos": "14" },
      { "type": "float", "name": "uB1", "default": "2", "min": "-100", "max": "100", "pos": "15" },
      { "type": "float", "name": "vB1", "default": "2", "min": "-100", "max": "100", "pos": "16" },
      { "type": "color", "name": "Couleur Spline A", "default": "255,255,0,255", "pos": "17" },
      { "type": "color", "name": "Couleur Spline B", "default": "0,255,255,255", "pos": "21" },
      { "type": "int", "name": "Dilatation", "default": "1", "min": "1", "max": "8", "pos": "25" },
      { "type": "bool", "name": "Blend", "default": "0", "pos": "26" },
      { "type": "bool", "name": "Version de Spline", "default": "0", "pos": "27" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/12/09." }
      ]
    },
    {
      "name": "Straight Lines", "lang": "en", "command": "samj_Des_Lignes_002", "command_preview": "samj_Des_Lignes_002", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Des Lignes / Straight Lines" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Paramètres des lignes</span>" },
      { "type": "int", "name": "Nombre Lignes / Number Of Lines", "default": "100", "min": "1", "max": "4096", "pos": "1" },
      { "type": "bool", "name": "Couleurs Aléatoires / Random Colors", "default": "0", "pos": "2" },
      { "type": "bool", "name": "Gris / Gray", "default": "0", "pos": "3" },
      { "type": "color", "name": "Couleur / Color", "default": "192,128,64,255", "pos": "4" },
      { "type": "int", "name": "Symétrie / Symmetry", "default": "0", "min": "0", "max": "3", "pos": "8" },
      { "type": "choice", "name": "Effet / Effect", "default": "0", "pos": "9", "choices": { "0": "1", "1": "2", "2": "3", "3": "4", "4": "5", "5": "6", "6": "7", "7": "8", "8": "9", "9": "10", "10": "11", "11": "12" } },
      { "type": "float", "name": "Etendue / Extent", "default": "1", "min": "1", "max": "10", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Effet 12 / Effect 12</span>" },
      { "type": "float", "name": "Origine X (% w)", "default": "50", "min": "-400", "max": "400", "pos": "11" },
      { "type": "float", "name": "Origine Y (% h)", "default": "50", "min": "-400", "max": "400", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Distorsions</span>" },
      { "type": "float", "name": "Flou / Blur", "default": "0", "min": "0", "max": "5", "pos": "13" },
      { "type": "int", "name": "Dilate", "default": "0", "min": "0", "max": "48", "pos": "14" },
      { "type": "float", "name": "Déformation", "default": "0", "min": "0", "max": "5", "pos": "15" },
      { "type": "float", "name": "Bruit / Noise", "default": "0", "min": "0", "max": "100", "pos": "16" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Mélange / Blend</span>" },
      { "type": "bool", "name": "Mélange / Blend", "default": "1", "pos": "17" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/02/02." }
      ]
    },
    {
      "name": "Superformula", "lang": "en", "command": "fx_superformula", "command_preview": "fx_superformula", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Renders curve based on the Superformula equation. " },
      { "type": "separator" },
      { "type": "int", "name": "Resolution", "default": "4096", "min": "2", "max": "8192", "pos": "1" },
      { "type": "separator" },
      { "type": "float", "name": "X-Size", "default": "0.9", "min": "0", "max": "2", "pos": "2" },
      { "type": "float", "name": "Y-Size", "default": "0.9", "min": "0", "max": "2", "pos": "3" },
      { "type": "separator" },
      { "type": "int", "name": "M", "default": "8", "min": "1", "max": "32", "pos": "4" },
      { "type": "float", "name": "N1", "default": "1", "min": "-32", "max": "32", "pos": "5" },
      { "type": "float", "name": "N2", "default": "5", "min": "-32", "max": "32", "pos": "6" },
      { "type": "float", "name": "N3", "default": "8", "min": "-32", "max": "32", "pos": "7" },
      { "type": "separator" },
      { "type": "float", "name": "X-Angle", "default": "0", "min": "0", "max": "360", "pos": "8" },
      { "type": "float", "name": "Y-Angle", "default": "0", "min": "0", "max": "360", "pos": "9" },
      { "type": "float", "name": "Z-Angle", "default": "0", "min": "0", "max": "360", "pos": "10" },
      { "type": "separator" },
      { "type": "float", "name": "Thickness", "default": "3", "min": "0", "max": "50", "pos": "11" },
      { "type": "color", "name": "Color", "default": "128,255,128,255", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2011/04/18." }
      ]
    },
    {
      "name": "Superposition Triangles Sierpinski", "lang": "en", "command": "samj_Superposition_Triangles_Sierpinski", "command_preview": "samj_Superposition_Triangles_Sierpinski", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Rendu - Rendering" },
      { "type": "int", "name": "Nombre De Zones", "default": "6", "min": "3", "max": "24", "pos": "1" },
      { "type": "int", "name": "Nombre De Superpositions", "default": "6", "min": "1", "max": "50", "pos": "2" },
      { "type": "float", "name": "Position X (%)", "default": "50", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Position Y (%)", "default": "50", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Dimension Premier Cercle (>0 W%) (<0 H%)", "default": "50", "min": "-400", "max": "400", "pos": "5" },
      { "type": "float", "name": "Coeff. Superpositions", "default": "1", "min": "0", "max": "4", "pos": "6" },
      { "type": "float", "name": "Hauteur Triangle", "default": "20", "min": "0", "max": "100", "pos": "7" },
      { "type": "float", "name": "Angle inclinaison", "default": "30", "min": "0", "max": "360", "pos": "8" },
      { "type": "color", "name": "Contours", "default": "0,0,0,255", "pos": "9" },
      { "type": "choice", "name": "Affichage", "default": "1", "pos": "13", "choices": { "0": "Sans Contours Triangles Ext.", "1": "Sans Contours Triangles Int.", "2": "Sans Contours Triangles Ext. et Lat.", "3": "Sans Contours Triangles Int. et Lat.", "4": "Triangles Ext.", "5": "Triangles Int.", "6": "Triangles Ext. et Lat.", "7": "Triangles Int. et Lat." } },
      { "type": "int", "name": "Recursions Sierpinski", "default": "4", "min": "0", "max": "7", "pos": "14" },
      { "type": "color", "name": "Triangle A", "default": "0,0,255,127", "pos": "15" },
      { "type": "color", "name": "Triangle B", "default": "255,255,0,127", "pos": "19" },
      { "type": "color", "name": "Triangle Lat. A", "default": "128,64,192,127", "pos": "23" },
      { "type": "color", "name": "Triangle Lat. B", "default": "64,128,192,127", "pos": "27" },
      { "type": "color", "name": "Cercle", "default": "0,255,255,127", "pos": "31" },
      { "type": "bool", "name": "Afficher Cercle", "default": "0", "pos": "35" },
      { "type": "bool", "name": "Couleurs aléatoires / Random Colors", "default": "0", "pos": "36" },
      { "type": "int", "name": "Inversions", "default": "0", "min": "0", "max": "3", "pos": "37" },
      { "type": "float", "name": "Flou / Blur", "default": "0", "min": "0", "max": "5", "pos": "38" },
      { "type": "int", "name": "Dilate", "default": "0", "min": "0", "max": "48", "pos": "39" },
      { "type": "float", "name": "Déformation", "default": "0", "min": "0", "max": "5", "pos": "40" },
      { "type": "float", "name": "Bruit / Noise", "default": "0", "min": "0", "max": "100", "pos": "41" },
      { "type": "bool", "name": "Ombre / Shadow", "default": "0", "pos": "42" },
      { "type": "float", "name": "X-Ombre X-Shadow", "default": "0.5", "min": "-5", "max": "5", "pos": "43" },
      { "type": "float", "name": "Y-Ombre Y-Shadow", "default": "0.5", "min": "-5", "max": "5", "pos": "44" },
      { "type": "float", "name": "Douceur Ombre / Smoothness Shadow", "default": "1.8", "min": "0", "max": "5", "pos": "45" },
      { "type": "float", "name": "Courbure Ombre / Curvature Shadow", "default": "0", "min": "0", "max": "1", "pos": "46" },
      { "type": "float", "name": "Décalage Ombre X / Shadow Offset X", "default": "0", "min": "-20", "max": "20", "pos": "47" },
      { "type": "float", "name": "Décalage Ombre Y / Shadow Offset Y", "default": "0", "min": "-20", "max": "20", "pos": "48" },
      { "type": "bool", "name": "Canal Alpha", "default": "0", "pos": "49" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Symmetric 2D Shape", "lang": "en", "command": "fx_symmetric_shape2d", "command_preview": "fx_symmetric_shape2d_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates symmetric 2D shapes controlled by keypoints. " },
      { "type": "separator" },
      { "type": "int", "name": "Subdivisions", "default": "5", "min": "2", "max": "32", "pos": "1" },
      { "type": "point", "name": "Center", "position": "50,50", "pos": "2" },
      { "type": "value", "value": "50,50", "pos": "4" },
      { "type": "point", "name": "Angle / Size", "position": "50,30", "pos": "5" },
      { "type": "value", "value": "50,30", "pos": "7" },
      { "type": "separator" },
      { "type": "point", "name": "Control Point 1", "position": "50,25", "pos": "8" },
      { "type": "point", "name": "Control Point 2", "position": "56,42", "pos": "10" },
      { "type": "point", "name": "Control Point 3", "position": "52,52", "pos": "12" },
      { "type": "point", "name": "Control Point 4", "position": "52,52", "pos": "14" },
      { "type": "point", "name": "Control Point 5", "position": "52,52", "pos": "16" },
      { "type": "point", "name": "Control Point 6", "position": "52,52", "pos": "18" },
      { "type": "separator" },
      { "type": "choice", "name": "Drawing Mode", "default": "1", "pos": "20", "choices": { "0": "Outlined", "1": "Filled" } },
      { "type": "color", "name": "Color", "default": "255,0,255", "pos": "21" },
      { "type": "float", "name": "Opacity (%)", "default": "100", "min": "0", "max": "100", "pos": "24" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2019/06/17." }
      ]
    },
    {
      "name": "Tangential Circles", "lang": "en", "command": "cl_tangentialCircle", "command_preview": "cl_tangentialCircle", "parameters": [
      { "type": "note", "text": "Warning: This is a slow filter and it might consume too much RAM." },
      { "type": "separator" },
      { "type": "note", "text": "Drawing:" },
      { "type": "bool", "name": "Draw Big Circle", "default": "1", "pos": "1" },
      { "type": "float", "name": "Big Circle Radius", "default": "100", "min": "10", "max": "1000", "pos": "2" },
      { "type": "choice", "name": "Dimensions", "default": "0", "pos": "3", "choices": { "0": "According to Radius", "1": "According to Layer", "2": "According to Layer (Proportionate)", "3": "According to Layer (Scaling)" } },
      { "type": "note", "text": "If you choose \"proportionate\" or \"Scaling\", the Big Circle Radius is a percentage of 1/3 of the smaller dimension of the layer. Otherwise, it is a number of pixels." },
      { "type": "float", "name": "Stroke Width", "default": "1", "min": "0.5", "max": "10", "pos": "4" },
      { "type": "int", "name": "Number of Small Circles", "default": "5", "min": "2", "max": "100", "pos": "5" },
      { "type": "int", "name": "Number of Levels", "default": "1", "min": "1", "max": "4", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Colors:" },
      { "type": "color", "name": "Background Color", "default": "255,255,255", "pos": "7" },
      { "type": "color", "name": "Foreground Color", "default": "0,0,0", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "Effects:" },
      { "type": "choice", "name": "Effect", "default": "0", "pos": "13", "choices": { "0": "None", "1": "Transparent Background", "2": "Strange Polygons", "3": "Multicolored", "4": "Rainbow", "5": "Double", "6": "Colored Tube", "7": "Red-Yellow Halo", "8": "Blue-Cyan Halo" } },
      { "type": "separator" },
      { "type": "note", "text": "Note: The preview might be much more aliased than the final result and some effects ignore colors." },
      { "type": "separator" },
      { "type": "link", "name": "Filter discussed here", "url": "http://gimpchat.com/viewtopic.php?f=28&t=20121", "align": "center" },
      { "type": "note", "text": "Author: Claude Lion. Latest Update: 2022/11/14." },
      { "type": "note", "text": "It uses filters of David Tschumperlé and Rod/GimpChat and an algorithm of Reptorian." }
      ]
    },
    {
      "name": "Test Visu 3D", "lang": "en", "command": "samj_Test_Visu_3D", "command_preview": "samj_Test_Visu_3D", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">samj_Test_Visu_3D</span>" },
      { "type": "choice", "name": "Type 3D", "default": "1", "pos": "1", "choices": { "0": "Fichier 3D .off", "1": "elevation3d", "2": "imageplane3d", "3": "imagecube3d", "4": "gmic3d" } },
      { "type": "text", "name": "Fichier 3D .off", "default": "C:\\\\GimpEval-2.9.5-Win\\\\images_test\\\\GMIC\\\\cube.off", "pos": "2" },
      { "type": "float", "name": "Elevation3d", "default": "0.5", "min": "0", "max": "1", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">rotate3d</span>" },
      { "type": "bool", "name": "U", "default": "1", "pos": "4" },
      { "type": "bool", "name": "V", "default": "1", "pos": "5" },
      { "type": "bool", "name": "W", "default": "0", "pos": "6" },
      { "type": "float", "name": "Angle", "default": "0", "min": "0", "max": "360", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">gaussians3d</span>" },
      { "type": "int", "name": "Size", "default": "0", "min": "0", "max": "32", "pos": "8" },
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "2", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Rendu</span>" },
      { "type": "choice", "name": "Type", "default": "0", "pos": "10", "choices": { "0": "fx render3d", "1": "snapshot3d" } },
      { "type": "bool", "name": "Autocrop", "default": "0", "pos": "11" },
      { "type": "bool", "name": "Dimensions Origine", "default": "0", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">fx render3d</span>" },
      { "type": "int", "name": "Width", "default": "1024", "min": "8", "max": "4096", "pos": "13" },
      { "type": "int", "name": "Height", "default": "1024", "min": "8", "max": "4096", "pos": "14" },
      { "type": "float", "name": "Object Size", "default": "0.5", "min": "0", "max": "3", "pos": "15" },
      { "type": "float", "name": "X angle", "default": "0", "min": "0", "max": "360", "pos": "16" },
      { "type": "float", "name": "Y angle", "default": "0", "min": "0", "max": "360", "pos": "17" },
      { "type": "float", "name": "Z angle", "default": "0", "min": "0", "max": "360", "pos": "18" },
      { "type": "float", "name": "FOV", "default": "45", "min": "1", "max": "90", "pos": "19" },
      { "type": "float", "name": "X light", "default": "0", "min": "-100", "max": "100", "pos": "20" },
      { "type": "float", "name": "Y light", "default": "0", "min": "-100", "max": "100", "pos": "21" },
      { "type": "float", "name": "Z light", "default": "-100", "min": "-100", "max": "0", "pos": "22" },
      { "type": "float", "name": "Specular lightness", "default": "0.5", "min": "0", "max": "1", "pos": "23" },
      { "type": "float", "name": "Specular shininess", "default": "0.7", "min": "0", "max": "3", "pos": "24" },
      { "type": "choice", "name": "Rendering", "default": "2", "pos": "25", "choices": { "0": "Dots", "1": "Wireframe", "2": "Flat", "3": "Flat shaded", "4": "Gouraud", "5": "Phong" } },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "26" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">snapshot3d</span>" },
      { "type": "int", "name": "Dimension", "default": "400", "min": "256", "max": "4096", "pos": "27" },
      { "type": "float", "name": "Zoom", "default": "1", "min": "1", "max": "2", "pos": "28" },
      { "type": "color", "name": "Fond", "default": "225,255,255,255", "pos": "29" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2017/01/15." }
      ]
    },
    {
      "name": "Thorn Fractal - Secant Sea", "lang": "en", "command": "gui_rep_tfrac", "command_preview": "gui_rep_tfrac_preview", "parameters": [
      { "type": "note", "text": "Thorn Fractal is the fractal attributed to Andrew Wayne Graff, alternatively named the \"Secant Sea\".\nThe code was adapted from <a href=\"http://paulbourke.net/fractals/thorn/thorn_code.c\">Sample C source code</a> provided by Adam Majewski.\n\nDocumentation - <a href=\"http://paulbourke.net/fractals/thorn/#dane\">Thorn Fractal</a> by <a href=\"http://paulbourke.net/fractals/\">Paul Bourke</a>\n\nAlternating Chaos formula are made by <a href=\"https://forums.getpaint.net/profile/45895-madjik/\">MadJik</a>, and they are originally used in <a href=\"https://forums.getpaint.net/topic/111491-fractal-attractor-ymd170628/\">Fractal Attractor</a> plugin for Paint.NET software." },
      { "type": "separator" },
      { "type": "note", "text": "Style Setting" },
      { "type": "choice", "name": "Predefined Formula", "default": "0", "pos": "1", "choices": { "0": "Normal", "1": "Normal Inverted", "2": "Arctangent", "3": "Tangent", "4": "Tanh Stroke", "5": "Asymphological Vibrato", "6": "Asymphological Basic", "7": "Asymphological Basic 2", "8": "Asymphochaos", "9": "Petallian", "10": "Semi-Thorny Petallian", "11": "Thorny Petal 1", "12": "Thorny Petal 2", "13": "Inflation", "14": "Inflation 2", "15": "Chaotic Creation", "16": "Earthing", "17": "Acrylic Earthing", "18": "Unearthing Origami", "19": "Cubic Unearthing", "20": "Webbing Cubic Unearthing", "21": "Chaotic Hooks Unearthing", "22": "Chaotic Hooks", "23": "Sinusoidal Liquid", "24": "Cosinusoidal Liquid", "25": "Echo Wide", "26": "Echo Squircle", "27": "Echo Hall", "28": "Echo Hall 2", "29": "Liquid Parabolic", "30": "Chaos-Vibrato", "31": "Chaos Deep-Vibrato", "32": "Chaos Spacetime", "33": "Parabolic", "34": "Parabolic Chaos", "35": "Cubic-Diamond Chaos", "36": "C-Line", "37": "Contour Chaos", "38": "Spiderweb-Diamond", "39": "Acrylica", "40": "Refractive Space", "41": "Smooth-Artistry", "42": "Ferrofluid", "43": "Triangular Interweaving", "44": "Fabric Chaos", "45": "Reverse Tangent Division", "46": "Chaotic Tangent", "47": "Alternating Chaos 0", "48": "Alternating Chaos 1 [Legacy]", "49": "Alternating Chaos 2 [Legacy]", "50": "Alternating Chaos 3 [Legacy]", "51": "Alternating Chaos 4 [Legacy]", "52": "Alternating Chaos 5 [Legacy]", "53": "Alternating Chaos 1", "54": "Alternating Chaos 2", "55": "Alternating Chaos 3", "56": "Alternating Chaos 4", "57": "Alternating Chaos 5" } },
      { "type": "choice", "name": "Custom Formula", "default": "0", "pos": "2", "choices": { "0": "None", "1": "Custom Formula", "2": "Alternating Custom Formula Level 1", "3": "Alternating Custom Formula Level 2", "4": "Alternative Custom Formula Level 3", "5": "Alternating Custom Formula Level 4" } },
      { "type": "separator" },
      { "type": "note", "text": "Fractal Calculation Constraints" },
      { "type": "note", "text": "Information at bottom of filter. Some predefined formulas requires you to use low values. You may need to type in values from 5-1024 manually." },
      { "type": "int", "name": "Escape Value", "default": "10000", "min": "5", "max": "3000000", "pos": "3" },
      { "type": "int", "name": "Loop Limitation", "default": "255", "min": "1", "max": "1024", "pos": "4" },
      { "type": "float", "name": "Subsampling Level", "default": "3", "min": "1", "max": "10", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Distortion Factors" },
      { "type": "float", "name": "Distortion X-[dx]", "default": "0", "min": "-50", "max": "50", "pos": "6" },
      { "type": "float", "name": "Distortion Y-[dy]", "default": "0", "min": "-50", "max": "50", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Transformations" },
      { "type": "note", "text": "- Scaling -" },
      { "type": "float", "name": "Scaling XY-Axis", "default": "1", "min": ".01", "max": "15", "pos": "8" },
      { "type": "float", "name": "Scaling X-Axis", "default": "1", "min": ".01", "max": "15", "pos": "9" },
      { "type": "float", "name": "Scaling Y-Axis", "default": "1", "min": ".01", "max": "15", "pos": "10" },
      { "type": "bool", "name": "PI-Based Scaling", "default": "1", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "- Displacement -" },
      { "type": "float", "name": "Offset X-Transformation", "default": "0", "min": "-5", "max": "5", "pos": "12" },
      { "type": "float", "name": "Offset Y-Transformation", "default": "0", "min": "-5", "max": "5", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "- Rotation -" },
      { "type": "float", "name": "Function Angle", "default": "0", "min": "-180", "max": "180", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "Custom Formula" },
      { "type": "note", "text": "See bottom of this filter to see instruction of usage" },
      { "type": "text", "name": "Custom A-X-[vx]", "default": "a/sin(b)", "pos": "15" },
      { "type": "text", "name": "Custom A-Y-[vy]", "default": "b/cos(a)", "pos": "16" },
      { "type": "text", "name": "Custom B-X-[vx]", "default": "sin(a)/cos(b)", "pos": "17" },
      { "type": "text", "name": "Custom B-Y-[vy]", "default": "b/cos(a)", "pos": "18" },
      { "type": "text", "name": "Custom C-X-[vx]", "default": "a/sin(b)", "pos": "19" },
      { "type": "text", "name": "Custom C-Y-[vy]", "default": "b/cos(a+b)", "pos": "20" },
      { "type": "text", "name": "Custom D-X-[vx]", "default": "a", "pos": "21" },
      { "type": "text", "name": "Custom D-Y-[vy]", "default": "b", "pos": "22" },
      { "type": "text", "name": "Custom E-X-[vx]", "default": "a", "pos": "23" },
      { "type": "text", "name": "Custom E-Y-[vy]", "default": "b", "pos": "24" },
      { "type": "separator" },
      { "type": "note", "text": "- Overload -" },
      { "type": "bool", "name": "Activate Overload Functions", "default": "0", "pos": "25" },
      { "type": "bool", "name": "Enable CFA/CFB* Formulas for OVX and OVY formulas?", "default": "1", "pos": "26" },
      { "type": "text", "name": "Overload X", "default": "a/(cfb*cos(b))", "pos": "27" },
      { "type": "text", "name": "Overload Y", "default": "b/(cfa*sin(a))", "pos": "28" },
      { "type": "text", "name": "CFA-[cfa]", "default": "cos(vx)/tan(vx)", "pos": "29" },
      { "type": "text", "name": "CFB-[cfb]", "default": "sin(vy)/tan(vy)", "pos": "30" },
      { "type": "int", "name": "Overload Count**", "default": "1", "min": "1", "max": "4", "pos": "31" },
      { "type": "bool", "name": "Use Negative Overload", "default": "0", "pos": "32" },
      { "type": "note", "text": "*=cfa and cfb must be lowercase when using in overload formula!\n\n**=Negative Overload Count utilize last vector number rather than second last to find cfa,cfb." },
      { "type": "separator" },
      { "type": "note", "text": "Colour Setting" },
      { "type": "choice", "name": "Fractal Mapping", "default": "0", "pos": "33", "choices": { "0": "Grayscale", "1": "Hue", "2": "Random Color Map" } },
      { "type": "int", "name": "Colours", "default": "3", "min": "3", "max": "8", "pos": "34" },
      { "type": "int", "name": "Colour Generation Seed", "default": "0", "min": "0", "max": "5000", "pos": "35" },
      { "type": "separator" },
      { "type": "note", "text": "Information of Thorn Fractal - Secant Sea filter" },
      { "type": "separator" },
      { "type": "note", "text": "Fractal Calculation Constraints\n\nEscape Value defines the minimum value to escape from the loop used to determine the amount of iteration needed to be bigger than the specified value per pixels. The lower the value, the more contrast at a sacrifise of details.\n\nIterations defines the maximum possible amount of loop per pixels when escape value is not reached. The lower the value, the more contrast and the more posterization of values.\n\nSubsampling Level is used to alter the dimensions before calculation of fractal, and it is resized to the original dimension after the fractal has been generated. The bigger the value, the more computationally intensive it is. In fact, this has the most consistent impact on performance." },
      { "type": "separator" },
      { "type": "note", "text": "Custom Formula\n\nTo use this, type in a formula utilizing the syntax given by the G'MIC reference manual. Use notes given the information provided below.\n\nMultiple expressions are supported, and they are separated by \";\" character. If it the only expression, then it would be used for calculation of vx or vy. Otherwise, the first expression may be the only one used for calculation of vx or vy.\n\nAvailable variables -  v,vx,vy,dx,dy,a,b,cfa,cfb\n\nv - Iteration number within Thorn Fractal.\n\nvx - Output of distortion function for x-axis.\n\nvy - Output of distortion function for y-axis.\n\ndx - Distortion-X Number.\n\ndy - Distortion-Y Number.\n\na - Value of a is given by vx equation based on the number of repeats needed to escape from the iterative loop to check when resulting value is greater than escape number.\n\nb - Value of b is given by vx equation based on the number of repeats needed to escape from the iterative loop to check when resulting value is greater than escape number.\n\ncfa - Output of CFA function. Useful if and only if using overload function.\n\ncfb - Output of CFB function. Useful if and only if using overload function." },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2021/6/13." }
      ]
    },
    {
      "name": "Traits Strokes", "lang": "en", "command": "Traits_Strokes_samj", "command_preview": "Traits_Strokes_samj", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Origine" },
      { "type": "float", "name": "Position X (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Position Y (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Traits / Strokes" },
      { "type": "float", "name": "Longueur / Length (>0 %W) (<0 )", "default": "35", "min": "-400", "max": "400", "pos": "3" },
      { "type": "choice", "name": "Mode variations", "default": "0", "pos": "4", "choices": { "0": "Non / No", "1": "Plus / More", "2": "Moins / Less", "3": "Plus / More [milieu-middle]", "4": "Moins / Less [milieu-middle]" } },
      { "type": "float", "name": "Variations % (Longueur/Length)", "default": "100", "min": "0", "max": "1000", "pos": "5" },
      { "type": "float", "name": "Éloignement du centre / Distance from Center (>0 %W) (<0 )", "default": "0", "min": "-400", "max": "400", "pos": "6" },
      { "type": "int", "name": "Nombre de traits / Number of strokes", "default": "30", "min": "1", "max": "2160", "pos": "7" },
      { "type": "float", "name": "Angle (Départ / Start)", "default": "0", "min": "0", "max": "360", "pos": "8" },
      { "type": "float", "name": "Angle (Fin / End)", "default": "360", "min": "0", "max": "360", "pos": "9" },
      { "type": "color", "name": "Couleur/ Color", "default": "240,60,120,255", "pos": "10" },
      { "type": "choice", "name": "Variation de couleur / Color variation", "default": "0", "pos": "14", "choices": { "0": "Pas de variation / No change", "1": "Couleurs aleatoires / Random Colors", "2": "Faiblement nuancee / Poorly nuanced", "3": "Moyennement nuancee / Moderately nuanced", "4": "Fortement nuancee / Highly nuanced" } },
      { "type": "int", "name": "Épaisseur / Thickness", "default": "0", "min": "0", "max": "32", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "Symétrie / Symmetry" },
      { "type": "bool", "name": "Symétrie / Symmetry", "default": "0", "pos": "16" },
      { "type": "float", "name": "Longueur / Length (%)", "default": "20", "min": "0", "max": "100", "pos": "17" },
      { "type": "separator" },
      { "type": "note", "text": "Divers / Foo" },
      { "type": "float", "name": "Flou / Blur", "default": "0", "min": "0", "max": "10", "pos": "18" },
      { "type": "float", "name": "Spread", "default": "0", "min": "0", "max": "10", "pos": "19" },
      { "type": "float", "name": "Déformation", "default": "0", "min": "0", "max": "25", "pos": "20" },
      { "type": "separator" },
      { "type": "note", "text": "Mélange / Blend" },
      { "type": "choice", "name": "Mode", "default": "1", "pos": "21", "choices": { "0": "Add", "1": "Alpha", "2": "And", "3": "Average", "4": "Blue", "5": "Burn", "6": "Darken", "7": "Difference", "8": "Divide", "9": "Dodge", "10": "Edges", "11": "Exclusion", "12": "Freeze", "13": "Grain extract", "14": "Grain merge", "15": "Green", "16": "Hard light", "17": "Hard mix", "18": "Hue", "19": "Interpolation", "20": "Lighten", "21": "Lightness", "22": "Linear burn", "23": "Linear light", "24": "Luminance", "25": "Multiply", "26": "Negation", "27": "Or", "28": "Overlay", "29": "Pin light", "30": "Red", "31": "Reflect", "32": "Saturation", "33": "Shape Average", "34": "Shape Average0", "35": "Soft burn", "36": "Soft dodge", "37": "Soft light", "38": "Screen", "39": "Stamp", "40": "Subtract", "41": "Value", "42": "Vivid light", "43": "Xor" } },
      { "type": "float", "name": "Opacité / Opacity", "default": "1", "min": "0", "max": "1", "pos": "22" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Tree", "lang": "en", "command": "fx_tree", "command_preview": "fx_tree_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a procedural tree. " },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Global parameters:</span>" },
      { "type": "int", "name": "Recursion Depth", "default": "11", "min": "1", "max": "18", "pos": "1" },
      { "type": "int", "name": "Random Seed", "default": "10000", "min": "0", "max": "65535", "pos": "2" },
      { "type": "float", "name": "X-ratio", "default": "0", "min": "-1", "max": "1", "pos": "3" },
      { "type": "float", "name": "Y-ratio", "default": "0", "min": "-1", "max": "1", "pos": "4" },
      { "type": "note", "text": "<span color=\"#FF0055\">Note:</span> Set Random Seed to 0 to make it random as well." },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Trunk:</span>" },
      { "type": "float", "name": "Thickness (%)", "default": "15", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "Base Thickness (%)", "default": "150", "min": "0", "max": "300", "pos": "6" },
      { "type": "float", "name": "Angle (deg.)", "default": "0", "min": "-90", "max": "90", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Recursion:</span>" },
      { "type": "float", "name": "Avg Branching", "default": "2.15", "min": "1", "max": "6", "pos": "8" },
      { "type": "float", "name": "Std Branching", "default": "0.8", "min": "0", "max": "6", "pos": "9" },
      { "type": "float", "name": "Avg Left Angle (deg.)", "default": "-40", "min": "-90", "max": "90", "pos": "10" },
      { "type": "float", "name": "Avg Right Angle (deg.)", "default": "40", "min": "-90", "max": "90", "pos": "11" },
      { "type": "float", "name": "Std Angle (deg.)", "default": "10", "min": "0", "max": "90", "pos": "12" },
      { "type": "float", "name": "Avg Length Factor (%)", "default": "75", "min": "0", "max": "200", "pos": "13" },
      { "type": "float", "name": "Std Length Factor (%)", "default": "0", "min": "0", "max": "200", "pos": "14" },
      { "type": "float", "name": "Avg Thickness Factor (%)", "default": "70", "min": "0", "max": "200", "pos": "15" },
      { "type": "float", "name": "Std Thickness Factor (%)", "default": "20", "min": "0", "max": "200", "pos": "16" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Colors / Opacity:</span>" },
      { "type": "color", "name": "Trunk color", "default": "40,25,0,255", "pos": "17" },
      { "type": "float", "name": "Trunk opacity (%)", "default": "100", "min": "0", "max": "100", "pos": "21" },
      { "type": "color", "name": "Leaf color", "default": "70,140,60,255", "pos": "22" },
      { "type": "float", "name": "Leaf opacity (%)", "default": "100", "min": "0", "max": "100", "pos": "26" },
      { "type": "float", "name": "Color gamma", "default": "0.4", "min": "-2", "max": "2", "pos": "27" },
      { "type": "float", "name": "Opacity gamma", "default": "0.4", "min": "-2", "max": "2", "pos": "28" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2020/03/24." }
      ]
    },
    {
      "name": "Triangles Shades Adjacents", "lang": "en", "command": "Triangles_Shades_Adjacents", "command_preview": "Triangles_Shades_Adjacents", "parameters": [
      { "type": "note", "text": "<span foreground=\"orangered\">Image Finale / Resulting Image</span>" },
      { "type": "bool", "name": "Supprimer Calque Origine / Delete Layer Source", "default": "0", "pos": "1" },
      { "type": "float", "name": "Position Centre X / X Center", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Position Centre Y / Y Center", "default": "50", "min": "0", "max": "100", "pos": "3" },
      { "type": "int", "name": "Nb Triangles", "default": "60", "min": "3", "max": "360", "pos": "4" },
      { "type": "int", "name": "Artefacts / Artifacts", "default": "-1", "min": "-1", "max": "10", "pos": "5" },
      { "type": "note", "text": "<span foreground=\"orangered\">Couleurs / Colors</span>" },
      { "type": "float", "name": "Décalage Des Couleurs / Offset (Angle)", "default": "0", "min": "-360", "max": "360", "pos": "6" },
      { "type": "color", "name": "- - -  Centre / Center - - -", "default": "255,255,255", "pos": "7" },
      { "type": "color", "name": "Couleur / Color A", "default": "255,0,221", "pos": "10" },
      { "type": "color", "name": "Couleur / Color B", "default": "72,0,255", "pos": "13" },
      { "type": "color", "name": "Couleur / Color C", "default": "0,145,255", "pos": "16" },
      { "type": "color", "name": "Couleur / Color D", "default": "0,255,144", "pos": "19" },
      { "type": "color", "name": "Couleur / Color E", "default": "72,255,0", "pos": "22" },
      { "type": "color", "name": "Couleur / Color F", "default": "255,217,0", "pos": "25" },
      { "type": "color", "name": "Couleur / Color G", "default": "255,0,0", "pos": "28" },
      { "type": "choice", "name": "Choix Des Couleurs / Choice Of Colors", "default": "5", "pos": "31", "choices": { "0": "Couleurs / Colors AB", "1": "Couleurs / Colors ABC", "2": "Couleurs / Colors ABCD", "3": "Couleurs / Colors ABCDE", "4": "Couleurs / Colors ABCDEF", "5": "Couleurs / Colors ABCDEFG" } },
      { "type": "bool", "name": "Couleurs aléatoires / Random Colors", "default": "0", "pos": "32" },
      { "type": "note", "text": "<span foreground=\"orangered\">Color Balance</span>" },
      { "type": "bool", "name": "Activer / Enable Color Balance", "default": "0", "pos": "33" },
      { "type": "color", "name": "Neutral color", "default": "128,128,128", "pos": "34" },
      { "type": "bool", "name": "Stretch colors", "default": "1", "pos": "37" },
      { "type": "note", "text": "<span foreground=\"orangered\">Mélange / Blend</span>" },
      { "type": "bool", "name": "Activer Mélange / Enable Blend", "default": "0", "pos": "38" },
      { "type": "choice", "name": "Mode", "default": "3", "pos": "39", "choices": { "0": "Add", "1": "Alpha", "2": "And", "3": "Average", "4": "Blue", "5": "Burn", "6": "Darken", "7": "Difference", "8": "Divide", "9": "Dodge", "10": "Edges", "11": "Exclusion", "12": "Freeze", "13": "Grain extract", "14": "Grain merge", "15": "Green", "16": "Hard light", "17": "Hard mix", "18": "Hue", "19": "Interpolation", "20": "Lighten", "21": "Lightness", "22": "Linear burn", "23": "Linear light", "24": "Luminance", "25": "Multiply", "26": "Negation", "27": "Or", "28": "Overlay", "29": "Pin light", "30": "Red", "31": "Reflect", "32": "Saturation", "33": "Shape Average", "34": "Shape Average0", "35": "Soft burn", "36": "Soft dodge", "37": "Soft light", "38": "Screen", "39": "Stamp", "40": "Subtract", "41": "Value", "42": "Vivid light", "43": "Xor" } },
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "40" },
      { "type": "bool", "name": "Revert layers", "default": "0", "pos": "41" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Turbulence", "lang": "en", "command": "fx_turbulence", "command_preview": "fx_turbulence", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Renders a turbulence noise texture. " },
      { "type": "separator" },
      { "type": "float", "name": "Radius", "default": "128", "min": "1", "max": "1024", "pos": "1" },
      { "type": "int", "name": "Octaves", "default": "6", "min": "1", "max": "12", "pos": "2" },
      { "type": "float", "name": "Damping per Octave", "default": "4", "min": "1", "max": "10", "pos": "3" },
      { "type": "float", "name": "Difference Mixing", "default": "0", "min": "-10", "max": "10", "pos": "4" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "5", "choices": { "0": "Turbulence", "1": "Turbulence 2", "2": "Fractal Noise", "3": "Fractured Clouds", "4": "Stardust", "5": "Pea Soup" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Preben Soeberg.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Twisted Rays", "lang": "en", "command": "fx_twisted_rays", "command_preview": "fx_twisted_rays", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Draws twisted radial rays. " },
      { "type": "separator" },
      { "type": "point", "name": "Center", "position": "50,50", "pos": "1" },
      { "type": "int", "name": "Branches", "default": "9", "min": "1", "max": "64", "pos": "3" },
      { "type": "float", "name": "Angle (%)", "default": "50", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Twist (%)", "default": "50", "min": "-400", "max": "400", "pos": "5" },
      { "type": "float", "name": "Perspective (%)", "default": "25", "min": "-100", "max": "100", "pos": "6" },
      { "type": "color", "name": "Color", "default": "255,255,255,255", "pos": "7" },
      { "type": "bool", "name": "Anti-aliasing", "default": "1", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Authors: David Tschumperlé and <a href=\"https://forums.getpaint.net/topic/123611-how-do-i-create-multiple-lines-vanishing-in-a-spiral/?do=findComment&comment=614424\">Frio </a>.       Latest Update: 2023/10/24." }
      ]
    },
    {
      "name": "Twisted Rays [Samj]", "lang": "en", "command": "Twisted_Rays", "command_preview": "Twisted_Rays", "parameters": [
      { "type": "note", "text": "<span foreground=\"orangered\">Image Finale</span>" },
      { "type": "int", "name": "Dimension En Pixels", "default": "800", "min": "256", "max": "1920", "pos": "1" },
      { "type": "bool", "name": "Supprimer Calque / Delete Layer", "default": "1", "pos": "2" },
      { "type": "float", "name": "Twirl", "default": "0.2", "min": "-5", "max": "5", "pos": "3" },
      { "type": "choice", "name": "Mélanges Rayons / Blend Rays", "default": "2", "pos": "4", "choices": { "0": "Add", "1": "And", "2": "Average", "3": "Darken", "4": "Difference", "5": "Edges", "6": "Grainextract", "7": "Grainmerge", "8": "Multiply", "9": "Negation", "10": "Or", "11": "Screen", "12": "Softburn", "13": "Softdodge", "14": "Subtract", "15": "Xor", "16": "- NON / NO -" } },
      { "type": "choice", "name": "Rendu", "default": "5", "pos": "5", "choices": { "0": "Rayons Couleurs AB", "1": "Rayons Couleurs ABC", "2": "Rayons Couleurs ABCD", "3": "Rayons Couleurs ABCDE", "4": "Rayons Couleurs ABCDEF", "5": "Rayons Couleurs ABCDEFG" } },
      { "type": "note", "text": "<span foreground=\"orangered\">Rayons De Couleurs</span>" },
      { "type": "int", "name": "Nombre de Rayons / Number Of Rays", "default": "21", "min": "3", "max": "360", "pos": "6" },
      { "type": "float", "name": "Angle Décalage Des Couleurs A / Offset", "default": "0", "min": "-360", "max": "360", "pos": "7" },
      { "type": "float", "name": "Angle Décalage Des Couleurs B / Offset", "default": "0", "min": "-360", "max": "360", "pos": "8" },
      { "type": "color", "name": "Couleur / Color A", "default": "0,0,255,255", "pos": "9" },
      { "type": "color", "name": "Couleur / Color B", "default": "0,255,255,255", "pos": "13" },
      { "type": "color", "name": "Couleur / Color C", "default": "0,255,0,255", "pos": "17" },
      { "type": "color", "name": "Couleur / Color D", "default": "255,255,0,255", "pos": "21" },
      { "type": "color", "name": "Couleur / Color E", "default": "255,0,0,255", "pos": "25" },
      { "type": "color", "name": "Couleur / Color F", "default": "255,0,255,255", "pos": "29" },
      { "type": "color", "name": "Couleur / Color G", "default": "255,255,255,255", "pos": "33" },
      { "type": "bool", "name": "Couleurs aléatoires / Random Colors", "default": "0", "pos": "37" },
      { "type": "note", "text": "<span foreground=\"orangered\">Contours</span>" },
      { "type": "color", "name": "Contours", "default": "0,0,0,255", "pos": "38" },
      { "type": "bool", "name": "Affichage / Display Contours", "default": "0", "pos": "42" },
      { "type": "int", "name": "Dilate Contours", "default": "2", "min": "1", "max": "16", "pos": "43" },
      { "type": "float", "name": "Flou / Blur Contours", "default": "2", "min": "0", "max": "5", "pos": "44" },
      { "type": "int", "name": "Sharpen", "default": "0", "min": "200", "max": "400", "pos": "45" },
      { "type": "note", "text": "<span foreground=\"orangered\">Symmetrizoscope</span>" },
      { "type": "bool", "name": "Activer Symmetrizoscope", "default": "0", "pos": "46" },
      { "type": "int", "name": "Itérations", "default": "5", "min": "1", "max": "32", "pos": "47" },
      { "type": "float", "name": "Angle", "default": "0", "min": "0", "max": "360", "pos": "48" },
      { "type": "choice", "name": "Symmetry sides", "default": "0", "pos": "49", "choices": { "0": "Backward", "1": "Forward", "2": "Swap" } },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/10/24." }
      ]
    },
    {
      "name": "Underwoods", "lang": "en", "command": "pr_underwoods", "command_preview": "pr_underwoods_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Generates a 2D forest scene, with trees, light and particles.. " },
      { "type": "separator" },
      { "type": "button", "name": "Reload current parameters", "alignment": "2", "pos": "1" },
      { "type": "int", "name": "Preview Scaling", "default": "30", "min": "1", "max": "100", "pos": "2" },
      { "type": "note", "text": "Downscaling will make preview update faster." },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Light:</span>" },
      { "type": "point", "name": "Light Source Location", "position": "50,5", "pos": "3" },
      { "type": "float", "name": "Source Width", "default": "10", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "Source Height", "default": "10", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "Rays Max Opacity", "default": "0.7", "min": "0", "max": "1", "pos": "7" },
      { "type": "color", "name": "Color", "default": "208,208,156", "pos": "8" },
      { "type": "choice", "name": "Blending", "default": "34", "pos": "11", "choices": { "0": "Add", "1": "Alpha", "2": "And", "3": "Average", "4": "Blue", "5": "Burn", "6": "Darken", "7": "Difference", "8": "Divide", "9": "Dodge", "10": "Edges", "11": "Exclusion", "12": "Freeze", "13": "Grainextract", "14": "Grainmerge", "15": "Green", "16": "Hardlight", "17": "Hardmix", "18": "Hue", "19": "Interpolation", "20": "Lchlightness", "21": "Lighten", "22": "Lightness", "23": "Linearburn", "24": "Linearlight", "25": "Luminance", "26": "Multiply", "27": "Negation", "28": "Or", "29": "Overlay", "30": "Pinlight", "31": "Red", "32": "Reflect", "33": "Saturation", "34": "Screen", "35": "Seamless", "36": "Seamless_mixed", "37": "Softburn", "38": "Softdodge", "39": "Softlight", "40": "Stamp", "41": "Subtract", "42": "Value", "43": "Vividlight", "44": "Xor" } },
      { "type": "int", "name": "Particles", "default": "500", "min": "0", "max": "5000", "pos": "12" },
      { "type": "float", "name": "P. Max Opacity", "default": "1", "min": "0", "max": "1", "pos": "13" },
      { "type": "color", "name": "Color", "default": "255,255,255", "pos": "14" },
      { "type": "float", "name": "Rim Light Softness", "default": "0.4", "min": "0", "max": "2", "pos": "17" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Trees:</span>" },
      { "type": "int", "name": "Tree Shape Seed (0 : Random)", "default": "0", "min": "0", "max": "100000", "pos": "18" },
      { "type": "int", "name": "Tree Position Seed (0 : Random)", "default": "0", "min": "0", "max": "100000", "pos": "19" },
      { "type": "int", "name": "Complexity", "default": "10", "min": "5", "max": "20", "pos": "20" },
      { "type": "float", "name": "Deformity", "default": "4", "min": "0", "max": "50", "pos": "21" },
      { "type": "float", "name": "Deform Scale", "default": "2", "min": "0", "max": "10", "pos": "22" },
      { "type": "float", "name": "Max Height", "default": "0.4", "min": "-1", "max": "1", "pos": "23" },
      { "type": "float", "name": "Min Width", "default": "0", "min": "-1", "max": "0", "pos": "24" },
      { "type": "int", "name": "Amount", "default": "20", "min": "1", "max": "100", "pos": "25" },
      { "type": "color", "name": "Trunk Color", "default": "15,10,0", "pos": "26" },
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "29" },
      { "type": "color", "name": "Leaves Color", "default": "15,10,0", "pos": "30" },
      { "type": "float", "name": "Opacity", "default": "0.8", "min": "0", "max": "1", "pos": "33" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Ambiance:</span>" },
      { "type": "color", "name": "BG Top 1", "default": "100,0,0", "pos": "34" },
      { "type": "color", "name": "BG Top 2", "default": "40,30,0", "pos": "37" },
      { "type": "color", "name": "BG Middle", "default": "40,20,0", "pos": "40" },
      { "type": "color", "name": "BG Bottom 1", "default": "20,10,0", "pos": "43" },
      { "type": "color", "name": "BG Bottom 2", "default": "0,0,0", "pos": "46" },
      { "type": "float", "name": "Opacity", "default": "0.2", "min": "0", "max": "1", "pos": "49" },
      { "type": "choice", "name": "Blending", "default": "34", "pos": "50", "choices": { "0": "Add", "1": "Alpha", "2": "And", "3": "Average", "4": "Blue", "5": "Burn", "6": "Darken", "7": "Difference", "8": "Divide", "9": "Dodge", "10": "Edges", "11": "Exclusion", "12": "Freeze", "13": "Grainextract", "14": "Grainmerge", "15": "Green", "16": "Hardlight", "17": "Hardmix", "18": "Hue", "19": "Interpolation", "20": "Lchlightness", "21": "Lighten", "22": "Lightness", "23": "Linearburn", "24": "Linearlight", "25": "Luminance", "26": "Multiply", "27": "Negation", "28": "Or", "29": "Overlay", "30": "Pinlight", "31": "Red", "32": "Reflect", "33": "Saturation", "34": "Screen", "35": "Seamless", "36": "Seamless_mixed", "37": "Softburn", "38": "Softdodge", "39": "Softlight", "40": "Stamp", "41": "Subtract", "42": "Value", "43": "Vividlight", "44": "Xor" } },
      { "type": "bool", "name": "preview", "default": "0", "pos": "51", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Prawnsushi.Latest Update: 2024/05/01." }
      ]
    }
    ]
  },
  {
    "name": "Repair", "filters": [
    {
      "name": "Banding Denoise", "lang": "en", "command": "banding_denoise_v2", "command_preview": "banding_denoise_v2_preview", "parameters": [
      { "type": "float", "name": "V Cutoff", "default": "5", "min": "0", "max": "50", "pos": "1" },
      { "type": "float", "name": "H Cutoff", "default": "5", "min": "0", "max": "50", "pos": "2" },
      { "type": "float", "name": "Space", "default": "5", "min": "0", "max": "20", "pos": "3" },
      { "type": "float", "name": "Value", "default": "10", "min": "0", "max": "100", "pos": "4" },
      { "type": "choice", "name": "Size of Tiles", "default": "0", "pos": "5", "choices": { "0": "No Tiling", "1": "64px", "2": "128px", "3": "256px", "4": "512px", "5": "1024px", "6": "2048px" } },
      { "type": "bool", "name": "Preview Difference", "default": "0", "pos": "6" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "7", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "8", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Authors: Iain Fergusson and David Tschumperlé       Latest Update: 2023/02/23." }
      ]
    },
    {
      "name": "Bayer Reconstruction", "lang": "en", "command": "bayer2rgb", "command_preview": "gui_no_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Demosaics a Bayer Pattern image into RGB. " },
      { "type": "separator" },
      { "type": "float", "name": "G/M Smoothness", "default": "6", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "R/B Smoothness (Principal)", "default": "6", "min": "0", "max": "20", "pos": "2" },
      { "type": "float", "name": "R/B Smoothness (Secondary)", "default": "4", "min": "0", "max": "20", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Clean Text", "lang": "en", "command": "afre_cleantext", "command_preview": "afre_cleantext_preview", "parameters": [
      { "type": "note", "text": "<strong>Clean scanned text.  Filter by <a href=\"https://discuss.pixls.us/u/afre\">afre</a> 2019 Jun8.</strong>\n\n" },
      { "type": "int", "name": "Clean", "default": "8", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "Range", "default": "1", "min": "0.2", "max": "1", "pos": "2" },
      { "type": "int", "name": "Black", "default": "80", "min": "0", "max": "100", "pos": "3" },
      { "type": "int", "name": "White", "default": "95", "min": "0", "max": "100", "pos": "4" }
      ]
    },
    {
      "name": "CorLine", "lang": "en", "command": "samj_CorLine", "command_preview": "samj_CorLine_preview", "parameters": [
      { "type": "note", "text": "samj_CorLine pour vieilles photos décolorées scannées \r\nsamj_CorLine for old faded scanned photos" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Couleurs</span>" },
      { "type": "int", "name": "Balance", "default": "0", "min": "-64", "max": "64", "pos": "1" },
      { "type": "int", "name": "Chroma", "default": "10", "min": "0", "max": "50", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Netteté</span>" },
      { "type": "float", "name": "Netteté A", "default": "0.5", "min": "0", "max": "1.5", "pos": "3" },
      { "type": "float", "name": "Netteté B", "default": "0", "min": "0", "max": "1.5", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Réparation</span>" },
      { "type": "choice", "name": "Type", "default": "0", "pos": "5", "choices": { "0": "Anisotropic", "1": "Diffusion" } },
      { "type": "int", "name": "Amplitude", "default": "50", "min": "0", "max": "100", "pos": "6" },
      { "type": "int", "name": "Répétition(s)", "default": "1", "min": "1", "max": "5", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Preview</span>" },
      { "type": "choice", "name": "Type", "default": "0", "pos": "8", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate horizontal", "6": "Duplicate vertical" } },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2015/05/10." }
      ]
    },
    {
      "name": "CorLine B", "lang": "en", "command": "samj_CorLine_B", "command_preview": "samj_CorLine_B_preview", "parameters": [
      { "type": "note", "text": "samj_CorLine_B pour vieilles photos décolorées scannées \r\nsamj_CorLine_B for old faded scanned photos" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Couleurs</span>" },
      { "type": "int", "name": "Balance", "default": "0", "min": "-64", "max": "64", "pos": "1" },
      { "type": "float", "name": "Gamma", "default": "1", "min": "0.8", "max": "2.2", "pos": "2" },
      { "type": "int", "name": "Chroma", "default": "10", "min": "0", "max": "50", "pos": "3" },
      { "type": "int", "name": "Cyan", "default": "0", "min": "-127", "max": "128", "pos": "4" },
      { "type": "int", "name": "Magenta", "default": "0", "min": "-127", "max": "128", "pos": "5" },
      { "type": "int", "name": "Jaune", "default": "0", "min": "-127", "max": "128", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Netteté</span>" },
      { "type": "float", "name": "Netteté A", "default": "0.5", "min": "0", "max": "1.5", "pos": "7" },
      { "type": "float", "name": "Netteté B", "default": "0", "min": "0", "max": "1.5", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Réparation</span>" },
      { "type": "choice", "name": "Type", "default": "0", "pos": "9", "choices": { "0": "Anisotropic", "1": "Diffusion" } },
      { "type": "int", "name": "Amplitude", "default": "50", "min": "0", "max": "100", "pos": "10" },
      { "type": "int", "name": "Répétition(s)", "default": "1", "min": "1", "max": "5", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Preview</span>" },
      { "type": "choice", "name": "Type", "default": "0", "pos": "12", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate horizontal", "6": "Duplicate vertical" } },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2015/05/11." }
      ]
    },
    {
      "name": "Deinterlace", "lang": "en", "command": "deinterlace", "command_preview": "fx_deinterlace", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Removes interlacing lines from video frames. " },
      { "type": "separator" },
      { "type": "choice", "name": "Algorithm", "default": "0", "pos": "1", "choices": { "0": "Standard", "1": "Motion-Compensated" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Deinterlace2x", "lang": "en", "command": "gcd_deinterlace2x", "command_preview": "gcd_deinterlace2x_preview", "parameters": [
      { "type": "note", "text": "Blend 2x frames for 4:2:0 YUV" },
      { "type": "separator" },
      { "type": "int", "name": "Balance", "default": "40", "min": "1", "max": "255", "pos": "1" },
      { "type": "choice", "name": "2x Type", "default": "0", "pos": "2", "choices": { "0": "DCCI2x", "1": "Edge", "2": "Fast Blend", "3": "Set Aspect Only" } },
      { "type": "choice", "name": "Aspect", "default": "0", "pos": "3", "choices": { "0": "None", "1": "1:1", "2": "4:3", "3": "5:4", "4": "16:9", "5": "16:10", "6": "2.35:1", "7": "1.85:1" } },
      { "type": "choice", "name": "Interp", "default": "2", "pos": "4", "choices": { "0": "linear", "1": "bicubic", "2": "lanczos" } },
      { "type": "bool", "name": "Ignore Current Aspect", "default": "0", "pos": "5" },
      { "type": "bool", "name": "Fast Blend Preview", "default": "1", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2017/05/01." },
      { "type": "note", "text": "\nNote: preview may be inaccurate" },
      { "type": "note", "text": "Interp is only used when setting aspect" }
      ]
    },
    {
      "name": "Denoise [CNN]", "lang": "en", "command": "fx_denoise", "command_preview": "fx_denoise_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Removes noise using a Convolutional Neural Network. " },
      { "type": "separator" },
      { "type": "bool", "name": "Automatic Noise Level Estimation", "default": "1", "pos": "1" },
      { "type": "float", "name": "Noise Level (%)", "default": "50", "min": "0", "max": "100", "pos": "2", "visibility": "1" },
      { "type": "float", "name": "Opacity (%)", "default": "100", "min": "0", "max": "100", "pos": "3" },
      { "type": "int", "name": "Iterations", "default": "1", "min": "1", "max": "5", "pos": "4" },
      { "type": "bool", "name": "Preview", "default": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "button", "name": "Update Neural Network", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": " <span color=\"#EE5500\">Note:</span> This filter uses a convolutional neural network (CNN) to denoise images. This filter does not take advantage of GPU computing, so expect it to be quite slow if you don't have many CPU cores available. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2025/10/13." }
      ]
    },
    {
      "name": "Denoise Smooth", "lang": "en", "command": "afre_denoisesmooth", "command_preview": "afre_denoisesmooth_preview", "parameters": [
      { "type": "note", "text": "<strong>Denoise noisy image, or smooth low noise image.  Filter by <a href=\"https://discuss.pixls.us/u/afre\">afre</a> 2020 Oct4.</strong>\n\n Filter is slow when the radius  and amount  are high. Start small and increase as appropriate.\n\n" },
      { "type": "int", "name": "Radius", "default": "3", "min": "1", "max": "10", "pos": "1" },
      { "type": "int", "name": "Amount", "default": "10", "min": "1", "max": "1000", "pos": "2" },
      { "type": "note", "text": "\n\n<strong>Note</strong>\n\nG'MIC's preview is inaccurate. Apply the filter and review the results in your host editor." }
      ]
    },
    {
      "name": "Denoise Smooth Alt", "lang": "en", "command": "afre_denoisesmooth_alt", "command_preview": "afre_denoisesmooth_alt_preview", "parameters": [
      { "type": "note", "text": "<strong>Denoise noisy image, or smooth low noise image.  Filter by <a href=\"https://discuss.pixls.us/u/afre\">afre</a> 2020 Oct4-11.</strong>\n\n Filter is slow when the radius  and amount  are high. Start small and increase as appropriate.\n\n" },
      { "type": "int", "name": "Radius", "default": "3", "min": "1", "max": "10", "pos": "1" },
      { "type": "int", "name": "Amount", "default": "10", "min": "1", "max": "1000", "pos": "2" },
      { "type": "note", "text": "\n\n<strong>Note</strong>\n\nG'MIC's preview is inaccurate. Apply the filter and review the results in your host editor." }
      ]
    },
    {
      "name": "Descreen", "lang": "en", "command": "fx_pahlsson_descreen", "command_preview": "fx_pahlsson_descreen_preview", "parameters": [
      { "type": "float", "name": "Circle Radius (%)", "default": "7", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Cross Length (%)", "default": "40", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Cross Width (%)", "default": "1", "min": "0", "max": "100", "pos": "3" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "4", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Andreas Påhlsson.      Latest update: 2026/04/08." }
      ]
    },
    {
      "name": "Despeckle", "lang": "en", "command": "gcd_despeckle", "command_preview": "gcd_despeckle", "parameters": [
      { "type": "note", "text": "Remove small dots and specks" },
      { "type": "separator" },
      { "type": "int", "name": "Tolerance", "default": "20", "min": "0", "max": "50", "pos": "1" },
      { "type": "int", "name": "Max Area", "default": "10", "min": "0", "max": "100", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.   Latest update : 2013/02/01." },
      { "type": "note", "text": "\n<u>Notes</u>" },
      { "type": "note", "text": "Set max area to 0 for no area size limit." }
      ]
    },
    {
      "name": "Iain Noise Reduction 2019", "lang": "en", "command": "iain_nr_2019", "command_preview": "iain_nr_2019_preview", "parameters": [
      { "type": "float", "name": "Gamma", "default": "1", "min": ".05", "max": "2", "pos": "1" },
      { "type": "float", "name": "Shadows", "default": "0", "min": "-1", "max": "1", "pos": "2" },
      { "type": "float", "name": "Light", "default": "0", "min": "-1", "max": "1", "pos": "3" },
      { "type": "float", "name": "Mid Offset", "default": "0", "min": "-0.5", "max": "0.5", "pos": "4" },
      { "type": "float", "name": "Desaturate", "default": "0.5", "min": "0", "max": "1", "pos": "5" },
      { "type": "float", "name": "Guide mix", "default": "1", "min": "0", "max": "1", "pos": "6" },
      { "type": "bool", "name": "Soften Guide", "default": "0", "pos": "7" },
      { "type": "float", "name": "Fine", "default": "5", "min": "0", "max": "30", "pos": "8" },
      { "type": "float", "name": "Mid", "default": "3", "min": "0", "max": "30", "pos": "9" },
      { "type": "float", "name": "Large", "default": "0", "min": "0", "max": "30", "pos": "10" },
      { "type": "int", "name": "Lookup", "default": "3", "min": "1", "max": "7", "pos": "11" },
      { "type": "choice", "name": "Recovery", "default": "0", "pos": "12", "choices": { "0": "no recovery", "1": "fast recovery", "2": "slow recovery", "3": "guide recovery" } },
      { "type": "float", "name": "Recover", "default": ".5", "min": "0", "max": "2", "pos": "13" },
      { "type": "choice", "name": "Preview shows", "default": "4", "pos": "14", "choices": { "0": "Noise", "1": "Fine Noise", "2": "Mid Noise", "3": "Large Noise", "4": "Output" } },
      { "type": "bool", "name": "Preview Tones map", "default": "0", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Iain Fergusson - completely re-written Dec 2019" },
      { "type": "note", "text": "previous update 10 Jan 2013" }
      ]
    },
    {
      "name": "Iain's Fast Denoise", "lang": "en", "command": "iain_fast_denoise_p", "command_preview": "iain_fast_denoise_p_preview", "parameters": [
      { "type": "float", "name": "Luma", "default": "0", "min": "0", "max": "3", "pos": "1" },
      { "type": "float", "name": "Chroma", "default": "0", "min": "0", "max": "3", "pos": "2" },
      { "type": "float", "name": "Gamma", "default": "1", "min": ".5", "max": "3", "pos": "3" },
      { "type": "float", "name": "Despeckle", "default": "0", "min": "0", "max": "1", "pos": "4" },
      { "type": "bool", "name": "Dither Output", "default": "0", "pos": "5" },
      { "type": "choice", "name": "Preview Shows", "default": "0", "pos": "6", "choices": { "0": "Normal Output", "1": "Luma Noise", "2": "Chroma Noise" } },
      { "type": "separator" },
      { "type": "choice", "name": "Parallel Processing", "default": "1", "pos": "7", "choices": { "0": "Off", "1": "Auto" } },
      { "type": "separator" },
      { "type": "note", "text": "This noise reduction filter is designed for speed, and some quality has been sacrificed." },
      { "type": "separator" },
      { "type": "note", "text": "Author: Iain Fergusson" },
      { "type": "note", "text": "Update 28 March 2015 - increased parallel overlap to remove artefacts" },
      { "type": "note", "text": "Update 26 Oct 2013 - parallel processing" },
      { "type": "note", "text": "Released 22 Feb 2013" }
      ]
    },
    {
      "name": "Inpaint [Holes]", "lang": "en", "command": "fx_inpaint_holes", "command_preview": "fx_inpaint_holes", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Fills transparent holes using surrounding content. " },
      { "type": "separator" },
      { "type": "float", "name": "Maximal Area", "default": "4", "min": "1", "max": "512", "pos": "1" },
      { "type": "float", "name": "Tolerance", "default": "20", "min": "0", "max": "255", "pos": "2" },
      { "type": "choice", "name": "Connectivity", "default": "1", "pos": "3", "choices": { "0": "Low", "1": "High" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2014/05/27." }
      ]
    },
    {
      "name": "Inpaint [Morphological]", "lang": "en", "command": "fx_inpaint_morpho", "command_preview": "fx_inpaint_morpho_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Inpaints mask content using morphological operations. " },
      { "type": "separator" },
      { "type": "color", "name": "Mask Color", "default": "255,0,0,255", "pos": "1" },
      { "type": "int", "name": "Mask Dilation", "default": "0", "min": "0", "max": "32", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Note: It is strongly suggested to apply this filter only on a selection around the region to inpaint, to save computation time!" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2015/11/25." }
      ]
    },
    {
      "name": "Inpaint [Multi-Scale]", "lang": "en", "command": "fx_inpaint_matchpatch", "command_preview": "fx_inpaint_matchpatch_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Inpaints mask content using a patch-based multi-scale algorithm. " },
      { "type": "separator" },
      { "type": "int", "name": "Number of Scales", "default": "0", "min": "0", "max": "16", "pos": "1" },
      { "type": "note", "text": "(Set Number of scales to 0 for automatic scale detection)" },
      { "type": "int", "name": "Patch Size", "default": "9", "min": "1", "max": "64", "pos": "2" },
      { "type": "int", "name": "Number of Iterations per Scale", "default": "10", "min": "1", "max": "100", "pos": "3" },
      { "type": "int", "name": "Blend Size", "default": "5", "min": "0", "max": "32", "pos": "4" },
      { "type": "bool", "name": "Allow Outer Blending", "default": "1", "pos": "5" },
      { "type": "color", "name": "Mask Color", "default": "255,0,0,255", "pos": "6" },
      { "type": "int", "name": "Mask Dilation", "default": "0", "min": "0", "max": "32", "pos": "10" },
      { "type": "separator" },
      { "type": "bool", "name": "Preview Progression While Running", "default": "0", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Note: Preview and final result may strongly differ." },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2015/11/25." }
      ]
    },
    {
      "name": "Inpaint [Patch-Based]", "lang": "en", "command": "fx_inpaint_patch", "command_preview": "fx_inpaint_patch_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Inpaints mask content by copy/pasting from similar image parts. " },
      { "type": "separator" },
      { "type": "int", "name": "Patch Size", "default": "7", "min": "1", "max": "64", "pos": "1" },
      { "type": "float", "name": "Lookup Size", "default": "16", "min": "1", "max": "32", "pos": "2" },
      { "type": "float", "name": "Lookup Factor", "default": "0.1", "min": "0", "max": "1", "pos": "3" },
      { "type": "float", "name": "Blend Size", "default": "1.2", "min": "0", "max": "5", "pos": "4" },
      { "type": "float", "name": "Blend Threshold", "default": "0", "min": "0", "max": "1", "pos": "5" },
      { "type": "float", "name": "Blend Decay", "default": "0.05", "min": "0", "max": "0.5", "pos": "6" },
      { "type": "int", "name": "Blend Scales", "default": "10", "min": "1", "max": "20", "pos": "7" },
      { "type": "bool", "name": "Allow Outer Blending", "default": "1", "pos": "8" },
      { "type": "color", "name": "Mask Color", "default": "255,0,0,255", "pos": "9" },
      { "type": "int", "name": "Mask Dilation", "default": "0", "min": "0", "max": "32", "pos": "13" },
      { "type": "choice", "name": "Process by Blocks of Size", "default": "0", "pos": "14", "choices": { "0": "100%", "1": "75%", "2": "50%", "3": "25%", "4": "10%", "5": "5%", "6": "2%", "7": "1%" } },
      { "type": "separator" },
      { "type": "note", "text": "A quick tutorial on how to use this filter can be found here:" },
      { "type": "link", "name": "G'MIC Inpainting tutorial on Patrick David's blog.", "url": "https://patdavid.net/2014/02/getting-around-in-gimp-gmic-inpainting.html", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Authors: David Tschumperlé and Maxime Daisy.       Latest Update: 2015/11/25." }
      ]
    },
    {
      "name": "Inpaint [Transport-Diffusion]", "lang": "en", "command": "fx_inpaint_pde", "command_preview": "fx_inpaint_pde_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Inpaints mask content using transport-diffusion equations. " },
      { "type": "separator" },
      { "type": "float", "name": "Smoothness (%)", "default": "75", "min": "0", "max": "100", "pos": "1" },
      { "type": "choice", "name": "Regularization", "default": "1", "pos": "2", "choices": { "0": "Isotropic", "1": "Delaunay-Guided", "2": "Edge-Oriented" } },
      { "type": "int", "name": "Regularization Iterations", "default": "20", "min": "0", "max": "100", "pos": "3" },
      { "type": "color", "name": "Mask Color", "default": "255,0,0,255", "pos": "4" },
      { "type": "int", "name": "Mask Dilation", "default": "0", "min": "0", "max": "32", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/04/10." }
      ]
    },
    {
      "name": "Local Similarity Mask", "lang": "en", "command": "local_similarity_mask", "command_preview": "local_similarity_mask", "parameters": [
      { "type": "note", "text": "Select pixels at" },
      { "type": "point", "name": "Center (%)", "position": "50,50", "pos": "1" },
      { "type": "note", "text": "With similarity" },
      { "type": "int", "name": "Keep", "default": "50", "min": "0", "max": "255", "pos": "3" },
      { "type": "int", "name": "Reject", "default": "128", "min": "0", "max": "255", "pos": "4" },
      { "type": "note", "text": "On these channels" },
      { "type": "choice", "name": "Channel(s)", "default": "4", "pos": "5", "choices": { "0": "RGB", "1": "Red", "2": "Green", "3": "Blue", "4": "Luminance", "5": "a-component", "6": "b-component", "7": "Hue", "8": "Saturation", "9": "Value", "10": "Lightness", "11": "[Cyan]MYK", "12": "C[Magenta]YK", "13": "CM[Yellow]K", "14": "CMY[Key]" } },
      { "type": "int", "name": "Steps", "default": "10", "min": "2", "max": "100", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "This filter creates a mask based on pixels that are close to, and similar to, the selected pixel." },
      { "type": "separator" },
      { "type": "note", "text": "Author : Iain Fergusson. Update 12 September 2018: Added interactive point and Steps control" }
      ]
    },
    {
      "name": "Pixel Denoise", "lang": "en", "command": "iain_pixel_denoise_p", "command_preview": "iain_pixel_denoise_p_preview", "parameters": [
      { "type": "choice", "name": "Method", "default": "2", "pos": "1", "choices": { "0": "Old Method - slowest", "1": "Hybrid Median - medium speed softest output", "2": "Morphological - fastest sharpest output" } },
      { "type": "separator" },
      { "type": "int", "name": "Iterations", "default": "1", "min": "1", "max": "10", "pos": "2" },
      { "type": "choice", "name": "Channel(s)", "default": "11", "pos": "3", "choices": { "0": "All", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "Linear RGB [all]", "8": "Linear RGB [red]", "9": "Linear RGB [green]", "10": "Linear RGB [blue]", "11": "YCbCr [luminance]", "12": "YCbCr [blue-red chrominances]", "13": "YCbCr [blue chrominance]", "14": "YCbCr [red chrominance]", "15": "YCbCr [green chrominance]", "16": "Lab [lightness]", "17": "Lab [ab-chrominances]", "18": "Lab [a-chrominance]", "19": "Lab [b-chrominance]", "20": "Lch [ch-chrominances]", "21": "Lch [c-chrominance]", "22": "Lch [h-chrominance]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [intensity]", "27": "HSL [lightness]", "28": "CMYK [cyan]", "29": "CMYK [magenta]", "30": "CMYK [yellow]", "31": "CMYK [key]" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Shows", "default": "0", "pos": "4", "choices": { "0": "Output", "1": "Difference" } },
      { "type": "separator" },
      { "type": "choice", "name": "Parallel Processing", "default": "1", "pos": "5", "choices": { "0": "Off", "1": "Auto" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Iain Fergusson. " },
      { "type": "note", "text": "Update - 1 July 2014 - Added much faster Morphological method. Note: The iteration setting is ignored for this method. There is no change to the output for iterations greater than one." },
      { "type": "note", "text": "Update - 1 December 2013 - Fixed some bugs." },
      { "type": "note", "text": "Update - 20 October 2013 - Parallel Processing" },
      { "type": "note", "text": "Update - 8 March 2013 - Incorperated Hybrid Median into this filter and added a choice between the old method and hybrid median" }
      ]
    },
    {
      "name": "Recursive Median", "lang": "en", "command": "iain_recursive_median_p", "command_preview": "iain_recursive_median_p_preview", "parameters": [
      { "type": "int", "name": "Median Radius", "default": "3", "min": "1", "max": "20", "pos": "1" },
      { "type": "int", "name": "Repeats", "default": "1", "min": "1", "max": "20", "pos": "2" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "3", "choices": { "0": "All", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "Linear RGB [all]", "8": "Linear RGB [red]", "9": "Linear RGB [green]", "10": "Linear RGB [blue]", "11": "YCbCr [luminance]", "12": "YCbCr [blue-red chrominances]", "13": "YCbCr [blue chrominance]", "14": "YCbCr [red chrominance]", "15": "YCbCr [green chrominance]", "16": "Lab [lightness]", "17": "Lab [ab-chrominances]", "18": "Lab [a-chrominance]", "19": "Lab [b-chrominance]", "20": "Lch [ch-chrominances]", "21": "Lch [c-chrominance]", "22": "Lch [h-chrominance]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [intensity]", "27": "HSL [lightness]", "28": "CMYK [cyan]", "29": "CMYK [magenta]", "30": "CMYK [yellow]", "31": "CMYK [key]" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Shows", "default": "0", "pos": "4", "choices": { "0": "Output", "1": "Difference" } },
      { "type": "separator" },
      { "type": "choice", "name": "Parallel Processing", "default": "1", "pos": "5", "choices": { "0": "Off", "1": "Auto" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Iain Fergusson." },
      { "type": "note", "text": "Update - 25 October 2013 - Parallel Processing was not working properly, fixed now. note = note(\"Update - 20 October 2013 - Parallel Processing and Control Layout" }
      ]
    },
    {
      "name": "Red-Eye Attenuation", "lang": "en", "command": "red_eye", "command_preview": "red_eye", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Reduces the red-eye effect in flash photography. " },
      { "type": "separator" },
      { "type": "float", "name": "Threshold", "default": "75", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "3.5", "min": "0", "max": "20", "pos": "2" },
      { "type": "float", "name": "Factor", "default": "0.1", "min": "0", "max": "1", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Remove Hot Pixels", "lang": "en", "command": "remove_hotpixels", "command_preview": "remove_hotpixels", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Removes bright single-pixel noise (hot pixels). " },
      { "type": "separator" },
      { "type": "int", "name": "Mask Size", "default": "3", "min": "3", "max": "20", "pos": "1" },
      { "type": "float", "name": "Threshold", "default": "10", "min": "0", "max": "200", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Jérome Boulanger.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Repair Scanned Document", "lang": "en", "command": "jeje_scandoc", "command_preview": "jeje_scandoc_preview", "parameters": [
      { "type": "note", "text": "Use filter is useful to post process document you scan with a digital camera. It peforms smoothing, background correction and white balance adjustement" },
      { "type": "int", "name": "Smoothness", "default": "3", "min": "1", "max": "7", "pos": "1" },
      { "type": "float", "name": "Background", "default": "1", "min": "10", "max": "100", "pos": "2" },
      { "type": "float", "name": "White Level", "default": "90", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Black Level", "default": "5", "min": "0", "max": "100", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "5", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Jérôme Boulanger. Latest update: 2013/11/03." }
      ]
    },
    {
      "name": "Smooth [Anisotropic]", "lang": "en", "command": "fx_smooth_anisotropic", "command_preview": "fx_smooth_anisotropic", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Smoothes image while preserving main edges, using an anisotropic diffusion PDE. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "60", "min": "0", "max": "1000", "pos": "1" },
      { "type": "float", "name": "Sharpness", "default": "0.7", "min": "0", "max": "2", "pos": "2" },
      { "type": "float", "name": "Anisotropy", "default": "0.3", "min": "0", "max": "1", "pos": "3" },
      { "type": "float", "name": "Gradient Smoothness", "default": "0.6", "min": "0", "max": "10", "pos": "4" },
      { "type": "float", "name": "Tensor Smoothness", "default": "1.1", "min": "0", "max": "10", "pos": "5" },
      { "type": "float", "name": "Spatial Precision", "default": "0.8", "min": "0.1", "max": "2", "pos": "6" },
      { "type": "float", "name": "Angular Precision", "default": "30", "min": "1", "max": "180", "pos": "7" },
      { "type": "float", "name": "Value Precision", "default": "2", "min": "0.1", "max": "5", "pos": "8" },
      { "type": "choice", "name": "Interpolation", "default": "0", "pos": "9", "choices": { "0": "Nearest Neighbor", "1": "Linear", "2": "Runge-Kutta" } },
      { "type": "bool", "name": "Fast Approximation", "default": "1", "pos": "10" },
      { "type": "int", "name": "Iterations", "default": "1", "min": "1", "max": "10", "pos": "11" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "12", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/08/27." }
      ]
    },
    {
      "name": "Smooth [Antialias]", "lang": "en", "command": "fx_smooth_antialias", "command_preview": "fx_smooth_antialias", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Reduces aliasing (jaggies) on edges. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "5", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Edge Threshold (%)", "default": "10", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "0.8", "min": "0", "max": "5", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/11/13." }
      ]
    },
    {
      "name": "Smooth [Bilateral]", "lang": "en", "command": "fx_smooth_bilateral", "command_preview": "fx_smooth_bilateral", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Applies a bilateral filter for edge-preserving smoothing. " },
      { "type": "separator" },
      { "type": "float", "name": "Spatial Variance", "default": "10", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Value Variance", "default": "7", "min": "0", "max": "100", "pos": "2" },
      { "type": "int", "name": "Iterations", "default": "2", "min": "1", "max": "10", "pos": "3" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "4", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/08/27." }
      ]
    },
    {
      "name": "Smooth [Block PCA]", "lang": "en", "command": "jeje_denoise_patch_dict", "command_preview": "jeje_denoise_patch_dict_preview", "parameters": [
      { "type": "choice", "name": "Patch", "default": "1", "pos": "1", "choices": { "0": "4", "1": "8", "2": "16", "3": "32" } },
      { "type": "int", "name": "Cycles", "default": "8", "min": "1", "max": "32", "pos": "2" },
      { "type": "float", "name": "Components", "default": "1.1", "min": "1", "max": "9", "pos": "3" },
      { "type": "float", "name": "Coefficients", "default": "1.1", "min": "0", "max": "9", "pos": "4" },
      { "type": "float", "name": "Remix", "default": "0", "min": "0", "max": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "6", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Note:This filter is quite time consuming." },
      { "type": "separator" },
      { "type": "note", "text": "Author : Jérôme Boulanger.      Latest update: 2013/03/29." }
      ]
    },
    {
      "name": "Smooth [Diffusion]", "lang": "en", "command": "fx_smooth_diffusion", "command_preview": "fx_smooth_diffusion", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Smoothes the image using a diffusion equation. " },
      { "type": "separator" },
      { "type": "float", "name": "Sharpness", "default": "0.7", "min": "0", "max": "2", "pos": "1" },
      { "type": "float", "name": "Anisotropy", "default": "0.3", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "Gradient Smoothness", "default": "0.6", "min": "0", "max": "10", "pos": "3" },
      { "type": "float", "name": "Tensor Smoothness", "default": "1.1", "min": "0", "max": "10", "pos": "4" },
      { "type": "float", "name": "Time Step", "default": "15", "min": "5", "max": "50", "pos": "5" },
      { "type": "int", "name": "Iterations", "default": "8", "min": "1", "max": "100", "pos": "6" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "7", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "choice", "name": "Parallel Processing", "default": "0", "pos": "8", "choices": { "0": "Auto", "1": "One Thread", "2": "Two Threads", "3": "Four Threads", "4": "Eight Threads", "5": "Sixteen Threads" } },
      { "type": "int", "name": "Spatial Overlap", "default": "24", "min": "0", "max": "256", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/08/27." }
      ]
    },
    {
      "name": "Smooth [Guided]", "lang": "en", "command": "fx_smooth_guided", "command_preview": "fx_smooth_guided_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Smoothes the image guided by the geometry of a reference image. " },
      { "type": "separator" },
      { "type": "choice", "name": "Guide As", "default": "0", "pos": "1", "choices": { "0": "Self", "1": "Top Layer", "2": "Bottom Layer" } },
      { "type": "int", "name": "Radius", "default": "5", "min": "1", "max": "100", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "30", "min": "0", "max": "512", "pos": "3" },
      { "type": "int", "name": "Iterations", "default": "1", "min": "1", "max": "10", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "5", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "6", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "7", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2019/10/02." }
      ]
    },
    {
      "name": "Smooth [IUWT]", "lang": "en", "command": "jeje_denoise_iuwt", "command_preview": "jeje_denoise_iuwt_preview", "parameters": [
      { "type": "float", "name": "Threshold", "default": "3", "min": "0", "max": "10", "pos": "1" },
      { "type": "int", "name": "Number of Scales", "default": "4", "min": "2", "max": "6", "pos": "2" },
      { "type": "choice", "name": "Wavelet", "default": "2", "pos": "3", "choices": { "0": "Spline B1", "1": "Spline B2", "2": "Spline B3", "3": "Spline B4", "4": "Spline B5", "5": "Spline B6" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "4", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Note:Denoise the image by thresholding the coefficient of the Isotropic Undecimated Wavelet Transform." },
      { "type": "separator" },
      { "type": "note", "text": "Author : Jérôme Boulanger. Latest update: 2013/17/12." }
      ]
    },
    {
      "name": "Smooth [Mean-Curvature]", "lang": "en", "command": "fx_smooth_meancurvature", "command_preview": "fx_smooth_meancurvature", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Smoothes based on mean curvature flow. " },
      { "type": "separator" },
      { "type": "float", "name": "Time Step", "default": "30", "min": "5", "max": "50", "pos": "1" },
      { "type": "int", "name": "Iterations", "default": "4", "min": "1", "max": "30", "pos": "2" },
      { "type": "bool", "name": "Keep Iterations as Different Layers", "default": "0", "pos": "3" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "4", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "choice", "name": "Parallel Processing", "default": "0", "pos": "5", "choices": { "0": "Auto", "1": "One Thread", "2": "Two Threads", "3": "Four Threads", "4": "Eight Threads", "5": "Sixteen Threads" } },
      { "type": "int", "name": "Spatial Overlap", "default": "24", "min": "0", "max": "256", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/08/27." }
      ]
    },
    {
      "name": "Smooth [Median]", "lang": "en", "command": "fx_smooth_median", "command_preview": "fx_smooth_median", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Applies a median filter (good for salt-and-pepper noise). " },
      { "type": "separator" },
      { "type": "int", "name": "Radius", "default": "3", "min": "1", "max": "20", "pos": "1" },
      { "type": "float", "name": "Threshold", "default": "255", "min": "0", "max": "255", "pos": "2" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "3", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Smooth [NL-Means]", "lang": "en", "command": "fx_smooth_nlmeans", "command_preview": "fx_smooth_nlmeans", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Applies Non-Local Means denoising. " },
      { "type": "separator" },
      { "type": "float", "name": "Patch Size", "default": "4", "min": "0.5", "max": "10", "pos": "1" },
      { "type": "int", "name": "Spatial Bandwidth", "default": "4", "min": "3", "max": "13", "pos": "2" },
      { "type": "float", "name": "Tonal Bandwidth", "default": "10", "min": "1", "max": "50", "pos": "3" },
      { "type": "choice", "name": "Patch Measure", "default": "3", "pos": "4", "choices": { "0": "Linf-Norm", "1": "L1-Norm", "2": "L2-Norm", "3": "Luminance", "4": "Lightness", "5": "RGB" } },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "5", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "choice", "name": "Parallel Processing", "default": "0", "pos": "6", "choices": { "0": "Auto", "1": "One Thread", "2": "Two Threads", "3": "Four Threads", "4": "Eight Threads", "5": "Sixteen Threads" } },
      { "type": "int", "name": "Spatial Overlap", "default": "24", "min": "0", "max": "256", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Jérôme Boulanger.      Latest Update: 2015/07/01." }
      ]
    },
    {
      "name": "Smooth [Patch-Based]", "lang": "en", "command": "fx_smooth_patch", "command_preview": "fx_smooth_patch", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Smoothes using image patch averaging. " },
      { "type": "separator" },
      { "type": "float", "name": "Spatial Variance", "default": "10", "min": "0.1", "max": "200", "pos": "1" },
      { "type": "float", "name": "Patch Variance", "default": "10", "min": "0.1", "max": "200", "pos": "2" },
      { "type": "int", "name": "Patch Size", "default": "3", "min": "2", "max": "21", "pos": "3" },
      { "type": "int", "name": "Lookup Size", "default": "5", "min": "2", "max": "21", "pos": "4" },
      { "type": "float", "name": "Patch Smoothness", "default": "0", "min": "0", "max": "4", "pos": "5" },
      { "type": "bool", "name": "Fast Approximation", "default": "1", "pos": "6" },
      { "type": "int", "name": "Iterations", "default": "1", "min": "1", "max": "10", "pos": "7" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "8", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "choice", "name": "Parallel Processing", "default": "0", "pos": "9", "choices": { "0": "Auto", "1": "One Thread", "2": "Two Threads", "3": "Four Threads", "4": "Eight Threads", "5": "Sixteen Threads" } },
      { "type": "int", "name": "Spatial Overlap", "default": "24", "min": "0", "max": "256", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/08/27." }
      ]
    },
    {
      "name": "Smooth [Patch-PCA]", "lang": "en", "command": "fx_smooth_patchpca", "command_preview": "fx_smooth_patchpca", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Smoothes using PCA on image patches. " },
      { "type": "separator" },
      { "type": "float", "name": "Strength", "default": "4", "min": "0", "max": "16", "pos": "1" },
      { "type": "int", "name": "Patch Size", "default": "7", "min": "2", "max": "21", "pos": "2" },
      { "type": "int", "name": "Lookup Size", "default": "11", "min": "2", "max": "21", "pos": "3" },
      { "type": "int", "name": "Spatial Sampling", "default": "7", "min": "1", "max": "16", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "5", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Note: Beware, this filter uses a very computationally intensive algorithm to denoise images. So, do not complain too much if you have less than 8 cores available for the computation :) " },
      { "type": "separator" },
      { "type": "note", "text": "Authors: David Tschumperlé and Jérome Boulanger.       Latest Update: 2016/03/24." }
      ]
    },
    {
      "name": "Smooth [Perona-Malik]", "lang": "en", "command": "fx_smooth_peronamalik", "command_preview": "fx_smooth_peronamalik", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Classic anisotropic diffusion smoothing. " },
      { "type": "separator" },
      { "type": "float", "name": "K-Factor", "default": "20", "min": "0", "max": "255", "pos": "1" },
      { "type": "float", "name": "Time Step", "default": "5", "min": "5", "max": "50", "pos": "2" },
      { "type": "int", "name": "Iterations", "default": "5", "min": "1", "max": "30", "pos": "3" },
      { "type": "bool", "name": "Keep Iterations as Different Layers", "default": "0", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "5", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "choice", "name": "Parallel Processing", "default": "0", "pos": "6", "choices": { "0": "Auto", "1": "One Thread", "2": "Two Threads", "3": "Four Threads", "4": "Eight Threads", "5": "Sixteen Threads" } },
      { "type": "int", "name": "Spatial Overlap", "default": "24", "min": "0", "max": "256", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2014/11/26." }
      ]
    },
    {
      "name": "Smooth [Selective Gaussian]", "lang": "en", "command": "fx_smooth_selective", "command_preview": "fx_smooth_selective", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Blurs flat areas but leaves edges sharp. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "5", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "Edges", "default": "0.5", "min": "0", "max": "2", "pos": "2" },
      { "type": "int", "name": "Scales", "default": "5", "min": "1", "max": "10", "pos": "3" },
      { "type": "int", "name": "Iterations", "default": "1", "min": "1", "max": "10", "pos": "4" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "5", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "choice", "name": "Parallel Processing", "default": "0", "pos": "6", "choices": { "0": "Auto", "1": "One Thread", "2": "Two Threads", "3": "Four Threads", "4": "Eight Threads", "5": "Sixteen Threads" } },
      { "type": "int", "name": "Spatial Overlap", "default": "24", "min": "0", "max": "256", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/08/27." }
      ]
    },
    {
      "name": "Smooth [Skin]", "lang": "en", "command": "fx_smooth_skin", "command_preview": "fx_smooth_skin_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Smoothes skin tones while retaining texture. " },
      { "type": "separator" },
      { "type": "note", "text": "Step 1: Skin detection" },
      { "type": "choice", "name": "Skin Estimation", "default": "2", "pos": "1", "choices": { "0": "None", "1": "Manual", "2": "Automatic" } },
      { "type": "float", "name": "Tolerance", "default": "0.5", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "1", "min": "0", "max": "5", "pos": "3" },
      { "type": "float", "name": "Threshold", "default": "1", "min": "0", "max": "10", "pos": "4" },
      { "type": "bool", "name": "Pre-Normalize Image", "default": "1", "pos": "5" },
      { "type": "float", "name": "X-Coordinate [Manual]", "default": "50", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "Y-Coordinate [Manual]", "default": "50", "min": "0", "max": "100", "pos": "7" },
      { "type": "float", "name": "Radius [Manual]", "default": "5", "min": "0", "max": "25", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Step 2: Medium scale smoothing" },
      { "type": "float", "name": "Base Scale", "default": "2", "min": "0", "max": "10", "pos": "9" },
      { "type": "float", "name": "Fine Scale", "default": "0.2", "min": "0", "max": "0.8", "pos": "10" },
      { "type": "float", "name": "Smoothness", "default": "3", "min": "0", "max": "10", "pos": "11" },
      { "type": "choice", "name": "Smoothness Type", "default": "1", "pos": "12", "choices": { "0": "Gaussian", "1": "Bilateral" } },
      { "type": "separator" },
      { "type": "note", "text": "Step 3: Details enhancement" },
      { "type": "float", "name": "Gain", "default": "0.05", "min": "0", "max": "0.5", "pos": "13" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Data", "default": "5", "pos": "14", "choices": { "0": "Skin Mask", "1": "Base Scale", "2": "Medium Scale (Original)", "3": "Medium Scale (Smoothed)", "4": "Fine Scale", "5": "Result Image" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "15", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "16", "visibility": "0" },
      { "type": "separator" },
      { "type": "link", "name": "Click here for a video tutorial", "url": "http://www.youtube.com/watch?v=H8pQfq-ybCc", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/12/20." }
      ]
    },
    {
      "name": "Smooth [Thin Brush]", "lang": "en", "command": "fx_smooth_anisotropic", "command_preview": "fx_smooth_anisotropic", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Smoothes with a thin brush stroke effect. " },
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "60", "min": "0", "max": "1000", "pos": "1" },
      { "type": "float", "name": "Sharpness", "default": "0.9", "min": "0", "max": "2", "pos": "2" },
      { "type": "float", "name": "Anisotropy", "default": "0.64", "min": "0", "max": "1", "pos": "3" },
      { "type": "float", "name": "Gradient Smoothness", "default": "3.1", "min": "0", "max": "10", "pos": "4" },
      { "type": "float", "name": "Tensor Smoothness", "default": "1.10", "min": "0", "max": "10", "pos": "5" },
      { "type": "float", "name": "Spatial Precision", "default": "0.8", "min": "0.1", "max": "2", "pos": "6" },
      { "type": "float", "name": "Angular Precision", "default": "30", "min": "1", "max": "180", "pos": "7" },
      { "type": "float", "name": "Value Precision", "default": "2", "min": "0.1", "max": "5", "pos": "8" },
      { "type": "choice", "name": "Interpolation", "default": "0", "pos": "9", "choices": { "0": "Nearest Neighbor", "1": "Linear", "2": "Runge-Kutta" } },
      { "type": "bool", "name": "Fast Approximation", "default": "1", "pos": "10" },
      { "type": "int", "name": "Iterations", "default": "1", "min": "1", "max": "10", "pos": "11" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "12", "choices": { "0": "RGB", "1": "Luminance", "2": "Blue & Red chrominances", "3": "Blue chrominance", "4": "Red chrominance" } },
      { "type": "separator" },
      { "type": "choice", "name": "Parallel Processing", "default": "0", "pos": "13", "choices": { "0": "Auto", "1": "One Thread", "2": "Two Threads", "3": "Four Threads", "4": "Eight Threads", "5": "Sixteen Threads" } },
      { "type": "int", "name": "Spatial Overlap", "default": "24", "min": "0", "max": "256", "pos": "14" },
      { "type": "note", "text": "\nNote: This set of anisotropic smoothing parameters has been suggested by PhotoComiX." },
      { "type": "separator" },
      { "type": "note", "text": "Author: PhotoComiX.      Latest Update: 2010/26/12." }
      ]
    },
    {
      "name": "Smooth [Total Variation]", "lang": "en", "command": "fx_smooth_tv", "command_preview": "fx_smooth_tv", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Minimizes Total Variation (removes noise, keeps edges). " },
      { "type": "separator" },
      { "type": "float", "name": "Time Step", "default": "30", "min": "5", "max": "100", "pos": "1" },
      { "type": "int", "name": "Iterations", "default": "10", "min": "1", "max": "40", "pos": "2" },
      { "type": "bool", "name": "Keep Iterations as Different Layers", "default": "0", "pos": "3" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "4", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "choice", "name": "Parallel Processing", "default": "0", "pos": "5", "choices": { "0": "Auto", "1": "One Thread", "2": "Two Threads", "3": "Four Threads", "4": "Eight Threads", "5": "Sixteen Threads" } },
      { "type": "int", "name": "Spatial Overlap", "default": "24", "min": "0", "max": "256", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2013/08/27." }
      ]
    },
    {
      "name": "Smooth [Wavelets]", "lang": "en", "command": "fx_smooth_haar", "command_preview": "fx_smooth_haar", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Smoothes using Haar wavelet thresholding. " },
      { "type": "separator" },
      { "type": "float", "name": "Threshold", "default": "1", "min": "0", "max": "10", "pos": "1" },
      { "type": "int", "name": "Iterations", "default": "10", "min": "1", "max": "32", "pos": "2" },
      { "type": "int", "name": "Scales", "default": "10", "min": "2", "max": "10", "pos": "3" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "4", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "choice", "name": "Parallel Processing", "default": "0", "pos": "5", "choices": { "0": "Auto", "1": "One Thread", "2": "Two Threads", "3": "Four Threads", "4": "Eight Threads", "5": "Sixteen Threads" } },
      { "type": "int", "name": "Spatial Overlap", "default": "24", "min": "0", "max": "256", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Jérome Boulanger and David Tschumperlé.       Latest Update: 2013/08/27." }
      ]
    },
    {
      "name": "Smooth [Wiener]", "lang": "en", "command": "jeje_local_wiener", "command_preview": "jeje_local_wiener_preview", "parameters": [
      { "type": "float", "name": "Scale", "default": "2", "min": ".5", "max": "10", "pos": "1" },
      { "type": "choice", "name": "Channel(s)", "default": "11", "pos": "2", "choices": { "0": "All", "1": "RGBA [all]", "2": "RGB [all]", "3": "RGB [red]", "4": "RGB [green]", "5": "RGB [blue]", "6": "RGBA [alpha]", "7": "Linear RGB [all]", "8": "Linear RGB [red]", "9": "Linear RGB [green]", "10": "Linear RGB [blue]", "11": "YCbCr [luminance]", "12": "YCbCr [blue-red chrominances]", "13": "YCbCr [blue chrominance]", "14": "YCbCr [red chrominance]", "15": "YCbCr [green chrominance]", "16": "Lab [lightness]", "17": "Lab [ab-chrominances]", "18": "Lab [a-chrominance]", "19": "Lab [b-chrominance]", "20": "Lch [ch-chrominances]", "21": "Lch [c-chrominance]", "22": "Lch [h-chrominance]", "23": "HSV [hue]", "24": "HSV [saturation]", "25": "HSV [value]", "26": "HSI [intensity]", "27": "HSL [lightness]", "28": "CMYK [cyan]", "29": "CMYK [magenta]", "30": "CMYK [yellow]", "31": "CMYK [key]" } },
      { "type": "choice", "name": "Value Action", "default": "0", "pos": "3", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "4", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Jérôme Boulanger. Latest update: 2013/06/07." }
      ]
    },
    {
      "name": "Solidify", "lang": "en", "command": "fx_solidify_td", "command_preview": "fx_solidify_td", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Fills transparent areas to create a solid image. " },
      { "type": "separator" },
      { "type": "float", "name": "Smoothness (%)", "default": "75", "min": "0", "max": "100", "pos": "1" },
      { "type": "choice", "name": "Regularization", "default": "1", "pos": "2", "choices": { "0": "Isotropic", "1": "Delaunay-Guided", "2": "Edge-Oriented" } },
      { "type": "int", "name": "Regularization Iterations", "default": "20", "min": "0", "max": "100", "pos": "3" },
      { "type": "int", "name": "Dilation / Erosion", "default": "0", "min": "-20", "max": "20", "pos": "4" },
      { "type": "choice", "name": "Colorspace", "default": "1", "pos": "5", "choices": { "0": "sRGB", "1": "Linear RGB" } },
      { "type": "separator" },
      { "type": "note", "text": "Note: This filter reconstructs transparent regions of an image using a transport-diffusion algorithm. Useful only for images having an alpha-channel. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/04/07." }
      ]
    },
    {
      "name": "Unpurple", "lang": "en", "command": "unpurple", "command_preview": "unpurple_preview", "parameters": [
      { "type": "float", "name": "Intensity of purple fringe", "default": "1", "min": "0", "max": "1", "pos": "1" },
      { "type": "float", "name": "Minimum brightness", "default": "0", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "Minimum red:blue ratio in the fringe", "default": "0", "min": "0", "max": "1", "pos": "3" },
      { "type": "float", "name": "Maximum red:blue ratio in the fringe", "default": "0.33", "min": "0", "max": "1", "pos": "4" },
      { "type": "int", "name": "Blur standard deviation", "default": "5", "min": "1", "max": "10", "pos": "5" },
      { "type": "bool", "name": "Gentle mode (overrides minimum brightness and minimun red:blue ratio)", "default": "0", "pos": "6" },
      { "type": "value", "value": "0", "pos": "7" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "8", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "9", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Unpurple removes purple fringing" },
      { "type": "note", "text": "Based on <a href=\"https://github.com/mjambon/purple-fringe\">https://github.com/mjambon/purple-fringe</a> by Martin Jambon." },
      { "type": "note", "text": "This implementation works with RGB and RGBA images in any bit depth." },
      { "type": "note", "text": "Note: the minimum brightness and intensity are relative to the maximum blue value." },
      { "type": "note", "text": "Ported to G'MIC by Stanislav Paskalev <spaskalev@protonmail.com>" }
      ]
    },
    {
      "name": "Unstrip", "lang": "en", "command": "jeje_unstrip", "command_preview": "jeje_unstrip_preview", "parameters": [
      { "type": "float", "name": "Smoothness", "default": "1", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "Size", "default": "20", "min": "1", "max": "50", "pos": "2" },
      { "type": "float", "name": "Sensitivity", "default": "4", "min": "1", "max": "10", "pos": "3" },
      { "type": "bool", "name": "Normalize", "default": "1", "pos": "4" },
      { "type": "bool", "name": "FFT Preview", "default": "0", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "6", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Jérôme Boulanger. Latest update: 2013/06/10." }
      ]
    },
    {
      "name": "Upscale [CNN2x]", "lang": "en", "command": "fx_scale2x_cnn", "command_preview": "fx_scale2x_cnn_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Doubles image size using a Convolutional Neural Network. " },
      { "type": "separator" },
      { "type": "float", "name": "Sharpness", "default": "1.25", "min": "0", "max": "5", "pos": "1" },
      { "type": "separator" },
      { "type": "button", "name": "Update Neural Network", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": " <span color=\"#EE5500\">Note:</span> This filter uses a convolutional neural network (CNN) to upscale images. This filter does not take advantage of GPU computing, so expect it to be quite slow if you don't have many CPU cores available. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2025/10/13." }
      ]
    },
    {
      "name": "Upscale [DCCI2x]", "lang": "en", "command": "fx_scale_dcci2x", "command_preview": "fx_scale_dcci2x_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Doubles size using Directional Cubic Convolution Interpolation. " },
      { "type": "separator" },
      { "type": "note", "text": "Directional Cubic Convolution Interpolation" },
      { "type": "separator" },
      { "type": "float", "name": "Threshold", "default": "1.15", "min": "1", "max": "2", "pos": "1" },
      { "type": "int", "name": "Exponent", "default": "5", "min": "1", "max": "6", "pos": "2" },
      { "type": "bool", "name": "Extend 1px", "default": "0", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Garagecoder.      Latest Update : 2015/07/11." },
      { "type": "note", "text": "\nNote:  This filter re-implements the scaling algorithm described at : " },
      { "type": "link", "name": "wikipedia.org", "url": "https://en.wikipedia.org/wiki/Directional_Cubic_Convolution_Interpolation", "align": "center" },
      { "type": "note", "text": "The algorithm is intended for enlarging images while avoiding" },
      { "type": "note", "text": "artifacts, e.g. staircase artifacts." },
      { "type": "note", "text": "\nThreshold controls edge[lower] to texture[higher] balance." },
      { "type": "note", "text": "Exponent controls texture edge sharpness[higher]." },
      { "type": "note", "text": "Warning: highly experimental..." }
      ]
    },
    {
      "name": "Upscale [Diffusion]", "lang": "en", "command": "fx_upscale_smart", "command_preview": "fx_upscale_smart_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Upscales using edge-directed diffusion. " },
      { "type": "separator" },
      { "type": "text", "name": "Width", "default": "200%", "pos": "1" },
      { "type": "text", "name": "Height", "default": "200%", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "2", "min": "0", "max": "20", "pos": "3" },
      { "type": "float", "name": "Anisotropy", "default": "0.4", "min": "0", "max": "1", "pos": "4" },
      { "type": "float", "name": "Sharpness", "default": "50", "min": "0", "max": "100", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Upscale [Scale2x]", "lang": "en", "command": "fx_scalenx", "command_preview": "fx_scalenx_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Upscales using the Scale2x algorithm (pixel art). " },
      { "type": "separator" },
      { "type": "choice", "name": "Scaling Factor", "default": "0", "pos": "1", "choices": { "0": "x 2", "1": "x 3", "2": "x 4", "3": "x 6", "4": "x 8", "5": "x 9", "6": "x 12", "7": "x 16", "8": "x 18", "9": "x 27" } },
      { "type": "choice", "name": "Colorbase", "default": "0", "pos": "2", "choices": { "0": "RGB", "1": "YCbCr", "2": "Lab" } },
      { "type": "note", "text": "\nNote:  This filter re-implements the scaling algorithm described at : " },
      { "type": "link", "name": "http://scale2x.sourceforge.net", "url": "http://scale2x.sourceforge.net", "align": "center" },
      { "type": "note", "text": " This filter is useful for resizing images that have very few colors (e.g. indexed images). It is generally useless for true colors images. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    }
    ]
  },
  {
    "name": "Reptorian", "filters": [
    {
      "name": "Array [Random] [Jumble by px]", "lang": "en", "command": "fx_rep_array_random_jumble_by_px", "command_preview": "fx_rep_array_random_jumble_by_px_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Main" },
      { "type": "int", "name": "Tile Width(px)", "default": "128", "min": "1", "max": "2048", "pos": "1" },
      { "type": "int", "name": "Tile Height", "default": "128", "min": "1", "max": "2048", "pos": "2" },
      { "type": "int", "name": "Old Tile Width(px)", "default": "128", "min": "1", "max": "2048", "pos": "3", "visibility": "0" },
      { "type": "int", "name": "Old Tile Height", "default": "128", "min": "1", "max": "2048", "pos": "4", "visibility": "0" },
      { "type": "bool", "name": "Link Dimensions", "default": "0", "pos": "5" },
      { "type": "bool", "name": "Enforce Factors", "default": "0", "pos": "6" },
      { "type": "button", "name": "Reshuffle Tiles", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Image Factors" },
      { "type": "text", "name": "List of Width Factors", "default": "List of Factors", "pos": "8" },
      { "type": "text", "name": "List of Height Factors", "default": "List of Factors", "pos": "9" },
      { "type": "text", "name": "List of Width and Height Factors", "default": "List of Factors", "pos": "10" },
      { "type": "text", "name": "Stored List of Width(s) Factors", "default": "List of Factors", "pos": "11", "visibility": "0" },
      { "type": "text", "name": "Stored List of Height(s) Factors", "default": "List of Factors", "pos": "12", "visibility": "0" },
      { "type": "text", "name": "Stored List of Width(s) and Height(s) Factors", "default": "List of Factors", "pos": "13", "visibility": "0" },
      { "type": "int", "name": "Stored Number of Width(s) Factors", "default": "1", "min": "1", "max": "16777216", "pos": "14", "visibility": "0" },
      { "type": "int", "name": "Stored Number of Height(s) Factors", "default": "1", "min": "1", "max": "16777216", "pos": "15", "visibility": "0" },
      { "type": "int", "name": "Stored Number of Width(s) and Height(s) Factors", "default": "1", "min": "1", "max": "16777216", "pos": "16", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2023/07/06." }
      ]
    },
    {
      "name": "Attractor", "lang": "en", "command": "fx_rep_trsa", "command_preview": "fx_rep_trsa_preview", "parameters": [
      { "type": "note", "text": "Generates Attractor fractal." },
      { "type": "separator" },
      { "type": "note", "text": "Input" },
      { "type": "choice", "name": "Algorithm", "default": "0", "pos": "1", "choices": { "0": "A", "1": "B", "2": "C", "3": "D", "4": "E", "5": "F", "6": "G" } },
      { "type": "float", "name": "Density", "default": "7", "min": ".5", "max": "50", "pos": "2" },
      { "type": "float", "name": "Scale", "default": "1", "min": ".1", "max": "3", "pos": "3" },
      { "type": "note", "text": "Parameters" },
      { "type": "float", "name": "A", "default": "1", "min": "-1", "max": "1", "pos": "4" },
      { "type": "float", "name": "B", "default": "1", "min": "-1", "max": "1", "pos": "5" },
      { "type": "float", "name": "C", "default": "1", "min": "-1", "max": "1", "pos": "6" },
      { "type": "float", "name": "D", "default": "1", "min": "-1", "max": "1", "pos": "7" },
      { "type": "float", "name": "E", "default": "1", "min": "-1", "max": "1", "pos": "8" },
      { "type": "float", "name": "F", "default": "1", "min": "-1", "max": "1", "pos": "9" },
      { "type": "float", "name": "G", "default": "1", "min": "-1", "max": "1", "pos": "10" },
      { "type": "float", "name": "H", "default": "1", "min": "-1", "max": "1", "pos": "11" },
      { "type": "float", "name": "I", "default": "1", "min": "-1", "max": "1", "pos": "12" },
      { "type": "button", "name": "Randomize Parameters", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "Output" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "14", "choices": { "0": "A", "1": "A/B", "2": "A/A" } },
      { "type": "float", "name": "Negative Exponential Factor", "default": "1", "min": "1", "max": "10", "pos": "15" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": "1", "max": "10", "pos": "16" },
      { "type": "float", "name": "Quality", "default": "1", "min": "1", "max": "3", "pos": "17" },
      { "type": "separator" },
      { "type": "note", "text": "Preview" },
      { "type": "bool", "name": "Fill Percentage", "default": "0", "pos": "18" },
      { "type": "separator" },
      { "type": "note", "text": "Instruction" },
      { "type": "note", "text": "Attractor are fractals in which values lean toward a location within phase space.\n\n1. <u>Input</u> setting defines the format of attractor fractal as well as its density and scaling.\n\n2.  <u>Parameters</u> are different variables with different numbers assigned. This is used to alter the forms of attractor.\n\n3. <u>Output</u> influence the shading of attractor. A implies that negative exponental factor is applicable while B means that it's not applicable. In case of two letter, the last letter is the alpha channel. The greater the negative exponential factor value is, the more visible the attractor will be.\n\n4. Quality resizes the image and multiply the density by the quality number, then resize the image back to the original size. It is used to reduce noise.\n\n5. Fill Percentage is used as a way to diagnose whether there is a fractal appearing or not. A very low percentage means there is no fractal. Percentage higher than 100% implies some values are out of range in respect to the image boundary." },
      { "type": "separator" },
      { "type": "note", "text": "Info" },
      { "type": "note", "text": "Conversion of a PDN plugin made by TechnoRobbo.\n\nSource Code: <a href=\"https://forums.getpaint.net/topic/28512-trs-strange-attractors-v113-august-8th-2014/\">TR's Strange Attractor Plugin</a>" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2020/3/29." }
      ]
    },
    {
      "name": "Autofill Coloring Book", "lang": "en", "command": "gui_rep_acb", "command_preview": "gui_rep_acb_preview", "parameters": [
      { "type": "note", "text": "This filter is specifically designed to autofill areas with random colors that only appear once.\n\nDon't trust the preview for colors, test the result first!" },
      { "type": "separator" },
      { "type": "int", "name": "Line Threshold", "default": "180", "min": "1", "max": "254", "pos": "1" },
      { "type": "int", "name": "Dilate/Erode", "default": "0", "min": "-3", "max": "3", "pos": "2" },
      { "type": "choice", "name": "Line Mode", "default": "1", "pos": "3", "choices": { "0": "Hard", "1": "Soft" } },
      { "type": "int", "name": "Alpha Threshold", "default": "0", "min": "0", "max": "254", "pos": "4" },
      { "type": "int", "name": "Coloring Seed", "default": "250000", "min": "0", "max": "500000", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "6", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "7", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2019/6/4." }
      ]
    },
    {
      "name": "Axis Streak", "lang": "en", "command": "gui_axis_streak", "command_preview": "gui_axis_streak_preview", "parameters": [
      { "type": "note", "text": "Streaks pixel taking into account of opacity by blending pixels-by-pixels." },
      { "type": "separator" },
      { "type": "choice", "name": "Orientation", "default": "0", "pos": "1", "choices": { "0": "Horizontal", "1": "Vertical" } },
      { "type": "choice", "name": "Direction", "default": "0", "pos": "2", "choices": { "0": "Left", "1": "Right" } },
      { "type": "choice", "name": "Direction", "default": "0", "pos": "3", "choices": { "0": "Up", "1": "Down" } },
      { "type": "float", "name": "Alpha Exponential Factor(%)", "default": "0", "min": "-100", "max": "500", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Preview" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "5", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "6", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2019/12/7." }
      ]
    },
    {
      "name": "Binary Alternating Quaddro Texture [Basic]", "lang": "en", "command": "rep_binary_quaddro_basic_gui", "command_preview": "rep_binary_quaddro_basic_gui_preview", "parameters": [
      { "type": "note", "text": "This filter is a extended version of a filter found in<a href=\"https://forums.getpaint.net/topic/6845-asmageddon-tools-pack-v3/\">Asmageddon Tools Pack v3</a>. Translated to G'MIC using a source code, and then extended. It is a mixture of two texture filters." },
      { "type": "separator" },
      { "type": "note", "text": "Channel Processing" },
      { "type": "choice", "name": "Texture Output", "default": "0", "pos": "1", "choices": { "0": "Grayscale", "1": "Hue", "2": "Degradation Mode" } },
      { "type": "separator" },
      { "type": "note", "text": "Main Texture Processing" },
      { "type": "choice", "name": "Style", "default": "0", "pos": "2", "choices": { "0": "Cracking Alternating Texture", "1": "Alternating Glasses", "2": "Simple" } },
      { "type": "int", "name": "Variable#1", "default": "8", "min": "-512", "max": "512", "pos": "3" },
      { "type": "int", "name": "Variable#2", "default": "8", "min": "-512", "max": "512", "pos": "4" },
      { "type": "int", "name": "Variable#3", "default": "128", "min": "-200", "max": "200", "pos": "5" },
      { "type": "choice", "name": "Operand", "default": "2", "pos": "6", "choices": { "0": "AND", "1": "OR", "2": "XOR" } },
      { "type": "float", "name": "Angle", "default": "0", "min": "-180", "max": "180", "pos": "7" },
      { "type": "bool", "name": "X-Flip", "default": "0", "pos": "8" },
      { "type": "bool", "name": "Y-Flip", "default": "0", "pos": "9" },
      { "type": "int", "name": "Number Modulo", "default": "256", "min": "256", "max": "2048", "pos": "10" },
      { "type": "int", "name": "Internal Normalize", "default": "255", "min": "255", "max": "2048", "pos": "11" },
      { "type": "bool", "name": "Internal Normalization", "default": "1", "pos": "12" },
      { "type": "int", "name": "Number Modulo", "default": "361", "min": "256", "max": "2048", "pos": "13" },
      { "type": "int", "name": "Internal Normalize", "default": "361", "min": "360", "max": "2048", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian Latest update: 2018/12/19." }
      ]
    },
    {
      "name": "Binary Alternating Quaddro Texture [MultiChannel]", "lang": "en", "command": "rep_binary_quaddro_mc_gui", "command_preview": "rep_binary_quaddro_mc_gui_preview", "parameters": [
      { "type": "note", "text": "This filter is a extended version of a filter found in <a href=\"https://forums.getpaint.net/topic/6845-asmageddon-tools-pack-v3/\">Asmageddon Tools Pack v3</a>. Translated to G'MIC using a source code, and then extended. It is a mixture of two texture filters." },
      { "type": "separator" },
      { "type": "note", "text": "Configuration" },
      { "type": "choice", "name": "Color Space", "default": "0", "pos": "1", "choices": { "0": "RGB", "1": "RYB", "2": "CMY", "3": "CMYK", "4": "HSI", "5": "HSV", "6": "HSL", "7": "LAB", "8": "LCH", "9": "YCbCr", "10": "YCbCrGLIC", "11": "YIQ", "12": "YUV", "13": "XYZ" } },
      { "type": "bool", "name": "Contain Alpha?", "default": "0", "pos": "2" },
      { "type": "bool", "name": "8-Bit Mode?", "default": "0", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Channel Order" },
      { "type": "choice", "name": "Channel #1", "default": "0", "pos": "4", "choices": { "0": "0", "1": "1", "2": "2" } },
      { "type": "choice", "name": "Channel #2", "default": "1", "pos": "5", "choices": { "0": "0", "1": "1", "2": "2" } },
      { "type": "choice", "name": "Channel #3", "default": "2", "pos": "6", "choices": { "0": "0", "1": "1", "2": "2" } },
      { "type": "choice", "name": "Channel #1", "default": "0", "pos": "7", "choices": { "0": "0", "1": "1", "2": "2", "3": "3" } },
      { "type": "choice", "name": "Channel #2", "default": "1", "pos": "8", "choices": { "0": "0", "1": "1", "2": "2", "3": "3" } },
      { "type": "choice", "name": "Channel #3", "default": "2", "pos": "9", "choices": { "0": "0", "1": "1", "2": "2", "3": "3" } },
      { "type": "choice", "name": "Channel #4", "default": "3", "pos": "10", "choices": { "0": "0", "1": "1", "2": "2", "3": "3" } },
      { "type": "choice", "name": "Channel #1", "default": "0", "pos": "11", "choices": { "0": "0", "1": "1", "2": "2", "3": "3", "4": "4" } },
      { "type": "choice", "name": "Channel #2", "default": "1", "pos": "12", "choices": { "0": "0", "1": "1", "2": "2", "3": "3", "4": "4" } },
      { "type": "choice", "name": "Channel #3", "default": "2", "pos": "13", "choices": { "0": "0", "1": "1", "2": "2", "3": "3", "4": "4" } },
      { "type": "choice", "name": "Channel #4", "default": "3", "pos": "14", "choices": { "0": "0", "1": "1", "2": "2", "3": "3", "4": "4" } },
      { "type": "choice", "name": "Channel #5", "default": "4", "pos": "15", "choices": { "0": "0", "1": "1", "2": "2", "3": "3", "4": "4" } },
      { "type": "separator" },
      { "type": "note", "text": "Main Texture Processing" },
      { "type": "note", "text": "Channel #1" },
      { "type": "choice", "name": "Style", "default": "0", "pos": "16", "choices": { "0": "Bumping Alternating Texture", "1": "Alternating Glasses", "2": "Simple" } },
      { "type": "int", "name": "Variable#1", "default": "8", "min": "-512", "max": "512", "pos": "17" },
      { "type": "int", "name": "Variable#2", "default": "8", "min": "-512", "max": "512", "pos": "18" },
      { "type": "int", "name": "Variable#3", "default": "128", "min": "-200", "max": "200", "pos": "19" },
      { "type": "choice", "name": "Operand", "default": "2", "pos": "20", "choices": { "0": "AND", "1": "OR", "2": "XOR" } },
      { "type": "float", "name": "Angle", "default": "0", "min": "-180", "max": "180", "pos": "21" },
      { "type": "bool", "name": "X-Flip", "default": "0", "pos": "22" },
      { "type": "bool", "name": "Y-Flip", "default": "0", "pos": "23" },
      { "type": "bool", "name": "Normalize", "default": "1", "pos": "24" },
      { "type": "separator" },
      { "type": "note", "text": "Channel #2" },
      { "type": "choice", "name": "Style", "default": "0", "pos": "25", "choices": { "0": "Bumping Alternating Texture", "1": "Alternating Glasses", "2": "Simple" } },
      { "type": "int", "name": "Variable#1", "default": "8", "min": "-512", "max": "512", "pos": "26" },
      { "type": "int", "name": "Variable#2", "default": "8", "min": "-512", "max": "512", "pos": "27" },
      { "type": "int", "name": "Variable#3", "default": "128", "min": "-200", "max": "200", "pos": "28" },
      { "type": "choice", "name": "Operand", "default": "2", "pos": "29", "choices": { "0": "AND", "1": "OR", "2": "XOR" } },
      { "type": "float", "name": "Angle", "default": "0", "min": "-180", "max": "180", "pos": "30" },
      { "type": "bool", "name": "X-Flip", "default": "0", "pos": "31" },
      { "type": "bool", "name": "Y-Flip", "default": "0", "pos": "32" },
      { "type": "bool", "name": "Normalize", "default": "1", "pos": "33" },
      { "type": "separator" },
      { "type": "note", "text": "Channel #3" },
      { "type": "choice", "name": "Style", "default": "0", "pos": "34", "choices": { "0": "Bumping Alternating Texture", "1": "Alternating Glasses", "2": "Simple" } },
      { "type": "int", "name": "Variable#1", "default": "8", "min": "-512", "max": "512", "pos": "35" },
      { "type": "int", "name": "Variable#2", "default": "8", "min": "-512", "max": "512", "pos": "36" },
      { "type": "int", "name": "Variable#3", "default": "128", "min": "-200", "max": "200", "pos": "37" },
      { "type": "choice", "name": "Operand", "default": "2", "pos": "38", "choices": { "0": "AND", "1": "OR", "2": "XOR" } },
      { "type": "float", "name": "Angle", "default": "0", "min": "-180", "max": "180", "pos": "39" },
      { "type": "bool", "name": "X-Flip", "default": "0", "pos": "40" },
      { "type": "bool", "name": "Y-Flip", "default": "0", "pos": "41" },
      { "type": "bool", "name": "Normalize", "default": "1", "pos": "42" },
      { "type": "separator" },
      { "type": "note", "text": "Channel #4" },
      { "type": "choice", "name": "Style", "default": "0", "pos": "43", "choices": { "0": "Bumping Alternating Texture", "1": "Alternating Glasses", "2": "Simple" } },
      { "type": "int", "name": "Variable#1", "default": "8", "min": "-512", "max": "512", "pos": "44" },
      { "type": "int", "name": "Variable#2", "default": "8", "min": "-512", "max": "512", "pos": "45" },
      { "type": "int", "name": "Variable#3", "default": "128", "min": "-200", "max": "200", "pos": "46" },
      { "type": "choice", "name": "Operand", "default": "2", "pos": "47", "choices": { "0": "AND", "1": "OR", "2": "XOR" } },
      { "type": "float", "name": "Angle", "default": "0", "min": "-180", "max": "180", "pos": "48" },
      { "type": "bool", "name": "X-Flip", "default": "0", "pos": "49" },
      { "type": "bool", "name": "Y-Flip", "default": "0", "pos": "50" },
      { "type": "bool", "name": "Normalize", "default": "1", "pos": "51" },
      { "type": "separator" },
      { "type": "note", "text": "Channel #5" },
      { "type": "choice", "name": "Style", "default": "0", "pos": "52", "choices": { "0": "Bumping Alternating Texture", "1": "Alternating Glasses", "2": "Simple" } },
      { "type": "int", "name": "Variable#1", "default": "8", "min": "-512", "max": "512", "pos": "53" },
      { "type": "int", "name": "Variable#2", "default": "8", "min": "-512", "max": "512", "pos": "54" },
      { "type": "int", "name": "Variable#3", "default": "128", "min": "-200", "max": "200", "pos": "55" },
      { "type": "choice", "name": "Operand", "default": "2", "pos": "56", "choices": { "0": "AND", "1": "OR", "2": "XOR" } },
      { "type": "float", "name": "Angle", "default": "0", "min": "-180", "max": "180", "pos": "57" },
      { "type": "bool", "name": "X-Flip", "default": "0", "pos": "58" },
      { "type": "bool", "name": "Y-Flip", "default": "0", "pos": "59" },
      { "type": "bool", "name": "Normalize", "default": "1", "pos": "60" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian Latest update: 2018/12/19." }
      ]
    },
    {
      "name": "Bit-Plane Shuffler", "lang": "en", "command": "fx_rep_bitplane_shuffle", "command_preview": "fx_rep_bitplane_shuffle_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Main" },
      { "type": "choice", "name": "Direction", "default": "0", "pos": "1", "choices": { "0": "Forward", "1": "Backward" } },
      { "type": "choice", "name": "Depth", "default": "0", "pos": "2", "choices": { "0": "8-Bit", "1": "16-Bit" } },
      { "type": "bool", "name": "Use Alpha?", "default": "0", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "CLI Command" },
      { "type": "text", "name": "CLI version", "default": "Here is where you copy command to command line interface.", "pos": "4" },
      { "type": "text", "name": "CLI version", "default": "This is just a reference text", "pos": "5", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Plane Shuffling" },
      { "type": "int", "name": "Shuffle Index", "default": "0", "min": "0", "max": "40319", "pos": "6" },
      { "type": "int", "name": "Shuffle Index", "default": "0", "min": "0", "max": "40319", "pos": "7", "visibility": "0" },
      { "type": "text", "name": "Shuffle Index", "default": "0", "pos": "8", "visibility": "0" },
      { "type": "choice", "name": "Plane Shift Method", "default": "0", "pos": "9", "choices": { "0": "Move", "1": "Swap" } },
      { "type": "int", "name": "Plane A", "default": "1", "min": "1", "max": "8", "pos": "10" },
      { "type": "int", "name": "Plane B", "default": "2", "min": "1", "max": "8", "pos": "11" },
      { "type": "int", "name": "Plane C", "default": "3", "min": "1", "max": "8", "pos": "12" },
      { "type": "int", "name": "Plane D", "default": "4", "min": "1", "max": "8", "pos": "13" },
      { "type": "int", "name": "Plane E", "default": "5", "min": "1", "max": "8", "pos": "14" },
      { "type": "int", "name": "Plane F", "default": "6", "min": "1", "max": "8", "pos": "15" },
      { "type": "int", "name": "Plane G", "default": "7", "min": "1", "max": "8", "pos": "16" },
      { "type": "int", "name": "Plane H", "default": "8", "min": "1", "max": "8", "pos": "17" },
      { "type": "int", "name": "Plane A", "default": "1", "min": "1", "max": "8", "pos": "18", "visibility": "0" },
      { "type": "int", "name": "Plane B", "default": "2", "min": "1", "max": "8", "pos": "19", "visibility": "0" },
      { "type": "int", "name": "Plane C", "default": "3", "min": "1", "max": "8", "pos": "20", "visibility": "0" },
      { "type": "int", "name": "Plane D", "default": "4", "min": "1", "max": "8", "pos": "21", "visibility": "0" },
      { "type": "int", "name": "Plane E", "default": "5", "min": "1", "max": "8", "pos": "22", "visibility": "0" },
      { "type": "int", "name": "Plane F", "default": "6", "min": "1", "max": "8", "pos": "23", "visibility": "0" },
      { "type": "int", "name": "Plane G", "default": "7", "min": "1", "max": "8", "pos": "24", "visibility": "0" },
      { "type": "int", "name": "Plane H", "default": "8", "min": "1", "max": "8", "pos": "25", "visibility": "0" },
      { "type": "int", "name": "Plane A", "default": "8", "min": "1", "max": "16", "pos": "26" },
      { "type": "int", "name": "Plane B", "default": "10", "min": "1", "max": "16", "pos": "27" },
      { "type": "int", "name": "Plane C", "default": "9", "min": "1", "max": "16", "pos": "28" },
      { "type": "int", "name": "Plane D", "default": "4", "min": "1", "max": "16", "pos": "29" },
      { "type": "int", "name": "Plane E", "default": "7", "min": "1", "max": "16", "pos": "30" },
      { "type": "int", "name": "Plane F", "default": "13", "min": "1", "max": "16", "pos": "31" },
      { "type": "int", "name": "Plane G", "default": "1", "min": "1", "max": "16", "pos": "32" },
      { "type": "int", "name": "Plane H", "default": "3", "min": "1", "max": "16", "pos": "33" },
      { "type": "int", "name": "Plane I", "default": "11", "min": "1", "max": "16", "pos": "34" },
      { "type": "int", "name": "Plane J", "default": "14", "min": "1", "max": "16", "pos": "35" },
      { "type": "int", "name": "Plane K", "default": "6", "min": "1", "max": "16", "pos": "36" },
      { "type": "int", "name": "Plane L", "default": "2", "min": "1", "max": "16", "pos": "37" },
      { "type": "int", "name": "Plane M", "default": "12", "min": "1", "max": "16", "pos": "38" },
      { "type": "int", "name": "Plane N", "default": "5", "min": "1", "max": "16", "pos": "39" },
      { "type": "int", "name": "Plane O", "default": "15", "min": "1", "max": "16", "pos": "40" },
      { "type": "int", "name": "Plane P", "default": "16", "min": "1", "max": "16", "pos": "41" },
      { "type": "int", "name": "Plane A", "default": "8", "min": "1", "max": "16", "pos": "42", "visibility": "0" },
      { "type": "int", "name": "Plane B", "default": "10", "min": "1", "max": "16", "pos": "43", "visibility": "0" },
      { "type": "int", "name": "Plane C", "default": "9", "min": "1", "max": "16", "pos": "44", "visibility": "0" },
      { "type": "int", "name": "Plane D", "default": "4", "min": "1", "max": "16", "pos": "45", "visibility": "0" },
      { "type": "int", "name": "Plane E", "default": "7", "min": "1", "max": "16", "pos": "46", "visibility": "0" },
      { "type": "int", "name": "Plane F", "default": "13", "min": "1", "max": "16", "pos": "47", "visibility": "0" },
      { "type": "int", "name": "Plane G", "default": "1", "min": "1", "max": "16", "pos": "48", "visibility": "0" },
      { "type": "int", "name": "Plane H", "default": "3", "min": "1", "max": "16", "pos": "49", "visibility": "0" },
      { "type": "int", "name": "Plane I", "default": "11", "min": "1", "max": "16", "pos": "50", "visibility": "0" },
      { "type": "int", "name": "Plane J", "default": "14", "min": "1", "max": "16", "pos": "51", "visibility": "0" },
      { "type": "int", "name": "Plane K", "default": "6", "min": "1", "max": "16", "pos": "52", "visibility": "0" },
      { "type": "int", "name": "Plane L", "default": "2", "min": "1", "max": "16", "pos": "53", "visibility": "0" },
      { "type": "int", "name": "Plane M", "default": "12", "min": "1", "max": "16", "pos": "54", "visibility": "0" },
      { "type": "int", "name": "Plane N", "default": "5", "min": "1", "max": "16", "pos": "55", "visibility": "0" },
      { "type": "int", "name": "Plane O", "default": "15", "min": "1", "max": "16", "pos": "56", "visibility": "0" },
      { "type": "int", "name": "Plane P", "default": "16", "min": "1", "max": "16", "pos": "57", "visibility": "0" },
      { "type": "button", "name": "Randomize", "pos": "58" },
      { "type": "choice", "name": "Depth", "default": "0", "pos": "59", "choices": { "0": "8-Bit", "1": "16-Bit" }, "visibility": "0" },
      { "type": "bool", "name": "Visited 8-Bit", "default": "0", "pos": "60", "visibility": "0" },
      { "type": "bool", "name": "Visited 16-Bit", "default": "0", "pos": "61", "visibility": "0" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "62", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "63", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian Latest update: 2023/11/27." }
      ]
    },
    {
      "name": "Blur [Splinter]", "lang": "en", "command": "fx_rep_blur_splinter", "command_preview": "fx_rep_blur_splinter_preview", "parameters": [
      { "type": "note", "text": " Apply Splinter Blur.\n\nBased off observation from using Splinter Blur plugin within Paint.NET made by Ed Harvey, and it is inspired by this filter.\n\nComputationally intensive!" },
      { "type": "separator" },
      { "type": "float", "name": "Half Image-Diagonal(%)", "default": "20", "min": "0.1", "max": "100", "pos": "1" },
      { "type": "int", "name": "Duplicates", "default": "3", "min": "3", "max": "100", "pos": "2" },
      { "type": "float", "name": "Angle", "default": "0", "min": "-180", "max": "180", "pos": "3" },
      { "type": "float", "name": "Thickness(%)", "default": "0", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Contrast(%)", "default": "0", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "Balance(%)", "default": "0", "min": "-100", "max": "100", "pos": "6" },
      { "type": "choice", "name": "Boundary", "default": "3", "pos": "7", "choices": { "0": "None", "1": "Neumann", "2": "Periodic", "3": "Mirror" } },
      { "type": "bool", "name": "Use Bi-sided Convolution?", "default": "0", "pos": "8" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "9", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "10", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2020/9/10." }
      ]
    },
    {
      "name": "Bricks", "lang": "en", "command": "gui_rep_shape_brick", "command_preview": "", "parameters": [
      { "type": "note", "text": "This filter on the <a href=\"https://forums.getpaint.net/topic/8251-bricks-updated-with-examples/\">Bricks plugin for Paint.NET</a> made by <a href=\"https://forums.getpaint.net/profile/49909-jchunn/\">Jesse Chunn</a> as part of his <a href=\"https://forums.getpaint.net/index.php?/topic/8408-jesse-chunn-plugin-pack-march-8-2008/\">plugin pack</a>.\n\n This is a extended version of the bricks filter with bevel options, and blending mode option." },
      { "type": "separator" },
      { "type": "note", "text": "Brick Main Setting" },
      { "type": "int", "name": "Brick Width (px)", "default": "150", "min": "4", "max": "2048", "pos": "1" },
      { "type": "int", "name": "Brick Height (px)", "default": "150", "min": "4", "max": "2048", "pos": "2" },
      { "type": "int", "name": "Mortar Width (px)", "default": "5", "min": "0", "max": "512", "pos": "3" },
      { "type": "int", "name": "Mortar Height (px)", "default": "5", "min": "0", "max": "512", "pos": "4" },
      { "type": "int", "name": "Outline (px)", "default": "0", "min": "0", "max": "50", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Offset Setting" },
      { "type": "float", "name": "Brick Offset (%)", "default": "0", "min": "-100", "max": "100", "pos": "6" },
      { "type": "choice", "name": "Offset Direction", "default": "0", "pos": "7", "choices": { "0": "Horizontal", "1": "Vertical" } },
      { "type": "bool", "name": "Reverse Offset", "default": "0", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Bevel Setting" },
      { "type": "int", "name": "Bevel Radius (px)", "default": "0", "min": "0", "max": "50", "pos": "9" },
      { "type": "choice", "name": "Bevel Style", "default": "0", "pos": "10", "choices": { "0": "Round", "1": "Inverse Round", "2": "Chamfer" } },
      { "type": "separator" },
      { "type": "note", "text": "Colouring and Blending Options" },
      { "type": "color", "name": "Brick Colour", "default": "170,0,0,255", "pos": "11" },
      { "type": "color", "name": "Brick Outline", "default": "85,0,0,255", "pos": "15" },
      { "type": "color", "name": "Mortar Colour", "default": "121,77,2,255", "pos": "19" },
      { "type": "bool", "name": "Use Blending Mode?", "default": "0", "pos": "23" },
      { "type": "choice", "name": "Blending Mode", "default": "41", "pos": "24", "choices": { "0": "add", "1": "alpha", "2": "and", "3": "average", "4": "blue", "5": "burn", "6": "darken", "7": "difference", "8": "divide", "9": "dodge", "10": "exclusion", "11": "freeze", "12": "grainextract", "13": "grainmerge", "14": "green", "15": "hardlight", "16": "hardmix", "17": "hue", "18": "interpolation", "19": "lighten", "20": "lightness", "21": "linearburn", "22": "linearlight", "23": "luminance", "24": "multiply", "25": "negation", "26": "or", "27": "overlay", "28": "pinlight", "29": "red", "30": "reflect", "31": "saturation", "32": "screen", "33": "shapeaverage", "34": "softburn", "35": "softdodge", "36": "softlight", "37": "stamp", "38": "subtract", "39": "value", "40": "vividlight", "41": "xor" } },
      { "type": "float", "name": "Opacity (%)", "default": "100", "min": "0", "max": "100", "pos": "25" },
      { "type": "separator" },
      { "type": "note", "text": "Antialias" },
      { "type": "float", "name": "Antialias Level", "default": "0", "min": "0", "max": "3", "pos": "26" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2019/10/15." }
      ]
    },
    {
      "name": "Channel Blur-Sharpen-Overblur-Overline", "lang": "en", "command": "fx_rep_cbsoo", "command_preview": "fx_rep_cbsoo_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Color Space Mode" },
      { "type": "choice", "name": "8-Bit Color Space", "default": "0", "pos": "1", "choices": { "0": "RGB", "1": "RYB", "2": "CMY/K", "3": "HSI", "4": "HSL", "5": "HSV", "6": "LAB", "7": "LCH", "8": "YCbCr-GLIC", "9": "YIQ", "10": "YUV", "11": "YES", "12": "Ohta", "13": "Kodak-1" } },
      { "type": "bool", "name": "Include K Channel", "default": "1", "pos": "2" },
      { "type": "bool", "name": "Contain Gray", "default": "0", "pos": "3", "visibility": "0" },
      { "type": "bool", "name": "Contain Color", "default": "0", "pos": "4", "visibility": "0" },
      { "type": "bool", "name": "Contain Alpha", "default": "0", "pos": "5", "visibility": "0" },
      { "type": "text", "name": "List of Images with 3 or 4 channels", "default": "temp_text", "pos": "6", "visibility": "0" },
      { "type": "int", "name": "Gray Image To Display", "default": "-1", "min": "-1", "max": "999999", "pos": "7", "visibility": "0" },
      { "type": "int", "name": "Gray-Alpha Image To Display", "default": "-1", "min": "-1", "max": "999999", "pos": "8", "visibility": "0" },
      { "type": "int", "name": "Color Image To Display", "default": "-1", "min": "-1", "max": "999999", "pos": "9", "visibility": "0" },
      { "type": "int", "name": "Color-Alpha Image To Display", "default": "-1", "min": "-1", "max": "999999", "pos": "10", "visibility": "0" },
      { "type": "int", "name": "Only Alpha To Display", "default": "-1", "min": "-1", "max": "999999", "pos": "11", "visibility": "0" },
      { "type": "bool", "name": "Use Only Alpha To Display", "default": "0", "pos": "12", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Channel Processing" },
      { "type": "choice", "name": "Section", "default": "1", "pos": "13", "choices": { "0": "Gray", "1": "Color" } },
      { "type": "choice", "name": "Section", "default": "0", "pos": "14", "choices": { "0": "Gray", "1": "Alpha" } },
      { "type": "choice", "name": "Section", "default": "0", "pos": "15", "choices": { "0": "Color", "1": "Alpha" } },
      { "type": "choice", "name": "Section", "default": "0", "pos": "16", "choices": { "0": "Gray", "1": "Color", "2": "Alpha" } },
      { "type": "choice", "name": "Section", "default": "1", "pos": "17", "choices": { "0": "Gray", "1": "CMY" } },
      { "type": "choice", "name": "Section", "default": "1", "pos": "18", "choices": { "0": "Gray", "1": "CMYK" } },
      { "type": "choice", "name": "Section", "default": "0", "pos": "19", "choices": { "0": "CMY", "1": "Alpha" } },
      { "type": "choice", "name": "Section", "default": "0", "pos": "20", "choices": { "0": "CMYK", "1": "Alpha" } },
      { "type": "choice", "name": "Section", "default": "1", "pos": "21", "choices": { "0": "Gray", "1": "CMY", "2": "Alpha" } },
      { "type": "choice", "name": "Section", "default": "1", "pos": "22", "choices": { "0": "Gray", "1": "CMYK", "2": "Alpha" } },
      { "type": "bool", "name": "Use Section", "default": "0", "pos": "23", "visibility": "0" },
      { "type": "int", "name": "Section to Use", "default": "0", "min": "0", "max": "3", "pos": "24", "visibility": "0" },
      { "type": "choice", "name": "Color Channel", "default": "0", "pos": "25", "choices": { "0": "Channel 0", "1": "Channel 1", "2": "Channel 2" } },
      { "type": "choice", "name": "Color Channel", "default": "0", "pos": "26", "choices": { "0": "Channel 0", "1": "Channel 1", "2": "Channel 2", "3": "Channel 3" } },
      { "type": "choice", "name": "Method (Linked)", "default": "3", "pos": "27", "choices": { "0": "Blur", "1": "Sharpen", "2": "Overblur", "3": "Overline" } },
      { "type": "float", "name": "Effect Factor (Linked)", "default": "100", "min": "0", "max": "1000", "pos": "28" },
      { "type": "float", "name": "Multiplication (Linked)", "default": "1", "min": ".1", "max": "10", "pos": "29" },
      { "type": "choice", "name": "Blend Operation (Linked)", "default": "21", "pos": "30", "choices": { "0": "Add", "1": "Alpha", "2": "AND", "3": "Average", "4": "Burn", "5": "Darken", "6": "Difference", "7": "Divide", "8": "Dodge", "9": "Exclusion", "10": "Freeze", "11": "Grain Extract", "12": "Grain Merge", "13": "Hardlight", "14": "Hard Mix", "15": "Interpolation", "16": "Lighten", "17": "Linear Burn", "18": "Linear Light", "19": "Multiply", "20": "Normal", "21": "Negation", "22": "OR", "23": "Overlay", "24": "Pin Light", "25": "Reflect", "26": "Screen", "27": "Shape Average", "28": "Soft Burn", "29": "Soft Dodge", "30": "Soft Light", "31": "Stamp", "32": "Subtract", "33": "Vivid Light", "34": "XOR" } },
      { "type": "float", "name": "Blend Opacity(%) (Linked)", "default": "100", "min": ".1", "max": "100", "pos": "31" },
      { "type": "choice", "name": "Method", "default": "3", "pos": "32", "choices": { "0": "Blur", "1": "Sharpen", "2": "Overblur", "3": "Overline" } },
      { "type": "float", "name": "Effect Factor", "default": "100", "min": "0", "max": "1000", "pos": "33" },
      { "type": "float", "name": "Multiplication", "default": "1", "min": ".1", "max": "10", "pos": "34" },
      { "type": "choice", "name": "Blend Operation", "default": "21", "pos": "35", "choices": { "0": "Add", "1": "Alpha", "2": "AND", "3": "Average", "4": "Burn", "5": "Darken", "6": "Difference", "7": "Divide", "8": "Dodge", "9": "Exclusion", "10": "Freeze", "11": "Grain Extract", "12": "Grain Merge", "13": "Hardlight", "14": "Hard Mix", "15": "Interpolation", "16": "Lighten", "17": "Linear Burn", "18": "Linear Light", "19": "Multiply", "20": "Normal", "21": "Negation", "22": "OR", "23": "Overlay", "24": "Pin Light", "25": "Reflect", "26": "Screen", "27": "Shape Average", "28": "Soft Burn", "29": "Soft Dodge", "30": "Soft Light", "31": "Stamp", "32": "Subtract", "33": "Vivid Light", "34": "XOR" } },
      { "type": "float", "name": "Blend Opacity(%)", "default": "100", "min": ".1", "max": "100", "pos": "36" },
      { "type": "bool", "name": "Enable Gray Channel", "default": "1", "pos": "37" },
      { "type": "choice", "name": "Method", "default": "3", "pos": "38", "choices": { "0": "Blur", "1": "Sharpen", "2": "Overblur", "3": "Overline" } },
      { "type": "float", "name": "Effect Factor", "default": "100", "min": "0", "max": "1000", "pos": "39" },
      { "type": "float", "name": "Multiplication", "default": "1", "min": ".1", "max": "10", "pos": "40" },
      { "type": "choice", "name": "Blend Operation", "default": "21", "pos": "41", "choices": { "0": "Add", "1": "Alpha", "2": "AND", "3": "Average", "4": "Burn", "5": "Darken", "6": "Difference", "7": "Divide", "8": "Dodge", "9": "Exclusion", "10": "Freeze", "11": "Grain Extract", "12": "Grain Merge", "13": "Hardlight", "14": "Hard Mix", "15": "Interpolation", "16": "Lighten", "17": "Linear Burn", "18": "Linear Light", "19": "Multiply", "20": "Normal", "21": "Negation", "22": "OR", "23": "Overlay", "24": "Pin Light", "25": "Reflect", "26": "Screen", "27": "Shape Average", "28": "Soft Burn", "29": "Soft Dodge", "30": "Soft Light", "31": "Stamp", "32": "Subtract", "33": "Vivid Light", "34": "XOR" } },
      { "type": "float", "name": "Blend Opacity(%)", "default": "100", "min": ".1", "max": "100", "pos": "42" },
      { "type": "bool", "name": "Enable Channel 0", "default": "1", "pos": "43" },
      { "type": "bool", "name": "Enable Channel Cyan", "default": "1", "pos": "44" },
      { "type": "choice", "name": "Method", "default": "3", "pos": "45", "choices": { "0": "Blur", "1": "Sharpen", "2": "Overblur", "3": "Overline" } },
      { "type": "float", "name": "Effect Factor", "default": "100", "min": "0", "max": "1000", "pos": "46" },
      { "type": "float", "name": "Multiplication", "default": "1", "min": ".1", "max": "10", "pos": "47" },
      { "type": "choice", "name": "Blend Operation", "default": "21", "pos": "48", "choices": { "0": "Add", "1": "Alpha", "2": "AND", "3": "Average", "4": "Burn", "5": "Darken", "6": "Difference", "7": "Divide", "8": "Dodge", "9": "Exclusion", "10": "Freeze", "11": "Grain Extract", "12": "Grain Merge", "13": "Hardlight", "14": "Hard Mix", "15": "Interpolation", "16": "Lighten", "17": "Linear Burn", "18": "Linear Light", "19": "Multiply", "20": "Normal", "21": "Negation", "22": "OR", "23": "Overlay", "24": "Pin Light", "25": "Reflect", "26": "Screen", "27": "Shape Average", "28": "Soft Burn", "29": "Soft Dodge", "30": "Soft Light", "31": "Stamp", "32": "Subtract", "33": "Vivid Light", "34": "XOR" } },
      { "type": "float", "name": "Blend Opacity(%)", "default": "100", "min": ".1", "max": "100", "pos": "49" },
      { "type": "bool", "name": "Enable Channel 1", "default": "1", "pos": "50" },
      { "type": "bool", "name": "Enable Channel Magenta", "default": "1", "pos": "51" },
      { "type": "choice", "name": "Method", "default": "3", "pos": "52", "choices": { "0": "Blur", "1": "Sharpen", "2": "Overblur", "3": "Overline" } },
      { "type": "float", "name": "Effect Factor", "default": "100", "min": "0", "max": "1000", "pos": "53" },
      { "type": "float", "name": "Multiplication", "default": "1", "min": ".1", "max": "10", "pos": "54" },
      { "type": "choice", "name": "Blend Operation", "default": "21", "pos": "55", "choices": { "0": "Add", "1": "Alpha", "2": "AND", "3": "Average", "4": "Burn", "5": "Darken", "6": "Difference", "7": "Divide", "8": "Dodge", "9": "Exclusion", "10": "Freeze", "11": "Grain Extract", "12": "Grain Merge", "13": "Hardlight", "14": "Hard Mix", "15": "Interpolation", "16": "Lighten", "17": "Linear Burn", "18": "Linear Light", "19": "Multiply", "20": "Normal", "21": "Negation", "22": "OR", "23": "Overlay", "24": "Pin Light", "25": "Reflect", "26": "Screen", "27": "Shape Average", "28": "Soft Burn", "29": "Soft Dodge", "30": "Soft Light", "31": "Stamp", "32": "Subtract", "33": "Vivid Light", "34": "XOR" } },
      { "type": "float", "name": "Blend Opacity(%)", "default": "100", "min": ".1", "max": "100", "pos": "56" },
      { "type": "bool", "name": "Enable Channel 2", "default": "1", "pos": "57" },
      { "type": "bool", "name": "Enable Channel Yellow", "default": "1", "pos": "58" },
      { "type": "choice", "name": "Method", "default": "3", "pos": "59", "choices": { "0": "Blur", "1": "Sharpen", "2": "Overblur", "3": "Overline" } },
      { "type": "float", "name": "Effect Factor", "default": "100", "min": "0", "max": "1000", "pos": "60" },
      { "type": "float", "name": "Multiplication", "default": "1", "min": ".1", "max": "10", "pos": "61" },
      { "type": "choice", "name": "Blend Operation", "default": "21", "pos": "62", "choices": { "0": "Add", "1": "Alpha", "2": "AND", "3": "Average", "4": "Burn", "5": "Darken", "6": "Difference", "7": "Divide", "8": "Dodge", "9": "Exclusion", "10": "Freeze", "11": "Grain Extract", "12": "Grain Merge", "13": "Hardlight", "14": "Hard Mix", "15": "Interpolation", "16": "Lighten", "17": "Linear Burn", "18": "Linear Light", "19": "Multiply", "20": "Normal", "21": "Negation", "22": "OR", "23": "Overlay", "24": "Pin Light", "25": "Reflect", "26": "Screen", "27": "Shape Average", "28": "Soft Burn", "29": "Soft Dodge", "30": "Soft Light", "31": "Stamp", "32": "Subtract", "33": "Vivid Light", "34": "XOR" } },
      { "type": "float", "name": "Blend Opacity(%)", "default": "100", "min": ".1", "max": "100", "pos": "63" },
      { "type": "bool", "name": "Enable Channel K", "default": "1", "pos": "64" },
      { "type": "choice", "name": "Method", "default": "3", "pos": "65", "choices": { "0": "Blur", "1": "Sharpen", "2": "Overblur", "3": "Overline" } },
      { "type": "float", "name": "Effect Factor", "default": "100", "min": "0", "max": "1000", "pos": "66" },
      { "type": "float", "name": "Multiplication", "default": "1", "min": ".1", "max": "10", "pos": "67" },
      { "type": "choice", "name": "Blend Operation", "default": "21", "pos": "68", "choices": { "0": "Add", "1": "Alpha", "2": "AND", "3": "Average", "4": "Burn", "5": "Darken", "6": "Difference", "7": "Divide", "8": "Dodge", "9": "Exclusion", "10": "Freeze", "11": "Grain Extract", "12": "Grain Merge", "13": "Hardlight", "14": "Hard Mix", "15": "Interpolation", "16": "Lighten", "17": "Linear Burn", "18": "Linear Light", "19": "Multiply", "20": "Normal", "21": "Negation", "22": "OR", "23": "Overlay", "24": "Pin Light", "25": "Reflect", "26": "Screen", "27": "Shape Average", "28": "Soft Burn", "29": "Soft Dodge", "30": "Soft Light", "31": "Stamp", "32": "Subtract", "33": "Vivid Light", "34": "XOR" } },
      { "type": "float", "name": "Blend Opacity(%)", "default": "100", "min": ".1", "max": "100", "pos": "69" },
      { "type": "bool", "name": "Enable Channel Alpha", "default": "1", "pos": "70" },
      { "type": "button", "name": "Randomize Inputs", "alignment": "0", "pos": "71" },
      { "type": "button", "name": "Randomize Inputs (Global)", "alignment": "0", "pos": "72" },
      { "type": "button", "name": "Make All Channels with same inputs", "alignment": "0", "pos": "73" },
      { "type": "bool", "name": "Link Channels", "default": "0", "pos": "74" },
      { "type": "int", "name": "Link Checkbox Visibility", "default": "2", "min": "0", "max": "2", "pos": "75", "visibility": "0" },
      { "type": "choice", "name": "Old Color Space", "default": "0", "pos": "76", "choices": { "0": "RGB", "1": "RYB", "2": "CMY/K", "3": "HSI", "4": "HSL", "5": "HSV", "6": "LAB", "7": "LCH", "8": "YCbCr-GLIC", "9": "YIQ", "10": "YUV", "11": "YES", "12": "Ohta", "13": "Kodak-1" }, "visibility": "0" },
      { "type": "bool", "name": "Old Include K?", "default": "1", "pos": "77", "visibility": "0" },
      { "type": "bool", "name": "Old Link", "default": "0", "pos": "78", "visibility": "0" },
      { "type": "int", "name": "Color Space Options", "default": "2", "min": "0", "max": "2", "pos": "79", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Preview Setting" },
      { "type": "point", "name": "Cropped Viewport Point", "position": "50,50", "pos": "80" },
      { "type": "int", "name": "Total Bools Available", "default": "1", "min": "1", "max": "5", "pos": "82", "visibility": "0" },
      { "type": "int", "name": "Last Visible Option", "default": "1", "min": "-1", "max": "6", "pos": "83", "visibility": "0" },
      { "type": "bool", "name": "Filter Parameter Changed", "default": "0", "pos": "84", "visibility": "0" },
      { "type": "text", "name": "Stored Variables", "default": "-1", "pos": "85", "visibility": "0" },
      { "type": "int", "name": "Previous Image Display", "default": "0", "min": "0", "max": "3", "pos": "86", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian Latest update: 2024/03/27." }
      ]
    },
    {
      "name": "Chirikov-Taylor", "lang": "en", "command": "fx_rep_cstdmap", "command_preview": "fx_rep_cstdmap_preview", "parameters": [
      { "type": "note", "text": "Creates Chirikov-Taylor discrete map." },
      { "type": "separator" },
      { "type": "note", "text": "Main" },
      { "type": "int", "name": "Lines", "default": "500", "min": "1", "max": "10000", "pos": "1" },
      { "type": "int", "name": "Points per line", "default": "5000", "min": "1", "max": "100000", "pos": "2" },
      { "type": "float", "name": "K", "default": "1", "min": "-5", "max": "5", "pos": "3" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "4", "choices": { "0": "Regular", "1": "Symmetric Modified" } },
      { "type": "bool", "name": "Center Main Rotor", "default": "0", "pos": "5" },
      { "type": "choice", "name": "Orientation", "default": "0", "pos": "6", "choices": { "0": "XY", "1": "YX" } },
      { "type": "bool", "name": "Multithreaded Processing", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Scaling" },
      { "type": "float", "name": "Factor", "default": "1", "min": ".1", "max": "10", "pos": "8" },
      { "type": "bool", "name": "Use Image Ratio?", "default": "0", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Coloring" },
      { "type": "note", "text": "<u>Preliminary</u>" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "10", "choices": { "0": "Grayscale", "1": "HSX", "2": "Palette", "3": "Random", "4": "From Image" } },
      { "type": "bool", "name": "Use Alpha?", "default": "0", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "<u>Additional</u>" },
      { "type": "choice", "name": "HSX Mode", "default": "2", "pos": "12", "choices": { "0": "HCY", "1": "HSI", "2": "HSL/HSV" } },
      { "type": "choice", "name": "Palette", "default": "0", "pos": "13", "choices": { "0": "Red-Green-Blue-3", "1": "Black with Red-Green-Blue-4", "2": "Black & White with Red-Green-Blue-5", "3": "Cyan-Magenta-Yellow-3", "4": "Cyan-Magenta-Yellow-Black-4", "5": "White-Cyan-Magenta-Yellow-Black-5", "6": "Red-Green-Blue with Cyan-Magenta-Yellow-6", "7": "1-Bit RGB-8", "8": "Aurora-256", "9": "Zenit-241", "10": "Game Builder Garage: Texture-Sprite Editor Palette-117", "11": "Duel-256", "12": "Hocus Pocus Palette-256", "13": "PLAYPAL-249", "14": "Sonic Robo Blast 2-256", "15": "Uzebox-256", "16": "Andrew Kensler - 16", "17": "Andrew Kensler - 32", "18": "Andrew Kensler - 54", "19": "AAP-Micro 12", "20": "AAP-16", "21": "AAP-64", "22": "AAP-RadiantPLUS-96", "23": "AAP-SPLENDOR128", "24": "AAP-DGA16", "25": "Cheerful-32", "26": "DB8", "27": "DB16", "28": "DB32", "29": "DB-ISO22", "30": "DimWiddy 17", "31": "DimWiddy 23", "32": "Endesga-4", "33": "Endesga-8", "34": "Endesga-16", "35": "Endesga-32", "36": "Endesga-36", "37": "Endesga-64", "38": "Famicube-64", "39": "Juicy-32", "40": "Juicy-56", "41": "XAIUE-22", "42": "15P-DX", "43": "20P-DX", "44": "24P-DX", "45": "Cabana-64", "46": "Fantasy 16", "47": "Fantasy 24", "48": "Tranquil Fantasy 23", "49": "Tranquility Plus 39", "50": "Faraway 48", "51": "Fleja Master Palette-33", "52": "Koni32", "53": "Linear Color Palette Basic-31", "54": "LEGO colors-43", "55": "Lego Colours 2021-40", "56": "Vines Flexible Linear Ramps-38", "57": "Arcade Standard 29", "58": "ARQ16", "59": "Atom-8", "60": "BLK 36", "61": "BLK-NEO-46", "62": "Broken Facility-40", "63": "Bubblegum-16", "64": "CPC BOY-32", "65": "Cade 15", "66": "Calder 8-11", "67": "CD-BAC-16", "68": "CG Arne-16", "69": "DinoKnight 16", "70": "||||-22", "71": "FZT Ethereal 16", "72": "Indecision-17", "73": "Island Joy 16", "74": "Journey-64", "75": "Shallowmarsh26", "76": "Lago Nenufar (Lake Water Lily)-19", "77": "Juicy 17", "78": "ChocolateGanache-96", "79": "Bright Winter 1-74", "80": "Bright Winter 2-83", "81": "Kawaii16", "82": "0xdb-01-17", "83": "GZXP-11", "84": "Chromatic16", "85": "Piet Coding Language-20", "86": "Matrix-96", "87": "Material Design-96", "88": "Rainbow-88", "89": "Rainbow-96", "90": "SCRJ-XXXVI-36", "91": "Pxls Default-32", "92": "Lospec500-42", "93": "Moderna-24", "94": "Oak21", "95": "Nature's Embrace 55", "96": "RBYPGO-94", "97": "New Worlds 46", "98": "Nauris-16", "99": "Dynamite-40", "100": "Interstate 28", "101": "Downgraded 32", "102": "Pear 36", "103": "Pineapple 32", "104": "Peachy Pop 16", "105": "Resurrect 32", "106": "Rosy 42", "107": "SLSO-CLR17", "108": "Softy 15", "109": "SPEC12", "110": "The Roarin 80's", "111": "Starmancer-52", "112": "SuperFuture25", "113": "SUNSHINE 35", "114": "Sweetie 16", "115": "Calm 48", "116": "Optimism-32", "117": "Taffy 16", "118": "Todayland Palette V2-25", "119": "TriRampo-12", "120": "r|place 2022-32", "121": "Tropical Cone 24", "122": "Vivid-17", "123": "SHIDO50+-72", "124": "Intacto14", "125": "Itatsi-23", "126": "ENOS16", "127": "Grixel Grotto-16", "128": "Superb 8", "129": "Undertones-17", "130": "Tango-28", "131": "Cheese Palette-28", "132": "Equpix 15", "133": "Zughy 32", "134": "Voodo34", "135": "Franzston 30", "136": "Night 16", "137": "Star 29", "138": "Star 34", "139": "Still-Life-14", "140": "SimpleJPC-16", "141": "Acid 15", "142": "Battery 24", "143": "Clumpy 18", "144": "Cthulhu-16", "145": "Crimso 11-16", "146": "Copper-Tech-16", "147": "DRZ15A", "148": "Eggy 15", "149": "Europa 16", "150": "GreyT-bit-8", "151": "Jewel-15", "152": "Polar 11", "153": "Sheltzy 32", "154": "Wyrm 24", "155": "Yume Nikki-24", "156": "Rube-Goldberg-9", "157": "BoomBoom-7", "158": "Generic-8", "159": "Crayola Blind-9", "160": "FunkyFuture8", "161": "The Golden Wall Palette-7", "162": "Matriax8c", "163": "NT1H-26", "164": "JerryPie 22", "165": "Nineties Nine-9", "166": "On70-35", "167": "ANB16", "168": "Retrocal-8", "169": "Punolit-21", "170": "Luap 40", "171": "Autum Villan 6", "172": "Autum 15", "173": "Autum 15 [Yellow]", "174": "Galaxy Flame-16", "175": "Cretaceous-16", "176": "Antiquity16", "177": "Mushroom-14", "178": "Aerugo-32", "179": "Hotel Paintings 6", "180": "Nopal-12", "181": "Brightness GPY-3", "182": "Blessing-5", "183": "Fairydust 8", "184": "Vanilla MilkShake-16", "185": "Fuzzy Four-4", "186": "Fairy Tales-8", "187": "Naji 16", "188": "Easter Island-16", "189": "Pastel and Darks 58 Palette", "190": "17 Pastels", "191": "NOSTALGIA15", "192": "Ocaso-17", "193": "Oh Hell, Pastel-15", "194": "Pollen-8", "195": "KULE-16", "196": "Hydrangea 11", "197": "Fluffy8", "198": "ST 8 R&B Remake", "199": "Neon Space-10", "200": "Cyclope6", "201": "Sy17", "202": "Syz15", "203": "TUI-15", "204": "Cave-8", "205": "Psygnosia-16", "206": "MarshMellow32", "207": "Lost Century 24", "208": "Finlal 11", "209": "Industrial Factory 16", "210": "Murder Mystery 16", "211": "Fate & Destiny 12", "212": "Vinik 24", "213": "YKB-22", "214": "Halloween-7", "215": "Graveyard-21", "216": "Steam Lords-16", "217": "Frostical-18", "218": "DeuteroSpill-9", "219": "Cool Bone 7", "220": "Muted Ally 6", "221": "EPHEMERA-12", "222": "Ink-5", "223": "Violet Dreams-8", "224": "Tinyfolks-5", "225": "Old Gold 7", "226": "Rosemoss-8", "227": "AAP-RadiantXV-15", "228": "AAP-Majesty XVII-17", "229": "Dead Weight-8", "230": "Mojave20", "231": "Petite-8", "232": "Petite-8 Afterdark", "233": "XAIUE-Radiant-22", "234": "Daruda 22", "235": "Firestorm-9", "236": "Borkfest-8", "237": "Spicy 07", "238": "Rust-6", "239": "Apricot-6", "240": "SuperNova 7", "241": "Pastry-5", "242": "Sandy 06", "243": "Illumination-5", "244": "NYX8", "245": "Dream Haze 8", "246": "OIL6", "247": "Regal10", "248": "Soft Demon 7", "249": "SGM-Palette 2-17", "250": "Midnight ablaze-7", "251": "Black Cherry-5", "252": "Sunset Red-5", "253": "INKPINK-6", "254": "Brash Pink-5", "255": "Pink Neon Sign 6", "256": "Enchanted Purple-12", "257": "Arch-11", "258": "Spacey Easter-17", "259": "Fornax Void I-254", "260": "Fornax Void II-128", "261": "Pixelwave-12", "262": "S1-6", "263": "Berry Nebula-8", "264": "ABYSS-9", "265": "Moonlight 15", "266": "Moonlit-39", "267": "H2O-10", "268": "Magic Waters 9", "269": "Bluem0ld-4", "270": "Moss-5", "271": "DEEP MAZE-7", "272": "Toxic Slime-5", "273": "Lush Green-6", "274": "Tsunami-5", "275": "Cryptic Ocean-6", "276": "Marsh Madness-5", "277": "OXYD-8", "278": "Pink&Green-8", "279": "Walking in the Woods 8", "280": "Paper 8", "281": "Sahara Pastell-7", "282": "Sunflower Painting 7", "283": "Art Hoe Aesthetic 7", "284": "Sky5-7", "285": "Ocean Glass-8", "286": "RoyalGuard-6", "287": "Eulbink-7", "288": "Winter Wonderland-8", "289": "Moon Squid 7", "290": "Stratus-5", "291": "Arctic Dust-5", "292": "CL8UDS", "293": "Lilac Skies 5", "294": "Sea of Fire-6", "295": "Autochrome 3", "296": "Autochrome 5", "297": "GB Default 1-4", "298": "GB Default 2-4", "299": "GB Andrade-4", "300": "GB Blue Seni-4", "301": "GB Blackzone-4", "302": "GB Suburb-4", "303": "GB Crimson-4", "304": "GB Didi-4", "305": "GB Dirty-4", "306": "GB Arne-4", "307": "GB Easy-4", "308": "GB Forest-4", "309": "GB Harsh Green-4", "310": "GB Light Green-4", "311": "GB Nostalgia-4", "312": "GB Platinum-4", "313": "GB Kirokaze-4", "314": "GB Cyber-4", "315": "GB Wish-4", "316": "GB Grapefruit-4", "317": "GB Ice Cream-4", "318": "GB Red_Blue-4", "319": "Gold GB-4", "320": "GB Chocolate-4", "321": "GB Gray-4", "322": "GB Spacehaze-4", "323": "GB Purple Dawn-4", "324": "Moon Crystal-4", "325": "ARNE4", "326": "Autumn Chill-4", "327": "CherryMelon-4", "328": "HallowPumpkin-4", "329": "Hollow-4", "330": "Lavender4", "331": "MAW-4", "332": "Voltage Warning-4", "333": "Tritanopia-5", "334": "Rabbit 7", "335": "Amiga 2600 NTSC-127", "336": "Amiga 2600 PAL-104", "337": "Amiga 2600 SECAM-8", "338": "Amiga 7800 M.E.S.S-256", "339": "Amiga 7800-256", "340": "Amstrad CPC-27", "341": "Apple II-15", "342": "Atari 8-Bit Series - GTIA-256", "343": "CGA-16", "344": "CGA Mode 0 [Low]-4", "345": "CGA Mode 0 [High]-4", "346": "CGA Mode 1 [Low]-4", "347": "CGA Mode 1 [High]-4", "348": "CGA Mode 2 [Low]-4", "349": "CGA Mode 2 [High]-4", "350": "Commodore 64 - Pepto-16", "351": "Commodore 64 - Colodore-16", "352": "Commodore VIC-20-16", "353": "Colecovision-15", "354": "Japanese Machine Palette-16", "355": "Macintosh II-16", "356": "Macintosh 8-Bit System Palette-256", "357": "MSX-15", "358": "NES-55", "359": "PICO-8-16", "360": "RISC OS-16", "361": "SAM Coupe-128", "362": "Thomson MO5-16", "363": "TRS-80 Color Computer Palette-4", "364": "Virtual Boy interpreted-4", "365": "VGA-244", "366": "Win 95-256", "367": "ZX Spectrum-15", "368": "GNOME 32", "369": "Electronic Crayon 22", "370": "Chip16", "371": "Deluxe Paint-222", "372": "FlatUI-20", "373": "MakeCode Arcade Palette-15", "374": "Oekaki-20", "375": "Legacy Paint-16", "376": "XP Paint-28", "377": "Vista Paint-28", "378": "Piet Palette-5", "379": "Japanese Woodblock Palette-12", "380": "Human Faces-94", "381": "HSV Palette-96", "382": "ST24 Christmas", "383": "Reds-24" } },
      { "type": "int", "name": "Color Count", "default": "20", "min": "2", "max": "360", "pos": "14" },
      { "type": "int", "name": "Color Seed", "default": "0", "min": "0", "max": "100000", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian Latest update: 2023/9/11." }
      ]
    },
    {
      "name": "Color Existence Distribution [RGB-8]", "lang": "en", "command": "rep_color_existence_distribution_rgb8", "command_preview": "rep_color_existence_distribution_rgb8", "parameters": [
      { "type": "note", "text": "This filter is used to find colors that does or does not exist within a image.\n\n For Paint.NET users, please refer to this tutorial named <a href=\"https://forums.getpaint.net/topic/115124-finding-millions-of-colors-that-does-or-does-not-exist-gmic-qt-tutorial/?tab=comments#comment-562927\">Finding millions of colors that does or does not exist - G'MIC QT Tutorial</a>" },
      { "type": "choice", "name": "sep separator() Set of Color(s)", "default": "1", "pos": "1", "choices": { "0": "Nonexistent Colors", "1": "Existing Colors" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2019/9/20." }
      ]
    },
    {
      "name": "Color Harmonies", "lang": "en", "command": "_none_", "command_preview": "fx_rep_color_harmonies_tool", "parameters": [
      { "type": "note", "text": "This is a recreation of the <a href=\"https://forums.getpaint.net/topic/29332-color-harmonies-tools-effect/\">Color Harmonies plugin for Paint.NET.</a> which was made by <a href=\"https://forums.getpaint.net/profile/79572-midora/\">midora</a> who is also known as Martin Osieka." },
      { "type": "separator" },
      { "type": "note", "text": "Reference Point" },
      { "type": "float", "name": "Hue", "default": "50", "min": "0", "max": "360", "pos": "1" },
      { "type": "float", "name": "Saturation(%)", "default": "100", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Shade/Tint(%)", "default": "0", "min": "-100", "max": "100", "pos": "3" },
      { "type": "choice", "name": "Color Space", "default": "0", "pos": "4", "choices": { "0": "RGB", "1": "RYB" } },
      { "type": "choice", "name": "Palette Mode", "default": "0", "pos": "5", "choices": { "0": "Neutral 8", "1": "Neutral 15", "2": "Analogous 30", "3": "Complementary", "4": "Split-Complementary", "5": "Triadic", "6": "Tetradic", "7": "Clash", "8": "Four Tones", "9": "Five Tones", "10": "Six Tones" } },
      { "type": "separator" },
      { "type": "note", "text": "Output Color" },
      { "type": "color", "name": "Color A", "default": "0,0,0", "pos": "6" },
      { "type": "color", "name": "Color B", "default": "0,0,0", "pos": "9" },
      { "type": "color", "name": "Color C", "default": "0,0,0", "pos": "12" },
      { "type": "color", "name": "Color D", "default": "0,0,0", "pos": "15" },
      { "type": "color", "name": "Color E", "default": "0,0,0", "pos": "18" },
      { "type": "color", "name": "Color F", "default": "0,0,0", "pos": "21" },
      { "type": "separator" },
      { "type": "note", "text": "Preview" },
      { "type": "point", "name": "Color A Point Position", "position": "50,50", "pos": "24", "visibility": "0" },
      { "type": "point", "name": "Color B Point Position", "position": "50,50", "pos": "26", "visibility": "0" },
      { "type": "point", "name": "Color C Point Position", "position": "50,50", "pos": "28", "visibility": "0" },
      { "type": "point", "name": "Color D Point Position", "position": "50,50", "pos": "30", "visibility": "0" },
      { "type": "point", "name": "Color E Point Position", "position": "50,50", "pos": "32", "visibility": "0" },
      { "type": "point", "name": "Color F Point Position", "position": "50,50", "pos": "34", "visibility": "0" },
      { "type": "float", "name": "Scaling(%)", "default": "90", "min": "30", "max": "100", "pos": "36" },
      { "type": "float", "name": "Color Select Position(%)", "default": "10", "min": "10", "max": "50", "pos": "37" },
      { "type": "separator" },
      { "type": "note", "text": "Palette Export" },
      { "type": "folder", "name": "Output Location", "default": "", "pos": "38" },
      { "type": "text", "name": "File Name", "default": "color_harmonies", "pos": "39" },
      { "type": "choice", "name": "Format", "default": "0", "pos": "40", "choices": { "0": "GIMP Palette - .gpl", "1": "Paint.NET Palette - .txt", "2": "JASC-PAL - .pal" } },
      { "type": "button", "name": "Export", "pos": "41" },
      { "type": "separator" },
      { "type": "note", "text": "Miscellaneous" },
      { "type": "text", "name": "Console Message", "default": "This is a interactive tool meant to create palette.", "pos": "42" },
      { "type": "value", "value": "50", "pos": "43" },
      { "type": "value", "value": "100", "pos": "44" },
      { "type": "value", "value": "0", "pos": "45" },
      { "type": "value", "value": "0", "pos": "46" },
      { "type": "value", "value": "0", "pos": "47" },
      { "type": "value", "value": "vector(#18,0)", "pos": "48" },
      { "type": "value", "value": "vector(#12,50)", "pos": "49" },
      { "type": "value", "value": "90", "pos": "50" },
      { "type": "value", "value": "10", "pos": "51" },
      { "type": "value", "value": "6", "pos": "52" },
      { "type": "value", "value": "1", "pos": "53" },
      { "type": "value", "value": "1", "pos": "54" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest update: 2024/4/11." }
      ]
    },
    {
      "name": "Color Modulo Texture", "lang": "en", "command": "gui_rep_colmt", "command_preview": "gui_rep_colmt_preview", "parameters": [
      { "type": "note", "text": "This filter is inspired by <a href=\"https://forums.getpaint.net/topic/111782-color-modulo-texture-tool-ymd20170922/\">Color Modulo</a> plugin made by MadJik for <a href=\"https://www.getpaint.net/\">Paint.NET</a> software.\n\nPreview is inaccurate! Use 100% Zoom Preview for most accuracy!" },
      { "type": "separator" },
      { "type": "note", "text": "Colour and Channel Setting" },
      { "type": "separator" },
      { "type": "note", "text": "- Colour Space and Alpha Setting -" },
      { "type": "choice", "name": "Colour Space", "default": "0", "pos": "1", "choices": { "0": "RGB-8", "1": "RYB-8", "2": "CMY-8", "3": "CMYK-8", "4": "HSI-8", "5": "HSL-8", "6": "HSV-8", "7": "LAB-8", "8": "LCH-8", "9": "YIQ-8", "10": "YUV-8", "11": "YCbCr-8", "12": "YCbCrGLIC-8", "13": "XYZ-8", "14": "YES-8" } },
      { "type": "bool", "name": "Contain Alpha?", "default": "0", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "- Channel Setting -" },
      { "type": "choice", "name": "Channel Order", "default": "0", "pos": "3", "choices": { "0": "1-2-3-4", "1": "1-2-4-3", "2": "1-3-2-4", "3": "1-3-4-2", "4": "1-4-2-3", "5": "1-4-3-2", "6": "2-1-3-4", "7": "2-1-4-3", "8": "2-3-1-4", "9": "2-3-4-1", "10": "2-4-1-3", "11": "2-4-3-1", "12": "3-1-2-4", "13": "3-1-4-2", "14": "3-2-1-4", "15": "3-2-4-1", "16": "3-4-1-2", "17": "3-4-2-1", "18": "4-1-2-3", "19": "4-1-3-2", "20": "4-2-1-3", "21": "4-2-3-1", "22": "4-3-1-2", "23": "4-3-2-1" } },
      { "type": "choice", "name": "Channel Order", "default": "0", "pos": "4", "choices": { "0": "1-2-3", "1": "1-3-2", "2": "2-1-3", "3": "2-3-1", "4": "3-1-2", "5": "3-2-1" } },
      { "type": "bool", "name": "Edit Multiple Channel Separately?", "default": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Diagonal Setting" },
      { "type": "separator" },
      { "type": "bool", "name": "Flip Diagonal?", "default": "0", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Modulo Texture Setting" },
      { "type": "separator" },
      { "type": "note", "text": "- Multichannel Editing-" },
      { "type": "choice", "name": "Modulo Mode", "default": "3", "pos": "7", "choices": { "0": "Regular Modulo", "1": "Continuous Regular Modulo", "2": "Divisive Modulo", "3": "Continuous Divisive Modulo" } },
      { "type": "int", "name": "Modulo Variable #1", "default": "0", "min": "0", "max": "786", "pos": "8" },
      { "type": "int", "name": "Modulo Variable #2", "default": "255", "min": "0", "max": "786", "pos": "9" },
      { "type": "float", "name": "Function Angle", "default": "0", "min": "-180", "max": "180", "pos": "10" },
      { "type": "int", "name": "Value Shift", "default": "0", "min": "0", "max": "786", "pos": "11" },
      { "type": "bool", "name": "Centered", "default": "1", "pos": "12" },
      { "type": "bool", "name": "Negate", "default": "0", "pos": "13" },
      { "type": "bool", "name": "Normalize", "default": "1", "pos": "14" },
      { "type": "note", "text": "Option available when <u>Edit Multiple Channel Separately</u> is turned off" },
      { "type": "separator" },
      { "type": "note", "text": "- Separate Channel Editing -" },
      { "type": "choice", "name": "Channel Section", "default": "0", "pos": "15", "choices": { "0": "Channel #1", "1": "Channel #2", "2": "Channel #3", "3": "Channel #4" } },
      { "type": "choice", "name": "Channel Section", "default": "0", "pos": "16", "choices": { "0": "Channel #1", "1": "Channel #2", "2": "Channel #3" } },
      { "type": "note", "text": "Option available when <u>Edit Multiple Channel Separately</u> is turned on" },
      { "type": "separator" },
      { "type": "choice", "name": "Modulo Mode", "default": "3", "pos": "17", "choices": { "0": "Regular Modulo", "1": "Continuous Regular Modulo", "2": "Divisive Modulo", "3": "Continuous Divisive Modulo" } },
      { "type": "int", "name": "Modulo Variable #1", "default": "0", "min": "0", "max": "786", "pos": "18" },
      { "type": "int", "name": "Modulo Variable #2", "default": "255", "min": "0", "max": "786", "pos": "19" },
      { "type": "float", "name": "Function Angle", "default": "0", "min": "-180", "max": "180", "pos": "20" },
      { "type": "int", "name": "Value Shift", "default": "0", "min": "0", "max": "786", "pos": "21" },
      { "type": "bool", "name": "Centered", "default": "1", "pos": "22" },
      { "type": "bool", "name": "Negate", "default": "0", "pos": "23" },
      { "type": "bool", "name": "Normalize", "default": "1", "pos": "24" },
      { "type": "choice", "name": "Modulo Mode", "default": "3", "pos": "25", "choices": { "0": "Regular Modulo", "1": "Continuous Regular Modulo", "2": "Divisive Modulo", "3": "Continuous Divisive Modulo" } },
      { "type": "int", "name": "Modulo Variable #1", "default": "0", "min": "0", "max": "786", "pos": "26" },
      { "type": "int", "name": "Modulo Variable #2", "default": "255", "min": "0", "max": "786", "pos": "27" },
      { "type": "float", "name": "Function Angle", "default": "0", "min": "-180", "max": "180", "pos": "28" },
      { "type": "int", "name": "Value Shift", "default": "0", "min": "0", "max": "786", "pos": "29" },
      { "type": "bool", "name": "Centered", "default": "1", "pos": "30" },
      { "type": "bool", "name": "Negate", "default": "0", "pos": "31" },
      { "type": "bool", "name": "Normalize", "default": "1", "pos": "32" },
      { "type": "choice", "name": "Modulo Mode", "default": "3", "pos": "33", "choices": { "0": "Regular Modulo", "1": "Continuous Regular Modulo", "2": "Divisive Modulo", "3": "Continuous Divisive Modulo" } },
      { "type": "int", "name": "Modulo Variable #1", "default": "0", "min": "0", "max": "786", "pos": "34" },
      { "type": "int", "name": "Modulo Variable #2", "default": "255", "min": "0", "max": "786", "pos": "35" },
      { "type": "float", "name": "Function Angle", "default": "0", "min": "-180", "max": "180", "pos": "36" },
      { "type": "int", "name": "Value Shift", "default": "0", "min": "0", "max": "786", "pos": "37" },
      { "type": "bool", "name": "Centered", "default": "1", "pos": "38" },
      { "type": "bool", "name": "Negate", "default": "0", "pos": "39" },
      { "type": "bool", "name": "Normalize", "default": "1", "pos": "40" },
      { "type": "choice", "name": "Modulo Mode", "default": "3", "pos": "41", "choices": { "0": "Regular Modulo", "1": "Continuous Regular Modulo", "2": "Divisive Modulo", "3": "Continuous Divisive Modulo" } },
      { "type": "int", "name": "Modulo Variable #1", "default": "0", "min": "0", "max": "786", "pos": "42" },
      { "type": "int", "name": "Modulo Variable #2", "default": "255", "min": "0", "max": "786", "pos": "43" },
      { "type": "float", "name": "Function Angle", "default": "0", "min": "-180", "max": "180", "pos": "44" },
      { "type": "int", "name": "Value Shift", "default": "0", "min": "0", "max": "786", "pos": "45" },
      { "type": "bool", "name": "Centered", "default": "1", "pos": "46" },
      { "type": "bool", "name": "Negate", "default": "0", "pos": "47" },
      { "type": "bool", "name": "Normalize", "default": "1", "pos": "48" },
      { "type": "note", "text": "Option available when <u>Edit Multiple Channel Separately</u> is turned on" },
      { "type": "separator" },
      { "type": "note", "text": "Subpixel Processing Setting" },
      { "type": "separator" },
      { "type": "float", "name": "Subpixel Rendering Level", "default": "1", "min": "0", "max": "1", "pos": "49" },
      { "type": "choice", "name": "Subpixel Interpolation", "default": "5", "pos": "50", "choices": { "0": "Nearest", "1": "Average", "2": "Grid", "3": "Linear", "4": "Bicubic", "5": "Lanczos" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2021/10/07." }
      ]
    },
    {
      "name": "Color Region", "lang": "en", "command": "fx_rep_color_region", "command_preview": "fx_rep_color_region_preview", "parameters": [
      { "type": "float", "name": "Area Threshold (%)", "default": "5", "min": "1", "max": "100", "pos": "1" },
      { "type": "float", "name": "Stray Threshold (%)", "default": "5", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Color Distance Threshold", "default": "6", "min": "0", "max": "10", "pos": "3" },
      { "type": "float", "name": "Old Area Threshold (%)", "default": "-1", "min": "-1", "max": "100", "pos": "4", "visibility": "0" },
      { "type": "float", "name": "Old Stray Threshold (%)", "default": "-1", "min": "-1", "max": "100", "pos": "5", "visibility": "0" },
      { "type": "float", "name": "Old Color Distance Threshold", "default": "-1", "min": "-1", "max": "10", "pos": "6", "visibility": "0" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "7", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "8", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2023/3/15." }
      ]
    },
    {
      "name": "Complexion Burst", "lang": "en", "command": "fx_rep_compb", "command_preview": "fx_rep_compb_preview", "parameters": [
      { "type": "note", "text": "Complex-Plane adaptation of the Pickover Popcorn Fractal. Discovered By Reptorian." },
      { "type": "separator" },
      { "type": "note", "text": "Main" },
      { "type": "int", "name": "Points", "default": "50", "min": "1", "max": "200", "pos": "1" },
      { "type": "float", "name": "Density", "default": "1", "min": ".01", "max": "2", "pos": "2" },
      { "type": "float", "name": "H-Real", "default": ".05", "min": "-75", "max": "75", "pos": "3" },
      { "type": "float", "name": "H-Imag", "default": "3", "min": "-75", "max": "75", "pos": "4" },
      { "type": "float", "name": "K-Real", "default": "3", "min": "-75", "max": "75", "pos": "5" },
      { "type": "float", "name": "K-Imag", "default": "3", "min": "-75", "max": "75", "pos": "6" },
      { "type": "float", "name": "Zoom", "default": "2", "min": ".1", "max": "20", "pos": "7" },
      { "type": "float", "name": "Angle", "default": "0", "min": "-180", "max": "180", "pos": "8" },
      { "type": "point", "name": "Origin", "position": "50,50", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Number Extraction" },
      { "type": "choice", "name": "Method", "default": "0", "pos": "11", "choices": { "0": "Per-Axis", "1": "Additive" } },
      { "type": "separator" },
      { "type": "note", "text": "Complex Trigonometric" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "12", "choices": { "0": "Z-4", "1": "Z-6" } },
      { "type": "bool", "name": "Complex-Plane Mode?", "default": "1", "pos": "13" },
      { "type": "choice", "name": "Real-Axis Formula S", "default": "0", "pos": "14", "choices": { "0": "Complex Sinusoidal", "1": "Complex Cosinusoidal", "2": "Complex Tangent", "3": "Complex Log" } },
      { "type": "choice", "name": "Real-Axis Formula T", "default": "1", "pos": "15", "choices": { "0": "Complex Sinusoidal", "1": "Complex Cosinusoidal", "2": "Complex Tangent", "3": "Complex Log" } },
      { "type": "choice", "name": "Real-Axis Formula U", "default": "2", "pos": "16", "choices": { "0": "Complex Sinusoidal", "1": "Complex Cosinusoidal", "2": "Complex Tangent", "3": "Complex Log" } },
      { "type": "choice", "name": "Imaginary-Axis Formula S", "default": "0", "pos": "17", "choices": { "0": "Complex Sinusoidal", "1": "Complex Cosinusoidal", "2": "Complex Tangent", "3": "Complex Log" } },
      { "type": "choice", "name": "Imaginary-Axis Formula T", "default": "1", "pos": "18", "choices": { "0": "Complex Sinusoidal", "1": "Complex Cosinusoidal", "2": "Complex Tangent", "3": "Complex Log" } },
      { "type": "choice", "name": "Imaginary-Axis Formula U", "default": "2", "pos": "19", "choices": { "0": "Complex Sinusoidal", "1": "Complex Cosinusoidal", "2": "Complex Tangent", "3": "Complex Log" } },
      { "type": "choice", "name": "XY-Axis Formula S", "default": "0", "pos": "20", "choices": { "0": "Complex Sinusoidal", "1": "Complex Cosinusoidal", "2": "Complex Tangent", "3": "Complex Log" } },
      { "type": "choice", "name": "XY-Axis Formula T", "default": "1", "pos": "21", "choices": { "0": "Complex Sinusoidal", "1": "Complex Cosinusoidal", "2": "Complex Tangent", "3": "Complex Log" } },
      { "type": "choice", "name": "XY-Axis Formula U", "default": "2", "pos": "22", "choices": { "0": "Complex Sinusoidal", "1": "Complex Cosinusoidal", "2": "Complex Tangent", "3": "Complex Log" } },
      { "type": "separator" },
      { "type": "note", "text": "Output" },
      { "type": "float", "name": "Value Limit(%)", "default": ".5", "min": ".5", "max": "100", "pos": "23" },
      { "type": "float", "name": "Midpoint Shift", "default": ".5", "min": "-1", "max": "1", "pos": "24" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": ".1", "max": "10", "pos": "25" },
      { "type": "bool", "name": "Normalize", "default": "1", "pos": "26" },
      { "type": "separator" },
      { "type": "note", "text": "Preview" },
      { "type": "bool", "name": "Show Fill Ratio?", "default": "0", "pos": "27" },
      { "type": "note", "text": "Fill Ratio provides information on whether there is sufficient filled pixels on canvas. The closer to 100%, the more the canvas is filled." },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2021/08/19." }
      ]
    },
    {
      "name": "Construction Material Texture", "lang": "en", "command": "_cons_turb", "command_preview": "_cons_turb_preview", "parameters": [
      { "type": "note", "text": "Construction Material Texture filter is based off the following tutorial by theonlychad for Paint.NET software: <a href=\"https://forums.getpaint.net/topic/16075-concrete-texture-tutorial/\">Concrete Texture Tutorial</a>.\n" },
      { "type": "separator" },
      { "type": "note", "text": "Turbulance Texture" },
      { "type": "float", "name": "Radius", "default": "88", "min": "1", "max": "1024", "pos": "1" },
      { "type": "int", "name": "Octaves", "default": "8", "min": "1", "max": "12", "pos": "2" },
      { "type": "float", "name": "Damping per Octave", "default": "2.5", "min": "1", "max": "10", "pos": "3" },
      { "type": "choice", "name": "Mode", "default": "2", "pos": "4", "choices": { "0": "Turbulence", "1": "Turbulence 2", "2": "Fractal Noise", "3": "Fractured Clouds", "4": "Stardust", "5": "Pea Soup" } },
      { "type": "color", "name": "Color Balance", "default": "128,128,128", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Noise Processing" },
      { "type": "float", "name": "Amplitude", "default": "20", "min": "0", "max": "200", "pos": "8" },
      { "type": "choice", "name": "Noise Type", "default": "3", "pos": "9", "choices": { "0": "Gaussian", "1": "Uniform", "2": "Salt and Pepper", "3": "Poisson" } },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "10", "choices": { "0": "RGB [All]", "1": "RGB [Red]", "2": "RGB [Green]", "3": "RGB [Blue]", "4": "Linear RGB [All]", "5": "Linear RGB [Red]", "6": "Linear RGB [Green]", "7": "Linear RGB [Blue]", "8": "YCbCr [Luminance]", "9": "YCbCr [Blue-Red Chrominances]", "10": "YCbCr [Blue Chrominance]", "11": "YCbCr [Red Chrominance]", "12": "YCbCr [Green Chrominance]", "13": "Lab [Lightness]", "14": "Lab [ab-Chrominances]", "15": "Lab [a-Chrominance]", "16": "Lab [b-Chrominance]", "17": "Lch [ch-Chrominances]", "18": "Lch [c-Chrominance]", "19": "Lch [h-Chrominance]", "20": "HSV [Hue]", "21": "HSV [Saturation]", "22": "HSV [Value]", "23": "HSI [Intensity]", "24": "HSL [Lightness]", "25": "CMYK [Cyan]", "26": "CMYK [Magenta]", "27": "CMYK [Yellow]", "28": "CMYK [Key]", "29": "YIQ [Luma]", "30": "YIQ [Chromas]" } },
      { "type": "choice", "name": "Value Action", "default": "1", "pos": "11", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } },
      { "type": "separator" },
      { "type": "note", "text": "Grayscale Processing" },
      { "type": "choice", "name": "Colour Space", "default": "0", "pos": "12", "choices": { "0": "RGB", "1": "sRGB" } },
      { "type": "float", "name": "Channel 1", "default": "1", "min": "0", "max": "3", "pos": "13" },
      { "type": "float", "name": "Channel 2", "default": "1", "min": "0", "max": "3", "pos": "14" },
      { "type": "float", "name": "Channel 3", "default": "1", "min": "0", "max": "3", "pos": "15" },
      { "type": "bool", "name": "Normalise", "default": "1", "pos": "16" },
      { "type": "float", "name": "Desaturation (%)", "default": "100", "min": "0", "max": "100", "pos": "17" },
      { "type": "separator" },
      { "type": "note", "text": "Self-Image Processing" },
      { "type": "choice", "name": "Self-Blending", "default": "20", "pos": "18", "choices": { "0": "add", "1": "burn", "2": "dodge", "3": "exclusion", "4": "freeze", "5": "grainextract", "6": "grainmerge", "7": "hardlight", "8": "hardmix", "9": "interpolation", "10": "linearburn", "11": "linearlight", "12": "luminance", "13": "multiply", "14": "negation", "15": "overlay", "16": "pinlight", "17": "reflect", "18": "screen", "19": "shapeaverage", "20": "softburn", "21": "softdodge", "22": "softlight", "23": "stamp", "24": "vividlight" } },
      { "type": "float", "name": "Self-Blending Opacity (%)", "default": "100", "min": "0", "max": "100", "pos": "19" },
      { "type": "choice", "name": "Self-Blending V. Original Blending", "default": "15", "pos": "20", "choices": { "0": "add", "1": "alpha", "2": "and", "3": "average", "4": "blue", "5": "burn", "6": "darken", "7": "difference", "8": "divide", "9": "dodge", "10": "exclusion", "11": "freeze", "12": "grainextract", "13": "grainmerge", "14": "green", "15": "hardlight", "16": "hardmix", "17": "hue", "18": "interpolation", "19": "lighten", "20": "lightness", "21": "linearburn", "22": "linearlight", "23": "luminance", "24": "multiply", "25": "negation", "26": "or", "27": "overlay", "28": "pinlight", "29": "red", "30": "reflect", "31": "saturation", "32": "screen", "33": "shapeaverage", "34": "softburn", "35": "softdodge", "36": "softlight", "37": "stamp", "38": "subtract", "39": "value", "40": "vividlight", "41": "xor" } },
      { "type": "float", "name": "Self-Blend V. Original Opacity (%)", "default": "100", "min": "0", "max": "100", "pos": "21" },
      { "type": "separator" },
      { "type": "note", "text": "Value Processing" },
      { "type": "choice", "name": "Value Action", "default": "2", "pos": "22", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } },
      { "type": "float", "name": "Number #1", "default": "0", "min": "0", "max": "255", "pos": "23" },
      { "type": "float", "name": "Number #2", "default": "188", "min": "0", "max": "255", "pos": "24" },
      { "type": "bool", "name": "Equalize?", "default": "0", "pos": "25" },
      { "type": "bool", "name": "Negate?", "default": "0", "pos": "26" },
      { "type": "separator" },
      { "type": "note", "text": "Warp by Intensity" },
      { "type": "float", "name": "X-Factor", "default": "0.19", "min": "-6", "max": "6", "pos": "27" },
      { "type": "float", "name": "Y-Factor", "default": "0.52", "min": "-6", "max": "6", "pos": "28" },
      { "type": "separator" },
      { "type": "float", "name": "X-Offset", "default": "128", "min": "0", "max": "255", "pos": "29" },
      { "type": "float", "name": "Y-Offset", "default": "128", "min": "0", "max": "255", "pos": "30" },
      { "type": "separator" },
      { "type": "bool", "name": "Correlated Channels", "default": "0", "pos": "31" },
      { "type": "choice", "name": "Interpolation", "default": "1", "pos": "32", "choices": { "0": "Nearest Neighbor", "1": "Linear" } },
      { "type": "choice", "name": "Boundary", "default": "2", "pos": "33", "choices": { "0": "Transparent", "1": "Nearest", "2": "Periodic", "3": "Mirror" } },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "34", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGB [All]", "3": "RGB [Red]", "4": "RGB [Green]", "5": "RGB [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [Luminance]", "12": "YCbCr [Blue-Red Chrominances]", "13": "YCbCr [Blue Chrominance]", "14": "YCbCr [Red Chrominance]", "15": "YCbCr [Green Chrominance]", "16": "Lab [Lightness]", "17": "Lab [ab-Chrominances]", "18": "Lab [a-Chrominance]", "19": "Lab [b-Chrominance]", "20": "Lch [ch-Chrominances]", "21": "Lch [c-Chrominance]", "22": "Lch [h-Chrominance]", "23": "HSV [Hue]", "24": "HSV [Saturation]", "25": "HSV [Value]", "26": "HSI [Intensity]", "27": "HSL [Lightness]", "28": "CMYK [Cyan]", "29": "CMYK [Magenta]", "30": "CMYK [Yellow]", "31": "CMYK [Key]", "32": "YIQ [Luma]", "33": "YIQ [Chromas]" } },
      { "type": "separator" },
      { "type": "note", "text": "Style Processing" },
      { "type": "float", "name": "Blur Original", "default": "0", "min": "0", "max": "16", "pos": "35" },
      { "type": "separator" },
      { "type": "note", "text": "Butterworth Bandpass Processing" },
      { "type": "bool", "name": "Activate Butterworth Bandpass Processing", "default": "0", "pos": "36" },
      { "type": "bool", "name": "Create Copy?", "default": "0", "pos": "37" },
      { "type": "float", "name": "LP Frequency Power", "default": "3", "min": "0", "max": "16", "pos": "38" },
      { "type": "float", "name": "LP Order Cube Root", "default": "2", "min": "0", "max": "4", "pos": "39" },
      { "type": "float", "name": "LP Resonance", "default": "0", "min": "0", "max": "5", "pos": "40" },
      { "type": "float", "name": "HP Frequency Power", "default": "4", "min": "0", "max": "16", "pos": "41" },
      { "type": "float", "name": "HP Order Cube Root", "default": "2", "min": "0", "max": "4", "pos": "42" },
      { "type": "float", "name": "HP Resonance", "default": "2", "min": "0", "max": "4", "pos": "43" },
      { "type": "choice", "name": "Colour Space", "default": "0", "pos": "44", "choices": { "0": "RGB", "1": "sRGB", "2": "HSV8", "3": "HSV", "4": "HSL8", "5": "HSL", "6": "HSI8", "7": "HSI", "8": "LCH8", "9": "LCH", "10": "Lab8", "11": "Lab", "12": "YCbCr", "13": "YCbCrGLIC", "14": "YCbCrJPEG", "15": "YIQ8", "16": "YIQ", "17": "YUV8", "18": "YUV", "19": "HCY", "20": "XYZ8", "21": "XYZ", "22": "CMY", "23": "CMYK", "24": "Bayer" } },
      { "type": "bool", "name": "Absolute", "default": "1", "pos": "45" },
      { "type": "bool", "name": "Makeup Gain", "default": "1", "pos": "46" },
      { "type": "separator" },
      { "type": "note", "text": "Relief Processing" },
      { "type": "bool", "name": "Activate Relief Processing", "default": "1", "pos": "47" },
      { "type": "int", "name": "Radius", "default": "5", "min": "5", "max": "100", "pos": "48" },
      { "type": "float", "name": "Angle", "default": "0", "min": "-180", "max": "180", "pos": "49" },
      { "type": "float", "name": "Sigma", "default": ".5", "min": ".05", "max": "4", "pos": "50" },
      { "type": "float", "name": "Value Scale", "default": "2", "min": ".5", "max": "10", "pos": "51" },
      { "type": "bool", "name": "Output Color", "default": "1", "pos": "52" },
      { "type": "choice", "name": "Blending Mode", "default": "0", "pos": "53", "choices": { "0": "Grain Extract", "1": "Grain Merge" } },
      { "type": "float", "name": "Blending Opacity (%)", "default": "100", "min": "0", "max": "100", "pos": "54" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "55", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "56", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2021/12/07." }
      ]
    },
    {
      "name": "Detailed Information", "lang": "en", "command": "_none_", "command_preview": "fx_rep_detailed_info_preview", "parameters": [
      { "type": "text", "name": "User and Images Information", "default": "1", "pos": "1" },
      { "type": "int", "name": "Ratio Proposition Number (0-1 disables it)", "default": "16", "min": "0", "max": "256", "pos": "2" },
      { "type": "int", "name": "Ratio Proposition Number (0-1 disables it)", "default": "16", "min": "0", "max": "256", "pos": "3", "visibility": "0" },
      { "type": "value", "value": "to_be_filled", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2025/01/15." }
      ]
    },
    {
      "name": "Diffusion Limited Aggregation", "lang": "en", "command": "fx_rep_dla", "command_preview": "fx_rep_dla_preview", "parameters": [
      { "type": "int", "name": "Attempts", "default": "100", "min": "5", "max": "2000", "pos": "1" },
      { "type": "choice", "name": "Aggregation Mode", "default": "0", "pos": "2", "choices": { "0": "Corners", "1": "Axis[Slow!]", "2": "All-Around", "3": "Alternating" } },
      { "type": "choice", "name": "Stem Tone", "default": "0", "pos": "3", "choices": { "0": "Dark", "1": "Light" } },
      { "type": "int", "name": "Border Size", "default": "0", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Spread Factor(%)", "default": "0", "min": "0", "max": "100", "pos": "5" },
      { "type": "bool", "name": "Utilize Dense Point Map", "default": "0", "pos": "6" },
      { "type": "bool", "name": "Preserve Silhoutte", "default": "1", "pos": "7" },
      { "type": "bool", "name": "Negate", "default": "0", "pos": "8" },
      { "type": "button", "name": "Regenerate Map", "pos": "9" },
      { "type": "int", "name": "Old Attempts", "default": "100", "min": "5", "max": "2000", "pos": "10", "visibility": "0" },
      { "type": "choice", "name": "Old Aggregation Mode", "default": "0", "pos": "11", "choices": { "0": "Corners", "1": "Axis[Slow!]", "2": "All-Around", "3": "Alternating" }, "visibility": "0" },
      { "type": "choice", "name": "Old Stem Tone", "default": "0", "pos": "12", "choices": { "0": "Dark", "1": "Light" }, "visibility": "0" },
      { "type": "int", "name": "Old Border Size", "default": "0", "min": "0", "max": "100", "pos": "13", "visibility": "0" },
      { "type": "float", "name": "Old Spread Factor(%)", "default": "0", "min": "0", "max": "100", "pos": "14", "visibility": "0" },
      { "type": "bool", "name": "Old Utilize Dense Point Map", "default": "0", "pos": "15", "visibility": "0" },
      { "type": "bool", "name": "Old Preserve Silhoutte", "default": "1", "pos": "16", "visibility": "0" },
      { "type": "bool", "name": "Old Negate", "default": "0", "pos": "17", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2023/01/04." }
      ]
    },
    {
      "name": "Dungeon Floor (Super Slow!)", "lang": "en", "command": "fx_rep_dungeon_floor", "command_preview": "fx_rep_dungeon_floor_preview", "parameters": [
      { "type": "choice", "name": "Tile Size", "default": "0", "pos": "1", "choices": { "0": "1x1", "1": "2x2" } },
      { "type": "choice", "name": "Tile Choice (If 1x1)", "default": "0", "pos": "2", "choices": { "0": "1", "1": "2", "2": "3", "3": "4" } },
      { "type": "float", "name": "Subsampling", "default": "2", "min": "0", "max": "5", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian Latest update: 2021/6/02." }
      ]
    },
    {
      "name": "Dynamic Contrast", "lang": "en", "command": "rep_dynamic_contrast", "command_preview": "rep_dynamic_contrast_preview", "parameters": [
      { "type": "float", "name": "Amount", "default": "0", "min": "-64", "max": "64", "pos": "1" },
      { "type": "float", "name": "Threshold", "default": "128", "min": "0", "max": "255", "pos": "2" },
      { "type": "float", "name": "Intensity", "default": "255", "min": "0", "max": "255", "pos": "3" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "4", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "5", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Code adapted from <a href=\"https://forums.getpaint.net/topic/117538-dynamic-contrast/?tab=comments#comment-578867\">Source Code to Dynamic Contrast PDN plugin</a> made by Remake." },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2020/12/18." }
      ]
    },
    {
      "name": "Edge Fade", "lang": "en", "command": "fx_rep_edgefade", "command_preview": "fx_rep_edgefade_preview", "parameters": [
      { "type": "note", "text": "If your image has slim alpha, activate Use Max Distance for better control over the fade, however preview will not be as accurate unless you view the full image." },
      { "type": "separator" },
      { "type": "note", "text": "Main" },
      { "type": "float", "name": "Half Image-Diagonal(%)", "default": "10", "min": ".1", "max": "100", "pos": "1" },
      { "type": "float", "name": "Max Distance (%)", "default": "10", "min": ".1", "max": "100", "pos": "2" },
      { "type": "bool", "name": "Use Max Distance?", "default": "0", "pos": "3" },
      { "type": "float", "name": "Exponential Factor", "default": "2", "min": "0", "max": "3", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Local Normalization" },
      { "type": "float", "name": "Amplitude", "default": "0", "min": "0", "max": "15", "pos": "5" },
      { "type": "float", "name": "Neighborhood Smoothness (%)", "default": "4", "min": ".1", "max": "100", "pos": "6" },
      { "type": "float", "name": "Average Smoothness (%)", "default": "2", "min": ".1", "max": "100", "pos": "7" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "8", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "9", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2020/7/13." }
      ]
    },
    {
      "name": "Ellsworth Kelly Board", "lang": "en", "command": "fx_rep_ekb", "command_preview": "fx_rep_ekb_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Main" },
      { "type": "float", "name": "Square Size - Half Minimum-Dimension(%)", "default": "10", "min": "1", "max": "100", "pos": "1" },
      { "type": "float", "name": "Border Size - Square Size(%)", "default": "10", "min": "-100", "max": "100", "pos": "2" },
      { "type": "int", "name": "Border Size - Pixel", "default": "1", "min": "-50", "max": "50", "pos": "3" },
      { "type": "bool", "name": "Use Pixel Unit to define Border", "default": "1", "pos": "4" },
      { "type": "float", "name": "Frequency(%)", "default": "50", "min": "5", "max": "100", "pos": "5" },
      { "type": "choice", "name": "Output", "default": "0", "pos": "6", "choices": { "0": "Inside", "1": "Resized" } },
      { "type": "separator" },
      { "type": "note", "text": "Color Options" },
      { "type": "color", "name": "Unfilled Area Color", "default": "110,105,130", "pos": "7" },
      { "type": "bool", "name": "Keep Unfilled Area Empty?", "default": "0", "pos": "10" },
      { "type": "color", "name": "Exterior Border Color", "default": "255,255,255", "pos": "11" },
      { "type": "bool", "name": "Keep Exterior Border Color Empty?", "default": "0", "pos": "14" },
      { "type": "float", "name": "Border Value(%)", "default": "25", "min": "0", "max": "100", "pos": "15" },
      { "type": "choice", "name": "Palette", "default": "0", "pos": "16", "choices": { "0": "Predefined", "1": "Random" } },
      { "type": "int", "name": "Number of Colors", "default": "12", "min": "5", "max": "100", "pos": "17" },
      { "type": "choice", "name": "Color Space", "default": "0", "pos": "18", "choices": { "0": "RGB", "1": "RYB", "2": "CMY", "3": "CMYK", "4": "HCY", "5": "HSI", "6": "HSL", "7": "HSV", "8": "LAB", "9": "LCH", "10": "YCbCr", "11": "YCbCrGLIC", "12": "YIQ", "13": "YUV", "14": "XYZ", "15": "YES" } },
      { "type": "choice", "name": "Predefined Palette", "default": "10", "pos": "19", "choices": { "0": "Black & White with Red-Green-Blue-5", "1": "White-Cyan-Magenta-Yellow-Black-5", "2": "Red-Green-Blue with Cyan-Magenta-Yellow-6", "3": "1-Bit RGB-8", "4": "Aurora-256", "5": "Zenit-241", "6": "Game Builder Garage: Texture-Sprite Editor Palette-117", "7": "Duel-256", "8": "Hocus Pocus Palette-256", "9": "PLAYPAL-249", "10": "Sonic Robo Blast 2-256", "11": "Uzebox-256", "12": "Andrew Kensler - 16", "13": "Andrew Kensler - 32", "14": "Andrew Kensler - 54", "15": "AAP-Micro 12", "16": "AAP-16", "17": "AAP-64", "18": "AAP-RadiantPLUS-96", "19": "AAP-SPLENDOR128", "20": "AAP-DGA16", "21": "Cheerful-32", "22": "DB8", "23": "DB16", "24": "DB32", "25": "DB-ISO22", "26": "DimWiddy 17", "27": "DimWiddy 23", "28": "Endesga-8", "29": "Endesga-16", "30": "Endesga-32", "31": "Endesga-36", "32": "Endesga-64", "33": "Famicube-64", "34": "Juicy-32", "35": "Juicy-56", "36": "XAIUE-22", "37": "15P-DX", "38": "20P-DX", "39": "24P-DX", "40": "Cabana-64", "41": "Fantasy 16", "42": "Fantasy 24", "43": "Tranquil Fantasy 23", "44": "Tranquility Plus 39", "45": "Faraway 48", "46": "Fleja Master Palette-33", "47": "Koni32", "48": "Linear Color Palette Basic-31", "49": "LEGO colors-43", "50": "Lego Colours 2021-40", "51": "Vines Flexible Linear Ramps-38", "52": "Arcade Standard 29", "53": "ARQ16", "54": "Atom-8", "55": "BLK 36", "56": "BLK-NEO-46", "57": "Broken Facility-40", "58": "Bubblegum-16", "59": "CPC BOY-32", "60": "Cade 15", "61": "Calder 8-11", "62": "CD-BAC-16", "63": "CG Arne-16", "64": "DinoKnight 16", "65": "||||-22", "66": "FZT Ethereal 16", "67": "Indecision-17", "68": "Island Joy 16", "69": "Journey-64", "70": "Shallowmarsh26", "71": "Lago Nenufar (Lake Water Lily)-19", "72": "Juicy 17", "73": "ChocolateGanache-96", "74": "Bright Winter 1-74", "75": "Bright Winter 2-83", "76": "Kawaii16", "77": "0xdb-01-17", "78": "GZXP-11", "79": "Chromatic16", "80": "Piet Coding Language-20", "81": "Matrix-96", "82": "Material Design-96", "83": "Rainbow-88", "84": "Rainbow-96", "85": "SCRJ-XXXVI-36", "86": "Pxls Default-32", "87": "Lospec500-42", "88": "Moderna-24", "89": "Oak21", "90": "Nature's Embrace 55", "91": "RBYPGO-94", "92": "New Worlds 46", "93": "Nauris-16", "94": "Dynamite-40", "95": "Interstate 28", "96": "Downgraded 32", "97": "Pear 36", "98": "Pineapple 32", "99": "Peachy Pop 16", "100": "Resurrect 32", "101": "Rosy 42", "102": "SLSO-CLR17", "103": "Softy 15", "104": "SPEC12", "105": "The Roarin 80's", "106": "Starmancer-52", "107": "SuperFuture25", "108": "SUNSHINE 35", "109": "Sweetie 16", "110": "Calm 48", "111": "Optimism-32", "112": "Taffy 16", "113": "Todayland Palette V2-25", "114": "TriRampo-12", "115": "r|place 2022-32", "116": "Tropical Cone 24", "117": "Vivid-17", "118": "SHIDO50+-72", "119": "Intacto14", "120": "Itatsi-23", "121": "ENOS16", "122": "Grixel Grotto-16", "123": "Superb 8", "124": "Undertones-17", "125": "Tango-28", "126": "Cheese Palette-28", "127": "Equpix 15", "128": "Zughy 32", "129": "Voodo34", "130": "Franzston 30", "131": "Night 16", "132": "Star 29", "133": "Star 34", "134": "Still-Life-14", "135": "SimpleJPC-16", "136": "Acid 15", "137": "Battery 24", "138": "Clumpy 18", "139": "Cthulhu-16", "140": "Crimso 11-16", "141": "Copper-Tech-16", "142": "DRZ15A", "143": "Eggy 15", "144": "Europa 16", "145": "GreyT-bit-8", "146": "Jewel-15", "147": "Polar 11", "148": "Sheltzy 32", "149": "Wyrm 24", "150": "Yume Nikki-24", "151": "Rube-Goldberg-9", "152": "BoomBoom-7", "153": "Generic-8", "154": "Crayola Blind-9", "155": "FunkyFuture8", "156": "The Golden Wall Palette-7", "157": "Matriax8c", "158": "NT1H-26", "159": "JerryPie 22", "160": "Nineties Nine-9", "161": "On70-35", "162": "ANB16", "163": "Retrocal-8", "164": "Punolit-21", "165": "Luap 40", "166": "Autum Villan 6", "167": "Autum 15", "168": "Autum 15 [Yellow]", "169": "Galaxy Flame-16", "170": "Cretaceous-16", "171": "Antiquity16", "172": "Mushroom-14", "173": "Aerugo-32", "174": "Hotel Paintings 6", "175": "Nopal-12", "176": "Blessing-5", "177": "Fairydust 8", "178": "Vanilla MilkShake-16", "179": "Fairy Tales-8", "180": "Naji 16", "181": "Easter Island-16", "182": "Pastel and Darks 58 Palette", "183": "17 Pastels", "184": "NOSTALGIA15", "185": "Ocaso-17", "186": "Oh Hell, Pastel-15", "187": "Pollen-8", "188": "KULE-16", "189": "Hydrangea 11", "190": "Fluffy8", "191": "ST 8 R&B Remake", "192": "Neon Space-10", "193": "Cyclope6", "194": "Sy17", "195": "Syz15", "196": "TUI-15", "197": "Cave-8", "198": "Psygnosia-16", "199": "MarshMellow32", "200": "Lost Century 24", "201": "Finlal 11", "202": "Industrial Factory 16", "203": "Murder Mystery 16", "204": "Fate & Destiny 12", "205": "Vinik 24", "206": "YKB-22", "207": "Halloween-7", "208": "Graveyard-21", "209": "Steam Lords-16", "210": "Frostical-18", "211": "DeuteroSpill-9", "212": "Cool Bone 7", "213": "Muted Ally 6", "214": "EPHEMERA-12", "215": "Ink-5", "216": "Violet Dreams-8", "217": "Tinyfolks-5", "218": "Old Gold 7", "219": "Rosemoss-8", "220": "AAP-RadiantXV-15", "221": "AAP-Majesty XVII-17", "222": "Dead Weight-8", "223": "Mojave20", "224": "Petite-8", "225": "Petite-8 Afterdark", "226": "XAIUE-Radiant-22", "227": "Daruda 22", "228": "Firestorm-9", "229": "Borkfest-8", "230": "Spicy 07", "231": "Rust-6", "232": "Apricot-6", "233": "SuperNova 7", "234": "Pastry-5", "235": "Sandy 06", "236": "Illumination-5", "237": "NYX8", "238": "Dream Haze 8", "239": "OIL6", "240": "Regal10", "241": "Soft Demon 7", "242": "SGM-Palette 2-17", "243": "Midnight ablaze-7", "244": "Black Cherry-5", "245": "Sunset Red-5", "246": "INKPINK-6", "247": "Brash Pink-5", "248": "Pink Neon Sign 6", "249": "Enchanted Purple-12", "250": "Arch-11", "251": "Spacey Easter-17", "252": "Fornax Void I-254", "253": "Fornax Void II-128", "254": "Pixelwave-12", "255": "S1-6", "256": "Berry Nebula-8", "257": "ABYSS-9", "258": "Moonlight 15", "259": "Moonlit-39", "260": "H2O-10", "261": "Magic Waters 9", "262": "Moss-5", "263": "DEEP MAZE-7", "264": "Toxic Slime-5", "265": "Lush Green-6", "266": "Tsunami-5", "267": "Cryptic Ocean-6", "268": "Marsh Madness-5", "269": "OXYD-8", "270": "Pink&Green-8", "271": "Walking in the Woods 8", "272": "Paper 8", "273": "Sahara Pastell-7", "274": "Sunflower Painting 7", "275": "Art Hoe Aesthetic 7", "276": "Sky5-7", "277": "Ocean Glass-8", "278": "RoyalGuard-6", "279": "Eulbink-7", "280": "Winter Wonderland-8", "281": "Moon Squid 7", "282": "Stratus-5", "283": "Arctic Dust-5", "284": "CL8UDS", "285": "Lilac Skies 5", "286": "Sea of Fire-6", "287": "Autochrome 5", "288": "Tritanopia-5", "289": "Rabbit 7", "290": "Amiga 2600 NTSC-127", "291": "Amiga 2600 PAL-104", "292": "Amiga 2600 SECAM-8", "293": "Amiga 7800 M.E.S.S-256", "294": "Amiga 7800-256", "295": "Amstrad CPC-27", "296": "Apple II-15", "297": "Atari 8-Bit Series - GTIA-256", "298": "CGA-16", "299": "Commodore 64 - Pepto-16", "300": "Commodore 64 - Colodore-16", "301": "Commodore VIC-20-16", "302": "Colecovision-15", "303": "Japanese Machine Palette-16", "304": "Macintosh II-16", "305": "Macintosh 8-Bit System Palette-256", "306": "MSX-15", "307": "NES-55", "308": "PICO-8-16", "309": "RISC OS-16", "310": "SAM Coupe-128", "311": "Thomson MO5-16", "312": "VGA-244", "313": "Win 95-256", "314": "ZX Spectrum-15", "315": "GNOME 32", "316": "Electronic Crayon 22", "317": "Chip16", "318": "Deluxe Paint-222", "319": "FlatUI-20", "320": "MakeCode Arcade Palette-15", "321": "Oekaki-20", "322": "Legacy Paint-16", "323": "XP Paint-28", "324": "Vista Paint-28", "325": "Piet Palette-5", "326": "Japanese Woodblock Palette-12", "327": "Human Faces-94", "328": "HSV Palette-96", "329": "ST24 Christmas", "330": "Reds-24" } },
      { "type": "separator" },
      { "type": "note", "text": "Random" },
      { "type": "int", "name": "Main", "default": "0", "min": "0", "max": "1000000", "pos": "20" },
      { "type": "int", "name": "Color", "default": "0", "min": "0", "max": "1000000", "pos": "21" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2021/09/16." }
      ]
    },
    {
      "name": "Emboss-Relief", "lang": "en", "command": "fx_emboss_relief", "command_preview": "fx_emboss_relief_preview", "parameters": [
      { "type": "int", "name": "Radius", "default": "5", "min": "5", "max": "100", "pos": "1" },
      { "type": "float", "name": "Angle", "default": "0", "min": "-180", "max": "180", "pos": "2" },
      { "type": "float", "name": "Sigma", "default": ".5", "min": ".05", "max": "4", "pos": "3" },
      { "type": "float", "name": "Value Scale", "default": "2", "min": ".5", "max": "10", "pos": "4" },
      { "type": "choice", "name": "Output", "default": "0", "pos": "5", "choices": { "0": "Emboss", "1": "Relief" } },
      { "type": "bool", "name": "Output Color", "default": "1", "pos": "6" },
      { "type": "bool", "name": "Preserve Alpha?", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "8", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "9", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2021/12/07." }
      ]
    },
    {
      "name": "Fibonacci", "lang": "en", "command": "fx_rep_fibonacci", "command_preview": "fx_rep_fibonacci", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Main" },
      { "type": "choice", "name": "Fill Mode", "default": "1", "pos": "1", "choices": { "0": "Textile", "1": "Fill" } },
      { "type": "int", "name": "Iterations", "default": "10", "min": "3", "max": "20", "pos": "2" },
      { "type": "choice", "name": "Direction", "default": "0", "pos": "3", "choices": { "0": "Top Left", "1": "Top Right", "2": "Bottom Left", "3": "Bottom Right" } },
      { "type": "choice", "name": "Fibonacci Style", "default": "0", "pos": "4", "choices": { "0": "Corner", "1": "Spiral" } },
      { "type": "choice", "name": "Initial Orientation", "default": "0", "pos": "5", "choices": { "0": "Landscape", "1": "Portrait" } },
      { "type": "point", "name": "Center - Point", "position": "50,50", "pos": "6" },
      { "type": "choice", "name": "Boundary", "default": "0", "pos": "8", "choices": { "0": "Periodic", "1": "Mirror" } },
      { "type": "choice", "name": "Attachment", "default": "0", "pos": "9", "choices": { "0": "A", "1": "B" } },
      { "type": "int", "name": "Integer Scale", "default": "1", "min": "1", "max": "10", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "Coloring/Shading" },
      { "type": "choice", "name": "Palette", "default": "0", "pos": "11", "choices": { "0": "Normalized Grayscale", "1": "Black & White-2", "2": "Red-Green-Blue-3", "3": "Black with Red-Green-Blue-4", "4": "Black & White with Red-Green-Blue-5", "5": "Cyan-Magenta-Yellow-3", "6": "Cyan-Magenta-Yellow-Black-4", "7": "White-Cyan-Magenta-Yellow-Black-5", "8": "Red-Green-Blue with Cyan-Magenta-Yellow-6", "9": "1-Bit RGB-8", "10": "Aurora-256", "11": "Zenit-241", "12": "Game Builder Garage: Texture-Sprite Editor Palette-117", "13": "Duel-256", "14": "Hocus Pocus Palette-256", "15": "PLAYPAL-249", "16": "Sonic Robo Blast 2-256", "17": "Uzebox-256", "18": "Andrew Kensler - 16", "19": "Andrew Kensler - 32", "20": "Andrew Kensler - 54", "21": "AAP-Micro 12", "22": "AAP-16", "23": "AAP-64", "24": "AAP-RadiantPLUS-96", "25": "AAP-SPLENDOR128", "26": "AAP-DGA16", "27": "Cheerful-32", "28": "DB8", "29": "DB16", "30": "DB32", "31": "DB-ISO22", "32": "DimWiddy 17", "33": "DimWiddy 23", "34": "Endesga-4", "35": "Endesga-8", "36": "Endesga-16", "37": "Endesga-32", "38": "Endesga-36", "39": "Endesga-64", "40": "Famicube-64", "41": "Juicy-32", "42": "Juicy-56", "43": "XAIUE-22", "44": "15P-DX", "45": "20P-DX", "46": "24P-DX", "47": "Cabana-64", "48": "Fantasy 16", "49": "Fantasy 24", "50": "Tranquil Fantasy 23", "51": "Tranquility Plus 39", "52": "Faraway 48", "53": "Fleja Master Palette-33", "54": "Koni32", "55": "Linear Color Palette Basic-31", "56": "LEGO colors-43", "57": "Lego Colours 2021-40", "58": "Vines Flexible Linear Ramps-38", "59": "Arcade Standard 29", "60": "ARQ16", "61": "Atom-8", "62": "BLK 36", "63": "BLK-NEO-46", "64": "Broken Facility-40", "65": "Bubblegum-16", "66": "CPC BOY-32", "67": "Cade 15", "68": "Calder 8-11", "69": "CD-BAC-16", "70": "CG Arne-16", "71": "DinoKnight 16", "72": "||||-22", "73": "FZT Ethereal 16", "74": "Indecision-17", "75": "Island Joy 16", "76": "Journey-64", "77": "Shallowmarsh26", "78": "Lago Nenufar (Lake Water Lily)-19", "79": "Juicy 17", "80": "ChocolateGanache-96", "81": "Bright Winter 1-74", "82": "Bright Winter 2-83", "83": "Kawaii16", "84": "0xdb-01-17", "85": "GZXP-11", "86": "Chromatic16", "87": "Piet Coding Language-20", "88": "Matrix-96", "89": "Material Design-96", "90": "Rainbow-88", "91": "Rainbow-96", "92": "SCRJ-XXXVI-36", "93": "Pxls Default-32", "94": "Lospec500-42", "95": "Moderna-24", "96": "Oak21", "97": "Nature's Embrace 55", "98": "RBYPGO-94", "99": "New Worlds 46", "100": "Nauris-16", "101": "Dynamite-40", "102": "Interstate 28", "103": "Downgraded 32", "104": "Pear 36", "105": "Pineapple 32", "106": "Peachy Pop 16", "107": "Resurrect 32", "108": "Rosy 42", "109": "SLSO-CLR17", "110": "Softy 15", "111": "SPEC12", "112": "The Roarin 80's", "113": "Starmancer-52", "114": "SuperFuture25", "115": "SUNSHINE 35", "116": "Sweetie 16", "117": "Calm 48", "118": "Optimism-32", "119": "Taffy 16", "120": "Todayland Palette V2-25", "121": "TriRampo-12", "122": "r|place 2022-32", "123": "Tropical Cone 24", "124": "Vivid-17", "125": "SHIDO50+-72", "126": "Intacto14", "127": "Itatsi-23", "128": "ENOS16", "129": "Grixel Grotto-16", "130": "Superb 8", "131": "Undertones-17", "132": "Tango-28", "133": "Cheese Palette-28", "134": "Equpix 15", "135": "Zughy 32", "136": "Voodo34", "137": "Franzston 30", "138": "Night 16", "139": "Star 29", "140": "Star 34", "141": "Still-Life-14", "142": "SimpleJPC-16", "143": "Acid 15", "144": "Battery 24", "145": "Clumpy 18", "146": "Cthulhu-16", "147": "Crimso 11-16", "148": "Copper-Tech-16", "149": "DRZ15A", "150": "Eggy 15", "151": "Europa 16", "152": "GreyT-bit-8", "153": "Jewel-15", "154": "Polar 11", "155": "Sheltzy 32", "156": "Wyrm 24", "157": "Yume Nikki-24", "158": "Rube-Goldberg-9", "159": "BoomBoom-7", "160": "Generic-8", "161": "Crayola Blind-9", "162": "FunkyFuture8", "163": "The Golden Wall Palette-7", "164": "Matriax8c", "165": "NT1H-26", "166": "JerryPie 22", "167": "Nineties Nine-9", "168": "On70-35", "169": "ANB16", "170": "Retrocal-8", "171": "Punolit-21", "172": "Luap 40", "173": "Autum Villan 6", "174": "Autum 15", "175": "Autum 15 [Yellow]", "176": "Galaxy Flame-16", "177": "Cretaceous-16", "178": "Antiquity16", "179": "Mushroom-14", "180": "Aerugo-32", "181": "Hotel Paintings 6", "182": "Nopal-12", "183": "Brightness GPY-3", "184": "Blessing-5", "185": "Fairydust 8", "186": "Vanilla MilkShake-16", "187": "Fuzzy Four-4", "188": "Fairy Tales-8", "189": "Naji 16", "190": "Easter Island-16", "191": "Pastel and Darks 58 Palette", "192": "17 Pastels", "193": "NOSTALGIA15", "194": "Ocaso-17", "195": "Oh Hell, Pastel-15", "196": "Pollen-8", "197": "KULE-16", "198": "Hydrangea 11", "199": "Fluffy8", "200": "ST 8 R&B Remake", "201": "Neon Space-10", "202": "Cyclope6", "203": "Sy17", "204": "Syz15", "205": "TUI-15", "206": "Cave-8", "207": "Psygnosia-16", "208": "MarshMellow32", "209": "Lost Century 24", "210": "Finlal 11", "211": "Industrial Factory 16", "212": "Murder Mystery 16", "213": "Fate & Destiny 12", "214": "Vinik 24", "215": "YKB-22", "216": "Halloween-7", "217": "Graveyard-21", "218": "Steam Lords-16", "219": "Frostical-18", "220": "DeuteroSpill-9", "221": "Cool Bone 7", "222": "Muted Ally 6", "223": "EPHEMERA-12", "224": "Ink-5", "225": "Violet Dreams-8", "226": "Tinyfolks-5", "227": "Old Gold 7", "228": "Rosemoss-8", "229": "AAP-RadiantXV-15", "230": "AAP-Majesty XVII-17", "231": "Dead Weight-8", "232": "Mojave20", "233": "Petite-8", "234": "Petite-8 Afterdark", "235": "XAIUE-Radiant-22", "236": "Daruda 22", "237": "Firestorm-9", "238": "Borkfest-8", "239": "Spicy 07", "240": "Rust-6", "241": "Apricot-6", "242": "SuperNova 7", "243": "Pastry-5", "244": "Sandy 06", "245": "Illumination-5", "246": "NYX8", "247": "Dream Haze 8", "248": "OIL6", "249": "Regal10", "250": "Soft Demon 7", "251": "SGM-Palette 2-17", "252": "Midnight ablaze-7", "253": "Black Cherry-5", "254": "Sunset Red-5", "255": "INKPINK-6", "256": "Brash Pink-5", "257": "Pink Neon Sign 6", "258": "Enchanted Purple-12", "259": "Arch-11", "260": "Spacey Easter-17", "261": "Fornax Void I-254", "262": "Fornax Void II-128", "263": "Pixelwave-12", "264": "S1-6", "265": "Berry Nebula-8", "266": "ABYSS-9", "267": "Moonlight 15", "268": "Moonlit-39", "269": "H2O-10", "270": "Magic Waters 9", "271": "Bluem0ld-4", "272": "Moss-5", "273": "DEEP MAZE-7", "274": "Toxic Slime-5", "275": "Lush Green-6", "276": "Tsunami-5", "277": "Cryptic Ocean-6", "278": "Marsh Madness-5", "279": "OXYD-8", "280": "Pink&Green-8", "281": "Walking in the Woods 8", "282": "Paper 8", "283": "Sahara Pastell-7", "284": "Sunflower Painting 7", "285": "Art Hoe Aesthetic 7", "286": "Sky5-7", "287": "Ocean Glass-8", "288": "RoyalGuard-6", "289": "Eulbink-7", "290": "Winter Wonderland-8", "291": "Moon Squid 7", "292": "Stratus-5", "293": "Arctic Dust-5", "294": "CL8UDS", "295": "Lilac Skies 5", "296": "Sea of Fire-6", "297": "Autochrome 3", "298": "Autochrome 5", "299": "GB Default 1-4", "300": "GB Default 2-4", "301": "GB Andrade-4", "302": "GB Blue Seni-4", "303": "GB Blackzone-4", "304": "GB Suburb-4", "305": "GB Crimson-4", "306": "GB Didi-4", "307": "GB Dirty-4", "308": "GB Arne-4", "309": "GB Easy-4", "310": "GB Forest-4", "311": "GB Harsh Green-4", "312": "GB Light Green-4", "313": "GB Nostalgia-4", "314": "GB Platinum-4", "315": "GB Kirokaze-4", "316": "GB Cyber-4", "317": "GB Wish-4", "318": "GB Grapefruit-4", "319": "GB Ice Cream-4", "320": "GB Red_Blue-4", "321": "Gold GB-4", "322": "GB Chocolate-4", "323": "GB Gray-4", "324": "GB Spacehaze-4", "325": "GB Purple Dawn-4", "326": "Moon Crystal-4", "327": "ARNE4", "328": "Autumn Chill-4", "329": "CherryMelon-4", "330": "HallowPumpkin-4", "331": "Hollow-4", "332": "Lavender4", "333": "MAW-4", "334": "Voltage Warning-4", "335": "Tritanopia-5", "336": "Rabbit 7", "337": "Amiga 2600 NTSC-127", "338": "Amiga 2600 PAL-104", "339": "Amiga 2600 SECAM-8", "340": "Amiga 7800 M.E.S.S-256", "341": "Amiga 7800-256", "342": "Amstrad CPC-27", "343": "Apple II-15", "344": "Atari 8-Bit Series - GTIA-256", "345": "CGA-16", "346": "CGA Mode 0 [Low]-4", "347": "CGA Mode 0 [High]-4", "348": "CGA Mode 1 [Low]-4", "349": "CGA Mode 1 [High]-4", "350": "CGA Mode 2 [Low]-4", "351": "CGA Mode 2 [High]-4", "352": "Commodore 64 - Pepto-16", "353": "Commodore 64 - Colodore-16", "354": "Commodore VIC-20-16", "355": "Colecovision-15", "356": "Japanese Machine Palette-16", "357": "Macintosh II-16", "358": "Macintosh 8-Bit System Palette-256", "359": "MSX-15", "360": "NES-55", "361": "PICO-8-16", "362": "RISC OS-16", "363": "SAM Coupe-128", "364": "Thomson MO5-16", "365": "TRS-80 Color Computer Palette-4", "366": "Virtual Boy interpreted-4", "367": "VGA-244", "368": "Win 95-256", "369": "ZX Spectrum-15", "370": "GNOME 32", "371": "Electronic Crayon 22", "372": "Chip16", "373": "Deluxe Paint-222", "374": "FlatUI-20", "375": "MakeCode Arcade Palette-15", "376": "Oekaki-20", "377": "Legacy Paint-16", "378": "XP Paint-28", "379": "Vista Paint-28", "380": "Piet Palette-5", "381": "Japanese Woodblock Palette-12", "382": "Human Faces-94", "383": "HSV Palette-96", "384": "ST24 Christmas", "385": "Reds-24" } },
      { "type": "float", "name": "Cycle Color(%)", "default": "0", "min": "0", "max": "100", "pos": "12" },
      { "type": "int", "name": "Color Random Ordering Seed", "default": "2500", "min": "0", "max": "5000", "pos": "13" },
      { "type": "int", "name": "Color Random Ordering Seed A", "default": "100", "min": "0", "max": "5000", "pos": "14" },
      { "type": "int", "name": "Color Random Ordering Seed B", "default": "500", "min": "0", "max": "5000", "pos": "15" },
      { "type": "bool", "name": "Negate?", "default": "0", "pos": "16" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian Latest update: 2023/9/11." }
      ]
    },
    {
      "name": "Fragment Blur", "lang": "en", "command": "gui_rep_frblur", "command_preview": "gui_rep_frblur_preview", "parameters": [
      { "type": "note", "text": "Inspired by the Paint.NET Fragment Blur filter, this implementation improves upon it by adding color space options, preservation of original image as a option, boundary condition option, and interpolation option.\n\nWarning - Preview may not be accurate with image with completely opaque images. The output will not show any transparency regardless." },
      { "type": "separator" },
      { "type": "note", "text": "Main Setting" },
      { "type": "choice", "name": "Color Space", "default": "0", "pos": "1", "choices": { "0": "RGB", "1": "sRGB", "2": "RYB", "3": "CMYK", "4": "HCY", "5": "HSI", "6": "HSL", "7": "HSV", "8": "LAB", "9": "LCH" } },
      { "type": "int", "name": "Additional Duplicates Count", "default": "10", "min": "2", "max": "100", "pos": "2" },
      { "type": "float", "name": "Half Image-Diagonal (%)", "default": "5", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Angle", "default": "0", "min": "-180", "max": "180", "pos": "4" },
      { "type": "bool", "name": "Superimpose with Original?", "default": "0", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Secondary Setting" },
      { "type": "choice", "name": "Boundary", "default": "1", "pos": "6", "choices": { "0": "None", "1": "Neumann", "2": "Periodic", "3": "Mirror" } },
      { "type": "bool", "name": "Shift Linear Interpolation?", "default": "0", "pos": "7" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "8", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "9", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Reptorian      Latest update: 2019/9/26." }
      ]
    },
    {
      "name": "Gaussian Blur By Color Space", "lang": "en", "command": "fx_rep_blur_cs", "command_preview": "fx_rep_blur_cs_preview", "parameters": [
      { "type": "float", "name": "XY-Amplitude", "default": "3", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "X-Amplitude", "default": "0", "min": "0", "max": "20", "pos": "2" },
      { "type": "float", "name": "Y-Amplitude", "default": "0", "min": "0", "max": "20", "pos": "3" },
      { "type": "choice", "name": "Boundary", "default": "1", "pos": "4", "choices": { "0": "Black", "1": "Nearest" } },
      { "type": "separator" },
      { "type": "choice", "name": "Color Space", "default": "0", "pos": "5", "choices": { "0": "RGB", "1": "SRGB", "2": "RYB", "3": "CMY", "4": "CMYKA", "5": "HCY", "6": "HSI", "7": "HSL", "8": "HSV", "9": "LAB", "10": "LCH" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "6", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "7", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2020/10/04." }
      ]
    },
    {
      "name": "Glass Vignette", "lang": "en", "command": "gui_rep_gv", "command_preview": "gui_rep_gv_preview", "parameters": [
      { "type": "note", "text": "Distorts images as if it is based from the view of a bulged car mirror or camera len. This G'MIC filter is a heavily extended version of <a href=\"https://forums.getpaint.net/topic/28355-trs-glass-vignette/\">TR's Glass Vignette</a> plugin made by TechnoRobbo for Paint.NET. It can also be used for generating abstract art as well." },
      { "type": "separator" },
      { "type": "note", "text": "Refraction Settings" },
      { "type": "float", "name": "Refraction (%)", "default": "100", "min": "-200", "max": "200", "pos": "1" },
      { "type": "float", "name": "Refraction Power (%)", "default": "0", "min": "-200", "max": "200", "pos": "2" },
      { "type": "float", "name": "Len Size (%)", "default": "100", "min": "25", "max": "200", "pos": "3" },
      { "type": "float", "name": "Chromatic Aberration (%)", "default": "0", "min": "-100", "max": "100", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Transformations Settings" },
      { "type": "note", "text": "Preliminary Image Transformations" },
      { "type": "point", "name": "Preliminary Image Shift", "position": "50,50", "pos": "5" },
      { "type": "float", "name": "Image Additional Zoom (%)", "default": "0", "min": "0", "max": "500", "pos": "7" },
      { "type": "float", "name": "Image Angle", "default": "0", "min": "-180", "max": "180", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Distortion Transformations" },
      { "type": "float", "name": "Distortion Scale by X-Axis (%)", "default": "100", "min": "0", "max": "1000", "pos": "9" },
      { "type": "float", "name": "Distortion Scale by Y-Axis (%)", "default": "100", "min": "0", "max": "1000", "pos": "10" },
      { "type": "float", "name": "Distortion Scale by XY-Axis (%)", "default": "100", "min": "0.01", "max": "500", "pos": "11" },
      { "type": "float", "name": "Distortion Angle", "default": "0", "min": "-180", "max": "180", "pos": "12" },
      { "type": "point", "name": "Distortion Offset", "position": "50,50", "pos": "13" },
      { "type": "note", "text": "When Distortion Scale by X-Axis and/or Y-Axis is 0, then distortion will be based on image ratio." },
      { "type": "separator" },
      { "type": "note", "text": "Processing Settings" },
      { "type": "choice", "name": "Colour Space", "default": "0", "pos": "15", "choices": { "0": "RGB", "1": "sRGB", "2": "RYB", "3": "CMY", "4": "CMYK", "5": "HCY", "6": "HSI", "7": "HSL", "8": "HSV", "9": "LAB", "10": "LCH", "11": "YIQ", "12": "YUV", "13": "YCbCr", "14": "YCbCrGLIC", "15": "XYZ", "16": "YES", "17": "Kodak 1", "18": "Ohta" } },
      { "type": "choice", "name": "Boundary", "default": "3", "pos": "16", "choices": { "0": "None", "1": "Neumann", "2": "Periodic", "3": "Mirror" } },
      { "type": "choice", "name": "Interpolation", "default": "5", "pos": "17", "choices": { "0": "Nearest", "1": "Average", "2": "Linear", "3": "Grid", "4": "Bicubic", "5": "Lanczos" } },
      { "type": "float", "name": "Subpixel", "default": "1", "min": "0", "max": "2", "pos": "18" },
      { "type": "separator" },
      { "type": "note", "text": "Preview Settings" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "19", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "20", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2021/04/06." }
      ]
    },
    {
      "name": "Graduated Filter", "lang": "en", "command": "fx_rep_graduated_filter", "command_preview": "fx_rep_graduated_filter_preview", "parameters": [
      { "type": "float", "name": "Strength (%)", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Luminosity Filtering Strength (%)", "default": "100", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Placement (%)", "default": "50", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Filtering Angle", "default": "0", "min": "-180", "max": "180", "pos": "4" },
      { "type": "color", "name": "Graduated Filter Color", "default": "0,0,0", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "8", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "9", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian Latest update: 2020/1/4." }
      ]
    },
    {
      "name": "Grouped Pixel Axis-Based Shift", "lang": "en", "command": "fx_rep_sptbwgp", "command_preview": "fx_rep_sptbwgp_preview", "parameters": [
      { "type": "note", "text": "Based off MadJik's Paint.NET Gravity Plugin. New feature are shift position, and influence factor." },
      { "type": "separator" },
      { "type": "float", "name": "Shift Position (%)", "default": "0", "min": "-100", "max": "100", "pos": "1" },
      { "type": "float", "name": "Influence Factor (%)", "default": "0", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Threshold (%)", "default": "0", "min": "0", "max": "100", "pos": "3" },
      { "type": "choice", "name": "Axis", "default": "0", "pos": "4", "choices": { "0": "Horizontal", "1": "Vertical" } },
      { "type": "value", "value": "stored_values_here", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2025/11/20." }
      ]
    },
    {
      "name": "Henon Phase Diagram", "lang": "en", "command": "fx_rep_henon_phase_diagram", "command_preview": "fx_rep_henon_phase_diagram_preview", "parameters": [
      { "type": "note", "text": "Creates Henon Phase Diagram.\n\nWarning!: If your image does not show up as expected, you may have to increase points per line and/or lines. Preview is inaccurate!" },
      { "type": "separator" },
      { "type": "note", "text": "Main" },
      { "type": "float", "name": "A-Factor", "default": "2.569", "min": "-3.1415", "max": "3.1415", "pos": "1" },
      { "type": "int", "name": "Lines", "default": "500", "min": "1", "max": "1000000", "pos": "2" },
      { "type": "int", "name": "Points Per Line", "default": "1000", "min": "1", "max": "2000", "pos": "3" },
      { "type": "float", "name": "X0-Start", "default": "-.5", "min": "-5", "max": "0", "pos": "4" },
      { "type": "float", "name": "X0-End", "default": ".5", "min": "0", "max": "5", "pos": "5" },
      { "type": "int", "name": "X0-Increments", "default": "8", "min": "1", "max": "14", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Transformation" },
      { "type": "float", "name": "Scale", "default": "1", "min": ".01", "max": "4", "pos": "7" },
      { "type": "float", "name": "Rotation", "default": "0", "min": "-180", "max": "180", "pos": "8" },
      { "type": "point", "name": "Position", "position": "50,50", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Post-Processing" },
      { "type": "float", "name": "Subpixel Level", "default": "0", "min": "0", "max": "10", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Coloring" },
      { "type": "note", "text": "<u>Preliminary</u>" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "12", "choices": { "0": "Grayscale", "1": "HSX", "2": "Palette" } },
      { "type": "bool", "name": "Use Alpha?", "default": "0", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "<u>Additional</u>" },
      { "type": "choice", "name": "Gray Output", "default": "0", "pos": "14", "choices": { "0": "Normalized", "1": "Cut", "2": "Threshold" } },
      { "type": "float", "name": "Multiplier", "default": "1", "min": ".01", "max": "50", "pos": "15" },
      { "type": "choice", "name": "HSX Mode", "default": "2", "pos": "16", "choices": { "0": "HCY", "1": "HSI", "2": "HSL/HSV" } },
      { "type": "choice", "name": "Palette", "default": "0", "pos": "17", "choices": { "0": "Red-Green-Blue-3", "1": "Black with Red-Green-Blue-4", "2": "Black & White with Red-Green-Blue-5", "3": "Cyan-Magenta-Yellow-3", "4": "Cyan-Magenta-Yellow-Black-4", "5": "White-Cyan-Magenta-Yellow-Black-5", "6": "Red-Green-Blue with Cyan-Magenta-Yellow-6", "7": "1-Bit RGB-8", "8": "Aurora-256", "9": "Zenit-241", "10": "Game Builder Garage: Texture-Sprite Editor Palette-117", "11": "Duel-256", "12": "Hocus Pocus Palette-256", "13": "PLAYPAL-249", "14": "Sonic Robo Blast 2-256", "15": "Uzebox-256", "16": "Andrew Kensler - 16", "17": "Andrew Kensler - 32", "18": "Andrew Kensler - 54", "19": "AAP-Micro 12", "20": "AAP-16", "21": "AAP-64", "22": "AAP-RadiantPLUS-96", "23": "AAP-SPLENDOR128", "24": "AAP-DGA16", "25": "Cheerful-32", "26": "DB8", "27": "DB16", "28": "DB32", "29": "DB-ISO22", "30": "DimWiddy 17", "31": "DimWiddy 23", "32": "Endesga-4", "33": "Endesga-8", "34": "Endesga-16", "35": "Endesga-32", "36": "Endesga-36", "37": "Endesga-64", "38": "Famicube-64", "39": "Juicy-32", "40": "Juicy-56", "41": "XAIUE-22", "42": "15P-DX", "43": "20P-DX", "44": "24P-DX", "45": "Cabana-64", "46": "Fantasy 16", "47": "Fantasy 24", "48": "Tranquil Fantasy 23", "49": "Tranquility Plus 39", "50": "Faraway 48", "51": "Fleja Master Palette-33", "52": "Koni32", "53": "Linear Color Palette Basic-31", "54": "LEGO colors-43", "55": "Lego Colours 2021-40", "56": "Vines Flexible Linear Ramps-38", "57": "Arcade Standard 29", "58": "ARQ16", "59": "Atom-8", "60": "BLK 36", "61": "BLK-NEO-46", "62": "Broken Facility-40", "63": "Bubblegum-16", "64": "CPC BOY-32", "65": "Cade 15", "66": "Calder 8-11", "67": "CD-BAC-16", "68": "CG Arne-16", "69": "DinoKnight 16", "70": "||||-22", "71": "FZT Ethereal 16", "72": "Indecision-17", "73": "Island Joy 16", "74": "Journey-64", "75": "Shallowmarsh26", "76": "Lago Nenufar (Lake Water Lily)-19", "77": "Juicy 17", "78": "ChocolateGanache-96", "79": "Bright Winter 1-74", "80": "Bright Winter 2-83", "81": "Kawaii16", "82": "0xdb-01-17", "83": "GZXP-11", "84": "Chromatic16", "85": "Piet Coding Language-20", "86": "Matrix-96", "87": "Material Design-96", "88": "Rainbow-88", "89": "Rainbow-96", "90": "SCRJ-XXXVI-36", "91": "Pxls Default-32", "92": "Lospec500-42", "93": "Moderna-24", "94": "Oak21", "95": "Nature's Embrace 55", "96": "RBYPGO-94", "97": "New Worlds 46", "98": "Nauris-16", "99": "Dynamite-40", "100": "Interstate 28", "101": "Downgraded 32", "102": "Pear 36", "103": "Pineapple 32", "104": "Peachy Pop 16", "105": "Resurrect 32", "106": "Rosy 42", "107": "SLSO-CLR17", "108": "Softy 15", "109": "SPEC12", "110": "The Roarin 80's", "111": "Starmancer-52", "112": "SuperFuture25", "113": "SUNSHINE 35", "114": "Sweetie 16", "115": "Calm 48", "116": "Optimism-32", "117": "Taffy 16", "118": "Todayland Palette V2-25", "119": "TriRampo-12", "120": "r|place 2022-32", "121": "Tropical Cone 24", "122": "Vivid-17", "123": "SHIDO50+-72", "124": "Intacto14", "125": "Itatsi-23", "126": "ENOS16", "127": "Grixel Grotto-16", "128": "Superb 8", "129": "Undertones-17", "130": "Tango-28", "131": "Cheese Palette-28", "132": "Equpix 15", "133": "Zughy 32", "134": "Voodo34", "135": "Franzston 30", "136": "Night 16", "137": "Star 29", "138": "Star 34", "139": "Still-Life-14", "140": "SimpleJPC-16", "141": "Acid 15", "142": "Battery 24", "143": "Clumpy 18", "144": "Cthulhu-16", "145": "Crimso 11-16", "146": "Copper-Tech-16", "147": "DRZ15A", "148": "Eggy 15", "149": "Europa 16", "150": "GreyT-bit-8", "151": "Jewel-15", "152": "Polar 11", "153": "Sheltzy 32", "154": "Wyrm 24", "155": "Yume Nikki-24", "156": "Rube-Goldberg-9", "157": "BoomBoom-7", "158": "Generic-8", "159": "Crayola Blind-9", "160": "FunkyFuture8", "161": "The Golden Wall Palette-7", "162": "Matriax8c", "163": "NT1H-26", "164": "JerryPie 22", "165": "Nineties Nine-9", "166": "On70-35", "167": "ANB16", "168": "Retrocal-8", "169": "Punolit-21", "170": "Luap 40", "171": "Autum Villan 6", "172": "Autum 15", "173": "Autum 15 [Yellow]", "174": "Galaxy Flame-16", "175": "Cretaceous-16", "176": "Antiquity16", "177": "Mushroom-14", "178": "Aerugo-32", "179": "Hotel Paintings 6", "180": "Nopal-12", "181": "Brightness GPY-3", "182": "Blessing-5", "183": "Fairydust 8", "184": "Vanilla MilkShake-16", "185": "Fuzzy Four-4", "186": "Fairy Tales-8", "187": "Naji 16", "188": "Easter Island-16", "189": "Pastel and Darks 58 Palette", "190": "17 Pastels", "191": "NOSTALGIA15", "192": "Ocaso-17", "193": "Oh Hell, Pastel-15", "194": "Pollen-8", "195": "KULE-16", "196": "Hydrangea 11", "197": "Fluffy8", "198": "ST 8 R&B Remake", "199": "Neon Space-10", "200": "Cyclope6", "201": "Sy17", "202": "Syz15", "203": "TUI-15", "204": "Cave-8", "205": "Psygnosia-16", "206": "MarshMellow32", "207": "Lost Century 24", "208": "Finlal 11", "209": "Industrial Factory 16", "210": "Murder Mystery 16", "211": "Fate & Destiny 12", "212": "Vinik 24", "213": "YKB-22", "214": "Halloween-7", "215": "Graveyard-21", "216": "Steam Lords-16", "217": "Frostical-18", "218": "DeuteroSpill-9", "219": "Cool Bone 7", "220": "Muted Ally 6", "221": "EPHEMERA-12", "222": "Ink-5", "223": "Violet Dreams-8", "224": "Tinyfolks-5", "225": "Old Gold 7", "226": "Rosemoss-8", "227": "AAP-RadiantXV-15", "228": "AAP-Majesty XVII-17", "229": "Dead Weight-8", "230": "Mojave20", "231": "Petite-8", "232": "Petite-8 Afterdark", "233": "XAIUE-Radiant-22", "234": "Daruda 22", "235": "Firestorm-9", "236": "Borkfest-8", "237": "Spicy 07", "238": "Rust-6", "239": "Apricot-6", "240": "SuperNova 7", "241": "Pastry-5", "242": "Sandy 06", "243": "Illumination-5", "244": "NYX8", "245": "Dream Haze 8", "246": "OIL6", "247": "Regal10", "248": "Soft Demon 7", "249": "SGM-Palette 2-17", "250": "Midnight ablaze-7", "251": "Black Cherry-5", "252": "Sunset Red-5", "253": "INKPINK-6", "254": "Brash Pink-5", "255": "Pink Neon Sign 6", "256": "Enchanted Purple-12", "257": "Arch-11", "258": "Spacey Easter-17", "259": "Fornax Void I-254", "260": "Fornax Void II-128", "261": "Pixelwave-12", "262": "S1-6", "263": "Berry Nebula-8", "264": "ABYSS-9", "265": "Moonlight 15", "266": "Moonlit-39", "267": "H2O-10", "268": "Magic Waters 9", "269": "Bluem0ld-4", "270": "Moss-5", "271": "DEEP MAZE-7", "272": "Toxic Slime-5", "273": "Lush Green-6", "274": "Tsunami-5", "275": "Cryptic Ocean-6", "276": "Marsh Madness-5", "277": "OXYD-8", "278": "Pink&Green-8", "279": "Walking in the Woods 8", "280": "Paper 8", "281": "Sahara Pastell-7", "282": "Sunflower Painting 7", "283": "Art Hoe Aesthetic 7", "284": "Sky5-7", "285": "Ocean Glass-8", "286": "RoyalGuard-6", "287": "Eulbink-7", "288": "Winter Wonderland-8", "289": "Moon Squid 7", "290": "Stratus-5", "291": "Arctic Dust-5", "292": "CL8UDS", "293": "Lilac Skies 5", "294": "Sea of Fire-6", "295": "Autochrome 3", "296": "Autochrome 5", "297": "GB Default 1-4", "298": "GB Default 2-4", "299": "GB Andrade-4", "300": "GB Blue Seni-4", "301": "GB Blackzone-4", "302": "GB Suburb-4", "303": "GB Crimson-4", "304": "GB Didi-4", "305": "GB Dirty-4", "306": "GB Arne-4", "307": "GB Easy-4", "308": "GB Forest-4", "309": "GB Harsh Green-4", "310": "GB Light Green-4", "311": "GB Nostalgia-4", "312": "GB Platinum-4", "313": "GB Kirokaze-4", "314": "GB Cyber-4", "315": "GB Wish-4", "316": "GB Grapefruit-4", "317": "GB Ice Cream-4", "318": "GB Red_Blue-4", "319": "Gold GB-4", "320": "GB Chocolate-4", "321": "GB Gray-4", "322": "GB Spacehaze-4", "323": "GB Purple Dawn-4", "324": "Moon Crystal-4", "325": "ARNE4", "326": "Autumn Chill-4", "327": "CherryMelon-4", "328": "HallowPumpkin-4", "329": "Hollow-4", "330": "Lavender4", "331": "MAW-4", "332": "Voltage Warning-4", "333": "Tritanopia-5", "334": "Rabbit 7", "335": "Amiga 2600 NTSC-127", "336": "Amiga 2600 PAL-104", "337": "Amiga 2600 SECAM-8", "338": "Amiga 7800 M.E.S.S-256", "339": "Amiga 7800-256", "340": "Amstrad CPC-27", "341": "Apple II-15", "342": "Atari 8-Bit Series - GTIA-256", "343": "CGA-16", "344": "CGA Mode 0 [Low]-4", "345": "CGA Mode 0 [High]-4", "346": "CGA Mode 1 [Low]-4", "347": "CGA Mode 1 [High]-4", "348": "CGA Mode 2 [Low]-4", "349": "CGA Mode 2 [High]-4", "350": "Commodore 64 - Pepto-16", "351": "Commodore 64 - Colodore-16", "352": "Commodore VIC-20-16", "353": "Colecovision-15", "354": "Japanese Machine Palette-16", "355": "Macintosh II-16", "356": "Macintosh 8-Bit System Palette-256", "357": "MSX-15", "358": "NES-55", "359": "PICO-8-16", "360": "RISC OS-16", "361": "SAM Coupe-128", "362": "Thomson MO5-16", "363": "TRS-80 Color Computer Palette-4", "364": "Virtual Boy interpreted-4", "365": "VGA-244", "366": "Win 95-256", "367": "ZX Spectrum-15", "368": "GNOME 32", "369": "Electronic Crayon 22", "370": "Chip16", "371": "Deluxe Paint-222", "372": "FlatUI-20", "373": "MakeCode Arcade Palette-15", "374": "Oekaki-20", "375": "Legacy Paint-16", "376": "XP Paint-28", "377": "Vista Paint-28", "378": "Piet Palette-5", "379": "Japanese Woodblock Palette-12", "380": "Human Faces-94", "381": "HSV Palette-96", "382": "ST24 Christmas", "383": "Reds-24" } },
      { "type": "int", "name": "Color Count", "default": "20", "min": "2", "max": "360", "pos": "18", "visibility": "0" },
      { "type": "int", "name": "Color Seed", "default": "0", "min": "0", "max": "100000", "pos": "19", "visibility": "0" },
      { "type": "float", "name": "Hue Shift(%)", "default": "0", "min": "0", "max": "100", "pos": "20", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian Latest update: 2023/9/11." }
      ]
    },
    {
      "name": "Hitomezashi", "lang": "en", "command": "fx_rep_hitomezashi", "command_preview": "fx_rep_hitomezashi_preview", "parameters": [
      { "type": "note", "text": "Initial" },
      { "type": "separator" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "1", "choices": { "0": "One String", "1": "Two Strings" } },
      { "type": "int", "name": "Pixel Size", "default": "5", "min": "1", "max": "20", "pos": "2" },
      { "type": "choice", "name": "Symmetry", "default": "0", "pos": "3", "choices": { "0": "None", "1": "Symmetry A", "2": "Symmetry B", "3": "Symmetry C", "4": "Symmetry D" } },
      { "type": "choice", "name": "Output", "default": "0", "pos": "4", "choices": { "0": "Inside", "1": "Resized" } },
      { "type": "choice", "name": "Background Color", "default": "0", "pos": "5", "choices": { "0": "Black", "1": "White" } },
      { "type": "int", "name": "Background Value", "default": "0", "min": "0", "max": "255", "pos": "6" },
      { "type": "color", "name": "Background Color", "default": "255,255,255", "pos": "7" },
      { "type": "note", "text": "\n\nString" },
      { "type": "separator" },
      { "type": "text", "name": "String", "default": "", "pos": "10" },
      { "type": "text", "name": "String A", "default": "", "pos": "11" },
      { "type": "text", "name": "String B", "default": "", "pos": "12" },
      { "type": "button", "name": "⠀Randomize String⠀", "pos": "13" },
      { "type": "button", "name": "⠀Randomize String A⠀", "pos": "14" },
      { "type": "button", "name": "⠀Randomize String B⠀", "pos": "15" },
      { "type": "button", "name": "⠀⠀Randomize Both⠀⠀", "pos": "16" },
      { "type": "note", "text": "\nNote : Randomize has been programmed to generate binary as characters are converted as binary in the end.\n\n" },
      { "type": "note", "text": "Coloring and Shading" },
      { "type": "separator" },
      { "type": "choice", "name": "Mode", "default": "3", "pos": "17", "choices": { "0": "Base Binary", "1": "Grayscale", "2": "Monotone", "3": "Duotone", "4": "Palette" } },
      { "type": "float", "name": "Gray A", "default": "0", "min": "0", "max": "255", "pos": "18" },
      { "type": "float", "name": "Gray B", "default": "255", "min": "0", "max": "255", "pos": "19" },
      { "type": "color", "name": "Background Color", "default": "128,128,128", "pos": "20" },
      { "type": "color", "name": "Color A", "default": "241,255,85", "pos": "23" },
      { "type": "color", "name": "Color B", "default": "159,26,157", "pos": "26" },
      { "type": "choice", "name": "Overall Coloring Palette", "default": "0", "pos": "29", "choices": { "0": "Pre-defined Palettes", "1": "Random", "2": "Random Split-Gradients" } },
      { "type": "choice", "name": "Overall Color Space", "default": "0", "pos": "30", "choices": { "0": "RGB", "1": "HSL" } },
      { "type": "choice", "name": "Overall Palette Collection", "default": "0", "pos": "31", "choices": { "0": "256 Colors Collection", "1": "Pixel Art Palettes" } },
      { "type": "choice", "name": "Overall Palette", "default": "44", "pos": "32", "choices": { "0": "Default", "1": "HSV", "2": "Lines", "3": "Hot", "4": "Cool", "5": "Jet", "6": "Flag", "7": "Cube", "8": "Rainbow", "9": "Parula", "10": "Spring", "11": "Summer", "12": "Autumn", "13": "Winter", "14": "Bone", "15": "Copper", "16": "Pink", "17": "Vga", "18": "Algae", "19": "Amp", "20": "Balance", "21": "Curl", "22": "Deep", "23": "Delta", "24": "Dense", "25": "Diff", "26": "Gray", "27": "Haline", "28": "Ice", "29": "Matter", "30": "Oxy", "31": "Phase", "32": "Rain", "33": "Solar", "34": "Speed", "35": "Tarn", "36": "Tempo", "37": "Thermal", "38": "Topo", "39": "Turbid", "40": "Aurora", "41": "Hocus Pocus", "42": "SRB2", "43": "Uzebox", "44": "Amiga 7800", "45": "Amiga7800 MESS", "46": "Fornax Void I" } },
      { "type": "choice", "name": "Overall Palette", "default": "10", "pos": "33", "choices": { "0": "Black & White-2", "1": "Red-Green-Blue-3", "2": "Black with Red-Green-Blue-4", "3": "Black & White with Red-Green-Blue-5", "4": "Cyan-Magenta-Yellow-3", "5": "Cyan-Magenta-Yellow-Black-4", "6": "White-Cyan-Magenta-Yellow-Black-5", "7": "Red-Green-Blue with Cyan-Magenta-Yellow-6", "8": "1-Bit RGB-8", "9": "Aurora-256", "10": "Zenit-241", "11": "Game Builder Garage: Texture-Sprite Editor Palette-117", "12": "Duel-256", "13": "Hocus Pocus Palette-256", "14": "PLAYPAL-249", "15": "Sonic Robo Blast 2-256", "16": "Uzebox-256", "17": "Andrew Kensler - 16", "18": "Andrew Kensler - 32", "19": "Andrew Kensler - 54", "20": "AAP-Micro 12", "21": "AAP-16", "22": "AAP-64", "23": "AAP-RadiantPLUS-96", "24": "AAP-SPLENDOR128", "25": "AAP-DGA16", "26": "Cheerful-32", "27": "DB8", "28": "DB16", "29": "DB32", "30": "DB-ISO22", "31": "DimWiddy 17", "32": "DimWiddy 23", "33": "Endesga-4", "34": "Endesga-8", "35": "Endesga-16", "36": "Endesga-32", "37": "Endesga-36", "38": "Endesga-64", "39": "Famicube-64", "40": "Juicy-32", "41": "Juicy-56", "42": "XAIUE-22", "43": "15P-DX", "44": "20P-DX", "45": "24P-DX", "46": "Cabana-64", "47": "Fantasy 16", "48": "Fantasy 24", "49": "Tranquil Fantasy 23", "50": "Tranquility Plus 39", "51": "Faraway 48", "52": "Fleja Master Palette-33", "53": "Koni32", "54": "Linear Color Palette Basic-31", "55": "LEGO colors-43", "56": "Lego Colours 2021-40", "57": "Vines Flexible Linear Ramps-38", "58": "Arcade Standard 29", "59": "ARQ16", "60": "Atom-8", "61": "BLK 36", "62": "BLK-NEO-46", "63": "Broken Facility-40", "64": "Bubblegum-16", "65": "CPC BOY-32", "66": "Cade 15", "67": "Calder 8-11", "68": "CD-BAC-16", "69": "CG Arne-16", "70": "DinoKnight 16", "71": "||||-22", "72": "FZT Ethereal 16", "73": "Indecision-17", "74": "Island Joy 16", "75": "Journey-64", "76": "Shallowmarsh26", "77": "Lago Nenufar (Lake Water Lily)-19", "78": "Juicy 17", "79": "ChocolateGanache-96", "80": "Bright Winter 1-74", "81": "Bright Winter 2-83", "82": "Kawaii16", "83": "0xdb-01-17", "84": "GZXP-11", "85": "Chromatic16", "86": "Piet Coding Language-20", "87": "Matrix-96", "88": "Material Design-96", "89": "Rainbow-88", "90": "Rainbow-96", "91": "SCRJ-XXXVI-36", "92": "Pxls Default-32", "93": "Lospec500-42", "94": "Moderna-24", "95": "Oak21", "96": "Nature's Embrace 55", "97": "RBYPGO-94", "98": "New Worlds 46", "99": "Nauris-16", "100": "Dynamite-40", "101": "Interstate 28", "102": "Downgraded 32", "103": "Pear 36", "104": "Pineapple 32", "105": "Peachy Pop 16", "106": "Resurrect 32", "107": "Rosy 42", "108": "SLSO-CLR17", "109": "Softy 15", "110": "SPEC12", "111": "The Roarin 80's", "112": "Starmancer-52", "113": "SuperFuture25", "114": "SUNSHINE 35", "115": "Sweetie 16", "116": "Calm 48", "117": "Optimism-32", "118": "Taffy 16", "119": "Todayland Palette V2-25", "120": "TriRampo-12", "121": "r|place 2022-32", "122": "Tropical Cone 24", "123": "Vivid-17", "124": "SHIDO50+-72", "125": "Intacto14", "126": "Itatsi-23", "127": "ENOS16", "128": "Grixel Grotto-16", "129": "Superb 8", "130": "Undertones-17", "131": "Tango-28", "132": "Cheese Palette-28", "133": "Equpix 15", "134": "Zughy 32", "135": "Voodo34", "136": "Franzston 30", "137": "Night 16", "138": "Star 29", "139": "Star 34", "140": "Still-Life-14", "141": "SimpleJPC-16", "142": "Acid 15", "143": "Battery 24", "144": "Clumpy 18", "145": "Cthulhu-16", "146": "Crimso 11-16", "147": "Copper-Tech-16", "148": "DRZ15A", "149": "Eggy 15", "150": "Europa 16", "151": "GreyT-bit-8", "152": "Jewel-15", "153": "Polar 11", "154": "Sheltzy 32", "155": "Wyrm 24", "156": "Yume Nikki-24", "157": "Rube-Goldberg-9", "158": "BoomBoom-7", "159": "Generic-8", "160": "Crayola Blind-9", "161": "FunkyFuture8", "162": "The Golden Wall Palette-7", "163": "Matriax8c", "164": "NT1H-26", "165": "JerryPie 22", "166": "Nineties Nine-9", "167": "On70-35", "168": "ANB16", "169": "Retrocal-8", "170": "Punolit-21", "171": "Luap 40", "172": "Autum Villan 6", "173": "Autum 15", "174": "Autum 15 [Yellow]", "175": "Galaxy Flame-16", "176": "Cretaceous-16", "177": "Antiquity16", "178": "Mushroom-14", "179": "Aerugo-32", "180": "Hotel Paintings 6", "181": "Nopal-12", "182": "Brightness GPY-3", "183": "Blessing-5", "184": "Fairydust 8", "185": "Vanilla MilkShake-16", "186": "Fuzzy Four-4", "187": "Fairy Tales-8", "188": "Naji 16", "189": "Easter Island-16", "190": "Pastel and Darks 58 Palette", "191": "17 Pastels", "192": "NOSTALGIA15", "193": "Ocaso-17", "194": "Oh Hell, Pastel-15", "195": "Pollen-8", "196": "KULE-16", "197": "Hydrangea 11", "198": "Fluffy8", "199": "ST 8 R&B Remake", "200": "Neon Space-10", "201": "Cyclope6", "202": "Sy17", "203": "Syz15", "204": "TUI-15", "205": "Cave-8", "206": "Psygnosia-16", "207": "MarshMellow32", "208": "Lost Century 24", "209": "Finlal 11", "210": "Industrial Factory 16", "211": "Murder Mystery 16", "212": "Fate & Destiny 12", "213": "Vinik 24", "214": "YKB-22", "215": "Halloween-7", "216": "Graveyard-21", "217": "Steam Lords-16", "218": "Frostical-18", "219": "DeuteroSpill-9", "220": "Cool Bone 7", "221": "Muted Ally 6", "222": "EPHEMERA-12", "223": "Ink-5", "224": "Violet Dreams-8", "225": "Tinyfolks-5", "226": "Old Gold 7", "227": "Rosemoss-8", "228": "AAP-RadiantXV-15", "229": "AAP-Majesty XVII-17", "230": "Dead Weight-8", "231": "Mojave20", "232": "Petite-8", "233": "Petite-8 Afterdark", "234": "XAIUE-Radiant-22", "235": "Daruda 22", "236": "Firestorm-9", "237": "Borkfest-8", "238": "Spicy 07", "239": "Rust-6", "240": "Apricot-6", "241": "SuperNova 7", "242": "Pastry-5", "243": "Sandy 06", "244": "Illumination-5", "245": "NYX8", "246": "Dream Haze 8", "247": "OIL6", "248": "Regal10", "249": "Soft Demon 7", "250": "SGM-Palette 2-17", "251": "Midnight ablaze-7", "252": "Black Cherry-5", "253": "Sunset Red-5", "254": "INKPINK-6", "255": "Brash Pink-5", "256": "Pink Neon Sign 6", "257": "Enchanted Purple-12", "258": "Arch-11", "259": "Spacey Easter-17", "260": "Fornax Void I-254", "261": "Fornax Void II-128", "262": "Pixelwave-12", "263": "S1-6", "264": "Berry Nebula-8", "265": "ABYSS-9", "266": "Moonlight 15", "267": "Moonlit-39", "268": "H2O-10", "269": "Magic Waters 9", "270": "Bluem0ld-4", "271": "Moss-5", "272": "DEEP MAZE-7", "273": "Toxic Slime-5", "274": "Lush Green-6", "275": "Tsunami-5", "276": "Cryptic Ocean-6", "277": "Marsh Madness-5", "278": "OXYD-8", "279": "Pink&Green-8", "280": "Walking in the Woods 8", "281": "Paper 8", "282": "Sahara Pastell-7", "283": "Sunflower Painting 7", "284": "Art Hoe Aesthetic 7", "285": "Sky5-7", "286": "Ocean Glass-8", "287": "RoyalGuard-6", "288": "Eulbink-7", "289": "Winter Wonderland-8", "290": "Moon Squid 7", "291": "Stratus-5", "292": "Arctic Dust-5", "293": "CL8UDS", "294": "Lilac Skies 5", "295": "Sea of Fire-6", "296": "Autochrome 3", "297": "Autochrome 5", "298": "GB Default 1-4", "299": "GB Default 2-4", "300": "GB Andrade-4", "301": "GB Blue Seni-4", "302": "GB Blackzone-4", "303": "GB Suburb-4", "304": "GB Crimson-4", "305": "GB Didi-4", "306": "GB Dirty-4", "307": "GB Arne-4", "308": "GB Easy-4", "309": "GB Forest-4", "310": "GB Harsh Green-4", "311": "GB Light Green-4", "312": "GB Nostalgia-4", "313": "GB Platinum-4", "314": "GB Kirokaze-4", "315": "GB Cyber-4", "316": "GB Wish-4", "317": "GB Grapefruit-4", "318": "GB Ice Cream-4", "319": "GB Red_Blue-4", "320": "Gold GB-4", "321": "GB Chocolate-4", "322": "GB Gray-4", "323": "GB Spacehaze-4", "324": "GB Purple Dawn-4", "325": "Moon Crystal-4", "326": "ARNE4", "327": "Autumn Chill-4", "328": "CherryMelon-4", "329": "HallowPumpkin-4", "330": "Hollow-4", "331": "Lavender4", "332": "MAW-4", "333": "Voltage Warning-4", "334": "Tritanopia-5", "335": "Rabbit 7", "336": "Amiga 2600 NTSC-127", "337": "Amiga 2600 PAL-104", "338": "Amiga 2600 SECAM-8", "339": "Amiga 7800 M.E.S.S-256", "340": "Amiga 7800-256", "341": "Amstrad CPC-27", "342": "Apple II-15", "343": "Atari 8-Bit Series - GTIA-256", "344": "CGA-16", "345": "CGA Mode 0 [Low]-4", "346": "CGA Mode 0 [High]-4", "347": "CGA Mode 1 [Low]-4", "348": "CGA Mode 1 [High]-4", "349": "CGA Mode 2 [Low]-4", "350": "CGA Mode 2 [High]-4", "351": "Commodore 64 - Pepto-16", "352": "Commodore 64 - Colodore-16", "353": "Commodore VIC-20-16", "354": "Colecovision-15", "355": "Japanese Machine Palette-16", "356": "Macintosh II-16", "357": "Macintosh 8-Bit System Palette-256", "358": "MSX-15", "359": "NES-55", "360": "PICO-8-16", "361": "RISC OS-16", "362": "SAM Coupe-128", "363": "Thomson MO5-16", "364": "TRS-80 Color Computer Palette-4", "365": "Virtual Boy interpreted-4", "366": "VGA-244", "367": "Win 95-256", "368": "ZX Spectrum-15", "369": "GNOME 32", "370": "Electronic Crayon 22", "371": "Chip16", "372": "Deluxe Paint-222", "373": "FlatUI-20", "374": "MakeCode Arcade Palette-15", "375": "Oekaki-20", "376": "Legacy Paint-16", "377": "XP Paint-28", "378": "Vista Paint-28", "379": "Piet Palette-5", "380": "Japanese Woodblock Palette-12", "381": "Human Faces-94", "382": "HSV Palette-96", "383": "ST24 Christmas", "384": "Reds-24" } },
      { "type": "int", "name": "Overall Number of Colors", "default": "8", "min": "2", "max": "255", "pos": "34" },
      { "type": "int", "name": "Overall Number of Split-Colors", "default": "5", "min": "1", "max": "25", "pos": "35" },
      { "type": "int", "name": "Overall Number of Colors Per Split", "default": "4", "min": "2", "max": "10", "pos": "36" },
      { "type": "int", "name": "Overall Seed", "default": "0", "min": "0", "max": "200000", "pos": "37" },
      { "type": "int", "name": "Overall Seed", "default": "0", "min": "0", "max": "200000", "pos": "38" },
      { "type": "button", "name": "Overall Randomize Seed", "pos": "39" },
      { "type": "choice", "name": "Overall Boundary", "default": "0", "pos": "40", "choices": { "0": "Periodic", "1": "Continuous" } },
      { "type": "float", "name": "Overall Shift Colors(%)", "default": "0", "min": "0", "max": "100", "pos": "41" },
      { "type": "bool", "name": "Overall Reverse Internal", "default": "0", "pos": "42" },
      { "type": "bool", "name": "Overall Reverse Entire", "default": "0", "pos": "43" },
      { "type": "bool", "name": "Overall Reverse", "default": "0", "pos": "44" },
      { "type": "choice", "name": "Stray Coloring Palette", "default": "0", "pos": "45", "choices": { "0": "Single", "1": "Pre-defined Palette", "2": "Random" } },
      { "type": "color", "name": "Stray Color", "default": "0,0,0", "pos": "46" },
      { "type": "choice", "name": "Stray Palette", "default": "10", "pos": "49", "choices": { "0": "Black & White-2", "1": "Red-Green-Blue-3", "2": "Black with Red-Green-Blue-4", "3": "Black & White with Red-Green-Blue-5", "4": "Cyan-Magenta-Yellow-3", "5": "Cyan-Magenta-Yellow-Black-4", "6": "White-Cyan-Magenta-Yellow-Black-5", "7": "Red-Green-Blue with Cyan-Magenta-Yellow-6", "8": "1-Bit RGB-8", "9": "Aurora-256", "10": "Zenit-241", "11": "Game Builder Garage: Texture-Sprite Editor Palette-117", "12": "Duel-256", "13": "Hocus Pocus Palette-256", "14": "PLAYPAL-249", "15": "Sonic Robo Blast 2-256", "16": "Uzebox-256", "17": "Andrew Kensler - 16", "18": "Andrew Kensler - 32", "19": "Andrew Kensler - 54", "20": "AAP-Micro 12", "21": "AAP-16", "22": "AAP-64", "23": "AAP-RadiantPLUS-96", "24": "AAP-SPLENDOR128", "25": "AAP-DGA16", "26": "Cheerful-32", "27": "DB8", "28": "DB16", "29": "DB32", "30": "DB-ISO22", "31": "DimWiddy 17", "32": "DimWiddy 23", "33": "Endesga-4", "34": "Endesga-8", "35": "Endesga-16", "36": "Endesga-32", "37": "Endesga-36", "38": "Endesga-64", "39": "Famicube-64", "40": "Juicy-32", "41": "Juicy-56", "42": "XAIUE-22", "43": "15P-DX", "44": "20P-DX", "45": "24P-DX", "46": "Cabana-64", "47": "Fantasy 16", "48": "Fantasy 24", "49": "Tranquil Fantasy 23", "50": "Tranquility Plus 39", "51": "Faraway 48", "52": "Fleja Master Palette-33", "53": "Koni32", "54": "Linear Color Palette Basic-31", "55": "LEGO colors-43", "56": "Lego Colours 2021-40", "57": "Vines Flexible Linear Ramps-38", "58": "Arcade Standard 29", "59": "ARQ16", "60": "Atom-8", "61": "BLK 36", "62": "BLK-NEO-46", "63": "Broken Facility-40", "64": "Bubblegum-16", "65": "CPC BOY-32", "66": "Cade 15", "67": "Calder 8-11", "68": "CD-BAC-16", "69": "CG Arne-16", "70": "DinoKnight 16", "71": "||||-22", "72": "FZT Ethereal 16", "73": "Indecision-17", "74": "Island Joy 16", "75": "Journey-64", "76": "Shallowmarsh26", "77": "Lago Nenufar (Lake Water Lily)-19", "78": "Juicy 17", "79": "ChocolateGanache-96", "80": "Bright Winter 1-74", "81": "Bright Winter 2-83", "82": "Kawaii16", "83": "0xdb-01-17", "84": "GZXP-11", "85": "Chromatic16", "86": "Piet Coding Language-20", "87": "Matrix-96", "88": "Material Design-96", "89": "Rainbow-88", "90": "Rainbow-96", "91": "SCRJ-XXXVI-36", "92": "Pxls Default-32", "93": "Lospec500-42", "94": "Moderna-24", "95": "Oak21", "96": "Nature's Embrace 55", "97": "RBYPGO-94", "98": "New Worlds 46", "99": "Nauris-16", "100": "Dynamite-40", "101": "Interstate 28", "102": "Downgraded 32", "103": "Pear 36", "104": "Pineapple 32", "105": "Peachy Pop 16", "106": "Resurrect 32", "107": "Rosy 42", "108": "SLSO-CLR17", "109": "Softy 15", "110": "SPEC12", "111": "The Roarin 80's", "112": "Starmancer-52", "113": "SuperFuture25", "114": "SUNSHINE 35", "115": "Sweetie 16", "116": "Calm 48", "117": "Optimism-32", "118": "Taffy 16", "119": "Todayland Palette V2-25", "120": "TriRampo-12", "121": "r|place 2022-32", "122": "Tropical Cone 24", "123": "Vivid-17", "124": "SHIDO50+-72", "125": "Intacto14", "126": "Itatsi-23", "127": "ENOS16", "128": "Grixel Grotto-16", "129": "Superb 8", "130": "Undertones-17", "131": "Tango-28", "132": "Cheese Palette-28", "133": "Equpix 15", "134": "Zughy 32", "135": "Voodo34", "136": "Franzston 30", "137": "Night 16", "138": "Star 29", "139": "Star 34", "140": "Still-Life-14", "141": "SimpleJPC-16", "142": "Acid 15", "143": "Battery 24", "144": "Clumpy 18", "145": "Cthulhu-16", "146": "Crimso 11-16", "147": "Copper-Tech-16", "148": "DRZ15A", "149": "Eggy 15", "150": "Europa 16", "151": "GreyT-bit-8", "152": "Jewel-15", "153": "Polar 11", "154": "Sheltzy 32", "155": "Wyrm 24", "156": "Yume Nikki-24", "157": "Rube-Goldberg-9", "158": "BoomBoom-7", "159": "Generic-8", "160": "Crayola Blind-9", "161": "FunkyFuture8", "162": "The Golden Wall Palette-7", "163": "Matriax8c", "164": "NT1H-26", "165": "JerryPie 22", "166": "Nineties Nine-9", "167": "On70-35", "168": "ANB16", "169": "Retrocal-8", "170": "Punolit-21", "171": "Luap 40", "172": "Autum Villan 6", "173": "Autum 15", "174": "Autum 15 [Yellow]", "175": "Galaxy Flame-16", "176": "Cretaceous-16", "177": "Antiquity16", "178": "Mushroom-14", "179": "Aerugo-32", "180": "Hotel Paintings 6", "181": "Nopal-12", "182": "Brightness GPY-3", "183": "Blessing-5", "184": "Fairydust 8", "185": "Vanilla MilkShake-16", "186": "Fuzzy Four-4", "187": "Fairy Tales-8", "188": "Naji 16", "189": "Easter Island-16", "190": "Pastel and Darks 58 Palette", "191": "17 Pastels", "192": "NOSTALGIA15", "193": "Ocaso-17", "194": "Oh Hell, Pastel-15", "195": "Pollen-8", "196": "KULE-16", "197": "Hydrangea 11", "198": "Fluffy8", "199": "ST 8 R&B Remake", "200": "Neon Space-10", "201": "Cyclope6", "202": "Sy17", "203": "Syz15", "204": "TUI-15", "205": "Cave-8", "206": "Psygnosia-16", "207": "MarshMellow32", "208": "Lost Century 24", "209": "Finlal 11", "210": "Industrial Factory 16", "211": "Murder Mystery 16", "212": "Fate & Destiny 12", "213": "Vinik 24", "214": "YKB-22", "215": "Halloween-7", "216": "Graveyard-21", "217": "Steam Lords-16", "218": "Frostical-18", "219": "DeuteroSpill-9", "220": "Cool Bone 7", "221": "Muted Ally 6", "222": "EPHEMERA-12", "223": "Ink-5", "224": "Violet Dreams-8", "225": "Tinyfolks-5", "226": "Old Gold 7", "227": "Rosemoss-8", "228": "AAP-RadiantXV-15", "229": "AAP-Majesty XVII-17", "230": "Dead Weight-8", "231": "Mojave20", "232": "Petite-8", "233": "Petite-8 Afterdark", "234": "XAIUE-Radiant-22", "235": "Daruda 22", "236": "Firestorm-9", "237": "Borkfest-8", "238": "Spicy 07", "239": "Rust-6", "240": "Apricot-6", "241": "SuperNova 7", "242": "Pastry-5", "243": "Sandy 06", "244": "Illumination-5", "245": "NYX8", "246": "Dream Haze 8", "247": "OIL6", "248": "Regal10", "249": "Soft Demon 7", "250": "SGM-Palette 2-17", "251": "Midnight ablaze-7", "252": "Black Cherry-5", "253": "Sunset Red-5", "254": "INKPINK-6", "255": "Brash Pink-5", "256": "Pink Neon Sign 6", "257": "Enchanted Purple-12", "258": "Arch-11", "259": "Spacey Easter-17", "260": "Fornax Void I-254", "261": "Fornax Void II-128", "262": "Pixelwave-12", "263": "S1-6", "264": "Berry Nebula-8", "265": "ABYSS-9", "266": "Moonlight 15", "267": "Moonlit-39", "268": "H2O-10", "269": "Magic Waters 9", "270": "Bluem0ld-4", "271": "Moss-5", "272": "DEEP MAZE-7", "273": "Toxic Slime-5", "274": "Lush Green-6", "275": "Tsunami-5", "276": "Cryptic Ocean-6", "277": "Marsh Madness-5", "278": "OXYD-8", "279": "Pink&Green-8", "280": "Walking in the Woods 8", "281": "Paper 8", "282": "Sahara Pastell-7", "283": "Sunflower Painting 7", "284": "Art Hoe Aesthetic 7", "285": "Sky5-7", "286": "Ocean Glass-8", "287": "RoyalGuard-6", "288": "Eulbink-7", "289": "Winter Wonderland-8", "290": "Moon Squid 7", "291": "Stratus-5", "292": "Arctic Dust-5", "293": "CL8UDS", "294": "Lilac Skies 5", "295": "Sea of Fire-6", "296": "Autochrome 3", "297": "Autochrome 5", "298": "GB Default 1-4", "299": "GB Default 2-4", "300": "GB Andrade-4", "301": "GB Blue Seni-4", "302": "GB Blackzone-4", "303": "GB Suburb-4", "304": "GB Crimson-4", "305": "GB Didi-4", "306": "GB Dirty-4", "307": "GB Arne-4", "308": "GB Easy-4", "309": "GB Forest-4", "310": "GB Harsh Green-4", "311": "GB Light Green-4", "312": "GB Nostalgia-4", "313": "GB Platinum-4", "314": "GB Kirokaze-4", "315": "GB Cyber-4", "316": "GB Wish-4", "317": "GB Grapefruit-4", "318": "GB Ice Cream-4", "319": "GB Red_Blue-4", "320": "Gold GB-4", "321": "GB Chocolate-4", "322": "GB Gray-4", "323": "GB Spacehaze-4", "324": "GB Purple Dawn-4", "325": "Moon Crystal-4", "326": "ARNE4", "327": "Autumn Chill-4", "328": "CherryMelon-4", "329": "HallowPumpkin-4", "330": "Hollow-4", "331": "Lavender4", "332": "MAW-4", "333": "Voltage Warning-4", "334": "Tritanopia-5", "335": "Rabbit 7", "336": "Amiga 2600 NTSC-127", "337": "Amiga 2600 PAL-104", "338": "Amiga 2600 SECAM-8", "339": "Amiga 7800 M.E.S.S-256", "340": "Amiga 7800-256", "341": "Amstrad CPC-27", "342": "Apple II-15", "343": "Atari 8-Bit Series - GTIA-256", "344": "CGA-16", "345": "CGA Mode 0 [Low]-4", "346": "CGA Mode 0 [High]-4", "347": "CGA Mode 1 [Low]-4", "348": "CGA Mode 1 [High]-4", "349": "CGA Mode 2 [Low]-4", "350": "CGA Mode 2 [High]-4", "351": "Commodore 64 - Pepto-16", "352": "Commodore 64 - Colodore-16", "353": "Commodore VIC-20-16", "354": "Colecovision-15", "355": "Japanese Machine Palette-16", "356": "Macintosh II-16", "357": "Macintosh 8-Bit System Palette-256", "358": "MSX-15", "359": "NES-55", "360": "PICO-8-16", "361": "RISC OS-16", "362": "SAM Coupe-128", "363": "Thomson MO5-16", "364": "TRS-80 Color Computer Palette-4", "365": "Virtual Boy interpreted-4", "366": "VGA-244", "367": "Win 95-256", "368": "ZX Spectrum-15", "369": "GNOME 32", "370": "Electronic Crayon 22", "371": "Chip16", "372": "Deluxe Paint-222", "373": "FlatUI-20", "374": "MakeCode Arcade Palette-15", "375": "Oekaki-20", "376": "Legacy Paint-16", "377": "XP Paint-28", "378": "Vista Paint-28", "379": "Piet Palette-5", "380": "Japanese Woodblock Palette-12", "381": "Human Faces-94", "382": "HSV Palette-96", "383": "ST24 Christmas", "384": "Reds-24" } },
      { "type": "int", "name": "Stray Number of Colors", "default": "8", "min": "2", "max": "20", "pos": "50" },
      { "type": "int", "name": "Stray Seed", "default": "0", "min": "0", "max": "200000", "pos": "51" },
      { "type": "button", "name": "Stray Randomize Seed", "pos": "52" },
      { "type": "bool", "name": "Stray Symmetry", "default": "0", "pos": "53", "visibility": "0" },
      { "type": "bool", "name": "Stray Reverse", "default": "0", "pos": "54" },
      { "type": "note", "text": "Border" },
      { "type": "separator" },
      { "type": "float", "name": "Border Size(%)", "default": "10", "min": "0", "max": "100", "pos": "55" },
      { "type": "float", "name": "Border Value", "default": "128", "min": "0", "max": "255", "pos": "56" },
      { "type": "color", "name": "Border Color", "default": "0,0,0", "pos": "57" },
      { "type": "note", "text": "Preview" },
      { "type": "separator" },
      { "type": "point", "name": "Cropped Viewport Point", "position": "50,50", "pos": "60" },
      { "type": "button", "name": "Reset Points to Center", "pos": "62" },
      { "type": "bool", "name": "Started Filter", "default": "1", "pos": "63", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian Latest update: 2023/9/11." }
      ]
    },
    {
      "name": "HSX Posterize-Index", "lang": "en", "command": "fx_rep_p_i", "command_preview": "", "parameters": [
      { "type": "int", "name": "Hue Bands", "default": "10", "min": "2", "max": "360", "pos": "1" },
      { "type": "int", "name": "Saturation Bands", "default": "10", "min": "2", "max": "100", "pos": "2" },
      { "type": "int", "name": "Luminosity Bands", "default": "10", "min": "2", "max": "100", "pos": "3" },
      { "type": "float", "name": "Dithering (%)", "default": "50", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Start Hue", "default": "0", "min": "0", "max": "360", "pos": "5" },
      { "type": "choice", "name": "Colour Space", "default": "2", "pos": "6", "choices": { "0": "HSI", "1": "HSL", "2": "HSV", "3": "HCY" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2025/11/11." }
      ]
    },
    {
      "name": "Image Dimensions Factors", "lang": "en", "command": "_none_", "command_preview": "fx_find_factors_of_images_preview", "parameters": [
      { "type": "note", "text": "This tool is used to calculate factors of your image dimension. It is not used to change image." },
      { "type": "separator" },
      { "type": "text", "name": "Factors Information", "default": "1", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2025/03/27." }
      ]
    },
    {
      "name": "Kaleidoscope [Reptorian-Polar]", "lang": "en", "command": "gui_rep_polkal", "command_preview": "gui_rep_polkal", "parameters": [
      { "type": "float", "name": "Angle Cut", "default": "2", "min": ".01", "max": "100", "pos": "1" },
      { "type": "float", "name": "Radius Cut", "default": "1", "min": ".01", "max": "100", "pos": "2" },
      { "type": "float", "name": "Surface Angle", "default": "0", "min": "-180", "max": "180", "pos": "3" },
      { "type": "point", "name": "Center (%)", "position": "50,50", "pos": "4" },
      { "type": "bool", "name": "Flip Angle Direction?", "default": "0", "pos": "6" },
      { "type": "bool", "name": "Flip Radial Direction?", "default": "0", "pos": "7" },
      { "type": "choice", "name": "Angle Edge Behaviour", "default": "1", "pos": "8", "choices": { "0": "Repeat", "1": "Alternating" } },
      { "type": "choice", "name": "Radial Edge Behaviour", "default": "2", "pos": "9", "choices": { "0": "None", "1": "Repeat", "2": "Alternating" } },
      { "type": "choice", "name": "Fit Radial End to Min/Max Dimension", "default": "0", "pos": "10", "choices": { "0": "Minimum Dimension", "1": "Maximum Dimension" } },
      { "type": "bool", "name": "Conical Start at 0?", "default": "1", "pos": "11" },
      { "type": "note", "text": "Conical start is only used for matching other software filter behavior with conical gradients" },
      { "type": "separator" },
      { "type": "float", "name": "Sublevel", "default": ".5", "min": "0", "max": "3", "pos": "12" },
      { "type": "choice", "name": "Interpolation", "default": "2", "pos": "13", "choices": { "0": "Nearest", "1": "Average", "2": "Linear", "3": "Grid", "4": "Bicubic", "5": "Lanczos" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2019/9/7." }
      ]
    },
    {
      "name": "Lavander Binary Map", "lang": "en", "command": "fx_rep_lavander_binary_map", "command_preview": "fx_rep_lavander_binary_map_preview", "parameters": [
      { "type": "note", "text": "Based on the work of Lavander at discord/generative. Instruction on how it works is described at the bottom of this filter." },
      { "type": "separator" },
      { "type": "note", "text": "Main" },
      { "type": "choice", "name": "Size of Array", "default": "0", "pos": "1", "choices": { "0": "Auto", "1": "User-Defined" } },
      { "type": "int", "name": "User-Defined Size", "default": "8", "min": "2", "max": "14", "pos": "2" },
      { "type": "choice", "name": "Formula", "default": "5", "pos": "3", "choices": { "0": "AND-Simple", "1": "OR-Simple", "2": "XOR-Simple", "3": "AND", "4": "OR", "5": "XOR", "6": "User-Defined" } },
      { "type": "text", "name": "Binary String A", "default": "01", "pos": "4" },
      { "type": "text", "name": "Binary String B", "default": "10", "pos": "5" },
      { "type": "text", "name": "Binary String", "default": "01", "pos": "6" },
      { "type": "int", "name": "Shift Factor", "default": "0", "min": "0", "max": "1000000", "pos": "7" },
      { "type": "text", "name": "Custom Formula", "default": "xor(min(xor(x()", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Additional" },
      { "type": "choice", "name": "TODO Direction", "default": "0", "pos": "9", "choices": { "0": "Default", "1": "Mirror-X", "2": "Mirror-Y", "3": "Mirror-XY" }, "visibility": "0" },
      { "type": "choice", "name": "Symmetry", "default": "0", "pos": "10", "choices": { "0": "None", "1": "Symmetry A", "2": "Symmetry B", "3": "Symmetry C", "4": "Symmetry D" } },
      { "type": "bool", "name": "TODO Smooth-Shading", "default": "0", "pos": "11", "visibility": "0" },
      { "type": "choice", "name": "Post-Process Out-Of-Bound", "default": "0", "pos": "12", "choices": { "0": "None", "1": "Periodic", "2": "Reflected" } },
      { "type": "separator" },
      { "type": "note", "text": "Random Binary String" },
      { "type": "int", "name": "Number of digits for Binary String A", "default": "2", "min": "1", "max": "4", "pos": "13" },
      { "type": "int", "name": "Number of digits for Binary String B", "default": "2", "min": "1", "max": "4", "pos": "14" },
      { "type": "int", "name": "Number of digits for Binary String", "default": "2", "min": "1", "max": "4", "pos": "15" },
      { "type": "int", "name": "Binary String A Index", "default": "0", "min": "0", "max": "1", "pos": "16" },
      { "type": "int", "name": "Binary String A Index", "default": "1", "min": "0", "max": "3", "pos": "17" },
      { "type": "int", "name": "Binary String A Index", "default": "2", "min": "0", "max": "7", "pos": "18" },
      { "type": "int", "name": "Binary String A Index", "default": "0", "min": "0", "max": "15", "pos": "19" },
      { "type": "int", "name": "Binary String B Index", "default": "1", "min": "0", "max": "1", "pos": "20" },
      { "type": "int", "name": "Binary String B Index", "default": "2", "min": "0", "max": "3", "pos": "21" },
      { "type": "int", "name": "Binary String B Index", "default": "5", "min": "0", "max": "7", "pos": "22" },
      { "type": "int", "name": "Binary String B Index", "default": "1", "min": "0", "max": "15", "pos": "23" },
      { "type": "int", "name": "Binary String Index", "default": "1", "min": "0", "max": "1", "pos": "24" },
      { "type": "int", "name": "Binary String Index", "default": "2", "min": "0", "max": "3", "pos": "25" },
      { "type": "int", "name": "Binary String Index", "default": "5", "min": "0", "max": "7", "pos": "26" },
      { "type": "int", "name": "Binary String Index", "default": "1", "min": "0", "max": "15", "pos": "27" },
      { "type": "button", "name": "Randomize Binary String A", "pos": "28" },
      { "type": "button", "name": "Randomize Binary String B", "pos": "29" },
      { "type": "button", "name": "Randomize Both", "pos": "30" },
      { "type": "button", "name": "Randomize", "pos": "31" },
      { "type": "separator" },
      { "type": "note", "text": "Color" },
      { "type": "choice", "name": "Color Mode", "default": "1", "pos": "32", "choices": { "0": "Normalized", "1": "Colorized" } },
      { "type": "int", "name": "Number of Colors", "default": "5", "min": "3", "max": "5", "pos": "33" },
      { "type": "color", "name": "Color A", "default": "0,0,0", "pos": "34" },
      { "type": "color", "name": "Color B", "default": "144,111,122", "pos": "37" },
      { "type": "color", "name": "Color C", "default": "255,255,255", "pos": "40" },
      { "type": "color", "name": "Color A", "default": "0,0,0", "pos": "43" },
      { "type": "color", "name": "Color B", "default": "46,125,89", "pos": "46" },
      { "type": "color", "name": "Color C", "default": "157,156,189", "pos": "49" },
      { "type": "color", "name": "Color D", "default": "255,255,255", "pos": "52" },
      { "type": "color", "name": "Color A", "default": "0,0,0", "pos": "55" },
      { "type": "color", "name": "Color B", "default": "5,122,73", "pos": "58" },
      { "type": "color", "name": "Color C", "default": "144,111,122", "pos": "61" },
      { "type": "color", "name": "Color D", "default": "164,184,218", "pos": "64" },
      { "type": "color", "name": "Color E", "default": "255,255,255", "pos": "67" },
      { "type": "button", "name": "Recolor using changed number of color", "pos": "70" },
      { "type": "float", "name": "Random Shade Exponential Factor (%)", "default": "0", "min": "-80", "max": "80", "pos": "71" },
      { "type": "float", "name": "Random Lightness Start A (%)", "default": "0", "min": "0", "max": "100", "pos": "72" },
      { "type": "float", "name": "Random Darkness Start B(%)", "default": "0", "min": "0", "max": "100", "pos": "73" },
      { "type": "float", "name": "TODO Maximum - Lightness", "default": "50", "min": "50", "max": "100", "pos": "74", "visibility": "0" },
      { "type": "float", "name": "TODO Minimum - Darkness", "default": "0", "min": "0", "max": "50", "pos": "75", "visibility": "0" },
      { "type": "int", "name": "Random Seed Index", "default": "12000", "min": "0", "max": "24000", "pos": "76" },
      { "type": "button", "name": "Randomize Colors", "pos": "77" },
      { "type": "button", "name": "Recolor with current seed", "pos": "78" },
      { "type": "int", "name": "Randomization Status", "default": "2", "min": "0", "max": "2", "pos": "79", "visibility": "0" },
      { "type": "int", "name": "Previous Randomization Status", "default": "2", "min": "0", "max": "2", "pos": "80", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "CLI Command" },
      { "type": "text", "name": "Copy-able text", "default": "Input Text", "pos": "81" },
      { "type": "text", "name": "Stored Text", "default": "Restore Text", "pos": "82", "visibility": "0" },
      { "type": "text", "name": "Stored Text 2", "default": "Stored Text 2", "pos": "83", "visibility": "0" },
      { "type": "text", "name": "Color Information", "default": "Color Information", "pos": "84", "visibility": "0" },
      { "type": "text", "name": "Mapping Information", "default": "Mapping Information", "pos": "85", "visibility": "0" },
      { "type": "bool", "name": "Escape Quotation Mark", "default": "0", "pos": "86" },
      { "type": "separator" },
      { "type": "note", "text": "<u>Custom Formula Available Macros and Variables</u>" },
      { "type": "note", "text": "\nBasic Description:\n\n<u>Recommended Variables to Use</u>\n\n1 - x  : X-Coordinate of image\n2 - y  : Y-Coordinate of image\n3 - ix : Inverted X-Coordinate of image\n4 - iy : Inverted Y-Coordinate of image\n\n<u>Recommended Macros to Use</u>\n\n1 - x()  : Value at index X-Coordinate of image inside reference array\n2 - y()  : Value at index Y-Coordinate of image inside reference array\n3 - ix() : Value at index Inverted X-Coordinate of image inside reference array\n4 - iy() : Value at index Inverted X-Coordinate of image inside reference array\n\n<u>Recommended Operators to Use</u>\n\n1 - xor( a,b ) : Return the value of XOR operation using a,b\n2 - a & b / and(a,b): Return the AND value using a,b\n3 - a | b / or(a,b) : Return the OR value using a,b\n4 - flip(v) : Flip bits of value." },
      { "type": "separator" },
      { "type": "note", "text": "<u>Description of How this filter work</u>" },
      { "type": "note", "text": "\nBasic Description:\n\nGenerates a image based on the count of binary number found in string of binary. Initial array contains value count-sorted by count of binary number within binary representation of integers.\n\nStep:\n\n1) Create an array of integer that matches index with size of 2^n.\n2) Create another array which is the count of 'bin_a' in binary representation of the previous array.\n3) Count sort the array of integer with the count of binary number array.\n4) Delete all other array other than the sorted array.\n5) Generate a surface with row and column the same size as the primary array, and use formula which takes values from the sorted value, and then find the count of 'bin_b' in binary representation of the found value.\n\nSource Code: \n\nAuthor: Lavander in discord/generative AKA weightt_an in discuss.pixls.us" },
      { "type": "text", "name": "Python Source Code", "default": "1", "pos": "87" },
      { "type": "text", "name": "Stored Text", "default": "1", "pos": "88", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2023/03/21." },
      { "type": "bool", "name": "Started?", "default": "0", "pos": "89", "visibility": "0" },
      { "type": "choice", "name": "Size of Array", "default": "0", "pos": "90", "choices": { "0": "Auto", "1": "User-Defined" }, "visibility": "0" },
      { "type": "choice", "name": "Formula", "default": "2", "pos": "91", "choices": { "0": "AND-Simple", "1": "OR-Simple", "2": "XOR-Simple", "3": "AND", "4": "OR", "5": "XOR", "6": "User-Defined" }, "visibility": "0" },
      { "type": "text", "name": "Binary String A", "default": "01", "pos": "92", "visibility": "0" },
      { "type": "text", "name": "Binary String B", "default": "10", "pos": "93", "visibility": "0" },
      { "type": "text", "name": "Binary String", "default": "01", "pos": "94", "visibility": "0" },
      { "type": "int", "name": "Binary String A Index", "default": "0", "min": "0", "max": "1", "pos": "95", "visibility": "0" },
      { "type": "int", "name": "Binary String A Index", "default": "1", "min": "0", "max": "3", "pos": "96", "visibility": "0" },
      { "type": "int", "name": "Binary String A Index", "default": "2", "min": "0", "max": "7", "pos": "97", "visibility": "0" },
      { "type": "int", "name": "Binary String A Index", "default": "0", "min": "0", "max": "15", "pos": "98", "visibility": "0" },
      { "type": "int", "name": "Binary String B Index", "default": "1", "min": "0", "max": "1", "pos": "99", "visibility": "0" },
      { "type": "int", "name": "Binary String B Index", "default": "2", "min": "0", "max": "3", "pos": "100", "visibility": "0" },
      { "type": "int", "name": "Binary String B Index", "default": "5", "min": "0", "max": "7", "pos": "101", "visibility": "0" },
      { "type": "int", "name": "Binary String B Index", "default": "1", "min": "0", "max": "15", "pos": "102", "visibility": "0" },
      { "type": "int", "name": "Binary String Index", "default": "1", "min": "0", "max": "1", "pos": "103", "visibility": "0" },
      { "type": "int", "name": "Binary String Index", "default": "2", "min": "0", "max": "3", "pos": "104", "visibility": "0" },
      { "type": "int", "name": "Binary String Index", "default": "5", "min": "0", "max": "7", "pos": "105", "visibility": "0" },
      { "type": "int", "name": "Binary String Index", "default": "1", "min": "0", "max": "15", "pos": "106", "visibility": "0" },
      { "type": "int", "name": "Shift Factor", "default": "0", "min": "0", "max": "1000000", "pos": "107", "visibility": "0" },
      { "type": "text", "name": "Custom Formula", "default": "xor(min(xor(x()", "pos": "108", "visibility": "0" },
      { "type": "choice", "name": "TODO Direction", "default": "0", "pos": "109", "choices": { "0": "Default", "1": "Mirror-X", "2": "Mirror-Y", "3": "Mirror-XY" }, "visibility": "0" },
      { "type": "choice", "name": "_0 Symmetry", "default": "0", "pos": "110", "choices": { "0": "None", "1": "Symmetry A", "2": "Symmetry B", "3": "Symmetry C", "4": "Symmetry D" }, "visibility": "0" },
      { "type": "bool", "name": "TODO Smooth-Shading", "default": "0", "pos": "111", "visibility": "0" },
      { "type": "int", "name": "User-Defined Size", "default": "8", "min": "2", "max": "14", "pos": "112", "visibility": "0" },
      { "type": "int", "name": "Size of Image", "default": "8", "min": "2", "max": "14", "pos": "113", "visibility": "0" },
      { "type": "int", "name": "Auto-Size of Image", "default": "0", "min": "0", "max": "14", "pos": "114", "visibility": "0" },
      { "type": "int", "name": "Auto-Size of Symmetric Image", "default": "0", "min": "0", "max": "14", "pos": "115", "visibility": "0" },
      { "type": "choice", "name": "Color Mode", "default": "1", "pos": "116", "choices": { "0": "Normalized", "1": "Colorized" }, "visibility": "0" },
      { "type": "int", "name": "Number of Colors", "default": "5", "min": "3", "max": "5", "pos": "117", "visibility": "0" },
      { "type": "color", "name": "Color A", "default": "0,0,0", "pos": "118", "visibility": "0" },
      { "type": "color", "name": "Color B", "default": "144,111,122", "pos": "121", "visibility": "0" },
      { "type": "color", "name": "Color C", "default": "255,255,255", "pos": "124", "visibility": "0" },
      { "type": "color", "name": "Color A", "default": "0,0,0", "pos": "127", "visibility": "0" },
      { "type": "color", "name": "Color B", "default": "46,125,89", "pos": "130", "visibility": "0" },
      { "type": "color", "name": "Color C", "default": "157,156,189", "pos": "133", "visibility": "0" },
      { "type": "color", "name": "Color D", "default": "255,255,255", "pos": "136", "visibility": "0" },
      { "type": "color", "name": "Color A", "default": "0,0,0", "pos": "139", "visibility": "0" },
      { "type": "color", "name": "Color B", "default": "5,122,73", "pos": "142", "visibility": "0" },
      { "type": "color", "name": "Color C", "default": "144,111,122", "pos": "145", "visibility": "0" },
      { "type": "color", "name": "Color D", "default": "164,184,218", "pos": "148", "visibility": "0" },
      { "type": "color", "name": "Color E", "default": "255,255,255", "pos": "151", "visibility": "0" },
      { "type": "float", "name": "Random Shade Exponential Factor (%)", "default": "0", "min": "-80", "max": "80", "pos": "154", "visibility": "0" },
      { "type": "float", "name": "Random Lightness Start A (%)", "default": "0", "min": "0", "max": "100", "pos": "155", "visibility": "0" },
      { "type": "float", "name": "Random Darkness Start B(%)", "default": "0", "min": "0", "max": "100", "pos": "156", "visibility": "0" },
      { "type": "float", "name": "TODO Maximum - Lightness", "default": "50", "min": "50", "max": "100", "pos": "157", "visibility": "0" },
      { "type": "float", "name": "TODO Minimum - Darkness", "default": "0", "min": "0", "max": "50", "pos": "158", "visibility": "0" },
      { "type": "int", "name": "Random Seed Index", "default": "12000", "min": "0", "max": "24000", "pos": "159", "visibility": "0" },
      { "type": "bool", "name": "TODO Has Activated Smooth?-Shade", "default": "0", "pos": "160", "visibility": "0" }
      ]
    },
    {
      "name": "Logarithmic Distortion", "lang": "en", "command": "rep_logpindis_gui", "command_preview": "rep_logpindis_gui_preview", "parameters": [
      { "type": "note", "text": "This filter is a extended version of a filter found in <a href=\"https://forums.getpaint.net/topic/6845-asmageddon-tools-pack-v3/\">Asmageddon Tools Pack v3</a>. Translated to G'MIC using a source code, and then extended. It is a mixture of two texture filters." },
      { "type": "separator" },
      { "type": "float", "name": "Distortion Factor", "default": "1", "min": ".1", "max": "1000", "pos": "1" },
      { "type": "point", "name": "Preliminary Surface Shift", "position": "50,50", "pos": "2" },
      { "type": "point", "name": "Distortion Surface Position", "position": "50,50", "pos": "4" },
      { "type": "float", "name": "Preliminary X-Axis Scaling", "default": "1", "min": ".1", "max": "10", "pos": "6" },
      { "type": "float", "name": "Preliminary Y-Axis Scaling", "default": "1", "min": ".1", "max": "10", "pos": "7" },
      { "type": "float", "name": "Effect X-Axis Scaling", "default": "1", "min": ".1", "max": "10", "pos": "8" },
      { "type": "float", "name": "Effect Y-Axis Scaling", "default": "1", "min": ".1", "max": "10", "pos": "9" },
      { "type": "float", "name": "Distortion Surface Angle", "default": "0", "min": "0", "max": "360", "pos": "10" },
      { "type": "choice", "name": "Placement", "default": "0", "pos": "11", "choices": { "0": "Inside-Out", "1": "Outside-In" } },
      { "type": "choice", "name": "Logarithmic Distortion Axis Combination for X-Axis", "default": "0", "pos": "12", "choices": { "0": "Different Axis", "1": "Same Axis" } },
      { "type": "choice", "name": "Logarithmic Distortion Axis combination for y-Axis", "default": "0", "pos": "13", "choices": { "0": "Different Axis", "1": "Same Axis" } },
      { "type": "choice", "name": "Logarithmic Distortion X-Axis Direction", "default": "0", "pos": "14", "choices": { "0": "Negative", "1": "Positive" } },
      { "type": "choice", "name": "Logarithmic Distortion Y-Axis Direction", "default": "0", "pos": "15", "choices": { "0": "Negative", "1": "Positive" } },
      { "type": "choice", "name": "Boundary Condition", "default": "0", "pos": "16", "choices": { "0": "Periodic", "1": "Mirror" } },
      { "type": "choice", "name": "Interpolation", "default": "2", "pos": "17", "choices": { "0": "Nearest", "1": "Linear", "2": "Bicubic" } },
      { "type": "int", "name": "Base Reference Dimension", "default": "1024", "min": "10", "max": "4096", "pos": "18" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "19", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "20", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2019/6/4." }
      ]
    },
    {
      "name": "Majority", "lang": "en", "command": "gui_rep_majority", "command_preview": "gui_rep_majority_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Filter Options" },
      { "type": "choice", "name": "Color Space", "default": "11", "pos": "1", "choices": { "0": "RGB", "1": "sRGB", "2": "RYB", "3": "CMY", "4": "CMYK", "5": "HCY", "6": "HSI", "7": "HSL", "8": "HSV", "9": "LAB", "10": "LCH", "11": "YIQ", "12": "YUV", "13": "YCbCr", "14": "YCbCrGLIC", "15": "XYZ", "16": "YES", "17": "Kodak 1", "18": "Ohta" } },
      { "type": "bool", "name": "Contain Alpha", "default": "0", "pos": "2" },
      { "type": "int", "name": "Kernel Size", "default": "5", "min": "2", "max": "50", "pos": "3" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "4", "choices": { "0": "Soft Regular", "1": "Soft Average Channels", "2": "Hard Regular", "3": "Hard Average Channels" } },
      { "type": "bool", "name": "Convert to Black and White?", "default": "0", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Preview Setting" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "6", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "7", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Info about filter\n\nMajority effects comes in one of those two version.\n\n1- Use a predefined value to take either the value of the min/max values within kernel.\n\n2-Automatically let the average of kernel to define which values to take which can be either min/max value within kernel." },
      { "type": "separator" },
      { "type": "note", "text": "More information - <a href=\"https://forums.getpaint.net/topic/3978-majority-color-effect-ymd100726/\">Paint.NET Majority Effect</a>" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2019/12/31." }
      ]
    },
    {
      "name": "Majority [Threshold]", "lang": "en", "command": "gui_rep_majority_threshold", "command_preview": "gui_rep_majority_threshold_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Filter Options" },
      { "type": "choice", "name": "Color Space", "default": "11", "pos": "1", "choices": { "0": "RGB", "1": "sRGB", "2": "RYB", "3": "CMY", "4": "CMYK", "5": "HCY", "6": "HSI", "7": "HSL", "8": "HSV", "9": "LAB", "10": "LCH", "11": "YIQ", "12": "YUV", "13": "YCbCr", "14": "YCbCrGLIC", "15": "XYZ", "16": "YES", "17": "Kodak 1", "18": "Ohta" } },
      { "type": "bool", "name": "Contain Alpha", "default": "0", "pos": "2" },
      { "type": "int", "name": "Kernel Size", "default": "5", "min": "2", "max": "50", "pos": "3" },
      { "type": "float", "name": "Tolerance (%)", "default": "50", "min": "0", "max": "100", "pos": "4" },
      { "type": "choice", "name": "Conditional Mode", "default": "1", "pos": "5", "choices": { "0": "Less Than", "1": "Greater Than" } },
      { "type": "choice", "name": "Output Mode", "default": "0", "pos": "6", "choices": { "0": "Soft", "1": "Hard" } },
      { "type": "bool", "name": "Convert to Black and White?", "default": "0", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Preview Setting" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "8", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "9", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Info about filter\n\nMajority effects comes in one of those two version.\n\n1- Use a predefined value to take either the value of the min/max values within kernel.\n\n2-Automatically let the average of kernel to define which values to take which can be either min/max value within kernel." },
      { "type": "separator" },
      { "type": "note", "text": "More information - <a href=\"https://forums.getpaint.net/topic/3978-majority-color-effect-ymd100726/\">Paint.NET Majority Effect</a>" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2019/12/31." }
      ]
    },
    {
      "name": "Markus-Lyapunov Fractal", "lang": "en", "command": "fx_rep_mlfrac", "command_preview": "fx_rep_mlfrac", "parameters": [
      { "type": "note", "text": "Create a mapping of Lyapunov exponent within two values or three values." },
      { "type": "separator" },
      { "type": "note", "text": "Main" },
      { "type": "text", "name": "ABC-String", "default": "ab", "pos": "1" },
      { "type": "int", "name": "ABC-String Repeats", "default": "50", "min": "1", "max": "255", "pos": "2" },
      { "type": "float", "name": "Subsampling Level", "default": "1", "min": "0", "max": "6", "pos": "3" },
      { "type": "float", "name": "Viewport(%)", "default": "100", "min": "0", "max": "100", "pos": "4" },
      { "type": "point", "name": "Position", "position": "50,50", "pos": "5" },
      { "type": "float", "name": "C-Time(%)", "default": "50", "min": "0", "max": "100", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Output" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "8", "choices": { "0": "Grayscale", "1": "Duotone", "2": "Random", "3": "Palette", "4": "Layers" } },
      { "type": "bool", "name": "Use Inverted?", "default": "0", "pos": "9" },
      { "type": "color", "name": "Color A", "default": "0,0,255,255", "pos": "10" },
      { "type": "color", "name": "Color B", "default": "255,255,0,255", "pos": "14" },
      { "type": "choice", "name": "Set of Palettes", "default": "0", "pos": "18", "choices": { "0": "Single", "1": "Double" } },
      { "type": "int", "name": "Seed", "default": "0", "min": "0", "max": "10000000", "pos": "19" },
      { "type": "int", "name": "Random Palette Color Count", "default": "8", "min": "2", "max": "64", "pos": "20" },
      { "type": "int", "name": "Random Palette A Color Count", "default": "8", "min": "2", "max": "64", "pos": "21" },
      { "type": "int", "name": "Random Palette B Color Count", "default": "8", "min": "2", "max": "64", "pos": "22" },
      { "type": "choice", "name": "Color Space", "default": "0", "pos": "23", "choices": { "0": "HSL", "1": "LAB", "2": "LCH" } },
      { "type": "choice", "name": "Palette", "default": "12", "pos": "24", "choices": { "0": "Black & White-2", "1": "Red-Green-Blue-3", "2": "Black with Red-Green-Blue-4", "3": "Black & White with Red-Green-Blue-5", "4": "Cyan-Magenta-Yellow-3", "5": "Cyan-Magenta-Yellow-Black-4", "6": "White-Cyan-Magenta-Yellow-Black-5", "7": "Red-Green-Blue with Cyan-Magenta-Yellow-6", "8": "1-Bit RGB-8", "9": "Aurora-256", "10": "Zenit-241", "11": "Game Builder Garage: Texture-Sprite Editor Palette-117", "12": "Duel-256", "13": "Hocus Pocus Palette-256", "14": "PLAYPAL-249", "15": "Sonic Robo Blast 2-256", "16": "Uzebox-256", "17": "Andrew Kensler - 16", "18": "Andrew Kensler - 32", "19": "Andrew Kensler - 54", "20": "AAP-Micro 12", "21": "AAP-16", "22": "AAP-64", "23": "AAP-RadiantPLUS-96", "24": "AAP-SPLENDOR128", "25": "AAP-DGA16", "26": "Cheerful-32", "27": "DB8", "28": "DB16", "29": "DB32", "30": "DB-ISO22", "31": "DimWiddy 17", "32": "DimWiddy 23", "33": "Endesga-4", "34": "Endesga-8", "35": "Endesga-16", "36": "Endesga-32", "37": "Endesga-36", "38": "Endesga-64", "39": "Famicube-64", "40": "Juicy-32", "41": "Juicy-56", "42": "XAIUE-22", "43": "15P-DX", "44": "20P-DX", "45": "24P-DX", "46": "Cabana-64", "47": "Fantasy 16", "48": "Fantasy 24", "49": "Tranquil Fantasy 23", "50": "Tranquility Plus 39", "51": "Faraway 48", "52": "Fleja Master Palette-33", "53": "Koni32", "54": "Linear Color Palette Basic-31", "55": "LEGO colors-43", "56": "Lego Colours 2021-40", "57": "Vines Flexible Linear Ramps-38", "58": "Arcade Standard 29", "59": "ARQ16", "60": "Atom-8", "61": "BLK 36", "62": "BLK-NEO-46", "63": "Broken Facility-40", "64": "Bubblegum-16", "65": "CPC BOY-32", "66": "Cade 15", "67": "Calder 8-11", "68": "CD-BAC-16", "69": "CG Arne-16", "70": "DinoKnight 16", "71": "||||-22", "72": "FZT Ethereal 16", "73": "Indecision-17", "74": "Island Joy 16", "75": "Journey-64", "76": "Shallowmarsh26", "77": "Lago Nenufar (Lake Water Lily)-19", "78": "Juicy 17", "79": "ChocolateGanache-96", "80": "Bright Winter 1-74", "81": "Bright Winter 2-83", "82": "Kawaii16", "83": "0xdb-01-17", "84": "GZXP-11", "85": "Chromatic16", "86": "Piet Coding Language-20", "87": "Matrix-96", "88": "Material Design-96", "89": "Rainbow-88", "90": "Rainbow-96", "91": "SCRJ-XXXVI-36", "92": "Pxls Default-32", "93": "Lospec500-42", "94": "Moderna-24", "95": "Oak21", "96": "Nature's Embrace 55", "97": "RBYPGO-94", "98": "New Worlds 46", "99": "Nauris-16", "100": "Dynamite-40", "101": "Interstate 28", "102": "Downgraded 32", "103": "Pear 36", "104": "Pineapple 32", "105": "Peachy Pop 16", "106": "Resurrect 32", "107": "Rosy 42", "108": "SLSO-CLR17", "109": "Softy 15", "110": "SPEC12", "111": "The Roarin 80's", "112": "Starmancer-52", "113": "SuperFuture25", "114": "SUNSHINE 35", "115": "Sweetie 16", "116": "Calm 48", "117": "Optimism-32", "118": "Taffy 16", "119": "Todayland Palette V2-25", "120": "TriRampo-12", "121": "r|place 2022-32", "122": "Tropical Cone 24", "123": "Vivid-17", "124": "SHIDO50+-72", "125": "Intacto14", "126": "Itatsi-23", "127": "ENOS16", "128": "Grixel Grotto-16", "129": "Superb 8", "130": "Undertones-17", "131": "Tango-28", "132": "Cheese Palette-28", "133": "Equpix 15", "134": "Zughy 32", "135": "Voodo34", "136": "Franzston 30", "137": "Night 16", "138": "Star 29", "139": "Star 34", "140": "Still-Life-14", "141": "SimpleJPC-16", "142": "Acid 15", "143": "Battery 24", "144": "Clumpy 18", "145": "Cthulhu-16", "146": "Crimso 11-16", "147": "Copper-Tech-16", "148": "DRZ15A", "149": "Eggy 15", "150": "Europa 16", "151": "GreyT-bit-8", "152": "Jewel-15", "153": "Polar 11", "154": "Sheltzy 32", "155": "Wyrm 24", "156": "Yume Nikki-24", "157": "Rube-Goldberg-9", "158": "BoomBoom-7", "159": "Generic-8", "160": "Crayola Blind-9", "161": "FunkyFuture8", "162": "The Golden Wall Palette-7", "163": "Matriax8c", "164": "NT1H-26", "165": "JerryPie 22", "166": "Nineties Nine-9", "167": "On70-35", "168": "ANB16", "169": "Retrocal-8", "170": "Punolit-21", "171": "Luap 40", "172": "Autum Villan 6", "173": "Autum 15", "174": "Autum 15 [Yellow]", "175": "Galaxy Flame-16", "176": "Cretaceous-16", "177": "Antiquity16", "178": "Mushroom-14", "179": "Aerugo-32", "180": "Hotel Paintings 6", "181": "Nopal-12", "182": "Brightness GPY-3", "183": "Blessing-5", "184": "Fairydust 8", "185": "Vanilla MilkShake-16", "186": "Fuzzy Four-4", "187": "Fairy Tales-8", "188": "Naji 16", "189": "Easter Island-16", "190": "Pastel and Darks 58 Palette", "191": "17 Pastels", "192": "NOSTALGIA15", "193": "Ocaso-17", "194": "Oh Hell, Pastel-15", "195": "Pollen-8", "196": "KULE-16", "197": "Hydrangea 11", "198": "Fluffy8", "199": "ST 8 R&B Remake", "200": "Neon Space-10", "201": "Cyclope6", "202": "Sy17", "203": "Syz15", "204": "TUI-15", "205": "Cave-8", "206": "Psygnosia-16", "207": "MarshMellow32", "208": "Lost Century 24", "209": "Finlal 11", "210": "Industrial Factory 16", "211": "Murder Mystery 16", "212": "Fate & Destiny 12", "213": "Vinik 24", "214": "YKB-22", "215": "Halloween-7", "216": "Graveyard-21", "217": "Steam Lords-16", "218": "Frostical-18", "219": "DeuteroSpill-9", "220": "Cool Bone 7", "221": "Muted Ally 6", "222": "EPHEMERA-12", "223": "Ink-5", "224": "Violet Dreams-8", "225": "Tinyfolks-5", "226": "Old Gold 7", "227": "Rosemoss-8", "228": "AAP-RadiantXV-15", "229": "AAP-Majesty XVII-17", "230": "Dead Weight-8", "231": "Mojave20", "232": "Petite-8", "233": "Petite-8 Afterdark", "234": "XAIUE-Radiant-22", "235": "Daruda 22", "236": "Firestorm-9", "237": "Borkfest-8", "238": "Spicy 07", "239": "Rust-6", "240": "Apricot-6", "241": "SuperNova 7", "242": "Pastry-5", "243": "Sandy 06", "244": "Illumination-5", "245": "NYX8", "246": "Dream Haze 8", "247": "OIL6", "248": "Regal10", "249": "Soft Demon 7", "250": "SGM-Palette 2-17", "251": "Midnight ablaze-7", "252": "Black Cherry-5", "253": "Sunset Red-5", "254": "INKPINK-6", "255": "Brash Pink-5", "256": "Pink Neon Sign 6", "257": "Enchanted Purple-12", "258": "Arch-11", "259": "Spacey Easter-17", "260": "Fornax Void I-254", "261": "Fornax Void II-128", "262": "Pixelwave-12", "263": "S1-6", "264": "Berry Nebula-8", "265": "ABYSS-9", "266": "Moonlight 15", "267": "Moonlit-39", "268": "H2O-10", "269": "Magic Waters 9", "270": "Bluem0ld-4", "271": "Moss-5", "272": "DEEP MAZE-7", "273": "Toxic Slime-5", "274": "Lush Green-6", "275": "Tsunami-5", "276": "Cryptic Ocean-6", "277": "Marsh Madness-5", "278": "OXYD-8", "279": "Pink&Green-8", "280": "Walking in the Woods 8", "281": "Paper 8", "282": "Sahara Pastell-7", "283": "Sunflower Painting 7", "284": "Art Hoe Aesthetic 7", "285": "Sky5-7", "286": "Ocean Glass-8", "287": "RoyalGuard-6", "288": "Eulbink-7", "289": "Winter Wonderland-8", "290": "Moon Squid 7", "291": "Stratus-5", "292": "Arctic Dust-5", "293": "CL8UDS", "294": "Lilac Skies 5", "295": "Sea of Fire-6", "296": "Autochrome 3", "297": "Autochrome 5", "298": "GB Default 1-4", "299": "GB Default 2-4", "300": "GB Andrade-4", "301": "GB Blue Seni-4", "302": "GB Blackzone-4", "303": "GB Suburb-4", "304": "GB Crimson-4", "305": "GB Didi-4", "306": "GB Dirty-4", "307": "GB Arne-4", "308": "GB Easy-4", "309": "GB Forest-4", "310": "GB Harsh Green-4", "311": "GB Light Green-4", "312": "GB Nostalgia-4", "313": "GB Platinum-4", "314": "GB Kirokaze-4", "315": "GB Cyber-4", "316": "GB Wish-4", "317": "GB Grapefruit-4", "318": "GB Ice Cream-4", "319": "GB Red_Blue-4", "320": "Gold GB-4", "321": "GB Chocolate-4", "322": "GB Gray-4", "323": "GB Spacehaze-4", "324": "GB Purple Dawn-4", "325": "Moon Crystal-4", "326": "ARNE4", "327": "Autumn Chill-4", "328": "CherryMelon-4", "329": "HallowPumpkin-4", "330": "Hollow-4", "331": "Lavender4", "332": "MAW-4", "333": "Voltage Warning-4", "334": "Tritanopia-5", "335": "Rabbit 7", "336": "Amiga 2600 NTSC-127", "337": "Amiga 2600 PAL-104", "338": "Amiga 2600 SECAM-8", "339": "Amiga 7800 M.E.S.S-256", "340": "Amiga 7800-256", "341": "Amstrad CPC-27", "342": "Apple II-15", "343": "Atari 8-Bit Series - GTIA-256", "344": "CGA-16", "345": "CGA Mode 0 [Low]-4", "346": "CGA Mode 0 [High]-4", "347": "CGA Mode 1 [Low]-4", "348": "CGA Mode 1 [High]-4", "349": "CGA Mode 2 [Low]-4", "350": "CGA Mode 2 [High]-4", "351": "Commodore 64 - Pepto-16", "352": "Commodore 64 - Colodore-16", "353": "Commodore VIC-20-16", "354": "Colecovision-15", "355": "Japanese Machine Palette-16", "356": "Macintosh II-16", "357": "Macintosh 8-Bit System Palette-256", "358": "MSX-15", "359": "NES-55", "360": "PICO-8-16", "361": "RISC OS-16", "362": "SAM Coupe-128", "363": "Thomson MO5-16", "364": "TRS-80 Color Computer Palette-4", "365": "Virtual Boy interpreted-4", "366": "VGA-244", "367": "Win 95-256", "368": "ZX Spectrum-15", "369": "GNOME 32", "370": "Electronic Crayon 22", "371": "Chip16", "372": "Deluxe Paint-222", "373": "FlatUI-20", "374": "MakeCode Arcade Palette-15", "375": "Oekaki-20", "376": "Legacy Paint-16", "377": "XP Paint-28", "378": "Vista Paint-28", "379": "Piet Palette-5", "380": "Japanese Woodblock Palette-12", "381": "Human Faces-94", "382": "HSV Palette-96", "383": "ST24 Christmas", "384": "Reds-24" } },
      { "type": "choice", "name": "Palette Order", "default": "0", "pos": "25", "choices": { "0": "Default", "1": "Randomized", "2": "Mirrored" } },
      { "type": "choice", "name": "Palette A", "default": "16", "pos": "26", "choices": { "0": "Black & White-2", "1": "Red-Green-Blue-3", "2": "Black with Red-Green-Blue-4", "3": "Black & White with Red-Green-Blue-5", "4": "Cyan-Magenta-Yellow-3", "5": "Cyan-Magenta-Yellow-Black-4", "6": "White-Cyan-Magenta-Yellow-Black-5", "7": "Red-Green-Blue with Cyan-Magenta-Yellow-6", "8": "1-Bit RGB-8", "9": "Aurora-256", "10": "Zenit-241", "11": "Game Builder Garage: Texture-Sprite Editor Palette-117", "12": "Duel-256", "13": "Hocus Pocus Palette-256", "14": "PLAYPAL-249", "15": "Sonic Robo Blast 2-256", "16": "Uzebox-256", "17": "Andrew Kensler - 16", "18": "Andrew Kensler - 32", "19": "Andrew Kensler - 54", "20": "AAP-Micro 12", "21": "AAP-16", "22": "AAP-64", "23": "AAP-RadiantPLUS-96", "24": "AAP-SPLENDOR128", "25": "AAP-DGA16", "26": "Cheerful-32", "27": "DB8", "28": "DB16", "29": "DB32", "30": "DB-ISO22", "31": "DimWiddy 17", "32": "DimWiddy 23", "33": "Endesga-4", "34": "Endesga-8", "35": "Endesga-16", "36": "Endesga-32", "37": "Endesga-36", "38": "Endesga-64", "39": "Famicube-64", "40": "Juicy-32", "41": "Juicy-56", "42": "XAIUE-22", "43": "15P-DX", "44": "20P-DX", "45": "24P-DX", "46": "Cabana-64", "47": "Fantasy 16", "48": "Fantasy 24", "49": "Tranquil Fantasy 23", "50": "Tranquility Plus 39", "51": "Faraway 48", "52": "Fleja Master Palette-33", "53": "Koni32", "54": "Linear Color Palette Basic-31", "55": "LEGO colors-43", "56": "Lego Colours 2021-40", "57": "Vines Flexible Linear Ramps-38", "58": "Arcade Standard 29", "59": "ARQ16", "60": "Atom-8", "61": "BLK 36", "62": "BLK-NEO-46", "63": "Broken Facility-40", "64": "Bubblegum-16", "65": "CPC BOY-32", "66": "Cade 15", "67": "Calder 8-11", "68": "CD-BAC-16", "69": "CG Arne-16", "70": "DinoKnight 16", "71": "||||-22", "72": "FZT Ethereal 16", "73": "Indecision-17", "74": "Island Joy 16", "75": "Journey-64", "76": "Shallowmarsh26", "77": "Lago Nenufar (Lake Water Lily)-19", "78": "Juicy 17", "79": "ChocolateGanache-96", "80": "Bright Winter 1-74", "81": "Bright Winter 2-83", "82": "Kawaii16", "83": "0xdb-01-17", "84": "GZXP-11", "85": "Chromatic16", "86": "Piet Coding Language-20", "87": "Matrix-96", "88": "Material Design-96", "89": "Rainbow-88", "90": "Rainbow-96", "91": "SCRJ-XXXVI-36", "92": "Pxls Default-32", "93": "Lospec500-42", "94": "Moderna-24", "95": "Oak21", "96": "Nature's Embrace 55", "97": "RBYPGO-94", "98": "New Worlds 46", "99": "Nauris-16", "100": "Dynamite-40", "101": "Interstate 28", "102": "Downgraded 32", "103": "Pear 36", "104": "Pineapple 32", "105": "Peachy Pop 16", "106": "Resurrect 32", "107": "Rosy 42", "108": "SLSO-CLR17", "109": "Softy 15", "110": "SPEC12", "111": "The Roarin 80's", "112": "Starmancer-52", "113": "SuperFuture25", "114": "SUNSHINE 35", "115": "Sweetie 16", "116": "Calm 48", "117": "Optimism-32", "118": "Taffy 16", "119": "Todayland Palette V2-25", "120": "TriRampo-12", "121": "r|place 2022-32", "122": "Tropical Cone 24", "123": "Vivid-17", "124": "SHIDO50+-72", "125": "Intacto14", "126": "Itatsi-23", "127": "ENOS16", "128": "Grixel Grotto-16", "129": "Superb 8", "130": "Undertones-17", "131": "Tango-28", "132": "Cheese Palette-28", "133": "Equpix 15", "134": "Zughy 32", "135": "Voodo34", "136": "Franzston 30", "137": "Night 16", "138": "Star 29", "139": "Star 34", "140": "Still-Life-14", "141": "SimpleJPC-16", "142": "Acid 15", "143": "Battery 24", "144": "Clumpy 18", "145": "Cthulhu-16", "146": "Crimso 11-16", "147": "Copper-Tech-16", "148": "DRZ15A", "149": "Eggy 15", "150": "Europa 16", "151": "GreyT-bit-8", "152": "Jewel-15", "153": "Polar 11", "154": "Sheltzy 32", "155": "Wyrm 24", "156": "Yume Nikki-24", "157": "Rube-Goldberg-9", "158": "BoomBoom-7", "159": "Generic-8", "160": "Crayola Blind-9", "161": "FunkyFuture8", "162": "The Golden Wall Palette-7", "163": "Matriax8c", "164": "NT1H-26", "165": "JerryPie 22", "166": "Nineties Nine-9", "167": "On70-35", "168": "ANB16", "169": "Retrocal-8", "170": "Punolit-21", "171": "Luap 40", "172": "Autum Villan 6", "173": "Autum 15", "174": "Autum 15 [Yellow]", "175": "Galaxy Flame-16", "176": "Cretaceous-16", "177": "Antiquity16", "178": "Mushroom-14", "179": "Aerugo-32", "180": "Hotel Paintings 6", "181": "Nopal-12", "182": "Brightness GPY-3", "183": "Blessing-5", "184": "Fairydust 8", "185": "Vanilla MilkShake-16", "186": "Fuzzy Four-4", "187": "Fairy Tales-8", "188": "Naji 16", "189": "Easter Island-16", "190": "Pastel and Darks 58 Palette", "191": "17 Pastels", "192": "NOSTALGIA15", "193": "Ocaso-17", "194": "Oh Hell, Pastel-15", "195": "Pollen-8", "196": "KULE-16", "197": "Hydrangea 11", "198": "Fluffy8", "199": "ST 8 R&B Remake", "200": "Neon Space-10", "201": "Cyclope6", "202": "Sy17", "203": "Syz15", "204": "TUI-15", "205": "Cave-8", "206": "Psygnosia-16", "207": "MarshMellow32", "208": "Lost Century 24", "209": "Finlal 11", "210": "Industrial Factory 16", "211": "Murder Mystery 16", "212": "Fate & Destiny 12", "213": "Vinik 24", "214": "YKB-22", "215": "Halloween-7", "216": "Graveyard-21", "217": "Steam Lords-16", "218": "Frostical-18", "219": "DeuteroSpill-9", "220": "Cool Bone 7", "221": "Muted Ally 6", "222": "EPHEMERA-12", "223": "Ink-5", "224": "Violet Dreams-8", "225": "Tinyfolks-5", "226": "Old Gold 7", "227": "Rosemoss-8", "228": "AAP-RadiantXV-15", "229": "AAP-Majesty XVII-17", "230": "Dead Weight-8", "231": "Mojave20", "232": "Petite-8", "233": "Petite-8 Afterdark", "234": "XAIUE-Radiant-22", "235": "Daruda 22", "236": "Firestorm-9", "237": "Borkfest-8", "238": "Spicy 07", "239": "Rust-6", "240": "Apricot-6", "241": "SuperNova 7", "242": "Pastry-5", "243": "Sandy 06", "244": "Illumination-5", "245": "NYX8", "246": "Dream Haze 8", "247": "OIL6", "248": "Regal10", "249": "Soft Demon 7", "250": "SGM-Palette 2-17", "251": "Midnight ablaze-7", "252": "Black Cherry-5", "253": "Sunset Red-5", "254": "INKPINK-6", "255": "Brash Pink-5", "256": "Pink Neon Sign 6", "257": "Enchanted Purple-12", "258": "Arch-11", "259": "Spacey Easter-17", "260": "Fornax Void I-254", "261": "Fornax Void II-128", "262": "Pixelwave-12", "263": "S1-6", "264": "Berry Nebula-8", "265": "ABYSS-9", "266": "Moonlight 15", "267": "Moonlit-39", "268": "H2O-10", "269": "Magic Waters 9", "270": "Bluem0ld-4", "271": "Moss-5", "272": "DEEP MAZE-7", "273": "Toxic Slime-5", "274": "Lush Green-6", "275": "Tsunami-5", "276": "Cryptic Ocean-6", "277": "Marsh Madness-5", "278": "OXYD-8", "279": "Pink&Green-8", "280": "Walking in the Woods 8", "281": "Paper 8", "282": "Sahara Pastell-7", "283": "Sunflower Painting 7", "284": "Art Hoe Aesthetic 7", "285": "Sky5-7", "286": "Ocean Glass-8", "287": "RoyalGuard-6", "288": "Eulbink-7", "289": "Winter Wonderland-8", "290": "Moon Squid 7", "291": "Stratus-5", "292": "Arctic Dust-5", "293": "CL8UDS", "294": "Lilac Skies 5", "295": "Sea of Fire-6", "296": "Autochrome 3", "297": "Autochrome 5", "298": "GB Default 1-4", "299": "GB Default 2-4", "300": "GB Andrade-4", "301": "GB Blue Seni-4", "302": "GB Blackzone-4", "303": "GB Suburb-4", "304": "GB Crimson-4", "305": "GB Didi-4", "306": "GB Dirty-4", "307": "GB Arne-4", "308": "GB Easy-4", "309": "GB Forest-4", "310": "GB Harsh Green-4", "311": "GB Light Green-4", "312": "GB Nostalgia-4", "313": "GB Platinum-4", "314": "GB Kirokaze-4", "315": "GB Cyber-4", "316": "GB Wish-4", "317": "GB Grapefruit-4", "318": "GB Ice Cream-4", "319": "GB Red_Blue-4", "320": "Gold GB-4", "321": "GB Chocolate-4", "322": "GB Gray-4", "323": "GB Spacehaze-4", "324": "GB Purple Dawn-4", "325": "Moon Crystal-4", "326": "ARNE4", "327": "Autumn Chill-4", "328": "CherryMelon-4", "329": "HallowPumpkin-4", "330": "Hollow-4", "331": "Lavender4", "332": "MAW-4", "333": "Voltage Warning-4", "334": "Tritanopia-5", "335": "Rabbit 7", "336": "Amiga 2600 NTSC-127", "337": "Amiga 2600 PAL-104", "338": "Amiga 2600 SECAM-8", "339": "Amiga 7800 M.E.S.S-256", "340": "Amiga 7800-256", "341": "Amstrad CPC-27", "342": "Apple II-15", "343": "Atari 8-Bit Series - GTIA-256", "344": "CGA-16", "345": "CGA Mode 0 [Low]-4", "346": "CGA Mode 0 [High]-4", "347": "CGA Mode 1 [Low]-4", "348": "CGA Mode 1 [High]-4", "349": "CGA Mode 2 [Low]-4", "350": "CGA Mode 2 [High]-4", "351": "Commodore 64 - Pepto-16", "352": "Commodore 64 - Colodore-16", "353": "Commodore VIC-20-16", "354": "Colecovision-15", "355": "Japanese Machine Palette-16", "356": "Macintosh II-16", "357": "Macintosh 8-Bit System Palette-256", "358": "MSX-15", "359": "NES-55", "360": "PICO-8-16", "361": "RISC OS-16", "362": "SAM Coupe-128", "363": "Thomson MO5-16", "364": "TRS-80 Color Computer Palette-4", "365": "Virtual Boy interpreted-4", "366": "VGA-244", "367": "Win 95-256", "368": "ZX Spectrum-15", "369": "GNOME 32", "370": "Electronic Crayon 22", "371": "Chip16", "372": "Deluxe Paint-222", "373": "FlatUI-20", "374": "MakeCode Arcade Palette-15", "375": "Oekaki-20", "376": "Legacy Paint-16", "377": "XP Paint-28", "378": "Vista Paint-28", "379": "Piet Palette-5", "380": "Japanese Woodblock Palette-12", "381": "Human Faces-94", "382": "HSV Palette-96", "383": "ST24 Christmas", "384": "Reds-24" } },
      { "type": "choice", "name": "Palette A Order", "default": "0", "pos": "27", "choices": { "0": "Default", "1": "Randomized", "2": "Mirrored" } },
      { "type": "choice", "name": "Palette B", "default": "50", "pos": "28", "choices": { "0": "Black & White-2", "1": "Red-Green-Blue-3", "2": "Black with Red-Green-Blue-4", "3": "Black & White with Red-Green-Blue-5", "4": "Cyan-Magenta-Yellow-3", "5": "Cyan-Magenta-Yellow-Black-4", "6": "White-Cyan-Magenta-Yellow-Black-5", "7": "Red-Green-Blue with Cyan-Magenta-Yellow-6", "8": "1-Bit RGB-8", "9": "Aurora-256", "10": "Zenit-241", "11": "Game Builder Garage: Texture-Sprite Editor Palette-117", "12": "Duel-256", "13": "Hocus Pocus Palette-256", "14": "PLAYPAL-249", "15": "Sonic Robo Blast 2-256", "16": "Uzebox-256", "17": "Andrew Kensler - 16", "18": "Andrew Kensler - 32", "19": "Andrew Kensler - 54", "20": "AAP-Micro 12", "21": "AAP-16", "22": "AAP-64", "23": "AAP-RadiantPLUS-96", "24": "AAP-SPLENDOR128", "25": "AAP-DGA16", "26": "Cheerful-32", "27": "DB8", "28": "DB16", "29": "DB32", "30": "DB-ISO22", "31": "DimWiddy 17", "32": "DimWiddy 23", "33": "Endesga-4", "34": "Endesga-8", "35": "Endesga-16", "36": "Endesga-32", "37": "Endesga-36", "38": "Endesga-64", "39": "Famicube-64", "40": "Juicy-32", "41": "Juicy-56", "42": "XAIUE-22", "43": "15P-DX", "44": "20P-DX", "45": "24P-DX", "46": "Cabana-64", "47": "Fantasy 16", "48": "Fantasy 24", "49": "Tranquil Fantasy 23", "50": "Tranquility Plus 39", "51": "Faraway 48", "52": "Fleja Master Palette-33", "53": "Koni32", "54": "Linear Color Palette Basic-31", "55": "LEGO colors-43", "56": "Lego Colours 2021-40", "57": "Vines Flexible Linear Ramps-38", "58": "Arcade Standard 29", "59": "ARQ16", "60": "Atom-8", "61": "BLK 36", "62": "BLK-NEO-46", "63": "Broken Facility-40", "64": "Bubblegum-16", "65": "CPC BOY-32", "66": "Cade 15", "67": "Calder 8-11", "68": "CD-BAC-16", "69": "CG Arne-16", "70": "DinoKnight 16", "71": "||||-22", "72": "FZT Ethereal 16", "73": "Indecision-17", "74": "Island Joy 16", "75": "Journey-64", "76": "Shallowmarsh26", "77": "Lago Nenufar (Lake Water Lily)-19", "78": "Juicy 17", "79": "ChocolateGanache-96", "80": "Bright Winter 1-74", "81": "Bright Winter 2-83", "82": "Kawaii16", "83": "0xdb-01-17", "84": "GZXP-11", "85": "Chromatic16", "86": "Piet Coding Language-20", "87": "Matrix-96", "88": "Material Design-96", "89": "Rainbow-88", "90": "Rainbow-96", "91": "SCRJ-XXXVI-36", "92": "Pxls Default-32", "93": "Lospec500-42", "94": "Moderna-24", "95": "Oak21", "96": "Nature's Embrace 55", "97": "RBYPGO-94", "98": "New Worlds 46", "99": "Nauris-16", "100": "Dynamite-40", "101": "Interstate 28", "102": "Downgraded 32", "103": "Pear 36", "104": "Pineapple 32", "105": "Peachy Pop 16", "106": "Resurrect 32", "107": "Rosy 42", "108": "SLSO-CLR17", "109": "Softy 15", "110": "SPEC12", "111": "The Roarin 80's", "112": "Starmancer-52", "113": "SuperFuture25", "114": "SUNSHINE 35", "115": "Sweetie 16", "116": "Calm 48", "117": "Optimism-32", "118": "Taffy 16", "119": "Todayland Palette V2-25", "120": "TriRampo-12", "121": "r|place 2022-32", "122": "Tropical Cone 24", "123": "Vivid-17", "124": "SHIDO50+-72", "125": "Intacto14", "126": "Itatsi-23", "127": "ENOS16", "128": "Grixel Grotto-16", "129": "Superb 8", "130": "Undertones-17", "131": "Tango-28", "132": "Cheese Palette-28", "133": "Equpix 15", "134": "Zughy 32", "135": "Voodo34", "136": "Franzston 30", "137": "Night 16", "138": "Star 29", "139": "Star 34", "140": "Still-Life-14", "141": "SimpleJPC-16", "142": "Acid 15", "143": "Battery 24", "144": "Clumpy 18", "145": "Cthulhu-16", "146": "Crimso 11-16", "147": "Copper-Tech-16", "148": "DRZ15A", "149": "Eggy 15", "150": "Europa 16", "151": "GreyT-bit-8", "152": "Jewel-15", "153": "Polar 11", "154": "Sheltzy 32", "155": "Wyrm 24", "156": "Yume Nikki-24", "157": "Rube-Goldberg-9", "158": "BoomBoom-7", "159": "Generic-8", "160": "Crayola Blind-9", "161": "FunkyFuture8", "162": "The Golden Wall Palette-7", "163": "Matriax8c", "164": "NT1H-26", "165": "JerryPie 22", "166": "Nineties Nine-9", "167": "On70-35", "168": "ANB16", "169": "Retrocal-8", "170": "Punolit-21", "171": "Luap 40", "172": "Autum Villan 6", "173": "Autum 15", "174": "Autum 15 [Yellow]", "175": "Galaxy Flame-16", "176": "Cretaceous-16", "177": "Antiquity16", "178": "Mushroom-14", "179": "Aerugo-32", "180": "Hotel Paintings 6", "181": "Nopal-12", "182": "Brightness GPY-3", "183": "Blessing-5", "184": "Fairydust 8", "185": "Vanilla MilkShake-16", "186": "Fuzzy Four-4", "187": "Fairy Tales-8", "188": "Naji 16", "189": "Easter Island-16", "190": "Pastel and Darks 58 Palette", "191": "17 Pastels", "192": "NOSTALGIA15", "193": "Ocaso-17", "194": "Oh Hell, Pastel-15", "195": "Pollen-8", "196": "KULE-16", "197": "Hydrangea 11", "198": "Fluffy8", "199": "ST 8 R&B Remake", "200": "Neon Space-10", "201": "Cyclope6", "202": "Sy17", "203": "Syz15", "204": "TUI-15", "205": "Cave-8", "206": "Psygnosia-16", "207": "MarshMellow32", "208": "Lost Century 24", "209": "Finlal 11", "210": "Industrial Factory 16", "211": "Murder Mystery 16", "212": "Fate & Destiny 12", "213": "Vinik 24", "214": "YKB-22", "215": "Halloween-7", "216": "Graveyard-21", "217": "Steam Lords-16", "218": "Frostical-18", "219": "DeuteroSpill-9", "220": "Cool Bone 7", "221": "Muted Ally 6", "222": "EPHEMERA-12", "223": "Ink-5", "224": "Violet Dreams-8", "225": "Tinyfolks-5", "226": "Old Gold 7", "227": "Rosemoss-8", "228": "AAP-RadiantXV-15", "229": "AAP-Majesty XVII-17", "230": "Dead Weight-8", "231": "Mojave20", "232": "Petite-8", "233": "Petite-8 Afterdark", "234": "XAIUE-Radiant-22", "235": "Daruda 22", "236": "Firestorm-9", "237": "Borkfest-8", "238": "Spicy 07", "239": "Rust-6", "240": "Apricot-6", "241": "SuperNova 7", "242": "Pastry-5", "243": "Sandy 06", "244": "Illumination-5", "245": "NYX8", "246": "Dream Haze 8", "247": "OIL6", "248": "Regal10", "249": "Soft Demon 7", "250": "SGM-Palette 2-17", "251": "Midnight ablaze-7", "252": "Black Cherry-5", "253": "Sunset Red-5", "254": "INKPINK-6", "255": "Brash Pink-5", "256": "Pink Neon Sign 6", "257": "Enchanted Purple-12", "258": "Arch-11", "259": "Spacey Easter-17", "260": "Fornax Void I-254", "261": "Fornax Void II-128", "262": "Pixelwave-12", "263": "S1-6", "264": "Berry Nebula-8", "265": "ABYSS-9", "266": "Moonlight 15", "267": "Moonlit-39", "268": "H2O-10", "269": "Magic Waters 9", "270": "Bluem0ld-4", "271": "Moss-5", "272": "DEEP MAZE-7", "273": "Toxic Slime-5", "274": "Lush Green-6", "275": "Tsunami-5", "276": "Cryptic Ocean-6", "277": "Marsh Madness-5", "278": "OXYD-8", "279": "Pink&Green-8", "280": "Walking in the Woods 8", "281": "Paper 8", "282": "Sahara Pastell-7", "283": "Sunflower Painting 7", "284": "Art Hoe Aesthetic 7", "285": "Sky5-7", "286": "Ocean Glass-8", "287": "RoyalGuard-6", "288": "Eulbink-7", "289": "Winter Wonderland-8", "290": "Moon Squid 7", "291": "Stratus-5", "292": "Arctic Dust-5", "293": "CL8UDS", "294": "Lilac Skies 5", "295": "Sea of Fire-6", "296": "Autochrome 3", "297": "Autochrome 5", "298": "GB Default 1-4", "299": "GB Default 2-4", "300": "GB Andrade-4", "301": "GB Blue Seni-4", "302": "GB Blackzone-4", "303": "GB Suburb-4", "304": "GB Crimson-4", "305": "GB Didi-4", "306": "GB Dirty-4", "307": "GB Arne-4", "308": "GB Easy-4", "309": "GB Forest-4", "310": "GB Harsh Green-4", "311": "GB Light Green-4", "312": "GB Nostalgia-4", "313": "GB Platinum-4", "314": "GB Kirokaze-4", "315": "GB Cyber-4", "316": "GB Wish-4", "317": "GB Grapefruit-4", "318": "GB Ice Cream-4", "319": "GB Red_Blue-4", "320": "Gold GB-4", "321": "GB Chocolate-4", "322": "GB Gray-4", "323": "GB Spacehaze-4", "324": "GB Purple Dawn-4", "325": "Moon Crystal-4", "326": "ARNE4", "327": "Autumn Chill-4", "328": "CherryMelon-4", "329": "HallowPumpkin-4", "330": "Hollow-4", "331": "Lavender4", "332": "MAW-4", "333": "Voltage Warning-4", "334": "Tritanopia-5", "335": "Rabbit 7", "336": "Amiga 2600 NTSC-127", "337": "Amiga 2600 PAL-104", "338": "Amiga 2600 SECAM-8", "339": "Amiga 7800 M.E.S.S-256", "340": "Amiga 7800-256", "341": "Amstrad CPC-27", "342": "Apple II-15", "343": "Atari 8-Bit Series - GTIA-256", "344": "CGA-16", "345": "CGA Mode 0 [Low]-4", "346": "CGA Mode 0 [High]-4", "347": "CGA Mode 1 [Low]-4", "348": "CGA Mode 1 [High]-4", "349": "CGA Mode 2 [Low]-4", "350": "CGA Mode 2 [High]-4", "351": "Commodore 64 - Pepto-16", "352": "Commodore 64 - Colodore-16", "353": "Commodore VIC-20-16", "354": "Colecovision-15", "355": "Japanese Machine Palette-16", "356": "Macintosh II-16", "357": "Macintosh 8-Bit System Palette-256", "358": "MSX-15", "359": "NES-55", "360": "PICO-8-16", "361": "RISC OS-16", "362": "SAM Coupe-128", "363": "Thomson MO5-16", "364": "TRS-80 Color Computer Palette-4", "365": "Virtual Boy interpreted-4", "366": "VGA-244", "367": "Win 95-256", "368": "ZX Spectrum-15", "369": "GNOME 32", "370": "Electronic Crayon 22", "371": "Chip16", "372": "Deluxe Paint-222", "373": "FlatUI-20", "374": "MakeCode Arcade Palette-15", "375": "Oekaki-20", "376": "Legacy Paint-16", "377": "XP Paint-28", "378": "Vista Paint-28", "379": "Piet Palette-5", "380": "Japanese Woodblock Palette-12", "381": "Human Faces-94", "382": "HSV Palette-96", "383": "ST24 Christmas", "384": "Reds-24" } },
      { "type": "choice", "name": "Palette B Order", "default": "0", "pos": "29", "choices": { "0": "Default", "1": "Randomized", "2": "Mirrored" } },
      { "type": "int", "name": "Color Count", "default": "8", "min": "2", "max": "64", "pos": "30" },
      { "type": "choice", "name": "Palette Order", "default": "0", "pos": "31", "choices": { "0": "Default", "1": "Randomized", "2": "Mirrored" } },
      { "type": "int", "name": "Color Count A", "default": "8", "min": "2", "max": "64", "pos": "32" },
      { "type": "choice", "name": "Palette A Order", "default": "0", "pos": "33", "choices": { "0": "Default", "1": "Randomized", "2": "Mirrored" } },
      { "type": "int", "name": "Color Count B", "default": "8", "min": "2", "max": "64", "pos": "34" },
      { "type": "choice", "name": "Palette B Order", "default": "0", "pos": "35", "choices": { "0": "Default", "1": "Randomized", "2": "Mirrored" } },
      { "type": "bool", "name": "Reverse Layers", "default": "0", "pos": "36" },
      { "type": "bool", "name": "Reverse Non-Target Layers", "default": "0", "pos": "37" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "38", "choices": { "0": "Import One File Only", "1": "Import Two Files" }, "visibility": "0" },
      { "type": "file", "name": "File", "default": "", "pos": "39", "visibility": "0" },
      { "type": "file", "name": "File A", "default": "", "pos": "40", "visibility": "0" },
      { "type": "file", "name": "File B", "default": "", "pos": "41", "visibility": "0" },
      { "type": "int", "name": "Color Count", "default": "8", "min": "2", "max": "64", "pos": "42", "visibility": "0" },
      { "type": "bool", "name": "Randomize Color Position", "default": "0", "pos": "43", "visibility": "0" },
      { "type": "int", "name": "Color Count A", "default": "8", "min": "2", "max": "64", "pos": "44", "visibility": "0" },
      { "type": "bool", "name": "Randomize Colors A Position", "default": "0", "pos": "45", "visibility": "0" },
      { "type": "int", "name": "Color Count B", "default": "8", "min": "2", "max": "64", "pos": "46", "visibility": "0" },
      { "type": "bool", "name": "Randomize Colors B Position", "default": "0", "pos": "47", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Orientation" },
      { "type": "choice", "name": "X-Direction", "default": "0", "pos": "48", "choices": { "0": "Default", "1": "Mirrored" }, "visibility": "0" },
      { "type": "choice", "name": "Y-Direction", "default": "0", "pos": "49", "choices": { "0": "Default", "1": "Mirrored" }, "visibility": "0" },
      { "type": "note", "text": "Under Development!" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian Latest update: 2023/9/11." }
      ]
    },
    {
      "name": "Mitchell Concatenation", "lang": "en", "command": "fx_rep_mitchell_concatenation", "command_preview": "fx_rep_mitchell_concatenation_preview", "parameters": [
      { "type": "note", "text": "This filter is a recreation of <a href=\"http://www.kerrymitchell.art/spacefilling-blog/2013/11/concatenations.html\">Kerry's Mitchell Concatenation</a>.\n\nWarning: Make sure of the options being applied!" },
      { "type": "separator" },
      { "type": "note", "text": "Initial" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "1", "choices": { "0": "Singular", "1": "Dual" } },
      { "type": "float", "name": "Pixel Size(%)", "default": "0", "min": "0", "max": "50", "pos": "2" },
      { "type": "choice", "name": "Output", "default": "0", "pos": "3", "choices": { "0": "New Dimension", "1": "Old Dimension" } },
      { "type": "separator" },
      { "type": "note", "text": "Starting Point" },
      { "type": "int", "name": "Start", "default": "1", "min": "1", "max": "2000000", "pos": "4" },
      { "type": "int", "name": "Start A", "default": "1", "min": "1", "max": "2000000", "pos": "5" },
      { "type": "int", "name": "Start B", "default": "1", "min": "1", "max": "2000000", "pos": "6" },
      { "type": "bool", "name": "Link Start Numbers?", "default": "0", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Base System" },
      { "type": "int", "name": "Base", "default": "10", "min": "2", "max": "1000", "pos": "8" },
      { "type": "int", "name": "Base A", "default": "10", "min": "2", "max": "1000", "pos": "9" },
      { "type": "int", "name": "Base B", "default": "10", "min": "2", "max": "1000", "pos": "10" },
      { "type": "bool", "name": "Link Bases?", "default": "0", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Method" },
      { "type": "choice", "name": "Method", "default": "0", "pos": "12", "choices": { "0": "Subtraction", "1": "Addition", "2": "Multiplication" } },
      { "type": "choice", "name": "Method A", "default": "0", "pos": "13", "choices": { "0": "Subtraction", "1": "Addition", "2": "Multiplication" } },
      { "type": "choice", "name": "Method B", "default": "1", "pos": "14", "choices": { "0": "Subtraction", "1": "Addition", "2": "Multiplication" } },
      { "type": "bool", "name": "Link Method?", "default": "0", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "Palette" },
      { "type": "choice", "name": "Mode", "default": "1", "pos": "16", "choices": { "0": "Singular", "1": "Dual" } },
      { "type": "choice", "name": "Set", "default": "0", "pos": "17", "choices": { "0": "Foreground", "1": "Background" } },
      { "type": "color", "name": "Color 1", "default": "255,255,255", "pos": "18" },
      { "type": "color", "name": "Color 2", "default": "243,235,227", "pos": "21" },
      { "type": "color", "name": "Color 3", "default": "200,200,136", "pos": "24" },
      { "type": "color", "name": "Color 4", "default": "124,143,91", "pos": "27" },
      { "type": "color", "name": "Color 5", "default": "53,74,67", "pos": "30" },
      { "type": "color", "name": "Color 6", "default": "34,23,36", "pos": "33" },
      { "type": "color", "name": "Color 7", "default": "0,0,0", "pos": "36" },
      { "type": "color", "name": "Color 1", "default": "206,206,206", "pos": "39" },
      { "type": "color", "name": "Color 2", "default": "198,186,182", "pos": "42" },
      { "type": "color", "name": "Color 3", "default": "166,135,182", "pos": "45" },
      { "type": "color", "name": "Color 4", "default": "120,105,70", "pos": "48" },
      { "type": "color", "name": "Color 5", "default": "55,69,48", "pos": "51" },
      { "type": "color", "name": "Color 6", "default": "37,33,47", "pos": "54" },
      { "type": "color", "name": "Color 7", "default": "24,24,24", "pos": "57" },
      { "type": "color", "name": "Color 1", "default": "255,255,255", "pos": "60" },
      { "type": "color", "name": "Color 2", "default": "243,236,227", "pos": "63" },
      { "type": "color", "name": "Color 3", "default": "186,200,136", "pos": "66" },
      { "type": "color", "name": "Color 4", "default": "102,143,91", "pos": "69" },
      { "type": "color", "name": "Color 5", "default": "55,53,74", "pos": "72" },
      { "type": "color", "name": "Color 6", "default": "36,23,25", "pos": "75" },
      { "type": "color", "name": "Color 7", "default": "0,0,0", "pos": "78" },
      { "type": "bool", "name": "Link Color Palettes?", "default": "0", "pos": "81" },
      { "type": "separator" },
      { "type": "note", "text": "Shape" },
      { "type": "bool", "name": "Use Shape", "default": "1", "pos": "82" },
      { "type": "choice", "name": "Tiled Shape", "default": "2", "pos": "83", "choices": { "0": "Australia", "1": "Barbedwire", "2": "Circle", "3": "Crosshair", "4": "Cupid", "5": "Diamond", "6": "Dragon Curve-[D]", "7": "Dragonfly", "8": "Fern-[D]", "9": "Flip", "10": "Gear-[D]", "11": "Gumleaf", "12": "Heart", "13": "Information", "14": "Kookaburra", "15": "Mail", "16": "Mapleleaf", "17": "Paint Splat", "18": "Paw", "19": "Phone", "20": "Polygon-[D]", "21": "Rooster", "22": "Shopping Cart", "23": "Snowflake-[D]", "24": "Star-[D]" } },
      { "type": "bool", "name": "Use Image as shape?", "default": "0", "pos": "84" },
      { "type": "float", "name": "Ratio(%)", "default": "100", "min": ".1", "max": "100", "pos": "85" },
      { "type": "float", "name": "Angle", "default": "0", "min": "-180", "max": "180", "pos": "86" },
      { "type": "choice", "name": "Direction", "default": "0", "pos": "87", "choices": { "0": "None", "1": "Mirror X", "2": "Mirror Y" } },
      { "type": "choice", "name": "Tile Boundary", "default": "0", "pos": "88", "choices": { "0": "Periodic", "1": "Mirror - X", "2": "Mirror - Y", "3": "Mirror - XY" } },
      { "type": "bool", "name": "Fit Tile?", "default": "1", "pos": "89" },
      { "type": "int", "name": "Dragon Curve Recursion", "default": "10", "min": "0", "max": "30", "pos": "90" },
      { "type": "float", "name": "Dragon Curve Rotation", "default": "0", "min": "-180", "max": "180", "pos": "91" },
      { "type": "choice", "name": "Fern Type", "default": "0", "pos": "92", "choices": { "0": "Asplenium Adiantum-Nigrum", "1": "Thelypteridaceae" } },
      { "type": "float", "name": "Fern Density (%)", "default": "100", "min": "0", "max": "300", "pos": "93" },
      { "type": "int", "name": "Gear Teeth Count", "default": "8", "min": "3", "max": "32", "pos": "94" },
      { "type": "float", "name": "Gear Height (%)", "default": "25", "min": "0.1", "max": "100", "pos": "95" },
      { "type": "float", "name": "Gear Offset Teeth (%)", "default": "0", "min": "0", "max": "100", "pos": "96" },
      { "type": "float", "name": "Gear Inner Ratio (%)", "default": "50", "min": "0.1", "max": "100", "pos": "97" },
      { "type": "int", "name": "Polygon Vertices", "default": "5", "min": "3", "max": "100", "pos": "98" },
      { "type": "int", "name": "Snowflake Recursion", "default": "5", "min": "1", "max": "6", "pos": "99" },
      { "type": "int", "name": "Star Branches", "default": "3", "min": "5", "max": "100", "pos": "100" },
      { "type": "float", "name": "Star Thickness (%)", "default": "38", "min": ".1", "max": "100", "pos": "101" },
      { "type": "separator" },
      { "type": "note", "text": "Misc" },
      { "type": "choice", "name": "Position", "default": "0", "pos": "102", "choices": { "0": "10", "1": "100", "2": "1000", "3": "10000", "4": "100000" } },
      { "type": "choice", "name": "Position A", "default": "0", "pos": "103", "choices": { "0": "10", "1": "100", "2": "1000", "3": "10000", "4": "100000" } },
      { "type": "choice", "name": "Position B", "default": "0", "pos": "104", "choices": { "0": "10", "1": "100", "2": "1000", "3": "10000", "4": "100000" } },
      { "type": "button", "name": "Push into Start Number", "pos": "105" },
      { "type": "button", "name": "Push into Start A", "pos": "106" },
      { "type": "button", "name": "Push into Start B", "pos": "107" },
      { "type": "button", "name": "Push into Both", "pos": "108" },
      { "type": "int", "name": "Start A", "default": "1", "min": "1", "max": "2000000", "pos": "109", "visibility": "0" },
      { "type": "int", "name": "Start B", "default": "1", "min": "1", "max": "2000000", "pos": "110", "visibility": "0" },
      { "type": "int", "name": "Base A", "default": "10", "min": "2", "max": "1000", "pos": "111", "visibility": "0" },
      { "type": "int", "name": "Base B", "default": "10", "min": "2", "max": "1000", "pos": "112", "visibility": "0" },
      { "type": "choice", "name": "Method A", "default": "0", "pos": "113", "choices": { "0": "Subtraction", "1": "Addition", "2": "Multiplication" }, "visibility": "0" },
      { "type": "choice", "name": "Method B", "default": "0", "pos": "114", "choices": { "0": "Subtraction", "1": "Addition", "2": "Multiplication" }, "visibility": "0" },
      { "type": "color", "name": "Color 1", "default": "255,255,255", "pos": "115", "visibility": "0" },
      { "type": "color", "name": "Color 2", "default": "243,235,227", "pos": "118", "visibility": "0" },
      { "type": "color", "name": "Color 3", "default": "200,200,136", "pos": "121", "visibility": "0" },
      { "type": "color", "name": "Color 4", "default": "124,143,91", "pos": "124", "visibility": "0" },
      { "type": "color", "name": "Color 5", "default": "53,74,67", "pos": "127", "visibility": "0" },
      { "type": "color", "name": "Color 6", "default": "34,23,36", "pos": "130", "visibility": "0" },
      { "type": "color", "name": "Color 7", "default": "0,0,0", "pos": "133", "visibility": "0" },
      { "type": "color", "name": "Color 1", "default": "206,206,206", "pos": "136", "visibility": "0" },
      { "type": "color", "name": "Color 2", "default": "198,186,182", "pos": "139", "visibility": "0" },
      { "type": "color", "name": "Color 3", "default": "166,135,182", "pos": "142", "visibility": "0" },
      { "type": "color", "name": "Color 4", "default": "120,105,70", "pos": "145", "visibility": "0" },
      { "type": "color", "name": "Color 5", "default": "55,69,48", "pos": "148", "visibility": "0" },
      { "type": "color", "name": "Color 6", "default": "37,33,47", "pos": "151", "visibility": "0" },
      { "type": "color", "name": "Color 7", "default": "24,24,24", "pos": "154", "visibility": "0" },
      { "type": "color", "name": "Color 1", "default": "255,255,255", "pos": "157", "visibility": "0" },
      { "type": "color", "name": "Color 2", "default": "243,236,227", "pos": "160", "visibility": "0" },
      { "type": "color", "name": "Color 3", "default": "186,200,136", "pos": "163", "visibility": "0" },
      { "type": "color", "name": "Color 4", "default": "102,143,91", "pos": "166", "visibility": "0" },
      { "type": "color", "name": "Color 5", "default": "55,53,74", "pos": "169", "visibility": "0" },
      { "type": "color", "name": "Color 6", "default": "36,23,25", "pos": "172", "visibility": "0" },
      { "type": "color", "name": "Color 7", "default": "0,0,0", "pos": "175", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian Latest update: 2022/02/08." }
      ]
    },
    {
      "name": "Nebulous", "lang": "en", "command": "fx_rep_nebulous", "command_preview": "fx_rep_nebulous_preview", "parameters": [
      { "type": "note", "text": "Based off <a href=\"https://forums.getpaint.net/topic/111774-nebulous-texture-update-ymd20170922/?tab=comments#comment-535865\">MadJik's PDN Nebulous plugin</a>. The G'MIC version of Nebulous allows you to manipulate the result by angle within the main surface and the distortion surface, and allows you to shift the positioning of the Nebulous surface. Furthermore, the G'MIC version of Nebulous doesn't use integer on the output of surface." },
      { "type": "separator" },
      { "type": "note", "text": "Surface Theme" },
      { "type": "choice", "name": "Colour Space Mode", "default": "0", "pos": "1", "choices": { "0": "RGB8", "1": "RYB8", "2": "HSI8", "3": "HSL8", "4": "HSV8", "5": "LAB8", "6": "LCH8", "7": "YIQ8", "8": "YUV8", "9": "XYZ8", "10": "YES8", "11": "Kodak 1-8", "12": "Ohta8", "13": "YCoCg-R" } },
      { "type": "separator" },
      { "type": "note", "text": "Surface Generation" },
      { "type": "float", "name": "XY-Factor", "default": "4", "min": ".1", "max": "1000", "pos": "2" },
      { "type": "float", "name": "X-Factor", "default": "10", "min": ".01", "max": "1000", "pos": "3" },
      { "type": "float", "name": "Y-Factor", "default": "10", "min": ".01", "max": "1000", "pos": "4" },
      { "type": "float", "name": "X-Shift (%)", "default": "0", "min": "-10", "max": "10", "pos": "5" },
      { "type": "float", "name": "Y-Shift (%)", "default": "0", "min": "-10", "max": "10", "pos": "6" },
      { "type": "float", "name": "Angle of Main Nebulous Surface", "default": "0", "min": "-180", "max": "180", "pos": "7" },
      { "type": "float", "name": "Wave(s)", "default": "1", "min": "-25", "max": "25", "pos": "8" },
      { "type": "float", "name": "Lighting Angle", "default": "0", "min": "-180", "max": "180", "pos": "9" },
      { "type": "float", "name": "Surface Disturbance", "default": "0", "min": "0", "max": "2000", "pos": "10" },
      { "type": "float", "name": "Surface Disturbance Multiplier", "default": "1", "min": "1", "max": "500", "pos": "11" },
      { "type": "float", "name": "Disturbance X", "default": "0", "min": "0", "max": "1000", "pos": "12" },
      { "type": "float", "name": "Disturbance Y", "default": "0", "min": "0", "max": "1000", "pos": "13" },
      { "type": "float", "name": "Angle of Disturbance Surface", "default": "0", "min": "-180", "max": "180", "pos": "14" },
      { "type": "bool", "name": "Disturbance Scale-By-Factor", "default": "0", "pos": "15" },
      { "type": "choice", "name": "Output Mode", "default": "2", "pos": "16", "choices": { "0": "Built-in Gray", "1": "Luminosity from Color", "2": "Color" } },
      { "type": "choice", "name": "Alpha Mode", "default": "0", "pos": "17", "choices": { "0": "None", "1": "Hard Light", "2": "Hard Dark", "3": "Smooth Light", "4": "Smooth Dark" } },
      { "type": "separator" },
      { "type": "note", "text": "Subpixel Processing\n\n You do not need to touch this unless you want higher amount of precision, but the difference is small. If you are using a very small surface or hard alpha mode, then it makes sense to touch subpixel processing variables." },
      { "type": "float", "name": "Subpixel Level", "default": "1", "min": "0", "max": "3", "pos": "18" },
      { "type": "choice", "name": "Subpixel Interpolation", "default": "3", "pos": "19", "choices": { "0": "Average", "1": "Linear", "2": "Grid", "3": "Bicubic", "4": "Lanczos" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian Latest update: 2019/5/11." }
      ]
    },
    {
      "name": "Newton Fractal [MadJik Style]", "lang": "en", "command": "rep_mj_newf", "command_preview": "rep_mj_newf", "parameters": [
      { "type": "note", "text": "Warning- Filter is very hard to control!Also,filter is computationally intensive!\n\nMight be solved later." },
      { "type": "separator" },
      { "type": "float", "name": "Zoom", "default": "16", "min": "1", "max": "1000000", "pos": "1" },
      { "type": "float", "name": "X-Pan", "default": "0", "min": "-10000", "max": "10000", "pos": "2" },
      { "type": "float", "name": "Y-Pan", "default": "0", "min": "-10000", "max": "10000", "pos": "3" },
      { "type": "float", "name": "Color Range", "default": "128", "min": "0", "max": "255", "pos": "4" },
      { "type": "float", "name": "Factor A", "default": "9", "min": "-100", "max": "100", "pos": "5" },
      { "type": "float", "name": "Factor B", "default": "0", "min": "-100", "max": "100", "pos": "6" },
      { "type": "float", "name": "Factor C", "default": "75", "min": "-100", "max": "100", "pos": "7" },
      { "type": "float", "name": "Factor D", "default": "5", "min": "-100", "max": "100", "pos": "8" },
      { "type": "float", "name": "Exponent", "default": "10", "min": "0", "max": "17", "pos": "9" },
      { "type": "float", "name": "Depth", "default": "50", "min": "1", "max": "500", "pos": "10" },
      { "type": "float", "name": "Background Frequency", "default": "50", "min": "1", "max": "500", "pos": "11" },
      { "type": "float", "name": "Color Angle", "default": "45", "min": "-180", "max": "180", "pos": "12" },
      { "type": "bool", "name": "Alternate Color Function", "default": "0", "pos": "13" },
      { "type": "bool", "name": "Symmetry", "default": "0", "pos": "14" },
      { "type": "bool", "name": "Channel Swap", "default": "0", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "Original Code made by MadJik - <a href=\"https://forums.getpaint.net/topic/111758-newton-fractal-texture-ymd-170915/\">Newton Fractal texture (ymd 170915" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2020/1/2." }
      ]
    },
    {
      "name": "Non-Convolution Edge Extraction", "lang": "en", "command": "fx_ncee", "command_preview": "fx_ncee_preview", "parameters": [
      { "type": "note", "text": "Based off PS Embossing filtering. The way it works is that you duplicate once and then shift with wrap-around using original image data using an angle and offset. Then finally, you invert one of the layer, and average those values. In this filter, you have several options when it comes to alpha and how the image wrap-around. Also, CMYK mode may be fixed later as I'm trying to avoid the problem with Alpha mode and CMYK mode." },
      { "type": "separator" },
      { "type": "choice", "name": "Colour Space", "default": "0", "pos": "1", "choices": { "0": "RGB8", "1": "RYB8", "2": "CMY8", "3": "CMYK8", "4": "HSI8", "5": "HSL8", "6": "HSV8", "7": "LAB8", "8": "LCH8", "9": "YIQ8", "10": "YUV8", "11": "XYZ8", "12": "YES8", "13": "Kodak 1-8", "14": "Ohta8" } },
      { "type": "separator" },
      { "type": "float", "name": "Angle", "default": "0", "min": "0", "max": "360", "pos": "2" },
      { "type": "float", "name": "Offset", "default": "1", "min": ".5", "max": "256", "pos": "3" },
      { "type": "float", "name": "Contrast Factor [%]", "default": "100", "min": "0", "max": "500", "pos": "4" },
      { "type": "choice", "name": "Wraparound Mode", "default": "2", "pos": "5", "choices": { "0": "Dirichlet", "1": "Neumann", "2": "Periodic", "3": "Mirror" } },
      { "type": "bool", "name": "Interpolation", "default": "0", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Alpha Processing" },
      { "type": "choice", "name": "Alpha Mode", "default": "0", "pos": "7", "choices": { "0": "Preserve Original Alpha", "1": "Multiply Alphas" } },
      { "type": "separator" },
      { "type": "note", "text": "Blending Processing\n\nIf you're looking for normal blending mode, you do not need to touch this and if you did, set mode to alpha and opacity to 100." },
      { "type": "choice", "name": "Blending Mode", "default": "1", "pos": "8", "choices": { "0": "add", "1": "alpha", "2": "and", "3": "average", "4": "blue", "5": "burn", "6": "darken", "7": "difference", "8": "divide", "9": "dodge", "10": "exclusion", "11": "freeze", "12": "grainextract", "13": "grainmerge", "14": "green", "15": "hardlight", "16": "hardmix", "17": "hue", "18": "interpolation", "19": "lighten", "20": "lightness", "21": "linearburn", "22": "linearlight", "23": "luminance", "24": "multiply", "25": "negation", "26": "or", "27": "overlay", "28": "pinlight", "29": "red", "30": "reflect", "31": "saturation", "32": "screen", "33": "shapeaverage", "34": "softburn", "35": "softdodge", "36": "softlight", "37": "stamp", "38": "subtract", "39": "value", "40": "vividlight", "41": "xor" } },
      { "type": "float", "name": "9. Blending Opacity", "default": "100", "min": "0", "max": "100", "pos": "9" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "10", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "11", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian Latest Update: 2019/4/25." }
      ]
    },
    {
      "name": "Non-Isometric RPG Tiler (Interactive)", "lang": "en", "command": "fx_rep_rpgtiler_noniso", "command_preview": "fx_rep_rpgtiler_noniso_preview", "parameters": [
      { "type": "note", "text": "Launch the interactive non-isometric RPG Tiling toolkit.\n\nNote : When using Custom Tileset, you must load the file in tileset!\n\n<u>Please Read Instruction Below!</u>" },
      { "type": "separator" },
      { "type": "note", "text": "Tileset" },
      { "type": "choice", "name": "Premade Tileset", "default": "0", "pos": "1", "choices": { "0": "LPC House Interior[32]", "1": "Generic Platform[32]", "2": "Metroid Like[16]", "3": "Omega Team[16]", "4": "Classic RPG[16]", "5": "Dungeon[32]", "6": "Happyland[16]" } },
      { "type": "bool", "name": "Import Custom Tileset?", "default": "0", "pos": "2" },
      { "type": "file", "name": "Tileset", "default": "", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Interactive Window Setting" },
      { "type": "int", "name": "Tile Size", "default": "32", "min": "3", "max": "128", "pos": "4" },
      { "type": "int", "name": "Max Selection Increment", "default": "2", "min": "0", "max": "8", "pos": "5" },
      { "type": "int", "name": "Interactive Tileset Width", "default": "16", "min": "2", "max": "64", "pos": "6" },
      { "type": "int", "name": "Interactive Tileset Height", "default": "16", "min": "2", "max": "64", "pos": "7" },
      { "type": "bool", "name": "Layer as Placed Tiles?", "default": "0", "pos": "8" },
      { "type": "bool", "name": "Apply Image Background on Final Image?", "default": "0", "pos": "9" },
      { "type": "choice", "name": "Alpha to RGB Background Mode", "default": "0", "pos": "10", "choices": { "0": "Checkerboard", "1": "Colored" } },
      { "type": "color", "name": "Background Colour", "default": "0,0,0", "pos": "11" },
      { "type": "float", "name": "Grid Color", "default": "0", "min": "0", "max": "255", "pos": "14" },
      { "type": "float", "name": "Trackpad Color", "default": "45", "min": "0", "max": "255", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "Preprocessing" },
      { "type": "bool", "name": "Reverse Layers?", "default": "0", "pos": "16" },
      { "type": "note", "text": "This option is usable for programs that supports editing on two or more layer at once with G'MIC-QT!" },
      { "type": "separator" },
      { "type": "note", "text": "Preview" },
      { "type": "bool", "name": "Hide Background?", "default": "0", "pos": "17" },
      { "type": "bool", "name": "Preview Grid and Tracker?", "default": "1", "pos": "18" },
      { "type": "bool", "name": "Hide Tileset?", "default": "0", "pos": "19" },
      { "type": "separator" },
      { "type": "note", "text": "Paint.NET Workaround" },
      { "type": "choice", "name": "Output Mode", "default": "0", "pos": "20", "choices": { "0": "Center Result", "1": "Output to File" } },
      { "type": "folder", "name": "Output Folder", "default": "", "pos": "21" },
      { "type": "text", "name": "Output Filename", "default": "placed_tile.png", "pos": "22" },
      { "type": "note", "text": "This section is only for Paint.NET users! If you don't use this this software, then you don't need use this section!" },
      { "type": "separator" },
      { "type": "note", "text": "\n- <u>Instruction</u> -\n\n" },
      { "type": "separator" },
      { "type": "note", "text": "Section 1 - Preview Window" },
      { "type": "separator" },
      { "type": "note", "text": "Before processing to the interactive window - Test the following conditions:\n\n1. Tileset is correct\n2. Grid fits and is very visible\n3. Tracker is very visible\n\nIf the preview looks good, then proceed to the interactive tool by clicking OK.\n\nWarning: Apply will only waste your time!" },
      { "type": "separator" },
      { "type": "note", "text": "Section 2 - Interactive Windows" },
      { "type": "separator" },
      { "type": "note", "text": "Press Escape on Canvas Window to exit!\n\n<u>Main Editing Mode</u>\n\nOn Any Windows\n\n- D: Switch between Place/Eraser Mode\n- R: Activate Replace Mode\n- W: Restore All Windows\n- SPACEBAR: Switch Editing Mode\n\nOn Canvas Window\n\n- C: Copy Mode On/Off\n- X: Cut Mode On/Off\n- Z: Undo Canvas Change\n- F: Activate/Deactivate Background Tile Layering Mode\n- G: Grid Mode On/Off\n- Q: Remove/Restore Background\n- A: Tracker On/Off\n- S: Symmetry Mode On/Off\n\n=== On Canvas[Symmetry Mode] ===\n--- 1: Switch Symmetry Axis to X-Axis\n--- 2: Switch Symmetry Axis to Y-Axis\n--- 3: Switch Symmetry Axis to Cross XY-Axis\n--- 4: Switch Symmetry Axis to Mirror XY-Axis\n--- ARROWKEY: Move Symmetry Line\n--- B: Switch Axis in Symmetry Mode\n--- M: Switch Axis in Periodic/Mirror Mode\n--- J: Symmetry Line to Center\n--- S: Deactivate Symmetry Mode\n\nOn Tileset Window\n\n- G: Grid Mode On/Off\n- CTRL+ARROWKEY : Resize Tile Selection\n- ARROWKEY : Scroll Through Tileset\n\nOn Tile Window\n\n- CTRL+ARROWKEY : Resize Tile Selection\n- ARROWKEY : Scroll Through Tileset\n- MOUSE BUTTON : Switch Between Place/Eraser Mode\n\n=== On Tile[No Symmetry Mode] ===\n--- 1: Switch Fill Boundary to Periodic\n--- 2: Switch Fill Boundary to Mirror\n--- 3: Switch Fill Boundary to Mirror X\n--- 4: Switch Fill Boundary to Mirror Y\n--- B: Switch Fill Boundary Mode\n\n<u>Row/Column Editing Mode</u>\n\nOn Any Windows\n\n- W: Restore All Windows\n- SPACEBAR: Switch Editing Mode\n\nOn Canvas Window\n\n- Z: Undo Canvas Change\n- T: Enable Row/Column Shifting Mode\n- E: Place Mode On/Off\n- G: Grid Mode On/Off\n- Q: Remove/Restore Background\n- A: Tracker On/Off\n- S: Activate Symmetrical Selection Mode\n\n=== On Canvas[Selection] ===\n--- C: Keep Selected Row/Column\n--- X: Delete Selected Row/Column\n--- D: Select/Deselect\n--- R: Clear Selection\n--- V: View Selection Box/Hide Selection Box\n--- Mouse Button: Select/Deselect\n--- ARROWKEY: Switch between Row/Column Selection\n\n=== On Canvas[Symmetry Mode-Symmetry] ===\n--- J: Symmetry Line to Center\n--- ARROWKEY: Move Symmetry Line\n--- S: Deactivate Symmetrical Selection Mode\n\n=== On Canvas[Row/Column Shifting Mode] ===\n--- Mouse Button[1st Click]: Activate Shifting\n--- Mouse Button[2nd Click]: Finalize Shifting\n--- 0: Shift Boundary Mode - None\n--- 1: Shift Boundary Mode - Neumann [Periodic]\n--- 2: Shift Boundary Mode - Neumann [Mirror]\n--- 3: Shift Boundary Mode - Neumann [Alternating]\n--- 4: Shift Boundary Mode - Periodic\n--- 5: Shift Boundary Mode - Mirror\n--- ARROWKEY: Switch between Row/Column Selection\n--- T: Disable Row/Column Shifting Mode\n\n=== On Canvas[Place Mode] ===\n--- Mouse Button: Place Row/Column\n--- B: Switch between Replacement/Placement Mode\n--- F: Place Row/Column as Foreground/Background\n--- Mouse Button: Place Row/Column\n--- E: Deactivate Place Mode\n\nOn Tile Window\n\n- ARROWKEY: Flip Row/Column" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2020/10/20." }
      ]
    },
    {
      "name": "Ordered Dithering", "lang": "en", "command": "fx_rep_loupasc_ordered_dither", "command_preview": "fx_rep_loupasc_ordered_dither_preview", "parameters": [
      { "type": "choice", "name": "Dithering Method", "default": "4", "pos": "1", "choices": { "0": "Checkerboard", "1": "Dispersed", "2": "Arcade", "3": "Ordered", "4": "Lines", "5": "Matrix", "6": "Random" } },
      { "type": "choice", "name": "Color Count", "default": "3", "pos": "2", "choices": { "0": "2", "1": "4", "2": "6", "3": "16" } },
      { "type": "bool", "name": "Use Luminosity?", "default": "0", "pos": "3" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "4", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "5", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Dithering algorithm developed by Pascal Ollive. - <a href=\"https://forums.getpaint.net/topic/116414-new-developer-new-plugin-ordered-dither/?tab=comments#comment-571305\">Source Code Link</a>" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2020/5/15." }
      ]
    },
    {
      "name": "Panel Image", "lang": "en", "command": "rep_fx_shift", "command_preview": "rep_fx_shift_preview", "parameters": [
      { "type": "point", "name": "Offset", "position": "50,50", "pos": "1" },
      { "type": "choice", "name": "Boundary", "default": "2", "pos": "3", "choices": { "0": "None", "1": "Neumann", "2": "Periodic", "3": "Mirror" } },
      { "type": "choice", "name": "Interpolation", "default": "2", "pos": "4", "choices": { "0": "Nearest", "1": "Linear", "2": "Bicubic" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "5", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "6", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2021/2/04." }
      ]
    },
    {
      "name": "Perspective Streak", "lang": "en", "command": "gui_rep_perspective_streak", "command_preview": "gui_rep_perspective_streak_preview", "parameters": [
      { "type": "note", "text": "Creates streak effect toward vanishing point. Read notes below the filter option for more instructions.\n\nWarning -  This is a computationally intensive filter.\n\nNote - Future versions may come with easier way to utilize this filter." },
      { "type": "separator" },
      { "type": "note", "text": "Main" },
      { "type": "point", "name": "Vanishing Point (%)", "position": "50,50", "pos": "1" },
      { "type": "float", "name": "Alpha Exponential Factor (%)", "default": "0", "min": "-100", "max": "500", "pos": "3" },
      { "type": "float", "name": "Distance Threshold (%)", "default": "100", "min": ".1", "max": "100", "pos": "4" },
      { "type": "float", "name": "Distance Start (%)", "default": "0", "min": "0", "max": "99.99", "pos": "5" },
      { "type": "choice", "name": "Streak Direction", "default": "0", "pos": "6", "choices": { "0": "Inside", "1": "Outside" } },
      { "type": "separator" },
      { "type": "note", "text": "Info Output" },
      { "type": "choice", "name": "Streak Mode", "default": "0", "pos": "7", "choices": { "0": "Color", "1": "Grayscale", "2": "Binary", "3": "Grayscale+Binary" } },
      { "type": "bool", "name": "Preserve Edges", "default": "1", "pos": "8" },
      { "type": "note", "text": "Preserve Edges are not available on binary mode." },
      { "type": "separator" },
      { "type": "note", "text": "Preview" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "9", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "10", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "- Instruction Notes-\n\nNote 1 - To effectively use this filter, experiment using Secondary Settings on <u>multiple copies of original image[s]</u>.\n\nNote 2 - Use blending modes.\n\nNote 3 - If your software supports alpha inheritance, use that to advantage." },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2019/12/8." }
      ]
    },
    {
      "name": "Pixel Push", "lang": "en", "command": "fx_rep_pxpush", "command_preview": "fx_pxpush_preview", "parameters": [
      { "type": "point", "name": "Push Point", "position": "50,50", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Recreation of filter from source code to TR's Pixel Push plugin for Paint.NET.Currently only Bezier option is supported until the secondary option is figured out." },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "3", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "4", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2020/2/26." }
      ]
    },
    {
      "name": "Point Warp", "lang": "en", "command": "gui_rep_pw", "command_preview": "gui_rep_pw_preview", "parameters": [
      { "type": "float", "name": "Point Width", "default": "100", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Distance", "default": "100", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Radial Influence", "default": "0", "min": "0", "max": "100", "pos": "3" },
      { "type": "point", "name": "Placement of Distortion", "position": "50,50", "pos": "4" },
      { "type": "float", "name": "Distortion Angle", "default": "0", "min": "-180", "max": "180", "pos": "6" },
      { "type": "choice", "name": "Boundary Condition", "default": "3", "pos": "7", "choices": { "0": "None", "1": "Neumann", "2": "Periodic", "3": "Mirror" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "8", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "9", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "This is a modified code of a conversion of Illab2014's Paint.NET plugin named <a href=\"https://forums.getpaint.net/topic/32180-point-warp-engorged-smudge-aug-20-2015/\">Point Warp</a>. The difference between this and Illab2014's filter is that this one takes into account of image size and contains boundary conditions." },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian Latest update: 2020/2/26." }
      ]
    },
    {
      "name": "Popcorn Fractal", "lang": "en", "command": "fx_rep_pfrac", "command_preview": "fx_rep_pfrac_preview", "parameters": [
      { "type": "note", "text": "Fractal attributed to Clifford Pickover. Code adapted from Paul Bourke's C code." },
      { "type": "separator" },
      { "type": "note", "text": "Main" },
      { "type": "int", "name": "Points", "default": "50", "min": "1", "max": "200", "pos": "1" },
      { "type": "float", "name": "Density", "default": "1", "min": ".01", "max": "2", "pos": "2" },
      { "type": "float", "name": "H Variable", "default": ".05", "min": "-5", "max": "5", "pos": "3" },
      { "type": "float", "name": "K Variable", "default": "3", "min": "-75", "max": "75", "pos": "4" },
      { "type": "float", "name": "Zoom", "default": "1", "min": ".1", "max": "10", "pos": "5" },
      { "type": "float", "name": "Angle", "default": "0", "min": "-180", "max": "180", "pos": "6" },
      { "type": "point", "name": "Origin", "position": "50,50", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Trigonometric" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "9", "choices": { "0": "Trig-4", "1": "Trig-6" } },
      { "type": "bool", "name": "XY-Axis Mode?", "default": "1", "pos": "10" },
      { "type": "choice", "name": "X-Axis Formula S", "default": "0", "pos": "11", "choices": { "0": "Sinusoidal", "1": "Cosinusoidal", "2": "Tangent", "3": "Arc-Tangent" } },
      { "type": "choice", "name": "X-Axis Formula T", "default": "1", "pos": "12", "choices": { "0": "Sinusoidal", "1": "Cosinusoidal", "2": "Tangent", "3": "Arc-Tangent" } },
      { "type": "choice", "name": "X-Axis Formula U", "default": "2", "pos": "13", "choices": { "0": "Sinusoidal", "1": "Cosinusoidal", "2": "Tangent", "3": "Arc-Tangent" } },
      { "type": "choice", "name": "Y-Axis Formula S", "default": "0", "pos": "14", "choices": { "0": "Sinusoidal", "1": "Cosinusoidal", "2": "Tangent", "3": "Arc-Tangent" } },
      { "type": "choice", "name": "Y-Axis Formula T", "default": "1", "pos": "15", "choices": { "0": "Sinusoidal", "1": "Cosinusoidal", "2": "Tangent", "3": "Arc-Tangent" } },
      { "type": "choice", "name": "Y-Axis Formula U", "default": "2", "pos": "16", "choices": { "0": "Sinusoidal", "1": "Cosinusoidal", "2": "Tangent", "3": "Arc-Tangent" } },
      { "type": "choice", "name": "XY-Axis Formula S", "default": "0", "pos": "17", "choices": { "0": "Sinusoidal", "1": "Cosinusoidal", "2": "Tangent", "3": "Arc-Tangent" } },
      { "type": "choice", "name": "XY-Axis Formula T", "default": "1", "pos": "18", "choices": { "0": "Sinusoidal", "1": "Cosinusoidal", "2": "Tangent", "3": "Arc-Tangent" } },
      { "type": "choice", "name": "XY-Axis Formula U", "default": "2", "pos": "19", "choices": { "0": "Sinusoidal", "1": "Cosinusoidal", "2": "Tangent", "3": "Arc-Tangent" } },
      { "type": "separator" },
      { "type": "note", "text": "Output" },
      { "type": "float", "name": "Midpoint Shift", "default": "0", "min": "-1", "max": "1", "pos": "20" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": ".1", "max": "10", "pos": "21" },
      { "type": "bool", "name": "Normalize", "default": "0", "pos": "22" },
      { "type": "separator" },
      { "type": "note", "text": "Preview" },
      { "type": "bool", "name": "Show Fill Ratio?", "default": "0", "pos": "23" },
      { "type": "note", "text": "Fill Ratio provides information on whether there is sufficient filled pixels on canvas. The closer to 100%, the more the canvas is filled." },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2020/11/1." }
      ]
    },
    {
      "name": "Popcorn Fractal [Transformative]", "lang": "en", "command": "fx_rep_pfrac_t_rs", "command_preview": "", "parameters": [
      { "type": "note", "text": "Generates Transformative Pickover Popcorn Fractal. Discovered by T.Gangopadhyay at XLRI in C.H.Area[E],Jamshedpur,India in 2012.\n\nThere are two style modes for Transformative Popcorn Fractal." },
      { "type": "separator" },
      { "type": "note", "text": "Main" },
      { "type": "separator" },
      { "type": "int", "name": "Points", "default": "50", "min": "1", "max": "200", "pos": "1" },
      { "type": "float", "name": "Density", "default": "1", "min": ".01", "max": "10", "pos": "2" },
      { "type": "float", "name": "H Variable", "default": ".05", "min": "-5", "max": "5", "pos": "3" },
      { "type": "float", "name": "K Variable", "default": "3", "min": "-75", "max": "75", "pos": "4" },
      { "type": "float", "name": "Zoom", "default": ".5", "min": ".1", "max": "10", "pos": "5" },
      { "type": "float", "name": "Angle", "default": "45", "min": "-180", "max": "180", "pos": "6" },
      { "type": "point", "name": "Origin", "position": "50,50", "pos": "7" },
      { "type": "bool", "name": "Use Swirling Hall Mode?", "default": "0", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Trigonometric" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "10", "choices": { "0": "Trig-4", "1": "Trig-6" } },
      { "type": "bool", "name": "XY-Axis Mode?", "default": "1", "pos": "11" },
      { "type": "choice", "name": "Expression A", "default": "0", "pos": "12", "choices": { "0": "func_1[v0]", "1": "func_1[v0]+func_2[v1]", "2": "func_1[func_2[v0]+include_v?v]" } },
      { "type": "choice", "name": "A", "default": "0", "pos": "13", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "A-1", "default": "1", "pos": "14", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "A-2", "default": "0", "pos": "15", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "A-1", "default": "0", "pos": "16", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "A-2", "default": "4", "pos": "17", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "bool", "name": "A-3 - Include V?", "default": "1", "pos": "18" },
      { "type": "choice", "name": "Expression B", "default": "0", "pos": "19", "choices": { "0": "func_1[v0]", "1": "func_1[v0]+func_2[v1]", "2": "func_1[func_2[v0]+include_v?v]" } },
      { "type": "choice", "name": "B", "default": "4", "pos": "20", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "B-1", "default": "1", "pos": "21", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "B-2", "default": "0", "pos": "22", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "B-1", "default": "0", "pos": "23", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "B-2", "default": "4", "pos": "24", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "bool", "name": "B-3 - Include V?", "default": "1", "pos": "25" },
      { "type": "choice", "name": "Expression A", "default": "0", "pos": "26", "choices": { "0": "func_1[v0]", "1": "func_1[v0]+func_2[v1]", "2": "func_1[func_2[v0]+include_v?v]" } },
      { "type": "choice", "name": "A", "default": "0", "pos": "27", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "A-1", "default": "1", "pos": "28", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "A-2", "default": "0", "pos": "29", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "A-1", "default": "0", "pos": "30", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "A-2", "default": "4", "pos": "31", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "bool", "name": "A-3 - Include V?", "default": "1", "pos": "32" },
      { "type": "choice", "name": "Expression B", "default": "0", "pos": "33", "choices": { "0": "func_1[v0]", "1": "func_1[v0]+func_2[v1]", "2": "func_1[func_2[v0]+include_v?v]" } },
      { "type": "choice", "name": "B", "default": "4", "pos": "34", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "B-1", "default": "1", "pos": "35", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "B-2", "default": "0", "pos": "36", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "B-1", "default": "0", "pos": "37", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "B-2", "default": "4", "pos": "38", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "bool", "name": "B-3 - Include V?", "default": "1", "pos": "39" },
      { "type": "choice", "name": "Expression C", "default": "0", "pos": "40", "choices": { "0": "func_1[v0]", "1": "func_1[v0]+func_2[v1]", "2": "func_1[func_2[v0]+include_v?v]" } },
      { "type": "choice", "name": "C", "default": "2", "pos": "41", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "C-1", "default": "1", "pos": "42", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "C-2", "default": "0", "pos": "43", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "C-1", "default": "0", "pos": "44", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "C-2", "default": "4", "pos": "45", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "bool", "name": "C-3 - Include V?", "default": "1", "pos": "46" },
      { "type": "choice", "name": "Axis", "default": "0", "pos": "47", "choices": { "0": "X-Axis", "1": "Y-Axis" } },
      { "type": "choice", "name": "Expression A", "default": "0", "pos": "48", "choices": { "0": "func_1[v0]", "1": "func_1[v0]+func_2[v1]", "2": "func_1[func_2[v0]+include_v?v]" } },
      { "type": "choice", "name": "A", "default": "0", "pos": "49", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "A-1", "default": "1", "pos": "50", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "A-2", "default": "0", "pos": "51", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "A-1", "default": "0", "pos": "52", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "A-2", "default": "4", "pos": "53", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "bool", "name": "A-3 - Include V?", "default": "1", "pos": "54" },
      { "type": "choice", "name": "Expression B", "default": "0", "pos": "55", "choices": { "0": "func_1[v0]", "1": "func_1[v0]+func_2[v1]", "2": "func_1[func_2[v0]+include_v?v]" } },
      { "type": "choice", "name": "B", "default": "4", "pos": "56", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "B-1", "default": "1", "pos": "57", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "B-2", "default": "0", "pos": "58", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "B-1", "default": "0", "pos": "59", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "B-2", "default": "4", "pos": "60", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "bool", "name": "B-3 - Include V?", "default": "1", "pos": "61" },
      { "type": "choice", "name": "Expression A", "default": "0", "pos": "62", "choices": { "0": "func_1[v0]", "1": "func_1[v0]+func_2[v1]", "2": "func_1[func_2[v0]+include_v?v]" } },
      { "type": "choice", "name": "A", "default": "0", "pos": "63", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "A-1", "default": "1", "pos": "64", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "A-2", "default": "0", "pos": "65", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "A-1", "default": "0", "pos": "66", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "A-2", "default": "4", "pos": "67", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "bool", "name": "A-3 - Include V?", "default": "1", "pos": "68" },
      { "type": "choice", "name": "Expression B", "default": "0", "pos": "69", "choices": { "0": "func_1[v0]", "1": "func_1[v0]+func_2[v1]", "2": "func_1[func_2[v0]+include_v?v]" } },
      { "type": "choice", "name": "B", "default": "4", "pos": "70", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "B-1", "default": "1", "pos": "71", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "B-2", "default": "0", "pos": "72", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "B-1", "default": "0", "pos": "73", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "B-2", "default": "4", "pos": "74", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "bool", "name": "B-3 - Include V?", "default": "1", "pos": "75" },
      { "type": "choice", "name": "Expression C", "default": "0", "pos": "76", "choices": { "0": "func_1[v0]", "1": "func_1[v0]+func_2[v1]", "2": "func_1[func_2[v0]+include_v?v]" } },
      { "type": "choice", "name": "C", "default": "2", "pos": "77", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "C-1", "default": "1", "pos": "78", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "C-2", "default": "0", "pos": "79", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "C-1", "default": "0", "pos": "80", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "C-2", "default": "4", "pos": "81", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "bool", "name": "C-3 - Include V?", "default": "1", "pos": "82" },
      { "type": "choice", "name": "Expression A", "default": "0", "pos": "83", "choices": { "0": "func_1[v0]", "1": "func_1[v0]+func_2[v1]", "2": "func_1[func_2[v0]+include_v?v]" } },
      { "type": "choice", "name": "A", "default": "0", "pos": "84", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "A-1", "default": "1", "pos": "85", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "A-2", "default": "0", "pos": "86", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "A-1", "default": "0", "pos": "87", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "A-2", "default": "4", "pos": "88", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "bool", "name": "A-3 - Include V?", "default": "1", "pos": "89" },
      { "type": "choice", "name": "Expression B", "default": "0", "pos": "90", "choices": { "0": "func_1[v0]", "1": "func_1[v0]+func_2[v1]", "2": "func_1[func_2[v0]+include_v?v]" } },
      { "type": "choice", "name": "B", "default": "4", "pos": "91", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "B-1", "default": "1", "pos": "92", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "B-2", "default": "0", "pos": "93", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "B-1", "default": "0", "pos": "94", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "B-2", "default": "4", "pos": "95", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "bool", "name": "B-3 - Include V?", "default": "1", "pos": "96" },
      { "type": "choice", "name": "Expression A", "default": "0", "pos": "97", "choices": { "0": "func_1[v0]", "1": "func_1[v0]+func_2[v1]", "2": "func_1[func_2[v0]+include_v?v]" } },
      { "type": "choice", "name": "A", "default": "0", "pos": "98", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "A-1", "default": "1", "pos": "99", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "A-2", "default": "0", "pos": "100", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "A-1", "default": "0", "pos": "101", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "A-2", "default": "4", "pos": "102", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "bool", "name": "A-3 - Include V?", "default": "1", "pos": "103" },
      { "type": "choice", "name": "Expression B", "default": "0", "pos": "104", "choices": { "0": "func_1[v0]", "1": "func_1[v0]+func_2[v1]", "2": "func_1[func_2[v0]+include_v?v]" } },
      { "type": "choice", "name": "B", "default": "4", "pos": "105", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "B-1", "default": "1", "pos": "106", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "B-2", "default": "0", "pos": "107", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "B-1", "default": "0", "pos": "108", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "B-2", "default": "4", "pos": "109", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "bool", "name": "B-3 - Include V?", "default": "1", "pos": "110" },
      { "type": "choice", "name": "Expression C", "default": "0", "pos": "111", "choices": { "0": "func_1[v0]", "1": "func_1[v0]+func_2[v1]", "2": "func_1[func_2[v0]+include_v?v]" } },
      { "type": "choice", "name": "C", "default": "2", "pos": "112", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "C-1", "default": "1", "pos": "113", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "C-2", "default": "0", "pos": "114", "choices": { "0": "Previous Value", "1": "Sine", "2": "Hyperbolic Sine", "3": "Cosine", "4": "Hyperbolic Cosine", "5": "Tangent", "6": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "C-1", "default": "0", "pos": "115", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "choice", "name": "C-2", "default": "4", "pos": "116", "choices": { "0": "Sine", "1": "Hyperbolic Sine", "2": "Cosine", "3": "Hyperbolic Cosine", "4": "Tangent", "5": "Hyperbolic Tangent" } },
      { "type": "bool", "name": "C-3 - Include V?", "default": "1", "pos": "117" },
      { "type": "separator" },
      { "type": "note", "text": "Shading" },
      { "type": "float", "name": "Max Value (%)", "default": "100", "min": "0", "max": "100", "pos": "118" },
      { "type": "float", "name": "Mid-Point Shift", "default": "0", "min": "-1", "max": "1", "pos": "119" },
      { "type": "float", "name": "Sigmoid-Shift", "default": "0", "min": "-100", "max": "100", "pos": "120" },
      { "type": "float", "name": "Value Shift", "default": "0", "min": "-1", "max": "1", "pos": "121" },
      { "type": "float", "name": "Multiplier", "default": ".5", "min": ".1", "max": "10", "pos": "122" },
      { "type": "bool", "name": "Normalize", "default": "0", "pos": "123" },
      { "type": "bool", "name": "Negate?", "default": "0", "pos": "124" }
      ]
    },
    {
      "name": "Premade Palette", "lang": "en", "command": "fx_rep_premade_palette", "command_preview": "fx_rep_premade_palette_preview", "parameters": [
      { "type": "note", "text": "This filter creates palettes. Credits are given below. " },
      { "type": "separator" },
      { "type": "choice", "name": "Palette", "default": "10", "pos": "1", "choices": { "0": "Black & White-2", "1": "Red-Green-Blue-3", "2": "Black with Red-Green-Blue-4", "3": "Black & White with Red-Green-Blue-5", "4": "Cyan-Magenta-Yellow-3", "5": "Cyan-Magenta-Yellow-Black-4", "6": "White-Cyan-Magenta-Yellow-Black-5", "7": "Red-Green-Blue with Cyan-Magenta-Yellow-6", "8": "1-Bit RGB-8", "9": "Aurora-256", "10": "Zenit-241", "11": "Game Builder Garage: Texture-Sprite Editor Palette-117", "12": "Duel-256", "13": "Hocus Pocus Palette-256", "14": "PLAYPAL-249", "15": "Sonic Robo Blast 2-256", "16": "Uzebox-256", "17": "Andrew Kensler - 16", "18": "Andrew Kensler - 32", "19": "Andrew Kensler - 54", "20": "AAP-Micro 12", "21": "AAP-16", "22": "AAP-64", "23": "AAP-RadiantPLUS-96", "24": "AAP-SPLENDOR128", "25": "AAP-DGA16", "26": "Cheerful-32", "27": "DB8", "28": "DB16", "29": "DB32", "30": "DB-ISO22", "31": "DimWiddy 17", "32": "DimWiddy 23", "33": "Endesga-4", "34": "Endesga-8", "35": "Endesga-16", "36": "Endesga-32", "37": "Endesga-36", "38": "Endesga-64", "39": "Famicube-64", "40": "Juicy-32", "41": "Juicy-56", "42": "XAIUE-22", "43": "15P-DX", "44": "20P-DX", "45": "24P-DX", "46": "Cabana-64", "47": "Fantasy 16", "48": "Fantasy 24", "49": "Tranquil Fantasy 23", "50": "Tranquility Plus 39", "51": "Faraway 48", "52": "Fleja Master Palette-33", "53": "Koni32", "54": "Linear Color Palette Basic-31", "55": "LEGO colors-43", "56": "Lego Colours 2021-40", "57": "Vines Flexible Linear Ramps-38", "58": "Arcade Standard 29", "59": "ARQ16", "60": "Atom-8", "61": "BLK 36", "62": "BLK-NEO-46", "63": "Broken Facility-40", "64": "Bubblegum-16", "65": "CPC BOY-32", "66": "Cade 15", "67": "Calder 8-11", "68": "CD-BAC-16", "69": "CG Arne-16", "70": "DinoKnight 16", "71": "||||-22", "72": "FZT Ethereal 16", "73": "Indecision-17", "74": "Island Joy 16", "75": "Journey-64", "76": "Shallowmarsh26", "77": "Lago Nenufar (Lake Water Lily)-19", "78": "Juicy 17", "79": "ChocolateGanache-96", "80": "Bright Winter 1-74", "81": "Bright Winter 2-83", "82": "Kawaii16", "83": "0xdb-01-17", "84": "GZXP-11", "85": "Chromatic16", "86": "Piet Coding Language-20", "87": "Matrix-96", "88": "Material Design-96", "89": "Rainbow-88", "90": "Rainbow-96", "91": "SCRJ-XXXVI-36", "92": "Pxls Default-32", "93": "Lospec500-42", "94": "Moderna-24", "95": "Oak21", "96": "Nature's Embrace 55", "97": "RBYPGO-94", "98": "New Worlds 46", "99": "Nauris-16", "100": "Dynamite-40", "101": "Interstate 28", "102": "Downgraded 32", "103": "Pear 36", "104": "Pineapple 32", "105": "Peachy Pop 16", "106": "Resurrect 32", "107": "Rosy 42", "108": "SLSO-CLR17", "109": "Softy 15", "110": "SPEC12", "111": "The Roarin 80's", "112": "Starmancer-52", "113": "SuperFuture25", "114": "SUNSHINE 35", "115": "Sweetie 16", "116": "Calm 48", "117": "Optimism-32", "118": "Taffy 16", "119": "Todayland Palette V2-25", "120": "TriRampo-12", "121": "r|place 2022-32", "122": "Tropical Cone 24", "123": "Vivid-17", "124": "SHIDO50+-72", "125": "Intacto14", "126": "Itatsi-23", "127": "ENOS16", "128": "Grixel Grotto-16", "129": "Superb 8", "130": "Undertones-17", "131": "Tango-28", "132": "Cheese Palette-28", "133": "Equpix 15", "134": "Zughy 32", "135": "Voodo34", "136": "Franzston 30", "137": "Night 16", "138": "Star 29", "139": "Star 34", "140": "Still-Life-14", "141": "SimpleJPC-16", "142": "Acid 15", "143": "Battery 24", "144": "Clumpy 18", "145": "Cthulhu-16", "146": "Crimso 11-16", "147": "Copper-Tech-16", "148": "DRZ15A", "149": "Eggy 15", "150": "Europa 16", "151": "GreyT-bit-8", "152": "Jewel-15", "153": "Polar 11", "154": "Sheltzy 32", "155": "Wyrm 24", "156": "Yume Nikki-24", "157": "Rube-Goldberg-9", "158": "BoomBoom-7", "159": "Generic-8", "160": "Crayola Blind-9", "161": "FunkyFuture8", "162": "The Golden Wall Palette-7", "163": "Matriax8c", "164": "NT1H-26", "165": "JerryPie 22", "166": "Nineties Nine-9", "167": "On70-35", "168": "ANB16", "169": "Retrocal-8", "170": "Punolit-21", "171": "Luap 40", "172": "Autum Villan 6", "173": "Autum 15", "174": "Autum 15 [Yellow]", "175": "Galaxy Flame-16", "176": "Cretaceous-16", "177": "Antiquity16", "178": "Mushroom-14", "179": "Aerugo-32", "180": "Hotel Paintings 6", "181": "Nopal-12", "182": "Brightness GPY-3", "183": "Blessing-5", "184": "Fairydust 8", "185": "Vanilla MilkShake-16", "186": "Fuzzy Four-4", "187": "Fairy Tales-8", "188": "Naji 16", "189": "Easter Island-16", "190": "Pastel and Darks 58 Palette", "191": "17 Pastels", "192": "NOSTALGIA15", "193": "Ocaso-17", "194": "Oh Hell, Pastel-15", "195": "Pollen-8", "196": "KULE-16", "197": "Hydrangea 11", "198": "Fluffy8", "199": "ST 8 R&B Remake", "200": "Neon Space-10", "201": "Cyclope6", "202": "Sy17", "203": "Syz15", "204": "TUI-15", "205": "Cave-8", "206": "Psygnosia-16", "207": "MarshMellow32", "208": "Lost Century 24", "209": "Finlal 11", "210": "Industrial Factory 16", "211": "Murder Mystery 16", "212": "Fate & Destiny 12", "213": "Vinik 24", "214": "YKB-22", "215": "Halloween-7", "216": "Graveyard-21", "217": "Steam Lords-16", "218": "Frostical-18", "219": "DeuteroSpill-9", "220": "Cool Bone 7", "221": "Muted Ally 6", "222": "EPHEMERA-12", "223": "Ink-5", "224": "Violet Dreams-8", "225": "Tinyfolks-5", "226": "Old Gold 7", "227": "Rosemoss-8", "228": "AAP-RadiantXV-15", "229": "AAP-Majesty XVII-17", "230": "Dead Weight-8", "231": "Mojave20", "232": "Petite-8", "233": "Petite-8 Afterdark", "234": "XAIUE-Radiant-22", "235": "Daruda 22", "236": "Firestorm-9", "237": "Borkfest-8", "238": "Spicy 07", "239": "Rust-6", "240": "Apricot-6", "241": "SuperNova 7", "242": "Pastry-5", "243": "Sandy 06", "244": "Illumination-5", "245": "NYX8", "246": "Dream Haze 8", "247": "OIL6", "248": "Regal10", "249": "Soft Demon 7", "250": "SGM-Palette 2-17", "251": "Midnight ablaze-7", "252": "Black Cherry-5", "253": "Sunset Red-5", "254": "INKPINK-6", "255": "Brash Pink-5", "256": "Pink Neon Sign 6", "257": "Enchanted Purple-12", "258": "Arch-11", "259": "Spacey Easter-17", "260": "Fornax Void I-254", "261": "Fornax Void II-128", "262": "Pixelwave-12", "263": "S1-6", "264": "Berry Nebula-8", "265": "ABYSS-9", "266": "Moonlight 15", "267": "Moonlit-39", "268": "H2O-10", "269": "Magic Waters 9", "270": "Bluem0ld-4", "271": "Moss-5", "272": "DEEP MAZE-7", "273": "Toxic Slime-5", "274": "Lush Green-6", "275": "Tsunami-5", "276": "Cryptic Ocean-6", "277": "Marsh Madness-5", "278": "OXYD-8", "279": "Pink&Green-8", "280": "Walking in the Woods 8", "281": "Paper 8", "282": "Sahara Pastell-7", "283": "Sunflower Painting 7", "284": "Art Hoe Aesthetic 7", "285": "Sky5-7", "286": "Ocean Glass-8", "287": "RoyalGuard-6", "288": "Eulbink-7", "289": "Winter Wonderland-8", "290": "Moon Squid 7", "291": "Stratus-5", "292": "Arctic Dust-5", "293": "CL8UDS", "294": "Lilac Skies 5", "295": "Sea of Fire-6", "296": "Autochrome 3", "297": "Autochrome 5", "298": "GB Default 1-4", "299": "GB Default 2-4", "300": "GB Andrade-4", "301": "GB Blue Seni-4", "302": "GB Blackzone-4", "303": "GB Suburb-4", "304": "GB Crimson-4", "305": "GB Didi-4", "306": "GB Dirty-4", "307": "GB Arne-4", "308": "GB Easy-4", "309": "GB Forest-4", "310": "GB Harsh Green-4", "311": "GB Light Green-4", "312": "GB Nostalgia-4", "313": "GB Platinum-4", "314": "GB Kirokaze-4", "315": "GB Cyber-4", "316": "GB Wish-4", "317": "GB Grapefruit-4", "318": "GB Ice Cream-4", "319": "GB Red_Blue-4", "320": "Gold GB-4", "321": "GB Chocolate-4", "322": "GB Gray-4", "323": "GB Spacehaze-4", "324": "GB Purple Dawn-4", "325": "Moon Crystal-4", "326": "ARNE4", "327": "Autumn Chill-4", "328": "CherryMelon-4", "329": "HallowPumpkin-4", "330": "Hollow-4", "331": "Lavender4", "332": "MAW-4", "333": "Voltage Warning-4", "334": "Tritanopia-5", "335": "Rabbit 7", "336": "Amiga 2600 NTSC-127", "337": "Amiga 2600 PAL-104", "338": "Amiga 2600 SECAM-8", "339": "Amiga 7800 M.E.S.S-256", "340": "Amiga 7800-256", "341": "Amstrad CPC-27", "342": "Apple II-15", "343": "Atari 8-Bit Series - GTIA-256", "344": "CGA-16", "345": "CGA Mode 0 [Low]-4", "346": "CGA Mode 0 [High]-4", "347": "CGA Mode 1 [Low]-4", "348": "CGA Mode 1 [High]-4", "349": "CGA Mode 2 [Low]-4", "350": "CGA Mode 2 [High]-4", "351": "Commodore 64 - Pepto-16", "352": "Commodore 64 - Colodore-16", "353": "Commodore VIC-20-16", "354": "Colecovision-15", "355": "Japanese Machine Palette-16", "356": "Macintosh II-16", "357": "Macintosh 8-Bit System Palette-256", "358": "MSX-15", "359": "NES-55", "360": "PICO-8-16", "361": "RISC OS-16", "362": "SAM Coupe-128", "363": "Thomson MO5-16", "364": "TRS-80 Color Computer Palette-4", "365": "Virtual Boy interpreted-4", "366": "VGA-244", "367": "Win 95-256", "368": "ZX Spectrum-15", "369": "GNOME 32", "370": "Electronic Crayon 22", "371": "Chip16", "372": "Deluxe Paint-222", "373": "FlatUI-20", "374": "MakeCode Arcade Palette-15", "375": "Oekaki-20", "376": "Legacy Paint-16", "377": "XP Paint-28", "378": "Vista Paint-28", "379": "Piet Palette-5", "380": "Japanese Woodblock Palette-12", "381": "Human Faces-94", "382": "HSV Palette-96", "383": "ST24 Christmas", "384": "Reds-24" } },
      { "type": "choice", "name": "X-Position", "default": "1", "pos": "2", "choices": { "0": "Left", "1": "Middle", "2": "Right" } },
      { "type": "choice", "name": "Y-Position", "default": "1", "pos": "3", "choices": { "0": "Top", "1": "Middle", "2": "Bottom" } },
      { "type": "int", "name": "Palette Width", "default": "16", "min": "1", "max": "256", "pos": "4" },
      { "type": "int", "name": "Palette Scaling", "default": "12", "min": "1", "max": "32", "pos": "5" },
      { "type": "bool", "name": "Alternating Flips", "default": "0", "pos": "6" },
      { "type": "choice", "name": "Palette Rotation", "default": "2", "pos": "7", "choices": { "0": "180", "1": "90", "2": "0", "3": "-90" } },
      { "type": "bool", "name": "Mirror X-Axis Palette", "default": "0", "pos": "8" },
      { "type": "bool", "name": "Mirror Y-Axis Palette", "default": "0", "pos": "9" },
      { "type": "bool", "name": "Blend Palette to Image(s)?", "default": "1", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "Export" },
      { "type": "folder", "name": "Output Location", "default": "", "pos": "11" },
      { "type": "text", "name": "File Name", "default": "color_harmonies", "pos": "12" },
      { "type": "choice", "name": "Format", "default": "0", "pos": "13", "choices": { "0": "GIMP Palette - .gpl", "1": "Paint.NET Palette - .txt", "2": "JASC-PAL - .pal" } },
      { "type": "text", "name": "Message", "default": "Available for Export!", "pos": "14" },
      { "type": "button", "name": "Export", "pos": "15" },
      { "type": "choice", "name": "Palette", "default": "0", "pos": "16", "choices": { "0": "Black & White-2", "1": "Red-Green-Blue-3", "2": "Black with Red-Green-Blue-4", "3": "Black & White with Red-Green-Blue-5", "4": "Cyan-Magenta-Yellow-3", "5": "Cyan-Magenta-Yellow-Black-4", "6": "White-Cyan-Magenta-Yellow-Black-5", "7": "Red-Green-Blue with Cyan-Magenta-Yellow-6", "8": "1-Bit RGB-8", "9": "Aurora-256", "10": "Zenit-241", "11": "Game Builder Garage: Texture-Sprite Editor Palette-117", "12": "Duel-256", "13": "Hocus Pocus Palette-256", "14": "PLAYPAL-249", "15": "Sonic Robo Blast 2-256", "16": "Uzebox-256", "17": "Andrew Kensler - 16", "18": "Andrew Kensler - 32", "19": "Andrew Kensler - 54", "20": "AAP-Micro 12", "21": "AAP-16", "22": "AAP-64", "23": "AAP-RadiantPLUS-96", "24": "AAP-SPLENDOR128", "25": "AAP-DGA16", "26": "Cheerful-32", "27": "DB8", "28": "DB16", "29": "DB32", "30": "DB-ISO22", "31": "DimWiddy 17", "32": "DimWiddy 23", "33": "Endesga-4", "34": "Endesga-8", "35": "Endesga-16", "36": "Endesga-32", "37": "Endesga-36", "38": "Endesga-64", "39": "Famicube-64", "40": "Juicy-32", "41": "Juicy-56", "42": "XAIUE-22", "43": "15P-DX", "44": "20P-DX", "45": "24P-DX", "46": "Cabana-64", "47": "Fantasy 16", "48": "Fantasy 24", "49": "Tranquil Fantasy 23", "50": "Tranquility Plus 39", "51": "Faraway 48", "52": "Fleja Master Palette-33", "53": "Koni32", "54": "Linear Color Palette Basic-31", "55": "LEGO colors-43", "56": "Lego Colours 2021-40", "57": "Vines Flexible Linear Ramps-38", "58": "Arcade Standard 29", "59": "ARQ16", "60": "Atom-8", "61": "BLK 36", "62": "BLK-NEO-46", "63": "Broken Facility-40", "64": "Bubblegum-16", "65": "CPC BOY-32", "66": "Cade 15", "67": "Calder 8-11", "68": "CD-BAC-16", "69": "CG Arne-16", "70": "DinoKnight 16", "71": "||||-22", "72": "FZT Ethereal 16", "73": "Indecision-17", "74": "Island Joy 16", "75": "Journey-64", "76": "Shallowmarsh26", "77": "Lago Nenufar (Lake Water Lily)-19", "78": "Juicy 17", "79": "ChocolateGanache-96", "80": "Bright Winter 1-74", "81": "Bright Winter 2-83", "82": "Kawaii16", "83": "0xdb-01-17", "84": "GZXP-11", "85": "Chromatic16", "86": "Piet Coding Language-20", "87": "Matrix-96", "88": "Material Design-96", "89": "Rainbow-88", "90": "Rainbow-96", "91": "SCRJ-XXXVI-36", "92": "Pxls Default-32", "93": "Lospec500-42", "94": "Moderna-24", "95": "Oak21", "96": "Nature's Embrace 55", "97": "RBYPGO-94", "98": "New Worlds 46", "99": "Nauris-16", "100": "Dynamite-40", "101": "Interstate 28", "102": "Downgraded 32", "103": "Pear 36", "104": "Pineapple 32", "105": "Peachy Pop 16", "106": "Resurrect 32", "107": "Rosy 42", "108": "SLSO-CLR17", "109": "Softy 15", "110": "SPEC12", "111": "The Roarin 80's", "112": "Starmancer-52", "113": "SuperFuture25", "114": "SUNSHINE 35", "115": "Sweetie 16", "116": "Calm 48", "117": "Optimism-32", "118": "Taffy 16", "119": "Todayland Palette V2-25", "120": "TriRampo-12", "121": "r|place 2022-32", "122": "Tropical Cone 24", "123": "Vivid-17", "124": "SHIDO50+-72", "125": "Intacto14", "126": "Itatsi-23", "127": "ENOS16", "128": "Grixel Grotto-16", "129": "Superb 8", "130": "Undertones-17", "131": "Tango-28", "132": "Cheese Palette-28", "133": "Equpix 15", "134": "Zughy 32", "135": "Voodo34", "136": "Franzston 30", "137": "Night 16", "138": "Star 29", "139": "Star 34", "140": "Still-Life-14", "141": "SimpleJPC-16", "142": "Acid 15", "143": "Battery 24", "144": "Clumpy 18", "145": "Cthulhu-16", "146": "Crimso 11-16", "147": "Copper-Tech-16", "148": "DRZ15A", "149": "Eggy 15", "150": "Europa 16", "151": "GreyT-bit-8", "152": "Jewel-15", "153": "Polar 11", "154": "Sheltzy 32", "155": "Wyrm 24", "156": "Yume Nikki-24", "157": "Rube-Goldberg-9", "158": "BoomBoom-7", "159": "Generic-8", "160": "Crayola Blind-9", "161": "FunkyFuture8", "162": "The Golden Wall Palette-7", "163": "Matriax8c", "164": "NT1H-26", "165": "JerryPie 22", "166": "Nineties Nine-9", "167": "On70-35", "168": "ANB16", "169": "Retrocal-8", "170": "Punolit-21", "171": "Luap 40", "172": "Autum Villan 6", "173": "Autum 15", "174": "Autum 15 [Yellow]", "175": "Galaxy Flame-16", "176": "Cretaceous-16", "177": "Antiquity16", "178": "Mushroom-14", "179": "Aerugo-32", "180": "Hotel Paintings 6", "181": "Nopal-12", "182": "Brightness GPY-3", "183": "Blessing-5", "184": "Fairydust 8", "185": "Vanilla MilkShake-16", "186": "Fuzzy Four-4", "187": "Fairy Tales-8", "188": "Naji 16", "189": "Easter Island-16", "190": "Pastel and Darks 58 Palette", "191": "17 Pastels", "192": "NOSTALGIA15", "193": "Ocaso-17", "194": "Oh Hell, Pastel-15", "195": "Pollen-8", "196": "KULE-16", "197": "Hydrangea 11", "198": "Fluffy8", "199": "ST 8 R&B Remake", "200": "Neon Space-10", "201": "Cyclope6", "202": "Sy17", "203": "Syz15", "204": "TUI-15", "205": "Cave-8", "206": "Psygnosia-16", "207": "MarshMellow32", "208": "Lost Century 24", "209": "Finlal 11", "210": "Industrial Factory 16", "211": "Murder Mystery 16", "212": "Fate & Destiny 12", "213": "Vinik 24", "214": "YKB-22", "215": "Halloween-7", "216": "Graveyard-21", "217": "Steam Lords-16", "218": "Frostical-18", "219": "DeuteroSpill-9", "220": "Cool Bone 7", "221": "Muted Ally 6", "222": "EPHEMERA-12", "223": "Ink-5", "224": "Violet Dreams-8", "225": "Tinyfolks-5", "226": "Old Gold 7", "227": "Rosemoss-8", "228": "AAP-RadiantXV-15", "229": "AAP-Majesty XVII-17", "230": "Dead Weight-8", "231": "Mojave20", "232": "Petite-8", "233": "Petite-8 Afterdark", "234": "XAIUE-Radiant-22", "235": "Daruda 22", "236": "Firestorm-9", "237": "Borkfest-8", "238": "Spicy 07", "239": "Rust-6", "240": "Apricot-6", "241": "SuperNova 7", "242": "Pastry-5", "243": "Sandy 06", "244": "Illumination-5", "245": "NYX8", "246": "Dream Haze 8", "247": "OIL6", "248": "Regal10", "249": "Soft Demon 7", "250": "SGM-Palette 2-17", "251": "Midnight ablaze-7", "252": "Black Cherry-5", "253": "Sunset Red-5", "254": "INKPINK-6", "255": "Brash Pink-5", "256": "Pink Neon Sign 6", "257": "Enchanted Purple-12", "258": "Arch-11", "259": "Spacey Easter-17", "260": "Fornax Void I-254", "261": "Fornax Void II-128", "262": "Pixelwave-12", "263": "S1-6", "264": "Berry Nebula-8", "265": "ABYSS-9", "266": "Moonlight 15", "267": "Moonlit-39", "268": "H2O-10", "269": "Magic Waters 9", "270": "Bluem0ld-4", "271": "Moss-5", "272": "DEEP MAZE-7", "273": "Toxic Slime-5", "274": "Lush Green-6", "275": "Tsunami-5", "276": "Cryptic Ocean-6", "277": "Marsh Madness-5", "278": "OXYD-8", "279": "Pink&Green-8", "280": "Walking in the Woods 8", "281": "Paper 8", "282": "Sahara Pastell-7", "283": "Sunflower Painting 7", "284": "Art Hoe Aesthetic 7", "285": "Sky5-7", "286": "Ocean Glass-8", "287": "RoyalGuard-6", "288": "Eulbink-7", "289": "Winter Wonderland-8", "290": "Moon Squid 7", "291": "Stratus-5", "292": "Arctic Dust-5", "293": "CL8UDS", "294": "Lilac Skies 5", "295": "Sea of Fire-6", "296": "Autochrome 3", "297": "Autochrome 5", "298": "GB Default 1-4", "299": "GB Default 2-4", "300": "GB Andrade-4", "301": "GB Blue Seni-4", "302": "GB Blackzone-4", "303": "GB Suburb-4", "304": "GB Crimson-4", "305": "GB Didi-4", "306": "GB Dirty-4", "307": "GB Arne-4", "308": "GB Easy-4", "309": "GB Forest-4", "310": "GB Harsh Green-4", "311": "GB Light Green-4", "312": "GB Nostalgia-4", "313": "GB Platinum-4", "314": "GB Kirokaze-4", "315": "GB Cyber-4", "316": "GB Wish-4", "317": "GB Grapefruit-4", "318": "GB Ice Cream-4", "319": "GB Red_Blue-4", "320": "Gold GB-4", "321": "GB Chocolate-4", "322": "GB Gray-4", "323": "GB Spacehaze-4", "324": "GB Purple Dawn-4", "325": "Moon Crystal-4", "326": "ARNE4", "327": "Autumn Chill-4", "328": "CherryMelon-4", "329": "HallowPumpkin-4", "330": "Hollow-4", "331": "Lavender4", "332": "MAW-4", "333": "Voltage Warning-4", "334": "Tritanopia-5", "335": "Rabbit 7", "336": "Amiga 2600 NTSC-127", "337": "Amiga 2600 PAL-104", "338": "Amiga 2600 SECAM-8", "339": "Amiga 7800 M.E.S.S-256", "340": "Amiga 7800-256", "341": "Amstrad CPC-27", "342": "Apple II-15", "343": "Atari 8-Bit Series - GTIA-256", "344": "CGA-16", "345": "CGA Mode 0 [Low]-4", "346": "CGA Mode 0 [High]-4", "347": "CGA Mode 1 [Low]-4", "348": "CGA Mode 1 [High]-4", "349": "CGA Mode 2 [Low]-4", "350": "CGA Mode 2 [High]-4", "351": "Commodore 64 - Pepto-16", "352": "Commodore 64 - Colodore-16", "353": "Commodore VIC-20-16", "354": "Colecovision-15", "355": "Japanese Machine Palette-16", "356": "Macintosh II-16", "357": "Macintosh 8-Bit System Palette-256", "358": "MSX-15", "359": "NES-55", "360": "PICO-8-16", "361": "RISC OS-16", "362": "SAM Coupe-128", "363": "Thomson MO5-16", "364": "TRS-80 Color Computer Palette-4", "365": "Virtual Boy interpreted-4", "366": "VGA-244", "367": "Win 95-256", "368": "ZX Spectrum-15", "369": "GNOME 32", "370": "Electronic Crayon 22", "371": "Chip16", "372": "Deluxe Paint-222", "373": "FlatUI-20", "374": "MakeCode Arcade Palette-15", "375": "Oekaki-20", "376": "Legacy Paint-16", "377": "XP Paint-28", "378": "Vista Paint-28", "379": "Piet Palette-5", "380": "Japanese Woodblock Palette-12", "381": "Human Faces-94", "382": "HSV Palette-96", "383": "ST24 Christmas", "384": "Reds-24" }, "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Palette CLI Information\n\nMain Source of Palettes - <a href=\"https://lospec.com/palette-list\"> LoSpec Palette List</a>\n\nPalette Number -- pal number_id = pal name_id -- Full Palette Name by Author[if mentioned]\n\n1 -- +pal 0 = +pal bw -- Black & White\n2 -- +pal 1 = +pal rgb -- Red-Green-Blue\n3 -- +pal 2 = +pal b_rgb -- Black with Red-Green-Blue\n4 -- +pal 3 = +pal bw_rgb -- Black & White with Red-Green-Blue\n5 -- +pal 4 = +pal cmy -- Cyan-Magenta-Yellow\n6 -- +pal 5 = +pal cmyk -- Cyan-Magenta-Yellow-Black\n7 -- +pal 6 = +pal w_cmyk -- White-Cyan-Magenta-Yellow-Black\n8 -- +pal 7 = +pal rgbcmy -- Red-Green-Blue with Cyan-Magenta-Yellow\n9 -- +pal 8 = +pal 1bitrgb -- 1-Bit RGB\n10 -- +pal 9 = +pal aurora -- Aurora by GrafxKid\n11 -- +pal 10 = +pal zenit -- Zenit-241 by Zenit40\n12 -- +pal 11 = +pal gbg -- Game Builder Garage: Texture-Sprite Editor Palette\n13 -- +pal 12 = +pal duel -- Duel by Arilyn\n14 -- +pal 13 = +pal hocuspocus -- Hocus Pocus Palette by Apogee Software,Ltd.\n15 -- +pal 14 = +pal playpal -- PLAYPAL by id Tech 1 | DOOM Engine\n16 -- +pal 15 = +pal srb2 -- Sonic Robo Blast 2\n17 -- +pal 16 = +pal uzebox -- Uzebox from Uzebox console\n18 -- +pal 17 = +pal kens16 -- Andrew Kensler - 16 by Andrew Kensler\n19 -- +pal 18 = +pal kens32 -- Andrew Kensler - 32 by Andrew Kensler\n20 -- +pal 19 = +pal kens54 -- Andrew Kensler - 54 by Andrew Kensler\n21 -- +pal 20 = +pal aap12 -- AAP-Micro 12 by Adigun A. Polack\n22 -- +pal 21 = +pal aap16 -- AAP-16 by Adigun A. Polack\n23 -- +pal 22 = +pal aap64 -- AAP-64 by Adigun A. Polack\n24 -- +pal 23 = +pal aap96 -- AAP-RadiantPLUS by Adigun A. Polack\n25 -- +pal 24 = +pal aap128 -- AAP-SPLENDOR128 by Adigun A. Polack\n26 -- +pal 25 = +pal aap_dga16 -- AAP-DGA16 by Adigun A. Polack\n27 -- +pal 26 = +pal cheerful -- Cheerful-32 by SoundsDotZip\n28 -- +pal 27 = +pal db8 -- DB8 by DawnBringer\n29 -- +pal 28 = +pal db16 -- DB16 by DawnBringer\n30 -- +pal 29 = +pal db32 -- DB32 by DawnBringer\n31 -- +pal 30 = +pal db_iso22 -- DB-ISO22 by DawnBringer\n32 -- +pal 31 = +pal dim17 -- DimWiddy 17 by DimWiddy\n33 -- +pal 32 = +pal dim23 -- DimWiddy 23 by DimWiddy\n34 -- +pal 33 = +pal edg4 -- Endesga-4 by Endesga\n35 -- +pal 34 = +pal edg8 -- Endesga-8 by Endesga\n36 -- +pal 35 = +pal edg16 -- Endesga-16 by Endesga\n37 -- +pal 36 = +pal edg32 -- Endesga-32 by Endesga\n38 -- +pal 37 = +pal edg36 -- Endesga-36 by Endesga\n39 -- +pal 38 = +pal edg64 -- Endesga-64 by Endesga\n40 -- +pal 39 = +pal famicube -- Famicube by Arne\n41 -- +pal 40 = +pal juicy32 -- Juicy-32 by Real Juice\n42 -- +pal 41 = +pal juicy56 -- Juicy-56 by Real Juice\n43 -- +pal 42 = +pal xaiue -- XAIUE-22 by xaiue\n44 -- +pal 43 = +pal 15pdx -- 15P-DX by GrafxKid\n45 -- +pal 44 = +pal 20pdx -- 20P-DX by GrafxKid\n46 -- +pal 45 = +pal 24pdx -- 24P-DX by GrafxKid\n47 -- +pal 46 = +pal cabana -- Cabana-64 by Crabby\n48 -- +pal 47 = +pal fantasy16 -- Fantasy 16 by Brettybooop\n49 -- +pal 48 = +pal fantasy24 -- Fantasy 24 by Gabriel C.\n50 -- +pal 49 = +pal tranquil_fantasy_23 -- Tranquil Fantasy 23 by windfall.apples\n51 -- +pal 50 = +pal tfp39 -- Tranquility Plus 39 by windfall.apples\n52 -- +pal 51 = +pal faraway -- Faraway 48 by Igor Ferreira.\n53 -- +pal 52 = +pal fleja -- Fleja Master Palette by Fleja\n54 -- +pal 53 = +pal koni -- Koni32 by Konic\n55 -- +pal 54 = +pal linearbasic -- Linear Color Palette Basic by GrafxKid\n56 -- +pal 55 = +pal legowiki -- LEGO colors from LEGO wiki\n57 -- +pal 56 = +pal lego2021 -- Lego Colours 2021 by Six Pies\n58 -- +pal 57 = +pal vinelinear -- Vines Flexible Linear Ramps by Vine 2D\n59 -- +pal 58 = +pal arcade -- Arcade Standard 29 by GrafxKid\n60 -- +pal 59 = +pal arq -- ARQ16 by Endesga\n61 -- +pal 60 = +pal atom -- Atom-8 by polyphrog\n62 -- +pal 61 = +pal blk36 -- BLK 36 by BlackedIRL.\n63 -- +pal 62 = +pal blkneo -- BLK-NEO by BlackedIRL.\n64 -- +pal 63 = +pal broken_facility -- Broken Facility by telepathic-melon\n65 -- +pal 64 = +pal bubblegum -- Bubblegum-16 by PineTreePizza\n66 -- +pal 65 = +pal cpcboy -- CPC BOY by Arne Niklas Jansson\n67 -- +pal 66 = +pal cade -- Cade 15 by MonstersGoBoom\n68 -- +pal 67 = +pal calder -- Calder 8 by Philip Dodderige\n69 -- +pal 68 = +pal cdbac -- CD-BAC by DimWiddy\n70 -- +pal 69 = +pal cgarne -- CG Arne by Arne Niklas Jansson\n71 -- +pal 70 = +pal dinoknight -- DinoKnight 16 by Retrospec\n72 -- +pal 71 = +pal llll -- ||||-22 by ||||\n73 -- +pal 72 = +pal fzt_ethereal -- FZT Ethereal 16 by Fusionnist\n74 -- +pal 73 = +pal indecision -- Indecision by Nelson SMG\n75 -- +pal 74 = +pal island -- Island Joy 16 by Kerrie Lake\n76 -- +pal 75 = +pal journey -- Journey by PineTreePizza\n77 -- +pal 76 = +pal shallowmarsh -- Shallowmarsh26 by archer\n78 -- +pal 77 = +pal lago_nenufar -- Lago Nenufar (Lake Water Lily) by Popxel Art\n79 -- +pal 78 = +pal juicy -- Juicy 17 by JerryPie\n80 -- +pal 79 = +pal chocolate -- ChocolateGanache by Ladybug\n81 -- +pal 80 = +pal brightwinter1 -- Bright Winter 1 by Nai\n82 -- +pal 81 = +pal brightwinter2 -- Bright Winter 2 by Nai\n83 -- +pal 82 = +pal kawaii -- Kawaii16 by Arisuki\n84 -- +pal 83 = +pal 0xdb -- 0xdb-01 by 0xDB\n85 -- +pal 84 = +pal gzxp -- GZXP by GrafxKid\n86 -- +pal 85 = +pal chromatic -- Chromatic16 by DragonDePlatino\n87 -- +pal 86 = +pal piet_code -- Piet Coding Language\n88 -- +pal 87 = +pal matrix -- Matrix by BoltBait\n89 -- +pal 88 = +pal material -- Material Design by Ruchir L. Sharma\n90 -- +pal 89 = +pal rainbow-thehamster -- Rainbow by thehamster\n91 -- +pal 90 = +pal rainbow-boltbait -- Rainbow by BoltBait\n92 -- +pal 91 = +pal scrj-xxxvi -- SCRJ-XXXVI by StudioCRJ\n93 -- +pal 92 = +pal pxls -- Pxls Default from pxls.space\n94 -- +pal 93 = +pal lospec -- Lospec500 by the Lospec community\n95 -- +pal 94 = +pal moderna -- Moderna by yedamameday\n96 -- +pal 95 = +pal oak -- Oak21 by Dan Oak\n97 -- +pal 96 = +pal nature -- Nature's Embrace 55 by GrafxKid\n98 -- +pal 97 = +pal rbypgo -- RBYPGO by Marilynx\n99 -- +pal 98 = +pal new_worlds -- New Worlds 46 by Count Moriarty\n100 -- +pal 99 = +pal nauris -- Nauris-16 by Nauris\n101 -- +pal 100 = +pal dynamite -- Dynamite by Pixi\n102 -- +pal 101 = +pal interstate -- Interstate 28 by maine\n103 -- +pal 102 = +pal downgraded -- Downgraded 32 by daniel\n104 -- +pal 103 = +pal pear36 -- Pear 36 by PineTreePizza\n105 -- +pal 104 = +pal pineapple -- Pineapple 32 by PineTreePizza\n106 -- +pal 105 = +pal peachy -- Peachy Pop 16 by Kerrie Lake\n107 -- +pal 106 = +pal resurrect -- Resurrect 32 by Kerrie Lake\n108 -- +pal 107 = +pal rosy -- Rosy 42 by PineTreePizza\n109 -- +pal 108 = +pal slso -- SLSO-CLR17 by Luis Miguel Maldonado\n110 -- +pal 109 = +pal softy -- Softy 15 by Eggy\n111 -- +pal 110 = +pal spec12 -- SPEC12 by Smalls\n112 -- +pal 111 = +pal the_roarin_80s -- The Roarin 80's by Malo\n113 -- +pal 112 = +pal starmancer -- Starmancer by Ominux Games\n114 -- +pal 113 = +pal superfuture -- SuperFuture25 by Endesga\n115 -- +pal 114 = +pal sunshine -- SUNSHINE 35 by mysunnyrose\n116 -- +pal 115 = +pal sweetie -- Sweetie 16 by GrafxKid\n117 -- +pal 116 = +pal calm -- Calm 48 by Xina\n118 -- +pal 117 = +pal optimism -- Optimism by mingapur\n119 -- +pal 118 = +pal taffy -- Taffy 16 by PineTreePizza\n120 -- +pal 119 = +pal todayland -- Todayland Palette V2 by GrafxKid\n121 -- +pal 120 = +pal trirampo -- TriRampo by ANoob\n122 -- +pal 121 = +pal reddit_place_2022 -- r|place 2022\n123 -- +pal 122 = +pal tropical -- Tropical Cone 24 by yedamameday\n124 -- +pal 123 = +pal vivid -- Vivid-17 by Irenaart\n125 -- +pal 124 = +pal shido -- SHIDO50+ by Shidoengie\n126 -- +pal 125 = +pal intacto -- Intacto14 by Anoob\n127 -- +pal 126 = +pal itatsi -- Itatsi by SoundsDotZip\n128 -- +pal 127 = +pal enos -- ENOS16 by Endesga\n129 -- +pal 128 = +pal grixel -- Grixel Grotto by Northernite\n130 -- +pal 129 = +pal superb -- Superb 8 by BigPotato\n131 -- +pal 130 = +pal undertones -- Undertones-17 by Irenaart\n132 -- +pal 131 = +pal tango -- Tango by Duck\n133 -- +pal 132 = +pal cheese -- Cheese Palette by Gors\n134 -- +pal 133 = +pal equpix15 -- Equpix 15 by Night\n135 -- +pal 134 = +pal zughy -- Zughy 32 by Zughy\n136 -- +pal 135 = +pal voodo -- Voodo34 by Shamaboy\n137 -- +pal 136 = +pal franzston -- Franzston 30 by Virus610\n138 -- +pal 137 = +pal night -- Night 16 by Night\n139 -- +pal 138 = +pal star29 -- Star 29 by Starlane\n140 -- +pal 139 = +pal star34 -- Star 34 by Starlane\n141 -- +pal 140 = +pal still_life -- Still-Life by cure\n142 -- +pal 141 = +pal jpc16 -- SimpleJPC-16 by Adigun A. Polack\n143 -- +pal 142 = +pal acid -- Acid 15 by pyrometal\n144 -- +pal 143 = +pal battery -- Battery 24 by Battery Jellyfish\n145 -- +pal 144 = +pal clumpy -- Clumpy 18 by windfall.apples\n146 -- +pal 145 = +pal cthul -- Cthulhu by Starlane\n147 -- +pal 146 = +pal crimso11 -- Crimso 11 by Crimso\n148 -- +pal 147 = +pal copper_tech -- Copper-Tech by Arne Niklas Jansson\n149 -- +pal 148 = +pal drz15a -- DRZ15A by Drazille\n150 -- +pal 149 = +pal eggy -- Eggy 15 by Eggy\n151 -- +pal 150 = +pal europa -- Europa 16 by Starlane\n152 -- +pal 151 = +pal greyt_bit -- GreyT-bit by Sam Keddy\n153 -- +pal 152 = +pal jewel -- Jewel by AprilSundae\n154 -- +pal 153 = +pal polar -- Polar 11 by Smalls\n155 -- +pal 154 = +pal sheltzy -- Sheltzy 32 by NatTorpedia\n156 -- +pal 155 = +pal wyrm -- Wyrm 24 by FrogWyrm\n157 -- +pal 156 = +pal yume_nikki -- Yume Nikki by Space Sandwich\n158 -- +pal 157 = +pal rube_goldberg -- Rube-Goldberg\n159 -- +pal 158 = +pal boomboom -- BoomBoom by Salman_Shh\n160 -- +pal 159 = +pal generic-8 -- Generic-8 by GrafxKid\n161 -- +pal 160 = +pal crayola -- Crayola Blind\n162 -- +pal 161 = +pal funky -- FunkyFuture8 by ShamaBoy\n163 -- +pal 162 = +pal golden_wall -- The Golden Wall Palette by Hans Hofmann\n164 -- +pal 163 = +pal matriax8c -- Matriax8c by Davit Masia\n165 -- +pal 164 = +pal nt1h -- NT1H by NatTorpedia\n166 -- +pal 165 = +pal jerrypie -- JerryPie 22 by JerryPie\n167 -- +pal 166 = +pal 90s -- Nineties Nine by Cubby Crazes\n168 -- +pal 167 = +pal on70 -- On70 by By8Bits\n169 -- +pal 168 = +pal anb -- ANB16 by Anoob\n170 -- +pal 169 = +pal retrocal -- Retrocal-8 by polyphrog\n171 -- +pal 170 = +pal punolit -- Punolit by Punoli\n172 -- +pal 171 = +pal luap -- Luap 40 by Luap\n173 -- +pal 172 = +pal autum_villan -- Autum Villan 6 by Chase Stemel\n174 -- +pal 173 = +pal autum -- Autum 15 by jok\n175 -- +pal 174 = +pal autum_yellow -- Autum 15 [Yellow] by jok\n176 -- +pal 175 = +pal galaxy -- Galaxy Flame by Rhoq\n177 -- +pal 176 = +pal cretaceous -- Cretaceous-16 by Joao Vasconcelos\n178 -- +pal 177 = +pal antiquity -- Antiquity16 by ILTA\n179 -- +pal 178 = +pal mushroom -- Mushroom by Jimison3\n180 -- +pal 179 = +pal aerugo -- Aerugo by Lizalot\n181 -- +pal 180 = +pal hotel_paintings -- Hotel Paintings 6 by Chase Stemel\n182 -- +pal 181 = +pal nopal -- Nopal-12 by BlackedIRL.\n183 -- +pal 182 = +pal brightness_gpy -- Brightness GPY by rickthepalette\n184 -- +pal 183 = +pal blessing -- Blessing by Maruki\n185 -- +pal 184 = +pal fairy_dust -- Fairydust 8 by Yousurname\n186 -- +pal 185 = +pal milkshake -- Vanilla MilkShake by Space Sandwich\n187 -- +pal 186 = +pal fuzzy -- Fuzzy Four by P-Tux7\n188 -- +pal 187 = +pal fairy -- Fairy Tales by lollige\n189 -- +pal 188 = +pal naji16 -- Naji 16 by Naji\n190 -- +pal 189 = +pal easter -- Easter Island by skamocore\n191 -- +pal 190 = +pal pastel_and_darks -- Pastel and Darks 58 Palette by Glxss\n192 -- +pal 191 = +pal pastel_irena -- 17 Pastels by Irenaart\n193 -- +pal 192 = +pal nostalgia -- NOSTALGIA15 by Arisuki\n194 -- +pal 193 = +pal ocaso -- Ocaso by Minord\n195 -- +pal 194 = +pal pastel_starlitsunset -- Oh Hell, Pastel by StarlitSunset\n196 -- +pal 195 = +pal pollen -- Pollen-8 by Conker\n197 -- +pal 196 = +pal kule -- KULE-16 by Cuymacu\n198 -- +pal 197 = +pal hydrangea -- Hydrangea 11 by Dinchen's Art\n199 -- +pal 198 = +pal fluffy -- Fluffy8 by vee\n200 -- +pal 199 = +pal st8 -- ST 8 R&B Remake by Skiller Thomson\n201 -- +pal 200 = +pal neon -- Neon Space by Jimison3\n202 -- +pal 201 = +pal cyclope -- Cyclope6 by Royal_Naym\n203 -- +pal 202 = +pal sy17 -- Sy17 by xaiue\n204 -- +pal 203 = +pal syz15 -- Syz15 by Fusionnist\n205 -- +pal 204 = +pal tui15 -- TUI-15 by Jeremy\n206 -- +pal 205 = +pal cave -- Cave by PineTreePizza\n207 -- +pal 206 = +pal psygnosia -- Psygnosia by Arne Niklas Jansson\n208 -- +pal 207 = +pal marshmellow -- MarshMellow32 by FormalPrejudice\n209 -- +pal 208 = +pal lost_century -- Lost Century 24 by CalmRadish\n210 -- +pal 209 = +pal finlal -- Finlal 11 by Finlal\n211 -- +pal 210 = +pal industrial -- Industrial Factory 16 by Toby_Yasha\n212 -- +pal 211 = +pal murder_mystery -- Murder Mystery 16 by Toby_Yasha\n213 -- +pal 212 = +pal fate_and_destiny -- Fate & Destiny 12 by Toby_Yasha\n214 -- +pal 213 = +pal vinik -- Vinik 24 by Vinik\n215 -- +pal 214 = +pal ykb -- YKB-22 by yahkehbu\n216 -- +pal 215 = +pal halloween -- Halloween by Mememellow\n217 -- +pal 216 = +pal graveyard -- Graveyard-21 by AprilSundae\n218 -- +pal 217 = +pal steamlords -- Steam Lords by Slynyrd\n219 -- +pal 218 = +pal frostical -- Frostical by yedamameday\n220 -- +pal 219 = +pal deuterospill -- DeuteroSpill by Royal_Naym\n221 -- +pal 220 = +pal cool_bone -- Cool Bone 7 by Chase Stemel\n222 -- +pal 221 = +pal muted_ally -- Muted Ally 6 by Chase Stemel\n223 -- +pal 222 = +pal ephemera -- EPHEMERA by K C\n224 -- +pal 223 = +pal ink -- Ink by AprilSundae\n225 -- +pal 224 = +pal violet_dreams -- Violet Dreams by Solitaire\n226 -- +pal 225 = +pal tiny -- Tinyfolks by Pierr Vandermaesan\n227 -- +pal 226 = +pal old_gold -- Old Gold 7 by Chase Stemel\n228 -- +pal 227 = +pal rosemoss-8 -- Rosemoss-8 by polyphrog\n229 -- +pal 228 = +pal aap_radiant_xv -- AAP-RadiantXV by Adigun A. Polack\n230 -- +pal 229 = +pal aap_majesty_xvii -- AAP-Majesty XVII by Adigun A. Polack\n231 -- +pal 230 = +pal dead_weight -- Dead Weight-8 by polyphrog\n232 -- +pal 231 = +pal mojave -- Mojave20 by magodellepercussioni\n233 -- +pal 232 = +pal petite -- Petite-8 by Adigun A. Polack\n234 -- +pal 233 = +pal petite_afterdark -- Petite-8 Afterdark by Adigun A. Polack\n235 -- +pal 234 = +pal xaiue_radiant -- XAIUE-Radiant by xaiue\n236 -- +pal 235 = +pal daruda -- Daruda 22 by daruda\n237 -- +pal 236 = +pal firestorm -- Firestorm by theartistjulian\n238 -- +pal 237 = +pal borkfest -- Borkfest by まるき\n239 -- +pal 238 = +pal spicy -- Spicy 07 by green guy\n240 -- +pal 239 = +pal rust -- Rust-6 by Blue Phoenix\n241 -- +pal 240 = +pal apricot -- Apricot by Chase Stemel\n242 -- +pal 241 = +pal supernova -- SuperNova 7 by Blue Phoenix\n243 -- +pal 242 = +pal pastry -- Pastry by MirruTatep\n244 -- +pal 243 = +pal sandy -- Sandy 06 by green guy\n245 -- +pal 244 = +pal illumination -- Illumination by MirruTatep\n246 -- +pal 245 = +pal nyx -- NYX8 by Javier Guerrero\n247 -- +pal 246 = +pal dream_haze -- Dream Haze 8 by Klafooty\n248 -- +pal 247 = +pal oil -- OIL6 by GrafxKid\n249 -- +pal 248 = +pal regal -- Regal10 by JRiggles\n250 -- +pal 249 = +pal soft_demon -- Soft Demon 7 by Chase Stemel\n251 -- +pal 250 = +pal sgm -- SGM-Palette 2 by s.g.m\n252 -- +pal 251 = +pal midnight_ablaze -- Midnight ablaze by Inkpendude\n253 -- +pal 252 = +pal black_cherry -- Black Cherry by MirruTatep\n254 -- +pal 253 = +pal sunset_red -- Sunset Red by Cabezinu\n255 -- +pal 254 = +pal inkpink -- INKPINK by Inkpendude\n256 -- +pal 255 = +pal brash_pink -- Brash Pink by ItzFred\n257 -- +pal 256 = +pal pink_neon_sign -- Pink Neon Sign 6 by Chase Stemel\n258 -- +pal 257 = +pal enchanted_purple -- Enchanted Purple by Kaiburn\n259 -- +pal 258 = +pal arch -- Arch by Poltergasm\n260 -- +pal 259 = +pal spacey_easter -- Spacey Easter by Spark Norris\n261 -- +pal 260 = +pal fornax_void_1 -- Fornax Void I by Fornax Void\n262 -- +pal 261 = +pal fornax_void_2 -- Fornax Void II by Fornax Void\n263 -- +pal 262 = +pal pixelwave -- Pixelwave by Reptorian\n264 -- +pal 263 = +pal s1-6 -- S1-6 by Blyzz\n265 -- +pal 264 = +pal berry_nebula -- Berry Nebula by LostInIndigo\n266 -- +pal 265 = +pal abyss -- ABYSS-9 by Jusiv\n267 -- +pal 266 = +pal moonlight -- Moonlight 15 by Tofu\n268 -- +pal 267 = +pal moon -- Moonlit-39 by theartistjulian\n269 -- +pal 268 = +pal h2o -- H2O by maine\n270 -- +pal 269 = +pal magic_waters -- Magic Waters 9 by Chase Stemel\n271 -- +pal 270 = +pal bluemold -- Bluem0ld by warpixel\n272 -- +pal 271 = +pal moss -- Moss by Zetomis\n273 -- +pal 272 = +pal deep_maze -- DEEP MAZE by Ryosuke\n274 -- +pal 273 = +pal toxic_slime -- Toxic Slime by MirruTatep\n275 -- +pal 274 = +pal lush_green -- Lush Green by EerieJam\n276 -- +pal 275 = +pal tsunami -- Tsunami by MirruTatep\n277 -- +pal 276 = +pal cryptic_ocean -- Cryptic Ocean by Klafooty\n278 -- +pal 277 = +pal marsh_madness -- Marsh Madness by MirruTatep\n279 -- +pal 278 = +pal oxyd -- OXYD by ItzFred\n280 -- +pal 279 = +pal pink_green -- Pink&Green by q1\n281 -- +pal 280 = +pal woodwalk -- Walking in the Woods 8 by Chase Stemel\n282 -- +pal 281 = +pal paper -- Paper 8 by Frosty Rabbid\n283 -- +pal 282 = +pal sahara -- Sahara Pastell by wermz\n284 -- +pal 283 = +pal sunflower -- Sunflower Painting 7 by Chase Stemel\n285 -- +pal 284 = +pal arthoe -- Art Hoe Aesthetic 7 by Chase Stemel\n286 -- +pal 285 = +pal sky -- Sky5 by MiniTe\n287 -- +pal 286 = +pal ocean -- Ocean Glass by Solitaire\n288 -- +pal 287 = +pal royal -- RoyalGuard by Royal_Naym\n289 -- +pal 288 = +pal eulbink -- Eulbink by Inkpendude\n290 -- +pal 289 = +pal winter_wonderland -- Winter Wonderland by Jimison3\n291 -- +pal 290 = +pal moon_squid -- Moon Squid 7 by Chase Stemel\n292 -- +pal 291 = +pal stratus -- Stratus by MirruTatep\n293 -- +pal 292 = +pal arctic_dust -- Arctic Dust by MirruTatep\n294 -- +pal 293 = +pal clouds_sunset -- CL8UDS by _Nicola\n295 -- +pal 294 = +pal lilac_skies -- Lilac Skies 5 by Chase Stemel\n296 -- +pal 295 = +pal sea_of_fire -- Sea of Fire by TATA-PIXEL\n297 -- +pal 296 = +pal autochrome3 -- Autochrome 3 by Reptorian\n298 -- +pal 297 = +pal autochrome5 -- Autochrome 5 by Reptorian\n299 -- +pal 298 = +pal gb_default_1 -- GB Default 1\n300 -- +pal 299 = +pal gb_default_2 -- GB Default 2\n301 -- +pal 300 = +pal gb_andrade -- GB Andrade by Andrade\n302 -- +pal 301 = +pal gb_blue -- GB Blue Seni by WildLeoKnight\n303 -- +pal 302 = +pal gb_blackzone -- GB Blackzone\n304 -- +pal 303 = +pal gb_suburb -- GB Suburb by Poppysalmon\n305 -- +pal 304 = +pal gb_crimson -- GB Crimson by WildLeoKnight\n306 -- +pal 305 = +pal gb_didi -- GB Didi by DidiGameboy\n307 -- +pal 306 = +pal gb_dirty -- GB Dirty by WildLeoKnight\n308 -- +pal 307 = +pal gb_arne -- GB Arne by Arne\n309 -- +pal 308 = +pal gb_easy -- GB Easy by GrafxKid\n310 -- +pal 309 = +pal gb_forest -- GB Forest\n311 -- +pal 310 = +pal gb_harsh_green -- GB Harsh Green by WildLeoKnight\n312 -- +pal 311 = +pal gb_light_green -- GB Light Green by WildLeoKnight\n313 -- +pal 312 = +pal gb_nostalgia -- GB Nostalgia by WildLeoKnight\n314 -- +pal 313 = +pal gb_platinum -- GB Platinum by WildLeoKnight\n315 -- +pal 314 = +pal gb_kirokaze -- GB Kirokaze by Kirokaze\n316 -- +pal 315 = +pal gb_cyber -- GB Cyber\n317 -- +pal 316 = +pal gb_wish -- GB Wish by Kerrie Lake\n318 -- +pal 317 = +pal gb_grapefruit -- GB Grapefruit by GrafxKid\n319 -- +pal 318 = +pal gb_ice_cream -- GB Ice Cream by Kerrie Lake\n320 -- +pal 319 = +pal gb_red_blue -- GB Red_Blue\n321 -- +pal 320 = +pal gb_gold -- Gold GB by Isa\n322 -- +pal 321 = +pal gb_choco -- GB Chocolate by GrafxKid\n323 -- +pal 322 = +pal gb_gray -- GB Gray by GrafxKid\n324 -- +pal 323 = +pal gb_space -- GB Spacehaze by WildLeoKnight\n325 -- +pal 324 = +pal gb_purple_dawn -- GB Purple Dawn by WildLeoKnight\n326 -- +pal 325 = +pal moon_crystal -- Moon Crystal by Doph\n327 -- +pal 326 = +pal arne -- ARNE4 by Arne\n328 -- +pal 327 = +pal autumn_chill -- Autumn Chill by Doph\n329 -- +pal 328 = +pal cherrymelon -- CherryMelon by WildLeoKnight\n330 -- +pal 329 = +pal hal4 -- HallowPumpkin by WildLeoKnight\n331 -- +pal 330 = +pal hollow -- Hollow by Poltergasm\n332 -- +pal 331 = +pal lavender -- Lavender4 by Solitaire\n333 -- +pal 332 = +pal maw -- MAW by bloo\n334 -- +pal 333 = +pal voltage_warning -- Voltage Warning by Wuchta\n335 -- +pal 334 = +pal tritanopia -- Tritanopia by Allappini\n336 -- +pal 335 = +pal rabbit -- Rabbit 7 by GrafxKid\n337 -- +pal 336 = +pal amiga2600_ntsc -- Amiga 2600 NTSC\n338 -- +pal 337 = +pal amiga2600_pal -- Amiga 2600 PAL\n339 -- +pal 338 = +pal amiga2600_secam -- Amiga 2600 SECAM\n340 -- +pal 339 = +pal amiga7800_mess -- Amiga 7800 M.E.S.S by Nabuko78\n341 -- +pal 340 = +pal amiga7800 -- Amiga 7800\n342 -- +pal 341 = +pal amstrad_cpc -- Amstrad CPC\n343 -- +pal 342 = +pal apple -- Apple II\n344 -- +pal 343 = +pal atari -- Atari 8-Bit Series - GTIA by PixelCrunch\n345 -- +pal 344 = +pal cga -- CGA\n346 -- +pal 345 = +pal cga00 -- CGA Mode 0 [Low]\n347 -- +pal 346 = +pal cga01 -- CGA Mode 0 [High]\n348 -- +pal 347 = +pal cga10 -- CGA Mode 1 [Low]\n349 -- +pal 348 = +pal cga11 -- CGA Mode 1 [High]\n350 -- +pal 349 = +pal cga20 -- CGA Mode 2 [Low]\n351 -- +pal 350 = +pal cga21 -- CGA Mode 2 [High]\n352 -- +pal 351 = +pal c64_pepto -- Commodore 64 - Pepto\n353 -- +pal 352 = +pal c64_colodore -- Commodore 64 - Colodore\n354 -- +pal 353 = +pal com_vic_20 -- Commodore VIC-20\n355 -- +pal 354 = +pal colecovision -- Colecovision\n356 -- +pal 355 = +pal jmp -- Japanese Machine Palette by Arne Niklas Jansson\n357 -- +pal 356 = +pal mac2 -- Macintosh II\n358 -- +pal 357 = +pal mac_8-bit -- Macintosh 8-Bit System Palette\n359 -- +pal 358 = +pal msx -- MSX\n360 -- +pal 359 = +pal nes -- NES\n361 -- +pal 360 = +pal pico -- PICO-8 by Lexaloffle Games\n362 -- +pal 361 = +pal risc -- RISC OS\n363 -- +pal 362 = +pal sam_coupe -- SAM Coupe\n364 -- +pal 363 = +pal mo5 -- Thomson MO5\n365 -- +pal 364 = +pal trs80 -- TRS-80 Color Computer Palette\n366 -- +pal 365 = +pal virtualboy -- Virtual Boy interpreted by Bruno Weinberger\n367 -- +pal 366 = +pal vga -- VGA\n368 -- +pal 367 = +pal win95 -- Win 95\n369 -- +pal 368 = +pal zx -- ZX Spectrum\n370 -- +pal 369 = +pal gnome -- GNOME 32\n371 -- +pal 370 = +pal electronic_crayon -- Electronic Crayon 22\n372 -- +pal 371 = +pal chip16 -- Chip16\n373 -- +pal 372 = +pal deluxe_paint -- Deluxe Paint\n374 -- +pal 373 = +pal flat_ui -- FlatUI from flat ui colors website\n375 -- +pal 374 = +pal makecode_arcade -- MakeCode Arcade Palette\n376 -- +pal 375 = +pal oekaki -- Oekaki from Oekaki.nl\n377 -- +pal 376 = +pal ms_legacy_paint -- Legacy Paint\n378 -- +pal 377 = +pal ms_xp -- XP Paint\n379 -- +pal 378 = +pal vista -- Vista Paint\n380 -- +pal 379 = +pal piet -- Piet Palette by Piet Mondrain\n381 -- +pal 380 = +pal japanese_woodblock -- Japanese Woodblock Palette by Polyducks\n382 -- +pal 381 = +pal human_faces -- Human Faces by Romney57\n383 -- +pal 382 = +pal hsv -- HSV Palette by MadJik\n384 -- +pal 383 = +pal christmas -- ST24 Christmas by Skiller Thomson\n385 -- +pal 384 = +pal ladybug_reds -- Reds by Ladybug" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian Latest update: 2023/9/11." }
      ]
    },
    {
      "name": "Prime Surface", "lang": "en", "command": "gui_rep_prime_surface", "command_preview": "", "parameters": [
      { "type": "bool", "name": "Negate Direction?", "default": "0", "pos": "1" },
      { "type": "choice", "name": "Mirror Direction", "default": "0", "pos": "2", "choices": { "0": "None", "1": "X", "2": "Y" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian Latest update: 2020/2/26." }
      ]
    },
    {
      "name": "Pseudorandom Noise", "lang": "en", "command": "fx_rep_mj_prn", "command_preview": "fx_rep_mj_prn_preview", "parameters": [
      { "type": "note", "text": "Generates pseudorandom noise.\n\nBased off <a href=\"https://forums.getpaint.net/topic/111659-regular-noise-texture-ymd-20170815/\">MadJik's Regular Noise Paint.NET Plugin</a>. This is a extended version. Preview may not be accurate!" },
      { "type": "separator" },
      { "type": "note", "text": "Preliminary" },
      { "type": "float", "name": "K-1", "default": "8", "min": "-8", "max": "8", "pos": "1" },
      { "type": "float", "name": "K-2", "default": "2", "min": "-8", "max": "8", "pos": "2" },
      { "type": "choice", "name": "K Mode", "default": "0", "pos": "3", "choices": { "0": "Mode 0", "1": "Mode 1" } },
      { "type": "float", "name": "Shift", "default": "1", "min": "-256", "max": "256", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Non-K Factors" },
      { "type": "float", "name": "Color Angle", "default": "0", "min": "-180", "max": "180", "pos": "5" },
      { "type": "int", "name": "Pixel Size", "default": "1", "min": "1", "max": "16", "pos": "6" },
      { "type": "point", "name": "Position", "position": "50,50", "pos": "7" },
      { "type": "choice", "name": "Formula", "default": "1", "pos": "9", "choices": { "0": "Gray", "1": "Sinusoidal", "2": "RGB", "3": "Tangent" } },
      { "type": "bool", "name": "Double Pixel Axis?", "default": "0", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "Grid" },
      { "type": "bool", "name": "Activate Grid?", "default": "0", "pos": "11" },
      { "type": "float", "name": "Shade", "default": "0", "min": "0", "max": "255", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2021/1/17." }
      ]
    },
    {
      "name": "Rainbowify", "lang": "en", "command": "fx_rep_rainbowify", "command_preview": "fx_rep_rainbowify_preview", "parameters": [
      { "type": "note", "text": "Apply rainbowify effect into image. Inspired by <a href=\"https://blog.jfrech.com/180/\">Rainbowify effect made by Jonathan Frech</a>." },
      { "type": "separator" },
      { "type": "float", "name": "Hue Shift", "default": "0", "min": "-180", "max": "180", "pos": "1" },
      { "type": "float", "name": "Gradient Angle", "default": "0", "min": "-180", "max": "180", "pos": "2" },
      { "type": "float", "name": "Gradient Scale(%)", "default": "100", "min": "50", "max": "200", "pos": "3" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "4", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "5", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2021/7/26." }
      ]
    },
    {
      "name": "Random Gradient Bars", "lang": "en", "command": "fx_rep_randgradbar", "command_preview": "fx_rep_randgradbar_preview", "parameters": [
      { "type": "note", "text": "Create Random Gradient Bar.\n\nNote - Preview is only for giving a idea." },
      { "type": "separator" },
      { "type": "note", "text": "Main" },
      { "type": "int", "name": "Seed", "default": "0", "min": "0", "max": "100000", "pos": "1" },
      { "type": "float", "name": "Bar Size - Quarter Image-Diagonal(%)", "default": "2", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Space Size - Quarter Image-Diagonal(%)", "default": "0", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Angle", "default": "0", "min": "-180", "max": "180", "pos": "4" },
      { "type": "float", "name": "Skew Angle", "default": "0", "min": "-89", "max": "89", "pos": "5" },
      { "type": "point", "name": "Origin", "position": "50,50", "pos": "6" },
      { "type": "float", "name": "Subsampling", "default": "1", "min": "0", "max": "3", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Gradient Transformation" },
      { "type": "float", "name": "Shift", "default": "0", "min": "0", "max": "100", "pos": "9" },
      { "type": "float", "name": "Multiplier A", "default": "1", "min": ".1", "max": "250", "pos": "10" },
      { "type": "float", "name": "Multiplier B", "default": "100", "min": ".1", "max": "250", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Gradient Modulo" },
      { "type": "choice", "name": "Repetition", "default": "0", "pos": "12", "choices": { "0": "Random", "1": "Cut", "2": "Periodic", "3": "Continuous" } },
      { "type": "choice", "name": "Random Bar Repetition", "default": "0", "pos": "13", "choices": { "0": "All", "1": "Cut and Periodic", "2": "Cut and Continuous", "3": "Periodic and Continuous" } },
      { "type": "choice", "name": "Space Mode", "default": "0", "pos": "14", "choices": { "0": "Alpha", "1": "Cut", "2": "Gradient" } },
      { "type": "choice", "name": "Symmetry Mode", "default": "0", "pos": "15", "choices": { "0": "None", "1": "Symmetry A", "2": "Symmetry B" } },
      { "type": "choice", "name": "Inversion Mode", "default": "0", "pos": "16", "choices": { "0": "None", "1": "Random-Inversion", "2": "Full-Inversion" } },
      { "type": "separator" },
      { "type": "note", "text": "Color" },
      { "type": "choice", "name": "Output Color", "default": "0", "pos": "17", "choices": { "0": "Grayscale", "1": "Duotone", "2": "RGB - Random Bars", "3": "HSV - Random Bars" } },
      { "type": "color", "name": "Space Color A", "default": "255,0,127", "pos": "18" },
      { "type": "color", "name": "Space Color B", "default": "249,215,45", "pos": "21" },
      { "type": "separator" },
      { "type": "note", "text": "Animation" },
      { "type": "float", "name": "Shift", "default": "0", "min": "-5", "max": "5", "pos": "24", "visibility": "0" },
      { "type": "float", "name": "Multiplier A", "default": "1", "min": ".1", "max": "250", "pos": "25", "visibility": "0" },
      { "type": "float", "name": "Multiplier B", "default": "100", "min": ".1", "max": "250", "pos": "26", "visibility": "0" },
      { "type": "note", "text": "Under Development!" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian Latest update: 2021/5/24." }
      ]
    },
    {
      "name": "Random Rectangle Division", "lang": "en", "command": "fx_rep_rrd", "command_preview": "fx_rep_rrd", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Main" },
      { "type": "int", "name": "Division", "default": "10", "min": "1", "max": "20", "pos": "1" },
      { "type": "int", "name": "Additional Thickness", "default": "5", "min": "0", "max": "100", "pos": "2" },
      { "type": "int", "name": "Maximum Division Iteration", "default": "5", "min": "2", "max": "40", "pos": "3" },
      { "type": "float", "name": "Probability of Division(%)", "default": "95", "min": "20", "max": "100", "pos": "4" },
      { "type": "int", "name": "Loop Limit", "default": "50000", "min": "1000", "max": "2097152", "pos": "5" },
      { "type": "int", "name": "Seed", "default": "0", "min": "0", "max": "300", "pos": "6" },
      { "type": "float", "name": "Border(%)", "default": "35", "min": "0", "max": "100", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Color" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "8", "choices": { "0": "Grayscale", "1": "Palette", "2": "Random" } },
      { "type": "bool", "name": "Normalize?", "default": "1", "pos": "9" },
      { "type": "choice", "name": "Palette", "default": "12", "pos": "10", "choices": { "0": "Black & White-2", "1": "Red-Green-Blue-3", "2": "Black with Red-Green-Blue-4", "3": "Black & White with Red-Green-Blue-5", "4": "Cyan-Magenta-Yellow-3", "5": "Cyan-Magenta-Yellow-Black-4", "6": "White-Cyan-Magenta-Yellow-Black-5", "7": "Red-Green-Blue with Cyan-Magenta-Yellow-6", "8": "1-Bit RGB-8", "9": "Aurora-256", "10": "Zenit-241", "11": "Game Builder Garage: Texture-Sprite Editor Palette-117", "12": "Duel-256", "13": "Hocus Pocus Palette-256", "14": "PLAYPAL-249", "15": "Sonic Robo Blast 2-256", "16": "Uzebox-256", "17": "Andrew Kensler - 16", "18": "Andrew Kensler - 32", "19": "Andrew Kensler - 54", "20": "AAP-Micro 12", "21": "AAP-16", "22": "AAP-64", "23": "AAP-RadiantPLUS-96", "24": "AAP-SPLENDOR128", "25": "AAP-DGA16", "26": "Cheerful-32", "27": "DB8", "28": "DB16", "29": "DB32", "30": "DB-ISO22", "31": "DimWiddy 17", "32": "DimWiddy 23", "33": "Endesga-4", "34": "Endesga-8", "35": "Endesga-16", "36": "Endesga-32", "37": "Endesga-36", "38": "Endesga-64", "39": "Famicube-64", "40": "Juicy-32", "41": "Juicy-56", "42": "XAIUE-22", "43": "15P-DX", "44": "20P-DX", "45": "24P-DX", "46": "Cabana-64", "47": "Fantasy 16", "48": "Fantasy 24", "49": "Tranquil Fantasy 23", "50": "Tranquility Plus 39", "51": "Faraway 48", "52": "Fleja Master Palette-33", "53": "Koni32", "54": "Linear Color Palette Basic-31", "55": "LEGO colors-43", "56": "Lego Colours 2021-40", "57": "Vines Flexible Linear Ramps-38", "58": "Arcade Standard 29", "59": "ARQ16", "60": "Atom-8", "61": "BLK 36", "62": "BLK-NEO-46", "63": "Broken Facility-40", "64": "Bubblegum-16", "65": "CPC BOY-32", "66": "Cade 15", "67": "Calder 8-11", "68": "CD-BAC-16", "69": "CG Arne-16", "70": "DinoKnight 16", "71": "||||-22", "72": "FZT Ethereal 16", "73": "Indecision-17", "74": "Island Joy 16", "75": "Journey-64", "76": "Shallowmarsh26", "77": "Lago Nenufar (Lake Water Lily)-19", "78": "Juicy 17", "79": "ChocolateGanache-96", "80": "Bright Winter 1-74", "81": "Bright Winter 2-83", "82": "Kawaii16", "83": "0xdb-01-17", "84": "GZXP-11", "85": "Chromatic16", "86": "Piet Coding Language-20", "87": "Matrix-96", "88": "Material Design-96", "89": "Rainbow-88", "90": "Rainbow-96", "91": "SCRJ-XXXVI-36", "92": "Pxls Default-32", "93": "Lospec500-42", "94": "Moderna-24", "95": "Oak21", "96": "Nature's Embrace 55", "97": "RBYPGO-94", "98": "New Worlds 46", "99": "Nauris-16", "100": "Dynamite-40", "101": "Interstate 28", "102": "Downgraded 32", "103": "Pear 36", "104": "Pineapple 32", "105": "Peachy Pop 16", "106": "Resurrect 32", "107": "Rosy 42", "108": "SLSO-CLR17", "109": "Softy 15", "110": "SPEC12", "111": "The Roarin 80's", "112": "Starmancer-52", "113": "SuperFuture25", "114": "SUNSHINE 35", "115": "Sweetie 16", "116": "Calm 48", "117": "Optimism-32", "118": "Taffy 16", "119": "Todayland Palette V2-25", "120": "TriRampo-12", "121": "r|place 2022-32", "122": "Tropical Cone 24", "123": "Vivid-17", "124": "SHIDO50+-72", "125": "Intacto14", "126": "Itatsi-23", "127": "ENOS16", "128": "Grixel Grotto-16", "129": "Superb 8", "130": "Undertones-17", "131": "Tango-28", "132": "Cheese Palette-28", "133": "Equpix 15", "134": "Zughy 32", "135": "Voodo34", "136": "Franzston 30", "137": "Night 16", "138": "Star 29", "139": "Star 34", "140": "Still-Life-14", "141": "SimpleJPC-16", "142": "Acid 15", "143": "Battery 24", "144": "Clumpy 18", "145": "Cthulhu-16", "146": "Crimso 11-16", "147": "Copper-Tech-16", "148": "DRZ15A", "149": "Eggy 15", "150": "Europa 16", "151": "GreyT-bit-8", "152": "Jewel-15", "153": "Polar 11", "154": "Sheltzy 32", "155": "Wyrm 24", "156": "Yume Nikki-24", "157": "Rube-Goldberg-9", "158": "BoomBoom-7", "159": "Generic-8", "160": "Crayola Blind-9", "161": "FunkyFuture8", "162": "The Golden Wall Palette-7", "163": "Matriax8c", "164": "NT1H-26", "165": "JerryPie 22", "166": "Nineties Nine-9", "167": "On70-35", "168": "ANB16", "169": "Retrocal-8", "170": "Punolit-21", "171": "Luap 40", "172": "Autum Villan 6", "173": "Autum 15", "174": "Autum 15 [Yellow]", "175": "Galaxy Flame-16", "176": "Cretaceous-16", "177": "Antiquity16", "178": "Mushroom-14", "179": "Aerugo-32", "180": "Hotel Paintings 6", "181": "Nopal-12", "182": "Brightness GPY-3", "183": "Blessing-5", "184": "Fairydust 8", "185": "Vanilla MilkShake-16", "186": "Fuzzy Four-4", "187": "Fairy Tales-8", "188": "Naji 16", "189": "Easter Island-16", "190": "Pastel and Darks 58 Palette", "191": "17 Pastels", "192": "NOSTALGIA15", "193": "Ocaso-17", "194": "Oh Hell, Pastel-15", "195": "Pollen-8", "196": "KULE-16", "197": "Hydrangea 11", "198": "Fluffy8", "199": "ST 8 R&B Remake", "200": "Neon Space-10", "201": "Cyclope6", "202": "Sy17", "203": "Syz15", "204": "TUI-15", "205": "Cave-8", "206": "Psygnosia-16", "207": "MarshMellow32", "208": "Lost Century 24", "209": "Finlal 11", "210": "Industrial Factory 16", "211": "Murder Mystery 16", "212": "Fate & Destiny 12", "213": "Vinik 24", "214": "YKB-22", "215": "Halloween-7", "216": "Graveyard-21", "217": "Steam Lords-16", "218": "Frostical-18", "219": "DeuteroSpill-9", "220": "Cool Bone 7", "221": "Muted Ally 6", "222": "EPHEMERA-12", "223": "Ink-5", "224": "Violet Dreams-8", "225": "Tinyfolks-5", "226": "Old Gold 7", "227": "Rosemoss-8", "228": "AAP-RadiantXV-15", "229": "AAP-Majesty XVII-17", "230": "Dead Weight-8", "231": "Mojave20", "232": "Petite-8", "233": "Petite-8 Afterdark", "234": "XAIUE-Radiant-22", "235": "Daruda 22", "236": "Firestorm-9", "237": "Borkfest-8", "238": "Spicy 07", "239": "Rust-6", "240": "Apricot-6", "241": "SuperNova 7", "242": "Pastry-5", "243": "Sandy 06", "244": "Illumination-5", "245": "NYX8", "246": "Dream Haze 8", "247": "OIL6", "248": "Regal10", "249": "Soft Demon 7", "250": "SGM-Palette 2-17", "251": "Midnight ablaze-7", "252": "Black Cherry-5", "253": "Sunset Red-5", "254": "INKPINK-6", "255": "Brash Pink-5", "256": "Pink Neon Sign 6", "257": "Enchanted Purple-12", "258": "Arch-11", "259": "Spacey Easter-17", "260": "Fornax Void I-254", "261": "Fornax Void II-128", "262": "Pixelwave-12", "263": "S1-6", "264": "Berry Nebula-8", "265": "ABYSS-9", "266": "Moonlight 15", "267": "Moonlit-39", "268": "H2O-10", "269": "Magic Waters 9", "270": "Bluem0ld-4", "271": "Moss-5", "272": "DEEP MAZE-7", "273": "Toxic Slime-5", "274": "Lush Green-6", "275": "Tsunami-5", "276": "Cryptic Ocean-6", "277": "Marsh Madness-5", "278": "OXYD-8", "279": "Pink&Green-8", "280": "Walking in the Woods 8", "281": "Paper 8", "282": "Sahara Pastell-7", "283": "Sunflower Painting 7", "284": "Art Hoe Aesthetic 7", "285": "Sky5-7", "286": "Ocean Glass-8", "287": "RoyalGuard-6", "288": "Eulbink-7", "289": "Winter Wonderland-8", "290": "Moon Squid 7", "291": "Stratus-5", "292": "Arctic Dust-5", "293": "CL8UDS", "294": "Lilac Skies 5", "295": "Sea of Fire-6", "296": "Autochrome 3", "297": "Autochrome 5", "298": "GB Default 1-4", "299": "GB Default 2-4", "300": "GB Andrade-4", "301": "GB Blue Seni-4", "302": "GB Blackzone-4", "303": "GB Suburb-4", "304": "GB Crimson-4", "305": "GB Didi-4", "306": "GB Dirty-4", "307": "GB Arne-4", "308": "GB Easy-4", "309": "GB Forest-4", "310": "GB Harsh Green-4", "311": "GB Light Green-4", "312": "GB Nostalgia-4", "313": "GB Platinum-4", "314": "GB Kirokaze-4", "315": "GB Cyber-4", "316": "GB Wish-4", "317": "GB Grapefruit-4", "318": "GB Ice Cream-4", "319": "GB Red_Blue-4", "320": "Gold GB-4", "321": "GB Chocolate-4", "322": "GB Gray-4", "323": "GB Spacehaze-4", "324": "GB Purple Dawn-4", "325": "Moon Crystal-4", "326": "ARNE4", "327": "Autumn Chill-4", "328": "CherryMelon-4", "329": "HallowPumpkin-4", "330": "Hollow-4", "331": "Lavender4", "332": "MAW-4", "333": "Voltage Warning-4", "334": "Tritanopia-5", "335": "Rabbit 7", "336": "Amiga 2600 NTSC-127", "337": "Amiga 2600 PAL-104", "338": "Amiga 2600 SECAM-8", "339": "Amiga 7800 M.E.S.S-256", "340": "Amiga 7800-256", "341": "Amstrad CPC-27", "342": "Apple II-15", "343": "Atari 8-Bit Series - GTIA-256", "344": "CGA-16", "345": "CGA Mode 0 [Low]-4", "346": "CGA Mode 0 [High]-4", "347": "CGA Mode 1 [Low]-4", "348": "CGA Mode 1 [High]-4", "349": "CGA Mode 2 [Low]-4", "350": "CGA Mode 2 [High]-4", "351": "Commodore 64 - Pepto-16", "352": "Commodore 64 - Colodore-16", "353": "Commodore VIC-20-16", "354": "Colecovision-15", "355": "Japanese Machine Palette-16", "356": "Macintosh II-16", "357": "Macintosh 8-Bit System Palette-256", "358": "MSX-15", "359": "NES-55", "360": "PICO-8-16", "361": "RISC OS-16", "362": "SAM Coupe-128", "363": "Thomson MO5-16", "364": "TRS-80 Color Computer Palette-4", "365": "Virtual Boy interpreted-4", "366": "VGA-244", "367": "Win 95-256", "368": "ZX Spectrum-15", "369": "GNOME 32", "370": "Electronic Crayon 22", "371": "Chip16", "372": "Deluxe Paint-222", "373": "FlatUI-20", "374": "MakeCode Arcade Palette-15", "375": "Oekaki-20", "376": "Legacy Paint-16", "377": "XP Paint-28", "378": "Vista Paint-28", "379": "Piet Palette-5", "380": "Japanese Woodblock Palette-12", "381": "Human Faces-94", "382": "HSV Palette-96", "383": "ST24 Christmas", "384": "Reds-24" } },
      { "type": "choice", "name": "Color Space", "default": "0", "pos": "11", "choices": { "0": "RGB", "1": "HSV" } },
      { "type": "int", "name": "Number of Color", "default": "0", "min": "0", "max": "100", "pos": "12" },
      { "type": "int", "name": "Seed", "default": "0", "min": "0", "max": "100000", "pos": "13" },
      { "type": "color", "name": "Border", "default": "0,0,0", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian Latest update: 2023/9/11." }
      ]
    },
    {
      "name": "Rectangle-Square Fill", "lang": "en", "command": "fx_rep_rand_sqrrecfill", "command_preview": "fx_rep_rand_sqrrecfill", "parameters": [
      { "type": "note", "text": "Main" },
      { "type": "choice", "name": "1.Palette", "default": "0", "pos": "1", "choices": { "0": "None", "1": "Red-Green-Blue-3", "2": "Black with Red-Green-Blue-4", "3": "Black & White with Red-Green-Blue-5", "4": "Cyan-Magenta-Yellow-3", "5": "Cyan-Magenta-Yellow-Black-4", "6": "White-Cyan-Magenta-Yellow-Black-5", "7": "Red-Green-Blue with Cyan-Magenta-Yellow-6", "8": "1-Bit RGB-8", "9": "Aurora-256", "10": "Zenit-241", "11": "Game Builder Garage: Texture-Sprite Editor Palette-117", "12": "Duel-256", "13": "Hocus Pocus Palette-256", "14": "PLAYPAL-249", "15": "Sonic Robo Blast 2-256", "16": "Uzebox-256", "17": "Andrew Kensler - 16", "18": "Andrew Kensler - 32", "19": "Andrew Kensler - 54", "20": "AAP-Micro 12", "21": "AAP-16", "22": "AAP-64", "23": "AAP-RadiantPLUS-96", "24": "AAP-SPLENDOR128", "25": "AAP-DGA16", "26": "Cheerful-32", "27": "DB8", "28": "DB16", "29": "DB32", "30": "DB-ISO22", "31": "DimWiddy 17", "32": "DimWiddy 23", "33": "Endesga-4", "34": "Endesga-8", "35": "Endesga-16", "36": "Endesga-32", "37": "Endesga-36", "38": "Endesga-64", "39": "Famicube-64", "40": "Juicy-32", "41": "Juicy-56", "42": "XAIUE-22", "43": "15P-DX", "44": "20P-DX", "45": "24P-DX", "46": "Cabana-64", "47": "Fantasy 16", "48": "Fantasy 24", "49": "Tranquil Fantasy 23", "50": "Tranquility Plus 39", "51": "Faraway 48", "52": "Fleja Master Palette-33", "53": "Koni32", "54": "Linear Color Palette Basic-31", "55": "LEGO colors-43", "56": "Lego Colours 2021-40", "57": "Vines Flexible Linear Ramps-38", "58": "Arcade Standard 29", "59": "ARQ16", "60": "Atom-8", "61": "BLK 36", "62": "BLK-NEO-46", "63": "Broken Facility-40", "64": "Bubblegum-16", "65": "CPC BOY-32", "66": "Cade 15", "67": "Calder 8-11", "68": "CD-BAC-16", "69": "CG Arne-16", "70": "DinoKnight 16", "71": "||||-22", "72": "FZT Ethereal 16", "73": "Indecision-17", "74": "Island Joy 16", "75": "Journey-64", "76": "Shallowmarsh26", "77": "Lago Nenufar (Lake Water Lily)-19", "78": "Juicy 17", "79": "ChocolateGanache-96", "80": "Bright Winter 1-74", "81": "Bright Winter 2-83", "82": "Kawaii16", "83": "0xdb-01-17", "84": "GZXP-11", "85": "Chromatic16", "86": "Piet Coding Language-20", "87": "Matrix-96", "88": "Material Design-96", "89": "Rainbow-88", "90": "Rainbow-96", "91": "SCRJ-XXXVI-36", "92": "Pxls Default-32", "93": "Lospec500-42", "94": "Moderna-24", "95": "Oak21", "96": "Nature's Embrace 55", "97": "RBYPGO-94", "98": "New Worlds 46", "99": "Nauris-16", "100": "Dynamite-40", "101": "Interstate 28", "102": "Downgraded 32", "103": "Pear 36", "104": "Pineapple 32", "105": "Peachy Pop 16", "106": "Resurrect 32", "107": "Rosy 42", "108": "SLSO-CLR17", "109": "Softy 15", "110": "SPEC12", "111": "The Roarin 80's", "112": "Starmancer-52", "113": "SuperFuture25", "114": "SUNSHINE 35", "115": "Sweetie 16", "116": "Calm 48", "117": "Optimism-32", "118": "Taffy 16", "119": "Todayland Palette V2-25", "120": "TriRampo-12", "121": "r|place 2022-32", "122": "Tropical Cone 24", "123": "Vivid-17", "124": "SHIDO50+-72", "125": "Intacto14", "126": "Itatsi-23", "127": "ENOS16", "128": "Grixel Grotto-16", "129": "Superb 8", "130": "Undertones-17", "131": "Tango-28", "132": "Cheese Palette-28", "133": "Equpix 15", "134": "Zughy 32", "135": "Voodo34", "136": "Franzston 30", "137": "Night 16", "138": "Star 29", "139": "Star 34", "140": "Still-Life-14", "141": "SimpleJPC-16", "142": "Acid 15", "143": "Battery 24", "144": "Clumpy 18", "145": "Cthulhu-16", "146": "Crimso 11-16", "147": "Copper-Tech-16", "148": "DRZ15A", "149": "Eggy 15", "150": "Europa 16", "151": "GreyT-bit-8", "152": "Jewel-15", "153": "Polar 11", "154": "Sheltzy 32", "155": "Wyrm 24", "156": "Yume Nikki-24", "157": "Rube-Goldberg-9", "158": "BoomBoom-7", "159": "Generic-8", "160": "Crayola Blind-9", "161": "FunkyFuture8", "162": "The Golden Wall Palette-7", "163": "Matriax8c", "164": "NT1H-26", "165": "JerryPie 22", "166": "Nineties Nine-9", "167": "On70-35", "168": "ANB16", "169": "Retrocal-8", "170": "Punolit-21", "171": "Luap 40", "172": "Autum Villan 6", "173": "Autum 15", "174": "Autum 15 [Yellow]", "175": "Galaxy Flame-16", "176": "Cretaceous-16", "177": "Antiquity16", "178": "Mushroom-14", "179": "Aerugo-32", "180": "Hotel Paintings 6", "181": "Nopal-12", "182": "Brightness GPY-3", "183": "Blessing-5", "184": "Fairydust 8", "185": "Vanilla MilkShake-16", "186": "Fuzzy Four-4", "187": "Fairy Tales-8", "188": "Naji 16", "189": "Easter Island-16", "190": "Pastel and Darks 58 Palette", "191": "17 Pastels", "192": "NOSTALGIA15", "193": "Ocaso-17", "194": "Oh Hell, Pastel-15", "195": "Pollen-8", "196": "KULE-16", "197": "Hydrangea 11", "198": "Fluffy8", "199": "ST 8 R&B Remake", "200": "Neon Space-10", "201": "Cyclope6", "202": "Sy17", "203": "Syz15", "204": "TUI-15", "205": "Cave-8", "206": "Psygnosia-16", "207": "MarshMellow32", "208": "Lost Century 24", "209": "Finlal 11", "210": "Industrial Factory 16", "211": "Murder Mystery 16", "212": "Fate & Destiny 12", "213": "Vinik 24", "214": "YKB-22", "215": "Halloween-7", "216": "Graveyard-21", "217": "Steam Lords-16", "218": "Frostical-18", "219": "DeuteroSpill-9", "220": "Cool Bone 7", "221": "Muted Ally 6", "222": "EPHEMERA-12", "223": "Ink-5", "224": "Violet Dreams-8", "225": "Tinyfolks-5", "226": "Old Gold 7", "227": "Rosemoss-8", "228": "AAP-RadiantXV-15", "229": "AAP-Majesty XVII-17", "230": "Dead Weight-8", "231": "Mojave20", "232": "Petite-8", "233": "Petite-8 Afterdark", "234": "XAIUE-Radiant-22", "235": "Daruda 22", "236": "Firestorm-9", "237": "Borkfest-8", "238": "Spicy 07", "239": "Rust-6", "240": "Apricot-6", "241": "SuperNova 7", "242": "Pastry-5", "243": "Sandy 06", "244": "Illumination-5", "245": "NYX8", "246": "Dream Haze 8", "247": "OIL6", "248": "Regal10", "249": "Soft Demon 7", "250": "SGM-Palette 2-17", "251": "Midnight ablaze-7", "252": "Black Cherry-5", "253": "Sunset Red-5", "254": "INKPINK-6", "255": "Brash Pink-5", "256": "Pink Neon Sign 6", "257": "Enchanted Purple-12", "258": "Arch-11", "259": "Spacey Easter-17", "260": "Fornax Void I-254", "261": "Fornax Void II-128", "262": "Pixelwave-12", "263": "S1-6", "264": "Berry Nebula-8", "265": "ABYSS-9", "266": "Moonlight 15", "267": "Moonlit-39", "268": "H2O-10", "269": "Magic Waters 9", "270": "Bluem0ld-4", "271": "Moss-5", "272": "DEEP MAZE-7", "273": "Toxic Slime-5", "274": "Lush Green-6", "275": "Tsunami-5", "276": "Cryptic Ocean-6", "277": "Marsh Madness-5", "278": "OXYD-8", "279": "Pink&Green-8", "280": "Walking in the Woods 8", "281": "Paper 8", "282": "Sahara Pastell-7", "283": "Sunflower Painting 7", "284": "Art Hoe Aesthetic 7", "285": "Sky5-7", "286": "Ocean Glass-8", "287": "RoyalGuard-6", "288": "Eulbink-7", "289": "Winter Wonderland-8", "290": "Moon Squid 7", "291": "Stratus-5", "292": "Arctic Dust-5", "293": "CL8UDS", "294": "Lilac Skies 5", "295": "Sea of Fire-6", "296": "Autochrome 3", "297": "Autochrome 5", "298": "GB Default 1-4", "299": "GB Default 2-4", "300": "GB Andrade-4", "301": "GB Blue Seni-4", "302": "GB Blackzone-4", "303": "GB Suburb-4", "304": "GB Crimson-4", "305": "GB Didi-4", "306": "GB Dirty-4", "307": "GB Arne-4", "308": "GB Easy-4", "309": "GB Forest-4", "310": "GB Harsh Green-4", "311": "GB Light Green-4", "312": "GB Nostalgia-4", "313": "GB Platinum-4", "314": "GB Kirokaze-4", "315": "GB Cyber-4", "316": "GB Wish-4", "317": "GB Grapefruit-4", "318": "GB Ice Cream-4", "319": "GB Red_Blue-4", "320": "Gold GB-4", "321": "GB Chocolate-4", "322": "GB Gray-4", "323": "GB Spacehaze-4", "324": "GB Purple Dawn-4", "325": "Moon Crystal-4", "326": "ARNE4", "327": "Autumn Chill-4", "328": "CherryMelon-4", "329": "HallowPumpkin-4", "330": "Hollow-4", "331": "Lavender4", "332": "MAW-4", "333": "Voltage Warning-4", "334": "Tritanopia-5", "335": "Rabbit 7", "336": "Amiga 2600 NTSC-127", "337": "Amiga 2600 PAL-104", "338": "Amiga 2600 SECAM-8", "339": "Amiga 7800 M.E.S.S-256", "340": "Amiga 7800-256", "341": "Amstrad CPC-27", "342": "Apple II-15", "343": "Atari 8-Bit Series - GTIA-256", "344": "CGA-16", "345": "CGA Mode 0 [Low]-4", "346": "CGA Mode 0 [High]-4", "347": "CGA Mode 1 [Low]-4", "348": "CGA Mode 1 [High]-4", "349": "CGA Mode 2 [Low]-4", "350": "CGA Mode 2 [High]-4", "351": "Commodore 64 - Pepto-16", "352": "Commodore 64 - Colodore-16", "353": "Commodore VIC-20-16", "354": "Colecovision-15", "355": "Japanese Machine Palette-16", "356": "Macintosh II-16", "357": "Macintosh 8-Bit System Palette-256", "358": "MSX-15", "359": "NES-55", "360": "PICO-8-16", "361": "RISC OS-16", "362": "SAM Coupe-128", "363": "Thomson MO5-16", "364": "TRS-80 Color Computer Palette-4", "365": "Virtual Boy interpreted-4", "366": "VGA-244", "367": "Win 95-256", "368": "ZX Spectrum-15", "369": "GNOME 32", "370": "Electronic Crayon 22", "371": "Chip16", "372": "Deluxe Paint-222", "373": "FlatUI-20", "374": "MakeCode Arcade Palette-15", "375": "Oekaki-20", "376": "Legacy Paint-16", "377": "XP Paint-28", "378": "Vista Paint-28", "379": "Piet Palette-5", "380": "Japanese Woodblock Palette-12", "381": "Human Faces-94", "382": "HSV Palette-96", "383": "ST24 Christmas", "384": "Reds-24" } },
      { "type": "bool", "name": "2.Use Random Color Instead?", "default": "0", "pos": "2" },
      { "type": "int", "name": "3.Square Size", "default": "15", "min": "2", "max": "150", "pos": "3" },
      { "type": "int", "name": "4.Max Primary Dimension of Rectangle", "default": "2", "min": "1", "max": "10", "pos": "4" },
      { "type": "int", "name": "5.Max Secondary Dimension of Rectangle", "default": "1", "min": "1", "max": "10", "pos": "5" },
      { "type": "float", "name": "6.Frequency of Rectangle", "default": "1", "min": "0", "max": "1", "pos": "6" },
      { "type": "int", "name": "7.Line Erosion", "default": "0", "min": "-15", "max": "15", "pos": "7" },
      { "type": "bool", "name": "8.Line Output", "default": "1", "pos": "8" },
      { "type": "bool", "name": "9.Reduce Non-Rectangular Shape", "default": "1", "pos": "9" },
      { "type": "bool", "name": "10.Remove Black from Palette?", "default": "1", "pos": "10" },
      { "type": "int", "name": "Seed", "default": "0", "min": "0", "max": "50000", "pos": "11" },
      { "type": "choice", "name": "Colour Space", "default": "0", "pos": "12", "choices": { "0": "RGB-8", "1": "RYB-8", "2": "HSI-8", "3": "HSL-8", "4": "HSV-8", "5": "LAB-8", "6": "LCH-8", "7": "YIQ-8", "8": "YUV-8" } },
      { "type": "separator" },
      { "type": "note", "text": "Extra" },
      { "type": "choice", "name": "Output Mode", "default": "0", "pos": "13", "choices": { "0": "Clipped", "1": "Enlarged", "2": "Shrinked" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian Latest update: 2023/9/11." }
      ]
    },
    {
      "name": "Reverse Digits", "lang": "en", "command": "fx_rep_rd", "command_preview": "fx_rep_rd_preview", "parameters": [
      { "type": "note", "text": "Reverses digits of image. Used for glitch art.\n\nNote:Max-1 for Out-Of-Bound Mode is only applicable in float color space." },
      { "type": "separator" },
      { "type": "note", "text": "Color and Alpha" },
      { "type": "choice", "name": "Colour Space", "default": "0", "pos": "1", "choices": { "0": "RGB-8", "1": "SRGB-8", "2": "RYB-8", "3": "CMY", "4": "CMYK", "5": "HSI-8", "6": "HSL-8", "7": "HSV-8", "8": "LAB-8", "9": "LCH-8", "10": "YCBCR-8", "11": "YIQ-8", "12": "YUV-8", "13": "YES-8", "14": "K1-8", "15": "Ohta-8" } },
      { "type": "bool", "name": "Use Alpha?", "default": "0", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Values" },
      { "type": "float", "name": "Base", "default": "10", "min": "1.01", "max": "64", "pos": "3" },
      { "type": "choice", "name": "Out-Of-Bound Mode", "default": "0", "pos": "4", "choices": { "0": "None", "1": "Periodic", "2": "Continuous" } },
      { "type": "bool", "name": "Cut Value?", "default": "0", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "6", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "7", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2020/9/26." }
      ]
    },
    {
      "name": "Reverse Engineer Color Curve", "lang": "en", "command": "gui_rep_recc", "command_preview": "gui_rep_recc_preview", "parameters": [
      { "type": "note", "text": "Reverse engineer color curves map. You must export, and then import to your program of choice!" },
      { "type": "separator" },
      { "type": "note", "text": "Processing" },
      { "type": "int", "name": "Gradient Thickness", "default": "10", "min": "1", "max": "100", "pos": "1" },
      { "type": "bool", "name": "Use first layer?", "default": "1", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Export" },
      { "type": "folder", "name": "Folder", "default": "", "pos": "3" },
      { "type": "text", "name": "Filename", "default": "gradient.png", "pos": "4" },
      { "type": "button", "name": "Export Gradient", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Preview" },
      { "type": "bool", "name": "Preview all gradient at once?", "default": "1", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2021/1/2." }
      ]
    },
    {
      "name": "Reverse Engineer Gradient Map", "lang": "en", "command": "gui_rep_regm", "command_preview": "gui_rep_regm_preview", "parameters": [
      { "type": "note", "text": "Reverse engineer gradient map. You must export, and then import to your program of choice!" },
      { "type": "separator" },
      { "type": "note", "text": "Processing" },
      { "type": "int", "name": "Gradient Thickness", "default": "10", "min": "1", "max": "100", "pos": "1" },
      { "type": "bool", "name": "Use first layer?", "default": "1", "pos": "2" },
      { "type": "bool", "name": "Normalize?", "default": "0", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Export" },
      { "type": "folder", "name": "Folder", "default": "", "pos": "4" },
      { "type": "text", "name": "Filename", "default": "gradient.png", "pos": "5" },
      { "type": "button", "name": "Export Gradient", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Preview" },
      { "type": "bool", "name": "Preview all gradient at once?", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2020/12/27." }
      ]
    },
    {
      "name": "RGB-Gray Linear Interpolation", "lang": "en", "command": "fx_rep_lerp_rgb_gray", "command_preview": "fx_rep_lerp_rgb_gray_preview", "parameters": [
      { "type": "note", "text": "Formula" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "1", "choices": { "0": "Luminosity A", "1": "Luminosity B", "2": "Lightness", "3": "Minimum", "4": "Maximum", "5": "Average", "6": "Weighted" } },
      { "type": "bool", "name": "Limit Factor to 100%", "default": "0", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Channel Factor" },
      { "type": "float", "name": "Red Factor (%)", "default": "100", "min": "0", "max": "150", "pos": "3" },
      { "type": "float", "name": "Green Factor (%)", "default": "100", "min": "0", "max": "150", "pos": "4" },
      { "type": "float", "name": "Blue Factor (%)", "default": "100", "min": "0", "max": "150", "pos": "5" },
      { "type": "float", "name": "Red Factor (%)", "default": "100", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "Green Factor (%)", "default": "100", "min": "0", "max": "100", "pos": "7" },
      { "type": "float", "name": "Blue Factor (%)", "default": "100", "min": "0", "max": "100", "pos": "8" },
      { "type": "float", "name": "Red Weight", "default": "1", "min": "0", "max": "1", "pos": "9" },
      { "type": "float", "name": "Green Weight", "default": "1", "min": "0", "max": "1", "pos": "10" },
      { "type": "float", "name": "Blue Weight", "default": "1", "min": "0", "max": "1", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Preview" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "12", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "13", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2020/14/3." }
      ]
    },
    {
      "name": "Rotate by Torus Map", "lang": "en", "command": "fx_rep_rbtt", "command_preview": "fx_rep_rbtt_preview", "parameters": [
      { "type": "note", "text": "Main" },
      { "type": "float", "name": "Circumference A (%)", "default": "100", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Circumference B (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Distortion" },
      { "type": "float", "name": "Distortion Angle", "default": "-180", "min": "-720", "max": "720", "pos": "3" },
      { "type": "choice", "name": "Distortion Mode", "default": "3", "pos": "4", "choices": { "0": "Soft", "1": "Medium", "2": "Hard", "3": "Alternative Hard", "4": "Distroy", "5": "Inverse-Distroy", "6": "Quad Extrude", "7": "Hexagonal Extrude" } },
      { "type": "choice", "name": "Distortion Mode A", "default": "3", "pos": "5", "choices": { "0": "Soft", "1": "Medium", "2": "Hard", "3": "Alternative Hard", "4": "Distroy", "5": "Inverse-Distroy", "6": "Quad Extrude", "7": "Hexagonal Extrude" } },
      { "type": "choice", "name": "Distortion Mode B", "default": "7", "pos": "6", "choices": { "0": "Soft", "1": "Medium", "2": "Hard", "3": "Alternative Hard", "4": "Distroy", "5": "Inverse-Distroy", "6": "Quad Extrude", "7": "Hexagonal Extrude" } },
      { "type": "float", "name": "Distortion Mode Blending (%)", "default": "50", "min": "0", "max": "100", "pos": "7" },
      { "type": "bool", "name": "Enable Distortion Mode Blending", "default": "1", "pos": "8" },
      { "type": "point", "name": "Distortion Position", "position": "50,50", "pos": "9" },
      { "type": "bool", "name": "Wraparound Distortion?", "default": "1", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Additional" },
      { "type": "bool", "name": "Remove Background?", "default": "0", "pos": "12" },
      { "type": "bool", "name": "Activate Isolated Torus Mode?", "default": "0", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "Rendering" },
      { "type": "choice", "name": "Interpolation", "default": "1", "pos": "14", "choices": { "0": "None", "1": "Linear" } },
      { "type": "choice", "name": "Boundary Condition", "default": "2", "pos": "15", "choices": { "0": "None", "1": "Neumann", "2": "Periodic", "3": "Mirror" } },
      { "type": "separator" },
      { "type": "note", "text": "Preview" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "16", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "17", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Information\n" },
      { "type": "note", "text": "This filter is inspired by <a href=\"https://forums.getpaint.net/topic/23400-donut-distortion-effect-plugin/\">Donut Distortion Paint.NET plugin</a> by <a href=\"https://forums.getpaint.net/profile/45895-madjik/\">MadJik</a>.\n\n This G'MIC version includes additional modes,wraparound mode, and special mode which isolates the distortion." },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2020/11/08." }
      ]
    },
    {
      "name": "Serendipitous Circle", "lang": "en", "command": "fx_rep_serendipitous_circle", "command_preview": "fx_rep_serendipitous_circle", "parameters": [
      { "type": "note", "text": "Iterations" },
      { "type": "separator" },
      { "type": "int", "name": "Points", "default": "1000", "min": "10", "max": "100000", "pos": "1" },
      { "type": "int", "name": "Repeats", "default": "500", "min": "10", "max": "20000", "pos": "2" },
      { "type": "note", "text": "Coefficient" },
      { "type": "separator" },
      { "type": "float", "name": "Coefficient A", "default": "2", "min": "-100", "max": "100", "pos": "3" },
      { "type": "float", "name": "Coefficient B", "default": "2", "min": "-100", "max": "100", "pos": "4" },
      { "type": "bool", "name": "Use -0 for Coefficient A?", "default": "0", "pos": "5" },
      { "type": "bool", "name": "Use -0 for Coefficient B?", "default": "0", "pos": "6" },
      { "type": "button", "name": "Coefficient A to 0", "pos": "7" },
      { "type": "button", "name": "Coefficient B to 0", "pos": "8" },
      { "type": "button", "name": "Coefficients to 0", "pos": "9" },
      { "type": "bool", "name": "Linked Coefficient?", "default": "0", "pos": "10" },
      { "type": "note", "text": "Operators" },
      { "type": "separator" },
      { "type": "choice", "name": "Mode A", "default": "1", "pos": "11", "choices": { "0": "Multiplication", "1": "Division" } },
      { "type": "choice", "name": "Mode B", "default": "1", "pos": "12", "choices": { "0": "Multiplication", "1": "Division" } },
      { "type": "note", "text": "Variable" },
      { "type": "separator" },
      { "type": "bool", "name": "Use Old Mode", "default": "0", "pos": "13" },
      { "type": "note", "text": "Rendering" },
      { "type": "separator" },
      { "type": "float", "name": "Sublevel", "default": "1", "min": "0", "max": "10", "pos": "14" },
      { "type": "choice", "name": "Symmetry Mode", "default": "1", "pos": "15", "choices": { "0": "Mode 0", "1": "Mode 1" } },
      { "type": "int", "name": "Seed", "default": "0", "min": "0", "max": "1000000", "pos": "16" },
      { "type": "button", "name": "Randomize Seed", "pos": "17" },
      { "type": "int", "name": "Normalization Convolution", "default": "0", "min": "1", "max": "500", "pos": "18" },
      { "type": "bool", "name": "Use Exponential-Sigmoid Adjustment?", "default": "1", "pos": "19" },
      { "type": "float", "name": "Mid-Point Shift", "default": ".25", "min": "-1", "max": "1", "pos": "20" },
      { "type": "float", "name": "Sigmoid-Shift", "default": "0", "min": "-100", "max": "100", "pos": "21" },
      { "type": "float", "name": "Value-Shift", "default": "0", "min": "-1", "max": "1", "pos": "22" },
      { "type": "float", "name": "Coefficient A", "default": "2", "min": "-100", "max": "100", "pos": "23", "visibility": "0" },
      { "type": "float", "name": "Coefficient B", "default": "2", "min": "-100", "max": "100", "pos": "24", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian Latest update: 2022/03/09." }
      ]
    },
    {
      "name": "Shear", "lang": "en", "command": "fx_rep_shear", "command_preview": "fx_rep_shear_preview", "parameters": [
      { "type": "note", "text": "Shears image within 3/4 dimensions" },
      { "type": "separator" },
      { "type": "choice", "name": "Axis-by-Axis Shear", "default": "0", "pos": "1", "choices": { "0": "XY", "1": "XZ", "2": "XC", "3": "YX", "4": "YZ", "5": "YC", "6": "ZX", "7": "ZY", "8": "ZC", "9": "CX", "10": "CY", "11": "CZ" } },
      { "type": "choice", "name": "Axis-by-Axis Shear", "default": "0", "pos": "2", "choices": { "0": "XY", "1": "XC", "2": "YX", "3": "YC", "4": "CX", "5": "CY" } },
      { "type": "value", "value": "place_string_here", "pos": "3" },
      { "type": "float", "name": "Angle", "default": "45", "min": "-89", "max": "89", "pos": "4" },
      { "type": "float", "name": "Centre (%)", "default": "50", "min": "0", "max": "100", "pos": "5" },
      { "type": "choice", "name": "Boundary", "default": "2", "pos": "6", "choices": { "0": "None", "1": "Neumann", "2": "Periodic", "3": "Mirror" } },
      { "type": "choice", "name": "Interpolation", "default": "2", "pos": "7", "choices": { "0": "Nearest Neighbor", "1": "Linear", "2": "Bicubic" } },
      { "type": "choice", "name": "Colour Space", "default": "0", "pos": "8", "choices": { "0": "RGB", "1": "sRGB", "2": "RYB", "3": "CMY", "4": "HCY", "5": "HSI", "6": "HSL", "7": "HSV", "8": "LAB", "9": "LCH", "10": "YIQ", "11": "YUV", "12": "YCbCr", "13": "YCbCrGLIC", "14": "XYZ", "15": "YES", "16": "Kodak 1", "17": "Ohta" } },
      { "type": "choice", "name": "Output Mode", "default": "0", "pos": "9", "choices": { "0": "Cropped", "1": "Full" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2025/11/10." }
      ]
    },
    {
      "name": "Sinusoidal Water Distortion", "lang": "en", "command": "rep_sinowaterdist_gui", "command_preview": "rep_sinowaterdist_gui_preview", "parameters": [
      { "type": "float", "name": "X-Balance", "default": "0", "min": "-100", "max": "100", "pos": "1" },
      { "type": "float", "name": "Y-Balance", "default": "0", "min": "-100", "max": "100", "pos": "2" },
      { "type": "float", "name": "Scale", "default": ".5", "min": ".1", "max": "100", "pos": "3" },
      { "type": "choice", "name": "Interpolation", "default": "2", "pos": "4", "choices": { "0": "Nearest", "1": "Linear", "2": "Bicubic" } },
      { "type": "choice", "name": "Boundary Condition", "default": "0", "pos": "5", "choices": { "0": "Periodic", "1": "Mirror" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "6", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "7", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2019/6/4." }
      ]
    },
    {
      "name": "Spiral Distortion", "lang": "en", "command": "gui_rep_sd", "command_preview": "gui_rep_sd_preview", "parameters": [
      { "type": "note", "text": "Transform image using spiral gradient for x-coordinate, and radial gradient for y-coordinate." },
      { "type": "separator" },
      { "type": "float", "name": "Revolution", "default": "1", "min": ".1", "max": "10", "pos": "1" },
      { "type": "float", "name": "Spiral Height", "default": "1", "min": ".5", "max": "10", "pos": "2" },
      { "type": "float", "name": "Refraction Power", "default": "0", "min": "-.99", "max": "2", "pos": "3" },
      { "type": "choice", "name": "Direction", "default": "0", "pos": "4", "choices": { "0": "Clockwise", "1": "Counterclockwise" } },
      { "type": "float", "name": "Angle", "default": "0", "min": "-180", "max": "180", "pos": "5" },
      { "type": "choice", "name": "Spiral Mode", "default": "0", "pos": "6", "choices": { "0": "Periodic", "1": "Continuous" } },
      { "type": "point", "name": "Preshift Position", "position": "50,50", "pos": "7" },
      { "type": "choice", "name": "Preshift Boundary", "default": "0", "pos": "9", "choices": { "0": "Periodic", "1": "Mirror" } },
      { "type": "point", "name": "Skew Position (%)", "position": "50,50", "pos": "10" },
      { "type": "float", "name": "Skew Multiplier", "default": "1", "min": "-.5", "max": "3", "pos": "12" },
      { "type": "point", "name": "Offset (%)", "position": "50,50", "pos": "13" },
      { "type": "float", "name": "Scale X-Coordinate (%)", "default": "100", "min": "1", "max": "1000", "pos": "15" },
      { "type": "float", "name": "Scale Y-Coordinate (%)", "default": "100", "min": "1", "max": "1000", "pos": "16" },
      { "type": "choice", "name": "Boundary Condition", "default": "3", "pos": "17", "choices": { "0": "None", "1": "Neumann", "2": "Periodic", "3": "Mirror" } },
      { "type": "choice", "name": "Interpolation", "default": "4", "pos": "18", "choices": { "0": "Nearest", "1": "Average", "2": "Linear", "3": "Bicubic", "4": "Lanczos" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "19", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "20", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2019/10/15." }
      ]
    },
    {
      "name": "Squareroot - Logarithmic Distortion", "lang": "en", "command": "rep_sqrlogpindis_gui", "command_preview": "rep_sqrlogpindis_gui_preview", "parameters": [
      { "type": "note", "text": "This filter is a extended version of a filter found in <a href=\"https://forums.getpaint.net/topic/6845-asmageddon-tools-pack-v3/\">Asmageddon Tools Pack v3</a>. Translated to G'MIC using a source code, and then extended. It is a mixture of two texture filters." },
      { "type": "separator" },
      { "type": "float", "name": "Distortion Factor", "default": "1", "min": ".1", "max": "1000", "pos": "1" },
      { "type": "point", "name": "Preliminary Surface Shift", "position": "50,50", "pos": "2" },
      { "type": "point", "name": "Distortion Surface Position", "position": "50,50", "pos": "4" },
      { "type": "float", "name": "Preliminary X-Axis Scaling", "default": "1", "min": ".1", "max": "10", "pos": "6" },
      { "type": "float", "name": "Preliminary Y-Axis Scaling", "default": "1", "min": ".1", "max": "10", "pos": "7" },
      { "type": "float", "name": "Effect X-Axis Scaling", "default": "1", "min": ".1", "max": "10", "pos": "8" },
      { "type": "float", "name": "Effect Y-Axis Scaling", "default": "1", "min": ".1", "max": "10", "pos": "9" },
      { "type": "float", "name": "Distortion Surface Angle", "default": "0", "min": "0", "max": "360", "pos": "10" },
      { "type": "choice", "name": "Placement", "default": "0", "pos": "11", "choices": { "0": "Inside-Out", "1": "Outside-In" } },
      { "type": "choice", "name": "Logarithmic Distortion Axis Combination for X-Axis", "default": "0", "pos": "12", "choices": { "0": "Different Axis", "1": "Same Axis" } },
      { "type": "choice", "name": "Logarithmic Distortion Axis combination for y-Axis", "default": "0", "pos": "13", "choices": { "0": "Different Axis", "1": "Same Axis" } },
      { "type": "choice", "name": "Logarithmic Distortion X-Axis Direction", "default": "0", "pos": "14", "choices": { "0": "Negative", "1": "Positive" } },
      { "type": "choice", "name": "Logarithmic Distortion Y-Axis Direction", "default": "0", "pos": "15", "choices": { "0": "Negative", "1": "Positive" } },
      { "type": "choice", "name": "Boundary Condition", "default": "0", "pos": "16", "choices": { "0": "Periodic", "1": "Mirror" } },
      { "type": "choice", "name": "Interpolation", "default": "2", "pos": "17", "choices": { "0": "Nearest", "1": "Linear", "2": "Bicubic" } },
      { "type": "int", "name": "Base Reference Dimension", "default": "1024", "min": "10", "max": "4096", "pos": "18" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "19", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "20", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2019/6/4." }
      ]
    },
    {
      "name": "Statistical Average", "lang": "en", "command": "fx_rep_bchstatfunc_average", "command_preview": "fx_rep_bchstatfunc_average", "parameters": [
      { "type": "choice", "name": "Mode", "default": "0", "pos": "1", "choices": { "0": "RGB", "1": "sRGB", "2": "RYB", "3": "LAB" } },
      { "type": "bool", "name": "Preserve Alpha?", "default": "0", "pos": "2" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "3", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "4", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2024/01/15." }
      ]
    },
    {
      "name": "Statistical Mode", "lang": "en", "command": "fx_rep_stat_mode", "command_preview": "fx_rep_stat_mode_preview", "parameters": [
      { "type": "note", "text": "This filter finds the most common color (the statistical mode). If two or more colors share the same highest frequency, there is no unique mode — those pixels will return nan. If all colors occur equally often, all pixels will be nan, and the filter will return an error." },
      { "type": "separator" },
      { "type": "note", "text": "Main" },
      { "type": "choice", "name": "Output", "default": "0", "pos": "1", "choices": { "0": "Blended", "1": "Per-Layer" } },
      { "type": "separator" },
      { "type": "note", "text": "Miscellaneous" },
      { "type": "color", "name": "NAN Replacement Color", "default": "0,255,0,255", "pos": "2" },
      { "type": "value", "value": "-1", "pos": "6" },
      { "type": "value", "value": "-1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "<center>- Additional Information -</center>\n\nList of CLI variants of this GUI filter:\n\n1. rep_mode *\n2. rep_mode_blend\n\n* <u>This command use user-defined arguments!</u>" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2025/11/11." }
      ]
    },
    {
      "name": "Stitch Distort", "lang": "en", "command": "fx_rep_stitch", "command_preview": "fx_rep_stitch_preview", "parameters": [
      { "type": "note", "text": "Main" },
      { "type": "float", "name": "Offset by Half-Image-Diagonal(%)", "default": "5", "min": "-100", "max": "100", "pos": "1" },
      { "type": "float", "name": "Strip Thickness(%)", "default": "1", "min": "0", "max": "75", "pos": "2" },
      { "type": "int", "name": "Modulo", "default": "0", "min": "0", "max": "128", "pos": "3" },
      { "type": "choice", "name": "Modulo Boundary", "default": "0", "pos": "4", "choices": { "0": "Periodic", "1": "Continuous" } },
      { "type": "choice", "name": "Image Boundary", "default": "3", "pos": "5", "choices": { "0": "None", "1": "Neumann", "2": "Periodic", "3": "Mirror" } },
      { "type": "choice", "name": "Offset Mode", "default": "0", "pos": "6", "choices": { "0": "Single Iteration of Randomization", "1": "Multiple Iteration of Randomization" } },
      { "type": "choice", "name": "Strip Mode", "default": "0", "pos": "7", "choices": { "0": "None", "1": "Single Iteration of Randomization", "2": "Multiple Iteration of Randomization" } },
      { "type": "int", "name": "Offset Seed", "default": "128", "min": "0", "max": "255", "pos": "8" },
      { "type": "int", "name": "Strip Seed", "default": "128", "min": "0", "max": "255", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Rendering" },
      { "type": "float", "name": "Subpixel Processing Level", "default": "1", "min": "0", "max": "2", "pos": "10" },
      { "type": "choice", "name": "Interpolation", "default": "4", "pos": "11", "choices": { "0": "Nearest", "1": "Average", "2": "Linear", "3": "Bicubic", "4": "Lanczos" } },
      { "type": "separator" },
      { "type": "note", "text": "Angles" },
      { "type": "choice", "name": "Angles Mode", "default": "1", "pos": "12", "choices": { "0": "Non-Symmetrical", "1": "Symmetrical" } },
      { "type": "float", "name": "Start Angle", "default": "0", "min": "-180", "max": "180", "pos": "13" },
      { "type": "int", "name": "Number of Angles", "default": "2", "min": "2", "max": "12", "pos": "14" },
      { "type": "int", "name": "Number of Angles", "default": "2", "min": "1", "max": "12", "pos": "15" },
      { "type": "float", "name": "Angle #1", "default": "45", "min": "-180", "max": "180", "pos": "16" },
      { "type": "float", "name": "Angle #2", "default": "-45", "min": "-180", "max": "180", "pos": "17" },
      { "type": "float", "name": "Angle #3", "default": "90", "min": "-180", "max": "180", "pos": "18" },
      { "type": "float", "name": "Angle #4", "default": "0", "min": "-180", "max": "180", "pos": "19" },
      { "type": "float", "name": "Angle #5", "default": "60", "min": "-180", "max": "180", "pos": "20" },
      { "type": "float", "name": "Angle #6", "default": "-60", "min": "-180", "max": "180", "pos": "21" },
      { "type": "float", "name": "Angle #7", "default": "15", "min": "-180", "max": "180", "pos": "22" },
      { "type": "float", "name": "Angle #8", "default": "-15", "min": "-180", "max": "180", "pos": "23" },
      { "type": "float", "name": "Angle #9", "default": "30", "min": "-180", "max": "180", "pos": "24" },
      { "type": "float", "name": "Angle #10", "default": "-30", "min": "-180", "max": "180", "pos": "25" },
      { "type": "float", "name": "Angle #11", "default": "5", "min": "-180", "max": "180", "pos": "26" },
      { "type": "float", "name": "Angle #12", "default": "-5", "min": "-180", "max": "180", "pos": "27" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2022/4/16." }
      ]
    },
    {
      "name": "Strange Bulger", "lang": "en", "command": "rep_strbul", "command_preview": "rep_strbul_preview", "parameters": [
      { "type": "float", "name": "Angle", "default": "0", "min": "-180", "max": "180", "pos": "1" },
      { "type": "choice", "name": "Axis", "default": "0", "pos": "2", "choices": { "0": "X-Axis", "1": "Y-Axis" } },
      { "type": "choice", "name": "Interpolation", "default": "2", "pos": "3", "choices": { "0": "Nearest", "1": "Linear", "2": "Bicubic" } },
      { "type": "choice", "name": "Boundary Condition", "default": "0", "pos": "4", "choices": { "0": "Periodic", "1": "Mirror" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "5", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "6", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2019/6/4." }
      ]
    },
    {
      "name": "Strange Bulger Kaleidoscope", "lang": "en", "command": "rep_strbulkal_gui", "command_preview": "rep_strbulkal_gui_preview", "parameters": [
      { "type": "note", "text": "This filter is a extended version of the filters named 'Strange Bulger A', and 'Strange Bulger B' found in<a href=\"https://forums.getpaint.net/topic/6845-asmageddon-tools-pack-v3/\">Asmageddon Tools Pack v3</a>. Translated to G'MIC using source code for Asmageddon's tool, and then extended." },
      { "type": "separator" },
      { "type": "float", "name": "Bulge Angle", "default": "0", "min": "-180", "max": "180", "pos": "1" },
      { "type": "choice", "name": "Axis of Bulge", "default": "0", "pos": "2", "choices": { "0": "X-Axis", "1": "Y-Axis" } },
      { "type": "float", "name": "Scale", "default": "1", "min": ".1", "max": "10", "pos": "3" },
      { "type": "point", "name": "Preliminary Surface Shift", "position": "50,50", "pos": "4" },
      { "type": "point", "name": "Distortion Surface Position", "position": "50,50", "pos": "6" },
      { "type": "float", "name": "Distortion Surface Angle", "default": "0", "min": "0", "max": "360", "pos": "8" },
      { "type": "choice", "name": "Placement", "default": "0", "pos": "9", "choices": { "0": "Inside-Out", "1": "Outside-In" } },
      { "type": "choice", "name": "Boundary Condition", "default": "0", "pos": "10", "choices": { "0": "Periodic", "1": "Mirror" } },
      { "type": "choice", "name": "Interpolation", "default": "2", "pos": "11", "choices": { "0": "Nearest", "1": "Linear", "2": "Bicubic" } },
      { "type": "int", "name": "Base Reference Dimension", "default": "1024", "min": "10", "max": "4096", "pos": "12" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "13", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "14", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2019/6/4." }
      ]
    },
    {
      "name": "Three-Coupled Oscillators", "lang": "en", "command": "fx_rep_tco", "command_preview": "fx_rep_tco", "parameters": [
      { "type": "note", "text": "Main" },
      { "type": "separator" },
      { "type": "int", "name": "Maximum Iteration", "default": "50", "min": "1", "max": "200", "pos": "1" },
      { "type": "float", "name": "K-A Tau(%)", "default": "50", "min": "-100", "max": "100", "pos": "2" },
      { "type": "float", "name": "K-B Tau(%)", "default": "-50", "min": "-100", "max": "100", "pos": "3" },
      { "type": "float", "name": "Subpixel Level", "default": "1", "min": "0", "max": "2", "pos": "4" },
      { "type": "float", "name": "Angle", "default": "0", "min": "-180", "max": "180", "pos": "5" },
      { "type": "point", "name": "Position", "position": "50,50", "pos": "6" },
      { "type": "float", "name": "Axis-Scale", "default": "1", "min": "1", "max": "15", "pos": "8" },
      { "type": "note", "text": "Coloring" },
      { "type": "separator" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "9", "choices": { "0": "Grayscale", "1": "Palette", "2": "Random" } },
      { "type": "choice", "name": "Palette", "default": "12", "pos": "10", "choices": { "0": "Black & White-2", "1": "Red-Green-Blue-3", "2": "Black with Red-Green-Blue-4", "3": "Black & White with Red-Green-Blue-5", "4": "Cyan-Magenta-Yellow-3", "5": "Cyan-Magenta-Yellow-Black-4", "6": "White-Cyan-Magenta-Yellow-Black-5", "7": "Red-Green-Blue with Cyan-Magenta-Yellow-6", "8": "1-Bit RGB-8", "9": "Aurora-256", "10": "Zenit-241", "11": "Game Builder Garage: Texture-Sprite Editor Palette-117", "12": "Duel-256", "13": "Hocus Pocus Palette-256", "14": "PLAYPAL-249", "15": "Sonic Robo Blast 2-256", "16": "Uzebox-256", "17": "Andrew Kensler - 16", "18": "Andrew Kensler - 32", "19": "Andrew Kensler - 54", "20": "AAP-Micro 12", "21": "AAP-16", "22": "AAP-64", "23": "AAP-RadiantPLUS-96", "24": "AAP-SPLENDOR128", "25": "AAP-DGA16", "26": "Cheerful-32", "27": "DB8", "28": "DB16", "29": "DB32", "30": "DB-ISO22", "31": "DimWiddy 17", "32": "DimWiddy 23", "33": "Endesga-4", "34": "Endesga-8", "35": "Endesga-16", "36": "Endesga-32", "37": "Endesga-36", "38": "Endesga-64", "39": "Famicube-64", "40": "Juicy-32", "41": "Juicy-56", "42": "XAIUE-22", "43": "15P-DX", "44": "20P-DX", "45": "24P-DX", "46": "Cabana-64", "47": "Fantasy 16", "48": "Fantasy 24", "49": "Tranquil Fantasy 23", "50": "Tranquility Plus 39", "51": "Faraway 48", "52": "Fleja Master Palette-33", "53": "Koni32", "54": "Linear Color Palette Basic-31", "55": "LEGO colors-43", "56": "Lego Colours 2021-40", "57": "Vines Flexible Linear Ramps-38", "58": "Arcade Standard 29", "59": "ARQ16", "60": "Atom-8", "61": "BLK 36", "62": "BLK-NEO-46", "63": "Broken Facility-40", "64": "Bubblegum-16", "65": "CPC BOY-32", "66": "Cade 15", "67": "Calder 8-11", "68": "CD-BAC-16", "69": "CG Arne-16", "70": "DinoKnight 16", "71": "||||-22", "72": "FZT Ethereal 16", "73": "Indecision-17", "74": "Island Joy 16", "75": "Journey-64", "76": "Shallowmarsh26", "77": "Lago Nenufar (Lake Water Lily)-19", "78": "Juicy 17", "79": "ChocolateGanache-96", "80": "Bright Winter 1-74", "81": "Bright Winter 2-83", "82": "Kawaii16", "83": "0xdb-01-17", "84": "GZXP-11", "85": "Chromatic16", "86": "Piet Coding Language-20", "87": "Matrix-96", "88": "Material Design-96", "89": "Rainbow-88", "90": "Rainbow-96", "91": "SCRJ-XXXVI-36", "92": "Pxls Default-32", "93": "Lospec500-42", "94": "Moderna-24", "95": "Oak21", "96": "Nature's Embrace 55", "97": "RBYPGO-94", "98": "New Worlds 46", "99": "Nauris-16", "100": "Dynamite-40", "101": "Interstate 28", "102": "Downgraded 32", "103": "Pear 36", "104": "Pineapple 32", "105": "Peachy Pop 16", "106": "Resurrect 32", "107": "Rosy 42", "108": "SLSO-CLR17", "109": "Softy 15", "110": "SPEC12", "111": "The Roarin 80's", "112": "Starmancer-52", "113": "SuperFuture25", "114": "SUNSHINE 35", "115": "Sweetie 16", "116": "Calm 48", "117": "Optimism-32", "118": "Taffy 16", "119": "Todayland Palette V2-25", "120": "TriRampo-12", "121": "r|place 2022-32", "122": "Tropical Cone 24", "123": "Vivid-17", "124": "SHIDO50+-72", "125": "Intacto14", "126": "Itatsi-23", "127": "ENOS16", "128": "Grixel Grotto-16", "129": "Superb 8", "130": "Undertones-17", "131": "Tango-28", "132": "Cheese Palette-28", "133": "Equpix 15", "134": "Zughy 32", "135": "Voodo34", "136": "Franzston 30", "137": "Night 16", "138": "Star 29", "139": "Star 34", "140": "Still-Life-14", "141": "SimpleJPC-16", "142": "Acid 15", "143": "Battery 24", "144": "Clumpy 18", "145": "Cthulhu-16", "146": "Crimso 11-16", "147": "Copper-Tech-16", "148": "DRZ15A", "149": "Eggy 15", "150": "Europa 16", "151": "GreyT-bit-8", "152": "Jewel-15", "153": "Polar 11", "154": "Sheltzy 32", "155": "Wyrm 24", "156": "Yume Nikki-24", "157": "Rube-Goldberg-9", "158": "BoomBoom-7", "159": "Generic-8", "160": "Crayola Blind-9", "161": "FunkyFuture8", "162": "The Golden Wall Palette-7", "163": "Matriax8c", "164": "NT1H-26", "165": "JerryPie 22", "166": "Nineties Nine-9", "167": "On70-35", "168": "ANB16", "169": "Retrocal-8", "170": "Punolit-21", "171": "Luap 40", "172": "Autum Villan 6", "173": "Autum 15", "174": "Autum 15 [Yellow]", "175": "Galaxy Flame-16", "176": "Cretaceous-16", "177": "Antiquity16", "178": "Mushroom-14", "179": "Aerugo-32", "180": "Hotel Paintings 6", "181": "Nopal-12", "182": "Brightness GPY-3", "183": "Blessing-5", "184": "Fairydust 8", "185": "Vanilla MilkShake-16", "186": "Fuzzy Four-4", "187": "Fairy Tales-8", "188": "Naji 16", "189": "Easter Island-16", "190": "Pastel and Darks 58 Palette", "191": "17 Pastels", "192": "NOSTALGIA15", "193": "Ocaso-17", "194": "Oh Hell, Pastel-15", "195": "Pollen-8", "196": "KULE-16", "197": "Hydrangea 11", "198": "Fluffy8", "199": "ST 8 R&B Remake", "200": "Neon Space-10", "201": "Cyclope6", "202": "Sy17", "203": "Syz15", "204": "TUI-15", "205": "Cave-8", "206": "Psygnosia-16", "207": "MarshMellow32", "208": "Lost Century 24", "209": "Finlal 11", "210": "Industrial Factory 16", "211": "Murder Mystery 16", "212": "Fate & Destiny 12", "213": "Vinik 24", "214": "YKB-22", "215": "Halloween-7", "216": "Graveyard-21", "217": "Steam Lords-16", "218": "Frostical-18", "219": "DeuteroSpill-9", "220": "Cool Bone 7", "221": "Muted Ally 6", "222": "EPHEMERA-12", "223": "Ink-5", "224": "Violet Dreams-8", "225": "Tinyfolks-5", "226": "Old Gold 7", "227": "Rosemoss-8", "228": "AAP-RadiantXV-15", "229": "AAP-Majesty XVII-17", "230": "Dead Weight-8", "231": "Mojave20", "232": "Petite-8", "233": "Petite-8 Afterdark", "234": "XAIUE-Radiant-22", "235": "Daruda 22", "236": "Firestorm-9", "237": "Borkfest-8", "238": "Spicy 07", "239": "Rust-6", "240": "Apricot-6", "241": "SuperNova 7", "242": "Pastry-5", "243": "Sandy 06", "244": "Illumination-5", "245": "NYX8", "246": "Dream Haze 8", "247": "OIL6", "248": "Regal10", "249": "Soft Demon 7", "250": "SGM-Palette 2-17", "251": "Midnight ablaze-7", "252": "Black Cherry-5", "253": "Sunset Red-5", "254": "INKPINK-6", "255": "Brash Pink-5", "256": "Pink Neon Sign 6", "257": "Enchanted Purple-12", "258": "Arch-11", "259": "Spacey Easter-17", "260": "Fornax Void I-254", "261": "Fornax Void II-128", "262": "Pixelwave-12", "263": "S1-6", "264": "Berry Nebula-8", "265": "ABYSS-9", "266": "Moonlight 15", "267": "Moonlit-39", "268": "H2O-10", "269": "Magic Waters 9", "270": "Bluem0ld-4", "271": "Moss-5", "272": "DEEP MAZE-7", "273": "Toxic Slime-5", "274": "Lush Green-6", "275": "Tsunami-5", "276": "Cryptic Ocean-6", "277": "Marsh Madness-5", "278": "OXYD-8", "279": "Pink&Green-8", "280": "Walking in the Woods 8", "281": "Paper 8", "282": "Sahara Pastell-7", "283": "Sunflower Painting 7", "284": "Art Hoe Aesthetic 7", "285": "Sky5-7", "286": "Ocean Glass-8", "287": "RoyalGuard-6", "288": "Eulbink-7", "289": "Winter Wonderland-8", "290": "Moon Squid 7", "291": "Stratus-5", "292": "Arctic Dust-5", "293": "CL8UDS", "294": "Lilac Skies 5", "295": "Sea of Fire-6", "296": "Autochrome 3", "297": "Autochrome 5", "298": "GB Default 1-4", "299": "GB Default 2-4", "300": "GB Andrade-4", "301": "GB Blue Seni-4", "302": "GB Blackzone-4", "303": "GB Suburb-4", "304": "GB Crimson-4", "305": "GB Didi-4", "306": "GB Dirty-4", "307": "GB Arne-4", "308": "GB Easy-4", "309": "GB Forest-4", "310": "GB Harsh Green-4", "311": "GB Light Green-4", "312": "GB Nostalgia-4", "313": "GB Platinum-4", "314": "GB Kirokaze-4", "315": "GB Cyber-4", "316": "GB Wish-4", "317": "GB Grapefruit-4", "318": "GB Ice Cream-4", "319": "GB Red_Blue-4", "320": "Gold GB-4", "321": "GB Chocolate-4", "322": "GB Gray-4", "323": "GB Spacehaze-4", "324": "GB Purple Dawn-4", "325": "Moon Crystal-4", "326": "ARNE4", "327": "Autumn Chill-4", "328": "CherryMelon-4", "329": "HallowPumpkin-4", "330": "Hollow-4", "331": "Lavender4", "332": "MAW-4", "333": "Voltage Warning-4", "334": "Tritanopia-5", "335": "Rabbit 7", "336": "Amiga 2600 NTSC-127", "337": "Amiga 2600 PAL-104", "338": "Amiga 2600 SECAM-8", "339": "Amiga 7800 M.E.S.S-256", "340": "Amiga 7800-256", "341": "Amstrad CPC-27", "342": "Apple II-15", "343": "Atari 8-Bit Series - GTIA-256", "344": "CGA-16", "345": "CGA Mode 0 [Low]-4", "346": "CGA Mode 0 [High]-4", "347": "CGA Mode 1 [Low]-4", "348": "CGA Mode 1 [High]-4", "349": "CGA Mode 2 [Low]-4", "350": "CGA Mode 2 [High]-4", "351": "Commodore 64 - Pepto-16", "352": "Commodore 64 - Colodore-16", "353": "Commodore VIC-20-16", "354": "Colecovision-15", "355": "Japanese Machine Palette-16", "356": "Macintosh II-16", "357": "Macintosh 8-Bit System Palette-256", "358": "MSX-15", "359": "NES-55", "360": "PICO-8-16", "361": "RISC OS-16", "362": "SAM Coupe-128", "363": "Thomson MO5-16", "364": "TRS-80 Color Computer Palette-4", "365": "Virtual Boy interpreted-4", "366": "VGA-244", "367": "Win 95-256", "368": "ZX Spectrum-15", "369": "GNOME 32", "370": "Electronic Crayon 22", "371": "Chip16", "372": "Deluxe Paint-222", "373": "FlatUI-20", "374": "MakeCode Arcade Palette-15", "375": "Oekaki-20", "376": "Legacy Paint-16", "377": "XP Paint-28", "378": "Vista Paint-28", "379": "Piet Palette-5", "380": "Japanese Woodblock Palette-12", "381": "Human Faces-94", "382": "HSV Palette-96", "383": "ST24 Christmas", "384": "Reds-24" } },
      { "type": "int", "name": "Number of Colors", "default": "6", "min": "2", "max": "100", "pos": "11" },
      { "type": "choice", "name": "Color Space", "default": "0", "pos": "12", "choices": { "0": "RGB", "1": "HSI", "2": "HCY", "3": "LAB" } },
      { "type": "int", "name": "Seed", "default": "0", "min": "0", "max": "3000", "pos": "13" },
      { "type": "choice", "name": "Boundary", "default": "1", "pos": "14", "choices": { "0": "Periodic", "1": "Periodic-Smooth", "2": "Continuous" } },
      { "type": "bool", "name": "Negate", "default": "0", "pos": "15" },
      { "type": "float", "name": "Shift Value", "default": "0", "min": "-1", "max": "1", "pos": "16" },
      { "type": "float", "name": "Multiplier", "default": "1", "min": ".25", "max": "10", "pos": "17" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian Latest update: 2023/9/11." }
      ]
    },
    {
      "name": "Tiled Form", "lang": "en", "command": "gui_rep_form_pixel", "command_preview": "gui_rep_form_pixel_preview", "parameters": [
      { "type": "note", "text": "Colour Space Processing" },
      { "type": "choice", "name": "Colour Space", "default": "0", "pos": "1", "choices": { "0": "RGB", "1": "RYB", "2": "CMYK", "3": "HCY", "4": "HSI", "5": "HSL", "6": "HSV", "7": "LAB", "8": "LCH" } },
      { "type": "separator" },
      { "type": "note", "text": "Tile Shape" },
      { "type": "choice", "name": "Tiled Shape", "default": "3", "pos": "2", "choices": { "0": "By Layer", "1": "Australia", "2": "Barbedwire", "3": "Circle", "4": "Crosshair", "5": "Cupid", "6": "Diamond", "7": "Dragon Curve-[D]", "8": "Dragonfly", "9": "Fern-[D]", "10": "Flip", "11": "Gear-[D]", "12": "Gumleaf", "13": "Heart", "14": "Information", "15": "Kookaburra", "16": "Mail", "17": "Mapleleaf", "18": "Paint Splat", "19": "Paw", "20": "Phone", "21": "Polygon-[D]", "22": "Rooster", "23": "Shopping Cart", "24": "Snowflake-[D]", "25": "Star-[D]" } },
      { "type": "bool", "name": "Reverse Layer", "default": "0", "pos": "3" },
      { "type": "note", "text": "For the first option, you must use at least 2 layer to use layer as shape reference, else it'll use the only image itself as shape reference. Reverse Layer option might have to be used to generate the proper result when using first option." },
      { "type": "separator" },
      { "type": "note", "text": "Tiles" },
      { "type": "int", "name": "Shape Width (px)", "default": "30", "min": "0", "max": "512", "pos": "4" },
      { "type": "int", "name": "Shape Height (px)", "default": "30", "min": "0", "max": "512", "pos": "5" },
      { "type": "float", "name": "Shape Ratio (%)", "default": "100", "min": "5", "max": "100", "pos": "6" },
      { "type": "float", "name": "Shape Rotation", "default": "0", "min": "-180", "max": "180", "pos": "7" },
      { "type": "choice", "name": "Shape Mirror Axis", "default": "0", "pos": "8", "choices": { "0": "None", "1": "X", "2": "Y" } },
      { "type": "float", "name": "Subpixel Level", "default": ".5", "min": "0", "max": "2", "pos": "9" },
      { "type": "float", "name": "Z-Convolution Factor (%)", "default": "50", "min": "0", "max": "200", "pos": "10" },
      { "type": "choice", "name": "Z-Convolution Boundary", "default": "0", "pos": "11", "choices": { "0": "Neumann", "1": "Periodic" } },
      { "type": "choice", "name": "Interpolation", "default": "5", "pos": "12", "choices": { "0": "Nearest", "1": "Average", "2": "Linear", "3": "Grid", "4": "Bicubic", "5": "Lanczos" } },
      { "type": "choice", "name": "Tile Boundary", "default": "0", "pos": "13", "choices": { "0": "Periodic", "1": "Mirror - X", "2": "Mirror - Y", "3": "Mirror - XY" } },
      { "type": "choice", "name": "Preprocess Boundary", "default": "2", "pos": "14", "choices": { "0": "Neumann", "1": "Periodic", "2": "Mirror" } },
      { "type": "bool", "name": "Fit Tile?", "default": "1", "pos": "15" },
      { "type": "choice", "name": "Output", "default": "0", "pos": "16", "choices": { "0": "New Dimension", "1": "New Dimension - New Layer", "2": "Old Dimension", "3": "Old Dimension - New Layer" } },
      { "type": "note", "text": "If using Krita and New Layer option, then you may have to reorder one layer." },
      { "type": "separator" },
      { "type": "note", "text": "Dynamic Shape" },
      { "type": "int", "name": "Dragon Curve Recursion", "default": "10", "min": "0", "max": "30", "pos": "17" },
      { "type": "float", "name": "Dragon Curve Rotation", "default": "0", "min": "-180", "max": "180", "pos": "18" },
      { "type": "choice", "name": "Fern Type", "default": "0", "pos": "19", "choices": { "0": "Asplenium Adiantum-Nigrum", "1": "Thelypteridaceae" } },
      { "type": "float", "name": "Fern Density (%)", "default": "100", "min": "0", "max": "300", "pos": "20" },
      { "type": "int", "name": "Gear Teeth Count", "default": "8", "min": "3", "max": "32", "pos": "21" },
      { "type": "float", "name": "Gear Height (%)", "default": "25", "min": "0.1", "max": "100", "pos": "22" },
      { "type": "float", "name": "Gear Offset Teeth (%)", "default": "0", "min": "0", "max": "100", "pos": "23" },
      { "type": "float", "name": "Gear Inner Ratio (%)", "default": "50", "min": "0.1", "max": "100", "pos": "24" },
      { "type": "int", "name": "Polygon Vertices", "default": "5", "min": "3", "max": "100", "pos": "25" },
      { "type": "int", "name": "Snowflake Recursion", "default": "5", "min": "1", "max": "6", "pos": "26" },
      { "type": "int", "name": "Star Branches", "default": "3", "min": "5", "max": "100", "pos": "27" },
      { "type": "float", "name": "Star Thickness (%)", "default": "38", "min": ".1", "max": "100", "pos": "28" },
      { "type": "note", "text": "Dynamic Shapes Options are only visible for dynamic shapes!" },
      { "type": "separator" },
      { "type": "note", "text": "Original idea comes from <a href=\"https://forums.getpaint.net/topic/26758-trs-tiled-pixels-v12/\">TR's Tiled Pixels V1.2</a> plugin by TechnoRobbo for Paint.NET. This version is a extended version utilizing weighted average sampling per area per tile, boundary option, anti-aliasing, dynamic shape, color space,and transformation. Dynamic shapes are also supported by this filter." },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "29", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "30", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2020/12/15." }
      ]
    },
    {
      "name": "Tiled Zoom", "lang": "en", "command": "fx_rep_tz", "command_preview": "fx_rep_tz_preview", "parameters": [
      { "type": "note", "text": "Create tiled zoom." },
      { "type": "separator" },
      { "type": "float", "name": "Square Width - Half Image-Diagonal(%)", "default": "10", "min": "1", "max": "100", "pos": "1" },
      { "type": "float", "name": "Square Height - Half Image-Diagonal(%)", "default": "10", "min": "1", "max": "100", "pos": "2" },
      { "type": "float", "name": "Scale", "default": "2", "min": "1", "max": "10", "pos": "3" },
      { "type": "choice", "name": "Boundary", "default": "0", "pos": "4", "choices": { "0": "None", "1": "Neumann", "2": "Periodic", "3": "Mirror" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "5", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "6", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2020/9/22." }
      ]
    },
    {
      "name": "TR's Intense Filtering", "lang": "en", "command": "gui_rep_trif", "command_preview": "gui_rep_trif_preview", "parameters": [
      { "type": "float", "name": "Hue", "default": "45", "min": "0", "max": "360", "pos": "1" },
      { "type": "float", "name": "Image Coefficient (%)", "default": "100", "min": "0", "max": "200", "pos": "2" },
      { "type": "float", "name": "Mix Factor (%)", "default": "0", "min": "0", "max": "100", "pos": "3" },
      { "type": "choice", "name": "Style Base", "default": "0", "pos": "4", "choices": { "0": "Based from Original Image", "1": "Based on Grayscale", "2": "Based on Hue" } },
      { "type": "separator" },
      { "type": "note", "text": "Preview Setting" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "5", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "6", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "TR's Intense Filtration is a filter that filters out colors and augment a color based on hue. The formula for the filter is created by TechnoRobbo. The code for this filter is based on the <a href=\"https://forums.getpaint.net/topic/30148-trs-intense-filtration-v-13-oct-092014/\">source code</a> of TechnoRobbo's Intense Filtration v1.3 plugin for Paint.NET." },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2019/11/1." }
      ]
    },
    {
      "name": "TR's Pixel Sharpener", "lang": "en", "command": "gui_rep_trps", "command_preview": "gui_rep_trps_preview", "parameters": [
      { "type": "float", "name": "Sharpening", "default": "0", "min": "0", "max": "50", "pos": "1" },
      { "type": "int", "name": "Internal Blurring", "default": "0", "min": "0", "max": "4", "pos": "2" },
      { "type": "choice", "name": "Blur Type", "default": "0", "pos": "3", "choices": { "0": "Photo", "1": "Horizontal", "2": "Vertical", "3": "Angle - One Axis", "4": "Angle - Two Axis", "5": "Angle - Two Axis [Disconnected]" } },
      { "type": "float", "name": "Angle", "default": "0", "min": "-180", "max": "180", "pos": "4" },
      { "type": "float", "name": "Angle 2", "default": "0", "min": "-180", "max": "180", "pos": "5" },
      { "type": "choice", "name": "Channel(s)", "default": "11", "pos": "6", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGB [All]", "3": "RGB [Red]", "4": "RGB [Green]", "5": "RGB [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [Luminance]", "12": "YCbCr [Blue-Red Chrominances]", "13": "YCbCr [Blue Chrominance]", "14": "YCbCr [Red Chrominance]", "15": "YCbCr [Green Chrominance]", "16": "Lab [Lightness]", "17": "Lab [ab-Chrominances]", "18": "Lab [a-Chrominance]", "19": "Lab [b-Chrominance]", "20": "Lch [ch-Chrominances]", "21": "Lch [c-Chrominance]", "22": "Lch [h-Chrominance]", "23": "HSV [Hue]", "24": "HSV [Saturation]", "25": "HSV [Value]", "26": "HSI [Intensity]", "27": "HSL [Lightness]", "28": "CMYK [Cyan]", "29": "CMYK [Magenta]", "30": "CMYK [Yellow]", "31": "CMYK [Key]", "32": "YIQ [Luma]", "33": "YIQ [Chromas]", "34": "RYB [All]", "35": "RYB [Red]", "36": "RYB [Yellow]", "37": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "This is a extended filter which was based on a Paint.NET plugin that was created by TechnoRobbo - <a href=\"https://forums.getpaint.net/topic/26783-trs-pixel-sharpener-plugin-v20-dec-21-2014/\">TR's Pixel Sharpener</a>" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "7", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "8", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2019/11/2." }
      ]
    },
    {
      "name": "Transfer Color [Reduced Colors]", "lang": "en", "command": "fx_rep_transfer_color_reduced", "command_preview": "fx_rep_transfer_color_reduced_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Preliminary Setup" },
      { "type": "choice", "name": "Style of Dithering", "default": "0", "pos": "1", "choices": { "0": "Indexing", "1": "Ordered" } },
      { "type": "float", "name": "Dithering (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "choice", "name": "Special Effect", "default": "0", "pos": "3", "choices": { "0": "None", "1": "Horizontal-D", "2": "Vertical-D", "3": "Horizontal-L", "4": "Vertical-L", "5": "Checkerboard-D", "6": "Checkerboard-L" } },
      { "type": "float", "name": "Special Effect Factor (%)", "default": "50", "min": "0", "max": "100", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Palette" },
      { "type": "choice", "name": "Coloring Method", "default": "0", "pos": "5", "choices": { "0": "Premade Palette", "1": "Bit Depth/Levels" } },
      { "type": "choice", "name": "Palette Method", "default": "0", "pos": "6", "choices": { "0": "Premade", "1": "Auto", "2": "Import", "3": "Custom" } },
      { "type": "bool", "name": "Use Bit Depth", "default": "0", "pos": "7" },
      { "type": "int", "name": "Levels", "default": "4", "min": "1", "max": "64", "pos": "8" },
      { "type": "int", "name": "Red Levels", "default": "4", "min": "1", "max": "64", "pos": "9" },
      { "type": "int", "name": "Green Levels", "default": "4", "min": "1", "max": "64", "pos": "10" },
      { "type": "int", "name": "Blue Levels", "default": "4", "min": "1", "max": "64", "pos": "11" },
      { "type": "bool", "name": "Use Same Levels for All Channels", "default": "0", "pos": "12" },
      { "type": "int", "name": "Bit-Depth", "default": "2", "min": "1", "max": "8", "pos": "13" },
      { "type": "int", "name": "Red Bit-Depth", "default": "2", "min": "1", "max": "8", "pos": "14" },
      { "type": "int", "name": "Green Bit-Depth", "default": "2", "min": "1", "max": "8", "pos": "15" },
      { "type": "int", "name": "Blue Bit-Depth", "default": "2", "min": "1", "max": "8", "pos": "16" },
      { "type": "bool", "name": "Use Same Bit-Depths for All Channel", "default": "0", "pos": "17" },
      { "type": "choice", "name": "Palette to Use", "default": "18", "pos": "18", "choices": { "0": "Black & White-2", "1": "Red-Green-Blue-3", "2": "Black with Red-Green-Blue-4", "3": "Black & White with Red-Green-Blue-5", "4": "Cyan-Magenta-Yellow-3", "5": "Cyan-Magenta-Yellow-Black-4", "6": "White-Cyan-Magenta-Yellow-Black-5", "7": "Red-Green-Blue with Cyan-Magenta-Yellow-6", "8": "1-Bit RGB-8", "9": "Aurora-256", "10": "Zenit-241", "11": "Game Builder Garage: Texture-Sprite Editor Palette-117", "12": "Duel-256", "13": "Hocus Pocus Palette-256", "14": "PLAYPAL-249", "15": "Sonic Robo Blast 2-256", "16": "Uzebox-256", "17": "Andrew Kensler - 16", "18": "Andrew Kensler - 32", "19": "Andrew Kensler - 54", "20": "AAP-Micro 12", "21": "AAP-16", "22": "AAP-64", "23": "AAP-RadiantPLUS-96", "24": "AAP-SPLENDOR128", "25": "AAP-DGA16", "26": "Cheerful-32", "27": "DB8", "28": "DB16", "29": "DB32", "30": "DB-ISO22", "31": "DimWiddy 17", "32": "DimWiddy 23", "33": "Endesga-4", "34": "Endesga-8", "35": "Endesga-16", "36": "Endesga-32", "37": "Endesga-36", "38": "Endesga-64", "39": "Famicube-64", "40": "Juicy-32", "41": "Juicy-56", "42": "XAIUE-22", "43": "15P-DX", "44": "20P-DX", "45": "24P-DX", "46": "Cabana-64", "47": "Fantasy 16", "48": "Fantasy 24", "49": "Tranquil Fantasy 23", "50": "Tranquility Plus 39", "51": "Faraway 48", "52": "Fleja Master Palette-33", "53": "Koni32", "54": "Linear Color Palette Basic-31", "55": "LEGO colors-43", "56": "Lego Colours 2021-40", "57": "Vines Flexible Linear Ramps-38", "58": "Arcade Standard 29", "59": "ARQ16", "60": "Atom-8", "61": "BLK 36", "62": "BLK-NEO-46", "63": "Broken Facility-40", "64": "Bubblegum-16", "65": "CPC BOY-32", "66": "Cade 15", "67": "Calder 8-11", "68": "CD-BAC-16", "69": "CG Arne-16", "70": "DinoKnight 16", "71": "||||-22", "72": "FZT Ethereal 16", "73": "Indecision-17", "74": "Island Joy 16", "75": "Journey-64", "76": "Shallowmarsh26", "77": "Lago Nenufar (Lake Water Lily)-19", "78": "Juicy 17", "79": "ChocolateGanache-96", "80": "Bright Winter 1-74", "81": "Bright Winter 2-83", "82": "Kawaii16", "83": "0xdb-01-17", "84": "GZXP-11", "85": "Chromatic16", "86": "Piet Coding Language-20", "87": "Matrix-96", "88": "Material Design-96", "89": "Rainbow-88", "90": "Rainbow-96", "91": "SCRJ-XXXVI-36", "92": "Pxls Default-32", "93": "Lospec500-42", "94": "Moderna-24", "95": "Oak21", "96": "Nature's Embrace 55", "97": "RBYPGO-94", "98": "New Worlds 46", "99": "Nauris-16", "100": "Dynamite-40", "101": "Interstate 28", "102": "Downgraded 32", "103": "Pear 36", "104": "Pineapple 32", "105": "Peachy Pop 16", "106": "Resurrect 32", "107": "Rosy 42", "108": "SLSO-CLR17", "109": "Softy 15", "110": "SPEC12", "111": "The Roarin 80's", "112": "Starmancer-52", "113": "SuperFuture25", "114": "SUNSHINE 35", "115": "Sweetie 16", "116": "Calm 48", "117": "Optimism-32", "118": "Taffy 16", "119": "Todayland Palette V2-25", "120": "TriRampo-12", "121": "r|place 2022-32", "122": "Tropical Cone 24", "123": "Vivid-17", "124": "SHIDO50+-72", "125": "Intacto14", "126": "Itatsi-23", "127": "ENOS16", "128": "Grixel Grotto-16", "129": "Superb 8", "130": "Undertones-17", "131": "Tango-28", "132": "Cheese Palette-28", "133": "Equpix 15", "134": "Zughy 32", "135": "Voodo34", "136": "Franzston 30", "137": "Night 16", "138": "Star 29", "139": "Star 34", "140": "Still-Life-14", "141": "SimpleJPC-16", "142": "Acid 15", "143": "Battery 24", "144": "Clumpy 18", "145": "Cthulhu-16", "146": "Crimso 11-16", "147": "Copper-Tech-16", "148": "DRZ15A", "149": "Eggy 15", "150": "Europa 16", "151": "GreyT-bit-8", "152": "Jewel-15", "153": "Polar 11", "154": "Sheltzy 32", "155": "Wyrm 24", "156": "Yume Nikki-24", "157": "Rube-Goldberg-9", "158": "BoomBoom-7", "159": "Generic-8", "160": "Crayola Blind-9", "161": "FunkyFuture8", "162": "The Golden Wall Palette-7", "163": "Matriax8c", "164": "NT1H-26", "165": "JerryPie 22", "166": "Nineties Nine-9", "167": "On70-35", "168": "ANB16", "169": "Retrocal-8", "170": "Punolit-21", "171": "Luap 40", "172": "Autum Villan 6", "173": "Autum 15", "174": "Autum 15 [Yellow]", "175": "Galaxy Flame-16", "176": "Cretaceous-16", "177": "Antiquity16", "178": "Mushroom-14", "179": "Aerugo-32", "180": "Hotel Paintings 6", "181": "Nopal-12", "182": "Brightness GPY-3", "183": "Blessing-5", "184": "Fairydust 8", "185": "Vanilla MilkShake-16", "186": "Fuzzy Four-4", "187": "Fairy Tales-8", "188": "Naji 16", "189": "Easter Island-16", "190": "Pastel and Darks 58 Palette", "191": "17 Pastels", "192": "NOSTALGIA15", "193": "Ocaso-17", "194": "Oh Hell, Pastel-15", "195": "Pollen-8", "196": "KULE-16", "197": "Hydrangea 11", "198": "Fluffy8", "199": "ST 8 R&B Remake", "200": "Neon Space-10", "201": "Cyclope6", "202": "Sy17", "203": "Syz15", "204": "TUI-15", "205": "Cave-8", "206": "Psygnosia-16", "207": "MarshMellow32", "208": "Lost Century 24", "209": "Finlal 11", "210": "Industrial Factory 16", "211": "Murder Mystery 16", "212": "Fate & Destiny 12", "213": "Vinik 24", "214": "YKB-22", "215": "Halloween-7", "216": "Graveyard-21", "217": "Steam Lords-16", "218": "Frostical-18", "219": "DeuteroSpill-9", "220": "Cool Bone 7", "221": "Muted Ally 6", "222": "EPHEMERA-12", "223": "Ink-5", "224": "Violet Dreams-8", "225": "Tinyfolks-5", "226": "Old Gold 7", "227": "Rosemoss-8", "228": "AAP-RadiantXV-15", "229": "AAP-Majesty XVII-17", "230": "Dead Weight-8", "231": "Mojave20", "232": "Petite-8", "233": "Petite-8 Afterdark", "234": "XAIUE-Radiant-22", "235": "Daruda 22", "236": "Firestorm-9", "237": "Borkfest-8", "238": "Spicy 07", "239": "Rust-6", "240": "Apricot-6", "241": "SuperNova 7", "242": "Pastry-5", "243": "Sandy 06", "244": "Illumination-5", "245": "NYX8", "246": "Dream Haze 8", "247": "OIL6", "248": "Regal10", "249": "Soft Demon 7", "250": "SGM-Palette 2-17", "251": "Midnight ablaze-7", "252": "Black Cherry-5", "253": "Sunset Red-5", "254": "INKPINK-6", "255": "Brash Pink-5", "256": "Pink Neon Sign 6", "257": "Enchanted Purple-12", "258": "Arch-11", "259": "Spacey Easter-17", "260": "Fornax Void I-254", "261": "Fornax Void II-128", "262": "Pixelwave-12", "263": "S1-6", "264": "Berry Nebula-8", "265": "ABYSS-9", "266": "Moonlight 15", "267": "Moonlit-39", "268": "H2O-10", "269": "Magic Waters 9", "270": "Bluem0ld-4", "271": "Moss-5", "272": "DEEP MAZE-7", "273": "Toxic Slime-5", "274": "Lush Green-6", "275": "Tsunami-5", "276": "Cryptic Ocean-6", "277": "Marsh Madness-5", "278": "OXYD-8", "279": "Pink&Green-8", "280": "Walking in the Woods 8", "281": "Paper 8", "282": "Sahara Pastell-7", "283": "Sunflower Painting 7", "284": "Art Hoe Aesthetic 7", "285": "Sky5-7", "286": "Ocean Glass-8", "287": "RoyalGuard-6", "288": "Eulbink-7", "289": "Winter Wonderland-8", "290": "Moon Squid 7", "291": "Stratus-5", "292": "Arctic Dust-5", "293": "CL8UDS", "294": "Lilac Skies 5", "295": "Sea of Fire-6", "296": "Autochrome 3", "297": "Autochrome 5", "298": "GB Default 1-4", "299": "GB Default 2-4", "300": "GB Andrade-4", "301": "GB Blue Seni-4", "302": "GB Blackzone-4", "303": "GB Suburb-4", "304": "GB Crimson-4", "305": "GB Didi-4", "306": "GB Dirty-4", "307": "GB Arne-4", "308": "GB Easy-4", "309": "GB Forest-4", "310": "GB Harsh Green-4", "311": "GB Light Green-4", "312": "GB Nostalgia-4", "313": "GB Platinum-4", "314": "GB Kirokaze-4", "315": "GB Cyber-4", "316": "GB Wish-4", "317": "GB Grapefruit-4", "318": "GB Ice Cream-4", "319": "GB Red_Blue-4", "320": "Gold GB-4", "321": "GB Chocolate-4", "322": "GB Gray-4", "323": "GB Spacehaze-4", "324": "GB Purple Dawn-4", "325": "Moon Crystal-4", "326": "ARNE4", "327": "Autumn Chill-4", "328": "CherryMelon-4", "329": "HallowPumpkin-4", "330": "Hollow-4", "331": "Lavender4", "332": "MAW-4", "333": "Voltage Warning-4", "334": "Tritanopia-5", "335": "Rabbit 7", "336": "Amiga 2600 NTSC-127", "337": "Amiga 2600 PAL-104", "338": "Amiga 2600 SECAM-8", "339": "Amiga 7800 M.E.S.S-256", "340": "Amiga 7800-256", "341": "Amstrad CPC-27", "342": "Apple II-15", "343": "Atari 8-Bit Series - GTIA-256", "344": "CGA-16", "345": "CGA Mode 0 [Low]-4", "346": "CGA Mode 0 [High]-4", "347": "CGA Mode 1 [Low]-4", "348": "CGA Mode 1 [High]-4", "349": "CGA Mode 2 [Low]-4", "350": "CGA Mode 2 [High]-4", "351": "Commodore 64 - Pepto-16", "352": "Commodore 64 - Colodore-16", "353": "Commodore VIC-20-16", "354": "Colecovision-15", "355": "Japanese Machine Palette-16", "356": "Macintosh II-16", "357": "Macintosh 8-Bit System Palette-256", "358": "MSX-15", "359": "NES-55", "360": "PICO-8-16", "361": "RISC OS-16", "362": "SAM Coupe-128", "363": "Thomson MO5-16", "364": "TRS-80 Color Computer Palette-4", "365": "Virtual Boy interpreted-4", "366": "VGA-244", "367": "Win 95-256", "368": "ZX Spectrum-15", "369": "GNOME 32", "370": "Electronic Crayon 22", "371": "Chip16", "372": "Deluxe Paint-222", "373": "FlatUI-20", "374": "MakeCode Arcade Palette-15", "375": "Oekaki-20", "376": "Legacy Paint-16", "377": "XP Paint-28", "378": "Vista Paint-28", "379": "Piet Palette-5", "380": "Japanese Woodblock Palette-12", "381": "Human Faces-94", "382": "HSV Palette-96", "383": "ST24 Christmas", "384": "Reds-24" } },
      { "type": "button", "name": "‎ - Send to Custom Palette‎ -", "pos": "19" },
      { "type": "file", "name": "Palette File Location", "default": "", "pos": "20" },
      { "type": "button", "name": "Re-Import File‎‎", "pos": "21" },
      { "type": "int", "name": "Number of Color", "default": "8", "min": "2", "max": "256", "pos": "22" },
      { "type": "int", "name": "Number of Color", "default": "8", "min": "2", "max": "256", "pos": "23" },
      { "type": "int", "name": "Color Restriction Per Whole Image", "default": "0", "min": "0", "max": "256", "pos": "24" },
      { "type": "int", "name": "Color Restriction Per Window", "default": "0", "min": "0", "max": "16", "pos": "25" },
      { "type": "bool", "name": "Display Custom Palette Colors", "default": "1", "pos": "26" },
      { "type": "bool", "name": "Multi-Select Palette Color", "default": "0", "pos": "27" },
      { "type": "separator" },
      { "type": "button", "name": "Delete All Selected Palette", "alignment": "0", "pos": "28" },
      { "type": "separator" },
      { "type": "color", "name": "Palette Color 1", "default": "247,244,191", "pos": "29" },
      { "type": "button", "name": "‎  ‎  ‎  ‎  Delete Color 1‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "32" },
      { "type": "bool", "name": "Color 1 Selected", "default": "0", "pos": "33" },
      { "type": "color", "name": "Palette Color 2", "default": "255,240,43", "pos": "34" },
      { "type": "button", "name": "‎  ‎  ‎  ‎  Delete Color 2‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "37" },
      { "type": "bool", "name": "Color 2 Selected", "default": "0", "pos": "38" },
      { "type": "color", "name": "Palette Color 3", "default": "255,207,5", "pos": "39" },
      { "type": "button", "name": "‎  ‎  ‎  ‎  Delete Color 3‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "42" },
      { "type": "bool", "name": "Color 3 Selected", "default": "0", "pos": "43" },
      { "type": "color", "name": "Palette Color 4", "default": "255,177,8", "pos": "44" },
      { "type": "button", "name": "‎  ‎  ‎  ‎  Delete Color 4‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "47" },
      { "type": "bool", "name": "Color 4 Selected", "default": "0", "pos": "48" },
      { "type": "color", "name": "Palette Color 5", "default": "233,134,39", "pos": "49" },
      { "type": "button", "name": "‎  ‎  ‎  ‎  Delete Color 5‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "52" },
      { "type": "bool", "name": "Color 5 Selected", "default": "0", "pos": "53" },
      { "type": "color", "name": "Palette Color 6", "default": "191,90,62", "pos": "54" },
      { "type": "button", "name": "‎  ‎  ‎  ‎  Delete Color 6‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "57" },
      { "type": "bool", "name": "Color 6 Selected", "default": "0", "pos": "58" },
      { "type": "color", "name": "Palette Color 7", "default": "156,51,39", "pos": "59" },
      { "type": "button", "name": "‎  ‎  ‎  ‎  Delete Color 7‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "62" },
      { "type": "bool", "name": "Color 7 Selected", "default": "0", "pos": "63" },
      { "type": "color", "name": "Palette Color 8", "default": "114,28,3", "pos": "64" },
      { "type": "button", "name": "‎  ‎  ‎  ‎  Delete Color 8‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "67" },
      { "type": "bool", "name": "Color 8 Selected", "default": "0", "pos": "68" },
      { "type": "color", "name": "Palette Color 9", "default": "255,226,207", "pos": "69" },
      { "type": "button", "name": "‎  ‎  ‎  ‎  Delete Color 9‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "72" },
      { "type": "bool", "name": "Color 9 Selected", "default": "0", "pos": "73" },
      { "type": "color", "name": "Palette Color 10", "default": "212,174,170", "pos": "74" },
      { "type": "button", "name": "‎  ‎  ‎  ‎  Delete Color 10‎  ‎  ‎  ‎ ‎", "alignment": "0", "pos": "77" },
      { "type": "bool", "name": "Color 10 Selected", "default": "0", "pos": "78" },
      { "type": "color", "name": "Palette Color 11", "default": "181,139,148", "pos": "79" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 11‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "82" },
      { "type": "bool", "name": "Color 11 Selected", "default": "0", "pos": "83" },
      { "type": "color", "name": "Palette Color 12", "default": "173,121,132", "pos": "84" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 12‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "87" },
      { "type": "bool", "name": "Color 12 Selected", "default": "0", "pos": "88" },
      { "type": "color", "name": "Palette Color 13", "default": "145,96,106", "pos": "89" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 13‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "92" },
      { "type": "bool", "name": "Color 13 Selected", "default": "0", "pos": "93" },
      { "type": "color", "name": "Palette Color 14", "default": "119,83,91", "pos": "94" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 14‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "97" },
      { "type": "bool", "name": "Color 14 Selected", "default": "0", "pos": "98" },
      { "type": "color", "name": "Palette Color 15", "default": "94,65,74", "pos": "99" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 15‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "102" },
      { "type": "bool", "name": "Color 15 Selected", "default": "0", "pos": "103" },
      { "type": "color", "name": "Palette Color 16", "default": "73,33,41", "pos": "104" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 16‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "107" },
      { "type": "bool", "name": "Color 16 Selected", "default": "0", "pos": "108" },
      { "type": "color", "name": "Palette Color 17", "default": "131,147,195", "pos": "109" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 17‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "112" },
      { "type": "bool", "name": "Color 17 Selected", "default": "0", "pos": "113" },
      { "type": "color", "name": "Palette Color 18", "default": "108,130,196", "pos": "114" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 18‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "117" },
      { "type": "bool", "name": "Color 18 Selected", "default": "0", "pos": "118" },
      { "type": "color", "name": "Palette Color 19", "default": "82,116,197", "pos": "119" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 19‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "122" },
      { "type": "bool", "name": "Color 19 Selected", "default": "0", "pos": "123" },
      { "type": "color", "name": "Palette Color 20", "default": "81,101,174", "pos": "124" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 20‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "127" },
      { "type": "bool", "name": "Color 20 Selected", "default": "0", "pos": "128" },
      { "type": "color", "name": "Palette Color 21", "default": "61,80,131", "pos": "129" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 21‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "132" },
      { "type": "bool", "name": "Color 21 Selected", "default": "0", "pos": "133" },
      { "type": "color", "name": "Palette Color 22", "default": "45,61,114", "pos": "134" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 22‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "137" },
      { "type": "bool", "name": "Color 22 Selected", "default": "0", "pos": "138" },
      { "type": "color", "name": "Palette Color 23", "default": "40,51,93", "pos": "139" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 23‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "142" },
      { "type": "bool", "name": "Color 23 Selected", "default": "0", "pos": "143" },
      { "type": "color", "name": "Palette Color 24", "default": "38,36,80", "pos": "144" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 24‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "147" },
      { "type": "bool", "name": "Color 24 Selected", "default": "0", "pos": "148" },
      { "type": "color", "name": "Palette Color 25", "default": "209,189,254", "pos": "149" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 25‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "152" },
      { "type": "bool", "name": "Color 25 Selected", "default": "0", "pos": "153" },
      { "type": "color", "name": "Palette Color 26", "default": "186,171,247", "pos": "154" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 26‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "157" },
      { "type": "bool", "name": "Color 26 Selected", "default": "0", "pos": "158" },
      { "type": "color", "name": "Palette Color 27", "default": "169,150,236", "pos": "159" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 27‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "162" },
      { "type": "bool", "name": "Color 27 Selected", "default": "0", "pos": "163" },
      { "type": "color", "name": "Palette Color 28", "default": "149,133,241", "pos": "164" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 28‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "167" },
      { "type": "bool", "name": "Color 28 Selected", "default": "0", "pos": "168" },
      { "type": "color", "name": "Palette Color 29", "default": "121,100,186", "pos": "169" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 29‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "172" },
      { "type": "bool", "name": "Color 29 Selected", "default": "0", "pos": "173" },
      { "type": "color", "name": "Palette Color 30", "default": "88,74,127", "pos": "174" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 30‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "177" },
      { "type": "bool", "name": "Color 30 Selected", "default": "0", "pos": "178" },
      { "type": "color", "name": "Palette Color 31", "default": "60,49,81", "pos": "179" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 31‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "182" },
      { "type": "bool", "name": "Color 31 Selected", "default": "0", "pos": "183" },
      { "type": "color", "name": "Palette Color 32", "default": "29,29,33", "pos": "184" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 32‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "187" },
      { "type": "bool", "name": "Color 32 Selected", "default": "0", "pos": "188" },
      { "type": "color", "name": "Palette Color 33", "default": "253,247,134", "pos": "189" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 33‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "192" },
      { "type": "bool", "name": "Color 33 Selected", "default": "0", "pos": "193" },
      { "type": "color", "name": "Palette Color 34", "default": "255,213,155", "pos": "194" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 34‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "197" },
      { "type": "bool", "name": "Color 34 Selected", "default": "0", "pos": "198" },
      { "type": "color", "name": "Palette Color 35", "default": "235,189,157", "pos": "199" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 35‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "202" },
      { "type": "bool", "name": "Color 35 Selected", "default": "0", "pos": "203" },
      { "type": "color", "name": "Palette Color 36", "default": "213,163,154", "pos": "204" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 36‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "207" },
      { "type": "bool", "name": "Color 36 Selected", "default": "0", "pos": "208" },
      { "type": "color", "name": "Palette Color 37", "default": "185,140,147", "pos": "209" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 37‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "212" },
      { "type": "bool", "name": "Color 37 Selected", "default": "0", "pos": "213" },
      { "type": "color", "name": "Palette Color 38", "default": "151,116,136", "pos": "214" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 38‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "217" },
      { "type": "bool", "name": "Color 38 Selected", "default": "0", "pos": "218" },
      { "type": "color", "name": "Palette Color 39", "default": "118,93,115", "pos": "219" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 39‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "222" },
      { "type": "bool", "name": "Color 39 Selected", "default": "0", "pos": "223" },
      { "type": "color", "name": "Palette Color 40", "default": "85,71,105", "pos": "224" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 40‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "227" },
      { "type": "bool", "name": "Color 40 Selected", "default": "0", "pos": "228" },
      { "type": "color", "name": "Palette Color 41", "default": "109,204,255", "pos": "229" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 41‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "232" },
      { "type": "bool", "name": "Color 41 Selected", "default": "0", "pos": "233" },
      { "type": "color", "name": "Palette Color 42", "default": "85,177,241", "pos": "234" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 42‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "237" },
      { "type": "bool", "name": "Color 42 Selected", "default": "0", "pos": "238" },
      { "type": "color", "name": "Palette Color 43", "default": "64,151,234", "pos": "239" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 43‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "242" },
      { "type": "bool", "name": "Color 43 Selected", "default": "0", "pos": "243" },
      { "type": "color", "name": "Palette Color 44", "default": "20,118,192", "pos": "244" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 44‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "247" },
      { "type": "bool", "name": "Color 44 Selected", "default": "0", "pos": "248" },
      { "type": "color", "name": "Palette Color 45", "default": "16,93,162", "pos": "249" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 45‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "252" },
      { "type": "bool", "name": "Color 45 Selected", "default": "0", "pos": "253" },
      { "type": "color", "name": "Palette Color 46", "default": "7,72,124", "pos": "254" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 46‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "257" },
      { "type": "bool", "name": "Color 46 Selected", "default": "0", "pos": "258" },
      { "type": "color", "name": "Palette Color 47", "default": "3,49,95", "pos": "259" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 47‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "262" },
      { "type": "bool", "name": "Color 47 Selected", "default": "0", "pos": "263" },
      { "type": "color", "name": "Palette Color 48", "default": "0,27,64", "pos": "264" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 48‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "267" },
      { "type": "bool", "name": "Color 48 Selected", "default": "0", "pos": "268" },
      { "type": "color", "name": "Palette Color 49", "default": "224,250,235", "pos": "269" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 49‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "272" },
      { "type": "bool", "name": "Color 49 Selected", "default": "0", "pos": "273" },
      { "type": "color", "name": "Palette Color 50", "default": "169,209,193", "pos": "274" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 50‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "277" },
      { "type": "bool", "name": "Color 50 Selected", "default": "0", "pos": "278" },
      { "type": "color", "name": "Palette Color 51", "default": "138,193,150", "pos": "279" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 51‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "282" },
      { "type": "bool", "name": "Color 51 Selected", "default": "0", "pos": "283" },
      { "type": "color", "name": "Palette Color 52", "default": "135,174,142", "pos": "284" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 52‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "287" },
      { "type": "bool", "name": "Color 52 Selected", "default": "0", "pos": "288" },
      { "type": "color", "name": "Palette Color 53", "default": "113,149,125", "pos": "289" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 53‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "292" },
      { "type": "bool", "name": "Color 53 Selected", "default": "0", "pos": "293" },
      { "type": "color", "name": "Palette Color 54", "default": "91,123,105", "pos": "294" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 54‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "297" },
      { "type": "bool", "name": "Color 54 Selected", "default": "0", "pos": "298" },
      { "type": "color", "name": "Palette Color 55", "default": "71,101,90", "pos": "299" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 55‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "302" },
      { "type": "bool", "name": "Color 55 Selected", "default": "0", "pos": "303" },
      { "type": "color", "name": "Palette Color 56", "default": "45,75,71", "pos": "304" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 56‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "307" },
      { "type": "bool", "name": "Color 56 Selected", "default": "0", "pos": "308" },
      { "type": "color", "name": "Palette Color 57", "default": "244,163,128", "pos": "309" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 57‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "312" },
      { "type": "bool", "name": "Color 57 Selected", "default": "0", "pos": "313" },
      { "type": "color", "name": "Palette Color 58", "default": "215,147,116", "pos": "314" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 58‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "317" },
      { "type": "bool", "name": "Color 58 Selected", "default": "0", "pos": "318" },
      { "type": "color", "name": "Palette Color 59", "default": "191,126,99", "pos": "319" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 59‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "322" },
      { "type": "bool", "name": "Color 59 Selected", "default": "0", "pos": "323" },
      { "type": "color", "name": "Palette Color 60", "default": "169,109,88", "pos": "324" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 60‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "327" },
      { "type": "bool", "name": "Color 60 Selected", "default": "0", "pos": "328" },
      { "type": "color", "name": "Palette Color 61", "default": "148,93,79", "pos": "329" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 61‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "332" },
      { "type": "bool", "name": "Color 61 Selected", "default": "0", "pos": "333" },
      { "type": "color", "name": "Palette Color 62", "default": "120,76,73", "pos": "334" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 62‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "337" },
      { "type": "bool", "name": "Color 62 Selected", "default": "0", "pos": "338" },
      { "type": "color", "name": "Palette Color 63", "default": "83,57,58", "pos": "339" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 63‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "342" },
      { "type": "bool", "name": "Color 63 Selected", "default": "0", "pos": "343" },
      { "type": "color", "name": "Palette Color 64", "default": "55,36,35", "pos": "344" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 64‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "347" },
      { "type": "bool", "name": "Color 64 Selected", "default": "0", "pos": "348" },
      { "type": "color", "name": "Palette Color 65", "default": "127,189,57", "pos": "349" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 65‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "352" },
      { "type": "bool", "name": "Color 65 Selected", "default": "0", "pos": "353" },
      { "type": "color", "name": "Palette Color 66", "default": "120,158,36", "pos": "354" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 66‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "357" },
      { "type": "bool", "name": "Color 66 Selected", "default": "0", "pos": "358" },
      { "type": "color", "name": "Palette Color 67", "default": "107,132,45", "pos": "359" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 67‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "362" },
      { "type": "bool", "name": "Color 67 Selected", "default": "0", "pos": "363" },
      { "type": "color", "name": "Palette Color 68", "default": "88,113,44", "pos": "364" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 68‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "367" },
      { "type": "bool", "name": "Color 68 Selected", "default": "0", "pos": "368" },
      { "type": "color", "name": "Palette Color 69", "default": "76,95,51", "pos": "369" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 69‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "372" },
      { "type": "bool", "name": "Color 69 Selected", "default": "0", "pos": "373" },
      { "type": "color", "name": "Palette Color 70", "default": "57,77,60", "pos": "374" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 70‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "377" },
      { "type": "bool", "name": "Color 70 Selected", "default": "0", "pos": "378" },
      { "type": "color", "name": "Palette Color 71", "default": "46,61,71", "pos": "379" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 71‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "382" },
      { "type": "bool", "name": "Color 71 Selected", "default": "0", "pos": "383" },
      { "type": "color", "name": "Palette Color 72", "default": "29,44,67", "pos": "384" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 72‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "387" },
      { "type": "bool", "name": "Color 72 Selected", "default": "0", "pos": "388" },
      { "type": "color", "name": "Palette Color 73", "default": "254,223,177", "pos": "389" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 73‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "392" },
      { "type": "bool", "name": "Color 73 Selected", "default": "0", "pos": "393" },
      { "type": "color", "name": "Palette Color 74", "default": "207,175,142", "pos": "394" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 74‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "397" },
      { "type": "bool", "name": "Color 74 Selected", "default": "0", "pos": "398" },
      { "type": "color", "name": "Palette Color 75", "default": "179,151,131", "pos": "399" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 75‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "402" },
      { "type": "bool", "name": "Color 75 Selected", "default": "0", "pos": "403" },
      { "type": "color", "name": "Palette Color 76", "default": "145,122,123", "pos": "404" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 76‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "407" },
      { "type": "bool", "name": "Color 76 Selected", "default": "0", "pos": "408" },
      { "type": "color", "name": "Palette Color 77", "default": "117,104,110", "pos": "409" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 77‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "412" },
      { "type": "bool", "name": "Color 77 Selected", "default": "0", "pos": "413" },
      { "type": "color", "name": "Palette Color 78", "default": "86,80,111", "pos": "414" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 78‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "417" },
      { "type": "bool", "name": "Color 78 Selected", "default": "0", "pos": "418" },
      { "type": "color", "name": "Palette Color 79", "default": "59,56,85", "pos": "419" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 79‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "422" },
      { "type": "bool", "name": "Color 79 Selected", "default": "0", "pos": "423" },
      { "type": "color", "name": "Palette Color 80", "default": "38,35,61", "pos": "424" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 80‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "427" },
      { "type": "bool", "name": "Color 80 Selected", "default": "0", "pos": "428" },
      { "type": "color", "name": "Palette Color 81", "default": "255,246,79", "pos": "429" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 81‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "432" },
      { "type": "bool", "name": "Color 81 Selected", "default": "0", "pos": "433" },
      { "type": "color", "name": "Palette Color 82", "default": "232,210,75", "pos": "434" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 82‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "437" },
      { "type": "bool", "name": "Color 82 Selected", "default": "0", "pos": "438" },
      { "type": "color", "name": "Palette Color 83", "default": "209,170,57", "pos": "439" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 83‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "442" },
      { "type": "bool", "name": "Color 83 Selected", "default": "0", "pos": "443" },
      { "type": "color", "name": "Palette Color 84", "default": "186,136,46", "pos": "444" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 84‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "447" },
      { "type": "bool", "name": "Color 84 Selected", "default": "0", "pos": "448" },
      { "type": "color", "name": "Palette Color 85", "default": "158,101,32", "pos": "449" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 85‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "452" },
      { "type": "bool", "name": "Color 85 Selected", "default": "0", "pos": "453" },
      { "type": "color", "name": "Palette Color 86", "default": "133,79,18", "pos": "454" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 86‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "457" },
      { "type": "bool", "name": "Color 86 Selected", "default": "0", "pos": "458" },
      { "type": "color", "name": "Palette Color 87", "default": "117,59,9", "pos": "459" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 87‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "462" },
      { "type": "bool", "name": "Color 87 Selected", "default": "0", "pos": "463" },
      { "type": "color", "name": "Palette Color 88", "default": "98,42,0", "pos": "464" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 88‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "467" },
      { "type": "bool", "name": "Color 88 Selected", "default": "0", "pos": "468" },
      { "type": "color", "name": "Palette Color 89", "default": "208,204,50", "pos": "469" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 89‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "472" },
      { "type": "bool", "name": "Color 89 Selected", "default": "0", "pos": "473" },
      { "type": "color", "name": "Palette Color 90", "default": "180,170,51", "pos": "474" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 90‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "477" },
      { "type": "bool", "name": "Color 90 Selected", "default": "0", "pos": "478" },
      { "type": "color", "name": "Palette Color 91", "default": "150,154,38", "pos": "479" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 91‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "482" },
      { "type": "bool", "name": "Color 91 Selected", "default": "0", "pos": "483" },
      { "type": "color", "name": "Palette Color 92", "default": "124,131,30", "pos": "484" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 92‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "487" },
      { "type": "bool", "name": "Color 92 Selected", "default": "0", "pos": "488" },
      { "type": "color", "name": "Palette Color 93", "default": "97,115,8", "pos": "489" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 93‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "492" },
      { "type": "bool", "name": "Color 93 Selected", "default": "0", "pos": "493" },
      { "type": "color", "name": "Palette Color 94", "default": "73,93,0", "pos": "494" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 94‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "497" },
      { "type": "bool", "name": "Color 94 Selected", "default": "0", "pos": "498" },
      { "type": "color", "name": "Palette Color 95", "default": "47,79,8", "pos": "499" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 95‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "502" },
      { "type": "bool", "name": "Color 95 Selected", "default": "0", "pos": "503" },
      { "type": "color", "name": "Palette Color 96", "default": "32,41,0", "pos": "504" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 96‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "507" },
      { "type": "bool", "name": "Color 96 Selected", "default": "0", "pos": "508" },
      { "type": "color", "name": "Palette Color 97", "default": "229,154,124", "pos": "509" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 97‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "512" },
      { "type": "bool", "name": "Color 97 Selected", "default": "0", "pos": "513" },
      { "type": "color", "name": "Palette Color 98", "default": "210,141,122", "pos": "514" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 98‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "517" },
      { "type": "bool", "name": "Color 98 Selected", "default": "0", "pos": "518" },
      { "type": "color", "name": "Palette Color 99", "default": "193,126,122", "pos": "519" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 99‎  ‎  ‎  ‎  ‎", "alignment": "0", "pos": "522" },
      { "type": "bool", "name": "Color 99 Selected", "default": "0", "pos": "523" },
      { "type": "color", "name": "Palette Color 100", "default": "172,111,110", "pos": "524" },
      { "type": "button", "name": "‎  ‎  ‎  ‎ Delete Color 100‎  ‎  ‎  ‎‎", "alignment": "0", "pos": "527" },
      { "type": "bool", "name": "Color 100 Selected", "default": "0", "pos": "528" },
      { "type": "color", "name": "Palette Color 101", "default": "152,89,90", "pos": "529" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 101‎  ‎  ‎  ‎", "alignment": "0", "pos": "532" },
      { "type": "bool", "name": "Color 101 Selected", "default": "0", "pos": "533" },
      { "type": "color", "name": "Palette Color 102", "default": "124,75,71", "pos": "534" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 102‎  ‎  ‎  ‎", "alignment": "0", "pos": "537" },
      { "type": "bool", "name": "Color 102 Selected", "default": "0", "pos": "538" },
      { "type": "color", "name": "Palette Color 103", "default": "99,52,50", "pos": "539" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 103‎  ‎  ‎  ‎", "alignment": "0", "pos": "542" },
      { "type": "bool", "name": "Color 103 Selected", "default": "0", "pos": "543" },
      { "type": "color", "name": "Palette Color 104", "default": "73,37,28", "pos": "544" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 104‎  ‎  ‎  ‎", "alignment": "0", "pos": "547" },
      { "type": "bool", "name": "Color 104 Selected", "default": "0", "pos": "548" },
      { "type": "color", "name": "Palette Color 105", "default": "255,205,255", "pos": "549" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 105‎  ‎  ‎  ‎", "alignment": "0", "pos": "552" },
      { "type": "bool", "name": "Color 105 Selected", "default": "0", "pos": "553" },
      { "type": "color", "name": "Palette Color 106", "default": "255,166,197", "pos": "554" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 106‎  ‎  ‎  ‎", "alignment": "0", "pos": "557" },
      { "type": "bool", "name": "Color 106 Selected", "default": "0", "pos": "558" },
      { "type": "color", "name": "Palette Color 107", "default": "255,125,175", "pos": "559" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 107‎  ‎  ‎  ‎", "alignment": "0", "pos": "562" },
      { "type": "bool", "name": "Color 107 Selected", "default": "0", "pos": "563" },
      { "type": "color", "name": "Palette Color 108", "default": "248,93,128", "pos": "564" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 108‎  ‎  ‎  ‎", "alignment": "0", "pos": "567" },
      { "type": "bool", "name": "Color 108 Selected", "default": "0", "pos": "568" },
      { "type": "color", "name": "Palette Color 109", "default": "217,74,105", "pos": "569" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 109‎  ‎  ‎  ‎", "alignment": "0", "pos": "572" },
      { "type": "bool", "name": "Color 109 Selected", "default": "0", "pos": "573" },
      { "type": "color", "name": "Palette Color 110", "default": "159,59,82", "pos": "574" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 110‎  ‎  ‎  ‎", "alignment": "0", "pos": "577" },
      { "type": "bool", "name": "Color 110 Selected", "default": "0", "pos": "578" },
      { "type": "color", "name": "Palette Color 111", "default": "113,43,59", "pos": "579" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 111‎  ‎  ‎  ‎", "alignment": "0", "pos": "582" },
      { "type": "bool", "name": "Color 111 Selected", "default": "0", "pos": "583" },
      { "type": "color", "name": "Palette Color 112", "default": "67,23,41", "pos": "584" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 112‎  ‎  ‎  ‎", "alignment": "0", "pos": "587" },
      { "type": "bool", "name": "Color 112 Selected", "default": "0", "pos": "588" },
      { "type": "color", "name": "Palette Color 113", "default": "220,212,255", "pos": "589" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 113‎  ‎  ‎  ‎", "alignment": "0", "pos": "592" },
      { "type": "bool", "name": "Color 113 Selected", "default": "0", "pos": "593" },
      { "type": "color", "name": "Palette Color 114", "default": "184,174,255", "pos": "594" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 114‎  ‎  ‎  ‎", "alignment": "0", "pos": "597" },
      { "type": "bool", "name": "Color 114 Selected", "default": "0", "pos": "598" },
      { "type": "color", "name": "Palette Color 115", "default": "156,155,239", "pos": "599" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 115‎  ‎  ‎  ‎", "alignment": "0", "pos": "602" },
      { "type": "bool", "name": "Color 115 Selected", "default": "0", "pos": "603" },
      { "type": "color", "name": "Palette Color 116", "default": "142,140,226", "pos": "604" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 116‎  ‎  ‎  ‎", "alignment": "0", "pos": "607" },
      { "type": "bool", "name": "Color 116 Selected", "default": "0", "pos": "608" },
      { "type": "color", "name": "Palette Color 117", "default": "120,119,193", "pos": "609" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 117‎  ‎  ‎  ‎", "alignment": "0", "pos": "612" },
      { "type": "bool", "name": "Color 117 Selected", "default": "0", "pos": "613" },
      { "type": "color", "name": "Palette Color 118", "default": "100,101,157", "pos": "614" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 118‎  ‎  ‎  ‎", "alignment": "0", "pos": "617" },
      { "type": "bool", "name": "Color 118 Selected", "default": "0", "pos": "618" },
      { "type": "color", "name": "Palette Color 119", "default": "74,82,128", "pos": "619" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 119‎  ‎  ‎  ‎", "alignment": "0", "pos": "622" },
      { "type": "bool", "name": "Color 119 Selected", "default": "0", "pos": "623" },
      { "type": "color", "name": "Palette Color 120", "default": "50,53,88", "pos": "624" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 120‎  ‎  ‎  ‎", "alignment": "0", "pos": "627" },
      { "type": "bool", "name": "Color 120 Selected", "default": "0", "pos": "628" },
      { "type": "color", "name": "Palette Color 121", "default": "237,212,147", "pos": "629" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 121‎  ‎  ‎  ‎", "alignment": "0", "pos": "632" },
      { "type": "bool", "name": "Color 121 Selected", "default": "0", "pos": "633" },
      { "type": "color", "name": "Palette Color 122", "default": "237,182,124", "pos": "634" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 122‎  ‎  ‎  ‎", "alignment": "0", "pos": "637" },
      { "type": "bool", "name": "Color 122 Selected", "default": "0", "pos": "638" },
      { "type": "color", "name": "Palette Color 123", "default": "206,151,112", "pos": "639" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 123‎  ‎  ‎  ‎", "alignment": "0", "pos": "642" },
      { "type": "bool", "name": "Color 123 Selected", "default": "0", "pos": "643" },
      { "type": "color", "name": "Palette Color 124", "default": "189,125,100", "pos": "644" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 124‎  ‎  ‎  ‎", "alignment": "0", "pos": "647" },
      { "type": "bool", "name": "Color 124 Selected", "default": "0", "pos": "648" },
      { "type": "color", "name": "Palette Color 125", "default": "167,96,87", "pos": "649" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 125‎  ‎  ‎  ‎", "alignment": "0", "pos": "652" },
      { "type": "bool", "name": "Color 125 Selected", "default": "0", "pos": "653" },
      { "type": "color", "name": "Palette Color 126", "default": "144,70,71", "pos": "654" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 126‎  ‎  ‎  ‎", "alignment": "0", "pos": "657" },
      { "type": "bool", "name": "Color 126 Selected", "default": "0", "pos": "658" },
      { "type": "color", "name": "Palette Color 127", "default": "110,36,52", "pos": "659" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 127‎  ‎  ‎  ‎", "alignment": "0", "pos": "662" },
      { "type": "bool", "name": "Color 127 Selected", "default": "0", "pos": "663" },
      { "type": "color", "name": "Palette Color 128", "default": "95,9,38", "pos": "664" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 128‎  ‎  ‎  ‎", "alignment": "0", "pos": "667" },
      { "type": "bool", "name": "Color 128 Selected", "default": "0", "pos": "668" },
      { "type": "color", "name": "Palette Color 129", "default": "251,234,163", "pos": "669" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 129‎  ‎  ‎  ‎", "alignment": "0", "pos": "672" },
      { "type": "bool", "name": "Color 129 Selected", "default": "0", "pos": "673" },
      { "type": "color", "name": "Palette Color 130", "default": "232,203,130", "pos": "674" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 130‎  ‎  ‎  ‎", "alignment": "0", "pos": "677" },
      { "type": "bool", "name": "Color 130 Selected", "default": "0", "pos": "678" },
      { "type": "color", "name": "Palette Color 131", "default": "204,169,110", "pos": "679" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 131‎  ‎  ‎  ‎", "alignment": "0", "pos": "682" },
      { "type": "bool", "name": "Color 131 Selected", "default": "0", "pos": "683" },
      { "type": "color", "name": "Palette Color 132", "default": "178,144,98", "pos": "684" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 132‎  ‎  ‎  ‎", "alignment": "0", "pos": "687" },
      { "type": "bool", "name": "Color 132 Selected", "default": "0", "pos": "688" },
      { "type": "color", "name": "Palette Color 133", "default": "153,121,81", "pos": "689" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 133‎  ‎  ‎  ‎", "alignment": "0", "pos": "692" },
      { "type": "bool", "name": "Color 133 Selected", "default": "0", "pos": "693" },
      { "type": "color", "name": "Palette Color 134", "default": "126,97,68", "pos": "694" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 134‎  ‎  ‎  ‎", "alignment": "0", "pos": "697" },
      { "type": "bool", "name": "Color 134 Selected", "default": "0", "pos": "698" },
      { "type": "color", "name": "Palette Color 135", "default": "97,74,60", "pos": "699" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 135‎  ‎  ‎  ‎", "alignment": "0", "pos": "702" },
      { "type": "bool", "name": "Color 135 Selected", "default": "0", "pos": "703" },
      { "type": "color", "name": "Palette Color 136", "default": "69,49,37", "pos": "704" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 136‎  ‎  ‎  ‎", "alignment": "0", "pos": "707" },
      { "type": "bool", "name": "Color 136 Selected", "default": "0", "pos": "708" },
      { "type": "color", "name": "Palette Color 137", "default": "0,222,218", "pos": "709" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 137‎  ‎  ‎  ‎", "alignment": "0", "pos": "712" },
      { "type": "bool", "name": "Color 137 Selected", "default": "0", "pos": "713" },
      { "type": "color", "name": "Palette Color 138", "default": "0,191,163", "pos": "714" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 138‎  ‎  ‎  ‎", "alignment": "0", "pos": "717" },
      { "type": "bool", "name": "Color 138 Selected", "default": "0", "pos": "718" },
      { "type": "color", "name": "Palette Color 139", "default": "0,160,135", "pos": "719" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 139‎  ‎  ‎  ‎", "alignment": "0", "pos": "722" },
      { "type": "bool", "name": "Color 139 Selected", "default": "0", "pos": "723" },
      { "type": "color", "name": "Palette Color 140", "default": "0,130,121", "pos": "724" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 140‎  ‎  ‎  ‎", "alignment": "0", "pos": "727" },
      { "type": "bool", "name": "Color 140 Selected", "default": "0", "pos": "728" },
      { "type": "color", "name": "Palette Color 141", "default": "0,107,109", "pos": "729" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 141‎  ‎  ‎  ‎", "alignment": "0", "pos": "732" },
      { "type": "bool", "name": "Color 141 Selected", "default": "0", "pos": "733" },
      { "type": "color", "name": "Palette Color 142", "default": "0,81,98", "pos": "734" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 142‎  ‎  ‎  ‎", "alignment": "0", "pos": "737" },
      { "type": "bool", "name": "Color 142 Selected", "default": "0", "pos": "738" },
      { "type": "color", "name": "Palette Color 143", "default": "0,64,81", "pos": "739" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 143‎  ‎  ‎  ‎", "alignment": "0", "pos": "742" },
      { "type": "bool", "name": "Color 143 Selected", "default": "0", "pos": "743" },
      { "type": "color", "name": "Palette Color 144", "default": "0,46,73", "pos": "744" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 144‎  ‎  ‎  ‎", "alignment": "0", "pos": "747" },
      { "type": "bool", "name": "Color 144 Selected", "default": "0", "pos": "748" },
      { "type": "color", "name": "Palette Color 145", "default": "248,198,218", "pos": "749" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 145‎  ‎  ‎  ‎", "alignment": "0", "pos": "752" },
      { "type": "bool", "name": "Color 145 Selected", "default": "0", "pos": "753" },
      { "type": "color", "name": "Palette Color 146", "default": "219,153,191", "pos": "754" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 146‎  ‎  ‎  ‎", "alignment": "0", "pos": "757" },
      { "type": "bool", "name": "Color 146 Selected", "default": "0", "pos": "758" },
      { "type": "color", "name": "Palette Color 147", "default": "193,120,170", "pos": "759" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 147‎  ‎  ‎  ‎", "alignment": "0", "pos": "762" },
      { "type": "bool", "name": "Color 147 Selected", "default": "0", "pos": "763" },
      { "type": "color", "name": "Palette Color 148", "default": "185,109,145", "pos": "764" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 148‎  ‎  ‎  ‎", "alignment": "0", "pos": "767" },
      { "type": "bool", "name": "Color 148 Selected", "default": "0", "pos": "768" },
      { "type": "color", "name": "Palette Color 149", "default": "151,84,117", "pos": "769" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 149‎  ‎  ‎  ‎", "alignment": "0", "pos": "772" },
      { "type": "bool", "name": "Color 149 Selected", "default": "0", "pos": "773" },
      { "type": "color", "name": "Palette Color 150", "default": "102,54,89", "pos": "774" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 150‎  ‎  ‎  ‎", "alignment": "0", "pos": "777" },
      { "type": "bool", "name": "Color 150 Selected", "default": "0", "pos": "778" },
      { "type": "color", "name": "Palette Color 151", "default": "73,40,61", "pos": "779" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 151‎  ‎  ‎  ‎", "alignment": "0", "pos": "782" },
      { "type": "bool", "name": "Color 151 Selected", "default": "0", "pos": "783" },
      { "type": "color", "name": "Palette Color 152", "default": "46,16,38", "pos": "784" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 152‎  ‎  ‎  ‎", "alignment": "0", "pos": "787" },
      { "type": "bool", "name": "Color 152 Selected", "default": "0", "pos": "788" },
      { "type": "color", "name": "Palette Color 153", "default": "221,191,154", "pos": "789" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 153‎  ‎  ‎  ‎", "alignment": "0", "pos": "792" },
      { "type": "bool", "name": "Color 153 Selected", "default": "0", "pos": "793" },
      { "type": "color", "name": "Palette Color 154", "default": "192,165,136", "pos": "794" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 154‎  ‎  ‎  ‎", "alignment": "0", "pos": "797" },
      { "type": "bool", "name": "Color 154 Selected", "default": "0", "pos": "798" },
      { "type": "color", "name": "Palette Color 155", "default": "158,138,110", "pos": "799" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 155‎  ‎  ‎  ‎", "alignment": "0", "pos": "802" },
      { "type": "bool", "name": "Color 155 Selected", "default": "0", "pos": "803" },
      { "type": "color", "name": "Palette Color 156", "default": "126,108,84", "pos": "804" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 156‎  ‎  ‎  ‎", "alignment": "0", "pos": "807" },
      { "type": "bool", "name": "Color 156 Selected", "default": "0", "pos": "808" },
      { "type": "color", "name": "Palette Color 157", "default": "114,90,81", "pos": "809" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 157‎  ‎  ‎  ‎", "alignment": "0", "pos": "812" },
      { "type": "bool", "name": "Color 157 Selected", "default": "0", "pos": "813" },
      { "type": "color", "name": "Palette Color 158", "default": "94,70,70", "pos": "814" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 158‎  ‎  ‎  ‎", "alignment": "0", "pos": "817" },
      { "type": "bool", "name": "Color 158 Selected", "default": "0", "pos": "818" },
      { "type": "color", "name": "Palette Color 159", "default": "74,53,60", "pos": "819" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 159‎  ‎  ‎  ‎", "alignment": "0", "pos": "822" },
      { "type": "bool", "name": "Color 159 Selected", "default": "0", "pos": "823" },
      { "type": "color", "name": "Palette Color 160", "default": "49,34,42", "pos": "824" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 160‎  ‎  ‎  ‎", "alignment": "0", "pos": "827" },
      { "type": "bool", "name": "Color 160 Selected", "default": "0", "pos": "828" },
      { "type": "color", "name": "Palette Color 161", "default": "255,250,171", "pos": "829" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 161‎  ‎  ‎  ‎", "alignment": "0", "pos": "832" },
      { "type": "bool", "name": "Color 161 Selected", "default": "0", "pos": "833" },
      { "type": "color", "name": "Palette Color 162", "default": "236,197,129", "pos": "834" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 162‎  ‎  ‎  ‎", "alignment": "0", "pos": "837" },
      { "type": "bool", "name": "Color 162 Selected", "default": "0", "pos": "838" },
      { "type": "color", "name": "Palette Color 163", "default": "216,159,117", "pos": "839" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 163‎  ‎  ‎  ‎", "alignment": "0", "pos": "842" },
      { "type": "bool", "name": "Color 163 Selected", "default": "0", "pos": "843" },
      { "type": "color", "name": "Palette Color 164", "default": "199,130,108", "pos": "844" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 164‎  ‎  ‎  ‎", "alignment": "0", "pos": "847" },
      { "type": "bool", "name": "Color 164 Selected", "default": "0", "pos": "848" },
      { "type": "color", "name": "Palette Color 165", "default": "174,107,96", "pos": "849" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 165‎  ‎  ‎  ‎", "alignment": "0", "pos": "852" },
      { "type": "bool", "name": "Color 165 Selected", "default": "0", "pos": "853" },
      { "type": "color", "name": "Palette Color 166", "default": "138,82,88", "pos": "854" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 166‎  ‎  ‎  ‎", "alignment": "0", "pos": "857" },
      { "type": "bool", "name": "Color 166 Selected", "default": "0", "pos": "858" },
      { "type": "color", "name": "Palette Color 167", "default": "90,60,69", "pos": "859" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 167‎  ‎  ‎  ‎", "alignment": "0", "pos": "862" },
      { "type": "bool", "name": "Color 167 Selected", "default": "0", "pos": "863" },
      { "type": "color", "name": "Palette Color 168", "default": "59,48,60", "pos": "864" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 168‎  ‎  ‎  ‎", "alignment": "0", "pos": "867" },
      { "type": "bool", "name": "Color 168 Selected", "default": "0", "pos": "868" },
      { "type": "color", "name": "Palette Color 169", "default": "235,240,246", "pos": "869" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 169‎  ‎  ‎  ‎", "alignment": "0", "pos": "872" },
      { "type": "bool", "name": "Color 169 Selected", "default": "0", "pos": "873" },
      { "type": "color", "name": "Palette Color 170", "default": "186,199,219", "pos": "874" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 170‎  ‎  ‎  ‎", "alignment": "0", "pos": "877" },
      { "type": "bool", "name": "Color 170 Selected", "default": "0", "pos": "878" },
      { "type": "color", "name": "Palette Color 171", "default": "171,174,190", "pos": "879" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 171‎  ‎  ‎  ‎", "alignment": "0", "pos": "882" },
      { "type": "bool", "name": "Color 171 Selected", "default": "0", "pos": "883" },
      { "type": "color", "name": "Palette Color 172", "default": "132,135,149", "pos": "884" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 172‎  ‎  ‎  ‎", "alignment": "0", "pos": "887" },
      { "type": "bool", "name": "Color 172 Selected", "default": "0", "pos": "888" },
      { "type": "color", "name": "Palette Color 173", "default": "115,115,127", "pos": "889" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 173‎  ‎  ‎  ‎", "alignment": "0", "pos": "892" },
      { "type": "bool", "name": "Color 173 Selected", "default": "0", "pos": "893" },
      { "type": "color", "name": "Palette Color 174", "default": "91,92,105", "pos": "894" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 174‎  ‎  ‎  ‎", "alignment": "0", "pos": "897" },
      { "type": "bool", "name": "Color 174 Selected", "default": "0", "pos": "898" },
      { "type": "color", "name": "Palette Color 175", "default": "72,71,77", "pos": "899" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 175‎  ‎  ‎  ‎", "alignment": "0", "pos": "902" },
      { "type": "bool", "name": "Color 175 Selected", "default": "0", "pos": "903" },
      { "type": "color", "name": "Palette Color 176", "default": "45,49,54", "pos": "904" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 176‎  ‎  ‎  ‎", "alignment": "0", "pos": "907" },
      { "type": "bool", "name": "Color 176 Selected", "default": "0", "pos": "908" },
      { "type": "color", "name": "Palette Color 177", "default": "255,219,255", "pos": "909" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 177‎  ‎  ‎  ‎", "alignment": "0", "pos": "912" },
      { "type": "bool", "name": "Color 177 Selected", "default": "0", "pos": "913" },
      { "type": "color", "name": "Palette Color 178", "default": "255,187,199", "pos": "914" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 178‎  ‎  ‎  ‎", "alignment": "0", "pos": "917" },
      { "type": "bool", "name": "Color 178 Selected", "default": "0", "pos": "918" },
      { "type": "color", "name": "Palette Color 179", "default": "255,155,168", "pos": "919" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 179‎  ‎  ‎  ‎", "alignment": "0", "pos": "922" },
      { "type": "bool", "name": "Color 179 Selected", "default": "0", "pos": "923" },
      { "type": "color", "name": "Palette Color 180", "default": "255,118,118", "pos": "924" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 180‎  ‎  ‎  ‎", "alignment": "0", "pos": "927" },
      { "type": "bool", "name": "Color 180 Selected", "default": "0", "pos": "928" },
      { "type": "color", "name": "Palette Color 181", "default": "228,92,95", "pos": "929" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 181‎  ‎  ‎  ‎", "alignment": "0", "pos": "932" },
      { "type": "bool", "name": "Color 181 Selected", "default": "0", "pos": "933" },
      { "type": "color", "name": "Palette Color 182", "default": "182,60,53", "pos": "934" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 182‎  ‎  ‎  ‎", "alignment": "0", "pos": "937" },
      { "type": "bool", "name": "Color 182 Selected", "default": "0", "pos": "938" },
      { "type": "color", "name": "Palette Color 183", "default": "130,33,29", "pos": "939" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 183‎  ‎  ‎  ‎", "alignment": "0", "pos": "942" },
      { "type": "bool", "name": "Color 183 Selected", "default": "0", "pos": "943" },
      { "type": "color", "name": "Palette Color 184", "default": "94,7,17", "pos": "944" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 184‎  ‎  ‎  ‎", "alignment": "0", "pos": "947" },
      { "type": "bool", "name": "Color 184 Selected", "default": "0", "pos": "948" },
      { "type": "color", "name": "Palette Color 185", "default": "145,218,161", "pos": "949" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 185‎  ‎  ‎  ‎", "alignment": "0", "pos": "952" },
      { "type": "bool", "name": "Color 185 Selected", "default": "0", "pos": "953" },
      { "type": "color", "name": "Palette Color 186", "default": "85,182,125", "pos": "954" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 186‎  ‎  ‎  ‎", "alignment": "0", "pos": "957" },
      { "type": "bool", "name": "Color 186 Selected", "default": "0", "pos": "958" },
      { "type": "color", "name": "Palette Color 187", "default": "73,137,96", "pos": "959" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 187‎  ‎  ‎  ‎", "alignment": "0", "pos": "962" },
      { "type": "bool", "name": "Color 187 Selected", "default": "0", "pos": "963" },
      { "type": "color", "name": "Palette Color 188", "default": "65,116,85", "pos": "964" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 188‎  ‎  ‎  ‎", "alignment": "0", "pos": "967" },
      { "type": "bool", "name": "Color 188 Selected", "default": "0", "pos": "968" },
      { "type": "color", "name": "Palette Color 189", "default": "50,92,64", "pos": "969" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 189‎  ‎  ‎  ‎", "alignment": "0", "pos": "972" },
      { "type": "bool", "name": "Color 189 Selected", "default": "0", "pos": "973" },
      { "type": "color", "name": "Palette Color 190", "default": "56,81,64", "pos": "974" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 190‎  ‎  ‎  ‎", "alignment": "0", "pos": "977" },
      { "type": "bool", "name": "Color 190 Selected", "default": "0", "pos": "978" },
      { "type": "color", "name": "Palette Color 191", "default": "47,63,56", "pos": "979" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 191‎  ‎  ‎  ‎", "alignment": "0", "pos": "982" },
      { "type": "bool", "name": "Color 191 Selected", "default": "0", "pos": "983" },
      { "type": "color", "name": "Palette Color 192", "default": "26,51,44", "pos": "984" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 192‎  ‎  ‎  ‎", "alignment": "0", "pos": "987" },
      { "type": "bool", "name": "Color 192 Selected", "default": "0", "pos": "988" },
      { "type": "color", "name": "Palette Color 193", "default": "116,245,253", "pos": "989" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 193‎  ‎  ‎  ‎", "alignment": "0", "pos": "992" },
      { "type": "bool", "name": "Color 193 Selected", "default": "0", "pos": "993" },
      { "type": "color", "name": "Palette Color 194", "default": "82,210,255", "pos": "994" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 194‎  ‎  ‎  ‎", "alignment": "0", "pos": "997" },
      { "type": "bool", "name": "Color 194 Selected", "default": "0", "pos": "998" },
      { "type": "color", "name": "Palette Color 195", "default": "65,178,227", "pos": "999" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 195‎  ‎  ‎  ‎", "alignment": "0", "pos": "1002" },
      { "type": "bool", "name": "Color 195 Selected", "default": "0", "pos": "1003" },
      { "type": "color", "name": "Palette Color 196", "default": "49,142,184", "pos": "1004" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 196‎  ‎  ‎  ‎", "alignment": "0", "pos": "1007" },
      { "type": "bool", "name": "Color 196 Selected", "default": "0", "pos": "1008" },
      { "type": "color", "name": "Palette Color 197", "default": "54,107,138", "pos": "1009" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 197‎  ‎  ‎  ‎", "alignment": "0", "pos": "1012" },
      { "type": "bool", "name": "Color 197 Selected", "default": "0", "pos": "1013" },
      { "type": "color", "name": "Palette Color 198", "default": "37,70,107", "pos": "1014" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 198‎  ‎  ‎  ‎", "alignment": "0", "pos": "1017" },
      { "type": "bool", "name": "Color 198 Selected", "default": "0", "pos": "1018" },
      { "type": "color", "name": "Palette Color 199", "default": "35,50,77", "pos": "1019" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 199‎  ‎  ‎  ‎", "alignment": "0", "pos": "1022" },
      { "type": "bool", "name": "Color 199 Selected", "default": "0", "pos": "1023" },
      { "type": "color", "name": "Palette Color 200", "default": "24,31,47", "pos": "1024" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 200‎  ‎  ‎  ‎", "alignment": "0", "pos": "1027" },
      { "type": "bool", "name": "Color 200 Selected", "default": "0", "pos": "1028" },
      { "type": "color", "name": "Palette Color 201", "default": "166,204,52", "pos": "1029" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 201‎  ‎  ‎  ‎", "alignment": "0", "pos": "1032" },
      { "type": "bool", "name": "Color 201 Selected", "default": "0", "pos": "1033" },
      { "type": "color", "name": "Palette Color 202", "default": "125,164,45", "pos": "1034" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 202‎  ‎  ‎  ‎", "alignment": "0", "pos": "1037" },
      { "type": "bool", "name": "Color 202 Selected", "default": "0", "pos": "1038" },
      { "type": "color", "name": "Palette Color 203", "default": "81,136,34", "pos": "1039" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 203‎  ‎  ‎  ‎", "alignment": "0", "pos": "1042" },
      { "type": "bool", "name": "Color 203 Selected", "default": "0", "pos": "1043" },
      { "type": "color", "name": "Palette Color 204", "default": "47,105,12", "pos": "1044" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 204‎  ‎  ‎  ‎", "alignment": "0", "pos": "1047" },
      { "type": "bool", "name": "Color 204 Selected", "default": "0", "pos": "1048" },
      { "type": "color", "name": "Palette Color 205", "default": "34,89,24", "pos": "1049" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 205‎  ‎  ‎  ‎", "alignment": "0", "pos": "1052" },
      { "type": "bool", "name": "Color 205 Selected", "default": "0", "pos": "1053" },
      { "type": "color", "name": "Palette Color 206", "default": "23,74,27", "pos": "1054" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 206‎  ‎  ‎  ‎", "alignment": "0", "pos": "1057" },
      { "type": "bool", "name": "Color 206 Selected", "default": "0", "pos": "1058" },
      { "type": "color", "name": "Palette Color 207", "default": "0,50,33", "pos": "1059" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 207‎  ‎  ‎  ‎", "alignment": "0", "pos": "1062" },
      { "type": "bool", "name": "Color 207 Selected", "default": "0", "pos": "1063" },
      { "type": "color", "name": "Palette Color 208", "default": "0,34,25", "pos": "1064" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 208‎  ‎  ‎  ‎", "alignment": "0", "pos": "1067" },
      { "type": "bool", "name": "Color 208 Selected", "default": "0", "pos": "1068" },
      { "type": "color", "name": "Palette Color 209", "default": "198,236,255", "pos": "1069" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 209‎  ‎  ‎  ‎", "alignment": "0", "pos": "1072" },
      { "type": "bool", "name": "Color 209 Selected", "default": "0", "pos": "1073" },
      { "type": "color", "name": "Palette Color 210", "default": "199,214,255", "pos": "1074" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 210‎  ‎  ‎  ‎", "alignment": "0", "pos": "1077" },
      { "type": "bool", "name": "Color 210 Selected", "default": "0", "pos": "1078" },
      { "type": "color", "name": "Palette Color 211", "default": "150,178,217", "pos": "1079" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 211‎  ‎  ‎  ‎", "alignment": "0", "pos": "1082" },
      { "type": "bool", "name": "Color 211 Selected", "default": "0", "pos": "1083" },
      { "type": "color", "name": "Palette Color 212", "default": "134,144,178", "pos": "1084" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 212‎  ‎  ‎  ‎", "alignment": "0", "pos": "1087" },
      { "type": "bool", "name": "Color 212 Selected", "default": "0", "pos": "1088" },
      { "type": "color", "name": "Palette Color 213", "default": "122,119,153", "pos": "1089" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 213‎  ‎  ‎  ‎", "alignment": "0", "pos": "1092" },
      { "type": "bool", "name": "Color 213 Selected", "default": "0", "pos": "1093" },
      { "type": "color", "name": "Palette Color 214", "default": "97,95,132", "pos": "1094" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 214‎  ‎  ‎  ‎", "alignment": "0", "pos": "1097" },
      { "type": "bool", "name": "Color 214 Selected", "default": "0", "pos": "1098" },
      { "type": "color", "name": "Palette Color 215", "default": "58,69,104", "pos": "1099" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 215‎  ‎  ‎  ‎", "alignment": "0", "pos": "1102" },
      { "type": "bool", "name": "Color 215 Selected", "default": "0", "pos": "1103" },
      { "type": "color", "name": "Palette Color 216", "default": "40,43,74", "pos": "1104" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 216‎  ‎  ‎  ‎", "alignment": "0", "pos": "1107" },
      { "type": "bool", "name": "Color 216 Selected", "default": "0", "pos": "1108" },
      { "type": "color", "name": "Palette Color 217", "default": "255,233,73", "pos": "1109" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 217‎  ‎  ‎  ‎", "alignment": "0", "pos": "1112" },
      { "type": "bool", "name": "Color 217 Selected", "default": "0", "pos": "1113" },
      { "type": "color", "name": "Palette Color 218", "default": "255,188,78", "pos": "1114" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 218‎  ‎  ‎  ‎", "alignment": "0", "pos": "1117" },
      { "type": "bool", "name": "Color 218 Selected", "default": "0", "pos": "1118" },
      { "type": "color", "name": "Palette Color 219", "default": "249,155,78", "pos": "1119" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 219‎  ‎  ‎  ‎", "alignment": "0", "pos": "1122" },
      { "type": "bool", "name": "Color 219 Selected", "default": "0", "pos": "1123" },
      { "type": "color", "name": "Palette Color 220", "default": "227,120,64", "pos": "1124" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 220‎  ‎  ‎  ‎", "alignment": "0", "pos": "1127" },
      { "type": "bool", "name": "Color 220 Selected", "default": "0", "pos": "1128" },
      { "type": "color", "name": "Palette Color 221", "default": "205,94,70", "pos": "1129" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 221‎  ‎  ‎  ‎", "alignment": "0", "pos": "1132" },
      { "type": "bool", "name": "Color 221 Selected", "default": "0", "pos": "1133" },
      { "type": "color", "name": "Palette Color 222", "default": "182,77,70", "pos": "1134" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 222‎  ‎  ‎  ‎", "alignment": "0", "pos": "1137" },
      { "type": "bool", "name": "Color 222 Selected", "default": "0", "pos": "1138" },
      { "type": "color", "name": "Palette Color 223", "default": "148,54,58", "pos": "1139" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 223‎  ‎  ‎  ‎", "alignment": "0", "pos": "1142" },
      { "type": "bool", "name": "Color 223 Selected", "default": "0", "pos": "1143" },
      { "type": "color", "name": "Palette Color 224", "default": "102,43,41", "pos": "1144" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 224‎  ‎  ‎  ‎", "alignment": "0", "pos": "1147" },
      { "type": "bool", "name": "Color 224 Selected", "default": "0", "pos": "1148" },
      { "type": "color", "name": "Palette Color 225", "default": "136,214,255", "pos": "1149" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 225‎  ‎  ‎  ‎", "alignment": "0", "pos": "1152" },
      { "type": "bool", "name": "Color 225 Selected", "default": "0", "pos": "1153" },
      { "type": "color", "name": "Palette Color 226", "default": "36,174,214", "pos": "1154" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 226‎  ‎  ‎  ‎", "alignment": "0", "pos": "1157" },
      { "type": "bool", "name": "Color 226 Selected", "default": "0", "pos": "1158" },
      { "type": "color", "name": "Palette Color 227", "default": "50,140,167", "pos": "1159" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 227‎  ‎  ‎  ‎", "alignment": "0", "pos": "1162" },
      { "type": "bool", "name": "Color 227 Selected", "default": "0", "pos": "1163" },
      { "type": "color", "name": "Palette Color 228", "default": "0,111,137", "pos": "1164" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 228‎  ‎  ‎  ‎", "alignment": "0", "pos": "1167" },
      { "type": "bool", "name": "Color 228 Selected", "default": "0", "pos": "1168" },
      { "type": "color", "name": "Palette Color 229", "default": "11,102,127", "pos": "1169" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 229‎  ‎  ‎  ‎", "alignment": "0", "pos": "1172" },
      { "type": "bool", "name": "Color 229 Selected", "default": "0", "pos": "1173" },
      { "type": "color", "name": "Palette Color 230", "default": "0,77,94", "pos": "1174" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 230‎  ‎  ‎  ‎", "alignment": "0", "pos": "1177" },
      { "type": "bool", "name": "Color 230 Selected", "default": "0", "pos": "1178" },
      { "type": "color", "name": "Palette Color 231", "default": "0,56,80", "pos": "1179" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 231‎  ‎  ‎  ‎", "alignment": "0", "pos": "1182" },
      { "type": "bool", "name": "Color 231 Selected", "default": "0", "pos": "1183" },
      { "type": "color", "name": "Palette Color 232", "default": "0,39,53", "pos": "1184" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 232‎  ‎  ‎  ‎", "alignment": "0", "pos": "1187" },
      { "type": "bool", "name": "Color 232 Selected", "default": "0", "pos": "1188" },
      { "type": "color", "name": "Palette Color 233", "default": "255,206,127", "pos": "1189" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 233‎  ‎  ‎  ‎", "alignment": "0", "pos": "1192" },
      { "type": "bool", "name": "Color 233 Selected", "default": "0", "pos": "1193" },
      { "type": "color", "name": "Palette Color 234", "default": "251,170,132", "pos": "1194" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 234‎  ‎  ‎  ‎", "alignment": "0", "pos": "1197" },
      { "type": "bool", "name": "Color 234 Selected", "default": "0", "pos": "1198" },
      { "type": "color", "name": "Palette Color 235", "default": "213,141,107", "pos": "1199" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 235‎  ‎  ‎  ‎", "alignment": "0", "pos": "1202" },
      { "type": "bool", "name": "Color 235 Selected", "default": "0", "pos": "1203" },
      { "type": "color", "name": "Palette Color 236", "default": "173,110,81", "pos": "1204" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 236‎  ‎  ‎  ‎", "alignment": "0", "pos": "1207" },
      { "type": "bool", "name": "Color 236 Selected", "default": "0", "pos": "1208" },
      { "type": "color", "name": "Palette Color 237", "default": "154,98,76", "pos": "1209" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 237‎  ‎  ‎  ‎", "alignment": "0", "pos": "1212" },
      { "type": "bool", "name": "Color 237 Selected", "default": "0", "pos": "1213" },
      { "type": "color", "name": "Palette Color 238", "default": "136,80,65", "pos": "1214" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 238‎  ‎  ‎  ‎", "alignment": "0", "pos": "1217" },
      { "type": "bool", "name": "Color 238 Selected", "default": "0", "pos": "1218" },
      { "type": "color", "name": "Palette Color 239", "default": "115,61,59", "pos": "1219" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 239‎  ‎  ‎  ‎", "alignment": "0", "pos": "1222" },
      { "type": "bool", "name": "Color 239 Selected", "default": "0", "pos": "1223" },
      { "type": "color", "name": "Palette Color 240", "default": "88,49,38", "pos": "1224" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 240‎  ‎  ‎  ‎", "alignment": "0", "pos": "1227" },
      { "type": "bool", "name": "Color 240 Selected", "default": "0", "pos": "1228" },
      { "type": "color", "name": "Palette Color 241", "default": "255,243,214", "pos": "1229" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 241‎  ‎  ‎  ‎", "alignment": "0", "pos": "1232" },
      { "type": "bool", "name": "Color 241 Selected", "default": "0", "pos": "1233" },
      { "type": "color", "name": "Palette Color 242", "default": "234,219,201", "pos": "1234" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 242‎  ‎  ‎  ‎", "alignment": "0", "pos": "1237" },
      { "type": "bool", "name": "Color 242 Selected", "default": "0", "pos": "1238" },
      { "type": "color", "name": "Palette Color 243", "default": "204,195,177", "pos": "1239" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 243‎  ‎  ‎  ‎", "alignment": "0", "pos": "1242" },
      { "type": "bool", "name": "Color 243 Selected", "default": "0", "pos": "1243" },
      { "type": "color", "name": "Palette Color 244", "default": "187,175,164", "pos": "1244" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 244‎  ‎  ‎  ‎", "alignment": "0", "pos": "1247" },
      { "type": "bool", "name": "Color 244 Selected", "default": "0", "pos": "1248" },
      { "type": "color", "name": "Palette Color 245", "default": "174,161,137", "pos": "1249" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 245‎  ‎  ‎  ‎", "alignment": "0", "pos": "1252" },
      { "type": "bool", "name": "Color 245 Selected", "default": "0", "pos": "1253" },
      { "type": "color", "name": "Palette Color 246", "default": "158,140,121", "pos": "1254" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 246‎  ‎  ‎  ‎", "alignment": "0", "pos": "1257" },
      { "type": "bool", "name": "Color 246 Selected", "default": "0", "pos": "1258" },
      { "type": "color", "name": "Palette Color 247", "default": "133,117,101", "pos": "1259" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 247‎  ‎  ‎  ‎", "alignment": "0", "pos": "1262" },
      { "type": "bool", "name": "Color 247 Selected", "default": "0", "pos": "1263" },
      { "type": "color", "name": "Palette Color 248", "default": "98,93,84", "pos": "1264" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 248‎  ‎  ‎  ‎", "alignment": "0", "pos": "1267" },
      { "type": "bool", "name": "Color 248 Selected", "default": "0", "pos": "1268" },
      { "type": "color", "name": "Palette Color 249", "default": "245,247,250", "pos": "1269" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 249‎  ‎  ‎  ‎", "alignment": "0", "pos": "1272" },
      { "type": "bool", "name": "Color 249 Selected", "default": "0", "pos": "1273" },
      { "type": "color", "name": "Palette Color 250", "default": "205,210,218", "pos": "1274" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 250‎  ‎  ‎  ‎", "alignment": "0", "pos": "1277" },
      { "type": "bool", "name": "Color 250 Selected", "default": "0", "pos": "1278" },
      { "type": "color", "name": "Palette Color 251", "default": "166,174,186", "pos": "1279" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 251‎  ‎  ‎  ‎", "alignment": "0", "pos": "1282" },
      { "type": "bool", "name": "Color 251 Selected", "default": "0", "pos": "1283" },
      { "type": "color", "name": "Palette Color 252", "default": "130,139,152", "pos": "1284" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 252‎  ‎  ‎  ‎", "alignment": "0", "pos": "1287" },
      { "type": "bool", "name": "Color 252 Selected", "default": "0", "pos": "1288" },
      { "type": "color", "name": "Palette Color 253", "default": "98,104,113", "pos": "1289" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 253‎  ‎  ‎  ‎", "alignment": "0", "pos": "1292" },
      { "type": "bool", "name": "Color 253 Selected", "default": "0", "pos": "1293" },
      { "type": "color", "name": "Palette Color 254", "default": "67,69,73", "pos": "1294" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 254‎  ‎  ‎  ‎", "alignment": "0", "pos": "1297" },
      { "type": "bool", "name": "Color 254 Selected", "default": "0", "pos": "1298" },
      { "type": "color", "name": "Palette Color 255", "default": "34,35,35", "pos": "1299" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 255‎  ‎  ‎  ‎", "alignment": "0", "pos": "1302" },
      { "type": "bool", "name": "Color 255 Selected", "default": "0", "pos": "1303" },
      { "type": "color", "name": "Palette Color 256", "default": "0,0,0", "pos": "1304" },
      { "type": "button", "name": "‎  ‎  ‎  ‎Delete Color 256‎  ‎  ‎  ‎", "alignment": "0", "pos": "1307" },
      { "type": "bool", "name": "Color 256 Selected", "default": "0", "pos": "1308" },
      { "type": "separator" },
      { "type": "button", "name": "‎  ‎  ‎  Add Palette Color‎  ‎ ‎  ‎‎", "alignment": "0", "pos": "1309" },
      { "type": "button", "name": "Delete All Selected Palette", "alignment": "0", "pos": "1310" },
      { "type": "separator" },
      { "type": "note", "text": "RGB Output" },
      { "type": "int", "name": "Pixel Width", "default": "1", "min": "1", "max": "8", "pos": "1311" },
      { "type": "int", "name": "Pixel Height", "default": "1", "min": "1", "max": "8", "pos": "1312" },
      { "type": "int", "name": "Windows Width", "default": "1", "min": "1", "max": "128", "pos": "1313" },
      { "type": "bool", "name": "Use Image Width as Windows Width", "default": "0", "pos": "1314" },
      { "type": "int", "name": "Windows Height", "default": "1", "min": "1", "max": "128", "pos": "1315" },
      { "type": "bool", "name": "Use Image Height as Windows Height", "default": "0", "pos": "1316" },
      { "type": "int", "name": "Threshold Map Iteration", "default": "3", "min": "1", "max": "6", "pos": "1317" },
      { "type": "separator" },
      { "type": "note", "text": "Alpha Output" },
      { "type": "bool", "name": "Enable Alpha Processing", "default": "0", "pos": "1318" },
      { "type": "int", "name": "Number of Alpha", "default": "2", "min": "2", "max": "256", "pos": "1319" },
      { "type": "float", "name": "Alpha Dithering (%)", "default": "50", "min": "0", "max": "100", "pos": "1320" },
      { "type": "choice", "name": "Alpha Mode", "default": "0", "pos": "1321", "choices": { "0": "Indexed", "1": "Windows-Based Indexing", "2": "Ordered" } },
      { "type": "choice", "name": "Alpha Mode", "default": "0", "pos": "1322", "choices": { "0": "Indexed", "1": "Ordered" } },
      { "type": "int", "name": "Alpha Restriction", "default": "0", "min": "0", "max": "128", "pos": "1323" },
      { "type": "int", "name": "Alpha Threshold Map Iteration", "default": "3", "min": "1", "max": "6", "pos": "1324" },
      { "type": "note", "text": "If this section is empty, it is because there is no alpha on any images." },
      { "type": "separator" },
      { "type": "note", "text": "CLI Command" },
      { "type": "text", "name": "CLI version", "default": "Here is where you copy command to command line interface.", "pos": "1325" },
      { "type": "file", "name": "Import Palette File", "default": "", "pos": "1326", "visibility": "0" },
      { "type": "bool", "name": "Imported", "default": "0", "pos": "1327", "visibility": "0" },
      { "type": "note", "text": "Note: Here is where you copy command to command line interface. " },
      { "type": "separator" },
      { "type": "note", "text": "Post-Processing" },
      { "type": "bool", "name": "Crop to Original Dimension", "default": "1", "pos": "1328" },
      { "type": "text", "name": "Message Out", "default": "Initialized GUI Filter!", "pos": "1329" },
      { "type": "int", "name": "Status", "default": "0", "min": "0", "max": "3", "pos": "1330", "visibility": "0" },
      { "type": "color", "name": "Color Status", "default": "255,255,255", "pos": "1331" },
      { "type": "separator" },
      { "type": "note", "text": "Preview" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "1334", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "1335", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian Latest update: 2023/9/11." }
      ]
    },
    {
      "name": "Trigonometry Mapping", "lang": "en", "command": "fx_rep_tg3", "command_preview": "fx_rep_tg3_preview", "parameters": [
      { "type": "note", "text": "Processing" },
      { "type": "choice", "name": "Colour Space", "default": "0", "pos": "1", "choices": { "0": "RGB-8", "1": "RYB-8", "2": "CMY-8", "3": "HSI-8", "4": "HSL-8", "5": "HSV-8", "6": "LAB-8", "7": "LCH-8", "8": "YIQ-8", "9": "YUV-8", "10": "XYZ-8", "11": "YES-8", "12": "OHTA-8", "13": "Kodak 1-8" } },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "2", "choices": { "0": "Direct Trig-3", "1": "Luminosity to Trig-3" } },
      { "type": "bool", "name": "Preserve Luminosity", "default": "1", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Mapping" },
      { "type": "choice", "name": "Channel Order", "default": "0", "pos": "4", "choices": { "0": "First-Second-Third", "1": "First-Third-Second", "2": "Second-First-Third", "3": "Second-Third-First", "4": "Third-First-Second", "5": "Third-Second-Third" } },
      { "type": "choice", "name": "Channel", "default": "0", "pos": "5", "choices": { "0": "First", "1": "Second", "2": "Third" } },
      { "type": "choice", "name": "Channel", "default": "0", "pos": "6", "choices": { "0": "First", "1": "Third", "2": "Second" } },
      { "type": "choice", "name": "Channel", "default": "0", "pos": "7", "choices": { "0": "Second", "1": "First", "2": "Third" } },
      { "type": "choice", "name": "Channel", "default": "0", "pos": "8", "choices": { "0": "Second", "1": "Third", "2": "First" } },
      { "type": "choice", "name": "Channel", "default": "0", "pos": "9", "choices": { "0": "Third", "1": "First", "2": "Second" } },
      { "type": "choice", "name": "Channel", "default": "0", "pos": "10", "choices": { "0": "Third", "1": "Second", "2": "First" } },
      { "type": "choice", "name": "Formula", "default": "0", "pos": "11", "choices": { "0": "Sinusoidal", "1": "Cosinusodial", "2": "Cubic Sinusoidal", "3": "Cubic Cosinusodial", "4": "Cubic Sinusoidal-Cosinusodial" } },
      { "type": "float", "name": "Multiplier", "default": "1", "min": ".1", "max": "5", "pos": "12" },
      { "type": "float", "name": "Value Shift", "default": "0", "min": "-1", "max": "1", "pos": "13" },
      { "type": "float", "name": "Midgray Exponential Factor", "default": "1", "min": ".01", "max": "2", "pos": "14" },
      { "type": "float", "name": "Lightness Merge Factor", "default": "1", "min": "0", "max": "1", "pos": "15" },
      { "type": "float", "name": "Lightness Exponential Factor", "default": "1", "min": ".01", "max": "5", "pos": "16" },
      { "type": "float", "name": "End Value to Base Factor", "default": "1", "min": "0", "max": "1", "pos": "17" },
      { "type": "choice", "name": "Formula", "default": "0", "pos": "18", "choices": { "0": "Sinusoidal", "1": "Cosinusodial", "2": "Cubic Sinusoidal", "3": "Cubic Cosinusodial", "4": "Cubic Sinusoidal-Cosinusodial" } },
      { "type": "float", "name": "Multiplier", "default": "1", "min": ".1", "max": "5", "pos": "19" },
      { "type": "float", "name": "Value Shift", "default": "0", "min": "-1", "max": "1", "pos": "20" },
      { "type": "float", "name": "Midgray Exponential Factor", "default": "1", "min": ".01", "max": "2", "pos": "21" },
      { "type": "float", "name": "Lightness Merge Factor", "default": "1", "min": "0", "max": "1", "pos": "22" },
      { "type": "float", "name": "Lightness Exponential Factor", "default": "1", "min": ".01", "max": "5", "pos": "23" },
      { "type": "float", "name": "End Value to Base Factor", "default": "1", "min": "0", "max": "1", "pos": "24" },
      { "type": "choice", "name": "Formula", "default": "0", "pos": "25", "choices": { "0": "Sinusoidal", "1": "Cosinusodial", "2": "Cubic Sinusoidal", "3": "Cubic Cosinusodial", "4": "Cubic Sinusoidal-Cosinusodial" } },
      { "type": "float", "name": "Multiplier", "default": "1", "min": ".1", "max": "5", "pos": "26" },
      { "type": "float", "name": "Value Shift", "default": "0", "min": "-1", "max": "1", "pos": "27" },
      { "type": "float", "name": "Midgray Exponential Factor", "default": "1", "min": ".01", "max": "2", "pos": "28" },
      { "type": "float", "name": "Lightness Merge Factor", "default": "1", "min": "0", "max": "1", "pos": "29" },
      { "type": "float", "name": "Lightness Exponential Factor", "default": "1", "min": ".01", "max": "5", "pos": "30" },
      { "type": "float", "name": "End Value to Base Factor", "default": "1", "min": "0", "max": "1", "pos": "31" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "32", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "33", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian Latest update: 2020/8/9." }
      ]
    },
    {
      "name": "Tupper's Self-Referential Formula", "lang": "en", "command": "fx_rep_self_referential_formula", "command_preview": "fx_rep_self_referential_formula_preview", "parameters": [
      { "type": "note", "text": "This filter is to be seen as a showcase filter.\n\nNote - To get the most feature of this filter, you must use a single image of size 106x17.\n\nWarning! - Do not use on images that are not much larger than 300x300. Due to the lack of BIGINT support inside G'MIC, the implementation is quite slow." },
      { "type": "separator" },
      { "type": "note", "text": "Main" },
      { "type": "choice", "name": "Mode", "default": "1", "pos": "1", "choices": { "0": "Generate Image from K", "1": "Find K from Images" } },
      { "type": "choice", "name": "Mode", "default": "1", "pos": "2", "choices": { "0": "Generate Image from K", "1": "Find K from Images" }, "visibility": "0" },
      { "type": "choice", "name": "K Input", "default": "0", "pos": "3", "choices": { "0": "User", "1": "Tupper's Self-Referential Formula", "2": "Euler's Identity", "3": "Pacman", "4": "Sick App Bro! - Daves" } },
      { "type": "choice", "name": "K Input", "default": "0", "pos": "4", "choices": { "0": "User", "1": "Tupper's Self-Referential Formula", "2": "Euler's Identity", "3": "Pacman", "4": "Sick App Bro! - Daves" }, "visibility": "0" },
      { "type": "text", "name": "K Value", "default": "1", "pos": "5" },
      { "type": "text", "name": "K Value", "default": "0", "pos": "6", "visibility": "0" },
      { "type": "text", "name": "Predefined K value", "default": "1", "pos": "7" },
      { "type": "text", "name": "Predefined K value", "default": "0", "pos": "8", "visibility": "0" },
      { "type": "button", "name": "Copy from Stored K Value", "pos": "9" },
      { "type": "bool", "name": "Negate after using K-Input result?", "default": "1", "pos": "10" },
      { "type": "bool", "name": "Negate after using K-Input result?", "default": "1", "pos": "11", "visibility": "0" },
      { "type": "text", "name": "K Values from Image(s)", "default": "1", "pos": "12" },
      { "type": "text", "name": "Stored K value(s) from Images", "default": "1", "pos": "13", "visibility": "0" },
      { "type": "bool", "name": "Pre-Negation?", "default": "1", "pos": "14" },
      { "type": "bool", "name": "Pre-Negation?", "default": "1", "pos": "15", "visibility": "0" },
      { "type": "bool", "name": "Allow Examples", "default": "1", "pos": "16", "visibility": "0" },
      { "type": "bool", "name": "Allow Mode Switch?", "default": "1", "pos": "17", "visibility": "0" },
      { "type": "bool", "name": "Started", "default": "0", "pos": "18", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "<u>Details</u>" },
      { "type": "note", "text": "Tupper's Self Referential Formula refers to a formula which refers to itself when a specific value is assigned. This was founded by Jeff Tupper.\n\nK Values for pre-defined K Inputs are based from <a href=\"https://keelyhill.github.io/tuppers-formula/\">Tupper's Self-Referential Formula Playground</a> and <a href=\"http://campus.lakeforest.edu/trevino/Tupper_Paper.pdf\">Tupper Paper</a> by Margaret Fortman." },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2023/01/19." }
      ]
    },
    {
      "name": "Vibrance [YCH]", "lang": "en", "command": "fx_rep_vibrance_ych", "command_preview": "fx_rep_vibrance_ych_preview", "parameters": [
      { "type": "float", "name": "Vibrance(%)", "default": "30", "min": "-100", "max": "100", "pos": "1" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "2", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "3", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2022/07/05." }
      ]
    },
    {
      "name": "Vibrato", "lang": "en", "command": "fx_vibrato", "command_preview": "_fx_vibrato_preview", "parameters": [
      { "type": "note", "text": "This is the advanced version of the Vibrato filter. If you do want to manipulate multiple channels at once, use <u>Vibrato - Basic</u> filter. Note: Disable channel mulplication for non-transparent images. \n\n" },
      { "type": "note", "text": "This filter is the one of the G'MIC version of MadJik's Paint.NET plugin" },
      { "type": "separator" },
      { "type": "choice", "name": "Colour Space", "default": "0", "pos": "1", "choices": { "0": "RGB", "1": "CMY", "2": "HSI", "3": "HSL", "4": "HSV", "5": "LAB", "6": "LCH", "7": "YCbCr", "8": "YCbCr-Glic", "9": "YUV", "10": "YIQ", "11": "XYZ", "12": "Bayer" } },
      { "type": "separator" },
      { "type": "bool", "name": "Manipulate Multiple Channels at Once?", "default": "1", "pos": "2" },
      { "type": "bool", "name": "Process Channel 1?", "default": "1", "pos": "3" },
      { "type": "bool", "name": "Process Channel 2?", "default": "1", "pos": "4" },
      { "type": "bool", "name": "Process Channel 3?", "default": "1", "pos": "5" },
      { "type": "bool", "name": "Process Alpha Channel?", "default": "1", "pos": "6" },
      { "type": "bool", "name": "Inherit Alpha?", "default": "1", "pos": "7" },
      { "type": "bool", "name": "X-Orientation", "default": "1", "pos": "8" },
      { "type": "bool", "name": "Y-Orientation", "default": "1", "pos": "9" },
      { "type": "float", "name": "U- Factor", "default": ".85", "min": ".1", "max": "15", "pos": "10" },
      { "type": "float", "name": "V- Factor", "default": ".85", "min": ".1", "max": "15", "pos": "11" },
      { "type": "float", "name": "X-Scale Factor", "default": "1", "min": ".1", "max": "15", "pos": "12" },
      { "type": "float", "name": "Y-Scale Factor", "default": "1", "min": ".1", "max": "15", "pos": "13" },
      { "type": "float", "name": "XY-Scale Factor", "default": "1", "min": ".1", "max": "3", "pos": "14" },
      { "type": "float", "name": "Percentage-Based X Pixel Shift", "default": "0", "min": "-200", "max": "200", "pos": "15" },
      { "type": "float", "name": "Percentage-Based Y Pixel Shift", "default": "0", "min": "-200", "max": "200", "pos": "16" },
      { "type": "float", "name": "Elevation", "default": ".7", "min": "-100", "max": "100", "pos": "17" },
      { "type": "bool", "name": "Multiply Blending", "default": "0", "pos": "18" },
      { "type": "bool", "name": "Invert Vibrato", "default": "0", "pos": "19" },
      { "type": "float", "name": "Vibrato Blending Factor", "default": "100", "min": "0", "max": "100", "pos": "20" },
      { "type": "float", "name": "Channel Influence Factor", "default": "1", "min": "-8", "max": "8", "pos": "21" },
      { "type": "float", "name": "Final Channel Modulos Multiplication Factor", "default": "1", "min": "1", "max": "32", "pos": "22" },
      { "type": "separator" },
      { "type": "note", "text": "- Channel #1 - " },
      { "type": "bool", "name": "Process Channel?", "default": "1", "pos": "23" },
      { "type": "bool", "name": "X-Orientation", "default": "1", "pos": "24" },
      { "type": "bool", "name": "Y-Orientation", "default": "1", "pos": "25" },
      { "type": "float", "name": "U-Factor", "default": ".85", "min": ".1", "max": "15", "pos": "26" },
      { "type": "float", "name": "V-Factor", "default": ".85", "min": ".1", "max": "15", "pos": "27" },
      { "type": "float", "name": "X-Scale Factor", "default": "1", "min": ".1", "max": "15", "pos": "28" },
      { "type": "float", "name": "Y-Scale Factor", "default": "1", "min": ".1", "max": "15", "pos": "29" },
      { "type": "float", "name": "XY-Scale Factor", "default": "1", "min": ".1", "max": "3", "pos": "30" },
      { "type": "float", "name": "Percentage-Based X Pixel Shift", "default": "0", "min": "-200", "max": "200", "pos": "31" },
      { "type": "float", "name": "Percentage-Based Y Pixel Shift", "default": "0", "min": "-200", "max": "200", "pos": "32" },
      { "type": "float", "name": "Elevation", "default": ".7", "min": "-100", "max": "100", "pos": "33" },
      { "type": "bool", "name": "Multiply Blending", "default": "0", "pos": "34" },
      { "type": "bool", "name": "Invert Vibrato", "default": "0", "pos": "35" },
      { "type": "float", "name": "Vibrato Blending Factor", "default": "100", "min": "0", "max": "100", "pos": "36" },
      { "type": "float", "name": "Channel Influence Factor", "default": "1", "min": "-8", "max": "8", "pos": "37" },
      { "type": "float", "name": "Final Channel Modulos Multiplication Factor", "default": "1", "min": "1", "max": "32", "pos": "38" },
      { "type": "separator" },
      { "type": "note", "text": "- Channel #2 - " },
      { "type": "bool", "name": "Process Channel?", "default": "1", "pos": "39" },
      { "type": "bool", "name": "X-Orientation", "default": "1", "pos": "40" },
      { "type": "bool", "name": "Y-Orientation", "default": "1", "pos": "41" },
      { "type": "float", "name": "U-Factor", "default": ".85", "min": ".1", "max": "15", "pos": "42" },
      { "type": "float", "name": "V-Factor", "default": ".85", "min": ".1", "max": "15", "pos": "43" },
      { "type": "float", "name": "X-Scale Factor", "default": "1", "min": ".1", "max": "15", "pos": "44" },
      { "type": "float", "name": "Y-Scale Factor", "default": "1", "min": ".1", "max": "15", "pos": "45" },
      { "type": "float", "name": "XY-Scale Factor", "default": "1", "min": ".1", "max": "3", "pos": "46" },
      { "type": "float", "name": "Percentage-Based X Pixel Shift", "default": "0", "min": "-200", "max": "200", "pos": "47" },
      { "type": "float", "name": "Percentage-Based Y Pixel Shift", "default": "0", "min": "-200", "max": "200", "pos": "48" },
      { "type": "float", "name": "Elevation", "default": ".7", "min": "-100", "max": "100", "pos": "49" },
      { "type": "bool", "name": "Multiply Blending", "default": "0", "pos": "50" },
      { "type": "bool", "name": "Invert Vibrato", "default": "0", "pos": "51" },
      { "type": "float", "name": "Vibrato Blending Factor", "default": "100", "min": "0", "max": "100", "pos": "52" },
      { "type": "float", "name": "Channel Influence Factor", "default": "1", "min": "-8", "max": "8", "pos": "53" },
      { "type": "float", "name": "Final Channel Modulos Multiplication Factor", "default": "1", "min": "1", "max": "32", "pos": "54" },
      { "type": "separator" },
      { "type": "note", "text": "- Channel #3 - " },
      { "type": "bool", "name": "Process Channel?", "default": "1", "pos": "55" },
      { "type": "bool", "name": "X-Orientation", "default": "1", "pos": "56" },
      { "type": "bool", "name": "Y-Orientation", "default": "1", "pos": "57" },
      { "type": "float", "name": "U-Factor", "default": ".85", "min": ".1", "max": "15", "pos": "58" },
      { "type": "float", "name": "V-Factor", "default": ".85", "min": ".1", "max": "15", "pos": "59" },
      { "type": "float", "name": "X-Scale Factor", "default": "1", "min": ".1", "max": "15", "pos": "60" },
      { "type": "float", "name": "Y-Scale Factor", "default": "1", "min": ".1", "max": "15", "pos": "61" },
      { "type": "float", "name": "XY-Scale Factor", "default": "1", "min": ".1", "max": "3", "pos": "62" },
      { "type": "float", "name": "Percentage-Based X Pixel Shift", "default": "0", "min": "-200", "max": "200", "pos": "63" },
      { "type": "float", "name": "Percentage-Based Y Pixel Shift", "default": "0", "min": "-200", "max": "200", "pos": "64" },
      { "type": "float", "name": "Elevation", "default": ".7", "min": "-100", "max": "100", "pos": "65" },
      { "type": "bool", "name": "Multiply Blending", "default": "0", "pos": "66" },
      { "type": "bool", "name": "Invert Vibrato", "default": "0", "pos": "67" },
      { "type": "float", "name": "Vibrato Blending Factor", "default": "100", "min": "0", "max": "100", "pos": "68" },
      { "type": "float", "name": "Channel Influence Factor", "default": "1", "min": "-8", "max": "8", "pos": "69" },
      { "type": "float", "name": "Final Channel Modulos Multiplication Factor", "default": "1", "min": "1", "max": "32", "pos": "70" },
      { "type": "separator" },
      { "type": "note", "text": "- Alpha Channel #1 - " },
      { "type": "bool", "name": "Process Channel?", "default": "0", "pos": "71" },
      { "type": "bool", "name": "X-Orientation", "default": "1", "pos": "72" },
      { "type": "bool", "name": "Y-Orientation", "default": "1", "pos": "73" },
      { "type": "float", "name": "U-Factor", "default": ".85", "min": ".1", "max": "15", "pos": "74" },
      { "type": "float", "name": "V-Factor", "default": ".85", "min": ".1", "max": "15", "pos": "75" },
      { "type": "float", "name": "X-Scale Factor", "default": "1", "min": ".1", "max": "15", "pos": "76" },
      { "type": "float", "name": "Y-Scale Factor", "default": "1", "min": ".1", "max": "15", "pos": "77" },
      { "type": "float", "name": "XY-Scale Factor", "default": "1", "min": ".1", "max": "3", "pos": "78" },
      { "type": "float", "name": "Percentage-Based X Pixel Shift", "default": "0", "min": "-200", "max": "200", "pos": "79" },
      { "type": "float", "name": "Percentage-Based Y Pixel Shift", "default": "0", "min": "-200", "max": "200", "pos": "80" },
      { "type": "float", "name": "Elevation", "default": ".7", "min": "-100", "max": "100", "pos": "81" },
      { "type": "bool", "name": "Multiply Blending", "default": "1", "pos": "82" },
      { "type": "bool", "name": "Invert Vibrato", "default": "0", "pos": "83" },
      { "type": "float", "name": "Vibrato Blending Factor", "default": "100", "min": "0", "max": "100", "pos": "84" },
      { "type": "float", "name": "Channel Influence Factor", "default": "1", "min": "-8", "max": "8", "pos": "85" },
      { "type": "float", "name": "Final Channel Modulos Multiplication Factor", "default": "1", "min": "1", "max": "32", "pos": "86" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "87", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian Latest update: 2018/12/19." }
      ]
    },
    {
      "name": "Weighted RGB To Grayscale", "lang": "en", "command": "fx_rep_w_rgb82gray", "command_preview": "fx_rep_w_rgb82gray_preview", "parameters": [
      { "type": "note", "text": "Weigh the R-G-B Channel, and then output based on their weight" },
      { "type": "separator" },
      { "type": "note", "text": "Main RGB to Grayscale" },
      { "type": "float", "name": "Red Weight(%)", "default": "33.33", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Green Weight(%)", "default": "33.33", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Blue Weight(%)", "default": "33.33", "min": "0", "max": "100", "pos": "3" },
      { "type": "bool", "name": "Use Weighted Ratio?", "default": "1", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Min-Max Value" },
      { "type": "float", "name": "Min Value Weight(%)", "default": "0", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "Max Value Weight(%)", "default": "0", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "Min-Max Interpolation", "default": "0", "min": "0", "max": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Post-Process Adjustment" },
      { "type": "float", "name": "Value Shift", "default": "0", "min": "-128", "max": "128", "pos": "8" },
      { "type": "float", "name": "Midgray Shift", "default": "0", "min": "-1", "max": "1", "pos": "9" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "10", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "11", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2021/6/25." }
      ]
    },
    {
      "name": "Z-Time", "lang": "en", "command": "fx_rep_z_render", "command_preview": "", "parameters": [
      { "type": "note", "text": "Z-Time Rendering is a filter that utilize the value of a layer to represent the frame where frames are interpolated and normalized to the value of that layer. In other word, the reference layer can be seen as a representative of time.Note:Try to use a gradient for top or bottom layer depending on option you use.\n\nZ-Depth Values is recommended to be altered when using float image as reference. Use values less than 255 in order to posterize.\n\nThis filter do not work with Paint.NET as you need 3 images!" },
      { "type": "separator" },
      { "type": "choice", "name": "Layer to use as time reference?", "default": "0", "pos": "1", "choices": { "0": "Top Layer", "1": "Bottom Layer" } },
      { "type": "int", "name": "Z-Depth Values", "default": "255", "min": "3", "max": "1024", "pos": "2" },
      { "type": "bool", "name": "Mirror Frame Ordering?", "default": "0", "pos": "3" },
      { "type": "bool", "name": "Separate time by channels?", "default": "0", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Reptorian. Latest Update: 2019/10/13." }
      ]
    }
    ]
  },
  {
    "name": "RL", "filters": [
    {
      "name": "Plasma Transition", "lang": "en", "command": "plasma_transition", "command_preview": "plasma_transition", "parameters": [
      { "type": "float", "name": "Balance", "default": "0.5", "min": "0", "max": "1", "pos": "1" },
      { "type": "int", "name": "Scale", "default": "5", "min": "0", "max": "50", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "1", "min": "0", "max": "10", "pos": "3" },
      { "type": "int", "name": "Random Initialization", "default": "42", "min": "1", "max": "100", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Authors: Jean-Baptiste Rolland, Julien Levillain.      Latest update: 2013/28/03." }
      ]
    },
    {
      "name": "RandomWaves", "lang": "en", "command": "randomwaves", "command_preview": "randomwaves", "parameters": [
      { "type": "int", "name": "Steps Number", "default": "84", "min": "1", "max": "1000", "pos": "1" },
      { "type": "float", "name": "Probability of Impulse (% / Step)", "default": "80.", "min": "1.", "max": "100.", "pos": "2" },
      { "type": "float", "name": "Lessening", "default": "1.2", "min": "0.01", "max": "10.", "pos": "3" },
      { "type": "int", "name": "Random Initialization", "default": "42", "min": "1", "max": "100", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Authors: Jean-Baptiste Rolland, Julien Levillain.      Latest update: 2013/28/03." }
      ]
    }
    ]
  },
  {
    "name": "Ronounours", "filters": [
    {
      "name": "Auto-Adjust Orientation", "lang": "en", "command": "fx_adjust_orientation", "command_preview": "fx_adjust_orientation", "parameters": [
      { "type": "float", "name": "Threshold", "default": "5", "min": "0", "max": "100", "pos": "1" }
      ]
    },
    {
      "name": "Blur [Quad]", "lang": "en", "command": "fx_blur_quad", "command_preview": "fx_blur_quad_preview", "parameters": [
      { "type": "note", "text": "Blur parameters:" },
      { "type": "float", "name": "1st Amplitude (%)", "default": "0", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "2nd Amplitude (%)", "default": "5", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Brightness (%)", "default": "0", "min": "-100", "max": "100", "pos": "3" },
      { "type": "float", "name": "Contrast (%)", "default": "0", "min": "-100", "max": "100", "pos": "4" },
      { "type": "float", "name": "Gamma (%)", "default": "0", "min": "-100", "max": "100", "pos": "5" },
      { "type": "choice", "name": "Mode", "default": "1", "pos": "6", "choices": { "0": "Add", "1": "Alpha", "2": "And", "3": "Average", "4": "Blue", "5": "Burn", "6": "Darken", "7": "Difference", "8": "Divide", "9": "Dodge", "10": "Edges", "11": "Exclusion", "12": "Freeze", "13": "Grain Extract", "14": "Grain Merge", "15": "Green", "16": "Hard Light", "17": "Hard Mix", "18": "Hue", "19": "Interpolation", "20": "Lighten", "21": "Lightness", "22": "Linear Burn", "23": "Linear Light", "24": "Luminance", "25": "Multiply", "26": "Negation", "27": "Or", "28": "Overlay", "29": "Pin Light", "30": "Red", "31": "Reflect", "32": "Saturation", "33": "Soft Burn", "34": "Soft Dodge", "35": "Soft Light", "36": "Screen", "37": "Stamp", "38": "Subtract", "39": "Value", "40": "Vivid Light", "41": "Xor" } },
      { "type": "float", "name": "Opacity (%)", "default": "100", "min": "0", "max": "100", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Quad coordinates:" },
      { "type": "point", "name": "P0", "position": "40,25", "pos": "8" },
      { "type": "point", "name": "P1", "position": "60,25", "pos": "10" },
      { "type": "point", "name": "P2", "position": "95,90", "pos": "12" },
      { "type": "point", "name": "P3", "position": "5,90", "pos": "14" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2021/01/18." }
      ]
    },
    {
      "name": "Curves", "lang": "en", "command": "fx_apply_curve", "command_preview": "fx_apply_curve_preview", "parameters": [
      { "type": "int", "name": "Starting Y", "default": "0", "min": "0", "max": "255", "pos": "1" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(1)", "default": "-1", "min": "-1", "max": "255", "pos": "2" },
      { "type": "int", "name": "Y-Coord(1)", "default": "128", "min": "0", "max": "255", "pos": "3" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(2)", "default": "-1", "min": "-1", "max": "255", "pos": "4" },
      { "type": "int", "name": "Y-Coord(2)", "default": "128", "min": "0", "max": "255", "pos": "5" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(3)", "default": "-1", "min": "-1", "max": "255", "pos": "6" },
      { "type": "int", "name": "Y-Coord(3)", "default": "128", "min": "0", "max": "255", "pos": "7" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(4)", "default": "-1", "min": "-1", "max": "255", "pos": "8" },
      { "type": "int", "name": "Y-Coord(4)", "default": "128", "min": "0", "max": "255", "pos": "9" },
      { "type": "separator" },
      { "type": "int", "name": "X-Coord(5)", "default": "-1", "min": "-1", "max": "255", "pos": "10" },
      { "type": "int", "name": "Y-Coord(5)", "default": "128", "min": "0", "max": "255", "pos": "11" },
      { "type": "separator" },
      { "type": "int", "name": "Ending Y", "default": "255", "min": "0", "max": "255", "pos": "12" },
      { "type": "separator" },
      { "type": "float", "name": "Curve Smoothness", "default": "1", "min": "0", "max": "1", "pos": "13" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "14", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CYMK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "choice", "name": "Value Action", "default": "0", "pos": "15", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } },
      { "type": "float", "name": "Display Histogram", "default": "0", "min": "0", "max": "1", "pos": "16" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "17", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest update: 2010/29/12." }
      ]
    },
    {
      "name": "For Littbarski", "lang": "en", "command": "fx_for_littbarski", "command_preview": "fx_for_littbarski", "parameters": [
      { "type": "file", "name": "Palette file (PNG)", "default": "", "pos": "1" },
      { "type": "float", "name": "Dithering (%)", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "choice", "name": "Output Mode", "default": "1", "pos": "3", "choices": { "0": "Color Indices", "1": "Colors" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé       Latest Update: 2025/09/04." }
      ]
    },
    {
      "name": "Fourier Transform [Old]", "lang": "en", "command": "fx_fourier_old", "command_preview": "fx_fourier_old_preview", "parameters": [
      { "type": "choice", "name": "Magnitude / Phase", "default": "0", "pos": "1", "choices": { "0": "One Layer (Horizontal)", "1": "One Layer (Vertical)", "2": "Two Layers" } },
      { "type": "bool", "name": "Discard Transparency", "default": "1", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Note: Apply this filter once to get the direct FFT, and once again to get the reverse transform." },
      { "type": "link", "name": "Click here for a video tutorial", "url": "http://www.youtube.com/watch?v=3137dDa6P4s", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2018/06/16." }
      ]
    },
    {
      "name": "Frame [Round] Old", "lang": "en", "command": "fx_frame_round_old", "command_preview": "fx_frame_round_old", "parameters": [
      { "type": "float", "name": "Sharpness", "default": "6", "min": "0.1", "max": "40", "pos": "1" },
      { "type": "float", "name": "Size (%)", "default": "20", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "0.1", "min": "0", "max": "15", "pos": "3" },
      { "type": "float", "name": "Shade", "default": "0", "min": "0", "max": "1", "pos": "4" },
      { "type": "color", "name": "Color", "default": "255,255,255,255", "pos": "5" },
      { "type": "float", "name": "Blur Frame", "default": "0", "min": "0", "max": "100", "pos": "9" },
      { "type": "float", "name": "Blur Shade", "default": "0.1", "min": "0", "max": "1", "pos": "10" },
      { "type": "float", "name": "Blur Amplitude", "default": "3", "min": "0", "max": "10", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/29/12." }
      ]
    },
    {
      "name": "Graduated Color Accent", "lang": "en", "command": "fx_gca", "command_preview": "fx_gca_preview", "parameters": [
      { "type": "color", "name": "Reference Color", "default": "255,255,255", "pos": "1" },
      { "type": "float", "name": "Amplitude", "default": "1", "min": "0", "max": "5", "pos": "4" },
      { "type": "choice", "name": "Max Value", "default": "0", "pos": "5", "choices": { "0": "From input", "1": "From reference color", "2": "Maximum allowed" } },
      { "type": "choice", "name": "Channel", "default": "0", "pos": "6", "choices": { "0": "Saturation", "1": "Lightness" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "7", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest update: 2015/15/07." }
      ]
    },
    {
      "name": "Layer Info", "lang": "en", "command": "gui_layer_info", "command_preview": "gui_layer_info_preview", "parameters": [
      { "type": "int", "name": "Number of Output Layers for Each Input Layer", "default": "1", "min": "1", "max": "5", "pos": "1" },
      { "type": "note", "text": "Note: This filter displays layer info on each layer." }
      ]
    },
    {
      "name": "Patrick RGB", "lang": "en", "command": "pat_rgb", "command_preview": "pat_rgb", "parameters": [
      { "type": "float", "name": "Brightness (%)", "default": "0", "min": "-100", "max": "100", "pos": "1" },
      { "type": "float", "name": "Contrast (%)", "default": "0", "min": "-100", "max": "100", "pos": "2" },
      { "type": "float", "name": "Gamma (%)", "default": "0", "min": "-100", "max": "100", "pos": "3" },
      { "type": "float", "name": "Hue (%)", "default": "0", "min": "-100", "max": "100", "pos": "4" },
      { "type": "float", "name": "Saturation (%)", "default": "0", "min": "-100", "max": "100", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2026/05/10." }
      ]
    },
    {
      "name": "Shaded Segmentation", "lang": "en", "command": "dt_segment_shaded", "command_preview": "dt_segment_shaded", "parameters": [
      { "type": "float", "name": "Density", "default": "1", "min": "0", "max": "3", "pos": "1" },
      { "type": "float", "name": "Shading", "default": "0.7", "min": "0", "max": "2", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "1", "min": "0", "max": "10", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest update: 2013/01/02." }
      ]
    },
    {
      "name": "Stereo to Anaglyph", "lang": "en", "command": "fx_stereo_to_anaglyph", "command_preview": "fx_stereo_to_anaglyph", "parameters": [
      { "type": "choice", "name": "Method", "default": "2", "pos": "1", "choices": { "0": "Gray", "1": "Color", "2": "Dubois" } },
      { "type": "float", "name": "Parallax (%)", "default": "0", "min": "-10", "max": "10", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Authors: David Tschumperlé and Whatnot       Latest Update: 2026/02/18." }
      ]
    }
    ]
  },
  {
    "name": "Samj", "filters": [
    {
      "name": "About", "lang": "en", "command": "_none_", "command_preview": "samj_about", "parameters": [
      { "type": "note", "text": "Informations - Compilations :" },
      { "type": "link", "name": "http://www.aljacom.com/~gmic/", "url": "http://www.aljacom.com/~gmic/", "align": "center" },
      { "type": "link", "name": "http://samjcreations.blogspot.ca/", "url": "http://samjcreations.blogspot.ca/", "align": "center" },
      { "type": "note", "text": "Filtres :" },
      { "type": "link", "name": "https://github.com/GreycLab/gmic-community", "url": "https://github.com/GreycLab/gmic-community", "align": "center" },
      { "type": "note", "text": "Les filtres contenus dans ce répertoire sont majoritairement traduits en français et/ou en cours de développement." },
      { "type": "note", "text": "The filters included in this directory are mostly translated into French and/or experimental." },
      { "type": "note", "text": "Nettoyage du code/Cleaning the code :" },
      { "type": "note", "text": "Thank RepTorian1125 for modernizing the source code of these filters for GMIC 3.1.0" },
      { "type": "note", "text": "Merci Reptorian1125 pour avoir modernisé le code source de ces filtres pour GMIC 3.1.0" },
      { "type": "note", "text": "Version 2025/01/06 GMIC 3.5.0" }
      ]
    }
    ]
  },
  {
    "name": "Sequences", "filters": [
    {
      "name": "3D Elevation [Animated]", "lang": "en", "command": "fx_animate_elevation3d", "command_preview": "fx_animate_elevation3d_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Creates an animation of a 3D image elevation. " },
      { "type": "separator" },
      { "type": "int", "name": "Frames", "default": "10", "min": "2", "max": "100", "pos": "1" },
      { "type": "bool", "name": "Output as Frames", "default": "1", "pos": "2" },
      { "type": "bool", "name": "Output as Files", "default": "0", "pos": "3" },
      { "type": "folder", "name": "Output Folder", "default": "", "pos": "4" },
      { "type": "note", "text": "\nGlobal parameters :" },
      { "type": "float", "name": "Factor", "default": "100", "min": "-1000", "max": "1000", "pos": "5" },
      { "type": "float", "name": "Smoothness", "default": "1", "min": "0", "max": "10", "pos": "6" },
      { "type": "int", "name": "Width", "default": "1024", "min": "8", "max": "4096", "pos": "7" },
      { "type": "int", "name": "Height", "default": "1024", "min": "8", "max": "4096", "pos": "8" },
      { "type": "choice", "name": "Rendering", "default": "2", "pos": "9", "choices": { "0": "Dots", "1": "Wireframe", "2": "Flat", "3": "Flat-Shaded", "4": "Gouraud", "5": "Phong" } },
      { "type": "note", "text": "\nStarting parameters :" },
      { "type": "float", "name": "Size", "default": "0.8", "min": "0", "max": "3", "pos": "10" },
      { "type": "float", "name": "X-Angle", "default": "35", "min": "0", "max": "360", "pos": "11" },
      { "type": "float", "name": "Y-Angle", "default": "0", "min": "0", "max": "360", "pos": "12" },
      { "type": "float", "name": "Z-Angle", "default": "0", "min": "0", "max": "360", "pos": "13" },
      { "type": "float", "name": "FOV", "default": "45", "min": "1", "max": "90", "pos": "14" },
      { "type": "float", "name": "X-Light", "default": "0", "min": "-100", "max": "100", "pos": "15" },
      { "type": "float", "name": "Y-Light", "default": "0", "min": "-100", "max": "100", "pos": "16" },
      { "type": "float", "name": "Z-Light", "default": "-100", "min": "-100", "max": "0", "pos": "17" },
      { "type": "float", "name": "Specular Lightness", "default": "0.5", "min": "0", "max": "1", "pos": "18" },
      { "type": "float", "name": "Specular Shininess", "default": "0.7", "min": "0", "max": "3", "pos": "19" },
      { "type": "note", "text": "\nEnding parameters :" },
      { "type": "float", "name": "Size", "default": "0.8", "min": "0", "max": "3", "pos": "20" },
      { "type": "float", "name": "X-Angle", "default": "35", "min": "0", "max": "1440", "pos": "21" },
      { "type": "float", "name": "Y-Angle", "default": "0", "min": "0", "max": "1440", "pos": "22" },
      { "type": "float", "name": "Z-Angle", "default": "360", "min": "0", "max": "1440", "pos": "23" },
      { "type": "float", "name": "FOV", "default": "45", "min": "1", "max": "90", "pos": "24" },
      { "type": "float", "name": "X-Light", "default": "0", "min": "-100", "max": "100", "pos": "25" },
      { "type": "float", "name": "Y-Light", "default": "0", "min": "-100", "max": "100", "pos": "26" },
      { "type": "float", "name": "Z-Light", "default": "-100", "min": "-100", "max": "0", "pos": "27" },
      { "type": "float", "name": "Specular Lightness", "default": "0.5", "min": "0", "max": "1", "pos": "28" },
      { "type": "float", "name": "Specular Shininess", "default": "0.7", "min": "0", "max": "3", "pos": "29" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "3D Extrusion [Animated]", "lang": "en", "command": "fx_animate_extrude3d", "command_preview": "fx_animate_extrude3d_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Creates an animation of a 3D extruded image. " },
      { "type": "separator" },
      { "type": "int", "name": "Frames", "default": "10", "min": "2", "max": "100", "pos": "1" },
      { "type": "bool", "name": "Output as Frames", "default": "1", "pos": "2" },
      { "type": "bool", "name": "Output as Files", "default": "0", "pos": "3" },
      { "type": "folder", "name": "Output Folder", "default": "", "pos": "4" },
      { "type": "note", "text": "\nGlobal parameters :" },
      { "type": "float", "name": "Depth", "default": "10", "min": "1", "max": "256", "pos": "5" },
      { "type": "int", "name": "Resolution", "default": "512", "min": "1", "max": "1024", "pos": "6" },
      { "type": "float", "name": "Smoothness", "default": "0.6", "min": "0", "max": "3", "pos": "7" },
      { "type": "int", "name": "Width", "default": "1024", "min": "8", "max": "4096", "pos": "8" },
      { "type": "int", "name": "Height", "default": "1024", "min": "8", "max": "4096", "pos": "9" },
      { "type": "choice", "name": "Rendering", "default": "4", "pos": "10", "choices": { "0": "Dots", "1": "Wireframe", "2": "Flat", "3": "Flat-Shaded", "4": "Gouraud", "5": "Phong" } },
      { "type": "note", "text": "\nStarting parameters :" },
      { "type": "float", "name": "Size", "default": "0.8", "min": "0", "max": "3", "pos": "11" },
      { "type": "float", "name": "X-Angle", "default": "35", "min": "0", "max": "360", "pos": "12" },
      { "type": "float", "name": "Y-Angle", "default": "0", "min": "0", "max": "360", "pos": "13" },
      { "type": "float", "name": "Z-Angle", "default": "0", "min": "0", "max": "360", "pos": "14" },
      { "type": "float", "name": "FOV", "default": "45", "min": "1", "max": "90", "pos": "15" },
      { "type": "float", "name": "X-Light", "default": "0", "min": "-100", "max": "100", "pos": "16" },
      { "type": "float", "name": "Y-Light", "default": "0", "min": "-100", "max": "100", "pos": "17" },
      { "type": "float", "name": "Z-Light", "default": "-100", "min": "-100", "max": "0", "pos": "18" },
      { "type": "float", "name": "Specular Lightness", "default": "0.5", "min": "0", "max": "1", "pos": "19" },
      { "type": "float", "name": "Specular Shininess", "default": "0.7", "min": "0", "max": "3", "pos": "20" },
      { "type": "note", "text": "\nEnding parameters :" },
      { "type": "float", "name": "Size", "default": "0.8", "min": "0", "max": "3", "pos": "21" },
      { "type": "float", "name": "X-Angle", "default": "35", "min": "0", "max": "1440", "pos": "22" },
      { "type": "float", "name": "Y-Angle", "default": "360", "min": "0", "max": "1440", "pos": "23" },
      { "type": "float", "name": "Z-Angle", "default": "0", "min": "0", "max": "1440", "pos": "24" },
      { "type": "float", "name": "FOV", "default": "45", "min": "1", "max": "90", "pos": "25" },
      { "type": "float", "name": "X-Light", "default": "0", "min": "-100", "max": "100", "pos": "26" },
      { "type": "float", "name": "Y-Light", "default": "0", "min": "-100", "max": "100", "pos": "27" },
      { "type": "float", "name": "Z-Light", "default": "-100", "min": "-100", "max": "0", "pos": "28" },
      { "type": "float", "name": "Specular Lightness", "default": "0.5", "min": "0", "max": "1", "pos": "29" },
      { "type": "float", "name": "Specular Shininess", "default": "0.7", "min": "0", "max": "3", "pos": "30" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "3D Image Object [Animated]", "lang": "en", "command": "fx_animate_imageobject3d", "command_preview": "fx_animate_imageobject3d_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Animates a 3D object mapped with the image. " },
      { "type": "separator" },
      { "type": "int", "name": "Frames", "default": "10", "min": "2", "max": "100", "pos": "1" },
      { "type": "bool", "name": "Output as Frames", "default": "1", "pos": "2" },
      { "type": "bool", "name": "Output as Files", "default": "0", "pos": "3" },
      { "type": "folder", "name": "Output Folder", "default": "", "pos": "4" },
      { "type": "note", "text": "\nGlobal parameters :" },
      { "type": "choice", "name": "Type", "default": "1", "pos": "5", "choices": { "0": "Plane", "1": "Cube", "2": "Pyramid", "3": "Sphere", "4": "Torus", "5": "Gyroid", "6": "Weird", "7": "Cup", "8": "Rubik" } },
      { "type": "int", "name": "Width", "default": "1024", "min": "1", "max": "4096", "pos": "6" },
      { "type": "int", "name": "Height", "default": "1024", "min": "1", "max": "4096", "pos": "7" },
      { "type": "choice", "name": "Rendering", "default": "4", "pos": "8", "choices": { "0": "Dots", "1": "Wireframe", "2": "Flat", "3": "Flat-Shaded", "4": "Gouraud", "5": "Phong" } },
      { "type": "note", "text": "\nStarting parameters :" },
      { "type": "float", "name": "Size", "default": "0.5", "min": "0", "max": "3", "pos": "9" },
      { "type": "float", "name": "X-Angle", "default": "57", "min": "0", "max": "360", "pos": "10" },
      { "type": "float", "name": "Y-Angle", "default": "41", "min": "0", "max": "360", "pos": "11" },
      { "type": "float", "name": "Z-Angle", "default": "21", "min": "0", "max": "360", "pos": "12" },
      { "type": "float", "name": "FOV", "default": "45", "min": "1", "max": "90", "pos": "13" },
      { "type": "float", "name": "X-Light", "default": "0", "min": "-100", "max": "100", "pos": "14" },
      { "type": "float", "name": "Y-Light", "default": "0", "min": "-100", "max": "100", "pos": "15" },
      { "type": "float", "name": "Z-Light", "default": "-100", "min": "-100", "max": "0", "pos": "16" },
      { "type": "float", "name": "Specular Lightness", "default": "0.5", "min": "0", "max": "1", "pos": "17" },
      { "type": "float", "name": "Specular Shininess", "default": "0.7", "min": "0", "max": "3", "pos": "18" },
      { "type": "note", "text": "\nEnding parameters :" },
      { "type": "float", "name": "Size", "default": "0.5", "min": "0", "max": "3", "pos": "19" },
      { "type": "float", "name": "X-Angle", "default": "57", "min": "0", "max": "1440", "pos": "20" },
      { "type": "float", "name": "Y-Angle", "default": "401", "min": "0", "max": "1440", "pos": "21" },
      { "type": "float", "name": "Z-Angle", "default": "21", "min": "0", "max": "1440", "pos": "22" },
      { "type": "float", "name": "FOV", "default": "45", "min": "1", "max": "90", "pos": "23" },
      { "type": "float", "name": "X-Light", "default": "0", "min": "-100", "max": "100", "pos": "24" },
      { "type": "float", "name": "Y-Light", "default": "0", "min": "-100", "max": "100", "pos": "25" },
      { "type": "float", "name": "Z-Light", "default": "-100", "min": "-100", "max": "0", "pos": "26" },
      { "type": "float", "name": "Specular Lightness", "default": "0.5", "min": "0", "max": "1", "pos": "27" },
      { "type": "float", "name": "Specular Shininess", "default": "0.7", "min": "0", "max": "3", "pos": "28" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "3D Text Pointcloud", "lang": "en", "command": "fx_text_pointcloud3d", "command_preview": "fx_text_pointcloud3d_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Creates a 3D point cloud animation of two texts. " },
      { "type": "separator" },
      { "type": "int", "name": "Frames", "default": "64", "min": "1", "max": "256", "pos": "1" },
      { "type": "text", "name": "1st Text", "default": "G'MIC", "pos": "2" },
      { "type": "text", "name": "2nd Text", "default": "Rocks!", "pos": "3" },
      { "type": "float", "name": "Smoothness", "default": "1", "min": "0", "max": "5", "pos": "4" },
      { "type": "color", "name": "Color", "default": "200,220,255", "pos": "5" },
      { "type": "color", "name": "Background", "default": "255,255,255,255", "pos": "8" },
      { "type": "float", "name": "X-Shadow", "default": "2", "min": "0", "max": "10", "pos": "12" },
      { "type": "float", "name": "Y-Shadow", "default": "2", "min": "0", "max": "10", "pos": "13" },
      { "type": "float", "name": "Shadow Smoothness", "default": "1", "min": "0", "max": "5", "pos": "14" },
      { "type": "int", "name": "Stationary Frames", "default": "19", "min": "1", "max": "32", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2012/09/01." }
      ]
    },
    {
      "name": "3D Tiles", "lang": "en", "command": "fx_transition3d", "command_preview": "fx_transition3d_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Creates a 3D tile transition animation. " },
      { "type": "separator" },
      { "type": "int", "name": "Inter-Frames", "default": "10", "min": "3", "max": "100", "pos": "1" },
      { "type": "int", "name": "X-Tiles", "default": "8", "min": "1", "max": "64", "pos": "2" },
      { "type": "int", "name": "Y-Tiles", "default": "8", "min": "1", "max": "64", "pos": "3" },
      { "type": "text", "name": "X-Rotation", "default": "1", "pos": "4" },
      { "type": "text", "name": "Y-Rotation", "default": "1", "pos": "5" },
      { "type": "text", "name": "Z-Rotation", "default": "0", "pos": "6" },
      { "type": "float", "name": "Focale", "default": "800", "min": "100", "max": "2000", "pos": "7" },
      { "type": "bool", "name": "Enable Antialiasing", "default": "1", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Note: This filter needs two layers to work properly. Set the Input layers option to handle multiple input layers. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2012/08/13." }
      ]
    },
    {
      "name": "B&W Pencil [Animated]", "lang": "en", "command": "fx_animate_pencilbw", "command_preview": "fx_animate_pencilbw_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Animates a pencil sketch effect. " },
      { "type": "separator" },
      { "type": "int", "name": "Frames", "default": "10", "min": "2", "max": "100", "pos": "1" },
      { "type": "bool", "name": "Output Frames", "default": "1", "pos": "2" },
      { "type": "bool", "name": "Output Files", "default": "0", "pos": "3" },
      { "type": "folder", "name": "Output Folder", "default": "", "pos": "4" },
      { "type": "note", "text": "\nStarting Parameters :" },
      { "type": "float", "name": "Pencil Type", "default": "2.3", "min": "0", "max": "5", "pos": "5" },
      { "type": "float", "name": "Amplitude", "default": "100", "min": "0", "max": "200", "pos": "6" },
      { "type": "note", "text": "\nEnding Parameters :" },
      { "type": "float", "name": "Pencil Type", "default": "0.3", "min": "0", "max": "5", "pos": "7" },
      { "type": "float", "name": "Amplitude", "default": "60", "min": "0", "max": "200", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "B&W Stencil [Animated]", "lang": "en", "command": "fx_animate_stencilbw", "command_preview": "fx_animate_stencilbw_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Animates a stencil threshold effect. " },
      { "type": "separator" },
      { "type": "int", "name": "Frames", "default": "10", "min": "2", "max": "100", "pos": "1" },
      { "type": "bool", "name": "Output Frames", "default": "1", "pos": "2" },
      { "type": "bool", "name": "Output Files", "default": "0", "pos": "3" },
      { "type": "folder", "name": "Output Folder", "default": "", "pos": "4" },
      { "type": "note", "text": "\nStarting Parameters :" },
      { "type": "float", "name": "Edge Threshold", "default": "10", "min": "0", "max": "30", "pos": "5" },
      { "type": "float", "name": "Smoothness", "default": "10", "min": "0", "max": "30", "pos": "6" },
      { "type": "note", "text": "\nEnding Parameters :" },
      { "type": "float", "name": "Edge Threshold", "default": "10", "min": "0", "max": "30", "pos": "7" },
      { "type": "float", "name": "Smoothness", "default": "20", "min": "0", "max": "30", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Cartoon [Animated]", "lang": "en", "command": "fx_animate_cartoon", "command_preview": "fx_animate_cartoon_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Animates the parameters of the cartoon effect. " },
      { "type": "separator" },
      { "type": "int", "name": "Frames", "default": "10", "min": "2", "max": "100", "pos": "1" },
      { "type": "bool", "name": "Output Frames", "default": "1", "pos": "2" },
      { "type": "bool", "name": "Output Files", "default": "0", "pos": "3" },
      { "type": "folder", "name": "Output Folder", "default": "", "pos": "4" },
      { "type": "note", "text": "\nGlobal Parameters :" },
      { "type": "int", "name": "Color Quantization", "default": "4", "min": "2", "max": "256", "pos": "5" },
      { "type": "note", "text": "\nStarting parameters :" },
      { "type": "float", "name": "Smoothness", "default": "0.5", "min": "0", "max": "2", "pos": "6" },
      { "type": "float", "name": "Sharpening", "default": "200", "min": "0", "max": "400", "pos": "7" },
      { "type": "float", "name": "Edge Threshold", "default": "10", "min": "1", "max": "30", "pos": "8" },
      { "type": "float", "name": "Edge Thickness", "default": "0.1", "min": "0", "max": "1", "pos": "9" },
      { "type": "float", "name": "Color Strength", "default": "1.5", "min": "0", "max": "3", "pos": "10" },
      { "type": "note", "text": "\nEnding parameters :" },
      { "type": "float", "name": "Smoothness", "default": "3", "min": "0", "max": "2", "pos": "11" },
      { "type": "float", "name": "Sharpening", "default": "200", "min": "0", "max": "400", "pos": "12" },
      { "type": "float", "name": "Edge Threshold", "default": "10", "min": "1", "max": "30", "pos": "13" },
      { "type": "float", "name": "Edge Thickness", "default": "0.1", "min": "0", "max": "1", "pos": "14" },
      { "type": "float", "name": "Color Strength", "default": "1.5", "min": "0", "max": "3", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Edges [Animated]", "lang": "en", "command": "fx_animate_edges", "command_preview": "fx_animate_edges_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Animates edge detection. " },
      { "type": "separator" },
      { "type": "int", "name": "Frames", "default": "10", "min": "2", "max": "100", "pos": "1" },
      { "type": "bool", "name": "Output Frames", "default": "1", "pos": "2" },
      { "type": "bool", "name": "Output Files", "default": "0", "pos": "3" },
      { "type": "folder", "name": "Output Folder", "default": "", "pos": "4" },
      { "type": "note", "text": "\nGlobal Parameters :" },
      { "type": "bool", "name": "Negative Colors", "default": "0", "pos": "5" },
      { "type": "note", "text": "\nStarting Parameters :" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "6" },
      { "type": "float", "name": "Edge Threshold", "default": "10", "min": "0", "max": "30", "pos": "7" },
      { "type": "note", "text": "\nEnding Parameters :" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "10", "pos": "8" },
      { "type": "float", "name": "Edge Threshold", "default": "30", "min": "0", "max": "30", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Edges on Fire", "lang": "en", "command": "fx_fire_edges", "command_preview": "fx_fire_edges_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Creates an animation of edges burning. " },
      { "type": "separator" },
      { "type": "float", "name": "Edges", "default": "0.7", "min": "0", "max": "3", "pos": "1" },
      { "type": "float", "name": "Attenuation", "default": "0.25", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "Smoothness", "default": "0.5", "min": "0", "max": "5", "pos": "3" },
      { "type": "float", "name": "Threshold", "default": "25", "min": "0", "max": "100", "pos": "4" },
      { "type": "separator" },
      { "type": "int", "name": "Number of Frames", "default": "20", "min": "1", "max": "999", "pos": "5" },
      { "type": "int", "name": "Starting Frame", "default": "20", "min": "0", "max": "199", "pos": "6" },
      { "type": "int", "name": "Frame Skip", "default": "0", "min": "0", "max": "20", "pos": "7" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "8", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "9", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2011/07/06." }
      ]
    },
    {
      "name": "Lava Lamp", "lang": "en", "command": "fx_lavalampbw", "command_preview": "fx_lavalampbw_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Creates a liquid lava lamp animation. " },
      { "type": "separator" },
      { "type": "int", "name": "Number of Key-Frames", "default": "3", "min": "2", "max": "50", "pos": "1" },
      { "type": "int", "name": "Number of Inter-Frames", "default": "30", "min": "2", "max": "100", "pos": "2" },
      { "type": "bool", "name": "Smooth Looping", "default": "1", "pos": "3" },
      { "type": "separator" },
      { "type": "float", "name": "Resolution", "default": "20", "min": "1", "max": "100", "pos": "4" },
      { "type": "float", "name": "Size", "default": "2", "min": "0", "max": "30", "pos": "5" },
      { "type": "float", "name": "Smoothness", "default": "0.01", "min": "0", "max": "1", "pos": "6" },
      { "type": "bool", "name": "Transparent Background", "default": "0", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2011/07/06." }
      ]
    },
    {
      "name": "Lissajous [Animated]", "lang": "en", "command": "fx_animate_lissajous", "command_preview": "fx_animate_lissajous_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Animates a Lissajous curve. " },
      { "type": "separator" },
      { "type": "int", "name": "Frames", "default": "10", "min": "2", "max": "100", "pos": "1" },
      { "type": "bool", "name": "Output as Frames", "default": "1", "pos": "2" },
      { "type": "bool", "name": "Output as Files", "default": "0", "pos": "3" },
      { "type": "folder", "name": "Output Folder", "default": "", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Starting parameters :" },
      { "type": "int", "name": "Resolution", "default": "4096", "min": "2", "max": "8192", "pos": "5" },
      { "type": "float", "name": "X-Size", "default": "0.9", "min": "0", "max": "2", "pos": "6" },
      { "type": "float", "name": "Y-Size", "default": "0.9", "min": "0", "max": "2", "pos": "7" },
      { "type": "float", "name": "Z-Size", "default": "3", "min": "1", "max": "10", "pos": "8" },
      { "type": "float", "name": "X-Multiplier", "default": "8", "min": "0", "max": "32", "pos": "9" },
      { "type": "float", "name": "Y-Multiplier", "default": "7", "min": "0", "max": "32", "pos": "10" },
      { "type": "float", "name": "Z-Multiplier", "default": "0", "min": "0", "max": "32", "pos": "11" },
      { "type": "float", "name": "X-Offset", "default": "0", "min": "0", "max": "1", "pos": "12" },
      { "type": "float", "name": "Y-Offset", "default": "0", "min": "0", "max": "1", "pos": "13" },
      { "type": "float", "name": "Z-Offset", "default": "0", "min": "0", "max": "1", "pos": "14" },
      { "type": "float", "name": "X-Angle", "default": "0", "min": "0", "max": "360", "pos": "15" },
      { "type": "float", "name": "Y-Angle", "default": "0", "min": "0", "max": "360", "pos": "16" },
      { "type": "float", "name": "Z-Angle", "default": "0", "min": "0", "max": "360", "pos": "17" },
      { "type": "float", "name": "Thickness", "default": "0", "min": "0", "max": "50", "pos": "18" },
      { "type": "color", "name": "Color", "default": "255,255,255,255", "pos": "19" },
      { "type": "separator" },
      { "type": "note", "text": "Ending parameters :" },
      { "type": "int", "name": "Resolution", "default": "4096", "min": "2", "max": "8192", "pos": "23" },
      { "type": "float", "name": "X-Size", "default": "0.9", "min": "0", "max": "2", "pos": "24" },
      { "type": "float", "name": "Y-Size", "default": "0.9", "min": "0", "max": "2", "pos": "25" },
      { "type": "float", "name": "Z-Size", "default": "3", "min": "1", "max": "10", "pos": "26" },
      { "type": "float", "name": "X-Multiplier", "default": "8", "min": "0", "max": "32", "pos": "27" },
      { "type": "float", "name": "Y-Multiplier", "default": "7", "min": "0", "max": "32", "pos": "28" },
      { "type": "float", "name": "Z-Multiplier", "default": "0", "min": "0", "max": "32", "pos": "29" },
      { "type": "float", "name": "X-Offset", "default": "0", "min": "0", "max": "1", "pos": "30" },
      { "type": "float", "name": "Y-Offset", "default": "0", "min": "0", "max": "1", "pos": "31" },
      { "type": "float", "name": "Z-Offset", "default": "0", "min": "0", "max": "1", "pos": "32" },
      { "type": "float", "name": "X-Angle", "default": "0", "min": "0", "max": "360", "pos": "33" },
      { "type": "float", "name": "Y-Angle", "default": "0", "min": "0", "max": "360", "pos": "34" },
      { "type": "float", "name": "Z-Angle", "default": "0", "min": "0", "max": "360", "pos": "35" },
      { "type": "float", "name": "Thickness", "default": "0", "min": "0", "max": "50", "pos": "36" },
      { "type": "color", "name": "Color", "default": "255,255,255,255", "pos": "37" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2011/04/18." }
      ]
    },
    {
      "name": "Moiré Animation", "lang": "en", "command": "fx_moire", "command_preview": "fx_moire_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Convert an animation to a single image showing Moiré patterns. " },
      { "type": "separator" },
      { "type": "choice", "name": "Stripe orientation", "default": "1", "pos": "1", "choices": { "0": "Horizontal", "1": "Vertical" } },
      { "type": "choice", "name": "Input Transparency", "default": "0", "pos": "2", "choices": { "0": "Replace With White", "1": "Reconstruct From Previous Frames" } },
      { "type": "choice", "name": "Output Format", "default": "2", "pos": "3", "choices": { "0": "Same as Input", "1": "A4 / 75 PPI", "2": "A4 / 100 PPI (Recommended)", "3": "A4 / 150 PPI", "4": "A4 / 300 PPI" } },
      { "type": "bool", "name": "Auto-Reduce Number of Frames", "default": "1", "pos": "4" },
      { "type": "bool", "name": "Landscape", "default": "1", "pos": "5" },
      { "type": "float", "name": "Margin (%)", "default": "2", "min": "0", "max": "30", "pos": "6" },
      { "type": "separator" },
      { "type": "choice", "name": "Print Frame Numbers", "default": "1", "pos": "7", "choices": { "0": "Disable", "1": "Top Left", "2": "Top Right", "3": "Bottom Left", "4": "Bottom Right" } },
      { "type": "float", "name": "Size of Frame Numbers (%)", "default": "5", "min": "0", "max": "30", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "<span color=\"#EE5500\">Instructions:</span>\n\n This filter renders Moire Animations, as shown on <a href=\"https://www.youtube.com/watch?v=f5plDb_JRq4\">this video</a>.\n To make the animation visible:\n\n &bull; Before running the filter, ensure that all frames are aligned and have the same size (and preferably without alpha)!\n &bull; Run the filter. It is recommended to keep the number of frames &lt;=6.\n &bull; Print the first layer (merged frames) on a A4 blank paper, at 300 PPI.\n &bull; Print the second layer (mask) on a A4 transparent sheet, at 300 PPI.\n &bull; Drag the transparent layer over the A4 paper to render the animation effect. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2020/03/02." }
      ]
    },
    {
      "name": "Object Animation", "lang": "en", "command": "fx_tk_animateobject", "command_preview": "fx_tk_animateobject_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Object motion:" },
      { "type": "float", "name": "X-Motion", "default": "0", "min": "-100", "max": "100", "pos": "1" },
      { "type": "float", "name": "Y-Motion", "default": "0", "min": "-100", "max": "100", "pos": "2" },
      { "type": "float", "name": "Z-Motion", "default": "0", "min": "-10", "max": "50", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Camera position:" },
      { "type": "float", "name": "Camera X", "default": "0.5", "min": "0", "max": "1", "pos": "4" },
      { "type": "float", "name": "Camera Y", "default": "0.5", "min": "0", "max": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Frame settings:" },
      { "type": "int", "name": "Frame Size", "default": "400", "min": "50", "max": "1920", "pos": "6" },
      { "type": "int", "name": "Frames", "default": "2", "min": "2", "max": "100", "pos": "7" },
      { "type": "bool", "name": "Reverse Motion", "default": "0", "pos": "8" },
      { "type": "note", "text": "Your mask must be placed below your image. Switch input layers to Active and below." },
      { "type": "separator" },
      { "type": "bool", "name": "Work on Frameset", "default": "0", "pos": "9" },
      { "type": "note", "text": "To use this option your mask must be placed below your frames. Switch input layers to All." },
      { "type": "separator" },
      { "type": "note", "text": "Advanced settings:" },
      { "type": "float", "name": "Sharpen Object", "default": "0", "min": "0", "max": "10", "pos": "10" },
      { "type": "float", "name": "Expand Background Reconstruction", "default": "0", "min": "0", "max": "50", "pos": "11" },
      { "type": "float", "name": "Smoothen Background Reconstruction", "default": "0", "min": "0", "max": "1", "pos": "12" },
      { "type": "float", "name": "Adjust Background Reconstruction", "default": "1", "min": "1", "max": "256", "pos": "13" },
      { "type": "separator" },
      { "type": "bool", "name": "Blue Screen Mode", "default": "0", "pos": "14" },
      { "type": "note", "text": "Layer stack for images: Object image top, background image below, mask bottom. Layer stack for framesets: Frameset top, object image below, mask bottom. Switch input layers to All." },
      { "type": "separator" },
      { "type": "bool", "name": "Camera Motion Only", "default": "0", "pos": "15" },
      { "type": "float", "name": "Closeup", "default": "1", "min": "1", "max": "10", "pos": "16" },
      { "type": "note", "text": "Use this option without mask layer. Switch input layers to Active or All" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Tom Keil.      Latest update: 2012/08/04." }
      ]
    },
    {
      "name": "Rodilius [Animated]", "lang": "en", "command": "fx_animate_rodilius", "command_preview": "fx_animate_rodilius_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Animates the Rodilius filter parameters. " },
      { "type": "separator" },
      { "type": "int", "name": "Frames", "default": "10", "min": "2", "max": "100", "pos": "1" },
      { "type": "bool", "name": "Output as Frames", "default": "1", "pos": "2" },
      { "type": "bool", "name": "Output as Files", "default": "0", "pos": "3" },
      { "type": "folder", "name": "Output Folder", "default": "", "pos": "4" },
      { "type": "choice", "name": "Color Mode", "default": "1", "pos": "5", "choices": { "0": "Darker", "1": "Lighter" } },
      { "type": "note", "text": "\nStarting Parameters :" },
      { "type": "float", "name": "Amplitude", "default": "10", "min": "0", "max": "30", "pos": "6" },
      { "type": "float", "name": "Thickness", "default": "10", "min": "0", "max": "100", "pos": "7" },
      { "type": "float", "name": "Sharpness", "default": "300", "min": "0", "max": "1000", "pos": "8" },
      { "type": "int", "name": "Orientations", "default": "5", "min": "2", "max": "20", "pos": "9" },
      { "type": "float", "name": "Offset", "default": "0", "min": "0", "max": "180", "pos": "10" },
      { "type": "note", "text": "\nEnding Parameters :" },
      { "type": "float", "name": "Amplitude", "default": "10", "min": "0", "max": "30", "pos": "11" },
      { "type": "float", "name": "Thickness", "default": "10", "min": "0", "max": "100", "pos": "12" },
      { "type": "float", "name": "Sharpness", "default": "300", "min": "0", "max": "1000", "pos": "13" },
      { "type": "int", "name": "Orientations", "default": "5", "min": "2", "max": "20", "pos": "14" },
      { "type": "float", "name": "Offset", "default": "180", "min": "0", "max": "180", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Soft Glow [Animated]", "lang": "en", "command": "fx_animate_glow", "command_preview": "fx_animate_glow_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Animates a glowing pulse. " },
      { "type": "separator" },
      { "type": "int", "name": "Frames", "default": "10", "min": "2", "max": "100", "pos": "1" },
      { "type": "bool", "name": "Output as Frames", "default": "1", "pos": "2" },
      { "type": "bool", "name": "Output as Files", "default": "0", "pos": "3" },
      { "type": "folder", "name": "Output Folder", "default": "", "pos": "4" },
      { "type": "note", "text": "\nStarting Parameters :" },
      { "type": "float", "name": "Amplitude", "default": "0", "min": "0", "max": "8", "pos": "5" },
      { "type": "note", "text": "\nEnding Parameters :" },
      { "type": "float", "name": "Amplitude", "default": "3", "min": "0", "max": "8", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Spatial Transition", "lang": "en", "command": "fx_spatial_transition", "command_preview": "fx_spatial_transition_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Creates a spatial transition between two images. " },
      { "type": "separator" },
      { "type": "int", "name": "Number of Added Frames", "default": "10", "min": "1", "max": "256", "pos": "1" },
      { "type": "float", "name": "Shading (%)", "default": "0", "min": "0", "max": "100", "pos": "2" },
      { "type": "choice", "name": "Transition Shape", "default": "7", "pos": "3", "choices": { "0": "Bottom Layer", "1": "Top Layer", "2": "Custom Formula", "3": "Horizontal", "4": "Vertical", "5": "Angular", "6": "Radial", "7": "Plasma" } },
      { "type": "text", "name": "Custom Formula", "default": "cos(x*y/(16+32*A))", "pos": "4", "visibility": "1" },
      { "type": "float", "name": "A-Value", "default": "0", "min": "0", "max": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "1", "pos": "6", "choices": { "0": "Transition Map", "1": "Timed Image", "2": "Sequence x4", "3": "Sequence x6", "4": "Sequence x8" } },
      { "type": "float", "name": "Preview Time", "default": "0.5", "min": "0", "max": "1", "pos": "7" },
      { "type": "value", "value": "0", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2015/04/10." }
      ]
    },
    {
      "name": "Spatial Transition To PNG", "lang": "en", "command": "samj_fx_spatial_transition_to_PNG", "command_preview": "fx_spatial_transition_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Export all frames/layers as PNG files in :" },
      { "type": "note", "text": "/G'MIC folder used to store configuration files/Spatial_Transition_000000.png" },
      { "type": "separator" },
      { "type": "note", "text": "PNG to Video with FFMPEG :" },
      { "type": "note", "text": "ffmpeg -i Spatial_Transition_%06d.png -c:v libx264 -vf \"yadif,fps=25,format=yuv420p\" GMIC_Transition.mp4" },
      { "type": "separator" },
      { "type": "int", "name": "Number of Added Frames", "default": "10", "min": "1", "max": "256", "pos": "1" },
      { "type": "float", "name": "Shading (%)", "default": "0", "min": "0", "max": "100", "pos": "2" },
      { "type": "choice", "name": "Transition Shape", "default": "5", "pos": "3", "choices": { "0": "Bottom Layer", "1": "Top Layer", "2": "Custom Formula", "3": "Horizontal", "4": "Vertical", "5": "Angular", "6": "Radial", "7": "Plasma" } },
      { "type": "text", "name": "Custom Formula", "default": "cos(x*y/(16+32*A))", "pos": "4", "visibility": "1" },
      { "type": "float", "name": "A-Value", "default": "0", "min": "0", "max": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "4", "pos": "6", "choices": { "0": "Transition Map", "1": "Timed Image", "2": "Sequence X4", "3": "Sequence X6", "4": "Sequence X8" } },
      { "type": "float", "name": "Preview Time", "default": "0", "min": "0", "max": "1", "pos": "7" },
      { "type": "value", "value": "0", "pos": "8" },
      { "type": "separator" },
      { "type": "bool", "name": "Visualize the middle frame of the transition.", "default": "0", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Author: <a href=\"http://bit.ly/2CmhX65\">David Tschumperlé</a>.      Latest Update: 2015/10/04." }
      ]
    },
    {
      "name": "Transition H V To PNG", "lang": "en", "command": "samj_transition_H_V_to_PNG", "command_preview": "samj_transition_H_V_to_PNG_Preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Export all frames/layers as PNG files in :" },
      { "type": "note", "text": "/G'MIC folder used to store configuration files/TransitionHV_000000.png" },
      { "type": "separator" },
      { "type": "note", "text": "PNG to Video with FFMPEG :" },
      { "type": "note", "text": "ffmpeg -i TransitionHV_%06d.png -c:v libx264 -vf \"yadif,fps=25,format=yuv420p\" GMIC_TransitionHV.mp4" },
      { "type": "separator" },
      { "type": "int", "name": "1 - Number of Frames", "default": "10", "min": "3", "max": "300", "pos": "1" },
      { "type": "choice", "name": "2 - Transition Shape", "default": "1", "pos": "2", "choices": { "0": "Horizontal A", "1": "Horizontal B", "2": "Vertical A", "3": "Vertical B" } },
      { "type": "bool", "name": "3 - Reverse Scrolling", "default": "0", "pos": "3" },
      { "type": "separator" },
      { "type": "bool", "name": "4 - Visualize the middle frame of the transition.", "default": "0", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2022/04/26." }
      ]
    }
    ]
  },
  {
    "name": "Souphead", "filters": [
    {
      "name": "Disco", "lang": "en", "command": "disco", "command_preview": "disco_preview", "parameters": [
      { "type": "int", "name": "Red Wavelength", "default": "10", "min": "1", "max": "50", "pos": "1" },
      { "type": "int", "name": "Green Wavelength", "default": "15", "min": "1", "max": "50", "pos": "2" },
      { "type": "int", "name": "Blue Wavelength", "default": "20", "min": "1", "max": "50", "pos": "3" },
      { "type": "float", "name": "Zoom", "default": "250", "min": "0", "max": "3000", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "This is a failed attempt on a conversion of a Mathmap script written by persons unknown" },
      { "type": "note", "text": "I prefer this over the filter I was attempting to recreate!!!." },
      { "type": "note", "text": "Create a light effect with the size and aspect ratio of the input image." }
      ]
    },
    {
      "name": "Kitaoka Spin Illusion", "lang": "en", "command": "KittyRings", "command_preview": "KittyRings_preview", "parameters": [
      { "type": "float", "name": "Sectors", "default": "30", "min": "10", "max": "80", "pos": "1" },
      { "type": "float", "name": "Zoom", "default": "8", "min": "1", "max": "30", "pos": "2" },
      { "type": "float", "name": "Inner Radius", "default": "0", "min": "0", "max": "2", "pos": "3" },
      { "type": "float", "name": "Outer Radius", "default": "1", "min": "0", "max": "2", "pos": "4" },
      { "type": "color", "name": "1st Color", "default": "113,0,113", "pos": "5" },
      { "type": "color", "name": "2nd Color", "default": "0,255,0", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "This filter is a conversion of the Mathmap script originally written by step7 - 2012" },
      { "type": "note", "text": "Renders positional displacement illusion 'Spinning Sectors' based on Akiyoshi Kitaoka's 'Rotating Snakes'" }
      ]
    },
    {
      "name": "Moon2panorama", "lang": "en", "command": "moon2panorama", "command_preview": "moon2panorama_preview", "parameters": [
      { "type": "bool", "name": "Center Help", "default": "0", "pos": "1" },
      { "type": "float", "name": "Center X", "default": "0", "min": "-20", "max": "20", "pos": "2" },
      { "type": "float", "name": "Center Y", "default": "0", "min": "-20", "max": "20", "pos": "3" },
      { "type": "float", "name": "Span", "default": "360", "min": "0", "max": "1450", "pos": "4" },
      { "type": "float", "name": "Shift X", "default": "0", "min": "-200", "max": "200", "pos": "5" },
      { "type": "float", "name": "Shift Y", "default": "0", "min": "-200", "max": "200", "pos": "6" },
      { "type": "separator" },
      { "type": "bool", "name": "Antialiasing", "default": "1", "pos": "7" },
      { "type": "choice", "name": "Edge Behavior X", "default": "0", "pos": "8", "choices": { "0": "Blank", "1": "Wrap", "2": "Reflect", "3": "Rotate" } },
      { "type": "choice", "name": "Edge Behavior Y", "default": "0", "pos": "9", "choices": { "0": "Blank", "1": "Wrap", "2": "Reflect", "3": "Rotate" } },
      { "type": "separator" },
      { "type": "note", "text": "This filter is a conversion of the Mathmap script originally written by Edgar Bonet" },
      { "type": "link", "name": "Edgar Bonet.", "url": "http://edgar-bonet.org/", "align": "center" },
      { "type": "note", "text": "Converts partial cylindrical layout to panorama layout" }
      ]
    },
    {
      "name": "Spiral RGB", "lang": "en", "command": "spiral_RGB", "command_preview": "spiral_RGB_preview", "parameters": [
      { "type": "int", "name": "Red Rotations", "default": "1", "min": "1", "max": "20", "pos": "1" },
      { "type": "int", "name": "Green Rotations", "default": "3", "min": "0", "max": "20", "pos": "2" },
      { "type": "int", "name": "Blue Rotations", "default": "5", "min": "0", "max": "20", "pos": "3" },
      { "type": "bool", "name": "Counter Clockwise", "default": "0", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "This filter is based on a conversion of a Mathmap script originally written by Nevit Dilmen" },
      { "type": "note", "text": "Create fun spirals with the size and aspect ratio of the input image." }
      ]
    }
    ]
  },
  {
    "name": "Stereoscopic 3D", "filters": [
    {
      "name": "3D Conversion", "lang": "en", "command": "fx_tk_make3D", "command_preview": "fx_tk_make3D_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Stereoscopic settings:" },
      { "type": "choice", "name": "Scene Selector", "default": "0", "pos": "1", "choices": { "0": "automatic depth estimation", "1": "daylight scene", "2": "optimized lateral inhibition", "3": "light motive", "4": "dark motive", "5": "landscape", "6": "center foreground", "7": "center background", "8": "left foreground", "9": "left diagonal foreground", "10": "right foreground", "11": "right diagonal foreground", "12": "left and right foreground", "13": "left and right background", "14": "bottom and top foreground", "15": "bottom and left foreground", "16": "bottom and right foreground", "17": "central perspective outdoor", "18": "central perspective indoor", "19": "portrait", "20": "human 1", "21": "human 2", "22": "studio", "23": "underwater", "24": "flat" } },
      { "type": "float", "name": "Far Point Deviation", "default": "20", "min": "-100", "max": "100", "pos": "2" },
      { "type": "float", "name": "Stereoscopic Window Position", "default": "0", "min": "-100", "max": "100", "pos": "3" },
      { "type": "float", "name": "Depth Field Control", "default": "20", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Feature Analyzer Threshold", "default": "0", "min": "0", "max": "5", "pos": "5" },
      { "type": "float", "name": "Feature Analyzer Smoothness", "default": "0", "min": "0", "max": "5", "pos": "6" },
      { "type": "float", "name": "Local Detail Enhancer", "default": "0", "min": "0", "max": "5", "pos": "7" },
      { "type": "float", "name": "DOF Analyzer", "default": "0", "min": "0", "max": "5", "pos": "8" },
      { "type": "float", "name": "Frequency Analyzer", "default": "0", "min": "0", "max": "5", "pos": "9" },
      { "type": "bool", "name": "Flip Left / Right", "default": "0", "pos": "10" },
      { "type": "bool", "name": "Use Individual Depth Map", "default": "0", "pos": "11" },
      { "type": "note", "text": "To use this option your depth map must be placed below your image. Switch input layers to Active and below." },
      { "type": "separator" },
      { "type": "note", "text": "Image settings:" },
      { "type": "bool", "name": "Black & White", "default": "0", "pos": "12" },
      { "type": "choice", "name": "Output Format", "default": "0", "pos": "13", "choices": { "0": "Anaglyph red/cyan", "1": "Anaglyph red/cyan optimized", "2": "Anaglyph blue/yellow", "3": "Anaglyph blue/yellow optimized", "4": "Anaglyph green/magenta", "5": "Anaglyph green/magenta optimized", "6": "Full side by side keep width", "7": "Full side by side keep uncompressed", "8": "Full bottom/top", "9": "Half side  by side", "10": "Half bottom/top", "11": "Interlace horizontal", "12": "Interlace vertical", "13": "Full HD frame packing", "14": "Unaligned images", "15": "Depth map only" } },
      { "type": "float", "name": "Gamma Compensation", "default": "1.2", "min": "0", "max": "4", "pos": "14" },
      { "type": "float", "name": "Anti-Ghosting", "default": "25", "min": "0", "max": "255", "pos": "15" },
      { "type": "float", "name": "Color Boost", "default": "1", "min": "0", "max": "4", "pos": "16" },
      { "type": "float", "name": "Anaglyph Glasses Adjustment", "default": "0", "min": "-100", "max": "100", "pos": "17" },
      { "type": "bool", "name": "Autocrop", "default": "1", "pos": "18" },
      { "type": "bool", "name": "Bidirectional Rendering", "default": "0", "pos": "19" },
      { "type": "separator" },
      { "type": "note", "text": "Frame settings:" },
      { "type": "bool", "name": "Render Multiple Frames", "default": "0", "pos": "20" },
      { "type": "bool", "name": "Render Routine for Wiggle Animations", "default": "0", "pos": "21" },
      { "type": "int", "name": "Frames", "default": "2", "min": "2", "max": "100", "pos": "22" },
      { "type": "int", "name": "Frame Size", "default": "200", "min": "50", "max": "1920", "pos": "23" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Tom Keil.      Latest update: 2012/20/09." }
      ]
    },
    {
      "name": "3D Video Conversion", "lang": "en", "command": "fx_tk_video3D", "command_preview": "fx_tk_video3D_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Stereoscopic settings:" },
      { "type": "choice", "name": "Scene Selector", "default": "0", "pos": "1", "choices": { "0": "automatic depth estimation", "1": "daylight scene", "2": "optimized lateral inhibition", "3": "light motive", "4": "dark  motive", "5": "landscape", "6": "center foreground", "7": "center background", "8": "left  foreground", "9": "left diagonal foreground", "10": "right foreground", "11": "right diagonal  foreground", "12": "left and right foreground", "13": "left and right background", "14": "bottom and top foreground", "15": "bottom and left foreground", "16": "bottom and right foreground", "17": "central  perspective outdoor", "18": "central perspective indoor", "19": "portrait", "20": "human 1", "21": "human  2", "22": "studio", "23": "underwater", "24": "flat" } },
      { "type": "float", "name": "Far Point Deviation", "default": "10", "min": "-100", "max": "100", "pos": "2" },
      { "type": "float", "name": "Stereo Window Position", "default": "-10", "min": "-100", "max": "100", "pos": "3" },
      { "type": "float", "name": "Depth Field Control", "default": "20", "min": "0", "max": "100", "pos": "4" },
      { "type": "float", "name": "Feature Analyzer Threshold", "default": "0", "min": "0", "max": "5", "pos": "5" },
      { "type": "float", "name": "Feature Analyzer Smoothness", "default": "0", "min": "0", "max": "5", "pos": "6" },
      { "type": "float", "name": "Local Detail Enhancer", "default": "0", "min": "0", "max": "5", "pos": "7" },
      { "type": "float", "name": "DOF Analyzer", "default": "0", "min": "0", "max": "5", "pos": "8" },
      { "type": "float", "name": "Frequency Analyzer", "default": "0", "min": "0", "max": "5", "pos": "9" },
      { "type": "float", "name": "Motion Analyzer", "default": "0", "min": "-5", "max": "5", "pos": "10" },
      { "type": "bool", "name": "Flip Left / Right", "default": "0", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "Frames settings:" },
      { "type": "bool", "name": "Black & White", "default": "0", "pos": "12" },
      { "type": "choice", "name": "Output Format", "default": "0", "pos": "13", "choices": { "0": "Anaglyph red/cyan", "1": "Anaglyph red/cyan optimized", "2": "Anaglyph blue/yellow", "3": "Anaglyph blue/yellow optimized", "4": "Anaglyph green/magenta", "5": "Anaglyph green/magenta optimized", "6": "Full side by side keep width", "7": "Full side by uncompressed", "8": "Full bottom/top", "9": "Half side  by side", "10": "Half bottom/top", "11": "Interlace horizontal", "12": "Interlace vertical", "13": "Full HD frame packing", "14": "Left and right image streams", "15": "Depth maps only" } },
      { "type": "bool", "name": "Output to Folder", "default": "0", "pos": "14" },
      { "type": "folder", "name": "Folder Name", "default": "", "pos": "15" },
      { "type": "float", "name": "Gamma Compensation", "default": "1.2", "min": "0", "max": "4", "pos": "16" },
      { "type": "float", "name": "Anti-Ghosting", "default": "25", "min": "0", "max": "255", "pos": "17" },
      { "type": "float", "name": "Color Boost", "default": "1", "min": "0", "max": "4", "pos": "18" },
      { "type": "float", "name": "Anaglyph Glasses Adjustment", "default": "0", "min": "-100", "max": "100", "pos": "19" },
      { "type": "bool", "name": "Autocrop", "default": "1", "pos": "20" },
      { "type": "bool", "name": "Set Frame Format", "default": "1", "pos": "21" },
      { "type": "int", "name": "Frame Width", "default": "1280", "min": "128", "max": "4096", "pos": "22" },
      { "type": "choice", "name": "Frame Format", "default": "1", "pos": "23", "choices": { "0": "4:3", "1": "16:9", "2": "3:2", "3": "2:1", "4": "21:9", "5": "Keep aspect ratio" } },
      { "type": "int", "name": "Frames Offset", "default": "0", "min": "-5", "max": "5", "pos": "24" },
      { "type": "bool", "name": "Reverse Frame Stack", "default": "0", "pos": "25" },
      { "type": "separator" },
      { "type": "note", "text": "Input settings:" },
      { "type": "choice", "name": "Processing Mode", "default": "0", "pos": "26", "choices": { "0": "Layer processing", "1": "Batch processing" } },
      { "type": "folder", "name": "Input Folder", "default": "", "pos": "27" },
      { "type": "text", "name": "Input Frame Files Name", "default": "frame_", "pos": "28" },
      { "type": "int", "name": "Start Frame Number", "default": "0", "min": "0", "max": "99998", "pos": "29" },
      { "type": "int", "name": "End Frame Number", "default": "1", "min": "1", "max": "99999", "pos": "30" },
      { "type": "choice", "name": "Frame Files Format", "default": "0", "pos": "31", "choices": { "0": ".png", "1": ".bmp" } },
      { "type": "separator" },
      { "type": "note", "text": "Advanced editing:" },
      { "type": "choice", "name": "Activate Custom Filter", "default": "0", "pos": "32", "choices": { "0": "off", "1": "on", "2": "left stream only", "3": "right stream only" } },
      { "type": "text", "name": "Custom Filter Code", "default": "1", "pos": "33" },
      { "type": "int", "name": "Depth Fade In Frames", "default": "0", "min": "0", "max": "120", "pos": "34" },
      { "type": "int", "name": "Depth Fade Out Frames", "default": "0", "min": "0", "max": "120", "pos": "35" },
      { "type": "separator" },
      { "type": "note", "text": "Advanced quality control:" },
      { "type": "int", "name": "Key Frame Rate", "default": "1", "min": "1", "max": "100", "pos": "36" },
      { "type": "float", "name": "Stabilizer", "default": "5", "min": "0", "max": "100", "pos": "37" },
      { "type": "float", "name": "Preprocessor Radius", "default": "0", "min": "0", "max": "5", "pos": "38" },
      { "type": "float", "name": "Preprocessor Power", "default": "0", "min": "0", "max": "5", "pos": "39" },
      { "type": "choice", "name": "Custom Depth Correction", "default": "0", "pos": "40", "choices": { "0": "None", "1": "Custom correction map", "2": "Single custom depth map", "3": "Custom depth maps stream" } },
      { "type": "choice", "name": "Rendering Mode", "default": "1", "pos": "41", "choices": { "0": "Right eye view", "1": "Bidirectional rendering", "2": "Align image streams", "3": "Anaglyph reconstruction" } },
      { "type": "separator" },
      { "type": "note", "text": "Preview:" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "42", "choices": { "0": "first frame", "1": "last frame", "2": "selected frame", "3": "full layer stack -slow!-" } },
      { "type": "int", "name": "Preview Frame Selection", "default": "0", "min": "0", "max": "99999", "pos": "43" },
      { "type": "separator" },
      { "type": "note", "text": "Switch input layers to All." },
      { "type": "separator" },
      { "type": "note", "text": "Author: Tom Keil.       Latest update: 2012/07/10." }
      ]
    },
    {
      "name": "Automatic Depth Estimation", "lang": "en", "command": "fx_tk_autodepth", "command_preview": "fx_tk_autodepth", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "This filter estimates a depth map from a 2D image by analyzing various monoscopic image properties." },
      { "type": "separator" },
      { "type": "note", "text": "Author: Tom Keil       Latest update: 2012/30/07." }
      ]
    },
    {
      "name": "De-Anaglyph", "lang": "en", "command": "fx_tk_deana", "command_preview": "fx_tk_deana", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "This filter reconstructs strereoscopic full colour views from anaglyphs" },
      { "type": "separator" },
      { "type": "float", "name": "Colour Smoothing", "default": "20", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Gamma Equalizer", "default": "2", "min": "0.1", "max": "10", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Tom Keil     Latest update: 2012/20/09." }
      ]
    },
    {
      "name": "Depth Map Construction", "lang": "en", "command": "fx_tk_depthmap", "command_preview": "fx_tk_depthmap", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "This filter estimates and constructs a depth map for a 2D image " },
      { "type": "choice", "name": "Scene Selector", "default": "0", "pos": "1", "choices": { "0": "automatic depth estimation", "1": "daylight scene", "2": "optimized lateral inhibition", "3": "light motive", "4": "dark  motive", "5": "landscape", "6": "center foreground", "7": "center background", "8": "left  foreground", "9": "left diagonal foreground", "10": "right foreground", "11": "right diagonal  foreground", "12": "left and right foreground", "13": "left and right background", "14": "bottom and top foreground", "15": "bottom and left foreground", "16": "bottom and right foreground", "17": "central  perspective outdoor", "18": "central perspective indoor", "19": "portrait", "20": "human 1", "21": "human  2", "22": "studio", "23": "underwater", "24": "flat" } },
      { "type": "float", "name": "Depth Field Control", "default": "20", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Feature Analyzer Threshold", "default": "0", "min": "0", "max": "5", "pos": "3" },
      { "type": "float", "name": "Feature Analyzer Smoothness", "default": "0", "min": "0", "max": "5", "pos": "4" },
      { "type": "float", "name": "Local Detail Enhancer", "default": "0", "min": "0", "max": "5", "pos": "5" },
      { "type": "float", "name": "DOF Analyzer", "default": "0", "min": "0", "max": "5", "pos": "6" },
      { "type": "float", "name": "Frequency Analyzer", "default": "0", "min": "0", "max": "5", "pos": "7" },
      { "type": "float", "name": "Preprocessor Radius", "default": "0", "min": "0", "max": "5", "pos": "8" },
      { "type": "float", "name": "Preprocessor Power", "default": "0", "min": "0", "max": "5", "pos": "9" },
      { "type": "float", "name": "Smoothing", "default": "0", "min": "0", "max": "100", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Tom Keil       Latest update: 2012/30/07." }
      ]
    },
    {
      "name": "Depth Map Reconstruction", "lang": "en", "command": "fx_tk_depth_obtain", "command_preview": "fx_tk_depth_obtain", "parameters": [
      { "type": "note", "text": "This filter estimates a depth map from the left and the right view of a stereoscopic image. Images must be aligned correct to compute correct depth information." },
      { "type": "bool", "name": "Flip Left/Right", "default": "0", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "0.1", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "Center Size", "default": "100", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "Center Smoothness", "default": "0", "min": "0", "max": "50", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Tom Keil       Latest update: 2012/04/09." }
      ]
    },
    {
      "name": "Lenticular Print", "lang": "en", "command": "fx_tk_lenticular", "command_preview": "fx_tk_lenticular", "parameters": [
      { "type": "separator" },
      { "type": "float", "name": "Lenticular Density LPI", "default": "30", "min": "5", "max": "200", "pos": "1" },
      { "type": "choice", "name": "Lenticular Orientation", "default": "0", "pos": "2", "choices": { "0": "vertical", "1": "horizontal" } },
      { "type": "float", "name": "Print Size Width", "default": "5", "min": "1", "max": "50", "pos": "3" },
      { "type": "choice", "name": "Print Size Unit", "default": "0", "pos": "4", "choices": { "0": "inch", "1": "centimeter" } },
      { "type": "bool", "name": "Print Adjustment Marks", "default": "1", "pos": "5" },
      { "type": "bool", "name": "Automatic Upscale for Optimum Results", "default": "0", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Author: Tom Keil.      Latest update: 2011/10/06." }
      ]
    },
    {
      "name": "Single Image Stereogram", "lang": "en", "command": "fx_tk_stereogram", "command_preview": "fx_tk_stereogram_preview", "parameters": [
      { "type": "separator" },
      { "type": "float", "name": "Deviation", "default": "50", "min": "0", "max": "200", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Pattern generator" },
      { "type": "float", "name": "Pattern Variation 1", "default": "0.5", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "Pattern Variation 2", "default": "10", "min": "0", "max": "20", "pos": "3" },
      { "type": "float", "name": "Pattern Variation 3", "default": "0", "min": "0", "max": "1", "pos": "4" },
      { "type": "int", "name": "Tiles", "default": "40", "min": "10", "max": "100", "pos": "5" },
      { "type": "color", "name": "Color 1", "default": "255,255,0", "pos": "6" },
      { "type": "color", "name": "Color 2", "default": "255,0,0", "pos": "9" },
      { "type": "color", "name": "Color 3", "default": "0,255,0", "pos": "12" },
      { "type": "color", "name": "Color 4", "default": "0,0,255", "pos": "15" },
      { "type": "float", "name": "Color Strength", "default": "0.5", "min": "0", "max": "1", "pos": "18" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "19", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Tom Keil.      Latest update: 2012/25/02." },
      { "type": "note", "text": "Input image should be a depth map which is turned into an autostereogram, also known as magic eye image" },
      { "type": "link", "name": "Background explained here", "url": "http://en.wikipedia.org/wiki/Autostereogram", "align": "center" }
      ]
    },
    {
      "name": "Stereo Image", "lang": "en", "command": "gcd_stereo_img", "command_preview": "gcd_stereo_img", "parameters": [
      { "type": "note", "text": "<u>Create a 3D image from a flat one</u>" },
      { "type": "note", "text": "\n3D Options" },
      { "type": "separator" },
      { "type": "choice", "name": "3D Image Type", "default": "0", "pos": "1", "choices": { "0": "Anaglyph: Red/Cyan", "1": "Side by Side", "2": "Depth Map", "3": "Inverse Depth Map" } },
      { "type": "float", "name": "Balance Color", "default": "0.5", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "Depth", "default": "1.2", "min": "0", "max": "3", "pos": "3" },
      { "type": "float", "name": "Distance", "default": "1", "min": "-2", "max": "2", "pos": "4" },
      { "type": "note", "text": "\nDepth Map Options" },
      { "type": "separator" },
      { "type": "float", "name": "Blur Percentage", "default": "0.25", "min": "0", "max": "2", "pos": "5" },
      { "type": "float", "name": "Object Ratio", "default": "2", "min": "0", "max": "4", "pos": "6" },
      { "type": "int", "name": "Object Tolerance", "default": "4", "min": "0", "max": "5", "pos": "7" },
      { "type": "bool", "name": "Despeckle", "default": "1", "pos": "8" },
      { "type": "note", "text": "\nOutput Options" },
      { "type": "separator" },
      { "type": "bool", "name": "Auto Crop", "default": "0", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2015/07/02." }
      ]
    },
    {
      "name": "Stereoscopic Image Alignment", "lang": "en", "command": "fx_tk_stereoimage", "command_preview": "fx_tk_stereoimage", "parameters": [
      { "type": "separator" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "1", "choices": { "0": "Anaglyph red/cyan", "1": "Anaglyph red/cyan optimized", "2": "Anaglyph blue/yellow", "3": "Anaglyph blue/yellow optimized", "4": "Anaglyph green/magenta", "5": "Anaglypgh green/magenta optimized", "6": "Full side by side keep width", "7": "Full side by side keep uncompressed", "8": "Full bottom/top", "9": "Half side  by side", "10": "Half bottom/top", "11": "Interlace horizontal", "12": "Interlace vertical", "13": "Full HD frame packing" } },
      { "type": "bool", "name": "Flip Left / Right", "default": "0", "pos": "2" },
      { "type": "float", "name": "Gamma Compensation", "default": "1", "min": "0", "max": "4", "pos": "3" },
      { "type": "float", "name": "Anti-Ghosting", "default": "0", "min": "0", "max": "255", "pos": "4" },
      { "type": "float", "name": "Color Boost", "default": "1", "min": "0", "max": "4", "pos": "5" },
      { "type": "float", "name": "Anaglyph Glasses Adjustment", "default": "0", "min": "-100", "max": "100", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "This filter needs two aligned input images." },
      { "type": "separator" },
      { "type": "note", "text": "Author: Tom Keil     Latest update: 2012/04/08." }
      ]
    },
    {
      "name": "Undo Anaglyph", "lang": "en", "command": "gcd_unstereo", "command_preview": "gcd_unstereo_preview", "parameters": [
      { "type": "note", "text": "<u>Attempt to revert red/cyan anaglyph to 2D</u>" },
      { "type": "note", "text": "Warning: with high precision or large image this can be VERY slow!" },
      { "type": "note", "text": "\nDisplacement Settings" },
      { "type": "separator" },
      { "type": "float", "name": "Precision", "default": "5", "min": "1", "max": "6", "pos": "1" },
      { "type": "float", "name": "Smoothness", "default": "0.1", "min": "0", "max": "1", "pos": "2" },
      { "type": "bool", "name": "Horizontal Warp Only", "default": "1", "pos": "3" },
      { "type": "bool", "name": "Fast (Low Precision) Preview", "default": "1", "pos": "4" },
      { "type": "note", "text": "\nTile Settings" },
      { "type": "separator" },
      { "type": "int", "name": "Horizontal Tiles", "default": "1", "min": "1", "max": "8", "pos": "5" },
      { "type": "int", "name": "Vertical Tiles", "default": "1", "min": "1", "max": "8", "pos": "6" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "7", "choices": { "0": "Full", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author : Garagecoder.      Latest update : 2013/10/26." }
      ]
    }
    ]
  },
  {
    "name": "Telperion", "filters": [
    {
      "name": "Mc_Flou", "lang": "en", "command": "mc_flou", "command_preview": "mc_flou_preview", "parameters": [
      { "type": "separator" },
      { "type": "float", "name": "Sharp", "default": "30", "min": "10", "max": "400", "pos": "1" },
      { "type": "float", "name": "Blur", "default": "6", "min": "3", "max": "20", "pos": "2" },
      { "type": "float", "name": "Blend", "default": "1", "min": "0", "max": "1", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Base image adjustement:" },
      { "type": "bool", "name": "Skip", "default": "1", "pos": "4" },
      { "type": "float", "name": "Gamma", "default": "1", "min": "0.2", "max": "2", "pos": "5" },
      { "type": "int", "name": "Value Min", "default": "0", "min": "0", "max": "127", "pos": "6" },
      { "type": "int", "name": "Value Max", "default": "255", "min": "128", "max": "255", "pos": "7" },
      { "type": "float", "name": "Gamma R", "default": "1", "min": "0.2", "max": "2", "pos": "8" },
      { "type": "float", "name": "Gamma G", "default": "1", "min": "0.2", "max": "2", "pos": "9" },
      { "type": "float", "name": "Gamma B", "default": "1", "min": "0.2", "max": "2", "pos": "10" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "11", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Apply a flou effect with edges protection. v.1.1" }
      ]
    },
    {
      "name": "Mc_Pendraw", "lang": "en", "command": "mc_pendraw", "command_preview": "mc_pendraw_preview", "parameters": [
      { "type": "separator" },
      { "type": "float", "name": "Amplitude", "default": "8", "min": "0", "max": "30", "pos": "1" },
      { "type": "float", "name": "Blur", "default": "0.8", "min": "0.1", "max": "2", "pos": "2" },
      { "type": "float", "name": "Sharp", "default": "450", "min": "100", "max": "2000", "pos": "3" },
      { "type": "int", "name": "Color", "default": "21", "min": "4", "max": "256", "pos": "4" },
      { "type": "float", "name": "Dithering", "default": "0.5", "min": "0", "max": "1", "pos": "5" },
      { "type": "float", "name": "Value", "default": "1", "min": "0", "max": "1", "pos": "6" },
      { "type": "bool", "name": "Mode 2", "default": "0", "pos": "7" },
      { "type": "bool", "name": "Color Equal.", "default": "0", "pos": "8" },
      { "type": "int", "name": "Equal. Limit", "default": "255", "min": "100", "max": "255", "pos": "9" },
      { "type": "separator" },
      { "type": "float", "name": "Lowers Contrast", "default": "0", "min": "0", "max": "1", "pos": "10" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "11", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } }
      ]
    }
    ]
  },
  {
    "name": "Tom Keil", "filters": [
    {
      "name": "About", "lang": "en", "command": "_none_", "command_preview": "fx_tk_about", "parameters": [
      { "type": "note", "text": " <span foreground=\"purple\">( Tom Keil's Filter Set for G'MIC)</span>\n\nis proposed to you by" },
      { "type": "note", "text": "Tom Keil" },
      { "type": "note", "text": "\n" },
      { "type": "separator" },
      { "type": "note", "text": " The source code of this set of filters and additional informations and tutorials are available at :" },
      { "type": "separator" },
      { "type": "note", "text": "\nThe filters in this folder are still under development and may be subject to changes. Some filters appearing here are also part of the main filter tree of G'MIC. If they appear here too it means there are changes and updates not yet implemented in the main filter tree." }
      ]
    },
    {
      "name": "Beauty Retouch", "lang": "en", "command": "fx_tk_retouch", "command_preview": "fx_tk_retouch_preview", "parameters": [
      { "type": "separator" },
      { "type": "float", "name": "Smoothness", "default": "30", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Details", "default": "3", "min": "0", "max": "10", "pos": "2" },
      { "type": "float", "name": "Smoothing Strength", "default": "1", "min": "0", "max": "5", "pos": "3" },
      { "type": "float", "name": "Edge Threshold", "default": "20", "min": "0", "max": "50", "pos": "4" },
      { "type": "float", "name": "Edge Smoothness", "default": "1.5", "min": "0", "max": "10", "pos": "5" },
      { "type": "float", "name": "Sharpening Radius", "default": "1", "min": "0", "max": "10", "pos": "6" },
      { "type": "float", "name": "Sharpening Strength", "default": "2.5", "min": "0", "max": "5", "pos": "7" },
      { "type": "bool", "name": "View Edge Mask", "default": "0", "pos": "8" },
      { "type": "bool", "name": "Smoothen Skin Tones Only", "default": "0", "pos": "9" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "10", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Tom Keil.      Latest update: 2011/05/01." },
      { "type": "link", "name": "Filter explained here", "url": "http://www.flickr.com/groups/gmic/discuss/72157625538669041/", "align": "center" }
      ]
    },
    {
      "name": "DOF Manipulation", "lang": "en", "command": "fx_tk_dof", "command_preview": "fx_tk_dof_preview", "parameters": [
      { "type": "separator" },
      { "type": "float", "name": "Focal Point X", "default": "50", "min": "0", "max": "100", "pos": "1" },
      { "type": "float", "name": "Focal Point Y", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "int", "name": "DOF 1", "default": "30", "min": "0", "max": "255", "pos": "3" },
      { "type": "int", "name": "DOF 2", "default": "60", "min": "0", "max": "255", "pos": "4" },
      { "type": "float", "name": "Transition", "default": "5", "min": "0", "max": "25", "pos": "5" },
      { "type": "float", "name": "Defocus Strength", "default": "15", "min": "0", "max": "200", "pos": "6" },
      { "type": "choice", "name": "Defocus Style", "default": "2", "pos": "7", "choices": { "0": "median", "1": "gaussian", "2": "mixed" } },
      { "type": "choice", "name": "Depth Estimation Model", "default": "0", "pos": "8", "choices": { "0": "automatic depth estimation", "1": "daylight scene", "2": "individual focus field mask", "3": "individual depth map" } },
      { "type": "float", "name": "Bokeh Strength", "default": "0", "min": "0", "max": "1", "pos": "9" },
      { "type": "float", "name": "Highlights Threshold", "default": "200", "min": "0", "max": "255", "pos": "10" },
      { "type": "float", "name": "Bokeh Size", "default": "40", "min": "2", "max": "200", "pos": "11" },
      { "type": "float", "name": "Bokeh Blur", "default": "2", "min": "0", "max": "20", "pos": "12" },
      { "type": "choice", "name": "Aperture Type", "default": "0", "pos": "13", "choices": { "0": "circular", "1": "octogonal" } },
      { "type": "bool", "name": "Remove Blurring Artifacts", "default": "0", "pos": "14" },
      { "type": "separator" },
      { "type": "choice", "name": "Scheimpflug Effect", "default": "0", "pos": "15", "choices": { "0": "none", "1": "vertical blend", "2": "horizontal blend", "3": "vertical only", "4": "horizontal only" } },
      { "type": "float", "name": "Tilt Plane 1", "default": "0", "min": "0", "max": "100", "pos": "16" },
      { "type": "float", "name": "Tilt Plane 2", "default": "0.01", "min": "0", "max": "100", "pos": "17" },
      { "type": "separator" },
      { "type": "choice", "name": "Output Mode", "default": "0", "pos": "18", "choices": { "0": "image", "1": "layers in focus/out of focus", "2": "focus field mask only", "3": "depth estimation only" } },
      { "type": "choice", "name": "Computation Mode", "default": "1", "pos": "19", "choices": { "0": "high quality", "1": "normal", "2": "high speed" } },
      { "type": "bool", "name": "Use Treshold Mask Mode", "default": "0", "pos": "20" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "21", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Tom Keil      Latest update: 2012/01/21." }
      ]
    },
    {
      "name": "Infrared Simulation", "lang": "en", "command": "fx_tk_infrared", "command_preview": "fx_tk_infrared_preview", "parameters": [
      { "type": "float", "name": "Filter Density", "default": "0.75", "min": "0.01", "max": "0.99", "pos": "1" },
      { "type": "float", "name": "Wood Effect Saturation", "default": "0.5", "min": "0", "max": "1", "pos": "2" },
      { "type": "int", "name": "Wood Effect Color", "default": "-100", "min": "-180", "max": "180", "pos": "3" },
      { "type": "float", "name": "Wood Effect Falloff", "default": "0.75", "min": "0", "max": "1", "pos": "4" },
      { "type": "int", "name": "Sky Color", "default": "0", "min": "-180", "max": "180", "pos": "5" },
      { "type": "float", "name": "Sky Falloff", "default": "1", "min": "0", "max": "1", "pos": "6" },
      { "type": "float", "name": "Infrared Defocus", "default": "0", "min": "0", "max": "3", "pos": "7" },
      { "type": "int", "name": "Exposure", "default": "0", "min": "-255", "max": "255", "pos": "8" },
      { "type": "float", "name": "Contrast", "default": "1", "min": "0", "max": "4", "pos": "9" },
      { "type": "float", "name": "Saturation", "default": "1", "min": "0", "max": "2", "pos": "10" },
      { "type": "bool", "name": "Color / B&W", "default": "0", "pos": "11" },
      { "type": "float", "name": "Add Grain", "default": "50", "min": "0", "max": "200", "pos": "12" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "13", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Tom Keil      Latest update: 2012/17/07." }
      ]
    },
    {
      "name": "Photoillustration", "lang": "en", "command": "fx_tk_photoillustration", "command_preview": "fx_tk_photoillustration_preview", "parameters": [
      { "type": "note", "text": "adding an illustrative effect to any photograph" },
      { "type": "separator" },
      { "type": "choice", "name": "Local Contrast Style", "default": "0", "pos": "1", "choices": { "0": "tone mapping", "1": "tone mapping soft", "2": "tone mapping fast", "3": "local  normalisation", "4": "unsharp mask", "5": "global mapping", "6": "dynamic range increase", "7": "none" } },
      { "type": "float", "name": "Local Contrast Effect", "default": "0.25", "min": "0.00", "max": "2.5", "pos": "2" },
      { "type": "choice", "name": "Smoothing Style", "default": "0", "pos": "3", "choices": { "0": "anisotropic", "1": "bilateral", "2": "color channel  smoothing", "3": "segmentation", "4": "morphological closing", "5": "selective gaussian", "6": "wavelet", "7": "Kuwahara", "8": "none" } },
      { "type": "float", "name": "Contour Precision", "default": "0.30", "min": "0.00", "max": "1.00", "pos": "4" },
      { "type": "float", "name": "Area Smoothness", "default": "0.50", "min": "0.00", "max": "10.00", "pos": "5" },
      { "type": "float", "name": "Sharpening Radius", "default": "0.50", "min": "0.00", "max": "10.00", "pos": "6" },
      { "type": "float", "name": "Sharpening Strength", "default": "1.00", "min": "0.00", "max": "5.00", "pos": "7" },
      { "type": "choice", "name": "Special Effects", "default": "0", "pos": "8", "choices": { "0": "none", "1": "soft glow", "2": "dusty", "3": "Orton glow", "4": "extra  smooth", "5": "bloom", "6": "paintstroke" } },
      { "type": "float", "name": "Effect Strength", "default": "5.00", "min": "0.00", "max": "20.00", "pos": "9" },
      { "type": "float", "name": "Overall Lightness", "default": "0", "min": "-50", "max": "50", "pos": "10" },
      { "type": "float", "name": "Overall Contrast", "default": "1", "min": "0.5", "max": "1.5", "pos": "11" },
      { "type": "float", "name": "Shadows Lightness", "default": "0", "min": "-100", "max": "100", "pos": "12" },
      { "type": "float", "name": "Highlights Lightness", "default": "0", "min": "-100", "max": "100", "pos": "13" },
      { "type": "float", "name": "Mid Tone Contrast", "default": "1", "min": "0.5", "max": "4", "pos": "14" },
      { "type": "float", "name": "Color Green-Magenta", "default": "0", "min": "-20", "max": "20", "pos": "15" },
      { "type": "float", "name": "Color Blue-Yellow", "default": "0", "min": "-20", "max": "20", "pos": "16" },
      { "type": "float", "name": "Color Boost", "default": "1.2", "min": "0", "max": "4", "pos": "17" },
      { "type": "float", "name": "Detail Reconstruction Detection", "default": "98.5", "min": "50", "max": "100", "pos": "18" },
      { "type": "float", "name": "Detail Reconstruction Smoothness", "default": "5", "min": "0", "max": "10", "pos": "19" },
      { "type": "float", "name": "Detail Reconstruction Strength", "default": "0.5", "min": "0", "max": "1", "pos": "20" },
      { "type": "choice", "name": "Detail Reconstruction Style", "default": "0", "pos": "21", "choices": { "0": "micro/macro details  adjusted", "1": "fine", "2": "strong", "3": "high pass", "4": "artistic round", "5": "artistic hard", "6": "artistic  modern", "7": "comic Style", "8": "gritty", "9": "none" } },
      { "type": "bool", "name": "Keep Detail Layer Separate", "default": "0", "pos": "22" },
      { "type": "bool", "name": "Remove Artifacts From Micro/Macro Detail", "default": "0", "pos": "23" },
      { "type": "bool", "name": "Skin Tone Protection", "default": "0", "pos": "24" },
      { "type": "bool", "name": "Sharpen Edges Only", "default": "0", "pos": "25" },
      { "type": "choice", "name": "Computation Mode", "default": "1", "pos": "26", "choices": { "0": "high quality", "1": "normal", "2": "high speed" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "27", "choices": { "0": "Full", "1": "Forward  horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: Tom Keil        Latest update: 2012/08/28." }
      ]
    }
    ]
  },
  {
    "name": "Various", "filters": [
    {
      "name": "BoxFiter Map", "lang": "en", "command": "samj_BoxFiter_Map", "command_preview": "samj_BoxFiter_Map", "parameters": [
      { "type": "note", "text": "samj_BoxFiter_Map" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">BoxFiter</span>" },
      { "type": "int", "name": "Blur", "default": "2", "min": "0", "max": "32", "pos": "1" },
      { "type": "int", "name": "X", "default": "3", "min": "1", "max": "32", "pos": "2" },
      { "type": "int", "name": "Y", "default": "3", "min": "1", "max": "32", "pos": "3" },
      { "type": "choice", "name": "Codage", "default": "0", "pos": "4", "choices": { "0": "Gray", "1": "Luminance" } },
      { "type": "choice", "name": "Blend", "default": "0", "pos": "5", "choices": { "0": "Alpha", "1": "Add" } },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Sharpen</span>" },
      { "type": "choice", "name": "Type", "default": "0", "pos": "6", "choices": { "0": "No", "1": "Decompose 2", "2": "Decompose 6" } },
      { "type": "int", "name": "Itérations", "default": "2", "min": "0", "max": "3", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Map</span>" },
      { "type": "int", "name": "Equalize", "default": "127", "min": "1", "max": "256", "pos": "8" },
      { "type": "int", "name": "Colormap", "default": "16", "min": "2", "max": "256", "pos": "9" },
      { "type": "float", "name": "Dithering", "default": "0", "min": "0", "max": "1", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Transfer Color - Slow</span>" },
      { "type": "bool", "name": "Transfer", "default": "0", "pos": "11" },
      { "type": "float", "name": "Luminosity Constraints", "default": "0.2", "min": "0", "max": "1", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/11/13." }
      ]
    },
    {
      "name": "BoxFiter Test", "lang": "en", "command": "samj_BoxFiter_Test", "command_preview": "samj_BoxFiter_Test", "parameters": [
      { "type": "note", "text": "samj_BoxFiter_Test" },
      { "type": "int", "name": "Blur", "default": "2", "min": "0", "max": "32", "pos": "1" },
      { "type": "int", "name": "X", "default": "3", "min": "1", "max": "32", "pos": "2" },
      { "type": "int", "name": "Y", "default": "3", "min": "1", "max": "32", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Sharpen</span>" },
      { "type": "choice", "name": "Type", "default": "1", "pos": "4", "choices": { "0": "No", "1": "Decompose 2", "2": "Decompose 6" } },
      { "type": "int", "name": "Itérations", "default": "2", "min": "0", "max": "3", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/11/12." }
      ]
    },
    {
      "name": "Carres Lignes - Squares Lines", "lang": "en", "command": "samj_Carres_Lignes", "command_preview": "samj_Carres_Lignes", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Ce filtre est très lent - This filter is very slow" },
      { "type": "separator" },
      { "type": "int", "name": "1 - Densité/Density", "default": "2000", "min": "10", "max": "10000", "pos": "1" },
      { "type": "float", "name": "2 - Variation", "default": "3", "min": "0", "max": "100", "pos": "2" },
      { "type": "int", "name": "3 - Graine/Seed", "default": "1234", "min": "0", "max": "65536", "pos": "3" },
      { "type": "int", "name": "4 - Degradation", "default": "0", "min": "0", "max": "10", "pos": "4" },
      { "type": "note", "text": "Carrés/Squares" },
      { "type": "float", "name": "5 - Alpha", "default": "1", "min": "0", "max": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Lignes/Lines" },
      { "type": "float", "name": "6 - Densité/Density", "default": "1.5", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "7 - Alpha LA", "default": "0", "min": "0", "max": "1", "pos": "7" },
      { "type": "float", "name": "8 - Alpha LB", "default": "0", "min": "0", "max": "1", "pos": "8" },
      { "type": "int", "name": "9 - Dilate", "default": "1", "min": "1", "max": "5", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "Fond/Background" },
      { "type": "color", "name": "10 11 12 13 - Fond/Background", "default": "0,0,0,255", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2022/08/29." }
      ]
    },
    {
      "name": "CeKoaSa 001", "lang": "en", "command": "samj_CeKoaSa_001", "command_preview": "samj_CeKoaSa_001", "parameters": [
      { "type": "separator" },
      { "type": "float", "name": "Douceur / Smoothness", "default": "0", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "Seuil / Threshold", "default": "15", "min": "0", "max": "50", "pos": "2" },
      { "type": "float", "name": "Déformation", "default": "3", "min": "0", "max": "6", "pos": "3" },
      { "type": "bool", "name": "Renforcer Couleurs / Boost", "default": "1", "pos": "4" },
      { "type": "int", "name": "Taille / Size", "default": "3", "min": "1", "max": "10", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/11/24." }
      ]
    },
    {
      "name": "CeKoaSa 002", "lang": "en", "command": "samj_CeKoaSa_002", "command_preview": "samj_CeKoaSa_002", "parameters": [
      { "type": "separator" },
      { "type": "float", "name": "Douceur / Smoothness", "default": "0", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "Seuil / Threshold", "default": "15", "min": "0", "max": "50", "pos": "2" },
      { "type": "float", "name": "Déformation", "default": "3", "min": "0", "max": "6", "pos": "3" },
      { "type": "bool", "name": "Renforcer Couleurs / Boost", "default": "1", "pos": "4" },
      { "type": "int", "name": "Taille / Size", "default": "3", "min": "1", "max": "10", "pos": "5" },
      { "type": "bool", "name": "Otsu", "default": "1", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/11/24." }
      ]
    },
    {
      "name": "CeKoaSa 003", "lang": "en", "command": "samj_CeKoaSa_003", "command_preview": "samj_CeKoaSa_003", "parameters": [
      { "type": "separator" },
      { "type": "float", "name": "Douceur / Smoothness", "default": "0", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "Seuil / Threshold", "default": "5", "min": "0", "max": "50", "pos": "2" },
      { "type": "float", "name": "Déformation", "default": "1", "min": "0", "max": "6", "pos": "3" },
      { "type": "bool", "name": "Renforcer Couleurs / Boost", "default": "1", "pos": "4" },
      { "type": "int", "name": "Taille / Size", "default": "3", "min": "1", "max": "10", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/11/24." }
      ]
    },
    {
      "name": "CeKoaSa 004", "lang": "en", "command": "samj_CeKoaSa_004", "command_preview": "samj_CeKoaSa_004", "parameters": [
      { "type": "separator" },
      { "type": "int", "name": "Modulo", "default": "30", "min": "0", "max": "130", "pos": "1" },
      { "type": "bool", "name": "Négatif", "default": "0", "pos": "2" },
      { "type": "int", "name": "Filtre B&W pencil", "default": "0", "min": "0", "max": "120", "pos": "3" },
      { "type": "float", "name": "Opacité / Opacity", "default": "0.8", "min": "0.5", "max": "1", "pos": "4" },
      { "type": "int", "name": "Filtre Denoise", "default": "0", "min": "0", "max": "20", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/11/24." }
      ]
    },
    {
      "name": "CeKoaSa 005", "lang": "en", "command": "samj_CeKoaSa_005", "command_preview": "samj_CeKoaSa_005", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Grille / Grid</span>" },
      { "type": "int", "name": "Grille / Grid X", "default": "16", "min": "2", "max": "100", "pos": "1" },
      { "type": "int", "name": "Grille / Grid Y", "default": "16", "min": "2", "max": "100", "pos": "2" },
      { "type": "bool", "name": "Grille Carrée X", "default": "0", "pos": "3" },
      { "type": "bool", "name": "Grille Carrée Y", "default": "0", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Couleurs / Colors</span>" },
      { "type": "float", "name": "Intensité", "default": "0.2", "min": "0", "max": "1", "pos": "5" },
      { "type": "choice", "name": "Mode", "default": "1", "pos": "6", "choices": { "0": "Add", "1": "Alpha", "2": "And", "3": "Average", "4": "Blue", "5": "Burn", "6": "Darken", "7": "Difference", "8": "Divide", "9": "Dodge", "10": "Edges", "11": "Exclusion", "12": "Freeze", "13": "Grain extract", "14": "Grain merge", "15": "Green", "16": "Hard light", "17": "Hard mix", "18": "Hue", "19": "Interpolation", "20": "Lighten", "21": "Lightness", "22": "Linear burn", "23": "Linear light", "24": "Luminance", "25": "Multiply", "26": "Negation", "27": "Or", "28": "Overlay", "29": "Pin light", "30": "Red", "31": "Reflect", "32": "Saturation", "33": "Shape Average", "34": "Shape Average0", "35": "Soft burn", "36": "Soft dodge", "37": "Soft light", "38": "Screen", "39": "Stamp", "40": "Subtract", "41": "Value", "42": "Vivid light", "43": "Xor" } },
      { "type": "float", "name": "Opacité / Opacity", "default": "1", "min": "0", "max": "1", "pos": "7" },
      { "type": "bool", "name": "Inverser calques / Revert layers", "default": "0", "pos": "8" },
      { "type": "bool", "name": "Normaliser", "default": "1", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/11/24." }
      ]
    },
    {
      "name": "CeKoaSa 007", "lang": "en", "command": "samj_CeKoaSa_007", "command_preview": "samj_CeKoaSa_007 ", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">samj_CeKoaSa_007</span>" },
      { "type": "int", "name": "Max Patch", "default": "8", "min": "1", "max": "32", "pos": "1" },
      { "type": "int", "name": "Min Patch", "default": "8", "min": "1", "max": "32", "pos": "2" },
      { "type": "int", "name": "Dilate", "default": "10", "min": "1", "max": "16", "pos": "3" },
      { "type": "int", "name": "Pixelize", "default": "8", "min": "2", "max": "100", "pos": "4" },
      { "type": "int", "name": "Blur", "default": "8", "min": "0", "max": "30", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Update : 2016/11/15." }
      ]
    },
    {
      "name": "CeKoaSa 008", "lang": "en", "command": "samj_CeKoaSa_008", "command_preview": "samj_CeKoaSa_008_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\"><u>Filtre Lent</u></span>" },
      { "type": "int", "name": "Détection A", "default": "64", "min": "0", "max": "127", "pos": "1" },
      { "type": "int", "name": "Détection B", "default": "64", "min": "0", "max": "127", "pos": "2" },
      { "type": "float", "name": "Flou Lissage", "default": "4", "min": "0", "max": "10", "pos": "3" },
      { "type": "float", "name": "Couleur", "default": "1", "min": "0", "max": "4", "pos": "4" },
      { "type": "int", "name": "Rendu", "default": "2", "min": "1", "max": "7", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Topographic Map</span>" },
      { "type": "int", "name": "Levels", "default": "16", "min": "4", "max": "256", "pos": "6" },
      { "type": "float", "name": "Smoothness", "default": "1", "min": "0", "max": "5", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Stained Glass</span>" },
      { "type": "float", "name": "Edges", "default": "20", "min": "0", "max": "100", "pos": "8" },
      { "type": "float", "name": "Shading", "default": "0.1", "min": "0", "max": "0.5", "pos": "9" },
      { "type": "bool", "name": "Thin separators", "default": "0", "pos": "10" },
      { "type": "int", "name": "Intensité", "default": "1", "min": "1", "max": "8", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Isophotes</span>" },
      { "type": "int", "name": "Isophotes Nb Levels", "default": "64", "min": "1", "max": "128", "pos": "12" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Smooth [antialias]</span>" },
      { "type": "bool", "name": "Smooth [antialias]", "default": "1", "pos": "13" },
      { "type": "float", "name": "Amplitude", "default": "2", "min": "0", "max": "100", "pos": "14" },
      { "type": "float", "name": "Edge threshold (%)", "default": "10", "min": "0", "max": "100", "pos": "15" },
      { "type": "float", "name": "Smoothness", "default": "0.8", "min": "0", "max": "5", "pos": "16" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Fond</span>" },
      { "type": "color", "name": "Couleur Fond", "default": "255,255,255,255", "pos": "17" },
      { "type": "separator" },
      { "type": "choice", "name": "Preview type", "default": "0", "pos": "21", "choices": { "0": "Full", "1": "Forward horizontal", "2": "Forward vertical", "3": "Backward horizontal", "4": "Backward vertical", "5": "Duplicate top", "6": "Duplicate left", "7": "Duplicate bottom", "8": "Duplicate right", "9": "Duplicate horizontal", "10": "Duplicate vertical", "11": "Checkered", "12": "Checkered inverse" } },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/12/04." }
      ]
    },
    {
      "name": "CeKoaSa 009", "lang": "en", "command": "samj_CeKoaSa_009", "command_preview": "samj_CeKoaSa_009", "parameters": [
      { "type": "separator" },
      { "type": "link", "name": "Essai adaptation du didacticiel de Sebastien Guyader et du code de Iain Fergusson", "url": "https://discuss.pixls.us/t/highlight-bloom-and-photoillustration-look/2509/29", "align": "center" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Smooth</span>" },
      { "type": "int", "name": "Itérations", "default": "1", "min": "1", "max": "10", "pos": "1" },
      { "type": "float", "name": "Amplitude", "default": "5", "min": "0", "max": "1000", "pos": "2" },
      { "type": "float", "name": "Sharpness", "default": "0.5", "min": "0", "max": "2", "pos": "3" },
      { "type": "float", "name": "Anisotropy", "default": "0.63", "min": "0", "max": "1", "pos": "4" },
      { "type": "float", "name": "Gradient smoothness", "default": "0.6", "min": "0", "max": "10", "pos": "5" },
      { "type": "float", "name": "Tensor smoothness", "default": "2.35", "min": "0", "max": "10", "pos": "6" },
      { "type": "float", "name": "Spatial precision", "default": "0.8", "min": "0.1", "max": "2", "pos": "7" },
      { "type": "float", "name": "Angular precision", "default": "30", "min": "1", "max": "180", "pos": "8" },
      { "type": "float", "name": "Value precision", "default": "2", "min": "0.1", "max": "5", "pos": "9" },
      { "type": "choice", "name": "Interpolation", "default": "0", "pos": "10", "choices": { "0": "Nearest neighbor", "1": "Linear", "2": "Runge-Kutta" } },
      { "type": "bool", "name": "Fast approximation", "default": "1", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Iain Fergusson - Simplelocal Contrast</span>" },
      { "type": "float", "name": "Edge Sensitivity", "default": "25", "min": "0", "max": "25", "pos": "12" },
      { "type": "int", "name": "Itérations", "default": "1", "min": "1", "max": "5", "pos": "13" },
      { "type": "float", "name": "Paint effect", "default": "50", "min": "0", "max": "50", "pos": "14" },
      { "type": "choice", "name": "Channels", "default": "1", "pos": "15", "choices": { "0": "Colour", "1": "Luminance Only" } },
      { "type": "float", "name": "Pre gamma", "default": "1.0", "min": "0.1", "max": "5", "pos": "16" },
      { "type": "float", "name": "Post gamma", "default": "1.2", "min": "0.1", "max": "5", "pos": "17" },
      { "type": "note", "text": "Luminance Mask" },
      { "type": "float", "name": "Blacks", "default": "1", "min": "0", "max": "1", "pos": "18" },
      { "type": "float", "name": "Dark grey", "default": "1", "min": "0", "max": "1", "pos": "19" },
      { "type": "float", "name": "Mid grey", "default": "1", "min": "0", "max": "1", "pos": "20" },
      { "type": "float", "name": "Light grey", "default": "1", "min": "0", "max": "1", "pos": "21" },
      { "type": "float", "name": "Whites", "default": "1", "min": "0", "max": "1", "pos": "22" },
      { "type": "choice", "name": "Parallel Processing", "default": "1", "pos": "23", "choices": { "0": "Auto", "1": "None" } },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Wavelet Sharpen</span>" },
      { "type": "choice", "name": "Wavelet Sharpen vs Graphic Novel", "default": "0", "pos": "24", "choices": { "0": "Wavelet Sharpen", "1": "Photocomix Graphic Novel" } },
      { "type": "choice", "name": "Type", "default": "0", "pos": "25", "choices": { "0": "Decompose 2", "1": "Decompose 6" } },
      { "type": "int", "name": "Itérations", "default": "0", "min": "0", "max": "2", "pos": "26" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Script Origine de Iain Fergusson</span>" },
      { "type": "bool", "name": "Script Origine", "default": "0", "pos": "27" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Courbes</span>" },
      { "type": "choice", "name": "Utiliser Courbes", "default": "0", "pos": "28", "choices": { "0": "Non", "1": " Utiliser Curves Interactive" } },
      { "type": "choice", "name": "Colorspace", "default": "7", "pos": "29", "choices": { "0": "RGB", "1": "CMY", "2": "CMYK", "3": "HSI", "4": "HSL", "5": "HSV", "6": "Lab", "7": "Lch", "8": "YCbCr" } },
      { "type": "value", "value": "0", "pos": "30" },
      { "type": "choice", "name": "Apply transformation from", "default": "0", "pos": "31", "choices": { "0": "New curves [interactive]", "1": "Curves defined previously" } },
      { "type": "value", "value": "0", "pos": "32" },
      { "type": "value", "value": "0,0,100,100,-1,0,0,100,100,-1,0,0,100,100,-1,0,0,100,100,-1,0,0,100,100", "pos": "33" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Update : 2017/01/05." }
      ]
    },
    {
      "name": "CeKoaSa 010", "lang": "en", "command": "samj_CeKoaSa_010", "command_preview": "samj_CeKoaSa_010", "parameters": [
      { "type": "int", "name": "Flou A", "default": "30", "min": "0", "max": "128", "pos": "1" },
      { "type": "int", "name": "Flou B", "default": "10", "min": "0", "max": "128", "pos": "2" },
      { "type": "float", "name": "Diff A", "default": "0.1", "min": "0.1", "max": "16", "pos": "3" },
      { "type": "float", "name": "Diff B", "default": "2", "min": "0.1", "max": "16", "pos": "4" },
      { "type": "int", "name": "Isop", "default": "10", "min": "2", "max": "16", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/11/18." }
      ]
    },
    {
      "name": "CeKoaSa 011", "lang": "en", "command": "samj_CeKoaSa_011", "command_preview": "samj_CeKoaSa_011", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Masque</span>" },
      { "type": "float", "name": "Flou", "default": "0.2", "min": "0", "max": "32", "pos": "1" },
      { "type": "choice", "name": "Ditheredbw", "default": "0", "pos": "2", "choices": { "0": "Non", "1": "A", "2": "B", "3": "C" } },
      { "type": "bool", "name": "Bump2Normal", "default": "0", "pos": "3" },
      { "type": "choice", "name": "Orientation", "default": "5", "pos": "4", "choices": { "0": "A", "1": "B", "2": "C", "3": "D", "4": "E", "5": "F" } },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Mélange Blend Image Origine</span>" },
      { "type": "bool", "name": "Mélange", "default": "0", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Degrade</span>" },
      { "type": "bool", "name": "Ajouter Degrade", "default": "0", "pos": "6" },
      { "type": "choice", "name": "Type H / V", "default": "0", "pos": "7", "choices": { "0": "H", "1": "V" } },
      { "type": "bool", "name": "Swap Colors", "default": "0", "pos": "8" },
      { "type": "color", "name": "Starting Color A", "default": "240,40,160,255", "pos": "9" },
      { "type": "color", "name": "Ending Color B", "default": "240,240,40,255", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Niveaux Masque</span>" },
      { "type": "bool", "name": "Valider Niveaux", "default": "0", "pos": "17" },
      { "type": "float", "name": "Valeur 1", "default": "50", "min": "0", "max": "255", "pos": "18" },
      { "type": "float", "name": "Valeur 2", "default": "205", "min": "0", "max": "255", "pos": "19" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2019/03/19." }
      ]
    },
    {
      "name": "CeKoaSa 012", "lang": "en", "command": "samj_CeKoaSa_012", "command_preview": "samj_CeKoaSa_012", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\"> Degradation </span>" },
      { "type": "int", "name": "1 - Iter", "default": "30", "min": "1", "max": "200", "pos": "1" },
      { "type": "int", "name": "2 - Degradation", "default": "3", "min": "0", "max": "6", "pos": "2" },
      { "type": "float", "name": "3 - Resize", "default": "50", "min": "3", "max": "100", "pos": "3" },
      { "type": "int", "name": "4 - Dilate", "default": "3", "min": "1", "max": "5", "pos": "4" },
      { "type": "float", "name": "5 - Blend Edges", "default": "0", "min": "0", "max": "100", "pos": "5" },
      { "type": "float", "name": "6 - Pow", "default": "1", "min": "0.9", "max": "1.1", "pos": "6" },
      { "type": "int", "name": "7 - Srand", "default": "1", "min": "1", "max": "54321", "pos": "7" },
      { "type": "int", "name": "8 - Blend", "default": "-1", "min": "-1", "max": "24", "pos": "8" },
      { "type": "float", "name": "9 - %Blend", "default": "1", "min": "0", "max": "1", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2024/11/19." }
      ]
    },
    {
      "name": "Custom Code [Full]", "lang": "en", "command": "fx_custom_code", "command_preview": "fx_custom_code_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Interprets custom G'MIC code (with full preview). " },
      { "type": "separator" },
      { "type": "text", "name": "Code", "default": "1", "pos": "1" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "2", "choices": { "0": "None (Allows Multi-layers)", "1": "All", "2": "RGBA [All]", "3": "RGBA [Red-Green-Blue]", "4": "RGBA [Red]", "5": "RGBA [Green]", "6": "RGBA [Blue]", "7": "RGBA [Alpha]", "8": "Linear RGB [All]", "9": "Linear RGB [Red]", "10": "Linear RGB [Green]", "11": "Linear RGB [Blue]", "12": "YCbCr [All]", "13": "YCbCr [Luminance]", "14": "YCbCr [Blue-Red Chrominances]", "15": "YCbCr [Blue Chrominance]", "16": "YCbCr [Red Chrominance]", "17": "YCbCr [Green Chrominance]", "18": "Lab [All]", "19": "Lab [Lightness]", "20": "Lab [ab-Chrominances]", "21": "Lab [a-Chrominance]", "22": "Lab [b-Chrominance]", "23": "Lch [All]", "24": "Lch [ch-Chrominances]", "25": "Lch [c-Chrominance]", "26": "Lch [h-Chrominance]", "27": "HSV [All]", "28": "HSV [Hue]", "29": "HSV [Saturation]", "30": "HSV [Value]", "31": "HSI [All]", "32": "HSI [Intensity]", "33": "HSL [All]", "34": "HSL [Lightness]", "35": "CMYK [All]", "36": "CMYK [Cyan-Magenta-Yellow]", "37": "CMYK [Cyan]", "38": "CMYK [Magenta]", "39": "CMYK [Yellow]", "40": "CMYK [Key]", "41": "YIQ [All]", "42": "YIQ [Luma]", "43": "YIQ [Chromas]", "44": "RYB [All]", "45": "RYB [Red]", "46": "RYB [Yellow]", "47": "RYB [Blue]" } },
      { "type": "choice", "name": "Value Action", "default": "0", "pos": "3", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } },
      { "type": "bool", "name": "Display Debug Info on Preview", "default": "0", "pos": "4" },
      { "type": "choice", "name": "Debug Font Size", "default": "2", "pos": "5", "choices": { "0": "Tiny", "1": "Small", "2": "Normal", "3": "Large" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "6", "choices": { "0": "Full (Allows Multi-Layers)", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "7", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Note:  This filter can execute any set of instructions understood by the G'MIC language interpreter. Here, you can then test some commands before creating your own G'MIC custom commands and plug-in menu entries.\n\n Please look at the documentation reference web page :" },
      { "type": "link", "name": "https://gmic.eu/reference/", "url": "https://gmic.eu/reference/", "align": "center" },
      { "type": "note", "text": " to learn more about available G'MIC commands. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2022/04/28." }
      ]
    },
    {
      "name": "Custom Code [Global]", "lang": "en", "command": "fx_custom_code", "command_preview": "fx_custom_code_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Interprets custom G'MIC code (with global preview). " },
      { "type": "separator" },
      { "type": "text", "name": "Code", "default": "1", "pos": "1" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "2", "choices": { "0": "None (Allows Multi-layers)", "1": "All", "2": "RGBA [All]", "3": "RGBA [Red-Green-Blue]", "4": "RGBA [Red]", "5": "RGBA [Green]", "6": "RGBA [Blue]", "7": "RGBA [Alpha]", "8": "Linear RGB [All]", "9": "Linear RGB [Red]", "10": "Linear RGB [Green]", "11": "Linear RGB [Blue]", "12": "YCbCr [All]", "13": "YCbCr [Luminance]", "14": "YCbCr [Blue-Red Chrominances]", "15": "YCbCr [Blue Chrominance]", "16": "YCbCr [Red Chrominance]", "17": "YCbCr [Green Chrominance]", "18": "Lab [All]", "19": "Lab [Lightness]", "20": "Lab [ab-Chrominances]", "21": "Lab [a-Chrominance]", "22": "Lab [b-Chrominance]", "23": "Lch [All]", "24": "Lch [ch-Chrominances]", "25": "Lch [c-Chrominance]", "26": "Lch [h-Chrominance]", "27": "HSV [All]", "28": "HSV [Hue]", "29": "HSV [Saturation]", "30": "HSV [Value]", "31": "HSI [All]", "32": "HSI [Intensity]", "33": "HSL [All]", "34": "HSL [Lightness]", "35": "CMYK [All]", "36": "CMYK [Cyan-Magenta-Yellow]", "37": "CMYK [Cyan]", "38": "CMYK [Magenta]", "39": "CMYK [Yellow]", "40": "CMYK [Key]", "41": "YIQ [All]", "42": "YIQ [Luma]", "43": "YIQ [Chromas]", "44": "RYB [All]", "45": "RYB [Red]", "46": "RYB [Yellow]", "47": "RYB [Blue]" } },
      { "type": "choice", "name": "Value Action", "default": "0", "pos": "3", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } },
      { "type": "bool", "name": "Display Debug Info on Preview", "default": "0", "pos": "4" },
      { "type": "choice", "name": "Debug Font Size", "default": "2", "pos": "5", "choices": { "0": "Tiny", "1": "Small", "2": "Normal", "3": "Large" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "6", "choices": { "0": "Full (Allows Multi-Layers)", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "7", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Note:  This filter can execute any set of instructions understood by the G'MIC language interpreter. Here, you can then test some commands before creating your own G'MIC custom commands and plug-in menu entries.\n\n Please look at the documentation reference web page :" },
      { "type": "link", "name": "https://gmic.eu/reference/", "url": "https://gmic.eu/reference/", "align": "center" },
      { "type": "note", "text": " to learn more about available G'MIC commands. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/10/03." }
      ]
    },
    {
      "name": "Custom Code [Local]", "lang": "en", "command": "fx_custom_code", "command_preview": "fx_custom_code_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Interprets custom G'MIC code (with local preview). " },
      { "type": "separator" },
      { "type": "text", "name": "Code", "default": "1", "pos": "1" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "2", "choices": { "0": "None (Allows Multi-layers)", "1": "All", "2": "RGBA [All]", "3": "RGBA [Red-Green-Blue]", "4": "RGBA [Red]", "5": "RGBA [Green]", "6": "RGBA [Blue]", "7": "RGBA [Alpha]", "8": "Linear RGB [All]", "9": "Linear RGB [Red]", "10": "Linear RGB [Green]", "11": "Linear RGB [Blue]", "12": "YCbCr [All]", "13": "YCbCr [Luminance]", "14": "YCbCr [Blue-Red Chrominances]", "15": "YCbCr [Blue Chrominance]", "16": "YCbCr [Red Chrominance]", "17": "YCbCr [Green Chrominance]", "18": "Lab [All]", "19": "Lab [Lightness]", "20": "Lab [ab-Chrominances]", "21": "Lab [a-Chrominance]", "22": "Lab [b-Chrominance]", "23": "Lch [All]", "24": "Lch [ch-Chrominances]", "25": "Lch [c-Chrominance]", "26": "Lch [h-Chrominance]", "27": "HSV [All]", "28": "HSV [Hue]", "29": "HSV [Saturation]", "30": "HSV [Value]", "31": "HSI [All]", "32": "HSI [Intensity]", "33": "HSL [All]", "34": "HSL [Lightness]", "35": "CMYK [All]", "36": "CMYK [Cyan-Magenta-Yellow]", "37": "CMYK [Cyan]", "38": "CMYK [Magenta]", "39": "CMYK [Yellow]", "40": "CMYK [Key]", "41": "YIQ [All]", "42": "YIQ [Luma]", "43": "YIQ [Chromas]", "44": "RYB [All]", "45": "RYB [Red]", "46": "RYB [Yellow]", "47": "RYB [Blue]" } },
      { "type": "choice", "name": "Value Action", "default": "0", "pos": "3", "choices": { "0": "None", "1": "Cut", "2": "Normalize" } },
      { "type": "bool", "name": "Display Debug Info on Preview", "default": "0", "pos": "4" },
      { "type": "choice", "name": "Debug Font Size", "default": "2", "pos": "5", "choices": { "0": "Tiny", "1": "Small", "2": "Normal", "3": "Large" } },
      { "type": "separator" },
      { "type": "choice", "name": "Preview Type", "default": "0", "pos": "6", "choices": { "0": "Full (Allows Multi-Layers)", "1": "Forward Horizontal", "2": "Forward Vertical", "3": "Backward Horizontal", "4": "Backward Vertical", "5": "Duplicate Top", "6": "Duplicate Left", "7": "Duplicate Bottom", "8": "Duplicate Right", "9": "Duplicate Horizontal", "10": "Duplicate Vertical", "11": "Checkered", "12": "Checkered Inverse" } },
      { "type": "point", "name": "Preview Split", "position": "50,50", "pos": "7", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "Note:  This filter can execute any set of instructions understood by the G'MIC language interpreter. Here, you can then test some commands before creating your own G'MIC custom commands and plug-in menu entries.\n\n Please look at the documentation reference web page :" },
      { "type": "link", "name": "https://gmic.eu/reference/", "url": "https://gmic.eu/reference/", "align": "center" },
      { "type": "note", "text": " to learn more about available G'MIC commands. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/10/03." }
      ]
    },
    {
      "name": "Diaporama - Slideshow", "lang": "en", "command": "samj_diaporama", "command_preview": "gui_no_preview", "parameters": [
      { "type": "note", "text": "Ce filtre démarre un diaporama automatique en mode plein écran.\n<span foreground=\"red\"> Paramétrage à faire :\n - Calques en entrée = Tous.\n - Mode de sortie = Nouvelle image.</span>" },
      { "type": "note", "text": " - Delai / Time Secondes = Temps d'affichage de chaque calque.\n - Diaporama Infini / Infinite slideshow = Boucle infinie d'affichage des images." },
      { "type": "note", "text": "Utilisation du clavier :\n - Barre d'espacement ou Entrée = Image suivante.\n - Échap ou Q = Sortie du diaporama.\n - Page Haut = Image précédente." },
      { "type": "separator" },
      { "type": "note", "text": "This filter starts an automatic slideshow in full screen mode.\n<span foreground=\"red\"> Important settings to do :\n - Input layers = All.\n - Output mode = New image.</span>" },
      { "type": "note", "text": " - Delai / Time Secondes = Display time of each layer.\n - Diaporama Infini / Infinite slideshow = Infinite image display loop." },
      { "type": "note", "text": "Using the keyboard :\n - Space bar or Enter = Next image.\n - Esc or Q = Exit.\n - Page UP = Previous image." },
      { "type": "separator" },
      { "type": "int", "name": "Delai / Time Secondes", "default": "1", "min": "1", "max": "300", "pos": "1" },
      { "type": "bool", "name": "Diaporama Infini / Infinite slideshow", "default": "0", "pos": "2" }
      ]
    },
    {
      "name": "Do Nothing", "lang": "en", "command": "Je_passe_l_hiver_en_Floride", "command_preview": "Je_passe_l_hiver_en_Floride", "parameters": [
      { "type": "note", "text": "Note : This filters does nothing on the image. Use it to manipulate layers in conjunction with the input/output options of the G'MIC plug-in." },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest update: 2010/12/29." }
      ]
    },
    {
      "name": "Export RGB-565 File", "lang": "en", "command": "fx_output_565", "command_preview": "_none_", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Exports the image to raw RGB-565 format. " },
      { "type": "separator" },
      { "type": "file", "name": "Filename", "default": "out565.rgb", "pos": "1" },
      { "type": "bool", "name": "Reverse endianness", "default": "0", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Note: This filter saves your selected layer as a raw RGB-565 file. Keep in mind that you have to remember the image dimension if you want to reload the image file afterwards!" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2020/05/03." }
      ]
    },
    {
      "name": "Games & Demos", "lang": "en", "command": "fx_gmic_demos", "command_preview": "fx_gmic_demos_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Launches interactive G'MIC demos and mini-games. " },
      { "type": "separator" },
      { "type": "choice", "name": "Selection", "default": "2048", "pos": "1", "choices": { "0": "Blobs Editor", "1": "Bouncing Balls", "2": "Connect-Four", "3": "Fire Effect", "4": "Fireworks", "5": "Fish-Eye Effect", "6": "Fourier Filtering", "7": "Hanoi Tower", "8": "Histogram", "9": "Hough Transform", "10": "Jawbreaker", "11": "Virtual Landscape", "12": "The Game of Life", "13": "Light Effect", "14": "Mandelbrot Explorer", "15": "3D Metaballs", "16": "Minesweeper", "17": "Minimal Path", "18": "Pacman", "19": "Paint", "20": "Plasma Effect", "21": "RGB Quantization", "22": "3D Reflection", "23": "3D Rubber Object", "24": "Shadebobs", "25": "Spline Editor", "26": "3D Starfield", "27": "Tetris", "28": "Tic-Tac-Toe", "29": "3D Waves", "30": "Fractal Whirl" } },
      { "type": "separator" },
      { "type": "note", "text": "Note: This filter proposes a showcase of some interactive demos, all written as G'MIC scripts." },
      { "type": "note", "text": "On most demos, you can use the keyboard shortcut CTRL+D to double the window size (and CTRL+C to go back to the original size). Also, feel free to use the mouse buttons, as they are often used to perform an action. " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2014/09/10." }
      ]
    },
    {
      "name": "Histogram Analysis", "lang": "en", "command": "_none_", "command_preview": "fx_display_histogram", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Displays histogram statistics. " },
      { "type": "separator" },
      { "type": "int", "name": "Number of Clusters", "default": "256", "min": "2", "max": "1024", "pos": "1" },
      { "type": "separator" },
      { "type": "choice", "name": "Channel(s)", "default": "0", "pos": "2", "choices": { "0": "All", "1": "RGBA [All]", "2": "RGBA [Red-Green-Blue]", "3": "RGBA [Red]", "4": "RGBA [Green]", "5": "RGBA [Blue]", "6": "RGBA [Alpha]", "7": "Linear RGB [All]", "8": "Linear RGB [Red]", "9": "Linear RGB [Green]", "10": "Linear RGB [Blue]", "11": "YCbCr [All]", "12": "YCbCr [Luminance]", "13": "YCbCr [Blue-Red Chrominances]", "14": "YCbCr [Blue Chrominance]", "15": "YCbCr [Red Chrominance]", "16": "YCbCr [Green Chrominance]", "17": "Lab [All]", "18": "Lab [Lightness]", "19": "Lab [ab-Chrominances]", "20": "Lab [a-Chrominance]", "21": "Lab [b-Chrominance]", "22": "Lch [All]", "23": "Lch [ch-Chrominances]", "24": "Lch [c-Chrominance]", "25": "Lch [h-Chrominance]", "26": "HSV [All]", "27": "HSV [Hue]", "28": "HSV [Saturation]", "29": "HSV [Value]", "30": "HSI [All]", "31": "HSI [Intensity]", "32": "HSL [All]", "33": "HSL [Lightness]", "34": "CMYK [All]", "35": "CMYK [Cyan-Magenta-Yellow]", "36": "CMYK [Cyan]", "37": "CMYK [Magenta]", "38": "CMYK [Yellow]", "39": "CMYK [Key]", "40": "YIQ [All]", "41": "YIQ [Luma]", "42": "YIQ [Chromas]", "43": "RYB [All]", "44": "RYB [Red]", "45": "RYB [Yellow]", "46": "RYB [Blue]" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2016/06/20." }
      ]
    },
    {
      "name": "Import Data", "lang": "en", "command": "fx_import_image", "command_preview": "gui_no_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Imports raw data or specific file formats. " },
      { "type": "separator" },
      { "type": "file", "name": "Filename", "default": "", "pos": "1" },
      { "type": "bool", "name": "Normalize", "default": "1", "pos": "2" },
      { "type": "note", "text": "\nNote:  This filter can import any image data read by the G'MIC language interpreter. It includes exotic formats as : Pandore, CImg, Inrimage, AVI/MPEG (requires FFMPEG installed), ... " },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2010/12/29." }
      ]
    },
    {
      "name": "Import RGB-565 File", "lang": "en", "command": "fx_input_565", "command_preview": "", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Imports an image from a raw RGB-565 file. " },
      { "type": "separator" },
      { "type": "file", "name": "Filename", "default": "", "pos": "1" },
      { "type": "text", "name": "Width", "default": "800", "pos": "2" },
      { "type": "text", "name": "Height", "default": "600", "pos": "3" },
      { "type": "bool", "name": "Reverse endianness", "default": "0", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2020/05/03." }
      ]
    },
    {
      "name": "Intarsia", "lang": "en", "command": "fx_intarsia", "command_preview": "fx_intarsia_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Converts the image into a knitting/intarsia notice. " },
      { "type": "separator" },
      { "type": "note", "text": "Note: Intarsia is a method of Crochet/Knitting with a number of colours, in which a separate ball of yarn is used for each area of colour. This filter creates a HTML version of a graph chart which is solely used for this purpose " },
      { "type": "separator" },
      { "type": "folder", "name": "Output Directory", "default": "", "pos": "1" },
      { "type": "text", "name": "Output HTML File", "default": "intarsia.html", "pos": "2" },
      { "type": "separator" },
      { "type": "int", "name": "Maximum Image Size", "default": "512", "min": "2", "max": "1024", "pos": "3" },
      { "type": "int", "name": "Maximum Number of Image Colors", "default": "12", "min": "2", "max": "64", "pos": "4" },
      { "type": "choice", "name": "Starting Point", "default": "1", "pos": "5", "choices": { "0": "Top Left", "1": "Top Right", "2": "Bottom Left", "3": "Bottom Right" } },
      { "type": "choice", "name": "Loop Method", "default": "0", "pos": "6", "choices": { "0": "Row by Row", "1": "Column by Column" } },
      { "type": "separator" },
      { "type": "bool", "name": "Add Comment Area in HTML Page", "default": "1", "pos": "7" },
      { "type": "float", "name": "Preview Progress (%)", "default": "100", "min": "0", "max": "100", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2015/07/09." }
      ]
    },
    {
      "name": "Layers To PNG", "lang": "en", "command": "samj_Layers_To_PNG", "command_preview": "samj_Layers_To_PNG_Preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Enregistre chaque calque comme une image PNG" },
      { "type": "note", "text": "Save all layers as a PNG file" },
      { "type": "separator" },
      { "type": "note", "text": "Paramétrage pour une animation :\n - Calques en entrée = Tous." },
      { "type": "note", "text": "Settings for an animation :\n - Input layers = All" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2022/04/13." }
      ]
    },
    {
      "name": "Polygonize", "lang": "en", "command": "polygonize_GUI", "command_preview": "polygonize_GUI", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Paramètres filtre Polygonize / Polygonize parameters" },
      { "type": "int", "name": "Amplitude", "default": "300", "min": "0", "max": "2000", "pos": "1" },
      { "type": "float", "name": "Douceur / Smoothness", "default": "10", "min": "0", "max": "100", "pos": "2" },
      { "type": "float", "name": "Surface minimale / Minimal area", "default": "10", "min": "0", "max": "100", "pos": "3" },
      { "type": "float", "name": "X-resolution", "default": "10", "min": "1", "max": "256", "pos": "4" },
      { "type": "float", "name": "Y-resolution", "default": "10", "min": "1", "max": "256", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Test" },
      { "type": "int", "name": "Test Cadre et Otsu", "default": "0", "min": "0", "max": "256", "pos": "6" },
      { "type": "separator" },
      { "type": "note", "text": "Filtre créé par David Tschumperlé  Dernière mise à jour : 2020/11/24." }
      ]
    },
    {
      "name": "Recolorize 20130115", "lang": "en", "command": "gimp_recolorize_20130115_modifie", "command_preview": "gimp_recolorize_20130115_modifie", "parameters": [
      { "type": "link", "name": "http://www.flickr.com/groups/gmic/discuss/72157632525934815/", "url": "http://www.flickr.com/groups/gmic/discuss/72157632525934815/", "align": "center" },
      { "type": "link", "name": "http://www.gimpchat.com/viewtopic.php?f=28&t=6207&start=0", "url": "http://www.gimpchat.com/viewtopic.php?f=28&t=6207&start=0", "align": "center" },
      { "type": "float", "name": "Douceur / Smoothness", "default": "30", "min": "0", "max": "200", "pos": "1" },
      { "type": "choice", "name": "Nuances/decompose", "default": "0", "pos": "2", "choices": { "0": "Origine", "1": "Canal Y de YUV", "2": "Canal L de HSL 8", "3": "Canal L de LCH", "4": "Canal K de CMYK" } },
      { "type": "int", "name": "Étendue / Normalize A", "default": "0", "min": "0", "max": "255", "pos": "3" },
      { "type": "int", "name": "Étendue / Normalize B", "default": "255", "min": "0", "max": "255", "pos": "4" },
      { "type": "int", "name": "Dégoulinade A / Extension Colors A", "default": "0", "min": "0", "max": "20", "pos": "5" },
      { "type": "float", "name": "Dégoulinade B / Extension Colors B", "default": "0", "min": "0", "max": "10", "pos": "6" },
      { "type": "bool", "name": "Précision", "default": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "Note : This filter needs two layers to work properly. The bottom layer can be a B&W or a colored image, while the top layer contains color patches that will be extrapolated in a smart way (edge-directed) to fill the entire image. At the end, you get a completely recolored image." },
      { "type": "separator" },
      { "type": "note", "text": "Auteur / Author : David Tschumperlé.      Dernière mise à jour: 2013/01/18 samj." }
      ]
    },
    {
      "name": "Relief A", "lang": "en", "command": "samj_Relief_A", "command_preview": "samj_Relief_A", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Vanvliet</span>" },
      { "type": "float", "name": "Variation", "default": "3", "min": "0", "max": "6", "pos": "1" },
      { "type": "int", "name": "Order", "default": "1", "min": "0", "max": "3", "pos": "2" },
      { "type": "choice", "name": "Axis", "default": "0", "pos": "3", "choices": { "0": "X", "1": "Y", "2": "-X", "3": "-Y" } },
      { "type": "choice", "name": "Boundary", "default": "1", "pos": "4", "choices": { "0": "Dirichlet", "1": "Neumann" } },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Iain Fergusson - Simplelocal Contrast</span>" },
      { "type": "float", "name": "Edge Sensitivity", "default": "16", "min": "0", "max": "25", "pos": "5" },
      { "type": "int", "name": "Itérations", "default": "1", "min": "1", "max": "5", "pos": "6" },
      { "type": "float", "name": "Paint effect", "default": "50", "min": "0", "max": "50", "pos": "7" },
      { "type": "choice", "name": "Channels", "default": "1", "pos": "8", "choices": { "0": "Colour", "1": "Luminance Only" } },
      { "type": "float", "name": "Pre gamma", "default": "1.0", "min": "0.1", "max": "5", "pos": "9" },
      { "type": "float", "name": "Post gamma", "default": "1.2", "min": "0.1", "max": "5", "pos": "10" },
      { "type": "note", "text": "Luminance Mask" },
      { "type": "float", "name": "Blacks", "default": "1", "min": "0", "max": "1", "pos": "11" },
      { "type": "float", "name": "Dark grey", "default": "1", "min": "0", "max": "1", "pos": "12" },
      { "type": "float", "name": "Mid grey", "default": "1", "min": "0", "max": "1", "pos": "13" },
      { "type": "float", "name": "Light grey", "default": "1", "min": "0", "max": "1", "pos": "14" },
      { "type": "float", "name": "Whites", "default": "1", "min": "0", "max": "1", "pos": "15" },
      { "type": "choice", "name": "Parallel Processing", "default": "1", "pos": "16", "choices": { "0": "Auto", "1": "None" } },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Wavelet Sharpen</span>" },
      { "type": "choice", "name": "Sharpen", "default": "0", "pos": "17", "choices": { "0": "Sharpen A", "1": "Sharpen B", "2": "Sharpen A B" } },
      { "type": "choice", "name": "Sharpen A Type", "default": "0", "pos": "18", "choices": { "0": "Decompose 2", "1": "Decompose 6" } },
      { "type": "int", "name": "Sharpen A Itérations", "default": "0", "min": "0", "max": "2", "pos": "19" },
      { "type": "choice", "name": "Sharpen B Type", "default": "0", "pos": "20", "choices": { "0": "Decompose 2", "1": "Decompose 6" } },
      { "type": "int", "name": "Sharpen B Itérations", "default": "0", "min": "0", "max": "2", "pos": "21" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Relief</span>" },
      { "type": "float", "name": "Cut A %", "default": "0", "min": "0", "max": "100", "pos": "22" },
      { "type": "float", "name": "Cut B %", "default": "100", "min": "0", "max": "100", "pos": "23" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Update : 2020/10/24." }
      ]
    },
    {
      "name": "Sample Image", "lang": "en", "command": "fx_image_sample", "command_preview": "fx_image_sample_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Loads a predefined sample image. " },
      { "type": "separator" },
      { "type": "choice", "name": "Input", "default": "0", "pos": "1", "choices": { "0": "Random", "1": "Apples", "2": "Balloons", "3": "Barbara", "4": "Boats", "5": "Bottles", "6": "Butterfly", "7": "Cameraman", "8": "Car", "9": "Cat", "10": "Chick", "11": "Cliff", "12": "Colorful", "13": "David", "14": "Dog", "15": "Duck", "16": "Eagle", "17": "Elephant", "18": "Earth", "19": "Flower", "20": "Fruits", "21": "Gmicky (Deevad)", "22": "Gmicky (Mahvin)", "23": "Gmicky & Wilber", "24": "Greece", "25": "Gummy", "26": "House", "27": "Inside", "28": "Landscape", "29": "Leaf", "30": "Lena", "31": "Leno", "32": "Lion", "33": "Mandrill", "34": "Mona Lisa", "35": "Monkey", "36": "Parrots", "37": "Pencils", "38": "Peppers", "39": "Portrait0", "40": "Portrait1", "41": "Portrait2", "42": "Portrait3", "43": "Portrait4", "44": "Portrait5", "45": "Portrait6", "46": "Portrait7", "47": "Portrait8", "48": "Portrait9", "49": "Roddy", "50": "Rooster", "51": "Rose", "52": "Square", "53": "Swan", "54": "Teddy", "55": "Tiger", "56": "Tulips", "57": "Wall", "58": "Waterfall", "59": "Zelda" } },
      { "type": "note", "text": "Choosing 0 for parameters Width or Height means Automatic. " },
      { "type": "int", "name": "Width", "default": "0", "min": "0", "max": "1024", "pos": "2" },
      { "type": "int", "name": "Height", "default": "0", "min": "0", "max": "1024", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2017/01/16." }
      ]
    },
    {
      "name": "Segments Points TSP", "lang": "en", "command": "samj_TSP_Segments_GUI", "command_preview": "samj_TSP_Segments_GUI", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "TSP - samj_Masques_Noir_Et_Blanc" },
      { "type": "float", "name": "1 - Flou/Blur", "default": "3", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "2 - Masque/Mask %", "default": "50", "min": "20", "max": "80", "pos": "2" },
      { "type": "separator" },
      { "type": "float", "name": "3 - Variation Segments", "default": "2", "min": "0", "max": "10", "pos": "3" },
      { "type": "float", "name": "4 - Densité/Density", "default": "0.5", "min": "0.01", "max": "1", "pos": "4" },
      { "type": "int", "name": "5 - Graine/Seed", "default": "12345", "min": "0", "max": "123456", "pos": "5" },
      { "type": "int", "name": "6 - Dilate", "default": "0", "min": "0", "max": "10", "pos": "6" },
      { "type": "color", "name": "7 8 9 10 - Fond/Background", "default": "0,0,0,255", "pos": "7", "visibility": "0" },
      { "type": "int", "name": "11 - Deformation", "default": "0", "min": "0", "max": "10", "pos": "11" },
      { "type": "float", "name": "12 - Boost Couleur/Color", "default": "1", "min": "1", "max": "1.2", "pos": "12" },
      { "type": "choice", "name": "13 - X", "default": "1", "pos": "13", "choices": { "0": "Sans/Without", "1": "X" } },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2022/08/28." }
      ]
    },
    {
      "name": "Solve Maze", "lang": "en", "command": "fx_solve_maze", "command_preview": "fx_solve_maze_preview", "parameters": [
      { "type": "note", "text": "<span color=\"#EE5500\">Description:</span> Automatically solves a maze image. " },
      { "type": "separator" },
      { "type": "point", "name": "Starting Point (%)", "position": "5,5", "pos": "1" },
      { "type": "point", "name": "Ending Point (%)", "position": "95,95", "pos": "3" },
      { "type": "float", "name": "Smoothness", "default": "0.1", "min": "0", "max": "1", "pos": "5" },
      { "type": "int", "name": "Thickness", "default": "3", "min": "1", "max": "10", "pos": "6" },
      { "type": "color", "name": "Color", "default": "255,0,0", "pos": "7" },
      { "type": "choice", "name": "Maze Type", "default": "0", "pos": "10", "choices": { "0": "Dark Walls", "1": "White Walls" } },
      { "type": "separator" },
      { "type": "note", "text": "Author: David Tschumperlé.      Latest Update: 2011/09/01." }
      ]
    },
    {
      "name": "SVG Symetries A", "lang": "en", "command": "samj_SVG_Symetries_A", "command_preview": "samj_SVG_Symetries_A_preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Prévisualisation : Les couleurs sont aléatoires." },
      { "type": "note", "text": "Preview : The colors displayed are random." },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Formes</span>" },
      { "type": "int", "name": "1 Répétitions", "default": "8", "min": "3", "max": "90", "pos": "1" },
      { "type": "float", "name": "2 Amplitude A", "default": "0", "min": "0", "max": "1", "pos": "2" },
      { "type": "float", "name": "3 Angle A", "default": "0", "min": "-2", "max": "2", "pos": "3" },
      { "type": "float", "name": "4 Amplitude B", "default": "0.33", "min": "0", "max": "1", "pos": "4" },
      { "type": "float", "name": "5 Angle B", "default": "1", "min": "-2", "max": "2", "pos": "5" },
      { "type": "float", "name": "6 Amplitude C", "default": "0.66", "min": "0", "max": "1", "pos": "6" },
      { "type": "float", "name": "7 Angle C", "default": "-1", "min": "-2", "max": "2", "pos": "7" },
      { "type": "float", "name": "8 Amplitude D", "default": "1", "min": "0", "max": "1", "pos": "8" },
      { "type": "float", "name": "9 Angle D", "default": "0.5", "min": "-2", "max": "2", "pos": "9" },
      { "type": "separator" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">SVG</span>" },
      { "type": "choice", "name": "10 - Couleur ligne/ Stroke Color", "default": "0", "pos": "10", "choices": { "0": "Black", "1": "Blue", "2": "Brown", "3": "Chartreuse", "4": "Chocolate", "5": "Coral", "6": "Cyan", "7": "DarkRed", "8": "DeepPink", "9": "FireBrick", "10": "ForestGreen", "11": "Fuchsia", "12": "Gold", "13": "Green", "14": "HotPink", "15": "Indigo", "16": "Lime", "17": "Magenta", "18": "Maroon", "19": "Olive", "20": "Orange", "21": "Orchid", "22": "Pink", "23": "Purple", "24": "Red", "25": "Salmon", "26": "SeaGreen", "27": "Sienna", "28": "Violet", "29": "Wheat", "30": "White", "31": "Yellow" } },
      { "type": "int", "name": "11 - Épaisseur Ligne/ Stroke Width", "default": "2", "min": "1", "max": "10", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "SVG - Filtre Ombre Portée/Drop Shadow Filter " },
      { "type": "bool", "name": "12 - Ombre Portée/Drop Shadow", "default": "0", "pos": "12" },
      { "type": "int", "name": "13 - X", "default": "-5", "min": "-10", "max": "10", "pos": "13" },
      { "type": "int", "name": "14 - Y", "default": "5", "min": "-10", "max": "10", "pos": "14" },
      { "type": "choice", "name": "15 - Couleur Ombre/ Shadow Color", "default": "0", "pos": "15", "choices": { "0": "Black", "1": "Blue", "2": "Brown", "3": "Chartreuse", "4": "Chocolate", "5": "Coral", "6": "Cyan", "7": "DarkRed", "8": "DeepPink", "9": "FireBrick", "10": "ForestGreen", "11": "Fuchsia", "12": "Gold", "13": "Green", "14": "HotPink", "15": "Indigo", "16": "Lime", "17": "Magenta", "18": "Maroon", "19": "Olive", "20": "Orange", "21": "Orchid", "22": "Pink", "23": "Purple", "24": "Red", "25": "Salmon", "26": "SeaGreen", "27": "Sienna", "28": "Violet", "29": "Wheat", "30": "White", "31": "Yellow" } },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2022/04/10." }
      ]
    },
    {
      "name": "SVG TSP", "lang": "en", "command": "samj_GUI_Test_Liste_Points_TSP", "command_preview": "samj_GUI_Test_Liste_Points_TSP_Preview", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Les zones noires des masques seront remplies de lignes." },
      { "type": "note", "text": "The black areas of the masks will be filled with lines." },
      { "type": "separator" },
      { "type": "note", "text": "Masque/Mask 1 - Gauche/Left" },
      { "type": "float", "name": "1 - Flou/Blur", "default": "0", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "2 - Masque/Mask %", "default": "50", "min": "0", "max": "100", "pos": "2" },
      { "type": "separator" },
      { "type": "note", "text": "Masque/Mask 2 - Droite/Right" },
      { "type": "float", "name": "3 - Flou/Blur", "default": "3", "min": "0", "max": "10", "pos": "3" },
      { "type": "float", "name": "4 - Masque/Mask %", "default": "48", "min": "0", "max": "100", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "SVG" },
      { "type": "separator" },
      { "type": "float", "name": "5 - Précision", "default": "1", "min": "0.1", "max": "2", "pos": "5" },
      { "type": "choice", "name": "6 - Couleur ligne/ Stroke Color", "default": "0", "pos": "6", "choices": { "0": "Black", "1": "Blue", "2": "Brown", "3": "Chartreuse", "4": "Chocolate", "5": "Coral", "6": "Cyan", "7": "DarkRed", "8": "DeepPink", "9": "FireBrick", "10": "ForestGreen", "11": "Fuchsia", "12": "Gold", "13": "Green", "14": "HotPink", "15": "Indigo", "16": "Lime", "17": "Magenta", "18": "Maroon", "19": "Olive", "20": "Orange", "21": "Orchid", "22": "Pink", "23": "Purple", "24": "Red", "25": "Salmon", "26": "SeaGreen", "27": "Sienna", "28": "Violet", "29": "Wheat", "30": "White", "31": "Yellow" } },
      { "type": "int", "name": "7 - Épaisseur Ligne/ Stroke Width", "default": "2", "min": "1", "max": "10", "pos": "7" },
      { "type": "separator" },
      { "type": "bool", "name": "8 - 2 Contours", "default": "1", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "SVG - Filtre Ombre Portée/Drop Shadow Filter " },
      { "type": "bool", "name": "9 - Ombre Portée/Drop Shadow", "default": "1", "pos": "9" },
      { "type": "int", "name": "10 - X", "default": "-5", "min": "-10", "max": "10", "pos": "10" },
      { "type": "int", "name": "11 - Y", "default": "5", "min": "-10", "max": "10", "pos": "11" },
      { "type": "choice", "name": "12 - Couleur Ombre/ Shadow Color", "default": "0", "pos": "12", "choices": { "0": "Black", "1": "Blue", "2": "Brown", "3": "Chartreuse", "4": "Chocolate", "5": "Coral", "6": "Cyan", "7": "DarkRed", "8": "DeepPink", "9": "FireBrick", "10": "ForestGreen", "11": "Fuchsia", "12": "Gold", "13": "Green", "14": "HotPink", "15": "Indigo", "16": "Lime", "17": "Magenta", "18": "Maroon", "19": "Olive", "20": "Orange", "21": "Orchid", "22": "Pink", "23": "Purple", "24": "Red", "25": "Salmon", "26": "SeaGreen", "27": "Sienna", "28": "Violet", "29": "Wheat", "30": "White", "31": "Yellow" } },
      { "type": "separator" },
      { "type": "bool", "name": "13 - Courbes de Bézier/Curves", "default": "1", "pos": "13" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2022/03/18." }
      ]
    },
    {
      "name": "Test A", "lang": "en", "command": "samj_test_A", "command_preview": "samj_test_A", "parameters": [
      { "type": "note", "text": "samj_test_A" },
      { "type": "int", "name": "A", "default": "64", "min": "0", "max": "255", "pos": "1" },
      { "type": "int", "name": "B", "default": "192", "min": "0", "max": "255", "pos": "2" },
      { "type": "int", "name": "C", "default": "500", "min": "0", "max": "10000", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2015/03/14." }
      ]
    },
    {
      "name": "Test B", "lang": "en", "command": "samj_test_B", "command_preview": "gui_no_preview", "parameters": [
      { "type": "note", "text": "samj_test_B" },
      { "type": "int", "name": "A", "default": "100", "min": "10", "max": "200", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2015/03/15." }
      ]
    },
    {
      "name": "Test C", "lang": "en", "command": "samj_test_C", "command_preview": "gui_no_preview", "parameters": [
      { "type": "note", "text": "samj_test_C" },
      { "type": "int", "name": "A", "default": "100", "min": "10", "max": "200", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2015/03/16." }
      ]
    },
    {
      "name": "Test Courbes", "lang": "en", "command": "samj_test_x_color_curves", "command_preview": "samj_test_x_color_curves", "parameters": [
      { "type": "note", "text": "Demo. samj_test_x_color_curves" },
      { "type": "note", "text": "" },
      { "type": "choice", "name": "Utiliser", "default": "1", "pos": "1", "choices": { "0": "x_color_curves", "1": "gimp_curves_interactive" } },
      { "type": "choice", "name": "Appliquer courbes", "default": "0", "pos": "2", "choices": { "0": "Aucun", "1": "Appliquer le Dernier", "2": "RGB", "3": "CMY", "4": "CMYK", "5": "HSI", "6": "HSL", "7": "HSV", "8": "Lab", "9": "Lch", "10": "YCbCr" } },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2015/03/04." }
      ]
    },
    {
      "name": "Test D", "lang": "en", "command": "samj_test_D", "command_preview": "samj_test_D", "parameters": [
      { "type": "note", "text": "samj_test_D" },
      { "type": "float", "name": "Var_sub", "default": "40", "min": "0", "max": "255", "pos": "1" },
      { "type": "float", "name": "Var_n", "default": "255", "min": "0", "max": "255", "pos": "2" },
      { "type": "float", "name": "Var_spread", "default": "10", "min": "0", "max": "60", "pos": "3" },
      { "type": "float", "name": "Var_dilate", "default": "30", "min": "0", "max": "60", "pos": "4" },
      { "type": "float", "name": "Var_blur", "default": "5", "min": "0", "max": "20", "pos": "5" },
      { "type": "float", "name": "Déformation", "default": "0", "min": "0", "max": "5", "pos": "6" },
      { "type": "separator" },
      { "type": "int", "name": "Levels", "default": "8", "min": "1", "max": "256", "pos": "7" },
      { "type": "float", "name": "Smoothness", "default": "0", "min": "0", "max": "5", "pos": "8" },
      { "type": "float", "name": "Var_dilate_circ", "default": "4", "min": "0", "max": "60", "pos": "9" },
      { "type": "separator" },
      { "type": "float", "name": "Inner fading", "default": "0", "min": "0", "max": "100", "pos": "10" },
      { "type": "float", "name": "Outer fading", "default": "25", "min": "0", "max": "100", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/01/19." }
      ]
    },
    {
      "name": "Test Dither Color", "lang": "en", "command": "samj_test_Dither_Color", "command_preview": "samj_test_Dither_Color", "parameters": [
      { "type": "note", "text": "samj_test_Dither_Color" },
      { "type": "int", "name": "Flou", "default": "2", "min": "0", "max": "10", "pos": "1" },
      { "type": "int", "name": "Dilatation", "default": "0", "min": "0", "max": "10", "pos": "2" },
      { "type": "color", "name": "Couleur Fond", "default": "230,230,150", "pos": "3" },
      { "type": "float", "name": "Tolerance (%)", "default": "0", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "Smoothness (%)", "default": "0", "min": "0", "max": "100", "pos": "7" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/11/08." }
      ]
    },
    {
      "name": "Test E", "lang": "en", "command": "samj_test_E", "command_preview": "samj_test_E", "parameters": [
      { "type": "note", "text": "samj_test_E" },
      { "type": "note", "text": "<span foreground=\"orangered\">Exemples</span>" },
      { "type": "choice", "name": "Exemple", "default": "0", "pos": "1", "choices": { "0": "Non/No", "1": "A", "2": "B", "3": "C" } },
      { "type": "note", "text": "<span foreground=\"orangered\">diffusiontensors</span>" },
      { "type": "float", "name": "sharpness", "default": "0.7", "min": "0", "max": "2", "pos": "2" },
      { "type": "float", "name": "anisotropy", "default": "0.3", "min": "0", "max": "1", "pos": "3" },
      { "type": "float", "name": "alpha", "default": "0.6", "min": "0", "max": "10", "pos": "4" },
      { "type": "float", "name": "sigma", "default": "1.1", "min": "0", "max": "10", "pos": "5" },
      { "type": "bool", "name": "is_sqrt", "default": "0", "pos": "6" },
      { "type": "note", "text": "<span foreground=\"orangered\">Blend</span>" },
      { "type": "color", "name": "Fond / Background Color", "default": "200,125,50", "pos": "7" },
      { "type": "choice", "name": "Mode", "default": "0", "pos": "10", "choices": { "0": "Add", "1": "Alpha", "2": "And", "3": "Average", "4": "Blue", "5": "Burn", "6": "Darken", "7": "Difference", "8": "Divide", "9": "Dodge", "10": "Edges", "11": "Exclusion", "12": "Freeze", "13": "Grain extract", "14": "Grain merge", "15": "Green", "16": "Hard light", "17": "Hard mix", "18": "Hue", "19": "Interpolation", "20": "Lighten", "21": "Lightness", "22": "Linear burn", "23": "Linear light", "24": "Luminance", "25": "Multiply", "26": "Negation", "27": "Or", "28": "Overlay", "29": "Pin light", "30": "Red", "31": "Reflect", "32": "Saturation", "33": "Shape Average", "34": "Shape Average0", "35": "Soft burn", "36": "Soft dodge", "37": "Soft light", "38": "Screen", "39": "Stamp", "40": "Subtract", "41": "Value", "42": "Vivid light", "43": "Xor" } },
      { "type": "float", "name": "Opacity", "default": "1", "min": "0", "max": "1", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/01/19." }
      ]
    },
    {
      "name": "Test F", "lang": "en", "command": "samj_test_F", "command_preview": "samj_test_F", "parameters": [
      { "type": "note", "text": "samj_test_F" },
      { "type": "note", "text": "<span foreground=\"orangered\">Flou Effet Verre</span>" },
      { "type": "float", "name": "A", "default": "40", "min": "0.1", "max": "200", "pos": "1" },
      { "type": "float", "name": "B", "default": "50", "min": "0.1", "max": "200", "pos": "2" },
      { "type": "int", "name": "Itérations", "default": "1", "min": "1", "max": "8", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2015/04/20." }
      ]
    },
    {
      "name": "Test G", "lang": "en", "command": "samj_test_G", "command_preview": "samj_test_G", "parameters": [
      { "type": "note", "text": "samj_test_G" },
      { "type": "int", "name": "A", "default": "0", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "B", "default": "0", "min": "0", "max": "10", "pos": "2" },
      { "type": "float", "name": "C", "default": "0", "min": "0", "max": "1", "pos": "3" },
      { "type": "int", "name": "D", "default": "30", "min": "0", "max": "100", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2016/01/20." }
      ]
    },
    {
      "name": "Test Solidify", "lang": "en", "command": "samj_Test_Solidify", "command_preview": "samj_Test_Solidify ", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">samj_Quelques_Isophotes</span>" },
      { "type": "int", "name": "Épaisseur", "default": "10", "min": "1", "max": "32", "pos": "1" },
      { "type": "int", "name": "Précision", "default": "10", "min": "1", "max": "32", "pos": "2" },
      { "type": "float", "name": "Coeff précision", "default": "1", "min": "0.1", "max": "8", "pos": "3" },
      { "type": "float", "name": "Coeff Flou", "default": "0.02", "min": "0", "max": "1", "pos": "4" },
      { "type": "int", "name": "Isophotes", "default": "8", "min": "2", "max": "32", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Solidify</span>" },
      { "type": "bool", "name": "Valider Solidify", "default": "1", "pos": "6" },
      { "type": "float", "name": "Smoothness %", "default": "75", "min": "0", "max": "100", "pos": "7" },
      { "type": "choice", "name": "Diffusion Type", "default": "0", "pos": "8", "choices": { "0": "Isotropic", "1": "Delaunay Oriented", "2": "Edge Oriented" } },
      { "type": "int", "name": "Diffusion Iter", "default": "20", "min": "1", "max": "200", "pos": "9" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2017/01/05." }
      ]
    },
    {
      "name": "Tests Fill", "lang": "en", "command": "samj_Tests_Fill", "command_preview": "samj_Tests_Fill", "parameters": [
      { "type": "note", "text": "Adaptation des exemples de David Tschumperlé, Garry Osgood" },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">Type Fill</span>" },
      { "type": "choice", "name": "1 - Fill", "default": "0", "pos": "1", "choices": { "0": "Logo", "1": "Julia 1", "2": "Julia 2", "3": "Courbe", "4": "Vector Painting", "5": "Gradients", "6": "Colorisation", "7": "Lignes", "8": "Motifs", "9": "Couleur", "10": "Negatif", "11": "Artistic" } },
      { "type": "separator" },
      { "type": "note", "text": "<span foreground=\"orangered\">----- Logo -----</span>" },
      { "type": "int", "name": "2 - Rayon", "default": "30", "min": "0", "max": "100", "pos": "2" },
      { "type": "note", "text": "<span foreground=\"orangered\">----- Julia 1 -----</span>" },
      { "type": "float", "name": "3 - Zoom", "default": "2", "min": "0.5", "max": "4", "pos": "3" },
      { "type": "float", "name": "4 - A", "default": "-0.8", "min": "-1.6", "max": "1.6", "pos": "4" },
      { "type": "float", "name": "5 - B", "default": "0.4", "min": "-0.8", "max": "0.8", "pos": "5" },
      { "type": "note", "text": "<span foreground=\"orangered\">----- Courbe -----</span>" },
      { "type": "bool", "name": "6 - Display Parametric", "default": "1", "pos": "6" },
      { "type": "note", "text": "<span foreground=\"orangered\">----- Vector Painting -----</span>" },
      { "type": "int", "name": "7 - A", "default": "1", "min": "1", "max": "50", "pos": "7" },
      { "type": "note", "text": "<span foreground=\"orangered\">----- Gradients -----</span>" },
      { "type": "choice", "name": "8 - Choix", "default": "0", "pos": "8", "choices": { "0": "H", "1": "V", "2": "H V", "3": "Sur Image", "4": "2 Couleurs" } },
      { "type": "note", "text": "<span foreground=\"orangered\">----- Lignes -----</span>" },
      { "type": "choice", "name": "9 - Choix", "default": "0", "pos": "9", "choices": { "0": "Diagonale", "1": "Diagonale Négatif", "2": "45 Degrés", "3": "Verticales Grises 4 Pix.", "4": "Médiane" } },
      { "type": "note", "text": "<span foreground=\"orangered\">----- Motifs -----</span>" },
      { "type": "choice", "name": "10 - Choix", "default": "0", "pos": "10", "choices": { "0": "A", "1": "B" } },
      { "type": "note", "text": "<span foreground=\"orangered\">----- Couleur -----</span>" },
      { "type": "color", "name": "11,12,13 - Couleur", "default": "120,40,240", "pos": "11" },
      { "type": "note", "text": "<span foreground=\"orangered\">----- Artistic -----</span>" },
      { "type": "choice", "name": "14 - Choix", "default": "0", "pos": "14", "choices": { "0": "Série Dégradés V", "1": "Série Dégradés H", "2": "Série 2 - Dégradés V", "3": "Série 2 - Dégradés H", "4": "Hallucinogen", "5": "Zones Couleurs", "6": "XorXY", "7": "XorXY Blend", "8": "Distraction", "9": "Carrés", "10": "Rayons", "11": "Rayé", "12": "Tamis" } },
      { "type": "float", "name": "15 - Variation Artistic", "default": "50", "min": "0", "max": "100", "pos": "15" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2020/11/29." }
      ]
    },
    {
      "name": "Texture 002", "lang": "en", "command": "samj_gimp_texture_zero_zero_deux", "command_preview": "samj_gimp_texture_zero_zero_deux", "parameters": [
      { "type": "int", "name": "Détails", "default": "0", "min": "0", "max": "127", "pos": "1" },
      { "type": "float", "name": "Résolution", "default": "10", "min": "4", "max": "20", "pos": "2" },
      { "type": "float", "name": "Threshold", "default": "4", "min": "2", "max": "20", "pos": "3" },
      { "type": "separator" },
      { "type": "float", "name": "Edges", "default": "10", "min": "5", "max": "20", "pos": "4" },
      { "type": "float", "name": "Blend Colors", "default": "0.5", "min": "0", "max": "1", "pos": "5" },
      { "type": "bool", "name": "Colors Boost", "default": "1", "pos": "6" },
      { "type": "float", "name": "Boost Intensity", "default": "1", "min": "0", "max": "1", "pos": "7" },
      { "type": "separator" },
      { "type": "bool", "name": "Black Lines", "default": "1", "pos": "8" },
      { "type": "float", "name": "Blend Black Lines", "default": "0.3", "min": "0", "max": "1", "pos": "9", "visibility": "0" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Latest update : 2016/11/16." }
      ]
    },
    {
      "name": "Texture 003", "lang": "en", "command": "samj_Texture_Aquarelle_1", "command_preview": "samj_Texture_Aquarelle_1", "parameters": [
      { "type": "note", "text": "Texture" },
      { "type": "float", "name": "Amplitude Noise", "default": "10", "min": "5", "max": "200", "pos": "1" },
      { "type": "float", "name": "Density Hardsketchbw", "default": "10", "min": "5", "max": "100", "pos": "2" },
      { "type": "float", "name": "Spread Variations", "default": "4", "min": "3", "max": "20", "pos": "3" },
      { "type": "float", "name": "Amplitude Water", "default": "3", "min": "2", "max": "10", "pos": "4" },
      { "type": "separator" },
      { "type": "note", "text": "Couleur / Color" },
      { "type": "color", "name": "Couleur / Color", "default": "251,237,206", "pos": "5" },
      { "type": "float", "name": "Opacité / Opacity", "default": "1", "min": "-1", "max": "1", "pos": "8" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Latest update : 2016/11/16.", "visibility": "0" }
      ]
    },
    {
      "name": "Toile Araignee", "lang": "en", "command": "samj_Toile_D_Araignee", "command_preview": "samj_Toile_D_Araignee", "parameters": [
      { "type": "int", "name": "Détails", "default": "0", "min": "0", "max": "127", "pos": "1" },
      { "type": "float", "name": "Résolution", "default": "10", "min": "4", "max": "20", "pos": "2" },
      { "type": "float", "name": "Threshold", "default": "4", "min": "2", "max": "20", "pos": "3" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Latest update : 2016/11/16." }
      ]
    },
    {
      "name": "Tout Interactif", "lang": "en", "command": "samj_test_tout_interactif", "command_preview": "gui_no_preview", "parameters": [
      { "type": "note", "text": "Demo. Tout interactif" },
      { "type": "note", "text": "" },
      { "type": "note", "text": "2 filtres interactifs successifs : x_paint et threshold" },
      { "type": "note", "text": "x_paint : Choisir un pinceau, appliquer et fermer image" },
      { "type": "note", "text": "threshold : Appliquer la souris et fermer image" },
      { "type": "note", "text": "" },
      { "type": "note", "text": "2 successive interactive filters : x_paint et threshold" },
      { "type": "note", "text": "x_paint : Choose a brush, apply and close picture" },
      { "type": "note", "text": "threshold : Move the mouse and close picture" },
      { "type": "note", "text": "" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2015/03/03." }
      ]
    },
    {
      "name": "Triangles Lignes - Lines", "lang": "en", "command": "samj_Triangles_Lignes", "command_preview": "samj_Triangles_Lignes", "parameters": [
      { "type": "separator" },
      { "type": "note", "text": "Ce filtre est très lent - This filter is very slow" },
      { "type": "separator" },
      { "type": "int", "name": "1 - Densité/Density", "default": "2000", "min": "10", "max": "10000", "pos": "1" },
      { "type": "float", "name": "2 - Variation", "default": "3", "min": "0", "max": "100", "pos": "2" },
      { "type": "int", "name": "3 - Graine/Seed", "default": "1234", "min": "0", "max": "65536", "pos": "3" },
      { "type": "int", "name": "4 - Degradation", "default": "0", "min": "0", "max": "10", "pos": "4" },
      { "type": "note", "text": "Triangles" },
      { "type": "float", "name": "5 - Alpha", "default": "1", "min": "0", "max": "1", "pos": "5" },
      { "type": "separator" },
      { "type": "note", "text": "Lignes/Lines" },
      { "type": "float", "name": "6 - Densité/Density", "default": "1.5", "min": "0", "max": "100", "pos": "6" },
      { "type": "float", "name": "7 - Alpha LA", "default": "0", "min": "0", "max": "1", "pos": "7" },
      { "type": "float", "name": "8 - Alpha LB", "default": "0.5", "min": "0", "max": "1", "pos": "8" },
      { "type": "float", "name": "9 - Alpha LC", "default": "0.5", "min": "0", "max": "1", "pos": "9" },
      { "type": "int", "name": "10 - Dilate", "default": "1", "min": "1", "max": "5", "pos": "10" },
      { "type": "separator" },
      { "type": "note", "text": "Fond/Background" },
      { "type": "color", "name": "11 12 13 14 - Fond/Background", "default": "0,0,0,255", "pos": "11" },
      { "type": "separator" },
      { "type": "note", "text": "samj - Dernière mise à jour : 2022/08/25." }
      ]
    }
    ]
  },
  {
    "name": "Zonderr", "filters": [
    {
      "name": "Demo Mathmap RA", "lang": "en", "command": "demo_ra", "command_preview": "demo_ra", "parameters": [
      { "type": "note", "text": "mathmap ra: demo" },
      { "type": "separator" },
      { "type": "float", "name": "Radius Scale", "default": "1", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "Angle Scale", "default": "1", "min": "0", "max": "10", "pos": "2" }
      ]
    },
    {
      "name": "Demo Mathmap XY", "lang": "en", "command": "demo_xy", "command_preview": "demo_xy", "parameters": [
      { "type": "note", "text": "mathmap xy: demo" },
      { "type": "separator" },
      { "type": "float", "name": "X Scale", "default": "1", "min": "0", "max": "10", "pos": "1" },
      { "type": "float", "name": "Y Scale", "default": "1", "min": "0", "max": "10", "pos": "2" }
      ]
    },
    {
      "name": "Fourier Picture Watermark", "lang": "en", "command": "fx_fourier_picture_watermark", "command_preview": "_none_", "parameters": [
      { "type": "float", "name": "Relative Size", "default": "0.2", "min": "0.1", "max": "0.5", "pos": "1" },
      { "type": "separator" },
      { "type": "note", "text": "Note : To make the watermark visible afterwards, use the 'Fourier Analysis' filter. " }
      ]
    },
    {
      "name": "Mathmap Flag", "lang": "en", "command": "mathmap_flag", "command_preview": "mathmap_flag", "parameters": [
      { "type": "float", "name": "Amp", "default": "0.05", "min": "0", "max": "1", "pos": "1" },
      { "type": "float", "name": "Len", "default": "5", "min": "0", "max": "50", "pos": "2" },
      { "type": "int", "name": "Speed", "default": "1", "min": "1", "max": "5", "pos": "3" },
      { "type": "float", "name": "Time", "default": "5", "min": "0", "max": "50", "pos": "4" }
      ]
    },
    {
      "name": "Rel2ellv3", "lang": "en", "command": "mathmap_rel2ellv3", "command_preview": "mathmap_rel2ellv3", "parameters": [
      ]
    },
    {
      "name": "Spiral", "lang": "en", "command": "mathmap_spiral", "command_preview": "mathmap_spiral", "parameters": [
      { "type": "float", "name": "Rotations", "default": "5", "min": "0", "max": "20", "pos": "1" },
      { "type": "float", "name": "Time", "default": "0", "min": "0", "max": "1", "pos": "2" }
      ]
    }
    ]
  }
  ]
}
