refectoring data/function (last)