SQL Server – Security – Privileging & Tracking the Guest Account

Background

Each month we get databases from our Vendors.  And, we have to review data in those tables.

There are a couple of pathways to quickly granting accessing to our users.

In this post, we will grant access to the guest user.

 

SQL

Grant Access



grant connect to guest;

Review Access

Review Permissions grant/denied to Guest on Contextual Database

Code


declare @principal sysname

set @principal = 'guest'

; with cteObject
(
      objectID
    , [object]
    , schemaID
    , [schema]
)
as
(
    select
              tblSO.object_id
            , tblSO.[name]
            , tblSO.schema_id
            , tblSS.[name]

    from   sys.objects tblSO

    inner join sys.schemas tblSS

            on tblSO.[schema_id] = tblSS.[schema_id]
)
select 

          tblSP.[name]
        
        --, tblSDP.*

        , tblSDP.[state_desc]

        , tblSDP.[permission_name]

        , [objectClass]
            = tblSDP.class_desc

        , [object]
            = coalesce
                (
                     quoteName
                        (
                            cteO.[schema]
                        )
                    + '.'
                    + quoteName
                        (
                            cteO.[object]
                        )

                    , null
                )

            , [grantee]
                = SUSER_NAME(tblSDP.grantor_principal_id)

from   sys.database_principals tblSP

inner join sys.database_permissions tblSDP

    on tblSP.principal_id = tblSDP.[grantee_principal_id]

left outer join cteObject cteO

    on tblSDP.major_id = cteO.objectID

where tblSP.[name] = @principal

order by

    tblSP.[name] asc


Review Access for contextual database

Code

use master
go

set nocount on
go

set XACT_ABORT on
go

declare @tblResult table
(
      [database]    sysname
    , [principal]   sysname
    , [access]      sysname
    , [grantee]     sysname null
)

declare @command nvarchar(4000)

set @command =
                'if databasepropertyex(''?'', ''Collation'') is not null '
                + ' begin '
                + ' use [?]; '
                + ' select [database] = db_name(), tblSP.name,  tblSDP.[state_desc], SUSER_NAME(tblSDP.grantor_principal_id) '
                + ' from sys.database_principals tblSP '
                + ' inner join sys.database_permissions tblSDP '
                + ' on tblSP.principal_id = tblSDP.grantee_principal_id '
                + ' where tblSP.[name] = ''guest'' '
                + ' and tblSDP.[permission_name] = ''CONNECT'' '
                + ' and tblSDP.[state_desc]  = ''GRANT'' '
                + ' end '

insert @tblResult
(
      [database]    
    , [principal]   
    , [access]      
    , [grantee] 
)
exec master.dbo.[sp_MSforeachdb]
        @command1 = @command

select *

from   @tblResult tblR

order by 
    tblR.[database]

SQL Server – Review Database Restore Timeline

Background

Reviewing Database Restore timeline and wasted to share what we have thus far.

 

Metadata

SQL

/*

    a) restorehistory (Transact-SQL)
    https://docs.microsoft.com/en-us/sql/relational-databases/system-tables/restorehistory-transact-sql

*/
; with cteRestoreHistory
(
      [restoreHistoryID]
    , [databaseName]
    , [restorer]
    , [restoreDate]
    , [restoreStopAt]
    , [restoreType]
    , [backupSetID] 
    , [sequenceNbr]
)
as
(

    select 
              [restoreHistoryID]
                = tblRH.[restore_history_id]

            , [databaseName]
                = tblRH.[destination_database_name]

            , [restorer]
                = tblRH.[user_name]

            , [restoreDate]
                = tblRH.[restore_date]

            , [restoreStopAt]
                = tblRH.[stop_at]

            , [restoreType]
                = tblRH.restore_type

            , [backupSetID] 
                = tblRH.[backup_set_id] 

            , [sequenceNbr]
                = DENSE_RANK() 
                    OVER 
                    (

                        PARTITION BY 
                            tblRH.[destination_database_name]

                        ORDER BY 
                            tblRH.[restore_date] DESC
                    )

    from   msdb.[dbo].[restorehistory] tblRH


)

, cteRestoreType
(
      [restoreType]
    , [restoreTypeLiteral]
)
as
(
    select 
              'D'
            , 'Database'
    union
    select 
              'F'
            , 'File'
    union
    select 
              'G'
            , 'FileGroup'
    union
    select 
              'L'
            , 'Log'

)
select 
          [database] 
            = tblSD.[name]

        , [dbid]
             = tblSD.[database_id]

        , [restoreInitatedBy]
             = tblRH.[restorer]

        , [restoreDate]

        , [restoreType]
             = tblRH.[restoreType]

        , [restoreTypeDescription]
            = cteRT.restoreTypeLiteral

        , [backupMachineName]
            = tblBS.[machine_name]

        , [backupInitiatedBy]
            = tblBS.[user_name]

        , [databaseVersion]
            = tblBS.database_version

        , [backupFile]
            = tblBMF.physical_device_name

        , [originalBackupStartDate]
            = tblBS.backup_start_date

        , [originalBackupCompletionDate]
            = tblBS.backup_finish_date

        , [originalBackupDuration (in minutes)]
            = datediff
                (   
                      minute
                    , tblBS.backup_start_date
                    , tblBS.backup_finish_date
                )

from   sys.databases tblSD

inner join cteRestoreHistory tblRH

        on tblSD.[name] = tblRH.[databaseName]

inner join msdb..backupset tblBS

    ON tblRH.[backupSetID] = [tblBS].[backup_set_id]

INNER JOIN msdb..backupmediafamily tblBMF
    ON [tblBS].[media_set_id] = [tblBMF].[media_set_id] 

left outer join cteRestoreType cteRT
    on tblRH.[restoreType] = cteRT.restoreType


where tblRH.sequenceNbr = 1

order by

          tblSD.[name]
        , tblRH.[restoreDate] desc


Output

Sample

SqlServer – Tempdb – Error – “Insufficient space in tempdb to hold row versions”

Background

Here reviewing failed jobs and tried to re-run one of them, but still No Go!

TroubleShooting

Error

Image

Textual

Insufficient space in tempdb to hold row versions.
Need to shrink the version store to free up some space in tempdb.
Transaction (id=17270854 xsn=2470235 spid=79 elapsed_time=3101) has been marked as victim and it will be rolled back if it accesses the version store.
If the problem persists, the likely cause is improperly sized tempdb or long running transactions.
Please refer to BOL on how to configure tempdb for versioning.

 

Query

Top Version Store Occupants

Let us see what Objects are in the Version Store.

Code



set nocount off;
go

declare @tblHOBT TABLE
(
	  [id]			int not null identity(1,1)
	, [dbid]		int not null
	, [database]	sysname not null
	, [schema]		sysname not null
	, [object]		sysname not null
	, [objectType] sysname not null
	, [index]		sysname null
	, [hobtID]		sysname not null

)

insert into @tblHOBT
(
	  [dbid]
	, [database]
	, [schema]
	, [object]
	, [objectType]
	, [index]
	, [hobtID]
)
EXECUTE master.sys.sp_MSforeachdb 
	'
		if databasepropertyex(''?'', ''Collation'') is not null
		begin

			USE [?]; 
			select distinct
				      db_id()
					, ''?''
					, tblSS.[name]
					, tblSO.[name]
					, tblSO.[type_desc]
					, tblSI.[name]
					, tblSP.[hobt_id]

			from   sys.objects tblSO

			inner join sys.schemas tblSS

				on tblSO.schema_id = tblSS.schema_id

			inner join sys.indexes tblSI

				on tblSO.object_id = tblSI.object_id

			inner join sys.partitions tblSP

				on  tblSI.object_id = tblSP.object_id
				and tblSI.index_id = tblSP.index_id

			-- On User Table
			where tblSO.[type] = ''U'' 


		end

	'

select 
		[rowNumber]
			= ROW_NUMBER() 
			OVER
				(
					ORDER BY 
						  [database] ASC
						, [schema]   ASC
						, [object]   ASC
						, [index]    ASC
				) 

		, [database] 
		, [schema]   
		, [object] 
		, [objectType] 		  
		, [index]   
		, [count]
			= count(*)
		, [aggregatedRecordLengthInBytes]
			= sum
			(
				aggregated_record_length_in_bytes
			)
		, [aggregatedRecordLengthInKB]
			= sum
			(
				aggregated_record_length_in_bytes
			)
			/ (1024)

from   @tblHOBT tblHOBT

inner join sys.dm_tran_top_version_generators AS tblSTTVG

		on tblHOBT.[dbid] = tblSTTVG.database_id
		and tblHOBT.[hobtID] = tblSTTVG.rowset_id

group by
		  [database] 
		, [schema]   
		, [object]   
		, [objectType] 
		, [index]   

order by 
		  [database] asc
		, [schema]   asc
		, [object]   asc
		, [index]    asc


Output

 

Monitor TempDB Disk Space Used

Monitor Tempdb Disk Space Used By Type ( sys.dm_db_file_space_usage )

Outline

Let us query sys.dm_db_file_space_usage to divvy up tempdb storage allocation by type.

Code

use [tempdb]
go

select 
		  getdate() AS runtime

		, [userObjectKB]
			= SUM (user_object_reserved_page_count)*8

		, [userObjectMB]
			= (SUM (user_object_reserved_page_count)*8) / (1024)

		, [internalObjectKB]
			= SUM (internal_object_reserved_page_count)*8

		, [internalObjectMB]
			= SUM (internal_object_reserved_page_count)*8 / 1024

		, [internalObjectGB]
			= SUM (internal_object_reserved_page_count)*8 / (1024 * 1024)

		, [versionStoreKB]
			= SUM (version_store_reserved_page_count)*8

		, [versionStoreKB]
			= (SUM (version_store_reserved_page_count)*8) / ( 1024)

		, [mixedextentKB]
			= SUM (mixed_extent_page_count)*8

		, [mixedextentMB]
			= SUM (mixed_extent_page_count)*8 / 1024

		, [freeSpaceKB]
			= SUM (unallocated_extent_page_count)*8

		, [freeSpaceMB]
			= SUM (unallocated_extent_page_count)*8
				/ ( 1024)

		, [freeSpaceGB]
			= SUM (unallocated_extent_page_count)*8
				/ ( 1024 * 1024)

FROM [tempdb].sys.dm_db_file_space_usage



Output

Explanation
  1. User Object is 1 MB
  2. Internal Object 166 GB
  3. mixed extent is 7 MB
  4. free space is 18 GB

 

 

Monitor Disk Space Used By Object ( tempdb.sys.system_internals_allocation_units )

Outline

Let us query tempdb.sys.system_internals_allocation_units and tempdb.sys.system_internals_partitions to gather storage allocation by object.

Code

select 
		  [object]
			= quoteName(object_schema_name(tblSIP.object_id))
				+ '.'
				+ quoteName(object_name(tblSIP.object_id))

		, tblSO.[type_desc]

		, [totalPages] 
			= sum(tblSIAU.total_pages)

		, [totalKB] 
			= sum(tblSIAU.total_pages * 8)

from   tempdb.sys.system_internals_allocation_units tblSIAU

JOIN   tempdb.sys.system_internals_partitions tblSIP

		ON tblSIAU.container_id = tblSIP.partition_id

inner join sys.objects tblSO
	on tblSIP.object_id = tblSO.object_id

where  tblSO.[type] not in 
		(
			'S'
		)

group by
		  tblSIP.[object_id]
		, tblSO.[type_desc]

order by
		sum(tblSIAU.total_pages) desc


Output

Explanation
  1. Space usage for individual objects is very miniscule

Summary

An alarm, through logging in the error log, is raised due to inability to grow the “Version Store“.

We checked sys.dm_tran_top_version_generators to see which objects are currently hogging the Version Store, we identified hangFire.server and msdb SQL Server Agent Job related tables.

We don’t really appear to have high uptake.

We went and looked at [tempdb].sys.dm_db_file_space_usage.  And, the biggest occupant seems to be internal objects.

Both tempdb.sys.system_internals_allocation_units and tempdb.sys.system_internals_partitions have very low numbers.

Conclusion

Our problem is not Version Store nor actual tables (system, user, temp ).

But, internal objects …

sys.dm_db_file_space_usage (Transact-SQL)
Link

Entity Framework – Query – “SELECT 1 AS [C1]” – Workfile & WorkTable

Background

Sent a couple of goodwill posts towards Entity Framework.

Ever the curmudgeon, it is time to start taking some shots.

 

Sample Generated Query

Query Snippet – Original

Here is a very small portion of one of the queries generated by Entity Framework.


select 1

where 
(
	NOT EXISTS
         (

		SELECT 1 AS [C1]
            
		FROM
                (

		    SELECT
 
		        [Extent10].[End_Id] AS [End_Id],
                        [Extent10].[FootnoteParent_Id] AS [FootnoteParent_Id],
                        [Extent11].[Id] AS [Id2],
                        [Extent12].[Id] AS [Id3],
                        [Extent12].[BeginDate] AS [BeginDate]
             
		   FROM [dbo].[UcNoteContainerFootnotes] AS [Extent10]
				
		   INNER JOIN [dbo].[CourseUCTCA] AS [Extent11]
				 
			ON ([Extent10].[Container_Id] = [Extent11].[NoteContainer_Id])
			AND ([Extent11].[NoteContainer_Id] IS NOT NULL)
             
		  LEFT OUTER JOIN [dbo].[AcademicYears] AS [Extent12] 
			ON [Extent10].[Begin_Id] = [Extent12].[Id]

            
		  WHERE [Extent10].[Container_Id] IS NOT NULL 

			
	      ) AS [Filter2]
          
	     LEFT OUTER JOIN [dbo].[AcademicYears] AS [Extent13]
		   
		ON [Filter2].[End_Id] = [Extent13].[Id]

	) -- NOT EXISTS

) -- SELECT 1


Query Snippet – Revised

Here is a rewrite



select 1

where not exists 
(

	SELECT 
			1

	FROM [dbo].[UcNoteContainerFootnotes] AS [Extent10]
	
	INNER JOIN [dbo].[CourseUCTCA] AS [Extent11]
				 
		ON ([Extent10].[Container_Id] = [Extent11].[NoteContainer_Id])
	

) -- SELECT 1


Explanation

  1. We can discard is not null, due to the same columns being referenced in the “Inner Join
    • The Inner Join “ON ([Extent10].[Container_Id] = [Extent11].[NoteContainer_Id])
    • And, the where clause we can likely jettison are
      • AND ([Extent11].[NoteContainer_Id] IS NOT NULL)
      • WHERE  ( [Extent10].[Container_Id] IS NOT NULL )
  2. We can also likely discard the Left Outer Join, as they are quite not needed in a Not Exists Clause
    • LEFT OUTER JOIN [dbo].[AcademicYears] AS [Extent12]
      • ON [Extent10].[Begin_Id] = [Extent12].[Id]
    • LEFT OUTER JOIN [dbo].[AcademicYears] AS [Extent13]
      • ON [Extent10].[End_Id] = [Extent13].[Id]

 

Obviously, we will have to test things out.

 

 

Query Plan

Query Snippet – Original

Query Snippet – Revised

Explanation

  1. Query Comparison
    • The Original Query is at 17%
    • And, the revised is at 83%
  2. Join Type
    • Original Query uses “Hash Join
      • Cost is 79%
    • And, the revised is “Nested Loops
      • Cost is 2%

 

Statistics I/O

Query Snippet – Original

 

Query Snippet – Revised

Tabulate

Table Original Query Revised Query
 UcNoteContainerFootnotes Scan count 1, logical reads 3, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.  Scan count 1, logical reads 3, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.
 CourseUCTCA  Scan count 1, logical reads 8, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.  Scan count 1, logical reads 4, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.
 Workfile  Scan count 0, logical reads 0, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.
 WorkTable  Scan count 0, logical reads 0, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.

 

 

Explanation

  • The reworked query appears to be less taxing in terms of IO
    • CourseUCTCA
      • Original Query :- Logical Reads is at 8
      • Revised Query :- Logical Reads is at 4
    • Workfile
      • Original Query because it is an Hash Join
    • WorkTable
      • Original Query, also because it is an Hash Join

 

Summary

In later posts, will talk more about WorkTable and Workfiles.

What they are and how to measure their cost.

And, very importantly, how to make sure code re-write is accurate.

Unfortunately, Entity Framework generated SQL Code can suffer from a little intemperance

 

SQL Server – Statistics IO – Scan Count – When Non-unique Index exist

Background

Quick follow-up to our last post.

That post is titled “SQL Server – Statistics IO – Scan Count – When unique Index exists“.

And, it is here.

Lab

Outline

In this exercise, we will create a table and create a single non-unique index on our lone column.

The name of the table is dbo.Numbers_NoUniqueINDX, the name of the lone column is Number.

And, we will create a single non-unique Index.

 

Create & Populate Table

SQL


use master
go

set noexec off
go
SET NOCOUNT ON;
go

/*
	drop table [dbo].[Numbers_NoUniqueINDX]
*/
if object_id('[dbo].[Numbers_NoUniqueINDX]') is null
begin

	create table [dbo].[Numbers_NoUniqueINDX]
	(
		  [Number] int not null
			
	)

end 
go

declare @edition sysname
declare @bCompressionSupported bit

set @edition = cast(serverproperty('edition') as sysname)

if (
		@edition in 
		( 
			'Standard Edition (64-bit)'
		)
	)
begin

	set @bCompressionSupported = 0

end
else if (@edition like 'Enterprise%')
begin

	set @bCompressionSupported = 1

end

print 'edition: ' + @edition
print 'compression : '  + cast(@bCompressionSupported as varchar(10))


if not exists
(

	select *
	from   sys.objects tblSO
	inner join sys.indexes tblSI
		on tblSO.object_id = tblSI.object_id
	where  tblSO.object_id = object_id('[dbo].[Numbers_NoUniqueINDX]')
	and    tblSI.[name] = 'INDX_NonUnique_Number' 

)
begin

	print 'Create Non-Clustered Index - INDX_NonUnique_Number ..'

	if (@bCompressionSupported = 1)
	begin

		create nonclustered index [INDX_NonUnique_Number]
		on [dbo].[Numbers_NoUniqueINDX]
		(
			[Number]
		)
		WITH 
		(
			  DATA_COMPRESSION = PAGE
			, FILLFACTOR=100
			, ignore_dup_key=OFF
		)				

	end
	else
	begin


		create nonclustered index [INDX_NonUnique_Number]
		on [dbo].[Numbers_NoUniqueINDX]
		(
			[Number]
		)
		WITH 
		(
			  DATA_COMPRESSION = NONE
			, FILLFACTOR=100
			, ignore_dup_key=OFF
		)				


	end

	print 'Created Non-Clustered Index - INDX_NonUnique_Number'

end

go

DECLARE @UpperLimit INT;

set @UpperLimit = 1000000;

if not exists
	(
		select 1
		from   [dbo].[Numbers_NoUniqueINDX]
	)

begin

	print 'Adding data into [dbo].[Numbers_No_UniqueINDX] ....'

	;WITH cteNumber 
	AS
	(
			SELECT
				x = ROW_NUMBER() OVER (ORDER BY s1.[object_id])
			FROM  sys.all_objects AS s1
			CROSS JOIN sys.all_objects AS s2
			CROSS JOIN sys.all_objects AS s3
	)
	INSERT INTO [dbo].[Numbers_NoUniqueINDX]
	(
		[Number] 
	)
	SELECT [Number] = cte.[x]
    FROM   cteNumber cte
    WHERE  cte.[x] BETWEEN 1 AND @UpperLimit;
 
	print 'Added data into [dbo].[Numbers_No_UniqueINDX]'

end

GO


 

Query


set noexec off
set nocount on
set statistics io on;
go

use [master]
go

print replicate('=', 120)

print 'Searching for 1 Number'

SELECT
        [Extent1].[Number] AS [Number]  -- 1 Value
		FROM [dbo].[Numbers_NoUniqueINDX] AS [Extent1]
 		WHERE [Extent1].[Number] IN
		 (  1 ) 

print replicate('=', 120)

print 'Searching for 2 Numbers_NoUniqueINDX'

SELECT
        [Extent1].[Number] AS [Number]  -- 1-2 Value
		FROM [dbo].[Numbers_NoUniqueINDX] AS [Extent1]
 		WHERE [Extent1].[Number] IN
		 (
			  1, 2
		 ) 

print replicate('=', 120)

print 'Searching for 10 Numbers_NoUniqueINDX'

SELECT 
        [Extent1].[Number] AS [Number]  -- 1 thru 10 Values
		FROM [dbo].[Numbers_NoUniqueINDX] AS [Extent1]
 		WHERE [Extent1].[Number] IN
		 (
			  1, 2, 3, 4, 5, 6, 7, 8, 9, 10
		 ) 


print replicate('=', 120)

print 'Searching for 60 Numbers_NoUniqueINDX'

SELECT 
        [Extent1].[Number] AS [Number]  -- 1 thru 10 Values
		FROM [dbo].[Numbers_NoUniqueINDX] AS [Extent1]
 		WHERE [Extent1].[Number] IN
		 (
			  1, 2, 3, 4, 5, 6, 7, 8, 9, 10
			, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20
			, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30
			, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40
			, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50
			, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60
		 ) 


print replicate('=', 120)

print 'Searching for 64 Numbers_NoUniqueINDX'

SELECT 
        [Extent1].[Number] AS [Number]  -- 1 Thur 64 Values
FROM [dbo].[Numbers_NoUniqueINDX] AS [Extent1]
WHERE [Extent1].[Number] IN
	(
		1, 2, 3, 4, 5, 6, 7, 8, 9, 10
	, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20
	, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30
	, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40
	, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50
	, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60
	, 61, 62, 63, 64
	) 

		 
print replicate('=', 120)

------------------------------------------------------------------------------------------------

print 'Searching for 65 Numbers_NoUniqueINDX'

SELECT 
        [Extent1].[Number] AS [Number]  -- 65 Values
FROM [dbo].[Numbers_NoUniqueINDX] AS [Extent1]
WHERE [Extent1].[Number] IN
	(

		1, 2, 3, 4, 5, 6, 7, 8, 9, 10
	, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20
	, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30
	, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40
	, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50
	, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60
	, 61, 62, 63, 64, 65
	) 

print replicate('=', 120)

print 'Searching for 66 Numbers_NoUniqueINDX'

SELECT 
        [Extent1].[Number] AS [Number]  -- 1 thru 66 Values
FROM [dbo].[Numbers_NoUniqueINDX] AS [Extent1]
WHERE [Extent1].[Number] IN
	(

		1, 2, 3, 4, 5, 6, 7, 8, 9, 10
	, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20
	, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30
	, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40
	, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50
	, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60
	, 61, 62, 63, 64, 65, 66
	) 

print replicate('=', 120)

------------------------------------------------------------------------------------------------

print 'Searching for 70 Numbers_NoUniqueINDX'

SELECT 
        [Extent1].[Number] AS [Number]  -- 1 thru 90 Values
FROM [dbo].[Numbers_NoUniqueINDX] AS [Extent1]
WHERE [Extent1].[Number] IN
	(

		1, 2, 3, 4, 5, 6, 7, 8, 9, 10
	, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20
	, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30
	, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40
	, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50
	, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60
	, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70
	) 

print replicate('=', 120)

---------------------------------------------------------------------------------------------------
go

 

Statistics IO

 

 

Tabulate

Scenario Statistics I/O Scan Count
 Searching for 1 Number Table ‘Numbers_NoUniqueINDX’. Scan count 1, logical reads 3, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0. 0
 Searching for 2 Numbers Table ‘Numbers_NoUniqueINDX’. Scan count 2, logical reads 6, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.  2
 Searching for 10 Numbers Table ‘Numbers_NoUniqueINDX’. Scan count 10, logical reads 30, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.  10
 Searching for 60 Numbers Table ‘Numbers_NoUniqueINDX’. Scan count 60, logical reads 180, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.  60
 Searching for 64 Numbers Table ‘Numbers_NoUniqueINDX’. Scan count 64, logical reads 192, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.  64
 Searching for 65 Numbers Table ‘Numbers_NoUniqueINDX’. Scan count 65, logical reads 234, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.  65
 Searching for 66 Numbers Table ‘Numbers_NoUniqueINDX’. Scan count 66, logical reads 237, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0. 66
 Searching for 70 Numbers Table ‘Numbers_NoUniqueINDX’. Scan count 70, logical reads 249, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0. 70

 

 

Query Plan – Operator – Index Seek

Explanation

Scan Count matches accurately with the Number of Rows Read.

 

Version Tested On

 

Version
Microsoft SQL Server 2016 (SP1) (KB3182545) – 13.0.4001.0 (X64)
Oct 28 2016 18:17:30
Copyright (c) Microsoft Corporation
Standard Edition (64-bit) on Windows Server 2012 R2 Standard 6.3 <X64> (Build 9600: ) (Hypervisor)
Microsoft SQL Server 2014 (SP2-GDR) (KB3194714) – 12.0.5203.0 (Intel X86)
Sep 23 2016 18:45:55
Copyright (c) Microsoft Corporation
Developer Edition on Windows NT 6.1 (Build 7601: ) (WOW64)

 

 

Source Code Control

GitHub

  1. SQL Server – Statistics I/O – Scan Count – In List Query
    Link

 

GuidePost

Amit Banerjee

Scan Count meaning in SET STATISTICS IO output: Part 2
Link

Even though we are evaluating the condition for all the 20 rows returned by the “backupset” table, we find that there is an additional filter in the SEEK condition i.e. the file_number column, for the data fetched from the “backupfile” table. This changes the scan count to Zero. The reason for this is that the SQL instance now knows that it has to fetch only one row for the value given in the filter as both columns present in the composite primary key are being used during the SEEK. Now SQL knows prior to the fetch that there cannot be duplicate rows, so no extra scan/seek is required.

This is a gotcha that we might overlook when a clustered index seek is being used! Since, we are dealing with a small set of rows, the plan changes may not be significant but for larger tables, such a difference in evaluation may have a significant impact on the query plan and ultimately the performance of the query.

 

Summary

There is a slight difference in how SQL Server measures Scan Counts when unique key scans are being measured, compared to how they are measured when Non-Unique Keys are used.

I don’t get it, but as always Amit Banerjee obviously does.

SQL Server – Statistics IO – Scan Count – When unique Index exist

Background

Reviewing the performance of a query and wanted to dig in deeper into the Statistics IO; specifically the Scan Count.

Lab

dbo.Numbers

Created and Populate Table

Let us create our test table.

It is a simple Numbers table and we will name it dbo.Numbers.

We will fill it with a million records; starting at 1, incrementing by 1, and close out at 1 million.

SQL


use master
go

SET NOCOUNT ON;
go

/*
	drop table [dbo].[Numbers]
*/
if object_id('[dbo].[Numbers]') is null
begin

	create table [dbo].[Numbers]
	(
		[Number] int not null
	)

end 
go

declare @edition sysname
declare @bCompressionSupported bit

set @edition = cast(serverproperty('edition') as sysname)

if (
		@edition in 
		( 
			'Standard Edition (64-bit)'
		)
	)
begin

	set @bCompressionSupported = 0

end
else if (@edition like 'Enterprise%')
begin

	set @bCompressionSupported = 1

end

print 'edition: ' + @edition
print 'compression : '  + cast(@bCompressionSupported as varchar(10))

if not exists
(

	select *
	from   sys.objects tblSO
	where  tblSO.parent_object_id = object_id('[dbo].[Numbers]')
	and    tblSO.[type] = 'PK' 

)
begin

	print 'Creating Primary Key ...'

	if (@bCompressionSupported = 1)
	begin

		alter table [dbo].[Numbers]
			add constraint [PK_Number] primary key
		   (
				[Number]
		   )
			WITH 
			(
				  DATA_COMPRESSION = PAGE
				, FILLFACTOR=100
				, ignore_dup_key=ON
			)				

	end
	else
	begin


		alter table [dbo].[Numbers]
			add constraint [PK_Number] primary key
		   (
				[Number]
		   )
			WITH 
			(
				  DATA_COMPRESSION = NONE
				, FILLFACTOR=100
				, ignore_dup_key=ON
			)				


	end

	print 'Created Primary Key'

end


if not exists
(

	select *
	from   sys.objects tblSO
	inner join sys.indexes tblSI
		on tblSO.object_id = tblSI.object_id
	where  tblSO.object_id = object_id('[dbo].[Numbers]')
	and    tblSI.[name] = 'INDX_Unique_Number' 

)
begin

	print 'Create Non-Clustered Index - INDX_Unique_Number ..'

	if (@bCompressionSupported = 1)
	begin

		create unique nonclustered index [INDX_Unique_Number]
		on [dbo].[Numbers]
		(
			[Number]
		)
		WITH 
		(
			  DATA_COMPRESSION = PAGE
			, FILLFACTOR=100
			, ignore_dup_key=ON
		)				

	end
	else
	begin


		create unique nonclustered index [INDX_Unique_Number]
		on [dbo].[Numbers]
		(
			[Number]
		)
		WITH 
		(
			  DATA_COMPRESSION = NONE
			, FILLFACTOR=100
			, ignore_dup_key=ON
		)				


	end

	print 'Created Non-Clustered Index - INDX_Unique_Number'

end


if not exists
(

	select *
	from   sys.objects tblSO
	inner join sys.indexes tblSI
		on tblSO.object_id = tblSI.object_id
	where  tblSO.object_id = object_id('[dbo].[Numbers]')
	and    tblSI.[name] = 'INDX_NonUnique_Number' 

)
begin

	print 'Create Non-Clustered Index - INDX_NonUnique_Number ..'

	if (@bCompressionSupported = 1)
	begin

		create nonclustered index [INDX_NonUnique_Number]
		on [dbo].[Numbers]
		(
			[Number]
		)
		WITH 
		(
			  DATA_COMPRESSION = PAGE
			, FILLFACTOR=100
			, ignore_dup_key=OFF
		)				

	end
	else
	begin


		create nonclustered index [INDX_NonUnique_Number]
		on [dbo].[Numbers]
		(
			[Number]
		)
		WITH 
		(
			  DATA_COMPRESSION = NONE
			, FILLFACTOR=100
			, ignore_dup_key=OFF
		)				


	end

	print 'Created Non-Clustered Index - INDX_NonUnique_Number'

