import java.io.*;
import java.util.*;

public class next_rs implements Runnable {
    private BufferedReader in;
    private PrintWriter out;
    
    private void check(boolean expr, String msg) {
        if (!expr) {
            throw new Error(msg);
        }
    }
    
    private void checkBounds(int n, int low, int hi, String nStr) {
        check((low <= n) && (n <= hi), nStr + " is not in [" + low + ", " + hi + "]");
    }
    
    private void solve() throws IOException {
    	String line = in.readLine();
    	int eq = line.indexOf("=");
    	int n = Integer.parseInt(line.substring(0, eq));
    	checkBounds(n, 1, 100000, "n");
    	String[] terms = line.substring(eq + 1).split("\\+");
    	int[] a = new int[terms.length];
    	for (int i = 0; i < a.length; i++) {
    		a[i] = Integer.parseInt(terms[i]);
    		checkBounds(a[i], 1, n, "a[i]");
    	}
    	int[] s = new int[terms.length + 1];
    	for (int i = a.length - 1; i >= 0; i--) {
    		s[i] = s[i + 1] + a[i];
    	}
    	check(s[0] == n, "Sum of terms != n");

    	for (int i = a.length - 1; i >= 0; i--) {
    		if (a[i] == s[i]) {
    			continue;
    		}
    		int min = s[i];
    		if (s[i] - a[i] - 1 >= a[i] + 1) {
    			min = a[i] + 1;
    		}
    		out.print(n + "=");
    		for (int j = 0; j < i; j++) {
    			out.print(a[j] + "+");
    		}
    		out.print(min);
    		int left = s[i] - min;
    		while (left > 0) {
    			if (left >= min + min) {
	    			out.print("+" + min);
	    			left -= min;
    			} else {
	    			out.print("+" + left);
	    			break;
    			}
    		}
    		out.println();
    		return;
    	}
    	out.println("No solution");
    }
    
    public static void main(String[] args) {
        new Thread(new next_rs()).start();
    }

    public void run() {
        String problem = getClass().getName().split("_")[0];
        try {
            in = new BufferedReader(new FileReader(new File(problem + ".in")));
            out = new PrintWriter(new File(problem + ".out"));
            solve();
            in.close();
            out.close();
        } catch (IOException e) {
            e.printStackTrace();
            System.exit(1);
        }
    }
}
