STM32F4xx_HAL_Driver  1.8.3
+ Collaboration diagram for Port Configuration:

Functions

__STATIC_INLINE void LL_GPIO_SetPinMode (GPIO_TypeDef *GPIOx, uint32_t Pin, uint32_t Mode)
 Configure gpio mode for a dedicated pin on dedicated port. More...
 
__STATIC_INLINE uint32_t LL_GPIO_GetPinMode (GPIO_TypeDef *GPIOx, uint32_t Pin)
 Return gpio mode for a dedicated pin on dedicated port. More...
 
__STATIC_INLINE void LL_GPIO_SetPinOutputType (GPIO_TypeDef *GPIOx, uint32_t PinMask, uint32_t OutputType)
 Configure gpio output type for several pins on dedicated port. More...
 
__STATIC_INLINE uint32_t LL_GPIO_GetPinOutputType (GPIO_TypeDef *GPIOx, uint32_t Pin)
 Return gpio output type for several pins on dedicated port. More...
 
__STATIC_INLINE void LL_GPIO_SetPinSpeed (GPIO_TypeDef *GPIOx, uint32_t Pin, uint32_t Speed)
 Configure gpio speed for a dedicated pin on dedicated port. More...
 
__STATIC_INLINE uint32_t LL_GPIO_GetPinSpeed (GPIO_TypeDef *GPIOx, uint32_t Pin)
 Return gpio speed for a dedicated pin on dedicated port. More...
 
__STATIC_INLINE void LL_GPIO_SetPinPull (GPIO_TypeDef *GPIOx, uint32_t Pin, uint32_t Pull)
 Configure gpio pull-up or pull-down for a dedicated pin on a dedicated port. More...
 
__STATIC_INLINE uint32_t LL_GPIO_GetPinPull (GPIO_TypeDef *GPIOx, uint32_t Pin)
 Return gpio pull-up or pull-down for a dedicated pin on a dedicated port. More...
 
__STATIC_INLINE void LL_GPIO_SetAFPin_0_7 (GPIO_TypeDef *GPIOx, uint32_t Pin, uint32_t Alternate)
 Configure gpio alternate function of a dedicated pin from 0 to 7 for a dedicated port. More...
 
__STATIC_INLINE uint32_t LL_GPIO_GetAFPin_0_7 (GPIO_TypeDef *GPIOx, uint32_t Pin)
 Return gpio alternate function of a dedicated pin from 0 to 7 for a dedicated port. @rmtoll AFRL AFSELy LL_GPIO_GetAFPin_0_7. More...
 
__STATIC_INLINE void LL_GPIO_SetAFPin_8_15 (GPIO_TypeDef *GPIOx, uint32_t Pin, uint32_t Alternate)
 Configure gpio alternate function of a dedicated pin from 8 to 15 for a dedicated port. More...
 
__STATIC_INLINE uint32_t LL_GPIO_GetAFPin_8_15 (GPIO_TypeDef *GPIOx, uint32_t Pin)
 Return gpio alternate function of a dedicated pin from 8 to 15 for a dedicated port. More...
 
__STATIC_INLINE void LL_GPIO_LockPin (GPIO_TypeDef *GPIOx, uint32_t PinMask)
 Lock configuration of several pins for a dedicated port. More...
 
__STATIC_INLINE uint32_t LL_GPIO_IsPinLocked (GPIO_TypeDef *GPIOx, uint32_t PinMask)
 Return 1 if all pins passed as parameter, of a dedicated port, are locked. else Return 0. @rmtoll LCKR LCKy LL_GPIO_IsPinLocked. More...
 
__STATIC_INLINE uint32_t LL_GPIO_IsAnyPinLocked (GPIO_TypeDef *GPIOx)
 Return 1 if one of the pin of a dedicated port is locked. else return 0. @rmtoll LCKR LCKK LL_GPIO_IsAnyPinLocked. More...
 

Detailed Description

Function Documentation

◆ LL_GPIO_GetAFPin_0_7()

__STATIC_INLINE uint32_t LL_GPIO_GetAFPin_0_7 ( GPIO_TypeDef *  GPIOx,
uint32_t  Pin 
)

Return gpio alternate function of a dedicated pin from 0 to 7 for a dedicated port. @rmtoll AFRL AFSELy LL_GPIO_GetAFPin_0_7.

