refactor : customization