finish sms$reduce
update TODO