blob: 54b5e312f650f5cf9e365b4f766d08b43a680e6f [file] [log] [blame]
Pau Espin Pedrol54681c32020-01-23 21:59:23 +01001*** testRlcMacDownlink ***
Holger Hans Peter Freytherdfe17d72013-08-03 14:59:38 +02002 DOWNLINK
Pau Espin Pedrol87bfbe42020-01-23 23:51:34 +01003vector1 = 4e082500e3f1a81d080820800b2b2b2b2b2b2b2b2b2b2b
Holger Hans Peter Freythere13298d2013-07-28 16:45:54 +02004=========Start DECODE===========
Pau Espin Pedrol5e300ce2020-02-03 17:18:03 +01005+++++++++Finish DECODE (0)++++++++++
Holger Hans Peter Freythere13298d2013-07-28 16:45:54 +02006=========Start ENCODE=============
Pau Espin Pedrol5e300ce2020-02-03 17:18:03 +01007+++++++++Finish ENCODE (0)+++++++++++
Pau Espin Pedrol87bfbe42020-01-23 23:51:34 +01008vector1 = 4e 08 25 00 e3 f1 a8 1d 08 08 20 80 0b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b
9vector2 = 4e 08 25 00 e3 f1 a8 1d 08 08 20 80 0b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b
Holger Hans Peter Freythere13298d2013-07-28 16:45:54 +020010vector1 == vector2 : TRUE
Pau Espin Pedrol87bfbe42020-01-23 23:51:34 +010011vector1 = 48282407a6a07422720100032b2b2b2b2b2b2b2b2b2b2b
Holger Hans Peter Freythere13298d2013-07-28 16:45:54 +020012=========Start DECODE===========
Pau Espin Pedrol5e300ce2020-02-03 17:18:03 +010013+++++++++Finish DECODE (0)++++++++++
Holger Hans Peter Freythere13298d2013-07-28 16:45:54 +020014=========Start ENCODE=============
Pau Espin Pedrol5e300ce2020-02-03 17:18:03 +010015+++++++++Finish ENCODE (0)+++++++++++
Pau Espin Pedrol87bfbe42020-01-23 23:51:34 +010016vector1 = 48 28 24 07 a6 a0 74 22 72 01 00 03 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b
17vector2 = 48 28 24 07 a6 a0 74 22 72 01 00 03 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b
Holger Hans Peter Freythere13298d2013-07-28 16:45:54 +020018vector1 == vector2 : TRUE
Pau Espin Pedrol87bfbe42020-01-23 23:51:34 +010019vector1 = 47240c00400000000000000079eb2ac9402b2b2b2b2b2b
Holger Hans Peter Freythere13298d2013-07-28 16:45:54 +020020=========Start DECODE===========
Pau Espin Pedrol5e300ce2020-02-03 17:18:03 +010021+++++++++Finish DECODE (0)++++++++++
Holger Hans Peter Freythere13298d2013-07-28 16:45:54 +020022=========Start ENCODE=============
Pau Espin Pedrol5e300ce2020-02-03 17:18:03 +010023+++++++++Finish ENCODE (0)+++++++++++
Pau Espin Pedrol87bfbe42020-01-23 23:51:34 +010024vector1 = 47 24 0c 00 40 00 00 00 00 00 00 00 79 eb 2a c9 40 2b 2b 2b 2b 2b 2b
25vector2 = 47 24 0c 00 40 00 00 00 00 00 00 00 79 eb 2a c9 40 2b 2b 2b 2b 2b 2b
Holger Hans Peter Freythere13298d2013-07-28 16:45:54 +020026vector1 == vector2 : TRUE
Pau Espin Pedrol87bfbe42020-01-23 23:51:34 +010027vector1 = 47283c367513ba333004242b2b2b2b2b2b2b2b2b2b2b2b
Holger Hans Peter Freythere13298d2013-07-28 16:45:54 +020028=========Start DECODE===========
Pau Espin Pedrol5e300ce2020-02-03 17:18:03 +010029+++++++++Finish DECODE (0)++++++++++
Holger Hans Peter Freythere13298d2013-07-28 16:45:54 +020030=========Start ENCODE=============
Pau Espin Pedrol5e300ce2020-02-03 17:18:03 +010031+++++++++Finish ENCODE (0)+++++++++++
Pau Espin Pedrol87bfbe42020-01-23 23:51:34 +010032vector1 = 47 28 3c 36 75 13 ba 33 30 04 24 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b
33vector2 = 47 28 3c 36 75 13 ba 33 30 04 24 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b
Holger Hans Peter Freythere13298d2013-07-28 16:45:54 +020034vector1 == vector2 : TRUE
Pau Espin Pedrol87bfbe42020-01-23 23:51:34 +010035vector1 = 400820001a3904df0680efb3300b2b2b2b2b2b2b2b2b2b
Saurabh Sharanbacb65b2016-03-10 17:24:49 +053036=========Start DECODE===========
Pau Espin Pedrol5e300ce2020-02-03 17:18:03 +010037+++++++++Finish DECODE (0)++++++++++
Saurabh Sharanbacb65b2016-03-10 17:24:49 +053038=========Start ENCODE=============
Pau Espin Pedrol5e300ce2020-02-03 17:18:03 +010039+++++++++Finish ENCODE (0)+++++++++++
Pau Espin Pedrol87bfbe42020-01-23 23:51:34 +010040vector1 = 40 08 20 00 1a 39 04 df 06 80 ef b3 30 0b 2b 2b 2b 2b 2b 2b 2b 2b 2b
41vector2 = 40 08 20 00 1a 39 04 df 06 80 ef b3 30 0b 2b 2b 2b 2b 2b 2b 2b 2b 2b
Saurabh Sharanbacb65b2016-03-10 17:24:49 +053042vector1 == vector2 : TRUE
Pau Espin Pedrol87bfbe42020-01-23 23:51:34 +010043vector1 = 40284f0000001009810c826f4406809dcecb2b2b2b2b2b
Saurabh Sharan2b09c392016-03-16 19:17:32 +053044=========Start DECODE===========
Pau Espin Pedrol5e300ce2020-02-03 17:18:03 +010045+++++++++Finish DECODE (0)++++++++++
Saurabh Sharan2b09c392016-03-16 19:17:32 +053046=========Start ENCODE=============
Pau Espin Pedrol5e300ce2020-02-03 17:18:03 +010047+++++++++Finish ENCODE (0)+++++++++++
Pau Espin Pedrol87bfbe42020-01-23 23:51:34 +010048vector1 = 40 28 4f 00 00 00 10 09 81 0c 82 6f 44 06 80 9d ce cb 2b 2b 2b 2b 2b
49vector2 = 40 28 4f 00 00 00 10 09 81 0c 82 6f 44 06 80 9d ce cb 2b 2b 2b 2b 2b
Saurabh Sharan2b09c392016-03-16 19:17:32 +053050vector1 == vector2 : TRUE
Pau Espin Pedrol87bfbe42020-01-23 23:51:34 +010051vector1 = 4024030f2f0000000087b0042b2b2b2b2b2b2b2b2b2b2b
Saurabh Sharanbacb65b2016-03-10 17:24:49 +053052=========Start DECODE===========
Pau Espin Pedrol5e300ce2020-02-03 17:18:03 +010053+++++++++Finish DECODE (0)++++++++++
Saurabh Sharanbacb65b2016-03-10 17:24:49 +053054=========Start ENCODE=============
Pau Espin Pedrol5e300ce2020-02-03 17:18:03 +010055+++++++++Finish ENCODE (0)+++++++++++
Pau Espin Pedrol87bfbe42020-01-23 23:51:34 +010056vector1 = 40 24 03 0f 2f 00 00 00 00 87 b0 04 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b
57vector2 = 40 24 03 0f 2f 00 00 00 00 87 b0 04 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b
Saurabh Sharanbacb65b2016-03-10 17:24:49 +053058vector1 == vector2 : TRUE
Pau Espin Pedrol87bfbe42020-01-23 23:51:34 +010059vector1 = 4913e00850884013a8048b2b2b2b2b2b2b2b2b2b2b2b2b
Pau Espin Pedrol5cb002f2020-01-23 23:45:17 +010060=========Start DECODE===========
Vadim Yanitskiy5574a582020-02-11 05:39:06 +070061+++++++++Finish DECODE (-8)++++++++++
Pau Espin Pedrol5cb002f2020-01-23 23:45:17 +010062=========Start ENCODE=============
Pau Espin Pedrol5e300ce2020-02-03 17:18:03 +010063+++++++++Finish ENCODE (0)+++++++++++
Pau Espin Pedrol87bfbe42020-01-23 23:51:34 +010064vector1 = 49 13 e0 08 50 88 40 13 a8 04 8b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b
Vadim Yanitskiy5574a582020-02-11 05:39:06 +070065vector2 = 49 13 00 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b
Pau Espin Pedrol5cb002f2020-01-23 23:45:17 +010066vector1 == vector2 : FALSE
Pau Espin Pedrol87bfbe42020-01-23 23:51:34 +010067vector1 = 412430007fffffffffffffffefd19c7ba12b2b2b2b2b2b
Pau Espin Pedrol5cb002f2020-01-23 23:45:17 +010068=========Start DECODE===========
Pau Espin Pedrol5e300ce2020-02-03 17:18:03 +010069+++++++++Finish DECODE (0)++++++++++
Pau Espin Pedrol5cb002f2020-01-23 23:45:17 +010070=========Start ENCODE=============
Pau Espin Pedrol5e300ce2020-02-03 17:18:03 +010071+++++++++Finish ENCODE (0)+++++++++++
Pau Espin Pedrol87bfbe42020-01-23 23:51:34 +010072vector1 = 41 24 30 00 7f ff ff ff ff ff ff ff ef d1 9c 7b a1 2b 2b 2b 2b 2b 2b
73vector2 = 41 24 30 00 7f ff ff ff ff ff ff ff ef d1 9c 7b a1 2b 2b 2b 2b 2b 2b
Pau Espin Pedrol5cb002f2020-01-23 23:45:17 +010074vector1 == vector2 : TRUE
75vector1 = 41942b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b
76=========Start DECODE===========
Pau Espin Pedrol5e300ce2020-02-03 17:18:03 +010077+++++++++Finish DECODE (0)++++++++++
Pau Espin Pedrol5cb002f2020-01-23 23:45:17 +010078=========Start ENCODE=============
Pau Espin Pedrol5e300ce2020-02-03 17:18:03 +010079+++++++++Finish ENCODE (0)+++++++++++
Pau Espin Pedrol87bfbe42020-01-23 23:51:34 +010080vector1 = 41 94 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b
81vector2 = 41 94 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b
Pau Espin Pedrol5cb002f2020-01-23 23:45:17 +010082vector1 == vector2 : TRUE
Pau Espin Pedrol259a6942020-11-23 17:57:35 +010083vector1 = 40883c1493120000000012002b2b2b2b2b2b2b2b2b2b2b
84=========Start DECODE===========
85+++++++++Finish DECODE (0)++++++++++
86=========Start ENCODE=============
87+++++++++Finish ENCODE (0)+++++++++++
88vector1 = 40 88 3c 14 93 12 00 00 00 00 12 00 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b
89vector2 = 40 88 3c 14 93 12 00 00 00 00 12 01 95 95 95 95 95 95 95 95 95 95 95
90vector1 == vector2 : FALSE
Pau Espin Pedrol54681c32020-01-23 21:59:23 +010091*** testRlcMacUplink ***
Holger Hans Peter Freytherdfe17d72013-08-03 14:59:38 +020092 UPLINK
Pau Espin Pedrol87bfbe42020-01-23 23:51:34 +010093vector1 = 400e1e61d11d2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b
Holger Hans Peter Freythere13298d2013-07-28 16:45:54 +020094=========Start DECODE===========
Pau Espin Pedrol5e300ce2020-02-03 17:18:03 +010095+++++++++Finish DECODE (0)++++++++++
Holger Hans Peter Freythere13298d2013-07-28 16:45:54 +020096=========Start ENCODE=============
Pau Espin Pedrol5e300ce2020-02-03 17:18:03 +010097+++++++++Finish ENCODE (0)+++++++++++
Pau Espin Pedrol87bfbe42020-01-23 23:51:34 +010098vector1 = 40 0e 1e 61 d1 1d 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b
99vector2 = 40 0e 1e 61 d1 1d 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b
Holger Hans Peter Freythere13298d2013-07-28 16:45:54 +0200100vector1 == vector2 : TRUE
Pau Espin Pedrol87bfbe42020-01-23 23:51:34 +0100101vector1 = 400b8020000000000000002480e0032b2b2b2b2b2b2b2b
Holger Hans Peter Freythere13298d2013-07-28 16:45:54 +0200102=========Start DECODE===========
Pau Espin Pedrol5e300ce2020-02-03 17:18:03 +0100103+++++++++Finish DECODE (0)++++++++++
Holger Hans Peter Freythere13298d2013-07-28 16:45:54 +0200104=========Start ENCODE=============
Pau Espin Pedrol5e300ce2020-02-03 17:18:03 +0100105+++++++++Finish ENCODE (0)+++++++++++
Pau Espin Pedrol87bfbe42020-01-23 23:51:34 +0100106vector1 = 40 0b 80 20 00 00 00 00 00 00 00 24 80 e0 03 2b 2b 2b 2b 2b 2b 2b 2b
107vector2 = 40 0b 80 20 00 00 00 00 00 00 00 24 80 e0 03 2b 2b 2b 2b 2b 2b 2b 2b
Holger Hans Peter Freythere13298d2013-07-28 16:45:54 +0200108vector1 == vector2 : TRUE
Pau Espin Pedrol87bfbe42020-01-23 23:51:34 +0100109vector1 = 4016713dc094270ca2ae57ef909006aa0fc0001f80222b
Holger Hans Peter Freythere13298d2013-07-28 16:45:54 +0200110=========Start DECODE===========
Pau Espin Pedrol5e300ce2020-02-03 17:18:03 +0100111+++++++++Finish DECODE (0)++++++++++
Holger Hans Peter Freythere13298d2013-07-28 16:45:54 +0200112=========Start ENCODE=============
Vadim Yanitskiy29aeb902020-03-06 08:53:36 +0700113+++++++++Finish ENCODE (-5)+++++++++++
Pau Espin Pedrol87bfbe42020-01-23 23:51:34 +0100114vector1 = 40 16 71 3d c0 94 27 0c a2 ae 57 ef 90 90 06 aa 0f c0 00 1f 80 22 2b
Vincent Helfre1145fd22020-01-28 18:27:49 +0100115vector2 = 40 16 71 3d c0 94 27 48 a2 ae 57 ef 90 90 06 aa 00 00 1f 80 00 3f 00
116vector1 == vector2 : FALSE
Vadim Yanitskiyf22163b2020-03-06 06:51:48 +0700117vector1 = 401673c87f24af2632b25964200600000091000b780080
118=========Start DECODE===========
Vadim Yanitskiy2679ec02020-03-06 07:21:32 +0700119+++++++++Finish DECODE (0)++++++++++
Vadim Yanitskiyf22163b2020-03-06 06:51:48 +0700120=========Start ENCODE=============
121+++++++++Finish ENCODE (0)+++++++++++
122vector1 = 40 16 73 c8 7f 24 af 26 32 b2 59 64 20 06 00 00 00 91 00 0b 78 00 80
Vincent Helfre1145fd22020-01-28 18:27:49 +0100123vector2 = 40 16 73 c8 7f 24 af 0e 32 b2 59 64 20 06 00 00 24 40 02 de 00 20 2b
Vadim Yanitskiyf22163b2020-03-06 06:51:48 +0700124vector1 == vector2 : FALSE
Pau Espin Pedrol87bfbe42020-01-23 23:51:34 +0100125vector1 = 40200ffc0021ec010b2b2b2b2b2b2b2b2b2b2b2b2b2b2b
Saurabh Sharanbacb65b2016-03-10 17:24:49 +0530126=========Start DECODE===========
Pau Espin Pedrol5e300ce2020-02-03 17:18:03 +0100127+++++++++Finish DECODE (0)++++++++++
Saurabh Sharanbacb65b2016-03-10 17:24:49 +0530128=========Start ENCODE=============
Pau Espin Pedrol5e300ce2020-02-03 17:18:03 +0100129+++++++++Finish ENCODE (0)+++++++++++
Pau Espin Pedrol87bfbe42020-01-23 23:51:34 +0100130vector1 = 40 20 0f fc 00 21 ec 01 0b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b
131vector2 = 40 20 0f fc 00 21 ec 01 0b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b
Saurabh Sharanbacb65b2016-03-10 17:24:49 +0530132vector1 == vector2 : TRUE
Pau Espin Pedrol87bfbe42020-01-23 23:51:34 +0100133vector1 = 400a9020000000000000003010012a0800132b2b2b2b2b
Saurabh Sharanbacb65b2016-03-10 17:24:49 +0530134=========Start DECODE===========
Pau Espin Pedrol5e300ce2020-02-03 17:18:03 +0100135+++++++++Finish DECODE (0)++++++++++
Saurabh Sharanbacb65b2016-03-10 17:24:49 +0530136=========Start ENCODE=============
Pau Espin Pedrol5e300ce2020-02-03 17:18:03 +0100137+++++++++Finish ENCODE (0)+++++++++++
Pau Espin Pedrol87bfbe42020-01-23 23:51:34 +0100138vector1 = 40 0a 90 20 00 00 00 00 00 00 00 30 10 01 2a 08 00 13 2b 2b 2b 2b 2b
139vector2 = 40 0a 90 20 00 00 00 00 00 00 00 30 10 01 2a 08 00 13 2b 2b 2b 2b 2b
Saurabh Sharanbacb65b2016-03-10 17:24:49 +0530140vector1 == vector2 : TRUE
Vadim Yanitskiy809dc8b2021-01-28 20:31:42 +0100141vector1 = 4117ea1b903eaeb2686564b2330820078000102b2b2b2b
142=========Start DECODE===========
143+++++++++Finish DECODE (0)++++++++++
144=========Start ENCODE=============
145+++++++++Finish ENCODE (0)+++++++++++
146vector1 = 41 17 ea 1b 90 3e ae b2 68 65 64 b2 33 08 20 07 80 00 10 2b 2b 2b 2b
147vector2 = 41 17 ea 1b 90 3e af 22 68 65 64 b2 33 00 00 00 00 82 00 78 00 01 01
148vector1 == vector2 : FALSE
149vector1 = 40167e49f7f8ef2632b2596620060000806d00541c0080
150=========Start DECODE===========
151+++++++++Finish DECODE (0)++++++++++
152=========Start ENCODE=============
153+++++++++Finish ENCODE (0)+++++++++++
154vector1 = 40 16 7e 49 f7 f8 ef 26 32 b2 59 66 20 06 00 00 80 6d 00 54 1c 00 80
155vector2 = 40 16 7e 49 f7 f8 ef 0e 32 b2 59 66 20 06 00 00 9b 40 15 07 00 20 2b
156vector1 == vector2 : FALSE
157vector1 = 4017787174d92eba686564b2ccc30800a000040b2b2b2b
158=========Start DECODE===========
159+++++++++Finish DECODE (0)++++++++++
160=========Start ENCODE=============
161+++++++++Finish ENCODE (0)+++++++++++
162vector1 = 40 17 78 71 74 d9 2e ba 68 65 64 b2 cc c3 08 00 a0 00 04 0b 2b 2b 2b
163vector2 = 40 17 78 71 74 d9 2f 2a 68 65 64 b2 cc c0 00 00 00 30 80 0a 00 00 40
164vector1 == vector2 : FALSE
165vector1 = 4017e5b2cd5a2eca68655e44aec84880139300412b2b2b
166=========Start DECODE===========
167+++++++++Finish DECODE (-5)++++++++++
168=========Start ENCODE=============
169+++++++++Finish ENCODE (-5)+++++++++++
170vector1 = 40 17 e5 b2 cd 5a 2e ca 68 65 5e 44 ae c8 48 80 13 93 00 41 2b 2b 2b
171vector2 = 40 17 e5 b2 cd 5a 2f 4a 68 65 5e 44 ae c8 00 00 00 00 48 80 13 93 00
172vector1 == vector2 : FALSE
Pau Espin Pedrol54681c32020-01-23 21:59:23 +0100173*** testCsnLeftAlignedVarBmpBounds ***
Pau Espin Pedrolcdbc5db2020-01-23 21:00:19 +0100174*** testRAcap ***
Vadim Yanitskiyb47e53b2020-02-20 04:33:50 +0700175=== Test decoding of MS RA Capability ===
Vadim Yanitskiy55f06c32020-02-18 05:45:15 +0700176GPRS multislot class = 3
Pau Espin Pedrol866bece2020-03-21 01:20:52 +0100177EGPRS multislot class = 3
Vadim Yanitskiyb47e53b2020-02-20 04:33:50 +0700178=== Test encoding of MS RA Capability ===
Pau Espin Pedrole50ce6e2020-03-23 18:49:16 +0100179encode_gsm_ra_cap() returns 0
Pau Espin Pedrol866bece2020-03-21 01:20:52 +0100180vector1 (len_ind=27) = 13 65 14 62 30 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Pau Espin Pedrole50ce6e2020-03-23 18:49:16 +0100181vector2 (len_ind=65) = 18 25 14 62 30 00 00 00 00 03 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b
Vadim Yanitskiyb47e53b2020-02-20 04:33:50 +0700182=== Test decoding of a malformed vector (short length indicator) ===
Vadim Yanitskiy55f06c32020-02-18 05:45:15 +0700183decode_gsm_ra_cap() returns -5
Pau Espin Pedrol866bece2020-03-21 01:20:52 +0100184*** testMalformedRAcap ***
185=== Test decoding of MS RA Capability ===
186decode_gsm_ra_cap() returns 0
Pau Espin Pedrolefad80b2020-03-23 14:35:26 +0100187*** testRAcap2 ***
188=== Test decoding of multi-band MS RA Capability ===
Pau Espin Pedrol7faa5da2020-03-21 00:13:33 +0100189decode_gsm_ra_cap() returns 0
190GPRS multislot class = 12
191EGPRS multislot class = 12
Vadim Yanitskiya2d972a2020-04-04 03:44:35 +0700192*** testEGPRSPktChReq ***
193decode_egprs_pkt_ch_req(0x2b5) returns 0
194 ==> One Phase Access
195decode_egprs_pkt_ch_req(0x14a) returns 0
196 ==> One Phase Access
197decode_egprs_pkt_ch_req(0x428) returns 0
198 ==> Short Access
199decode_egprs_pkt_ch_req(0x600) returns 0
200 ==> Two Phase Access
201decode_egprs_pkt_ch_req(0x61f) returns 0
202 ==> Two Phase Access
203decode_egprs_pkt_ch_req(0x675) returns 0
204 ==> Signalling
205decode_egprs_pkt_ch_req(0x671) returns 0
206 ==> Signalling
207decode_egprs_pkt_ch_req(0x6f9) returns 0
208 ==> Emergency call
209decode_egprs_pkt_ch_req(0x7ea) returns -8