adding input race ability and making hash dynamic