#pragma GCC optimize("Ofast")
#pragma GCC optimize("O2")
#include<bits/stdc++.h>
#define faster ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define db double
#define bo bool
#define vo void
#define ch char
#define fl float
#define ll long long
#define str string
#define st struct
#define re return
using namespace std;
str s;
ll m;
vector<str> res;
vo dq(ll p,ll c,str s2)
{
ll n,i;
if(p==s.size())
{
if(c==m) res.push_back(s2);
re;
}
for(i=p;i<s.size();i++)
{
str s1=s.substr(p,i-p+1);
if(s1.size()>1&&s1[0]=='0') break;
ll n=stoll(s1);
if(p==0)
{
dq(i+1,n,s1);
dq(i+1,-n,"-"+s1);
}
else
{
dq(i+1,c+n,s2+"+"+s1);
dq(i+1,c-n,s2+"-"+s1);
}
}
}
int main()
{
faster
cin>>s>>m;
dq(0,0,"");
if(res.empty()) cout<<0;
else
{
cout<<res.size()<<"\n";
for(auto &x : res) cout<<x<<"\n";
}
re 0;
}
I3ByYWdtYSBHQ0Mgb3B0aW1pemUoIk9mYXN0IikKI3ByYWdtYSBHQ0Mgb3B0aW1pemUoIk8yIikKI2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KI2RlZmluZSBmYXN0ZXIgaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbygwKTtjaW4udGllKDApO2NvdXQudGllKDApOwojZGVmaW5lIGRiIGRvdWJsZQojZGVmaW5lIGJvIGJvb2wKI2RlZmluZSB2byB2b2lkCiNkZWZpbmUgY2ggY2hhcgojZGVmaW5lIGZsIGZsb2F0CiNkZWZpbmUgbGwgbG9uZyBsb25nCiNkZWZpbmUgc3RyIHN0cmluZwojZGVmaW5lIHN0IHN0cnVjdAojZGVmaW5lIHJlIHJldHVybgp1c2luZyBuYW1lc3BhY2Ugc3RkOwpzdHIgczsKbGwgbTsKdmVjdG9yPHN0cj4gcmVzOwp2byBkcShsbCBwLGxsIGMsc3RyIHMyKQp7CglsbCBuLGk7CiAgICBpZihwPT1zLnNpemUoKSkKCXsKICAgICAgICBpZihjPT1tKSByZXMucHVzaF9iYWNrKHMyKTsKICAgICAgICByZTsKICAgIH0KICAgIGZvcihpPXA7aTxzLnNpemUoKTtpKyspCgl7CiAgICAgICAgc3RyIHMxPXMuc3Vic3RyKHAsaS1wKzEpOwogICAgICAgIGlmKHMxLnNpemUoKT4xJiZzMVswXT09JzAnKSBicmVhazsKICAgICAgICBsbCBuPXN0b2xsKHMxKTsKICAgICAgICBpZihwPT0wKQoJCXsKICAgICAgICAgICAgZHEoaSsxLG4sczEpOwogICAgICAgICAgICBkcShpKzEsLW4sIi0iK3MxKTsKICAgICAgICB9CgkJZWxzZQoJCXsKICAgICAgICAgICAgZHEoaSsxLGMrbixzMisiKyIrczEpOwogICAgICAgICAgICBkcShpKzEsYy1uLHMyKyItIitzMSk7CiAgICAgICAgfQogICAgfQp9CmludCBtYWluKCkKewoJZmFzdGVyCiAgICBjaW4+PnM+Pm07CiAgICBkcSgwLDAsIiIpOwogICAgaWYocmVzLmVtcHR5KCkpIGNvdXQ8PDA7CiAgICBlbHNlCgl7CiAgICAgICAgY291dDw8cmVzLnNpemUoKTw8IlxuIjsKICAgICAgICBmb3IoYXV0byAmeCA6IHJlcykgY291dDw8eDw8IlxuIjsKICAgIH0KICAgIHJlIDA7Cn0K