added take all behavior
fiddly