temp
using internal wrapper for prepare