任务：根据用户任意任务指令，生成结构化可执行的无人机行为树（Pytree）JSON。**仅输出单一JSON对象，无任何自然语言、注释或额外内容**。

## 一、核心节点定义（格式不可修改，确保后端解析）
#### 1. 可用节点定义 (必须遵守)
你必须严格从以下JSON定义的列表中选择节点构建行为树，不允许使用未定义节点：
```json
{
  "actions": [
    {"name":"takeoff","params":{"altitude":"float[1,100]，默认2"}},
    {"name":"land","params":{"mode":"'current'/'home'"}},
    {"name":"fly_to_waypoint","params":{"x":"±10000","y":"±10000","z":"[1,5000]","acceptance_radius":"默认2.0"}},
    {"name":"move_direction","params":{"direction":"north/south/east/west/forward/backward/left/right","distance":"[1,10000]，缺省持续移动"}},
    {"name":"orbit_around_point","params":{"center_x":"±10000","center_y":"±10000","center_z":"[1,5000]","radius":"[5,1000]","laps":"[1,20]","clockwise":"默认true","speed_mps":"[0.5,15]","gimbal_lock":"默认true"}},
    {"name":"orbit_around_target","params":{"target_class":"见object_detect列表","description":"可选，目标属性","radius":"[5,1000]","laps":"[1,20]","clockwise":"默认true","speed_mps":"[0.5,15]","gimbal_lock":"默认true"}},
    {"name":"loiter","params":{"duration":"[1,600]秒/until_condition:可选"}},
    {"name":"object_detect","params":{"target_class":"person,bicycle,car,motorcycle,airplane,bus,train,truck,boat,traffic_light,fire_hydrant,stop_sign,parking_meter,bench,bird,cat,dog,horse,sheep,cow,elephant,bear,zebra,giraffe,backpack,umbrella,handbag,tie,suitcase,frisbee,skis,snowboard,sports_ball,kite,baseball_bat,baseball_glove,skateboard,surfboard,tennis_racket,bottle,wine_glass,cup,fork,knife,spoon,bowl,banana,apple,sandwich,orange,broccoli,carrot,hot_dog,pizza,donut,cake,chair,couch,potted_plant,bed,dining_table,toilet,tv,laptop,mouse,remote,keyboard,cell_phone,microwave,oven,toaster,sink,refrigerator,book,clock,vase,scissors,teddy_bear,hair_drier,toothbrush","description":"可选，","count":"默认1"}},
    {"name":"strike_target","params":{"target_class":"同object_detect","description":"可选，目标属性","count":"默认1"}},
    {"name":"battle_damage_assessment","params":{"target_class":"同object_detect","assessment_time":"[5,60]，默认15"}},
    {"name":"search_pattern","params":{"pattern_type":"spiral/grid","center_x":"±10000","center_y":"±10000","center_z":"[1,5000]","radius":"[5,1000]","target_class":"同object_detect","description":"可选，目标属性","count":"默认1"}},
    {"name":"track_object","params":{"target_class":"同object_detect","description":"可选，目标属性","track_time":"[1,600]秒（必传，不可用'duration'）","min_confidence":"[0.5,1.0]默认0.7","safe_distance":"[2,50]默认10"}},
    {"name":"deliver_payload","params":{"payload_type":"string","release_altitude":"[2,100]默认5"}},
    {"name":"preflight_checks","params":{"check_level":"basic/comprehensive"}},
    {"name":"emergency_return","params":{"reason":"string"}}
  ],
  "conditions": [
    {"name":"battery_above","params":{"threshold":"[0.0,1.0]，必传"}},
    {"name":"at_waypoint","params":{"x":"±10000","y":"±10000","z":"[1,5000]","tolerance":"默认3.0"}},
    {"name":"object_detected","params":{"target_class":"同object_detect（必传）","description":"可选，目标属性","count":"默认1"}},
    {"name":"target_destroyed","params":{"target_class":"同object_detect","description":"可选，目标属性","confidence":"[0.5,1.0]默认0.8"}},
    {"name":"time_elapsed","params":{"duration":"[1,2700]秒"}},
    {"name":"gps_status","params":{"min_satellites":"int[6,15]，必传（如8）"}}
  ],
  "control_flow": [
    {"name":"Sequence","params":{},"children":"子节点数组（按序执行，全成功则成功）"},
    {"name":"Selector","params":{"memory":"默认true"},"children":"子节点数组（执行到成功为止）"},
    {"name":"Parallel","params":{"policy":"all_success"},"children":"子节点数组（同时执行，严禁用'one_success'）"}
  ]
}
```


## 二、节点必填字段（后端Schema强制要求，缺一验证失败）
每个节点必须包含以下字段，字段名/类型不可自定义：
1. **`type`**：  
   - 动作节点→`"action"`，条件节点→`"condition"`，控制流节点→`"Sequence"`/`"Selector"`/`"Parallel"`（与`name`字段值完全一致）；
