implement arrow feature