2020-03-30 21:32:04 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								/ * *  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @license 
							 
						 
					
						
							
								
									
										
										
										
											2020-05-19 12:08:49 -07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 *  Copyright  Google  LLC  All  Rights  Reserved . 
							 
						 
					
						
							
								
									
										
										
										
											2020-03-30 21:32:04 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Use  of  this  source  code  is  governed  by  an  MIT - style  license  that  can  be 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  found  in  the  LICENSE  file  at  https : //angular.io/license
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * / 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								import  { absoluteFrom ,  getFileSystem }  from  '@angular/compiler-cli/src/ngtsc/file_system' ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								import  { runInEachFileSystem }  from  '../../../src/ngtsc/file_system/testing' ;  
						 
					
						
							
								
									
										
										
										
											2020-05-14 20:06:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								import  { MockLogger }  from  '../../../src/ngtsc/logging/testing' ;  
						 
					
						
							
								
									
										
										
										
											2020-03-30 21:32:04 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								import  { getBasePaths }  from  '../../src/entry_point_finder/utils' ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								runInEachFileSystem ( ( )  = >  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  let  _ : typeof  absoluteFrom ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  let  logger : MockLogger ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  beforeEach ( ( )  = >  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    _  =  absoluteFrom ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    logger  =  new  MockLogger ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  } ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  describe ( 'getBasePaths' ,  ( )  = >  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    it ( 'should just return the `sourceDirectory if there are no `pathMappings' ,  ( )  = >  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      const  sourceDirectory  =  _ ( '/path/to/project/node_modules' ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      const  basePaths  =  getBasePaths ( logger ,  sourceDirectory ,  undefined ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      expect ( basePaths ) . toEqual ( [ sourceDirectory ] ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-05-01 15:13:28 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    it ( 'should use each path mapping prefix' ,  ( )  = >  { 
							 
						 
					
						
							
								
									
										
										
										
											2020-03-30 21:32:04 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								      const  projectDirectory  =  _ ( '/path/to/project' ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      const  fs  =  getFileSystem ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      fs . ensureDir ( fs . resolve ( projectDirectory ,  'dist-1' ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      fs . ensureDir ( fs . resolve ( projectDirectory ,  'sub-folder/dist-2' ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      fs . ensureDir ( fs . resolve ( projectDirectory ,  'libs' ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      const  sourceDirectory  =  _ ( '/path/to/project/node_modules' ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      const  pathMappings  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        baseUrl : projectDirectory , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        paths :  { '@dist' :  [ 'dist-1' ,  'sub-folder/dist-2' ] ,  '@lib/*' :  [ 'libs/*' ] } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      const  basePaths  =  getBasePaths ( logger ,  sourceDirectory ,  pathMappings ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      expect ( basePaths ) . toEqual ( [ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        sourceDirectory , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        fs . resolve ( projectDirectory ,  'dist-1' ) , 
							 
						 
					
						
							
								
									
										
										
										
											2020-05-01 15:13:28 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        fs . resolve ( projectDirectory ,  'libs' ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        fs . resolve ( projectDirectory ,  'sub-folder/dist-2' ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      ] ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    it ( 'should not be confused by folders that have the same starting string' ,  ( )  = >  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      const  projectDirectory  =  _ ( '/path/to/project' ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      const  fs  =  getFileSystem ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      fs . ensureDir ( fs . resolve ( projectDirectory ,  'a/b' ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      fs . ensureDir ( fs . resolve ( projectDirectory ,  'a/b-2' ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      fs . ensureDir ( fs . resolve ( projectDirectory ,  'a/b/c' ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      const  sourceDirectory  =  _ ( '/path/to/project/node_modules' ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      const  pathMappings  =  { baseUrl : projectDirectory ,  paths :  { '@dist' :  [ 'a/b' ,  'a/b-2' ,  'a/b/c' ] } } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      const  basePaths  =  getBasePaths ( logger ,  sourceDirectory ,  pathMappings ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      expect ( basePaths ) . toEqual ( [ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        sourceDirectory , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        fs . resolve ( projectDirectory ,  'a/b' ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        fs . resolve ( projectDirectory ,  'a/b-2' ) , 
							 
						 
					
						
							
								
									
										
										
										
											2020-03-30 21:32:04 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								      ] ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    it ( 'should discard paths that are already contained by another path' ,  ( )  = >  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      const  projectDirectory  =  _ ( '/path/to/project' ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      const  fs  =  getFileSystem ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      fs . ensureDir ( fs . resolve ( projectDirectory ,  'dist-1' ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      fs . ensureDir ( fs . resolve ( projectDirectory ,  'dist-1/sub-folder' ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      fs . ensureDir ( fs . resolve ( projectDirectory ,  'node_modules/libs' ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      const  sourceDirectory  =  _ ( '/path/to/project/node_modules' ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      const  pathMappings  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        baseUrl : projectDirectory , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        paths :  { '@dist' :  [ 'dist-1' ,  'dist-1/sub-folder' ] ,  '@lib/*' :  [ 'node_modules/libs/*' ] } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      const  basePaths  =  getBasePaths ( logger ,  sourceDirectory ,  pathMappings ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      expect ( basePaths ) . toEqual ( [ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        sourceDirectory , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        fs . resolve ( projectDirectory ,  'dist-1' ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      ] ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    it ( 'should use the containing directory of path mapped files' ,  ( )  = >  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      const  projectDirectory  =  _ ( '/path/to/project' ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      const  fs  =  getFileSystem ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      fs . ensureDir ( fs . resolve ( projectDirectory ,  'dist-1' ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      fs . writeFile ( fs . resolve ( projectDirectory ,  'dist-1/file.js' ) ,  'dummy content' ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      const  sourceDirectory  =  _ ( '/path/to/project/node_modules' ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      const  pathMappings  =  { baseUrl : projectDirectory ,  paths :  { '@dist' :  [ 'dist-1/file.js' ] } } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      const  basePaths  =  getBasePaths ( logger ,  sourceDirectory ,  pathMappings ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      expect ( basePaths ) . toEqual ( [ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        sourceDirectory , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        fs . resolve ( projectDirectory ,  'dist-1' ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      ] ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    it ( 'should always include the `sourceDirectory` if it is a node_modules directory in the returned basePaths, even if it is contained by another basePath' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								       ( )  = >  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         const  projectDirectory  =  _ ( '/path/to/project' ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         const  sourceDirectory  =  _ ( '/path/to/project/node_modules' ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         const  fs  =  getFileSystem ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         fs . ensureDir ( fs . resolve ( sourceDirectory ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         const  pathMappings  =  { baseUrl : projectDirectory ,  paths :  { '*' :  [ './*' ] } } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         const  basePaths  =  getBasePaths ( logger ,  sourceDirectory ,  pathMappings ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         expect ( basePaths ) . toEqual ( [ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								           sourceDirectory , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								           projectDirectory , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         ] ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								       } ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    it ( 'should log a warning if baseUrl is the root path' ,  ( )  = >  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      const  fs  =  getFileSystem ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      fs . ensureDir ( fs . resolve ( '/dist' ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      const  sourceDirectory  =  _ ( '/path/to/project/node_modules' ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      const  pathMappings  =  { baseUrl : _ ( '/' ) ,  paths :  { '@dist' :  [ 'dist' ] } } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      const  basePaths  =  getBasePaths ( logger ,  sourceDirectory ,  pathMappings ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      expect ( basePaths ) . toEqual ( [ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        fs . resolve ( '/dist' ) , 
							 
						 
					
						
							
								
									
										
										
										
											2020-05-01 15:13:28 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        sourceDirectory , 
							 
						 
					
						
							
								
									
										
										
										
											2020-03-30 21:32:04 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								      ] ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      expect ( logger . logs . warn ) . toEqual ( [ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        [ ` The provided pathMappings baseUrl is the root path  ${ _ ( '/' ) } . \ n `  + 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         ` This is likely to mess up how ngcc finds entry-points and is probably not correct. \ n `  + 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         ` Please check your path mappings configuration such as in the tsconfig.json file. ` ] 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      ] ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-04-08 19:34:19 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    it ( 'should discard basePaths that do not exists and log a debug message' ,  ( )  = >  { 
							 
						 
					
						
							
								
									
										
										
										
											2020-03-30 21:32:04 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								      const  projectDirectory  =  _ ( '/path/to/project' ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      const  fs  =  getFileSystem ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      fs . ensureDir ( fs . resolve ( projectDirectory ,  'dist-1' ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      fs . ensureDir ( fs . resolve ( projectDirectory ,  'sub-folder' ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      const  sourceDirectory  =  _ ( '/path/to/project/node_modules' ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      const  pathMappings  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        baseUrl : projectDirectory , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        paths :  { '@dist' :  [ 'dist-1' ,  'sub-folder/dist-2' ] ,  '@lib/*' :  [ 'libs/*' ] } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      const  basePaths  =  getBasePaths ( logger ,  sourceDirectory ,  pathMappings ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      expect ( basePaths ) . toEqual ( [ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        sourceDirectory , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        fs . resolve ( projectDirectory ,  'dist-1' ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      ] ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-04-08 19:34:19 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								      expect ( logger . logs . debug ) . toEqual ( [ 
							 
						 
					
						
							
								
									
										
										
										
											2020-04-06 08:30:08 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        [ ` The basePath " ${ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								             fs . resolve ( projectDirectory ,  'sub-folder/dist-2' ) } " computed from baseUrl " $ { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								             projectDirectory } " and path mapping " sub - folder / dist - 2 "  does  not  exist  in  the  file - system . \ n `  +
 
							 
						 
					
						
							
								
									
										
										
										
											2020-03-30 21:32:04 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								         ` It will not be scanned for entry-points. ` ] , 
							 
						 
					
						
							
								
									
										
										
										
											2020-04-06 08:30:08 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        [ ` The basePath " ${ fs . resolve ( projectDirectory ,  'libs' ) } " computed from baseUrl " ${ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								             projectDirectory } " and path mapping " libs / * "  does  not  exist  in  the  file - system . \ n `  +
 
							 
						 
					
						
							
								
									
										
										
										
											2020-03-30 21:32:04 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								         ` It will not be scanned for entry-points. ` ] , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      ] ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  } ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2020-05-19 12:08:49 -07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								} ) ;