ó 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}xo|jƒD]a\}}|jdƒs=|jdƒrUt|tƒstt‚qt|tƒr|j|ƒqqWx`|D]X}|jd|ƒ}|jd|ƒ}|s·|r|j||||ƒ||s  4