base re-structure