def judgement(options = {})
      # the divine judgement will come to thee, O Thou 
      # the doer of truth. return raw, untranslated to true/false.
      our_holy_judgement = nil

      # default of can? is false whenever RuleClass for that class is undefined
      # or RuleGroup for that subtarget is not defined
      if rule_group.nil?
        if other_rule_group.nil?
          # no more chance for checking
          our_holy_judgement = natural_value 
        end
      end

      if our_holy_judgement.nil? && need_to_check_for_intervention? 
        our_holy_judgement = check_intervention
      end

      if our_holy_judgement.nil? && 
          rule_group && rule_group.plant? &&
          rule.nil? && otherly_rule.nil?
        our_holy_judgement = natural_value
      end

      if our_holy_judgement.nil? && rule.nil?
        cross_check_value = nil
        # default if can? for undefined rule is false, after related clause
        # cannot be found in cannot?
        unless cross_checking
          reversed_self = self.clone reverse: true
          reversed_self.cross_checking = true
          cross_check_value = reversed_self.judgement holy: true
        end 

        # if cross check value nil, then the reverse rule is not defined,
        # let's determine whether he is zeus or plant
        if cross_check_value.nil?
          # rule_group can be nil for when user checking under undefined rule-group
          if rule_group
            if rule_group.plant?
              our_holy_judgement = plant_return_value
            end

            if rule_group.zeus?
              our_holy_judgement = zeus_return_value
            end 
          end # if rule_group exist
        else
          # process value from cross checking
          
          if can_use_otherly_rule?(cross_check_value, cross_checking)
            # give chance to check at others block
            self.rule = otherly_rule
          else
            our_holy_judgement = cross_check_reverse_value(cross_check_value)
          end
        end
      end # if our judgement nil and rule is nil

      # if our holy judgement is still nil, but rule is defined
      if our_holy_judgement.nil? && rule
        if rule.has_decider?
          our_holy_judgement = get_decider_result(rule, original_subtarget, record)
        else
          our_holy_judgement = default_positive_return_value
        end
      end

      # return fuzy if otherly rule defines contrary to this auth_level
      if our_holy_judgement.nil? && rule.nil? && (other_rule_group && other_rule_group.get_rule(reverse_auth_level, operation))
        if rule_group && (rule_group.zeus? || rule_group.plant?)
          # don't overwrite our holy judgement with fuzy value if rule group
          # zeus/plant, because zeus/plant is more definite than any fuzy values
          # eventhough the rule is abstractly defined
        else
          our_holy_judgement = default_negative_fuzy_return_value
        end
      end

      # if at this point still nil, well, 
      # return the natural value for this judge
      if our_holy_judgement.nil?
        if otherly_rule
          our_holy_judgement = BALI_FUZY_TRUE
        else
          our_holy_judgement = natural_value
        end
      end

      holy = !!options[:holy]
      return holy ? our_holy_judgement : translate_holy_judgement(our_holy_judgement)
    end
def judgement(options = {})
      # the divine judgement will come to thee, O Thou 
      # the doer of truth. return raw, untranslated to true/false.
      our_holy_judgement = nil

      # default of can? is false whenever RuleClass for that class is undefined
      # or RuleGroup for that subtarget is not defined
      if rule_group.nil?
        if other_rule_group.nil?
          # no more chance for checking
          our_holy_judgement = natural_value 
        end
      end

      if our_holy_judgement.nil? && need_to_check_for_intervention? 
        our_holy_judgement = check_intervention
      end

      if our_holy_judgement.nil? && 
          rule_group && rule_group.plant? &&
          rule.nil? && otherly_rule.nil?
        our_holy_judgement = natural_value
      end

      if our_holy_judgement.nil? && rule.nil?
        cross_check_value = nil
        # default if can? for undefined rule is false, after related clause
        # cannot be found in cannot?
        unless cross_checking
          reversed_self = self.clone reverse: true
          reversed_self.cross_checking = true
          cross_check_value = reversed_self.judgement holy: true
        end 

        # if cross check value nil, then the reverse rule is not defined,
        # let's determine whether he is zeus or plant
        if cross_check_value.nil?
          # rule_group can be nil for when user checking under undefined rule-group
          if rule_group
            if rule_group.plant?
              our_holy_judgement = plant_return_value
            end

            if rule_group.zeus?
              our_holy_judgement = zeus_return_value
            end 
          end # if rule_group exist
        else
          # process value from cross checking
          
          if can_use_otherly_rule?(cross_check_value, cross_checking)
            # give chance to check at others block
            self.rule = otherly_rule
          else
            our_holy_judgement = cross_check_reverse_value(cross_check_value)
          end
        end
      end # if our judgement nil and rule is nil

      # if our holy judgement is still nil, but rule is defined
      if our_holy_judgement.nil? && rule
        if rule.has_decider?
          our_holy_judgement = get_decider_result(rule, original_subtarget, record)
        else
          our_holy_judgement = default_positive_return_value
        end
      end

      # return fuzy if otherly rule defines contrary to this auth_level
      if our_holy_judgement.nil? && rule.nil? && (other_rule_group && other_rule_group.get_rule(reverse_auth_level, operation))
        if rule_group && (rule_group.zeus? || rule_group.plant?)
          # don't overwrite our holy judgement with fuzy value if rule group
          # zeus/plant, because zeus/plant is more definite than any fuzy values
          # eventhough the rule is abstractly defined
        else
          our_holy_judgement = default_negative_fuzy_return_value
        end
      end

      # if at this point still nil, well, 
      # return the natural value for this judge
      if our_holy_judgement.nil?
        if otherly_rule
          our_holy_judgement = BALI_FUZY_TRUE
        else
          our_holy_judgement = natural_value
        end
      end

      holy = !!options[:holy]
      return holy ? our_holy_judgement : translate_holy_judgement(our_holy_judgement)
    end
return either true or false
 options can specify if returning raw, by specifying holy: true