comment recursive parser