public void move()
    {
        if (path.size()<=1)
            path=getLongestPath(getPos());
        else
            for (int n=path.size()-2;n>=0 && n>path.size()-10 ;n--)
            {// path.size()-1 is always taken: the bike is there
                if (path.get(n).notFree())
                {
                    path=getLongestPath(getPos());
                    break;
                }
            }
        path.remove(path.size()-1);
        for (int n=1;n<path.size();n++)
        {
            Draw.draw(new Draw(Draw.Type.Line,
                    path.get(n).px()+10,path.get(n).py()+10,
                    path.get(n-1).px()+10,path.get(n-1).py()+10, Color.YELLOW));
        }
        if (path.size()>0)
        {
            move((path.get(path.size()-1)));
        }
        else
        {
            Draw.draw(new Draw("Shit.",getPos().px()-15,getPos().py()-5, 10, Color.BLACK, 1));
        }
    }