{
 "format": "uvira.forge.blocks",
 "version": 1,
 "workspace": {
  "blocks": {
   "languageVersion": 0,
   "blocks": [
    {
     "type": "forge_program",
     "id": "b333",
     "fields": {
      "NAME": "land_on_the_truck",
      "PERIOD": "20"
     },
     "inputs": {
      "INIT": {
       "block": {
        "type": "variables_set",
        "id": "b328",
        "fields": {
         "VAR": {
          "id": "var_deck_alt"
         }
        },
        "inputs": {
         "VALUE": {
          "block": {
           "type": "math_number",
           "id": "b327",
           "fields": {
            "NUM": 1
           }
          }
         }
        },
        "next": {
         "block": {
          "type": "variables_set",
          "id": "b330",
          "fields": {
           "VAR": {
            "id": "var_yaw"
           }
          },
          "inputs": {
           "VALUE": {
            "block": {
             "type": "forge_vehicle_value",
             "id": "b329",
             "fields": {
              "WHAT": "heading"
             }
            }
           }
          },
          "next": {
           "block": {
            "type": "variables_set",
            "id": "b332",
            "fields": {
             "VAR": {
              "id": "var_aborts"
             }
            },
            "inputs": {
             "VALUE": {
              "block": {
               "type": "math_number",
               "id": "b331",
               "fields": {
                "NUM": 0
               }
              }
             }
            }
           }
          }
         }
        }
       }
      },
      "EVERY": {
       "block": {
        "type": "controls_if",
        "id": "b6",
        "inputs": {
         "IF0": {
          "block": {
           "type": "forge_pkt_fresh",
           "id": "L1",
           "fields": {
            "PACKET": "truck"
           }
          }
         },
         "DO0": {
          "block": {
           "type": "variables_set",
           "id": "b3",
           "fields": {
            "VAR": {
             "id": "var_pf_vn"
            }
           },
           "inputs": {
            "VALUE": {
             "block": {
              "type": "variables_get",
              "id": "L2",
              "fields": {
               "VAR": {
                "id": "fv_truck_vel_n"
               }
              }
             }
            }
           },
           "next": {
            "block": {
             "type": "variables_set",
             "id": "b5",
             "fields": {
              "VAR": {
               "id": "var_pf_ve"
              }
             },
             "inputs": {
              "VALUE": {
               "block": {
                "type": "variables_get",
                "id": "L3",
                "fields": {
                 "VAR": {
                  "id": "fv_truck_vel_e"
                 }
                }
               }
              }
             }
            }
           }
          }
         }
        },
        "next": {
         "block": {
          "type": "controls_if",
          "id": "b400",
          "inputs": {
           "IF0": {
            "block": {
             "type": "logic_compare",
             "id": "b401",
             "fields": {
              "OP": "GT"
             },
             "inputs": {
              "A": {
               "block": {
                "type": "forge_pkt_age",
                "id": "b402",
                "fields": {
                 "PACKET": "truck"
                }
               }
              },
              "B": {
               "block": {
                "type": "math_number",
                "id": "b403",
                "fields": {
                 "NUM": 3000
                }
               }
              }
             }
            }
           },
           "DO0": {
            "block": {
             "type": "variables_set",
             "id": "b404",
             "fields": {
              "VAR": {
               "id": "var_pf_vn"
              }
             },
             "inputs": {
              "VALUE": {
               "block": {
                "type": "math_number",
                "id": "b405",
                "fields": {
                 "NUM": 0
                }
               }
              }
             },
             "next": {
              "block": {
               "type": "variables_set",
               "id": "b406",
               "fields": {
                "VAR": {
                 "id": "var_pf_ve"
                }
               },
               "inputs": {
                "VALUE": {
                 "block": {
                  "type": "math_number",
                  "id": "b407",
                  "fields": {
                   "NUM": 0
                  }
                 }
                }
               }
              }
             }
            }
           }
          },
          "next": {
           "block": {
            "type": "controls_if",
            "id": "b21",
            "inputs": {
             "IF0": {
              "block": {
               "type": "logic_compare",
               "id": "b16",
               "fields": {
                "OP": "GT"
               },
               "inputs": {
                "A": {
                 "block": {
                  "type": "math_single",
                  "id": "b14",
                  "fields": {
                   "OP": "ROOT"
                  },
                  "inputs": {
                   "NUM": {
                    "block": {
                     "type": "math_arithmetic",
                     "id": "b13",
                     "fields": {
                      "OP": "ADD"
                     },
                     "inputs": {
                      "A": {
                       "block": {
                        "type": "math_arithmetic",
                        "id": "b9",
                        "fields": {
                         "OP": "POWER"
                        },
                        "inputs": {
                         "A": {
                          "block": {
                           "type": "variables_get",
                           "id": "b7",
                           "fields": {
                            "VAR": {
                             "id": "var_pf_vn"
                            }
                           }
                          }
                         },
                         "B": {
                          "block": {
                           "type": "math_number",
                           "id": "b8",
                           "fields": {
                            "NUM": 2
                           }
                          }
                         }
                        }
                       }
                      },
                      "B": {
                       "block": {
                        "type": "math_arithmetic",
                        "id": "b12",
                        "fields": {
                         "OP": "POWER"
                        },
                        "inputs": {
                         "A": {
                          "block": {
                           "type": "variables_get",
                           "id": "b10",
                           "fields": {
                            "VAR": {
                             "id": "var_pf_ve"
                            }
                           }
                          }
                         },
                         "B": {
                          "block": {
                           "type": "math_number",
                           "id": "b11",
                           "fields": {
                            "NUM": 2
                           }
                          }
                         }
                        }
                       }
                      }
                     }
                    }
                   }
                  }
                 }
                },
                "B": {
                 "block": {
                  "type": "math_number",
                  "id": "b15",
                  "fields": {
                   "NUM": 1
                  }
                 }
                }
               }
              }
             },
             "DO0": {
              "block": {
               "type": "variables_set",
               "id": "b20",
               "fields": {
                "VAR": {
                 "id": "var_yaw"
                }
               },
               "inputs": {
                "VALUE": {
                 "block": {
                  "type": "math_atan2",
                  "id": "b19",
                  "inputs": {
                   "Y": {
                    "block": {
                     "type": "variables_get",
                     "id": "b17",
                     "fields": {
                      "VAR": {
                       "id": "var_pf_ve"
                      }
                     }
                    }
                   },
                   "X": {
                    "block": {
                     "type": "variables_get",
                     "id": "b18",
                     "fields": {
                      "VAR": {
                       "id": "var_pf_vn"
                      }
                     }
                    }
                   }
                  }
                 }
                }
               }
              }
             }
            },
            "next": {
             "block": {
              "type": "variables_set",
              "id": "b25",
              "fields": {
               "VAR": {
                "id": "var_h"
               }
              },
              "inputs": {
               "VALUE": {
                "block": {
                 "type": "math_arithmetic",
                 "id": "b24",
                 "fields": {
                  "OP": "MINUS"
                 },
                 "inputs": {
                  "A": {
                   "block": {
                    "type": "forge_vehicle_value",
                    "id": "b22",
                    "fields": {
                     "WHAT": "alt"
                    }
                   }
                  },
                  "B": {
                   "block": {
                    "type": "variables_get",
                    "id": "b23",
                    "fields": {
                     "VAR": {
                      "id": "var_deck_alt"
                     }
                    }
                   }
                  }
                 }
                }
               }
              },
              "next": {
               "block": {
                "type": "variables_set",
                "id": "b27",
                "fields": {
                 "VAR": {
                  "id": "var_marker"
                 }
                },
                "inputs": {
                 "VALUE": {
                  "block": {
                   "type": "forge_pkt_fresh",
                   "id": "L4",
                   "fields": {
                    "PACKET": "marker"
                   }
                  }
                 }
                },
                "next": {
                 "block": {
                  "type": "controls_if",
                  "id": "b54",
                  "inputs": {
                   "IF0": {
                    "block": {
                     "type": "variables_get",
                     "id": "b28",
                     "fields": {
                      "VAR": {
                       "id": "var_marker"
                      }
                     }
                    }
                   },
                   "DO0": {
                    "block": {
                     "type": "variables_set",
                     "id": "b30",
                     "fields": {
                      "VAR": {
                       "id": "var_rel_n"
                      }
                     },
                     "inputs": {
                      "VALUE": {
                       "block": {
                        "type": "forge_lib_body_to_ne",
                        "id": "L8",
                        "fields": {
                         "WHAT": "N"
                        },
                        "inputs": {
                         "F": {
                          "block": {
                           "type": "variables_get",
                           "id": "L5",
                           "fields": {
                            "VAR": {
                             "id": "fv_marker_forward"
                            }
                           }
                          }
                         },
                         "R": {
                          "block": {
                           "type": "variables_get",
                           "id": "L6",
                           "fields": {
                            "VAR": {
                             "id": "fv_marker_right"
                            }
                           }
                          }
                         },
                         "HDG": {
                          "block": {
                           "type": "forge_vehicle_value",
                           "id": "L7",
                           "fields": {
                            "WHAT": "heading"
                           }
                          }
                         }
                        }
                       }
                      }
                     },
                     "next": {
                      "block": {
                       "type": "variables_set",
                       "id": "b32",
                       "fields": {
                        "VAR": {
                         "id": "var_rel_e"
                        }
                       },
                       "inputs": {
                        "VALUE": {
                         "block": {
                          "type": "forge_lib_body_to_ne",
                          "id": "L12",
                          "fields": {
                           "WHAT": "E"
                          },
                          "inputs": {
                           "F": {
                            "block": {
                             "type": "variables_get",
                             "id": "L9",
                             "fields": {
                              "VAR": {
                               "id": "fv_marker_forward"
                              }
                             }
                            }
                           },
                           "R": {
                            "block": {
                             "type": "variables_get",
                             "id": "L10",
                             "fields": {
                              "VAR": {
                               "id": "fv_marker_right"
                              }
                             }
                            }
                           },
                           "HDG": {
                            "block": {
                             "type": "forge_vehicle_value",
                             "id": "L11",
                             "fields": {
                              "WHAT": "heading"
                             }
                            }
                           }
                          }
                         }
                        }
                       },
                       "next": {
                        "block": {
                         "type": "variables_set",
                         "id": "b34",
                         "fields": {
                          "VAR": {
                           "id": "var_h"
                          }
                         },
                         "inputs": {
                          "VALUE": {
                           "block": {
                            "type": "variables_get",
                            "id": "L13",
                            "fields": {
                             "VAR": {
                              "id": "fv_marker_down"
                             }
                            }
                           }
                          }
                         },
                         "next": {
                          "block": {
                           "type": "variables_set",
                           "id": "b38",
                           "fields": {
                            "VAR": {
                             "id": "var_deck_alt"
                            }
                           },
                           "inputs": {
                            "VALUE": {
                             "block": {
                              "type": "math_arithmetic",
                              "id": "b37",
                              "fields": {
                               "OP": "MINUS"
                              },
                              "inputs": {
                               "A": {
                                "block": {
                                 "type": "forge_vehicle_value",
                                 "id": "b35",
                                 "fields": {
                                  "WHAT": "alt"
                                 }
                                }
                               },
                               "B": {
                                "block": {
                                 "type": "variables_get",
                                 "id": "L14",
                                 "fields": {
                                  "VAR": {
                                   "id": "fv_marker_down"
                                  }
                                 }
                                }
                               }
                              }
                             }
                            }
                           },
                           "next": {
                            "block": {
                             "type": "variables_set",
                             "id": "b40",
                             "fields": {
                              "VAR": {
                               "id": "var_have_rel"
                              }
                             },
                             "inputs": {
                              "VALUE": {
                               "block": {
                                "type": "logic_boolean",
                                "id": "b39",
                                "fields": {
                                 "BOOL": "TRUE"
                                }
                               }
                              }
                             }
                            }
                           }
                          }
                         }
                        }
                       }
                      }
                     }
                    }
                   },
                   "IF1": {
                    "block": {
                     "type": "forge_pkt_fresh",
                     "id": "L15",
                     "fields": {
                      "PACKET": "truck"
                     }
                    }
                   },
                   "DO1": {
                    "block": {
                     "type": "variables_set",
                     "id": "b43",
                     "fields": {
                      "VAR": {
                       "id": "var_rel_n"
                      }
                     },
                     "inputs": {
                      "VALUE": {
                       "block": {
                        "type": "forge_geo_distance",
                        "id": "L18",
                        "fields": {
                         "WHAT": "N"
                        },
                        "inputs": {
                         "LAT": {
                          "block": {
                           "type": "variables_get",
                           "id": "L16",
                           "fields": {
                            "VAR": {
                             "id": "fv_truck_lat"
                            }
                           }
                          }
                         },
                         "LON": {
                          "block": {
                           "type": "variables_get",
                           "id": "L17",
                           "fields": {
                            "VAR": {
                             "id": "fv_truck_lon"
                            }
                           }
                          }
                         }
                        }
                       }
                      }
                     },
                     "next": {
                      "block": {
                       "type": "variables_set",
                       "id": "b45",
                       "fields": {
                        "VAR": {
                         "id": "var_rel_e"
                        }
                       },
                       "inputs": {
                        "VALUE": {
                         "block": {
                          "type": "forge_geo_distance",
                          "id": "L21",
                          "fields": {
                           "WHAT": "E"
                          },
                          "inputs": {
                           "LAT": {
                            "block": {
                             "type": "variables_get",
                             "id": "L19",
                             "fields": {
                              "VAR": {
                               "id": "fv_truck_lat"
                              }
                             }
                            }
                           },
                           "LON": {
                            "block": {
                             "type": "variables_get",
                             "id": "L20",
                             "fields": {
                              "VAR": {
                               "id": "fv_truck_lon"
                              }
                             }
                            }
                           }
                          }
                         }
                        }
                       },
                       "next": {
                        "block": {
                         "type": "variables_set",
                         "id": "b47",
                         "fields": {
                          "VAR": {
                           "id": "var_have_rel"
                          }
                         },
                         "inputs": {
                          "VALUE": {
                           "block": {
                            "type": "logic_boolean",
                            "id": "b46",
                            "fields": {
                             "BOOL": "TRUE"
                            }
                           }
                          }
                         }
                        }
                       }
                      }
                     }
                    }
                   },
                   "ELSE": {
                    "block": {
                     "type": "variables_set",
                     "id": "b49",
                     "fields": {
                      "VAR": {
                       "id": "var_rel_n"
                      }
                     },
                     "inputs": {
                      "VALUE": {
                       "block": {
                        "type": "math_number",
                        "id": "b48",
                        "fields": {
                         "NUM": 0
                        }
                       }
                      }
                     },
                     "next": {
                      "block": {
                       "type": "variables_set",
                       "id": "b51",
                       "fields": {
                        "VAR": {
                         "id": "var_rel_e"
                        }
                       },
                       "inputs": {
                        "VALUE": {
                         "block": {
                          "type": "math_number",
                          "id": "b50",
                          "fields": {
                           "NUM": 0
                          }
                         }
                        }
                       },
                       "next": {
                        "block": {
                         "type": "variables_set",
                         "id": "b53",
                         "fields": {
                          "VAR": {
                           "id": "var_have_rel"
                          }
                         },
                         "inputs": {
                          "VALUE": {
                           "block": {
                            "type": "logic_boolean",
                            "id": "b52",
                            "fields": {
                             "BOOL": "FALSE"
                            }
                           }
                          }
                         }
                        }
                       }
                      }
                     }
                    }
                   }
                  },
                  "extraState": {
                   "elseIfCount": 1,
                   "hasElse": true
                  },
                  "next": {
                   "block": {
                    "type": "variables_set",
                    "id": "b63",
                    "fields": {
                     "VAR": {
                      "id": "var_rel"
                     }
                    },
                    "inputs": {
                     "VALUE": {
                      "block": {
                       "type": "math_single",
                       "id": "b62",
                       "fields": {
                        "OP": "ROOT"
                       },
                       "inputs": {
                        "NUM": {
                         "block": {
                          "type": "math_arithmetic",
                          "id": "b61",
                          "fields": {
                           "OP": "ADD"
                          },
                          "inputs": {
                           "A": {
                            "block": {
                             "type": "math_arithmetic",
                             "id": "b57",
                             "fields": {
                              "OP": "POWER"
                             },
                             "inputs": {
                              "A": {
                               "block": {
                                "type": "variables_get",
                                "id": "b55",
                                "fields": {
                                 "VAR": {
                                  "id": "var_rel_n"
                                 }
                                }
                               }
                              },
                              "B": {
                               "block": {
                                "type": "math_number",
                                "id": "b56",
                                "fields": {
                                 "NUM": 2
                                }
                               }
                              }
                             }
                            }
                           },
                           "B": {
                            "block": {
                             "type": "math_arithmetic",
                             "id": "b60",
                             "fields": {
                              "OP": "POWER"
                             },
                             "inputs": {
                              "A": {
                               "block": {
                                "type": "variables_get",
                                "id": "b58",
                                "fields": {
                                 "VAR": {
                                  "id": "var_rel_e"
                                 }
                                }
                               }
                              },
                              "B": {
                               "block": {
                                "type": "math_number",
                                "id": "b59",
                                "fields": {
                                 "NUM": 2
                                }
                               }
                              }
                             }
                            }
                           }
                          }
                         }
                        }
                       }
                      }
                     }
                    },
                    "next": {
                     "block": {
                      "type": "variables_set",
                      "id": "b67",
                      "fields": {
                       "VAR": {
                        "id": "var_far_n"
                       }
                      },
                      "inputs": {
                       "VALUE": {
                        "block": {
                         "type": "math_arithmetic",
                         "id": "b66",
                         "fields": {
                          "OP": "MULTIPLY"
                         },
                         "inputs": {
                          "A": {
                           "block": {
                            "type": "math_number",
                            "id": "b65",
                            "fields": {
                             "NUM": 0.4
                            }
                           }
                          },
                          "B": {
                           "block": {
                            "type": "variables_get",
                            "id": "b64",
                            "fields": {
                             "VAR": {
                              "id": "var_rel_n"
                             }
                            }
                           }
                          }
                         }
                        }
                       }
                      },
                      "next": {
                       "block": {
                        "type": "variables_set",
                        "id": "b71",
                        "fields": {
                         "VAR": {
                          "id": "var_far_e"
                         }
                        },
                        "inputs": {
                         "VALUE": {
                          "block": {
                           "type": "math_arithmetic",
                           "id": "b70",
                           "fields": {
                            "OP": "MULTIPLY"
                           },
                           "inputs": {
                            "A": {
                             "block": {
                              "type": "math_number",
                              "id": "b69",
                              "fields": {
                               "NUM": 0.4
                              }
                             }
                            },
                            "B": {
                             "block": {
                              "type": "variables_get",
                              "id": "b68",
                              "fields": {
                               "VAR": {
                                "id": "var_rel_e"
                               }
                              }
                             }
                            }
                           }
                          }
                         }
                        },
                        "next": {
                         "block": {
                          "type": "variables_set",
                          "id": "b86",
                          "fields": {
                           "VAR": {
                            "id": "var_scale"
                           }
                          },
                          "inputs": {
                           "VALUE": {
                            "block": {
                             "type": "forge_minmax",
                             "id": "b85",
                             "fields": {
                              "OP": "MIN"
                             },
                             "inputs": {
                              "A": {
                               "block": {
                                "type": "math_number",
                                "id": "b84",
                                "fields": {
                                 "NUM": 1
                                }
                               }
                              },
                              "B": {
                               "block": {
                                "type": "math_arithmetic",
                                "id": "b83",
                                "fields": {
                                 "OP": "DIVIDE"
                                },
                                "inputs": {
                                 "A": {
                                  "block": {
                                   "type": "math_number",
                                   "id": "b82",
                                   "fields": {
                                    "NUM": 8
                                   }
                                  }
                                 },
                                 "B": {
                                  "block": {
                                   "type": "forge_minmax",
                                   "id": "b81",
                                   "fields": {
                                    "OP": "MAX"
                                   },
                                   "inputs": {
                                    "A": {
                                     "block": {
                                      "type": "math_number",
                                      "id": "b80",
                                      "fields": {
                                       "NUM": 0.001
                                      }
                                     }
                                    },
                                    "B": {
                                     "block": {
                                      "type": "math_single",
                                      "id": "b79",
                                      "fields": {
                                       "OP": "ROOT"
                                      },
                                      "inputs": {
                                       "NUM": {
                                        "block": {
                                         "type": "math_arithmetic",
                                         "id": "b78",
                                         "fields": {
                                          "OP": "ADD"
                                         },
                                         "inputs": {
                                          "A": {
                                           "block": {
                                            "type": "math_arithmetic",
                                            "id": "b74",
                                            "fields": {
                                             "OP": "POWER"
                                            },
                                            "inputs": {
                                             "A": {
                                              "block": {
                                               "type": "variables_get",
                                               "id": "b72",
                                               "fields": {
                                                "VAR": {
                                                 "id": "var_far_n"
                                                }
                                               }
                                              }
                                             },
                                             "B": {
                                              "block": {
                                               "type": "math_number",
                                               "id": "b73",
                                               "fields": {
                                                "NUM": 2
                                               }
                                              }
                                             }
                                            }
                                           }
                                          },
                                          "B": {
                                           "block": {
                                            "type": "math_arithmetic",
                                            "id": "b77",
                                            "fields": {
                                             "OP": "POWER"
                                            },
                                            "inputs": {
                                             "A": {
                                              "block": {
                                               "type": "variables_get",
                                               "id": "b75",
                                               "fields": {
                                                "VAR": {
                                                 "id": "var_far_e"
                                                }
                                               }
                                              }
                                             },
                                             "B": {
                                              "block": {
                                               "type": "math_number",
                                               "id": "b76",
                                               "fields": {
                                                "NUM": 2
                                               }
                                              }
                                             }
                                            }
                                           }
                                          }
                                         }
                                        }
                                       }
                                      }
                                     }
                                    }
                                   }
                                  }
                                 }
                                }
                               }
                              }
                             }
                            }
                           }
                          },
                          "next": {
                           "block": {
                            "type": "variables_set",
                            "id": "b90",
                            "fields": {
                             "VAR": {
                              "id": "var_far_n"
                             }
                            },
                            "inputs": {
                             "VALUE": {
                              "block": {
                               "type": "math_arithmetic",
                               "id": "b89",
                               "fields": {
                                "OP": "MULTIPLY"
                               },
                               "inputs": {
                                "A": {
                                 "block": {
                                  "type": "variables_get",
                                  "id": "b87",
                                  "fields": {
                                   "VAR": {
                                    "id": "var_far_n"
                                   }
                                  }
                                 }
                                },
                                "B": {
                                 "block": {
                                  "type": "variables_get",
                                  "id": "b88",
                                  "fields": {
                                   "VAR": {
                                    "id": "var_scale"
                                   }
                                  }
                                 }
                                }
                               }
                              }
                             }
                            },
                            "next": {
                             "block": {
                              "type": "variables_set",
                              "id": "b94",
                              "fields": {
                               "VAR": {
                                "id": "var_far_e"
                               }
                              },
                              "inputs": {
                               "VALUE": {
                                "block": {
                                 "type": "math_arithmetic",
                                 "id": "b93",
                                 "fields": {
                                  "OP": "MULTIPLY"
                                 },
                                 "inputs": {
                                  "A": {
                                   "block": {
                                    "type": "variables_get",
                                    "id": "b91",
                                    "fields": {
                                     "VAR": {
                                      "id": "var_far_e"
                                     }
                                    }
                                   }
                                  },
                                  "B": {
                                   "block": {
                                    "type": "variables_get",
                                    "id": "b92",
                                    "fields": {
                                     "VAR": {
                                      "id": "var_scale"
                                     }
                                    }
                                   }
                                  }
                                 }
                                }
                               }
                              },
                              "next": {
                               "block": {
                                "type": "variables_set",
                                "id": "b98",
                                "fields": {
                                 "VAR": {
                                  "id": "var_near_n"
                                 }
                                },
                                "inputs": {
                                 "VALUE": {
                                  "block": {
                                   "type": "math_arithmetic",
                                   "id": "b97",
                                   "fields": {
                                    "OP": "MULTIPLY"
                                   },
                                   "inputs": {
                                    "A": {
                                     "block": {
                                      "type": "math_number",
                                      "id": "b96",
                                      "fields": {
                                       "NUM": 1.2
                                      }
                                     }
                                    },
                                    "B": {
                                     "block": {
                                      "type": "variables_get",
                                      "id": "b95",
                                      "fields": {
                                       "VAR": {
                                        "id": "var_rel_n"
                                       }
                                      }
                                     }
                                    }
                                   }
                                  }
                                 }
                                },
                                "next": {
                                 "block": {
                                  "type": "variables_set",
                                  "id": "b102",
                                  "fields": {
                                   "VAR": {
                                    "id": "var_near_e"
                                   }
                                  },
                                  "inputs": {
                                   "VALUE": {
                                    "block": {
                                     "type": "math_arithmetic",
                                     "id": "b101",
                                     "fields": {
                                      "OP": "MULTIPLY"
                                     },
                                     "inputs": {
                                      "A": {
                                       "block": {
                                        "type": "math_number",
                                        "id": "b100",
                                        "fields": {
                                         "NUM": 1.2
                                        }
                                       }
                                      },
                                      "B": {
                                       "block": {
                                        "type": "variables_get",
                                        "id": "b99",
                                        "fields": {
                                         "VAR": {
                                          "id": "var_rel_e"
                                         }
                                        }
                                       }
                                      }
                                     }
                                    }
                                   }
                                  },
                                  "next": {
                                   "block": {
                                    "type": "variables_set",
                                    "id": "b117",
                                    "fields": {
                                     "VAR": {
                                      "id": "var_scale"
                                     }
                                    },
                                    "inputs": {
                                     "VALUE": {
                                      "block": {
                                       "type": "forge_minmax",
                                       "id": "b116",
                                       "fields": {
                                        "OP": "MIN"
                                       },
                                       "inputs": {
                                        "A": {
                                         "block": {
                                          "type": "math_number",
                                          "id": "b115",
                                          "fields": {
                                           "NUM": 1
                                          }
                                         }
                                        },
                                        "B": {
                                         "block": {
                                          "type": "math_arithmetic",
                                          "id": "b114",
                                          "fields": {
                                           "OP": "DIVIDE"
                                          },
                                          "inputs": {
                                           "A": {
                                            "block": {
                                             "type": "math_number",
                                             "id": "b113",
                                             "fields": {
                                              "NUM": 2.5
                                             }
                                            }
                                           },
                                           "B": {
                                            "block": {
                                             "type": "forge_minmax",
                                             "id": "b112",
                                             "fields": {
                                              "OP": "MAX"
                                             },
                                             "inputs": {
                                              "A": {
                                               "block": {
                                                "type": "math_number",
                                                "id": "b111",
                                                "fields": {
                                                 "NUM": 0.001
                                                }
                                               }
                                              },
                                              "B": {
                                               "block": {
                                                "type": "math_single",
                                                "id": "b110",
                                                "fields": {
                                                 "OP": "ROOT"
                                                },
                                                "inputs": {
                                                 "NUM": {
                                                  "block": {
                                                   "type": "math_arithmetic",
                                                   "id": "b109",
                                                   "fields": {
                                                    "OP": "ADD"
                                                   },
                                                   "inputs": {
                                                    "A": {
                                                     "block": {
                                                      "type": "math_arithmetic",
                                                      "id": "b105",
                                                      "fields": {
                                                       "OP": "POWER"
                                                      },
                                                      "inputs": {
                                                       "A": {
                                                        "block": {
                                                         "type": "variables_get",
                                                         "id": "b103",
                                                         "fields": {
                                                          "VAR": {
                                                           "id": "var_near_n"
                                                          }
                                                         }
                                                        }
                                                       },
                                                       "B": {
                                                        "block": {
                                                         "type": "math_number",
                                                         "id": "b104",
                                                         "fields": {
                                                          "NUM": 2
                                                         }
                                                        }
                                                       }
                                                      }
                                                     }
                                                    },
                                                    "B": {
                                                     "block": {
                                                      "type": "math_arithmetic",
                                                      "id": "b108",
                                                      "fields": {
                                                       "OP": "POWER"
                                                      },
                                                      "inputs": {
                                                       "A": {
                                                        "block": {
                                                         "type": "variables_get",
                                                         "id": "b106",
                                                         "fields": {
                                                          "VAR": {
                                                           "id": "var_near_e"
                                                          }
                                                         }
                                                        }
                                                       },
                                                       "B": {
                                                        "block": {
                                                         "type": "math_number",
                                                         "id": "b107",
                                                         "fields": {
                                                          "NUM": 2
                                                         }
                                                        }
                                                       }
                                                      }
                                                     }
                                                    }
                                                   }
                                                  }
                                                 }
                                                }
                                               }
                                              }
                                             }
                                            }
                                           }
                                          }
                                         }
                                        }
                                       }
                                      }
                                     }
                                    },
                                    "next": {
                                     "block": {
                                      "type": "variables_set",
                                      "id": "b121",
                                      "fields": {
                                       "VAR": {
                                        "id": "var_near_n"
                                       }
                                      },
                                      "inputs": {
                                       "VALUE": {
                                        "block": {
                                         "type": "math_arithmetic",
                                         "id": "b120",
                                         "fields": {
                                          "OP": "MULTIPLY"
                                         },
                                         "inputs": {
                                          "A": {
                                           "block": {
                                            "type": "variables_get",
                                            "id": "b118",
                                            "fields": {
                                             "VAR": {
                                              "id": "var_near_n"
                                             }
                                            }
                                           }
                                          },
                                          "B": {
                                           "block": {
                                            "type": "variables_get",
                                            "id": "b119",
                                            "fields": {
                                             "VAR": {
                                              "id": "var_scale"
                                             }
                                            }
                                           }
                                          }
                                         }
                                        }
                                       }
                                      },
                                      "next": {
                                       "block": {
                                        "type": "variables_set",
                                        "id": "b125",
                                        "fields": {
                                         "VAR": {
                                          "id": "var_near_e"
                                         }
                                        },
                                        "inputs": {
                                         "VALUE": {
                                          "block": {
                                           "type": "math_arithmetic",
                                           "id": "b124",
                                           "fields": {
                                            "OP": "MULTIPLY"
                                           },
                                           "inputs": {
                                            "A": {
                                             "block": {
                                              "type": "variables_get",
                                              "id": "b122",
                                              "fields": {
                                               "VAR": {
                                                "id": "var_near_e"
                                               }
                                              }
                                             }
                                            },
                                            "B": {
                                             "block": {
                                              "type": "variables_get",
                                              "id": "b123",
                                              "fields": {
                                               "VAR": {
                                                "id": "var_scale"
                                               }
                                              }
                                             }
                                            }
                                           }
                                          }
                                         }
                                        },
                                        "next": {
                                         "block": {
                                          "type": "controls_if",
                                          "id": "b132",
                                          "inputs": {
                                           "IF0": {
                                            "block": {
                                             "type": "logic_negate",
                                             "id": "b127",
                                             "inputs": {
                                              "BOOL": {
                                               "block": {
                                                "type": "variables_get",
                                                "id": "b126",
                                                "fields": {
                                                 "VAR": {
                                                  "id": "var_marker"
                                                 }
                                                }
                                               }
                                              }
                                             }
                                            }
                                           },
                                           "DO0": {
                                            "block": {
                                             "type": "variables_set",
                                             "id": "b129",
                                             "fields": {
                                              "VAR": {
                                               "id": "var_near_n"
                                              }
                                             },
                                             "inputs": {
                                              "VALUE": {
                                               "block": {
                                                "type": "math_number",
                                                "id": "b128",
                                                "fields": {
                                                 "NUM": 0
                                                }
                                               }
                                              }
                                             },
                                             "next": {
                                              "block": {
                                               "type": "variables_set",
                                               "id": "b131",
                                               "fields": {
                                                "VAR": {
                                                 "id": "var_near_e"
                                                }
                                               },
                                               "inputs": {
                                                "VALUE": {
                                                 "block": {
                                                  "type": "math_number",
                                                  "id": "b130",
                                                  "fields": {
                                                   "NUM": 0
                                                  }
                                                 }
                                                }
                                               }
                                              }
                                             }
                                            }
                                           }
                                          },
                                          "next": {
                                           "block": {
                                            "type": "controls_if",
                                            "id": "b139",
                                            "inputs": {
                                             "IF0": {
                                              "block": {
                                               "type": "logic_negate",
                                               "id": "b134",
                                               "inputs": {
                                                "BOOL": {
                                                 "block": {
                                                  "type": "variables_get",
                                                  "id": "b133",
                                                  "fields": {
                                                   "VAR": {
                                                    "id": "var_have_rel"
                                                   }
                                                  }
                                                 }
                                                }
                                               }
                                              }
                                             },
                                             "DO0": {
                                              "block": {
                                               "type": "variables_set",
                                               "id": "b136",
                                               "fields": {
                                                "VAR": {
                                                 "id": "var_far_n"
                                                }
                                               },
                                               "inputs": {
                                                "VALUE": {
                                                 "block": {
                                                  "type": "math_number",
                                                  "id": "b135",
                                                  "fields": {
                                                   "NUM": 0
                                                  }
                                                 }
                                                }
                                               },
                                               "next": {
                                                "block": {
                                                 "type": "variables_set",
                                                 "id": "b138",
                                                 "fields": {
                                                  "VAR": {
                                                   "id": "var_far_e"
                                                  }
                                                 },
                                                 "inputs": {
                                                  "VALUE": {
                                                   "block": {
                                                    "type": "math_number",
                                                    "id": "b137",
                                                    "fields": {
                                                     "NUM": 0
                                                    }
                                                   }
                                                  }
                                                 }
                                                }
                                               }
                                              }
                                             }
                                            },
                                            "next": {
                                             "block": {
                                              "type": "variables_set",
                                              "id": "b148",
                                              "fields": {
                                               "VAR": {
                                                "id": "var_hold_climb"
                                               }
                                              },
                                              "inputs": {
                                               "VALUE": {
                                                "block": {
                                                 "type": "math_constrain",
                                                 "id": "b147",
                                                 "inputs": {
                                                  "VALUE": {
                                                   "block": {
                                                    "type": "math_arithmetic",
                                                    "id": "b144",
                                                    "fields": {
                                                     "OP": "MULTIPLY"
                                                    },
                                                    "inputs": {
                                                     "A": {
                                                      "block": {
                                                       "type": "math_number",
                                                       "id": "b143",
                                                       "fields": {
                                                        "NUM": 0.8
                                                       }
                                                      }
                                                     },
                                                     "B": {
                                                      "block": {
                                                       "type": "math_arithmetic",
                                                       "id": "b142",
                                                       "fields": {
                                                        "OP": "MINUS"
                                                       },
                                                       "inputs": {
                                                        "A": {
                                                         "block": {
                                                          "type": "math_number",
                                                          "id": "b141",
                                                          "fields": {
                                                           "NUM": 8
                                                          }
                                                         }
                                                        },
                                                        "B": {
                                                         "block": {
                                                          "type": "variables_get",
                                                          "id": "b140",
                                                          "fields": {
                                                           "VAR": {
                                                            "id": "var_h"
                                                           }
                                                          }
                                                         }
                                                        }
                                                       }
                                                      }
                                                     }
                                                    }
                                                   }
                                                  },
                                                  "LOW": {
                                                   "block": {
                                                    "type": "math_number",
                                                    "id": "b145",
                                                    "fields": {
                                                     "NUM": -1.5
                                                    }
                                                   }
                                                  },
                                                  "HIGH": {
                                                   "block": {
                                                    "type": "math_number",
                                                    "id": "b146",
                                                    "fields": {
                                                     "NUM": 2
                                                    }
                                                   }
                                                  }
                                                 }
                                                }
                                               }
                                              },
                                              "next": {
                                               "block": {
                                                "type": "forge_debug",
                                                "id": "b150",
                                                "fields": {
                                                 "INDEX": "1"
                                                },
                                                "inputs": {
                                                 "VALUE": {
                                                  "block": {
                                                   "type": "variables_get",
                                                   "id": "b149",
                                                   "fields": {
                                                    "VAR": {
                                                     "id": "var_rel"
                                                    }
                                                   }
                                                  }
                                                 }
                                                },
                                                "next": {
                                                 "block": {
                                                  "type": "forge_debug",
                                                  "id": "b152",
                                                  "fields": {
                                                   "INDEX": "2"
                                                  },
                                                  "inputs": {
                                                   "VALUE": {
                                                    "block": {
                                                     "type": "variables_get",
                                                     "id": "b151",
                                                     "fields": {
                                                      "VAR": {
                                                       "id": "var_h"
                                                      }
                                                     }
                                                    }
                                                   }
                                                  },
                                                  "next": {
                                                   "block": {
                                                    "type": "forge_debug",
                                                    "id": "b154",
                                                    "fields": {
                                                     "INDEX": "3"
                                                    },
                                                    "inputs": {
                                                     "VALUE": {
                                                      "block": {
                                                       "type": "forge_pkt_age",
                                                       "id": "L22",
                                                       "fields": {
                                                        "PACKET": "marker"
                                                       }
                                                      }
                                                     }
                                                    },
                                                    "next": {
                                                     "block": {
                                                      "type": "forge_debug",
                                                      "id": "b156",
                                                      "fields": {
                                                       "INDEX": "4"
                                                      },
                                                      "inputs": {
                                                       "VALUE": {
                                                        "block": {
                                                         "type": "variables_get",
                                                         "id": "b155",
                                                         "fields": {
                                                          "VAR": {
                                                           "id": "var_aborts"
                                                          }
                                                         }
                                                        }
                                                       }
                                                      }
                                                     }
                                                    }
                                                   }
                                                  }
                                                 }
                                                }
                                               }
                                              }
                                             }
                                            }
                                           }
                                          }
                                         }
                                        }
                                       }
                                      }
                                     }
                                    }
                                   }
                                  }
                                 }
                                }
                               }
                              }
                             }
                            }
                           }
                          }
                         }
                        }
                       }
                      }
                     }
                    }
                   }
                  }
                 }
                }
               }
              }
             }
            }
           }
          }
         }
        }
       }
      },
      "STATES": {
       "block": {
        "type": "forge_state",
        "id": "b176",
        "fields": {
         "NAME": "approach"
        },
        "inputs": {
         "ENTRY": {
          "block": {
           "type": "forge_debug",
           "id": "b158",
           "fields": {
            "INDEX": "0"
           },
           "inputs": {
            "VALUE": {
             "block": {
              "type": "math_number",
              "id": "b157",
              "fields": {
               "NUM": 0
              }
             }
            }
           }
          }
         },
         "TICK": {
          "block": {
           "type": "forge_cmd_loiter",
           "id": "b168",
           "fields": {
            "frame": "NED",
            "yaw_valid": true,
            "DISARM_WHEN_LANDED": false
           },
           "inputs": {
            "vel_x": {
             "block": {
              "type": "math_arithmetic",
              "id": "b163",
              "fields": {
               "OP": "ADD"
              },
              "inputs": {
               "A": {
                "block": {
                 "type": "variables_get",
                 "id": "b162",
                 "fields": {
                  "VAR": {
                   "id": "var_pf_vn"
                  }
                 }
                }
               },
               "B": {
                "block": {
                 "type": "variables_get",
                 "id": "b159",
                 "fields": {
                  "VAR": {
                   "id": "var_far_n"
                  }
                 }
                }
               }
              }
             }
            },
            "vel_y": {
             "block": {
              "type": "math_arithmetic",
              "id": "b165",
              "fields": {
               "OP": "ADD"
              },
              "inputs": {
               "A": {
                "block": {
                 "type": "variables_get",
                 "id": "b164",
                 "fields": {
                  "VAR": {
                   "id": "var_pf_ve"
                  }
                 }
                }
               },
               "B": {
                "block": {
                 "type": "variables_get",
                 "id": "b160",
                 "fields": {
                  "VAR": {
                   "id": "var_far_e"
                  }
                 }
                }
               }
              }
             }
            },
            "climb_rate": {
             "block": {
              "type": "variables_get",
              "id": "b161",
              "fields": {
               "VAR": {
                "id": "var_hold_climb"
               }
              }
             }
            },
            "yaw_rate": {
             "block": {
              "type": "math_number",
              "id": "b167",
              "fields": {
               "NUM": 0
              }
             }
            },
            "yaw": {
             "block": {
              "type": "variables_get",
              "id": "b166",
              "fields": {
               "VAR": {
                "id": "var_yaw"
               }
              }
             }
            }
           },
           "next": {
            "block": {
             "type": "controls_if",
             "id": "b175",
             "inputs": {
              "IF0": {
               "block": {
                "type": "logic_operation",
                "id": "b173",
                "fields": {
                 "OP": "AND"
                },
                "inputs": {
                 "A": {
                  "block": {
                   "type": "variables_get",
                   "id": "b169",
                   "fields": {
                    "VAR": {
                     "id": "var_marker"
                    }
                   }
                  }
                 },
                 "B": {
                  "block": {
                   "type": "logic_compare",
                   "id": "b172",
                   "fields": {
                    "OP": "LT"
                   },
                   "inputs": {
                    "A": {
                     "block": {
                      "type": "variables_get",
                      "id": "b170",
                      "fields": {
                       "VAR": {
                        "id": "var_rel"
                       }
                      }
                     }
                    },
                    "B": {
                     "block": {
                      "type": "math_number",
                      "id": "b171",
                      "fields": {
                       "NUM": 4
                      }
                     }
                    }
                   }
                  }
                 }
                }
               }
              },
              "DO0": {
               "block": {
                "type": "forge_goto",
                "id": "b174",
                "fields": {
                 "NAME": "track"
                }
               }
              }
             }
            }
           }
          }
         }
        },
        "next": {
         "block": {
          "type": "forge_state",
          "id": "b219",
          "fields": {
           "NAME": "track"
          },
          "inputs": {
           "ENTRY": {
            "block": {
             "type": "forge_debug",
             "id": "b178",
             "fields": {
              "INDEX": "0"
             },
             "inputs": {
              "VALUE": {
               "block": {
                "type": "math_number",
                "id": "b177",
                "fields": {
                 "NUM": 1
                }
               }
              }
             },
             "next": {
              "block": {
               "type": "variables_set",
               "id": "b180",
               "fields": {
                "VAR": {
                 "id": "var_centred_since"
                }
               },
               "inputs": {
                "VALUE": {
                 "block": {
                  "type": "math_number",
                  "id": "b179",
                  "fields": {
                   "NUM": -1
                  }
                 }
                }
               }
              }
             }
            }
           },
           "TICK": {
            "block": {
             "type": "forge_cmd_loiter",
             "id": "b190",
             "fields": {
              "frame": "NED",
              "yaw_valid": true,
              "DISARM_WHEN_LANDED": false
             },
             "inputs": {
              "vel_x": {
               "block": {
                "type": "math_arithmetic",
                "id": "b185",
                "fields": {
                 "OP": "ADD"
                },
                "inputs": {
                 "A": {
                  "block": {
                   "type": "variables_get",
                   "id": "b184",
                   "fields": {
                    "VAR": {
                     "id": "var_pf_vn"
                    }
                   }
                  }
                 },
                 "B": {
                  "block": {
                   "type": "variables_get",
                   "id": "b181",
                   "fields": {
                    "VAR": {
                     "id": "var_near_n"
                    }
                   }
                  }
                 }
                }
               }
              },
              "vel_y": {
               "block": {
                "type": "math_arithmetic",
                "id": "b187",
                "fields": {
                 "OP": "ADD"
                },
                "inputs": {
                 "A": {
                  "block": {
                   "type": "variables_get",
                   "id": "b186",
                   "fields": {
                    "VAR": {
                     "id": "var_pf_ve"
                    }
                   }
                  }
                 },
                 "B": {
                  "block": {
                   "type": "variables_get",
                   "id": "b182",
                   "fields": {
                    "VAR": {
                     "id": "var_near_e"
                    }
                   }
                  }
                 }
                }
               }
              },
              "climb_rate": {
               "block": {
                "type": "variables_get",
                "id": "b183",
                "fields": {
                 "VAR": {
                  "id": "var_hold_climb"
                 }
                }
               }
              },
              "yaw_rate": {
               "block": {
                "type": "math_number",
                "id": "b189",
                "fields": {
                 "NUM": 0
                }
               }
              },
              "yaw": {
               "block": {
                "type": "variables_get",
                "id": "b188",
                "fields": {
                 "VAR": {
                  "id": "var_yaw"
                 }
                }
               }
              }
             },
             "next": {
              "block": {
               "type": "controls_if",
               "id": "b204",
               "inputs": {
                "IF0": {
                 "block": {
                  "type": "logic_operation",
                  "id": "b195",
                  "fields": {
                   "OP": "AND"
                  },
                  "inputs": {
                   "A": {
                    "block": {
                     "type": "variables_get",
                     "id": "b191",
                     "fields": {
                      "VAR": {
                       "id": "var_marker"
                      }
                     }
                    }
                   },
                   "B": {
                    "block": {
                     "type": "logic_compare",
                     "id": "b194",
                     "fields": {
                      "OP": "LT"
                     },
                     "inputs": {
                      "A": {
                       "block": {
                        "type": "variables_get",
                        "id": "b192",
                        "fields": {
                         "VAR": {
                          "id": "var_rel"
                         }
                        }
                       }
                      },
                      "B": {
                       "block": {
                        "type": "math_number",
                        "id": "b193",
                        "fields": {
                         "NUM": 0.4
                        }
                       }
                      }
                     }
                    }
                   }
                  }
                 }
                },
                "DO0": {
                 "block": {
                  "type": "controls_if",
                  "id": "b201",
                  "inputs": {
                   "IF0": {
                    "block": {
                     "type": "logic_compare",
                     "id": "b198",
                     "fields": {
                      "OP": "LT"
                     },
                     "inputs": {
                      "A": {
                       "block": {
                        "type": "variables_get",
                        "id": "b196",
                        "fields": {
                         "VAR": {
                          "id": "var_centred_since"
                         }
                        }
                       }
                      },
                      "B": {
                       "block": {
                        "type": "math_number",
                        "id": "b197",
                        "fields": {
                         "NUM": 0
                        }
                       }
                      }
                     }
                    }
                   },
                   "DO0": {
                    "block": {
                     "type": "variables_set",
                     "id": "b200",
                     "fields": {
                      "VAR": {
                       "id": "var_centred_since"
                      }
                     },
                     "inputs": {
                      "VALUE": {
                       "block": {
                        "type": "forge_time_running",
                        "id": "b199"
                       }
                      }
                     }
                    }
                   }
                  }
                 }
                },
                "ELSE": {
                 "block": {
                  "type": "variables_set",
                  "id": "b203",
                  "fields": {
                   "VAR": {
                    "id": "var_centred_since"
                   }
                  },
                  "inputs": {
                   "VALUE": {
                    "block": {
                     "type": "math_number",
                     "id": "b202",
                     "fields": {
                      "NUM": -1
                     }
                    }
                   }
                  }
                 }
                }
               },
               "extraState": {
                "hasElse": true
               },
               "next": {
                "block": {
                 "type": "controls_if",
                 "id": "b218",
                 "inputs": {
                  "IF0": {
                   "block": {
                    "type": "logic_operation",
                    "id": "b213",
                    "fields": {
                     "OP": "AND"
                    },
                    "inputs": {
                     "A": {
                      "block": {
                       "type": "logic_compare",
                       "id": "b207",
                       "fields": {
                        "OP": "GTE"
                       },
                       "inputs": {
                        "A": {
                         "block": {
                          "type": "variables_get",
                          "id": "b205",
                          "fields": {
                           "VAR": {
                            "id": "var_centred_since"
                           }
                          }
                         }
                        },
                        "B": {
                         "block": {
                          "type": "math_number",
                          "id": "b206",
                          "fields": {
                           "NUM": 0
                          }
                         }
                        }
                       }
                      }
                     },
                     "B": {
                      "block": {
                       "type": "logic_compare",
                       "id": "b212",
                       "fields": {
                        "OP": "GT"
                       },
                       "inputs": {
                        "A": {
                         "block": {
                          "type": "math_arithmetic",
                          "id": "b210",
                          "fields": {
                           "OP": "MINUS"
                          },
                          "inputs": {
                           "A": {
                            "block": {
                             "type": "forge_time_running",
                             "id": "b208"
                            }
                           },
                           "B": {
                            "block": {
                             "type": "variables_get",
                             "id": "b209",
                             "fields": {
                              "VAR": {
                               "id": "var_centred_since"
                              }
                             }
                            }
                           }
                          }
                         }
                        },
                        "B": {
                         "block": {
                          "type": "math_number",
                          "id": "b211",
                          "fields": {
                           "NUM": 1
                          }
                         }
                        }
                       }
                      }
                     }
                    }
                   }
                  },
                  "DO0": {
                   "block": {
                    "type": "forge_goto",
                    "id": "b214",
                    "fields": {
                     "NAME": "descend"
                    }
                   }
                  },
                  "IF1": {
                   "block": {
                    "type": "logic_negate",
                    "id": "b216",
                    "inputs": {
                     "BOOL": {
                      "block": {
                       "type": "variables_get",
                       "id": "b215",
                       "fields": {
                        "VAR": {
                         "id": "var_have_rel"
                        }
                       }
                      }
                     }
                    }
                   }
                  },
                  "DO1": {
                   "block": {
                    "type": "forge_goto",
                    "id": "b217",
                    "fields": {
                     "NAME": "approach"
                    }
                   }
                  }
                 },
                 "extraState": {
                  "elseIfCount": 1
                 }
                }
               }
              }
             }
            }
           }
          },
          "next": {
           "block": {
            "type": "forge_state",
            "id": "b275",
            "fields": {
             "NAME": "descend"
            },
            "inputs": {
             "ENTRY": {
              "block": {
               "type": "forge_debug",
               "id": "b221",
               "fields": {
                "INDEX": "0"
               },
               "inputs": {
                "VALUE": {
                 "block": {
                  "type": "math_number",
                  "id": "b220",
                  "fields": {
                   "NUM": 2
                  }
                 }
                }
               }
              }
             },
             "TICK": {
              "block": {
               "type": "controls_if",
               "id": "b234",
               "inputs": {
                "IF0": {
                 "block": {
                  "type": "logic_compare",
                  "id": "b224",
                  "fields": {
                   "OP": "GT"
                  },
                  "inputs": {
                   "A": {
                    "block": {
                     "type": "variables_get",
                     "id": "b222",
                     "fields": {
                      "VAR": {
                       "id": "var_h"
                      }
                     }
                    }
                   },
                   "B": {
                    "block": {
                     "type": "math_number",
                     "id": "b223",
                     "fields": {
                      "NUM": 3
                     }
                    }
                   }
                  }
                 }
                },
                "DO0": {
                 "block": {
                  "type": "variables_set",
                  "id": "b226",
                  "fields": {
                   "VAR": {
                    "id": "var_climb"
                   }
                  },
                  "inputs": {
                   "VALUE": {
                    "block": {
                     "type": "math_number",
                     "id": "b225",
                     "fields": {
                      "NUM": -0.7
                     }
                    }
                   }
                  }
                 }
                },
                "IF1": {
                 "block": {
                  "type": "logic_compare",
                  "id": "b229",
                  "fields": {
                   "OP": "GT"
                  },
                  "inputs": {
                   "A": {
                    "block": {
                     "type": "variables_get",
                     "id": "b227",
                     "fields": {
                      "VAR": {
                       "id": "var_h"
                      }
                     }
                    }
                   },
                   "B": {
                    "block": {
                     "type": "math_number",
                     "id": "b228",
                     "fields": {
                      "NUM": 1
                     }
                    }
                   }
                  }
                 }
                },
                "DO1": {
                 "block": {
                  "type": "variables_set",
                  "id": "b231",
                  "fields": {
                   "VAR": {
                    "id": "var_climb"
                   }
                  },
                  "inputs": {
                   "VALUE": {
                    "block": {
                     "type": "math_number",
                     "id": "b230",
                     "fields": {
                      "NUM": -0.4
                     }
                    }
                   }
                  }
                 }
                },
                "ELSE": {
                 "block": {
                  "type": "variables_set",
                  "id": "b233",
                  "fields": {
                   "VAR": {
                    "id": "var_climb"
                   }
                  },
                  "inputs": {
                   "VALUE": {
                    "block": {
                     "type": "math_number",
                     "id": "b232",
                     "fields": {
                      "NUM": -0.3
                     }
                    }
                   }
                  }
                 }
                }
               },
               "extraState": {
                "elseIfCount": 1,
                "hasElse": true
               },
               "next": {
                "block": {
                 "type": "forge_cmd_loiter",
                 "id": "b244",
                 "fields": {
                  "frame": "NED",
                  "yaw_valid": true,
                  "DISARM_WHEN_LANDED": false
                 },
                 "inputs": {
                  "vel_x": {
                   "block": {
                    "type": "math_arithmetic",
                    "id": "b239",
                    "fields": {
                     "OP": "ADD"
                    },
                    "inputs": {
                     "A": {
                      "block": {
                       "type": "variables_get",
                       "id": "b238",
                       "fields": {
                        "VAR": {
                         "id": "var_pf_vn"
                        }
                       }
                      }
                     },
                     "B": {
                      "block": {
                       "type": "variables_get",
                       "id": "b235",
                       "fields": {
                        "VAR": {
                         "id": "var_near_n"
                        }
                       }
                      }
                     }
                    }
                   }
                  },
                  "vel_y": {
                   "block": {
                    "type": "math_arithmetic",
                    "id": "b241",
                    "fields": {
                     "OP": "ADD"
                    },
                    "inputs": {
                     "A": {
                      "block": {
                       "type": "variables_get",
                       "id": "b240",
                       "fields": {
                        "VAR": {
                         "id": "var_pf_ve"
                        }
                       }
                      }
                     },
                     "B": {
                      "block": {
                       "type": "variables_get",
                       "id": "b236",
                       "fields": {
                        "VAR": {
                         "id": "var_near_e"
                        }
                       }
                      }
                     }
                    }
                   }
                  },
                  "climb_rate": {
                   "block": {
                    "type": "variables_get",
                    "id": "b237",
                    "fields": {
                     "VAR": {
                      "id": "var_climb"
                     }
                    }
                   }
                  },
                  "yaw_rate": {
                   "block": {
                    "type": "math_number",
                    "id": "b243",
                    "fields": {
                     "NUM": 0
                    }
                   }
                  },
                  "yaw": {
                   "block": {
                    "type": "variables_get",
                    "id": "b242",
                    "fields": {
                     "VAR": {
                      "id": "var_yaw"
                     }
                    }
                   }
                  }
                 },
                 "next": {
                  "block": {
                   "type": "controls_if",
                   "id": "b252",
                   "inputs": {
                    "IF0": {
                     "block": {
                      "type": "logic_compare",
                      "id": "b247",
                      "fields": {
                       "OP": "LT"
                      },
                      "inputs": {
                       "A": {
                        "block": {
                         "type": "variables_get",
                         "id": "b245",
                         "fields": {
                          "VAR": {
                           "id": "var_h"
                          }
                         }
                        }
                       },
                       "B": {
                        "block": {
                         "type": "math_number",
                         "id": "b246",
                         "fields": {
                          "NUM": 3
                         }
                        }
                       }
                      }
                     }
                    },
                    "DO0": {
                     "block": {
                      "type": "variables_set",
                      "id": "b249",
                      "fields": {
                       "VAR": {
                        "id": "var_limit"
                       }
                      },
                      "inputs": {
                       "VALUE": {
                        "block": {
                         "type": "math_number",
                         "id": "b248",
                         "fields": {
                          "NUM": 0.8
                         }
                        }
                       }
                      }
                     }
                    },
                    "ELSE": {
                     "block": {
                      "type": "variables_set",
                      "id": "b251",
                      "fields": {
                       "VAR": {
                        "id": "var_limit"
                       }
                      },
                      "inputs": {
                       "VALUE": {
                        "block": {
                         "type": "math_number",
                         "id": "b250",
                         "fields": {
                          "NUM": 1.5
                         }
                        }
                       }
                      }
                     }
                    }
                   },
                   "extraState": {
                    "hasElse": true
                   },
                   "next": {
                    "block": {
                     "type": "controls_if",
                     "id": "b274",
                     "inputs": {
                      "IF0": {
                       "block": {
                        "type": "logic_operation",
                        "id": "b261",
                        "fields": {
                         "OP": "OR"
                        },
                        "inputs": {
                         "A": {
                          "block": {
                           "type": "logic_compare",
                           "id": "b255",
                           "fields": {
                            "OP": "GT"
                           },
                           "inputs": {
                            "A": {
                             "block": {
                              "type": "forge_pkt_age",
                              "id": "L23",
                              "fields": {
                               "PACKET": "marker"
                              }
                             }
                            },
                            "B": {
                             "block": {
                              "type": "math_number",
                              "id": "b254",
                              "fields": {
                               "NUM": 600
                              }
                             }
                            }
                           }
                          }
                         },
                         "B": {
                          "block": {
                           "type": "logic_operation",
                           "id": "b260",
                           "fields": {
                            "OP": "AND"
                           },
                           "inputs": {
                            "A": {
                             "block": {
                              "type": "variables_get",
                              "id": "b256",
                              "fields": {
                               "VAR": {
                                "id": "var_marker"
                               }
                              }
                             }
                            },
                            "B": {
                             "block": {
                              "type": "logic_compare",
                              "id": "b259",
                              "fields": {
                               "OP": "GT"
                              },
                              "inputs": {
                               "A": {
                                "block": {
                                 "type": "variables_get",
                                 "id": "b257",
                                 "fields": {
                                  "VAR": {
                                   "id": "var_rel"
                                  }
                                 }
                                }
                               },
                               "B": {
                                "block": {
                                 "type": "variables_get",
                                 "id": "b258",
                                 "fields": {
                                  "VAR": {
                                   "id": "var_limit"
                                  }
                                 }
                                }
                               }
                              }
                             }
                            }
                           }
                          }
                         }
                        }
                       }
                      },
                      "DO0": {
                       "block": {
                        "type": "math_change",
                        "id": "b263",
                        "fields": {
                         "VAR": {
                          "id": "var_aborts"
                         }
                        },
                        "inputs": {
                         "DELTA": {
                          "block": {
                           "type": "math_number",
                           "id": "b262",
                           "fields": {
                            "NUM": 1
                           }
                          }
                         }
                        },
                        "next": {
                         "block": {
                          "type": "controls_if",
                          "id": "b269",
                          "inputs": {
                           "IF0": {
                            "block": {
                             "type": "logic_compare",
                             "id": "b266",
                             "fields": {
                              "OP": "GTE"
                             },
                             "inputs": {
                              "A": {
                               "block": {
                                "type": "variables_get",
                                "id": "b264",
                                "fields": {
                                 "VAR": {
                                  "id": "var_aborts"
                                 }
                                }
                               }
                              },
                              "B": {
                               "block": {
                                "type": "math_number",
                                "id": "b265",
                                "fields": {
                                 "NUM": 3
                                }
                               }
                              }
                             }
                            }
                           },
                           "DO0": {
                            "block": {
                             "type": "forge_goto",
                             "id": "b267",
                             "fields": {
                              "NAME": "failed"
                             }
                            }
                           },
                           "ELSE": {
                            "block": {
                             "type": "forge_goto",
                             "id": "b268",
                             "fields": {
                              "NAME": "abort"
                             }
                            }
                           }
                          },
                          "extraState": {
                           "hasElse": true
                          }
                         }
                        }
                       }
                      },
                      "IF1": {
                       "block": {
                        "type": "logic_compare",
                        "id": "b272",
                        "fields": {
                         "OP": "LT"
                        },
                        "inputs": {
                         "A": {
                          "block": {
                           "type": "variables_get",
                           "id": "b270",
                           "fields": {
                            "VAR": {
                             "id": "var_h"
                            }
                           }
                          }
                         },
                         "B": {
                          "block": {
                           "type": "math_number",
                           "id": "b271",
                           "fields": {
                            "NUM": 0.5
                           }
                          }
                         }
                        }
                       }
                      },
                      "DO1": {
                       "block": {
                        "type": "forge_goto",
                        "id": "b273",
                        "fields": {
                         "NAME": "touchdown"
                        }
                       }
                      }
                     },
                     "extraState": {
                      "elseIfCount": 1
                     }
                    }
                   }
                  }
                 }
                }
               }
              }
             }
            },
            "next": {
             "block": {
              "type": "forge_state",
              "id": "b291",
              "fields": {
               "NAME": "touchdown"
              },
              "inputs": {
               "ENTRY": {
                "block": {
                 "type": "forge_debug",
                 "id": "b277",
                 "fields": {
                  "INDEX": "0"
                 },
                 "inputs": {
                  "VALUE": {
                   "block": {
                    "type": "math_number",
                    "id": "b276",
                    "fields": {
                     "NUM": 3
                    }
                   }
                  }
                 }
                }
               },
               "TICK": {
                "block": {
                 "type": "forge_cmd_loiter",
                 "id": "b287",
                 "fields": {
                  "frame": "NED",
                  "yaw_valid": true,
                  "DISARM_WHEN_LANDED": true
                 },
                 "inputs": {
                  "vel_x": {
                   "block": {
                    "type": "math_arithmetic",
                    "id": "b281",
                    "fields": {
                     "OP": "ADD"
                    },
                    "inputs": {
                     "A": {
                      "block": {
                       "type": "variables_get",
                       "id": "b280",
                       "fields": {
                        "VAR": {
                         "id": "var_pf_vn"
                        }
                       }
                      }
                     },
                     "B": {
                      "block": {
                       "type": "variables_get",
                       "id": "b278",
                       "fields": {
                        "VAR": {
                         "id": "var_near_n"
                        }
                       }
                      }
                     }
                    }
                   }
                  },
                  "vel_y": {
                   "block": {
                    "type": "math_arithmetic",
                    "id": "b283",
                    "fields": {
                     "OP": "ADD"
                    },
                    "inputs": {
                     "A": {
                      "block": {
                       "type": "variables_get",
                       "id": "b282",
                       "fields": {
                        "VAR": {
                         "id": "var_pf_ve"
                        }
                       }
                      }
                     },
                     "B": {
                      "block": {
                       "type": "variables_get",
                       "id": "b279",
                       "fields": {
                        "VAR": {
                         "id": "var_near_e"
                        }
                       }
                      }
                     }
                    }
                   }
                  },
                  "climb_rate": {
                   "block": {
                    "type": "math_number",
                    "id": "b285",
                    "fields": {
                     "NUM": -0.3
                    }
                   }
                  },
                  "yaw_rate": {
                   "block": {
                    "type": "math_number",
                    "id": "b286",
                    "fields": {
                     "NUM": 0
                    }
                   }
                  },
                  "yaw": {
                   "block": {
                    "type": "variables_get",
                    "id": "b284",
                    "fields": {
                     "VAR": {
                      "id": "var_yaw"
                     }
                    }
                   }
                  }
                 },
                 "next": {
                  "block": {
                   "type": "controls_if",
                   "id": "b290",
                   "inputs": {
                    "IF0": {
                     "block": {
                      "type": "forge_vehicle_flag",
                      "id": "b288",
                      "fields": {
                       "WHAT": "landed"
                      }
                     }
                    },
                    "DO0": {
                     "block": {
                      "type": "forge_goto",
                      "id": "b289",
                      "fields": {
                       "NAME": "done"
                      }
                     }
                    }
                   }
                  }
                 }
                }
               }
              },
              "next": {
               "block": {
                "type": "forge_state",
                "id": "b304",
                "fields": {
                 "NAME": "done"
                },
                "inputs": {
                 "ENTRY": {
                  "block": {
                   "type": "forge_debug",
                   "id": "b293",
                   "fields": {
                    "INDEX": "0"
                   },
                   "inputs": {
                    "VALUE": {
                     "block": {
                      "type": "math_number",
                      "id": "b292",
                      "fields": {
                       "NUM": 4
                      }
                     }
                    }
                   }
                  }
                 },
                 "TICK": {
                  "block": {
                   "type": "forge_cmd_loiter",
                   "id": "b303",
                   "fields": {
                    "frame": "NED",
                    "yaw_valid": true,
                    "DISARM_WHEN_LANDED": true
                   },
                   "inputs": {
                    "vel_x": {
                     "block": {
                      "type": "math_arithmetic",
                      "id": "b296",
                      "fields": {
                       "OP": "ADD"
                      },
                      "inputs": {
                       "A": {
                        "block": {
                         "type": "variables_get",
                         "id": "b294",
                         "fields": {
                          "VAR": {
                           "id": "var_pf_vn"
                          }
                         }
                        }
                       },
                       "B": {
                        "block": {
                         "type": "math_number",
                         "id": "b295",
                         "fields": {
                          "NUM": 0
                         }
                        }
                       }
                      }
                     }
                    },
                    "vel_y": {
                     "block": {
                      "type": "math_arithmetic",
                      "id": "b299",
                      "fields": {
                       "OP": "ADD"
                      },
                      "inputs": {
                       "A": {
                        "block": {
                         "type": "variables_get",
                         "id": "b297",
                         "fields": {
                          "VAR": {
                           "id": "var_pf_ve"
                          }
                         }
                        }
                       },
                       "B": {
                        "block": {
                         "type": "math_number",
                         "id": "b298",
                         "fields": {
                          "NUM": 0
                         }
                        }
                       }
                      }
                     }
                    },
                    "climb_rate": {
                     "block": {
                      "type": "math_number",
                      "id": "b301",
                      "fields": {
                       "NUM": -0.3
                      }
                     }
                    },
                    "yaw_rate": {
                     "block": {
                      "type": "math_number",
                      "id": "b302",
                      "fields": {
                       "NUM": 0
                      }
                     }
                    },
                    "yaw": {
                     "block": {
                      "type": "variables_get",
                      "id": "b300",
                      "fields": {
                       "VAR": {
                        "id": "var_yaw"
                       }
                      }
                     }
                    }
                   }
                  }
                 }
                },
                "next": {
                 "block": {
                  "type": "forge_state",
                  "id": "b322",
                  "fields": {
                   "NAME": "abort"
                  },
                  "inputs": {
                   "ENTRY": {
                    "block": {
                     "type": "forge_debug",
                     "id": "b306",
                     "fields": {
                      "INDEX": "0"
                     },
                     "inputs": {
                      "VALUE": {
                       "block": {
                        "type": "math_number",
                        "id": "b305",
                        "fields": {
                         "NUM": 5
                        }
                       }
                      }
                     }
                    }
                   },
                   "TICK": {
                    "block": {
                     "type": "forge_cmd_loiter",
                     "id": "b316",
                     "fields": {
                      "frame": "NED",
                      "yaw_valid": true,
                      "DISARM_WHEN_LANDED": false
                     },
                     "inputs": {
                      "vel_x": {
                       "block": {
                        "type": "math_arithmetic",
                        "id": "b310",
                        "fields": {
                         "OP": "ADD"
                        },
                        "inputs": {
                         "A": {
                          "block": {
                           "type": "variables_get",
                           "id": "b309",
                           "fields": {
                            "VAR": {
                             "id": "var_pf_vn"
                            }
                           }
                          }
                         },
                         "B": {
                          "block": {
                           "type": "variables_get",
                           "id": "b307",
                           "fields": {
                            "VAR": {
                             "id": "var_far_n"
                            }
                           }
                          }
                         }
                        }
                       }
                      },
                      "vel_y": {
                       "block": {
                        "type": "math_arithmetic",
                        "id": "b312",
                        "fields": {
                         "OP": "ADD"
                        },
                        "inputs": {
                         "A": {
                          "block": {
                           "type": "variables_get",
                           "id": "b311",
                           "fields": {
                            "VAR": {
                             "id": "var_pf_ve"
                            }
                           }
                          }
                         },
                         "B": {
                          "block": {
                           "type": "variables_get",
                           "id": "b308",
                           "fields": {
                            "VAR": {
                             "id": "var_far_e"
                            }
                           }
                          }
                         }
                        }
                       }
                      },
                      "climb_rate": {
                       "block": {
                        "type": "math_number",
                        "id": "b314",
                        "fields": {
                         "NUM": 1.5
                        }
                       }
                      },
                      "yaw_rate": {
                       "block": {
                        "type": "math_number",
                        "id": "b315",
                        "fields": {
                         "NUM": 0
                        }
                       }
                      },
                      "yaw": {
                       "block": {
                        "type": "variables_get",
                        "id": "b313",
                        "fields": {
                         "VAR": {
                          "id": "var_yaw"
                         }
                        }
                       }
                      }
                     },
                     "next": {
                      "block": {
                       "type": "controls_if",
                       "id": "b321",
                       "inputs": {
                        "IF0": {
                         "block": {
                          "type": "logic_compare",
                          "id": "b319",
                          "fields": {
                           "OP": "GT"
                          },
                          "inputs": {
                           "A": {
                            "block": {
                             "type": "variables_get",
                             "id": "b317",
                             "fields": {
                              "VAR": {
                               "id": "var_h"
                              }
                             }
                            }
                           },
                           "B": {
                            "block": {
                             "type": "math_number",
                             "id": "b318",
                             "fields": {
                              "NUM": 7.5
                             }
                            }
                           }
                          }
                         }
                        },
                        "DO0": {
                         "block": {
                          "type": "forge_goto",
                          "id": "b320",
                          "fields": {
                           "NAME": "track"
                          }
                         }
                        }
                       }
                      }
                     }
                    }
                   }
                  },
                  "next": {
                   "block": {
                    "type": "forge_state",
                    "id": "b326",
                    "fields": {
                     "NAME": "failed"
                    },
                    "inputs": {
                     "ENTRY": {
                      "block": {
                       "type": "forge_debug",
                       "id": "b324",
                       "fields": {
                        "INDEX": "0"
                       },
                       "inputs": {
                        "VALUE": {
                         "block": {
                          "type": "math_number",
                          "id": "b323",
                          "fields": {
                           "NUM": 6
                          }
                         }
                        }
                       }
                      }
                     },
                     "TICK": {
                      "block": {
                       "type": "forge_fallback",
                       "id": "b325"
                      }
                     }
                    }
                   }
                  }
                 }
                }
               }
              }
             }
            }
           }
          }
         }
        }
       }
      }
     },
     "x": 40,
     "y": 40
    },
    {
     "type": "forge_companion_link",
     "id": "link_usb",
     "x": 1500,
     "y": 40,
     "fields": {
      "PORT": "USB",
      "BAUD": "115200",
      "ENDIAN": "LE"
     },
     "inputs": {
      "PACKETS": {
       "block": {
        "type": "forge_packet",
        "id": "L30",
        "fields": {
         "NAME": "marker",
         "DIR": "RX",
         "START": "AA 55",
         "ID": "01",
         "CHECKSUM": "CRC16",
         "PERIOD": 33,
         "STALE": 250
        },
        "inputs": {
         "FIELDS": {
          "block": {
           "type": "forge_packet_field",
           "id": "L24",
           "fields": {
            "VAR": {
             "id": "fv_marker_forward"
            },
            "TYPE": "i16",
            "SCALE": 0.001,
            "OFFSET": 0,
            "UNIT": "m"
           },
           "inputs": {
            "VALUE": {
             "block": {
              "type": "forge_source",
              "id": "L25",
              "fields": {
               "ACTOR": "camera",
               "VAR": "deck_marker.forward"
              }
             }
            }
           },
           "next": {
            "block": {
             "type": "forge_packet_field",
             "id": "L26",
             "fields": {
              "VAR": {
               "id": "fv_marker_right"
              },
              "TYPE": "i16",
              "SCALE": 0.001,
              "OFFSET": 0,
              "UNIT": "m"
             },
             "inputs": {
              "VALUE": {
               "block": {
                "type": "forge_source",
                "id": "L27",
                "fields": {
                 "ACTOR": "camera",
                 "VAR": "deck_marker.right"
                }
               }
              }
             },
             "next": {
              "block": {
               "type": "forge_packet_field",
               "id": "L28",
               "fields": {
                "VAR": {
                 "id": "fv_marker_down"
                },
                "TYPE": "i16",
                "SCALE": 0.001,
                "OFFSET": 0,
                "UNIT": "m"
               },
               "inputs": {
                "VALUE": {
                 "block": {
                  "type": "forge_source",
                  "id": "L29",
                  "fields": {
                   "ACTOR": "camera",
                   "VAR": "deck_marker.down"
                  }
                 }
                }
               }
              }
             }
            }
           }
          }
         }
        }
       }
      }
     }
    },
    {
     "type": "forge_ground_link",
     "id": "link_ground",
     "x": 1500,
     "y": 420,
     "fields": {
      "ENDIAN": "LE"
     },
     "inputs": {
      "PACKETS": {
       "block": {
        "type": "forge_packet",
        "id": "L39",
        "fields": {
         "NAME": "truck",
         "DIR": "RX",
         "START": "AA 55",
         "ID": "21",
         "CHECKSUM": "CRC16",
         "PERIOD": 200,
         "STALE": 1500
        },
        "inputs": {
         "FIELDS": {
          "block": {
           "type": "forge_packet_field",
           "id": "L31",
           "fields": {
            "VAR": {
             "id": "fv_truck_lat"
            },
            "TYPE": "i32",
            "SCALE": 1e-07,
            "OFFSET": 0,
            "UNIT": "deg"
           },
           "inputs": {
            "VALUE": {
             "block": {
              "type": "forge_source",
              "id": "L32",
              "fields": {
               "ACTOR": "truck_gps",
               "VAR": "gps_lat"
              }
             }
            }
           },
           "next": {
            "block": {
             "type": "forge_packet_field",
             "id": "L33",
             "fields": {
              "VAR": {
               "id": "fv_truck_lon"
              },
              "TYPE": "i32",
              "SCALE": 1e-07,
              "OFFSET": 0,
              "UNIT": "deg"
             },
             "inputs": {
              "VALUE": {
               "block": {
                "type": "forge_source",
                "id": "L34",
                "fields": {
                 "ACTOR": "truck_gps",
                 "VAR": "gps_lon"
                }
               }
              }
             },
             "next": {
              "block": {
               "type": "forge_packet_field",
               "id": "L35",
               "fields": {
                "VAR": {
                 "id": "fv_truck_vel_n"
                },
                "TYPE": "i16",
                "SCALE": 0.01,
                "OFFSET": 0,
                "UNIT": "m/s"
               },
               "inputs": {
                "VALUE": {
                 "block": {
                  "type": "forge_source",
                  "id": "L36",
                  "fields": {
                   "ACTOR": "truck_gps",
                   "VAR": "gps_vel_n"
                  }
                 }
                }
               },
               "next": {
                "block": {
                 "type": "forge_packet_field",
                 "id": "L37",
                 "fields": {
                  "VAR": {
                   "id": "fv_truck_vel_e"
                  },
                  "TYPE": "i16",
                  "SCALE": 0.01,
                  "OFFSET": 0,
                  "UNIT": "m/s"
                 },
                 "inputs": {
                  "VALUE": {
                   "block": {
                    "type": "forge_source",
                    "id": "L38",
                    "fields": {
                     "ACTOR": "truck_gps",
                     "VAR": "gps_vel_e"
                    }
                   }
                  }
                 }
                }
               }
              }
             }
            }
           }
          }
         }
        }
       }
      }
     }
    }
   ]
  },
  "variables": [
   {
    "name": "pf_vn",
    "id": "var_pf_vn"
   },
   {
    "name": "pf_ve",
    "id": "var_pf_ve"
   },
   {
    "name": "yaw",
    "id": "var_yaw"
   },
   {
    "name": "deck_alt",
    "id": "var_deck_alt"
   },
   {
    "name": "h",
    "id": "var_h"
   },
   {
    "name": "marker",
    "id": "var_marker"
   },
   {
    "name": "rel_n",
    "id": "var_rel_n"
   },
   {
    "name": "rel_e",
    "id": "var_rel_e"
   },
   {
    "name": "have_rel",
    "id": "var_have_rel"
   },
   {
    "name": "rel",
    "id": "var_rel"
   },
   {
    "name": "far_n",
    "id": "var_far_n"
   },
   {
    "name": "far_e",
    "id": "var_far_e"
   },
   {
    "name": "scale",
    "id": "var_scale"
   },
   {
    "name": "near_n",
    "id": "var_near_n"
   },
   {
    "name": "near_e",
    "id": "var_near_e"
   },
   {
    "name": "hold_climb",
    "id": "var_hold_climb"
   },
   {
    "name": "aborts",
    "id": "var_aborts"
   },
   {
    "name": "centred_since",
    "id": "var_centred_since"
   },
   {
    "name": "climb",
    "id": "var_climb"
   },
   {
    "name": "limit",
    "id": "var_limit"
   },
   {
    "name": "marker_forward",
    "id": "fv_marker_forward"
   },
   {
    "name": "marker_right",
    "id": "fv_marker_right"
   },
   {
    "name": "marker_down",
    "id": "fv_marker_down"
   },
   {
    "name": "truck_lat",
    "id": "fv_truck_lat"
   },
   {
    "name": "truck_lon",
    "id": "fv_truck_lon"
   },
   {
    "name": "truck_vel_n",
    "id": "fv_truck_vel_n"
   },
   {
    "name": "truck_vel_e",
    "id": "fv_truck_vel_e"
   }
  ],
  "actors": [
   {
    "id": "deck_marker",
    "name": "Deck marker",
    "asset": "aruco_marker",
    "motion": "attached",
    "position": [
     0,
     0,
     0
    ],
    "rotationDeg": [
     0,
     0,
     0
    ],
    "waypoints": [
     [
      0,
      0,
      0
     ]
    ],
    "speedMps": 5,
    "loop": "back_and_forth",
    "attachTo": "truck",
    "offset": [
     0,
     0,
     0
    ],
    "markerFamily": "aruco_4x4_50",
    "markerId": 0,
    "markerSizeM": 1,
    "camera": null,
    "gimbal": null,
    "gps": null,
    "assetName": "ArUco marker"
   },
   {
    "id": "truck_gps",
    "name": "Truck GPS",
    "asset": "gps_receiver",
    "motion": "attached",
    "position": [
     0,
     0,
     0
    ],
    "rotationDeg": [
     0,
     0,
     0
    ],
    "waypoints": [
     [
      0,
      0,
      0
     ]
    ],
    "speedMps": 5,
    "loop": "back_and_forth",
    "attachTo": "truck",
    "offset": [
     1.5,
     0,
     0.1
    ],
    "markerFamily": "aruco_4x4_50",
    "markerId": 0,
    "markerSizeM": 1,
    "camera": null,
    "gimbal": null,
    "gps": {
     "preset": "typical",
     "lossFrac": 0.05,
     "outageEveryS": 600,
     "outageS": 3,
     "jumpEveryS": 180,
     "jumpM": 2.5,
     "jumpS": 4,
     "rateHz": 5,
     "hSigmaM": 0.8,
     "vSigmaM": 1.8,
     "velSigmaMps": 0.1,
     "biasM": 1.5,
     "biasTauS": 300,
     "latencyMs": 220,
     "sats": 14
    },
    "assetName": "GPS receiver"
   },
   {
    "id": "camera",
    "name": "Companion camera",
    "asset": "camera",
    "motion": "attached",
    "position": [
     0,
     0,
     0
    ],
    "rotationDeg": [
     0,
     -125,
     0
    ],
    "waypoints": [
     [
      0,
      0,
      0
     ]
    ],
    "speedMps": 5,
    "loop": "back_and_forth",
    "attachTo": "vehicle",
    "offset": [
     0.169,
     0,
     -0.003
    ],
    "markerFamily": "aruco_4x4_50",
    "markerId": 0,
    "markerSizeM": 1,
    "camera": {
     "widthPx": 960,
     "heightPx": 960,
     "hfovDeg": 80.2,
     "rateHz": 20,
     "latencyMs": 60,
     "maxRangeM": 30,
     "minBoxPx": 10
    },
    "gimbal": {
     "enabled": false,
     "roll": true,
     "pitch": true,
     "yawLock": false,
     "pitchDeg": -90,
     "yawDeg": 0,
     "rollDeg": 0,
     "maxRateDegS": 120,
     "rollLimitDeg": [
      -45,
      45
     ],
     "pitchLimitDeg": [
      -135,
      45
     ],
     "yawLimitDeg": [
      -180,
      180
     ],
     "vibrationDeg": 0.05
    },
    "gps": null,
    "assetName": "Camera"
   },
   {
    "id": "truck",
    "name": "Platform truck",
    "asset": "box_truck",
    "motion": "waypoints",
    "position": [
     40,
     20,
     0
    ],
    "rotationDeg": [
     0,
     0,
     0
    ],
    "waypoints": [
     [
      40,
      20,
      0
     ],
     [
      1240,
      20,
      0
     ]
    ],
    "speedMps": 5,
    "loop": "back_and_forth",
    "attachTo": "",
    "offset": [
     0,
     0,
     0
    ],
    "markerFamily": "aruco_4x4_50",
    "markerId": 0,
    "markerSizeM": 1,
    "camera": null,
    "gimbal": null,
    "gps": null,
    "assetName": "Box truck"
   }
  ]
 }
}
