Hi there,

I usually feel really bad posting a whole bunch of code, but might any of you have an idea of why I'm getting an output of 105553 for 55555*66666? I'm supposed to use the A La Russe algorithm for multiplication:

n*m m if n = 1

(n/2)*2m if n is even

(n/2)*2m+m if n is odd

Thanks so much!

```
public ArrayList<Integer> multiply(ArrayList<Integer> n, ArrayList<Integer> m)
{
ArrayList<Integer> temp = new ArrayList();
m = removeZeroes(m);
n = removeZeroes(n);
if(m.get(m.size()-1) == 1) //If it's one
{
temp = new ArrayList<Integer>(n);
return temp;
}
else if(n.get(n.size()-1) == 1)
{
temp = new ArrayList<Integer>(m);
return temp;
}
else if(n.get(n.size()-1) % 2 == 0) //If it's an even number
{
return (multiply((divide(n)), multiplyByInt(m, 2)));
}
else //If it's an odd number
{
return add(multiply(divide(n), multiplyByInt(m, 2)), m);
}
}
```

Let me know if you need more code -- the divide, add, and multiplyByInt methods seem to be working correctly.