vsprintf instead of sprintf