This needs to make a defensive copy