better drawing methods