If you want to understand what I am doing here first read MoseCoreDump then OneOfManyAPIWhy.