made path os generic