implemented PM kbt