/*--------------------------------------------------------------*/
/* ACM ICPC 2009-2010, NEERC                                    */
/* Northern Subregional Contest                                 */
/* St Petersburg, October 17, 2009                              */
/*--------------------------------------------------------------*/
/* Problem D. Dragon's Question                                 */
/*                                                              */
/* Original idea         Georgiy Korneev                        */
/* Problem statement     Dmitry Shtukenberg                     */
/* Testset               Georgiy Korneev                        */
/*--------------------------------------------------------------*/
/* Solution                                                     */
/*                                                              */
/* Author                Georgiy Korneev                        */
/*--------------------------------------------------------------*/
 
import java.util.*;
import java.io.*;

public class dragon_gk_check implements Runnable {
    static final int MAX_N = 1000;
    static final int MAX_D = 1000000;
    static Scanner in;
    static PrintWriter out;

    public void run() {
        int n = in.nextInt();
        int d = in.nextInt();
        assert (1 <= n && n <= MAX_N);
        assert (1 <= d && n <= MAX_D);

        String ds = Integer.toString(d);
        if (ds.length() > n) {
            out.println("No solution");
        } else {
            out.print(ds);
            for (int i = 0; i < n - ds.length(); i++) {
                out.print("0");
            }
            out.println();
        }
    }

    public static void main(String[] args) throws Exception {        
        in = new Scanner(new File("dragon.in"));
        out = new PrintWriter("dragon.out");

        new dragon_gk_check().run();

        in.close();
        out.close();
    }
}
