renamed according to paper
renamed and added simple versions
reorganized dependencies
minor change