arrow handling work in progress