extract sword actions; re-design and fix it;