M Yu Tikhomirov

Yu M Spalek

B I Pivonenkov

E A Zhelonkin

L G Arkharova

A L Kolesnikov

Small-Size Silicon Accelerometer with a Thermally Compensated Signal in the Temperature Range Of 0÷+200℃

We describe an integrated single-component inertial accelerometer for low-frequency (0 ÷ 300 Hz) accelerations (0 ± 100 . . . 0 ± 300) M/c 2 with overall dimensions less than 10 mm×8 mm×3 mm with piezoresistive mechanical transducer. The principle of operation of the device and its design are well known. We propose a new version of the design, which improves some metrological and operational characteristics of the device. The obtained technical characteristics meet the requirements for the elements of control systems, control, regulation of research and design-improvement tests of mechanical engineering products. Accelerometers are characterized by the basic error less than 5 % and the additional temperature error from 0.06 %/ • C to 0.13 %/ • C. Temperature operating range (0÷200) • C.

The principle of operation of the device and its design (inertial element performing double differentiation [elastic] displacement and strain gauge resistance element made in the form of monolithic silicon monocrystal) are well known 1 2 3 . The new version of the design, improves the metrological and operational characteristics of the well-known devices.

The accelerometer consists of (Fig. 1 ) a measurement module (IP T M ) mounted on a thermal expansion matched body extension BP α made of Kovar alloy 29NK. Electrical connection to the subsequent device of informationmeasuring system is provided by ribbon cable (FC) on the basis of polyamide or by high-temperature heat-resistant anti-vibration cable of AVKTS type TU 16-785.130-80. Structural elements (DE) are made of monocrystalline silicon wafers with orientation in plane (100). The elastic element (EE) (see Fig. 1) consists of 28 cantilever beams of length L, width d i and thickness H ee , rigidly mounted on a ring support. The resistive elements R ch (or P CH) of the bridge strain gauge circuit (M C) are mounted on each of the two beams D 1 . The remaining beams D i , the total number of beams n = 26, serve to adjust the amplitude characteristics of the conversion (Fig. 1). The silicon covers (SC) 1 act as thermocompensation circuits T CC and dampers of vibrations of inertial and elastic elements.

New technological versions of the device seek to expand the operating temperature range, compensate for changes in the sensitivity of the accelerometer caused by temperature changes, achieve the required level of attenuation and maximum mechanical strength, develop a method for adjusting the amplitude conversion characteristics sufficient to correct for the scattering parameters of mass-produced devices, and reduce the size and weight of the device.

The first part of the design, on extending the operating temperature range, relates to the electrical isolation of M C using a p -n junction from an elastic element in the temperature range up to +200 • C, while maintaining a satisfactory conversion characteristic. In this formulation, the M C isolation failure criterion is given as a 1% change in sensitivity K mc due to shunting of the output resistance by the elastic element 4 .

The M C regions are plotted for 2 options:

• diffusion boron-alloyed layers with average resistivities P CH (where one would expect in the range (0 ÷ +200) • C "autocompensation" for temperature changes in sensitivity when feeding M C with stabilized current) 0.035 Ω • cm

• for ion-alloyed layers with 2 • 10 15 cm -2 ligation dose (R s = 80 Ω/□) Fig. 2 shows the behavior of p -n junction reverse current temperature as a function of the ratio of perimeter to transition surface area: K p-n = (800 ÷ 1400) cm B) K p-n = (500 ÷ 700) cm; C) K p-n = 500 cm (the M C configuration is represented as a circle with inscribed channels). Regions A, B and C are constant impurity concentration layers with a surface concentration value of 5 • 10 18 cm -3 . The impurity concentration in these layers is optimal in terms of charge carrier dissipation and resistance nonlinearity as a function of temperature in the range of -60 to +200 • C.

At positive temperatures, diffusion doped layers with surface concentrations (1 ÷ 5) • 10 18 cm -3 are also satisfactory in terms of insulating properties and temperature behavior of resistivity. Above 150 • C, when the isolation resistance p-n-transition is determined by the diffusion component of the reverse current, the temperature behavior of the reverse current density in ion-doped or diffusiondoped layers is more or less the same.

The second part is to compensate for the strong influence of temperature on the bridge sensitivity without degrading the M C isolation. At temperatures up to +200 • C, two forms of compensation are chosen. One is compensation by a T CC circuit in the power supply circuit located on the separate DE. The second option is to compensate for the temperature drift of the current sensitivity of the bridge by the so-called "autocompensation".

The M C ion-doped layers considered in this study are characterized in the range from 0 to +200 • C by the following relations: Over a wide temperature range, air damping is preferred. For small gauges, damping must be provided in the narrow gaps between the planes of the inertial element and the inner surfaces of the SC (cover) housing parts. In this accelerometer, silicon caps with internal cavities were used. For a particular design, the damping coefficient θ * , which characterizes the level of damping, is related to the geometric size of the gap w = (20 ÷ 80) • 10 -6 m by the empirical relationship

θ * = 2 • 10 -11 (H ee -11 • 10 -6 ) (w -16 • 10 -6 ) (7)
Where H ee = (15 ÷ 25) • 10 -6 m is the thickness of the elastic element.

The mechanical strength of the deformable component of the M SS sensor element is determined by two factors. The first factor is the reduction of the geometric dimensions to values corresponding to 5 . The second factor is the treatment of the silicon surface by chemical etching during fabrication of the elastic element. The strength of an elastic element of this configuration and with this surface treatment is on average 25 times higher than the working strain level

ε x = 4 • 10 -4 .
The sensitivity is adjusted by fracturing the bands with the laser. With this method, the sensitivity to the mechanical input parameter and the sensitivity to temperature changes can be adjusted independently. The method is also convenient in that, after adjustment, the elastic elements of the entire series of accelerometers for a certain input nominal are characterized by the same amplitude-frequency responses.

The sensitivity to acceleration components acting in a plane normal to the measured component is due to the M SS shift in the center of mass of the inertial element relative to the median plate planes of the elastic element (see Fig. 1 ). This sensitivity can be as high as 15% relative to the measured component. A partial compensation for this error is obtained by mounting the MM on a wedge-shaped carrier, with the angle α between the upper and lower surfaces being equal to the angle between the surface of the elastic element and the plane passing through the centers of the inertial element C i and the plates C p

The error due to these acceleration components is reduced to 3%. The carrier also acts as a mechanical separator for the silicon IP T M , protecting it from stresses caused by mounting the accelerometer and deformation of the object.

Specifications for the small silicon accelerometer are as follows: dimensions = 10 × 8 × 3 mm; weight = 1.5 gramm; acceleration ranges = 0 ± 15 g, 0 ± 30 g; sensitivity = 6.6 mV /g and 3.3 mV /g; transverse sensitivity 3%; operating frequency range = 0÷150 and 0÷300 Hz; basic error ⩽ 3%; operating temperature range = -60 to +200 • C; temperature compensation range = 0 ÷ +200 • C; additional temperature error components: temperature drift of initial output signal < 0.04%/ • C, temperature sensitivity drift < 0.04%/ • C; supply voltage = 10 V ; circuit input resistance = 800 ÷ 1000Ω.

The obtained technical characteristics meet the requirements for the ele-ments of control systems, control, regulation of research and design-improvement tests of mechanical engineering products.

those doped by diffusion are described as follows:

where ε x is the uniaxial deformation M C; R in is the input resistance M C; R in0 is the input resistance at temperature T 0 = 423 K.

To compensate for the change in the sensitivity of the accelerometer, we used a circuit (see Fig. 1 ) built as a thermosensitive bridge (with two arms with positive T CR and two arms with negative T CR) connected to M C in the diagonal. The shoulders of the thermosensitive circuit are characterized by the following relationships:

The surface resistance of diffusion-alloyed layers is 300 Ω/□, so they can be made with a small p-n junction area.

A resistor circuit with these characteristics reduces the bridge sensitivity K mc compared to an uncompensated circuit by a factor of 1.5 for M C with ion-doped resistors and 1.8 for diffusion-doped resistors. The error of the T CC accelerometers for both types of resistors between 0 and +200°C is 0.015%/°C.

Self-compensation of the IP T M powered with stabilized current is achieved at temperatures (0 ÷ +200) • C. Figure 2 shows the temperature behavior of the error parameter γ when compensated by the bridge thermoresistors T CC (curve 2), self-compensation with ion-doped piezo-cut channels (P CH) (curve 3) and diffusion channels (curve 1). As can be seen from Fig. 2, with selfcompensation, the accelerometer error for IP T M of both types does not exceed 0.04%/ • C.


DCC Ronie Salgado Isclab

Inspecting Block Closures To Generate Shaders for GPU Execution

Programming GPUs requires the usage of specialized programming languages whose programming model is radically different to the programming model used by traditional CPU based programming languages. This mismatch makes developing, testing and debugging a program that uses the CPU and the GPU a difficult problem.

We present a technique for automatically translating a standard Smalltalk block closure encapsulating code and captured state. Our technique allows using standard Smalltalk code as a DSL for GPU programming. This allows using the standard Smalltalk live programming tools for debugging and testing a GPU based program. For testing our technique we did two case studies in the ambit of interactive graphical procedural content generation.

Introduction

GPU Performance Nowadays desktop and laptop computers boast two important processors: a CPU 1 , the processor where the operating system and most of the applications are executed; and a GPU 2 , a processor optimized for graphics rendering tasks, and parallel numerical intensive tasks. The performance of a GPU for parallel tasks can be several times faster than the performance of a CPU [START_REF] Asano | Performance comparison of FPGA, GPU and CPU in image processing[END_REF]. However, not taking into account the architectural differences of a GPU typically leads to slower performance than by using the CPU.

GPU Programming Programming the GPU requires the usage of a specialized API and programming language. There are numerical computing oriented APIs such as OpenCL and CUDA for programming the GPU that cannot be used for realtime rendering. There are also graphics API that can be used for both: real-time endering, and numerical computations. GPU compute and graphics API interoperability is difficult, so in the practice can not be used.

Impedance Mismatch Interactive applications such as video games need to use both, the CPU and the GPU in the same time. These application also need to use the GPU for computation and graphics rendering in the same time, which makes mandatory the usage of a single graphics API. They also need to move data between these two devices with a specific structured data layout. The programming impedance mismatch between these two worlds means that definitions 1 CPU: Central Processing Unit 2 GPU: Graphics Processing Unit of structured data layouts must be duplicated between two different and incompatible programming languages.

