shouldn't we whitelist the type we can have ?