haskelldb-2.1.0: A library of combinators for generating and executing SQL statements.

Portabilitynon-portable
Stabilityexperimental
Maintainerhaskelldb-users@lists.sourceforge.net

Database.HaskellDB.BoundedList

Description

The main idea of bounded lists is to create lists with predetermined maximum size.

BoundedList is a simple, fast and type safe approach to implementing this idea. The implementation is based on inductive instances, making it very easy to expand with new bounds. A new bound only requires one instance of size and two instances of Less.

BoundedList works as follows. Every bound is build up by declaring a data-type representing the new bound. The instance of size only returns the size as an Int. The first instance of Less is for telling the typechecker that this bound is greater than the largest smaller bound. The second instance of Less is used by the typechecker to construct a chain of instances if there is no hardcoded instance available. This way the type checker can determine if a bound is smaller/greater then any other bound.

This inductive approach gives the complexity O(n) on the number of instances and very short type checking times compared to an O(n^2) implementation.

BoundedList also comes with a few utility function for manipulation an contructing bounded lists.

To be noted: Since each bound is a unique type: Explicit shrink and/or grow is needed before using (==). BoundedList does not have an instance of Ordering. (This might change)

Synopsis

Documentation

shrink :: (Size n, Size m) => BoundedList a n -> Maybe (BoundedList a m)

Shrinks the BoundedList supplied if it can do so without truncating the list. Returns Nothing if the list inside was to long.

grow :: LessEq n m => BoundedList a n -> BoundedList a m

Takes a BoundedList add grows it size.

trunc :: Size n => [a] -> BoundedList a n

Takes a list and transforms it to a BoundedList. If the list doesn'n fit, the list is truncated to make it fit into the bounded list.

listBound :: Size n => BoundedList a n -> Int

Returns the length of a BoundedList.

toBounded :: Size n => [a] -> Maybe (BoundedList a n)

Takes a list and transforms it to a BoundedList. If the list doesn't fit, Nothing is returned.

fromBounded :: Size n => BoundedList a n -> [a]

Takes a BoundedList and return the list inside.

class Size n

Instances

Size N65535 
Size N255 
Size N254 
Size N253 
Size N252 
Size N251 
Size N250 
Size N249 
Size N248 
Size N247 
Size N246 
Size N245 
Size N244 
Size N243 
Size N242 
Size N241 
Size N240 
Size N239 
Size N238 
Size N237 
Size N236 
Size N235 
Size N234 
Size N233 
Size N232 
Size N231 
Size N230 
Size N229 
Size N228 
Size N227 
Size N226 
Size N225 
Size N224 
Size N223 
Size N222 
Size N221 
Size N220 
Size N219 
Size N218 
Size N217 
Size N216 
Size N215 
Size N214 
Size N213 
Size N212 
Size N211 
Size N210 
Size N209 
Size N208 
Size N207 
Size N206 
Size N205 
Size N204 
Size N203 
Size N202 
Size N201 
Size N200 
Size N199 
Size N198 
Size N197 
Size N196 
Size N195 
Size N194 
Size N193 
Size N192 
Size N191 
Size N190 
Size N189 
Size N188 
Size N187 
Size N186 
Size N185 
Size N184 
Size N183 
Size N182 
Size N181 
Size N180 
Size N179 
Size N178 
Size N177 
Size N176 
Size N175 
Size N174 
Size N173 
Size N172 
Size N171 
Size N170 
Size N169 
Size N168 
Size N167 
Size N166 
Size N165 
Size N164 
Size N163 
Size N162 
Size N161 
Size N160 
Size N159 
Size N158 
Size N157 
Size N156 
Size N155 
Size N154 
Size N153 
Size N152 
Size N151 
Size N150 
Size N149 
Size N148 
Size N147 
Size N146 
Size N145 
Size N144 
Size N143 
Size N142 
Size N141 
Size N140 
Size N139 
Size N138 
Size N137 
Size N136 
Size N135 
Size N134 
Size N133 
Size N132 
Size N131 
Size N130 
Size N129 
Size N128 
Size N127 
Size N126 
Size N125 
Size N124 
Size N123 
Size N122 
Size N121 
Size N120 
Size N119 
Size N118 
Size N117 
Size N116 
Size N115 
Size N114 
Size N113 
Size N112 
Size N111 
Size N110 
Size N109 
Size N108 
Size N107 
Size N106 
Size N105 
Size N104 
Size N103 
Size N102 
Size N101 
Size N100 
Size N99 
Size N98 
Size N97 
Size N96 
Size N95 
Size N94 
Size N93 
Size N92 
Size N91 
Size N90 
Size N89 
Size N88 
Size N87 
Size N86 
Size N85 
Size N84 
Size N83 
Size N82 
Size N81 
Size N80 
Size N79 
Size N78 
Size N77 
Size N76 
Size N75 
Size N74 
Size N73 
Size N72 
Size N71 
Size N70 
Size N69 
Size N68 
Size N67 
Size N66 
Size N65 
Size N64 
Size N63 
Size N62 
Size N61 
Size N60 
Size N59 
Size N58 
Size N57 
Size N56 
Size N55 
Size N54 
Size N53 
Size N52 
Size N51 
Size N50 
Size N49 
Size N48 
Size N47 
Size N46 
Size N45 
Size N44 
Size N43 
Size N42 
Size N41 
Size N40 
Size N39 
Size N38 
Size N37 
Size N36 
Size N35 
Size N34 
Size N33 
Size N32 
Size N31 
Size N30 
Size N29 
Size N28 
Size N27 
Size N26 
Size N25 
Size N24 
Size N23 
Size N22 
Size N21 
Size N20 
Size N19 
Size N18 
Size N17 
Size N16 
Size N15 
Size N14 
Size N13 
Size N12 
Size N11 
Size N10 
Size N9 
Size N8 
Size N7 
Size N6 
Size N5 
Size N4 
Size N3 
Size N2 
Size N1 
Size N0 

