refactor fields