add libraries and initial struct