data BoundedList a n

Instances

(Size n, Eq a) => Eq (BoundedList a n) 
(Show a, Size n) => Show (BoundedList a n) 

data N0

Instances

Size N0 
Less N0 N1 

data N1

Instances

Size N1 
Less N1 N2 
Less N0 N1 

data N2

Instances

Size N2 
Less a N1 => Less a N2 
Less N2 N3 
Less N1 N2 

data N3

Instances

Size N3 
Less a N2 => Less a N3 
Less N3 N4 
Less N2 N3 

data N4

Instances

Size N4 
Less a N3 => Less a N4 
Less N4 N5 
Less N3 N4 

data N5

Instances

Size N5 
Less a N4 => Less a N5 
Less N5 N6 
Less N4 N5 

data N6

Instances

Size N6 
Less a N5 => Less a N6 
Less N6 N7 
Less N5 N6 

data N7

Instances

Size N7 
Less a N6 => Less a N7 
Less N7 N8 
Less N6 N7 

data N8

Instances

Size N8 
Less a N7 => Less a N8 
Less N8 N9 
Less N7 N8 

data N9

Instances

Size N9 
Less a N8 => Less a N9 
Less N9 N10 
Less N8 N9 

data N10

Instances

Size N10 
Less a N9 => Less a N10 
Less N10 N11 
Less N9 N10 

data N11

Instances

Size N11 
Less a N10 => Less a N11 
Less N11 N12 
Less N10 N11 

data N12

Instances

Size N12 
Less a N11 => Less a N12 
Less N12 N13 
Less N11 N12 

data N13

Instances

Size N13 
Less a N12 => Less a N13 
Less N13 N14 
Less N12 N13 

data N14

Instances

Size N14 
Less a N13 => Less a N14 
Less N14 N15 
Less N13 N14 

data N15

Instances

Size N15 
Less a N14 => Less a N15 
Less N15 N16 
Less N14 N15 

data N16

Instances

Size N16 
Less a N15 => Less a N16 
Less N16 N17 
Less N15 N16 

data N17

Instances

Size N17 
Less a N16 => Less a N17 
Less N17 N18 
Less N16 N17 

data N18

Instances

Size N18 
Less a N17 => Less a N18 
Less N18 N19 
Less N17 N18 

data N19

Instances

Size N19 
Less a N18 => Less a N19 
Less N19 N20 
Less N18 N19 

data N20

Instances

Size N20 
Less a N19 => Less a N20 
Less N20 N21 
Less N19 N20 

data N21

Instances

Size N21 
Less a N20 => Less a N21 
Less N21 N22 
Less N20 N21 

data N22

Instances

Size N22 
Less a N21 => Less a N22 
Less N22 N23 
Less N21 N22 

data N23

Instances

Size N23 
Less a N22 => Less a N23 
Less N23 N24 
Less N22 N23 

data N24

Instances

Size N24 
Less a N23 => Less a N24 
Less N24 N25 
Less N23 N24 

data N25

Instances

