! adding support for dynamicFields
! impl. isBilled()
! refactored