def cross_check_reverse_value(cross_check_value)
        # either the return is not fuzy, or otherly rule is undefined
        if cross_check_value == BALI_TRUE
          return BALI_FALSE
        elsif cross_check_value == BALI_FALSE
          return BALI_TRUE
        elsif cross_check_value == BALI_FUZY_FALSE 
          return BALI_FUZY_TRUE
        elsif cross_check_value == BALI_FUZY_TRUE
          return BALI_FUZY_FALSE
        else
          raise Bali::Error, "Unknown how to process cross check value: `#{cross_check_value}`"
        end
      end
def cross_check_reverse_value(cross_check_value)
        # either the return is not fuzy, or otherly rule is undefined
        if cross_check_value == BALI_TRUE
          return BALI_FALSE
        elsif cross_check_value == BALI_FALSE
          return BALI_TRUE
        elsif cross_check_value == BALI_FUZY_FALSE 
          return BALI_FUZY_TRUE
        elsif cross_check_value == BALI_FUZY_TRUE
          return BALI_FUZY_FALSE
        else
          raise Bali::Error, "Unknown how to process cross check value: `#{cross_check_value}`"
        end
      end
if after cross check (checking for cannot) the return is false,
 meaning for us, (checking for can), the return have to be true