trans : modify to variable arguments