Parameters
GPIOxGPIO Port
PinThis parameter can be one of the following values:
  • LL_GPIO_PIN_0
  • LL_GPIO_PIN_1
  • LL_GPIO_PIN_2
  • LL_GPIO_PIN_3
  • LL_GPIO_PIN_4
  • LL_GPIO_PIN_5
  • LL_GPIO_PIN_6
  • LL_GPIO_PIN_7
Return values
Returnedvalue can be one of the following values:
  • LL_GPIO_AF_0
  • LL_GPIO_AF_1
  • LL_GPIO_AF_2
  • LL_GPIO_AF_3
  • LL_GPIO_AF_4
  • LL_GPIO_AF_5
  • LL_GPIO_AF_6
  • LL_GPIO_AF_7
  • LL_GPIO_AF_8
  • LL_GPIO_AF_9
  • LL_GPIO_AF_10
  • LL_GPIO_AF_11
  • LL_GPIO_AF_12
  • LL_GPIO_AF_13
  • LL_GPIO_AF_14
  • LL_GPIO_AF_15

Definition at line 593 of file stm32f4xx_ll_gpio.h.

◆ LL_GPIO_GetAFPin_8_15()

__STATIC_INLINE uint32_t LL_GPIO_GetAFPin_8_15 ( GPIO_TypeDef *  GPIOx,
uint32_t  Pin 
)

Return gpio alternate function of a dedicated pin from 8 to 15 for a dedicated port.

Note
Possible values are from AF0 to AF15 depending on target. @rmtoll AFRH AFSELy LL_GPIO_GetAFPin_8_15
Parameters
GPIOxGPIO Port
PinThis parameter can be one of the following values:
  • LL_GPIO_PIN_8
  • LL_GPIO_PIN_9
  • LL_GPIO_PIN_10
  • LL_GPIO_PIN_11
  • LL_GPIO_PIN_12
  • LL_GPIO_PIN_13
  • LL_GPIO_PIN_14
  • LL_GPIO_PIN_15
Return values
Returnedvalue can be one of the following values:
  • LL_GPIO_AF_0
  • LL_GPIO_AF_1
  • LL_GPIO_AF_2
  • LL_GPIO_AF_3
  • LL_GPIO_AF_4
  • LL_GPIO_AF_5
  • LL_GPIO_AF_6
  • LL_GPIO_AF_7
  • LL_GPIO_AF_8
  • LL_GPIO_AF_9
  • LL_GPIO_AF_10
  • LL_GPIO_AF_11
  • LL_GPIO_AF_12
  • LL_GPIO_AF_13
  • LL_GPIO_AF_14
  • LL_GPIO_AF_15

Definition at line 671 of file stm32f4xx_ll_gpio.h.

◆ LL_GPIO_GetPinMode()

__STATIC_INLINE uint32_t LL_GPIO_GetPinMode ( GPIO_TypeDef *  GPIOx,
uint32_t  Pin 
)

Return gpio mode for a dedicated pin on dedicated port.

Note
I/O mode can be Input mode, General purpose output, Alternate function mode or Analog.
Warning: only one pin can be passed as parameter. @rmtoll MODER MODEy LL_GPIO_GetPinMode
Parameters
GPIOxGPIO Port
PinThis parameter can be one of the following values:
  • LL_GPIO_PIN_0
  • LL_GPIO_PIN_1
  • LL_GPIO_PIN_2
  • LL_GPIO_PIN_3
  • LL_GPIO_PIN_4
  • LL_GPIO_PIN_5
  • LL_GPIO_PIN_6
  • LL_GPIO_PIN_7
  • LL_GPIO_PIN_8
  • LL_GPIO_PIN_9
  • LL_GPIO_PIN_10
  • LL_GPIO_PIN_11
  • LL_GPIO_PIN_12
  • LL_GPIO_PIN_13
  • LL_GPIO_PIN_14
  • LL_GPIO_PIN_15
Return values
Returnedvalue can be one of the following values:
  • LL_GPIO_MODE_INPUT
  • LL_GPIO_MODE_OUTPUT
  • LL_GPIO_MODE_ALTERNATE
  • LL_GPIO_MODE_ANALOG

Definition at line 307 of file stm32f4xx_ll_gpio.h.

◆ LL_GPIO_GetPinOutputType()

