smallwood algo