{
  "up": [
    {
      "op": {
        "fn": "move",
        "src": "value",
        "dest": "value.max.value",
        "clean": false
      },
      "condition": {
        "fn": "equals",
        "path": "$$type",
        "value": "number"
      }
    },
    {
      "op": {
        "fn": "set",
        "path": "value.max.$$type",
        "value": "number"
      },
      "condition": {
        "fn": "equals",
        "path": "$$type",
        "value": "number"
      }
    },
    {
      "op": {
        "fn": "set",
        "path": "$$type",
        "value": "number-range"
      },
      "condition": {
        "fn": "equals",
        "path": "$$type",
        "value": "number"
      }
    }
  ],
  "down": [
    {
      "op": {
        "fn": "move",
        "src": "value.max.value",
        "dest": "value",
        "clean": false
      },
      "condition": {
        "fn": "equals",
        "path": "$$type",
        "value": "number-range"
      }
    },
    {
      "op": {
        "fn": "set",
        "path": "$$type",
        "value": "number"
      },
      "condition": {
        "fn": "equals",
        "path": "$$type",
        "value": "number-range"
      }
    }
  ]
}