__STATIC_INLINE uint32_t LL_GPIO_GetPinOutputType ( GPIO_TypeDef *  GPIOx,
uint32_t  Pin 
)

Return gpio output type for several pins on dedicated port.

Note
Output type as to be set when gpio pin is in output or alternate modes. Possible type are Push-pull or Open-drain.
Warning: only one pin can be passed as parameter. @rmtoll OTYPER OTy LL_GPIO_GetPinOutputType
Parameters
GPIOxGPIO Port
PinThis parameter can be one of the following values:
  • LL_GPIO_PIN_0
  • LL_GPIO_PIN_1
  • LL_GPIO_PIN_2
  • LL_GPIO_PIN_3
  • LL_GPIO_PIN_4
  • LL_GPIO_PIN_5
  • LL_GPIO_PIN_6
  • LL_GPIO_PIN_7
  • LL_GPIO_PIN_8
  • LL_GPIO_PIN_9
  • LL_GPIO_PIN_10
  • LL_GPIO_PIN_11
  • LL_GPIO_PIN_12
  • LL_GPIO_PIN_13
  • LL_GPIO_PIN_14
  • LL_GPIO_PIN_15
  • LL_GPIO_PIN_ALL
Return values
Returnedvalue can be one of the following values:
  • LL_GPIO_OUTPUT_PUSHPULL
  • LL_GPIO_OUTPUT_OPENDRAIN

Definition at line 376 of file stm32f4xx_ll_gpio.h.

◆ LL_GPIO_GetPinPull()

__STATIC_INLINE uint32_t LL_GPIO_GetPinPull ( GPIO_TypeDef *  GPIOx,
uint32_t  Pin 
)

Return gpio pull-up or pull-down for a dedicated pin on a dedicated port.

Note
Warning: only one pin can be passed as parameter. @rmtoll PUPDR PUPDy LL_GPIO_GetPinPull
Parameters
GPIOxGPIO Port
PinThis parameter can be one of the following values:
  • LL_GPIO_PIN_0
  • LL_GPIO_PIN_1
  • LL_GPIO_PIN_2
  • LL_GPIO_PIN_3
  • LL_GPIO_PIN_4
  • LL_GPIO_PIN_5
  • LL_GPIO_PIN_6
  • LL_GPIO_PIN_7
  • LL_GPIO_PIN_8
  • LL_GPIO_PIN_9
  • LL_GPIO_PIN_10
  • LL_GPIO_PIN_11
  • LL_GPIO_PIN_12
  • LL_GPIO_PIN_13
  • LL_GPIO_PIN_14
  • LL_GPIO_PIN_15
Return values
Returnedvalue can be one of the following values:
  • LL_GPIO_PULL_NO
  • LL_GPIO_PULL_UP
  • LL_GPIO_PULL_DOWN

Definition at line 516 of file stm32f4xx_ll_gpio.h.

◆ LL_GPIO_GetPinSpeed()

__STATIC_INLINE uint32_t LL_GPIO_GetPinSpeed ( GPIO_TypeDef *  GPIOx,
uint32_t  Pin 
)

Return gpio speed for a dedicated pin on dedicated port.

Note
I/O speed can be Low, Medium, Fast or High speed.
Warning: only one pin can be passed as parameter.
Refer to datasheet for frequency specifications and the power supply and load conditions for each speed. @rmtoll OSPEEDR OSPEEDy LL_GPIO_GetPinSpeed
Parameters
GPIOxGPIO Port
PinThis parameter can be one of the following values:
  • LL_GPIO_PIN_0
  • LL_GPIO_PIN_1
  • LL_GPIO_PIN_2
  • LL_GPIO_PIN_3
  • LL_GPIO_PIN_4
  • LL_GPIO_PIN_5
  • LL_GPIO_PIN_6
  • LL_GPIO_PIN_7
  • LL_GPIO_PIN_8
  • LL_GPIO_PIN_9
  • LL_GPIO_PIN_10
  • LL_GPIO_PIN_11
  • LL_GPIO_PIN_12
  • LL_GPIO_PIN_13
  • LL_GPIO_PIN_14
  • LL_GPIO_PIN_15