GPU Debugging Debugging programs in the GPU is hard because of the lack of proper debugging tools. Doing a printf style of debugging in the GPU is not even possible. The closest thing to a printf style of debugging is to draw a pixel with a specific color. This reason motivates us to use a programming language that runs on both, the CPU and the GPU, with the purpose of using standard CPU debugging tools for debugging a program that is ultimately going to be executed on the GPU.

Smalltalk in the GPU For these reasons we would like to use Smalltalk for programming the GPU. Our hypothesis is that we can at least use some reduced form of Smalltalk for programming the GPU, and obtain a considerable performance improvement without sacrificing the advantages of having a complete live programming IDE. We propose a technique that takes advantage of the reflective object model used by Smalltalk implementations to convert a BlockClosure into a shader function. We chose to use BlockClosures for the following reasons:

• They look a lot like functions.

• They can be used to simulate local methods in a playground. • They encapsulate a captured.

• Many parallel computations can be expressed in a functional way in terms of applying functions in a certain way [START_REF] Dean | MapReduce: simplified data processing on large clusters[END_REF].

Procedural Content Generation For testing our Smalltalk to shader code generator, we conducted two simple case studies related to the topic of procedural graphics content generation:

1. Procedural texture generation (See Section 4.1). 2. Particle system simulation (See Section 4.2).

We chose these two use cases for reasons of simplicity. These are also ideal cases for using live programming techniques because these tasks are normally conducted by technical artists that need to do many iterations for fine tuning numerical parameters. In these two cases we obtained a substantial performance improvement by using the GPU via our code translation technique.

GPU Architecture and Programming Model

GPU Hardware Architecture In terms of hardware, a GPU is composed of multiples processing cores. Each one of these processing cores is a vectorial processor that works in SIMD3 fashion. For example, the cores of the AMD GCN architecture are composed by two ALUs4 [START_REF] Mantor | AMD Radeon™ HD 7970 with graphics core next (GCN) architecture[END_REF][START_REF] Sander | AMD GCN Assembly: Cross-Lane Operations[END_REF][START_REF] Sander | The Art of AMDGCN Assembly: How to Bend the Machine to Your Will[END_REF]: a scalar ALU that is implementing uniform control flow structures such as if branches and while loops; and a vectorial ALU with 64 lanes, each one capable of operating on different data points, but with the same operation in a single instruction simultaneously.

GPU Software Architecture In terms of software, the GPU processes tasks that are submitted by the CPU through in command lists. The command list describes tasks that are executed by one of the two GPU software execution pipeline: the graphics pipeline, and the compute pipeline.

Graphics API GPUs are programmed by using a graphics API. Modern graphics APIs such as, Direct3D 12, Metal and Vulkan make explicit the usage of command lists, command queues and execution pipelines, for communicating and commanding a GPU from the CPU side. The programs that are executed by the GPU cores are called shaders, and they must be programmed with an API specific shader programming language such as GLSL, HLSL Direct3D, or the Metal Shading Language. Vulkan [START_REF]The Vulkan Specification[END_REF] unlike other graphics APIs utilizes Spir-V [START_REF] Kessenich | SPIR-V Specification[END_REF] which is a SSA based compiler generated intermediate representation that can be generated with an official GLSL compiler, or it can generated manually by a custom compiler.

Graphics Pipeline

The graphics pipeline is a pipeline whose input is composed of simple geometrical primitives such as points, lines and triangles. The output of the graphics pipeline is composed by the individual pixels that are rasterized for drawing these geometrical primitives in an image. Individual vertices and pixels are processed in parallel by a shader running on the GPU, on a multi-stage partially programmably graphics pipeline. The graphics pipeline is composed of five programmable stages where shaders can be bound and executed simultaneously:

• Vertex shader: this stage operates on individual vertices. • Tessellation control and evaluation(optional): these two stages can be used for subdiving and refining geometry. • Geometry shader (optional): this stage operates on geometrical groups of vertices, and can generate new geometry.

• Fragment shader: this stage operates on interpolated fragments 5 to compute the color of individual pixels.

The shader programming model for each one of these stages is different. Shaders for these stages share the similarity in terms of providing the convenient illusion of programming parallel threads that operate on individual elements. However, what actually happens is that each SIMD lane of the vectorial processors is operating on an individual element, but the control flow of execution threads that belong to a single work group must be the same. Divergent branches in a work group are computed by taking the true and the false branch for all of the elements. For this reason, shaders must be manually optimized to maximize spatial coherence, and avoid divergent branches inside of a work group. This also means that is impossible to support dynamic message lookup on the GPU without destroying the parallelism.

Compute Pipeline For non graphics oriented parallel tasks there is a compute pipeline for executing compute shaders. Compute shaders work by operating on user defined elements along a logical 3D grid. Compute shaders input and output must be done by explicitly reading and writing from buffers and images defined by the user. The programming model of compute shader allows communicating between threads by exposing partially the underlying hardware architecture. This communication can be done by allocating memory that is shared by the members of a work group, and by using memory and control flow barriers for synchronization.

Smalltalk to Shader Code Translation

For translating Smalltalk code into a shader we rely on doing AST to AST translation. We are doing this with the purpose of reusing the compiler infrastructure for generating Spir-V shaders that is used by Woden Engine [START_REF] Salgado | Woden Engine: A 3D graphics engine written in Pharo[END_REF], a 3D graphics engine written in Pharo. The shader language used by the Woden Engine is called Dastrel [START_REF] Salgado | Dastrel: A Data Stream Language[END_REF]. The compiler for this shader language is implemented completely in Pharo, and it uses a C style syntax.

Programming Environment Constraints

No Dynamic Lookup Unfortunately, due to the strong architecture differences between the CPU and the GPU, it is impossible to execute the full Smalltalk model on a GPU. Dynamic message lookup and dispatch cannot be implemented on the GPU because it destroys the SIMD style of parallelism that is used by GPUs. If we still wanted to perform dynamic message lookup by killing the parallelism, or by using uniform control flow, we still cannot implement it because graphics APIs do not expose function pointers and a mean to call them. The only alternative remaining for implementing polymorphism is through the usage of very large switch statements.

No Arithmetic Traps Another limitation is the impossibility of trapping the GPU on things like integer overflow. Trapping on integer overflow is required for converting a SmallInteger into a LargeInteger in an efficient way automatically. We could still provide support for large integers in the GPU by checking all the arithmetic operations for integer overflow, but there is also the problem of not being able to allocate memory inside the GPU.

Restricting the Object Model These limitations implies that we have to deviate from the Smalltalk object model for code that runs on the GPU. First of all, we need a mechanism for resolve all of the message sends statically. We can do this by using type inference. Another limitation, is that we must accept the behavior of silent integer overflow when running coded on the GPU.

Inspecting Block Closures

An instance of BlockClosure in Pharo contains three fixed instance variables:

1. outerContext: a reference to the captured context. 2. startpc: an index to the first bytecode that is executed by the block closure when activated. 3. numArgs: the number of arguments.

In addition to these fixed instance variables, variables that are captured by the block closure are either: copied directly into a variable slot of the block closure; or they are copied into a vector of temporaries (just an instance of Array) which is stored in the block closure.

Block AST Node All of this data present in a block closure is enough for obtaining the captured variables and their values, and it is also enough for reconstructing the AST node that was used for compiling the block closure. In Pharo, the OpalCompiler [START_REF] Béra | Towards a flexible pharo compiler[END_REF] already implements an extension method in BlockClosure that is called sourceNode, which is exactly what we need for translating a block closure into a shader.

Local Type Inference

Target Language Type Inference Since we are doing AST to AST translation into a custom shader language written in Pharo which already has support for local type inference, we delegate most of the type inference work to our target language. In Dastrel, variables are defined with a let keyword which works in the same way as the C++/11 auto keyword. This way of defining variables relies on the types of literals, and the return type of resolved function calls. This implies that in our Pharo to Dastrel AST to AST translator we only need to define explicit types for: literal value, captured variables, and some special objects.

Literal Values Inferring a type for a literal value AST node is an easy task. Since in the OpalCompiler literal values are represented by just a single AST node with a direct copy of the object repesenting the literal, we can just simply ask this object by sending a message to it asking for its type. In this way, we extended the class Integer to infer a type of Int32, and we extended the class Float to infer a type of Float32.

Captured Variables Variables that are captured by a Block-Closure belong to two categories: variables that are captured by copy which cannot be modified by the block, and variables that are captured by reference which can be modified by the block. Since we are going to run the compiled block closure in a parallel block, mutation of captured variables implies data races which requires special primitives. For this reason, we do not support this kind of variables in our block closure to shader translator. As for the case of copied variables, we can treat them in the same way as literal values because we are translating concrete block closures, and we know the actual constant value that those copied variables have. Special object Some captured objects may want to control their own code translation. For example, a color ramp is a commonly used object for doing procedural content generation. This object can be translated into a shader function that does the color ramp evaluation. Since this color ramp is also a standard Pharo object, it can extend the inspector and allow visualizing color curve (See Figure 1).

AST to AST Translation

Visiting OpalCompiler AST For implementing our AST to AST translator we used the standard way of implementing a visitor around the existent OpalCompiler AST. Our visitor works by reconstructing lexical scoping information for annotating inferred types of variables, or corresponding captured values for copied variables. This annotated lexical scoping information is used when translating variable references. For each visited node in the OpalCompiler AST we construct a set of corresponding node in the Dastrel AST. We also maintain a separate table of type annotations for the constructed nodes in order to resolve how to translate the different message sends.

Source Code Position Information Since we are doing AST to AST translation, we can preserve the original source code line number and column number information on the translated AST. This makes it possible to produce proper compilation error information, and in theory it can be used for generating shader debugging information. Even though Spir-V does support shader debugging information [START_REF] Kessenich | SPIR-V Specification[END_REF], unfortunately there are not standard extensions in Vulkan to create a graphics card manufacturer independent shader debugger.

Variable Definitions In Pharo, variables are declared before they are used. This syntactical structure makes it hard to reuse the local type inference machinery of the target language. For this reason, we defer the generation of the variable definition node until its first assignment. For an example, see Listing 1 for the Pharo version, and see Listing 2 for the corresponding translated code. We cannot do this in the case that the first assignments happens in the two branches of if (See Listing 3 for an Example). In this case we cannot solve this problem automatically, and we require additional typing information, which can be specified via pragmas. Listing 3. Variable definition case that requires explicit type annotations.

