avoid naming conflict