add file
add proper exit
add pile