Size N25 
Less a N24 => Less a N25 
Less N25 N26 
Less N24 N25 

data N26

Instances

Size N26 
Less a N25 => Less a N26 
Less N26 N27 
Less N25 N26 

data N27

Instances

Size N27 
Less a N26 => Less a N27 
Less N27 N28 
Less N26 N27 

data N28

Instances

Size N28 
Less a N27 => Less a N28 
Less N28 N29 
Less N27 N28 

data N29

Instances

Size N29 
Less a N28 => Less a N29 
Less N29 N30 
Less N28 N29 

data N30

Instances

Size N30 
Less a N29 => Less a N30 
Less N30 N31 
Less N29 N30 

data N31

Instances

Size N31 
Less a N30 => Less a N31 
Less N31 N32 
Less N30 N31 

data N32

Instances

Size N32 
Less a N31 => Less a N32 
Less N32 N33 
Less N31 N32 

data N33

Instances

Size N33 
Less a N32 => Less a N33 
Less N33 N34 
Less N32 N33 

data N34

Instances

Size N34 
Less a N33 => Less a N34 
Less N34 N35 
Less N33 N34 

data N35

Instances

Size N35 
Less a N34 => Less a N35 
Less N35 N36 
Less N34 N35 

data N36

Instances

Size N36 
Less a N35 => Less a N36 
Less N36 N37 
Less N35 N36 

data N37

Instances

Size N37 
Less a N36 => Less a N37 
Less N37 N38 
Less N36 N37 

data N38

Instances

Size N38 
Less a N37 => Less a N38 
Less N38 N39 
Less N37 N38 

data N39

Instances

Size N39 
Less a N38 => Less a N39 
Less N39 N40 
Less N38 N39 

data N40

Instances

Size N40 
Less a N39 => Less a N40 
Less N40 N41 
Less N39 N40 

data N41

Instances

Size N41 
Less a N40 => Less a N41 
Less N41 N42 
Less N40 N41 

data N42

Instances

Size N42 
Less a N41 => Less a N42 
Less N42 N43 
Less N41 N42 

data N43

Instances

Size N43 
Less a N42 => Less a N43 
Less N43 N44 
Less N42 N43 

data N44

Instances

Size N44 
Less a N43 => Less a N44 
Less N44 N45 
Less N43 N44 

data N45

Instances

Size N45 
Less a N44 => Less a N45 
Less N45 N46 
Less N44 N45 

data N46

Instances

Size N46 
Less a N45 => Less a N46 
Less N46 N47 
Less N45 N46 

data N47

Instances

Size N47 
Less a N46 => Less a N47 
Less N47 N48 
Less N46 N47 

data N48

Instances

Size N48 
Less a N47 => Less a N48 
Less N48 N49 
Less N47 N48 

data N49

Instances

Size N49 
Less a N48 => Less a N49 
Less N49 N50 
Less N48 N49 

data N50

Instances

Size N50 
Less a N49 => Less a N50 
Less N50 N51 
Less N49 N50 

data N51

Instances

Size N51 
Less a N50 => Less a N51 
Less N51 N52 
Less N50 N51 

data N52

Instances

Size N52 
Less a N51 => Less a N52 
Less N52 N53 
Less N51 N52 

data N53

Instances

Size N53 
Less a N52 => Less a N53 
Less N53 N54 
Less N52 N53 

data N54

Instances

Size N54 
Less a N53 => Less a N54 
Less N54 N55 
Less N53 N54 

data N55

Instances

Size N55 
Less a N54 => Less a N55 
Less N55 N56 
Less N54 N55 

data N56

Instances

Size N56 
Less a N55 => Less a N56 
Less N56 N57 
Less N55 N56 

data N57

Instances

Size N57 
Less a N56 => Less a N57 
Less N57 N58 
Less N56 N57 

data N58

Instances

Size N58 
Less a N57 => Less a N58 
Less N58 N59 
Less N57 N58 

data N59

Instances

Size N59 
Less a N58 => Less a N59 
Less N59 N60 
Less N58 N59 

data N60

Instances

Size N60 
Less a N59 => Less a N60 
Less N60 N61 
Less N59 N60 

data N61

Instances

Size N61 
Less a N60 => Less a N61 
Less N61 N62 
Less N60 N61 

data N62

Instances

Size N62 
Less a N61 => Less a N62 
Less N62 N63 
Less N61 N62 

data N63

Instances

Size N63 
Less a N62 => Less a N63 
Less N63 N64 
Less N62 N63 

