pass test : process items without split
add test : process promoting items
pass test : process promoting items
add test : process complicated inputs