improved getitems