Скачать презентацию

Идет загрузка презентации. Пожалуйста, подождите

Презентация была опубликована 2 года назад пользователемАлина Ядовина

1 PAT301, Workshop 8, October 2003 WS8-1 WORKSHOP 8 VARIOUS METHODS OF SOLID MESHING

2 WS8-2 PAT301, Workshop 8, October 2003

3 WS8-3 PAT301, Workshop 8, October 2003 n Problem Description u Import a parasolid solid. Use the geometry to create the geometry for use with either the IsoMesh or TetMesh. Create the geometry for use with the IsoMesh by breaking the original solid into a set of six faced blue parametric solids. The actions used to do this are 1) create breaking planes, 2) break the solid several times, 3) refit some of the white solids to be blue solids, and 4) mirror. Create geometry for use with the TetMesh by breaking the original solid two times. This is done only to create solid faces for use in creating pressure loading. The original solid could be TetMeshed as is. Four sets of solids are created. The various sets are meshed with hex8, hex20, tet4 or tet10 topologies. The four models are completed and analyzed using MSC.Nastran. Finally, the results for the models are viewed in MSC.Patran. A brief comparison is made of the results.

4 WS8-4 PAT301, Workshop 8, October 2003 n Suggested Exercise Steps 1. Create a new database called lug.db. 2. Import a parasolid solid using the file lug.xmt. 3. Rename the default group, create a new group, and place a copy of the original solid in the new group. Groups will be used to separate the four models. This will make it easier to work with them. 4. Post(show) only the group for the hex8 element mesh. 5. Create three points to be used for creating a plane for breaking the solid. 6. Create two breaking planes. 7. Break the hex8 solid twice. 8. Create five points, these will be used in creating more breaking planes. 9. Create two more breaking planes. 10. Break the solid twice 11. Create a point and plane. 12. Break the solid. 13. Practice using Plot/Erase, and refit the solids to make all solids blue parametric solids. 14. Delete the unwanted solid(from first break; at top of model). 15. Mirror the five blue solids so that they appear where the deleted solid was.

5 WS8-5 PAT301, Workshop 8, October 2003 n Suggested Exercise Steps (Cont.) 16. Create a group for the hex20 mesh model, copy the hex8 geometry into it and post the group with the tet4 geometry. 17. Edit the tet4 geometry by breaking the solid twice. 18. Create a group for the tet10 mesh, copy the tet4 geometry into it, and post all the groups. 19. Create a cylindrical coordinate system at the center of the hole for the hex8 model. 20. Post just the hex8 group, IsoMesh with hex8 topology, then repeat for the hex20 group, using hex20 topology. 21. Post just the tet4 group, TetMesh with tet4 topology, then repeat for the tet10 group, using tet10 topology. 22. Post all four groups. Display the element free edges, equivalence, then display the free edges again. 23. Create pressure loads and constraints for all four models. First, create three more cylindrical coordinate systems for the other three models by translating the original coordinate frame for the hex8 model. Use the coordinate systems to create four fields. Each field corresponds to a unique model. The fields use the function sinr(T). Having created four fields, create four pressure loadings using a scalar factor of , so the loading for each model is 1000*sinr(T). Each model is constrained on its back faces.

6 WS8-6 PAT301, Workshop 8, October 2003 n Suggested Exercise Steps (Cont.) 24. Create material and element properties. 25. Check the default load case to see that all the pressure and constraints have been applied. 26. Perform the analysis of the four models using MSC.Nastran. 27. Post process the results. First, attach the XDB file. Display the deformed shape with and without the undeformed models and geometry. Add the von Mises stress fringe to the display. Create three more viewports. Post each group to the corresponding viewport. Display the deformed shape and stress fringe for each group in each viewport.

7 WS8-7 PAT301, Workshop 8, October 2003 Step 1. Create New Database for 3D Lug Create a new database called lug.db and set the model preferences. a. File / New. b. Enter lug as the file name. c. Click OK. d. Set the Tolerance by clicking on Based on Model. e. Enter 10.0 for the Approximate Model Dimension f. Set the Analysis Code and Analysis Type to MSC.Nastran and Structural, respectively. g. Click OK. a b c e d

8 WS8-8 PAT301, Workshop 8, October 2003 Step 2. Import the Parasolid.xmt File Import the existing parasolid and change views. a. File / Import. b. Select lug.xmt and click Apply. c. Click OK. d. Select Iso 1 View icon. a b c d

