{
    "SellProductChangeGoods": {
        "desc": "识别更换货品并点击，进入更换界面，优先选择配置的货品，否则选择下一个货品",
        "recognition": "OCR",
        "roi": [
            1115,
            344,
            172,
            149
        ],
        "expected": [
            "更换货品",
            "更換貨品",
            "(?i)Switch\\s*Goods",
            "商品変更",
            "选择货品",
            "選擇貨品",
            "(?i)Select\\s*Goods",
            "商品選択",
            "상품 교체",
            "상품 선택"
        ],
        "pre_delay": 0,
        "action": "Click",
        "target_offset": [
            5,
            5,
            -10,
            -10
        ],
        "post_delay": 0,
        "rate_limit": 0,
        "next": [
            "SellProductChangeGoodsRelay"
        ]
    },
    "SellProductChangeGoodsRelay": {
        "desc": "通用换货中继：确认已进入选择货品界面后再执行后续选择",
        "recognition": "And",
        "all_of": [
            "SellProductCheckSelectGoodsText"
        ],
        "pre_wait_freezes": {
            "time": 80,
            "target": [
                145,
                103,
                998,
                518
            ]
        },
        "pre_delay": 0,
        "post_delay": 0,
        "rate_limit": 0,
        "next": [
            "[Anchor]SellProductSelectNewGood",
            "[Anchor]SellProductPriorityGoodMissHandler",
            "[Anchor]SellProductSelectGoodFirstTime",
            "SellProductSelectNextGood"
        ]
    },
    "SellProductPriorityGoodMissWarning": {
        "desc": "已配置优先货品但本轮未识别到，记录提示并直接售卖当前货品",
        "pre_delay": 0,
        "post_delay": 0,
        "rate_limit": 0,
        "next": [
            "SellProductSelectFirstGood"
        ],
        "focus": {
            "Node.Action.Starting": "已配置优先货品，但当前未识别到任何匹配项，直接售卖当前货品"
        }
    },
    "SellProductSelectFirstGood": {
        "desc": "在更换界面中点击第一个货品，作为默认选择",
        "recognition": "OCR",
        "roi": [
            179,
            171,
            299,
            102
        ],
        "expected": [
            "^.{1,}$"
        ],
        "pre_delay": 0,
        "action": "Click",
        "anchor": {
            "SellProductSelectGoodFirstTime": ""
        },
        "post_delay": 0,
        "rate_limit": 0,
        "next": [
            "SellProductSelectNewGoodConfirm"
        ]
    },
    "SellProductSelectNextGood": {
        "desc": "在更换界面中识别下一个货品并点击，作为默认选择",
        "recognition": "And",
        "all_of": [
            "SellProductCheckNextGoodsText",
            "SellProductCheckSelectGoodsText"
        ],
        "pre_delay": 0,
        "action": "Click",
        "post_delay": 0,
        "rate_limit": 0,
        "next": [
            "SellProductSelectNewGoodConfirm"
        ]
    },
    "SellProductSelectNewGoodConfirm": {
        "desc": "点击确认",
        "recognition": "And",
        "all_of": [
            "WhiteConfirmButtonType2",
            "SellProductCheckSelectGoodsText"
        ],
        "pre_delay": 80,
        "action": "Click",
        "post_delay": 0,
        "rate_limit": 0,
        "next": [
            "SellProductAtSell"
        ]
    },
    "SellProductCheckSelectGoodsText": {
        "desc": "检查选择交易货品的文本",
        "recognition": "OCR",
        "roi": [
            51,
            53,
            366,
            118
        ],
        "expected": [
            "选择交易货品",
            "選擇交易貨品",
            "(?i)Select\\s*Goods\\s*to\\s*Trade",
            "取引商品を選択",
            "거래할 상품 선택"
        ],
        "pre_delay": 0,
        "post_delay": 0,
        "rate_limit": 0
    },
    "SellProductCheckNextGoodsText": {
        "desc": "检查下一个货品的文本",
        "recognition": "OCR",
        "roi": [
            511,
            180,
            274,
            83
        ],
        "expected": [
            "本地仓储",
            "本地區倉儲",
            "(?i)Local\\s*Depot",
            "地域在庫",
            "지역 저장고"
        ],
        "pre_delay": 0,
        "post_delay": 0,
        "rate_limit": 0
    }
}
