ó V Qc@s±dZddlmZdefd„ƒYZdefd„ƒYZddd„ƒYZd efd „ƒYZ d efd „ƒYZ d „Z e dkr­e eƒe e ƒndS(s6Support Eiffel-style preconditions and postconditions.iÿÿÿÿ(t FunctionTypetEiffelBaseMetaClasscBs eZd„Zed„ƒZRS(cCs,|j|ƒtt|ƒj||||ƒS(N(tconvert_methodstsuperRt__new__(tmetatnametbasestdict((s2/usr/lib64/python2.7/Demo/newmetaclasses/Eiffel.pyRs cCsÊg}xZ|jƒD]L\}}|jdƒs_|jdƒr@qt|tƒr|j|ƒqqWx`|D]X}|jd|ƒ}|jd|ƒ}|s¢|rj|j||||ƒ||s  4