avoiding global