reorg, add error codes