Return values
Returnedvalue can be one of the following values:
  • LL_GPIO_SPEED_FREQ_LOW
  • LL_GPIO_SPEED_FREQ_MEDIUM
  • LL_GPIO_SPEED_FREQ_HIGH
  • LL_GPIO_SPEED_FREQ_VERY_HIGH

Definition at line 450 of file stm32f4xx_ll_gpio.h.

◆ LL_GPIO_IsAnyPinLocked()

__STATIC_INLINE uint32_t LL_GPIO_IsAnyPinLocked ( GPIO_TypeDef *  GPIOx)

Return 1 if one of the pin of a dedicated port is locked. else return 0. @rmtoll LCKR LCKK LL_GPIO_IsAnyPinLocked.

Parameters
GPIOxGPIO Port
Return values
Stateof bit (1 or 0).

Definition at line 752 of file stm32f4xx_ll_gpio.h.

◆ LL_GPIO_IsPinLocked()

__STATIC_INLINE uint32_t LL_GPIO_IsPinLocked ( GPIO_TypeDef *  GPIOx,
uint32_t  PinMask 
)

Return 1 if all pins passed as parameter, of a dedicated port, are locked. else Return 0. @rmtoll LCKR LCKy LL_GPIO_IsPinLocked.

Parameters
GPIOxGPIO Port
PinMaskThis parameter can be a combination of the following values:
  • LL_GPIO_PIN_0
  • LL_GPIO_PIN_1
  • LL_GPIO_PIN_2
  • LL_GPIO_PIN_3
  • LL_GPIO_PIN_4
  • LL_GPIO_PIN_5
  • LL_GPIO_PIN_6
  • LL_GPIO_PIN_7
  • LL_GPIO_PIN_8
  • LL_GPIO_PIN_9
  • LL_GPIO_PIN_10
  • LL_GPIO_PIN_11
  • LL_GPIO_PIN_12
  • LL_GPIO_PIN_13
  • LL_GPIO_PIN_14
  • LL_GPIO_PIN_15
  • LL_GPIO_PIN_ALL
Return values
Stateof bit (1 or 0).

Definition at line 741 of file stm32f4xx_ll_gpio.h.

◆ LL_GPIO_LockPin()

__STATIC_INLINE void LL_GPIO_LockPin ( GPIO_TypeDef *  GPIOx,
uint32_t  PinMask 
)

Lock configuration of several pins for a dedicated port.

Note
When the lock sequence has been applied on a port bit, the value of this port bit can no longer be modified until the next reset.
Each lock bit freezes a specific configuration register (control and alternate function registers). @rmtoll LCKR LCKK LL_GPIO_LockPin
Parameters
GPIOxGPIO Port
PinMaskThis parameter can be a combination of the following values:
  • LL_GPIO_PIN_0
  • LL_GPIO_PIN_1
  • LL_GPIO_PIN_2
  • LL_GPIO_PIN_3
  • LL_GPIO_PIN_4
  • LL_GPIO_PIN_5
  • LL_GPIO_PIN_6
  • LL_GPIO_PIN_7
  • LL_GPIO_PIN_8
  • LL_GPIO_PIN_9
  • LL_GPIO_PIN_10
  • LL_GPIO_PIN_11
  • LL_GPIO_PIN_12
  • LL_GPIO_PIN_13
  • LL_GPIO_PIN_14
  • LL_GPIO_PIN_15
  • LL_GPIO_PIN_ALL
Return values
None

Definition at line 707 of file stm32f4xx_ll_gpio.h.

◆ LL_GPIO_SetAFPin_0_7()

__STATIC_INLINE void LL_GPIO_SetAFPin_0_7 ( GPIO_TypeDef *  GPIOx,
uint32_t  Pin,
uint32_t  Alternate 
)

Configure gpio alternate function of a dedicated pin from 0 to 7 for a dedicated port.

Note
Possible values are from AF0 to AF15 depending on target.
Warning: only one pin can be passed as parameter. @rmtoll AFRL AFSELy LL_GPIO_SetAFPin_0_7
Parameters
GPIOxGPIO Port
PinThis parameter can be one of the following values:
  • LL_GPIO_PIN_0
  • LL_GPIO_PIN_1
  • LL_GPIO_PIN_2
  • LL_GPIO_PIN_3
  • LL_GPIO_PIN_4
  • LL_GPIO_PIN_5
  • LL_GPIO_PIN_6
  • LL_GPIO_PIN_7
