a lot more consistency checking, but bug is in upstream