refactor company class