9 WS8-9 PAT301, Workshop 8, October 2003 Step 2. Import the Parasolid.xmt File (Cont.)

10 WS8-10 PAT301, Workshop 8, October 2003 Step 3. Rename, Create New Group, and Translate Geometry. Rename the default group and create a new group for the Tet4 geometry. a. Group / Modify. b. Click Rename. c. Enter hex8 for new name and click Apply. d. Group / Create. e. Enter tet4 under New Group Name. f. Select Make Current box. g. Click Apply and Cancel. a b c d e f g

11 WS8-11 PAT301, Workshop 8, October 2003 Step 3. Rename, Create New Group, and Translate Geometry (Cont.) Copy the solid(Solid 1) into the tet4 group. a. Geometry : Transform / Solid / Translate. b. Enter under Translation Vector. c. Turn off Auto Execute. Select the solid by dragging the mouse over it. d. Click Apply. a b d c c

12 WS8-12 PAT301, Workshop 8, October 2003 Step 4. Post Only the Hex8 Group. Post only the group hex8. a. Group / Post… b. Unselect the tet4 group from the list of group names. c. Click Apply then Cancel. d. Click Fit View icon. e. Reset graphics to eliminate the orange lines. a b c de

13 WS8-13 PAT301, Workshop 8, October 2003 Step 5. Create Points for Plane Creation Create the points that will be used later to create several breaking planes. a. Geometry : Create / Point / Extract. b. Make sure the Parametric Position is set to 0.5. c. Turn Auto Execute off. d. Shift-click three edges: the two edges that make up the outer radius of the solid, and one of the back edges. e. Click Apply. f. Increase Point size. a b c e d f c

14 WS8-14 PAT301, Workshop 8, October 2003 Step 6. Create the First Two Planes Create two planes that will be used for breaking the solid. a. Geometry : Create / Plane / 3 Points. b. Click under Point 1 List. Select the first point for the first plane. Then, select the other two points. Note, with Auto Execute on the mouse focus changes to the next line automatically. c. Select next 3 points to create the second plane. a c b

15 WS8-15 PAT301, Workshop 8, October 2003 Step 7. Break Solid Break the solid using the newly created planes. a. Geometry : Edit / Solid / Break. b. Option : Plane c. Turn off Auto Execute. Select the Lug for Solid List(Solid 1) and Plane 2 for Break Plane List. d. Click Apply. e. Click Yes when message pops up. f. Select lower solid for Solid List(Solid 4) and Plane 1 for Break Plane List. g. Repeat steps d and e. a b c d e Plane 2 Plane 1

16 WS8-16 PAT301, Workshop 8, October 2003 Step 8. Create More Points for Breaking Planes Create 5 points that will be used to create several planes. a. Geometry : Create / Point / Extract. b. Make sure Parametric Position is set to 0.5. c. Shift select 5 edges: four edges that make up the lower half of the lug-hole, and an edge at the base of the solid. d. Click Apply. a b d c c

17 WS8-17 PAT301, Workshop 8, October 2003 Step 8. Create More Points (Cont.) Create points at the center of the hole of the Lug. a. Geometry : Create / Point / ArcCenter b. Turn Auto Execute off. c. Shift click two edges that make up the hole of the lug. d. Click Apply. a d c b b

18 WS8-18 PAT301, Workshop 8, October 2003 Step 9. Create More Breaking Planes Create two more planes that will be used to break the solids again. a. Geometry : Create / Plane / 3 Points. b. Select three points that define a plane and it will automatically be created. c. Select the next three points for the next plane. a b b c

19 WS8-19 PAT301, Workshop 8, October 2003 Step 10. Break Solids Again Break the solids again, this time, using the newly created planes. a. Geometry : Edit / Solid / Break. b. Select bottom left portion of solid(Solid 5) and break along Plane 3. c. Click Apply. d. Click Yes when message appears. e. Select bottom right portion of solid(Solid 6) and break along Plane 4. f. Repeat steps c and d. a b c d e b

