reform project struct