Expressions vs Statements An important limitation in our AST to AST translation technique is the impedance mismatch between a language where everything is an expression (Smalltalk), and a language where there is a strong differentiation between expressions and statements (Dastrel, GLSL, HLSL, and the Metal Shading Language). This limitation is also present in AST to text based translation, and it is a common property of all the shader languages. In our case currently we are solving this limitation by introducing additional AST nodes with temporary variables assignments where is required.

Primitive Message Mapping Some message such as ifTrue: are treated as special primitives. We maintain a table mapping the selectors for these message into an object representing how we should translate this messages. In addition to this table, we maintain an additional table with mappings to functions that are already defined in the target language. We use this additional mapping for mathematical functions such as 𝑠𝑖𝑛, 𝑐𝑜𝑠 and 𝑎𝑏𝑠.

Shader Code Generation

Interfacing Code Our technique allows us to translate a Pharo BlockClosure into a function that can be used in a shader. Unfortunately, this translation is not enough for making a complete shader. Shader programming languages have specialized mechanisms for defining data input and output layouts, and how to communicate this data. We could perfectly try to emulate these mechanism in Smalltalk, but doing so would enormously complicate our translation mechanism. Instead, we decided to do all of this plumbing work to generate an actual shader by following these steps:

1. Write all of the shader I/O and communication interfacing code in our target language (Dastrel). 2. Make calls in this shader interfacing code to undefined functions, but with well known names. 3. Parse the shader interface source code file. 4. Inject AST node that are generated with our Pharo BlockClosure translator. These AST nodes define the previously undefined functions with well known names. 5. Pass the resulting AST with the injected node to the shader compiler front-end. 6. Generate the final Spir-V shader code with the shader compiler.

API Specific Code Generation Our shader code generation pipeline is exclusively designed for generating Spir-V based shaders for Vulkan. In theory, this should limit our technique to only being directly usable with Vulkan, excluding other platforms and graphics APIs such as Direct3D and Metal. In the practice, the Khronos Group mantains a tool that is called Spir-V Cross [START_REF]SPIRV-Cross[END_REF], which can decompile a shader generated in Spir-V, and then generate shaders in others languages such as GLSL, HLSL and Metal Shading Language. In fact, we use this very same tool for generating shaders for Metal.

Case Studies

In this section, we apply our code translation technique in two simple problems in the context of procedural content generation for video games and real time graphics. A procedural technique is defined as the usage of algorithms and mathematics for producing content such as textures and models instead of taking direct samples, or constructing it by hand with traditional artistic techniques such as oil painting or clay sculpting [START_REF] David | Texturing & modeling: a procedural approach[END_REF]. We chose this context for the followings reasons:

• This is an ideal context for using the live programming capabilities of Smalltalk. These task are normally performed by technical artists who need to iterate many times and fast. During this iterations artists need to fine tune numerical parameters to produce their intended content. • It is easy to obtain very interesting visual results.

• We can compare the performance between a CPU based execution, and a GPU based execution with the same script in Pharo.

Procedural Texture Generation

Problem Description The problem of procedural texture generation consists on generating the pixels for a set of images that are applied onto a surface for rendering. A texture is an image that maps point in a surface to value that is used to describe different lighting parameters of the surface. Textures can have one, two or three dimensions. Procedural textures can be used in two ways: by applying the algorithm directly on the surface at rendering time; or by rendering into an offline image, that can be stored on disk, and be used on a separate pass for rendering an scene. For this case study, we only are testing the offline texture generation usage because it can be compared with a CPU based implementation purely written in Pharo.

Addressing Texels The offline procedural texture generation problem consists on assigning values to different texels 6present in the texture. Texels can be addressed in two different ways: with un-normalized coordinates measured in pixels; and with normalized UV coordinates with a between 0 and 1, inclusive. The second way of addressing texels has the advantage or being resolution independent, so it is the standard way that is used for applying 2D textures to surface. This means that the problem of a procedural texture generation consists in simply evaluating a function 𝐹 for each texel 𝑇 in the texture:

𝑇 𝑢,𝑣 = 𝐹 (𝑢, 𝑣) with u,v ∈ [0, 1] Since there is no dependency between texels, this problem is an excellent candidate for using the GPU parallelism. Unfortunately, this oversimplification description of the problem ignores the fact that multiples related textures are used for describing all of the lighting properties of a surface.

Material System A modern standard material system which describes how the surface final color is computed under lighting is the PBR 7 material used by Unreal Engine 4 [START_REF] Karis | Real shading in unreal engine 4[END_REF]. We adopted this same material model for Woden Engine, so we need to generate procedural textures suitable to be used with this material model. In the Unreal Engine 4 material model, there are three very important textures:

• Albedo: a texture with the color reflectance of the surface. • Normal: a texture with normal vectors to the surface. These are unit 3D vectors which are perpendicular to the surface. This texture is called a normal map. • AO-Metallic-Roughness: this texture contains three channels describing surface lighting behavior. Ambient occlussion: This describes how much ambient lighting is occluded by the surface geometry (e.g., cavities in a wooden floor). This is encoded as a red color Roughness: how smooth (0.0) or rough (1.0) is the surface. This affect the size of specular highlights. This is encoded as a green color Metallic: is the surface a metal with value 1 or a dielectric (e.g.,, non-metal, insulator) with value 0. This parameter is binary, but values between 0 and 1 can be used to describe small metallic dust particles. This is encoded as a blue color.

Heigh Fields A common way for designing a procedural texture consist in first describing a height field function 𝐻 , with values ranging between 0 and 1, inclusive. The values of these functions describe the height distance of a point against a baseline plane. The height field function can be used to compute the normal texture map via differentiation. The ambient occlusion factor can also be computed by sampling differences on the height field [START_REF] Bavoil | Screen space ambient occlusion[END_REF]. The height field function is also useful by itself, it can be used to improve the geometrical complexity of a rendered scene via displacement mapping [START_REF] Szirmay | Displacement Mapping on the GPU-State of the Art[END_REF], or via parallax mapping [START_REF] Donnelly | Per-pixel displacement mapping with distance functions[END_REF] [START_REF] Mcguire | Steep parallax mapping[END_REF]. Height Field Coloring A common way to generate colored textures consists on applying a color ramp function 𝐶 (See Figure 1) to the evaluated value of a height field. With this technique, it is possible to generate the albedo texture, and the metallic and roughness factors. With this variant, our equation for defining the value of a texel 𝑇 , with a height field function 𝐻 and a color ramp 𝐶 is as follows:

𝑇 𝑢,𝑣 = 𝐶 (𝐹 (𝑢, 𝑣)) with u,v ∈ [0, 1]
This is is the technique that we are using currently in Woden Engine for generating procedural albedo textures. If a color map is not specified by an user, then we fallback to a default gray scale color map 𝐺 (ℎ) = (ℎ, ℎ, ℎ, 1.0). Shader Interface For the case of generating a procedural colored height field we are using the shader communication interface code that is present in Listing 4. This shader interface code requires two functions that we are generating via our BlockClosure translation mechanism: heightFieldFunction, and colorMapFunction. Noise Functions Naturally looking procedural generated textures are archieved by using primitive functions known as noise [7] [START_REF] Gonzalez | The Book of Shaders[END_REF]. There are three important families of noise functions [START_REF] Gonzalez | The Book of Shaders[END_REF]: value noise, gradient noise, and cellular noise. The most popularly known noise function is Perlin noise [START_REF] Perlin | Improving noise[END_REF], which is a particular implementation of gradient noise.

All of these functions work by subdividing the space in a grid of cells, generating random values by hashing the cell coordinate [START_REF] David | Texturing & modeling: a procedural approach[END_REF][10], and the combining these values in a specific way to compute values between the grid points. The differences between these noise functions are the followings:

• Value noise: assign random values to points of the grid. Points in between evaluated by interpolating the values assigned to adjacent grid locations. See Figure 3 part a and e. • Gradient noise: assign random gradient to points of the grid. See Figure 3 part b and f. • Cellular noise: assign a random coordinate for a point inside a cell of the grid. Values are computed the closes-N distance.

Voronoi noise: cellular noise returning the distance to the closest point (𝐹 0 ). See Figure 3 part c andf. Worley noise: cellular noise returning the distance to the second closest point minus the distance to the closest point (𝐹 1 -𝐹 0 ). See Figure 3 part d andh. We implemented our version of these noise functions by adapting an existent implementation [START_REF] Gonzalez | The Book of Shaders[END_REF]. For the coordinate hashing function we used an integer based hash function in order to obtain the same results when evaluating these functions in either the CPU or in the GPU. Listing 6. Script for generating texture that looks like clouds. The corresponding texture is present in Figure 4 Clouds Texture Noise functions can be applied by combining them in different scales with different amplitudes. A common variant of this technique is called fractional brownian motion [START_REF] David | Texturing & modeling: a procedural approach[END_REF], which consists on adding sucessive scales of a same noise function, with increasing frequency and diminishing amplitude. A simple use case of fractional brownian motion is on generating a texture that looks like clouds in the sky. See Listing 6 and Figure 4 for an example. The average (N=10) generation time for this clouds texture with a resolution of 512 x 512 pixels on the CPU is 11820.8 ± 108.8 milliseconds, in comparison with generating this same clouds texture on the GPU with an average time of 145.3 ± 5.6 milliseconds. This is a speedup factor of 81.35 times.

Rock Texture By combining multiple noise functions and using them in different scales we constructed a rock texture in Figure 5. The source code script for generating these complex looking patterns in Listing 7 is composed of simply the summation of two different evaluations of fractional brownian motion: one with worley noise for generating the large cracks between the rocks; and another evaluation with a Listing 7. Script for generating a texture that looks like rocks. This texture is designed to be repeated, so tiled variants of the noise functions are used. The corresponding texture is present in Figure 5 4.2 Particle System Simulation Problem Description A particle system is a physical construct composed of puntual particles without volume. There are typically used in computing graphics to simulate special effects such as smoke, fire or a water fountain. Each one of these puntual particles is defined in a given time by a state Q.

For our purposes of simulating a particle system on the GPU, we define the state Q of a particle as an object encapsulating the following variables:

• Position.

• Velocity.

• Remaining time of life.

• Size of the particle (Used for rendering).

• Color the particle (Used for rendering).

• Random number generation seed. For generating random initial states.

Particle State Evolution

The objective of simulating a particle system in real time consist on computing computing the new state of all the particles for each rendering frame. As a simplification of this process, we only are considering particle systems where the particles are completely independent between them. We also define a function 𝑆 that simulates a new state of a particle as the particle state transition function.

The evolution of the state 𝑄 of a particle 𝑝 can be described with the following equation:

