this is why constant API changes are bad