A lot of work to get base items in