moveresult type and destructing tuple in let