add insert/delete methods
add visit-file