added "function" class, Boperator set correctly