Refactor abstract form.