From 0aec97dbf2c2561e13988d9f05e8987bad8fb916 Mon Sep 17 00:00:00 2001 From: vdelacruzjardon Date: Fri, 16 Sep 2016 13:41:52 -0500 Subject: [PATCH] Examples in Gambas (#5) by @vdelacruzjardon --- .../01_binary_search/.gambas/BINARY_SEARCH | Bin 0 -> 888 bytes .../gambas/01_binary_search/.project | 7 +++ .../.src/binary_search.module | 27 ++++++++++++ .../gambas/01_binary_search/.startup | 7 +++ .../gambas/01_selection_sort/.gambas/MMAIN | Bin 0 -> 1180 bytes .../gambas/01_selection_sort/.project | 4 ++ .../01_selection_sort/.src/MMain.module | 40 ++++++++++++++++++ .../gambas/01_selection_sort/.startup | 7 +++ .../gambas/01_countdown/.gambas/COUNTDOWN | Bin 0 -> 580 bytes 03_recursion/gambas/01_countdown/.project | 7 +++ .../gambas/01_countdown/.src/countdown.module | 15 +++++++ 03_recursion/gambas/01_countdown/.startup | 7 +++ 03_recursion/gambas/02_greet/.gambas/GREET | Bin 0 -> 940 bytes 03_recursion/gambas/02_greet/.project | 7 +++ .../gambas/02_greet/.src/greet.module | 17 ++++++++ 03_recursion/gambas/02_greet/.startup | 7 +++ .../gambas/03_factorial/.gambas/FACTORIAL | Bin 0 -> 580 bytes 03_recursion/gambas/03_factorial/.project | 7 +++ .../gambas/03_factorial/.src/factorial.module | 14 ++++++ 03_recursion/gambas/03_factorial/.startup | 7 +++ .../gambas/01_loop_sum/.gambas/LOOP_SUM | Bin 0 -> 676 bytes 04_quicksort/gambas/01_loop_sum/.project | 7 +++ .../gambas/01_loop_sum/.src/loop_sum.module | 15 +++++++ 04_quicksort/gambas/01_loop_sum/.startup | 7 +++ .../.gambas/RECURSIVE_COUNT | Bin 0 -> 652 bytes .../gambas/02_recursive_count/.project | 7 +++ .../.src/recursive_count.module | 13 ++++++ .../gambas/02_recursive_count/.startup | 7 +++ .../02_recursive_sum/.gambas/RECURSIVE_SUM | Bin 0 -> 644 bytes 04_quicksort/gambas/02_recursive_sum/.project | 7 +++ .../.src/recursive_sum.module | 13 ++++++ 04_quicksort/gambas/02_recursive_sum/.startup | 7 +++ .../04_recursive_max/.gambas/RECURSIVE_MAX | Bin 0 -> 764 bytes 04_quicksort/gambas/04_recursive_max/.project | 7 +++ .../.src/recursive_max.module | 25 +++++++++++ 04_quicksort/gambas/04_recursive_max/.startup | 7 +++ .../gambas/05_quicksort/.gambas/QUICKSORT | Bin 0 -> 1048 bytes 04_quicksort/gambas/05_quicksort/.lock | 0 04_quicksort/gambas/05_quicksort/.project | 7 +++ .../gambas/05_quicksort/.src/quicksort.module | 39 +++++++++++++++++ 04_quicksort/gambas/05_quicksort/.startup | 7 +++ 41 files changed, 355 insertions(+) create mode 100644 01_introduction_to_algorithms/gambas/01_binary_search/.gambas/BINARY_SEARCH create mode 100644 01_introduction_to_algorithms/gambas/01_binary_search/.project create mode 100644 01_introduction_to_algorithms/gambas/01_binary_search/.src/binary_search.module create mode 100644 01_introduction_to_algorithms/gambas/01_binary_search/.startup create mode 100644 02_selection_sort/gambas/01_selection_sort/.gambas/MMAIN create mode 100644 02_selection_sort/gambas/01_selection_sort/.project create mode 100644 02_selection_sort/gambas/01_selection_sort/.src/MMain.module create mode 100644 02_selection_sort/gambas/01_selection_sort/.startup create mode 100644 03_recursion/gambas/01_countdown/.gambas/COUNTDOWN create mode 100644 03_recursion/gambas/01_countdown/.project create mode 100644 03_recursion/gambas/01_countdown/.src/countdown.module create mode 100644 03_recursion/gambas/01_countdown/.startup create mode 100644 03_recursion/gambas/02_greet/.gambas/GREET create mode 100644 03_recursion/gambas/02_greet/.project create mode 100644 03_recursion/gambas/02_greet/.src/greet.module create mode 100644 03_recursion/gambas/02_greet/.startup create mode 100644 03_recursion/gambas/03_factorial/.gambas/FACTORIAL create mode 100644 03_recursion/gambas/03_factorial/.project create mode 100644 03_recursion/gambas/03_factorial/.src/factorial.module create mode 100644 03_recursion/gambas/03_factorial/.startup create mode 100644 04_quicksort/gambas/01_loop_sum/.gambas/LOOP_SUM create mode 100644 04_quicksort/gambas/01_loop_sum/.project create mode 100644 04_quicksort/gambas/01_loop_sum/.src/loop_sum.module create mode 100644 04_quicksort/gambas/01_loop_sum/.startup create mode 100644 04_quicksort/gambas/02_recursive_count/.gambas/RECURSIVE_COUNT create mode 100644 04_quicksort/gambas/02_recursive_count/.project create mode 100644 04_quicksort/gambas/02_recursive_count/.src/recursive_count.module create mode 100644 04_quicksort/gambas/02_recursive_count/.startup create mode 100644 04_quicksort/gambas/02_recursive_sum/.gambas/RECURSIVE_SUM create mode 100644 04_quicksort/gambas/02_recursive_sum/.project create mode 100644 04_quicksort/gambas/02_recursive_sum/.src/recursive_sum.module create mode 100644 04_quicksort/gambas/02_recursive_sum/.startup create mode 100644 04_quicksort/gambas/04_recursive_max/.gambas/RECURSIVE_MAX create mode 100644 04_quicksort/gambas/04_recursive_max/.project create mode 100644 04_quicksort/gambas/04_recursive_max/.src/recursive_max.module create mode 100644 04_quicksort/gambas/04_recursive_max/.startup create mode 100644 04_quicksort/gambas/05_quicksort/.gambas/QUICKSORT create mode 100644 04_quicksort/gambas/05_quicksort/.lock create mode 100644 04_quicksort/gambas/05_quicksort/.project create mode 100644 04_quicksort/gambas/05_quicksort/.src/quicksort.module create mode 100644 04_quicksort/gambas/05_quicksort/.startup diff --git a/01_introduction_to_algorithms/gambas/01_binary_search/.gambas/BINARY_SEARCH b/01_introduction_to_algorithms/gambas/01_binary_search/.gambas/BINARY_SEARCH new file mode 100644 index 0000000000000000000000000000000000000000..ce35fb3e59fbe1657c058a000b57e8dfe187aa37 GIT binary patch literal 888 zcmZ`%&ubG=5dPkKNn<2!QjN8m&@M|4rNvOB5Ks@fC(Rf%|3lcnAlq;DN7x3PW!`-6o7tH+Z{Cm3Prm_0Ge19lqyW^YQN$%DyTn`6 zE2_!y8!3K3`!`CYK-|d1WbkVSQY-&Rz5mI-{B|XZv<9Sx)PA$}vz$*v@`~T0=A|hc zX|Ti&*Hw6mzEYo%(i zm^5LJVDofj<4hJ)O2l`m0P9c0wa)meu62^yzf?nfDl}m+EQRH;=p=jn8_I;b`S7v% zqMl2HFubD`qiYs($n2z_{QNe#kMA?}$*p}P&cx0@&a&5)6tKO*8Q4K7hEi``4pPFz zZPxJ&`>=6@7EW-=uZ>snJkv4oycImb-n|)~F~o zYudL|&LfVi(7vZ8CkE=oSDx?OEP7Mdxw#&;#*_Z-$o;g=qw9D+-i; item Then + high = Midd - 1 + Else + low = Midd + 1 + Endif + Wend + Return Null +End + +Public Sub Main() + +Dim my_list As New Float[] +my_list = [1, 3, 5, 7, 9] +Print binary_search(my_list, 3) '1 +Print binary_search(my_list, -1) 'null +End diff --git a/01_introduction_to_algorithms/gambas/01_binary_search/.startup b/01_introduction_to_algorithms/gambas/01_binary_search/.startup new file mode 100644 index 0000000..fb00008 --- /dev/null +++ b/01_introduction_to_algorithms/gambas/01_binary_search/.startup @@ -0,0 +1,7 @@ +binary_search +01_binary_search +0 +0 +0.0.1 + + diff --git a/02_selection_sort/gambas/01_selection_sort/.gambas/MMAIN b/02_selection_sort/gambas/01_selection_sort/.gambas/MMAIN new file mode 100644 index 0000000000000000000000000000000000000000..2470841fa616f77d05f49650513f446e888ab748 GIT binary patch literal 1180 zcmZ`&&rcIU6#iy+3$~)IfI+cJZ3-AgL!w6yk{G=}LL@O7G^W}WmbBa0E{c)A#FH1# zdgLGS;%N_h9=~tafzs$qzIngjn>YLR>!-QTKq)+UdT-hQs1erk7+IIdPY|z(Xhbia zmUO?ZwNs=s#5}P;jIS?aiZhf|^MC7K_GVJcXS3asTIS@5!Kqdqbb(s}w!aus<{M%4zSA+J+4xhYekll^A$u!Y50 z80TROJq+7vvTH^-SrJAV(D-RlrLxAe_M*uB-CR*l)i}u+G3R9{COBf2y0SBGWKiU! zX5QT>3iwWigvJkMr|7Z+4^QPUu7N=<0kjYUwgz_5kK`sT*D%6aNpwAoasN&O|++Q zfqM>D(Kt0@dXsfRz4Di_o1{h0z;p5(U59N_b)plz7zbx3le+SdY`4Y!{pR!(BXyd;Rw@-X>{h ztJm&!<6(wj+>PI4Nk84{4>CMR(u8Lke?WUMz|eao$LuQx#|NOt8XXwii_;7P;14<| Bi!=ZL literal 0 HcmV?d00001 diff --git a/02_selection_sort/gambas/01_selection_sort/.project b/02_selection_sort/gambas/01_selection_sort/.project new file mode 100644 index 0000000..9dfb7d9 --- /dev/null +++ b/02_selection_sort/gambas/01_selection_sort/.project @@ -0,0 +1,4 @@ +# Gambas Project File 3.0 +Title=01_selection_sort +Startup=MMain + diff --git a/02_selection_sort/gambas/01_selection_sort/.src/MMain.module b/02_selection_sort/gambas/01_selection_sort/.src/MMain.module new file mode 100644 index 0000000..f7202c7 --- /dev/null +++ b/02_selection_sort/gambas/01_selection_sort/.src/MMain.module @@ -0,0 +1,40 @@ +' Gambas module file + +Function findSmallest(arr As Float[]) As Integer + Dim smallest As Float + Dim i, smallest_index As Integer + smallest_index = 0 + smallest = arr[0] + For i = 1 To arr.Length - 1 + If arr[i] < smallest Then + smallest = arr[i] + smallest_index = i + Endif + Next + Return smallest_index + +End +Function selectionSort(arr As Float[]) As Float[] +Dim newArr As New Float[] +Dim smallest, i As Integer +Dim element As Float +For i = 0 To arr.Length - 1 + smallest = findSmallest(arr) + newArr.Push(arr[smallest]) + arr.Remove(smallest) +Next + + Return newArr + +End +Public Sub Main() +Dim r As New Float[] +Dim element As Float +Dim i As Integer +r = [5, 3, 6, 2, 10] +r = selectionSort(r) + +For Each element In r + Print element + Next +End diff --git a/02_selection_sort/gambas/01_selection_sort/.startup b/02_selection_sort/gambas/01_selection_sort/.startup new file mode 100644 index 0000000..57688ad --- /dev/null +++ b/02_selection_sort/gambas/01_selection_sort/.startup @@ -0,0 +1,7 @@ +MMain +01_selection_sort +0 +0 + + + diff --git a/03_recursion/gambas/01_countdown/.gambas/COUNTDOWN b/03_recursion/gambas/01_countdown/.gambas/COUNTDOWN new file mode 100644 index 0000000000000000000000000000000000000000..4520e3b5d477898e7b9082ea6c6193c1adf1352a GIT binary patch literal 580 zcmZ`$J5B>J6dZdu0ir05_$x{grA0y%93U5nL`4rI#Y*695(Nng&OuL2%dz$bX2z@| z2f?hK-+1ix`+dBey#t-%`S$wI02tCj;F95-yhppI6`9^`c}X9L>}X5hw(N)O(<#n> z`0IRHhG5#C6kqw|P+kd^WG`)6ul&F_qSL}6qeg$Fy)#X)y`$pQjNpPrg9}V~!|~>X zRXY0>Z1^-|o!g;$B(2jV1(;A$kMwTdrvvVlzw(MPS^W)pf=eXxCmAoH7j`jdr=WPh zaU6v%`WP_z)A*@h>MQ5G)0;k(5lyX4^HXgP_1do%^~PU5)ryILEWWIEq``|a$^Za?4JA4HC|eC!<bN-aQ zY`7C`CIdOQCOFD^d_TA&(3lyQtm7f_rm>-QZeDw?=e!%o)HGXo2k^$)^(@8p6lb!w z`>S2$rg4g0#>VB$%Tqq_R3xtI&giib<2*KF(V@06MbPO{mzJ32Y=5F4RVvc zxGRIPMN7`LJ!nvhPbF;2(~5eUt}6~bX>;XiIxAvJ>Ci{jihdgMjSF0pJ?=?iga1#D z+SE~fJAd8^nrC**ssG1q+-N358cdVnd?LoImpR>qQB31x;fFKfXUY7+r{u*SWTH!B xF_|Qsk3^bA@yMTvaG3dN;=hI&6hRPBIE+$aTvWTHeiSp&kHv!Ga4Ps1`UZ(=VAB8q literal 0 HcmV?d00001 diff --git a/03_recursion/gambas/02_greet/.project b/03_recursion/gambas/02_greet/.project new file mode 100644 index 0000000..ae4605a --- /dev/null +++ b/03_recursion/gambas/02_greet/.project @@ -0,0 +1,7 @@ +# Gambas Project File 3.0 +# Compiled with Gambas 3.5.4 +Title=02_greet +Startup=greet +Version=0.0.1 +TabSize=2 +Packager=1 diff --git a/03_recursion/gambas/02_greet/.src/greet.module b/03_recursion/gambas/02_greet/.src/greet.module new file mode 100644 index 0000000..c832d23 --- /dev/null +++ b/03_recursion/gambas/02_greet/.src/greet.module @@ -0,0 +1,17 @@ +' Gambas module file + +Function greet2(name As String) + Print "how are you, "; name; "?" +End +Function bye() + Print "ok bye!" +End +Function greet(name As String) + Print "hello, "; name; "!" + greet2(name) + Print "getting ready to say bye..." + bye() +End +Public Sub Main() +greet("adit") +End diff --git a/03_recursion/gambas/02_greet/.startup b/03_recursion/gambas/02_greet/.startup new file mode 100644 index 0000000..41914a6 --- /dev/null +++ b/03_recursion/gambas/02_greet/.startup @@ -0,0 +1,7 @@ +greet +02_greet +0 +0 +0.0.1 + + diff --git a/03_recursion/gambas/03_factorial/.gambas/FACTORIAL b/03_recursion/gambas/03_factorial/.gambas/FACTORIAL new file mode 100644 index 0000000000000000000000000000000000000000..e94fd995ff737cc4941b52e359c9f71f1b096fbc GIT binary patch literal 580 zcmZ`$K}rKb5UiQa#u$|ZV^BiC5IlGg58?yz0l|~^RU<6K4M@a*9(;%QoW15*`-8D+ z+>yx=d+F`&>ZzXYp4I#D7my~)yX!*(pi6a*zerB#x2gBkB*L4Kzs>!ufi1?m<3HJ! zAMZG4DpG^QevPc2f~Yt38H+ez4H@rqz+f)~cAPaO&M{8uo6>YKVjo29+FAE)hPWcu zvE&{3^QN@xv^2wZFZnP7WkxDPRbBOKY1N0~urq%rr@ti@#McW!Wd~8*fHv}5JHQ9k z3)JUSUT+69v5P(Q{MWB4v^Ms#&r_#Vt<_OzJohPkSj=DYY%mJA@!-KjuY!UnFCr2#)Igg^O=&?7{toY+z526) z{($wpn8gru!rPgBJF}U6^Y*m%D&jel%cCVFA^~6wmWr(-ZUDD{Q{kt|*oFTz#?Ujj zZZ9=r27CVNKl|%^$2CTwNaLGE;a07fy;!4NCBl`o$o!rg6+zVB6cG-DWo6Hbl&Ne_D z`6dldZP|m>x9A57U4XN;YlDj4uf%R~%g^1GUM#1@`|Gw+5)Rs5l?`d)qo&keWC852 zwGnmz_KY!`LwFCM9Rr-DohK#kr|HAZ<7m(sq<5o!B-GV%avsKsoF-Y+i-uR%auy}M a>|T&9-8hLe=_b)w!r@S|Gzs4ED)>Ypr`^ zS4r26-!*UUf-uMOdH=~@{IILFFiCuNJd@1zS>b%H*%hwSIxV(#pSe&=utQ-3L%L}Q zB_f1E$uDLEgqlX^PZ^6CJIu;xtN?m79{HuizvTI)IB z20U)_F1))hhUE@B@fB+j?>@nBX(h!PvD8{5+ zQX({2B|SN2R*+D?yY!cgL`3_%Lxz#57fO!d%2U4b6A{fXdv9W$`7Q9MvkLSgavyO%zP%6(Dm2=bmu2 z=8srGJWOw!VU<0l*Htsv8sV}eSG%fDy2RbevUkF9i&x)+3 Mevv*?o>eu`4}j=JoB#j- literal 0 HcmV?d00001 diff --git a/04_quicksort/gambas/02_recursive_sum/.project b/04_quicksort/gambas/02_recursive_sum/.project new file mode 100644 index 0000000..2a90afe --- /dev/null +++ b/04_quicksort/gambas/02_recursive_sum/.project @@ -0,0 +1,7 @@ +# Gambas Project File 3.0 +# Compiled with Gambas 3.5.4 +Title=02_recursive_sum +Startup=recursive_sum +Version=0.0.1 +TabSize=2 +Packager=1 diff --git a/04_quicksort/gambas/02_recursive_sum/.src/recursive_sum.module b/04_quicksort/gambas/02_recursive_sum/.src/recursive_sum.module new file mode 100644 index 0000000..28ce3d8 --- /dev/null +++ b/04_quicksort/gambas/02_recursive_sum/.src/recursive_sum.module @@ -0,0 +1,13 @@ +' Gambas module file + +Function sum(list As Float[]) As Float + If list.Length = 0 Then + Return 0 + Endif + Return list[0] + sum(list.Copy(1, list.Length - 1)) + +End + +Public Sub Main() +Print sum([1, 2, 3, 4]) +End diff --git a/04_quicksort/gambas/02_recursive_sum/.startup b/04_quicksort/gambas/02_recursive_sum/.startup new file mode 100644 index 0000000..ac65d88 --- /dev/null +++ b/04_quicksort/gambas/02_recursive_sum/.startup @@ -0,0 +1,7 @@ +recursive_sum +02_recursive_sum +0 +0 +0.0.1 + + diff --git a/04_quicksort/gambas/04_recursive_max/.gambas/RECURSIVE_MAX b/04_quicksort/gambas/04_recursive_max/.gambas/RECURSIVE_MAX new file mode 100644 index 0000000000000000000000000000000000000000..4ecc46a04ee7fd77daca5beb72ebc5f6ba21aebc GIT binary patch literal 764 zcmZ`%&r1S96#iycvpncxky#S51VvF7J4hf3L3AkS)FmR;T53Vp(6y90_;+;g+|_?7 znEzmUZ**j^dc)iIy>IsYn0fR0R{Q|c?(q7!AOLuzO3}xX4Z=Cn7O89TOEa7z`>m8( zCc8!I&v@I6ZHF-b%k}<~zxMr%Qi6gwj%zm-g1J8<9M5O5g*i=99){dE`^Jvh&nt%s zM`92D`qY<>s~kaJ?8DE@IpLv_)*kPXmv<%{EgU19l?eKh&$7K-3IBR!<gp;k5faLT5x_Xhw0A Spc#j+Xh;17{XvV list[1] Then + Return list[0] + Else + Return list[1] + Endif + Endif + sub_max = mymax(list.Copy(1, list.Length - 1)) + If list[0] > sub_max Then + Return list[0] + Else + Return sub_max + Endif + +End + +Public Sub Main() +Print mymax([1, 5, 10, 25, 16, 1]) '25 + +End diff --git a/04_quicksort/gambas/04_recursive_max/.startup b/04_quicksort/gambas/04_recursive_max/.startup new file mode 100644 index 0000000..809725c --- /dev/null +++ b/04_quicksort/gambas/04_recursive_max/.startup @@ -0,0 +1,7 @@ +recursive_max +04_recursive_max +0 +0 +0.0.1 + + diff --git a/04_quicksort/gambas/05_quicksort/.gambas/QUICKSORT b/04_quicksort/gambas/05_quicksort/.gambas/QUICKSORT new file mode 100644 index 0000000000000000000000000000000000000000..5ae3c4eaed0a36ea67cb2e6b5216a3f133c913c3 GIT binary patch literal 1048 zcmZ`&U2D`p6g@MOxNfYZtY}NSNL<%1EZT>@h(3rEwV+TD^q~k%yF(4`W;L5?i$3@} zeD_%&`y>1f{)Py?$8%>lZ47#cGjryC<=&ae*N+Qd0N)(ESnDVN^Fs>vdGKjY0`SdBZnn$$i7z%AzN~j9e zp8A#FRN?n=C4zFXO3_2%CVFQWp%pv@W}sGe)e<815t^npMD(*nNLNooAJM(*yq$&z zB>SZkyQ$e(Td3LBW7khm_=PS^;l)y=K9WdbQ06MG1+GTcu7Y#slVn8no8MIhjx~}i zVlH_na#r=XB6lEnre`*}@lEndZd9bU-mY;E7izmH?c%H>^1Y_494i8JaGvk6i|bg$ z9o)q_$0Ij3@e-#^7OWF;2GZ{a zA^!5;JR`&|wmwniBE@q;{KURBTP2>yhIjkP?wiRt%WsXwgZ-i1uIunLPEtG^j^ljm z6`t61FMo}AFu+DSv00A$Nt$p@?FWnw<1C90@iuus&XHhfCll;tHqLE^40dQoHqCLs G^!NjafN+Qa literal 0 HcmV?d00001 diff --git a/04_quicksort/gambas/05_quicksort/.lock b/04_quicksort/gambas/05_quicksort/.lock new file mode 100644 index 0000000..e69de29 diff --git a/04_quicksort/gambas/05_quicksort/.project b/04_quicksort/gambas/05_quicksort/.project new file mode 100644 index 0000000..e19a56a --- /dev/null +++ b/04_quicksort/gambas/05_quicksort/.project @@ -0,0 +1,7 @@ +# Gambas Project File 3.0 +# Compiled with Gambas 3.5.4 +Title=05_quicksort +Startup=quicksort +Version=0.0.1 +TabSize=2 +Packager=1 diff --git a/04_quicksort/gambas/05_quicksort/.src/quicksort.module b/04_quicksort/gambas/05_quicksort/.src/quicksort.module new file mode 100644 index 0000000..b2bca85 --- /dev/null +++ b/04_quicksort/gambas/05_quicksort/.src/quicksort.module @@ -0,0 +1,39 @@ +' Gambas module file + +Function quicksort(myarray As Float[]) As Float[] + Dim pivot As Float + Dim i As Integer + Dim less, greater, r As New Float[] + If myarray.Length < 2 Then + Return myarray + Else + pivot = myarray[0] + For i = 1 To myarray.Length - 1 + If myarray[i] <= pivot Then + less.add(myarray[i]) + Else + greater.add(myarray[i]) + End If + Next + + Endif + r.Insert(quicksort(less)) + r.Add(pivot) + r.Insert(quicksort(greater)) + Return r +End + + +Public Sub Main() +Dim myarray As Float[] +Dim element As Float +Dim x As Integer + +myarray = [10, 5, 2, 3] +myarray = quicksort(myarray) + +For Each element In myarray + Print element + Next + +End diff --git a/04_quicksort/gambas/05_quicksort/.startup b/04_quicksort/gambas/05_quicksort/.startup new file mode 100644 index 0000000..50abe05 --- /dev/null +++ b/04_quicksort/gambas/05_quicksort/.startup @@ -0,0 +1,7 @@ +quicksort +05_quicksort +0 +0 +0.0.1 + +