𝑄 𝑝,𝑡 +Δ𝑡 = 𝑆 (𝑄 𝑝 , 𝑝, Δ𝑡)

Like the case with the problem of procedural content generation, this is an ideal problem to exploit the parallelism of the GPU. Example The script in Listing 8 contains the particle state transition function that is used for simulating the particle system of Figure 6. Rendering one frame of the scene present in Figure 6 with 2 * 10 3 particles simulated on the CPU consumes a time of 20 milliseconds, which produces a frame rate drop below the threshold required for sustaining a stable 60 frames per second matching the refresh rate of most computer monitors, and required for having smooth animations. When we executed this same script for simulating particles on the GPU, we managed to simulate 10 5 particles on the GPU and still have a smooth animation at 60 frames per second.

Limitations

Our technique has strong limitations in terms of being a very rough implementation. Currently, a manual mapping between Pharo messages and shader functions is required. Live programming usage of our technique can be severely encumbered because of failure in our type inference system, and bugs in our implementation. Another limitation of our approach, is that it requires decomposing a parallel task for GPU execution in terms function application. This model of computation is known as map-reduce [START_REF] Dean | MapReduce: simplified data processing on large clusters[END_REF] and it is widely used for processing large amounts of data in parallel.

Enabling other models of computation with our translation technique requires introducing somehow the shader specific I/O communication interface at the Smalltalk scripting level. Listing 8. Script with particle state transition function used for simulating the particle system that is present in Figure 6 An important limitation with our benchmarks is that we are comparing CPU based implementations of numerical intensive tasks written in Smalltalk, with highly optimized code running on a specialized parallel hardware designed for numerical intensive tasks. A large percentage of the performance gap between our CPU and GPU implementation can be attributed to the performance penalty incurred by the underlying Smalltalk object model, and the virtual machine. The gap of comparing an implementation in C with our code translated to the GPU should be much smaller.

Related work

Slang [START_REF] Miranda | The cog smalltalk virtual machine[END_REF][8] is a subset of Smalltalk that is used for programming the VM that is used by Squeak and Pharo, and works by generating C code. In theory we could reuse the infrastructure of Slang for generating shader for the GPU, but Slang has some severe design problems. The Slang type system consist on assigning by default the type int to all of the variables, when their actual type is object. This implies that a programmer working on Slang has to be fully aware of how its code is going to be ultimately generated. Fumero et al. [START_REF] Fumero | Just-in-time gpu compilation for interpreted languages with partial evaluation[END_REF] describes a mechanism for automatic translating portions of the of a programming language with dynamic typing by modifying a virtual machine with a tracing JIT. This mechanism is interesting because it is completely transparent to the user, and no modification is required on the original source code for achieving execution on the GPU.

There are several attempts on constructing DSLs [16][15][5] for targeting the GPU. Most of these DSL are implemented through a traditional compiler pipeline, and they generate the textual source code for a shader in their backend.

ShaderToy [START_REF] Quilez | Shadertoy[END_REF] is an online web application for programming fragment shaders in GLSL that are used to render a single texture encompassing a rectangle. The ShaderToy user community is composed by technical artists dedicated to the art of producing procedural content, and the production of demos. Our work on translating block closure is strongly inspired by ShaderToy, and it is an attempt to replicate its functionality inside of Pharo.

Conclusions and future work

With this work we proved the feasibility of executing portions of Pharo code on the GPU, and we also show that we we can obtain a substantial improvement in terms of performance. We applied our technique for translating a block closure to a shader in two different problems: the generation of procedural textures, and the simulation of particle systems. In both cases we obtained a significative improvement of performance. For the case of generating a texture procedurally, we obtained a speedup factor between 14 times and, and 262 times.

In the future, we would like to extend our technique with support for intra shader work group communication. With this support we should be able to expand the class of algorithms running on the GPU that we can implement directly in Smalltalk.

Another future reasearch opportunity that we want to pursue is the usage of an intermediate AST more suitable for translation Smalltalk code. We believe that by using another AST, and by improving the type inference mechanism, we can gain much more flexibility in terms of what scripts in Pharo can be translated to shader.

A final opportunity of future research on this direction consists on taking advantage on existent open source graphics drivers, such as the RADV driver available in Mesa3D [START_REF] Paul | The mesa 3d-graphic library[END_REF] for GCN based AMD graphic. Since these drivers are open source, and there is full documentation on the ISA used by these graphics card, we believe that there is an enormous potential for gaining flexibility in bypassing the per-thread abstraction model of shaders, and making the separation between scalar and vectorial ALUs an explicit element in the GPU programming language.

Figure 1 .

 1 Figure 1. Inspection of a color ramp. An useful object for generating procedural textures. Color ramps are translated into optimized functions with inline literals.

Listing 1 .

 1 Simple variable definition example in Pharolet a = 1; let b = 2.0f; Listing 2. Translated variable definition in Dastrel | a b | someCondition ifTrue: [ a := 1.0. b := 2. ] ifFalse: [ a := 1. b := 2.0. ].

Listing 4 .

 4 import fragment.stage; import fragment.screenQuad; import procedural.noise; code_block(fragment) main { let uv = FragmentInput.texcoord; let color = colorMapFunction( heightFieldFunction(uv.x, uv.y) ); FragmentStage.colorOutput0 = color; } Colored height field texture generation shader interface.

