__all__=['BaseLoader','FullLoader','SafeLoader','Loader','UnsafeLoader']from.readerimport*from.scannerimport*from.parserimport*from.composerimport*from.constructorimport*from.resolverimport*classBaseLoader(Reader,Scanner,Parser,Composer,BaseConstructor,BaseResolver):def__init__(self,stream):Reader.__init__(self,stream)Scanner.__init__(self)Parser.__init__(self)Composer.__init__(self)BaseConstructor.__init__(self)BaseResolver.__init__(self)classFullLoader(Reader,Scanner,Parser,Composer,FullConstructor,Resolver):def__init__(self,stream):Reader.__init__(self,stream)Scanner.__init__(self)Parser.__init__(self)Composer.__init__(self)FullConstructor.__init__(self)Resolver.__init__(self)classSafeLoader(Reader,Scanner,Parser,Composer,SafeConstructor,Resolver):def__init__(self,stream):Reader.__init__(self,stream)Scanner.__init__(self)Parser.__init__(self)Composer.__init__(self)SafeConstructor.__init__(self)Resolver.__init__(self)classLoader(Reader,Scanner,Parser,Composer,Constructor,Resolver):def__init__(self,stream):Reader.__init__(self,stream)Scanner.__init__(self)Parser.__init__(self)Composer.__init__(self)Constructor.__init__(self)Resolver.__init__(self)# UnsafeLoader is the same as Loader (which is and was always unsafe on# untrusted input). Use of either Loader or UnsafeLoader should be rare, since# FullLoad should be able to load almost all YAML safely. Loader is left intact# to ensure backwards compatibility.classUnsafeLoader(Reader,Scanner,Parser,Composer,Constructor,Resolver):def__init__(self,stream):Reader.__init__(self,stream)Scanner.__init__(self)Parser.__init__(self)Composer.__init__(self)Constructor.__init__(self)Resolver.__init__(self)