initial coding and structure