extract Util module
add flock