moved to swig templating