Listing 5 .

 5 colorRamp := WDCLinearRamp with: { 0.0 -> 'ff0000' asColor. 0.5 -> '00ff00' asColor. 1.0 -> '0000ff' asColor. }. heightFunction := [ :u :v | | x y d | x := u *2.0 -1.0. y := v *2.0 -1.0. d := ((x*x) + (y*y)) sqrt. (d * 10.0) sin * 0.5 Script for generating a procedural texture by coloring a sine function. The corresponding generated textures can be seen in Figure 2Simple Texture Example A simple example of a script in Pharo for generating a simple mathematical texture is given in Listing 5. This script constructs height field based on a radial sine wave (See Figure2 part a). The color ramp used by this script maps a height value of 0.0 to red, 0.5 to green and 1.0 to blue. The resulting albedo texture in Figure2part b looks like a pattern formed by concentric circles colored with one of: blue, red or green. The normal map in Figure2

(a)

  Height field (b) Albedo (c) Normal map

Figure 2 .

 2 Figure 2. Textures generated with script corresponding to Listing 5

Figure 3 .

 3 Figure 3. Textures with our implementation of the noise functions on the GPU. Above the height fields, and below the corresponding normal maps.

  colorRamp := WDCLinearRamp with: { 0.46 -> '218cff' asColor. 1.0 -> 'ffffff' asColor. }. heightFunction := [ :u :v | ((u@v) * 5.0) fbmGradientNoiseOctaves: 4 lacunarity: 2.0 ].

Figure 4 .

 4 Figure 4. Generated clouds texture with the script in Listing 6.

Figure 5 .

 5 Figure 5. Generated rocks texture with the script in Listing 7.

5 Figure 6 .

 56 Figure 6. The visual effect produced by simulating a particle system with the script in Listing 8.

SIMD: Single Instruction, Multiple Data

ALU: Arithmetic and Logic Unit.

A fragment is an individual pixel before it is composed into a final image.

Texel: a pixel in a texture.


Colette Dehay

Henry Kennedy

Transcriptional regulation and alternative splicing make for better brains.

Transcriptional Regulation and Alternative Splicing Make for Better Brains

Colette Dehay 1, 2 , Henry Kennedy 1, 2 1 Stem Cell and Brain Research Institute, Inserm U846, 18 Avenue Doyen Lépine, 69500 Bron, France 2 Université de Lyon, Université Lyon I,69003 Lyon,France In this issue of Neuron, Johnson et al. employ a unique whole-genome exon-level analysis of the developing human brain showing that 76% of genes are expressed along with unexpectedly high levels of differential expression. These results have important consequences for understanding normal and pathological function and provide implications about the uniqueness of being human.

The human brain is beyond doubt the most sophisticated computational machine known to man, about whose self-construction or function we know tantalizingly little. The developmental study from Sestan and his colleagues makes a major contribution to our knowledge of the former area with far-reaching implications for the second (Johnson et al., 2009 [this issue of Neuron]). They report on the analysis of whole-genome exon-level expression of 13 regions in the midgestation human brain. This technique allows the identification of alternative splicing, which concerns 75% of the human multiexon genes. This is an important advance because alternative splicing is an established mechanism for gene diversification that can generate multiple proteins, and it is known to have important roles in normal and pathological brain function.

Rodents are the most widely used model for the investigation of brain development. However, alongside a number of core mechanisms that are conserved between rodents and primates, there are major differences in the nature and timing of ontogenetic processes characterizing primate corticogenesis (Dehay and Kennedy, 2007). Studies of human brain development, combined with interspecies comparisons, are therefore much needed in order to progress in understanding how the highly developed cortical areas in humans have acquired the capacity to support the rich repertoire of complex cognition and behaviors characteristic of our species. Because the Exon Array platform provides unparalleled resolution in its coverage of the genome (it reveals the prevalence and importance of alternative splicing and other fine transcriptional regulation), the work of Sestan and his colleagues opens the exciting possibility of better nailing down the evolutionary and developmental mechanisms that underlie unique human cognitive abilities such as language, abstract thinking, and creativity.

One key aim in the field of developmental neurobiology is to unravel the genetic mechanisms that underlie the specification of the identity of cortical areas. Because of the sheer resolution power of the Exon Array technology combined with an astute experimental design, this work represents a step forward in the search for the Holy Grail of cortical specification. The study compares gene expression in nine cortical regions. Four belong to the prefrontal cortex: orbito prefrontal cortex (OPFC), dorsolateral prefrontal cortex (DLPFC), medial prefrontal cortex (MPFC), and ventrolateral prefrontal cortex (VLPFC), and five regions are nonfrontal areas, including motor-somatosensory cortex, parietal association cortex, temporal association cortex, occipital visual cortex, and auditory cortex. The study is the first genome-wide-scale genomic approach of the human developing cortex. It reveals that over 76% of human genes are expressed in at least one brain region. Out of these 76%, 44% are differentially regulated and 28% are differentially alternatively spliced. Differentially expressed genes were more frequently associated with human-specific evolution of putative cis-regulatory elements. By showing that hundreds of genes are differentially expressed or alternatively spliced within the fetal human frontal cortex, this work uncovers for the first time a large number of transcriptional differences between functionally distinct prefrontal areas. This study confirms previous findings concerning the regional enrichment of certain genes identified via other methods (PCDH17, CNTNAP2, EPHA3, EPHA7). More importantly, the vast majority of their data reveal so far unidentified complex expression patterns, which indicates a large number of candidate genes-regionally enriched or alternatively spliced genes not previously identified as such-to be explored.

The clustering results reveal a clear molecular distinction the four frontal areas and the four non-frontal regions. It is noteworthy that the motor-sensory region shows a correlation with both frontal and nonfrontal regions, in accordance with its mixed frontal/parietal location. Besides showing genetic differences between functionally distinct prefrontal regions, this work also reveals two sets of data related to language. First, VLPFC (which includes presumptive Broca's area) was found to be more molecularly related to the motor-somatosensory area than to other prefrontal areas and FOXP2 is enriched in VLPFC and motor-somatosensory cortex. This observation would go along with the hypothesis that the FOXP2 phenotype is more related to the development and function of connections involved in sensory integration and vocal motor learning than to language per se (Varki et al., 2008). Second, a fascinating finding is that the perisylvian areas share molecular features, possibly correlated to their involvement in speech and language, in spite of being located across lobes (frontal, parietal, and temporal). This distributed network contains molecular signatures that include both known and unknown genes and does so where FoxP2 shows only a modest enrichment. Interestingly, a high proportion (20%) of the genes enriched in perisylvian regions were associated with human-specific accelerated evolution, suggesting that accelerated evolution of putative enhancers characterizes a fraction of genes showing specific expression patterns in the developing brain.

Of course, differential gene expression analysis alone fails to capture the functional role of changes in gene expression; for example, it does not tell you if regional changes in gene expression are neutral or adaptive. An alternative approach is to look at the position of a given gene in the context of the network in which it is embedded. Measurement of coexpression relationships reveals gene expression networks, where genes that cluster together define modules of functionally related genes. The topological properties of these networks are described as being scale free, which means that their degree distribution follows a power law. Scale-free networks are found in numerous complex systems ranging from the world wide web to some social networks, and have been fully characterized mathematically. The characteristic feature of scale-free gene networks is that the nodes (genes) can have widely different numbers of links to other genes. Genes that are highly connected constitute hubs and these genes ensure minimal path lengths in the network and therefore may play a particular role in the biological properties of the network. This approach revealed a number of region-specific modules, and indicated hub genes that could be of particular functional significance. For instance in the cortex modules hub genes included ZIC2 and ZIC4 (crucial in midline patterning of the dorsal forebrain), LRRC7 (a postsynaptic protein involved in dendritic morphology), and FOXG1 (linked to Ret syndrome).

This study reports an order of magnitude increase in the numbers of differentially expressed genes, compared to studies in the developing rodent (Muhlfriedel et al., 2007). Alternative splicing is one potentially important mechanism for creation of new proteins during evolution. This strategy is common in the CNS where neurons are found to be rich in regulated alternative splicing events (Grabowski, 1998). Much will probably be gained from a detailed comparison of alternative splicing between human and nonhuman primates, which has yet to be performed. Identifying human-specific alternative splice forms in the brain is important for understanding the mechanism of functional evolution and emergence of cognition in the human lineage. For instance, the work on neuropsin, involved in learning and memory, has revealed the existence of a longer spliced form that is only expressed in humans (Lu et al., 2007). Certain unique human cognitive traits, such as language, mathematical, and artistic capabilities, as well as planning, are assigned to specific areas of the cerebral cortex. Progress in the understanding of how genome evolution correlates with the human phenotype including the dimensions and the interconnections of these association areas is probably key to unraveling the mechanisms that underlie the unique repertoire of flexibility and adaptation that characterizes human cognition and behavior (Varki et al., 2008). The study by Sestan and colleagues reports evidence suggesting that transcriptional regulation in humans leads to increases in molecular specification of brain regions including cortical areas, in support of King and Wilson's suggestion of regulatory evolution (King and Wilson, 1975). The authors speculate that this could lead to the emergence of novel phenotypic traits. In this respect comparison of the developmental gene expression of a well-defined cortical area, such as the primary visual cortex of monkey and human, could be highly instructive given the in-depth understanding of the neurobiology of the visual cortex and the close similarity of the psychophysical visual function across primates. If it turns out that there are major differences between monkey and human in gene expression during the development of visual cortex, then this could indicate the human phenotype of a primary visual cortex more specialized in those attributes (e.g. perceptual learning, attention, visual imagery, memory, and associative memory) that go beyond the physiology underlying visual perception per se and could be hugely important in determining the cultural uniqueness of humans.

Noticeably, these results obtained at the midgestation stage, when key processes in the establishment of connections occur, stand in contrast with molecular studies in adult human brain, which reveal only modest differences in gene expression between cortical areas (Khaitovich et al., 2004). Furthermore, studies on adult brains point to a high conservation of general expression patterns, between for instance mouse and human (Strand et al., 2007). Taken together with the present results, this suggests that it is the gene expression during development that largely determines higher brain functions by specifying the complexity of neural connections. Numerically, the most important genes relating to cognitive differences between species may be genes that specify how the machinery is put together. In support of this hypothesis, many of the identified differentially expressed genes in this study are related to processes involved in connection formation, such as axonal guidance and cell adhesion.

Because cortical networks and microcircuits provide the computational architecture that mediates information processing and cognitive functions, these findings speak to ideas on the structure but also those on the function of the cortex in the adult. A widely held view of the organization of the cerebral cortex is of a lattice-like structure with a repeated canonical microcircuitry, suggesting that it is the differences in the subcortical input to different cortical regions that largely determines their functionality (Douglas and Martin, 2004). However, the extensive differential regional expression of genes shown in the present study would seem to be at odds with a strong theory of homogeneous cortical structure. Further, a number of studies point to the possibility of fine-grain structural differences between cortical areas. For instance at the single-neuron level, connections have been shown to be very specific, and local cortical circuits show highly nonrandom features that form a skeleton of strong connections in a sea of weak connections (Song et al., 2005). The activity of the strong connections, embedded in the network of weak connections, determines the area-specific information processing properties of the cortex. Because the highly influential, strong synaptic connections are numerically few, it is hypothesized that their exact connectivity pattern and properties might therefore be of crucial importance in specifying the functional properties of the circuits. It would be reasonable to think that these structural features of the local microcircuitry, determined with single-cell precision, will be fine-tuned by the genetic properties of precursor cells. This is supported by recent results showing that the functional columnar microarchitecture in the mature neocortex is made of specific microcircuits linking preferentially excitatory neurons within radial clones (Yu et al., 2009).

In the current context of paucity of published genome-wide expression data from developing human, this data set represents an invaluable resource and unrivalled goldmine of information. Accessibility of this important and unique resource by other investigators will be a key factor in progressing in the endeavor to understand the molecular and evolutionary mechanisms underlying human brain development and the emergence of our most highly advanced cognitive abilities. Future efforts should be directed toward the generation of comparable data sets from additional developmental stages of the human brain, and importantly from other species.

Complementary to interspecies investigations, an interesting extension of the approach of Sestan and colleagues would be to examine the gene expression between the different compartments of the embryonic brain so as to better understand developmental mechanisms underlying the production, migration, and differentiation of neurons. We shall illustrate this with respect to proliferation. The hallmark of human and nonhuman primate cortex is the selective enlargement of the supragranular layer compartment that is considered to underlie the highly developed computational abilities of the human brain. The supragranular layer neurons of the primate are produced by a specialized germinal zone (the outer subventricular zone) that does not have a counterpart in the rodent brain (Lukaszewicz et al., 2005). Remarkably, this primate-specific specialized germinal zone expresses a transcription factor Pax6 (Fish et al., 2008) that in the rodent is restricted to the primary germinal zone (the ventricular zone). The unique cell cycle kinetics of the outer subventricular zone are known to underlie the cytoarchitecture of the cortex, so bringing the approach developed by Sestan and colleagues to the different germinal zones will elucidate the gene networks underlying the cellular mechanisms that generate a unique feature of primate corticogenesis (Rakic et al., 2009).


Florence Wianny

Agnieszka Bernat

Cyril Huissoud

Guillaume Marcy

Suzy S Markossian

Véronique Cortay

Pascale Giroud

Vincent Leviel

Henry Kennedy

Pierre Savatier

Wianny Florence

Bernat Agnieszka

Huissoud Cyril

Marcy Guillaume

Markossian Suzy

Giroud Pascale

Kennedy Henry

Savatier Pierre

Dehay Colette
email: dehay<colette.dehay@inserm.fr>

Derivation and cloning of a novel rhesus

Keywords: Alkaline Phosphatase, metabolism, Animals, Blastocyst, cytology, Cell Differentiation, Cell Line, Embryonic Stem Cells, cytology, enzymology, physiology, virology, Genes, Reporter, Green Fluorescent Proteins, genetics, Lentivirus, Macaca mulatta, Reverse Transcriptase Polymerase Chain Reaction, Stem Cell Transplantation, methods, Teratoma, genetics, pathology, Transfection, Zona Pellucida, physiology, tau Proteins, genetics

à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d'enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

Introduction

Embryonic stem cells (ESC) are capable of indefinite self-renewal and multilineage differentiation. One of the most important potential application of human ESC is cell-based therapy. Before the clinical application of human ESC transplantation can be attempted, extensive studies assessing the benefit, safety and efficacy of ES-derived cell transplantation in preclinical non human primate models will be necessary, particularly in the case of neurodegenerative diseases . 1

ESC lines established in non human primates (Rhesus, cynomolgus and marmoset monkeys) have characteristics similar to those 2-8 of human ESC, proving to be an invaluable preclinical research tool. Like their human counterparts, monkey ESC are able to differentiate into many clinically relevant cell types including hematopoietic cells , hepatocytes , insulin-producing cells , cardiomyocytes and 9 10 11 12 neural derived cells , , . Following transplantation, non-human primates ESC and their derivatives have been shown to survive, 7 9 [START_REF] Thomson | Neural differentiation of rhesus embryonic stem cells[END_REF][START_REF] Calhoun | Mitalipova MM Differentiation of rhesus embryonic stem cells to neural progenitors and neurons[END_REF][START_REF] Chen | Multilineage differentiation of rhesus monkey embryonic stem cells in three-dimensional culture systems[END_REF][START_REF] Kawasaki | Generation of dopaminergic neurons and pigmented epithelia from primate ES cells by stromal cell-derived inducing activity[END_REF][17][START_REF] Tibbitts | Uniform adherent neural progenitor populations from rhesus embryonic stem cells[END_REF] differentiate and integrate into the host tissue of various animal models (rodents and monkeys), particularly the brain . [START_REF] Ikeda | Transplantation of neural cells derived from retinoic acid-treated cynomolgus monkey embryonic stem cells successfully improved motor function of hemiplegic mice with experimental brain injury[END_REF][START_REF] Takagi | Dopaminergic neurons generated from monkey embryonic stem cells function in a Parkinson primate model[END_REF][START_REF] Sanchez-Pernaute | Long-term survival of dopamine neurons derived from parthenogenetic primate embryonic stem cells (cyno-1) after transplantation[END_REF][START_REF] Ferrari | Transplanted dopamine neurons derived from primate ES cells preferentially innervate DARPP-32 striatal progenitors within the graft[END_REF][START_REF] Hayashi | Primate embryonic stem cell-derived neuronal progenitors transplanted into ischemic brain[END_REF] Tracing the cells is essential for studying the fate and the interaction of the grafted cells with their host environment. In the in vivo case of neural cells grafting, this makes it necessary to be able to reliably label both the parent neurons and their axonal projections in the recipient brain. Such a label is possible via tau-green fluorescent protein (GFP) fusion protein expression. By binding the GFP to microtubules, tau-GFP tagging reveals the detailed morphology of cell bodies, dendrites and axons , . Here, we report the generation 24 25 and characterization of the first Rhesus monkey ESC line that ubiquituously and stably expresses a tau-GFP fusion protein. This cell line retains all the characteristics of the parental wild type line and is clonogenic. We show that neural precursors derived from the tau-GFP ESC line are multipotent, and that their integration can be monitored after grafting in the adult rat brain. in vivo

MATERIALS AND METHODS

ES cells derivation and culture

Zonae pellucidae of blastocysts were removed by brief exposure (45 60 sec) to 0.5 pronase in TH3 medium. Expanded blastocysts, -%

possessing large and distinct inner cell masses (ICMs), were subjected to the immunosurgical method. Zona-free blastocysts were exposed to anti-monkey antiserum (Sigma; St. Louis, ) for 30 min at 37 C. After washing in Dulbecco s modified http://www.sigmaaldrich.com into 24-well plates, subsequently amplified into 35mm well plates, and frozen in liquid nitrogen. All clones were found to be GFP positive using fluorescent microscopy.

differentiation of LYON-ES cells In vitro

For the formation of embryoid bodies (EBs), LYON-ES1 colonies were treated with collagenase IV (1mg/ml) for 30 mins, and clumps of cells were cultured in suspension in KO-DMEM medium containing 20 KO-SR (Invitrogen), and supplemented with 1 non essential ), supplemented with 20 ng/ml bFGF (Abcys) and 20 ng/ml EGF (Abcys). For neuronal http://www.euroclone.net differentiation, LYON-ES derived neural cells were trypsinized (0,025 )/EDTA (0,1g/l) (Invitrogen), and re-plated into 4-well plates % (Nunc) coated with matrigel (Bdbiosciences;

), in EuromedN medium supplemented with bFGF (10ng/ml), http://www.bdbiosciences.com modified N2, and B27 (Invitrogen). A half volume of medium was replaced every 2 days. After 7 days, the medium was changed to Euromed-N mixed with neurobasal medium (Invitrogen) (1:1) supplemented with 0,5x N2 and B27, bFGF (5ng/ml), BDNF (20ng/ml) (Sigma), and ascorbic acid (200 M). After a further 7 days in these conditions, medium was switched to neurobasal medium supplemented μ with B27 and BDNF (10ng/ml) without N2 or bFGF. For glial differentiation, LYON-ES derived neural cells were cultured in Euromed-N medium supplemented with 10 FBS (Hyclone; Perbio). ). At least 20 metaphase spreads were counted for each passage and 14 http://www.exploranova.com banded karyotypes were evaluated for chromosomal rearrangements.

