complete version change, new structure