graph TD subgraph Normal["Normal Merge โ "] L1["Left (delay=1)"] --- P1["Parent at midpoint"] --- R1["Right (delay=1)"] end subgraph Elongation["Elongation Needed โ ๏ธ"] L2["Left (delay=10)\n๐ฅ Slower"] --- P2["Parent at Left\n(extend=0)"] -.-> R2["Right (delay=1)\n๐ข Faster"] R2 -.->|"elongated\nwire=14 (> 10)"| P2 end
graph LR subgraph cpp["physdes-cpp (C++20)"] CPP_TN["TreeNode\nleft/right: size_t"] CPP_T["Tree\nVec<TreeNode>"] CPP_TR["TappingResult"] CPP_EL["elongation: _compute_merging_segment"] end subgraph rs["physdes-rs (Rust)"] RS_TN["TreeNode\nleft/right: Option<usize>"] RS_T["Tree\nVec<TreeNode>"] RS_TR["TappingResult"] RS_EL["elongation: compute_merging_segment"] end cpp -.->|"same design"| rs