using kf struct throughout