version with finale variables and no exeptions