Adding functional data structures