refactor Capital Constructor