more work on byte swap