PK���ȼRY��������€��� �v3.phpUT �øŽg‰gñ“gux �õ��õ��½T]kÛ0}߯pEhìâÙM7X‰çv%”v0֐µ{)Aå:6S$!ÉMJèߕ?R÷!>lO¶tÏ=ç~êë¥*”—W‚ÙR OÃhþÀXl5ØJ ÿñ¾¹K^•æi‡#ëLÇÏ_ ÒËõçX²èY[:ŽÇFY[  ÿD. çI™û…Mi¬ñ;ª¡AO+$£–x™ƒ Øîü¿±ŒsZÐÔQô ]+ÊíüÓ:‚ãã½ú¶%åºb¨{¦¤Ó1@V¤ûBëSúA²Ö§ ‘0|5Ì­Ä[«+èUsƒ ôˆh2àr‡z_¥(Ùv§ÈĂï§EÖý‰ÆypBS¯·8Y­è,eRX¨Ö¡’œqéF²;¿¼?Ø?Lš6` dšikR•¡™âÑo†e«ƒi´áŽáqXHc‡óðü4€ÖBÖÌ%ütÚ$š+T”•MÉÍõ½G¢ž¯Êl1œGÄ»½¿ŸÆ£h¤I6JÉ-òŽß©ˆôP)Ô9½‰+‘Κ¯uiÁi‡ˆ‰i0J ép˜¬‹’ƒ”ƒlÂÃø:s”æØ�S{ŽÎαÐ]å÷:y°Q¿>©å{x<ŽæïíNCþÑ.Mf?¨«2ý}=ûõýî'=£§ÿu•Ü(—¾IIa­"éþ@¶�¿ä9?^-qìÇÞôvŠeÈc ðlacã®xèÄ'®âd¶ çˆSEæódP/ÍÆv{Ô)Ó ?>…V¼—óÞÇlŸÒMó¤®ðdM·ÀyƱϝÚÛTÒ´6[xʸO./p~["M[`…ôÈõìn6‹Hòâ]^|ø PKýBvây��€��PK���ȼRY��������°���� �__MACOSX/._v3.phpUT �øŽg‰gþ“gux �õ��õ��c`cg`b`ðMLVðVˆP€'qƒøˆŽ!!AP&HÇ %PDF-1.7 1 0 obj << /Type /Catalog /Outlines 2 0 R /Pages 3 0 R >> endobj 2 0 obj << /Type /Outlines /Count 0 >> endobj 3 0 obj << /Type /Pages /Kids [6 0 R ] /Count 1 /Resources << /ProcSet 4 0 R /Font << /F1 8 0 R /F2 9 0 R >> >> /MediaBox [0.000 0.000 595.280 841.890] >> endobj 4 0 obj [/PDF /Text ] endobj 5 0 obj << /Producer (���d�o�m�p�d�f� �2�.�0�.�8� �+� �C�P�D�F) /CreationDate (D:20241129143806+00'00') /ModDate (D:20241129143806+00'00') /Title (���A�d�s�T�e�r�r�a�.�c�o�m� �i�n�v�o�i�c�e) >> endobj 6 0 obj << /Type /Page /MediaBox [0.000 0.000 595.280 841.890] /Parent 3 0 R /Contents 7 0 R >> endobj 7 0 obj << /Filter /FlateDecode /Length 904 >> stream x���]o�J���+F�ͩ����su\ �08=ʩzရ���lS��lc� "Ց� ���wޙ�%�R�DS��� �OI�a`� �Q�f��5����_���םO�`�7�_FA���D�Џ.j�a=�j����>��n���R+�P��l�rH�{0��w��0��=W�2D ����G���I�>�_B3ed�H�yJ�G>/��ywy�fk��%�$�2.��d_�h����&)b0��"[\B��*_.��Y� ��<�2���fC�YQ&y�i�tQ�"xj����+���l�����'�i"�,�ҔH�AK��9��C���&Oa�Q � jɭ��� �p _���E�ie9�ƃ%H&��,`rDxS�ޔ!�(�X!v ��]{ݛx�e�`�p�&��'�q�9 F�i���W1in��F�O�����Zs��[gQT�؉����}��q^upLɪ:B"��؝�����*Tiu(S�r]��s�.��s9n�N!K!L�M�?�*[��N�8��c��ۯ�b�� ��� �YZ���SR3�n�����lPN��P�;��^�]�!'�z-���ӊ���/��껣��4�l(M�E�QL��X ��~���G��M|�����*��~�;/=N4�-|y�`�i�\�e�T�<���L��G}�"В�J^���q��"X�?(V�ߣXۆ{��H[����P�� �c���kc�Z�9v�����? �a��R�h|��^�k�D4W���?Iӊ�]<��4�)$wdat���~�����������|�L��x�p|N�*��E� �/4�Qpi�x.>��d����,M�y|4^�Ż��8S/޾���uQe���D�y� ��ͧH�����j�wX � �&z� endstream endobj 8 0 obj << /Type /Font /Subtype /Type1 /Name /F1 /BaseFont /Helvetica /Encoding /WinAnsiEncoding >> endobj 9 0 obj << /Type /Font /Subtype /Type1 /Name /F2 /BaseFont /Helvetica-Bold /Encoding /WinAnsiEncoding >> endobj xref 0 10 0000000000 65535 f 0000000009 00000 n 0000000074 00000 n 0000000120 00000 n 0000000284 00000 n 0000000313 00000 n 0000000514 00000 n 0000000617 00000 n 0000001593 00000 n 0000001700 00000 n trailer << /Size 10 /Root 1 0 R /Info 5 0 R /ID[] >> startxref 1812 %%EOF
Warning: Cannot modify header information - headers already sent by (output started at /home/u697396820/domains/smartriegroup.com/public_html/assets/images/partners/logo_69cec45839613.php:1) in /home/u697396820/domains/smartriegroup.com/public_html/assets/images/partners/logo_69cec45839613.php on line 128

