printf implementation done