rendered paste body[?1049h[?1h=[1;46r[?12;25h[?12l[?25h[27m[m[H[2J[?25l[46;1H"cargo_ldap.pl" 78L, 1307C[2;1H[1m[33muse strict[m;
[1m[33muse warnings[m;
[1m[33mmy[m [1m[36m$csv_file[m=[1m[35m"[m[1m[36m@ARGV[m[1m[35m"[m;
[1m[33mmy[m [1m[36m%struct_hash[m;
[1m[36m##### functions[m
[1m[33msub[m[1m[36m read_csv [m{[12;8H [1m[33mmy[m [1m[36m@csv[m;[13;8H [1m[33mopen[m [1m[33mmy[m [1m[36m$fh[m, [1m[35m"[m[1m[36m$csv_file[m[1m[35m"[m [1m[33mor[m [1m[33mdie[m [1m[35m"bad file: [m[1m[31m\"[m[1m[36m$csv_file[m[1m[31m\"[m[1m[35m - can't open[m[1m[31m\n[m[1m[35m"[m;[14;8H [1m[33mpush[m([1m[36m@csv[m, [1m[35m"[m[1m[36m$_[m[1m[35m"[m) [1m[33mwhile[m(<[1m[36m$fh[m>);[15;8H [1m[33mclose[m [1m[36m$fh[m;[16;8H [1m[33mreturn[m [1m[36m@csv[m;
};
[1m[33msub[m[1m[36m build_struct_hash [m{[20;8H [1m[33mmy[m [1m[36m%struct_hash[m;[21;8H [1m[33mforeach[m(read_csv()) {[22;16H [1m[33mmy[m([1m[36m$pos_xy[m, [1m[36m$pos_str[m) = [1m[33msplit[m([1m[33m/[m[1m[35m;[m[1m[33m/[m, [1m[35m"[m[1m[36m$_[m[1m[35m"[m);[23;16H [1m[36m$pos_xy[m =~ [1m[33ms/[m[1m[31m\D[m[1m[33m//g[m;[24;16H [1m[36m$pos_str[m =~ [1m[33ms/[m[1m[31m\r[m[1m[33m//g[m; [1m[33mchomp[m([1m[36m$pos_str[m);[25;16H [1m[36m$struct_hash[m{[1m[36m$pos_xy[m} = {};[26;16H [1m[36m$struct_hash[m{[1m[36m$pos_xy[m}->{[1m[35m'str'[m} = [1m[36m$pos_str[m;[27;8H };[28;8H [1m[33mreturn[m [1m[36m%struct_hash[m;
};
[1m[33msub[m[1m[36m get_parent_id [m{[32;8H [1m[33mmy[m [1m[36m$len_tmp[m = [1m[33mlength[m([1m[36m$_[m[[1m[35m0[m]);[33;8H [1m[33mmy[m [1m[36m$plen[m = [1m[35m2[m;[34;8H [1m[33mmy[m [1m[36m$incr[m = [1m[35m2[m;[35;8H [1m[33mmy[m [1m[36m$len[m;[36;8H [1m[36m$len[m = [1m[35m2[m [1m[33mif[m [1m[33mlength[m([1m[36m$_[m[[1m[35m0[m]) == [1m[35m2[m;[37;8H [1m[33mwhile[m([1m[36m$plen[m < [1m[36m$len_tmp[m) {[38;16H [1m[36m$len[m = [1m[36m$plen[m;[39;16H [1m[36m$plen[m = [1m[36m$plen[m + ([1m[35m2[m*[1m[36m$incr[m);[40;16H [1m[36m$incr[m++;[41;8H };[42;8H [1m[33mreturn[m [1m[33msubstr[m([1m[36m$_[m[[1m[35m0[m], [1m[35m0[m, [1m[36m$len[m);
};[46;158H46,0-1[9C3%[45;1H[?12l[?25h[?25l
Type :quit<Enter> to exit Vim[46;158H[K[46;158H46,0-1[9C3%[45;1H[?12l[?25h[?25l[46;158H[K[46;158H46,0-1[9C3%[45;1H[?12l[?25h[?25l[46;158H[K[46;158H46,0-1[9C3%[45;1H[?12l[?25h[?25l[46;158H[K[46;158H46,0-1[9C3%[45;1H[?12l[?25h[?25l[46;1H[K[46;1H:[?12l[?25h:[?25l[?12l[?25h:[?25l[?12l[?25h[1m[34m^Z[?25l[?12l[?25h^Z[?25l[?12l[?25h
[?25l[m[1m[37m[41mE492: Not an editor command: ::^Z^Z[m[122C46,0-1[9C3%[45;1H[?12l[?25h[?25l[1;45r[45;1H
[1;46r[45;1H[1m[36m########### main body:[m[46;1H[K[46;158H47,1[11C6%[45;1H[?12l[?25h[?25l[1;45r[45;1H
[1;46r[46;158H[K[46;158H48,0-1[9C9%[45;1H[?12l[?25h[?25l[1;45r[45;1H
[1;46r[45;1H[1m[36m%struct_hash[m = build_struct_hash();[46;158H[K[46;158H49,1[10C12%[45;1H[?12l[?25h[?25l[1;45r[45;1H
[1;46r[46;158H[K[46;158H50,0-1[8C15%[45;1H[?12l[?25h[?25l[1;45r[45;1H
[1;46r[45;1H[1m[36m########## user body:[m[46;158H[K[46;158H51,1[10C18%[45;1H[?12l[?25h[?25l[1;45r[45;1H
[1;46r[46;158H[K[46;158H52,0-1[8C21%[45;1H[?12l[?25h[?25l[46;158H[K[46;1H:[?12l[?25hq[?25l[?12l[?25h
[?25l[46;1H[K[46;1H[?1l>[?12l[?25h[?1049l