write new sgsl parser