Does anyone know precisely which elements of WeBWorK authoring won't translate to Gateway?

I ask because I did a massive rewrite, getting rid of ans_array_extension (and learning about MathObjects in the process). However, I'm at the point where the problem works correctly when I try it out in the editor, but I get a weird error message when trying to take it as a GatewayQuiz:

`Can't call method "data" on an undefined value at [PG]/lib/Value.pm line 698`

Line 698 doesn't contain any executable code, though. WeBWorK is dying inside this code for some reason:

`sub good_cs { # good_cs (A, R, r) # basis for column space`

my ($A, $R, $r) = @_;

my ($m, $n) = $A->dimensions;

my @a; my $i = 1;

for (my $j = 1; $j <= $n; $j++) {

if ($R -> element ($i, $j) > 0.5) {

for (my $k = 1; $k <= $m; $k++) { $a[$k-1][$i-1] = $A -> element($k, $j); }

$i ++;

}

}

Matrix (@a);

}

my ($A, $R, $r) = @_;

my ($m, $n) = $A->dimensions;

my @a; my $i = 1;

for (my $j = 1; $j <= $n; $j++) {

if ($R -> element ($i, $j) > 0.5) {

for (my $k = 1; $k <= $m; $k++) { $a[$k-1][$i-1] = $A -> element($k, $j); }

$i ++;

}

}

Matrix (@a);

}

Once again, it's only dying when actually taking a quiz.