converted get_fields return type to be a list
moved get_fields return type from a tuple to a list
chaining lists instead of allocating new lists