close #22 changed define to def