Accepts: float, int, long, str, unicode
        Returns: float

def validate(self, value):
        """
        Accepts: float, int, long, str, unicode
        Returns: float
        """
        if isinstance(value, (str, unicode, int, long)):
            value = float(value)
        value = super(Float, self).validate(value)
        if not isinstance(value, (float)):
            raise ValueError("Not an float: %r" % (value, ))
        return value