end

go

DECLARE @UpperLimit INT;

set @UpperLimit = 1000000;

if not exists
	(
		select 1
		from   [dbo].[Numbers]
	)

begin

	print 'Adding data into [dbo].[Numbers] ....'

	;WITH cteNumber 
	AS
	(
			SELECT
				x = ROW_NUMBER() OVER (ORDER BY s1.[object_id])
			FROM  sys.all_objects AS s1
			CROSS JOIN sys.all_objects AS s2
			CROSS JOIN sys.all_objects AS s3
	)
	INSERT INTO [dbo].[Numbers]
	SELECT [Number] = cte.[x]
    FROM   cteNumber cte
    WHERE  cte.[x] BETWEEN 1 AND @UpperLimit;
 
	print 'Added data into [dbo].[Numbers]'

end

GO


 

 

Query Table

It is time to query the table

We will progressively add more numbers to our “In Clause”.

SQL



/*

	set statistics io on;
	set nocount on;

*/
set noexec off
go

set noexec off
go

use [master]
go

print replicate('=', 120)

print 'Searching for 1 Number'

SELECT
        [Extent1].[Number] AS [Number]  -- 1 Value
		FROM [dbo].[Numbers] AS [Extent1]
 		WHERE [Extent1].[Number] IN
		 (  1 ) 

print replicate('=', 120)

print 'Searching for 2 Numbers'

SELECT
        [Extent1].[Number] AS [Number]  -- 1-2 Value
		FROM [dbo].[Numbers] AS [Extent1]
 		WHERE [Extent1].[Number] IN
		 (
			  1, 2
		 ) 

print replicate('=', 120)

print 'Searching for 10 Numbers'

SELECT 
        [Extent1].[Number] AS [Number]  -- 1 thru 10 Values
		FROM [dbo].[Numbers] AS [Extent1]
 		WHERE [Extent1].[Number] IN
		 (
			  1, 2, 3, 4, 5, 6, 7, 8, 9, 10
		 ) 


print replicate('=', 120)

print 'Searching for 60 Numbers'

SELECT 
        [Extent1].[Number] AS [Number]  -- 1 thru 10 Values
		FROM [dbo].[Numbers] AS [Extent1]
 		WHERE [Extent1].[Number] IN
		 (
			  1, 2, 3, 4, 5, 6, 7, 8, 9, 10
			, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20
			, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30
			, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40
			, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50
			, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60
		 ) 


print replicate('=', 120)

print 'Searching for 64 Numbers'

SELECT 
        [Extent1].[Number] AS [Number]  -- 1 Thur 64 Values
		FROM [dbo].[Numbers] AS [Extent1]
 		WHERE [Extent1].[Number] IN
		 (
			  1, 2, 3, 4, 5, 6, 7, 8, 9, 10
			, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20
			, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30
			, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40
			, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50
			, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60
			, 61, 62, 63, 64
		 ) 

		 
print replicate('=', 120)

------------------------------------------------------------------------------------------------

print 'Searching for 65 Numbers'

SELECT 
        [Extent1].[Number] AS [Number]  -- 65 Values
		FROM [dbo].[Numbers] AS [Extent1]
		WHERE [Extent1].[Number] IN
		 (

			  1, 2, 3, 4, 5, 6, 7, 8, 9, 10
			, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20
			, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30
			, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40
			, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50
			, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60
			, 61, 62, 63, 64, 65
		 ) 

print replicate('=', 120)

------------------------------------------------------------------------------------------------

print 'Searching for 65 Numbers ( Using Unique Index)'

SELECT 
        [Extent1].[Number] AS [Number]  -- 65 Values
		FROM [dbo].[Numbers] AS [Extent1] with ( INDEX=INDX_Unique_Number)
		WHERE [Extent1].[Number] IN
		 (

			  1, 2, 3, 4, 5, 6, 7, 8, 9, 10
			, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20
			, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30
			, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40
			, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50
			, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60
			, 61, 62, 63, 64, 65
		 ) 

print replicate('=', 120)

------------------------------------------------------------------------------------------------


print 'Searching for 65 Numbers ( Using Non-Unique Index)'

SELECT 
        [Extent1].[Number] AS [Number]  -- 65 Values
		FROM [dbo].[Numbers] AS [Extent1] with ( INDEX=INDX_NonUnique_Number)
		WHERE [Extent1].[Number] IN
		 (

			  1, 2, 3, 4, 5, 6, 7, 8, 9, 10
			, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20
			, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30
			, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40
			, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50
			, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60
			, 61, 62, 63, 64, 65
		 ) 

print replicate('=', 120)


print 'Searching for 66 Numbers'

SELECT 
        [Extent1].[Number] AS [Number]  -- 1 thru 66 Values
		FROM [dbo].[Numbers] AS [Extent1]
		WHERE [Extent1].[Number] IN
		 (

			  1, 2, 3, 4, 5, 6, 7, 8, 9, 10
			, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20
			, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30
			, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40
			, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50
			, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60
			, 61, 62, 63, 64, 65, 66
		 ) 

print replicate('=', 120)

------------------------------------------------------------------------------------------------

print 'Searching for 70 Numbers'

SELECT 
        [Extent1].[Number] AS [Number]  -- 1 thru 90 Values
		FROM [dbo].[Numbers] AS [Extent1]
		WHERE [Extent1].[Number] IN
		 (

			  1, 2, 3, 4, 5, 6, 7, 8, 9, 10
			, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20
			, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30
			, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40
			, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50
			, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60
			, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70
		 ) 

print replicate('=', 120)

---------------------------------------------------------------------------------------------------
go



 

Output

Query Plan

Explanation
  1. Message :- Scan a particular range of rows from a nonclustered index.
  2. Actual Number of Rows :- 65
  3. Estimated Number of Executions :- 65
  4. Number of Executions :- 65
  5. Number of Rows Read :- 65
Statistics IO

 

Tabulate

Scenario Statistics I/O Scan Count
 Searching for 1 Number Table ‘Numbers’. Scan count 0, logical reads 3, physical reads 3, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0. 0
 Searching for 2 Numbers  Table ‘Numbers’. Scan count 2, logical reads 6, physical reads 3, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.  2
 Searching for 10 Numbers  Table ‘Numbers’. Scan count 10, logical reads 30, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.  10
 Searching for 60 Numbers  Table ‘Numbers’. Scan count 60, logical reads 180, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.  60
 Searching for 64 Numbers  Table ‘Numbers’. Scan count 64, logical reads 192, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.  64
 Searching for 65 Numbers  Table ‘Numbers’. Scan count 0, logical reads 302, physical reads 1, read-ahead reads 2, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.  0
 Searching for 65 Numbers ( Using Unique Index)  Table ‘Numbers’. Scan count 0, logical reads 208, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.  0
 Searching for 65 Numbers ( Using Non-Unique Index)  Table ‘Numbers’. Scan count 0, logical reads 208, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.  0
 Searching for 66 Numbers  Table ‘Numbers’. Scan count 0, logical reads 211, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.  0
Searching for 70 Numbers  Table ‘Numbers’. Scan count 0, logical reads 223, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.  0

 

 

Version Tested On

 

Version
Microsoft SQL Server 2016 (SP1) (KB3182545) – 13.0.4001.0 (X64)
Oct 28 2016 18:17:30
Copyright (c) Microsoft Corporation
Standard Edition (64-bit) on Windows Server 2012 R2 Standard 6.3 <X64> (Build 9600: ) (Hypervisor)
Microsoft SQL Server 2014 (SP2-GDR) (KB3194714) – 12.0.5203.0 (Intel X86)
Sep 23 2016 18:45:55
Copyright (c) Microsoft Corporation
Developer Edition on Windows NT 6.1 (Build 7601: ) (WOW64)

 

 

Source Code Control

GitHub

  1. SQL Server – Statistics I/O – Scan Count – In List Query
    Link

 

MS Connect

  1. Statistics IO / Scan Count not always indicative
    Number :- 3133893
    Status :- Active
    Type :- Bug
    Opened :- 5/8/2017 9:46:53 AM
    Link

 

Summary

Not so sure why Scan Count is being reported as zero when more than 65 values are being queried on.

 

References

  1. Amit Banerjee ( SQL Server Escalation Engineer [ SEE ] , Microsoft SQL support )
    • SCAN COUNT meaning in SET STATISTICS IO output
      Link
    • Scan Count meaning in SET STATISTICS IO output: Part 2
      Link

SQL Server – Query Plan – “Constant Scan”

Background

In our last post, we spoke about running into an error that reads “The query processor ran out of internal resources and could not produce a query plan”.

That post is here.

 

 

Query and Plan

Many Values in Operator

In our original case, there were 19381 values in the in Clause.

 Query