data N64

Instances

Size N64 
Less a N63 => Less a N64 
Less N64 N65 
Less N63 N64 

data N65

Instances

Size N65 
Less a N64 => Less a N65 
Less N65 N66 
Less N64 N65 

data N66

Instances

Size N66 
Less a N65 => Less a N66 
Less N66 N67 
Less N65 N66 

data N67

Instances

Size N67 
Less a N66 => Less a N67 
Less N67 N68 
Less N66 N67 

data N68

Instances

Size N68 
Less a N67 => Less a N68 
Less N68 N69 
Less N67 N68 

data N69

Instances

Size N69 
Less a N68 => Less a N69 
Less N69 N70 
Less N68 N69 

data N70

Instances

Size N70 
Less a N69 => Less a N70 
Less N70 N71 
Less N69 N70 

data N71

Instances

Size N71 
Less a N70 => Less a N71 
Less N71 N72 
Less N70 N71 

data N72

Instances

Size N72 
Less a N71 => Less a N72 
Less N72 N73 
Less N71 N72 

data N73

Instances

Size N73 
Less a N72 => Less a N73 
Less N73 N74 
Less N72 N73 

data N74

Instances

Size N74 
Less a N73 => Less a N74 
Less N74 N75 
Less N73 N74 

data N75

Instances

Size N75 
Less a N74 => Less a N75 
Less N75 N76 
Less N74 N75 

data N76

Instances

Size N76 
Less a N75 => Less a N76 
Less N76 N77 
Less N75 N76 

data N77

Instances

Size N77 
Less a N76 => Less a N77 
Less N77 N78 
Less N76 N77 

data N78

Instances

Size N78 
Less a N77 => Less a N78 
Less N78 N79 
Less N77 N78 

data N79

Instances

Size N79 
Less a N78 => Less a N79 
Less N79 N80 
Less N78 N79 

data N80

Instances

Size N80 
Less a N79 => Less a N80 
Less N80 N81 
Less N79 N80 

data N81

Instances

Size N81 
Less a N80 => Less a N81 
Less N81 N82 
Less N80 N81 

data N82

Instances

Size N82 
Less a N81 => Less a N82 
Less N82 N83 
Less N81 N82 

data N83

Instances

Size N83 
Less a N82 => Less a N83 
Less N83 N84 
Less N82 N83 

data N84

Instances

Size N84 
Less a N83 => Less a N84 
Less N84 N85 
Less N83 N84 

data N85

Instances

Size N85 
Less a N84 => Less a N85 
Less N85 N86 
Less N84 N85 

data N86

Instances

Size N86 
Less a N85 => Less a N86 
Less N86 N87 
Less N85 N86 

data N87

Instances

Size N87 
Less a N86 => Less a N87 
Less N87 N88 
Less N86 N87 

data N88

Instances

Size N88 
Less a N87 => Less a N88 
Less N88 N89 
Less N87 N88 

data N89

Instances

Size N89 
Less a N88 => Less a N89 
Less N89 N90 
Less N88 N89 

data N90

Instances

Size N90 
Less a N89 => Less a N90 
Less N90 N91 
Less N89 N90 

data N91

Instances

Size N91 
Less a N90 => Less a N91 
Less N91 N92 
Less N90 N91 

data N92

Instances

Size N92 
Less a N91 => Less a N92 
Less N92 N93 
Less N91 N92 

data N93

Instances

Size N93 
Less a N92 => Less a N93 
Less N93 N94 
Less N92 N93 

data N94

Instances

Size N94 
Less a N93 => Less a N94 
Less N94 N95 
Less N93 N94 

data N95

Instances

Size N95 
Less a N94 => Less a N95 
Less N95 N96 
Less N94 N95 

data N96

Instances

Size N96 
Less a N95 => Less a N96 
Less N96 N97 
Less N95 N96 

data N97

Instances

Size N97 
Less a N96 => Less a N97 
Less N97 N98 
Less N96 N97 

data N98

Instances

Size N98 
Less a N97 => Less a N98 
Less N98 N99 
Less N97 N98 

data N99

Instances

Size N99 
Less a N98 => Less a N99 
Less N99 N100 
Less N98 N99 

data N100

Instances

Size N100 
Less a N99 => Less a N100 
Less N100 N101 
Less N99 N100 

data N101

Instances

Size N101 
Less a N100 => Less a N101 
Less N101 N102 
Less N100 N101 

data N102

Instances

