IF_FILES := [
"gap/data.g",

"gap/interfaces.g",

"gap/parsedata.g",

"gap/openmath.g",

"cases/aribas.g",
"cases/asir.g",
"cases/cocoa.g",
"cases/gap.g",
"cases/ghci.g",
"cases/kash.g",
"cases/macaulay.g",
"cases/maple.g",
"cases/mathematica.g",
"cases/mupad.g",
"cases/pari_gp.g",
"cases/singular.g",
"cases/yacas.g",

];


if not IsBound( OMPut )  then
    OMPut := "2b defined";
    OMPutObject := "2b defined";
    OMGetObject := "2b defined";
fi;


 List( IF_FILES, x -> ReadPackage( "if", x ) );
# for i in IF_FILES do Read( i ); od;


if OMPut = "2b defined"  then
    Unbind( OMPut );
    Unbind( OMPutObject );
    Unbind( OMGetObject );
fi;



IF_RELOAD_FILES := function (  )
    local  res, i;
    res := true;
    for i  in IF_FILES  do
        res := res and RereadPackage( "if", i );
#        Read( i );
    od;
    return res;
end;
