what is fault what is different type of fault