upgrade + new structure