@JBlake this seems clunky