Tree LSTM nodes mailbox

I was going through the code for Tree-LSTM in the dgl site,I was not able to understand the 2 lines of code mentioned below and why the use of ‘view’ and *, and what is the purpose of structuring nodes.mailbox in this particular way

concatenate h_jl for equation (1), (2), (3), (4)

h_cat = nodes.mailbox[‘h’].view(nodes.mailbox[‘h’].size(0), -1)
f = th.sigmoid(self.U_f(h_cat)).view(*nodes.mailbox[‘h’].size())

The nodes.mailbox['h'] is of shape (n_nodes, 2, d) where 2 refers to the number of incoming nodes (always 2 for constituency parsing tree).
h_cat reshapes the tensor to (n_nodes, 2*d), which correspond to the concatenation of h_{jl} over l. and self.U_f(h_cat) is equivlent to \sum_{l=1}^{N} U_l^{(f)}h_{jl}.

Thanks for the clarification