code: def WrapImmutable(cls, pyobj, what):
          '''return a wrapper for pyobj, with typecode attribute set.
          Parameters:
              pyobj -- instance of builtin type (immutable)
              what -- typecode describing the data
          '''
          d = cls.types_dict
          if type(pyobj) is bool:  
              pyclass = d[int]
          elif d.has_key(type(pyobj)) is True:
              pyclass = d[type(pyobj)]
          else:
              raise TypeError,\
                 'Expecting a built-in type in %s (got %s).' %(
                  d.keys(),type(pyobj))
  
          newobj = pyclass(pyobj)
          newobj.typecode = what
          return newobf WrapImmutable(cls, pyobj, what):
          '''return a wrapper for pyobj, with typecode attribute set.
          Parameters:
              pyobj -- instance of builtin type (immutable)
              what -- typecode describing the data
          '''
          d = cls.types_dict
          if type(pyobj) is bool:  
              pyclass = d[int]
          elif d.has_key(type(pyobj)) is True:
              pyclass = d[type(pyobj)]
          else:
              raise TypeError,\
                 'Expecting a built-in type in %s (got %s).' %(
                  d.keys(),type(pyobj))
  
          newobj = pyclass(pyobj)
          newobj.typecode = what
          return newobj
docs: return a wrapper for pyobj, with typecode attribute set.
          Parameters:
              pyobj -- instance of builtin type (immutable)
              what -- typecode describing the data