20 WS8-20 PAT301, Workshop 8, October 2003 Step 11. Create Final Point and Plane. Now create the last point that will be used to create one more plane. a. Geometry : Create / Point / Project. b. Select the point at the bottom end of the sloped edge where it intersects with the base, under Point List. c. Select edge normal to the hole. e. Geometry : Create / Plane / 3 Points. f. Select two points along the base of the solid and point from projection. a b c d e g f b c f

21 WS8-21 PAT301, Workshop 8, October 2003 Step 12. Break Solid Break a solid one final time using the recently created plane. a. Geometry : Edit / Solid / Break. b. Option : Plane c. Select solid at bottom-right for Solid List(Solid 9). d. Select Plane 5 for Break Plane List. e. Click Apply. f. Click Yes when message appears. a b c d e f

22 WS8-22 PAT301, Workshop 8, October 2003 Step 13. Erase all Geometry, Plot Desired Solids, and Refit Erase all of the geometry from the screen, then plot only the desired five solids. Then, refit the five solids so that they become parametric (blue) solids. a. Click the Plot/Erase icon. b. Shift-click the 5 solids at the bottom of the geometry, under Selected Entities. c. Click the Erase button under Geometry. d. Click the Plot button under Selected Entities and click OK. e. Geometry : Edit / Solid / Refit. f. Option : To TriCubicNet g. Enter 1 for all of the Refit Parameters. h. Select Delete Original Solids. i. Select all five solids by dragging a box around them. j. Click Yes when first message appears and Yes for All when second message appears. a b c d e f g h i

23 WS8-23 PAT301, Workshop 8, October 2003 Step 14. Replot and Delete Unwanted Geometry Replot all of the geometry and delete all the unwanted sections of the model, namely, the top solid and the planes. a. Click on the Plot/Erase icon. b. Click Plot under Geometry and click OK. c. Geometry : Delete / Solid. d. Select top solid and click Apply. e. Geometry : Delete / Plane f. Select all five planes by dragging a box around the entire solid. g. Click Apply. b c d e f g a

24 WS8-24 PAT301, Workshop 8, October 2003 Step 15. Complete the Geometry for the Hex Mesh Finish creating all the geometry by mirroring the five parametric solids, producing a complete parametric model. a. Geometry : Transform / Solid / Mirror. b. Select the 3 Points for Plane icon under Define Mirror Plane Normal. c. Make sure the Reverse Solid box is checked d. Select all the solids and click Apply. a b c d b Select any 3 points that lie within this plane. This plane will serve as the mirror plane.

25 WS8-25 PAT301, Workshop 8, October 2003 Step 16. Create Group, Copy Geometry, and Post only Tet4 Group Create the Hex20 group and translate the geometry. a. Group : Create b. Enter hex20 for New Group Name. c. Click Apply and Cancel. d. Geometry : Transform / Solid / Translate. e. Enter for Trans- lation Vector. f. Select all ten solids and click Apply. g. Group : Post. h. Select group tet4. i. Click Apply, then Cancel. j. Click Fit View icon. a b c d e f g h i j

26 WS8-26 PAT301, Workshop 8, October 2003 Step 17. Edit Solid for TetMesh Edit the parasolid solid in group tet4 by creating three points, exactly as the first three points were created for the hex8 model. a. Geometry : Create / Point / Extract. b. Make sure the Parametric Position is set to 0.5. c. Shift-click three edges: the two edges that make up the outer radius of the solid, and one of the back edges. d. Click Apply. a b c d c

27 WS8-27 PAT301, Workshop 8, October 2003 Step 17. Edit Solid for TetMesh (Cont.) Continue editing the solid by creating two planes. a. Geometry : Create / Plane / 3 Points. b. Select 3 points to create the first plane. c. Click Apply. d. Select next 3 points to create the second plane. e. Click Apply. a b c The planes being created in this step have the same relative location as the planes for the hex8 group. b

28 WS8-28 PAT301, Workshop 8, October 2003 Step 17. Edit Solid for TetMesh (Cont.) Break the solid into four parts along the planes, then delete the planes. a. Geometry : Edit / Solid / Break. b. Option : Plane c. Select Solid 2 for Solid List and Plane 2 for Break Plane List. d. Click Apply. e. Click Yes when message pops up. f. Shift-click both halves of the solid for Solid List and select Plane 1 for Break Plane List. g. Repeat steps d and e. h. Geometry : Delete / Plane. i. Select all planes and click Apply. a b c d e c f

