or this might not need to change, it's INTERNAL API?