Made some change to structer to prepare for dynamic changes