write a go solution for Description: You are given a positive integer n. Since n may be very large, you are given its binary representation. You should compute the number of triples (a,b,c) with 0<=a,b,c<=n such that aoplusb, boplusc, and aoplusc are the sides of a non-degenerate triangle. Here, oplus denotes the bitwise XOR operation. You should output the answer modulo 998,244,353. Three positive values x, y, and z are the sides of a non-degenerate triangle if and only if x+y>z, x+z>y, and y+z>x. Input Format: The first and only line contains the binary representation of an integer n (0<n<2^200,000) without leading zeros. For example, the string 10 is the binary representation of the number 2, while the string 1010 represents the number 10. Output Format: Print one integer — the number of triples (a,b,c) satisfying the conditions described in the statement modulo 998,244,353. Note: In the first test case, 101_2=5. - The triple (a,b,c)=(0,3,5) is valid because (aoplusb,boplusc,coplusa)=(3,6,5) are the sides of a non-degenerate triangle. - The triple (a,b,c)=(1,2,4) is valid because (aoplusb,boplusc,coplusa)=(3,6,5) are the sides of a non-degenerate triangle. The 6 permutations of each of these two triples are all the valid triples, thus the answer is 12. In the third test case, 11,011,111,101,010,010_2=114,514. The full answer (before taking the modulo) is 1,466,408,118,808,164.. Output only the code with no comments, explanation, or additional text.