SELECT 
        [Extent1].[Number] AS [Id]
	FROM [master].[dbo].[Numbers] AS [Extent1]
    WHERE [Extent1].[Number] IN 
	(
	    8718, 8725, 8727, 8734, 8736, 8741, 8743, 8750, 8752, 8759, 8761, 8766, 8768, 8775, 8777, 8784, 8786, 8791, 8793, 8800, 8802, 8809, 8811, 8816, 8818, 8820, 8825, 8827, 
		8834, 8836, 8841, 8843, 8845, 8850, 8852, 8859, 8861, 8866, 8868, 8870, 8875, 8877, 8884, 8886, 11869, 11876, 11878, 11883, 11885, 11892, 11894, 11901, 11903, 11908, 
		11910, 11917, 11919, 11926, 11928, 11933, 11935, 11942, 11944, 11951, 11953, 11958, 11960, 11967, 11969, 11976, 11978, 11983, 11985, 11987, 11992, 11994, 12001, 12003, 
		12008, 12010, 12012, 12017, 12019, 12026, 12028, 12033, 12035, 12037, 15036, 15043, 15045, 15050, 15052, 15059, 15061, 15068, 15070, 15075, 15077, 15084, 15086, 15093, 
		15095, 15100, 15102, 15109, 15111, 15118, 15120, 15125, 15127, 15134, 15136, 15143, 15145, 15150, 15152, 15154, 15159, 15161, 15168, 15170, 15175, 15177, 15179, 15184, 
		15186, 15193, 15195, 15200, 15202, 15204, 24994, 24996, 25003, 25005, 25012, 25014, 25019, 25021, 25028, 25030, 25037, 25039, 25044, 25046, 25053, 25055, 25062, 25064, 
		25069, 25071, 25078, 25080, 30787, 30794, 30796, 30803, 30805, 30810, 30812, 30819, 30821, 30828, 30830, 30835, 30837, 30844, 30846, 30853, 30855, 30860, 30862, 30869, 
		30871, 30878, 30880, 30885, 30887, 30894, 30896, 30903, 30905, 30910, 30912, 30919, 30921, 30928, 30930, 30935, 30937, 30944, 30946, 30953, 30955, 33986, 33988, 33995, 
		33997, 34002, 34004, 34011, 34013, 34020, 34022, 34027, 34029, 2777, 2784, 2786, 2791, 2793, 2795, 2800, 2802, 2809, 2811, 2818, 2820, 2825, 2827, 2834, 2836, 2843, 
		2845, 2850, 2852, 2859, 2861, 2868, 2870, 2875, 2877, 2884, 2886, 2893, 2895, 2900, 2902, 2909, 2911, 2918, 2920, 2925, 2927, 2934, 2936, 2943, 2945, 5776, 5778, 5783, 
		5785, 5792, 5794, 5801, 5803, 5808, 5810, 5817, 5819, 5826, 5828, 5833, 5835, 5842, 5844, 5851, 5853, 5858, 5860, 5867, 5869, 5876, 5878, 5883, 5885, 5892, 5894, 5901, 
		5903, 5908, 5910, 5912, 5917, 5919, 5926, 5928, 5933, 5935, 5937, 5942, 5944, 18753, 18755, 18760, 18762, 18769, 18771, 18778, 18780, 18785, 18787, 18794, 18796, 18803, 
		18805, 18810, 18812, 18814, 18819, 18821, 18828, 18830, 18835, 18837, 18839, 18844, 18846, 18853, 18855, 18862, 18864, 18869, 18871, 18878, 18880, 18887, 18889, 18894, 
		18896, 18903, 18905, 18912, 18914, 18919, 18921, 21886, 21888, 21895, 21897, 21902, 21904, 21911, 21913, 21920, 21922, 21927, 21929, 21936, 21938, 21945, 21947, 21952, 
		21954, 21956, 21961, 21963, 21970, 21972, 21977, 21979, 21981, 21986, 21988, 21995, 21997, 22002, 22004, 22006, 22011, 22013, 22020, 22022, 22029, 22031, 22036, 22038, 
		22045, 22047, 25087, 25089, 25094, 25096, 25103, 25105, 25112, 25114, 25119, 25121, 25123, 25128, 25130, 25137, 25139, 25144, 25146, 25148, 25153, 25155, 25162, 49337, 
		49339, 49344, 49346, 61278, 61280, 61285, 61287, 61294, 61296, 61303, 61305, 61310, 61312, 61319, 61321, 61328, 61330, 61335, 61337, 61344, 61346, 61353, 61355, 61360, 
		61362, 61364, 61369, 61371, 61378, 61380, 61385, 61387, 61389, 61394, 61396, 61403, 61405, 61410, 61412, 61414, 61419, 61421, 61428, 61430, 61437, 61439, 61444, 61446, 
		33868, 33870, 33877, 33879, 33886, 33888, 33893, 33895, 33897, 33902, 33904, 33911, 33913, 33918, 33920, 33922, 33927, 33929, 33936, 33938, 33945, 33947, 33952, 33954, 
		33961, 33963, 33970, 33972, 33977, 33979, 37162, 37164, 37169, 37171, 37178, 37180, 37187, 37189, 37194, 37196, 37203, 37205, 37212, 37214, 43521, 43523, 43528, 43530, 
		43537, 43539, 43546, 43548, 43553, 43555, 43562, 43564, 43571, 43573, 43578, 43580, 43587, 8729, 8730, 8731, 8732, 8745, 8746, 8747, 8748, 8762, 8763, 8764, 8765, 8779, 
		8780, 8781, 8782, 8795, 8796, 8797, 8798, 8799, 8812, 8813, 8814, 8815, 8829, 8830, 8831, 8832, 8846, 8847, 8848, 8849, 8862, 8863, 8864, 8865, 8879, 8880, 8881, 8882, 
		11871, 11872, 11873, 11874, 11887, 11888, 11889, 11890, 11904, 11905, 11906, 11907, 11921, 11922, 11923, 11924, 11937, 11938, 11939, 11940, 11941, 11954, 11955, 11956, 
		11957, 11971, 11972, 11973, 11974, 11988, 11989, 11990, 11991, 12004, 12005, 12006, 12007, 12021, 12022, 12023, 12024, 12038, 15046, 15047, 15048, 15049, 15063, 15064, 
		15065, 15066, 15079, 15080, 15081, 15082, 15083, 15096, 15097, 15098, 15099, 15113, 15114, 15115, 15116, 15129, 15130, 15131, 15132, 15133, 15146, 15147, 15148, 15149, 
		15163, 15164, 15165, 15166, 15180, 15181, 15182, 15183, 15196, 15197, 15198, 15199, 24992, 24993, 25007, 25008, 25009, 25010, 25023, 25024, 25025, 25026, 25040, 25041, 
		25042, 25043, 25057, 25058, 25059, 25060, 25073, 25074, 25075, 25076, 25077, 30789, 30790, 30791, 30792, 30806, 30807, 30808, 30809, 30822, 30823, 30824, 30825, 30826, 
		30839, 30840, 30841, 30842, 30856, 30857, 30858, 30859, 30873, 30874, 30875, 30876, 30889, 30890, 30891, 30892, 30906, 30907, 30908, 30909, 30923, 30924, 30925, 30926, 
		30939, 30940, 30941, 30942, 30943, 30956, 30957, 33981, 33982, 33983, 33984, 33998, 33999, 34000, 34001, 34015, 34016, 34017, 34018, 34031, 34032, 34033, 34034, 2779, 
		2780, 2781, 2782, 2796, 2797, 2798, 2799, 2812, 2813, 2814, 2815, 2816, 2829, 2830, 2831, 2832, 2846, 2847, 2848, 2849, 2863, 2864, 2865, 2866, 2879, 2880, 2881, 2882, 
		2896, 2897, 2898, 2899, 2913, 2914, 2915, 2916, 2929, 2930, 2931, 2932, 2933, 2946, 2947, 5787, 5788, 5789, 5790, 5804, 5805, 5806, 5807, 5821, 5822, 5823, 5824, 5837, 
		5838, 5839, 5840, 5841, 5854, 5855, 5856, 5857, 5871, 5872, 5873, 5874, 5887, 5888, 5889, 5890, 5891, 5904, 5905, 5906, 5907, 5921, 5922, 5923, 5924, 5938, 5939, 5940, 
		5941, 18756, 18757, 18758, 18759, 18773, 18774, 18775, 18776, 18789, 18790, 18791, 18792, 18793, 18806, 18807, 18808, 18809, 18823, 18824, 18825, 18826, 18840, 18841, 
		18842, 18843, 18856, 18857, 18858, 18859, 18860, 18873, 18874, 18875, 18876, 18890, 18891, 18892, 18893, 18906, 18907, 18908, 18909, 18910, 21882, 21883, 21884, 21898, 
		21899, 21900, 21901, 21915, 21916, 21917, 21918, 21931, 21932, 21933, 21934, 21935, 21948, 21949, 21950, 21951, 21965, 21966, 21967, 21968, 21982, 21983, 21984, 21985, 
		21998, 21999, 22000, 22001, 22015, 22016, 22017, 22018, 22032, 22033, 22034, 22035, 22048, 22049, 22050, 22051, 22052, 25090, 25091, 25092, 25093, 25107, 25108, 25109, 
		25110, 25124, 25125, 25126, 25127, 25140, 25141, 25142, 25143, 25157, 25158, 25159, 25160, 49340, 49341, 49342, 49343, 61289, 61290, 61291, 61292, 61306, 61307, 61308, 
		61309, 61323, 61324, 61325, 61326, 61339, 61340, 61341, 61342, 61343, 61356, 61357, 61358, 61359, 61373, 61374, 61375, 61376, 61390, 61391, 61392, 61393, 61406, 61407, 
		61408, 61409, 61423, 61424, 61425, 61426, 61440, 61441, 61442, 61443, 33864, 33865, 33866, 33867, 33881, 33882, 33883, 33884, 33898, 33899, 33900, 33901, 33914, 33915, 
		33916, 33917, 33931, 33932, 33933, 33934, 33948, 33949, 33950, 33951, 33964, 33965, 33966, 33967, 33968, 37173, 37174, 37175, 37176, 37190, 37191, 37192, 37193, 37207, 
		37208, 37209, 37210, 43524, 43525, 43526, 43527, 43541, 43542, 43543, 43544, 43557, 43558, 43559, 43560, 43561, 43574, 43575, 43576, 43577, 43591, 43592, 43593, 43594, 
		43608, 43609, 8720, 8721, 8722, 8723, 8737, 8738, 8739, 8740, 8754, 8755, 8756, 8757, 8770, 8771, 8772, 8773, 8774, 8787, 8788, 8789, 8790, 8804, 8805, 8806, 8807, 
		8821, 8822, 8823, 8824, 8837, 8838, 8839, 8840, 8854, 8855, 8856, 8857, 8871, 8872, 8873, 8874, 8887, 11879, 11880, 11881, 11882, 11896, 11897, 11898, 11899, 11912, 
		11913, 11914, 11915, 11929, 11930, 11931, 11932, 11946, 11947, 11948, 11949, 11962, 11963, 11964, 11965, 11966, 11979, 11980, 11981, 11982, 11996, 11997, 11998, 11999, 
		12013, 12014, 12015, 12016, 12029, 12030, 12031, 12032, 15038, 15039, 15040, 15041, 15054, 15055, 15056, 15057, 15071, 15072, 15073, 15074, 15088, 15089, 15090, 15091, 
		15104, 15105, 15106, 15107, 15108, 15121, 15122, 15123, 15124, 15138, 15139, 15140, 15141, 15155, 15156, 15157, 15158, 15171, 15172, 15173, 15174, 15188, 15189, 15190, 
		15191, 15205, 24998, 24999, 25000, 25001, 25015, 25016, 25017, 25018, 25032, 25033, 25034, 25035, 25048, 25049, 25050, 25051, 25065, 25066, 25067, 25068, 30797, 30798, 
		30799, 30800, 30801, 30814, 30815, 30816, 30817, 30831, 30832, 30833, 30834, 30848, 30849, 30850, 30851, 30864, 30865, 30866, 30867, 30881, 30882, 30883, 30884, 30898, 
		30899, 30900, 30901, 30914, 30915, 30916, 30917, 30918, 30931, 30932, 30933, 30934, 30948, 30949, 30950, 30951, 33989, 33990, 33991, 33992, 33993, 34006, 34007, 34008, 
		34009, 34023, 34024, 34025, 34026, 2787, 2788, 2789, 2790, 2804, 2805, 2806, 2807, 2821, 2822, 2823, 2824, 2837, 2838, 2839, 2840, 2841, 2854, 2855, 2856, 2857, 2871, 
		2872, 2873, 2874, 2888, 2889, 2890, 2891, 2904, 2905, 2906, 2907, 2921, 2922, 2923, 2924, 2938, 2939, 2940, 2941, 5779, 5780, 5781, 5782, 5796, 5797, 5798, 5799, 5812, 
		5813, 5814, 5815, 5829, 5830, 5831, 5832, 5846, 5847, 5848, 5849, 5862, 5863, 5864, 5865, 5866, 5879, 5880, 5881, 5882, 5896, 5897, 5898, 5899, 5913, 5914, 5915, 5916, 
		5929, 5930, 5931, 5932, 5946, 18764, 18765, 18766, 18767, 18768, 18781, 18782, 18783, 18784, 18798, 18799, 18800, 18801, 18815, 18816, 18817, 18818, 18831, 18832, 
		18833, 18834, 18848, 18849, 18850, 18851, 18865, 18866, 18867, 18868, 18881, 18882, 18883, 18884, 18885, 18898, 18899, 18900, 18901, 18915, 18916, 18917, 18918, 21890, 
		21891, 21892, 21893, 21906, 21907, 21908, 21909, 21910, 21923, 21924, 21925, 21926, 21940, 21941, 21942, 21943, 21957, 21958, 21959, 21960, 21973, 21974, 21975, 21976, 
		21990, 21991, 21992, 21993, 22007, 22008, 22009, 22010, 22023, 22024, 22025, 22026, 22027, 22040, 22041, 22042, 22043, 25082, 25083, 25084, 25085, 25098, 25099, 25100, 
		25101, 25102, 25115, 25116, 25117, 25118, 25132, 25133, 25134, 25135, 25149, 25150, 25151, 25152, 49333, 49334, 49335, 49348, 49349, 49350, 61281, 61282, 61283, 61284, 
		61298, 61299, 61300, 61301, 61314, 61315, 61316, 61317, 61318, 61331, 61332, 61333, 61334, 61348, 61349, 61350, 61351, 61365, 61366, 61367, 61368, 61381, 61382, 61383, 
		61384, 61398, 61399, 61400, 61401, 61415, 61416, 61417, 61418, 61431, 61432, 61433, 61434, 61435, 61448, 33872, 33873, 33874, 33875, 33876, 33889, 33890, 33891, 33892, 
		33906, 33907, 33908, 33909, 33923, 33924, 33925, 33926, 33939, 33940, 33941, 33942, 33943, 33956, 33957, 33958, 33959, 33973, 33974, 33975, 33976, 37165, 37166, 37167, 
		37168, 37182, 37183, 37184, 37185, 37198, 37199, 37200, 37201, 37215, 43516, 43517, 43518, 43519, 43532, 43533, 43534, 43535, 43549, 43550, 43551, 43552, 43566, 43567, 
		43568, 43569, 43582, 43583, 43584, 43585, 43586, 43599, 43600, 43601, 43602, 43616, 43617, 43618, 43619, 43633, 43634, 8717, 8719, 8724, 8726, 8728, 8733, 8735, 8742, 
		8744, 8749, 8751, 8753, 8758, 8760, 8767, 8769, 8776, 8778, 8783, 8785, 8792, 8794, 8801, 8803, 8808, 8810, 8817, 8819, 8826, 8828, 8833, 8835, 8842, 8844, 8851, 8853, 
		8858, 8860, 8867, 8869, 8876, 8878, 8883, 8885, 11868, 11870, 11875, 11877, 11884, 11886, 11891, 11893, 11895, 11900, 11902, 11909, 11911, 11916, 11918, 11920, 11925, 
		11927, 11934, 11936, 11943, 11945, 11950, 11952, 11959, 11961, 11968, 11970, 11975, 11977, 11984, 11986, 11993, 11995, 12000, 12002, 12009, 12011, 12018, 12020, 12025, 
		12027, 12034, 12036, 15035, 15037, 15042, 15044, 15051, 15053, 15058, 15060, 15062, 15067, 15069, 15076, 15078, 15085, 15087, 15092, 15094, 15101, 15103, 15110, 15112, 
		15117, 15119, 15126, 15128, 15135, 15137, 15142, 15144, 15151, 15153, 15160, 15162, 15167, 15169, 15176, 15178, 15185, 15187, 15192, 15194, 15201, 15203, 24995, 24997, 
		25002, 25004, 25006, 25011, 25013, 25020, 25022, 25027, 25029, 25031, 25036, 25038, 25045, 25047, 25052, 25054, 25056, 25061, 25063, 25070, 25072, 25079, 30788, 30793, 
		30795, 30802, 30804, 30811, 30813, 30818, 30820, 30827, 30829, 30836, 30838, 30843, 30845, 30847, 30852, 30854, 30861, 30863, 30868, 30870, 30872, 30877, 30879, 30886, 
		30888, 30893, 30895, 30897, 30902, 30904, 30911, 30913, 30920, 30922, 30927, 30929, 30936, 30938, 30945, 30947, 30952, 30954, 33980, 33985, 33987, 33994, 33996, 34003, 
		34005, 34010, 34012, 34014, 34019, 34021, 34028, 34030, 2778, 2783, 2785, 2792, 2794, 2801, 2803, 2808, 2810, 2817, 2819, 2826, 2828, 2833, 2835, 2842, 2844, 2851, 
		2853, 2858, 2860, 2862, 2867, 2869, 2876, 2878, 2883, 2885, 2887, 2892, 2894, 2901, 2903, 2908, 2910, 2912, 2917, 2919, 2926, 2928, 2935, 2937, 2942, 2944, 5777, 5784, 
		5786, 5791, 5793, 5795, 5800, 5802, 5809, 5811, 5816, 5818, 5820, 5825, 5827, 5834, 5836, 5843, 5845, 5850, 5852, 5859, 5861, 5868, 5870, 5875, 5877, 5884, 5886, 5893, 
		5895, 5900, 5902, 5909, 5911, 5918, 5920, 5925, 5927, 5934, 5936, 5943, 5945, 18752, 18754, 18761, 18763, 18770, 18772, 18777, 18779, 18786, 18788, 18795, 18797, 18802, 
		18804, 18811, 18813, 18820, 18822, 18827, 18829, 18836, 18838, 18845, 18847, 18852, 18854, 18861, 18863, 18870, 18872, 18877, 18879, 18886, 18888, 18895, 18897, 18902, 
		18904, 18911, 18913, 18920, 18922, 21885, 21887, 21889, 21894, 21896, 21903, 21905, 21912, 21914, 21919, 21921, 21928, 21930, 21937, 21939, 21944, 21946, 21953, 21955, 
		21962, 21964, 21969, 21971, 21978, 21980, 21987, 21989, 21994, 21996, 22003, 22005, 22012, 22014, 22019, 22021, 22028, 22030, 22037, 22039, 22044, 22046, 25081, 25086, 
		25088, 25095, 25097, 25104, 25106, 25111, 25113, 25120, 25122, 25129, 25131, 25136, 25138, 25145, 25147, 25154, 25156, 25161, 49336, 49338, 49345, 49347, 61279, 61286, 
		61288, 61293, 61295, 61297, 61302, 61304, 61311, 61313, 61320, 61322, 61327, 61329, 61336, 61338, 61345, 61347, 61352, 61354, 61361, 61363, 61370, 61372, 61377, 61379, 
		61386, 61388, 61395, 61397, 61402, 61404, 61411, 61413, 61420, 61422, 61427, 61429, 61436, 61438, 61445, 61447, 33869, 33871, 33878, 33880, 33885, 33887, 33894, 33896, 
		33903, 33905, 33910, 33912, 33919, 33921, 33928, 33930, 33935, 33937, 33944, 33946, 33953, 33955, 33960, 33962, 33969, 33971, 33978, 37163, 37170, 37172, 37177, 37179, 
		37181, 37186, 37188, 37195, 37197, 37202, 37204, 37206, 37211, 37213, 43520, 43522, 43529, 43531, 43536, 43538, 43540, 43545, 43547, 43554, 43556, 43563, 43565, 43570, 
		43572, 43579, 43581, 43588, 43590, 43595, 43589, 43596, 43598, 43603, 43605, 43607, 43612, 43614, 43621, 43623, 43628, 43630, 43632, 43637, 43639, 43646, 43648, 43653, 
		43655, 43657, 43662, 43664, 43671, 43673, 43680, 43682, 46436, 46438, 46445, 46447, 46454, 46456, 46461, 46463, 46470, 46472, 46479, 46481, 46486, 46488, 46495, 46497, 
		46504, 46506, 46511, 46513, 46520, 46522, 46529, 46531, 46536, 46538, 46540, 46545, 46547, 46554, 46556, 46561, 46563, 46565, 46570, 46572, 46579, 46581, 46588, 46590, 
		46595, 46597, 46604, 46606, 49353, 49355, 49362, 49364, 49369, 49371, 49378, 49380, 49387, 49389, 49394, 49396, 49403, 49405, 49412, 49414, 49419, 49421, 49428, 49430, 
		49437, 49439, 49444, 49446, 49448, 49453, 49455, 49462, 49464, 49469, 49471, 49473, 49478, 49480, 49487, 49489, 49494, 49496, 49498, 49503, 56489, 56491, 56498, 56500, 
		56505, 56507, 56509, 56514, 56516, 56523, 56525, 56530, 56532, 56534, 56539, 56541, 56548, 56550, 56555, 56557, 56559, 56564, 56566, 56573, 56575, 56582, 56584, 56589, 
		56591, 56598, 56600, 56607, 56609, 56614, 56616, 56623, 56625, 37219, 37221, 37228, 37230, 37237, 37239, 37244, 37246, 37253, 37255, 37262, 37264, 37269, 37271, 37278, 
		37280, 37287, 37289, 37294, 37296, 37298, 37303, 37305, 37312, 37314, 37319, 37321, 37323, 37328, 37330, 40456, 40461, 40463, 40465, 40470, 40472, 40479, 40481, 40486, 
		40488, 40490, 40495, 40497, 40504, 40506, 40513, 40515, 40520, 40522, 40529, 40531, 40538, 40540, 40545, 40547, 40554, 40556, 40563, 40565, 40570, 40572, 40579, 40581, 
		40588, 40590, 40595, 40597, 40604, 40606, 40613, 40615, 40620, 40622, 56632, 56634, 56639, 56641, 56648, 56650, 68773, 68775, 68782, 68784, 68789, 68791, 68798, 68800, 
		68807, 68809, 68814, 68816, 68823, 68825, 68832, 68834, 68839, 68841, 68848, 68850, 68857, 68859, 68864, 68866, 68873, 68875, 68882, 68884, 68889, 68891, 68898, 68900, 
		68907, 68909, 68914, 68916, 68918, 68923, 68925, 64218, 64220, 64227, 64229, 64236, 64238, 64243, 64245, 64252, 64254, 64261, 64263, 64268, 64270, 64277, 64279, 64286, 
		64288, 64293, 64295, 64297, 64302, 64304, 64311, 64313, 64318, 64320, 64322, 64327, 64329, 64336, 64338, 64343, 64345, 64347, 64352, 64354, 64361, 64363, 64370, 64372, 
		64377, 64379, 68764, 68766, 71731, 71733, 71740, 71742, 71747, 71749, 71756, 71758, 71765, 71767, 71772, 71774, 71781, 71783, 71790, 71792, 71797, 71799, 71806, 71808, 
		71815, 71817, 71822, 71824, 71826, 71831, 71833, 71840, 71842, 71847, 71849, 71851, 71856, 71858, 71865, 71867, 71872, 71874, 71876, 71881, 71883, 71890, 71892, 74648, 
		74650, 74655, 74657, 74664, 74666, 74673, 74675, 74680, 74682, 74689, 74691, 74698, 74700, 74705, 74707, 74714, 74716, 74723, 74725, 74730, 74732, 74739, 74741, 74748, 
		74750, 74755, 74757, 74759, 74764, 74766, 74773, 74775, 74780, 74782, 74784, 74789, 74791, 74798, 74800, 74807, 74809, 74814, 77849, 77856, 77858, 77865, 77867, 77872, 
		77874, 77881, 77883, 77890, 77892, 77897, 77899, 77906, 77908, 77915, 77917, 77922, 77924, 77926, 77931, 77933, 77940, 77942, 77947, 77949, 77951, 77956, 77958, 77965, 
		77967, 77974, 77976, 77981, 77983, 77990, 77992, 77999, 78001, 78006, 78008, 78015, 78017, 80287, 80289, 80296, 80298, 80305, 80307, 80312, 80314, 80321, 80323, 80330, 
		80332, 80337, 80339, 80341, 80346, 80348, 80355, 80357, 80362, 80364, 80366, 80371, 80373, 80380, 80382, 80387, 80389, 80391, 80396, 80398, 80405, 80407, 80414, 80416, 
		80421, 80423, 83329, 83331, 83338, 83340, 83347, 83349, 83354, 83356, 83363, 83365, 83372, 83374, 83379, 83381, 83388, 83390, 83397, 83399, 83404, 83406, 93850, 93852, 
		93859, 93861, 93866, 93868, 93875, 93877, 93884, 93886, 93891, 93893, 93900, 93902, 93909, 43610, 43611, 43624, 43625, 43626, 43627, 43641, 43642, 43643, 43644, 43658, 
		43659, 43660, 43661, 43674, 43675, 43676, 43677, 43678, 46449, 46450, 46451, 46452, 46465, 46466, 46467, 46468, 46469, 46482, 46483, 46484, 46485, 46499, 46500, 46501, 
		46502, 46515, 46516, 46517, 46518, 46519, 46532, 46533, 46534, 46535, 46549, 46550, 46551, 46552, 46566, 46567, 46568, 46569, 46582, 46583, 46584, 46585, 46586, 46599, 
		46600, 46601, 46602, 49357, 49358, 49359, 49360, 49373, 49374, 49375, 49376, 49390, 49391, 49392, 49393, 49407, 49408, 49409, 49410, 49423, 49424, 49425, 49426, 49427, 
		49440, 49441, 49442, 49443, 49457, 49458, 49459, 49460, 49474, 49475, 49476, 49477, 49490, 49491, 49492, 49493, 56493, 56494, 56495, 56496, 56510, 56511, 56512, 56513, 
		56526, 56527, 56528, 56529, 56543, 56544, 56545, 56546, 56560, 56561, 56562, 56563, 56576, 56577, 56578, 56579, 56580, 56593, 56594, 56595, 56596, 56610, 56611, 56612, 
		56613, 56627, 56628, 56629, 56630, 37223, 37224, 37225, 37226, 37227, 37240, 37241, 37242, 37243, 37257, 37258, 37259, 37260, 37273, 37274, 37275, 37276, 37277, 37290, 
		37291, 37292, 37293, 37307, 37308, 37309, 37310, 37324, 37325, 37326, 37327, 40466, 40467, 40468, 40469, 40482, 40483, 40484, 40485, 40499, 40500, 40501, 40502, 40516, 
		40517, 40518, 40519, 40532, 40533, 40534, 40535, 40536, 40549, 40550, 40551, 40552, 40566, 40567, 40568, 40569, 40583, 40584, 40585, 40586, 40599, 40600, 40601, 40602, 
		40616, 40617, 40618, 40619, 56643, 56644, 56645, 56646, 68776, 68777, 68778, 68779, 68780, 68793, 68794, 68795, 68796, 68810, 68811, 68812, 68813, 68827, 68828, 68829, 
		68830, 68843, 68844, 68845, 68846, 68847, 68860, 68861, 68862, 68863, 68877, 68878, 68879, 68880, 68893, 68894, 68895, 68896, 68897, 68910, 68911, 68912, 68913, 68927, 
		68928, 68929, 68930, 64215, 64216, 64217, 64231, 64232, 64233, 64234, 64247, 64248, 64249, 64250, 64251, 64264, 64265, 64266, 64267, 64281, 64282, 64283, 64284, 64298, 
		64299, 64300, 64301, 64314, 64315, 64316, 64317, 64331, 64332, 64333, 64334, 64348, 64349, 64350, 64351, 64364, 64365, 64366, 64367, 64368, 64381, 64382, 64383, 64384, 
		68760, 68761, 68762, 68763, 71735, 71736, 71737, 71738, 71751, 71752, 71753, 71754, 71768, 71769, 71770, 71771, 71785, 71786, 71787, 71788, 71801, 71802, 71803, 71804, 
		71805, 71818, 71819, 71820, 71821, 71835, 71836, 71837, 71838, 71852, 71853, 71854, 71855, 71868, 71869, 71870, 71871, 71885, 71886, 71887, 71888, 74644, 74645, 74646, 
		74659, 74660, 74661, 74662, 74676, 74677, 74678, 74679, 74693, 74694, 74695, 74696, 74709, 74710, 74711, 74712, 74713, 74726, 74727, 74728, 74729, 74743, 74744, 74745, 
		74746, 74760, 74761, 74762, 74763, 74776, 74777, 74778, 74779, 74793, 74794, 74795, 74796, 74810, 74811, 74812, 74813, 77851, 77852, 77853, 77854, 77855, 77868, 77869, 
		77870, 77871, 77885, 77886, 77887, 77888, 77901, 77902, 77903, 77904, 77905, 77918, 77919, 77920, 77921, 77935, 77936, 77937, 77938, 77952, 77953, 77954, 77955, 77968, 
		77969, 77970, 77971, 77972, 77985, 77986, 77987, 77988, 78002, 78003, 78004, 78005, 78018, 78019, 80291, 80292, 80293, 80294, 80295, 80308, 80309, 80310, 80311, 80325, 
		80326, 80327, 80328, 80342, 80343, 80344, 80345, 80358, 80359, 80360, 80361, 80375, 80376, 80377, 80378, 80392, 80393, 80394, 80395, 80408, 80409, 80410, 80411, 80412, 
		83333, 83334, 83335, 83336, 83350, 83351, 83352, 83353, 83366, 83367, 83368, 83369, 83370, 83383, 83384, 83385, 83386, 83400, 83401, 83402, 83403, 93846, 93847, 93848, 
		93862, 93863, 93864, 93865, 93879, 93880, 93881, 93882, 93895, 93896, 93897, 93898, 93912, 93913, 93914, 93915, 93929, 93930, 93931, 93932, 43597, 43604, 43606, 43613, 
		43615, 43620, 43622, 43629, 43631, 43638, 43640, 43645, 43647, 43654, 43656, 43663, 43665, 43670, 43672, 43679, 43681, 46437, 46439, 46444, 46446, 46448, 46453, 46455, 
		46462, 46464, 46471, 46473, 46478, 46480, 46487, 46489, 46496, 46498, 46503, 46505, 46512, 46514, 46521, 46523, 46528, 46530, 46537, 46539, 46546, 46548, 46553, 46555, 
		46562, 46564, 46571, 46573, 46578, 46580, 46587, 46589, 46596, 46598, 46603, 46605, 49352, 49354, 49356, 49361, 49363, 49370, 49372, 49377, 49379, 49381, 49386, 49388, 
		49395, 49397, 49404, 49406, 49411, 49413, 49420, 49422, 49429, 49431, 49436, 49438, 49445, 49447, 49454, 49456, 49461, 49463, 49470, 49472, 49479, 49481, 49486, 49488, 
		49495, 49497, 56483, 56490, 56492, 56497, 56499, 56506, 56508, 56515, 56517, 56522, 56524, 56531, 56533, 56540, 56542, 56547, 56549, 56556, 56558, 56565, 56567, 56572, 
		56574, 56581, 56583, 56590, 56592, 56597, 56599, 56606, 56608, 56615, 56617, 56622, 56624, 56626, 56631, 37220, 37222, 37229, 37231, 37236, 37238, 37245, 37247, 37254, 
		37256, 37261, 37263, 37270, 37272, 37279, 37281, 37286, 37288, 37295, 37297, 37304, 37306, 37311, 37313, 37320, 37322, 37329, 37331, 40462, 40464, 40471, 40473, 40478, 
		40480, 40487, 40489, 40496, 40498, 40503, 40505, 40512, 40514, 40521, 40523, 40528, 40530, 40537, 40539, 40546, 40548, 40553, 40555, 40562, 40564, 40571, 40573, 40578, 
		40580, 40582, 40587, 40589, 40596, 40598, 40603, 40605, 40607, 40612, 40614, 40621, 40623, 56633, 56640, 56642, 56647, 56649, 56651, 68767, 68772, 68774, 68781, 68783, 
		68790, 68792, 68797, 68799, 68801, 68806, 68808, 68815, 68817, 68822, 68824, 68826, 68831, 68833, 68840, 68842, 68849, 68851, 68856, 68858, 68865, 68867, 68874, 68876, 
		68881, 68883, 68890, 68892, 68899, 68901, 68906, 68908, 68915, 68917, 68924, 68926, 64219, 64221, 64228, 64230, 64235, 64237, 64244, 64246, 64253, 64255, 64260, 64262, 
		64269, 64271, 64278, 64280, 64285, 64287, 64294, 64296, 64303, 64305, 64310, 64312, 64319, 64321, 64328, 64330, 64335, 64337, 64344, 64346, 64353, 64355, 64360, 64362, 
		64369, 64371, 64378, 64380, 64385, 68765, 71730, 71732, 71734, 71739, 71741, 71748, 71750, 71755, 71757, 71759, 71764, 71766, 71773, 71775, 71782, 71784, 71789, 71791, 
		71798, 71800, 71807, 71809, 71814, 71816, 71823, 71825, 71832, 71834, 71839, 71841, 71848, 71850, 71857, 71859, 71864, 71866, 71873, 71875, 71882, 71884, 71889, 71891, 
		71898, 74647, 74649, 74656, 74658, 74663, 74665, 74667, 74672, 74674, 74681, 74683, 74690, 74692, 74697, 74699, 74706, 74708, 74715, 74717, 74722, 74724, 74731, 74733, 
		74740, 74742, 74747, 74749, 74756, 74758, 74765, 74767, 74772, 74774, 74781, 74783, 74790, 74792, 74797, 74799, 74806, 74808, 77850, 77857, 77859, 77864, 77866, 77873, 
		77875, 77882, 77884, 77889, 77891, 77898, 77900, 77907, 77909, 77914, 77916, 77923, 77925, 77932, 77934, 77939, 77941, 77948, 77950, 77957, 77959, 77964, 77966, 77973, 
		77975, 77982, 77984, 77989, 77991, 77998, 78000, 78007, 78009, 78014, 78016, 80288, 80290, 80297, 80299, 80304, 80306, 80313, 80315, 80322, 80324, 80329, 80331, 80338, 
		80340, 80347, 80349, 80354, 80356, 80363, 80365, 80372, 80374, 80379, 80381, 80388, 80390, 80397, 80399, 80404, 80406, 80413, 80415, 80422, 80424, 83330, 83332, 83337, 
		83339, 83346, 83348, 83355, 83357, 83362, 83364, 83371, 83373, 83380, 83382, 83387, 83389, 83391, 83396, 83398, 83405, 93849, 93851, 93853, 93858, 93860, 93867, 93869, 
		93874, 93876, 93878, 93883, 93885, 93892, 93894, 93899, 93901, 93903, 93908, 93910, 93917, 93919, 93926, 93928, 93933, 93935, 93942, 93944, 93951, 93953, 93958, 93960, 
		93967, 93969, 93976, 43635, 43636, 43649, 43650, 43651, 43652, 43666, 43667, 43668, 43669, 43683, 43684, 43685, 43686, 46440, 46441, 46442, 46443, 46457, 46458, 46459, 
		46460, 46474, 46475, 46476, 46477, 46490, 46491, 46492, 46493, 46494, 46507, 46508, 46509, 46510, 46524, 46525, 46526, 46527, 46541, 46542, 46543, 46544, 46557, 46558, 
		46559, 46560, 46574, 46575, 46576, 46577, 46591, 46592, 46593, 46594, 49351, 49365, 49366, 49367, 49368, 49382, 49383, 49384, 49385, 49398, 49399, 49400, 49401, 49402, 
		49415, 49416, 49417, 49418, 49432, 49433, 49434, 49435, 49449, 49450, 49451, 49452, 49465, 49466, 49467, 49468, 49482, 49483, 49484, 49485, 49499, 49500, 49501, 49502, 
		56484, 56485, 56486, 56487, 56488, 56501, 56502, 56503, 56504, 56518, 56519, 56520, 56521, 56535, 56536, 56537, 56538, 56551, 56552, 56553, 56554, 56568, 56569, 56570, 
		56571, 56585, 56586, 56587, 56588, 56601, 56602, 56603, 56604, 56605, 56618, 56619, 56620, 56621, 37216, 37217, 37218, 37232, 37233, 37234, 37235, 37248, 37249, 37250, 
		37251, 37252, 37265, 37266, 37267, 37268, 37282, 37283, 37284, 37285, 37299, 37300, 37301, 37302, 37315, 37316, 37317, 37318, 37332, 40457, 40458, 40459, 40460, 40474, 
		40475, 40476, 40477, 40491, 40492, 40493, 40494, 40507, 40508, 40509, 40510, 40511, 40524, 40525, 40526, 40527, 40541, 40542, 40543, 40544, 40557, 40558, 40559, 40560, 
		40561, 40574, 40575, 40576, 40577, 40591, 40592, 40593, 40594, 40608, 40609, 40610, 40611, 40624, 40625, 40626, 56635, 56636, 56637, 56638, 56652, 56653, 68768, 68769, 
		68770, 68771, 68785, 68786, 68787, 68788, 68802, 68803, 68804, 68805, 68818, 68819, 68820, 68821, 68835, 68836, 68837, 68838, 68852, 68853, 68854, 68855, 68868, 68869, 
		68870, 68871, 68872, 68885, 68886, 68887, 68888, 68902, 68903, 68904, 68905, 68919, 68920, 68921, 68922, 64222, 64223, 64224, 64225, 64226, 64239, 64240, 64241, 64242, 
		64256, 64257, 64258, 64259, 64272, 64273, 64274, 64275, 64276, 64289, 64290, 64291, 64292, 64306, 64307, 64308, 64309, 64323, 64324, 64325, 64326, 64339, 64340, 64341, 
		64342, 64356, 64357, 64358, 64359, 64373, 64374, 64375, 64376, 71728, 71729, 71743, 71744, 71745, 71746, 71760, 71761, 71762, 71763, 71776, 71777, 71778, 71779, 71780, 
		71793, 71794, 71795, 71796, 71810, 71811, 71812, 71813, 71827, 71828, 71829, 71830, 71843, 71844, 71845, 71846, 71860, 71861, 71862, 71863, 71877, 71878, 71879, 71880, 
		71893, 71894, 71895, 71896, 71897, 74651, 74652, 74653, 74654, 74668, 74669, 74670, 74671, 74684, 74685, 74686, 74687, 74688, 74701, 74702, 74703, 74704, 74718, 74719, 
		74720, 74721, 74734, 74735, 74736, 74737, 74738, 74751, 74752, 74753, 74754, 74768, 74769, 74770, 74771, 74785, 74786, 74787, 74788, 74801, 74802, 74803, 74804, 74805, 
		77860, 77861, 77862, 77863, 77876, 77877, 77878, 77879, 77880, 77893, 77894, 77895, 77896, 77910, 77911, 77912, 77913, 77927, 77928, 77929, 77930, 77943, 77944, 77945, 
		77946, 77960, 77961, 77962, 77963, 77977, 77978, 77979, 77980, 77993, 77994, 77995, 77996, 77997, 78010, 78011, 78012, 78013, 80300, 80301, 80302, 80303, 80316, 80317, 
		80318, 80319, 80320, 80333, 80334, 80335, 80336, 80350, 80351, 80352, 80353, 80367, 80368, 80369, 80370, 80383, 80384, 80385, 80386, 80400, 80401, 80402, 80403, 80417, 
		80418, 80419, 80420, 83341, 83342, 83343, 83344, 83345, 83358, 83359, 83360, 83361, 83375, 83376, 83377, 83378, 83392, 83393, 83394, 83395, 93854, 93855, 93856, 93857, 
		93870, 93871, 93872, 93873, 93887, 93888, 93889, 93890, 93904, 93905, 93906, 93907, 93920, 93921, 93922, 93923, 93924, 93937, 93938, 93939, 93940, 93954, 93955, 93956, 
		93957, 93971, 93972, 93973, 93974, 93987, 93988, 93989, 93990, 94004, 93945, 93946, 93947, 93948, 93949, 93962, 93963, 93964, 93965, 93979, 93980, 93981, 93982, 93996, 
		93997, 93998, 93999, 97087, 97088, 97089, 97090, 97091, 97104, 97105, 97106, 97107, 97121, 97122, 97123, 97124, 97138, 97139, 97140, 97141, 97154, 97155, 97156, 97157, 
		97171, 97172, 97173, 97174, 97188, 97189, 97190, 97191, 83236, 83249, 83250, 83251, 83252, 83253, 83266, 83267, 83268, 83269, 83283, 83284, 83285, 83286, 83300, 83301, 
		83302, 83303, 83316, 83317, 83318, 83319, 83320, 86341, 86342, 86343, 86344, 86358, 86359, 86360, 86361, 86375, 86376, 86377, 86378, 86391, 86392, 86393, 86394, 86395, 
		86408, 86409, 86410, 86411, 86425, 86426, 86427, 86428, 86442, 86443, 86444, 86445, 86458, 86459, 86460, 86461, 86475, 86476, 86477, 86478, 86492, 86493, 86494, 86495, 
		89533, 89534, 89535, 89536, 89537, 89550, 89551, 89552, 89553, 89567, 89568, 89569, 89570, 89584, 89585, 89586, 89587, 89600, 89601, 89602, 89603, 89617, 89618, 89619, 
		89620, 89634, 89635, 89636, 89637, 89650, 89651, 89652, 89653, 89654, 89667, 89668, 89669, 89670, 89684, 89685, 89686, 89687, 93845, 97037, 97038, 97039, 97040, 97054, 
		97055, 97056, 97057, 97071, 97072, 97073, 97074, 122540, 122541, 122542, 122543, 122544, 122557, 122558, 122559, 122560, 122574, 122575, 122576, 122577, 122591, 122592, 
		122593, 122594, 122607, 122608, 122609, 122610, 122611, 122624, 122625, 122626, 122627, 122641, 122642, 122643, 122644, 122657, 122658, 122659, 122660, 122661, 122674, 
		122675, 122676, 122677, 122691, 122692, 122693, 122694, 128875, 128876, 128877, 128878, 128891, 128892, 128893, 128894, 128908, 128909, 128910, 128911, 128925, 128926, 
		128927, 128928, 128941, 128942, 128943, 128944, 128945, 128958, 128959, 128960, 128961, 128975, 128976, 128977, 128978, 128991, 128992, 128993, 128994, 128995, 129008, 
		129009, 129010, 129011, 129025, 129026, 129027, 129028, 111644, 111645, 111646, 111647, 111661, 111662, 111663, 111664, 111677, 111678, 111679, 111680, 111681, 125766, 
		125767, 125768, 125769, 125783, 125784, 125785, 125786, 125799, 125800, 125801, 125802, 125803, 125816, 125817, 125818, 125819, 125833, 125834, 125835, 125836, 125850, 
		125851, 125852, 125853, 125866, 125867, 125868, 125869, 125883, 125884, 125885, 125886, 125900, 125901, 125902, 125903, 125916, 125917, 125918, 125919, 125920, 125933, 
		125934, 101483, 101484, 101485, 101486, 101499, 101500, 101501, 101502, 101503, 101516, 101517, 101518, 101519, 101533, 101534, 101535, 101536, 101550, 101551, 101552, 
		101553, 101566, 101567, 101568, 101569, 101570, 101583, 101584, 101585, 101586, 101600, 101601, 101602, 101603, 101616, 101617, 101618, 101619, 101620, 101633, 101634, 
		101635, 101636, 104491, 104492, 104493, 104494, 104508, 104509, 104510, 104511, 104524, 104525, 104526, 104527, 104528, 104541, 104542, 104543, 104544, 104558, 104559, 
		104560, 104561, 104575, 104576, 104577, 104578, 104591, 104592, 104593, 104594, 104608, 104609, 104610, 104611, 104625, 104626, 104627, 104628, 104641, 104642, 104643, 
		104644, 104645, 107801, 107802, 107803, 107817, 107818, 107819, 107820, 107834, 107835, 107836, 107837, 107850, 107851, 107852, 107853, 107867, 107868, 107869, 107870, 
		107884, 107885, 107886, 107887, 107900, 107901, 107902, 107903, 107904, 107917, 107918, 107919, 107920, 107934, 107935, 107936, 107937, 107951, 107952, 107953, 107954, 
		107967, 107968, 107969, 107970, 111527, 111528, 111529, 111530, 111544, 111545, 111546, 111547, 111560, 111561, 111562, 111563, 111564, 111577, 111578, 111579, 111580, 
		111594, 111595, 111596, 111597, 111611, 111612, 111613, 111614, 111627, 111628, 111629, 111630, 114686, 114687, 114688, 114689, 114702, 114703, 114704, 114705, 114706, 
		114719, 114720, 114721, 114722, 114736, 114737, 114738, 114739, 114752, 114753, 114754, 114755, 114756, 114769, 114770, 114771, 114772, 114786, 114787, 114788, 114789, 
		114803, 114804, 114805, 114806, 114819, 114820, 114821, 114822, 114823, 114836, 114837, 114838, 114839, 117777, 117778, 117779, 93978, 93983, 93985, 93992, 93994, 
		94001, 94003, 94008, 94010, 97084, 97086, 97093, 97095, 97100, 97102, 97109, 97111, 97118, 97120, 97125, 97127, 97134, 97136, 97143, 97145, 97150, 97152, 97159, 97161, 
		97168, 97170, 97175, 97177, 97184, 97186, 97193, 97195, 83237, 83239, 83246, 83248, 83255, 83257, 83262, 83264, 83271, 83273, 83280, 83282, 83287, 83289, 83296, 83298, 
		83305, 83307, 83312, 83314, 83321, 83323, 86338, 86340, 86345, 86347, 86349, 86354, 86356, 86363, 86365, 86372, 86374, 86379, 86381, 86388, 86390, 86397, 86399, 86404, 
		86406, 86413, 86415, 86422, 86424, 86429, 86431, 86438, 86440, 86447, 86449, 86454, 86456, 86463, 86465, 86472, 86474, 86479, 86481, 86488, 86490, 86497, 86499, 86504, 
		89530, 89532, 89539, 89541, 89546, 89548, 89555, 89557, 89564, 89566, 89571, 89573, 89580, 89582, 89589, 89591, 89596, 89598, 89605, 89607, 89614, 89616, 89621, 89623, 
		89630, 89632, 89639, 89641, 89646, 89648, 89655, 89657, 89664, 89666, 89671, 89673, 89680, 89682, 89689, 89691, 89696, 93842, 93844, 97034, 97036, 97041, 97043, 97045, 
		97050, 97052, 97059, 97061, 97068, 97070, 97075, 97077, 122529, 122531, 122536, 122538, 122545, 122547, 122554, 122556, 122561, 122563, 122565, 122570, 122572, 122579, 
		122581, 122586, 122588, 122590, 122595, 122597, 122604, 122606, 122613, 122615, 122620, 122622, 122629, 122631, 122638, 122640, 122645, 122647, 122654, 122656, 122663, 
		122665, 122670, 122672, 122679, 122681, 122688, 122690, 122695, 122697, 128870, 128872, 128874, 128879, 128881, 128888, 128890, 128895, 128897, 128899, 128904, 128906, 
		128913, 128915, 128920, 128922, 128924, 128929, 128931, 128938, 128940, 128947, 128949, 128954, 128956, 128963, 128965, 128972, 128974, 128979, 128981, 128988, 111649, 
		111651, 111656, 111658, 111660, 111665, 111667, 111674, 111676, 111683, 125764, 125771, 125773, 125780, 125782, 125787, 125789, 125796, 125798, 125805, 125807, 125812, 
		125814, 125821, 125823, 125830, 125832, 125837, 125839, 125846, 125848, 125855, 125857, 125862, 125864, 125871, 125873, 125880, 125882, 125887, 125889, 125896, 125898, 
		125905, 125907, 125912, 125914, 125921, 125923, 125930, 125932, 101473, 101480, 101482, 101487, 101489, 101496, 101498, 101505, 101507, 101512, 101514, 101521, 101523, 
		101530, 101532, 101537, 101539, 101546, 101548, 101555, 101557, 101562, 101564, 101571, 101573, 101580, 101582, 101587, 101589, 101596, 101598, 101605, 101607, 101612, 
		101614, 101621, 101623, 101630, 101632, 101637, 101639, 101641, 104488, 104490, 104495, 104497, 104504, 104506, 104513, 104515, 104520, 104522, 104529, 104531, 104538, 
		104540, 104545, 104547, 104549, 104554, 104556, 104563, 104565, 104570, 104572, 104574, 104579, 104581, 104588, 104590, 104595, 104597, 104599, 104604, 104606, 104613, 
		104615, 104622, 104624, 104629, 104631, 104638, 104640, 104647, 104649, 107805, 107807, 107814, 107816, 107821, 107823, 107830, 107832, 107839, 107841, 107846, 107848, 
		107855, 107857, 107864, 107866, 107871, 107873, 107880, 107882, 107889, 107891, 107896, 107898, 107905, 107907, 107914, 107916, 107921, 107923, 107930, 107932, 107939, 
		107941, 107946, 107948, 107950, 107955, 107957, 107964, 107966, 107971, 111515, 111517, 111524, 111526, 111531, 111533, 111540, 111542, 111549, 111551, 111556, 111558, 
		111565, 111567, 111574, 111576, 111581, 111583, 111590, 111592, 111599, 111601, 111606, 111608, 111610, 111615, 111617, 111624, 111626, 111631, 111633, 111635, 111640, 
		111642, 114682, 114684, 114691, 114693, 114698, 114700, 114707, 114709, 114716, 114718, 114723, 114725, 114732, 114734, 114741, 114743, 114748, 114750, 114757, 114759, 
		114766, 114768, 114773, 114775, 114777, 114782, 114784, 114791, 114793, 114798, 114800, 114802, 114807, 114809, 114816, 114818, 114825, 114827, 114832, 114834, 114841, 
		114843, 114850, 114852, 117767, 117774, 117776, 117783, 117785, 117790, 117792, 117799, 117801, 117808, 117810, 117815, 117817, 117824, 117826, 117833, 117835, 117840, 
		117842, 117849, 117851, 117858, 94005, 94006, 94007, 97082, 97096, 97097, 97098, 97099, 97112, 97113, 97114, 97115, 97116, 97129, 97130, 97131, 97132, 97146, 97147, 
		97148, 97149, 97163, 97164, 97165, 97166, 97179, 97180, 97181, 97182, 97196, 97197, 97198, 83241, 83242, 83243, 83244, 83258, 83259, 83260, 83261, 83275, 83276, 83277, 
		83278, 83291, 83292, 83293, 83294, 83308, 83309, 83310, 83311, 83325, 83326, 83327, 83328, 86335, 86336, 86350, 86351, 86352, 86353, 86366, 86367, 86368, 86369, 86370, 
		86383, 86384, 86385, 86386, 86400, 86401, 86402, 86403, 86416, 86417, 86418, 86419, 86420, 86433, 86434, 86435, 86436, 86450, 86451, 86452, 86453, 86467, 86468, 86469, 
		86470, 86483, 86484, 86485, 86486, 86487, 86500, 86501, 86502, 86503, 89527, 89528, 89542, 89543, 89544, 89545, 89558, 89559, 89560, 89561, 89562, 89575, 89576, 89577, 
		89578, 89592, 89593, 89594, 89595, 89609, 89610, 89611, 89612, 89625, 89626, 89627, 89628, 89642, 89643, 89644, 89645, 89659, 89660, 89661, 89662, 89675, 89676, 89677, 
		89678, 89679, 89692, 89693, 89694, 89695, 97029, 97030, 97031, 97032, 97046, 97047, 97048, 97049, 97062, 97063, 97064, 97065, 97066, 97079, 97080, 97081, 122532, 
		122533, 122534, 122535, 122549, 122550, 122551, 122552, 122566, 122567, 122568, 122569, 122582, 122583, 122584, 122585, 122599, 122600, 122601, 122602, 122616, 122617, 
		122618, 122619, 122632, 122633, 122634, 122635, 122636, 122649, 122650, 122651, 122652, 122666, 122667, 122668, 122669, 122683, 122684, 122685, 122686, 128883, 128884, 
		128885, 128886, 128900, 128901, 128902, 128903, 128916, 128917, 128918, 128919, 128933, 128934, 128935, 128936, 128950, 128951, 128952, 128953, 128966, 128967, 128968, 
		128969, 128970, 128983, 128984, 128985, 128986, 129000, 129001, 129002, 129003, 129017, 129018, 129019, 129020, 129033, 129034, 129035, 129036, 111652, 111653, 111654, 
		111655, 111669, 111670, 111671, 111672, 125774, 125775, 125776, 125777, 125778, 125791, 125792, 125793, 125794, 125808, 125809, 125810, 125811, 125824, 125825, 125826, 
		125827, 125828, 125841, 125842, 125843, 125844, 125858, 125859, 125860, 125861, 125875, 125876, 125877, 125878, 125891, 125892, 125893, 125894, 125895, 125908, 125909, 
		125910, 125911, 125925, 125926, 125927, 125928, 101474, 101475, 101476, 101477, 101478, 101491, 101492, 101493, 101494, 101508, 101509, 101510, 101511, 101525, 101526, 
		101527, 101528, 101541, 101542, 101543, 101544, 101558, 101559, 101560, 101561, 101575, 101576, 101577, 101578, 101591, 101592, 101593, 101594, 101595, 101608, 101609, 
		101610, 101611, 101625, 101626, 101627, 101628, 101642, 104483, 104484, 104485, 104486, 104499, 104500, 104501, 104502, 104503, 104516, 104517, 104518, 104519, 104533, 
		104534, 104535, 104536, 104550, 104551, 104552, 104553, 104566, 104567, 104568, 104569, 104583, 104584, 104585, 104586, 104600, 104601, 104602, 104603, 104616, 104617, 
		104618, 104619, 104620, 104633, 104634, 104635, 104636, 104650, 104651, 104652, 104653, 107808, 107809, 107810, 107811, 107812, 107825, 107826, 107827, 107828, 107842, 
		107843, 107844, 107845, 107859, 107860, 107861, 107862, 107875, 107876, 107877, 107878, 107892, 107893, 107894, 107895, 107909, 107910, 107911, 107912, 107925, 107926, 
		107927, 107928, 107929, 107942, 107943, 107944, 107945, 107959, 107960, 107961, 107962, 111519, 111520, 111521, 111522, 111535, 111536, 111537, 111538, 111539, 111552, 
		111553, 111554, 111555, 111569, 111570, 111571, 111572, 111585, 111586, 111587, 111588, 111589, 111602, 111603, 111604, 111605, 111619, 111620, 111621, 111622, 111636, 
		111637, 111638, 111639, 114694, 114695, 114696, 114697, 114711, 114712, 114713, 114714, 114727, 114728, 114729, 114730, 114731, 114744, 114745, 114746, 114747, 114761, 
		114762, 114763, 114764, 114778, 114779, 114780, 114781, 114794, 114795, 114796, 114797, 114811, 114812, 114813, 114814, 114828, 114829, 114830, 114831, 114844, 114845, 
		114846, 114847, 114848, 117769, 117770, 117771, 117772, 117786, 117787, 117788, 117789, 117803, 117804, 93911, 93916, 93918, 93925, 93927, 93934, 93936, 93941, 93943, 
		93950, 93952, 93959, 93961, 93966, 93968, 93970, 93975, 93977, 93984, 93986, 93991, 93993, 93995, 94000, 94002, 94009, 94011, 97083, 97085, 97092, 97094, 97101, 97103, 
		97108, 97110, 97117, 97119, 97126, 97128, 97133, 97135, 97137, 97142, 97144, 97151, 97153, 97158, 97160, 97162, 97167, 97169, 97176, 97178, 97183, 97185, 97187, 97192, 
		97194, 83238, 83240, 83245, 83247, 83254, 83256, 83263, 83265, 83270, 83272, 83274, 83279, 83281, 83288, 83290, 83295, 83297, 83299, 83304, 83306, 83313, 83315, 83322, 
		83324, 86337, 86339, 86346, 86348, 86355, 86357, 86362, 86364, 86371, 86373, 86380, 86382, 86387, 86389, 86396, 86398, 86405, 86407, 86412, 86414, 86421, 86423, 86430, 
		86432, 86437, 86439, 86441, 86446, 86448, 86455, 86457, 86462, 86464, 86466, 86471, 86473, 86480, 86482, 86489, 86491, 86496, 86498, 86505, 89529, 89531, 89538, 89540, 
		89547, 89549, 89554, 89556, 89563, 89565, 89572, 89574, 89579, 89581, 89583, 89588, 89590, 89597, 89599, 89604, 89606, 89608, 89613, 89615, 89622, 89624, 89629, 89631, 
		89633, 89638, 89640, 89647, 89649, 89656, 89658, 89663, 89665, 89672, 89674, 89681, 89683, 89688, 89690, 89697, 93841, 93843, 97028, 97033, 97035, 97042, 97044, 97051, 
		97053, 97058, 97060, 97067, 97069, 97076, 97078, 122528, 122530, 122537, 122539, 122546, 122548, 122553, 122555, 122562, 122564, 122571, 122573, 122578, 122580, 122587, 
		122589, 122596, 122598, 122603, 122605, 122612, 122614, 122621, 122623, 122628, 122630, 122637, 122639, 122646, 122648, 122653, 122655, 122662, 122664, 122671, 122673, 
		122678, 122680, 122682, 122687, 122689, 122696, 122698, 128871, 128873, 128880, 128882, 128887, 128889, 128896, 128898, 128905, 128907, 128912, 128914, 128921, 128923, 
		128930, 128932, 128937, 128939, 128946, 128948, 128955, 128957, 128962, 128964, 128971, 128973, 128980, 128982, 128987, 128989, 128996, 128998, 129005, 129007, 129012, 
		129014, 129016, 129021, 129023, 129030, 129032, 129037, 129039, 111648, 111650, 111657, 111659, 111666, 111668, 111673, 111675, 111682, 111684, 125765, 125770, 125772, 
		125779, 125781, 125788, 125790, 125795, 125797, 125804, 125806, 125813, 125815, 125820, 125822, 125829, 125831, 125838, 125840, 125845, 125847, 125849, 125854, 125856, 
		125863, 125865, 125870, 125872, 125874, 125879, 125881, 125888, 125890, 125897, 125899, 125904, 125906, 125913, 125915, 125922, 125924, 125929, 125931, 101472, 101479, 
		101481, 101488, 101490, 101495, 101497, 101504, 101506, 101513, 101515, 101520, 101522, 101524, 101529, 101531, 101538, 101540, 101545, 101547, 101549, 101554, 101556, 
		101563, 101565, 101572, 101574, 101579, 101581, 101588, 101590, 101597, 101599, 101604, 101606, 101613, 101615, 101622, 101624, 101629, 101631, 101638, 101640, 104487, 
		104489, 104496, 104498, 104505, 104507, 104512, 104514, 104521, 104523, 104530, 104532, 104537, 104539, 104546, 104548, 104555, 104557, 104562, 104564, 104571, 104573, 
		104580, 104582, 104587, 104589, 104596, 104598, 104605, 104607, 104612, 104614, 104621, 104623, 104630, 104632, 104637, 104639, 104646, 104648, 107804, 107806, 107813, 
		107815, 107822, 107824, 107829, 107831, 107833, 107838, 107840, 107847, 107849, 107854, 107856, 107858, 107863, 107865, 107872, 107874, 107879, 107881, 107883, 107888, 
		107890, 107897, 107899, 107906, 107908, 107913, 107915, 107922, 107924, 107931, 107933, 107938, 107940, 107947, 107949, 107956, 107958, 107963, 107965, 111514, 111516, 
		111518, 111523, 111525, 111532, 111534, 111541, 111543, 111548, 111550, 111557, 111559, 111566, 111568, 111573, 111575, 111582, 111584, 111591, 111593, 111598, 111600, 
		111607, 111609, 111616, 111618, 111623, 111625, 111632, 111634, 111641, 111643, 114683, 114685, 114690, 114692, 114699, 114701, 114708, 114710, 114715, 114717, 114724, 
		114726, 114733, 114735, 114740, 114742, 114749, 114751, 114758, 114760, 114765, 114767, 114774, 114776, 114783, 114785, 114790, 114792, 114799, 114801, 114808, 114810, 
		114815, 114817, 114824, 114826, 114833, 114835, 114840, 114842, 114849, 114851, 117766, 117768, 117773, 117775, 117782, 117784, 117791, 117793, 117798, 117800, 117802, 
		117807, 117809, 117816, 117818, 117823, 117825, 117827, 117832, 117834, 117841, 117843, 117848, 117850, 117852, 117857, 117859, 117866, 117868, 117875, 117877, 117882, 
		117884, 117891, 117893, 117900, 117902, 117907, 117909, 117916, 117918, 117925, 117927, 117932, 117934, 132156, 132158, 132163, 132165, 132172, 132174, 132179, 132181, 
		132183, 132188, 132190, 132197, 132199, 132204, 132206, 132208, 132213, 132215, 132222, 132224, 132231, 132233, 132238, 132240, 132247, 132249, 132256, 132258, 132263, 
		132265, 132272, 132274, 132281, 132283, 132288, 132290, 132297, 132299, 132306, 132308, 132313, 132315, 132322, 132324, 135232, 135239, 135241, 135246, 135248, 135255, 
		135257, 135264, 135266, 135271, 135273, 135280, 135282, 135289, 135291, 135296, 135298, 135305, 135307, 135314, 135316, 135321, 135323, 135325, 135330, 135332, 135339, 
		135341, 135346, 135348, 135350, 135355, 135357, 135364, 135366, 135371, 135373, 135375, 135380, 135382, 135389, 135391, 135398, 135400, 138522, 138524, 138531, 138533, 
		138538, 138540, 138542, 138547, 138549, 138556, 138558, 138565, 138567, 138572, 138574, 138581, 138583, 138590, 138592, 138597, 138599, 138606, 138608, 138615, 138617, 
		138622, 138624, 138631, 138633, 138640, 138642, 138647, 138649, 138656, 138658, 138665, 138667, 138672, 138674, 138681, 138683, 141848, 141850, 141857, 141859, 141864, 
		141866, 141873, 141875, 141882, 141884, 141889, 141891, 141893, 141898, 141900, 141907, 141909, 141914, 141916, 141918, 141923, 141925, 141932, 141934, 141939, 141941, 
		141943, 141948, 141950, 141957, 141959, 141966, 141968, 141973, 141975, 141982, 141984, 141991, 141993, 141998, 142000, 142007, 142009, 144815, 144817, 144822, 144824, 
		144826, 144831, 144833, 144840, 144842, 144847, 144849, 144851, 144856, 144858, 144865, 144867, 144874, 144876, 144881, 144883, 144890, 144892, 144899, 144901, 144906, 
		144908, 155309, 155311, 155313, 155318, 155320, 155327, 155329, 158219, 158221, 158226, 158228, 158235, 158237, 158242, 158244, 158246, 158251, 158253, 158260, 158262, 
		158269, 158271, 158276, 158278, 158285, 158287, 158294, 158296, 158301, 158303, 158310, 158312, 158319, 158321, 158326, 158328, 158335, 158337, 158344, 158346, 158351, 
		158353, 158360, 158362, 158369, 158371, 158376, 158378, 158385, 158387, 144747, 144749, 144756, 144758, 144765, 144767, 144772, 144774, 144781, 144783, 144790, 144792, 
		144797, 144799, 144806, 144808, 149127, 149129, 149134, 149136, 149143, 149145, 149152, 149154, 149159, 149161, 149168, 149170, 149177, 149179, 149184, 149186, 149188, 
		149193, 149195, 149202, 149204, 149209, 149211, 149213, 149218, 149220, 149227, 149229, 149234, 149236, 149238, 149243, 149245, 149252, 149254, 149261, 149263, 149268, 
		149270, 149277, 149279, 149286, 149288, 152376, 152378, 152380, 152385, 152387, 152394, 152396, 152401, 152403, 152405, 152410, 152412, 152419, 152421, 152428, 152430, 
		152435, 152437, 152444, 152446, 152453, 152455, 152460, 152462, 152469, 152471, 152478, 152480, 152485, 152487, 152494, 152496, 152503, 152505, 152510, 152512, 152519, 
		152521, 152528, 152530, 152535, 152537, 155336, 155338, 155343, 155345, 155352, 155354, 155361, 155363, 155368, 155370, 155377, 155379, 155386, 155388, 155393, 155395, 
		155402, 155404, 155411, 155413, 155418, 155420, 155427, 155429, 155436, 155438, 155443, 155445, 155452, 155454, 155461, 155463, 155468, 155470, 161518, 161520, 161527, 
		161529, 161536, 161538, 161543, 161545, 161552, 161554, 161561, 161563, 161568, 161570, 161577, 161579, 161586, 161588, 161593, 161595, 161597, 161602, 161604, 161611, 
		161613, 161618, 161620, 161622, 161627, 161629, 161636, 161638, 161643, 161645, 161647, 161652, 161654, 161661, 161663, 161670, 161672, 161677, 161679, 164585, 164587, 
		164594, 164596, 164603, 164605, 164610, 164612, 164619, 164621, 164628, 164630, 164635, 164637, 164644, 164646, 164653, 164655, 164660, 164662, 164669, 164671, 164678, 
		164680, 164685, 164687, 164694, 117805, 117806, 117819, 117820, 117821, 117822, 117836, 117837, 117838, 117839, 117853, 117854, 117855, 117856, 117869, 117870, 117871, 
		117872, 117873, 117886, 117887, 117888, 117889, 117903, 117904, 117905, 117906, 117919, 117920, 117921, 117922, 117923, 117936, 132159, 132160, 132161, 132162, 132175, 
		132176, 132177, 132178, 132192, 132193, 132194, 132195, 132209, 132210, 132211, 132212, 132225, 132226, 132227, 132228, 132229, 132242, 132243, 132244, 132245, 132259, 
		132260, 132261, 132262, 132275, 132276, 132277, 132278, 132279, 132292, 132293, 132294, 132295, 132309, 132310, 132311, 132312, 135234, 135235, 135236, 135237, 135250, 
		135251, 135252, 135253, 135267, 135268, 135269, 135270, 135284, 135285, 135286, 135287, 135300, 135301, 135302, 135303, 135304, 135317, 135318, 135319, 135320, 135334, 
		135335, 135336, 135337, 135351, 135352, 135353, 135354, 135367, 135368, 135369, 135370, 135384, 135385, 135386, 135387, 135401, 138526, 138527, 138528, 138529, 138543, 
		138544, 138545, 138546, 138559, 138560, 138561, 138562, 138563, 138576, 138577, 138578, 138579, 138593, 138594, 138595, 138596, 138610, 138611, 138612, 138613, 138626, 
		138627, 138628, 138629, 138643, 138644, 138645, 138646, 138660, 138661, 138662, 138663, 138676, 138677, 138678, 138679, 138680, 141852, 141853, 141854, 141855, 141868, 
		141869, 141870, 141871, 141872, 141885, 141886, 141887, 141888, 141902, 141903, 141904, 141905, 141919, 141920, 141921, 141922, 141935, 141936, 141937, 141938, 141952, 
		141953, 141954, 141955, 141969, 141970, 141971, 141972, 141985, 141986, 141987, 141988, 141989, 142002, 142003, 142004, 142005, 144813, 144827, 144828, 144829, 144830, 
		144843, 144844, 144845, 144846, 144860, 144861, 144862, 144863, 144877, 144878, 144879, 144880, 144893, 144894, 144895, 144896, 144897, 144910, 155306, 155307, 155308, 
		155322, 155323, 155324, 155325, 158230, 158231, 158232, 158233, 158247, 158248, 158249, 158250, 158263, 158264, 158265, 158266, 158267, 158280, 158281, 158282, 158283, 
		158297, 158298, 158299, 158300, 158314, 158315, 158316, 158317, 158330, 158331, 158332, 158333, 158347, 158348, 158349, 158350, 158364, 158365, 158366, 158367, 158380, 
		158381, 158382, 158383, 158384, 144744, 144745, 144746, 144760, 144761, 144762, 144763, 144776, 144777, 144778, 144779, 144780, 144793, 144794, 144795, 144796, 144810, 
		144811, 144812, 149122, 149123, 149124, 149125, 149138, 149139, 149140, 149141, 149142, 149155, 149156, 149157, 149158, 149172, 149173, 149174, 149175, 149189, 149190, 
		149191, 149192, 149205, 149206, 149207, 149208, 149222, 149223, 149224, 149225, 149239, 149240, 149241, 149242, 149255, 149256, 149257, 149258, 149259, 149272, 149273, 
		149274, 149275, 149289, 149290, 149291, 152381, 152382, 152383, 152384, 152397, 152398, 152399, 152400, 152414, 152415, 152416, 152417, 152431, 152432, 152433, 152434, 
		152447, 152448, 152449, 152450, 152451, 152464, 152465, 152466, 152467, 152481, 152482, 152483, 152484, 152498, 152499, 152500, 152501, 152514, 152515, 152516, 152517, 
		152531, 152532, 152533, 152534, 155339, 155340, 155341, 155342, 155355, 155356, 155357, 155358, 155359, 155372, 155373, 155374, 155375, 155389, 155390, 155391, 155392, 
		155406, 155407, 155408, 155409, 155422, 155423, 155424, 155425, 155439, 155440, 155441, 155442, 155456, 155457, 155458, 155459, 155472, 155473, 155474, 155475, 155476, 
		161522, 161523, 161524, 161525, 161539, 161540, 161541, 161542, 161556, 161557, 161558, 161559, 161572, 161573, 161574, 161575, 161576, 161589, 161590, 161591, 161592, 
		161606, 161607, 161608, 161609, 161623, 161624, 161625, 161626, 161639, 161640, 161641, 161642, 161656, 161657, 161658, 161659, 161673, 161674, 161675, 161676, 164584, 
		164597, 164598, 164599, 164600, 164601, 164614, 164615, 164616, 164617, 164631, 164632, 164633, 164634, 164648, 164649, 164650, 164651, 164664, 164665, 164666, 164667, 
		164681, 164682, 164683, 164684, 164698, 164699, 164700, 164701, 164714, 164715, 164716, 164717, 164718, 164731, 164732, 164733, 164734, 164748, 164749, 164750, 164751, 
		167689, 167690, 167691, 167692, 167706, 167707, 167708, 167709, 167723, 167724, 167725, 117860, 117865, 117867, 117874, 117876, 117883, 117885, 117890, 117892, 117899, 
		117901, 117908, 117910, 117915, 117917, 117924, 117926, 117933, 117935, 132155, 132157, 132164, 132166, 132171, 132173, 132180, 132182, 132189, 132191, 132196, 132198, 
		132205, 132207, 132214, 132216, 132221, 132223, 132230, 132232, 132239, 132241, 132246, 132248, 132255, 132257, 132264, 132266, 132271, 132273, 132280, 132282, 132289, 
		132291, 132296, 132298, 132300, 132305, 132307, 132314, 132316, 132321, 132323, 132325, 135231, 135233, 135238, 135240, 135247, 135249, 135254, 135256, 135258, 135263, 
		135265, 135272, 135274, 135281, 135283, 135288, 135290, 135297, 135299, 135306, 135308, 135313, 135315, 135322, 135324, 135331, 135333, 135338, 135340, 135347, 135349, 
		135356, 135358, 135363, 135365, 135372, 135374, 135381, 135383, 135388, 135390, 135397, 135399, 138523, 138525, 138530, 138532, 138539, 138541, 138548, 138550, 138555, 
		138557, 138564, 138566, 138573, 138575, 138580, 138582, 138589, 138591, 138598, 138600, 138605, 138607, 138609, 138614, 138616, 138623, 138625, 138630, 138632, 138634, 
		138639, 138641, 138648, 138650, 138655, 138657, 138659, 138664, 138666, 138673, 138675, 138682, 138684, 141842, 141849, 141851, 141856, 141858, 141865, 141867, 141874, 
		141876, 141881, 141883, 141890, 141892, 141899, 141901, 141906, 141908, 141915, 141917, 141924, 141926, 141931, 141933, 141940, 141942, 141949, 141951, 141956, 141958, 
		141965, 141967, 141974, 141976, 141981, 141983, 141990, 141992, 141999, 142001, 142006, 142008, 142010, 144814, 144816, 144823, 144825, 144832, 144834, 144839, 144841, 
		144848, 144850, 144857, 144859, 144864, 144866, 144873, 144875, 144882, 144884, 144889, 144891, 144898, 144900, 144907, 144909, 155310, 155312, 155319, 155321, 155326, 
		155328, 158220, 158227, 158229, 158234, 158236, 158243, 158245, 158252, 158254, 158259, 158261, 158268, 158270, 158277, 158279, 158284, 158286, 158293, 158295, 158302, 
		158304, 158309, 158311, 158313, 158318, 158320, 158327, 158329, 158334, 158336, 158338, 158343, 158345, 158352, 158354, 158359, 158361, 158363, 158368, 158370, 158377, 
		158379, 158386, 158388, 161519, 161521, 161526, 161528, 161530, 161535, 161537, 161544, 161546, 161553, 161555, 144748, 144750, 144757, 144759, 144764, 144766, 144773, 
		144775, 144782, 144784, 144789, 144791, 144798, 144800, 144807, 144809, 128990, 128997, 128999, 129004, 129006, 129013, 129015, 129022, 129024, 129029, 129031, 129038, 
		129040, 149121, 149126, 149128, 149135, 149137, 149144, 149146, 149151, 149153, 149160, 149162, 149169, 149171, 149176, 149178, 149185, 149187, 149194, 149196, 149201, 
		149203, 149210, 149212, 149219, 149221, 149226, 149228, 149235, 149237, 149244, 149246, 149251, 149253, 149260, 149262, 149269, 149271, 149276, 149278, 149285, 149287, 
		152377, 152379, 152386, 152388, 152393, 152395, 152402, 152404, 152411, 152413, 152418, 152420, 152427, 152429, 152436, 152438, 152443, 152445, 152452, 152454, 152461, 
		152463, 152468, 152470, 152472, 152477, 152479, 152486, 152488, 152493, 152495, 152497, 152502, 152504, 152511, 152513, 152518, 152520, 152522, 152527, 152529, 152536, 
		152538, 155335, 155337, 155344, 155346, 155351, 155353, 155360, 155362, 155369, 155371, 155376, 155378, 155385, 155387, 155394, 155396, 155401, 155403, 155405, 155410, 
		155412, 155419, 155421, 155426, 155428, 155430, 155435, 155437, 155444, 155446, 155453, 155455, 155460, 155462, 155469, 155471, 170638, 170643, 170645, 170652, 170654, 
		170661, 170663, 170668, 170670, 170677, 170679, 170686, 170688, 170693, 170695, 185919, 185921, 185928, 185930, 185935, 185937, 185944, 185946, 185953, 185955, 185960, 
		185962, 185969, 185971, 185978, 185980, 185985, 185987, 185994, 185996, 186003, 186005, 186010, 186012, 186019, 186021, 186028, 186030, 186035, 186037, 186039, 186044, 
		186046, 186053, 186055, 186060, 186062, 186064, 186069, 186071, 189186, 189188, 189195, 189197, 189202, 189204, 189206, 189211, 189213, 189220, 189222, 189227, 189229, 
		189231, 189236, 189238, 189245, 189247, 189252, 189254, 189256, 189261, 189263, 189270, 189272, 189279, 189281, 189286, 189288, 189295, 189297, 117780, 117781, 117794, 
		117795, 117796, 117797, 117811, 117812, 117813, 117814, 117828, 117829, 117830, 117831, 117844, 117845, 117846, 117847, 117861, 117862, 117863, 117864, 117878, 117879, 
		117880, 117881, 117894, 117895, 117896, 117897, 117898, 117911, 117912, 117913, 117914, 117928, 117929, 117930, 117931, 132167, 132168, 132169, 132170, 132184, 132185, 
		132186, 132187, 132200, 132201, 132202, 132203, 132217, 132218, 132219, 132220, 132234, 132235, 132236, 132237, 132250, 132251, 132252, 132253, 132254, 132267, 132268, 
		132269, 132270, 132284, 132285, 132286, 132287, 132301, 132302, 132303, 132304, 132317, 132318, 132319, 132320, 135242, 135243, 135244, 135245, 135259, 135260, 135261, 
		135262, 135275, 135276, 135277, 135278, 135279, 135292, 135293, 135294, 135295, 135309, 135310, 135311, 135312, 135326, 135327, 135328, 135329, 135342, 135343, 135344, 
		135345, 135359, 135360, 135361, 135362, 135376, 135377, 135378, 135379, 135392, 135393, 135394, 135395, 135396, 138518, 138519, 138520, 138521, 138534, 138535, 138536, 
		138537, 138551, 138552, 138553, 138554, 138568, 138569, 138570, 138571, 138584, 138585, 138586, 138587, 138588, 138601, 138602, 138603, 138604, 138618, 138619, 138620, 
		138621, 138635, 138636, 138637, 138638, 138651, 138652, 138653, 138654, 138668, 138669, 138670, 138671, 138685, 138686, 138687, 138688, 141843, 141844, 141845, 141846, 
		141847, 141860, 141861, 141862, 141863, 141877, 141878, 141879, 141880, 141894, 141895, 141896, 141897, 141910, 141911, 141912, 141913, 141927, 141928, 141929, 141930, 
		141944, 141945, 141946, 141947, 141960, 141961, 141962, 141963, 141964, 141977, 141978, 141979, 141980, 141994, 141995, 141996, 141997, 142011, 142012, 144818, 144819, 
		144820, 144821, 144835, 144836, 144837, 144838, 144852, 144853, 144854, 144855, 144868, 144869, 144870, 144871, 144872, 144885, 144886, 144887, 144888, 144902, 144903, 
		144904, 144905, 155314, 155315, 155316, 155317, 158222, 158223, 158224, 158225, 158238, 158239, 158240, 158241, 158255, 158256, 158257, 158258, 158272, 158273, 158274, 
		158275, 158288, 158289, 158290, 158291, 158292, 158305, 158306, 158307, 158308, 158322, 158323, 158324, 158325, 158339, 158340, 158341, 158342, 158355, 158356, 158357, 
		158358, 158372, 158373, 158374, 158375, 158389, 144751, 144752, 144753, 144754, 144755, 144768, 144769, 144770, 144771, 144785, 144786, 144787, 144788, 144801, 144802, 
		144803, 144804, 144805, 149130, 149131, 149132, 149133, 149147, 149148, 149149, 149150, 149163, 149164, 149165, 149166, 149167, 149180, 149181, 149182, 149183, 149197, 
		149198, 149199, 149200, 149214, 149215, 149216, 149217, 149230, 149231, 149232, 149233, 149247, 149248, 149249, 149250, 149264, 149265, 149266, 149267, 149280, 149281, 
		149282, 149283, 149284, 152373, 152374, 152375, 152389, 152390, 152391, 152392, 152406, 152407, 152408, 152409, 152422, 152423, 152424, 152425, 152426, 152439, 152440, 
		152441, 152442, 152456, 152457, 152458, 152459, 152473, 152474, 152475, 152476, 152489, 152490, 152491, 152492, 152506, 152507, 152508, 152509, 152523, 152524, 152525, 
		152526, 152539, 152540, 152541, 152542, 152543, 155330, 155331, 155332, 155333, 155334, 155347, 155348, 155349, 155350, 155364, 155365, 155366, 155367, 155380, 155381, 
		155382, 155383, 155384, 155397, 155398, 155399, 155400, 155414, 155415, 155416, 155417, 155431, 155432, 155433, 155434, 155447, 155448, 155449, 155450, 155451, 155464, 
		155465, 155466, 155467, 161514, 161515, 161516, 161517, 161531, 161532, 161533, 161534, 161547, 161548, 161549, 161550, 161551, 161564, 161565, 161566, 161567, 161581, 
		161582, 161583, 161584, 161598, 161599, 161600, 161601, 161614, 161615, 161616, 161617, 161631, 161632, 161633, 161634, 161648, 161649, 161650, 161651, 161664, 161665, 
		161666, 161667, 161668, 161681, 161682, 161683, 161684, 164589, 164590, 164591, 164592, 164606, 164607, 164608, 164609, 164622, 164623, 164624, 164625, 164626, 164639, 
		164640, 164641, 164642, 164656, 164657, 164658, 164659, 164673, 164674, 164675, 164676, 164689, 164690, 164691, 164692, 164693, 164706, 164707, 164708, 164709, 164723, 
		164724, 164725, 164726, 164739, 164740, 164741, 164742, 164743, 167681, 167682, 167683, 167684, 167698, 167699, 167700, 167701, 167714, 167715, 167716, 167717, 167731, 
		167732, 167733, 167734, 167748, 167749, 167750, 167751, 167764, 167765, 167766, 167767, 167768, 167781, 167782, 167783, 167784, 167798, 167799, 167800, 167801, 167815, 
		167816, 167817, 167818, 167831, 167832, 167833, 167834, 167848, 167849, 167850, 167851, 170706, 170707, 170708, 170709, 170723, 170724, 170725, 170726, 170739, 170740, 
		170741, 170742, 170756, 170757, 170758, 170759, 170773, 170774, 170775, 170776, 170789, 170790, 170791, 170792, 170793, 170806, 170807, 170639, 170640, 170641, 170642, 
		170656, 170657, 170658, 170659, 170672, 170673, 170674, 170675, 170676, 170689, 170690, 170691, 170692, 185931, 185932, 185933, 185934, 185948, 185949, 185950, 185951, 
		185964, 185965, 185966, 185967, 185981, 185982, 185983, 185984, 185998, 185999, 186000, 186001, 186014, 186015, 186016, 186017, 186018, 186031, 186032, 186033, 186034, 
		186048, 186049, 186050, 186051, 186065, 186066, 186067, 186068, 189190, 189191, 189192, 189193, 189207, 189208, 189209, 189210, 189223, 189224, 189225, 189226, 189240, 
		189241, 189242, 189243, 189257, 189258, 189259, 189260, 189273, 189274, 189275, 189276, 189277, 189290, 189291, 189292, 189293, 189307, 195340, 195341, 195342, 195343, 
		195357, 195358, 195359, 195360, 195373, 195374, 195375, 195376, 195377, 195390, 195391, 195392, 195393, 195407, 195408, 195409, 195410, 195424, 195425, 195426, 195427, 
		195440, 195441, 195442, 195443, 195457, 195458, 195459, 195460, 195474, 195475, 195476, 195477, 195490, 195491, 195492, 195493, 195494, 173681, 173682, 173683, 173684, 
		173697, 173698, 173699, 173700, 173701, 173714, 173715, 173716, 173717, 173731, 173732, 173733, 173734, 173747, 173748, 173749, 173750, 173751, 173764, 173765, 173766, 
		173767, 173781, 173782, 173783, 173784, 173798, 173799, 173800, 173801, 173814, 173815, 173816, 173817, 173818, 173831, 173832, 173833, 173834, 176607, 176608, 176622, 
		176623, 176624, 176625, 176639, 176640, 176641, 176642, 176655, 176656, 176657, 176658, 176659, 176672, 176673, 176674, 176675, 176689, 176690, 176691, 176692, 176706, 
		176707, 176708, 176709, 176722, 176723, 176724, 176725, 176739, 176740, 176741, 176742, 176756, 176757, 176758, 176759, 176772, 176773, 176774, 176775, 176776, 179800, 
		179801, 179814, 179815, 179816, 179817, 179831, 179832, 179833, 179834, 179848, 179849, 179850, 179851, 179864, 179865, 179866, 179867, 179881, 179882, 179883, 179884, 
		179898, 179899, 179900, 179901, 179914, 179915, 179916, 179917, 179918, 179931, 179932, 179933, 179934, 179948, 179949, 179950, 179951, 179965, 179966, 179967, 179968, 
		182872, 182873, 182874, 182875, 182876, 182889, 182890, 182891, 182892, 182906, 182907, 182908, 182909, 182923, 182924, 182925, 182926, 182939, 182940, 182941, 182942, 
		182943, 182956, 182957, 182958, 182959, 182973, 182974, 182975, 182976, 182989, 182990, 182991, 182992, 182993, 183006, 183007, 183008, 183009, 183023, 183024, 183025, 
		183026, 186081, 186082, 186083, 186084, 189308, 189309, 189310, 189324, 189325, 189326, 189327, 189340, 189341, 189342, 189343, 217852, 217853, 217854, 217855, 217868, 
		217869, 217870, 217871, 217872, 217885, 217886, 217887, 217888, 217902, 217903, 217904, 217905, 217919, 217920, 217921, 217922, 217935, 217936, 217937, 217938, 217952, 
		217953, 217954, 217955, 217969, 217970, 217971, 217972, 217985, 217986, 217987, 217988, 217989, 218002, 218003, 218004, 218005, 220961, 220962, 220963, 220977, 220978, 
		220979, 220980, 220994, 220995, 220996, 220997, 221010, 221011, 221012, 221013, 221014, 221027, 221028, 221029, 221030, 221044, 221045, 221046, 221047, 221060, 221061, 
		221062, 221063, 221064, 221077, 221078, 221079, 221080, 221094, 221095, 221096, 221097, 221111, 221112, 221113, 221114, 221127, 221128, 221129, 221130, 221131, 226525, 
		226526, 226527, 226528, 226529, 226542, 226543, 226544, 226545, 226559, 226560, 226561, 226562, 226576, 226577, 226578, 226579, 226592, 226593, 226594, 226595, 226609, 
		226610, 226611, 226612, 198482, 198483, 198484, 198485, 198499, 198500, 198501, 198502, 167726, 167739, 167740, 167741, 167742, 167743, 167756, 167757, 167758, 167759, 
		167773, 167774, 167775, 167776, 167789, 167790, 167791, 167792, 167793, 167806, 167807, 167808, 167809, 167823, 167824, 167825, 167826, 167840, 167841, 167842, 167843, 
		170701, 170714, 170715, 170716, 170717, 170731, 170732, 170733, 170734, 170748, 170749, 170750, 170751, 170764, 170765, 170766, 170767, 170781, 170782, 170783, 170784, 
		170798, 170799, 170800, 170801, 170647, 170648, 170649, 170650, 170664, 170665, 170666, 170667, 170681, 170682, 170683, 170684, 170697, 170698, 170699, 170700, 185923, 
		185924, 185925, 185926, 185939, 185940, 185941, 185942, 185956, 185957, 185958, 185959, 185973, 185974, 185975, 185976, 185989, 185990, 185991, 185992, 185993, 186006, 
		186007, 186008, 186009, 186023, 186024, 186025, 186026, 186040, 186041, 186042, 186043, 186056, 186057, 186058, 186059, 189185, 189198, 189199, 189200, 189201, 189215, 
		189216, 189217, 189218, 189232, 189233, 189234, 189235, 189248, 189249, 189250, 189251, 189265, 189266, 189267, 189268, 189282, 189283, 189284, 189285, 189298, 189299, 
		189300, 189301, 189302, 195333, 195334, 195335, 195348, 195349, 195350, 195351, 195352, 195365, 195366, 195367, 195368, 195382, 195383, 195384, 195385, 195398, 195399, 
		195400, 195401, 195402, 195415, 195416, 195417, 195418, 195432, 195433, 195434, 195435, 195449, 195450, 195451, 195452, 195465, 195466, 195467, 195468, 195469, 195482, 
		195483, 195484, 195485, 195499, 195500, 195501, 195502, 173672, 173673, 173674, 173675, 173689, 173690, 173691, 173692, 173706, 173707, 173708, 173709, 173722, 173723, 
		173724, 173725, 173726, 173739, 173740, 173741, 173742, 173756, 173757, 173758, 173759, 173773, 173774, 173775, 173776, 173789, 173790, 173791, 173792, 173806, 173807, 
		173808, 173809, 173823, 173824, 173825, 173826, 173839, 173840, 173841, 176614, 176615, 176616, 176617, 176630, 176631, 176632, 176633, 176634, 176647, 176648, 176649, 
		176650, 176664, 176665, 176666, 176667, 176681, 176682, 176683, 176684, 176697, 176698, 176699, 176700, 176714, 176715, 176716, 176717, 176731, 176732, 176733, 176734, 
		176747, 176748, 176749, 176750, 176751, 176764, 176765, 176766, 176767, 179806, 179807, 179808, 179809, 179822, 179823, 179824, 179825, 179826, 179839, 179840, 179841, 
		179842, 179856, 179857, 179858, 179859, 179873, 179874, 179875, 179876, 179889, 179890, 179891, 179892, 179906, 179907, 179908, 179909, 179923, 179924, 179925, 179926, 
		179939, 179940, 179941, 179942, 179943, 179956, 179957, 179958, 179959, 182864, 182865, 182866, 182867, 182881, 182882, 182883, 182884, 182898, 182899, 182900, 182901, 
		182914, 182915, 182916, 182917, 182931, 182932, 182933, 182934, 182948, 182949, 182950, 182951, 182964, 182965, 182966, 182967, 182968, 182981, 182982, 182983, 182984, 
		182998, 182999, 183000, 183001, 183015, 183016, 183017, 183018, 186073, 186074, 186075, 186076, 189315, 189316, 189317, 189318, 189332, 189333, 189334, 189335, 189349, 
		189350, 189351, 189352, 217846, 217847, 217860, 217861, 217862, 217863, 217877, 217878, 217879, 217880, 217893, 217894, 217895, 217896, 217897, 217910, 217911, 217912, 
		217913, 217927, 217928, 217929, 217930, 217944, 217945, 217946, 217947, 217960, 217961, 217962, 217963, 217977, 217978, 217979, 217980, 217994, 217995, 217996, 217997, 
		218010, 218011, 218012, 218013, 218014, 220969, 220970, 220971, 220972, 220985, 220986, 220987, 220988, 221002, 221003, 221004, 221005, 221019, 221020, 221021, 221022, 
		221035, 221036, 221037, 221038, 221039, 221052, 221053, 221054, 221055, 221069, 221070, 221071, 221072, 221086, 221087, 221088, 221089, 221102, 221103, 221104, 221105, 
		221119, 221120, 221121, 221122, 226534, 226535, 226536, 226537, 226551, 226552, 226553, 226554, 226567, 226568, 226569, 226570, 226584, 226585, 226586, 226587, 226601, 
		226602, 226603, 226604, 226617, 226618, 226619, 226620, 198474, 198475, 198476, 198477, 198490, 198491, 198492, 198493, 198507, 198508, 198509, 198510, 198524, 198525, 
		198526, 198527, 198540, 198541, 198542, 198543, 198544, 198557, 198558, 198559, 198560, 198574, 198575, 198576, 198577, 198591, 198592, 198593, 189304, 189306, 195336, 
		195338, 195345, 195347, 195354, 195356, 195361, 195363, 195370, 195372, 195379, 195381, 195386, 195388, 195395, 195397, 195404, 195406, 195411, 195413, 195420, 195422, 
		195429, 195431, 195436, 195438, 195445, 195447, 195454, 195456, 195461, 195463, 195470, 195472, 195479, 195481, 195486, 195488, 195495, 195497, 161560, 161562, 161569, 
		161571, 161578, 161580, 161585, 161587, 161594, 161596, 161603, 161605, 161610, 161612, 161619, 161621, 161628, 161630, 161635, 161637, 161644, 161646, 161653, 161655, 
		161660, 161662, 161669, 161671, 161678, 161680, 164586, 164588, 164593, 164595, 164602, 164604, 164611, 164613, 164618, 164620, 164627, 164629, 164636, 164638, 164643, 
		164645, 164647, 164652, 164654, 164661, 164663, 164668, 164670, 164672, 164677, 164679, 164686, 164688, 164695, 164697, 164702, 164704, 164711, 164713, 164720, 164722, 
		164727, 164729, 164736, 164738, 164745, 164747, 164752, 164754, 167685, 167687, 167694, 167696, 167703, 167705, 167710, 167712, 167719, 167721, 167728, 167730, 167735, 
		167737, 167744, 167746, 167753, 167755, 167760, 167762, 167769, 167771, 167778, 167780, 167785, 167787, 167794, 167796, 167803, 167805, 167810, 167812, 167814, 167819, 
		167821, 167828, 167830, 167835, 167837, 167839, 167844, 167846, 170702, 170704, 170711, 170713, 170718, 170720, 170722, 170727, 170729, 170736, 170738, 170743, 170745, 
		170747, 170752, 170754, 170761, 170763, 170768, 170770, 170772, 170777, 170779, 170786, 170788, 170795, 170797, 170802, 170804, 173671, 173676, 173678, 173680, 173685, 
		173687, 173694, 173696, 173703, 173705, 173710, 173712, 173719, 173721, 173728, 173730, 173735, 173737, 173744, 173746, 173753, 173755, 173760, 173762, 173769, 173771, 
		173778, 173780, 173785, 173787, 173794, 173796, 173803, 173805, 173810, 173812, 173819, 173821, 173828, 173830, 173835, 173837, 176609, 176611, 176613, 176618, 176620, 
		176627, 176629, 176636, 176638, 176643, 176645, 176652, 176654, 176661, 176663, 176668, 176670, 176677, 176679, 176686, 176688, 176693, 176695, 176702, 176704, 176711, 
		176713, 176718, 176720, 176727, 176729, 176736, 176738, 176743, 176745, 176752, 176754, 176761, 176763, 176768, 176770, 176777, 179803, 179805, 179810, 179812, 179819, 
		179821, 179828, 179830, 179835, 179837, 179844, 179846, 179853, 179855, 179860, 179862, 179869, 179871, 179878, 179880, 179885, 179887, 179894, 179896, 179903, 179905, 
		179910, 179912, 179919, 179921, 179928, 179930, 179935, 179937, 179944, 179946, 179953, 179955, 179960, 179962, 179964, 179969, 182861, 182863, 182868, 182870, 182877, 
		182879, 182886, 182888, 182893, 182895, 182897, 182902, 182904, 182911, 182913, 182918, 182920, 182922, 182927, 182929, 182936, 182938, 182945, 182947, 182952, 182954, 
		182961, 182963, 182970, 182972, 182977, 182979, 182986, 182988, 182995, 182997, 183002, 183004, 183011, 183013, 183020, 183022, 183027, 183029, 186078, 186080, 186085, 
		186087, 186089, 189311, 189313, 189320, 189322, 189329, 189331, 189336, 189338, 189345, 189347, 189354, 217848, 217850, 217857, 217859, 217864, 217866, 217873, 217875, 
		217882, 217884, 217889, 217891, 217898, 217900, 217907, 217909, 217914, 217916, 217918, 217923, 217925, 217932, 217934, 217939, 217941, 217943, 217948, 217950, 217957, 
		217959, 217964, 217966, 217968, 217973, 217975, 217982, 217984, 217991, 217993, 217998, 218000, 218007, 218009, 218016, 220965, 220967, 220974, 220976, 220981, 220983, 
		220990, 220992, 220999, 221001, 221006, 221008, 221015, 221017, 221024, 221026, 221031, 221033, 221040, 221042, 221049, 221051, 221056, 221058, 221065, 221067, 221074, 
		221076, 221081, 221083, 221085, 221090, 221092, 221099, 221101, 221106, 221108, 221110, 221115, 221117, 221124, 221126, 226522, 226524, 226531, 226533, 226538, 226540, 
		226547, 226549, 226556, 226558, 226563, 226565, 226572, 226574, 226581, 226583, 226588, 226590, 226597, 226599, 226606, 226608, 226613, 226615, 198469, 198471, 198473, 
		198478, 198480, 198487, 198489, 198494, 198496, 198498, 198503, 198505, 198512, 198514, 198521, 198523, 198528, 198530, 198537, 198539, 198546, 198548, 198553, 198555, 
		198562, 198564, 198571, 198573, 164696, 164703, 164705, 164710, 164712, 164719, 164721, 164728, 164730, 164735, 164737, 164744, 164746, 164753, 167686, 167688, 167693, 
		167695, 167697, 167702, 167704, 167711, 167713, 167718, 167720, 167722, 167727, 167729, 167736, 167738, 167745, 167747, 167752, 167754, 167761, 167763, 167770, 167772, 
		167777, 167779, 167786, 167788, 167795, 167797, 167802, 167804, 167811, 167813, 167820, 167822, 167827, 167829, 167836, 167838, 167845, 167847, 170703, 170705, 170710, 
		170712, 170719, 170721, 170728, 170730, 170735, 170737, 170744, 170746, 170753, 170755, 170760, 170762, 170769, 170771, 170778, 170780, 170785, 170787, 170794, 170796, 
		170803, 170805, 170637, 170644, 170646, 170651, 170653, 170655, 170660, 170662, 170669, 170671, 170678, 170680, 170685, 170687, 170694, 170696, 185920, 185922, 185927, 
		185929, 185936, 185938, 185943, 185945, 185947, 185952, 185954, 185961, 185963, 185968, 185970, 185972, 185977, 185979, 185986, 185988, 185995, 185997, 186002, 186004, 
		186011, 186013, 186020, 186022, 186027, 186029, 186036, 186038, 186045, 186047, 186052, 186054, 186061, 186063, 186070, 189187, 189189, 189194, 189196, 189203, 189205, 
		189212, 189214, 189219, 189221, 189228, 189230, 189237, 189239, 189244, 189246, 189253, 189255, 189262, 189264, 189269, 189271, 189278, 189280, 189287, 189289, 189294, 
		189296, 189303, 189305, 195337, 195339, 195344, 195346, 195353, 195355, 195362, 195364, 195369, 195371, 195378, 195380, 195387, 195389, 195394, 195396, 195403, 195405, 
		195412, 195414, 195419, 195421, 195423, 195428, 195430, 195437, 195439, 195444, 195446, 195448, 195453, 195455, 195462, 195464, 195471, 195473, 195478, 195480, 195487, 
		195489, 195496, 195498, 195503, 173677, 173679, 173686, 173688, 173693, 173695, 173702, 173704, 173711, 173713, 173718, 173720, 173727, 173729, 173736, 173738, 173743, 
		173745, 173752, 173754, 173761, 173763, 173768, 173770, 173772, 173777, 173779, 173786, 173788, 173793, 173795, 173797, 173802, 173804, 173811, 173813, 173820, 173822, 
		173827, 173829, 173836, 173838, 176610, 176612, 176619, 176621, 176626, 176628, 176635, 176637, 176644, 176646, 176651, 176653, 176660, 176662, 176669, 176671, 176676, 
		176678, 176680, 176685, 176687, 176694, 176696, 176701, 176703, 176705, 176710, 176712, 176719, 176721, 176726, 176728, 176730, 176735, 176737, 176744, 176746, 176753, 
		176755, 176760, 176762, 176769, 176771, 179802, 179804, 179811, 179813, 179818, 179820, 179827, 179829, 179836, 179838, 179843, 179845, 179847, 179852, 179854, 179861, 
		179863, 179868, 179870, 179872, 179877, 179879, 179886, 179888, 179893, 179895, 179897, 179902, 179904, 179911, 179913, 179920, 179922, 179927, 179929, 179936, 179938, 
		179945, 179947, 179952, 179954, 179961, 179963, 179970, 182860, 182862, 182869, 182871, 182878, 182880, 182885, 182887, 182894, 182896, 182903, 182905, 182910, 182912, 
		182919, 182921, 182928, 182930, 182935, 182937, 182944, 182946, 182953, 182955, 182960, 182962, 182969, 182971, 182978, 182980, 182985, 182987, 182994, 182996, 183003, 
		183005, 183010, 183012, 183014, 183019, 183021, 183028, 183030, 186072, 186077, 186079, 186086, 186088, 189312, 189314, 189319, 189321, 189323, 189328, 189330, 189337, 
		189339, 189344, 189346, 189348, 189353, 189355, 217849, 217851, 217856, 217858, 217865, 217867, 217874, 217876, 217881, 217883, 217890, 217892, 217899, 217901, 217906, 
		217908, 217915, 217917, 217924, 217926, 217931, 217933, 217940, 217942, 217949, 217951, 217956, 217958, 217965, 217967, 217974, 217976, 217981, 217983, 217990, 217992, 
		217999, 218001, 218006, 218008, 218015, 220964, 220966, 220968, 220973, 220975, 220982, 220984, 220989, 220991, 220993, 220998, 221000, 221007, 221009, 221016, 221018, 
		221023, 221025, 221032, 221034, 221041, 221043, 221048, 221050, 221057, 221059, 221066, 221068, 221073, 221075, 221082, 221084, 221091, 221093, 221098, 221100, 221107, 
		221109, 221116, 221118, 221123, 221125, 226523, 226530, 226532, 226539, 226541, 226546, 226548, 226550, 226555, 226557, 226564, 226566, 226571, 226573, 226575, 226580, 
		226582, 226589, 226591, 226596, 226598, 226600, 226605, 226607, 226614, 226616, 198470, 198578, 198580, 198587, 198589, 198596, 198598, 198603, 198605, 198612, 198614, 
		198621, 198623, 198628, 198630, 198637, 198639, 206861, 206868, 206870, 206877, 206879, 206884, 206886, 206893, 206895, 206902, 206904, 206909, 206911, 206918, 206920, 
		206927, 206929, 206934, 206936, 206943, 206945, 206952, 206954, 206959, 206961, 206963, 206968, 206970, 206977, 206979, 206984, 206986, 206988, 206993, 206995, 207002, 
		207004, 207009, 207011, 207013, 207018, 207020, 207027, 207029, 209760, 209762, 209767, 209769, 209776, 209778, 209785, 209787, 209792, 209794, 209801, 209803, 209810, 
		209812, 209817, 209819, 209826, 209828, 209835, 209837, 209842, 209844, 209851, 209853, 209860, 209862, 209867, 209869, 209876, 209878, 209885, 209887, 209892, 209894, 
		209896, 209901, 209903, 209910, 209912, 209917, 209919, 209921, 209926, 212977, 212979, 212984, 212986, 212993, 212995, 213002, 213004, 213009, 213011, 213018, 213020, 
		213027, 213029, 213034, 213036, 213043, 213045, 213052, 213054, 213059, 213061, 213063, 213068, 213070, 213077, 213079, 213084, 213086, 213088, 213093, 213095, 213102, 
		213104, 213111, 213113, 213118, 213120, 213127, 213129, 213136, 213138, 202533, 202540, 202542, 202547, 202549, 202556, 202558, 202565, 202567, 202572, 202574, 202581, 
		202583, 202590, 202592, 202597, 202599, 202601, 202606, 202608, 202615, 202617, 202622, 202624, 202626, 202631, 202633, 202640, 202642, 202649, 202651, 202656, 202658, 
		202665, 202667, 202674, 202676, 202681, 202683, 202690, 202692, 202699, 202701, 226454, 226456, 226458, 226463, 226465, 226472, 226474, 226479, 226481, 226483, 226488, 
		226490, 226497, 226499, 226506, 226508, 226513, 226515, 229298, 229305, 229307, 229312, 229314, 229321, 229323, 229330, 229332, 229337, 229339, 229341, 229346, 229348, 
		229355, 229357, 229362, 229364, 229366, 229371, 229373, 229380, 229382, 229387, 229389, 229391, 229396, 229398, 229405, 229407, 229414, 229416, 229421, 229423, 229430, 
		229432, 229439, 229441, 229446, 229448, 229455, 229457, 229464, 229466, 256204, 256206, 256211, 256213, 256220, 256222, 256229, 256231, 256236, 256238, 256245, 256247, 
		256254, 256256, 256261, 256263, 256270, 256272, 256279, 256281, 256286, 256288, 256295, 256297, 256304, 256306, 256311, 256313, 256320, 256322, 256329, 256331, 256336, 
		256338, 256345, 256347, 256354, 256356, 256361, 256363, 256365, 256370, 256372, 259521, 259523, 259528, 259530, 259532, 259537, 259539, 259546, 259548, 259553, 259555, 
		259557, 259562, 259564, 259571, 259573, 259580, 259582, 259587, 259589, 259596, 259598, 259605, 259607, 259612, 259614, 259621, 259623, 259630, 259632, 259637, 259639, 
		232563, 232565, 232572, 232574, 232581, 232583, 232588, 232590, 232597, 232599, 232606, 232608, 232613, 232615, 232622, 232624, 232631, 232633, 232638, 232640, 232647, 
		232649, 232656, 232658, 232663, 232665, 232672, 232674, 232681, 232683, 232688, 232690, 232697, 232699, 232706, 232708, 232713, 232715, 232722, 232724, 235898, 235900, 
		235905, 235907, 235909, 235914, 235916, 235923, 235925, 235930, 235932, 235934, 235939, 235941, 235948, 235950, 235955, 235957, 235959, 235964, 235966, 235973, 235975, 
		235982, 235984, 235989, 235991, 235998, 236000, 236007, 236009, 236014, 236016, 236023, 236025, 236032, 236034, 236039, 236041, 236048, 236050, 236057, 236059, 236064, 
		236066, 238981, 238983, 238990, 238992, 238997, 238999, 239006, 239008, 239015, 239017, 239022, 239024, 239031, 239033, 239040, 239042, 239047, 239049, 239056, 239058, 
		239065, 239067, 239072, 239074, 239076, 239081, 239083, 239090, 239092, 239097, 239099, 239101, 239106, 239108, 239115, 239117, 239122, 239124, 239126, 239131, 239133, 
		239140, 239142, 239149, 242257, 242259, 242264, 242266, 242268, 242273, 242275, 242282, 242284, 242289, 242291, 242293, 242298, 242300, 242307, 242309, 242316, 242318, 
		242323, 242325, 242332, 242334, 242341, 242343, 242348, 242350, 242357, 242359, 242366, 242368, 242373, 242375, 242382, 242384, 242391, 242393, 242398, 242400, 242407, 
		242409, 242416, 242418, 242423, 242425, 245524, 245526, 245533, 245535, 245540, 245542, 245549, 245551, 245558, 245560, 245565, 245567, 245574, 198594, 198607, 198608, 
		198609, 198610, 198624, 198625, 198626, 198627, 202535, 202536, 202537, 202538, 202551, 202552, 202553, 202554, 202555, 202568, 202569, 202570, 202571, 202585, 202586, 
		202587, 202588, 202602, 202603, 202604, 202605, 202618, 202619, 202620, 202621, 202635, 202636, 202637, 202638, 202652, 202653, 202654, 202655, 202668, 202669, 202670, 
		202671, 202672, 202685, 202686, 202687, 202688, 202702, 226450, 226451, 226452, 226453, 226467, 226468, 226469, 226470, 226484, 226485, 226486, 226487, 226500, 226501, 
		226502, 226503, 226504, 226517, 226518, 226519, 226520, 229308, 229309, 229310, 229311, 229325, 229326, 229327, 229328, 229342, 229343, 229344, 229345, 229358, 229359, 
		229360, 229361, 229375, 229376, 229377, 229378, 229392, 229393, 229394, 229395, 229408, 229409, 229410, 229411, 229412, 229425, 229426, 229427, 229428, 229442, 229443, 
		229444, 229445, 229458, 229459, 229460, 229461, 229462, 206863, 206864, 206865, 206866, 206880, 206881, 206882, 206883, 206897, 206898, 206899, 206900, 206913, 206914, 
		206915, 206916, 206917, 206930, 206931, 206932, 206933, 206947, 206948, 206949, 206950, 206964, 206965, 206966, 206967, 206980, 206981, 206982, 206983, 206997, 206998, 
		206999, 207000, 207014, 207015, 207016, 207017, 207030, 209757, 209758, 209771, 209772, 209773, 209774, 209788, 209789, 209790, 209791, 209805, 209806, 209807, 209808, 
		209821, 209822, 209823, 209824, 209825, 209838, 209839, 209840, 209841, 209855, 209856, 209857, 209858, 209871, 209872, 209873, 209874, 209875, 209888, 209889, 209890, 
		209891, 209905, 209906, 209907, 209908, 209922, 209923, 209924, 209925, 212980, 212981, 212982, 212983, 212997, 212998, 212999, 213000, 213013, 213014, 213015, 213016, 
		213017, 213030, 213031, 213032, 213033, 213047, 213048, 213049, 213050, 213064, 213065, 213066, 213067, 213080, 213081, 213082, 213083, 213097, 213098, 213099, 213100, 
		213114, 213115, 213116, 213117, 213130, 213131, 213132, 213133, 213134, 253224, 253225, 253226, 253227, 253240, 253241, 253242, 253243, 253244, 253257, 253258, 253259, 
		253260, 253274, 253275, 253276, 253277, 253290, 253291, 253292, 253293, 253294, 253307, 253308, 253309, 253310, 253324, 253325, 253326, 253327, 253341, 253342, 253343, 
		253344, 253357, 253358, 253359, 253360, 253374, 253375, 253376, 253377, 253391, 253392, 253393, 253394, 232567, 232568, 232569, 232570, 232584, 232585, 232586, 232587, 
		232600, 232601, 232602, 232603, 232604, 232617, 232618, 232619, 232620, 232634, 232635, 232636, 232637, 232651, 232652, 232653, 232654, 232667, 232668, 232669, 232670, 
		232684, 232685, 232686, 232687, 232701, 232702, 232703, 232704, 232717, 232718, 232719, 232720, 232721, 235896, 235910, 235911, 235912, 235913, 235926, 235927, 235928, 
		235929, 235943, 235944, 235945, 235946, 235960, 235961, 235962, 235963, 235976, 235977, 235978, 235979, 235980, 235993, 235994, 235995, 235996, 236010, 236011, 236012, 
		236013, 236026, 236027, 236028, 236029, 236030, 236043, 236044, 236045, 236046, 236060, 236061, 236062, 236063, 238985, 238986, 238987, 238988, 239001, 239002, 239003, 
		239004, 239018, 239019, 239020, 239021, 239035, 239036, 239037, 239038, 239051, 239052, 239053, 239054, 239055, 239068, 239069, 239070, 239071, 239085, 239086, 239087, 
		239088, 239102, 239103, 239104, 239105, 239118, 239119, 239120, 239121, 239135, 239136, 239137, 239138, 242260, 242261, 242262, 242263, 242277, 242278, 242279, 242280, 
		242294, 242295, 242296, 242297, 242310, 242311, 242312, 242313, 242314, 242327, 242328, 242329, 242330, 242344, 242345, 242346, 242347, 242361, 242362, 242363, 242364, 
		242377, 242378, 242379, 242380, 242394, 242395, 242396, 242397, 242411, 242412, 242413, 242414, 245519, 245520, 245521, 245522, 245536, 245537, 245538, 245539, 245553, 
		245554, 245555, 245556, 245569, 245570, 245571, 245572, 245586, 245587, 245588, 245589, 245603, 245604, 245605, 245606, 245619, 245620, 245621, 245622, 245623, 245636, 
		245637, 245638, 245639, 245653, 245654, 245655, 245656, 245670, 245671, 245672, 245673, 245686, 245687, 245688, 245689, 248581, 248594, 248595, 248596, 248597, 248611, 
		248612, 248613, 248614, 248628, 198515, 198516, 198517, 198518, 198519, 198532, 198533, 198534, 198535, 198549, 198550, 198551, 198552, 198565, 198566, 198567, 198568, 
		198569, 198582, 198583, 198584, 198585, 198599, 198600, 198601, 198602, 198616, 198617, 198618, 198619, 198632, 198633, 198634, 198635, 198636, 202543, 202544, 202545, 
		202546, 202560, 202561, 202562, 202563, 202576, 202577, 202578, 202579, 202580, 202593, 202594, 202595, 202596, 202610, 202611, 202612, 202613, 202627, 202628, 202629, 
		202630, 202643, 202644, 202645, 202646, 202647, 202660, 202661, 202662, 202663, 202677, 202678, 202679, 202680, 202693, 202694, 202695, 202696, 202697, 226459, 226460, 
		226461, 226462, 226475, 226476, 226477, 226478, 226492, 226493, 226494, 226495, 226509, 226510, 226511, 226512, 229300, 229301, 229302, 229303, 229316, 229317, 229318, 
		229319, 229320, 229333, 229334, 229335, 229336, 229350, 229351, 229352, 229353, 229367, 229368, 229369, 229370, 229383, 229384, 229385, 229386, 229400, 229401, 229402, 
		229403, 229417, 229418, 229419, 229420, 229433, 229434, 229435, 229436, 229437, 229450, 229451, 229452, 229453, 229467, 206872, 206873, 206874, 206875, 206888, 206889, 
		206890, 206891, 206905, 206906, 206907, 206908, 206922, 206923, 206924, 206925, 206938, 206939, 206940, 206941, 206942, 206955, 206956, 206957, 206958, 206972, 206973, 
		206974, 206975, 206989, 206990, 206991, 206992, 207005, 207006, 207007, 207008, 207022, 207023, 207024, 207025, 209763, 209764, 209765, 209766, 209780, 209781, 209782, 
		209783, 209796, 209797, 209798, 209799, 209813, 209814, 209815, 209816, 209830, 209831, 209832, 209833, 209846, 209847, 209848, 209849, 209850, 209863, 209864, 209865, 
		209866, 209880, 209881, 209882, 209883, 209897, 209898, 209899, 209900, 209913, 209914, 209915, 209916, 212972, 212973, 212974, 212975, 212988, 212989, 212990, 212991, 
		212992, 213005, 213006, 213007, 213008, 213022, 213023, 213024, 213025, 213038, 213039, 213040, 213041, 213042, 213055, 213056, 213057, 213058, 213072, 213073, 213074, 
		213075, 213089, 213090, 213091, 213092, 213105, 213106, 213107, 213108, 213109, 213122, 213123, 213124, 213125, 213139, 213140, 213141, 256207, 256208, 256209, 256210, 
		256224, 256225, 256226, 256227, 256240, 256241, 256242, 256243, 256257, 256258, 256259, 256260, 256274, 256275, 256276, 256277, 256290, 256291, 256292, 256293, 256294, 
		256307, 256308, 256309, 256310, 256324, 256325, 256326, 256327, 256340, 256341, 256342, 256343, 256344, 256357, 256358, 256359, 256360, 259519, 259533, 259534, 259535, 
		259536, 259549, 259550, 259551, 259552, 259566, 259567, 259568, 259569, 259583, 259584, 259585, 259586, 259599, 259600, 259601, 259602, 259603, 259616, 259617, 259618, 
		259619, 259633, 259634, 259635, 259636, 259650, 259651, 259652, 259653, 259666, 259667, 259668, 259669, 259683, 259684, 259685, 259686, 253232, 253233, 253234, 253235, 
		253249, 253250, 253251, 253252, 253265, 253266, 253267, 253268, 253269, 253282, 253283, 253284, 253285, 253299, 253300, 253301, 253302, 253316, 253317, 253318, 253319, 
		253332, 253333, 253334, 253335, 253349, 253350, 253351, 253352, 253366, 253367, 253368, 253369, 253382, 253383, 253384, 253385, 253386, 232559, 232560, 232561, 232562, 
		232575, 232576, 232577, 232578, 232579, 232592, 232593, 232594, 232595, 232609, 232610, 232611, 232612, 232626, 232627, 232628, 232629, 232642, 232643, 232644, 232645, 
		232659, 232660, 232661, 232662, 232676, 232677, 232678, 232679, 232692, 232693, 232694, 232695, 232696, 232709, 232710, 232711, 232712, 232726, 232727, 232728, 232729, 
		235901, 235902, 235903, 235904, 235918, 235919, 235920, 235921, 235935, 235936, 235937, 235938, 235951, 235952, 235953, 235954, 235968, 235969, 235970, 235971, 235985, 
		235986, 235987, 235988, 236001, 236002, 236003, 236004, 236005, 236018, 236019, 236020, 236021, 236035, 236036, 236037, 236038, 236052, 236053, 236054, 236055, 238979, 
		238993, 238994, 238995, 238996, 239010, 239011, 239012, 239013, 239026, 239027, 239028, 239029, 239030, 239043, 239044, 239045, 239046, 239060, 239061, 239062, 239063, 
		239077, 239078, 239079, 239080, 239093, 239094, 239095, 239096, 239110, 239111, 239112, 198472, 198479, 198481, 198486, 198488, 198495, 198497, 198504, 198506, 198511, 
		198513, 198520, 198522, 198529, 198531, 198536, 198538, 198545, 198547, 198554, 198556, 198561, 198563, 198570, 198572, 198579, 198581, 198586, 198588, 198590, 198595, 
		198597, 198604, 198606, 198611, 198613, 198615, 198620, 198622, 198629, 198631, 198638, 206860, 206862, 206867, 206869, 206871, 206876, 206878, 206885, 206887, 206892, 
		206894, 206896, 206901, 206903, 206910, 206912, 206919, 206921, 206926, 206928, 206935, 206937, 206944, 206946, 206951, 206953, 206960, 206962, 206969, 206971, 206976, 
		206978, 206985, 206987, 206994, 206996, 207001, 207003, 207010, 207012, 207019, 207021, 207026, 207028, 209759, 209761, 209768, 209770, 209775, 209777, 209779, 209784, 
		209786, 209793, 209795, 209800, 209802, 209804, 209809, 209811, 209818, 209820, 209827, 209829, 209834, 209836, 209843, 209845, 209852, 209854, 209859, 209861, 209868, 
		209870, 209877, 209879, 209884, 209886, 209893, 209895, 209902, 209904, 209909, 209911, 209918, 209920, 209927, 212971, 212976, 212978, 212985, 212987, 212994, 212996, 
		213001, 213003, 213010, 213012, 213019, 213021, 213026, 213028, 213035, 213037, 213044, 213046, 213051, 213053, 213060, 213062, 213069, 213071, 213076, 213078, 213085, 
		213087, 213094, 213096, 213101, 213103, 213110, 213112, 213119, 213121, 213126, 213128, 213135, 213137, 202532, 202534, 202539, 202541, 202548, 202550, 202557, 202559, 
		202564, 202566, 202573, 202575, 202582, 202584, 202589, 202591, 202598, 202600, 202607, 202609, 202614, 202616, 202623, 202625, 202632, 202634, 202639, 202641, 202648, 
		202650, 202657, 202659, 202664, 202666, 202673, 202675, 202682, 202684, 202689, 202691, 202698, 202700, 226455, 226457, 226464, 226466, 226471, 226473, 226480, 226482, 
		226489, 226491, 226496, 226498, 226505, 226507, 226514, 226516, 226521, 229297, 229299, 229304, 229306, 229313, 229315, 229322, 229324, 229329, 229331, 229338, 229340, 
		229347, 229349, 229354, 229356, 229363, 229365, 229372, 229374, 229379, 229381, 229388, 229390, 229397, 229399, 229404, 229406, 229413, 229415, 229422, 229424, 229429, 
		229431, 229438, 229440, 229447, 229449, 229454, 229456, 229463, 229465, 253229, 253231, 253236, 253238, 253245, 253247, 253254, 253256, 253261, 253263, 253270, 253272, 
		253279, 253281, 253286, 253288, 253295, 253297, 253304, 253306, 253311, 253313, 253315, 253320, 253322, 253329, 253331, 253336, 253338, 253340, 253345, 253347, 253354, 
		253356, 253361, 253363, 253365, 253370, 253372, 253379, 253381, 253388, 253390, 256203, 256205, 256212, 256214, 256219, 256221, 256223, 256228, 256230, 256237, 256239, 
		256244, 256246, 256248, 256253, 256255, 256262, 256264, 256269, 256271, 256273, 256278, 256280, 256287, 256289, 256296, 256298, 256303, 256305, 256312, 256314, 256321, 
		256323, 256328, 256330, 256337, 256339, 256346, 256348, 256353, 256355, 256362, 256364, 256371, 259520, 259522, 259529, 259531, 259538, 259540, 259545, 259547, 259554, 
		259556, 259563, 259565, 259570, 259572, 259579, 259581, 259588, 259590, 259595, 259597, 259604, 259606, 259613, 259615, 259620, 259622, 259629, 259631, 259638, 259640, 
		259645, 259647, 259649, 259654, 259656, 259663, 259665, 259670, 259672, 259674, 259679, 259681, 259688, 232564, 232566, 232571, 232573, 232580, 232582, 232589, 232591, 
		232596, 232598, 232605, 232607, 232614, 232616, 232621, 232623, 232625, 232630, 232632, 232639, 232641, 232646, 232648, 232650, 232655, 232657, 232664, 232666, 232671, 
		232673, 232675, 232680, 232682, 232689, 232691, 232698, 232700, 232705, 232707, 232714, 232716, 232723, 232725, 235897, 235899, 235906, 235908, 235915, 235917, 235922, 
		235924, 235931, 235933, 235940, 235942, 235947, 235949, 235956, 235958, 235965, 235967, 235972, 235974, 235981, 235983, 235990, 235992, 235997, 235999, 236006, 236008, 
		236015, 236017, 236022, 236024, 236031, 236033, 236040, 236042, 236047, 236049, 236051, 236056, 236058, 236065, 238980, 238982, 238984, 238989, 238991, 238998, 239000, 
		239005, 239007, 239009, 239014, 239016, 239023, 239025, 239032, 239034, 239039, 239041, 239048, 239050, 239057, 239059, 239064, 239066, 239073, 239113, 239127, 239128, 
		239129, 239130, 239143, 239144, 239145, 239146, 239147, 242255, 242269, 242270, 242271, 242272, 242285, 242286, 242287, 242288, 242302, 242303, 242304, 242305, 242319, 
		242320, 242321, 242322, 242335, 242336, 242337, 242338, 242339, 242352, 242353, 242354, 242355, 242369, 242370, 242371, 242372, 242386, 242387, 242388, 242389, 242402, 
		242403, 242404, 242405, 242419, 242420, 242421, 242422, 245528, 245529, 245530, 245531, 245544, 245545, 245546, 245547, 245561, 245562, 245563, 245564, 245578, 245579, 
		245580, 245581, 245594, 245595, 245596, 245597, 245598, 245611, 245612, 245613, 245614, 245628, 245629, 245630, 245631, 245645, 245646, 245647, 245648, 245661, 245662, 
		245663, 245664, 245678, 245679, 245680, 245681, 248586, 248587, 248588, 248589, 248603, 248604, 248605, 248606, 248619, 248620, 248621, 248622, 248623, 248636, 248637, 
		248638, 248639, 248653, 248654, 248655, 248656, 248669, 248670, 248671, 248672, 248673, 248686, 248687, 248688, 248689, 248703, 248704, 248705, 248706, 248720, 248721, 
		248722, 248723, 248736, 248737, 248738, 248739, 248740, 262457, 262458, 262459, 262460, 262474, 262475, 262476, 262477, 262491, 262492, 262493, 262494, 262507, 262508, 
		262509, 262510, 262511, 262524, 262525, 262526, 262527, 262541, 262542, 262543, 262544, 262558, 262559, 262560, 262561, 262574, 262575, 262576, 262577, 262591, 262592, 
		262593, 262594, 262608, 262609, 262610, 262611, 265716, 265717, 265718, 265719, 265733, 265734, 265735, 265736, 265750, 265751, 265752, 265753, 265766, 265767, 265768, 
		265769, 265770, 265783, 265784, 265785, 265786, 265800, 265801, 265802, 265803, 265816, 265817, 265818, 265819, 265820, 265833, 265834, 265835, 265836, 265850, 265851, 
		265852, 265853, 265867, 265868, 265869, 265870, 271766, 271767, 271768, 271769, 271783, 271784, 271785, 271786, 271800, 271801, 271802, 271803, 271816, 271817, 271818, 
		271819, 275042, 275043, 275044, 275045, 275058, 275059, 275060, 275061, 278184, 278185, 278186, 278187, 278200, 278201, 278202, 278203, 278204, 278217, 278218, 278219, 
		278220, 278234, 278235, 278236, 278237, 278251, 278252, 278253, 278254, 278267, 278268, 278269, 278270, 278284, 278285, 278286, 278287, 281309, 281310, 281311, 281312, 
		281326, 281327, 281328, 281329, 281342, 281343, 281344, 281345, 281346, 281359, 281360, 281361, 281362, 281376, 281377, 281378, 281379, 281392, 281393, 281394, 281395, 
		281396, 281409, 281410, 281411, 281412, 281426, 281427, 281428, 281429, 281443, 281444, 281445, 281446, 281459, 281460, 281461, 281462, 281463, 284551, 284552, 284553, 
		284554, 284568, 284569, 284570, 284571, 284585, 284586, 284587, 284588, 284601, 284602, 284603, 284604, 284618, 284619, 284620, 284621, 284635, 284636, 284637, 284638, 
		284651, 284652, 284653, 284654, 284655, 284668, 284669, 284670, 284671, 284685, 284686, 284687, 284688, 284702, 284703, 284704, 284705, 284718, 287710, 287711, 287712, 
		287713, 287727, 287728, 287729, 287730, 287743, 287744, 287745, 287746, 287760, 287761, 287762, 287763, 287777, 287778, 287779, 287780, 287793, 287794, 287795, 287796, 
		287797, 287810, 287811, 287812, 287813, 287827, 287828, 287829, 287830, 287843, 287844, 287845, 287846, 287847, 287860, 287861, 287862, 287863, 287877, 287878, 287879, 
		287880, 290685, 290686, 290687, 290688, 290701, 290702, 290703, 290704, 290705, 290718, 290719, 290720, 290721, 290735, 290736, 290737, 290738, 290751, 290752, 290753, 
		290754, 290755, 290768, 290769, 290770, 290771, 290785, 290786, 290787, 290788, 290802, 290803, 290804, 290805, 290818, 290819, 290820, 290821, 290835, 290836, 290837, 
		290838, 293676, 293677, 293678, 293679, 293693, 293694, 293695, 293696, 293710, 293711, 293712, 293713, 293726, 293727, 293728, 293729, 293743, 293744, 293745, 293746, 
		293760, 293761, 293762, 293763, 293776, 293646, 293659, 293660, 293661, 293662, 293663, 268791, 268792, 268793, 268794, 268808, 268809, 268810, 268811, 268825, 268826, 
		268827, 268828, 268841, 268842, 268843, 268844, 268845, 268858, 268859, 268860, 268861, 268875, 268876, 268877, 268878, 268892, 268893, 268894, 268895, 268908, 268909, 
		268910, 268911, 268925, 268926, 239075, 239082, 239084, 239089, 239091, 239098, 239100, 239107, 239109, 239114, 239116, 239123, 239125, 239132, 239134, 239139, 239141, 
		239148, 242256, 242258, 242265, 242267, 242274, 242276, 242281, 242283, 242290, 242292, 242299, 242301, 242306, 242308, 242315, 242317, 242324, 242326, 242331, 242333, 
		242340, 242342, 242349, 242351, 242356, 242358, 242360, 242365, 242367, 242374, 242376, 242381, 242383, 242385, 242390, 242392, 242399, 242401, 242406, 242408, 242410, 
		242415, 242417, 242424, 245523, 245525, 245527, 245532, 245534, 245541, 245543, 245548, 245550, 245552, 245557, 245559, 245566, 245568, 245573, 245575, 245577, 245582, 
		245584, 245591, 245593, 245600, 245602, 245607, 245609, 245616, 245618, 245625, 245627, 245632, 245634, 245641, 245643, 245650, 245652, 245657, 245659, 245666, 245668, 
		245675, 245677, 245682, 245684, 248583, 248585, 248590, 248592, 248599, 248601, 248608, 248610, 248615, 248617, 248624, 248626, 248633, 248635, 248640, 248642, 248649, 
		248651, 248658, 248660, 248665, 248667, 248674, 248676, 248683, 248685, 248690, 248692, 248694, 248699, 248701, 248708, 248710, 248715, 248717, 248719, 248724, 248726, 
		248733, 248735, 248742, 248744, 248749, 248751, 262453, 262455, 262462, 262464, 262471, 262473, 262478, 262480, 262487, 262489, 262496, 262498, 262503, 262505, 262512, 
		262514, 262521, 262523, 262528, 262530, 262537, 262539, 262546, 262548, 262553, 262555, 262557, 262562, 262564, 262571, 262573, 262578, 262580, 262582, 262587, 262589, 
		262596, 262598, 262603, 262605, 262607, 262612, 262614, 265713, 265715, 265720, 265722, 265724, 265729, 265731, 265738, 265740, 265745, 265747, 265749, 265754, 265756, 
		265763, 265765, 265772, 265774, 265779, 265781, 265788, 265790, 265797, 265799, 265804, 265806, 265813, 265815, 265822, 265824, 265829, 265831, 265838, 265840, 265847, 
		265849, 265854, 265856, 265863, 265865, 265872, 265874, 265879, 265881, 271763, 271765, 271770, 271772, 271779, 271781, 271788, 271790, 271795, 271797, 271799, 271804, 
		271806, 271813, 271815, 271820, 271822, 271824, 275039, 275041, 275046, 275048, 275055, 275057, 278174, 278181, 278183, 278188, 278190, 278197, 278199, 278206, 278208, 
		278213, 278215, 278222, 278224, 278231, 278233, 278238, 278240, 278247, 278249, 278256, 278258, 278263, 278265, 278272, 278274, 278281, 278283, 278288, 278290, 278297, 
		281305, 281307, 281314, 281316, 281321, 281323, 281325, 281330, 281332, 281339, 281341, 281348, 281350, 281355, 281357, 281364, 281366, 281373, 281375, 281380, 281382, 
		281389, 281391, 281398, 281400, 281405, 281407, 281414, 281416, 281423, 281425, 281430, 281432, 281439, 281441, 281448, 281450, 281455, 281457, 281464, 281466, 284549, 
		284556, 284558, 284565, 284567, 284572, 284574, 284581, 284583, 284590, 284592, 284597, 284599, 284606, 284608, 284615, 284617, 284622, 284624, 284631, 284633, 284640, 
		284642, 284647, 284649, 284656, 284658, 284665, 284667, 284672, 284674, 284681, 284683, 284690, 284692, 284697, 284699, 284701, 284706, 284708, 284715, 284717, 287714, 
		287716, 287723, 287725, 287732, 287734, 287739, 287741, 287748, 287750, 287757, 287759, 287764, 287766, 287773, 287775, 287782, 287784, 287789, 287791, 287798, 287800, 
		287807, 287809, 287814, 287816, 287823, 287825, 287832, 287834, 287839, 287841, 287848, 287850, 287857, 287859, 287864, 287866, 287868, 287873, 287875, 290681, 290683, 
		290690, 290692, 290697, 290699, 290706, 290708, 290715, 290717, 290722, 290724, 290731, 290733, 290740, 290742, 290747, 290749, 290756, 290758, 290765, 290767, 290772, 
		290774, 290776, 290781, 290783, 290790, 290792, 290797, 290799, 290801, 290806, 290808, 290815, 290817, 290822, 290824, 290826, 290831, 290833, 290840, 290842, 290849, 
		290851, 293673, 293675, 293680, 293682, 293684, 293689, 293691, 293698, 293700, 293705, 293707, 293709, 293714, 293716, 293723, 293725, 293730, 293732, 293734, 293739, 
		293741, 293748, 293750, 293757, 293759, 293764, 293766, 293773, 293775, 293782, 293784, 293789, 293791, 293798, 293800, 293648, 293650, 293655, 293657, 293664, 293666, 
		268780, 268782, 268787, 268789, 268796, 268798, 268805, 268807, 268812, 268814, 268821, 248629, 248630, 248631, 248644, 248645, 248646, 248647, 248648, 248661, 248662, 
		248663, 248664, 248678, 248679, 248680, 248681, 248695, 248696, 248697, 248698, 248711, 248712, 248713, 248714, 248728, 248729, 248730, 248731, 248745, 248746, 248747, 
		248748, 256202, 256215, 256216, 256217, 256218, 256232, 256233, 256234, 256235, 256249, 256250, 256251, 256252, 256265, 256266, 256267, 256268, 256282, 256283, 256284, 
		256285, 256299, 256300, 256301, 256302, 256315, 256316, 256317, 256318, 256319, 256332, 256333, 256334, 256335, 256349, 256350, 256351, 256352, 256366, 256367, 256368, 
		256369, 259524, 259525, 259526, 259527, 259541, 259542, 259543, 259544, 259558, 259559, 259560, 259561, 259574, 259575, 259576, 259577, 259578, 259591, 259592, 259593, 
		259594, 259608, 259609, 259610, 259611, 259624, 259625, 259626, 259627, 259628, 259641, 259642, 259643, 259644, 259658, 259659, 259660, 259661, 259675, 259676, 259677, 
		259678, 262449, 262450, 262451, 262452, 262466, 262467, 262468, 262469, 262482, 262483, 262484, 262485, 262486, 262499, 262500, 262501, 262502, 262516, 262517, 262518, 
		262519, 262532, 262533, 262534, 262535, 262536, 262549, 262550, 262551, 262552, 262566, 262567, 262568, 262569, 262583, 262584, 262585, 262586, 262599, 262600, 262601, 
		262602, 262616, 262617, 262618, 262619, 265711, 265725, 265726, 265727, 265728, 265741, 265742, 265743, 265744, 265758, 265759, 265760, 265761, 265775, 265776, 265777, 
		265778, 265791, 265792, 265793, 265794, 265795, 265808, 265809, 265810, 265811, 265825, 265826, 265827, 265828, 265842, 265843, 265844, 265845, 265858, 265859, 265860, 
		265861, 265875, 265876, 265877, 265878, 271774, 271775, 271776, 271777, 271778, 271791, 271792, 271793, 271794, 271808, 271809, 271810, 271811, 271825, 275034, 275035, 
		275036, 275037, 275050, 275051, 275052, 275053, 278175, 278176, 278177, 278178, 278179, 278192, 278193, 278194, 278195, 278209, 278210, 278211, 278212, 278225, 278226, 
		278227, 278228, 278229, 278242, 278243, 278244, 278245, 278259, 278260, 278261, 278262, 278276, 278277, 278278, 278279, 278292, 278293, 278294, 278295, 281301, 281302, 
		281303, 281304, 281317, 281318, 281319, 281320, 281334, 281335, 281336, 281337, 281351, 281352, 281353, 281354, 281367, 281368, 281369, 281370, 281371, 281384, 281385, 
		281386, 281387, 281401, 281402, 281403, 281404, 281418, 281419, 281420, 281421, 281434, 281435, 281436, 281437, 281451, 281452, 281453, 281454, 281468, 281469, 281470, 
		281471, 284559, 284560, 284561, 284562, 284563, 284576, 284577, 284578, 284579, 284593, 284594, 284595, 284596, 284610, 284611, 284612, 284613, 284626, 284627, 284628, 
		284629, 284630, 284643, 284644, 284645, 284646, 284660, 284661, 284662, 284663, 284676, 284677, 284678, 284679, 284680, 284693, 284694, 284695, 284696, 284710, 284711, 
		284712, 284713, 287718, 287719, 287720, 287721, 287735, 287736, 287737, 287738, 287752, 287753, 287754, 287755, 287768, 287769, 287770, 287771, 287785, 287786, 287787, 
		287788, 287802, 287803, 287804, 287805, 287818, 287819, 287820, 287821, 287822, 287835, 287836, 287837, 287838, 287852, 287853, 287854, 287855, 287869, 287870, 287871, 
		287872, 290693, 290694, 290695, 290696, 290710, 290711, 290712, 290713, 290726, 290727, 290728, 290729, 290730, 290743, 290744, 290745, 290746, 290760, 290761, 290762, 
		290763, 290777, 290778, 290779, 290780, 290793, 290794, 290795, 290796, 290810, 290811, 290812, 290813, 290827, 290828, 290829, 290830, 290843, 290844, 290845, 290846, 
		290847, 293669, 293670, 293671, 293685, 293686, 293687, 293688, 293701, 293702, 293703, 293704, 293718, 293719, 293720, 293721, 293735, 293736, 293737, 293738, 293751, 
		293752, 293753, 293754, 293755, 293768, 293769, 293770, 293771, 293785, 293786, 293787, 293788, 293801, 293802, 293651, 293652, 293653, 293654, 293668, 268783, 268784, 
		268785, 268786, 268800, 268801, 268802, 268803, 268816, 268817, 268818, 268819, 268820, 268833, 268834, 268835, 268836, 268850, 268851, 268852, 268853, 268866, 268867, 
		268868, 268869, 268870, 268883, 268884, 268885, 268886, 268900, 268901, 268902, 268903, 268917, 268918, 268919, 268920, 268933, 268934, 268935, 245576, 245583, 245585, 
		245590, 245592, 245599, 245601, 245608, 245610, 245615, 245617, 245624, 245626, 245633, 245635, 245640, 245642, 245644, 245649, 245651, 245658, 245660, 245665, 245667, 
		245669, 245674, 245676, 245683, 245685, 248582, 248584, 248591, 248593, 248598, 248600, 248602, 248607, 248609, 248616, 248618, 248625, 248627, 248632, 248634, 248641, 
		248643, 248650, 248652, 248657, 248659, 248666, 248668, 248675, 248677, 248682, 248684, 248691, 248693, 248700, 248702, 248707, 248709, 248716, 248718, 248725, 248727, 
		248732, 248734, 248741, 248743, 248750, 253228, 253230, 253237, 253239, 253246, 253248, 253253, 253255, 253262, 253264, 253271, 253273, 253278, 253280, 253287, 253289, 
		253296, 253298, 253303, 253305, 253312, 253314, 253321, 253323, 253328, 253330, 253337, 253339, 253346, 253348, 253353, 253355, 253362, 253364, 253371, 253373, 253378, 
		253380, 253387, 253389, 259646, 259648, 259655, 259657, 259662, 259664, 259671, 259673, 259680, 259682, 259687, 259689, 262454, 262456, 262461, 262463, 262465, 262470, 
		262472, 262479, 262481, 262488, 262490, 262495, 262497, 262504, 262506, 262513, 262515, 262520, 262522, 262529, 262531, 262538, 262540, 262545, 262547, 262554, 262556, 
		262563, 262565, 262570, 262572, 262579, 262581, 262588, 262590, 262595, 262597, 262604, 262606, 262613, 262615, 265712, 265714, 265721, 265723, 265730, 265732, 265737, 
		265739, 265746, 265748, 265755, 265757, 265762, 265764, 265771, 265773, 265780, 265782, 265787, 265789, 265796, 265798, 265805, 265807, 265812, 265814, 265821, 265823, 
		265830, 265832, 265837, 265839, 265841, 265846, 265848, 265855, 265857, 265862, 265864, 265866, 265871, 265873, 265880, 271762, 271764, 271771, 271773, 271780, 271782, 
		271787, 271789, 271796, 271798, 271805, 271807, 271812, 271814, 271821, 271823, 275038, 275040, 275047, 275049, 275054, 275056, 278180, 278182, 278189, 278191, 278196, 
		278198, 278205, 278207, 278214, 278216, 278221, 278223, 278230, 278232, 278239, 278241, 278246, 278248, 278250, 278255, 278257, 278264, 278266, 278271, 278273, 278275, 
		278280, 278282, 278289, 278291, 278296, 281306, 281308, 281313, 281315, 281322, 281324, 281331, 281333, 281338, 281340, 281347, 281349, 281356, 281358, 281363, 281365, 
		281372, 281374, 281381, 281383, 281388, 281390, 281397, 281399, 281406, 281408, 281413, 281415, 281417, 281422, 281424, 281431, 281433, 281438, 281440, 281442, 281447, 
		281449, 281456, 281458, 281465, 281467, 284548, 284550, 284555, 284557, 284564, 284566, 284573, 284575, 284580, 284582, 284584, 284589, 284591, 284598, 284600, 284605, 
		284607, 284609, 284614, 284616, 284623, 284625, 284632, 284634, 284639, 284641, 284648, 284650, 284657, 284659, 284664, 284666, 284673, 284675, 284682, 284684, 284689, 
		284691, 284698, 284700, 284707, 284709, 284714, 284716, 287715, 287717, 287722, 287724, 287726, 287731, 287733, 287740, 287742, 287747, 287749, 287751, 287756, 287758, 
		287765, 287767, 287772, 287774, 287776, 287781, 287783, 287790, 287792, 287799, 287801, 287806, 287808, 287815, 287817, 287824, 287826, 287831, 287833, 287840, 287842, 
		287849, 287851, 287856, 287858, 287865, 287867, 287874, 287876, 290682, 290684, 290689, 290691, 290698, 290700, 290707, 290709, 290714, 290716, 290723, 290725, 290732, 
		290734, 290739, 290741, 290748, 290750, 290757, 290759, 290764, 290766, 290773, 290775, 290782, 290784, 290789, 290791, 290798, 290800, 290807, 290809, 290814, 290816, 
		290823, 290825, 290832, 290834, 290839, 290841, 290848, 290850, 293672, 293674, 293681, 293683, 293690, 293692, 293697, 293699, 293706, 293708, 293715, 293717, 293722, 
		293724, 293647, 293649, 293656, 293658, 293665, 293667, 268781, 268788, 268790, 268795, 268797, 268799, 268804, 268806, 268813, 268815, 268822, 268824, 268829, 268831, 
		268838, 268840, 268847, 268849, 268854, 268856, 268863, 268865, 268872, 268874, 268879, 268881, 268888, 268890, 268897, 268899, 268904, 268906, 268913, 268915, 268922, 
		268924, 268929, 268931, 268938, 268940, 268947, 268949, 271830, 271832, 271837, 271839, 271846, 271848, 271855, 271857, 271862, 271864, 271871, 271873, 271880, 271882, 
		271887, 271889, 271896, 271898, 268936, 268937, 268950, 271826, 271827, 271828, 271841, 271842, 271843, 271844, 271858, 271859, 271860, 271861, 271875, 271876, 271877, 
		271878, 271891, 271892, 271893, 271894, 271895, 271908, 271909, 271910, 271911, 271925, 271926, 271927, 271928, 275067, 275068, 275069, 275070, 275084, 275085, 275086, 
		275087, 275100, 275101, 275102, 275103, 275117, 275118, 275119, 275120, 275134, 275135, 275136, 275137, 275150, 275151, 275152, 275153, 275154, 275167, 275168, 275169, 
		275170, 275184, 275185, 275186, 275187, 275201, 275202, 275203, 275204, 278309, 278310, 278311, 278312, 278326, 278327, 278328, 278329, 278342, 278343, 278344, 293803, 
		293804, 293805, 296910, 296911, 296912, 296913, 296927, 296928, 296929, 296930, 296943, 296944, 296945, 296946, 296947, 296960, 296961, 296962, 296963, 296977, 296978, 
		296979, 296980, 296994, 296995, 296996, 296997, 297010, 297011, 297012, 297013, 297027, 297028, 297029, 297030, 297044, 297045, 297046, 297047, 297060, 297061, 297062, 
		297063, 297064, 300186, 300187, 300188, 300189, 300202, 300203, 300204, 300205, 300206, 300219, 300220, 300221, 300222, 300236, 300237, 300238, 300239, 300253, 300254, 
		300255, 300256, 300269, 300270, 300271, 300272, 300286, 300287, 300288, 300289, 300303, 300304, 300305, 300306, 300319, 300320, 300321, 300322, 300323, 300336, 300337, 
		300338, 300339, 306770, 306771, 306772, 306773, 306774, 306787, 306788, 306789, 306790, 306804, 306805, 306806, 306807, 306821, 306822, 306823, 306824, 306837, 306838, 
		306839, 306840, 306854, 306855, 306856, 306857, 306871, 306872, 306873, 306874, 306887, 306888, 306889, 306890, 306891, 306904, 306905, 306906, 306907, 306921, 306922, 
		306923, 306924, 309849, 309862, 309863, 309864, 309865, 309879, 309880, 309881, 309882, 309896, 309897, 309898, 309899, 309912, 309913, 309914, 309915, 309929, 309930, 
		309931, 309932, 309946, 309947, 309948, 309949, 309962, 309963, 309964, 309965, 309966, 313726, 313739, 313740, 313741, 313742, 313743, 313756, 313757, 313758, 313759, 
		313773, 313774, 313775, 313776, 313790, 313791, 313792, 313793, 313806, 313807, 313808, 313809, 313823, 313824, 313825, 313826, 313840, 313841, 313842, 313843, 313856, 
		313857, 313858, 313859, 313860, 313873, 313874, 313875, 313876, 313890, 313891, 313892, 313893, 323065, 323066, 323067, 323068, 323082, 323083, 323084, 323085, 323098, 
		323099, 323100, 323101, 323102, 323115, 323116, 323117, 323118, 323132, 323133, 323134, 323135, 323149, 323150, 323151, 323152, 323165, 323166, 323167, 323168, 323182, 
		323183, 323184, 323185, 323199, 323200, 323201, 323202, 323215, 323216, 323217, 323218, 323219, 326123, 326124, 326125, 326126, 326127, 326140, 326141, 326142, 326143, 
		326157, 326158, 326159, 326160, 326174, 326175, 326176, 326177, 326190, 326191, 326192, 326193, 326207, 326208, 326209, 326210, 326224, 326225, 326226, 326227, 326240, 
		326241, 326242, 326243, 326244, 326257, 326258, 316731, 316732, 316733, 316734, 316748, 316749, 316750, 316751, 316764, 316765, 316766, 316767, 316768, 316781, 316782, 
		316783, 316784, 316798, 316799, 316800, 316801, 316815, 316816, 316817, 316818, 316831, 316832, 316833, 316834, 316848, 316849, 316850, 316851, 316865, 316866, 316867, 
		316868, 316881, 316882, 316883, 316884, 316885, 319910, 319923, 319924, 319925, 319926, 319940, 319941, 319942, 319943, 319957, 319958, 319959, 319960, 319973, 319974, 
		319975, 319976, 319990, 319991, 319992, 319993, 320007, 320008, 320009, 320010, 320023, 320024, 320025, 320026, 320027, 320040, 320041, 320042, 320043, 320057, 320058, 
		320059, 320060, 320073, 320074, 320075, 320076, 320077, 309798, 309812, 309813, 309814, 309815, 309829, 309830, 309831, 309832, 309845, 309846, 309847, 309848, 326259, 
		326260, 326274, 326275, 326276, 326277, 329432, 329433, 329434, 329435, 329436, 329449, 329450, 329451, 329452, 329466, 329467, 329468, 329469, 329483, 329484, 329485, 
		329486, 329499, 329500, 329501, 329502, 329516, 329517, 329518, 329519, 329533, 329534, 329535, 329536, 329549, 329550, 329551, 329552, 329553, 329566, 329567, 329568, 
		329569, 329583, 329584, 329585, 329586, 329600, 329601, 332508, 332509, 332510, 332511, 268823, 268830, 268832, 268837, 268839, 268846, 268848, 268855, 268857, 268862, 
		268864, 268871, 268873, 268880, 268882, 268887, 268889, 268891, 268896, 268898, 268905, 268907, 268912, 268914, 268916, 268921, 268923, 268930, 268932, 268939, 268941, 
		268946, 268948, 271829, 271831, 271838, 271840, 271845, 271847, 271849, 271854, 271856, 271863, 271865, 271872, 271874, 271879, 271881, 271888, 271890, 271897, 271899, 
		271904, 271906, 271913, 271915, 271922, 271924, 271929, 271931, 275064, 275066, 275071, 275073, 275080, 275082, 275089, 275091, 275096, 275098, 275105, 275107, 275114, 
		275116, 275121, 275123, 275130, 275132, 275139, 275141, 275146, 275148, 275155, 275157, 275164, 275166, 275171, 275173, 275180, 275182, 275189, 275191, 275196, 275198, 
		275200, 278299, 278306, 278308, 278313, 278315, 278322, 278324, 278331, 278333, 278338, 278340, 293807, 293809, 296906, 296908, 296915, 296917, 296924, 296926, 296931, 
		296933, 296940, 296942, 296949, 296951, 296956, 296958, 296965, 296967, 296974, 296976, 296981, 296983, 296990, 296992, 296999, 297001, 297006, 297008, 297015, 297017, 
		297024, 297026, 297031, 297033, 297040, 297042, 297049, 297051, 297056, 297058, 297065, 297067, 300182, 300184, 300191, 300193, 300198, 300200, 300207, 300209, 300216, 
		300218, 300223, 300225, 300232, 300234, 300241, 300243, 300248, 300250, 300252, 300257, 300259, 300266, 300268, 300273, 300275, 300277, 300282, 300284, 300291, 300293, 
		300298, 300300, 300302, 300307, 300309, 300316, 300318, 300325, 300327, 300332, 300334, 300341, 300343, 300350, 306759, 306761, 306766, 306768, 306775, 306777, 306784, 
		306786, 306791, 306793, 306800, 306802, 306809, 306811, 306816, 306818, 306820, 306825, 306827, 306834, 306836, 306841, 306843, 306845, 306850, 306852, 306859, 306861, 
		306866, 306868, 306870, 306875, 306877, 306884, 306886, 306893, 306895, 306900, 306902, 306909, 306911, 306918, 306920, 306925, 306927, 309851, 309853, 309858, 309860, 
		309867, 309869, 309876, 309878, 309883, 309885, 309892, 309894, 309901, 309903, 309908, 309910, 309917, 309919, 309926, 309928, 309933, 309935, 309942, 309944, 309951, 
		309953, 309958, 309960, 309967, 313727, 313729, 313736, 313738, 313745, 313747, 313752, 313754, 313761, 313763, 313770, 313772, 313777, 313779, 313786, 313788, 313795, 
		313797, 313802, 313804, 313811, 313813, 313820, 313822, 313827, 313829, 313836, 313838, 313845, 313847, 313852, 313854, 313861, 313863, 313870, 313872, 313877, 313879, 
		313881, 313886, 313888, 323062, 323064, 323069, 323071, 323078, 323080, 323087, 323089, 323094, 323096, 323103, 323105, 323112, 323114, 323119, 323121, 323123, 323128, 
		323130, 323137, 323139, 323144, 323146, 323148, 323153, 323155, 323162, 323164, 323169, 323171, 323173, 323178, 323180, 323187, 323189, 323196, 323198, 323203, 323205, 
		323212, 323214, 323221, 323223, 326120, 326122, 326129, 326131, 326136, 326138, 326145, 326147, 326154, 326156, 326161, 326163, 326170, 326172, 326179, 326181, 326186, 
		326188, 326195, 326197, 326204, 326206, 326211, 326213, 326220, 326222, 326229, 326231, 326236, 326238, 326245, 326247, 326254, 326256, 326261, 313895, 316728, 316730, 
		316735, 316737, 316744, 316746, 316753, 316755, 316760, 316762, 316769, 316771, 316778, 316780, 316785, 316787, 316794, 316796, 316803, 316805, 316810, 316812, 316814, 
		316819, 316821, 316828, 316830, 316835, 316837, 316839, 316844, 316846, 316853, 316855, 316862, 316864, 316869, 316871, 316878, 316880, 316887, 316889, 316894, 319911, 
		319913, 319920, 319922, 319927, 319929, 319936, 319938, 319945, 319947, 319952, 319954, 319956, 319961, 319963, 319970, 319972, 319977, 319979, 319981, 319986, 319988, 
		319995, 319997, 320002, 320004, 320006, 320011, 320013, 320020, 320022, 320029, 320031, 320036, 320038, 320045, 320047, 320054, 320056, 320061, 320063, 320070, 320072, 
		320079, 309799, 309801, 309803, 309808, 309810, 309817, 309819, 309826, 309828, 309833, 309835, 309842, 309844, 326263, 326270, 326272, 326279, 326281, 326286, 326288, 
		329437, 329439, 329446, 329448, 329453, 329455, 329457, 329462, 329464, 329471, 329473, 329478, 329480, 329482, 329487, 329489, 329496, 329498, 271905, 271907, 271912, 
		271914, 271916, 271921, 271923, 271930, 271932, 275063, 275065, 275072, 275074, 275079, 275081, 275083, 275088, 275090, 275097, 275099, 275104, 275106, 275108, 275113, 
		275115, 275122, 275124, 275129, 275131, 275133, 275138, 275140, 275147, 275149, 275156, 275158, 275163, 275165, 275172, 275174, 275181, 275183, 275188, 275190, 275197, 
		275199, 278298, 278300, 278305, 278307, 278314, 278316, 278323, 278325, 278330, 278332, 278339, 278341, 293731, 293733, 293740, 293742, 293747, 293749, 293756, 293758, 
		293765, 293767, 293772, 293774, 293781, 293783, 293790, 293792, 293797, 293799, 293806, 293808, 296907, 296909, 296914, 296916, 296923, 296925, 296932, 296934, 296939, 
		296941, 296948, 296950, 296957, 296959, 296964, 296966, 296968, 296973, 296975, 296982, 296984, 296989, 296991, 296993, 296998, 297000, 297007, 297009, 297014, 297016, 
		297018, 297023, 297025, 297032, 297034, 297041, 297043, 297048, 297050, 297057, 297059, 297066, 297068, 297073, 300181, 300183, 300185, 300190, 300192, 300199, 300201, 
		300208, 300210, 300215, 300217, 300224, 300226, 300233, 300235, 300240, 300242, 300249, 300251, 300258, 300260, 300265, 300267, 300274, 300276, 300283, 300285, 300290, 
		300292, 300299, 300301, 300308, 300310, 300315, 300317, 300324, 300326, 300333, 300335, 300340, 300342, 300349, 300351, 306760, 306767, 306769, 306776, 306778, 306783, 
		306785, 306792, 306794, 306801, 306803, 306808, 306810, 306817, 306819, 306826, 306828, 306833, 306835, 306842, 306844, 306851, 306853, 306858, 306860, 306867, 306869, 
		306876, 306878, 306883, 306885, 306892, 306894, 306901, 306903, 306908, 306910, 306917, 306919, 306926, 306928, 309850, 309852, 309859, 309861, 309866, 309868, 309870, 
		309875, 309877, 309884, 309886, 309891, 309893, 309895, 309900, 309902, 309909, 309911, 309916, 309918, 309920, 309925, 309927, 309934, 309936, 309943, 309945, 309950, 
		309952, 309959, 309961, 309968, 313728, 313730, 313735, 313737, 313744, 313746, 313753, 313755, 313760, 313762, 313764, 313769, 313771, 313778, 313780, 313785, 313787, 
		313789, 313794, 313796, 313803, 313805, 313810, 313812, 313814, 313819, 313821, 313828, 313830, 313837, 313839, 313844, 313846, 313853, 313855, 313862, 313864, 313869, 
		313871, 313878, 313880, 313887, 313889, 323056, 323061, 323063, 323070, 323072, 323079, 323081, 323086, 323088, 323095, 323097, 323104, 323106, 323111, 323113, 323120, 
		323122, 323129, 323131, 323136, 323138, 323145, 323147, 323154, 323156, 323161, 323163, 323170, 323172, 323179, 323181, 323186, 323188, 323195, 323197, 323204, 323206, 
		323211, 323213, 323220, 323222, 326119, 326121, 326128, 326130, 326137, 326139, 326144, 326146, 326153, 326155, 326162, 326164, 326169, 326171, 326173, 326178, 326180, 
		313894, 313896, 316727, 316729, 316736, 316738, 316745, 316747, 316752, 316754, 316761, 316763, 316770, 316772, 316777, 316779, 316786, 316788, 316795, 316797, 316802, 
		316804, 316811, 316813, 316820, 316822, 316827, 316829, 316836, 316838, 316845, 316847, 316852, 316854, 316861, 316863, 316870, 316872, 316877, 316879, 316886, 316888, 
		316895, 319912, 319914, 319919, 319921, 319928, 319930, 319937, 319939, 319944, 319946, 319953, 319955, 319962, 319964, 319969, 319971, 319978, 319980, 319987, 319989, 
		319994, 319996, 320003, 320005, 320012, 320014, 320019, 320021, 320028, 320030, 320037, 320039, 320044, 320046, 320053, 320055, 320062, 320064, 320069, 320071, 320078, 
		320080, 309800, 309802, 309809, 309811, 309816, 309818, 309825, 309827, 309834, 309836, 309841, 309843, 326187, 326189, 326194, 326196, 326198, 326203, 326205, 326212, 
		326214, 326219, 326221, 326223, 326228, 326230, 326237, 326239, 326246, 326248, 326253, 326255, 326262, 326264, 326271, 326273, 326278, 326280, 326287, 326289, 329431, 
		329438, 329440, 329445, 329447, 329454, 329456, 329463, 329465, 329470, 329472, 329479, 329481, 329488, 329490, 329495, 329497, 329504, 329506, 329513, 329515, 329520, 
		329522, 329529, 329531, 329538, 329540, 329545, 329547, 329554, 329556, 329563, 329565, 329570, 329572, 329574, 329579, 329581, 329588, 329590, 329595, 329597, 329599, 
		332503, 332505, 332507, 332512, 268927, 268928, 268942, 268943, 268944, 268945, 271833, 271834, 271835, 271836, 271850, 271851, 271852, 271853, 271866, 271867, 271868, 
		271869, 271870, 271883, 271884, 271885, 271886, 271900, 271901, 271902, 271903, 271917, 271918, 271919, 271920, 275062, 275075, 275076, 275077, 275078, 275092, 275093, 
		275094, 275095, 275109, 275110, 275111, 275112, 275125, 275126, 275127, 275128, 275142, 275143, 275144, 275145, 275159, 275160, 275161, 275162, 275175, 275176, 275177, 
		275178, 275179, 275192, 275193, 275194, 275195, 278301, 278302, 278303, 278304, 278317, 278318, 278319, 278320, 278321, 278334, 278335, 278336, 278337, 293777, 293778, 
		293779, 293780, 293793, 293794, 293795, 293796, 293810, 293811, 293812, 293813, 296905, 296918, 296919, 296920, 296921, 296922, 296935, 296936, 296937, 296938, 296952, 
		296953, 296954, 296955, 296969, 296970, 296971, 296972, 296985, 296986, 296987, 296988, 297002, 297003, 297004, 297005, 297019, 297020, 297021, 297022, 297035, 297036, 
		297037, 297038, 297039, 297052, 297053, 297054, 297055, 297069, 297070, 297071, 297072, 300194, 300195, 300196, 300197, 300211, 300212, 300213, 300214, 300227, 300228, 
		300229, 300230, 300231, 300244, 300245, 300246, 300247, 300261, 300262, 300263, 300264, 300278, 300279, 300280, 300281, 300294, 300295, 300296, 300297, 300311, 300312, 
		300313, 300314, 300328, 300329, 300330, 300331, 300344, 300345, 300346, 300347, 300348, 306762, 306763, 306764, 306765, 306779, 306780, 306781, 306782, 306795, 306796, 
		306797, 306798, 306799, 306812, 306813, 306814, 306815, 306829, 306830, 306831, 306832, 306846, 306847, 306848, 306849, 306862, 306863, 306864, 306865, 306879, 306880, 
		306881, 306882, 306896, 306897, 306898, 306899, 306912, 306913, 306914, 306915, 306916, 306929, 309854, 309855, 309856, 309857, 309871, 309872, 309873, 309874, 309887, 
		309888, 309889, 309890, 309904, 309905, 309906, 309907, 309921, 309922, 309923, 309924, 309937, 309938, 309939, 309940, 309941, 309954, 309955, 309956, 309957, 313731, 
		313732, 313733, 313734, 313748, 313749, 313750, 313751, 313765, 313766, 313767, 313768, 313781, 313782, 313783, 313784, 313798, 313799, 313800, 313801, 313815, 313816, 
		313817, 313818, 313831, 313832, 313833, 313834, 313835, 313848, 313849, 313850, 313851, 313865, 313866, 313867, 313868, 313882, 313883, 313884, 313885, 323057, 323058, 
		323059, 323060, 323073, 323074, 323075, 323076, 323077, 323090, 323091, 323092, 323093, 323107, 323108, 323109, 323110, 323124, 323125, 323126, 323127, 323140, 323141, 
		323142, 323143, 323157, 323158, 323159, 323160, 323174, 323175, 323176, 323177, 323190, 323191, 323192, 323193, 323194, 323207, 323208, 323209, 323210, 323224, 323225, 
		323226, 326132, 326133, 326134, 326135, 326148, 326149, 326150, 326151, 326152, 326165, 326166, 326167, 326168, 326182, 326183, 326184, 326185, 326199, 326200, 326201, 
		326202, 326215, 326216, 326217, 326218, 326232, 326233, 326234, 326235, 326249, 326250, 326251, 316725, 316726, 316739, 316740, 316741, 316742, 316743, 316756, 316757, 
		316758, 316759, 316773, 316774, 316775, 316776, 316789, 316790, 316791, 316792, 316793, 316806, 316807, 316808, 316809, 316823, 316824, 316825, 316826, 316840, 316841, 
		316842, 316843, 316856, 316857, 316858, 316859, 316860, 316873, 316874, 316875, 316876, 316890, 316891, 316892, 316893, 319915, 319916, 319917, 319918, 319931, 319932, 
		319933, 319934, 319935, 319948, 319949, 319950, 319951, 319965, 319966, 319967, 319968, 319982, 319983, 319984, 319985, 319998, 319999, 320000, 320001, 320015, 320016, 
		320017, 320018, 320032, 320033, 320034, 320035, 320048, 320049, 320050, 320051, 320052, 320065, 320066, 320067, 320068, 296903, 296904, 309804, 309805, 309806, 309807, 
		309820, 309821, 309822, 309823, 309824, 309837, 309838, 309839, 309840, 326252, 326265, 326266, 326267, 326268, 326269, 326282, 326283, 326284, 326285, 329441, 329442, 
		329443, 329444, 329458, 329459, 329460, 329461, 329474, 329475, 329476, 329477, 329491, 329492, 329493, 329494, 329508, 329509, 329510, 329511, 329524, 329525, 329526, 
		329527, 329528, 329541, 329542, 329543, 329544, 329558, 329559, 329560, 329561, 329575, 332514, 332521, 332523, 332528, 332530, 332532, 332537, 332539, 332546, 332548, 
		332555, 332557, 332562, 332564, 332571, 332573, 332580, 332582, 332587, 332589, 332596, 332598, 332605, 332607, 337596, 337601, 337603, 337610, 337612, 337617, 337619, 
		337621, 337626, 337628, 337635, 337637, 337642, 337644, 337646, 337651, 337653, 337660, 337662, 337669, 337671, 337676, 337678, 337685, 337687, 337694, 337696, 337701, 
		337703, 337710, 337712, 337719, 337721, 337726, 337728, 337735, 337737, 337744, 337746, 337751, 337753, 337760, 337762, 340659, 340661, 340668, 340670, 340677, 340679, 
		340684, 340686, 340693, 340695, 340702, 340704, 340709, 340711, 340718, 340720, 340727, 340729, 340734, 340736, 340743, 340745, 340752, 340754, 340759, 340761, 340763, 
		340768, 340770, 340777, 340779, 340784, 340786, 340788, 340793, 340795, 340802, 340804, 340809, 340811, 340813, 340818, 340820, 340827, 340829, 344369, 344371, 344378, 
		344380, 344387, 344389, 344394, 344396, 344403, 344405, 344412, 344414, 344419, 344421, 344423, 344428, 344430, 344437, 344439, 344444, 344446, 344448, 344453, 344455, 
		344462, 344464, 344471, 344473, 344478, 344480, 344487, 344489, 344496, 344498, 344503, 344505, 344512, 344514, 344521, 344523, 344528, 344530, 347511, 347513, 347520, 
		347522, 347529, 347531, 347536, 347538, 347545, 347547, 347554, 347556, 347561, 347563, 347570, 347572, 347579, 347581, 347586, 347588, 347590, 347595, 347597, 347604, 
		347606, 347611, 347613, 347615, 347620, 347622, 347629, 347631, 347638, 347640, 347645, 347647, 347654, 347656, 347663, 347665, 347670, 347672, 347679, 347681, 350646, 
		350648, 350653, 350655, 350662, 350664, 350671, 350673, 350678, 350680, 350687, 350689, 350696, 350698, 350703, 350705, 350712, 350714, 350721, 350723, 350728, 350730, 
		350732, 350737, 350739, 350746, 350748, 350753, 350755, 350757, 350762, 350764, 350771, 350773, 350778, 350780, 350782, 350787, 350789, 350796, 350798, 350805, 350807, 
		350812, 350814, 353820, 353822, 353829, 353831, 353838, 353840, 353845, 353847, 353854, 353856, 353863, 353865, 353870, 353872, 353879, 353881, 353888, 353890, 353895, 
		353897, 353899, 353904, 353906, 353913, 353915, 353920, 353922, 353924, 353929, 353931, 353938, 353940, 353945, 353947, 353949, 353954, 353956, 353963, 353965, 353972, 
		353974, 353979, 353981, 353988, 356971, 356973, 356980, 356982, 356987, 356989, 356996, 356998, 357005, 357007, 357012, 357014, 357021, 357023, 357030, 357032, 357037, 
		357039, 357046, 357048, 357055, 357057, 357062, 357064, 357066, 357071, 357073, 357080, 357082, 357087, 357089, 357091, 357096, 357098, 357105, 357107, 357112, 357114, 
		357116, 357121, 357123, 357130, 357132, 360122, 360124, 360129, 360131, 360138, 360140, 360147, 360149, 360154, 360156, 360163, 360165, 360172, 360174, 360179, 360181, 
		360188, 360190, 360197, 360199, 360204, 360206, 360213, 360215, 360222, 360224, 360229, 360231, 360233, 360238, 360240, 360247, 360249, 360254, 360256, 360258, 360263, 
		360265, 360272, 360274, 360281, 360283, 360288, 360290, 332446, 332448, 332453, 332455, 332462, 332464, 332471, 332473, 332478, 332480, 332487, 332489, 332496, 332498, 
		371184, 371186, 371188, 371193, 371195, 371202, 371204, 371209, 371211, 371213, 371218, 371220, 371227, 371229, 371236, 371238, 371243, 371245, 371252, 371254, 371261, 
		371263, 371268, 371270, 371277, 371279, 371286, 371288, 371293, 371295, 371302, 371304, 371311, 371313, 371318, 371320, 371327, 371329, 387480, 387482, 387487, 387489, 
		387491, 387496, 387498, 387505, 387507, 387512, 389952, 389954, 389956, 389961, 389963, 389970, 389972, 389979, 389981, 389986, 389988, 389995, 389997, 390004, 390006, 
		390011, 390013, 390020, 390022, 390029, 390031, 390036, 390038, 390045, 390047, 390054, 390056, 390061, 390063, 390070, 390072, 390079, 390081, 390086, 390088, 371336, 
		371338, 371343, 371345, 371352, 371354, 381807, 381814, 381816, 381823, 381825, 381830, 381832, 381839, 381841, 381848, 384658, 384663, 384665, 384672, 384674, 384681, 
		384683, 384688, 384690, 384697, 384699, 384706, 384708, 384713, 384715, 384722, 384724, 384731, 384733, 384738, 384740, 384747, 384749, 384756, 329576, 329577, 329578, 
		329591, 329592, 329593, 329594, 332501, 332502, 332516, 332517, 332518, 332519, 332533, 332534, 332535, 332536, 332549, 332550, 332551, 332552, 332553, 332566, 332567, 
		332568, 332569, 332583, 332584, 332585, 332586, 332599, 332600, 332601, 332602, 332603, 337597, 337598, 337599, 337600, 337613, 337614, 337615, 337616, 337630, 337631, 
		337632, 337633, 337647, 337648, 337649, 337650, 337663, 337664, 337665, 337666, 337667, 337680, 337681, 337682, 337683, 337697, 337698, 337699, 337700, 337713, 337714, 
		337715, 337716, 337717, 337730, 337731, 337732, 337733, 337747, 337748, 337749, 337750, 337764, 337765, 340672, 340673, 340674, 340675, 340688, 340689, 340690, 340691, 
		340705, 340706, 340707, 340708, 340722, 340723, 340724, 340725, 340738, 340739, 340740, 340741, 340742, 340755, 340756, 340757, 340758, 340772, 340773, 340774, 340775, 
		340789, 340790, 340791, 340792, 340805, 340806, 340807, 340808, 340822, 340823, 340824, 340825, 344366, 344367, 344368, 344382, 344383, 344384, 344385, 344398, 344399, 
		344400, 344401, 344402, 344415, 344416, 344417, 344418, 344432, 344433, 344434, 344435, 344449, 344450, 344451, 344452, 344465, 344466, 344467, 344468, 344469, 344482, 
		344483, 344484, 344485, 344499, 344500, 344501, 344502, 344515, 344516, 344517, 344518, 344519, 344532, 344533, 344534, 344535, 347524, 347525, 347526, 347527, 347540, 
		347541, 347542, 347543, 347544, 347557, 347558, 347559, 347560, 347574, 347575, 347576, 347577, 347591, 347592, 347593, 347594, 347607, 347608, 347609, 347610, 347624, 
		347625, 347626, 347627, 347641, 347642, 347643, 347644, 347657, 347658, 347659, 347660, 347661, 347674, 347675, 347676, 347677, 350649, 350650, 350651, 350652, 350666, 
		350667, 350668, 350669, 350682, 350683, 350684, 350685, 350686, 350699, 350700, 350701, 350702, 350716, 350717, 350718, 350719, 350733, 350734, 350735, 350736, 350749, 
		350750, 350751, 350752, 350766, 350767, 350768, 350769, 350783, 350784, 350785, 350786, 350799, 350800, 350801, 350802, 350803, 353824, 353825, 353826, 353827, 353841, 
		353842, 353843, 353844, 353858, 353859, 353860, 353861, 353874, 353875, 353876, 353877, 353878, 353891, 353892, 353893, 353894, 353908, 353909, 353910, 353911, 353925, 
		353926, 353927, 353928, 353941, 353942, 353943, 353944, 353958, 353959, 353960, 353961, 353975, 353976, 353977, 353978, 356966, 356967, 356968, 356969, 356983, 356984, 
		356985, 356986, 357000, 357001, 357002, 357003, 357016, 357017, 357018, 357019, 357020, 357033, 357034, 357035, 357036, 357050, 357051, 357052, 357053, 357067, 357068, 
		357069, 357070, 357083, 357084, 357085, 357086, 357100, 357101, 357102, 357103, 357117, 357118, 357119, 357120, 357133, 357134, 357135, 360125, 360126, 360127, 360128, 
		360142, 360143, 360144, 360145, 360158, 360159, 360160, 360161, 360162, 360175, 360176, 360177, 360178, 360192, 360193, 360194, 360195, 360208, 360209, 360210, 360211, 
		360212, 360225, 360226, 360227, 360228, 360242, 360243, 360244, 360245, 360259, 360260, 360261, 360262, 360275, 360276, 360277, 360278, 360279, 360292, 332449, 332450, 
		332451, 332452, 332466, 332467, 332468, 332469, 332482, 332483, 332484, 332485, 332486, 332499, 332500, 371189, 371190, 371191, 371192, 371205, 371206, 371207, 371208, 
		371222, 371223, 371224, 371225, 371239, 371240, 371241, 371242, 371255, 371256, 371257, 371258, 371259, 371272, 371273, 371274, 371275, 371289, 371290, 371291, 371292, 
		371306, 371307, 371308, 371309, 371322, 371323, 371324, 371325, 387483, 387484, 387485, 387486, 387500, 387501, 387502, 387503, 389957, 389958, 389959, 389960, 389973, 
		389974, 389975, 389976, 389977, 389990, 389991, 389992, 389993, 390007, 390008, 390009, 390010, 390024, 390025, 390026, 390027, 390040, 390041, 390042, 390043, 390057, 
		390058, 390059, 390060, 390074, 390075, 390076, 390077, 390090, 371339, 371340, 371341, 371342, 381818, 381819, 381820, 381821, 381834, 381835, 381836, 381837, 381838, 
		384659, 384660, 384661, 384662, 384676, 384677, 384678, 384679, 384692, 384693, 384694, 384695, 384709, 384710, 384711, 384712, 384726, 384727, 384728, 384729, 384742, 
		384743, 384744, 384745, 384746, 332524, 332525, 332526, 332527, 332541, 332542, 332543, 332544, 332558, 332559, 332560, 332561, 332574, 332575, 332576, 332577, 332578, 
		332591, 332592, 332593, 332594, 332608, 332609, 332610, 337605, 337606, 337607, 337608, 337622, 337623, 337624, 337625, 337638, 337639, 337640, 337641, 337655, 337656, 
		337657, 337658, 337672, 337673, 337674, 337675, 337688, 337689, 337690, 337691, 337692, 337705, 337706, 337707, 337708, 337722, 337723, 337724, 337725, 337739, 337740, 
		337741, 337742, 337755, 337756, 337757, 337758, 340663, 340664, 340665, 340666, 340680, 340681, 340682, 340683, 340697, 340698, 340699, 340700, 340713, 340714, 340715, 
		340716, 340717, 340730, 340731, 340732, 340733, 340747, 340748, 340749, 340750, 340764, 340765, 340766, 340767, 340780, 340781, 340782, 340783, 340797, 340798, 340799, 
		340800, 340814, 340815, 340816, 340817, 344373, 344374, 344375, 344376, 344377, 344390, 344391, 344392, 344393, 344407, 344408, 344409, 344410, 344424, 344425, 344426, 
		344427, 344440, 344441, 344442, 344443, 344457, 344458, 344459, 344460, 344474, 344475, 344476, 344477, 344490, 344491, 344492, 344493, 344494, 344507, 344508, 344509, 
		344510, 344524, 344525, 344526, 344527, 347515, 347516, 347517, 347518, 347519, 347532, 347533, 347534, 347535, 347549, 347550, 347551, 347552, 347565, 347566, 347567, 
		347568, 347569, 347582, 347583, 347584, 347585, 347599, 347600, 347601, 347602, 347616, 347617, 347618, 347619, 347632, 347633, 347634, 347635, 347636, 347649, 347650, 
		347651, 347652, 347666, 347667, 347668, 347669, 350644, 350657, 350658, 350659, 350660, 350674, 350675, 350676, 350677, 350691, 350692, 350693, 350694, 350707, 350708, 
		350709, 350710, 350711, 350724, 350725, 350726, 350727, 350741, 350742, 350743, 350744, 350758, 350759, 350760, 350761, 350774, 350775, 350776, 350777, 350791, 350792, 
		350793, 350794, 350808, 350809, 350810, 350811, 353818, 353819, 353833, 353834, 353835, 353836, 353849, 353850, 353851, 353852, 353853, 353866, 353867, 353868, 353869, 
		353883, 353884, 353885, 353886, 353900, 353901, 353902, 353903, 353916, 353917, 353918, 353919, 353933, 353934, 353935, 353936, 353950, 353951, 353952, 353953, 353966, 
		353967, 353968, 353969, 353970, 353983, 353984, 353985, 353986, 356975, 356976, 356977, 356978, 356991, 356992, 356993, 356994, 356995, 357008, 357009, 357010, 357011, 
		357025, 357026, 357027, 357028, 357041, 357042, 357043, 357044, 357045, 357058, 357059, 357060, 357061, 357075, 357076, 357077, 357078, 357092, 357093, 357094, 357095, 
		357108, 357109, 357110, 357111, 357125, 357126, 357127, 357128, 360133, 360134, 360135, 360136, 360150, 360151, 360152, 360153, 360167, 360168, 360169, 360170, 360183, 
		360184, 360185, 360186, 360187, 360200, 360201, 360202, 360203, 360217, 360218, 360219, 360220, 360234, 360235, 360236, 360237, 360250, 360251, 360252, 360253, 360267, 
		360268, 360269, 360270, 360284, 360285, 360286, 360287, 332441, 332442, 332443, 332444, 332457, 332458, 332459, 332460, 332461, 332474, 332475, 332476, 332477, 332491, 
		332492, 332493, 332494, 371197, 371198, 371199, 371200, 371214, 371215, 371216, 371217, 371230, 371231, 371232, 371233, 371234, 371247, 371248, 371249, 371250, 371264, 
		371265, 371266, 371267, 371280, 371281, 371282, 371283, 371284, 371297, 371298, 371299, 371300, 371314, 371315, 371316, 371317, 371331, 371332, 387475, 387476, 387477, 
		387478, 387492, 387493, 387494, 387495, 387508, 387509, 387510, 387511, 389948, 389949, 389950, 389951, 389965, 389966, 389967, 389968, 389982, 389983, 389984, 389985, 
		389998, 389999, 390000, 390001, 390002, 390015, 390016, 390017, 390018, 390032, 390033, 390034, 390035, 390049, 390050, 390051, 390052, 390065, 390066, 390067, 390068, 
		390082, 390083, 390084, 390085, 371333, 371334, 371347, 371348, 371349, 371350, 371351, 381809, 381810, 381811, 381812, 381813, 381826, 381827, 381828, 381829, 381843, 
		381844, 381845, 381846, 384667, 384668, 384669, 384670, 384684, 384685, 384686, 384687, 384701, 384702, 384703, 384704, 384717, 384718, 384719, 384720, 384734, 384735, 
		384736, 384737, 384751, 384752, 384753, 384754, 384767, 384768, 384769, 384770, 384771, 329503, 329505, 329507, 329512, 329514, 329521, 329523, 329530, 329532, 329537, 
		329539, 329546, 329548, 329555, 329557, 329562, 329564, 329571, 329573, 329580, 329582, 329587, 329589, 329596, 329598, 332504, 332506, 332513, 332515, 332520, 332522, 
		332529, 332531, 332538, 332540, 332545, 332547, 332554, 332556, 332563, 332565, 332570, 332572, 332579, 332581, 332588, 332590, 332595, 332597, 332604, 332606, 337595, 
		337602, 337604, 337609, 337611, 337618, 337620, 337627, 337629, 337634, 337636, 337643, 337645, 337652, 337654, 337659, 337661, 337668, 337670, 337677, 337679, 337684, 
		337686, 337693, 337695, 337702, 337704, 337709, 337711, 337718, 337720, 337727, 337729, 337734, 337736, 337738, 337743, 337745, 337752, 337754, 337759, 337761, 337763, 
		340660, 340662, 340667, 340669, 340671, 340676, 340678, 340685, 340687, 340692, 340694, 340696, 340701, 340703, 340710, 340712, 340719, 340721, 340726, 340728, 340735, 
		340737, 340744, 340746, 340751, 340753, 340760, 340762, 340769, 340771, 340776, 340778, 340785, 340787, 340794, 340796, 340801, 340803, 340810, 340812, 340819, 340821, 
		340826, 340828, 344370, 344372, 344379, 344381, 344386, 344388, 344395, 344397, 344404, 344406, 344411, 344413, 344420, 344422, 344429, 344431, 344436, 344438, 344445, 
		344447, 344454, 344456, 344461, 344463, 344470, 344472, 344479, 344481, 344486, 344488, 344495, 344497, 344504, 344506, 344511, 344513, 344520, 344522, 344529, 344531, 
		344536, 347512, 347514, 347521, 347523, 347528, 347530, 347537, 347539, 347546, 347548, 347553, 347555, 347562, 347564, 347571, 347573, 347578, 347580, 347587, 347589, 
		347596, 347598, 347603, 347605, 347612, 347614, 347621, 347623, 347628, 347630, 347637, 347639, 347646, 347648, 347653, 347655, 347662, 347664, 347671, 347673, 347678, 
		347680, 350645, 350647, 350654, 350656, 350661, 350663, 350665, 350670, 350672, 350679, 350681, 350688, 350690, 350695, 350697, 350704, 350706, 350713, 350715, 350720, 
		350722, 350729, 350731, 350738, 350740, 350745, 350747, 350754, 350756, 350763, 350765, 350770, 350772, 350779, 350781, 350788, 350790, 350795, 350797, 350804, 350806, 
		350813, 353821, 353823, 353828, 353830, 353832, 353837, 353839, 353846, 353848, 353855, 353857, 353862, 353864, 353871, 353873, 353880, 353882, 353887, 353889, 353896, 
		353898, 353905, 353907, 353912, 353914, 353921, 353923, 353930, 353932, 353937, 353939, 353946, 353948, 353955, 353957, 353962, 353964, 353971, 353973, 353980, 353982, 
		353987, 356965, 356970, 356972, 356974, 356979, 356981, 356988, 356990, 356997, 356999, 357004, 357006, 357013, 357015, 357022, 357024, 357029, 357031, 357038, 357040, 
		357047, 357049, 357054, 357056, 357063, 357065, 357072, 357074, 357079, 357081, 357088, 357090, 357097, 357099, 357104, 357106, 357113, 357115, 357122, 357124, 357129, 
		357131, 360123, 360130, 360132, 360137, 360139, 360141, 360146, 360148, 360155, 360157, 360164, 360166, 360171, 360173, 360180, 360182, 360189, 360191, 360196, 360198, 
		360205, 360207, 360214, 360216, 360221, 360223, 360230, 360232, 360239, 360241, 360246, 360248, 360255, 360257, 360264, 360266, 360271, 360273, 332440, 332445, 332447, 
		332454, 332456, 332463, 332465, 332470, 332472, 332479, 332481, 332488, 332490, 332495, 332497, 371185, 371187, 371194, 371196, 371201, 371203, 371210, 371212, 371219, 
		371221, 371226, 371228, 371235, 371237, 371244, 371246, 371251, 371253, 371260, 371262, 371269, 371271, 371276, 371278, 371285, 371287, 371294, 371296, 371301, 371303, 
		371305, 371310, 371312, 371319, 371321, 371326, 371328, 371330, 387474, 387479, 387481, 387488, 387490, 387497, 387499, 387504, 387506, 389953, 389955, 389962, 389964, 
		389969, 389971, 389978, 389980, 389987, 389989, 389994, 389996, 390003, 390005, 390012, 390014, 390019, 390021, 390023, 390028, 390030, 390037, 390039, 390044, 390046, 
		390048, 390053, 390055, 390062, 390064, 390069, 390071, 390073, 390078, 390080, 390087, 390089, 360280, 360282, 360289, 360291, 363363, 363365, 363372, 363374, 363381, 
		363383, 363388, 363390, 363397, 363399, 363406, 363408, 363413, 363415, 363422, 363424, 363431, 363433, 363438, 363440, 363447, 363449, 363456, 363458, 363463, 363465, 
		363472, 363474, 363481, 363483, 363488, 363490, 363497, 363499, 363506, 363508, 363513, 363515, 363517, 363522, 363524, 366539, 366541, 366548, 366550, 366555, 366557, 
		366564, 366566, 366573, 366575, 366580, 366582, 366589, 366591, 366598, 366600, 366605, 366607, 366614, 366616, 366623, 366625, 366630, 366632, 366639, 366641, 366648, 
		366650, 366655, 366657, 366664, 366666, 366673, 366675, 366680, 366682, 366684, 366689, 366691, 366698, 366700, 376301, 376308, 376310, 376315, 376317, 376324, 376326, 
		376333, 376335, 376340, 376342, 376349, 376351, 376358, 376360, 376365, 376367, 376374, 376376, 376383, 376385, 376390, 376392, 376394, 376399, 376401, 376408, 376410, 
		376415, 376417, 376419, 376424, 376426, 376433, 376435, 376440, 376442, 376444, 376449, 376451, 376458, 376460, 379057, 379059, 379064, 379066, 379073, 379075, 379082, 
		379084, 379089, 379091, 379093, 379098, 379100, 379107, 379109, 379114, 379116, 379118, 379123, 379125, 379132, 379134, 379141, 379143, 379148, 379150, 379157, 379159, 
		379166, 379168, 379173, 379175, 379182, 379184, 379191, 379193, 379198, 379200, 379207, 379209, 381856, 381858, 381865, 381867, 381872, 381874, 381881, 381883, 381890, 
		381892, 381897, 381899, 381906, 381908, 381915, 381917, 381922, 381924, 381931, 381933, 381940, 381942, 381947, 381949, 381956, 381958, 381965, 371335, 371337, 371344, 
		371346, 371353, 381806, 381808, 381815, 381817, 381822, 381824, 381831, 381833, 381840, 381842, 381847, 381849, 384664, 384666, 384671, 384673, 384675, 384680, 384682, 
		384689, 384691, 384696, 384698, 384700, 384705, 384707, 384714, 384716, 384721, 384723, 384725, 384730, 384732, 384739, 384741, 384748, 384750, 384755, 384757, 384764, 
		384766, 384773, 384775, 384780, 384782, 384789, 384791, 384798, 384800, 384805, 384807, 384814, 387513, 387515, 387522, 387524, 387529, 387531, 387538, 387540, 387547, 
		387549, 387554, 387556, 387563, 387565, 387572, 387574, 387579, 387581, 387588, 387590, 387597, 387599, 387604, 387606, 387608, 387613, 387615, 387622, 387624, 387629, 
		387631, 384759, 384760, 384761, 384762, 384776, 384777, 384778, 384779, 384793, 384794, 384795, 384796, 384809, 384810, 384811, 384812, 387517, 387518, 387519, 387520, 
		387533, 387534, 387535, 387536, 387537, 387550, 387551, 387552, 387553, 387567, 387568, 387569, 387570, 387583, 387584, 387585, 387586, 387587, 387600, 387601, 387602, 
		387603, 387617, 387618, 387619, 387620, 363367, 363368, 363369, 363370, 363384, 363385, 363386, 363387, 363401, 363402, 363403, 363404, 363417, 363418, 363419, 363420, 
		363434, 363435, 363436, 363437, 363451, 363452, 363453, 363454, 363467, 363468, 363469, 363470, 363471, 363484, 363485, 363486, 363487, 363501, 363502, 363503, 363504, 
		363518, 363519, 363520, 363521, 366543, 366544, 366545, 366546, 366559, 366560, 366561, 366562, 366576, 366577, 366578, 366579, 366593, 366594, 366595, 366596, 366609, 
		366610, 366611, 366612, 366613, 366626, 366627, 366628, 366629, 366643, 366644, 366645, 366646, 366659, 366660, 366661, 366662, 366663, 366676, 366677, 366678, 366679, 
		366693, 366694, 366695, 366696, 376303, 376304, 376305, 376306, 376319, 376320, 376321, 376322, 376336, 376337, 376338, 376339, 376353, 376354, 376355, 376356, 376369, 
		376370, 376371, 376372, 376373, 376386, 376387, 376388, 376389, 376403, 376404, 376405, 376406, 376420, 376421, 376422, 376423, 376436, 376437, 376438, 376439, 376453, 
		376454, 376455, 376456, 379060, 379061, 379062, 379063, 379077, 379078, 379079, 379080, 379094, 379095, 379096, 379097, 379110, 379111, 379112, 379113, 379127, 379128, 
		379129, 379130, 379144, 379145, 379146, 379147, 379160, 379161, 379162, 379163, 379164, 379177, 379178, 379179, 379180, 379194, 379195, 379196, 379197, 379211, 379212, 
		379213, 379214, 381851, 381852, 381853, 381854, 381868, 381869, 381870, 381871, 381885, 381886, 381887, 381888, 381901, 381902, 381903, 381904, 381918, 381919, 381920, 
		381921, 381935, 381936, 381937, 381938, 381951, 381952, 381953, 381954, 381955, 391545, 391530, 384784, 384785, 384786, 384787, 384801, 384802, 384803, 384804, 387525, 
		387526, 387527, 387528, 387542, 387543, 387544, 387545, 387558, 387559, 387560, 387561, 387562, 387575, 387576, 387577, 387578, 387592, 387593, 387594, 387595, 387609, 
		387610, 387611, 387612, 387625, 387626, 387627, 387628, 363359, 363360, 363361, 363362, 363375, 363376, 363377, 363378, 363379, 363392, 363393, 363394, 363395, 363409, 
		363410, 363411, 363412, 363426, 363427, 363428, 363429, 363442, 363443, 363444, 363445, 363446, 363459, 363460, 363461, 363462, 363476, 363477, 363478, 363479, 363492, 
		363493, 363494, 363495, 363496, 363509, 363510, 363511, 363512, 363526, 363527, 363528, 363529, 366534, 366535, 366536, 366537, 366551, 366552, 366553, 366554, 366568, 
		366569, 366570, 366571, 366584, 366585, 366586, 366587, 366601, 366602, 366603, 366604, 366618, 366619, 366620, 366621, 366634, 366635, 366636, 366637, 366638, 366651, 
		366652, 366653, 366654, 366668, 366669, 366670, 366671, 366685, 366686, 366687, 366688, 366701, 366702, 366703, 376311, 376312, 376313, 376314, 376328, 376329, 376330, 
		376331, 376344, 376345, 376346, 376347, 376348, 376361, 376362, 376363, 376364, 376378, 376379, 376380, 376381, 376395, 376396, 376397, 376398, 376411, 376412, 376413, 
		376414, 376428, 376429, 376430, 376431, 376445, 376446, 376447, 376448, 376461, 376462, 376463, 376464, 376465, 379052, 379053, 379054, 379055, 379068, 379069, 379070, 
		379071, 379072, 379085, 379086, 379087, 379088, 379102, 379103, 379104, 379105, 379119, 379120, 379121, 379122, 379135, 379136, 379137, 379138, 379139, 379152, 379153, 
		379154, 379155, 379169, 379170, 379171, 379172, 379185, 379186, 379187, 379188, 379189, 379202, 379203, 379204, 379205, 381859, 381860, 381861, 381862, 381863, 381876, 
		381877, 381878, 381879, 381893, 381894, 381895, 381896, 381910, 381911, 381912, 381913, 381926, 381927, 381928, 381929, 381930, 381943, 381944, 381945, 381946, 381960, 
		381961, 381962, 381963, 390938, 384758, 384763, 384765, 384772, 384774, 384781, 384783, 384788, 384790, 384792, 384797, 384799, 384806, 384808, 384813, 384815, 387514, 
		387516, 387521, 387523, 387530, 387532, 387539, 387541, 387546, 387548, 387555, 387557, 387564, 387566, 387571, 387573, 387580, 387582, 387589, 387591, 387596, 387598, 
		387605, 387607, 387614, 387616, 387621, 387623, 387630, 363364, 363366, 363371, 363373, 363380, 363382, 363389, 363391, 363396, 363398, 363400, 363405, 363407, 363414, 
		363416, 363421, 363423, 363425, 363430, 363432, 363439, 363441, 363448, 363450, 363455, 363457, 363464, 363466, 363473, 363475, 363480, 363482, 363489, 363491, 363498, 
		363500, 363505, 363507, 363514, 363516, 363523, 363525, 366533, 366538, 366540, 366542, 366547, 366549, 366556, 366558, 366563, 366565, 366567, 366572, 366574, 366581, 
		366583, 366588, 366590, 366592, 366597, 366599, 366606, 366608, 366615, 366617, 366622, 366624, 366631, 366633, 366640, 366642, 366647, 366649, 366656, 366658, 366665, 
		366667, 366672, 366674, 366681, 366683, 366690, 366692, 366697, 366699, 376300, 376302, 376307, 376309, 376316, 376318, 376323, 376325, 376327, 376332, 376334, 376341, 
		376343, 376350, 376352, 376357, 376359, 376366, 376368, 376375, 376377, 376382, 376384, 376391, 376393, 376400, 376402, 376407, 376409, 376416, 376418, 376425, 376427, 
		376432, 376434, 376441, 376443, 376450, 376452, 376457, 376459, 379051, 379056, 379058, 379065, 379067, 379074, 379076, 379081, 379083, 379090, 379092, 379099, 379101, 
		379106, 379108, 379115, 379117, 379124, 379126, 379131, 379133, 379140, 379142, 379149, 379151, 379156, 379158, 379165, 379167, 379174, 379176, 379181, 379183, 379190, 
		379192, 379199, 379201, 379206, 379208, 379210, 381850, 381855, 381857, 381864, 381866, 381873, 381875, 381880, 381882, 381884, 381889, 381891, 381898, 381900, 381905, 
		381907, 381909, 381914, 381916, 381923, 381925, 381932, 381934, 381939, 381941, 381948, 381950, 381957, 381959, 381964, 381966
	)


 Query Plan

 Operators

 Query Plan – Constant Scan

 

 Query Plan – Sort

 

 Query Plan – Merge Join

 

 