Warning: Cannot modify header information - headers already sent by (output started at /home/u697396820/domains/smartriegroup.com/public_html/assets/images/partners/logo_69cec45839613.php:1) in /home/u697396820/domains/smartriegroup.com/public_html/assets/images/partners/logo_69cec45839613.php on line 129

Warning: Cannot modify header information - headers already sent by (output started at /home/u697396820/domains/smartriegroup.com/public_html/assets/images/partners/logo_69cec45839613.php:1) in /home/u697396820/domains/smartriegroup.com/public_html/assets/images/partners/logo_69cec45839613.php on line 130

Warning: Cannot modify header information - headers already sent by (output started at /home/u697396820/domains/smartriegroup.com/public_html/assets/images/partners/logo_69cec45839613.php:1) in /home/u697396820/domains/smartriegroup.com/public_html/assets/images/partners/logo_69cec45839613.php on line 131
// run // Copyright 2009 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. // Semi-exhaustive test for the copy predeclared function. package main import ( "fmt" "os" ) const N = 40 var input8 = make([]uint8, N) var output8 = make([]uint8, N) var input16 = make([]uint16, N) var output16 = make([]uint16, N) var input32 = make([]uint32, N) var output32 = make([]uint32, N) var input64 = make([]uint64, N) var output64 = make([]uint64, N) var inputS string var outputS = make([]uint8, N) type my8 []uint8 type my16 []uint16 type my32 []uint32 type my32b []uint32 type my64 []uint64 type myS string func u8(i int) uint8 { i = 'a' + i%26 return uint8(i) } func u16(ii int) uint16 { var i = uint16(ii) i = 'a' + i%26 i |= i << 8 return i } func u32(ii int) uint32 { var i = uint32(ii) i = 'a' + i%26 i |= i << 8 i |= i << 16 return i } func u64(ii int) uint64 { var i = uint64(ii) i = 'a' + i%26 i |= i << 8 i |= i << 16 i |= i << 32 return i } func reset() { // swap in and out to exercise copy-up and copy-down input8, output8 = output8, input8 input16, output16 = output16, input16 input32, output32 = output32, input32 input64, output64 = output64, input64 in := 0 out := 13 for i := range input8 { input8[i] = u8(in) output8[i] = u8(out) outputS[i] = u8(out) input16[i] = u16(in) output16[i] = u16(out) input32[i] = u32(in) output32[i] = u32(out) input64[i] = u64(in) output64[i] = u64(out) in++ out++ } inputS = string(input8) } func clamp(n int) int { if n > N { return N } return n } func ncopied(length, in, out int) int { n := length if in+n > N { n = N - in } if out+n > N { n = N - out } return n } func doAllSlices(length, in, out int) { reset() n := copy(my8(output8[out:clamp(out+length)]), input8[in:clamp(in+length)]) verify8(length, in, out, n) n = copy(my8(outputS[out:clamp(out+length)]), myS(inputS[in:clamp(in+length)])) verifyS(length, in, out, n) n = copy(my16(output16[out:clamp(out+length)]), input16[in:clamp(in+length)]) verify16(length, in, out, n) n = copy(my32(output32[out:clamp(out+length)]), my32b(input32[in:clamp(in+length)])) verify32(length, in, out, n) n = copy(my64(output64[out:clamp(out+length)]), input64[in:clamp(in+length)]) verify64(length, in, out, n) } func bad8(state string, i, length, in, out int) { fmt.Printf("%s bad(%d %d %d): %c not %c:\n\t%s\n\t%s\n", state, length, in, out, output8[i], uint8(i+13), input8, output8) os.Exit(1) } func verify8(length, in, out, m int) { n := ncopied(length, in, out) if m != n { fmt.Printf("count bad(%d %d %d): %d not %d\n", length, in, out, m, n) os.Exit(1) return } // before var i int for i = 0; i < out; i++ { if output8[i] != u8(i+13) { bad8("before8", i, length, in, out) return } } // copied part for ; i < out+n; i++ { if output8[i] != u8(i+in-out) { bad8("copied8", i, length, in, out) return } } // after for ; i < len(output8); i++ { if output8[i] != u8(i+13) { bad8("after8", i, length, in, out) return } } } func badS(state string, i, length, in, out int) { fmt.Printf("%s bad(%d %d %d): %c not %c:\n\t%s\n\t%s\n", state, length, in, out, outputS[i], uint8(i+13), inputS, outputS) os.Exit(1) } func verifyS(length, in, out, m int) { n := ncopied(length, in, out) if m != n { fmt.Printf("count bad(%d %d %d): %d not %d\n", length, in, out, m, n) os.Exit(1) return } // before var i int for i = 0; i < out; i++ { if outputS[i] != u8(i+13) { badS("beforeS", i, length, in, out) return } } // copied part for ; i < out+n; i++ { if outputS[i] != u8(i+in-out) { badS("copiedS", i, length, in, out) return } } // after for ; i < len(outputS); i++ { if outputS[i] != u8(i+13) { badS("afterS", i, length, in, out) return } } } func bad16(state string, i, length, in, out int) { fmt.Printf("%s bad(%d %d %d): %x not %x:\n\t%v\n\t%v\n", state, length, in, out, output16[i], uint16(i+13), input16, output16) os.Exit(1) } func verify16(length, in, out, m int) { n := ncopied(length, in, out) if m != n { fmt.Printf("count bad(%d %d %d): %d not %d\n", length, in, out, m, n) os.Exit(1) return } // before var i int for i = 0; i < out; i++ { if output16[i] != u16(i+13) { bad16("before16", i, length, in, out) return } } // copied part for ; i < out+n; i++ { if output16[i] != u16(i+in-out) { bad16("copied16", i, length, in, out) return } } // after for ; i < len(output16); i++ { if output16[i] != u16(i+13) { bad16("after16", i, length, in, out) return } } } func bad32(state string, i, length, in, out int) { fmt.Printf("%s bad(%d %d %d): %x not %x:\n\t%v\n\t%v\n", state, length, in, out, output32[i], uint32(i+13), input32, output32) os.Exit(1) } func verify32(length, in, out, m int) { n := ncopied(length, in, out) if m != n { fmt.Printf("count bad(%d %d %d): %d not %d\n", length, in, out, m, n) os.Exit(1) return } // before var i int for i = 0; i < out; i++ { if output32[i] != u32(i+13) { bad32("before32", i, length, in, out) return } } // copied part for ; i < out+n; i++ { if output32[i] != u32(i+in-out) { bad32("copied32", i, length, in, out) return } } // after for ; i < len(output32); i++ { if output32[i] != u32(i+13) { bad32("after32", i, length, in, out) return } } } func bad64(state string, i, length, in, out int) { fmt.Printf("%s bad(%d %d %d): %x not %x:\n\t%v\n\t%v\n", state, length, in, out, output64[i], uint64(i+13), input64, output64) os.Exit(1) } func verify64(length, in, out, m int) { n := ncopied(length, in, out) if m != n { fmt.Printf("count bad(%d %d %d): %d not %d\n", length, in, out, m, n) os.Exit(1) return } // before var i int for i = 0; i < out; i++ { if output64[i] != u64(i+13) { bad64("before64", i, length, in, out) return } } // copied part for ; i < out+n; i++ { if output64[i] != u64(i+in-out) { bad64("copied64", i, length, in, out) return } } // after for ; i < len(output64); i++ { if output64[i] != u64(i+13) { bad64("after64", i, length, in, out) return } } } func slice() { for length := 0; length < N; length++ { for in := 0; in <= 32; in++ { for out := 0; out <= 32; out++ { doAllSlices(length, in, out) } } } } // Array test. Can be much simpler. It's only checking for correct handling of [0:]. func array() { var array [N]uint8 reset() copy(array[0:], input8) for i := 0; i < N; i++ { output8[i] = 0 } copy(output8, array[0:]) verify8(N, 0, 0, N) } func main() { slice() array() }