Big update with records parameterized by functors and record application