updated to include KM stuff