added by reference compiler throws warnings