/*
    This file is generated just to tell build scripts that JSNavigatorOnLine.h and
    JSNavigatorOnLine.cpp are created for NavigatorOnLine.idl, and thus
    prevent the build scripts from trying to generate JSNavigatorOnLine.h and
    JSNavigatorOnLine.cpp at every build. This file must not be tried to compile.
*/