Explanation

  1. Constant Scan
    • Description :- Scan an internal table of constants
    • Actual Number of Rows :-19381
    • Estimated Numbers of Rows :- 19381
    • Estimated CPU Cost :- 0.0193812 (0%)
    • Estimated Subtree Cost :- 0.0193812 (0%)
    • Parallel :- False
  2. Sort
    • Description :- Sort the input
    • Actual Number of Rows :-19381
    • Estimated Numbers of Rows :- 19381
    • Estimated CPU Cost :-1.26708
    • Estimated I/O Cost :- 0.0112613
    • Estimated Operator Cost :- 1.2783488 (18%)
    • Estimated Subtree Cost :- 1.29773
    • Logical Operation :- Sort
    • Parallel :- False
  3. Clustered Index Scan
    • Actual Number of Rows :- 391546
    • Estimated Number of Rows :- 1000000
    • Estimated CPU Cost :-1.10016
    • Estimated I/O Cost :- 2.48016
    • Estimated SubTree Cost :- 3.58032
    • Logical Operator :- Clustered Index Scan
    • Number of Rows Read :- 391546
    • Physical Operation :- Clustered Index Scan
  4. Merge Join
    • Actual Number of Rows :- 19381
    • Estimated Number of Rows :- 19381
    • Estimated CPU Cost :- 2.14824
    • Estimated I/O Cost :- 0
    • Estimated Operator Cost :- 2.14824 (31%)
    • Estimated SubTree Cost :- 7.02629
    • Logical Operator :-Inner Join
    • Parallel:- False
    • Physical Operation :- Merge Join

 

