2014-08-21 refactoring program