Skip to main content
Log in

Optimization Techniques for 3D Graphics Deployment on Mobile Devices

  • 3DR Review
  • Published:
3D Research

Abstract

3D Internet technologies are becoming essential enablers in many application areas including games, education, collaboration, navigation and social networking. The use of 3D Internet applications with mobile devices provides location-independent access and richer use context, but also performance issues. Therefore, one of the important challenges facing 3D Internet applications is the deployment of 3D graphics on mobile devices. In this article, we present an extensive survey on optimization techniques for 3D graphics deployment on mobile devices and qualitatively analyze the applicability of each technique from the standpoints of visual quality, performance and energy consumption. The analysis focuses on optimization techniques related to data-driven 3D graphics deployment, because it supports off-line use, multi-user interaction, user-created 3D graphics and creation of arbitrary 3D graphics. The outcome of the analysis facilitates the development and deployment of 3D Internet applications on mobile devices and provides guidelines for future research.

Graphical Abstract

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5

Similar content being viewed by others

References

  1. Superdata. Superdata. http://www.superdataresearch.com/global-mmo-games-spending-exceeds-12bn/.

  2. Ortiz, S. (2010). Is 3D finally ready for the web? Computer, 43(1), 14–16.

  3. Google. The project Tango. https://www.google.com/atap/projecttango/#project.

  4. You, Y., & Murphy, D. (2012). From 2D web map to mobile 3D mirrorworld: A live virtual advertising use case. In 6th International conference on next generation mobile applications, services, and technologies, NGMAST 2012 (pp. 42–47).

  5. Boulos, M. N. K., Hetherington, L., & Wheeler, S. (2007). Second Life: An overview of the potential of 3-D virtual worlds in medical and health education. Health Information and Libraries Journal, 24, 233–245.

    Article  Google Scholar 

  6. Hew, K. F., & Cheung, W. S. (2010). Use of three-dimensional (3-D) immersive virtual worlds in K-12 and higher education settings: A review of the research. British Journal of Educational Technology, 41, 33–55.

    Article  Google Scholar 

  7. Lou Maher, M., Liew, P.-S., Gu, N., & Ding, L. (2005). An agent approach to supporting collaborative design in 3D virtual worlds. Automation in Construction, 14(2), 189–195.

    Article  Google Scholar 

  8. Nurminen, A. (2007). Mobile, hardware-accelerated urban 3D maps in 3G networks. In 12th International conference on 3D web technology, proceedings (pp. 7–16).

  9. Hendaoui, A., Limayem, M., & Thompson, C. W. (2008). 3D social virtual worlds: Research issues and challenges. IEEE Internet Computing, 12, 88–92.

    Article  Google Scholar 

  10. Intel. Introducing the Intel Science and Technology Center for Secure Computing. http://download.intel.com/newsroom/kits/research/2011/pdfs/ISTC-SC_WhitePaper.pdf.

  11. SocialBakers. SocialBakers. http://www.socialbakers.com/blog/554-facebook-hits-488-million-mobile-users-infographic.

  12. Kanjo, E., Benford, S., Paxton, M., Chamberlain, A., Fraser, D. S., Woodgate, D., et al. (2008). MobGeoSen: Facilitating personal geosensor data collection and visualization using mobile phones. Personal and Ubiquitous Computing, 12, 599–607.

    Article  Google Scholar 

  13. Back, M., Childs, T., Dunnigan, A., Foote, J., Gattepally, S., Liew, B., Shingu, J., & Vaughan, J. (2010). The Virtual Factory: Exploring 3D worlds as industrial collaboration and control environments. Proceedings: IEEE virtual reality (pp. 257–258).

  14. Capin, T., Pulli, K., & Akenine-Möller, T. (2008). The state of the art in mobile graphics research. IEEE Computer Graphics and Applications, 28, 74–84.

    Article  Google Scholar 

  15. Hildebrandt, D., Klimke, J., Hagedorn, B., & Döllner, J. (2011). Service-oriented interactive 3D visualization of massive 3D city models on thin clients. In 2nd International conference on computing for geospatial research and applications, Washington, USA (p. 1). New York: ACM.

  16. Nadalutti, D., Chittaro, L., & Buttussi, F. (2006). Rendering of X3D content on mobile devices with OpenGL ES. In 11th ACM international conference on 3D web technology (pp. 19–26).

  17. Döllner, J., Hagedorn, B., & Klimke, J. (2012). Server-based rendering of large 3D scenes for mobile devices using G-buffer cube maps. In 17th ACM international conference on 3D web technology (Vol. 1, pp. 97–100).

  18. Xiao, Y., Bhaumik, R., Yang, Z., Siekkinen, M., Savolainen, P., & Ylä-Jääski, A. (2010). A system-level model for runtime power estimation on mobile devices. In IEEE/ACM international conference on cyber, physical and social computing (pp. 27–34).

  19. Preda, M., Villegas, P., & Morán, F. (2008). A model for adapting 3D graphics based on scalable coding, real-time simplification and remote rendering. Visual Computer, 24, 881–888.

    Article  Google Scholar 

  20. Gotchev, A., Akar, G. B., Capin, T., Strohmeier, D., & Boev, A. (2011). Three-dimensional media for mobile devices. Proceedings of the IEEE, 99(4), 708–741.

    Article  Google Scholar 

  21. Evans, A., Romeo, M., Bahrehmand, A., Agenjo, J., & Blat, J. (2014). 3D graphics on the web: A survey. Computational Graphics, 41, 43–61.

    Article  Google Scholar 

  22. Kim, J., Choi, J., Chang, D., Kwon, T., Choi, Y., & Yuk, E. (2005). Traffic characteristics of a massively multi-player online role playing game. In 4th ACM SIGCOMM workshop on Network and system support for games: NetGames05 (pp. 1–8). New York: ACM Press.

  23. Wang, X., Kim, H., Vasilakos, A., Kwon, T., Choi, Y., Choi, S., & Jang, H. (2009). Measurement and analysis of world of warcraft in mobile WiMAX networks. In 8th Annual workshop on network and systems support for games.

  24. Chang, C.-F., & Ger, S.-H. (2002). Enhancing 3D graphics on mobile devices by image-based rendering. In Advances in multimedia information processingPCM 2002 (pp. 1–17). Berlin: Springer.

  25. Schinko, C., Berndt, R., Eggeling, E., & Fellnet, D. (2014). A scalable rendering framework for generative 3D content. In Proceedings of the nineteenth international ACM conference on 3D web technologies (pp. 81–87). Vancouver, BC: ACM.

  26. Lamberti, F., & Sanna, A. (2007). A streaming-based solution for remote visualization of 3D graphics on mobile devices. IEEE Transactions on Visualization and Computer Graphics, 13, 247–260.

    Article  Google Scholar 

  27. Merkle, P., Wang, Y., Müller, K., Smolic, A., & Wiegand, T. (2009). Video plus depth compression for mobile 3D services. In 3DTV-CON 2009: 3rd 3DTV-conference: The true visionCapture, transmission and display of 3D video, proceedings (pp. 1–4).

  28. Paravati, G., Sanna, A., Lamberti, F., & Ciminiera, L. (2011). An adaptive control system to deliver interactive virtual environment content to handheld devices. Mobile Networks and Applications, 16, 385–393.

    Article  Google Scholar 

  29. Siltanen, P., Karhela, T., Woodward, C., & Savioja, P. (2007). Augmented reality for plant lifecycle management. In 13th International conference on concurrent enterprising, Sofia Antipolis (pp. 407–414).

  30. Over, M., Schilling, A., Neubauer, S., & Zipf, A. (2010). Generating web-based 3D City Models from OpenStreetMap: The current situation in Germany. Computers, Environment and Urban Systems, 34, 496–507.

    Article  Google Scholar 

  31. SecondLife. SecondLife. http://wiki.secondlife.com/wiki/Primitive.

  32. Alatalo, T. (2011). An entity-component model for extensible virtual worlds. IEEE Internet Computing, 15, 30–37.

    Article  Google Scholar 

  33. Hoppe, H. (1996). Progressive meshes. In Proceedings of the 23rd annual conference on Computer graphics and interactive techniques: SIGGRAPH96 (pp. 99–108). New York: ACM Press.

  34. Cantlay, I. (2005). MipMap-level measurements. In M. Pharr & R. Fernando (Eds.), GPU Gems 2: Programming techniques for high-performance graphics and general-purpose computation. Boston, USA: Addison-Wesley Professionals.

  35. Mochocki, B., Lahiri, K., & Cadambi, S. (2006). Power analysis of mobile 3D graphics. In Design automation and test in Europe conference (pp. 107–112).

  36. Ström, J., & Akenine-Möller, T. (2005). i PACKMAN: High-quality, low-complexity texture compression for mobile phones. In ACM SIGGRAPH/EUROGRAPHICS conference on graphics hardware, Los Angeles (pp. 177–182).

  37. Ström, J., & Wennersten, P. (2011). Lossless compression of already compressed textures. In ACM SIGGRAPH symposium on high performance graphics, New York (pp. 177–182).

  38. Vatjus-Anttila, J., Hickey, S., & Kuusela, E. (2011). Methods and network architecture for modifying extensible virtual environment to support mobility. In 15th MindTrek conference, Tampere (pp. 45–51).

  39. Hoque, M. A., Siekkinen, M., & Nurminen, J. K. (2011). On the energy efficiency of proxy-based traffic shaping for mobile audio streaming. In 2011 IEEE consumer communications and networking conference, CCNC2011 (pp. 891–895).

  40. Limper, M., Jung, Y., Behr, J., & Alexa, M. (2013). The POP buffer: Rapid progressive clustering by geometry quantization. Computer Graphics Forum, 21, 197–206.

    Article  Google Scholar 

  41. Munshi, A., Ginsburg, D., & Shreiner, D. (2008). OpenGL ES 2.0 programming guide. Boston: Addison-Wesley.

    Google Scholar 

  42. Stamminger, M., & Drettakis, G. (2002). Perspective shadow maps. ACM Transactions on Graphics, 21, 557–562.

    Article  Google Scholar 

  43. Kuehne, B., True, T., Commike, A., & Shreiner, D. (2005). Performance OpenGL: Platform independent techniques. In ACM SIGGRAPH conference on computer graphics and interactive techniques.

  44. Ginsburg, D., & Purnomo, B. (2014). OpenGL ES 3.0 programming guide. Boston: Addison-Wesley Professionals.

    Google Scholar 

  45. NVIDIA. NVIDIA Tegra4 family GPU architecture. http://www.nvidia.com/docs/IO/116757/Tegra_4_GPU_Whitepaper_FINALv2.pdf.

  46. Belleville, M., Cantatore, E., Fanet, H., Fiorini, P., Nicole, P., Pelgrom, M., et al. (2009). Energy autonomous systems: Future trends in devices, technology, and systems. Paris: CATRENE.

    Google Scholar 

  47. Kim, D., Jung, W., & Cha, H. (2013). Runtime power estimation of mobile AMOLED displays. In Design, automation test in Europe conference exhibition (DATE), 2013 (pp. 61–64).

  48. Dong, M., Choi, Y.-S. K., & Zhong, L. (2009). Power modeling of graphical user interfaces on OLED displays. In 46th Annual design automation conference on ZZZ: DAC09 (pp 652–657). New York: ACM Press.

  49. Dong, M., Choi, Y.-S. K., & Zhong, L. (2009). Power-saving color transformation of mobile graphical user interfaces on OLED-based displays. In Proceedings of ACM/IEEE ISLPED (pp. 339–342).

  50. Samet, H. (1989). Applications of spatial data structures: Computer graphics, image processing, and GIS. Boston, USA: Addison-Wesley Longman Publishing Co., Inc.

  51. Schmalstieg, D., & Tobler, R. F. (1999). Fast projected area computation for three-dimensional bounding boxes. Journal of Graphics Tools, 4, 37–43.

    Article  Google Scholar 

  52. Schmidt, D., & Wehn, N. (2009). DRAM power management and energy consumption: A critical assessment. In 22nd Annual symposium on integrated circuits and system design: Chip on the dunes (pp. 32:1–32:5). New York: ACM.

  53. Harjula, E., Kassinen, O., & Ylianttila, M. (2012). Energy consumption model for mobile devices in 3G and WLAN networks. In Consumer communications and networking conference (pp. 532–537).

  54. Willmott, A. (2011). Rapid simplification of multi-attribute meshes. In High-performance graphics, Lyon (pp. 151–158).

  55. Hosseini, M., Fedorova, A., Peters, J., & Shirmohammadi, S. (2012). Energy-aware adaptations in mobile 3D graphics. In 20th ACM international conference on multimedia, Nara (pp. 1017–1020).

  56. Lee, J., Choe, S., & Lee, S. (2010). Mesh geometry compression for mobile graphics. In 7th IEEE consumer communications and networking conference, CCNC 2010 (pp. 301–305).

  57. Hoppe, H. (1998). Efficient implementation of progressive meshes. Computational Graphics, 22, 27–36.

    Article  Google Scholar 

  58. Hussain, M. (2009). Efficient simplification methods for generating high quality LODs of 3D meshes. The Journal of Computer Science and Technology, 24, 604–613.

    Article  Google Scholar 

  59. Cacciola, F. Triangulated surface mesh simplification. http://doc.cgal.org/latest/Surface_mesh_simplification/index.html.

  60. Peng, J., Kim, C. S., & Kuo, C. C. J. (2005). Technologies for 3D mesh compression: A survey. Journal of Visual Communication and Image Representation, 16, 688–733.

    Article  Google Scholar 

  61. Wei, J., & Lou, Y. (2010). Feature preserving mesh simplification using feature sensitive metric. The Journal of Computer Science and Technology, 25, 595–605.

    Article  MathSciNet  Google Scholar 

  62. Lee, H., Lavoué, G., & Dupont, F. (2012). Rate-distortion optimization for progressive compression of 3D mesh with color attributes. Visual Computer, 28, 137–153.

    Article  Google Scholar 

  63. Lavoué, G., Chevalier, L., & Dupont, F. (2013). Streaming compressed 3D data on the web using JavaScript and WebGL. In 18th International conference on 3D web technology, San Sebastian (pp. 19–27).

  64. Maglo, A., Courbet, C., Alliez, P., & Hudelot, C. (2012). Progressive compression of manifold polygon meshes. In Computers and graphics (pp. 349–359). Amsterdam, The Netherlands: Elsevier.

  65. Garland, M., & Heckbert, P. S. (1997). Surface simplification using quadric error metrics. In 24th Annual conference on Computer graphics and interactive techniquesSIGGRAPH97 (pp. 209–216). New York: ACM Press.

  66. Garland, M., & Heckbert, P. S. (1998). Simplifying surfaces with color and texture using quadric error metrics. In Visualization98 (cat. no. 98CB36276, pp. 263–269).

  67. Alliez, P., & Gotsman, C. (2005). Recent advances in compression of 3D meshes. In Advances in multiresolution for geometric modelling (pp. 1–25). Berlin Heidelberg: Springer.

  68. Cignoni, P., Ganovelli, F., Gobbetti, E., Marton, F., Ponchio, F., & Scopigno, R. (2003). BDAM—Batched dynamic adaptive meshes for high performance terrain visualization. Computer Graphics Forum, 22(3), 505–514.

    Article  Google Scholar 

  69. Sloan, P.-P. J., Weinstein, D. M., & Brederson, D. J. (1998). Importance driven texture coordinate optimization. Computer Graphics Forum, 17, 97.

    Article  Google Scholar 

  70. Hunter, A., & Cohen, J. D. (2000). Uniform frequency images: Adding geometry to images to produce space-efficient textures. In Proceedings visualization 2000, VIS 2000 (cat. no. 00CH37145, pp. 243–250).

  71. Balmelli, L., Taubin, G., & Bernardini, F. (2002). Space-optimized texture maps. Computer Graphics Forum, 21(3), 411–420.

    Article  Google Scholar 

  72. Sander, P., Gortler, S., Snyder, J., & Hoppe, H. (2002). Signal-specialized parametrization. In Thirteenth eurographics workshop on rendering, 2002 (pp. 87–89).

  73. Vatjus-Anttila, J., Hickey, S., & Koskela, T. (2013). Adaptive content management for collaborative 3D virtual spaces. In 13th Conference of FRUCT Association, Petrozavodsk (pp. 132–142).

  74. Khronos. OpenGL ES version 3.0. http://www.khronos.org/registry/gles/specs/3.0/es_spec_3.0.0.pdf.

  75. Skodras, A., Christopoulos, C., & Ebrahimi, T. (2001). The JPEG 2000 still image compression standard. IEEE Signal Processing Magazine, 18, 36–58.

    Article  Google Scholar 

  76. Cheng, A. M. K., & Shang, F. (2005). Priority-driven coding of progressive JPEG images for transmission in real-time applications. In 11th IEEE international conference on embedded and real-time computing systems and applications (pp. 129–134).

  77. Sun, B., Ramamoorthi, R., Narasimhan, S. G., & Nayar, S. K. (2005). A practical analytic single scattering model for real time rendering. In ACM SIGGRAPH 2005 papers of SIGGRAPH 05 (Vol. 24, pp. 1040–1049).

  78. Cook, R. L., & Torrance, K. E. (1981). A reflectance model for computer graphics. ACM SIGGRAPH Computer Graphics, 15, 307–316.

    Article  Google Scholar 

  79. Walter, B., Marschner, S., Li, H., & Torrance, K. (2007). Microfacet models for refraction through rough surfaces. In 18th eurographics conference on rendering techniques (pp. 195–206). Grenoble: Eurographics Association.

  80. Lefohn, A. E., Sengupta, S., & Owens, J. D. (2007). Resolution-matched shadow maps. ACM Transactions on Graphics, 26, 1–17.

    Article  Google Scholar 

  81. Policarpo, F., & Oliveira, M. M. (2006). Relief mapping of non-height-field surface details. In Symposium on interactive 3D graphics and gamesSI3D06 (Vol. 1, p. 55).

  82. Dmitriev, K., & Makarov, E. (2011). Generating displacement from normal map for use in 3D games. In Proceedings of ACM SIGGRAPH 2011 talks. Vancouver, BC: ACM.

  83. Kaneko, T., Takahei, T., Inami, M., Kawakami, N., Yanagida, Y., Maeda, T., & Tachi, S. (2001). Detailed shape representation with parallax mapping. Proceedings of ICAT, 2001, 205–208.

    Google Scholar 

  84. Koulieris, G. A., Drettakis, G., Cunningham, D., & Mania, K. (2014). C-LOD: Context-aware material level-of-detail applied to mobile graphics. Computer Graphics Forum, 33(4), 41–49.

    Article  Google Scholar 

  85. Pool, J., Lastra, A., & Singh, M. (2011). Precision selection for energy-efficient pixel shaders. In ACM SIGGRAPH symposium on high performance graphics, Vancouver (pp. 159–168).

  86. Vatjus-Anttila, J., Koskela, T., & Hickey, S. (2013). Power consumption model of a mobile GPU based on rendering complexity. In 7th International conference on next generation mobile apps, services and technologies, Prague (pp. 210–215).

  87. Android. Android developers. http://developer.android.com/about/dashboards/index.html.

  88. Ström, J., & Pettersson, M. (2007). ETC2: Texture compression using invalid combinations. In 22nd ACM SIGGRAPH/EUROGRAPHICS symposium on graphics hardware, Sarajevo (pp. 63–70).

  89. Gil, B., & Trezentos, P. (2011). Impacts of data interchange formats on energy consumption and performance in smartphones. In Workshop on open source and design of communicationOSDOC11 (pp. 1–6). New York: ACM Press.

  90. Deutsch, P. (1996). GZIP file format specification version 4.3IETF RFC1952.

  91. Ziv, J., & Lempel, A. (1977). A universal algorithm for sequential data compression. IEEE Transactions on Information Theory, 23, 337–343.

    Article  MATH  MathSciNet  Google Scholar 

  92. Fielding, R. T., Gettys, J., Mogul, J., Frystyk, H., Masinter, L., Leach, P., & Berners-Lee, T. (1999). Hypertext—HTTP/1.1. http://www.ietf.org/rfc/rfc2616.txt.

  93. Alakuijala, J., & Vendevenne, L. Data compression using Zopfli. https://zopfli.googlecode.com/files/Data_compression_using_Zopfli.pdf.

  94. Ziv, J., & Lempel, A. (1978). Compression of individual sequences via variable-rate coding. IEEE Transactions on Information Theory, 24, 530–536.

    Article  MATH  MathSciNet  Google Scholar 

  95. Welch, T. (1984). A technique for high-performance data compression. Computer (Long Beach, California), 17, 8–19.

    Google Scholar 

  96. Burrows, M., & Wheeler, D. (1994). A block-sorting lossless data compression algorithm. Technical Report 124. Palo Alto: Digital Equipment Corporation.

  97. Cleary, J. G., & Witten, I. H. (1984). Data compression using adaptive coding and partial string matching. IEEE Transactions on Communications, COM-32, 396–402.

    Article  Google Scholar 

  98. Shkarin, D. (2002). PPM: One step to practicality. In Proceedings of DCC 2002. Data compression conference (pp. 202–211).

  99. Barr, K. C., & Asanović, K. (2006). Energy-aware lossless data compression. ACM Transactions on Computer Systems, 24, 250–291.

    Article  Google Scholar 

  100. Rauschenbach, U., & Schumann, H. (1999). Demand-driven image transmission with levels of detail and regions of interest. Computational Graphics, 23, 857–866.

    Article  Google Scholar 

  101. Mauve, M., Fischer, S., & Widmer, J. (2002). A generic proxy system for networked computer games. In 1st Workshop on Network and system support for gamesNETGAMES02 (pp. 25–28). New York: ACM Press.

  102. Podlipnig, S., & Böszörmenyi, L. (2003). A survey of Web cache replacement strategies. ACM Computing Surveys, 35, 374–398.

    Article  Google Scholar 

  103. Bontu, C. S., & Illidge, E. (2009). DRX mechanism for power saving in LTE—[topics in radio communications]. IEEE Communications Magazine, 47, 48–55.

    Article  Google Scholar 

  104. Siekkinen, M., Hoque, M., Nurminen, J., & Aalto, M. (2013). Streaming over 3G and LTE: How to save smartphone energy in radio access network-friendly way. In 5th Workshop on mobile video, Oslo (pp. 13–18).

  105. Vergara, E. J., & Nadjm-Tehrani, S. (2013). EnergyBox: A trace-driven tool for data transmission energy consumption studies. In Lecture notes in computer science (including subseries lecture notes in artificial intelligence and lecture notes in bioinformatics, pp. 19–34). Berlin: Springer

  106. Balasubramanian, N., Balasubramanian, A., & Venkataramani, A. (2009). Energy consumption in mobile phones. In Proceedings of the 9th ACM SIGCOMM conference on Internet measurement conferenceIMC09 (p. 14). New York: ACM Press.

  107. Huang, J., Quian, F., Guo, Y., Zhou, Y., Xu, Q., Mao, Z. M., Sen, S., & Spatscheck, O. (2013). An in-depth study of LTE: Effect of network protocol and application behavior on performance. In SIGCOMM (pp. 363–374).

  108. Grigorik, I. (2013). High performance browser networking. Sebastopol, CA: O’Reilly Media.

    Google Scholar 

  109. Harvey, R. C., Hamza, A., Ly, C., & Hefeeda, M. (2010). Energy-efficient gaming on mobile devices using dead reckoning-based power management. In 2010 9th Annual workshop on network and systems support for games, NetGames 2010.

  110. Alliez, P., & Desbrun, M. (2001). Progressive compression for lossless transmission of triangle meshes. In Proceedings of the 28th annual conference on Computer graphics and interactive techniques (pp. 195–202). New York: ACM Press.

  111. Möller, T., Haines, E., & Hoffman, N. (2008). Real-time rendering. Wellesley, MA: A K Peters/CRC Press.

    Book  Google Scholar 

Download references

Acknowledgments

The authors would like to thank the staff at Center for Internet Excellence for their help and assistance. This work has been carried out in the CADIST3D Project funded by the Academy of Finland and the Chiru Project funded by the Finnish Funding Agency for Technology and Innovation (Tekes).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Timo Koskela.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Koskela, T., Vatjus-Anttila, J. Optimization Techniques for 3D Graphics Deployment on Mobile Devices. 3D Res 6, 8 (2015). https://doi.org/10.1007/s13319-015-0040-0

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1007/s13319-015-0040-0

Keywords

Navigation