update half of the changes
complete the changes, rework factories for uids to be sequential