syntax refactor