AlternateThis parameter can be one of the following values:
  • LL_GPIO_AF_0
  • LL_GPIO_AF_1
  • LL_GPIO_AF_2
  • LL_GPIO_AF_3
  • LL_GPIO_AF_4
  • LL_GPIO_AF_5
  • LL_GPIO_AF_6
  • LL_GPIO_AF_7
  • LL_GPIO_AF_8
  • LL_GPIO_AF_9
  • LL_GPIO_AF_10
  • LL_GPIO_AF_11
  • LL_GPIO_AF_12
  • LL_GPIO_AF_13
  • LL_GPIO_AF_14
  • LL_GPIO_AF_15
Return values
None

Definition at line 556 of file stm32f4xx_ll_gpio.h.

◆ LL_GPIO_SetAFPin_8_15()

__STATIC_INLINE void LL_GPIO_SetAFPin_8_15 ( GPIO_TypeDef *  GPIOx,
uint32_t  Pin,
uint32_t  Alternate 
)

Configure gpio alternate function of a dedicated pin from 8 to 15 for a dedicated port.

Note
Possible values are from AF0 to AF15 depending on target.
Warning: only one pin can be passed as parameter. @rmtoll AFRH AFSELy LL_GPIO_SetAFPin_8_15
Parameters
GPIOxGPIO Port
PinThis parameter can be one of the following values:
  • LL_GPIO_PIN_8
  • LL_GPIO_PIN_9
  • LL_GPIO_PIN_10
  • LL_GPIO_PIN_11
  • LL_GPIO_PIN_12
  • LL_GPIO_PIN_13
  • LL_GPIO_PIN_14
  • LL_GPIO_PIN_15
AlternateThis parameter can be one of the following values:
  • LL_GPIO_AF_0
  • LL_GPIO_AF_1
  • LL_GPIO_AF_2
  • LL_GPIO_AF_3
  • LL_GPIO_AF_4
  • LL_GPIO_AF_5
  • LL_GPIO_AF_6
  • LL_GPIO_AF_7
  • LL_GPIO_AF_8
  • LL_GPIO_AF_9
  • LL_GPIO_AF_10
  • LL_GPIO_AF_11
  • LL_GPIO_AF_12
  • LL_GPIO_AF_13
  • LL_GPIO_AF_14
  • LL_GPIO_AF_15
Return values
None

Definition at line 633 of file stm32f4xx_ll_gpio.h.

◆ LL_GPIO_SetPinMode()

__STATIC_INLINE void LL_GPIO_SetPinMode ( GPIO_TypeDef *  GPIOx,
uint32_t  Pin,
uint32_t  Mode 
)

Configure gpio mode for a dedicated pin on dedicated port.

Note
I/O mode can be Input mode, General purpose output, Alternate function mode or Analog.
Warning: only one pin can be passed as parameter. @rmtoll MODER MODEy LL_GPIO_SetPinMode
Parameters
GPIOxGPIO Port
PinThis parameter can be one of the following values:
  • LL_GPIO_PIN_0
  • LL_GPIO_PIN_1
  • LL_GPIO_PIN_2
  • LL_GPIO_PIN_3
  • LL_GPIO_PIN_4
  • LL_GPIO_PIN_5
  • LL_GPIO_PIN_6
  • LL_GPIO_PIN_7
  • LL_GPIO_PIN_8
  • LL_GPIO_PIN_9
  • LL_GPIO_PIN_10
  • LL_GPIO_PIN_11
  • LL_GPIO_PIN_12
  • LL_GPIO_PIN_13
  • LL_GPIO_PIN_14
  • LL_GPIO_PIN_15
ModeThis parameter can be one of the following values:
  • LL_GPIO_MODE_INPUT
  • LL_GPIO_MODE_OUTPUT
  • LL_GPIO_MODE_ALTERNATE
  • LL_GPIO_MODE_ANALOG
Return values
None

Definition at line 273 of file stm32f4xx_ll_gpio.h.

◆ LL_GPIO_SetPinOutputType()

__STATIC_INLINE void LL_GPIO_SetPinOutputType ( GPIO_TypeDef *  GPIOx,
uint32_t  PinMask,
uint32_t  OutputType 
)

Configure gpio output type for several pins on dedicated port.

