expand
another wrong expand
correct expand algo?