Extracted the compatibility
Fixed conflicts
Added support set class