first checkpoint. rethinking data structures...