detailed explain