add activesupport and stringx for normalizing text