explained the whole thing in Readme