x
const pluckDeep = key => obj => key.split('.').reduce((accum, key) => accum[key], obj)const compose = (fns) => res => fns.reduce((accum, next) => next(accum), res)const unfold = (f, seed) => { const go = (f, seed, acc) => { const res = f(seed) return res ? go(f, res[1], acc.concat([res[0]])) : acc } return go(f, seed, [])}