{"ast_node_type":"other","tokens":[{"end":38,"kind":"keyword","start":0,"text":"while"}]}
        while !curr_layer.is_empty() {
        let mut next_layer = vec![];
            curr_layer.drain(..).for_each(|(node, parent_idx)| {