====== string.byte ======
--- checkallpass
-		string.byte('abc')	97
-		string.byte(1.25)	49
--- checkallpass
-		string.byte('abc',1.25)	97
-		string.byte(1.25,1.25)	49
-		string.byte('abc','789')	
-		string.byte(1.25,'789')	
--- checkallpass
-		string.byte('abc',1.25,1.25)	97
-		string.byte(1.25,1.25,1.25)	49
-		string.byte('abc','789',1.25)	
-		string.byte(1.25,'789',1.25)	
-		string.byte('abc',1.25,'789')	97,98,99
-		string.byte(1.25,1.25,'789')	49,46,50,53
-		string.byte('abc','789','789')	
-		string.byte(1.25,'789','789')	
--- checkallerrors
-		string.byte('abc','abc')	...bad argument...
-		string.byte(1.25,'abc')	...bad argument...
-		string.byte('abc',<function>)	...bad argument...
-		string.byte(1.25,<function>)	...bad argument...
-		string.byte('abc',<table>)	...bad argument...
-		string.byte(1.25,<table>)	...bad argument...
--- checkallerrors
-		string.byte(nil,nil)	...bad argument...
-		string.byte(true,nil)	...bad argument...
-		string.byte(<table>,nil)	...bad argument...
-		string.byte(<function>,nil)	...bad argument...
-		string.byte(<thread>,nil)	...bad argument...
-		string.byte(nil,111)	...bad argument...
-		string.byte(true,111)	...bad argument...
-		string.byte(<table>,111)	...bad argument...
-		string.byte(<function>,111)	...bad argument...
-		string.byte(<thread>,111)	...bad argument...
====== string_char ======
--- checkallpass
-		string.char(60)	'<'
--- checkallpass
-		string.char(60,70)	'<F'
--- checkallpass
-		string.char(60,70,80)	'<FP'
--- checkallpass
-		string_char(0)	0
-		string_char(9)	9
-		string_char(40)	40
-		string_char(127)	127
-		string_char(128)	128
-		string_char(255)	255
-		string_char('0')	0
-		string_char('9')	9
-		string_char('255')	255
-		string_char('9.2')	9
-		string_char(9.2)	9
--- checkallpass
-		string_char(0,0)	0
-		string_char(127,0)	127
-		string_char(255,0)	255
-		string_char(0,127)	0
-		string_char(127,127)	127
-		string_char(255,127)	255
-		string_char(0,255)	0
-		string_char(127,255)	127
-		string_char(255,255)	255
--- checkallerrors
-		string_char(nil)	...bad argument...
-		string_char(-1)	...bad argument...
-		string_char(256)	...bad argument...
--- checkallerrors
-		string_char(nil,23)	...bad argument...
-		string_char('abc',23)	...bad argument...
-		string_char(true,23)	...bad argument...
-		string_char(<table>,23)	...bad argument...
-		string_char(<function>,23)	...bad argument...
-		string_char(<thread>,23)	...bad argument...
-		string_char(nil,'45')	...bad argument...
-		string_char('abc','45')	...bad argument...
-		string_char(true,'45')	...bad argument...
-		string_char(<table>,'45')	...bad argument...
-		string_char(<function>,'45')	...bad argument...
-		string_char(<thread>,'45')	...bad argument...
-		string_char(nil,6.7)	...bad argument...
-		string_char('abc',6.7)	...bad argument...
-		string_char(true,6.7)	...bad argument...
-		string_char(<table>,6.7)	...bad argument...
-		string_char(<function>,6.7)	...bad argument...
-		string_char(<thread>,6.7)	...bad argument...
--- checkallerrors
-		string_char(23,'abc')	...bad argument...
-		string_char('45','abc')	...bad argument...
-		string_char(6.7,'abc')	...bad argument...
-		string_char(23,true)	...bad argument...
-		string_char('45',true)	...bad argument...
-		string_char(6.7,true)	...bad argument...
-		string_char(23,<table>)	...bad argument...
-		string_char('45',<table>)	...bad argument...
-		string_char(6.7,<table>)	...bad argument...
-		string_char(23,<function>)	...bad argument...
-		string_char('45',<function>)	...bad argument...
-		string_char(6.7,<function>)	...bad argument...
-		string_char(23,<thread>)	...bad argument...
-		string_char('45',<thread>)	...bad argument...
-		string_char(6.7,<thread>)	...bad argument...
====== string.dump ======
--- checkallerrors
-		string.dump(nil)	...bad argument...
-		string.dump('abc')	...bad argument...
-		string.dump(1.25)	...bad argument...
-		string.dump(true)	...bad argument...
-		string.dump(<table>)	...bad argument...
-		string.dump(<thread>)	...bad argument...
====== string.find ======
--- checkallpass
-		string.find('abc','abc')	1,3
-		string.find(1.25,'abc')	
-		string.find('abc',1.25)	
-		string.find(1.25,1.25)	1,4
--- checkallpass
-		string.find('abc','abc',nil)	1,3
-		string.find(1.25,'abc',nil)	
-		string.find('abc',1.25,nil)	
-		string.find(1.25,1.25,nil)	1,4
-		string.find('abc','abc',-3)	1,3
-		string.find(1.25,'abc',-3)	
-		string.find('abc',1.25,-3)	
-		string.find(1.25,1.25,-3)	
-		string.find('abc','abc',3)	
-		string.find(1.25,'abc',3)	
-		string.find('abc',1.25,3)	
-		string.find(1.25,1.25,3)	
--- checkallpass
-		string.find('abc','abc',1.25,nil)	1,3
-		string.find(1.25,'abc',1.25,nil)	
-		string.find('abc',1.25,1.25,nil)	
-		string.find(1.25,1.25,1.25,nil)	1,4
-		string.find('abc','abc','789',nil)	
-		string.find(1.25,'abc','789',nil)	
-		string.find('abc',1.25,'789',nil)	
-		string.find(1.25,1.25,'789',nil)	
-		string.find('abc','abc',1.25,'abc')	1,3
-		string.find(1.25,'abc',1.25,'abc')	
-		string.find('abc',1.25,1.25,'abc')	
-		string.find(1.25,1.25,1.25,'abc')	1,4
-		string.find('abc','abc','789','abc')	
-		string.find(1.25,'abc','789','abc')	
-		string.find('abc',1.25,'789','abc')	
-		string.find(1.25,1.25,'789','abc')	
-		string.find('abc','abc',1.25,1.25)	1,3
-		string.find(1.25,'abc',1.25,1.25)	
-		string.find('abc',1.25,1.25,1.25)	
-		string.find(1.25,1.25,1.25,1.25)	1,4
-		string.find('abc','abc','789',1.25)	
-		string.find(1.25,'abc','789',1.25)	
-		string.find('abc',1.25,'789',1.25)	
-		string.find(1.25,1.25,'789',1.25)	
-		string.find('abc','abc',1.25,true)	1,3
-		string.find(1.25,'abc',1.25,true)	
-		string.find('abc',1.25,1.25,true)	
-		string.find(1.25,1.25,1.25,true)	1,4
-		string.find('abc','abc','789',true)	
-		string.find(1.25,'abc','789',true)	
-		string.find('abc',1.25,'789',true)	
-		string.find(1.25,1.25,'789',true)	
-		string.find('abc','abc',1.25,<table>)	1,3
-		string.find(1.25,'abc',1.25,<table>)	
-		string.find('abc',1.25,1.25,<table>)	
-		string.find(1.25,1.25,1.25,<table>)	1,4
-		string.find('abc','abc','789',<table>)	
-		string.find(1.25,'abc','789',<table>)	
-		string.find('abc',1.25,'789',<table>)	
-		string.find(1.25,1.25,'789',<table>)	
-		string.find('abc','abc',1.25,<function>)	1,3
-		string.find(1.25,'abc',1.25,<function>)	
-		string.find('abc',1.25,1.25,<function>)	
-		string.find(1.25,1.25,1.25,<function>)	1,4
-		string.find('abc','abc','789',<function>)	
-		string.find(1.25,'abc','789',<function>)	
-		string.find('abc',1.25,'789',<function>)	
-		string.find(1.25,1.25,'789',<function>)	
-		string.find('abc','abc',1.25,<thread>)	1,3
-		string.find(1.25,'abc',1.25,<thread>)	
-		string.find('abc',1.25,1.25,<thread>)	
-		string.find(1.25,1.25,1.25,<thread>)	1,4
-		string.find('abc','abc','789',<thread>)	
-		string.find(1.25,'abc','789',<thread>)	
-		string.find('abc',1.25,'789',<thread>)	
-		string.find(1.25,1.25,'789',<thread>)	
--- checkallerrors
-		string.find(nil,'abc')	...bad argument...
-		string.find(true,'abc')	...bad argument...
-		string.find(<table>,'abc')	...bad argument...
-		string.find(<function>,'abc')	...bad argument...
-		string.find(<thread>,'abc')	...bad argument...
-		string.find(nil,1.25)	...bad argument...
-		string.find(true,1.25)	...bad argument...
-		string.find(<table>,1.25)	...bad argument...
-		string.find(<function>,1.25)	...bad argument...
-		string.find(<thread>,1.25)	...bad argument...
--- checkallerrors
-		string.find('abc',nil)	...bad argument...
-		string.find(1.25,nil)	...bad argument...
-		string.find('abc',true)	...bad argument...
-		string.find(1.25,true)	...bad argument...
-		string.find('abc',<table>)	...bad argument...
-		string.find(1.25,<table>)	...bad argument...
-		string.find('abc',<function>)	...bad argument...
-		string.find(1.25,<function>)	...bad argument...
-		string.find('abc',<thread>)	...bad argument...
-		string.find(1.25,<thread>)	...bad argument...
--- checkallerrors
-		string.find('abc','abc','abc')	...bad argument...
-		string.find(1.25,'abc','abc')	...bad argument...
-		string.find('abc',1.25,'abc')	...bad argument...
-		string.find(1.25,1.25,'abc')	...bad argument...
-		string.find('abc','abc',true)	...bad argument...
-		string.find(1.25,'abc',true)	...bad argument...
-		string.find('abc',1.25,true)	...bad argument...
-		string.find(1.25,1.25,true)	...bad argument...
-		string.find('abc','abc',<table>)	...bad argument...
-		string.find(1.25,'abc',<table>)	...bad argument...
-		string.find('abc',1.25,<table>)	...bad argument...
-		string.find(1.25,1.25,<table>)	...bad argument...
-		string.find('abc','abc',<function>)	...bad argument...
-		string.find(1.25,'abc',<function>)	...bad argument...
-		string.find('abc',1.25,<function>)	...bad argument...
-		string.find(1.25,1.25,<function>)	...bad argument...
-		string.find('abc','abc',<thread>)	...bad argument...
-		string.find(1.25,'abc',<thread>)	...bad argument...
-		string.find('abc',1.25,<thread>)	...bad argument...
-		string.find(1.25,1.25,<thread>)	...bad argument...
====== string.format ======
--- checkallpass
-		string.format('abc',nil)	'abc'
-		string.format(1.25,nil)	'1.25'
-		string.format('abc','abc')	'abc'
-		string.format(1.25,'abc')	'1.25'
-		string.format('abc',1.25)	'abc'
-		string.format(1.25,1.25)	'1.25'
-		string.format('abc',true)	'abc'
-		string.format(1.25,true)	'1.25'
-		string.format('abc',<table>)	'abc'
-		string.format(1.25,<table>)	'1.25'
-		string.format('abc',<function>)	'abc'
-		string.format(1.25,<function>)	'1.25'
-		string.format('abc',<thread>)	'abc'
-		string.format(1.25,<thread>)	'1.25'
--- checkallpass
-		string.format('%c',1.25)	''
-		string.format('%d',1.25)	'1'
-		string.format('%i',1.25)	'1'
-		string.format('%o',1.25)	'1'
-		string.format('%u',1.25)	'1'
-		string.format('%X',1.25)	'1'
-		string.format('%x',1.25)	'1'
-		string.format('%c','789')	''
-		string.format('%d','789')	'789'
-		string.format('%i','789')	'789'
-		string.format('%o','789')	'1425'
-		string.format('%u','789')	'789'
-		string.format('%X','789')	'315'
-		string.format('%x','789')	'315'
--- checkallpass
-		string.format('%q','abc')	'"abc"'
-		string.format('%s','abc')	'abc'
-		string.format('%q',1.25)	'"1.25"'
-		string.format('%s',1.25)	'1.25'
--- checkallerrors
-		string.format('%c',nil)	...bad argument...
-		string.format('%d',nil)	...bad argument...
-		string.format('%i',nil)	...bad argument...
-		string.format('%o',nil)	...bad argument...
-		string.format('%u',nil)	...bad argument...
-		string.format('%X',nil)	...bad argument...
-		string.format('%x',nil)	...bad argument...
-		string.format('%c','abc')	...bad argument...
-		string.format('%d','abc')	...bad argument...
-		string.format('%i','abc')	...bad argument...
-		string.format('%o','abc')	...bad argument...
-		string.format('%u','abc')	...bad argument...
-		string.format('%X','abc')	...bad argument...
-		string.format('%x','abc')	...bad argument...
-		string.format('%c',true)	...bad argument...
-		string.format('%d',true)	...bad argument...
-		string.format('%i',true)	...bad argument...
-		string.format('%o',true)	...bad argument...
-		string.format('%u',true)	...bad argument...
-		string.format('%X',true)	...bad argument...
-		string.format('%x',true)	...bad argument...
-		string.format('%c',<table>)	...bad argument...
-		string.format('%d',<table>)	...bad argument...
-		string.format('%i',<table>)	...bad argument...
-		string.format('%o',<table>)	...bad argument...
-		string.format('%u',<table>)	...bad argument...
-		string.format('%X',<table>)	...bad argument...
-		string.format('%x',<table>)	...bad argument...
-		string.format('%c',<function>)	...bad argument...
-		string.format('%d',<function>)	...bad argument...
-		string.format('%i',<function>)	...bad argument...
-		string.format('%o',<function>)	...bad argument...
-		string.format('%u',<function>)	...bad argument...
-		string.format('%X',<function>)	...bad argument...
-		string.format('%x',<function>)	...bad argument...
-		string.format('%c',<thread>)	...bad argument...
-		string.format('%d',<thread>)	...bad argument...
-		string.format('%i',<thread>)	...bad argument...
-		string.format('%o',<thread>)	...bad argument...
-		string.format('%u',<thread>)	...bad argument...
-		string.format('%X',<thread>)	...bad argument...
-		string.format('%x',<thread>)	...bad argument...
--- checkallerrors
-		string.format('%q',nil)	...bad argument...
-		string.format('%q',true)	...bad argument...
-		string.format('%q',<table>)	...bad argument...
-		string.format('%q',<function>)	...bad argument...
-		string.format('%q',<thread>)	...bad argument...
--- checkallerrors
-		string.format('%w','abc')	...invalid option '%w'...
-		string.format('%w',1.25)	...invalid option '%w'...
====== string.gmatch ======
--- checkallpass
-		string.gmatch('abc','abc')	<function>
-		string.gmatch(1.25,'abc')	<function>
-		string.gmatch('abc',1.25)	<function>
-		string.gmatch(1.25,1.25)	<function>
--- checkallerrors
-		string.gmatch(nil,'abc')	...bad argument...
-		string.gmatch(true,'abc')	...bad argument...
-		string.gmatch(<table>,'abc')	...bad argument...
-		string.gmatch(<function>,'abc')	...bad argument...
-		string.gmatch(<thread>,'abc')	...bad argument...
-		string.gmatch(nil,1.25)	...bad argument...
-		string.gmatch(true,1.25)	...bad argument...
-		string.gmatch(<table>,1.25)	...bad argument...
-		string.gmatch(<function>,1.25)	...bad argument...
-		string.gmatch(<thread>,1.25)	...bad argument...
--- checkallerrors
-		string.gmatch('abc',nil)	...bad argument...
-		string.gmatch(1.25,nil)	...bad argument...
-		string.gmatch('abc',true)	...bad argument...
-		string.gmatch(1.25,true)	...bad argument...
-		string.gmatch('abc',<table>)	...bad argument...
-		string.gmatch(1.25,<table>)	...bad argument...
-		string.gmatch('abc',<function>)	...bad argument...
-		string.gmatch(1.25,<function>)	...bad argument...
-		string.gmatch('abc',<thread>)	...bad argument...
-		string.gmatch(1.25,<thread>)	...bad argument...
====== string.gsub ======
--- checkallpass
-		string.gsub('abc','abc','abc',nil)	'abc',1
-		string.gsub(1.25,'abc','abc',nil)	'1.25',0
-		string.gsub('abc',1.25,'abc',nil)	'abc',0
-		string.gsub(1.25,1.25,'abc',nil)	'abc',1
-		string.gsub('abc','abc',<table>,nil)	'abc',1
-		string.gsub(1.25,'abc',<table>,nil)	'1.25',0
-		string.gsub('abc',1.25,<table>,nil)	'abc',0
-		string.gsub(1.25,1.25,<table>,nil)	'1.25',1
-		string.gsub('abc','abc',<function>,nil)	'abc',1
-		string.gsub(1.25,'abc',<function>,nil)	'1.25',0
-		string.gsub('abc',1.25,<function>,nil)	'abc',0
-		string.gsub(1.25,1.25,<function>,nil)	'1.25',1
-		string.gsub('abc','abc','abc',-1)	'abc',1
-		string.gsub(1.25,'abc','abc',-1)	'1.25',0
-		string.gsub('abc',1.25,'abc',-1)	'abc',0
-		string.gsub(1.25,1.25,'abc',-1)	'abc',1
-		string.gsub('abc','abc',<table>,-1)	'abc',1
-		string.gsub(1.25,'abc',<table>,-1)	'1.25',0
-		string.gsub('abc',1.25,<table>,-1)	'abc',0
-		string.gsub(1.25,1.25,<table>,-1)	'1.25',1
-		string.gsub('abc','abc',<function>,-1)	'abc',1
-		string.gsub(1.25,'abc',<function>,-1)	'1.25',0
-		string.gsub('abc',1.25,<function>,-1)	'abc',0
-		string.gsub(1.25,1.25,<function>,-1)	'1.25',1
--- checkallerrors
-		string.gsub(true,'abc','abc')	...bad argument...
-		string.gsub(<table>,'abc','abc')	...bad argument...
-		string.gsub(<function>,'abc','abc')	...bad argument...
-		string.gsub(<thread>,'abc','abc')	...bad argument...
-		string.gsub(true,1.25,'abc')	...bad argument...
-		string.gsub(<table>,1.25,'abc')	...bad argument...
-		string.gsub(<function>,1.25,'abc')	...bad argument...
-		string.gsub(<thread>,1.25,'abc')	...bad argument...
-		string.gsub(true,'abc',<table>)	...bad argument...
-		string.gsub(<table>,'abc',<table>)	...bad argument...
-		string.gsub(<function>,'abc',<table>)	...bad argument...
-		string.gsub(<thread>,'abc',<table>)	...bad argument...
-		string.gsub(true,1.25,<table>)	...bad argument...
-		string.gsub(<table>,1.25,<table>)	...bad argument...
-		string.gsub(<function>,1.25,<table>)	...bad argument...
-		string.gsub(<thread>,1.25,<table>)	...bad argument...
-		string.gsub(true,'abc',<function>)	...bad argument...
-		string.gsub(<table>,'abc',<function>)	...bad argument...
-		string.gsub(<function>,'abc',<function>)	...bad argument...
-		string.gsub(<thread>,'abc',<function>)	...bad argument...
-		string.gsub(true,1.25,<function>)	...bad argument...
-		string.gsub(<table>,1.25,<function>)	...bad argument...
-		string.gsub(<function>,1.25,<function>)	...bad argument...
-		string.gsub(<thread>,1.25,<function>)	...bad argument...
--- checkallerrors
-		string.gsub('abc',true,'abc')	...bad argument...
-		string.gsub(1.25,true,'abc')	...bad argument...
-		string.gsub('abc',<table>,'abc')	...bad argument...
-		string.gsub(1.25,<table>,'abc')	...bad argument...
-		string.gsub('abc',<function>,'abc')	...bad argument...
-		string.gsub(1.25,<function>,'abc')	...bad argument...
-		string.gsub('abc',<thread>,'abc')	...bad argument...
-		string.gsub(1.25,<thread>,'abc')	...bad argument...
-		string.gsub('abc',true,<table>)	...bad argument...
-		string.gsub(1.25,true,<table>)	...bad argument...
-		string.gsub('abc',<table>,<table>)	...bad argument...
-		string.gsub(1.25,<table>,<table>)	...bad argument...
-		string.gsub('abc',<function>,<table>)	...bad argument...
-		string.gsub(1.25,<function>,<table>)	...bad argument...
-		string.gsub('abc',<thread>,<table>)	...bad argument...
-		string.gsub(1.25,<thread>,<table>)	...bad argument...
-		string.gsub('abc',true,<function>)	...bad argument...
-		string.gsub(1.25,true,<function>)	...bad argument...
-		string.gsub('abc',<table>,<function>)	...bad argument...
-		string.gsub(1.25,<table>,<function>)	...bad argument...
-		string.gsub('abc',<function>,<function>)	...bad argument...
-		string.gsub(1.25,<function>,<function>)	...bad argument...
-		string.gsub('abc',<thread>,<function>)	...bad argument...
-		string.gsub(1.25,<thread>,<function>)	...bad argument...
--- checkallerrors
-		string.gsub('abc','abc',nil)	...bad argument...
-		string.gsub('abc','abc',true)	...bad argument...
--- checkallerrors
-		string.gsub('abc','abc','abc','abc')	...bad argument...
-		string.gsub('abc','abc',<table>,'abc')	...bad argument...
-		string.gsub('abc','abc',<function>,'abc')	...bad argument...
-		string.gsub('abc','abc','abc',true)	...bad argument...
-		string.gsub('abc','abc',<table>,true)	...bad argument...
-		string.gsub('abc','abc',<function>,true)	...bad argument...
-		string.gsub('abc','abc','abc',<table>)	...bad argument...
-		string.gsub('abc','abc',<table>,<table>)	...bad argument...
-		string.gsub('abc','abc',<function>,<table>)	...bad argument...
-		string.gsub('abc','abc','abc',<function>)	...bad argument...
-		string.gsub('abc','abc',<table>,<function>)	...bad argument...
-		string.gsub('abc','abc',<function>,<function>)	...bad argument...
-		string.gsub('abc','abc','abc',<thread>)	...bad argument...
-		string.gsub('abc','abc',<table>,<thread>)	...bad argument...
-		string.gsub('abc','abc',<function>,<thread>)	...bad argument...
====== string.len ======
--- checkallpass
-		string.len('abc')	3
-		string.len(1.25)	4
--- checkallerrors
-		string.len(nil)	...bad argument...
-		string.len(true)	...bad argument...
-		string.len(<table>)	...bad argument...
-		string.len(<function>)	...bad argument...
-		string.len(<thread>)	...bad argument...
====== string.lower ======
--- checkallpass
-		string.lower('abc')	'abc'
-		string.lower(1.25)	'1.25'
--- checkallerrors
-		string.lower(nil)	...bad argument...
-		string.lower(true)	...bad argument...
-		string.lower(<table>)	...bad argument...
-		string.lower(<function>)	...bad argument...
-		string.lower(<thread>)	...bad argument...
====== string.match ======
--- checkallpass
-		string.match('abc','abc')	'abc'
-		string.match(1.25,'abc')	
-		string.match('abc',1.25)	
-		string.match(1.25,1.25)	'1.25'
--- checkallpass
-		string.match('abc','abc',nil)	'abc'
-		string.match(1.25,'abc',nil)	
-		string.match('abc',1.25,nil)	
-		string.match(1.25,1.25,nil)	'1.25'
-		string.match('abc','abc',-3)	'abc'
-		string.match(1.25,'abc',-3)	
-		string.match('abc',1.25,-3)	
-		string.match(1.25,1.25,-3)	
-		string.match('abc','abc',3)	
-		string.match(1.25,'abc',3)	
-		string.match('abc',1.25,3)	
-		string.match(1.25,1.25,3)	
--- checkallerrors
-		string.match()	...bad argument...
--- checkallerrors
-		string.match(true,'abc')	...bad argument...
-		string.match(<table>,'abc')	...bad argument...
-		string.match(<function>,'abc')	...bad argument...
-		string.match(<thread>,'abc')	...bad argument...
-		string.match(true,1.25)	...bad argument...
-		string.match(<table>,1.25)	...bad argument...
-		string.match(<function>,1.25)	...bad argument...
-		string.match(<thread>,1.25)	...bad argument...
--- checkallerrors
-		string.match('abc')	...bad argument...
-		string.match(1.25)	...bad argument...
--- checkallerrors
-		string.match('abc',true)	...bad argument...
-		string.match(1.25,true)	...bad argument...
-		string.match('abc',<table>)	...bad argument...
-		string.match(1.25,<table>)	...bad argument...
-		string.match('abc',<function>)	...bad argument...
-		string.match(1.25,<function>)	...bad argument...
-		string.match('abc',<thread>)	...bad argument...
-		string.match(1.25,<thread>)	...bad argument...
--- checkallerrors
-		string.match('abc','abc','abc')	...bad argument...
-		string.match(1.25,'abc','abc')	...bad argument...
-		string.match('abc',1.25,'abc')	...bad argument...
-		string.match(1.25,1.25,'abc')	...bad argument...
-		string.match('abc','abc',true)	...bad argument...
-		string.match(1.25,'abc',true)	...bad argument...
-		string.match('abc',1.25,true)	...bad argument...
-		string.match(1.25,1.25,true)	...bad argument...
-		string.match('abc','abc',<table>)	...bad argument...
-		string.match(1.25,'abc',<table>)	...bad argument...
-		string.match('abc',1.25,<table>)	...bad argument...
-		string.match(1.25,1.25,<table>)	...bad argument...
-		string.match('abc','abc',<function>)	...bad argument...
-		string.match(1.25,'abc',<function>)	...bad argument...
-		string.match('abc',1.25,<function>)	...bad argument...
-		string.match(1.25,1.25,<function>)	...bad argument...
-		string.match('abc','abc',<thread>)	...bad argument...
-		string.match(1.25,'abc',<thread>)	...bad argument...
-		string.match('abc',1.25,<thread>)	...bad argument...
-		string.match(1.25,1.25,<thread>)	...bad argument...
====== string.reverse ======
--- checkallpass
-		string.reverse('abc')	'cba'
-		string.reverse(1.25)	'52.1'
--- checkallerrors
-		string.reverse(nil)	...bad argument...
-		string.reverse(true)	...bad argument...
-		string.reverse(<table>)	...bad argument...
-		string.reverse(<function>)	...bad argument...
-		string.reverse(<thread>)	...bad argument...
====== string.rep ======
--- checkallpass
-		string.rep('abc',1.25)	'abc'
-		string.rep(1.25,1.25)	'1.25'
-		string.rep('abc','789')	'abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabc'
-		string.rep(1.25,'789')	'1.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.251.25'
--- checkallerrors
-		string.rep(nil,1.25)	...bad argument...
-		string.rep(true,1.25)	...bad argument...
-		string.rep(<table>,1.25)	...bad argument...
-		string.rep(<function>,1.25)	...bad argument...
-		string.rep(<thread>,1.25)	...bad argument...
-		string.rep(nil,'789')	...bad argument...
-		string.rep(true,'789')	...bad argument...
-		string.rep(<table>,'789')	...bad argument...
-		string.rep(<function>,'789')	...bad argument...
-		string.rep(<thread>,'789')	...bad argument...
--- checkallerrors
-		string.rep('abc',nil)	...bad argument...
-		string.rep(1.25,nil)	...bad argument...
-		string.rep('abc','abc')	...bad argument...
-		string.rep(1.25,'abc')	...bad argument...
-		string.rep('abc',true)	...bad argument...
-		string.rep(1.25,true)	...bad argument...
-		string.rep('abc',<table>)	...bad argument...
-		string.rep(1.25,<table>)	...bad argument...
-		string.rep('abc',<function>)	...bad argument...
-		string.rep(1.25,<function>)	...bad argument...
-		string.rep('abc',<thread>)	...bad argument...
-		string.rep(1.25,<thread>)	...bad argument...
====== string.sub ======
--- checkallpass
-		string.sub('abc',1.25)	'abc'
-		string.sub(1.25,1.25)	'1.25'
-		string.sub('abc','789')	''
-		string.sub(1.25,'789')	''
--- checkallpass
-		string.sub('abc',1.25,1.25)	'a'
-		string.sub(1.25,1.25,1.25)	'1'
-		string.sub('abc','789',1.25)	''
-		string.sub(1.25,'789',1.25)	''
-		string.sub('abc',1.25,'789')	'abc'
-		string.sub(1.25,1.25,'789')	'1.25'
-		string.sub('abc','789','789')	''
-		string.sub(1.25,'789','789')	''
--- checkallerrors
-		string.sub()	...bad argument...
--- checkallerrors
-		string.sub(true,1.25,1.25)	...bad argument...
-		string.sub(<table>,1.25,1.25)	...bad argument...
-		string.sub(<function>,1.25,1.25)	...bad argument...
-		string.sub(<thread>,1.25,1.25)	...bad argument...
-		string.sub(true,'789',1.25)	...bad argument...
-		string.sub(<table>,'789',1.25)	...bad argument...
-		string.sub(<function>,'789',1.25)	...bad argument...
-		string.sub(<thread>,'789',1.25)	...bad argument...
-		string.sub(true,1.25,'789')	...bad argument...
-		string.sub(<table>,1.25,'789')	...bad argument...
-		string.sub(<function>,1.25,'789')	...bad argument...
-		string.sub(<thread>,1.25,'789')	...bad argument...
-		string.sub(true,'789','789')	...bad argument...
-		string.sub(<table>,'789','789')	...bad argument...
-		string.sub(<function>,'789','789')	...bad argument...
-		string.sub(<thread>,'789','789')	...bad argument...
--- checkallerrors
-		string.sub('abc')	...bad argument...
-		string.sub(1.25)	...bad argument...
--- checkallerrors
-		string.sub('abc','abc',1.25)	...bad argument...
-		string.sub(1.25,'abc',1.25)	...bad argument...
-		string.sub('abc',true,1.25)	...bad argument...
-		string.sub(1.25,true,1.25)	...bad argument...
-		string.sub('abc',<table>,1.25)	...bad argument...
-		string.sub(1.25,<table>,1.25)	...bad argument...
-		string.sub('abc',<function>,1.25)	...bad argument...
-		string.sub(1.25,<function>,1.25)	...bad argument...
-		string.sub('abc',<thread>,1.25)	...bad argument...
-		string.sub(1.25,<thread>,1.25)	...bad argument...
-		string.sub('abc','abc','789')	...bad argument...
-		string.sub(1.25,'abc','789')	...bad argument...
-		string.sub('abc',true,'789')	...bad argument...
-		string.sub(1.25,true,'789')	...bad argument...
-		string.sub('abc',<table>,'789')	...bad argument...
-		string.sub(1.25,<table>,'789')	...bad argument...
-		string.sub('abc',<function>,'789')	...bad argument...
-		string.sub(1.25,<function>,'789')	...bad argument...
-		string.sub('abc',<thread>,'789')	...bad argument...
-		string.sub(1.25,<thread>,'789')	...bad argument...
--- checkallerrors
-		string.sub('abc',1.25,'abc')	...bad argument...
-		string.sub(1.25,1.25,'abc')	...bad argument...
-		string.sub('abc','789','abc')	...bad argument...
-		string.sub(1.25,'789','abc')	...bad argument...
-		string.sub('abc',1.25,true)	...bad argument...
-		string.sub(1.25,1.25,true)	...bad argument...
-		string.sub('abc','789',true)	...bad argument...
-		string.sub(1.25,'789',true)	...bad argument...
-		string.sub('abc',1.25,<table>)	...bad argument...
-		string.sub(1.25,1.25,<table>)	...bad argument...
-		string.sub('abc','789',<table>)	...bad argument...
-		string.sub(1.25,'789',<table>)	...bad argument...
-		string.sub('abc',1.25,<function>)	...bad argument...
-		string.sub(1.25,1.25,<function>)	...bad argument...
-		string.sub('abc','789',<function>)	...bad argument...
-		string.sub(1.25,'789',<function>)	...bad argument...
-		string.sub('abc',1.25,<thread>)	...bad argument...
-		string.sub(1.25,1.25,<thread>)	...bad argument...
-		string.sub('abc','789',<thread>)	...bad argument...
-		string.sub(1.25,'789',<thread>)	...bad argument...
====== string.upper ======
--- checkallpass
-		string.upper('abc')	'ABC'
-		string.upper(1.25)	'1.25'
--- checkallerrors
-		string.upper(nil)	...bad argument...
-		string.upper(true)	...bad argument...
-		string.upper(<table>)	...bad argument...
-		string.upper(<function>)	...bad argument...
-		string.upper(<thread>)	...bad argument...
