The official Mbed 2 C/C++ SDK provides the software platform and libraries to build your applications.

Dependents:   hello SerialTestv11 SerialTestv12 Sierpinski ... more

mbed 2

This is the mbed 2 library. If you'd like to learn about Mbed OS please see the mbed-os docs.

Committer:
AnnaBridge
Date:
Wed Feb 20 20:53:29 2019 +0000
Revision:
172:65be27845400
Parent:
171:3a7713b1edbc
mbed library release version 165

Who changed what in which revision?

UserRevisionLine numberNew contents of line
AnnaBridge 165:d1b4690b3f8b 1 /*******************************************************************************
AnnaBridge 165:d1b4690b3f8b 2 * DISCLAIMER
AnnaBridge 165:d1b4690b3f8b 3 * This software is supplied by Renesas Electronics Corporation and is only
AnnaBridge 165:d1b4690b3f8b 4 * intended for use with Renesas products. No other uses are authorized. This
AnnaBridge 165:d1b4690b3f8b 5 * software is owned by Renesas Electronics Corporation and is protected under
AnnaBridge 165:d1b4690b3f8b 6 * all applicable laws, including copyright laws.
AnnaBridge 165:d1b4690b3f8b 7 * THIS SOFTWARE IS PROVIDED "AS IS" AND RENESAS MAKES NO WARRANTIES REGARDING
AnnaBridge 165:d1b4690b3f8b 8 * THIS SOFTWARE, WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING BUT NOT
AnnaBridge 165:d1b4690b3f8b 9 * LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE
AnnaBridge 165:d1b4690b3f8b 10 * AND NON-INFRINGEMENT. ALL SUCH WARRANTIES ARE EXPRESSLY DISCLAIMED.
AnnaBridge 165:d1b4690b3f8b 11 * TO THE MAXIMUM EXTENT PERMITTED NOT PROHIBITED BY LAW, NEITHER RENESAS
AnnaBridge 165:d1b4690b3f8b 12 * ELECTRONICS CORPORATION NOR ANY OF ITS AFFILIATED COMPANIES SHALL BE LIABLE
AnnaBridge 165:d1b4690b3f8b 13 * FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES FOR
AnnaBridge 165:d1b4690b3f8b 14 * ANY REASON RELATED TO THIS SOFTWARE, EVEN IF RENESAS OR ITS AFFILIATES HAVE
AnnaBridge 165:d1b4690b3f8b 15 * BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
AnnaBridge 165:d1b4690b3f8b 16 * Renesas reserves the right, without notice, to make changes to this software
AnnaBridge 165:d1b4690b3f8b 17 * and to discontinue the availability of this software. By using this software,
AnnaBridge 165:d1b4690b3f8b 18 * you agree to the additional terms and conditions found by accessing the
AnnaBridge 165:d1b4690b3f8b 19 * following link:
AnnaBridge 165:d1b4690b3f8b 20 * http://www.renesas.com/disclaimer*
AnnaBridge 165:d1b4690b3f8b 21 * Copyright (C) 2013-2015 Renesas Electronics Corporation. All rights reserved.
AnnaBridge 165:d1b4690b3f8b 22 *******************************************************************************/
AnnaBridge 165:d1b4690b3f8b 23 /*******************************************************************************
AnnaBridge 165:d1b4690b3f8b 24 * File Name : spibsc_iodefine.h
AnnaBridge 165:d1b4690b3f8b 25 * $Rev: $
AnnaBridge 165:d1b4690b3f8b 26 * $Date:: $
AnnaBridge 165:d1b4690b3f8b 27 * Description : Definition of I/O Register for RZ/A1H,M (V2.00h)
AnnaBridge 165:d1b4690b3f8b 28 ******************************************************************************/
AnnaBridge 165:d1b4690b3f8b 29 #ifndef SPIBSC_IODEFINE_H
AnnaBridge 165:d1b4690b3f8b 30 #define SPIBSC_IODEFINE_H
AnnaBridge 165:d1b4690b3f8b 31 /* ->QAC 0639 : Over 127 members (C90) */
AnnaBridge 165:d1b4690b3f8b 32 /* ->QAC 0857 : Over 1024 #define (C90) */
AnnaBridge 165:d1b4690b3f8b 33 /* ->MISRA 18.4 : Pack unpack union */ /* ->SEC M1.6.2 */
AnnaBridge 165:d1b4690b3f8b 34 /* ->SEC M1.10.1 : Not magic number */
AnnaBridge 165:d1b4690b3f8b 35
AnnaBridge 165:d1b4690b3f8b 36 #define SPIBSC0 (*(struct st_spibsc *)0x3FEFA000uL) /* SPIBSC0 */
AnnaBridge 165:d1b4690b3f8b 37 #define SPIBSC1 (*(struct st_spibsc *)0x3FEFB000uL) /* SPIBSC1 */
AnnaBridge 165:d1b4690b3f8b 38
AnnaBridge 165:d1b4690b3f8b 39
AnnaBridge 165:d1b4690b3f8b 40 /* Start of channel array defines of SPIBSC */
AnnaBridge 165:d1b4690b3f8b 41
AnnaBridge 165:d1b4690b3f8b 42 /* Channel array defines of SPIBSC */
AnnaBridge 165:d1b4690b3f8b 43 /*(Sample) value = SPIBSC[ channel ]->CMNCR; */
AnnaBridge 165:d1b4690b3f8b 44 #define SPIBSC_COUNT (2)
AnnaBridge 165:d1b4690b3f8b 45 #define SPIBSC_ADDRESS_LIST \
AnnaBridge 165:d1b4690b3f8b 46 { /* ->MISRA 11.3 */ /* ->SEC R2.7.1 */ \
AnnaBridge 165:d1b4690b3f8b 47 &SPIBSC0, &SPIBSC1 \
AnnaBridge 165:d1b4690b3f8b 48 } /* <-MISRA 11.3 */ /* <-SEC R2.7.1 */ /* { } is for MISRA 19.4 */
AnnaBridge 165:d1b4690b3f8b 49
AnnaBridge 165:d1b4690b3f8b 50 /* End of channel array defines of SPIBSC */
AnnaBridge 165:d1b4690b3f8b 51
AnnaBridge 165:d1b4690b3f8b 52
AnnaBridge 165:d1b4690b3f8b 53 #define CMNCR_0 (SPIBSC0.CMNCR)
AnnaBridge 165:d1b4690b3f8b 54 #define SSLDR_0 (SPIBSC0.SSLDR)
AnnaBridge 165:d1b4690b3f8b 55 #define SPBCR_0 (SPIBSC0.SPBCR)
AnnaBridge 165:d1b4690b3f8b 56 #define DRCR_0 (SPIBSC0.DRCR)
AnnaBridge 165:d1b4690b3f8b 57 #define DRCMR_0 (SPIBSC0.DRCMR)
AnnaBridge 165:d1b4690b3f8b 58 #define DREAR_0 (SPIBSC0.DREAR)
AnnaBridge 165:d1b4690b3f8b 59 #define DROPR_0 (SPIBSC0.DROPR)
AnnaBridge 165:d1b4690b3f8b 60 #define DRENR_0 (SPIBSC0.DRENR)
AnnaBridge 165:d1b4690b3f8b 61 #define SMCR_0 (SPIBSC0.SMCR)
AnnaBridge 165:d1b4690b3f8b 62 #define SMCMR_0 (SPIBSC0.SMCMR)
AnnaBridge 165:d1b4690b3f8b 63 #define SMADR_0 (SPIBSC0.SMADR)
AnnaBridge 165:d1b4690b3f8b 64 #define SMOPR_0 (SPIBSC0.SMOPR)
AnnaBridge 165:d1b4690b3f8b 65 #define SMENR_0 (SPIBSC0.SMENR)
AnnaBridge 165:d1b4690b3f8b 66 #define SMRDR0_0 (SPIBSC0.SMRDR0.UINT32)
AnnaBridge 165:d1b4690b3f8b 67 #define SMRDR0_0L (SPIBSC0.SMRDR0.UINT16[R_IO_L])
AnnaBridge 165:d1b4690b3f8b 68 #define SMRDR0_0H (SPIBSC0.SMRDR0.UINT16[R_IO_H])
AnnaBridge 165:d1b4690b3f8b 69 #define SMRDR0_0LL (SPIBSC0.SMRDR0.UINT8[R_IO_LL])
AnnaBridge 165:d1b4690b3f8b 70 #define SMRDR0_0LH (SPIBSC0.SMRDR0.UINT8[R_IO_LH])
AnnaBridge 165:d1b4690b3f8b 71 #define SMRDR0_0HL (SPIBSC0.SMRDR0.UINT8[R_IO_HL])
AnnaBridge 165:d1b4690b3f8b 72 #define SMRDR0_0HH (SPIBSC0.SMRDR0.UINT8[R_IO_HH])
AnnaBridge 165:d1b4690b3f8b 73 #define SMRDR1_0 (SPIBSC0.SMRDR1.UINT32)
AnnaBridge 165:d1b4690b3f8b 74 #define SMRDR1_0L (SPIBSC0.SMRDR1.UINT16[R_IO_L])
AnnaBridge 165:d1b4690b3f8b 75 #define SMRDR1_0H (SPIBSC0.SMRDR1.UINT16[R_IO_H])
AnnaBridge 165:d1b4690b3f8b 76 #define SMRDR1_0LL (SPIBSC0.SMRDR1.UINT8[R_IO_LL])
AnnaBridge 165:d1b4690b3f8b 77 #define SMRDR1_0LH (SPIBSC0.SMRDR1.UINT8[R_IO_LH])
AnnaBridge 165:d1b4690b3f8b 78 #define SMRDR1_0HL (SPIBSC0.SMRDR1.UINT8[R_IO_HL])
AnnaBridge 165:d1b4690b3f8b 79 #define SMRDR1_0HH (SPIBSC0.SMRDR1.UINT8[R_IO_HH])
AnnaBridge 165:d1b4690b3f8b 80 #define SMWDR0_0 (SPIBSC0.SMWDR0.UINT32)
AnnaBridge 165:d1b4690b3f8b 81 #define SMWDR0_0L (SPIBSC0.SMWDR0.UINT16[R_IO_L])
AnnaBridge 165:d1b4690b3f8b 82 #define SMWDR0_0H (SPIBSC0.SMWDR0.UINT16[R_IO_H])
AnnaBridge 165:d1b4690b3f8b 83 #define SMWDR0_0LL (SPIBSC0.SMWDR0.UINT8[R_IO_LL])
AnnaBridge 165:d1b4690b3f8b 84 #define SMWDR0_0LH (SPIBSC0.SMWDR0.UINT8[R_IO_LH])
AnnaBridge 165:d1b4690b3f8b 85 #define SMWDR0_0HL (SPIBSC0.SMWDR0.UINT8[R_IO_HL])
AnnaBridge 165:d1b4690b3f8b 86 #define SMWDR0_0HH (SPIBSC0.SMWDR0.UINT8[R_IO_HH])
AnnaBridge 165:d1b4690b3f8b 87 #define SMWDR1_0 (SPIBSC0.SMWDR1.UINT32)
AnnaBridge 165:d1b4690b3f8b 88 #define SMWDR1_0L (SPIBSC0.SMWDR1.UINT16[R_IO_L])
AnnaBridge 165:d1b4690b3f8b 89 #define SMWDR1_0H (SPIBSC0.SMWDR1.UINT16[R_IO_H])
AnnaBridge 165:d1b4690b3f8b 90 #define SMWDR1_0LL (SPIBSC0.SMWDR1.UINT8[R_IO_LL])
AnnaBridge 165:d1b4690b3f8b 91 #define SMWDR1_0LH (SPIBSC0.SMWDR1.UINT8[R_IO_LH])
AnnaBridge 165:d1b4690b3f8b 92 #define SMWDR1_0HL (SPIBSC0.SMWDR1.UINT8[R_IO_HL])
AnnaBridge 165:d1b4690b3f8b 93 #define SMWDR1_0HH (SPIBSC0.SMWDR1.UINT8[R_IO_HH])
AnnaBridge 165:d1b4690b3f8b 94 #define CMNSR_0 (SPIBSC0.CMNSR)
AnnaBridge 165:d1b4690b3f8b 95 #define CKDLY_0 (SPIBSC0.CKDLY)
AnnaBridge 165:d1b4690b3f8b 96 #define DRDMCR_0 (SPIBSC0.DRDMCR)
AnnaBridge 165:d1b4690b3f8b 97 #define DRDRENR_0 (SPIBSC0.DRDRENR)
AnnaBridge 165:d1b4690b3f8b 98 #define SMDMCR_0 (SPIBSC0.SMDMCR)
AnnaBridge 165:d1b4690b3f8b 99 #define SMDRENR_0 (SPIBSC0.SMDRENR)
AnnaBridge 165:d1b4690b3f8b 100 #define SPODLY_0 (SPIBSC0.SPODLY)
AnnaBridge 165:d1b4690b3f8b 101 #define CMNCR_1 (SPIBSC1.CMNCR)
AnnaBridge 165:d1b4690b3f8b 102 #define SSLDR_1 (SPIBSC1.SSLDR)
AnnaBridge 165:d1b4690b3f8b 103 #define SPBCR_1 (SPIBSC1.SPBCR)
AnnaBridge 165:d1b4690b3f8b 104 #define DRCR_1 (SPIBSC1.DRCR)
AnnaBridge 165:d1b4690b3f8b 105 #define DRCMR_1 (SPIBSC1.DRCMR)
AnnaBridge 165:d1b4690b3f8b 106 #define DREAR_1 (SPIBSC1.DREAR)
AnnaBridge 165:d1b4690b3f8b 107 #define DROPR_1 (SPIBSC1.DROPR)
AnnaBridge 165:d1b4690b3f8b 108 #define DRENR_1 (SPIBSC1.DRENR)
AnnaBridge 165:d1b4690b3f8b 109 #define SMCR_1 (SPIBSC1.SMCR)
AnnaBridge 165:d1b4690b3f8b 110 #define SMCMR_1 (SPIBSC1.SMCMR)
AnnaBridge 165:d1b4690b3f8b 111 #define SMADR_1 (SPIBSC1.SMADR)
AnnaBridge 165:d1b4690b3f8b 112 #define SMOPR_1 (SPIBSC1.SMOPR)
AnnaBridge 165:d1b4690b3f8b 113 #define SMENR_1 (SPIBSC1.SMENR)
AnnaBridge 165:d1b4690b3f8b 114 #define SMRDR0_1 (SPIBSC1.SMRDR0.UINT32)
AnnaBridge 165:d1b4690b3f8b 115 #define SMRDR0_1L (SPIBSC1.SMRDR0.UINT16[R_IO_L])
AnnaBridge 165:d1b4690b3f8b 116 #define SMRDR0_1H (SPIBSC1.SMRDR0.UINT16[R_IO_H])
AnnaBridge 165:d1b4690b3f8b 117 #define SMRDR0_1LL (SPIBSC1.SMRDR0.UINT8[R_IO_LL])
AnnaBridge 165:d1b4690b3f8b 118 #define SMRDR0_1LH (SPIBSC1.SMRDR0.UINT8[R_IO_LH])
AnnaBridge 165:d1b4690b3f8b 119 #define SMRDR0_1HL (SPIBSC1.SMRDR0.UINT8[R_IO_HL])
AnnaBridge 165:d1b4690b3f8b 120 #define SMRDR0_1HH (SPIBSC1.SMRDR0.UINT8[R_IO_HH])
AnnaBridge 165:d1b4690b3f8b 121 #define SMRDR1_1 (SPIBSC1.SMRDR1.UINT32)
AnnaBridge 165:d1b4690b3f8b 122 #define SMRDR1_1L (SPIBSC1.SMRDR1.UINT16[R_IO_L])
AnnaBridge 165:d1b4690b3f8b 123 #define SMRDR1_1H (SPIBSC1.SMRDR1.UINT16[R_IO_H])
AnnaBridge 165:d1b4690b3f8b 124 #define SMRDR1_1LL (SPIBSC1.SMRDR1.UINT8[R_IO_LL])
AnnaBridge 165:d1b4690b3f8b 125 #define SMRDR1_1LH (SPIBSC1.SMRDR1.UINT8[R_IO_LH])
AnnaBridge 165:d1b4690b3f8b 126 #define SMRDR1_1HL (SPIBSC1.SMRDR1.UINT8[R_IO_HL])
AnnaBridge 165:d1b4690b3f8b 127 #define SMRDR1_1HH (SPIBSC1.SMRDR1.UINT8[R_IO_HH])
AnnaBridge 165:d1b4690b3f8b 128 #define SMWDR0_1 (SPIBSC1.SMWDR0.UINT32)
AnnaBridge 165:d1b4690b3f8b 129 #define SMWDR0_1L (SPIBSC1.SMWDR0.UINT16[R_IO_L])
AnnaBridge 165:d1b4690b3f8b 130 #define SMWDR0_1H (SPIBSC1.SMWDR0.UINT16[R_IO_H])
AnnaBridge 165:d1b4690b3f8b 131 #define SMWDR0_1LL (SPIBSC1.SMWDR0.UINT8[R_IO_LL])
AnnaBridge 165:d1b4690b3f8b 132 #define SMWDR0_1LH (SPIBSC1.SMWDR0.UINT8[R_IO_LH])
AnnaBridge 165:d1b4690b3f8b 133 #define SMWDR0_1HL (SPIBSC1.SMWDR0.UINT8[R_IO_HL])
AnnaBridge 165:d1b4690b3f8b 134 #define SMWDR0_1HH (SPIBSC1.SMWDR0.UINT8[R_IO_HH])
AnnaBridge 165:d1b4690b3f8b 135 #define SMWDR1_1 (SPIBSC1.SMWDR1.UINT32)
AnnaBridge 165:d1b4690b3f8b 136 #define SMWDR1_1L (SPIBSC1.SMWDR1.UINT16[R_IO_L])
AnnaBridge 165:d1b4690b3f8b 137 #define SMWDR1_1H (SPIBSC1.SMWDR1.UINT16[R_IO_H])
AnnaBridge 165:d1b4690b3f8b 138 #define SMWDR1_1LL (SPIBSC1.SMWDR1.UINT8[R_IO_LL])
AnnaBridge 165:d1b4690b3f8b 139 #define SMWDR1_1LH (SPIBSC1.SMWDR1.UINT8[R_IO_LH])
AnnaBridge 165:d1b4690b3f8b 140 #define SMWDR1_1HL (SPIBSC1.SMWDR1.UINT8[R_IO_HL])
AnnaBridge 165:d1b4690b3f8b 141 #define SMWDR1_1HH (SPIBSC1.SMWDR1.UINT8[R_IO_HH])
AnnaBridge 165:d1b4690b3f8b 142 #define CMNSR_1 (SPIBSC1.CMNSR)
AnnaBridge 165:d1b4690b3f8b 143 #define CKDLY_1 (SPIBSC1.CKDLY)
AnnaBridge 165:d1b4690b3f8b 144 #define DRDMCR_1 (SPIBSC1.DRDMCR)
AnnaBridge 165:d1b4690b3f8b 145 #define DRDRENR_1 (SPIBSC1.DRDRENR)
AnnaBridge 165:d1b4690b3f8b 146 #define SMDMCR_1 (SPIBSC1.SMDMCR)
AnnaBridge 165:d1b4690b3f8b 147 #define SMDRENR_1 (SPIBSC1.SMDRENR)
AnnaBridge 165:d1b4690b3f8b 148 #define SPODLY_1 (SPIBSC1.SPODLY)
AnnaBridge 165:d1b4690b3f8b 149
AnnaBridge 165:d1b4690b3f8b 150
AnnaBridge 165:d1b4690b3f8b 151 typedef struct st_spibsc
AnnaBridge 165:d1b4690b3f8b 152 {
AnnaBridge 165:d1b4690b3f8b 153 /* SPIBSC */
AnnaBridge 165:d1b4690b3f8b 154 volatile uint32_t CMNCR; /* CMNCR */
AnnaBridge 165:d1b4690b3f8b 155 volatile uint32_t SSLDR; /* SSLDR */
AnnaBridge 165:d1b4690b3f8b 156 volatile uint32_t SPBCR; /* SPBCR */
AnnaBridge 165:d1b4690b3f8b 157 volatile uint32_t DRCR; /* DRCR */
AnnaBridge 165:d1b4690b3f8b 158 volatile uint32_t DRCMR; /* DRCMR */
AnnaBridge 165:d1b4690b3f8b 159 volatile uint32_t DREAR; /* DREAR */
AnnaBridge 165:d1b4690b3f8b 160 volatile uint32_t DROPR; /* DROPR */
AnnaBridge 165:d1b4690b3f8b 161 volatile uint32_t DRENR; /* DRENR */
AnnaBridge 165:d1b4690b3f8b 162 volatile uint32_t SMCR; /* SMCR */
AnnaBridge 165:d1b4690b3f8b 163 volatile uint32_t SMCMR; /* SMCMR */
AnnaBridge 165:d1b4690b3f8b 164 volatile uint32_t SMADR; /* SMADR */
AnnaBridge 165:d1b4690b3f8b 165 volatile uint32_t SMOPR; /* SMOPR */
AnnaBridge 165:d1b4690b3f8b 166 volatile uint32_t SMENR; /* SMENR */
AnnaBridge 165:d1b4690b3f8b 167 volatile uint8_t dummy1[4]; /* */
AnnaBridge 165:d1b4690b3f8b 168 union iodefine_reg32_t SMRDR0; /* SMRDR0 */
AnnaBridge 165:d1b4690b3f8b 169 union iodefine_reg32_t SMRDR1; /* SMRDR1 */
AnnaBridge 165:d1b4690b3f8b 170 union iodefine_reg32_t SMWDR0; /* SMWDR0 */
AnnaBridge 165:d1b4690b3f8b 171 union iodefine_reg32_t SMWDR1; /* SMWDR1 */
AnnaBridge 165:d1b4690b3f8b 172
AnnaBridge 165:d1b4690b3f8b 173 volatile uint32_t CMNSR; /* CMNSR */
AnnaBridge 165:d1b4690b3f8b 174 volatile uint8_t dummy2[4]; /* */
AnnaBridge 165:d1b4690b3f8b 175 volatile uint32_t CKDLY; /* CKDLY */
AnnaBridge 165:d1b4690b3f8b 176 volatile uint8_t dummy3[4]; /* */
AnnaBridge 165:d1b4690b3f8b 177 volatile uint32_t DRDMCR; /* DRDMCR */
AnnaBridge 165:d1b4690b3f8b 178 volatile uint32_t DRDRENR; /* DRDRENR */
AnnaBridge 165:d1b4690b3f8b 179 volatile uint32_t SMDMCR; /* SMDMCR */
AnnaBridge 165:d1b4690b3f8b 180 volatile uint32_t SMDRENR; /* SMDRENR */
AnnaBridge 165:d1b4690b3f8b 181 volatile uint32_t SPODLY; /* SPODLY */
AnnaBridge 165:d1b4690b3f8b 182 } r_io_spibsc_t;
AnnaBridge 165:d1b4690b3f8b 183
AnnaBridge 165:d1b4690b3f8b 184
AnnaBridge 165:d1b4690b3f8b 185 /* Channel array defines of SPIBSC (2)*/
AnnaBridge 165:d1b4690b3f8b 186 #ifdef DECLARE_SPIBSC_CHANNELS
AnnaBridge 165:d1b4690b3f8b 187 volatile struct st_spibsc* SPIBSC[ SPIBSC_COUNT ] =
AnnaBridge 165:d1b4690b3f8b 188 /* ->MISRA 11.3 */ /* ->SEC R2.7.1 */
AnnaBridge 165:d1b4690b3f8b 189 SPIBSC_ADDRESS_LIST;
AnnaBridge 165:d1b4690b3f8b 190 /* <-MISRA 11.3 */ /* <-SEC R2.7.1 */
AnnaBridge 165:d1b4690b3f8b 191 #endif /* DECLARE_SPIBSC_CHANNELS */
AnnaBridge 165:d1b4690b3f8b 192 /* End of channel array defines of SPIBSC (2)*/
AnnaBridge 165:d1b4690b3f8b 193
AnnaBridge 165:d1b4690b3f8b 194
AnnaBridge 165:d1b4690b3f8b 195 /* <-SEC M1.10.1 */
AnnaBridge 165:d1b4690b3f8b 196 /* <-MISRA 18.4 */ /* <-SEC M1.6.2 */
AnnaBridge 165:d1b4690b3f8b 197 /* <-QAC 0857 */
AnnaBridge 165:d1b4690b3f8b 198 /* <-QAC 0639 */
AnnaBridge 165:d1b4690b3f8b 199 #endif