keep structure consistent