In Clause – 65 Values

If we reduce the number of values to 65, we get a different Query Plan

 Query


SELECT 
        [Extent1].[Number]AS [Id]  -- 65 Values
		FROM [master].[dbo].[Numbers] AS [Extent1]
		WHERE [Extent1].[Number] IN
		 (

			  1, 2, 3, 4, 5, 6, 7, 8, 9, 10
			, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20
			, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30
			, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40
			, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50
			, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60
			, 61, 62, 63, 64, 65
		 ) 


Query Plan

 

Query Plan – Operators

Operator – Constant Scan

Explanation
  1. Actual Number of Rows :- 65
  2. Estimated CPU Cost :- 0.0000652
  3. Estimated Operator Cost :- 0.0000652
  4. Estimated Subtree Cost :- 0.0000652
  5. Logical Operator :- Constant Scan

 

Operator – Clustered Index Seek

 

Explanation
  1. Actual Number of Rows :- 65
  2. Defined Values :- [master].[dbo].[Numbers].Number
  3. Estimated CPU Cost :- 0.0001581
  4. Estimated IO Cost :- 0.003125
  5. Estimated Number of Executions :- 65
  6. Estimated Operator Cost :- 0.0134015 (98%)
  7. Estimated Subtree Cost :- 0.0134015
  8. Logical Operation :- Clustered Index Seek
  9. Number of Executions :- 65
  10. Number of Rows Read :- 65

 