Size N102 
Less a N101 => Less a N102 
Less N102 N103 
Less N101 N102 

data N103

Instances

Size N103 
Less a N102 => Less a N103 
Less N103 N104 
Less N102 N103 

data N104

Instances

Size N104 
Less a N103 => Less a N104 
Less N104 N105 
Less N103 N104 

data N105

Instances

Size N105 
Less a N104 => Less a N105 
Less N105 N106 
Less N104 N105 

data N106

Instances

Size N106 
Less a N105 => Less a N106 
Less N106 N107 
Less N105 N106 

data N107

Instances

Size N107 
Less a N106 => Less a N107 
Less N107 N108 
Less N106 N107 

data N108

Instances

Size N108 
Less a N107 => Less a N108 
Less N108 N109 
Less N107 N108 

data N109

Instances

Size N109 
Less a N108 => Less a N109 
Less N109 N110 
Less N108 N109 

data N110

Instances

Size N110 
Less a N109 => Less a N110 
Less N110 N111 
Less N109 N110 

data N111

Instances

Size N111 
Less a N110 => Less a N111 
Less N111 N112 
Less N110 N111 

data N112

Instances

Size N112 
Less a N111 => Less a N112 
Less N112 N113 
Less N111 N112 

data N113

Instances

Size N113 
Less a N112 => Less a N113 
Less N113 N114 
Less N112 N113 

data N114

Instances

Size N114 
Less a N113 => Less a N114 
Less N114 N115 
Less N113 N114 

data N115

Instances

Size N115 
Less a N114 => Less a N115 
Less N115 N116 
Less N114 N115 

data N116

Instances

Size N116 
Less a N115 => Less a N116 
Less N116 N117 
Less N115 N116 

data N117

Instances

Size N117 
Less a N116 => Less a N117 
Less N117 N118 
Less N116 N117 

data N118

Instances

Size N118 
Less a N117 => Less a N118 
Less N118 N119 
Less N117 N118 

data N119

Instances

Size N119 
Less a N118 => Less a N119 
Less N119 N120 
Less N118 N119 

data N120

Instances

Size N120 
Less a N119 => Less a N120 
Less N120 N121 
Less N119 N120 

data N121

Instances

Size N121 
Less a N120 => Less a N121 
Less N121 N122 
Less N120 N121 

data N122

Instances

Size N122 
Less a N121 => Less a N122 
Less N122 N123 
Less N121 N122 

data N123

Instances

Size N123 
Less a N122 => Less a N123 
Less N123 N124 
Less N122 N123 

data N124

Instances

Size N124 
Less a N123 => Less a N124 
Less N124 N125 
Less N123 N124 

data N125

Instances

Size N125 
Less a N124 => Less a N125 
Less N125 N126 
Less N124 N125 

data N126

Instances

Size N126 
Less a N125 => Less a N126 
Less N126 N127 
Less N125 N126 

data N127

Instances

Size N127 
Less a N126 => Less a N127 
Less N127 N128 
Less N126 N127 

data N128

Instances

Size N128 
Less a N127 => Less a N128 
Less N128 N129 
Less N127 N128 

data N129

Instances

Size N129 
Less a N128 => Less a N129 
Less N129 N130 
Less N128 N129 

data N130

Instances

Size N130 
Less a N129 => Less a N130 
Less N130 N131 
Less N129 N130 

data N131

Instances

Size N131 
Less a N130 => Less a N131 
Less N131 N132 
Less N130 N131 

data N132

Instances

Size N132 
Less a N131 => Less a N132 
Less N132 N133 
Less N131 N132 

data N133

Instances

Size N133 
Less a N132 => Less a N133 
Less N133 N134 
Less N132 N133 

data N134

Instances

Size N134 
Less a N133 => Less a N134 
Less N134 N135 
Less N133 N134 

data N135

Instances

Size N135 
Less a N134 => Less a N135 
Less N135 N136 
Less N134 N135 

data N136

Instances

Size N136 
Less a N135 => Less a N136 
Less N136 N137 
Less N135 N136 

data N137

Instances

Size N137 
Less a N136 => Less a N137 
Less N137 N138 
Less N136 N137 

data N138

Instances

Size N138 
Less a N137 => Less a N138 
Less N138 N139 
Less N137 N138 

data N139

Instances

Size N139 
Less a N138 => Less a N139 
Less N139 N140 
Less N138 N139 

data N140

Instances

Size N140 
Less a N139 => Less a N140 
Less N140 N141 
Less N139 N140 

