settle on printing logic