#10 Added overloaded method. Some code refactoring.