data N141

Instances

Size N141 
Less a N140 => Less a N141 
Less N141 N142 
Less N140 N141 

data N142

Instances

Size N142 
Less a N141 => Less a N142 
Less N142 N143 
Less N141 N142 

data N143

Instances

Size N143 
Less a N142 => Less a N143 
Less N143 N144 
Less N142 N143 

data N144

Instances

Size N144 
Less a N143 => Less a N144 
Less N144 N145 
Less N143 N144 

data N145

Instances

Size N145 
Less a N144 => Less a N145 
Less N145 N146 
Less N144 N145 

data N146

Instances

Size N146 
Less a N145 => Less a N146 
Less N146 N147 
Less N145 N146 

data N147

Instances

Size N147 
Less a N146 => Less a N147 
Less N147 N148 
Less N146 N147 

data N148

Instances

Size N148 
Less a N147 => Less a N148 
Less N148 N149 
Less N147 N148 

data N149

Instances

Size N149 
Less a N148 => Less a N149 
Less N149 N150 
Less N148 N149 

data N150

Instances

Size N150 
Less a N149 => Less a N150 
Less N150 N151 
Less N149 N150 

data N151

Instances

Size N151 
Less a N150 => Less a N151 
Less N151 N152 
Less N150 N151 

data N152

Instances

Size N152 
Less a N151 => Less a N152 
Less N152 N153 
Less N151 N152 

data N153

Instances

Size N153 
Less a N152 => Less a N153 
Less N153 N154 
Less N152 N153 

data N154

Instances

Size N154 
Less a N153 => Less a N154 
Less N154 N155 
Less N153 N154 

data N155

Instances

Size N155 
Less a N154 => Less a N155 
Less N155 N156 
Less N154 N155 

data N156

Instances

Size N156 
Less a N155 => Less a N156 
Less N156 N157 
Less N155 N156 

data N157

Instances

Size N157 
Less a N156 => Less a N157 
Less N157 N158 
Less N156 N157 

data N158

Instances

Size N158 
Less a N157 => Less a N158 
Less N158 N159 
Less N157 N158 

data N159

Instances

Size N159 
Less a N158 => Less a N159 
Less N159 N160 
Less N158 N159 

data N160

Instances

Size N160 
Less a N159 => Less a N160 
Less N160 N161 
Less N159 N160 

data N161

Instances

Size N161 
Less a N160 => Less a N161 
Less N161 N162 
Less N160 N161 

data N162

Instances

Size N162 
Less a N161 => Less a N162 
Less N162 N163 
Less N161 N162 

data N163

Instances

Size N163 
Less a N162 => Less a N163 
Less N163 N164 
Less N162 N163 

data N164

Instances

Size N164 
Less a N163 => Less a N164 
Less N164 N165 
Less N163 N164 

data N165

Instances

Size N165 
Less a N164 => Less a N165 
Less N165 N166 
Less N164 N165 

data N166

Instances

Size N166 
Less a N165 => Less a N166 
Less N166 N167 
Less N165 N166 

data N167

Instances

Size N167 
Less a N166 => Less a N167 
Less N167 N168 
Less N166 N167 

data N168

Instances

Size N168 
Less a N167 => Less a N168 
Less N168 N169 
Less N167 N168 

data N169

Instances

Size N169 
Less a N168 => Less a N169 
Less N169 N170 
Less N168 N169 

data N170

Instances

Size N170 
Less a N169 => Less a N170 
Less N170 N171 
Less N169 N170 

data N171

Instances

Size N171 
Less a N170 => Less a N171 
Less N171 N172 
Less N170 N171 

data N172

Instances

Size N172 
Less a N171 => Less a N172 
Less N172 N173 
Less N171 N172 

data N173

Instances

Size N173 
Less a N172 => Less a N173 
Less N173 N174 
Less N172 N173 

data N174

Instances

Size N174 
Less a N173 => Less a N174 
Less N174 N175 
Less N173 N174 

data N175

Instances

Size N175 
Less a N174 => Less a N175 
Less N175 N176 
Less N174 N175 

data N176

Instances

Size N176 
Less a N175 => Less a N176 
Less N176 N177 
Less N175 N176 

data N177

Instances

Size N177 
Less a N176 => Less a N177 
Less N177 N178 
Less N176 N177 

data N178

Instances

Size N178 
Less a N177 => Less a N178 
Less N178 N179 
Less N177 N178 

data N179

Instances

Size N179 
Less a N178 => Less a N179 
Less N179 N180 
Less N178 N179 

