initial class and structure