Application Note

Smart Configurator, Code Generator
Project Porting Procedures for CS+ and e2 studio
Introduction
This application note describes the porting procedures between IDE (e2 studio, CS+) for projects using Smart
Configurator or Code Generator.
Porting from e2 studio development environment to CS+ development environmentPorting from CS+ development environment to e2 studio development environmentPorting from MCU Simulator Online to e2 studio or CS+ development environment

Target Device
RX Family※, RL78 Family※※Only devices supported by the following tools are eligible.
Tool

Versione2 studio

2021-10 or laterCS+ for CC

V8.06.00 or later

Smart Configurator

Smart Configurator for RX V2.11.0 or later
Smart Configurator for RL78 V1.1.0 or later

Code Generator

CS+ Code Generator for RX V1.16.00 or later
CS+ Code Generator for RL78 V2.21.00 or later

MCU Simulator Online

V2.06 (2023/6/20) or later

Point for cautions
・Individual file options’ settings will not be ported to the new development environment.
Please re-configure the options settings after porting.
・RTOS project is not supported by this porting manual.

R20UT5124EJ0110 Rev.1.10
Jun.20.23

Page 1 of 19

Smart Configurator , Code Generator

Project Porting Procedures for CS+ and e2 studioContents
1.

Porting from e2 studio to CS+ .................................................................................................. 3

1.1

Procedure for porting a project that is using Smart Configurator ............................................................ 3

1.1.1

Export an e2 studio project file ............................................................................................................... 3

1.1.2

Import an e2 studio project file to CS+ ................................................................................................... 6

1.1.3

Configure build target for CS+ project ................................................................................................... 8

1.2

Procedure for porting a project that is using Code Generator .............................................................. 11

1.2.1

Export an e2 studio project file ............................................................................................................. 11

1.2.2

Import an e2 studio project file to CS+ ................................................................................................. 11

1.2.3

Select the output location of code generation files.............................................................................. 11

2.

Porting from CS+ to e2 studio ................................................................................................ 12

2.1

Procedure for porting a project that is using Smart Configurator .......................................................... 12

2.1.1

Create a common project file for porting to e2 studio .......................................................................... 12

2.1.2

Import a common project file to e2 studio ............................................................................................ 13

2.1.3

Configure build target for e2 studio project .......................................................................................... 14

2.2

Procedure for porting a project that is using Code Generator .............................................................. 16

2.2.1

Create a common project file for porting to e2 studio .......................................................................... 16

2.2.2

Import a common project file to e2 studio ............................................................................................ 16

2.2.3

Rename the folder name of imported project ...................................................................................... 17

3.

Porting from MCU Simulator Online to Integrated Development Environments ...................... 18

3.1

Porting to e2 studio ................................................................................................................................ 18

3.2

Porting to CS+ ....................................................................................................................................... 18

3.2.1

Configure build target for CS+ project ................................................................................................. 18

Revision History ............................................................................................................................ 19

R20UT5124EJ0110 Rev.1.10
Jun.20.23

Page 2 of 19

Smart Configurator , Code Generator

Project Porting Procedures for CS+ and e2 studio

1. Porting from e2 studio to CS+
This chapter describes how to port an e2 studio project to CS+.
For Smart Configurator users, please refer to “1.1 Procedure for porting a project that is using Smart
Configurator”
For Code Generator users, please refer to “1.2 Procedure for porting a project that is using Code Generator”

1.1

Procedure for porting a project that is using Smart Configurator

This section describes the procedure for porting an e2 studio project to CS+ that is using Smart Configurator.

1.1.1

Export an e2 studio project file

Note: If Common Project File(.*rcpc) exists in the project folder, skip this sub-chapter and continue the steps
in 1.1.2.
Follow the steps below to export an e2 studio project file.
(a) Open e2 studio workspace that contains the project for porting.
(b) In “Project Explorer”, select project for porting.

Figure 1-1 Select the project folder for porting

R20UT5124EJ0110 Rev.1.10
Jun.20.23

Page 3 of 19

Smart Configurator , Code Generator

Project Porting Procedures for CS+ and e2 studio(c) In “File” menu, select “Export”.

Figure 1-2 Export(d) Select “Renesas Common Project File” and click “Next”.

Figure 1-3 Select Renesas Common Project FileR20UT5124EJ0110 Rev.1.10
Jun.20.23

