#!ruby -p sub("?"){(0..9).find{|$u|u,_=?u,22 scan(/./){_+=$&.tr("?X","#$u$")[0]*u-=u%5*22-56} _%(u%7+6)<1}}