Add gen_range
Add an datatype arg to 'AssigningDecl'
Add gen_decl