29 WS8-29 PAT301, Workshop 8, October 2003 Step 18. Create Group, Translate Geometry, and Post All Create a final group, tet10, and Translate(copy) the newly created solids. Then post all four models. a. Group : Create b. Enter tet10 under New Group Name. c. Click Apply, then Cancel. d. Geometry : Transform / Solid / Translate. e. Enter for Translation Vector. f. Select all four solids in group tet4 and click Apply. g. Group : Post. h. Click Select All button. i. Click Apply, then Cancel. a b c d h g f e i

30 WS8-30 PAT301, Workshop 8, October 2003 Step 18. Create Group, Translate Geometry, and Post All (Cont.)

31 WS8-31 PAT301, Workshop 8, October 2003 Step 19. Create a Coordinate System Create a cylindrical coordinate system for the hex8 model. This coordinate frame will later be used to apply a radial pressure. It is not necessary to create coordinate frames for the other models, because this frame will later be translated to the other three models. a. Geometry : Create / Coord / 3Point. b. Type : Cylindrical. c. Select 3 points (as indicated). Point on Plane 1-3 Origin Point on Axis 3 This is what the coordinate system should look like for the hex8 model. a b c

32 WS8-32 PAT301, Workshop 8, October 2003 Step 20. IsoMesh the Hex8 and Hex20 Groups Mesh solids for the hex8 and hex 20 groups using the IsoMesher. a. Group : Post b. Select the hex8 group. c. Click Apply, then Cancel. d. Elements : Create / Mesh / Solid. e. Select Hex, IsoMesh, and Hex8. f. Remove check on Automatic Calculation and enter 0.5 for Global Edge Length. g. Select the hex8 geometry and click Apply. h. Repeat steps a through g, posting the hex20 group, selecting Hex20 instead of Hex8 for the Topology and applying it to the hex20 geometry. Note the difference between the hex8 and hex20 meshes, namely the midsize nodes. It may be necessary click the Refresh Graphics and the Fit View icons when switching from group to group. a d e f g h

33 WS8-33 PAT301, Workshop 8, October 2003 Step 21. TetMesh the Tet4 and Tet10 Groups Now, create the final two meshes for the remaining models. This time, the TetMesh-er will be utilized. a. Group : Post b. Select the tet4 group. c. Click Apply, then Cancel. d. Elements : Create / Mesh / Solid. e. Select Tet, TetMesh, and Tet4. f. Select the tet4 geometry, Solid 35:38, for the Input List. g. Remove check on Automatic Calculation and enter 0.5 for Global Edge Length. h. Click on Assembly Parameters… and and click on Match Parasolid Faces. I. Select tet4 solids again. j. Click Apply. k. Repeat steps a through j, posting the tet10 group, selecting Tet10 for the Topology instead of Tet4, and applying it to the tet10 geometry. Note the absence or presence of midsize nodes. d e g f i h j h

34 WS8-34 PAT301, Workshop 8, October 2003 Step 22. Observe Element Free Edges of Meshed Solids Post all four groups and observe the element free edges. a. Group : Post. b. Select all four groups. c. Click Apply, then Cancel. d. Elements : Verify / Element / Boundaries. e. Click Apply (Observe the free element edges of meshes. This can be easily remedied by equivalencing the meshes), f. Elements : Equivalence / All / Tolerance Cube. g. Click Apply. h. Elements : Verify / Element / Boundaries. i. Click Apply. The yellow lines indicate the element free edges. Here, the elements are not connected. After equivalencing, the elements are connected and the only yellow lines are for the desired free edges. It is not necessary to post each group and equivalence each model. The equivalence All action is applied to all 4 models. d e f g

35 WS8-35 PAT301, Workshop 8, October 2003 Step 23. Create Loads and Boundary Conditions In order to create the loads and boundary conditions, the cylindrical coordinate system for the hex8 model must be translated to the remaining models. a. Geometry : Transform / Coord / Translate. b. Enter for Trans- lation Vector. c. Select Coord 1 for Coordinate Frame List. d. Repeat steps a through c for creating Coords 3 and 4 using for the Translation Vector,and selecting both coordinate frames Coord 1 and Coord 2 for the Coordinate Frame List. a b c