Note
Output type as to be set when gpio pin is in output or alternate modes. Possible type are Push-pull or Open-drain. @rmtoll OTYPER OTy LL_GPIO_SetPinOutputType
Parameters
GPIOxGPIO Port
PinMaskThis parameter can be a combination of the following values:
  • LL_GPIO_PIN_0
  • LL_GPIO_PIN_1
  • LL_GPIO_PIN_2
  • LL_GPIO_PIN_3
  • LL_GPIO_PIN_4
  • LL_GPIO_PIN_5
  • LL_GPIO_PIN_6
  • LL_GPIO_PIN_7
  • LL_GPIO_PIN_8
  • LL_GPIO_PIN_9
  • LL_GPIO_PIN_10
  • LL_GPIO_PIN_11
  • LL_GPIO_PIN_12
  • LL_GPIO_PIN_13
  • LL_GPIO_PIN_14
  • LL_GPIO_PIN_15
  • LL_GPIO_PIN_ALL
OutputTypeThis parameter can be one of the following values:
  • LL_GPIO_OUTPUT_PUSHPULL
  • LL_GPIO_OUTPUT_OPENDRAIN
Return values
None

Definition at line 342 of file stm32f4xx_ll_gpio.h.

◆ LL_GPIO_SetPinPull()

__STATIC_INLINE void LL_GPIO_SetPinPull ( GPIO_TypeDef *  GPIOx,
uint32_t  Pin,
uint32_t  Pull 
)

Configure gpio pull-up or pull-down for a dedicated pin on a dedicated port.

Note
Warning: only one pin can be passed as parameter. @rmtoll PUPDR PUPDy LL_GPIO_SetPinPull
Parameters
GPIOxGPIO Port
PinThis parameter can be one of the following values:
  • LL_GPIO_PIN_0
  • LL_GPIO_PIN_1
  • LL_GPIO_PIN_2
  • LL_GPIO_PIN_3
  • LL_GPIO_PIN_4
  • LL_GPIO_PIN_5
  • LL_GPIO_PIN_6
  • LL_GPIO_PIN_7
  • LL_GPIO_PIN_8
  • LL_GPIO_PIN_9
  • LL_GPIO_PIN_10
  • LL_GPIO_PIN_11
  • LL_GPIO_PIN_12
  • LL_GPIO_PIN_13
  • LL_GPIO_PIN_14
  • LL_GPIO_PIN_15
PullThis parameter can be one of the following values:
  • LL_GPIO_PULL_NO
  • LL_GPIO_PULL_UP
  • LL_GPIO_PULL_DOWN
Return values
None

Definition at line 484 of file stm32f4xx_ll_gpio.h.

◆ LL_GPIO_SetPinSpeed()

__STATIC_INLINE void LL_GPIO_SetPinSpeed ( GPIO_TypeDef *  GPIOx,
uint32_t  Pin,
uint32_t  Speed 
)

Configure gpio speed for a dedicated pin on dedicated port.

Note
I/O speed can be Low, Medium, Fast or High speed.
Warning: only one pin can be passed as parameter.
Refer to datasheet for frequency specifications and the power supply and load conditions for each speed. @rmtoll OSPEEDR OSPEEDy LL_GPIO_SetPinSpeed
Parameters
GPIOxGPIO Port
PinThis parameter can be one of the following values:
  • LL_GPIO_PIN_0
  • LL_GPIO_PIN_1
  • LL_GPIO_PIN_2
  • LL_GPIO_PIN_3
  • LL_GPIO_PIN_4
  • LL_GPIO_PIN_5
  • LL_GPIO_PIN_6
  • LL_GPIO_PIN_7
  • LL_GPIO_PIN_8
  • LL_GPIO_PIN_9
  • LL_GPIO_PIN_10
  • LL_GPIO_PIN_11
  • LL_GPIO_PIN_12
  • LL_GPIO_PIN_13
  • LL_GPIO_PIN_14
  • LL_GPIO_PIN_15
SpeedThis parameter can be one of the following values:
  • LL_GPIO_SPEED_FREQ_LOW
  • LL_GPIO_SPEED_FREQ_MEDIUM
  • LL_GPIO_SPEED_FREQ_HIGH
  • LL_GPIO_SPEED_FREQ_VERY_HIGH
Return values
None

Definition at line 413 of file stm32f4xx_ll_gpio.h.