# Stack Two Lists of Depth=2 [duplicate]

My question is to combine a matrix of values with a matrix of 2D coordinates:

Coor = {{{a, b}, {c, d}}, {{u, v}, {s, t}}};
Value = {{1, 2}, {3, 4}};


I want to get

Combined = {{{a, b,1}, {c, d,2}}, {{u, v,3}, {s, t,4}}};


so I can use ListPlot3D

This is similar to another question here. I attempt to use this solution by doing this

MapThread[List, {matrix1, matrix}, 2]


But this gives me {{{{a, b},1}, {{c, d},2}}...}; which has an extra bracket inside that I couldn't figure out how to remove...

How can I get the desired "Combined" list? Thanks!

Coor = {{{a, b}, {c, d}}, {{u, v}, {s, t}}};
Val = {{1, 2}, {3, 4}};



{{{a, b, 1}, {c, d, 2}}, {{u, v, 3}, {s, t, 4}}}

Also

Join[Coor, Map[List, Val, {-1}] , 3]


{{{a, b, 1}, {c, d, 2}}, {{u, v, 3}, {s, t, 4}}}

coor = {{{a, b}, {c, d}}, {{u, v}, {s, t}}};
val = {{1, 2}, {3, 4}};

Join[coor, Transpose[{val}, {3, 1, 2}], 3]
(* {{{a, b, 1}, {c, d, 2}}, {{u, v, 3}, {s, t, 4}}} *)


Or alternatively:

Flatten[{Transpose[coor, {2, 3, 1}], {val}}, {{3}, {4}, {1, 2}}]