Is this overriding the interface method? If not, that should probably be overridden. Can we check for completion by comparing the userMap and the charMap?