add fields() function