Давайте определимся, с тем, чего мы будем добиваться на этом этапе и критерях его окончания.
Тот факт, что редактор не показывает нам ошибки нетипизированного доступа вовсе не означает, что в коде их нет.
Неявный нетипизированный доступ - это применение наборов переменных представляющих одну сущность вместо применения объекта такого типа, который отражает сущность.
К примеру, точку на плоскости в координатах x=10, y=15 можно представить разными способами:

Код AS3:
var point1:Point = new Point(10, 15);
var point2:Array = new Array(10, 15);
var point3:Object = {x:10, y:15};
Но только первый способ применяет объект такого типа, который отражает сущность точки. В остальных случаях можно говорить о скрытом нетипизированном доступе.
Пройдемся по классам и отметим для себя такие случаи:
Класс SVGDisplayInFlash
метод getShapes:
- массивы хранят данные, а не объекты, представляющие сущности.
Класс Math2
метод getQuadBez_RP:
- в аргументах передаются точки вместо кривой Безье 3го порядка;
- внутри метода имеются обращения к массивам данных вместо обращений к сущностям.
метод intersect2Lines:
- в аргументах передаются точки вместо отрезков;
метод midpoint:
- в аргументах передаются координаты вместо отрезка;
метод bezierSplit:
- в аргументах передаются координаты вместо кривой Безье 3го порядка;
- возвращаемое значение содержит массивы данных вместо кривых Безье 3го порядка.
Класс PathToArray
метод makeDrawCmds:
- в аргументах и в теле метода широко используются массивы данных вместо классов, представляющих сущности.
Класс String2
случаев скрытого нетипизированного доступа нет.
Итак, наша задача на следующем шаге - избавиться от случаев скрытого нетипизированного доступа.