reafactoring: multiple usage