%

Immunofluorescence and Alkaline

Telomerase activity

Telomerase activity was determined using the TRAPEZE Telomerase Detection Kit (Chemicon;

) according http://www.chemicon.com to the manufacturer s instructions. Briefly, cell extracts were obtained from one 35mm culture dish. Protein concentrations were ' normalized using the Coomassie blue stained protein assay reagent BSA standards (Pierce, Inc., Rockford, IL,

).

http://www.piercenet.com Heat-inactivated controls were obtained by incubating the samples at 85 C for 10 min. Aliquotes (1 g) of the cell extracts were used for °μ polymerase chain reaction (PCR). The PCR products were electrophoresed on a 12.5 nondenaturing polyacrylamide gel, and telomerase % activity was detected by ethidium bromide staining.

Semi quantitative RT-PCR

Total RNA was prepared with a QIAGEN RNeasy kit (QIAGEN, Valencia, CA, ). Standard reverse http://www.qiagen.com transcription reactions were performed with 1 g of total RNA primed with random primers using SuperScriptII first strand synthesis μ system (Invitrogen). PCR was carried out using the following parameters: denaturation at 94 C for 45 seconds, annealing at the suitable °annealing temperature (See Table 1) for 1 min, and polymerization at 72 C for 2 min. The sequence, annealing temperature, and cycle °number of each pair of primers are listed in . An extension step of 7 min at 72 C was added at the end of the cycles. supplemental Table 1 °Each PCR was performed under linear conditions. Reactions without reverse transcriptase were performed to control for contaminations with genomic DNA, using -actin primers. PCR products were analysed on a 1,5 agarose gel and visualized with ethidium bromide.

β %

Teratoma formation

Colonies of LYON-ES cells were selected manually and inoculated beneath the testicular capsule of 7-week-old severe combined immunodeficient (SCID) males (CB17/SCID; Charles River Laboratories, ). 5 to 10 weeks later, mice were http://www.criver.com euthanized and lesions surgically removed. Teratomas were fixed in 4 PFA overnight at 4 C, sunk in 10 sucrose for 24 hours, in 20

% °% %
sucrose for 24 hours, and embedded in OCT embedding medium (CellPath;

). Cryosections (20 m) were washed http://www.cellpath.co.uk μ three times for 10 min in TBS, and processed for immunofluorescent staining (cf above). Primary antibodies are detailed in Supplementary . Oil red O staining was used to label adipose-like cells, and alizarine red staining to mark cartilage.

RESULTS

Establishment and characterization of the LYON-ES1 cell line

Thirty-four rhesus monkey blastocysts produced by ICSI were used. Seven embryos exhibited a small or undistinguishable ICM, thus immunosurgery was not performed to reduce the risk of cell loss. All of them formed outgrowths. Twenty-seven ICMs were isolated by immunosurgery, of which twenty-two formed outgrowths and generated 5 lines that were expanded for more than 12 passages and frozen.

One cell line, named LYON-ES1, established without performing immunosurgery, could be easily maintained and showed rapid expansion in culture. Within the first days of derivation, cells showing an ESC like morphology emerged (

). These putative ESC were Fig. 1A manually selected and subcultured on a fresh feeder layer (Passage 1 at day 6). After one day , colonies of small, tigthly packed in vitro cells proliferated from the transferred clumps (

). These colonies were split after 2 days, and passaged every 4 to 7 days. Fig. 1B LYON-ES1 cell line was initially derived in a medium containing 10 FBS and 10 serum replacement (KO-SR), and supplemented with % % bFGF, and rhLIF. Under those conditions, ES cells showed low amplification rates associated with a sustained level of spontaneous differentiation, despite the manual removal of differentiated cells. After 4 5 passages the cells were adapted to 20 KOSR and FGF2

-% (4ng/ml) containing medium. Those conditions resulted in a decrease in the incidence of spontaneous differentiation and an increase in proliferation. Under those conditions, cell morphology was homogeneous, with colonies mainly composed of ES-like cells ( ). The Fig. 1C morphology of LYON-ES1 cells is identical to that reported for other human and non-human primate ECS lines: they formed packed and tight colonies ( ), show a high nucleus/cytoplasmic ratio and clearly distinguishable nucleoli ( ). Amplification and routine Fig. 1C Fig. 1D passaging of the cells were performed using a manual dissociation technique so as to avoid the emergence of chromosomal abnormalities induced by enzymatic treatment . 29

LYON-ES1 cell line has been cultured for more than 60 passages, while maintaining an undifferentiated state.

Immunohistochemistry and RT-PCR were used to analyse the expression of pluripotency markers. LYON-ES1 cells express the transcription factors Oct-4, Nanog, the cell surface markers SSEA4, TRA-1-60, TRA-1-81 and CD90 ( ) and show strong alkaline Fig. 2A phosphatase activity ( and data not shown). Normal diploid 42XX karyotype and high telomerase activity are maintained after Fig. 2A prolonged culture (

). After passaging every 5 days, LYON-ES1 cells show sustained proliferation rates in long supplementary Fig. 1A,B term cultures. Bromodeoxyuridine (BrdU) cumulative labeling indicates a total cell-cycle duration of 9 hrs when cultured in 20 KOSR % and FGF2 (4ng/ml). Cell cycle duration increased dramatically (15,5 hrs) when cells were cultured in the medium routinely used for culturing monkey ES cells, containing 20 FBS ( ) , , , suggesting that FBS containing medium is not ie

LYON-ES1 cells are pluripotent and in vitro in vivo

The capacity of LYON-ES1 cells to form differentiated cell types has been assessed either by culture in subconfluent in vitro conditions, or by formation of embryoid bodies (EBs) (

). The expression of specific markers of primate ESC, ectoderm, endoderm Fig. 3A and mesoderm was analysed using semiquantitative RT-PCR (

). Expression of , and gradually decreases during Fig. 3B oct4 Nanog Rex1 differentiation. All tissue-specific markers are expressed in EBs, and showed increased expression levels with time ( ). After more Fig. 3B than 40 passages, LYON-ES1 cells retained the potential to differentiate into derivatives of the three germ layers (data not shown). in vitro Pluripotency of the LYON-ES1 cells has been also assessed through teratoma formation. Injection of LYON-ES1 cells in the in vivo testis of SCID mice consistently results in teratomas formation. Immunohistochemistry shows that tumors included derivatives of the ectoderm, that are positive for GFAP and Nestin, and contained rosettes of neuroepithelium ( , upper panels). Derivatives of the Fig. 3C endoderm stained for glucagon, GATA4 or HNF3 ( , middle panels) are observed. The teratomas also contained mesodermal β Fig. 3C tissues such as muscle-like structures stained for desmin, cartilage-like tissue revealed by alizarine red staining, and adipose-like cells, revealed by oil-red staining ( , lower panels). The range of differentiation observed within the teratomas of high passage LYON-ES Fig. 3C cells (passage 58) is comparable to that observed with low passage LYON-ES (passage 7) (data not shown). Proliferating cells are often observed as shown by Ki67 expression. The expression of the ES-cell markers Oct4 and TRA-1-60 is not detected (data not shown), as is also shown with human ES cells , suggesting that proliferating cells correspond to precursors of immature tissue or even differentiated 32 cells, as has been recently shown in human ES cell derived tumors . 33

