more work, more finicky about kinds