rewriting kuros for c++03