move types
introduce Skip with naive impl.
fix algo
reverse queue