Operator – Nested Loops ( Inner Join )

 

Explanation
  1. Actual Number of Rows :- 65
  2. Estimated CPU Cost :- 0.0002717
  3. Estimated IO Cost :- 0.003125
  4. Estimated Number of Rows :- 65
  5. Estimated Operator Cost :- 0.0002717 (2%)
  6. Estimated Subtree Cost :- 0.0137384
  7. Logical Operation :- Inner Join
  8. Physical Operation :-Nested Loops
  9. WithUnorderedPrefetch :- True

 

In Clause – 64 Values

If we reduce the number of values to 64, we yet get a different Query Plan

 Query


SELECT 
        [Extent1].[Number]AS [Id]  -- 65 Values
		FROM [master].[dbo].[Numbers] AS [Extent1]
		WHERE [Extent1].[Number] IN
		 (

			  1, 2, 3, 4, 5, 6, 7, 8, 9, 10
			, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20
			, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30
			, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40
			, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50
			, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60
			, 61, 62, 63, 64
		 ) 


Query Plan

Query Plan – Operators

Operator – Clustered Index Seek

 

Explanation
  1. Actual Number of Rows :- 64
  2. Estimated CPU Cost :- 0.0002274
  3. Estimated IO Cost :- 0.003125
  4. Estimated Number of Rows :- 64
  5. Estimated Operator Cost :- 0.0002717 (2%)
  6. Estimated Subtree Cost :- 0.0033524
  7. Logical Operation :- Clustered Index Seek
  8. Physical Operation :- Clustered Index Seek
  9. Number of Reads :- 64
  10. Ordered :- True