These data show that the LYON-ES1 cell line shows all the characteristics of a genuine monkey ES cell line and retain its undifferentiated and pluripotent properties after long term culture.

Derivation of a LYON-ES1 cell line stably expressing tau-GFP over long term cultures and throughout differentiation

Stable expression of GFP fused to the microtubule-associated protein tau (tau-GFP) was obtained via lentiviral infection of LYON-ES1 cells with a SIV-based lentiviral vector expressing tau-GFP under the control of the CAG promoter (see materials and methods). As lentiviral infection enabled to transduce a small percentage of monkey ES cells , cell sorting was implemented to obtain a 26 pure population of tau-GFP expressing LYON-ES cells. Tau-GFP enables cell morphology of living LYON-ES cells to be visualized in exquisite detail. The fluorescence is distributed evenly throughout the cytoplasm, while being excluded from the nucleus ( ). Fig. 4A Tau-GFP fluorescence is stable for more than 45 passages ( ), and remains detectable several weeks after fixation (data not shown). Fig. 4D Tau-GFP LYON-ES cells showed similar characteristics to the parental wild type LYON-ES1 cells, and to genetically modified LYON-ES cells stably expressing eGFP ( ): they express the pluripotent stem cell markers Oct4, Nanog, Rex1, sox2, and Supplementary Fig. 2A,B alkaline phosphatase as well as the cell surface markers SSEA4, and TRA-1-60 ( and data not shown). The Supplementary Fig. 3A karyotype and the level of telomerase activity of tau-GFP LYON-ES cells are similar to the parental wild type LYON-ES cells ( ). Supplementary Fig. 3B, C

Tau-GFP LYON-ES cells are pluripotent and clonogenic

The pluripotency of the transgenic LYON-ES cells was assessed culture in suspension and in subconfluent conditions. Fluorescent via microscopy observations showed that tau-GFP expression is retained during differentiation ( ), even after numerous in vitro Fig. 4C passages (

). RT-PCR and immunohistochemical analysis shows that tau-GFP LYON-ES cells give rise to cells expressing Fig. 4B,D ectoderm (Sox1, nestin, GFAP, IIItubulin), endoderm (HNF3 , AFP), and mesoderm ( MHC, tbx20, desmin) markers (data not shown). ). Immunostaining with an anti human nuclear antigen (hNA) antibody, which specifically labels cells of primate Fig. 5A origin, shows that all the cells of monkey origin expressed tau-GFP (

). These data indicate that tau-GFP expression is maintained Fig. 5B during differentiation . in vivo So as to get a homogeneous ES cell line, we isolated clones of tau-GFP expressing cells. Tau-GFP expressing cells were manually selected and cultured individually in 96-wells. 5 clones were isolated from the tau-GFP LYON-ES parental cell line. The average cloning efficiency was 0,65 , similar to that obtained with the eGFP expressing LYON-ES cells (data not shown), and with human ES cells , % 34 35 . All clones express tau-GFP in living cells, as is the case for eGFP expressing clones ( and unpublished results). supplementary Fig. 4A The fluorescence was retained after extended period of culture (more than 12 passages). Whereas differences in tau-GFP expression levels are noted between different clones, transgene expression within individual clones is uniform. When tau-GFP expressing clones were induced to differentiate in non-adhesive or in subconfluent culture conditions, all the resulting cells expressed tau-GFP (supplementary ).

Tau-GFP expression is retained throughout neural differentiation , and after transplantation in the rat brain in vitro in vivo

One of the major advantage of the tau GFP label is that it makes it possible to follow the fate of neural cell precursors and their derivatives in exquisite details and . Tau-GFP expression also provides a detailed labeling of dendritic and axonal in vitro in vivo 25 morphologies, revealing important details concerning the connections formed by neurons derived from tau-GFP expressing ESC after grafting in the brain.

To determine whether tau-GFP expression is retained throughout neural differentiation , we cultured tau-GFP LYON-ES cells in vitro in subconfluent conditions. This results in extensive spontaneous differentiation notably into neuroepithelial rosettes labeled with tau-GFP (

). These rosettes were selected manually, and re-plated in basal medium (Euromed-N plus N2 supplement) in the presence of Fig. 6A FGF2 plus EGF. The resulting neural precursors were further propagated for analysis. They express tau-GFP, as revealed by fluorescence microscopy in living cells ( ), and express the neural precursor markers sox2, nestin, emx2, sox1, FGF5, NF68, and the radial glia Fig. 6B markers BLBP and Glast (data not shown). After induction of neuronal differentiation (see materials and methods), cells with tau-GFP expressing processes appear in culture, and express the neuronal markers IIItubulin, microtubule-associated protein-2 (MAP2), and β neurofilament 165 (NF165) ( , and data not shown). Following exposure to serum, neural precursors retained the tau-GFP Fig. 6C fluorescence and differentiated into GFAP-positive astrocytes and into Galactocerebroside (GalC)-positive oligodendrocytes ( ). Fig. 6D These results show that tau-GFP LYON-ES neural precursors have the capacity to differentiate into all three fundamental neural in vitro lineages (neurons, astrocytes and oligodendrocytes), while retaining tau-GFP expression.

Finally, we investigated the behaviour of tau-GFP LYON-ES derived precursors , upon transplantation into the adult rat brain. in vivo Tau-GFP LYON-ES cells were induced to differentiate into neural precursors, that were subsequently injected in the dorsal cerebral cortex of adult rats (see ). Eighteen or twenty-eight days after transplantation, the brains were fixed and supplementary materials and methods sections were analysed histologically. We observed excellent graft acceptance and sustained survival with cyclosporine A immunosupression. Tau-GFP was readily detected by GFP immunostaining in animals sacrificed 18 days and 28 days after transplantation (

). Grafts consist of large numbers of tau-GFP positive cells at the injection site, with some cells migrating laterally, away from Fig. 7A G the core of the injection site (

). Some neurons grow extended axonal projections over several millimetres, crossing the Fig. 7A C interhemispheric border as seen on . Immunostaining with the anti-hNA antibody showed that all the monkey cells maintained Figure 7C tau-GFP expression after integration in the brain (

). Only few tau-GFP cells expressed the proliferative marker Ki67 ( ), Fig 7E

Fig. 7F indicating that most neural precursors withdraw from the cell cycle . Double immunostaining for GFP and GFAP or III tubulin in vivo β show that tau-GFP neural precursors differentiated along the neuronal and the astroglial pathways after transplantedin the rat brain. (Fig.

). 7G, H

These data indicate that neural precursors derived from tau-GFP LYON-ES cells can survive, differentiate, and retain tau-GFP expression in the adult brain environment several weeks after transplantation.

Discussion

In this report, we describe the derivation of a new Rhesus ES cell line stably expressing tau-GFP. Using lentiviral vectors, we then generated LYON-ES cells that ubiquitously and stably express tau-GFP. Monkey ES cells have been labelled with GFP using lipofection or electroporation , . Transduction of monkey ES cells with a lentiviral vector encoding GFP has 36 37 only been reported in cynomolgus monkey . However, GFP expression was not ubiquituous, and the undifferentiated properties of the 38 infected cells were not described. Here, we show that despite lentiviral infection and cell sorting, tau-GFP expressing cells retained the undifferentiated characteristics of the parental wild type LYON-ES cell line and the ability to differentiate into the derivatives of the three germ layers and , while retaining transgene expression. Thus, genetic modification of LYON-ES cells is compatible with in vitro in vivo maintenance of their undifferentiated and pluripotent properties.

We demonstrated that tau-GFP labeling can be readily detected in living LYON-ES cells and their differentiated derivatives in vitro using fluorescent imaging, and is stable after long term culture.

, the fate of the labeled cells can be mapped during their In vivo differentiation in teratomas, and during their integration in the adult rat brain, and most importantly remained identifiable several weeks after injection without using immunohistochemical detection. Tau is a microtubule-binding protein principally expressed in neurons , 39

