I've run into the following behavior with qpy: >>> h8("%s") % h8("") u' ' >>> h8("%s") % h8.quote(" ") u'<hello>' >>> h8("%s") % h8.quote(" ").replace("h", "a") u'<aello>' >>> h8("%s") % h8(h8.quote(" ").replace(h8("h"), h8("a"))) u'<aello>' >>> What I'm running into appears to be that h8.replace returns a unicode instance instead of an h8 instance. Would it be more appropriate if all of the h8 inherited methods returned h8 instances instead? Or am I missing something.... Dave