Page 4 of 19

Smart Configurator , Code Generator

Project Porting Procedures for CS+ and e2 studio(e) Click “Finish” to complete the export procedure.
If changing the output location of Common Project File from the default location, all files in the project
folder have to be copied to the new location manually.

Figure 1-4 Specify the output location

R20UT5124EJ0110 Rev.1.10
Jun.20.23

Page 5 of 19

Smart Configurator , Code Generator
1.1.2

Project Porting Procedures for CS+ and e2 studio

Import an e2 studio project file to CS+

Follow the steps below to import the exported project file to CS+.
(a) Launch CS+. In “Open Existing MCU Simulator Online/ e2 studio/CubeSuite/High-performance Embedded
Workshop/PM+ Project” category, click “GO”

Figure 1-5 Open e2 studio project(b) Select the exported Common Project File (.rcpc).

Figure 1-6 Select Common Project File (*.rcpc file)

R20UT5124EJ0110 Rev.1.10
Jun.20.23

Page 6 of 19

Smart Configurator , Code Generator

Project Porting Procedures for CS+ and e2 studio(c) Click “OK” to convert project settings.

Figure 1-7 Project Convert Settings

R20UT5124EJ0110 Rev.1.10
Jun.20.23

Page 7 of 19

Smart Configurator , Code Generator
1.1.3

Project Porting Procedures for CS+ and e2 studioConfigure build target for CS+ project

Follow the steps below to configure build target for CS+ project.
(a) In “Project Tree”, exclude “trash” folder from build target.
(“Trash” folder is the backup folder of generated code and has to be excluded from build.)(a) -1

Select “trash” folder and click “Property” from menu.

Figure 1-8 Property of “trash” folder(a) -2Check the setting of “Set as build-target”. It should have been selected as “No” by default.
Change to “No” if otherwise.

Figure 1-9 Setting for build target

R20UT5124EJ0110 Rev.1.10
Jun.20.23

Page 8 of 19

Smart Configurator , Code Generator

Project Porting Procedures for CS+ and e2 studio(b) If there is a need to generate code after porting to CS+, “smc_gen” folder ported from e2 studio has tobe removed manually before build.
Follow the steps below to remove it from the project.
Note: “Smart Configurator” folder will be created at Project Tree after generate code.
(b) -1 Remove from Project
Select “smc_gen” folder and select “Remove from Project “from menu.

Figure 1-10 Remove from project

R20UT5124EJ0110 Rev.1.10
Jun.20.23

Page 9 of 19

Smart Configurator , Code Generator

Project Porting Procedures for CS+ and e2 studio

Source files generated in e2 studio.
This folder must be removed from project.

Must be excluded from build target
Newly created in CS+

Figure 1-11 Configuration of Project Tree

R20UT5124EJ0110 Rev.1.10
Jun.20.23

Page 10 of 19

Smart Configurator , Code Generator
1.2

Project Porting Procedures for CS+ and e2 studio

Procedure for porting a project that is using Code Generator

This section describes the procedure for porting an e2 studio project to CS+ that is using Code Generator.

1.2.1

Export an e2 studio project file

This section describes the export procedure of e2 studio project file.
The procedures are the same as 1.1.1. Refer to 1.1.1 for more details.

1.2.2

Import an e2 studio project file to CS+

This section describes how to Import the exported project file in 1.2.1 in CS+.
The procedures are the same as 1.1.2. Refer to 1.1.2 for more details.

1.2.3

Select the output location of code generation files

Follow the steps below to select the output location of code generation files.
(a) In “Project Tree”, select “Code Generator” and click “Property” from menu.

Figure 1-12 Property of Code Generator(b) Specify the location of existing source files.

Figure 1-13 Output folder of Code Generator

R20UT5124EJ0110 Rev.1.10
Jun.20.23

Page 11 of 19

Smart Configurator , Code Generator

Project Porting Procedures for CS+ and e2 studio

2. Porting from CS+ to e2 studioThis chapter describes how to port a CS+ project to e2 studio.
For Smart Configurator users, please refer to “2.1 Procedure for porting a project that is using Smart
Configurator”
For Code Generator users, please refer to “2.2 Procedure for porting a project that is using Code Generator”

2.1

Procedure for porting a project that is using Smart Configurator

