static v8::Handle<v8::Value> startCallback(const v8::Arguments& args)
{
    INC_STATS("DOM.HTMLMarqueeElement.start");
    HTMLMarqueeElement* imp = V8HTMLMarqueeElement::toNative(args.Holder());
    imp->start();
    return v8::Handle<v8::Value>();
}
JSValue* jsHTMLMarqueeElementPrototypeFunctionStart(ExecState* exec, JSObject*, JSValue* thisValue, const ArgList& args)
{
    if (!thisValue->isObject(&JSHTMLMarqueeElement::s_info))
        return throwError(exec, TypeError);
    JSHTMLMarqueeElement* castedThisObj = static_cast<JSHTMLMarqueeElement*>(thisValue);
    HTMLMarqueeElement* imp = static_cast<HTMLMarqueeElement*>(castedThisObj->impl());

    imp->start();
    return jsUndefined();
}
EncodedJSValue JSC_HOST_CALL jsHTMLMarqueeElementPrototypeFunctionStart(ExecState* exec)
{
    JSValue thisValue = exec->hostThisValue();
    if (!thisValue.inherits(&JSHTMLMarqueeElement::s_info))
        return throwVMTypeError(exec);
    JSHTMLMarqueeElement* castedThis = static_cast<JSHTMLMarqueeElement*>(asObject(thisValue));
    ASSERT_GC_OBJECT_INHERITS(castedThis, &JSHTMLMarqueeElement::s_info);
    HTMLMarqueeElement* imp = static_cast<HTMLMarqueeElement*>(castedThis->impl());

    imp->start();
    return JSValue::encode(jsUndefined());
}