add missing cat function