most KF generating functions done