refactored some
stash is now a construction