and it is conceivable that ectopic expression of tau-GFP might compromise cell function by interfering with microtubule assembly and could potentially predispose grafted animals to neural pathologies. Indeed, disruption of normal tau function is associated with neurodegenerative disorders, like Alzheimer s disease . However, ESC and transgenic lines carrying the tau-GFP transgene have been . This suggests that tau-GFP labeling did not have any obvious consequences on the potentialities of in vivo the labeled cells. As the gene is introduced as a random integration event, it is possible that this insertion event modifies an unknown genomic locus, and could induce an alteration in cell behaviour or characteristics. In our study, we have shown that tau-GFP LYON-ES cells proliferated like their wild type counterparts, and retained a normal karyotype after transduction. More importantly, all tau-GFP generated clones stably expressed tau-GFP and retained tau-GFP expression after and differentiation. These clones in vitro in vivo presented similar characteristics to those of the parental tau-GFP ES cells, suggesting that the site of integration of the transgene did not produce a silencing of tau-GFP expression, and did not have any deleterious effects on the phenotype or the potentialities of the cells. The The tau-GFP LYON-ES cell line is the first tau-GFP expressing ES cell line derived in primates, including human. While further experiments using tau-GFP LYON-ES cells should be designed for establishing their functional integration , we anticipate that the in vivo tau-GFP LYON-ES cells will prove a powerful tool for a wide variety of applications including developmental studies aimed at tracing the fate and confirming the pluripotency of monkey ESC in chimerae, as well as the development of neural transplantation technologies in monkey.

  (DMEM; Invitrogen; Carlsbad, CA, ) supplemented with 20 FBS (Hyclone; Perbio; R4SA-CAG-EGFP-W plasmid or the R4SA-CAG-TauGFP-W plasmid, using the calcium phosphate precipitation technique. The following day, cells were re-fed 7 ml of DMEM and further cultured for 24 hours. The supernatant was then collected, cleared by centrifugation (3,000RPM, 15 min) and passed through a 0.8 m filter. Prior to infection, LYON-ES1 cells were treated with collagenase μ IV (1mg/ml) for 5 min at 37 C. Clumps of undifferentiated cells were manually selected and transferred to fresh medium (200 l) °μ containing SIV-eGFP or SIV-tau-GFP in the presence of 6 g/ml polybrene (Sigma). Cells were incubated for 3 hrs at 37 C, before being μ °replated on fresh feeder cells. To select for GFP positive LYON-ES cells, GFP and tau-GFP expressing LYON-ES cells were treated with collagenase IV (1mg/ml) (Invitrogen) for 20 min, trypsined, and the single cell preparation was resuspended in PBS before being processed in a FACSVantageTMSE (Becton Dickinson). The viability of LYON-ES1 cells after FACS sorting was >98 as assessed by % trypan blue exclusion. The percentage of GFP positive cells was analysed using a FACS Canto2. Data acquisition was performed with Diva software (Becton Dickinson). Cloning LYON-ES cells were dissociated to single cells for 7 min with trypsin (0,025 )/EDTA (0,1g/l) (Invitrogen), washed by centrifugation, % and individual cells were selected by direct observation under a stereomicroscope and transferred by micropipettes to individual wells of 96-well plates containing MEF and medium supplemented with 20 KOSR and 10ng/ml bFGF. As physiologic oxygen has been reported % to enhance clone recovery in hESC lines , , cultures were maintained at 5 O2, at 5 CO2, at 37 C. Emerging clones were first 27 28 % % °passaged

%

  Fig. 2B LYON-ES1 cells is accompanied by a dramatic increase in the fraction of cells in G1 (). LYON-ES1 cells have cell cycle Fig.2Bcharacteristics that are typical of primate ES cells , .26 31

  The injection of tau-GFP LYON-ES cells in the testis of SCID mice results in teratoma which contain solid tissues and fluid-filled cystic masses, comprising derivatives of the three germ layers ( and data not shown), as in the case of the wildtype Fig.5A, C, D LYON-ES cell line. Strong tau-GFP fluorescence is readily visible 10 weeks after the injection, before any immunohistochemical amplification (

  Fig. 4B, C Tau-GFP LYON-ES clones maintain the characteristics of the parental (tau-GFP) LYON-ES cell line. The cell morphology is typical of LYON-ES cells and they exhibit a high level of alkaline phosphatase activity, as well as continue to express the markers of pluripotency Oct4, Nanog, and Sox2, and the cell surface markers (SSEA4, TRA-1-60, TRA-1-81 and CD90) ( ). supplementary Fig. 4A, D Pluripotency of the tauGFP-clones was assessed via teratoma formation. We injected three tau-GFP expressing clones, and in vivo three GFP-expressing clones as controls, in the testis of SCID mice. Teratomas with pronounced differentiation into multiple somatic tissues were found in the injected testes analysed 10 weeks after grafting. They retain tau-GFP expression, as revealed by fluorescent microscopy (data not shown). Similar results were obtained with the eGFP LYON-ES clones (unpublished results). These data indicate that tau-GFP LYON-ES cells are pluripotent and and are clonogenic, and that transgene expression does not alter the in vitro in vivo, properties of LYON-ES cells.

  First, we generated a new line of ESC in the rhesus monkey (LYON-ES1) and demonstrated that they express markers and have cell cycle characteristics typical of primate ESC , . LYON-ES1 cells are pluripotent, giving rise to derivatives of the three germ layers after culture in subconfluent conditions or 2-4 26 in suspension and through teratoma formation. LYON-ES1 cells have been maintained in culture for more than 60 passages in vitro in vivo retaining all their undifferentiated characteristics and a normal karyotype, and show high telomerase activity, consistent with their extended lifespan property. Taken together, these observations indicate that the LYON-ES1 cell line meets all the standard criteria for a pluripotent monkey ES cell line.

  mouse, with no report of altered behavior , . Consistent with these observations in the mouse, our data show that24 25 LYON-ES cells stably expressing tau-GFP have the ability to differentiate into multipotent neural precursors, survive and colonize in vitro the brain after transplantation

  efficiency of cloning was comparable to the results obtained with eGFP expressing LYON-ES cells, and to previous results with non transduced human ES cells . This suggests that transduction of tau-GFP transgene does not alter the potential of monkey ES cells to be 34 cloned. It cannot be ruled out that more subtle cell-type-specific phenotypes could be identified if more detailed analysis were to be undertaken. Thus, experiments using tau-GFP LYON-ES clones should be designed for studying possible effects of the transgene after the induction of differentiation and .

Figure 1

 1 Figure 1 Derivation of the LYON-ES1 cell line (A) Outgrowth of inner cell mass (white arrow) 10 days after initial plating of the embryo. (B) Resulting colonies 1 day after the first dissociation. Note the high nucleus/cytoplasm ratio and prominent nucleoli. Established LYON-ES1 cell line at passage 7 (C) and passage 28 (D). Scale bars 100 m (A D).

Figure 2 Figure 3

 23 Figure 2 Characterization of the LYON-ES1 cell line (A) Immunofluorescent staining for Oct4, Nanog, CD90, SSEA-4, TRA-1-60, and staining for alkaline Phosphatase (AP). (B) Histograms showing cell-cycle distribution of LYON-ES1 cells and LYON-ES1 differentiated derivatives as measured by flow cytometry. Scale bars 100 =

Figure 4

 4 Figure 4 Stable tau-GFP expression in LYON-ES cells and their differentiated derivatives in vitro (A) Phase contrast and corresponding live fluorescence images of tau-GFP LYON-ES cells. (B) Immunofluorescent staining for GFP, hNu and Oct4 in spontaneously differentiated tau-GFP LYON-ES cells at passage 45. (C) Phase contrast and corresponding live fluorescence images of tau-GFP day-5 EBs. (D) Proportion of tau-GFP positive cells as measured by flow cytometry in living LYON-ES1 cells, tau-GFP LYON-ES cells (Passage 47) and tau-GFP LYON-ES derived EBs (Passage 45).

Figure 5

 5 Figure 5 Analysis of teratomas sections ten weeks after injection of tau-GFP LYON-ES cells in the testes of SCID mice (A) Low magnification of tau-GFP labeled teratoma stained with Hoechst (left) and GFP (right). Confocal images showing co-expression of tau-GFP and hNU (B), coexpression of tau-GFP and desmin in derivatives of the mesoderm (C), co-expression of tau-GFP and nestin in derivatives of the ectoderm (D). B1 3, C1 3, D1 3 are high magnifications of the fields shown in the merge images B, C and D respectively.

Figure 6 Figure 7

 67 Figure 6 Tau-GFP LYON-ES derived neural precursors retain tau-GFP expression and are multipotent Phase contrast and corresponding live fluorescence images of (A) rosettes and (B) neural precursors at passage 6, derived from tau-GFP LYON-ES cells. (C) Differentiation of tau-GFP neural precursors into MAP2 and NF165 positive neurons. (D) Serum induced differentiation of tau-GFP neural precursors into GFAP or GalC expressing cells. Scale bars 100 m (A, B); 50 m (C D).= μ μ -

Phosphatase staining

  Cells were fixed with 2 PFA in phosphate-buffered saline (PBS) at 4 C for 1 hour, and permeabilized in Tris Buffer Saline (TBS)

	%				°+
	0.1 TritonX-100 (3 times 10 min). Non-specific binding was blocked with 10 normal goat serum (NGS) (Jackson immunoresearch % %
	Laboratories, West Grove, PA,	http://www.jacksonimuno.com	) for 20 min at room temperature (RT). Cells were incubated overnight at 4	°C,
	with primary antibodies (see	Supplementary Table 2	) diluted in Dako diluent (Dako;	http://www.dako.fr	). After three rinses in TBS,
	cells were exposed either to affinity-purified goat anti-mouse, anti-rat or anti-rabbit immunoglobulin G or M (IgG, IgM) conjugated either
	to indocarbocyanine or to cyanin (Cy3 and Cy2, respectively; Jackson ImmunoResearch Laboratories) for 1 hour at RT followed by
	nuclear staining with 1 ng/ml Hoechst 33258 for 3 min. After three rinses in TBS, coverslips were mounted on slides. Coverslips were
	examined using an oil objective microscope under UV light to detect fluorescencence in isothiocyanate (FITC) (filter 450 490 nm), -
	indocarbocyanine 3 (filter 550 570 nm), and Hoechst 33258 (filter 355 425 nm). Alkaline phosphatase activity was revealed using the --
	Alkaline Phospatase substrate kit (Ref. 86R; Sigma), according to manufacturer s instructions.
	Karyotype analysis
	LYON-ES1 cells were treated with colcemid (0.08 g/ml) (Sigma) for 2 hours. Cells were then trypsinized, resuspended in 0.075M μ
	KCl, and incubated for 10 min at RT. The cells were then fixed with fresh Carnoy s fixative (methanol:glacial acetic acid; 3:1), and '
	dropped onto ice-cold slides. Chromosome spread were Giemsa banded. Images were captured on a Leica microscope using the mosaic
	imaging system (Explora Nova;

'

Table 2

 2

[START_REF] Thomson | Neural differentiation of rhesus embryonic stem cells[END_REF]

[START_REF] Thomson | Neural differentiation of rhesus embryonic stem cells[END_REF]

[START_REF] Thomson | Neural differentiation of rhesus embryonic stem cells[END_REF]

[START_REF] Thomson | Neural differentiation of rhesus embryonic stem cells[END_REF]

[START_REF] Thomson | Neural differentiation of rhesus embryonic stem cells[END_REF]

[START_REF] Thomson | Neural differentiation of rhesus embryonic stem cells[END_REF]

[START_REF] Thomson | Neural differentiation of rhesus embryonic stem cells[END_REF]

[START_REF] Thomson | Neural differentiation of rhesus embryonic stem cells[END_REF]

[START_REF] Thomson | Neural differentiation of rhesus embryonic stem cells[END_REF]

[START_REF] Thomson | Neural differentiation of rhesus embryonic stem cells[END_REF]

[START_REF] Thomson | Neural differentiation of rhesus embryonic stem cells[END_REF]

Ackowledgements:

We are indebted to Shoukrat Mitalipov, Yves Menezo, Michel Berland, Anne-Catherine Fluckiger for their invaluable help and advice with hormonal stimulations, sperm harvesting and ESC culture. We thank Marielle Afanassieff and Pierre-Yves Bourillot for the production of the Detailed materials and methods are presented as , which is published as Supporting Information.

Supporting Materials and Methods supporting information on the Stem Cells web site.