data N180

Instances

Size N180 
Less a N179 => Less a N180 
Less N180 N181 
Less N179 N180 

data N181

Instances

Size N181 
Less a N180 => Less a N181 
Less N181 N182 
Less N180 N181 

data N182

Instances

Size N182 
Less a N181 => Less a N182 
Less N182 N183 
Less N181 N182 

data N183

Instances

Size N183 
Less a N182 => Less a N183 
Less N183 N184 
Less N182 N183 

data N184

Instances

Size N184 
Less a N183 => Less a N184 
Less N184 N185 
Less N183 N184 

data N185

Instances

Size N185 
Less a N184 => Less a N185 
Less N185 N186 
Less N184 N185 

data N186

Instances

Size N186 
Less a N185 => Less a N186 
Less N186 N187 
Less N185 N186 

data N187

Instances

Size N187 
Less a N186 => Less a N187 
Less N187 N188 
Less N186 N187 

data N188

Instances

Size N188 
Less a N187 => Less a N188 
Less N188 N189 
Less N187 N188 

data N189

Instances

Size N189 
Less a N188 => Less a N189 
Less N189 N190 
Less N188 N189 

data N190

Instances

Size N190 
Less a N189 => Less a N190 
Less N190 N191 
Less N189 N190 

data N191

Instances

Size N191 
Less a N190 => Less a N191 
Less N191 N192 
Less N190 N191 

data N192

Instances

Size N192 
Less a N191 => Less a N192 
Less N192 N193 
Less N191 N192 

data N193

Instances

Size N193 
Less a N192 => Less a N193 
Less N193 N194 
Less N192 N193 

data N194

Instances

Size N194 
Less a N193 => Less a N194 
Less N194 N195 
Less N193 N194 

data N195

Instances

Size N195 
Less a N194 => Less a N195 
Less N195 N196 
Less N194 N195 

data N196

Instances

Size N196 
Less a N195 => Less a N196 
Less N196 N197 
Less N195 N196 

data N197

Instances

Size N197 
Less a N196 => Less a N197 
Less N197 N198 
Less N196 N197 

data N198

Instances

Size N198 
Less a N197 => Less a N198 
Less N198 N199 
Less N197 N198 

data N199

Instances

Size N199 
Less a N198 => Less a N199 
Less N199 N200 
Less N198 N199 

data N200

Instances

Size N200 
Less a N199 => Less a N200 
Less N200 N201 
Less N199 N200 

data N201

Instances

Size N201 
Less a N200 => Less a N201 
Less N201 N202 
Less N200 N201 

data N202

Instances

Size N202 
Less a N201 => Less a N202 
Less N202 N203 
Less N201 N202 

data N203

Instances

Size N203 
Less a N202 => Less a N203 
Less N203 N204 
Less N202 N203 

data N204

Instances

Size N204 
Less a N203 => Less a N204 
Less N204 N205 
Less N203 N204 

data N205

Instances

Size N205 
Less a N204 => Less a N205 
Less N205 N206 
Less N204 N205 

data N206

Instances

Size N206 
Less a N205 => Less a N206 
Less N206 N207 
Less N205 N206 

data N207

Instances

Size N207 
Less a N206 => Less a N207 
Less N207 N208 
Less N206 N207 

data N208

Instances

Size N208 
Less a N207 => Less a N208 
Less N208 N209 
Less N207 N208 

data N209

Instances

Size N209 
Less a N208 => Less a N209 
Less N209 N210 
Less N208 N209 

data N210

Instances

Size N210 
Less a N209 => Less a N210 
Less N210 N211 
Less N209 N210 

data N211

Instances

Size N211 
Less a N210 => Less a N211 
Less N211 N212 
Less N210 N211 

data N212

Instances

Size N212 
Less a N211 => Less a N212 
Less N212 N213 
Less N211 N212 

data N213

Instances

Size N213 
Less a N212 => Less a N213 
Less N213 N214 
Less N212 N213 

data N214

Instances

Size N214 
Less a N213 => Less a N214 
Less N214 N215 
Less N213 N214 

data N215

Instances

Size N215 
Less a N214 => Less a N215 
Less N215 N216 
Less N214 N215 

data N216

Instances

Size N216 
Less a N215 => Less a N216 
Less N216 N217 
Less N215 N216 

data N217

Instances

Size N217 
Less a N216 => Less a N217 
Less N217 N218 
Less N216 N217 

data N218

Instances

