Better names for this are welcome.