versatile print methods