{
  "experimentMode": {
    "name": "FragmentEverything",
    "title": "ITERATIVE PRECURSOR EXCLUSION",
    "description": "Creates and updates an exclusion list of the fragmented precursor ions over multiple ID injections to comprehensively enhance the fragmentation of non-redundant precursor ions",
    "details": "Generates one exclusion list per sequence\nUpdates the exclusion list after every injection\nInjects ID samples until all the ions in the sample are fragments or user-defined number of ID samples are reached",
    "imgSrc": "AutomatedIterativePrecursorExclusion.png"
  },
  "experimentTemplate": {
    "settings": [
      {
        "name": "experimentHeaderImage"
      },
      {
        "name": "selectPycoTemplate"
      },
      {
        "name": "experimentDetails"
      },
      {
        "name": "instrumentMethods"
      },
      {
        "name": "experimentParameters"
      }
    ],
    "injections": [
      {
        "name": "customInjectionsGridFragment"
      },
      {
        "name": "standardInjectionsGrid"
      }
    ]
  },
  "experimentConcepts": [
    {
      "experimentParameters": [
        {
          "header": "Experiment Parameters"
        },
        {
          "name": "overrideFactorParameters"
        },
        {
          "name": "exclusionPeakWindowExtension"
        },
        {
          "name": "exclusionTimeParameter"
        },
        {
          "name": "isotopesExclusionList"
        },
        {
          "name": "exclusionListIntensityThreshold"
        }
      ]
    },
    {
      "customInjectionsGridFragment": [
        {
          "name": "fragmentInjectionHeaders"
        },
        {
          "name": "fragmentInjectionColumnHeaders"
        }
      ]
    },
    {
      "fragmentInjectionHeaders": [
        {
          "header": "AcquireX Template Injections"
        },
        {
          "name": "numberOfBlanks",
          "displayName": "# Header Blanks",
          "type": "number",
          "minimumValue": 0,
          "maximumValue": 20,
          "model": 0,
          "errorStatus": false,
          "id": "blankInjections",
          "details": [
            {
              "description": [
                "Step 1: Sample injection",
                "Step 2: Background ion detection",
                "Step 3: Exclusion list creation"
              ]
            }
          ]
        },
        {
          "name": "washFrequency",
          "displayName": "# Wash Frequency",
          "type": "number",
          "minimumValue": 0,
          "maximumValue": 30,
          "model": 0,
          "errorStatus": false,
          "id": "fragmentBetweenInjections"
        },
        {
          "name": "numberOfFragment",
          "displayName": "# Iterative Inj.",
          "type": "number",
          "minimumValue": 0,
          "maximumValue": 30,
          "model": 0,
          "errorStatus": false,
          "id": "sampleInjections",
          "details": [
            {
              "description": [
                "Step 1: New method creation from template method using existing exclusion list",
                "Step 2: Sample injection",
                "Step 3: Exclusion list modification from fragmented precursor ions"
              ]
            }
          ]
        },
        {
          "name": "washBlock",
          "type": "block",
          "id": "insertOrDeleteWashInj"
        }
      ]
    },
    {
      "fragmentInjectionColumnHeaders": [
        {
          "name": "name",
          "displayName": "Name",
          "type": "String"
        },
        {
          "name": "sampleType",
          "displayName": "Type",
          "type": "String"
        },
        {
          "name": "matrix",
          "displayName": "Exclusion Ref",
          "type": "Boolean"
        },
        {
          "name": "instMethod",
          "displayName": "Instrument Method",
          "type": "String"
        },
        {
          "name": "vialPosition",
          "displayName": "Vial",
          "type": "String"
        },
        {
          "name": "injVol",
          "displayName": "Inj Vol(ul)",
          "type": "Number"
        }
      ]
    },
    {
      "experimentHeaderImage": [
        {
          "src": "Automated_Iterative_Precursor_Exclusion.png",
          "type": "image"
        }
      ]
    },
    {
      "instrumentMethods": [
        {
          "header": "Instrument Methods"
        },
        {
          "name": "fullScanMethod",
          "id": "blankMethod",
          "displayName": "Full Scan Method",
          "type": "string",
          "isFullScan": true,
          "needInclusion": false,
          "needExclusion": false,
          "isFragmentType": true,
          "instrumentMethodError": false,
          "model": "",
          "associatedSampleTypeList": [ 1, 2 ],
          "tooltip": {
            "header": "Full Scan Method",
            "message": "The instrument method that the Xcalibur data system uses to generate data for detecting peaks, component-like features, and constant background ions; and to assemble precursor ion exclusion and inclusion lists. Make sure to use an AcquireX template method or that your MS instrument method meets the following criteria:",
            "list": [ "Uses the MS1 Full Scan with a single continuous scan range.", "Turns polarity switching off." ]
          },
          "errorMessage": "The Full Scan Method is not present in the specified path."
        },
        {
          "name": "msnTemplateMethod",
          "id": "mS2Method",
          "displayName": "MSn Template Method",
          "type": "string",
          "isFullScan": false,
          "needInclusion": false,
          "needExclusion": true,
          "isFragmentType": true,
          "instrumentMethodError": false,
          "model": "",
          "associatedSampleTypeList": [ 3 ],
          "tooltip": {
            "header": "MSn Template Method",
            "message": "The instrument method to be combined with precursor exclusion or inclusion lists that an Xcalibur analysis generated using the Full Scan Method. Make sure to use an AcquireX template method or that your MS instrument method meets the following criteria:",
            "list": [
              "(If applicable) Adds the Targeted Mass filter between the MS and ddMS2 scan nodes.",
              "(If applicable) Adds the Targeted Mass Exclusion filter between the MS and ddMS2 scan nodes.",
              "Selects the AcquireX check boxes for the appropriate filters."
            ]
          },
          "errorMessage": "The MSn Template Method is not present in the specified path."
        }
      ]
    },
    {
      "exclusionTimeParameter": {
        "name": "exclusionWindowSeconds",
        "id": "parameter3",
        "displayName": "Exclusion Duration (seconds)",
        "type": "float",
        "min": 1,
        "max": 6000,
        "default": 10,
        "keydown": "validateDecimal",
        "keyup": "checkExclusionTimeLimit",
        "model": "10",
        "tooltip": {
          "header": "Exclusion Duration (seconds)",
          "message": "This parameter applies to any precursor that is fragmented but not contained in an inclusion list. When the fragmented precursor is added to the exclusion list, the exclusion start and end time are applied in the following manner:",
          "list": [
            "Precursor exclusion start time = Scan time - duration value / 2",
            "Precursor exclusion end time = Scan time + duration value / 2"
          ]
        },
        "errorMessage": "Enter a value between 1 and 6000."
      }
    }
  ],


  "modeInfo": {
    "method": [
      {
        "name": "0",
        "format": "{blankMethod}"
      },
      {
        "name": "3",
        "format": "{msnMethod}_Excl_{idString}"
      }
    ],
    "append": [
      {
        "name": "0",
        "boolValue": true
      },
      {
        "name": "3",
        "idNumber": "min:2",
        "boolValue": false
      }
    ],
    "block": [
      {
        "name": "0",
        "idValue": "1"
      },
      {
        "name": "3",
        "idValue": "{idNumber}+1"
      }
    ],
    "sampleId": [
      {
        "name": "0",
        "idValue": "1"
      },
      {
        "name": "3",
        "idValue": "ID {idNumber}"
      }
    ],
    "actions": [
      {
        "name": "0",
        "preValue": "",
        "postValue": ""
      },
      {
        "name": "1",
        "isMatrix": true,
        "preValue": "",
        "postValue": "PostAcquisitionLpeExcAction"
      },
      {
        "name": "3",
        "preValue": "DefaultPreAcquisitionAction",
        "postValue": "PostAcquisitionFragmentAction"
      }
    ],
    "massListName": [
      {
        "name": "0",
        "ApiValue": ""
      },
      {
        "name": "1",
        "isMatrix": true,
        "ApiValue": "GetName"
      },
      {
        "name": "2",
        "ApiValue": "GetName"
      },
      {
        "name": "3",
        "ApiValue": "GetName,SampleId"
      }
    ],
    "massListNextName": [
      {
        "name": "0",
        "ApiValue": ""
      },
      {
        "name": "3",
        "ApiValue": "GetNextName,SampleId"
      }
    ],
    "name": "FragmentEverything"
  },
  "version": "1.0"
}