protected open fun <T : Any!> getFieldValue(fieldName: String!): T
open static fun <T : Any!> getFieldValue(obj: Any!, fieldName: String!): T
open static fun <T : Any!> getFieldValue(obj: Any!, clz: Class<Any!>!, fieldName: String!, crashIfNotFound: Boolean): T