change template engine to swig