added array reference swap mutation