// Path: src/main/java/com/romraider/util/JEPUtil.java
// public static synchronized double evaluate(String expression, double value) {
//     JEP parser = parserCache.get(expression);
//     if (parser == null) {
//         parser = new JEP();
//         parser.addStandardFunctions();
//         parser.addFunction("BitWise", new BitWise());
//         parser.initSymTab(); // clear the contents of the symbol table
//         parser.addVariable("x", value);
//         parser.parseExpression(expression);
//         parserCache.put(expression, parser);
//     } else {
//         parser.setVarValue("x", value);
//     }
//     return parser.getValue();
// }


import com.romraider.Settings;
import com.romraider.logger.ecu.ui.handler.dash.GaugeMinMax;
import static com.romraider.logger.ecu.definition.xml.ConverterMaxMinDefaults.getDefault;
import static com.romraider.util.ByteUtil.asUnsignedInt;
import static com.romraider.util.JEPUtil.evaluate;
import static com.romraider.util.ParamChecker.checkNotNull;
import static com.romraider.util.ParamChecker.checkNotNullOrEmpty;
import java.nio.ByteBuffer;
import java.nio.ByteOrder;
import java.text.DecimalFormat;
import java.util.HashMap;
import java.util.Map;
        }
        else if (dataType.equalsIgnoreCase(FLOAT)) {
            result = evaluate(expression, bb.getFloat());
        }
        else {
            long value = 0;
            switch (bb.capacity()) {
                case 1:
                    value = bb.get();
                    break;
                case 2:
                    value = bb.getShort();
                    break;
                case 4:
                    value = bb.getInt();
                    break;
            }
            if (dataType.toLowerCase().startsWith(UINT)) {
                switch (bb.capacity()) {
                    case 1:
                        value = value & 0xff;
                        break;
                    case 2:
                        value = value & 0xffff;
                        break;
                    case 4:
                        value = value & 0xffffffffL;
                        break;
                }
            }
// Path: src/main/java/com/romraider/util/JEPUtil.java
// public static synchronized double evaluate(String expression, double value) {
//     JEP parser = parserCache.get(expression);
//     if (parser == null) {
//         parser = new JEP();
//         parser.addStandardFunctions();
//         parser.addFunction("BitWise", new BitWise());
//         parser.initSymTab(); // clear the contents of the symbol table
//         parser.addVariable("x", value);
//         parser.parseExpression(expression);
//         parserCache.put(expression, parser);
//     } else {
//         parser.setVarValue("x", value);
//     }
//     return parser.getValue();
// }


// Path: src/main/java/com/romraider/logger/ecu/definition/EcuParameterConvertorImpl.java
import com.romraider.Settings;
import com.romraider.logger.ecu.ui.handler.dash.GaugeMinMax;
import static com.romraider.logger.ecu.definition.xml.ConverterMaxMinDefaults.getDefault;
import static com.romraider.util.ByteUtil.asUnsignedInt;
import static com.romraider.util.JEPUtil.evaluate;
import static com.romraider.util.ParamChecker.checkNotNull;
import static com.romraider.util.ParamChecker.checkNotNullOrEmpty;
import java.nio.ByteBuffer;
import java.nio.ByteOrder;
import java.text.DecimalFormat;
import java.util.HashMap;
import java.util.Map;

        }
        else if (dataType.equalsIgnoreCase(FLOAT)) {
            result = evaluate(expression, bb.getFloat());
        }
        else {
            long value = 0;
            switch (bb.capacity()) {
                case 1:
                    value = bb.get();
                    break;
                case 2:
                    value = bb.getShort();
                    break;
                case 4:
                    value = bb.getInt();
                    break;
            }
            if (dataType.toLowerCase().startsWith(UINT)) {
                switch (bb.capacity()) {
                    case 1:
                        value = value & 0xff;
                        break;
                    case 2:
                        value = value & 0xffff;
                        break;
                    case 4:
                        value = value & 0xffffffffL;
                        break;
                }
            }
            result = evaluate(expression, value);