Why casting to KList?  I have a bad feeling this might break some implicit assumptions, especially in the Java rewrite engine.