Before revision:  Our main result is a linear-time algorithm for deciding whether a polygonal curve is threadable, and if so, finding a sequence of rigid motions to thread it through a hole.
After revision:  Our main result is a linear-time algorithm for deciding whether a polygonal curve is threadable---O(n) for a curve of n vertices---and if threadable, finding a sequence of rigid motions to thread it through a hole.