add CompatibilityUtil class