36 WS8-36 PAT301, Workshop 8, October 2003 Step 23. Create Loads and Boundary Conditions (Cont.) Create a field for each pressure loading. a. Click on the Smooth Shaded icon. b. Fields : Create / Spatial / PCL Function. c. Enter sin_pressure_hex8 for Field Name. d. Select Coord 1 for Coordinate System. e. Enter sinr(T) for Scalar Function and click Apply. f. Create 3 more fields by following steps c through e. Refer to the table below for the corresponding field names and coordinate frames. Field NameCoordinate System sin_pressure_hex8Coord 1 sin_pressure_hex20Coord 2 sin_pressure_tet4Coord 3 sin_pressure_tet10Coord 4 There should be four different fields, and each field name should reference a corresponding coordinate frame (i.e., there should be one field per model.) When creating the fields it is not necessary to post each group separately. b c d e a

37 WS8-37 PAT301, Workshop 8, October 2003 Step 23. Create Loads and Boundary Conditions (Cont.) Create four pressures, one for each model, using the created fields. a. Loads/BCs : Create : Pressure / Element Uniform. b. Enter hex8 for New Set Name. c. Click on Input Data… d. Enter 1000 under Load/BC Set Scale Factor. e. Under Pressure, select sin_pressure_hex8 from Spatial Fields. f. Click OK. a b c d e f

38 WS8-38 PAT301, Workshop 8, October 2003 Step 23. Create Loads and Boundary Conditions (Cont.) Set the application region for the pressure. a. Click on the Select Application Region. b. Shift-click the four faces (as indicated) and click Add. c. Click OK. d. Click Apply a b c d Select these four faces for the application region for the hex8 pressure. b

39 WS8-39 PAT301, Workshop 8, October 2003 Step 23. Create Loads and Boundary Conditions (Cont.) Pressure NameSpatial Field hex8sin_pressure_hex8 hex20sin_pressure_hex20 tet4sin_pressure_tet4 tet10sin_pressure_tet10 These are two typical faces where the pressures for the tet4 and tet10 groups should be applied. Repeat the previous steps for the remaining three pressures, zooming in on each model as needed. After all four pressures are created, click the Fit view icon to show all the models. The viewport should match the illustration below. Included is a table of the pressure names and the corresponding spatial fields. These are four typical faces where the pressures for the hex8 and hex20 groups should be applied.

40 WS8-40 PAT301, Workshop 8, October 2003 Step 23. Create Loads and Boundary Conditions (Cont.) Create constraints on each model with just one constraint set. a. Loads/BCs : Create / Displacement / Nodal. b. Enter constraint for New Set Name. c. Click Input Data… d. Enter for Translations only. e. Click OK. f. Click Select Application Region… g. Click the Surface or Face icon. h. Shift-click the back faces of all the models(see next page) and click Add, then OK. i. Click Apply. a b c d e f g h i g

41 WS8-41 PAT301, Workshop 8, October 2003 Step 23. Create Loads and Boundary Conditions (Cont.)

42 WS8-42 PAT301, Workshop 8, October 2003 Step 24. Create Material and Element Properties Create the material properties for the models. a. Materials : Create / Isotropic / Manual Input. b. Enter Aluminum for Material Name. c. Click Input Properties… d. Enter 10E6 and 0.3 for the Elastic Modulus and Poisson Ratio, respectively. e. Click OK. f. Click Apply. a b c d e f

43 WS8-43 PAT301, Workshop 8, October 2003 Step 24. Create Material and Element Properties (Cont.) Create the element properties using one property set. a. Properties : Create / 3D / Solid. b. Enter Solid for Property Set Name. c. Click Input Properties… d. Click on Mat Prop Name icon and select aluminum. e. Click OK. f. For Application Region, select all solids, and click Add. g. Click Apply. a b c d e f g

44 WS8-44 PAT301, Workshop 8, October 2003 Step 25. Check the Load Case Check the load case Default to ensure that all the pressure loads and the constraint have been included. a. Load Cases : Modify. b. Click on load case name Default. c. Make sure all the loads and constraint are listed, and click Cancel. Even though there are four disjoint(unrelated) models in this database, MSC.Patran views them as one model. MSC.Nastran will solve the models as one model as long is each model is correctly defined. a b c

