comment functionality complete