{
  "apiVersion": 62,
  "assignments": [
    {
      "name": "close_date",
      "label": "close date",
      "locationX": 50,
      "locationY": 695,
      "assignmentItems": [
        {
          "assignToReference": "$Record.Close_Date__c",
          "operator": "Assign",
          "value": {
            "elementReference": "$Record.CloseDate"
          }
        }
      ],
      "connector": {
        "targetReference": "Copy_1_of_if_close_date_is_not_null"
      }
    },
    {
      "name": "close_date_is_new",
      "label": "close date is new",
      "locationX": 50,
      "locationY": 1295,
      "assignmentItems": [
        {
          "assignToReference": "$Record.CloseDate",
          "operator": "Assign",
          "value": {
            "elementReference": "$Record.Close_Date__c"
          }
        }
      ],
      "connector": {
        "targetReference": "close_date_is_change"
      }
    },
    {
      "name": "close_date_new",
      "label": "close date new",
      "locationX": 50,
      "locationY": 1595,
      "assignmentItems": [
        {
          "assignToReference": "$Record.Close_Date__c",
          "operator": "Assign",
          "value": {
            "elementReference": "$Record.CloseDate"
          }
        }
      ],
      "connector": {
        "targetReference": "if_stage_is_deal_close"
      }
    },
    {
      "name": "close_date_set",
      "label": "close date set",
      "locationX": 50,
      "locationY": 395,
      "assignmentItems": [
        {
          "assignToReference": "$Record.CloseDate",
          "operator": "Assign",
          "value": {
            "elementReference": "$Record.Launch_Date__c"
          }
        },
        {
          "assignToReference": "$Record.Close_Date__c",
          "operator": "Assign",
          "value": {
            "elementReference": "$Record.Launch_Date__c"
          }
        }
      ],
      "connector": {
        "targetReference": "if_close_date_is_not_null"
      }
    },
    {
      "name": "closedate_set",
      "label": "closedate set",
      "locationX": 50,
      "locationY": 995,
      "assignmentItems": [
        {
          "assignToReference": "$Record.CloseDate",
          "operator": "Assign",
          "value": {
            "elementReference": "$Record.Close_Date__c"
          }
        }
      ],
      "connector": {
        "targetReference": "close_date_new_is_change"
      }
    },
    {
      "name": "set_close_date",
      "label": "set close date",
      "locationX": 50,
      "locationY": 1895,
      "assignmentItems": [
        {
          "assignToReference": "$Record.Close_Date__c",
          "operator": "Assign",
          "value": {
            "elementReference": "$Flow.CurrentDate"
          }
        },
        {
          "assignToReference": "$Record.CloseDate",
          "operator": "Assign",
          "value": {
            "elementReference": "$Flow.CurrentDate"
          }
        }
      ]
    }
  ],
  "decisions": [
    {
      "name": "close_date_is_change",
      "label": "close date is change",
      "locationX": 182,
      "locationY": 1487,
      "defaultConnector": {
        "targetReference": "if_stage_is_deal_close"
      },
      "defaultConnectorLabel": "Default Outcome",
      "rules": [
        {
          "name": "close_date_change",
          "conditionLogic": "and",
          "conditions": [
            {
              "leftValueReference": "$Record.CloseDate",
              "operator": "IsChanged",
              "rightValue": {
                "booleanValue": true
              }
            },
            {
              "leftValueReference": "$Record.Close_Date__c",
              "operator": "NotEqualTo",
              "rightValue": {
                "elementReference": "$Record.CloseDate"
              }
            }
          ],
          "connector": {
            "targetReference": "close_date_new"
          },
          "label": "close date change"
        }
      ]
    },
    {
      "name": "close_date_is_null",
      "label": "close date is null",
      "locationX": 182,
      "locationY": 287,
      "defaultConnector": {
        "targetReference": "if_close_date_is_not_null"
      },
      "defaultConnectorLabel": "Default Outcome",
      "rules": [
        {
          "name": "close_date_null",
          "conditionLogic": "and",
          "conditions": [
            {
              "leftValueReference": "$Record.CloseDate",
              "operator": "IsNull",
              "rightValue": {
                "booleanValue": true
              }
            },
            {
              "leftValueReference": "$Record.Close_Date__c",
              "operator": "IsNull",
              "rightValue": {
                "booleanValue": true
              }
            },
            {
              "leftValueReference": "$Record.Launch_Date__c",
              "operator": "IsNull",
              "rightValue": {
                "booleanValue": false
              }
            }
          ],
          "connector": {
            "targetReference": "close_date_set"
          },
          "label": "close date null"
        }
      ]
    },
    {
      "name": "close_date_new_is_change",
      "label": "close date new is change",
      "locationX": 182,
      "locationY": 1187,
      "defaultConnector": {
        "targetReference": "close_date_is_change"
      },
      "defaultConnectorLabel": "Default Outcome",
      "rules": [
        {
          "name": "new_is_change",
          "conditionLogic": "and",
          "conditions": [
            {
              "leftValueReference": "$Record.Close_Date__c",
              "operator": "IsChanged",
              "rightValue": {
                "booleanValue": true
              }
            },
            {
              "leftValueReference": "$Record.Close_Date__c",
              "operator": "NotEqualTo",
              "rightValue": {
                "elementReference": "$Record.CloseDate"
              }
            }
          ],
          "connector": {
            "targetReference": "close_date_is_new"
          },
          "label": "new is change"
        }
      ]
    },
    {
      "name": "Copy_1_of_if_close_date_is_not_null",
      "label": "Copy 1 of if close date is not null",
      "locationX": 182,
      "locationY": 887,
      "defaultConnector": {
        "targetReference": "close_date_new_is_change"
      },
      "defaultConnectorLabel": "Default Outcome",
      "rules": [
        {
          "name": "Copy_1_of_closedatenotnull",
          "conditionLogic": "and",
          "conditions": [
            {
              "leftValueReference": "$Record.CloseDate",
              "operator": "IsNull",
              "rightValue": {
                "booleanValue": true
              }
            },
            {
              "leftValueReference": "$Record.Close_Date__c",
              "operator": "IsNull",
              "rightValue": {
                "booleanValue": false
              }
            }
          ],
          "connector": {
            "targetReference": "closedate_set"
          },
          "label": "Copy 1 of closedatenotnull"
        }
      ]
    },
    {
      "name": "if_close_date_is_not_null",
      "label": "if close date is not null",
      "locationX": 182,
      "locationY": 587,
      "defaultConnector": {
        "targetReference": "Copy_1_of_if_close_date_is_not_null"
      },
      "defaultConnectorLabel": "Default Outcome",
      "rules": [
        {
          "name": "closedatenotnull",
          "conditionLogic": "and",
          "conditions": [
            {
              "leftValueReference": "$Record.CloseDate",
              "operator": "IsNull",
              "rightValue": {
                "booleanValue": false
              }
            },
            {
              "leftValueReference": "$Record.Close_Date__c",
              "operator": "IsNull",
              "rightValue": {
                "booleanValue": true
              }
            }
          ],
          "connector": {
            "targetReference": "close_date"
          },
          "label": "closedatenotnull"
        }
      ]
    },
    {
      "name": "if_stage_is_deal_close",
      "label": "if stage is deal close",
      "locationX": 182,
      "locationY": 1787,
      "defaultConnectorLabel": "Default Outcome",
      "rules": [
        {
          "name": "stage_is_deal_close",
          "conditionLogic": "and",
          "conditions": [
            {
              "leftValueReference": "$Record.StageName",
              "operator": "EqualTo",
              "rightValue": {
                "stringValue": "Deal Closed"
              }
            },
            {
              "leftValueReference": "$Record.StageName",
              "operator": "IsChanged",
              "rightValue": {
                "booleanValue": true
              }
            }
          ],
          "connector": {
            "targetReference": "set_close_date"
          },
          "label": "stage is deal close"
        }
      ]
    }
  ],
  "label": "Opportunity Close Date Auto Set",
  "processType": "AutoLaunchedFlow",
  "start": {
    "locationX": 56,
    "locationY": 0,
    "connector": {
      "targetReference": "close_date_is_null"
    },
    "object": "Opportunity",
    "recordTriggerType": "CreateAndUpdate",
    "triggerType": "RecordBeforeSave"
  },
  "status": "Active"
}
