refactoring for tiger level