This makes me sad, there should be an API for this, rather than just asking uses to assign random attributes.