updated avl.erl