documented can/list/promise