remaining files
updated thread safe