* return pointer instead
+ state.c