This could probably be cleaned up. But it's obvious what's happening.