add function sprintf