only use variables where necessary