import java.util.Scanner; public class EX5_31 { public static void main(String[] args) { Scanner s = new Scanner(System.in); long num = s.nextLong(); int sum = 0; boolean odd = true; if(!hasValidStart(num)) System.out.println(num + " is invalid"); else if(isValid(num))System.out.println(num + " is valid"); else System.out.println(num + " is invalid"); } public static boolean isValid(long number) { int sum = 0; sum+=sumOfOddPlaces(number); sum+=sumOfEvenPlaces(number); return sum%10==0; } public static int sumOfOddPlaces(long n) { int sum =0; while(n!=0) { sum+=(n%10); n/=100; } //System.out.println(sum); return sum; } public static int sumOfEvenPlaces(long n) { int sum =0; n/=10; while(n!=0) { long digit = (n % 10)*2; if(digit > 9) { long d2 = digit%10 + (digit/10%10); sum+= d2; } else { sum+=digit; } n/=100; } //System.out.println(sum); return sum; } public static boolean hasValidStart(long number) { if((int)(number/Math.pow(10, getSize(number)-1))==4 || (int)(number/Math.pow(10, getSize(number)-1))==5 || (int)(number/Math.pow(10, getSize(number)-1))==6 || (int)(number/Math.pow(10, getSize(number)- 2))==37 ) return true; return false; } public static int getSize(long d) { int c = 0; while(d!=0) { c++; d/=10; } return c; } }