This section describes the procedure for porting a CS+ project to e2 studio that is using Smart Configurator.

2.1.1

Create a common project file for porting to e2 studio

Follow the steps below to create Common Project File in CS+ for porting to e2 studio.
(a) Open CS+ project for porting.
(b) In “Tool” menu, select “Options…” and select “Project”.
(c) Check the setting of “Output the common project file for e2 studio too when the project is saved”. Itshould have been selected by default.

Figure 2-1 Project file output settings for e2 studio(d) Save CS+ project. The common project file (.rcpe) can be found in the same location as CS+ projectfile(.mtpj).

R20UT5124EJ0110 Rev.1.10
Jun.20.23

Page 12 of 19

Smart Configurator , Code Generator
2.1.2

Project Porting Procedures for CS+ and e2 studio

Import a common project file to e2 studio

Import the Common Project File generated in 2.1.1 to e2 studio by following the steps below.
(a) Launch e2 studio.
(b) In “File” menu, select “Import”.
(c) Select “Renesas CS+ Project for CC-RX, CC-RL and CC-RH” and click “Next”

Figure 2-2 Renesas CS+ Project for CC-RX, CC-RL and CC-RH(d) Specify file location of Common Project File (.rcpe). Select the suitable emulator from “Debug
Hardware” list and click “Finish”.

Figure 2-3 File selection

R20UT5124EJ0110 Rev.1.10
Jun.20.23

Page 13 of 19

Smart Configurator , Code Generator
2.1.3

Project Porting Procedures for CS+ and e2 studioConfigure build target for e2 studio projectThis section describes the steps to configure build target for e2 studio project.
(a) Add the "smc_gen" folder in the Project Explorer of e2 studio to the build target, and exclude the "Smart
Configurator" and "trash" folders from the build target.
(“Trash” folder is a backup folder for generated code. It has to be excluded from the build target
manually after importing the project from CS+.)

Figure 2-4 Project Explorer of e2 studio(a) -1

Open the project properties and select [Edit Filter] for [Source Location] tab in [Paths and Symbols].

Figure 2-5 [Source Location] of [Paths and Symbols] in Properties

R20UT5124EJ0110 Rev.1.10
Jun.20.23

Page 14 of 19

Smart Configurator , Code Generator(a) -2

Project Porting Procedures for CS+ and e2 studio

Select the file below "src/smc_gen" and click [Remove].
To select multiple exclusion patterns, hold down the Shift key while selecting.

Figure 2-6 Remove source folder exclusion pattern(a) -3

Click [Add] and add the "trash" and "Smart Configurator" folders to the Exclusion patterns.

Figure 2-7 Add source folder exclusion pattern

R20UT5124EJ0110 Rev.1.10
Jun.20.23

Page 15 of 19

Smart Configurator , Code Generator

Project Porting Procedures for CS+ and e2 studio

Note: W0511106 in build message after component removal.
If you delete a component added in a CS+ project after importing to e2 studio, the following message
will be displayed because the include path added in CS+ will not be removed.
W0511106:The folder "C:/xxxxxxx/xxxxxxx" specified by the "-I" option is not found.
Open the [Includes] tab of the properties and manually remove the include path added by CS+. The
include path specified "${ProjDirPath}/src/smc_gen/..." is the path added in CS+.

Figure 2-8 [Includes] tab in [Paths and Symbols]

2.2

Procedure for porting a project that is using Code Generator

This section describes the procedure for porting a CS+ project to e2 studio that is using Code Generator.

2.2.1

Create a common project file for porting to e2 studioThis section describes how to create the Common Project File in CS+ for porting to e2 studio.
The procedures are the same as 2.1.1. Refer to 2.1.1. for more details.

2.2.2

Import a common project file to e2 studio

Import the common project file created in 2.2.1 into e2 studio.
The procedures are the same as 2.1.2. Refer to 2.1.2 for more details.

R20UT5124EJ0110 Rev.1.10
Jun.20.23

Page 16 of 19

Smart Configurator , Code Generator
2.2.3

Project Porting Procedures for CS+ and e2 studio

Rename the folder name of imported projectThis section describes the steps to rename the folder name of imported project in e2 studio.
(a) In “Project Explorer”, select “cg_src” folder and click “Rename” from menu.

