added more include guards