adjusted how fields are handled, more logical now