Figure 2-9 Rename(b) Specify “src” as the “New name” of the folder

Figure 2-10 New name for the Imported Folder

R20UT5124EJ0110 Rev.1.10
Jun.20.23

Page 17 of 19

Smart Configurator , Code Generator

Project Porting Procedures for CS+ and e2 studio

3. Porting from MCU Simulator Online to Integrated Development Environments
This chapter describes how to port a project exported from MCU Simulator Onlin project to e2 studio or CS+.
For porting to e2 studio, please refer to “3.1 Porting to e2 studio”.
For porting to CS+, please refer to “3.2 Porting to CS+”.

3.1

Porting to e2 studio

Refer to "2.1.2 Import a common project file to e2 studio" or later, and set the build target files after importing
the MCU Simulator Online project.

3.2

Porting to CS+

Refer to "1.1.2 Import an e2 studio project file to CS+", and import the MCU Simulator Online project.

3.2.1

Configure build target for CS+ project

After importing the project, executing code generation from the Smart Configurator regenerates the files
under the "Smart Configurator" folder. Therefore, exclude the "Smart Configurator" folder generated before
import from the project by selecting "Remove from Project" from the context menu.

Code generation folder/file
generated before import

Code generation folder/file
generated after importFigure 3-1 Remove from Project

R20UT5124EJ0110 Rev.1.10
Jun.20.23

Page 18 of 19

Smart Configurator , Code Generator

Project Porting Procedures for CS+ and e2 studio

Revision History
Rev.
1.00
1.10

SectionIntroduction
2.1.3
3

Description
New Creation
Added MCU Simulator Online.
Updated the build target setting procedure.
Added procedure to porting from MCU Simulator Online to Integrated
Development Environments.

R20UT5124EJ0110 Rev.1.10
Jun.20.23

Page 19 of 19

General Precautions in the Handling of Microprocessing Unit and Microcontroller Unit
Products
The following usage notes are applicable to all Microprocessing unit and Microcontroller unit products from Renesas. For detailed usage notes on the
products covered by this document, refer to the relevant sections of the document as well as any technical updates that have been issued for the products.
1.

Precaution against Electrostatic Discharge (ESD)
A strong electrical field, when exposed to a CMOS device, can cause destruction of the gate oxide and ultimately degrade the device operation. Steps
must be taken to stop the generation of static electricity as much as possible, and quickly dissipate it when it occurs. Environmental control must be
adequate. When it is dry, a humidifier should be used. This is recommended to avoid using insulators that can easily build up static electricity.
Semiconductor devices must be stored and transported in an anti-static container, static shielding bag or conductive material. All test andmeasurement tools including work benches and floors must be grounded. The operator must also be grounded using a wrist strap. Semiconductor2.

devices must not be touched with bare hands. Similar precautions must be taken for printed circuit boards with mounted semiconductor devices.
Processing at power-on
The state of the product is undefined at the time when power is supplied. The states of internal circuits in the LSI are indeterminate and the states ofregister settings and pins are undefined at the time when power is supplied. In a finished product where the reset signal is applied to the external resetpin, the states of pins are not guaranteed from the time when power is supplied until the reset process is completed. In a similar way, the states of pins
in a product that is reset by an on-chip power-on reset function are not guaranteed from the time when power is supplied until the power reaches the3.

level at which resetting is specified.
Input of signal during power-off state
Do not input signals or an I/O pull-up power supply while the device is powered off. The current injection that results from input of such a signal or I/O
pull-up power supply may cause malfunction and the abnormal current that passes in the device at this time may cause degradation of internal

4.

elements. Follow the guideline for input signal during power-off state as described in your product documentation.
Handling of unused pins
Handle unused pins in accordance with the directions given under handling of unused pins in the manual. The input pins of CMOS products are
generally in the high-impedance state. In operation with an unused pin in the open-circuit state, extra electromagnetic noise is induced in the vicinity of
the LSI, an associated shoot-through current flows internally, and malfunctions occur due to the false recognition of the pin state as an input signal

5.

become possible.
Clock signals
After applying a reset, only release the reset line after the operating clock signal becomes stable. When switching the clock signal during program
execution, wait until the target clock signal is stabilized. When the clock signal is generated with an external resonator or from an external oscillator
during a reset, ensure that the reset line is only released after full stabilization of the clock signal. Additionally, when switching to a clock signal

