2362:
Naming indexes in slicing and subscripting is similar to naming parameters in function calls instead of relying on a fixed sequence of parameters. One advantage of naming indexes in slicing is that the programmer does not have to remember the sequence of
Indexes, in a multidimensional array. A deeper
100:
Reducing the range of any index to a single value effectively eliminates that index. This feature can be used, for example, to extract one-dimensional slices (vectors: in 3D, rows, columns, and tubes) or two-dimensional slices (rectangular matrices) from a three-dimensional array. However, since the
2358:
Index I := 1..5 { Definition of a numerical Index } Index J := { Definition of a text-valued Index } Variable X := Array(I, J, , , ....]) { Definition of a 2D value } X -> 20 { Subscript to obtain a single value } X -> Array(J, ) { Slice out a 1D array. } X -> Array(I,
2398:
A % The last element of A A % All elements of A A] % All even elements of A A] % All odd elements of A A] % All even elements in the reversed order A, ]] % Elements 0-3 and 10-14
84:
For "one-dimensional" (single-indexed) arrays – vectors, sequence, strings etc. – the most common slicing operation is extraction of zero or more consecutive elements. Thus, if we have a vector containing elements (2, 5, 7, 3, 8, 6, 4, 1), and we want to create an
147:
do), then negative indices for the bounds of the slice for a given dimension are sometimes used to specify an offset from the end of the array in that dimension. In 1-based schemes, -1 generally would indicate the second-to-last item, while in a 0-based system, it would mean the very last item.
738:
as their primary interface and programming language. This version of BASIC used slicing for most string manipulation operations. One oddity of the language was that it allowed round or square braces interchangeably, and which was used in practice was typically a function of the
2354:
Each dimension of an array value in
Analytica is identified by an Index variable. When slicing or subscripting, the syntax identifies the dimension(s) over which you are slicing or subscripting by naming the dimension. Such as:
824:. This style of manipulation generally offers advantages in terms of memory use, and was often chosen on systems that shipped with small amounts of memory. Only Sinclair's dialect differed in any meaningful way, using the
112: – a record that contains the address of the first array element, and then the range of each index and the corresponding coefficient in the indexing formula. This technique also allows immediate array
2134:
Note that Python allows negative list indices. The index -1 represents the last element, -2 the penultimate element, etc. Python also allows a step property by appending an extra colon and a value. For example:
3277:
slicing never produces a temporary, and thus never needs to allocate memory. Assignments are required to be either non-overlapping or perfectly overlapping, otherwise the result is undefined.
615:
Both bounds are inclusive and can be omitted, in which case they default to the declared array bounds. Neither the stride facility, nor diagonal slice aliases are part of the revised report.
275:
variables to map specific elements in a "base array" onto elements of the "defined array". iSUBs can define rows, columns, diagonals, or many-to-one mappings. The following example defines
2036:
Perl supports negative list indices. The -1 index is the last element, -2 the penultimate element, etc. In addition, Perl supports slicing based on expressions, for example:
168:(ALGOL 58) in that the syntax allowed one or more indices of an array element (or, for that matter, of a procedure call) to be omitted when used as an actual parameter.
2423:
I = array_sort(A); % Obtain a list of sort indices B = A; % B is the sorted version of A C = A; % Same as above but more concise.
2405:
A % The last row of A A, ] % 2d array using rows 1-5 and columns 2-7 A, ] % Same as above except the rows are reversed
308:, of an array can be referred to by using asterisk as the subscript for one or more dimensions. The following code sets all the elements in the first column of
2179:) was introduced in the second half of the 1990s, as a result of requests put forward by scientific users in the Python "matrix-SIG" (special interest group).
984:
and its BASIC was used as the pattern. Through the late 1970s the two styles were both widely used, but by the early 1980s the DEC-style functions were the
3408:
164:(1957), more as a consequence of non-existent type and range checking than by design. The concept was also alluded to in the preliminary report for the
101:
range can be specified at run-time, type-checked languages may require an explicit (compile-time) notation to actually eliminate the trivial indices.
3274:
the second parameter is the length (number of elements in the slice) instead of the upper bound, in order to be consistent with standard C libraries;
3120:
Go supports Python-style syntax for slicing (except negative indices are not supported). Arrays and slices can be sliced. If you have a slice
2363:
advantage is that expressions generalize automatically and safely without requiring a rewrite when the number of dimensions of X changes.
2222:
Both bounds are inclusive and can be omitted, in which case they default to the declared array bounds. Stride defaults to 1. Example:
178:(1957) had very flexible multi-dimensional array slicing, which contributed much to the language's expressive power and popularity.
72:, an array slice can be made out of non-consecutive elements. Also depending on the language, the elements of the new array may be
329:
The
Fortran 66 programmers were only able to take advantage of slicing matrices by row, and then only when passing that row to a
3573:
960:
While this style of access offered a number of advantages, especially for the small machines of the era, sometime after 1970
812:
emerged in the mid-1970s, HP was often used as the pattern for their BASIC dialects as well. Notable examples include 1977's
2072:
961:
580:
224:
144:
3283:
2857:
2359:) { Slice out a 1D array over the other dimension. } X {Slice out first four elements over I with all elements over J}
212:
192:
104:
General array slicing can be implemented (whether or not built into the language) by referencing every array through a
208:
129:
2762:
2755:
2611:
1644:
724:
188:
140:
3114:
204:
46:
2607:
584:
244:
240:
175:
117:
20:
575:
in FORTRAN 66 hence the length of the slice must also be passed as an argument - or some other means - to the
3212:
Slices in Go are reference types, which means that different slices may refer to the same underlying array.
2428:
1335:
1331:
1324:
1320:
196:
3181:
then the first 3 elements, middle 3 elements, last 3 elements, and a copy of the entire slice would be:
2572:
Unlike Python, D slice bounds don't saturate, so code equivalent to this Python code is an error in D:
881:
standard, using the colon as the separator and thus differentiating between slicing and array access:
3536:
3451:
2348:
2183:
735:
86:
73:
69:
62:
58:
27:
3505:
1659:
to another subroutine, the length would also be passed transparently to the subroutine as a kind of
1541:
to another subroutine, the length would also be passed transparently to the subroutine as a kind of
3524:
3441:
2958:
232:
171:
3469:
740:
139:
If the array abstraction does not support true negative indices (as for example the arrays of
598:
Algol68 final report contains an early example of slicing, slices are specified in the form:
3544:
3459:
2374:
Array slicing was introduced in version 1.0. Earlier versions did not support this feature.
279:
as a one-dimensional slice consisting of the diagonal elements of the two-dimensional array
3568:
1346:
will be dropped (unless drop = FALSE). Dimension names (where present) will be preserved.
977:
35:
3540:
3455:
1199:% 2x4 two-dimensional array using the 'end' keyword; works with GNU Octave 3.2.4
821:
3562:
2603:
2596:
2187:
2002:
as above, then the first 3 elements, middle 3 elements and last 3 elements would be:
1930:
1922:
1485:
813:
809:
187:
Array slicing facilities have been incorporated in several modern languages, such as
184:(1968) introduced comprehensive multi-dimension array slicing and trimming features.
2182:
Slice semantics potentially differ per object; new semantics can be introduced when
19:
This article is about the data structure operation. For other uses of slicing, see
3289:
1342:
for each dimension, regardless of the previous indices. Dimensions with length of
2964:
Arrays are zero-based in PowerShell and can be defined using the comma operator:
1926:
1913:
it places no special meaning on negative indices. In the example above the term
817:
805:
572:
105:
2094:
Then it is possible to slice by using a notation similar to element retrieval:
312:
to zero. One or more subscripts can be specified by asterisks in an expression.
878:
330:
236:
128:
parameters. For languages that allow arbitrary lower bounds for indices, like
3473:
3464:
3429:
57:
o", extracting a row or column from a two-dimensional array, or extracting a
3217:
2876:
then the first 3 elements, middle 3 elements, and last 3 elements would be:
804:
The HP systems were widely used in the early 1970s, especially in technical
113:
39:
120:, where the indices always start at zero, the dope vector of an array with
3440:(6). Institute of Electrical and Electronics Engineers (IEEE): 1511–1526.
3223:
Cilk Plus supports syntax for array slicing as an extension to C and C++.
2389:
Similarly, B may be assigned to an array of the last 5 elements of A via:
3548:
592:
181:
165:
157:
2408:
Array indices can also be arrays of integers. For example, suppose that
2199:
1652:
1478:
731:
323:
200:
161:
2765:
are always one-based, thus the indices of a new slice will begin with
2482:. The first index of the slice is inclusive, the second is exclusive.
1929:(since there was no year zero, the year number 0 actually refers to 1
1338:
are always one-based, thus the indices of a new slice will begin with
3293:
2368:
993:
981:
228:
216:
156:
The concept of slicing was surely known even before the invention of
2544:. To create a copy of the array data, instead of only an alias, do:
3446:
85:
array slice from the 3rd to the 6th items, we get (7, 3, 8, 6). In
45:
Common examples of array slicing are extracting a substring from a
2901:
Cobra also supports slicing-style syntax for 'numeric for loops':
2191:
89:
that use a 0-based indexing scheme, the slice would be from index
1911:
type
History_Data_Array is array (-6000 .. 2010) of History_Data;
2194:
arrays, by contrast, are views onto the same underlying buffer.
1938:
875:
808:
and many small industrial and scientific settings. As the first
257:
220:
3270:
Cilk Plus's array slicing differs from
Fortran's in two ways:
2637:// return the first two elements of a: the zero can be omitted
2420:. A practical example of this is a sorting operation such as:
2383:
Then an array B of first 5 elements of A may be created using
2824:# $ B contains the first and second element of $ A, i.e. 3, 5
2186:
the indexing operator. With Python standard lists (which are
2170:# from index 1 until index 5 and getting every second element
1417:# 3x4 two-dimensional array along first and second dimensions
1142:% 3x2 two-dimensional array along first and second dimensions
1070:% 3x4 two-dimensional array along first and second dimensions
1484:
The
Fortran 77 standard introduced the ability to slice and
38:
and packages them as another array, possibly in a different
34:
is an operation that extracts a subset of elements from an
3409:
Comparison of programming languages (array) § Slicing
2863:
Cobra supports Python-style slicing. If you have a list
116:, index reversal, subsampling, etc. For languages like
76:(i.e., share memory with) those of the original array.
2843:# Erase the third and fifth elements of $ A, print $ A
2518:
D array slices are aliased to the original array, so:
2416:
is equivalent to an array of the first 10 elements of
2402:
Slicing of higher-dimensional arrays works similarly:
964:
introduced their own variation of BASIC that used the
160:. Slicing as a language feature probably started with
3388:# get the submatrix spanning rows 1,2 and columns 2,3
2721:// take a slice with coordinates 2 and 3 (returns 13)
2161:# starting at index 0 and getting every third element
2676:// assign a multidimensional array to the variable a
2117:# from index 0 (inclusive) until index 3 (exclusive)
251:
Timeline of slicing in various programming languages
3089:# Return the content of the array in reverse order:
973:
969:
965:
825:
621:real a := ((1, 1, 1), (2, 4, 8), (3, 9, 27));
288:
DECLARE X(5,5); DECLARE Y(5) DEFINED(X(1SUB,1SUB));
3047:# Take a slice out of it using the range operator:
1761:will result in an Array with the base index of 2.
1651:Ada 83 supports slices for all array types. Like
1435:# 3x2x1 cubic array subset (preserved dimensions)
2795:# $ A is an array with the values 3, 5, 7, 9, 11
2664:// replace the first and the fourth element of a
2206:In Fortran 90, slices are specified in the form
263:PL/I provides two facilities for array slicing.
2652:// return the first and the fourth element of a
1256:% single-dimension array along second dimension
874:Slicing was also selected as the basis for the
625:real c = ((1, 1, 1), (2, 4, 8), (3, 9, 27));
1456:# single-dimension array along first dimension
602:¢ for computers with extended character sets ¢
3523:Millman, K. Jarrod; Aivazis, Michael (2011).
611:# FOR COMPUTERS WITH ONLY 6 BIT CHARACTERS. #
8:
1909:As Ada supports true negative indices as in
3428:Zhang, Zemin; Aeron, Shuchin (2017-03-15).
828:keyword instead of a comma-separated list:
734:systems, introduced in November 1968, used
235:and the mathematical/statistical languages
2515:symbol refers to the length of the array.
1757:Since in Ada indices are n-based the term
631:refreal row := a;
3463:
3445:
3492:PL/I for MVS & VM Language Reference
2047:# 4th element until the end (3, 8, 6, 4)
1408:# 3x4x5 three-dimensional or cubic array
1049:% 3x4x5 three-dimensional or cubic array
627:# constant matrix, the size is implied #
3420:
3104:# Length is a property of System.Object
2395:Other examples of 1-d slicing include:
568:2.000000 4.000000 8.000000
271:, an array slice can be declared using
3434:IEEE Transactions on Signal Processing
3296:, but uses square brackets. Example:
3026:# Print the first two elements of $ a:
2807:# Print the first two elements of $ A
2769:, regardless of the previous indices.
2748:// take an orthogonal slice (returns )
2377:Suppose that A is a 1-d array such as
3525:"Python for Scientists and Engineers"
3485:
3483:
3430:"Exact Tensor Completion Using t-SVD"
2673:// replace the two last elements of a
2643:// return the element 3 till last one
2631:// return the first two elements of a
649:print ((a, newline));
7:
3529:Computing in Science and Engineering
3239:Cilk Plus slicing looks as follows:
3207:// equals int{1, 3, 5, 7, 8, 13, 20}
2625:// assign an array to the variable a
2190:), every slice is a copy. Slices of
663:# leading 2-by-2 submatrix "slice" #
639:refreal col2 = a;
623:# declaration of a variable matrix #
661:print ((a, newline));
657:print ((a, newline));
653:print ((a, newline));
2056:# 1st, 4th and 7th element (2,3,4)
14:
2412:is an array of 10 integers. Then
3512:. Hewlett Packard. October 1976.
2078:If you have the following list:
1537:Such strings could be passed by
3265:// Elements 0, 2, 4 of vector D
1655:such arrays could be passed by
3253:// Elements 2 to 7 of vector B
2606:implements some concepts from
16:Computer programming operation
1:
3340:0.149316 0.779823 0.0690126
3334:0.404664 0.894781 0.0955007
2504:means that the dynamic array
1915:Some_History_Data (-30 .. 30)
962:Digital Equipment Corporation
132:, the dope vector needs 1 + 3
3379:0.323877 0.186253 0.600605
3337:0.223562 0.18859 0.120011
3331:0.323877 0.186253 0.600605
2614:. Slicing looks as follows:
2380:A = ; % A =
2341:! leading 10-by-10 submatrix
3352:4-element Array{Float64,1}:
609:(LOWER BOUND..UPPER BOUND)
3590:
3506:"Passing the 10-year mark"
3068:# Get the last 3 elements:
587:had similar restrictions.
124:indices has at least 1 + 2
18:
2602:The programming language
2257:! declaration of a matrix
2065:# every 3rd element (7,6)
317:DECLARE X(5,5); X(*,1)=0;
3490:IBM Corporation (1995).
3465:10.1109/tsp.2016.2639466
3349:# get the second column.
3298:
3241:
3225:
3201:// equals int{8, 13, 20}
3183:
3122:
2966:
2903:
2878:
2865:
2771:
2616:
2574:
2546:
2520:
2511:because inside the the
2484:
2455:
2453:Take a slice out of it:
2436:
2224:
2208:
2137:
2096:
2080:
2038:
2004:
1946:
1814:
1770:
1665:
1547:
1490:
1348:
998:
925:"HELLO, WORLD"
883:
830:
760:"HELLO, WORLD"
748:
335:
21:Slicing (disambiguation)
3259:// Column 5 of matrix C
651:# second column slice #
3574:Programming constructs
3195:// equals int{5, 7, 8}
3189:// equals int{1, 3, 5}
571:Note that there is no
3391:2x2 Array{Float64,2}:
3376:1x3 Array{Float64,2}:
3328:4x3 Array{Float64,2}:
2541:now has the contents
659:# last column slice #
87:programming languages
3549:10.1109/MCSE.2011.36
3373:# get the first row.
2475:and the contents of
2434:Consider the array:
2184:operator overloading
736:HP Time-Shared BASIC
70:programming language
49:of characters, the "
42:from the original.
28:computer programming
3541:2011CSE....13b...9M
3456:2017ITSP...65.1511Z
3397:0.894781 0.0955007
3290:Julia array slicing
2175:The stride syntax (
1808:The definition for
1764:The definition for
980:was written on the
3394:0.186253 0.600605
3247:// All of vector A
2959:Windows PowerShell
976:string functions.
655:# last row slice #
645:to second column #
641:# permanent alias/
304:A slice, called a
296:is a reference to
233:Windows PowerShell
1698:"ABCDE"
1550:SUBROUTINE PRINT
1426:27 30 33 36
1423:26 29 32 35
1420:25 28 31 34
845:"ABCDE"
741:computer terminal
338:SUBROUTINE PRINT
68:Depending on the
3581:
3553:
3552:
3520:
3514:
3513:
3510:MEASURE Magazine
3502:
3496:
3495:
3487:
3478:
3477:
3467:
3449:
3425:
3398:
3395:
3392:
3389:
3386:
3383:
3380:
3377:
3374:
3371:
3368:
3365:
3362:
3359:
3356:
3353:
3350:
3347:
3344:
3341:
3338:
3335:
3332:
3329:
3326:
3323:
3320:
3317:
3314:
3311:
3308:
3305:
3302:
3292:is like that of
3266:
3263:
3260:
3257:
3254:
3251:
3248:
3245:
3235:
3232:
3229:
3208:
3205:
3202:
3199:
3196:
3193:
3190:
3187:
3177:
3174:
3171:
3168:
3165:
3162:
3159:
3156:
3153:
3150:
3147:
3144:
3141:
3138:
3135:
3132:
3129:
3126:
3108:
3105:
3102:
3099:
3096:
3093:
3090:
3087:
3084:
3081:
3078:
3075:
3072:
3069:
3066:
3063:
3060:
3057:
3054:
3051:
3048:
3045:
3042:
3039:
3036:
3033:
3030:
3027:
3024:
3021:
3018:
3015:
3012:
3009:
3006:
3003:
3000:
2997:
2994:
2991:
2988:
2985:
2982:
2979:
2976:
2973:
2970:
2952:
2951:# prints 0, 1, 2
2949:
2946:
2943:
2940:
2937:
2934:
2931:
2930:# prints 2, 3, 4
2928:
2925:
2922:
2919:
2916:
2913:
2910:
2907:
2897:
2894:
2891:
2888:
2885:
2882:
2872:
2869:
2850:
2847:
2844:
2841:
2838:
2835:
2831:
2828:
2825:
2822:
2818:
2815:
2811:
2808:
2805:
2802:
2799:
2796:
2793:
2789:
2786:
2782:
2778:
2775:
2749:
2746:
2743:
2740:
2737:
2734:
2731:
2728:
2725:
2722:
2719:
2716:
2713:
2710:
2707:
2704:
2701:
2698:
2695:
2692:
2689:
2686:
2683:
2680:
2677:
2674:
2671:
2668:
2665:
2662:
2659:
2656:
2653:
2650:
2647:
2644:
2641:
2638:
2635:
2632:
2629:
2626:
2623:
2620:
2590:
2587:
2584:
2581:
2578:
2568:
2565:
2562:
2559:
2556:
2553:
2550:
2543:
2540:
2533:
2530:
2527:
2524:
2514:
2510:
2507:
2500:
2497:
2494:
2491:
2488:
2481:
2478:
2471:
2468:
2465:
2462:
2459:
2449:
2446:
2443:
2440:
2419:
2415:
2411:
2342:
2339:
2336:
2333:
2330:
2327:
2324:
2321:
2318:
2315:
2312:
2309:
2306:
2303:
2300:
2297:
2294:
2291:
2288:
2285:
2282:
2279:
2276:
2273:
2270:
2267:
2264:
2261:
2258:
2255:
2252:
2249:
2246:
2243:
2240:
2237:
2234:
2231:
2228:
2218:
2215:
2212:
2178:
2171:
2168:
2165:
2162:
2159:
2156:
2153:
2150:
2147:
2144:
2141:
2130:
2127:
2124:
2121:
2118:
2115:
2112:
2109:
2106:
2103:
2100:
2090:
2087:
2084:
2066:
2063:
2060:
2057:
2054:
2051:
2048:
2045:
2042:
2032:
2029:
2026:
2023:
2020:
2017:
2014:
2011:
2008:
1998:
1995:
1992:
1989:
1986:
1983:
1980:
1977:
1974:
1971:
1968:
1965:
1962:
1959:
1956:
1953:
1950:
1920:
1917:would slice the
1916:
1912:
1905:
1902:
1899:
1896:
1893:
1890:
1887:
1884:
1881:
1878:
1875:
1872:
1869:
1866:
1863:
1860:
1857:
1854:
1851:
1848:
1845:
1842:
1839:
1836:
1833:
1830:
1827:
1824:
1821:
1818:
1811:
1804:
1801:
1798:
1795:
1792:
1789:
1786:
1783:
1780:
1777:
1774:
1767:
1766:Text_IO.Put_Line
1760:
1744:
1741:
1738:
1735:
1732:
1729:
1726:
1723:
1720:
1717:
1714:
1711:
1708:
1705:
1702:
1699:
1696:
1693:
1690:
1687:
1684:
1681:
1678:
1675:
1672:
1669:
1636:Again produces:
1632:
1629:
1626:
1623:
1620:
1617:
1614:
1611:
1608:
1605:
1602:
1599:
1596:
1593:
1590:
1587:
1584:
1581:
1578:
1575:
1572:
1569:
1566:
1563:
1560:
1557:
1554:
1551:
1527:
1524:
1521:
1518:
1515:
1512:
1509:
1506:
1503:
1500:
1497:
1494:
1472:
1469:
1466:
1463:
1460:
1457:
1454:
1451:
1448:
1445:
1442:
1439:
1436:
1433:
1430:
1427:
1424:
1421:
1418:
1415:
1412:
1409:
1406:
1403:
1400:
1397:
1394:
1391:
1388:
1385:
1382:
1379:
1376:
1373:
1370:
1367:
1364:
1361:
1358:
1355:
1352:
1314:
1311:
1308:
1305:
1302:
1299:
1296:
1293:
1290:
1287:
1284:
1281:
1278:
1275:
1272:
1269:
1266:
1263:
1260:
1257:
1254:
1251:
1248:
1245:
1242:
1239:
1236:
1233:
1230:
1227:
1224:
1221:
1218:
1215:
1212:
1209:
1206:
1203:
1200:
1197:
1194:
1191:
1188:
1185:
1182:
1179:
1176:
1173:
1170:
1167:
1164:
1161:
1158:
1155:
1152:
1149:
1146:
1143:
1140:
1137:
1134:
1131:
1128:
1125:
1122:
1119:
1116:
1113:
1110:
1107:
1104:
1101:
1098:
1095:
1092:
1089:
1086:
1083:
1080:
1077:
1074:
1071:
1068:
1065:
1062:
1059:
1056:
1053:
1050:
1047:
1044:
1041:
1038:
1035:
1032:
1029:
1026:
1023:
1020:
1017:
1014:
1011:
1008:
1005:
1002:
975:
971:
967:
956:
953:
950:
947:
944:
941:
938:
935:
932:
929:
926:
923:
920:
917:
914:
911:
908:
905:
902:
899:
896:
893:
890:
887:
870:
867:
864:
861:
858:
855:
852:
849:
846:
843:
840:
837:
834:
827:
794:
791:
788:
785:
782:
779:
776:
773:
770:
767:
764:
761:
758:
755:
752:
637:to a row slice #
578:
561:
558:
555:
552:
549:
546:
543:
540:
537:
534:
531:
528:
525:
522:
519:
516:
513:
510:
507:
504:
501:
498:
495:
492:
489:
486:
483:
480:
477:
474:
471:
468:
465:
462:
459:
456:
453:
450:
447:
444:
441:
438:
435:
432:
429:
426:
423:
420:
417:
414:
411:
408:
405:
402:
399:
396:
393:
390:
387:
384:
381:
378:
375:
372:
369:
366:
363:
360:
357:
354:
351:
348:
345:
342:
339:
318:
311:
299:
295:
289:
282:
278:
3589:
3588:
3584:
3583:
3582:
3580:
3579:
3578:
3559:
3558:
3557:
3556:
3522:
3521:
3517:
3504:
3503:
3499:
3489:
3488:
3481:
3427:
3426:
3422:
3417:
3405:
3400:
3399:
3396:
3393:
3390:
3387:
3384:
3381:
3378:
3375:
3372:
3369:
3366:
3363:
3360:
3357:
3354:
3351:
3348:
3345:
3342:
3339:
3336:
3333:
3330:
3327:
3324:
3321:
3318:
3315:
3312:
3309:
3306:
3303:
3300:
3287:
3268:
3267:
3264:
3261:
3258:
3255:
3252:
3249:
3246:
3243:
3237:
3236:
3233:
3230:
3227:
3221:
3210:
3209:
3206:
3203:
3200:
3197:
3194:
3191:
3188:
3185:
3179:
3178:
3175:
3172:
3169:
3166:
3163:
3160:
3157:
3154:
3151:
3148:
3145:
3142:
3139:
3136:
3133:
3130:
3127:
3124:
3118:
3110:
3109:
3107:1 4 6 8 3 7 5 2
3106:
3103:
3100:
3097:
3094:
3091:
3088:
3085:
3082:
3079:
3076:
3073:
3070:
3067:
3064:
3061:
3058:
3055:
3052:
3049:
3046:
3043:
3040:
3037:
3034:
3031:
3028:
3025:
3022:
3019:
3016:
3013:
3010:
3007:
3004:
3001:
2998:
2995:
2992:
2989:
2986:
2983:
2980:
2977:
2974:
2971:
2968:
2962:
2954:
2953:
2950:
2947:
2944:
2941:
2938:
2935:
2932:
2929:
2926:
2923:
2920:
2917:
2914:
2911:
2908:
2905:
2899:
2898:
2895:
2892:
2889:
2886:
2883:
2880:
2874:
2873:
2870:
2867:
2861:
2853:
2852:
2848:
2845:
2842:
2839:
2836:
2833:
2829:
2826:
2823:
2820:
2816:
2813:
2809:
2806:
2803:
2800:
2797:
2794:
2791:
2787:
2784:
2780:
2776:
2773:
2759:
2751:
2750:
2747:
2744:
2741:
2738:
2735:
2732:
2729:
2726:
2723:
2720:
2717:
2714:
2711:
2708:
2705:
2702:
2699:
2696:
2693:
2690:
2687:
2684:
2681:
2678:
2675:
2672:
2669:
2666:
2663:
2660:
2657:
2654:
2651:
2648:
2645:
2642:
2639:
2636:
2633:
2630:
2627:
2624:
2621:
2618:
2600:
2592:
2591:
2588:
2585:
2582:
2579:
2576:
2570:
2569:
2566:
2563:
2560:
2557:
2554:
2551:
2548:
2542:
2538:
2535:
2534:
2531:
2528:
2525:
2522:
2512:
2509:
2505:
2502:
2501:
2498:
2495:
2492:
2489:
2486:
2480:
2476:
2473:
2472:
2469:
2466:
2463:
2460:
2457:
2451:
2450:
2447:
2444:
2441:
2438:
2432:
2424:
2417:
2413:
2409:
2406:
2400:
2393:
2387:
2381:
2372:
2360:
2352:
2344:
2343:
2340:
2337:
2334:
2331:
2328:
2325:
2322:
2319:
2316:
2313:
2310:
2307:
2304:
2301:
2298:
2295:
2292:
2289:
2286:
2283:
2281:! second column
2280:
2277:
2274:
2271:
2268:
2265:
2262:
2259:
2256:
2253:
2250:
2247:
2244:
2241:
2238:
2235:
2232:
2229:
2226:
2220:
2219:
2216:
2213:
2210:
2204:
2176:
2173:
2172:
2169:
2166:
2163:
2160:
2157:
2154:
2151:
2148:
2145:
2142:
2139:
2132:
2131:
2128:
2125:
2122:
2119:
2116:
2113:
2110:
2107:
2104:
2101:
2098:
2092:
2091:
2088:
2085:
2082:
2076:
2068:
2067:
2064:
2061:
2058:
2055:
2052:
2049:
2046:
2043:
2040:
2034:
2033:
2030:
2027:
2024:
2021:
2018:
2015:
2012:
2009:
2006:
2000:
1999:
1996:
1993:
1990:
1987:
1984:
1981:
1978:
1975:
1972:
1969:
1966:
1963:
1960:
1957:
1954:
1951:
1948:
1942:
1918:
1914:
1910:
1907:
1906:
1903:
1900:
1897:
1894:
1891:
1888:
1885:
1882:
1879:
1876:
1873:
1870:
1867:
1864:
1861:
1858:
1855:
1852:
1849:
1846:
1843:
1840:
1837:
1834:
1831:
1828:
1825:
1822:
1819:
1816:
1809:
1806:
1805:
1802:
1799:
1796:
1793:
1790:
1787:
1784:
1781:
1778:
1775:
1772:
1765:
1758:
1752:
1746:
1745:
1742:
1739:
1736:
1733:
1730:
1727:
1724:
1721:
1718:
1715:
1712:
1709:
1706:
1703:
1700:
1697:
1694:
1691:
1688:
1685:
1682:
1679:
1676:
1673:
1670:
1667:
1649:
1640:
1634:
1633:
1630:
1627:
1624:
1621:
1618:
1615:
1613:'ABCDE'
1612:
1609:
1606:
1603:
1600:
1597:
1594:
1591:
1588:
1585:
1582:
1579:
1576:
1573:
1570:
1567:
1564:
1561:
1558:
1555:
1552:
1549:
1535:
1529:
1528:
1525:
1522:
1519:
1516:
1513:
1510:
1508:'ABCDE'
1507:
1504:
1501:
1498:
1495:
1492:
1482:
1474:
1473:
1470:
1467:
1464:
1461:
1458:
1455:
1452:
1449:
1446:
1443:
1440:
1437:
1434:
1431:
1428:
1425:
1422:
1419:
1416:
1413:
1410:
1407:
1404:
1401:
1398:
1395:
1392:
1389:
1386:
1383:
1380:
1377:
1374:
1371:
1368:
1365:
1362:
1359:
1356:
1353:
1350:
1328:
1316:
1315:
1312:
1309:
1306:
1303:
1300:
1297:
1294:
1291:
1288:
1285:
1282:
1279:
1276:
1273:
1270:
1267:
1264:
1261:
1258:
1255:
1252:
1249:
1246:
1243:
1240:
1237:
1234:
1231:
1228:
1225:
1222:
1219:
1216:
1213:
1210:
1207:
1204:
1201:
1198:
1195:
1192:
1189:
1186:
1183:
1180:
1177:
1174:
1171:
1168:
1165:
1162:
1159:
1156:
1153:
1150:
1147:
1144:
1141:
1138:
1135:
1132:
1129:
1126:
1123:
1120:
1117:
1114:
1111:
1108:
1105:
1102:
1099:
1096:
1093:
1090:
1087:
1084:
1081:
1078:
1075:
1072:
1069:
1066:
1063:
1060:
1057:
1054:
1051:
1048:
1045:
1042:
1039:
1036:
1033:
1030:
1027:
1024:
1021:
1018:
1015:
1012:
1009:
1006:
1003:
1000:
997:
978:Microsoft BASIC
958:
957:
954:
951:
948:
945:
942:
939:
936:
933:
930:
927:
924:
921:
918:
915:
912:
909:
906:
903:
900:
897:
894:
891:
888:
885:
872:
871:
868:
865:
862:
859:
856:
853:
850:
847:
844:
841:
838:
835:
832:
802:
796:
795:
792:
789:
786:
783:
780:
777:
774:
771:
768:
765:
762:
759:
756:
753:
750:
728:
720:
718:
714:
710:
706:
702:
698:
694:
690:
686:
682:
678:
674:
670:
665:
647:
629:
613:
604:
596:
576:
569:
563:
562:
559:
556:
553:
550:
547:
544:
541:
538:
535:
532:
529:
526:
523:
520:
517:
514:
511:
508:
505:
502:
499:
496:
493:
490:
487:
484:
481:
478:
475:
472:
469:
466:
463:
460:
457:
454:
451:
448:
445:
442:
439:
436:
433:
430:
427:
424:
421:
418:
415:
412:
409:
406:
403:
400:
397:
394:
391:
388:
385:
382:
379:
376:
373:
370:
367:
364:
361:
358:
355:
352:
349:
346:
343:
340:
337:
327:
316:
309:
297:
293:
292:A reference to
287:
280:
276:
261:
253:
172:Kenneth Iverson
154:
82:
24:
17:
12:
11:
5:
3587:
3585:
3577:
3576:
3571:
3561:
3560:
3555:
3554:
3515:
3497:
3479:
3419:
3418:
3416:
3413:
3412:
3411:
3404:
3401:
3299:
3286:
3280:
3279:
3278:
3275:
3242:
3226:
3220:
3214:
3184:
3123:
3117:
3111:
2967:
2961:
2955:
2904:
2879:
2866:
2860:
2854:
2772:
2758:
2752:
2617:
2599:
2593:
2575:
2547:
2521:
2485:
2456:
2437:
2431:
2425:
2422:
2404:
2397:
2391:
2385:
2379:
2371:
2365:
2357:
2351:
2345:
2225:
2209:
2203:
2196:
2188:dynamic arrays
2138:
2097:
2081:
2075:
2069:
2039:
2005:
1947:
1941:
1935:
1815:
1771:
1750:
1666:
1648:
1641:
1638:
1548:
1533:
1491:
1481:
1475:
1468:# single value
1349:
1327:
1317:
1304:% single value
999:
996:
990:
884:
831:
822:Sinclair BASIC
810:microcomputers
800:
798:Will produce:
749:
727:
721:
716:
712:
708:
704:
700:
696:
692:
688:
684:
680:
676:
672:
668:
666:
648:
630:
620:
608:
600:
595:
589:
567:
336:
326:
320:
314:
313:
285:
284:
260:
254:
252:
249:
153:
150:
81:
78:
15:
13:
10:
9:
6:
4:
3:
2:
3586:
3575:
3572:
3570:
3567:
3566:
3564:
3550:
3546:
3542:
3538:
3534:
3530:
3526:
3519:
3516:
3511:
3507:
3501:
3498:
3493:
3486:
3484:
3480:
3475:
3471:
3466:
3461:
3457:
3453:
3448:
3443:
3439:
3435:
3431:
3424:
3421:
3414:
3410:
3407:
3406:
3402:
3297:
3295:
3291:
3285:
3281:
3276:
3273:
3272:
3271:
3240:
3224:
3219:
3215:
3213:
3182:
3121:
3116:
3112:
2965:
2960:
2956:
2902:
2877:
2864:
2859:
2855:
2770:
2768:
2764:
2757:
2753:
2615:
2613:
2609:
2605:
2604:SuperCollider
2598:
2597:SuperCollider
2594:
2586:>>>
2577:>>>
2573:
2545:
2519:
2516:
2508:now contains
2483:
2454:
2435:
2430:
2426:
2421:
2403:
2396:
2390:
2384:
2378:
2375:
2370:
2366:
2364:
2356:
2350:
2346:
2223:
2207:
2201:
2197:
2195:
2193:
2189:
2185:
2180:
2164:>>>
2155:>>>
2146:>>>
2140:>>>
2136:
2126:>>>
2120:>>>
2111:>>>
2099:>>>
2095:
2083:>>>
2079:
2074:
2070:
2037:
2003:
1945:
1940:
1936:
1934:
1932:
1928:
1924:
1813:
1769:
1762:
1759:Text (2 .. 4)
1756:
1749:
1664:
1663:dope vector.
1662:
1658:
1654:
1646:
1642:
1637:
1546:
1545:dope vector.
1544:
1540:
1532:
1489:
1487:
1480:
1476:
1347:
1345:
1341:
1337:
1333:
1326:
1322:
1318:
995:
991:
989:
987:
983:
979:
963:
882:
880:
877:
829:
823:
820:, and 1979's
819:
815:
811:
807:
799:
747:
744:
742:
737:
733:
726:
722:
664:
660:
656:
652:
646:
644:
638:
636:
628:
624:
619:
616:
612:
607:
603:
599:
594:
590:
588:
586:
582:
574:
566:
334:
332:
325:
321:
319:
307:
306:cross-section
303:
302:
301:
300:, and so on.
290:
274:
270:
269:iSub DEFINING
266:
265:
264:
259:
255:
250:
248:
246:
242:
238:
234:
230:
226:
222:
218:
214:
210:
206:
202:
198:
194:
190:
185:
183:
179:
177:
173:
169:
167:
163:
159:
151:
149:
146:
142:
137:
135:
131:
127:
123:
119:
115:
114:transposition
111:
107:
102:
98:
96:
92:
88:
79:
77:
75:
71:
66:
64:
60:
56:
52:
48:
43:
41:
37:
33:
32:array slicing
29:
22:
3532:
3528:
3518:
3509:
3500:
3491:
3437:
3433:
3423:
3288:
3269:
3238:
3222:
3211:
3180:
3119:
2963:
2900:
2875:
2862:
2766:
2760:
2601:
2571:
2536:
2517:
2503:
2474:
2452:
2433:
2407:
2401:
2394:
2388:
2382:
2376:
2373:
2361:
2353:
2221:
2205:
2181:
2174:
2133:
2105:# no slicing
2093:
2077:
2035:
2001:
1943:
1919:History_Data
1908:
1807:
1763:
1754:
1753:
1747:
1660:
1656:
1650:
1635:
1542:
1538:
1536:
1530:
1483:
1343:
1339:
1329:
985:
959:
873:
806:high schools
803:
801:HELLO WORLD
797:
745:
743:being used.
729:
662:
658:
654:
650:
642:
640:
634:
632:
626:
622:
617:
614:
610:
605:
601:
597:
570:
564:
328:
315:
305:
291:
286:
272:
268:
262:
186:
180:
170:
155:
138:
133:
125:
121:
109:
103:
99:
94:
90:
83:
67:
54:
50:
44:
31:
25:
3535:(2): 9–12.
2537:means that
2217:upper_bound
2211:lower_bound
2031:# (8, 6, 4)
2022:# (7, 3, 8)
2013:# (2, 5, 7)
1944:If we have
1776:Ada.Text_IO
1604:CALL PRINT
1486:concatenate
818:Atari BASIC
814:Apple BASIC
573:dope vector
527:CALL PRINT
106:dope vector
3563:Categories
3447:1502.04689
3415:References
3228:array_base
3098:-NoNewline
3095:Write-Host
3077:-NoNewline
3074:Write-Host
3056:-NoNewline
3053:Write-Host
3035:-NoNewline
3032:Write-Host
2761:Arrays in
2308:! last row
2200:Fortran 90
1748:Produces:
1653:Fortran 77
1531:Produces:
1479:Fortran 77
1330:Arrays in
988:standard.
879:Full BASIC
715:+0 +4.0000
711:+0 +2.0000
707:+0 +1.0000
703:+1 +1.0000
699:+0 +2.7000
695:+0 +8.0000
691:+1 +1.0000
687:+0 +2.7000
683:+0 +9.0000
679:+0 +3.0000
675:+0 +9.0000
671:+0 +4.0000
618:Examples:
577:SUBROUTINE
331:subroutine
324:Fortran 66
237:GNU Octave
201:Fortran 90
110:descriptor
74:aliased to
3474:1053-587X
3382:julia>
3367:julia>
3343:julia>
3301:julia>
3218:Cilk Plus
2896:# equals
2890:# equals
2884:# equals
2349:Analytica
2233:dimension
2202:and above
2152:# == nums
1886:Character
1880:<>)
1782:procedure
1677:procedure
1657:reference
1647:and above
1565:CHARACTER
1539:reference
1488:strings:
816:, 1978's
746:Example:
425:PARAMETER
158:compilers
136:entries.
40:dimension
3403:See also
3364:0.779823
3358:0.894781
3355:0.186253
2479:will be
2392:B = A];
2386:B = A];
1921:from 31
1874:Positive
1829:Positive
1820:Standard
1785:Put_Line
1713:Put_Line
1598:PROGRAM
1493:PROGRAM
1459:28 29 30
986:de facto
633:# alias/
593:Algol 68
579:. 1970s
565:Result:
419:PROGRAM
189:Ada 2005
182:ALGOL 68
3537:Bibcode
3452:Bibcode
3361:0.18859
3092:PS>
3086:PS>
3071:PS>
3065:PS>
3062:7 3 8 6
3050:PS>
3044:PS>
3029:PS>
3023:PS>
2969:PS>
1847:Integer
1835:Integer
1826:subtype
1817:package
1773:package
1707:Text_IO
1671:Text_IO
1447:30 33
1444:29 32
1441:28 31
992:1970s:
970:RIGHT$
732:HP 2000
667:+1.0000
162:FORTRAN
152:History
80:Details
61:from a
53:" in "h
3569:Arrays
3472:
3294:MATLAB
3282:2012:
3216:2010:
3113:2009:
2957:2006:
2856:2006:
2754:2005:
2595:2004:
2427:1999:
2369:S-Lang
2367:1998:
2347:1994:
2198:1992:
2073:Python
2071:1991:
1937:1987:
1925:to 30
1901:String
1892:pragma
1862:String
1810:String
1800:String
1692:String
1645:Ada 83
1643:1983:
1477:1977:
1319:1976:
994:MATLAB
982:PDP-10
966:LEFT$
723:1968:
591:1968:
581:Pascal
536:MATRIX
467:MATRIX
446:MATRIX
322:1966:
298:X(2,2)
267:Using
256:1964:
229:S-Lang
225:Python
217:MATLAB
145:Pascal
130:Pascal
63:matrix
59:vector
47:string
3442:arXiv
3284:Julia
3083:6 4 1
2945:print
2924:print
2858:Cobra
2730:slice
2703:slice
2311:print
2284:print
2260:print
2192:NumPy
1877:range
1868:array
1850:'
1838:range
1755:Note:
1704:begin
1661:short
1583:PRINT
1543:short
1499:PRINT
1462:>
1450:>
1438:, , 1
1429:>
1411:>
1360:array
1357:<-
1351:>
1336:GNU R
1010:round
974:MID$
931:PRINT
866:PRINT
790:PRINT
766:PRINT
730:HP's
725:BASIC
464:DATA
443:REAL
374:PRINT
359:REAL
213:Julia
193:Cobra
36:array
3470:ISSN
3310:rand
3204:nums
3198:nums
3192:nums
3186:nums
3125:nums
2893:nums
2887:nums
2881:nums
2868:nums
2837:echo
2832:-e A
2827:>
2814:>
2801:echo
2798:>
2783:seq
2774:>
2763:fish
2756:fish
2549:auto
2487:auto
2410:I =
2227:real
2177:nums
2167:nums
2158:nums
2149:nums
2143:nums
2129:nums
2123:nums
2114:nums
2102:nums
2086:nums
1939:Perl
1895:Pack
1859:type
1853:Last
1812:is:
1791:Item
1768:is:
1751:BCD
1740:Main
1719:Text
1686:Text
1680:Main
1668:with
1639:BCD
1601:MAIN
1534:BCD
1496:MAIN
1334:and
1277:>
1232:>
1169:>
1115:>
1052:>
1016:rand
1001:>
972:and
876:ANSI
606:or:
583:and
422:MAIN
294:Y(2)
273:iSUB
258:PL/I
243:and
221:Perl
209:Rust
143:and
3545:doi
3460:doi
3131:int
3101:$ a
3080:$ a
3059:$ a
3041:2 5
3038:$ a
2972:$ a
2933:for
2906:for
2840:$ A
2830:set
2821:$ A
2817:set
2804:$ A
2777:set
2767:one
2736:nil
2612:APL
2564:dup
2458:int
2439:int
2272:(:,
1933:).
1737:end
1734:));
1631:END
1595:END
1592:STR
1580:STR
1559:STR
1526:END
1378:dim
1344:one
1340:one
1307:ans
1259:ans
1202:ans
1184:end
1145:ans
1121:(:,
1073:ans
1058:(:,
934:A$
910:A$
907:LET
892:A$
889:DIM
869:a$
839:a$
836:LET
793:A$
769:A$
754:A$
719:+0
643:ref
635:ref
560:END
554:LEN
458:LEN
452:LEN
431:LEN
416:END
410:LEN
386:VEC
362:VEC
353:LEN
347:VEC
176:APL
174:'s
166:IAL
141:Ada
108:or
93:to
55:ell
51:ell
26:In
3565::
3543:.
3533:13
3531:.
3527:.
3508:.
3482:^
3468:.
3458:.
3450:.
3438:65
3436:.
3432:.
3173:20
3167:13
3128::=
3115:Go
2939:in
2912:in
2851:9
2819:B
2812:5
2790:11
2779:A
2745:);
2718:);
2694:];
2529:10
2513:$
2335:10
2326:10
2323:(:
2305::)
2251:::
2059:@a
2050:@a
2041:@a
2025:@a
2016:@a
2007:@a
1997:);
1949:@a
1931:BC
1927:AD
1923:BC
1904:);
1883:of
1865:is
1844:..
1832:is
1823:is
1803:);
1797:in
1794::
1779:is
1728:..
1695::=
1683:is
1628:))
1471:28
1405:))
1372:60
1247::,
1220:10
1190::,
1061::,
1043:10
968:,
943:)(
928:30
904:20
886:10
863:20
854:to
833:10
826:TO
787:30
763:20
751:10
717:10
713:10
709:10
705:10
701:10
697:10
693:10
689:10
685:10
681:10
677:10
673:10
669:10
551:),
521:27
395:),
333::
247:.
239:,
231:,
227:,
223:,
219:,
215:,
211:,
207:,
205:Go
203:,
199:,
195:,
191:,
97:.
65:.
30:,
3551:.
3547::
3539::
3494:.
3476:.
3462::
3454::
3444::
3385:x
3370:x
3346:x
3325:)
3322:3
3319:,
3316:4
3313:(
3307:=
3304:x
3262:D
3256:C
3250:B
3244:A
3234:*
3231:]
3176:}
3170:,
3164:,
3161:8
3158:,
3155:7
3152:,
3149:5
3146:,
3143:3
3140:,
3137:1
3134:{
3020:1
3017:,
3014:4
3011:,
3008:6
3005:,
3002:8
2999:,
2996:3
2993:,
2990:7
2987:,
2984:5
2981:,
2978:2
2975:=
2948:j
2942:3
2936:j
2927:i
2921:5
2918::
2915:2
2909:i
2871:=
2849:5
2846:3
2834:;
2810:3
2792:)
2788:2
2785:3
2781:(
2742:3
2739:,
2733:(
2727:.
2724:a
2715:3
2712:,
2709:2
2706:(
2700:.
2697:a
2691:,
2688:,
2685:,
2682:=
2679:a
2670:=
2667:a
2661:=
2658:]
2655:a
2649:]
2646:a
2640:a
2634:a
2628:a
2622:=
2619:a
2610:/
2608:J
2589:d
2583:=
2580:d
2567:;
2561:.
2558:a
2555:=
2552:b
2539:a
2532:;
2526:=
2523:b
2506:c
2499:;
2496:a
2493:=
2490:c
2477:b
2470:;
2467:a
2464:=
2461:b
2448:;
2445:=
2442:a
2429:D
2418:A
2414:A
2338:)
2332::
2329:,
2320:a
2317:,
2314:*
2302:,
2299:m
2296:(
2293:a
2290:,
2287:*
2278:)
2275:2
2269:a
2266:,
2263:*
2254:a
2248:)
2245:n
2242:,
2239:m
2236:(
2230:,
2214::
2108:7
2089:=
2062:;
2053:;
2044:;
2028:;
2019:;
2010:;
1994:4
1991:,
1988:6
1985:,
1982:8
1979:,
1976:3
1973:,
1970:7
1967:,
1964:5
1961:,
1958:2
1955:(
1952:=
1898:(
1889:;
1871:(
1856:;
1841:1
1788:(
1743:;
1731:4
1725:2
1722:(
1716:(
1710:.
1701:;
1689::
1674:;
1625:4
1622::
1619:2
1616:(
1610:(
1607:S
1589:,
1586:*
1577:)
1574:*
1571:(
1568:*
1562:)
1556:(
1553:S
1523:)
1520:4
1517::
1514:2
1511:(
1505:,
1502:*
1465:A
1453:A
1432:A
1414:A
1402:5
1399:,
1396:4
1393:,
1390:3
1387:(
1384:c
1381:=
1375:,
1369::
1366:1
1363:(
1354:A
1332:S
1325:R
1323:/
1321:S
1313:3
1310:=
1301:)
1298:3
1295:,
1292:2
1289:,
1286:1
1283:(
1280:A
1274:7
1271:5
1268:3
1265:8
1262:=
1253:)
1250:3
1244:,
1241:1
1238:(
1235:A
1229:1
1226:3
1223:1
1217:6
1214:4
1211:1
1208:6
1205:=
1196:)
1193:3
1187:,
1181::
1178:2
1175:(
1172:A
1166:2
1163:4
1160:1
1157:9
1154:5
1151:3
1148:=
1139:)
1136:3
1133:,
1130:3
1127::
1124:2
1118:A
1112:5
1109:2
1106:4
1103:4
1100:4
1097:1
1094:9
1091:8
1088:7
1085:5
1082:3
1079:8
1076:=
1067:)
1064:3
1055:A
1046:)
1040:*
1037:)
1034:5
1031:,
1028:4
1025:,
1022:3
1019:(
1013:(
1007:=
1004:A
955:)
952:5
949::
946:1
940:2
937:(
922:=
919:)
916:2
913:(
901:)
898:5
895:(
860:)
857:4
851:2
848:(
842:=
784:)
781:5
778:,
775:1
772:(
757:=
585:C
557:)
548:2
545:,
542:1
539:(
533:(
530:V
524:/
518:,
515:9
512:,
509:3
506:,
503:8
500:,
497:4
494:,
491:2
488:,
485:1
482:,
479:1
476:,
473:1
470:/
461:)
455:,
449:(
440:)
437:3
434:=
428:(
413:)
407:,
404:1
401:=
398:I
392:I
389:(
383:(
380:,
377:*
371:)
368:*
365:(
356:)
350:,
344:(
341:V
310:X
283:.
281:X
277:Y
245:R
241:S
197:D
134:d
126:d
122:d
118:C
95:5
91:2
23:.
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.