refactor geometry node