+ map { $form->{$_} = $new_form->{$_} if (!$keep_vars_map{$_}) } keys %{ $new_form };
+
+ $main::lxdebug->leave_sub();
+}
+
+sub compare_numbers {
+ $main::lxdebug->enter_sub();
+
+ my $a = shift;
+ my $a_unit = shift;
+ my $b = shift;
+ my $b_unit = shift;
+
+ $main::all_units ||= AM->retrieve_units(\%main::myconfig, $main::form);
+ my $units = $main::all_units;
+
+ if (!$units->{$a_unit} || !$units->{$b_unit} || ($units->{$a_unit}->{base_unit} ne $units->{$b_unit}->{base_unit})) {
+ $main::lxdebug->leave_sub();
+ return undef;
+ }
+
+ $a *= $units->{$a_unit}->{factor};
+ $b *= $units->{$b_unit}->{factor};