Bin bug

General FreeBASIC programming questions.
Post Reply
ARZ
Posts: 6
Joined: Aug 06, 2023 0:52

Bin bug

Post by ARZ »

Hello coders.

mp = right( "00" + bin( n1[ 0 ] - 48 ) , 2 ) : works lickedy split.

This takes for ever!. Takes over a minute to run..
for a as longint = 1 to 10000
mp+= right( "00" + bin( n1[ a ] - 48 , 2 )
next


@Dodicat
Check your email..
Imortis
Moderator
Posts: 1947
Joined: Jun 02, 2005 15:10
Location: USA
Contact:

Re: Bin bug

Post by Imortis »

What exactly is this supposed to do?
SARG
Posts: 1822
Joined: May 27, 2005 7:15
Location: FRANCE

Re: Bin bug

Post by SARG »

Not knowing the value of n1 I tried with that and it tooks less than 0.03s
Post your code

Code: Select all

dim as string mp,n1=string(10002,49)
dim as double t=timer
for a as longint = 1 to 10000
mp+= right( "00" + bin( n1[ a ] - 48) , 2 )

next
print mp
print timer-t
badidea
Posts: 2609
Joined: May 24, 2007 22:10
Location: The Netherlands

Re: Bin bug

Post by badidea »

Where have I seen that coding style before? Anyway,

Code: Select all

bin( n1[ a ] - 48, 2)
Outputs the same as

Code: Select all

right( "00" + bin( n1[ a ] - 48) , 2 )
And don't forget to start 'a' at 0 for array indexing:

Code: Select all

dim as string n1 = "10abcd!" + chr(0) + chr(255)

for a as longint = 0 to len(n1) - 1 
	print chr(n1[ a ]), n1[ a ]
	print right( "00" + bin( n1[ a ] - 48) , 2 )
	print bin( n1[ a ] - 48, 2)
	print 
next
And if that is not enough, this reduces forever to microseconds (using dodicat's example):

Code: Select all

const N = 10000
dim as double t=timer, dt
dim as string n1 = string(N, 49), mp = string(N * 2, 0)
for a as longint = 0 to N - 1
	mp[a*2] = 48 + ((n1[a] and &b10) shr 1)
	mp[a*2+1] = 48 + (n1[a] and &b01)
next
dt = timer-t
print mp
print dt
dodicat
Posts: 8144
Joined: Jan 10, 2006 20:30
Location: Scotland

Re: Bin bug

Post by dodicat »

badidea wrote: Aug 03, 2024 10:15 Where have I seen that coding style before? Anyway.
To always buck the trend, but you can't keep a good man down.

Code: Select all

redim shared as ulong a(37,59)
DATA _
&HFFE8EFEF,&HFFF4F4F8,&HFFFFFDFE,&HFFFDFEFC,&HFFFCFCFA,&HFFFBFEFC,&HFFFAFFFB,&HFFF9FCF8,_
&HFFFAFDFA,&HFFFDFDF9,&HFFFBF7F3,&HFFFBFCF8,&HFFF6FCF7,&HFFF6FDFB,&HFFFFFFFF,&HFFFFFFFF,_
&HFFFBFAFC,&HFFF1F1F2,&HFFE0DFDF,&HFFD4D2D2,&HFFC7C4C3,&HFFAAA7A4,&HFF969696,&HFFA9A9A7,_
&HFFB0B2B1,&HFFADAFAE,&HFFBDBCBE,&HFFDDDBDC,&HFFEBEAEA,&HFFF5F4F4,&HFFFFFDFE,&HFFF9F9F9,_
&HFFD7DFE1,&HFFDEEBEE,&HFFFCFFFF,&HFFF8FEFF,&HFFF7FEFF,&HFFF5FEFF,&HFFF4FEFF,&HFFF8FFFF,_
&HFFF1FDFD,&HFFEEFCFF,&HFFF4FDFF,&HFFF4F9FB,&HFFE9EFF2,&HFFF8FCFD,&HFFD5D8D3,&HFF58564D,_
&HFF989185,&HFFB0A895,&HFFC8BBA4,&HFFEAE3CC,&HFF9E9C8D,&HFF6F6D60,&HFF717166,&HFF51534C,_
&HFF414744,&HFF2A3131,&HFF40494E,&HFF000000,&HFFE4ECF1,&HFFF1F9FD,&HFFF7FEFE,&HFFEDFDFD,_
&HFFF3FFFF,&HFFF3FFFF,&HFFEFFFFF,&HFFF5FFFF,&HFFF3FEFD,&HFFEDF8F5,&HFFFAFBFB,&HFFFFFFFE,_
&HFFFFFFFF,&HFFFFFFFF,&HFFDFDBD8,&HFF898382,&HFF544E52,&HFF3F383A,&HFF190E10,&HFF070000,_
&HFF0A0000,&HFF0E0000,&HFF0C0100,&HFF090000,&HFF100600,&HFF080000,&HFF030000,&HFF190909,_
&HFF382524,&HFF4A3B3C,&HFF675453,&HFF554B4A,&HFF756B66,&HFFC9BFBC,&HFFEDE0DE,&HFFF6EAE7,_
&HFFF7EFEE,&HFFFFF5F3,&HFFF7ECE8,&HFFFCF8F6,&HFFFDFFFD,&HFFF8F5F4,&HFFEDEFF7,&HFFEFF2F6,_
&HFFE6E8E7,&HFFDFE2DE,&HFFC9CDCB,&HFF878785,&HFF90918E,&HFFA19E96,&HFFDBD7C5,&HFF96927D,_
&HFF837E6B,&HFF797664,&HFF646253,&HFF37372F,&HFF555752,&HFF787E7E,&HFF4D565C,&HFF000000,_
&HFF758891,&HFF8599A5,&HFF86A2B0,&HFF95B6C1,&HFFA1C0CC,&HFFA6C6CF,&HFFAFCDD3,&HFFB4D0D5,_
&HFFBDD0D3,&HFFD0DCDD,&HFFFFFFFF,&HFFDFDCD8,&HFF9A8879,&HFF726051,&HFF4E3B33,&HFF23110D,_
&HFF160406,&HFF2A1919,&HFF2E1B18,&HFF1D0705,&HFF230B05,&HFF30190D,&HFF1F0B04,&HFF271206,_
&HFF31180D,&HFF2A0D03,&HFF170000,&HFF160000,&HFF2A0300,&HFF2D0900,&HFF3A1108,&HFF3E180E,_
&HFF432215,&HFF2F0E0B,&HFF4F2720,&HFF724941,&HFFA57A73,&HFFDCB2A7,&HFFA68077,&HFF9C7F72,_
&HFFD0B9AA,&HFFE8D8D3,&HFFCBC3D0,&HFFBCB6BB,&HFF9B978F,&HFF736E64,&HFF79746F,&HFF938C8F,_
&HFF888284,&HFFC2BDB7,&HFFA4A38F,&HFF6D6952,&HFF8F8873,&HFF756E5C,&HFF8A8474,&HFF7C7B6F,_
&HFF6F7169,&HFF5A5F5D,&HFF4F5758,&HFF000000,&HFF718487,&HFF90A2AE,&HFFBACBDA,&HFFD2E4ED,_
&HFFCEE0E9,&HFFC4D8E2,&HFFCCDEE3,&HFFCBD9DC,&HFFD1D4D2,&HFFF0EBE7,&HFF93867B,&HFF472E1E,_
&HFF4A2613,&HFF4B291A,&HFF391C16,&HFF1B0808,&HFF230D0E,&HFF210D10,&HFF1C0505,&HFF1B0000,_
&HFF100000,&HFF190000,&HFF230800,&HFF130000,&HFF0B0101,&HFF2A0E0C,&HFF4F251D,&HFF78483B,_
&HFFA26A57,&HFFB57867,&HFFCC8D79,&HFFC58B75,&HFFCA9480,&HFFC9917D,&HFFBD7F6D,&HFFB26D5D,_
&HFFB87262,&HFFAA6655,&HFFA26351,&HFF7F4834,&HFF87583D,&HFFE4BBAD,&HFFE0BCBD,&HFFECCCC2,_
&HFFE9CEB4,&HFFA78F73,&HFF9A8271,&HFFA3908B,&HFFA49494,&HFFF9EDE3,&HFF878069,&HFF726A4D,_
&HFF8E8268,&HFF695F47,&HFF504A34,&HFF433E2F,&HFF1C1C11,&HFF2F332C,&HFF252C2C,&HFF000000,_
&HFF708488,&HFFD0DAE1,&HFFFFFFFF,&HFFFFFBFD,&HFFFFFFFE,&HFFFFFFFF,&HFFFFFFFF,&HFFCBC2BC,_
&HFF907C70,&HFF816350,&HFF5C3520,&HFF5B321B,&HFF5E3827,&HFF472319,&HFF170100,&HFF0B0000,_
&HFF180100,&HFF321D1E,&HFF553736,&HFF553931,&HFF452620,&HFF4D3028,&HFF573932,&HFF684A40,_
&HFF855F58,&HFFA3796D,&HFFA37566,&HFFAB7666,&HFFBA7F6E,&HFFBB7A67,&HFFCC8775,&HFFC88570,_
&HFFCF907A,&HFFD99681,&HFFCB8271,&HFFBE6F5F,&HFFAF6250,&HFFAF6452,&HFFAA6551,&HFFAB6B57,_
&HFFA36951,&HFF955D4A,&HFF945E52,&HFF8F5D47,&HFFA37854,&HFF97704E,&HFF98735C,&HFFB1928A,_
&HFFCCB3AF,&HFFAD978D,&HFF7F7053,&HFF7D6F4F,&HFF6A5A3F,&HFF4D4026,&HFF40351F,&HFF483F2F,_
&HFF3E3C2F,&HFF30312A,&HFF121715,&HFF000000,&HFF7C8D90,&HFFDCE7EC,&HFFFAFFFF,&HFFF7F7FC,_
&HFFFFFFFF,&HFFFAF4F0,&HFF95877F,&HFF341C0E,&HFF321606,&HFF634231,&HFF4F2B18,&HFF402016,_
&HFF261114,&HFF1A0002,&HFF1C0000,&HFF5F3A31,&HFFA47767,&HFFB07D6C,&HFFB6826C,&HFFAB7963,_
&HFFAE7D65,&HFFB6856C,&HFFBC896A,&HFFBD846D,&HFFBB7C6F,&HFF895149,&HFF5D2F29,&HFF613E33,_
&HFF6E4A3E,&HFF7D5142,&HFFB87D6E,&HFFD18C7B,&HFFD2907E,&HFFD59483,&HFFC98C80,&HFFAB6E63,_
&HFFA2655C,&HFFA4675C,&HFF9E6355,&HFFA06357,&HFFAA6B5C,&HFFB37661,&HFFAE735C,&HFFA86C53,_
&HFFAE7459,&HFFA86C56,&HFF9E6551,&HFF905A4D,&HFF905E50,&HFF855446,&HFF8C604B,&HFF784C35,_
&HFF9C745D,&HFF947159,&HFF80644F,&HFF726152,&HFF666055,&HFF5F5C56,&HFF585C5A,&HFF000000,_
&HFFC9D3D6,&HFFF8FFFF,&HFFF7FEFF,&HFFF8FDFE,&HFFB4B4B6,&HFF665C5A,&HFF342119,&HFF513B32,_
&HFF674E43,&HFF71534B,&HFF3F2419,&HFF2C1711,&HFF190F12,&HFF2C1713,&HFF7E5D52,&HFFD6AA96,_
&HFFD8A288,&HFFC98C6E,&HFFC58567,&HFFC9886C,&HFFCE9076,&HFFD39977,&HFFC68960,&HFFAE6B4D,_
&HFF97513E,&HFF4F150F,&HFF58302E,&HFF513A36,&HFF5E4A41,&HFF614439,&HFF8D5D53,&HFFD4978D,_
&HFFD29588,&HFFD0958A,&HFFC08C85,&HFFAB7C78,&HFF9B6E68,&HFF926761,&HFF996562,&HFF9B635C,_
&HFFA56A61,&HFFAF7363,&HFFB37A5E,&HFFB57A63,&HFFB47664,&HFFAD7162,&HFFAA6C5E,&HFFA06255,_
&HFF995C4B,&HFF995F4E,&HFF9A6151,&HFF976352,&HFF8E5E4F,&HFF835B4E,&HFF6B4C41,&HFF38251D,_
&HFF413A33,&HFF42413F,&HFF353A3D,&HFF000000,&HFFD5DDE1,&HFFF6FEFF,&HFFFFFFFF,&HFFD8DBE3,_
&HFF2A2A32,&HFF160E10,&HFF3B2E2A,&HFF392721,&HFF3E2923,&HFF453026,&HFF2E150F,&HFF0B0000,_
&HFF1C0D09,&HFF9F7E71,&HFFD6AF9E,&HFFBF9079,&HFFCE997C,&HFFCD9176,&HFFC78B6F,&HFFCA9076,_
&HFFD19782,&HFFCE977B,&HFFDAA37D,&HFFA06549,&HFF521809,&HFF4E1C15,&HFF61413E,&HFF6B5854,_
&HFF423430,&HFF3E261F,&HFF87625B,&HFFC89792,&HFFC38D83,&HFFBD8A83,&HFFB4847F,&HFFAB7C7B,_
&HFFA07272,&HFF986967,&HFF9E6D6A,&HFFA16C69,&HFFA76F69,&HFFAC756B,&HFFB07E6C,&HFFB07C6A,_
&HFFAD7568,&HFFAD7468,&HFFA76F61,&HFF996356,&HFF986457,&HFF9A6657,&HFF9A6B59,&HFF986E5F,_
&HFF88635E,&HFF6E4E4A,&HFF533C37,&HFF19100F,&HFF150E0D,&HFF19181A,&HFF14171E,&HFF000000,_
&HFFDBDFE0,&HFFFFFFFF,&HFF879099,&HFF272A38,&HFF0E0D12,&HFF292222,&HFF312421,&HFF34211B,_
&HFF311C16,&HFF331D11,&HFF0C0000,&HFF1D0D0B,&HFFC5A28E,&HFFF7D2BA,&HFFD6AA91,&HFFDEAC8D,_
&HFFDDA688,&HFFD3977A,&HFFD0947A,&HFFCE927C,&HFFD49B87,&HFFDBA38B,&HFFF3BD9A,&HFF99654A,_
&HFF3C0900,&HFF502D25,&HFF725B5A,&HFF746766,&HFF332C2C,&HFF524343,&HFF7D6668,&HFFA88484,_
&HFFAC817E,&HFFA87F7C,&HFFA37A7A,&HFFA1797A,&HFF9E7575,&HFF9F7074,&HFFA27578,&HFFA57777,_
&HFFAB7A77,&HFFB07F7B,&HFFB1837D,&HFFAE7E76,&HFFAB7870,&HFFAC786F,&HFFA06C61,&HFF946355,_
&HFF936356,&HFF9E7063,&HFF9B7462,&HFF8D6960,&HFF846667,&HFF745B5C,&HFF645053,&HFF4A3B3C,_
&HFF140C0F,&HFF040104,&HFF09070D,&HFF000000,&HFFE9EAE8,&HFFFFFFFF,&HFF3B373B,&HFF000000,_
&HFF2B2122,&HFF564946,&HFF5C4A42,&HFF4D352D,&HFF3E251A,&HFF3D1D13,&HFF543429,&HFFB5907D,_
&HFFFFF1D2,&HFFF3C9A8,&HFFEBBA98,&HFFDDA886,&HFFD69B7D,&HFFD2987B,&HFFD49B85,&HFFCF9584,_
&HFFDEA399,&HFFEBB4A3,&HFFE5B295,&HFF84543E,&HFF3F190A,&HFF644C47,&HFF847777,&HFF797579,_
&HFF1B1920,&HFF4D484D,&HFF756C74,&HFF8C767C,&HFF997A7D,&HFF99777B,&HFF99797C,&HFF9D787A,_
&HFFA0777F,&HFFA57980,&HFFA5787D,&HFFA7797C,&HFFAC8082,&HFFB08589,&HFFAD8287,&HFFA37878,_
&HFFA87977,&HFFA67770,&HFF905F53,&HFF895C50,&HFF7A5043,&HFF785246,&HFF8F6F62,&HFF9C7C76,_
&HFF94777E,&HFF8E7379,&HFF765D62,&HFF624B4C,&HFF4C3738,&HFF473735,&HFF302023,&HFF000000,_
&HFFFFFEFD,&HFFD9D2D0,&HFF332826,&HFF190E0A,&HFF57423C,&HFF604B43,&HFF51362A,&HFF46271B,_
&HFF3A1807,&HFF5A3322,&HFFAD826F,&HFFC2947C,&HFFFFE5C2,&HFFFDD2B0,&HFFECB795,&HFFDEA788,_
&HFFD79E81,&HFFC89076,&HFFCD9380,&HFFD1998A,&HFFEEB4A9,&HFFE9B3A4,&HFFCA9983,&HFF7D543F,_
&HFF1B0600,&HFF60534E,&HFF938C8E,&HFF85848B,&HFF01030A,&HFF0A0911,&HFF292833,&HFF877C85,_
&HFF917D80,&HFF93777C,&HFF9C7D84,&HFFA07B80,&HFF997075,&HFFA1757C,&HFFAE7E85,&HFFAE8288,_
&HFFAC8185,&HFFA78085,&HFFA58086,&HFFAA8387,&HFFAF837F,&HFF906057,&HFF906254,&HFF94695A,_
&HFF754E3F,&HFF6A493C,&HFF886B61,&HFF9D807D,&HFF97797B,&HFF87686B,&HFF755655,&HFF644641,_
&HFF563831,&HFF573832,&HFF51332F,&HFF000000,&HFFDCD8D5,&HFF211817,&HFF180802,&HFF3D231B,_
&HFF53372C,&HFF4A2E21,&HFF3A1B0E,&HFF411D0D,&HFF3A1301,&HFF825540,&HFF8A5A45,&HFF915E45,_
&HFFE6B797,&HFFF1BE9D,&HFFEEB99B,&HFFE2AC8F,&HFFCB927C,&HFFD59D89,&HFFD8A18F,&HFFD89F91,_
&HFFECB2A8,&HFFD8A093,&HFFBE8D7E,&HFF876253,&HFF090200,&HFF352E26,&HFFA7A5A6,&HFFA09EA7,_
&HFF251F2A,&HFF282433,&HFF10101F,&HFF837E88,&HFF8F7F85,&HFF8D767D,&HFF9E7F87,&HFF9B727A,_
&HFF95666C,&HFFA5747A,&HFFB38287,&HFFB5868B,&HFFAE8286,&HFFA57F84,&HFFA58388,&HFFB18989,_
&HFF8A5E57,&HFF825143,&HFF936250,&HFF8F614E,&HFF795140,&HFF725042,&HFF7B5E59,&HFF816360,_
&HFF836264,&HFF825F5D,&HFF7F5A55,&HFF785248,&HFF653F34,&HFF573125,&HFF4F2A20,&HFF000000,_
&HFF4F4944,&HFF190A07,&HFF381E15,&HFF30160D,&HFF543830,&HFF391E14,&HFF32150A,&HFF3A190F,_
&HFF643E31,&HFF714433,&HFF693925,&HFF75452F,&HFFA5715B,&HFFC7917B,&HFFC38F79,&HFFCE9A88,_
&HFFC38F7D,&HFFD09A8B,&HFFDDA597,&HFFDBA398,&HFFE6ACA2,&HFFD0968C,&HFFD19F98,&HFF98776E,_
&HFF1B0C06,&HFF171611,&HFF79797A,&HFFA8A2AA,&HFF1B131E,&HFF221927,&HFF5A5A67,&HFF8F8D99,_
&HFF887B7D,&HFFA28E92,&HFFA28285,&HFF8B5F62,&HFFA06D70,&HFFB37B7B,&HFFBA8084,&HFFAE7B7F,_
&HFFB48386,&HFFB68D8E,&HFFB69393,&HFF966D69,&HFF714435,&HFF92604B,&HFF8C563D,&HFF8D593F,_
&HFF80513F,&HFF60392D,&HFF644543,&HFF795C5B,&HFF826365,&HFF836461,&HFF84615B,&HFF836055,_
&HFF7F584D,&HFF6D453A,&HFF4F2A20,&HFF000000,&HFF21120D,&HFF33211A,&HFF1F0802,&HFF37221D,_
&HFF3D2B27,&HFF271512,&HFF220D09,&HFF412923,&HFF5A3C32,&HFF5B362A,&HFF4F2619,&HFF4F2212,_
&HFF9B675A,&HFFB9867A,&HFFAD7B6F,&HFFB5827A,&HFFBB877D,&HFFC9958A,&HFFD39F92,&HFFD19A8C,_
&HFFDAA093,&HFFCA8F88,&HFFC38F8C,&HFFAC8D87,&HFF3E332B,&HFF000000,&HFF595A58,&HFF898087,_
&HFF53414F,&HFF998C9B,&HFF9D9CA8,&HFF605E65,&HFF8B8180,&HFF9E8D8C,&HFF7D5B5B,&HFF8E5F5F,_
&HFFA46E6D,&HFFBE7F81,&HFFB57879,&HFFA36C6B,&HFFAE7D7C,&HFFAF8384,&HFF906B67,&HFF7F564A,_
&HFF90604D,&HFF8B5539,&HFF925739,&HFF895232,&HFF7B4732,&HFF42170C,&HFF512D2A,&HFF715356,_
&HFF766065,&HFF806869,&HFF836965,&HFF896A63,&HFF89675F,&HFF7C5B53,&HFF5D3E39,&HFF000000,_
&HFF3D2C28,&HFF301E19,&HFF1D0E09,&HFF352625,&HFF332525,&HFF1A0F10,&HFF1F0E10,&HFF433232,_
&HFF3E2523,&HFF3B1E19,&HFF331308,&HFF431C12,&HFF7A4841,&HFF905D58,&HFF986762,&HFFA7756F,_
&HFFB4847D,&HFFC8958F,&HFFCE9891,&HFFC89086,&HFFD59A8E,&HFFCB918A,&HFFBC8C8E,&HFFBC9D9A,_
&HFF58514A,&HFF0C0E09,&HFF4C4B4C,&HFF83777D,&HFF634C59,&HFF63505D,&HFF524855,&HFF767176,_
&HFF817475,&HFF644D4D,&HFF65413E,&HFF804E4A,&HFFA36765,&HFFB26F6D,&HFF9A5957,&HFF9F6361,_
&HFFAA7672,&HFF8B5D58,&HFF7F5953,&HFFB6877B,&HFF8B563E,&HFF753B1C,&HFF894C2B,&HFF85492C,_
&HFF753E29,&HFF43180C,&HFF4C2625,&HFF5A3E44,&HFF66555F,&HFF847175,&HFF8C7675,&HFF856F67,_
&HFF7A6159,&HFF7B625D,&HFF6D5454,&HFF000000,&HFF3F332E,&HFF231711,&HFF2F211B,&HFF3F312D,_
&HFF241515,&HFF160708,&HFF2E1E1F,&HFF352527,&HFF2B1A1B,&HFF25110E,&HFF291711,&HFF432924,_
&HFF6A413C,&HFF825753,&HFF865A58,&HFF946763,&HFFAD817E,&HFFB58888,&HFFC19393,&HFFC39394,_
&HFFC49395,&HFFBE9195,&HFFB5989E,&HFFBEA5AC,&HFF7A676E,&HFF22101A,&HFF412F3B,&HFF715E67,_
&HFF725861,&HFF81666D,&HFF7E6567,&HFF6C5054,&HFF522D31,&HFF55292C,&HFF74403C,&HFF7F453D,_
&HFFA76259,&HFF985043,&HFFA96154,&HFFDD978A,&HFFC48172,&HFF854841,&HFF966263,&HFFC38E89,_
&HFF804A39,&HFF8A533B,&HFF986147,&HFF67321A,&HFF6B3B2A,&HFF4B1E1B,&HFF592E32,&HFF5D3A42,_
&HFF634F50,&HFF887174,&HFF85696C,&HFF6D5055,&HFF694D50,&HFF705458,&HFF645056,&HFF000000,_
&HFF332A25,&HFF1D130D,&HFF3A2E25,&HFF352822,&HFF1D0D0C,&HFF1E0E0E,&HFF2E1D1E,&HFF2D1E1F,_
&HFF261816,&HFF261915,&HFF30251F,&HFF423129,&HFF4E2D27,&HFF64443C,&HFF74514F,&HFF7E5B5A,_
&HFF9E7978,&HFFA88383,&HFFAD8A88,&HFFB38D90,&HFFB89092,&HFFB8959A,&HFFB39CA4,&HFFBAA4AE,_
&HFF9E8693,&HFF5B4551,&HFF5B4652,&HFF745E69,&HFF624D52,&HFF644C4E,&HFF654A48,&HFF502F2F,_
&HFF5C2F38,&HFF64353A,&HFF7A4643,&HFFB17570,&HFFC5867D,&HFFDEA99C,&HFFF2B6AB,&HFFCF8B80,_
&HFFAD6A5F,&HFF7A403C,&HFF613337,&HFF5E3330,&HFF683C30,&HFF835643,&HFF734931,&HFF663D29,_
&HFF774E43,&HFF411C19,&HFF57313B,&HFF6B4C55,&HFF644C50,&HFF755D62,&HFF72545D,&HFF73535C,_
&HFF84646E,&HFF795C65,&HFF6C585C,&HFF000000,&HFF3D362C,&HFF352B23,&HFF342821,&HFF291C17,_
&HFF1A0D0C,&HFF201313,&HFF27191B,&HFF2A1D1C,&HFF261818,&HFF2B1F1C,&HFF3B3028,&HFF483930,_
&HFF39231B,&HFF432B25,&HFF5F4541,&HFF69504A,&HFF886C69,&HFF987D79,&HFFA28484,&HFFAD8F91,_
&HFFAE8E90,&HFFAF9494,&HFFB8A0A4,&HFFBBA4AA,&HFFAF9AA2,&HFF84727E,&HFF6B5C66,&HFF786872,_
&HFF67565F,&HFF564449,&HFF4E3C3D,&HFF54393E,&HFF66404C,&HFF8B636D,&HFFE7BDC4,&HFFEBB9BE,_
&HFFEEC0C1,&HFFF3CBC8,&HFFDCA9A7,&HFFBF8889,&HFFB88481,&HFF9E7579,&HFF856C70,&HFF583F3C,_
&HFF60473B,&HFF7E6250,&HFF7D5F4A,&HFF684C38,&HFF795C52,&HFF4B2F2E,&HFF432733,&HFF806674,_
&HFF6F5D64,&HFF645059,&HFF795E6A,&HFF947780,&HFFA4878E,&HFF8A7378,&HFF7A686C,&HFF000000,_
&HFF3B322B,&HFF332920,&HFF2A1F17,&HFF281E1A,&HFF1F1511,&HFF24191B,&HFF201617,&HFF261C1D,_
&HFF241A19,&HFF2B211F,&HFF372E29,&HFF352C24,&HFF2F1E18,&HFF33231C,&HFF4B3834,&HFF695652,_
&HFF867572,&HFF8A7678,&HFF9D8788,&HFFAF9A9B,&HFFA78E91,&HFFA68E90,&HFFB79EA1,&HFFBAA3A9,_
&HFFAA9B9E,&HFF92848A,&HFF7C717A,&HFF7F747D,&HFF877D86,&HFF7C7178,&HFF6E656A,&HFF77636D,_
&HFF8D7180,&HFFA68597,&HFFBA99A6,&HFFB48E9B,&HFFBE97A2,&HFFC8A1A9,&HFFBC97A1,&HFFC19EAA,_
&HFFE0BAC6,&HFFA9929C,&HFF857F87,&HFF7B7575,&HFF948983,&HFF7B7162,&HFF645543,&HFF584737,_
&HFF826E6A,&HFF7C676C,&HFF442E3F,&HFF968194,&HFF736270,&HFF6A5965,&HFF96808D,&HFFAF94A2,_
&HFFAC929E,&HFF957E87,&HFF817175,&HFF000000,&HFF332A22,&HFF31281F,&HFF2D2722,&HFF2F2725,_
&HFF211A18,&HFF261D1E,&HFF1F161A,&HFF231A1D,&HFF221A1A,&HFF231B1A,&HFF221C16,&HFF1F1612,_
&HFF3A2B29,&HFF3B2B2A,&HFF3C2C2C,&HFF665453,&HFF897576,&HFF8F7B7D,&HFF9A8688,&HFFAD969C,_
&HFFA69098,&HFFA99297,&HFFB59B9D,&HFFB49FA1,&HFFB3A2A6,&HFFA4999F,&HFF9F989D,&HFFA8A4A9,_
&HFFC6BFC8,&HFFC7C3CB,&HFFC6BFC8,&HFFC6B9C6,&HFFC8B3C4,&HFFD7C1D3,&HFFC2AABC,&HFFD7C3D1,_
&HFFE0CBD9,&HFFD3BCCF,&HFFD5C0D4,&HFFCCB9CE,&HFFC4AFC7,&HFFB6AABD,&HFFA1A0B1,&HFFA9A6AF,_
&HFFADA8A7,&HFF756D64,&HFF62574B,&HFF504138,&HFF5B4A47,&HFF76636C,&HFF604A60,&HFF9C8AA1,_
&HFF6E6375,&HFF867888,&HFFB19EB1,&HFFB39DAD,&HFFA7929D,&HFF907C86,&HFF7F7277,&HFF000000,_
&HFF2C2720,&HFF2C2621,&HFF302A28,&HFF27211F,&HFF1D1717,&HFF1F1A1D,&HFF1D181B,&HFF1D1619,_
&HFF1C1516,&HFF181312,&HFF181310,&HFF231B19,&HFF321E20,&HFF3B2629,&HFF3F2D2F,&HFF5F4A4E,_
&HFF836A71,&HFF8B747B,&HFF9A838B,&HFFAA8F9B,&HFFB196A2,&HFFAB919C,&HFFB69FA4,&HFFB39FA4,_
&HFFAFA1A4,&HFFA89FA3,&HFFB3AFB1,&HFFB5B3B8,&HFFBDBBC2,&HFFBEBBC3,&HFFBBB5BE,&HFFB9B0C0,_
&HFFCEBCD1,&HFFECDBEF,&HFFF2E3F7,&HFFFBF1FF,&HFFF7EDFE,&HFFE2D3EF,&HFFF6EDFA,&HFFF2EAF9,_
&HFFC6BBD7,&HFFB9B2CC,&HFF7D7C91,&HFFCCC9D6,&HFF878085,&HFF665C58,&HFF70605A,&HFF77635F,_
&HFF6B5458,&HFF584258,&HFF6A5583,&HFFB3A3C3,&HFF7F778C,&HFF968EA0,&HFFC0B4C6,&HFFB5A6B7,_
&HFFA795A3,&HFF8F7E89,&HFF7D747A,&HFF000000,&HFF2F2A26,&HFF332F2C,&HFF272423,&HFF0B0A0A,_
&HFF0A0609,&HFF151216,&HFF1A161C,&HFF141114,&HFF0C080B,&HFF080606,&HFF0F100D,&HFF20191A,_
&HFF261017,&HFF301A25,&HFF39242D,&HFF533D46,&HFF796470,&HFF9A818E,&HFFA68E99,&HFFB096A4,_
&HFFB59BA9,&HFFAE96A2,&HFFB29CA5,&HFFAD9EA4,&HFFA1959A,&HFF857B7E,&HFF938C8F,&HFFA29EA1,_
&HFF9D9AA0,&HFF949099,&HFF8F8995,&HFF948B9B,&HFF9B8DA2,&HFFBBAFC2,&HFFD6CAE3,&HFFD7CEE7,_
&HFFE3DDF8,&HFFD7D3EC,&HFFDAD3EA,&HFFDFD9F1,&HFFECE1FD,&HFF635C6F,&HFF3D3C4B,&HFFF5F5FC,_
&HFFB0A5AE,&HFF766867,&HFF75615D,&HFF65504E,&HFF6F5865,&HFF663E3B,&HFF7C3B06,&HFF9F8187,_
&HFF9397AD,&HFFAAA8B8,&HFFC6BECF,&HFFC8BCCD,&HFFBBAEBE,&HFF9F919F,&HFF857C86,&HFF000000,_
&HFF3E3839,&HFF2E292B,&HFF0A0A09,&HFF000000,&HFF0C0B0D,&HFF101016,&HFF0F1014,&HFF110F15,_
&HFF0A090F,&HFF0D0D0D,&HFF111313,&HFF1E1B1D,&HFF2A1D27,&HFF36262F,&HFF3C2E38,&HFF503F49,_
&HFF6E5A67,&HFF8E7C88,&HFFAA95A5,&HFFB5A1B0,&HFFAF9AAB,&HFFAB98A6,&HFFAD9CA9,&HFFA898A4,_
&HFF70676D,&HFF4B4347,&HFF6F696C,&HFF918C90,&HFF8C868D,&HFF7F757F,&HFF918792,&HFFB4A7B7,_
&HFF908396,&HFFA69CB0,&HFFD7D0E5,&HFFD6CEEB,&HFFE2E0F6,&HFFE0DCF3,&HFFDBD4EF,&HFFDED6EC,_
&HFFFFFFFF,&HFFBAB3C5,&HFF8C89A3,&HFFEBE4F6,&HFFE2D7DE,&HFF9F9290,&HFF96847E,&HFF755F5B,_
&HFF7A6B7B,&HFF7E4921,&HFF7F3700,&HFF83461F,&HFF9CA4BD,&HFFB5BBCB,&HFFCCC9DA,&HFFE2D8E9,_
&HFFCFC3D4,&HFFB5ABBA,&HFF98939F,&HFF000000,&HFF352B32,&HFF1A161C,&HFF090B09,&HFF111214,_
&HFF222225,&HFF15141A,&HFF050509,&HFF040409,&HFF09090D,&HFF121214,&HFF0A0C0C,&HFF141416,_
&HFF2C272F,&HFF3C363E,&HFF484149,&HFF554E58,&HFF5F5763,&HFF7B737E,&HFFA297A5,&HFFB3A8B6,_
&HFFACA0AE,&HFFAFA2B5,&HFFC7B6CA,&HFFC2B4C4,&HFF59505A,&HFF31282C,&HFF666161,&HFF938C8D,_
&HFF85797E,&HFF8F8388,&HFF9E8E97,&HFFAD9CAC,&HFF9A8B9E,&HFFA198AC,&HFFD1CBE0,&HFFDCD7EE,_
&HFFE2DEF6,&HFFE6DDF5,&HFFDAD1E7,&HFFCCBFD4,&HFFDCCEDB,&HFFEBE0F1,&HFFD0CDE5,&HFFEBE7F8,_
&HFFD4CDD1,&HFFA19891,&HFF897B70,&HFF9D8D85,&HFFA09599,&HFF704832,&HFF813C00,&HFF7B3600,_
&HFF7F4B34,&HFFBED0E4,&HFFD0D0E2,&HFFE6DFF1,&HFFCEC5D5,&HFFBCB5C5,&HFF9C99A8,&HFF000000,_
&HFF39313B,&HFF19151B,&HFF0B0D0D,&HFF1F1F21,&HFF343638,&HFF2D2F35,&HFF252732,&HFF20232B,_
&HFF222229,&HFF262729,&HFF1A1B1C,&HFF181A1B,&HFF242831,&HFF41454E,&HFF54565F,&HFF60656D,_
&HFF676871,&HFF80808A,&HFF9C9BA7,&HFFAEACB9,&HFFB0AEBC,&HFFC0B9CB,&HFFDFD2E6,&HFFDACFDE,_
&HFF594E5A,&HFF261F23,&HFF4D4747,&HFF91898B,&HFF81747A,&HFF695962,&HFF584550,&HFF715E6E,_
&HFF827587,&HFF9A8CA0,&HFFCFC6DD,&HFFDCD3EC,&HFFDCD5EC,&HFFE3DBF2,&HFFD8CFE1,&HFFCCBFCC,_
&HFFC5B1BD,&HFFC5B9C9,&HFFCAC9DE,&HFFE5E7F3,&HFFCDCCCD,&HFF9A958E,&HFF817A6E,&HFF80776B,_
&HFF90877F,&HFF808096,&HFF7F2C00,&HFF804100,&HFF7B3300,&HFF8C5A4D,&HFFDEEBFF,&HFFDAD6E5,_
&HFFD3CADD,&HFFCEC7D8,&HFFA09BAE,&HFF000000,&HFF33424C,&HFF222A30,&HFF161313,&HFF242125,_
&HFF32343E,&HFF474F5D,&HFF4C5868,&HFF3D4857,&HFF2C3442,&HFF40434E,&HFF2E2E33,&HFF14151D,_
&HFF222B3B,&HFF404959,&HFF737D8D,&HFF687281,&HFF778292,&HFF8D98A8,&HFFA2A8BA,&HFFC1C3D6,_
&HFFC1C2DA,&HFFCFCDE2,&HFFD8DAE3,&HFFD5D3DD,&HFF67666E,&HFF0F0B11,&HFF322D33,&HFF9D959D,_
&HFF57505A,&HFF88818E,&HFF878492,&HFF6F6876,&HFF83757E,&HFF918391,&HFFB6ABBD,&HFFD5CCE1,_
&HFFCFC7DF,&HFFD2CBE4,&HFFD9D0E8,&HFFD3CBE1,&HFFC8BDD0,&HFFB6AFC2,&HFFB4B0C4,&HFFD9D5E5,_
&HFFF0E6F2,&HFFBBAFB8,&HFF84747A,&HFF7C6B6E,&HFF897A7F,&HFF948E9A,&HFF77431B,&HFF803C00,_
&HFF804000,&HFF752C00,&HFFA68374,&HFFE4E4F4,&HFFD5CDD6,&HFFC4BCCB,&HFF706D7C,&HFF000000,_
&HFF30454F,&HFF36414B,&HFF464148,&HFF373841,&HFF1F2533,&HFF0A1523,&HFF293545,&HFF414A5B,_
&HFF3A4053,&HFF2B2E3A,&HFF2F2E35,&HFF232431,&HFF2A3045,&HFF2E374B,&HFF8190A2,&HFF7C8C9E,_
&HFF92A2B6,&HFFB4C2D6,&HFFC2CADF,&HFFCED6ED,&HFFD2D4EE,&HFFD4D6EA,&HFFCFD5DE,&HFFD6DAE2,_
&HFF8E8F94,&HFF000001,&HFF3B373E,&HFFB7B1BB,&HFF4A4653,&HFF555360,&HFF6B6C7D,&HFF837F8E,_
&HFF847782,&HFF988B98,&HFFB0A2B5,&HFFC9BDD2,&HFFDBCFE7,&HFFDBD0E9,&HFFD4C9E2,&HFFD6CCE4,_
&HFFD1C8DA,&HFFC2B8CC,&HFFBDB2C8,&HFFC0B3C7,&HFFE0D3E3,&HFFDFD4DE,&HFFA298A2,&HFF8D858C,_
&HFF958E94,&HFF88888F,&HFF786E6C,&HFF803B00,&HFF803F00,&HFF7E3D00,&HFF773004,&HFFC3B9BE,_
&HFFC5C5CD,&HFF7F7D88,&HFF5C5C69,&HFF000000,&HFF04131F,&HFF21323E,&HFF141C2A,&HFF192130,_
&HFF212B39,&HFF2B3340,&HFF545A68,&HFF5D6271,&HFF484D5A,&HFF2B2F3B,&HFF363944,&HFF494D5E,_
&HFF4A556C,&HFF4C596D,&HFF8A9AAD,&HFFA9B9CE,&HFFB9CADE,&HFFD6E6FC,&HFFD3DFF6,&HFFC7CFE7,_
&HFFD4D9F2,&HFFD3D7EB,&HFFD9DDE8,&HFFDCDFE9,&HFF9A99A2,&HFF0D0C13,&HFF595862,&HFFCAC8D0,_
&HFF413D49,&HFF181825,&HFF1F2133,&HFF9F9FAE,&HFF9B909E,&HFFA59AAA,&HFFB4A8BC,&HFFB6A9BF,_
&HFFC9BDD6,&HFFD5C6E0,&HFFD1C1D9,&HFFD2C3D7,&HFFD7C9DB,&HFFD7C8DC,&HFFD2BED4,&HFFBAA7BB,_
&HFFC4B8C8,&HFFE5E3EA,&HFFC9CBCF,&HFFB6BCC0,&HFFB0BBBD,&HFF7B8789,&HFF6C7E86,&HFF7B4936,_
&HFF7B3200,&HFF814200,&HFF712600,&HFFA79B91,&HFF9DA0AC,&HFF54545E,&HFF9396A2,&HFF000000,_
&HFF808E9A,&HFF263C4E,&HFF2B4159,&HFF2F4258,&HFF1B2638,&HFF212837,&HFF1A202B,&HFF11141E,_
&HFF373B45,&HFF303741,&HFF37414D,&HFF647183,&HFF4F5C75,&HFF90A1B8,&HFFCDDDF5,&HFFC4D6EF,_
&HFFBACCE2,&HFFBBCFE6,&HFFCFDFF8,&HFFCBD8EF,&HFFD0D8F3,&HFFD4DBF0,&HFFE1E7F4,&HFFCFD4DF,_
&HFF7C7D86,&HFF22222A,&HFF585860,&HFFC2C3CC,&HFF565863,&HFF272833,&HFF232A38,&HFFB8BACD,_
&HFFABA7B8,&HFFAAA5B9,&HFFBCB4C8,&HFFB5ABC0,&HFFB6A8BF,&HFFCBBACF,&HFFD5C3D8,&HFFD4C2D5,_
&HFFE0CEDD,&HFFE9D4E8,&HFFEED0EA,&HFFE0CADE,&HFFC8C1D0,&HFFD6D8E1,&HFFD6E4E5,&HFFCCDFDE,_
&HFFC7D8DA,&HFF98A8AD,&HFF909EAA,&HFFC8D7E8,&HFF8A534C,&HFF723300,&HFF783000,&HFFB7827A,_
&HFF94A2AE,&HFF848187,&HFFAFAEB4,&HFF000000,&HFFFFFFFF,&HFF596C80,&HFF0A2645,&HFF48617B,_
&HFF2E4156,&HFF273342,&HFF2D323C,&HFF1D202C,&HFF38404B,&HFF37424E,&HFF414E5D,&HFF3E4C62,_
&HFF687893,&HFFCADDF5,&HFFC8DDF5,&HFFC3D8F2,&HFFC3D9F1,&HFFBBCFE7,&HFFCADBF4,&HFFC4D4EE,_
&HFFCEDCF5,&HFFE8F1FF,&HFFD5DCE9,&HFFC0C6D1,&HFF7F808D,&HFF2C2D36,&HFF555761,&HFFC8CAD5,_
&HFF6B717E,&HFF0F131E,&HFF626B7B,&HFFCDD5E8,&HFFC0C1D4,&HFFBEBCD2,&HFFBDB4CE,&HFFBCB1C8,_
&HFFB9ABC1,&HFFC3B2C7,&HFFD1BDCF,&HFFDBC2D6,&HFFDEC9D8,&HFFDEC8DA,&HFFEACFE6,&HFFEEDDF2,_
&HFFDFDAE6,&HFFCED4DB,&HFFC4D2D4,&HFFC7D5D9,&HFFCEDAE3,&HFFD3DAE4,&HFFEBE9FB,&HFFE1E0F4,_
&HFFEFFCFF,&HFF762E02,&HFFF30000,&HFFFF0000,&HFF85C7CE,&HFFA19396,&HFFA0979A,&HFF000000,_
&HFFFFFFFF,&HFF738B9D,&HFF000E2F,&HFF1A3853,&HFF0C1D34,&HFF1D3041,&HFF25313E,&HFF353D4C,_
&HFF242F3F,&HFF364454,&HFF506171,&HFF47586F,&HFF7E8EAD,&HFFADC2DE,&HFFBED2EE,&HFFD6EDFE,_
&HFFCDE4FC,&HFFCCE1FA,&HFFCEDFF5,&HFFC3D4EC,&HFFC8D6EE,&HFFE4EFFE,&HFFD8E1F0,&HFFC5CBD7,_
&HFF858B96,&HFF292D37,&HFF585C68,&HFFC6CDD7,&HFFA2ABB9,&HFF162233,&HFFBBCBD6,&HFFE6F3FF,_
&HFFCDD2E6,&HFFE0E1F7,&HFFCFCBE1,&HFFC9BDD2,&HFFC5B7CC,&HFFC8B7C9,&HFFCDBACD,&HFFD1BED0,_
&HFFD5C1D5,&HFFD4C2D5,&HFFD8C7DC,&HFFE5DCEB,&HFFE5E4EF,&HFFD5DDE5,&HFFCED7DD,&HFFCBCED8,_
&HFFCCCBDB,&HFFE0D7EC,&HFFE8D4F1,&HFFE5D1E9,&HFFEBE4F0,&HFFE4CDC6,&HFFFF0306,&HFFFF0000,_
&HFF91C4CE,&HFFC4B2B7,&HFFD5C5CA,&HFF000000,&HFFF8FDFF,&HFFA3B4C4,&HFF466681,&HFF314C69,_
&HFF19334B,&HFF122C44,&HFF0E243B,&HFF102439,&HFF0D2031,&HFF233649,&HFF3D5264,&HFF374960,_
&HFF41506F,&HFF8092AF,&HFFC9DCF7,&HFFDEF3FD,&HFFE0F5FE,&HFFD7ECFF,&HFFD7E9FD,&HFFD8E8FC,_
&HFFCFDDF1,&HFFD8E1F4,&HFFE3ECFB,&HFFE0E6F7,&HFFB5BCCB,&HFF282E3A,&HFF434B57,&HFF9AA4B1,_
&HFFDAE6F0,&HFF4F616F,&HFF718495,&HFFEFFEFF,&HFFE4F1FF,&HFFDCE2F6,&HFFDCDCEC,&HFFDCD3E4,_
&HFFD5C7D8,&HFFD0C3D3,&HFFCFC1D1,&HFFD0C0D3,&HFFD5C8DB,&HFFD6CDDF,&HFFD7D5E2,&HFFDBD9E6,_
&HFFDDDDE6,&HFFDDDDE6,&HFFDBDAE8,&HFFD7D3E2,&HFFD9CFE4,&HFFDFCFEB,&HFFE5D0F3,&HFFEADBF7,_
&HFFE0E0EC,&HFFDEEAFC,&HFFCEE4F5,&HFFB0D7E7,&HFFC0BCCC,&HFFB0AEBC,&HFF7A737B,&HFF000000,_
&HFFFCFCFD,&HFFFDFFFF,&HFFC1D7E9,&HFF314B66,&HFF6A89A3,&HFF557594,&HFF173656,&HFF001D3A,_
&HFF041D38,&HFF142C41,&HFF142739,&HFF2E3E52,&HFF2B3A57,&HFF6D7D99,&HFFA9BAD4,&HFF9CB2C9,_
&HFFC6DCED,&HFFD7E9FD,&HFFD6E8FB,&HFFD7E5F8,&HFFD4E1F2,&HFFDDE8F8,&HFFE1ECFC,&HFFE9F2FF,_
&HFFEBF2FD,&HFF525A66,&HFF515B66,&HFF74808D,&HFFA1B0BF,&HFFC6DAE4,&HFF7D95A7,&HFFD6E9F9,_
&HFFE9F7FF,&HFFDDE5F6,&HFFDFE2F0,&HFFE4DEEE,&HFFE0D4E4,&HFFD6C8DB,&HFFD0C5D6,&HFFCEC5D9,_
&HFFD1CCE2,&HFFD8D7E7,&HFFDADDE8,&HFFDEDFE9,&HFFE1E0EA,&HFFE0DCEA,&HFFDCDAE6,&HFFD4D1E3,_
&HFFD5D1E8,&HFFDDDDF7,&HFFDEDEFB,&HFFD4DEFA,&HFFD0E9F8,&HFFA1BCD0,&HFF7591A9,&HFF5B7991,_
&HFF243952,&HFF000E29,&HFF000B1C,&HFF000000,&HFFFDF9F7,&HFFFFFFFE,&HFFFDFFFF,&HFF344D67,_
&HFF113552,&HFF5984A8,&HFF74A1CA,&HFF5A87AB,&HFF395B7B,&HFF1F384F,&HFF1C2E3C,&HFF162131,_
&HFF384661,&HFF71829B,&HFF8194AC,&HFF9FB4C8,&HFFB9D0E1,&HFFD2E5F7,&HFFD6E6F6,&HFFD2DEEC,_
&HFFD5DDEC,&HFFD5DFF0,&HFFE4F0FD,&HFFEDF5FF,&HFFF3FAFF,&HFFCDD6E4,&HFF8692A0,&HFF6C7988,_
&HFF7E92A2,&HFFA3BBCB,&HFFBBD5EB,&HFFD0EAF9,&HFFE0F3FD,&HFFE7F5FE,&HFFEAEEF8,&HFFEAE8F4,_
&HFFE7E0EC,&HFFDAD0DE,&HFFD5CBDE,&HFFD2CCE4,&HFFCFD0EA,&HFFDADCF1,&HFFDBE1EA,&HFFE0E2EA,_
&HFFE3DEE7,&HFFDED8E5,&HFFD8D6E3,&HFFD5D6E8,&HFFCEDAED,&HFFC7E0F4,&HFFADD2E7,&HFF8BBFD3,_
&HFF68AAC4,&HFF40829F,&HFF1F6281,&HFF195C82,&HFF316F95,&HFF3C769D,&HFF437BA3,&HFF000000,_
&HFFFDF8FA,&HFFF7F6F9,&HFFF9FFFF,&HFFF5FFFF,&HFF84A4BD,&HFF285579,&HFF144970,&HFF4A7CA3,_
&HFF7BA6C8,&HFF34556D,&HFF071D30,&HFF2B3C50,&HFF404966,&HFF313D57,&HFF606C87,&HFFB6C5D7,_
&HFFDBEAF7,&HFFD3E3F0,&HFFD1E0EC,&HFFCED8E3,&HFFC1C8D4,&HFFACB5C0,&HFFA5AEC0,&HFFB5BFCF,_
&HFFBEC7D4,&HFFD9E3EE,&HFFD1DAE8,&HFFA6B1BF,&HFF9DAFBD,&HFFA3B8CA,&HFFC5DDEE,&HFFD9F0FF,_
&HFFE1F0FC,&HFFE5F1F9,&HFFEDF0F9,&HFFE8E7F0,&HFFE2DBE6,&HFFDDD7E3,&HFFDAD3E5,&HFFDBDAEC,_
&HFFDCDCF4,&HFFE3E7F9,&HFFDEE1EA,&HFFD1D5DE,&HFFD4D4E0,&HFFE2E0EC,&HFFE6E4F0,&HFFCFDCE8,_
&HFFC1E1EA,&HFFA4D9E7,&HFF93D4E1,&HFF89D3E6,&HFF88DAF9,&HFF87DBFD,&HFF8CE2FF,&HFF9DF6FF,_
&HFF97F0FF,&HFF8BDFFF,&HFF67B7E9,&HFF000000,&HFFFDFEFF,&HFFFFFCFD,&HFFFCFBFB,&HFFFFFFFF,_
&HFFF7FFFF,&HFFA4C5D3,&HFF28576B,&HFF1B5069,&HFF477C98,&HFF71A1C3,&HFF447199,&HFF203D64,_
&HFF2B3257,&HFF343858,&HFF2E314B,&HFF262638,&HFF53525E,&HFF6E6E76,&HFF9A9FA2,&HFF9CA2A3,_
&HFF878F91,&HFF747A7E,&HFF585A5E,&HFF56575D,&HFF5C5C60,&HFF686C6D,&HFF9AA09F,&HFFD7DEE0,_
&HFFE8EDF4,&HFFE8EFF4,&HFFECF3FB,&HFFE7EFF6,&HFFE8EFF1,&HFFE8EBEF,&HFFEDEFF4,&HFFE8E7EF,_
&HFFDDDDE6,&HFFE7E3EB,&HFFE6E0E8,&HFFE7E3E7,&HFFE8E2E8,&HFFE3D8E1,&HFFE1D3DE,&HFFCDDDE6,_
&HFFB8D6E9,&HFFACBDD1,&HFFADB3C4,&HFF8C9CBB,&HFF4F7B8E,&HFF366E81,&HFF5A819B,&HFF667F9C,_
&HFF607F9F,&HFF547BA0,&HFF4F799A,&HFF4F7C9A,&HFF376D92,&HFF316D98,&HFF3B81AE,&HFF000000,_
&HFFFDFCFF,&HFFFCFBFE,&HFFFFFEFC,&HFFF8FCFD,&HFFF6FFFF,&HFFF6FFFF,&HFFD9EFF1,&HFF85ACBD,_
&HFF416D87,&HFF457493,&HFF49789D,&HFF355981,&HFF3A4F70,&HFF445572,&HFF223048,&HFF080F22,_
&HFF020615,&HFF060711,&HFF16171F,&HFF1B1E24,&HFF2E3137,&HFF36393E,&HFF353539,&HFF444445,_
&HFF414342,&HFF4C4A48,&HFF3A3D37,&HFF414441,&HFF858686,&HFFA4A3A6,&HFFAFB0B4,&HFFD6D1D4,_
&HFFEBE1DF,&HFFF1E8E9,&HFFDDD5DA,&HFFD2CAD1,&HFFE8E0EC,&HFFE0DCE9,&HFFCFCDDB,&HFFD7D4E0,_
&HFFDEDDE7,&HFFCEC4CB,&HFFCFC1C6,&HFFEDFBFF,&HFFB3D8E7,&HFF4B6F8C,&HFF000527,&HFF3C5476,_
&HFF76A3BF,&HFF86BCD4,&HFF7897BB,&HFF425C7D,&HFF05243F,&HFF000016,&HFF000015,&HFF000727,_
&HFF00193E,&HFF002044,&HFF002048,&HFF000000,&HFF000000,&HFF000000,&HFF000000,&HFF000000,_
&HFF000000,&HFF000000,&HFF000000,&HFF000000,&HFF000000,&HFF000000,&HFF000000,&HFF000000,_
&HFF000000,&HFF000000,&HFF000000,&HFF000000,&HFF000000,&HFF000000,&HFF000000,&HFF000000,_
&HFF000000,&HFF000000,&HFF000000,&HFF000000,&HFF000000,&HFF000000,&HFF000000,&HFF000000,_
&HFF000000,&HFF000000,&HFF000000,&HFF000000,&HFF000000,&HFF000000,&HFF000000,&HFF000000,_
&HFF000000,&HFF000000,&HFF000000,&HFF000000,&HFF000000,&HFF000000,&HFF000000,&HFF000000,_
&HFF000000,&HFF000000,&HFF000000,&HFF000000,&HFF000000,&HFF000000,&HFF000000,&HFF000000,_
&HFF000000,&HFF000000,&HFF000000,&HFF000000,&HFF000000,&HFF000000,&HFF000000,&HFF000000
Function Filter(Byref tim As Ulong Pointer,_
    rad As Single,_
    destroy As long=1,_
    fade As long=0) As Ulong Pointer
    #define map(a,b,_x_,c,d) ((d)-(c))*((_x_)-(a))/((b)-(a))+(c)
    If fade<0 Then fade=0:If fade>100 Then fade=100
    Type p2
        As long x,y
        As Ulong col
    End Type
    #macro ppoint(_x,_y,colour)
    pixel=row+pitch*(_y)+4*(_x)
    (colour)=*pixel
    #endmacro
    #macro ppset(_x,_y,colour)
    pixel=row+pitch*(_y)+4*(_x)
    *pixel=(colour)
    #endmacro
    #macro average()
    ar=0:ag=0:ab=0:inc=0
    xmin=x:If xmin>rad Then xmin=rad
    xmax=rad:If x>=(_x-1-rad) Then xmax=_x-1-x
    ymin=y:If ymin>rad Then ymin=rad
    ymax=rad:If y>=(_y-1-rad) Then ymax=_y-1-y
    For y1 As long=-ymin To ymax
        For x1 As long=-xmin To xmax
            inc=inc+1 
            ar=ar+(NewPoints(x+x1,y+y1).col Shr 16 And 255)
            ag=ag+(NewPoints(x+x1,y+y1).col Shr 8 And 255)
            ab=ab+(NewPoints(x+x1,y+y1).col And 255)
        Next x1
    Next y1
    If fade=0 Then
        averagecolour=Rgb(ar/(inc),ag/(inc),ab/(inc))
    Else
        averagecolour=Rgb(fd*ar/(inc),fd*ag/(inc),fd*ab/(inc))
    End If
    #endmacro
    Dim As Single fd=map(0,100,fade,1,0)
    Dim As long _x,_y
    Imageinfo tim,_x,_y
    Dim  As Ulong Pointer im=Imagecreate(_x,_y)
    Dim As long pitch
    Dim  As Any Pointer row
    Dim As Ulong Pointer pixel
    Dim As Ulong col
    Imageinfo tim,,,,pitch,row
    Dim As p2 NewPoints(_x-1,_y-1)
    For y As long=0 To (_y)-1
        For x As long=0 To (_x)-1
            ppoint(x,y,col)
            NewPoints(x,y)=Type<p2>(x,y,col)
        Next x
    Next y
    Dim As Ulong averagecolour
    Dim As long ar,ag,ab
    Dim As long xmin,xmax,ymin,ymax,inc
    Imageinfo im,,,,pitch,row
    For y As long=0 To _y-1
        For x As long=0 To _x-1  
            average()
            ppset((NewPoints(x,y).x),(NewPoints(x,y).y),averagecolour) 
        Next x
    Next y
    If destroy Then ImageDestroy tim: tim = 0
    Function= im
End Function
dim as long xres,yres
screen 20,32,,&h40
screeninfo xres,yres
dim as double magnification
magnification=  7
Type bitmap_size
As long across,down
End Type
sub read_data(mybitmap as bitmap_size)
for x as long=0 to mybitmap.across
for y as long=0 to mybitmap.down
read a(x,y)
next y
next x
end sub
dim shared as any pointer image
image=imagecreate(magnification*ubound(a,1),magnification*ubound(a,2))
Sub drawbitmap_to_image(mybitmap As bitmap_size,scale as single=1,mx As long=0,my As long=0)
#macro magnify(pivotx,pivoty,px,py,scale)
var rotx=scale*(px-pivotx)+pivotx
var roty=scale*(py-pivoty)+pivoty
#endmacro
For x As long=mx To mx+mybitmap.across
For y As long=my To my+mybitmap.down
magnify(mx,my,x,y,scale)
line image,(rotx-scale/2,roty-scale/2)-(rotx+scale/2,roty+scale/2),a(x-mx,y-my),BF
Next y
Next x
End Sub
Dim As bitmap_size bitmap_info
bitmap_info.across=ubound(a)
bitmap_info.down=ubound(a,2)
read_data(bitmap_info)
drawbitmap_to_image(bitmap_info,magnification)
image=filter(image,6)
Type v2
    As Single x,y
End Type
Const k=4   
Const g=9.81 
Const m=5   
Const d =.05  
Redim Shared As v2 position(),startpos()
redim shared as single t(),vel(),ang()
dim as single w
dim shared as single pi=4*atn(1)
dim as long temp
#define r(f,l) Rnd * ((l) - (f)) + (f)
#define map(a,b,x,c,d) ((d)-(c))*((x)-(a))/((b)-(a))+(c)
#define onscreen(_x,_y) ((_x)>=0)*((_x)<xres)*((_y)>=0)*((_y)<yres)
sub setup(num as long)
    redim position(1 to num)
    redim startpos(1 to num)
    redim vel(1 to num)
    redim t(1 to num)
    redim ang(1 to num)
    for n as long=1 to num
        startpos(n)=type<v2>(r(300,310),r(380,390))
        startpos(n).x=startpos(n).x+300
         startpos(n).y=startpos(n).y+180
        vel(n)=r(-220,-180)
        ang(n)=r(pi/2-.2,pi/2+.2)
        next n
    end sub
    sub source(n as long)
        startpos(n)=type<v2>(r(300,310),r(380,390))
         startpos(n).x=startpos(n).x+300
          startpos(n).y=startpos(n).y+180
        vel(n)=r(-220,-180)
        ang(n)=r(pi/2-.2,pi/2+.2)
        t(n)=0
        end sub
  '============================================  
    setup(20000)
dim as string i
color rgb(255,0,0),rgb(200,200,200)
Do
    temp=temp+5
        if temp>ubound(position)-5 then temp=ubound(position)
        
i=inkey
Screenlock
Cls
put( 390, 190),image,pset
for n as long=1 to temp
    w=30+10*sin(position(n).y/10)
    t(n)=t(n)+.005
        position(n).x=startpos(n).x+(m/k)*(1-Exp(-(k/m)*t(n)))*(Vel(n)*Cos(ang(n))-w)+w*t(n)
        position(n).y=startpos(n).y+(m/k)*(1-Exp(-(k/m)*t(n)))*(Vel(n)*Sin(ang(n))+g*m/k)-(g*m/k)*t(n)
        if onscreen(position(n).x,position(n).y)=0 then source(n)
        var cc=map(390,0,position(n).y,100,0)
        circle(position(n).x,position(n).y),3,rgba(cc/20,0,cc,20),,,.5,f
next n
locate 10,60
print "NO SMOKING",

Screenunlock
Sleep 1,1
Loop Until i=Chr(27)
imagedestroy image
  
srvaldez
Posts: 3505
Joined: Sep 25, 2005 21:54

Re: Bin bug

Post by srvaldez »

Imortis
Moderator
Posts: 1947
Joined: Jun 02, 2005 15:10
Location: USA
Contact:

Re: Bin bug

Post by Imortis »

srvaldez wrote: Aug 03, 2024 14:32 ARZ = Albert Redditt Zip https://encode.su/threads/3817-Redditt_ ... #post83545
As we can't be 100% certain of this person's identity, its a good idea to let this person continue to post. If and when they post something that makes their identity clear, the moderation team will have to take action and remove them for ban evasion. However, if this person gives us no reason to suspect that they are a former banned member, we have no reason to take any action and will allow them to stay in peace.
dodicat
Posts: 8144
Joined: Jan 10, 2006 20:30
Location: Scotland

Re: Bin bug

Post by dodicat »

What is ban evasion?
https://support.reddithelp.com/hc/en-us ... an-Evasion
You cannot tell by the image who it is or what brand of cheroot, or even if he is a true redditor, the whole thing is very fuzzy.
ARZ
Posts: 6
Joined: Aug 06, 2023 0:52

Re: Bin bug

Post by ARZ »

Hi Guys;

This ; is what i was complaining about.

if you set the length of the string indexing one to 1,000,000 , it takes forever..

Code: Select all


screen 19 '<--- under Linux screen 0 won't come up unless the code is compiled and run from the directory.


dim as double time1 , time2

time1 = timer

dim as string chrs = ""
dim as string s
for a as longint = 1 to 100000 step 1
    randomize
    s = chr( int( rnd * 256 ) )
    chrs+= right( "00" + hex( s[ 0 ] ) , 2 )
next

time2 = timer

print "With string indexing = " ; time2 - time1


time1 = timer

chrs = ""
for a as longint = 1 to 100000 step 1
    randomize
    s = right( "00" + hex( int( rnd * 256 ) ) , 2 )
    chrs+= s
next

time2 = timer

print "Without string indexing = " ; time2 - time1


sleep
end

Last edited by fxm on Sep 17, 2024 18:17, edited 2 times in total.
Reason: Fixed the code flags.
Jattenalle
Posts: 54
Joined: Nov 17, 2023 14:41
Contact:

Re: Bin bug

Post by Jattenalle »

ARZ wrote: Sep 17, 2024 17:23 Hi Guys;

This ; is what i was complaining about.

if you set the length of the string indexing one to 1,000,000 , it takes forever..

Code: Select all

    chrs+= s
This is not a bug.
What you're encountering is string concatenation being slow due to having to realloc memory a lot as it grows by a small amount many many times.
You can fix this by pre-allocating the string:

Code: Select all

const values = 1000000

dim as double time1 , time2
dim as string chrs = space(values * 2)
dim as string s

time1 = timer

chrs = space(values * 2)
for a as longint = 0 to values-1
    randomize
    s = right( "00" + hex( int( rnd * 256 ) ) , 2 )
    '// Insert into our pre-allocated string
    chrs[a*2 + 0] = s[0]
    chrs[a*2 + 1] = s[1]
next

time2 = timer

print "With pre-allocated string = " ; time2 - time1


sleep
end
Post Reply