6.

produced with an external resonator or by an external oscillator while program execution is in progress, wait until the target clock signal is stable.
Voltage application waveform at input pin
Waveform distortion due to input noise or a reflected wave may cause malfunction. If the input of the CMOS device stays in the area between VIL(Max.) and VIH (Min.) due to noise, for example, the device may malfunction. Take care to prevent chattering noise from entering the device when the7.

input level is fixed, and also in the transition period when the input level passes through the area between VIL (Max.) and VIH (Min.).
Prohibition of access to reserved addresses
Access to reserved addresses is prohibited. The reserved addresses are provided for possible future expansion of functions. Do not access these8.

addresses as the correct operation of the LSI is not guaranteed.
Differences between products
Before changing from one product to another, for example to a product with a different part number, confirm that the change will not lead to problems.
The characteristics of a microprocessing unit or microcontroller unit products in the same group but having a different part number might differ in termsof internal memory capacity, layout pattern, and other factors, which can affect the ranges of electrical characteristics, such as characteristic values,
operating margins, immunity to noise, and amount of radiated noise. When changing to a product with a different part number, implement a systemevaluation test for the given product.

Notice1.

Descriptions of circuits, software and other related information in this document are provided only to illustrate the operation of semiconductor products
and application examples. You are fully responsible for the incorporation or any other use of the circuits, software, and information in the design of yourproduct or system. Renesas Electronics disclaims any and all liability for any losses and damages incurred by you or third parties arising from the useof these circuits, software, or information.
2. Renesas Electronics hereby expressly disclaims any warranties against and liability for infringement or any other claims involving patents, copyrights,
or other intellectual property rights of third parties, by or arising from the use of Renesas Electronics products or technical information described in thisdocument, including but not limited to, the product data, drawings, charts, programs, algorithms, and application examples.
3. No license, express, implied or otherwise, is granted hereby under any patents, copyrights or other intellectual property rights of Renesas Electronics
or others.
4. You shall be responsible for determining what licenses are required from any third parties, and obtaining such licenses for the lawful import, export,
manufacture, sales, utilization, distribution or other disposal of any products incorporating Renesas Electronics products, if required.
5. You shall not alter, modify, copy, or reverse engineer any Renesas Electronics product, whether in whole or in part. Renesas Electronics disclaims any
and all liability for any losses or damages incurred by you or third parties arising from such alteration, modification, copying or reverse engineering.
6. Renesas Electronics products are classified according to the following two quality grades: “Standard” and “High Quality”. The intended applications foreach Renesas Electronics product depends on the product’s quality grade, as indicated below.
"Standard": Computers; office equipment; communications equipment; test and measurement equipment; audio and visual equipment; homeelectronic appliances; machine tools; personal electronic equipment; industrial robots; etc.
"High Quality": Transportation equipment (automobiles, trains, ships, etc.); traffic control (traffic lights); large-scale communication equipment; key
financial terminal systems; safety control equipment; etc.
Unless expressly designated as a high reliability product or a product for harsh environments in a Renesas Electronics data sheet or other Renesas
Electronics document, Renesas Electronics products are not intended or authorized for use in products or systems that may pose a direct threat tohuman life or bodily injury (artificial life support devices or systems; surgical implantations; etc.), or may cause serious property damage (spacesystem; undersea repeaters; nuclear power control systems; aircraft control systems; key plant systems; military equipment; etc.). Renesas Electronics
disclaims any and all liability for any damages or losses incurred by you or any third parties arising from the use of any Renesas Electronics productthat is inconsistent with any Renesas Electronics data sheet, user’s manual or other Renesas Electronics document.
7. No semiconductor product is absolutely secure. Notwithstanding any security measures or features that may be implemented in Renesas Electronics
hardware or software products, Renesas Electronics shall have absolutely no liability arising out of any vulnerability or security breach, including but
not limited to any unauthorized access to or use of a Renesas Electronics product or a system that uses a Renesas Electronics product. RENESASELECTRONICS DOES NOT WARRANT OR GUARANTEE THAT RENESAS ELECTRONICS PRODUCTS, OR ANY SYSTEMS CREATED USINGRENESAS ELECTRONICS PRODUCTS WILL BE INVULNERABLE OR FREE FROM CORRUPTION, ATTACK, VIRUSES, INTERFERENCE,
HACKING, DATA LOSS OR THEFT, OR OTHER SECURITY INTRUSION (“Vulnerability Issues”). RENESAS ELECTRONICS DISCLAIMS ANY AND
ALL RESPONSIBILITY OR LIABILITY ARISING FROM OR RELATED TO ANY VULNERABILITY ISSUES. FURTHERMORE, TO THE EXTENTPERMITTED BY APPLICABLE LAW, RENESAS ELECTRONICS DISCLAIMS ANY AND ALL WARRANTIES, EXPRESS OR IMPLIED, WITHRESPECT TO THIS DOCUMENT AND ANY RELATED OR ACCOMPANYING SOFTWARE OR HARDWARE, INCLUDING BUT NOT LIMITED TO
THE IMPLIED WARRANTIES OF MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE.
8. When using Renesas Electronics products, refer to the latest product information (data sheets, user’s manuals, application notes, “General Notes for
Handling and Using Semiconductor Devices” in the reliability handbook, etc.), and ensure that usage conditions are within the ranges specified byRenesas Electronics with respect to maximum ratings, operating power supply voltage range, heat dissipation characteristics, installation, etc. Renesas
Electronics disclaims any and all liability for any malfunctions, failure or accident arising out of the use of Renesas Electronics products outside of suchspecified ranges.
9. Although Renesas Electronics endeavors to improve the quality and reliability of Renesas Electronics products, semiconductor products have specificcharacteristics, such as the occurrence of failure at a certain rate and malfunctions under certain use conditions. Unless designated as a high reliability
product or a product for harsh environments in a Renesas Electronics data sheet or other Renesas Electronics document, Renesas Electronics
products are not subject to radiation resistance design. You are responsible for implementing safety measures to guard against the possibility of bodily
injury, injury or damage caused by fire, and/or danger to the public in the event of a failure or malfunction of Renesas Electronics products, such as
safety design for hardware and software, including but not limited to redundancy, fire control and malfunction prevention, appropriate treatment foraging degradation or any other appropriate measures. Because the evaluation of microcomputer software alone is very difficult and impractical, you areresponsible for evaluating the safety of the final products or systems manufactured by you.
10. Please contact a Renesas Electronics sales office for details as to environmental matters such as the environmental compatibility of each Renesas
Electronics product. You are responsible for carefully and sufficiently investigating applicable laws and regulations that regulate the inclusion or use ofcontrolled substances, including without limitation, the EU RoHS Directive, and using Renesas Electronics products in compliance with all theseapplicable laws and regulations. Renesas Electronics disclaims any and all liability for damages or losses occurring as a result of your noncompliancewith applicable laws and regulations.
11. Renesas Electronics products and technologies shall not be used for or incorporated into any products or systems whose manufacture, use, or sale isprohibited under any applicable domestic or foreign laws or regulations. You shall comply with any applicable export control laws and regulations
promulgated and administered by the governments of any countries asserting jurisdiction over the parties or transactions.
12. It is the responsibility of the buyer or distributor of Renesas Electronics products, or any other party who distributes, disposes of, or otherwise sells ortransfers the product to a third party, to notify such third party in advance of the contents and conditions set forth in this document.
13. This document shall not be reprinted, reproduced or duplicated in any form, in whole or in part, without prior written consent of Renesas Electronics.
14. Please contact a Renesas Electronics sales office if you have any questions regarding the information contained in this document or Renesas
Electronics products.
(Note1)(Note2)“Renesas Electronics” as used in this document means Renesas Electronics Corporation and also includes its directly or indirectly controlledsubsidiaries.
“Renesas Electronics product(s)” means any product developed or manufactured by or for Renesas Electronics.
(Rev.5.0-1 October 2020)

Corporate Headquarters
TOYOSU FORESIA, 3-2-24 Toyosu,
Koto-ku, Tokyo 135-0061, Japan
www.renesas.com

Contact information

For further information on a product, technology, the most up-to-dateversion of a document, or your nearest sales office, please visit:www.renesas.com/contact/.

Trademarks

Renesas and the Renesas logo are trademarks of Renesas Electronics
Corporation. All trademarks and registered trademarks are the propertyof their respective owners.

© 2021 Renesas Electronics Corporation. All rights reserved.