reduce exception checking overhead