s = gets.strip.chars.map &:to_i ng = false cin = 0 one = false s.reverse.each.with_index do |c, i| if one ng = true if c != 6 && c != 7 else case c when 1 if cin == 1 && i + 1 == s.size cin = 0 else ng = true end when 2 if cin == 0 cin = 1 else ng = true end when 3..4 cin = 1 when 5 if cin == 1 cin = 1 else ng = true end when 6 if cin == 0 cin = 0 one = true else ng = true end when 7 cin = 0 one = true when 8 if cin == 1 cin = 0 one = true else ng = true end else ng = true end end end ng ||= cin > 0 puts [:Yes, :No][ng ? 1 : 0]