finished iterative shelling, but there's a runtime bug :(