Changes to interface and swap implemented in ArrayPath