#include<bits/stdc++.h>
using namespace std;
#define br cout<<"\n";
#define inf 9e17
#define ninf -9e17
#define int long long int
const long long INF = 9e17;
#define MOD 1000000007
#define pb push_back
#define ff first
#define ss second
#define FIO ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
#define count1 __builtin_popcount()
const int N = 1e6 + 5;
#define rchild 2*pos+2
#define lchild 2*pos+1
string a,b;
vector <int> v;
int n;
int dp[51][51][51][51][2];
int di[20];
int size = 0;
/*
----------------------------------------------------------------------------------------------------------------------------------
*/
//functions
void convert(string s){
v.clear();
for(int i = 0;i < s.size();i++){
v.push_back(s[i] - '0');
}
n = v.size();
memset(dp,-1,sizeof(dp));
}
int solve(int idx,int c3,int c6,int c9,int tight){
//cout << idx << '\n';
if(idx == n){
return ((c3 == c6) and (c3 == c9) and (c3 >= 1));
}
if(dp[idx][c3][c6][c9][tight] != -1){
return dp[idx][c3][c6][c9][tight];
}
int lim = (tight)?v[idx]+1:10,res = 0;
for(int i = 0;i < lim;i++){
int newtight;
if(v[idx] == i)
newtight = tight;
else
newtight = 0;
res+=(solve(idx+1,(i==3)+c3,(i==6)+c6,(i==9)+c9,newtight))%MOD;
res %= MOD;
}
dp[idx][c3][c6][c9][tight] = res;
return res;
}
bool check(string s){
int c3=0,c6=0,c9=0;
for(int i = 0;i < s.size();i++){
if(s[i] == '3')
c3++;
if(s[i] == '6')
c6++;
if(s[i] == '9')
c9++;
}
if( c3 == c6 and c3 == c9 and c3 >= 1){
return true;
}
return false;
}
/*
main ----------------------------------------------------------------------------------------------------------------------------------
*/
int32_t main(){
int t;
cin >> t;
while(t--){
string a,b;
cin >> a >> b;
convert(b);
int ans1 = solve(0,0,0,0,1);
convert(a);
int ans2 = solve(0,0,0,0,1);
int ans = (ans1 - ans2 + MOD)%MOD;
if(check(a)){
ans = (ans + 1)%MOD;
}
cout << ans <<endl;
}
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKI2RlZmluZSBiciBjb3V0PDwiXG4iOwojZGVmaW5lIGluZiA5ZTE3CiNkZWZpbmUgbmluZiAtOWUxNwojZGVmaW5lIGludCBsb25nIGxvbmcgaW50CmNvbnN0IGxvbmcgbG9uZyBJTkYgPSA5ZTE3OwojZGVmaW5lIE1PRCAxMDAwMDAwMDA3CiNkZWZpbmUgcGIgcHVzaF9iYWNrCiNkZWZpbmUgZmYgZmlyc3QKI2RlZmluZSBzcyBzZWNvbmQKI2RlZmluZSBGSU8gaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbygwKTsgY2luLnRpZSgwKTsgY291dC50aWUoMCk7CiNkZWZpbmUgY291bnQxIF9fYnVpbHRpbl9wb3Bjb3VudCgpCmNvbnN0IGludCBOID0gMWU2ICsgNTsKI2RlZmluZSByY2hpbGQgMipwb3MrMgojZGVmaW5lIGxjaGlsZCAyKnBvcysxCnN0cmluZyBhLGI7CnZlY3RvciA8aW50PiB2OwppbnQgbjsKaW50IGRwWzUxXVs1MV1bNTFdWzUxXVsyXTsKaW50IGRpWzIwXTsKaW50IHNpemUgPSAwOwovKgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiovCi8vZnVuY3Rpb25zCnZvaWQgY29udmVydChzdHJpbmcgcyl7CiAgICB2LmNsZWFyKCk7CiAgICBmb3IoaW50IGkgPSAwO2kgPCBzLnNpemUoKTtpKyspewogICAgICAgIHYucHVzaF9iYWNrKHNbaV0gLSAnMCcpOwogICAgfQogICAgbiA9IHYuc2l6ZSgpOwogICAgbWVtc2V0KGRwLC0xLHNpemVvZihkcCkpOwp9CmludCBzb2x2ZShpbnQgaWR4LGludCBjMyxpbnQgYzYsaW50IGM5LGludCB0aWdodCl7CiAgICAvL2NvdXQgPDwgaWR4IDw8ICdcbic7CiAgICBpZihpZHggPT0gbil7CiAgICAgICAgcmV0dXJuICgoYzMgPT0gYzYpIGFuZCAoYzMgPT0gYzkpIGFuZCAoYzMgPj0gMSkpOwogICAgfQogICAgaWYoZHBbaWR4XVtjM11bYzZdW2M5XVt0aWdodF0gIT0gLTEpewogICAgICAgIHJldHVybiBkcFtpZHhdW2MzXVtjNl1bYzldW3RpZ2h0XTsKICAgIH0KICAgIGludCBsaW0gPSAodGlnaHQpP3ZbaWR4XSsxOjEwLHJlcyA9IDA7CiAgICBmb3IoaW50IGkgPSAwO2kgPCBsaW07aSsrKXsKICAgICAgICBpbnQgbmV3dGlnaHQ7CiAgICAgICAgICBpZih2W2lkeF0gPT0gaSkKICAgICAgICAgICAgbmV3dGlnaHQgPSB0aWdodDsKICAgICAgICAgIGVsc2UKICAgICAgICAgICAgbmV3dGlnaHQgPSAwOwogICAgICAgIHJlcys9KHNvbHZlKGlkeCsxLChpPT0zKStjMywoaT09NikrYzYsKGk9PTkpK2M5LG5ld3RpZ2h0KSklTU9EOwogICAgICAgIHJlcyAlPSBNT0Q7CiAgICB9CiAgICBkcFtpZHhdW2MzXVtjNl1bYzldW3RpZ2h0XSA9IHJlczsKICAgIHJldHVybiByZXM7Cn0KYm9vbCBjaGVjayhzdHJpbmcgcyl7CiAgICBpbnQgYzM9MCxjNj0wLGM5PTA7CiAgICBmb3IoaW50IGkgPSAwO2kgPCBzLnNpemUoKTtpKyspewogICAgICAgaWYoc1tpXSA9PSAnMycpCiAgICAgICBjMysrOwogICAgICAgaWYoc1tpXSA9PSAnNicpCiAgICAgICBjNisrOwogICAgICAgaWYoc1tpXSA9PSAnOScpCiAgICAgICBjOSsrOwogICAgfQogICAgaWYoIGMzID09IGM2IGFuZCBjMyA9PSBjOSBhbmQgYzMgPj0gMSl7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICB9CiAgICByZXR1cm4gZmFsc2U7Cn0KLyoKbWFpbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiovCmludDMyX3QgbWFpbigpewogICAgaW50IHQ7CiAgICBjaW4gPj4gdDsKICAgIHdoaWxlKHQtLSl7CiAgICAgICAgc3RyaW5nIGEsYjsKICAgICAgICBjaW4gPj4gYSA+PiBiOwogICAgICAgIGNvbnZlcnQoYik7CiAgICAgICAgaW50IGFuczEgPSBzb2x2ZSgwLDAsMCwwLDEpOwogICAgICAgIGNvbnZlcnQoYSk7CiAgICAgICAgaW50IGFuczIgPSBzb2x2ZSgwLDAsMCwwLDEpOwogICAgICAgIGludCAgYW5zID0gKGFuczEgLSBhbnMyICsgTU9EKSVNT0Q7CiAgICAgICAgaWYoY2hlY2soYSkpewogICAgICAgICAgICBhbnMgPSAoYW5zICsgMSklTU9EOwogICAgICAgIH0KICAgICAgICBjb3V0IDw8IGFucyA8PGVuZGw7CiAgICB9Cn0=
NTAKNDY0OTMwMTI1MDQ3NDAyNDAgODQ5MzUxNTkyNDI2MzE3ODg2OTE2OTA0NDI2MjIzNzMzNTgzODU4NDY3NjgwNTU4NQozNDAyOTczOTE2MzU4MjY4NjY4NDIxNzcyNDA1MjQzMDM1OTkgMjE4MTMxODk1OTY2OTEyODE4NTkxMjI4NjMxMTMxNDk4Mzk0NjMKMyAxMTU0NzEwMzM5NTc5NTg3NTIzNDYzNzM2MzY1MTk2OTQ3MzcyNDQ4Mzg5OQo5NDI5MTE4NzIzODM0MzY2MjE4OTAyNTcxMjc1MzQ3NzExNDUxMjU5MTUyNzQyOSA3ODMxMzI5ODc1MTg2ODA5NjU3MzY3ODY2OTM2MjMzODQ3NDY1MDM2NzAwMTU5ODczCjM3NjE2ODEwMzI2OTM0OTY0MzggMzM2NTEwODQxMTEwMTExMjk4NDAwMzUyNTUzOTg2MzYzNDg3MjM2ODEwNTgwNTE3NAo1MTk3NTkyOTY5Nzg0NzQyNjcyNTY2NjgyNjcwMDgxNyAzODYzMjU2NjI3MzA3Nzk0MzAyOTQwMzQwMDE5MzIzMjUyCjI0IDk2NjM3MTM5ODUwODg3NTY2NTUzNjc2NzcyMTE2NDE3Mzk4OTI5MzQ3Cjc1MjI0NTI2NjU5IDU5ODY0NDMzOTI2ODg5ODU5NDQxODcwMDUwNTU2ODAyOTQ2NTU0MDMyMDY3NjY3ODY1CjEzMzQgNjY0NTA5CjcxMTU3NjA2NTQxNyAxNjg5NzEzMDY2Nzc2ODI5OQo3ODIgMjIwMzA5MTMxODQxNjIyMzkzMzg0OTc5MzU3NTI1ODI4Nzk3MzM3NDI0NzgKMjA4Nzk0NTM4NzQ0NSAyNjQ0Mzk1NjUwMzQwNjg4NTg4CjkwMDk4NSA0OTIxMTY4ODI1ODYzMjM3NjQ0MzE5CjIyMjk2NjU3OTA4MDgxMTY0NzY0MCA5NTcwNjY3OTY1NDg2NDg5OTA3NjIzMzkzMjAyNjYzMDMxMjMwMjgxCjg4NDU4MzE4NDQxOTk5MzM0OTczODU0NTE3IDIyMTA2OTY1NzM5ODA2OTc2NTM0NjY2MjI1Mzg1MDMzNDEwNzU5NzUwCjU3IDEzMDE3MTY4Nzk2MTYzODY3ODcxMTQyNTQ1MDEKNDg0OTE4IDA4MzQyODkwNTA2MDIwMjUzMTQ2NjUzNjU2NDI2MjAzNDU2NAo2MDAxMTUzODAxMzYxOTg4MDk2NDcwMTE4NTg4MTAzIDIxMzU4MTkzNzQxNjExOTIyMDQ1NTk4MjUyNDAzNDExNDgzNjUwOTI0OTE1MDc5CjQ0NDU0NjExMTA0MzM2MTYgMDcxMzU3MTAzMzY4NTEyMzY2NjA1MjIxNTIxOTYxNTExMzI1NTI1MzQ2CjA0IDE0NTUyCjYwMTMzOTQ3MDE0IDIxOTc4ODgxOTA3Njk2NTUyNDc2MTg5MTc4MzU2NzEzOTYwODEwMzQKNzk1MTQ0MTg4ODI3MTkzMjQ0OTcgOTc3MTkyNTAxNzE5MDEyNTQ3MzY1NjYzMTkwNzgxODcxMDI1Ngo3ODEwNzY0MzkzMTE0IDY0MTU4MDUyNTY3OTE3MDgxNjkwNzc1Nzg1ODYxNzgyMDQKODQyOTM2OTQ2NDgzNzkyNTc5NDA4ODcxMjM1OSAwNTU2MzkyODA2MzM3OTA3OTMyMDY2MjY0Nzk4NjkwMDUKMTIyNDI5ODIzMTI5MTU5MTcyMjc0NCAwMzYxMTA0NTkyMzU5NjcyNDAxNTQzMDM1NTk2ODE4OAo0NDMyNDc1NzYzMjQ3NzcyMTUxMjQ3Nzc1IDA4NDMyOTc4OTUxMDE2MzkwNzI1MDg4NjgzNTU4MjMzOTQxMDg5NTM5NzY0NjgxMTAKMDkzMDYyNjg0MDUwNDAxIDg5MDcxODc5ODQ4NzQ5OTY1MzYyCjkxIDg0MTcxNTUxNzU4NzU3MTMwMDcwOTU1ODc2NjMyNzk2OAowNTQ4MjY2MDgwMzkxODIzOTkzMDkyIDg1NDM1NjM1ODY4MzI2MzQxMzQwNTg4NzYyNzAwMDc2NjY2Mjk2NTIyMjUwMDA0MQoxMzQyNjk3Mzg3MjAgMDI3ODkwMTMxNzY2NTAyNDg0ODg3MzAzMjU4ODk1MTEyNTg0MzAzNgoxNzUzOTY3MjE2Njk5ODYxIDY1MDYxMzQyNTk1ODk1NTQ0MTkzMzk4OTY5NDI0MTY0MDc5OTMzNzYyMjA3CjEzIDE2MzMyMzIwOTUyNTY2NDUzNzEKNTg3Nzk1MDAwMzY3MDg3MTI1MDcxNTEgNzQyNzIwMjU4NjkwNTQyNTI1Nzk3MzE5MzA4NDI0MwozNTg1ODAwNzk4MTkxMDM5OTQgNDE0NDE3OTMzODU5MjIwMDQ2MjMyMTE4NDg3MTg5OTMxOAoxMjAxNDE0MzE4NjMxNjQ2MDg3IDkzOTkzNzQyODM0NzE3MTkxMTk4OTEwNDM4MTM2MDUwODcyODA2ODM5CjMzNzI3MSA2ODczMjU5NzczODI0ODgwODc3ODA4NjE5NTU0NDQ1ODM2MzE0NzAKMzUxMjMwNTMyOTc4MzcwNzQzMTc0NTYyMDI3ODk0OTM0ODk2MTI4NyA3MDA2NzM0MjAxMzE2MDc2OTgzODMxNjQ5MDMxNjAyNDczMTM4OTAwMQoyMTY5MzU5NTA2IDU2MjY0MTYyMTA5OTExNjE3MDgxODgyNTYKOTYzNjE1ODAzODU1NjQwNjI4NjA3NDgyMTAwNDM2MyAzNDQzNTg5NTg1MzgzNDA4MDU0MTE3MjU2NTc1ODk4ODMKOTQ1NzM3NDM3OTY3MTc5Njk2NDc2NDA2MDE2NTEgNTQyOTkwOTYzODA0NjU5NzAyNjI0MTk1NjE5MDk1MzU2NjI3MzA0Njk2MDkxMzkKMDU1MjgxMzAwNDcwOTgwMTUyMjIwMCAzMDMzNDUxNjgxNzUwNTI5MDM4OTc1MjU4NTA0NjA5ODc3OTcyMTQ2MzY0NjE2MAo4MDY3MiAwNzU0MjY5NzAxNzA0NTIwNDQzMTUzMzk0OTI1NTgxMDg0NzAyMTY1ODE2MjEwMTgxCjg0NTM0NDExMjUyMjU0NDc1IDQ3NTk2MjAyNjI4MjczMzg1OTI2MjQ0MjYzMjQKMzE5MCA5MzM3NjQzNjY2MjY4MjQwMzI4MjE1Mjg4MzI2NjAzMTA4Mzc2OTY0MAo0NTEgMTY1ODI1MTE5Mzk0OTgzNjUwNjY3ODU3MzQ2ODU5NzEyOTAzNDI4NTIwNjE0NTMKNDUzMDM3ODcyNDQgMTQyMTE5NTcwMjE0MTk3MjU1NzAyOTIxOTQ1NDQxNTEKMzU0MTQ0NjM3MjYxMTkxMzUyNTY5NzU5MCA4Njg2MTU5ODE2NjEyNjAxODg0NzI1NDM4OTYzMTgKNjk5NzE5MjUwMDUgMjQ5MTc0NjU2NjE2NDMwODk1MzE3OTE2MDQ4NTYyOTUKMDA3NDg4MzE2OTE0Mjk0MzggNDI5MjQwMjA4Njg4Njc3MDY5MjgyNjkKNzE3Mjk2ODggMDgyNTIzNDk5Mjc2NTk2NzY5NjUxNjk1MDQxNTU0ODkwMTczNjY4OTI2MzAwMTk2Ng==
50
46493012504740240 8493515924263178869169044262237335838584676805585
340297391635826866842177240524303599 21813189596691281859122863113149839463
3 11547103395795875234637363651969473724483899
94291187238343662189025712753477114512591527429 7831329875186809657367866936233847465036700159873
3761681032693496438 3365108411101112984003525539863634872368105805174
51975929697847426725666826700817 3863256627307794302940340019323252
24 96637139850887566553676772116417398929347
75224526659 59864433926889859441870050556802946554032067667865
1334 664509
711576065417 16897130667768299
782 22030913184162239338497935752582879733742478
2087945387445 2644395650340688588
900985 4921168825863237644319
222966579080811647640 9570667965486489907623393202663031230281
88458318441999334973854517 22106965739806976534666225385033410759750
57 1301716879616386787114254501
484918 083428905060202531466536564262034564
6001153801361988096470118588103 21358193741611922045598252403411483650924915079
4445461110433616 071357103368512366605221521961511325525346
04 14552
60133947014 2197888190769655247618917835671396081034
79514418882719324497 9771925017190125473656631907818710256
7810764393114 6415805256791708169077578586178204
8429369464837925794088712359 055639280633790793206626479869005
1224298231291591722744 03611045923596724015430355968188
4432475763247772151247775 0843297895101639072508868355823394108953976468110
093062684050401 89071879848749965362
91 841715517587571300709558766327968
0548266080391823993092 854356358683263413405887627000766662965222500041
134269738720 0278901317665024848873032588951125843036
1753967216699861 65061342595895544193398969424164079933762207
13 1633232095256645371
58779500036708712507151 7427202586905425257973193084243
358580079819103994 4144179338592200462321184871899318
1201414318631646087 93993742834717191198910438136050872806839
337271 687325977382488087780861955444583631470
3512305329783707431745620278949348961287 70067342013160769838316490316024731389001
2169359506 5626416210991161708188256
9636158038556406286074821004363 344358958538340805411725657589883
94573743796717969647640601651 54299096380465970262419561909535662730469609139
0552813004709801522200 30334516817505290389752585046098779721463646160
80672 0754269701704520443153394925581084702165816210181
84534411252254475 4759620262827338592624426324
3190 93376436662682403282152883266031083769640
451 16582511939498365066785734685971290342852061453
45303787244 14211957021419725570292194544151
3541446372611913525697590 868615981661260188472543896318
69971925005 24917465661643089531791604856295
00748831691429438 42924020868867706928269
71729688 0825234992765967696516950415548901736689263001966