basic vars and routine