supporting pretty format