I am not particularly a fan of using SWIG for this use case