unmerged with feature/custom_fields