45 WS8-45 PAT301, Workshop 8, October 2003 Step 26. Run Analysis Run the analysis by submitting the model to MSC.Nastran. a. Analysis : Analyze / Entire Model / Full Run. b. Click Translation Parameters… c. Make sure XDB and Print is selected for Data Output and click OK. d. Click on Solution Type… e. Make sure Linear Static is selected and click OK. f. Click Apply. a b c d e f

46 WS8-46 PAT301, Workshop 8, October 2003 Step 27. Read and Display Analysis Results Read and compare the results for the four models. First, attach the XDB file. a. Analysis : Access Results / Attach XDB / Result Entities. b. Click Select Results File… c. Select lug.xdb and click OK. d. Click Apply. a b c d

47 WS8-47 PAT301, Workshop 8, October 2003 Step 27. Read and Display Analysis Results (Cont.) Create a deformation plot of all four models. It will be difficult to see the deformation with the undeformed shape and geometry posted. So, unpost both. a. Results : Create / Deformation. b. Select Displacements, Transitional and click Apply. c. Click on the Display Attibutes icon. d. Remove check from Show Undeformed and Show Title and click Apply. e. Click on Plot/Erase icon. f. Click Erase under Geometry, and click OK. a b f e c d

48 WS8-48 PAT301, Workshop 8, October 2003 Step 27. Read and Display Analysis Results (Cont.)

49 WS8-49 PAT301, Workshop 8, October 2003 Step 27. Read and Display Analysis Results (Cont.) Plot the von Mises stress for each of the models. a. Results : Create / Fringe. b. Select Stress, Tensor and von Mises. c. Click Apply. a b c

50 WS8-50 PAT301, Workshop 8, October 2003 Step 27. Read and Display Analysis Results (Cont.) Here is the deformed shape plotted with the von Mises stress. Note that it is somewhat difficult making a comparison between each of the models because each model is referenced to the same color chart. Throughout the next series of steps, each model will be assigned to an individual view port. This will allow for much easier comparisons between each model.

51 WS8-51 PAT301, Workshop 8, October 2003 Step 27. Read and Display Analysis Results (Cont.) Modify the current viewport and create three others. a. Viewport : Modify. b. Click Rename… c. Enter hex8 under Rename As. d. Click Apply, then Cancel. e. Viewport : Create. f. Enter hex20 and click Apply. g. Repeat step for creating viewports tet4 and tet10. h. Click Cancel. i. Viewport : Tile. There should now be four separate viewports. The next step will involve posting only one unique group per viewport. a b c f h d

52 WS8-52 PAT301, Workshop 8, October 2003 Step 27. Read and Display Analysis Results (Cont.) Unpost the Coordinate frames and post each model with its corresponding viewport. a. Click on Display: Coord. Frames… b. Select Unpost All and click OK. c. Select the hex8 viewport by clicking on it. d. Group : Post. e. Select the hex8 group and click Apply. f. Click on the Fit view icon. g. Follow steps d through g for the remaining viewports, selecting each one and posting the corresponding group. h. Cancel from the group dialogue. b d e h f a

53 WS8-53 PAT301, Workshop 8, October 2003 Step 27. Read and Display Analysis Results (Cont.) Create the deformation and the fringe of the von Mises Stress for the model in each viewport. a. Make the viewport hex8 current by clicking in it. b. Results : Create / Deformation. c. Select Displacements, Transitional and click Apply. d. Results : Create / Fringe. e. Select Stress Tensor and von Mises. f. Click Apply. g. Repeat steps a through f for the remaining viewports. b c c d

54 WS8-54 PAT301, Workshop 8, October 2003 Here is an illustration of the four tiled viewports with the corresponding model and results, each having a maximum stress value indicated. Note the similarity between results for the hex meshes and the tet10 mesh. The tet4 mesh model is very inaccurate. The TetMesh is a very convenient approach because it is not necessary to break up the solid into many parts, unlike the IsoMesh technique. Step 27. Read and Display Analysis Results (Cont.)

Еще похожие презентации в нашем архиве:

Готово:

WORKSHOP 9B 2½ D CLAMP – ISO MESHER. WS9B-2 NAS120, Workshop 9B, May 2006 Copyright 2005 MSC.Software Corporation.

WORKSHOP 9B 2½ D CLAMP – ISO MESHER. WS9B-2 NAS120, Workshop 9B, May 2006 Copyright 2005 MSC.Software Corporation.

© 2017 MyShared Inc.

All rights reserved.