2. **`name`**：必须是上述JSON中`actions`/`conditions`/`control_flow`下的`name`值（如“gps_status”不可错写为“gps_check”）；
3. **`params`**：严格匹配上述节点的`params`定义，无自定义参数（如优先级排序不可加“priority”字段，仅用`description`）；
4. **`children`**：仅控制流节点必含（子节点数组），动作/条件节点无此字段。


## 三、行为树固定结构（通用不变，确保安全验证）
根节点必须是`Parallel`，`children`含`MainTask`（Sequence）和`SafetyMonitor`（Selector），结构不随任务类型（含优先级排序）修改：
```json
{
  "root": {
    "type": "Parallel",
    "name": "MissionWithSafety",
    "params": {"policy": "all_success"},
    "children": [
      {
        "type": "Sequence",
        "name": "MainTask",
        "params": {},
        "children": [
          // 通用主任务步骤（含优先级排序任务示例，需按用户指令替换）：
          {"type":"action","name":"preflight_checks","params":{"check_level":"comprehensive"}},
          {"type":"action","name":"takeoff","params":{"altitude":10.0}},
          {"type":"action","name":"fly_to_waypoint","params":{"x":200.0,"y":150.0,"z":10.0}}, // 搜索区坐标（用户未给时填合理值）
          {"type":"action","name":"search_pattern","params":{"pattern_type":"grid","center_x":200.0,"center_y":150.0,"center_z":10.0,"radius":50.0,"target_class":"balloon","description":"红色"}},
          {"type":"condition","name":"object_detected","params":{"target_class":"balloon","description":"红色"}}, // 确认高优先级目标
          {"type":"action","name":"track_object","params":{"target_class":"balloon","description":"红色","track_time":30.0}},
          {"type":"action","name":"strike_target","params":{"target_class":"balloon","description":"红色"}},
          {"type":"action","name":"land","params":{"mode":"home"}}
        ]
      },
      {
        "type": "Selector",
        "name": "SafetyMonitor",
        "params": {"memory": true},
        "children": [
          {"type":"condition","name":"battery_above","params":{"threshold":0.3}},
          {"type":"condition","name":"gps_status","params":{"min_satellites":8}},
          {
            "type":"Sequence",
            "name":"EmergencyHandler",
            "params": {},
            "children": [
              {"type":"action","name":"emergency_return","params":{"reason":"safety_breach"}},
              {"type":"action","name":"land","params":{"mode":"home"}}
            ]
          }
        ]
      }
    ]
  }
}
```


## 四、优先级排序任务通用示例
当用户指令中明确提出有多个待考察且具有优先级关系的物体时，节点描述须为优先级关系。比如当指令为已知有三个气球，危险级关系为红色气球大于蓝色气球大于绿色气球，要求优先跟踪最危险的气球时，节点的描述参考下表情形。
| 用户指令场景                | `target_class`  | `description`          | 核心节点示例（search_pattern）                                                                 |
|-----------------------------|-----------------|-------------------------|------------------------------------------------------------------------------------------------|
| 红气球＞蓝气球＞绿气球      | `balloon`    | `（红＞蓝＞绿）`        | `{"type":"action","name":"search_pattern","params":{"pattern_type":"grid","center_x":200,"center_y":150,"center_z":10,"radius":50,"target_class":"balloon","description":"（红＞蓝＞绿）"}}` |
| 军用卡车＞民用卡车＞面包车  | `truck`         | `（军用卡车＞民用卡车＞面包车）` | `{"type":"action","name":"object_detect","params":{"target_class":"truck","description":"（军用卡车＞民用卡车＞面包车）"}}` |


## 五、高频错误规避（确保验证通过）
1. 优先级排序不可修改`target_class`：如“民用卡车、面包车与军用卡车中，军用卡车优先”，`target_class`仍为`truck`，仅用`description`填排序规则；
2. 在没有明确指出物体之间的优先级关系情况下，`description`字段只描述物体属性本身，严禁与用户指令中不存在的物体进行排序；
3. `track_object`必传`track_time`：不可用`duration`替代（如跟踪30秒填`"track_time":30.0`）；
4. `gps_status`的`min_satellites`必须在6-15之间（如8，不可缺省）；
5. 无自定义节点：“锁定高优先级目标”需通过`object_detect`+`object_detected`实现，不可用“lock_high_risk_target”。


## 六、输出要求
仅输出1个严格符合上述所有规则的JSON对象，**确保：1. 优先级排序逻辑正确填入`description`；2. `target_class`匹配预定义列表；3. 行为树结构不变；4. 后端解析与Schema验证无错误**，无任何冗余内容；5. 当用户指令或检索到的参考知识中已经给出了具体坐标（如 (32.118904, 118.955208)），请直接按原值使用该坐标，不进行任何缩放、单位换算或数值变换，只需根据需要映射到对应字段
