don't expose internal types
add test for k=3