updated with changes coming from the upstream repo