Size N218 
Less a N217 => Less a N218 
Less N218 N219 
Less N217 N218 

data N219

Instances

Size N219 
Less a N218 => Less a N219 
Less N219 N220 
Less N218 N219 

data N220

Instances

Size N220 
Less a N219 => Less a N220 
Less N220 N221 
Less N219 N220 

data N221

Instances

Size N221 
Less a N220 => Less a N221 
Less N221 N222 
Less N220 N221 

data N222

Instances

Size N222 
Less a N221 => Less a N222 
Less N222 N223 
Less N221 N222 

data N223

Instances

Size N223 
Less a N222 => Less a N223 
Less N223 N224 
Less N222 N223 

data N224

Instances

Size N224 
Less a N223 => Less a N224 
Less N224 N225 
Less N223 N224 

data N225

Instances

Size N225 
Less a N224 => Less a N225 
Less N225 N226 
Less N224 N225 

data N226

Instances

Size N226 
Less a N225 => Less a N226 
Less N226 N227 
Less N225 N226 

data N227

Instances

Size N227 
Less a N226 => Less a N227 
Less N227 N228 
Less N226 N227 

data N228

Instances

Size N228 
Less a N227 => Less a N228 
Less N228 N229 
Less N227 N228 

data N229

Instances

Size N229 
Less a N228 => Less a N229 
Less N229 N230 
Less N228 N229 

data N230

Instances

Size N230 
Less a N229 => Less a N230 
Less N230 N231 
Less N229 N230 

data N231

Instances

Size N231 
Less a N230 => Less a N231 
Less N231 N232 
Less N230 N231 

data N232

Instances

Size N232 
Less a N231 => Less a N232 
Less N232 N233 
Less N231 N232 

data N233

Instances

Size N233 
Less a N232 => Less a N233 
Less N233 N234 
Less N232 N233 

data N234

Instances

Size N234 
Less a N233 => Less a N234 
Less N234 N235 
Less N233 N234 

data N235

Instances

Size N235 
Less a N234 => Less a N235 
Less N235 N236 
Less N234 N235 

data N236

Instances

Size N236 
Less a N235 => Less a N236 
Less N236 N237 
Less N235 N236 

data N237

Instances

Size N237 
Less a N236 => Less a N237 
Less N237 N238 
Less N236 N237 

data N238

Instances

Size N238 
Less a N237 => Less a N238 
Less N238 N239 
Less N237 N238 

data N239

Instances

Size N239 
Less a N238 => Less a N239 
Less N239 N240 
Less N238 N239 

data N240

Instances

Size N240 
Less a N239 => Less a N240 
Less N240 N241 
Less N239 N240 

data N241

Instances

Size N241 
Less a N240 => Less a N241 
Less N241 N242 
Less N240 N241 

data N242

Instances

Size N242 
Less a N241 => Less a N242 
Less N242 N243 
Less N241 N242 

data N243

Instances

Size N243 
Less a N242 => Less a N243 
Less N243 N244 
Less N242 N243 

data N244

Instances

Size N244 
Less a N243 => Less a N244 
Less N244 N245 
Less N243 N244 

data N245

Instances

Size N245 
Less a N244 => Less a N245 
Less N245 N246 
Less N244 N245 

data N246

Instances

Size N246 
Less a N245 => Less a N246 
Less N246 N247 
Less N245 N246 

data N247

Instances

Size N247 
Less a N246 => Less a N247 
Less N247 N248 
Less N246 N247 

data N248

Instances

Size N248 
Less a N247 => Less a N248 
Less N248 N249 
Less N247 N248 

data N249

Instances

Size N249 
Less a N248 => Less a N249 
Less N249 N250 
Less N248 N249 

data N250

Instances

Size N250 
Less a N249 => Less a N250 
Less N250 N251 
Less N249 N250 

data N251

Instances

Size N251 
Less a N250 => Less a N251 
Less N251 N252 
Less N250 N251 

data N252

Instances

Size N252 
Less a N251 => Less a N252 
Less N252 N253 
Less N251 N252 

data N253

Instances

Size N253 
Less a N252 => Less a N253 
Less N253 N254 
Less N252 N253 

data N254

Instances

Size N254 
Less a N253 => Less a N254 
Less N254 N255 
Less N253 N254 

data N255

Instances

Size N255 
Less a N254 => Less a N255 
Less N255 N65535 
Less N254 N255 

data N65535

Instances

Size N65535 
Less a N255 => Less a N65535 
Less N255 N65535