Argument List

  1. Argument List < Less than 65
    • Operation
      • Clustered Index Seek
        • The column we are checking against is the one that our Clustered Index is defined on
        • Rows & Reads
          • Actual Number of Rows
          • Estimated Number of Rows
          • Number of Reads
  2. Argument List Equal to 65
    • Operation
      • Constant Scan
        • Description :- Scan an internal table of constants
        • Cost
          • Estimated CPU Cost :- 0.0000652
          • Estimated IO Cost :- 0
          • Estimated Subtree Cost :- 0.0000652
        • Physical Operation :- Constant Scan
        • Values :- List of Values
      • Nested Loops
        • Nested Loop Join against the Table
  3. Argument List < Large  ( in our case 19381 )
    • Operation
      • Constant Scan
        • Description :- Scan an internal table of constants
        • Rows
          • Actual Number of Rows :- 19381
          • Estimated Number of Rows :- 19381
        •  Cost
          • Estimated CPU Cost :- 0.0193812
          • Estimated IO Cost :- 0
          • Estimated Subtree Cost :- 0.0193812
        • Physical Operation :- Constant Scan
        • Values :- List of Values
    • Sort
      • Rows
        • Actual Number of Rows :- 19381
        • Estimated Number of Rows :- 19381
      •  Cost
        • Estimated CPU Cost :- 1.26708
        • Estimated IO Cost :- 0.0112613
        • Estimated Subtree Cost :- 1.2783488 (18%)
    • Merge Join
      • Match rows from two suitably sorted input tables exploiting their sort
      • Rows
        • Actual Number of Rows :- 19381
        • Estimated Number of Rows :- 19381
      •  Cost
        • Estimated CPU Cost :- 2.14824
        • Estimated IO Cost :- 0
        • Estimated Subtree Cost :- 2.14824 (31%)

 

Statistics IO

Image

Tabulate

Table Hugh # of Values Number of Values = 65 Number of Values = 64
 Numbers  Scan count 1, logical reads 1324  Scan count 0, logical reads 208  Scan count 64, logical reads 192
 worktable  Scan count 0, logical reads 0

 

 

 

Commentary

LBushkin

StackOverflow – Is SQL IN bad for performance?
Link

Steve Broberg

Technical Summary

Join Type

When the number of values is less than 65, and an appropriate index exists, that index is employed.

When number of values is at 65, values from the In Clause is placed in an Internal Table, and joined using a Nested Loop Join.

When a huge number of values are passed in the “In Clause“, an Internal table is used and placed in a worktable.  The type of Join is the more expensive “Merge Join”.  As the merge join expects sorted sources, unsorted data is first sorted.

 

Worktable

We see that when the number of values in the where clause is high, the SQL Server Engine creates a worktable.

 

Community

There is a lot of work and experience shared over this topic.

And, I for one continue to benefit from not just the topic, but sensing their diligence, yet free spirit in sharing.

 

Dedicated

Dedicated to LBushkin.