add Sourcebox struct