/**
 * The MIT License (MIT)
 *
 * Copyright (c) 2018-2019 Erik Moqvist
 *
 * Permission is hereby granted, free of charge, to any person
 * obtaining a copy of this software and associated documentation
 * files (the "Software"), to deal in the Software without
 * restriction, including without limitation the rights to use, copy,
 * modify, merge, publish, distribute, sublicense, and/or sell copies
 * of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be
 * included in all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
 * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
 * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 * SOFTWARE.
 */

/**
 * This file was generated by cantools version 39.3.0 Mon Nov 27 15:11:10 2023.
 */

#include <string.h>

#include "can1__main_ft24.h"

static inline uint8_t pack_left_shift_u8(
    uint8_t value,
    uint8_t shift,
    uint8_t mask)
{
    return (uint8_t)((uint8_t)(value << shift) & mask);
}

static inline uint8_t pack_left_shift_u16(
    uint16_t value,
    uint8_t shift,
    uint8_t mask)
{
    return (uint8_t)((uint8_t)(value << shift) & mask);
}

static inline uint8_t pack_left_shift_u32(
    uint32_t value,
    uint8_t shift,
    uint8_t mask)
{
    return (uint8_t)((uint8_t)(value << shift) & mask);
}

static inline uint8_t pack_right_shift_u8(
    uint8_t value,
    uint8_t shift,
    uint8_t mask)
{
    return (uint8_t)((uint8_t)(value >> shift) & mask);
}

static inline uint8_t pack_right_shift_u16(
    uint16_t value,
    uint8_t shift,
    uint8_t mask)
{
    return (uint8_t)((uint8_t)(value >> shift) & mask);
}

static inline uint8_t pack_right_shift_u32(
    uint32_t value,
    uint8_t shift,
    uint8_t mask)
{
    return (uint8_t)((uint8_t)(value >> shift) & mask);
}

static inline uint8_t unpack_left_shift_u8(
    uint8_t value,
    uint8_t shift,
    uint8_t mask)
{
    return (uint8_t)((uint8_t)(value & mask) << shift);
}

static inline uint16_t unpack_left_shift_u16(
    uint8_t value,
    uint8_t shift,
    uint8_t mask)
{
    return (uint16_t)((uint16_t)(value & mask) << shift);
}

static inline uint32_t unpack_left_shift_u32(
    uint8_t value,
    uint8_t shift,
    uint8_t mask)
{
    return (uint32_t)((uint32_t)(value & mask) << shift);
}

static inline uint8_t unpack_right_shift_u8(
    uint8_t value,
    uint8_t shift,
    uint8_t mask)
{
    return (uint8_t)((uint8_t)(value & mask) >> shift);
}

static inline uint16_t unpack_right_shift_u16(
    uint8_t value,
    uint8_t shift,
    uint8_t mask)
{
    return (uint16_t)((uint16_t)(value & mask) >> shift);
}

static inline uint32_t unpack_right_shift_u32(
    uint8_t value,
    uint8_t shift,
    uint8_t mask)
{
    return (uint32_t)((uint32_t)(value & mask) >> shift);
}

int can1__main_ft24_abx_param_confirm_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_abx_param_confirm_t *src_p,
    size_t size)
{
    if (size < 1u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 1);

    dst_p[0] |= pack_left_shift_u8(src_p->abx_param_confirm, 0u, 0xffu);

    return (1);
}

int can1__main_ft24_abx_param_confirm_unpack(
    struct can1__main_ft24_abx_param_confirm_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 1u) {
        return (-EINVAL);
    }

    dst_p->abx_param_confirm = unpack_right_shift_u8(src_p[0], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_abx_param_confirm_init(struct can1__main_ft24_abx_param_confirm_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_abx_param_confirm_t));

    return 0;
}

uint8_t can1__main_ft24_abx_param_confirm_abx_param_confirm_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_abx_param_confirm_abx_param_confirm_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_abx_param_confirm_abx_param_confirm_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_abx_hydraulics_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_abx_hydraulics_t *src_p,
    size_t size)
{
    if (size < 3u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 3);

    dst_p[0] |= pack_left_shift_u16(src_p->abx_hyd_pa, 0u, 0xffu);
    dst_p[1] |= pack_right_shift_u16(src_p->abx_hyd_pa, 8u, 0x0fu);
    dst_p[1] |= pack_left_shift_u16(src_p->abx_hyd_pb, 4u, 0xf0u);
    dst_p[2] |= pack_right_shift_u16(src_p->abx_hyd_pb, 4u, 0xffu);

    return (3);
}

int can1__main_ft24_abx_hydraulics_unpack(
    struct can1__main_ft24_abx_hydraulics_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 3u) {
        return (-EINVAL);
    }

    dst_p->abx_hyd_pa = unpack_right_shift_u16(src_p[0], 0u, 0xffu);
    dst_p->abx_hyd_pa |= unpack_left_shift_u16(src_p[1], 8u, 0x0fu);
    dst_p->abx_hyd_pb = unpack_right_shift_u16(src_p[1], 4u, 0xf0u);
    dst_p->abx_hyd_pb |= unpack_left_shift_u16(src_p[2], 4u, 0xffu);

    return (0);
}

int can1__main_ft24_abx_hydraulics_init(struct can1__main_ft24_abx_hydraulics_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_abx_hydraulics_t));

    return 0;
}

uint16_t can1__main_ft24_abx_hydraulics_abx_hyd_pa_encode(double value)
{
    return (uint16_t)(value / 0.1);
}

double can1__main_ft24_abx_hydraulics_abx_hyd_pa_decode(uint16_t value)
{
    return ((double)value * 0.1);
}

bool can1__main_ft24_abx_hydraulics_abx_hyd_pa_is_in_range(uint16_t value)
{
    return (value <= 4095u);
}

uint16_t can1__main_ft24_abx_hydraulics_abx_hyd_pb_encode(double value)
{
    return (uint16_t)(value / 0.1);
}

double can1__main_ft24_abx_hydraulics_abx_hyd_pb_decode(uint16_t value)
{
    return ((double)value * 0.1);
}

bool can1__main_ft24_abx_hydraulics_abx_hyd_pb_is_in_range(uint16_t value)
{
    return (value <= 4095u);
}

int can1__main_ft24_jetson_tx_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_jetson_tx_t *src_p,
    size_t size)
{
    uint8_t jetson_steering_angle;

    if (size < 7u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 7);

    dst_p[0] |= pack_left_shift_u8(src_p->jetson_as_mission_complete, 0u, 0x01u);
    dst_p[0] |= pack_left_shift_u8(src_p->jetson_as_ok, 1u, 0x02u);
    dst_p[0] |= pack_left_shift_u8(src_p->jetson_lap_count, 4u, 0xf0u);
    dst_p[1] |= pack_left_shift_u8(src_p->jetson_speed_target, 0u, 0xffu);
    jetson_steering_angle = (uint8_t)src_p->jetson_steering_angle;
    dst_p[2] |= pack_left_shift_u8(jetson_steering_angle, 0u, 0xffu);
    dst_p[3] |= pack_left_shift_u8(src_p->jetson_brake_ratio, 0u, 0xffu);
    dst_p[4] |= pack_left_shift_u8(src_p->jetson_torque_ratio, 0u, 0xffu);
    dst_p[5] |= pack_left_shift_u8(src_p->jetson_cones_all, 0u, 0xffu);
    dst_p[6] |= pack_left_shift_u8(src_p->jetson_cones_actual, 0u, 0xffu);

    return (7);
}

int can1__main_ft24_jetson_tx_unpack(
    struct can1__main_ft24_jetson_tx_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t jetson_steering_angle;

    if (size < 7u) {
        return (-EINVAL);
    }

    dst_p->jetson_as_mission_complete = unpack_right_shift_u8(src_p[0], 0u, 0x01u);
    dst_p->jetson_as_ok = unpack_right_shift_u8(src_p[0], 1u, 0x02u);
    dst_p->jetson_lap_count = unpack_right_shift_u8(src_p[0], 4u, 0xf0u);
    dst_p->jetson_speed_target = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    jetson_steering_angle = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->jetson_steering_angle = (int8_t)jetson_steering_angle;
    dst_p->jetson_brake_ratio = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->jetson_torque_ratio = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->jetson_cones_all = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->jetson_cones_actual = unpack_right_shift_u8(src_p[6], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_jetson_tx_init(struct can1__main_ft24_jetson_tx_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_jetson_tx_t));

    return 0;
}

uint8_t can1__main_ft24_jetson_tx_jetson_as_mission_complete_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_jetson_tx_jetson_as_mission_complete_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_jetson_tx_jetson_as_mission_complete_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_jetson_tx_jetson_as_ok_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_jetson_tx_jetson_as_ok_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_jetson_tx_jetson_as_ok_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_jetson_tx_jetson_lap_count_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_jetson_tx_jetson_lap_count_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_jetson_tx_jetson_lap_count_is_in_range(uint8_t value)
{
    return (value <= 15u);
}

uint8_t can1__main_ft24_jetson_tx_jetson_speed_target_encode(double value)
{
    return (uint8_t)(value / 0.2);
}

double can1__main_ft24_jetson_tx_jetson_speed_target_decode(uint8_t value)
{
    return ((double)value * 0.2);
}

bool can1__main_ft24_jetson_tx_jetson_speed_target_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_jetson_tx_jetson_steering_angle_encode(double value)
{
    return (int8_t)(value / 0.00784313725490196);
}

double can1__main_ft24_jetson_tx_jetson_steering_angle_decode(int8_t value)
{
    return ((double)value * 0.00784313725490196);
}

bool can1__main_ft24_jetson_tx_jetson_steering_angle_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

uint8_t can1__main_ft24_jetson_tx_jetson_brake_ratio_encode(double value)
{
    return (uint8_t)(value / 0.00392156862745098);
}

double can1__main_ft24_jetson_tx_jetson_brake_ratio_decode(uint8_t value)
{
    return ((double)value * 0.00392156862745098);
}

bool can1__main_ft24_jetson_tx_jetson_brake_ratio_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

uint8_t can1__main_ft24_jetson_tx_jetson_torque_ratio_encode(double value)
{
    return (uint8_t)(value / 0.00392156862745098);
}

double can1__main_ft24_jetson_tx_jetson_torque_ratio_decode(uint8_t value)
{
    return ((double)value * 0.00392156862745098);
}

bool can1__main_ft24_jetson_tx_jetson_torque_ratio_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

uint8_t can1__main_ft24_jetson_tx_jetson_cones_all_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_jetson_tx_jetson_cones_all_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_jetson_tx_jetson_cones_all_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

uint8_t can1__main_ft24_jetson_tx_jetson_cones_actual_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_jetson_tx_jetson_cones_actual_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_jetson_tx_jetson_cones_actual_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave0_log0_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave0_log0_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave0_v0, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave0_v0, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave0_v1, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave0_v1, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave0_v2, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave0_v2, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave0_v3, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave0_v3, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave0_log0_unpack(
    struct can1__main_ft24_ams_slave0_log0_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave0_v0 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave0_v0 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave0_v1 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave0_v1 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave0_v2 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave0_v2 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave0_v3 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave0_v3 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave0_log0_init(struct can1__main_ft24_ams_slave0_log0_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave0_log0_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave0_log0_ams_slave0_v0_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave0_log0_ams_slave0_v0_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave0_log0_ams_slave0_v0_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave0_log0_ams_slave0_v1_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave0_log0_ams_slave0_v1_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave0_log0_ams_slave0_v1_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave0_log0_ams_slave0_v2_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave0_log0_ams_slave0_v2_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave0_log0_ams_slave0_v2_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave0_log0_ams_slave0_v3_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave0_log0_ams_slave0_v3_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave0_log0_ams_slave0_v3_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave0_log1_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave0_log1_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave0_v4, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave0_v4, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave0_v5, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave0_v5, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave0_v6, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave0_v6, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave0_v7, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave0_v7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave0_log1_unpack(
    struct can1__main_ft24_ams_slave0_log1_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave0_v4 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave0_v4 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave0_v5 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave0_v5 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave0_v6 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave0_v6 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave0_v7 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave0_v7 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave0_log1_init(struct can1__main_ft24_ams_slave0_log1_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave0_log1_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave0_log1_ams_slave0_v4_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave0_log1_ams_slave0_v4_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave0_log1_ams_slave0_v4_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave0_log1_ams_slave0_v5_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave0_log1_ams_slave0_v5_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave0_log1_ams_slave0_v5_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave0_log1_ams_slave0_v6_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave0_log1_ams_slave0_v6_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave0_log1_ams_slave0_v6_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave0_log1_ams_slave0_v7_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave0_log1_ams_slave0_v7_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave0_log1_ams_slave0_v7_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave0_log2_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave0_log2_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave0_v8, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave0_v8, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave0_v9, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave0_v9, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave0_v10, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave0_v10, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave0_v11, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave0_v11, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave0_log2_unpack(
    struct can1__main_ft24_ams_slave0_log2_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave0_v8 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave0_v8 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave0_v9 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave0_v9 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave0_v10 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave0_v10 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave0_v11 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave0_v11 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave0_log2_init(struct can1__main_ft24_ams_slave0_log2_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave0_log2_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave0_log2_ams_slave0_v8_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave0_log2_ams_slave0_v8_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave0_log2_ams_slave0_v8_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave0_log2_ams_slave0_v9_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave0_log2_ams_slave0_v9_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave0_log2_ams_slave0_v9_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave0_log2_ams_slave0_v10_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave0_log2_ams_slave0_v10_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave0_log2_ams_slave0_v10_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave0_log2_ams_slave0_v11_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave0_log2_ams_slave0_v11_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave0_log2_ams_slave0_v11_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave0_log3_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave0_log3_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave0_v12, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave0_v12, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave0_v13, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave0_v13, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave0_v14, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave0_v14, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave0_v15, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave0_v15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave0_log3_unpack(
    struct can1__main_ft24_ams_slave0_log3_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave0_v12 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave0_v12 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave0_v13 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave0_v13 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave0_v14 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave0_v14 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave0_v15 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave0_v15 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave0_log3_init(struct can1__main_ft24_ams_slave0_log3_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave0_log3_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave0_log3_ams_slave0_v12_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave0_log3_ams_slave0_v12_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave0_log3_ams_slave0_v12_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave0_log3_ams_slave0_v13_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave0_log3_ams_slave0_v13_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave0_log3_ams_slave0_v13_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave0_log3_ams_slave0_v14_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave0_log3_ams_slave0_v14_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave0_log3_ams_slave0_v14_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave0_log3_ams_slave0_v15_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave0_log3_ams_slave0_v15_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave0_log3_ams_slave0_v15_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave0_log4_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave0_log4_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave0_v16, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave0_v16, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u32(src_p->ams_slave0_failed_sensors, 24u, 0xffu);
    dst_p[3] |= pack_right_shift_u32(src_p->ams_slave0_failed_sensors, 16u, 0xffu);
    dst_p[4] |= pack_right_shift_u32(src_p->ams_slave0_failed_sensors, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u32(src_p->ams_slave0_failed_sensors, 0u, 0xffu);

    return (6);
}

int can1__main_ft24_ams_slave0_log4_unpack(
    struct can1__main_ft24_ams_slave0_log4_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    dst_p->ams_slave0_v16 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave0_v16 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave0_failed_sensors = unpack_left_shift_u32(src_p[2], 24u, 0xffu);
    dst_p->ams_slave0_failed_sensors |= unpack_left_shift_u32(src_p[3], 16u, 0xffu);
    dst_p->ams_slave0_failed_sensors |= unpack_left_shift_u32(src_p[4], 8u, 0xffu);
    dst_p->ams_slave0_failed_sensors |= unpack_right_shift_u32(src_p[5], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave0_log4_init(struct can1__main_ft24_ams_slave0_log4_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave0_log4_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave0_log4_ams_slave0_v16_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave0_log4_ams_slave0_v16_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave0_log4_ams_slave0_v16_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint32_t can1__main_ft24_ams_slave0_log4_ams_slave0_failed_sensors_encode(double value)
{
    return (uint32_t)(value);
}

double can1__main_ft24_ams_slave0_log4_ams_slave0_failed_sensors_decode(uint32_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log4_ams_slave0_failed_sensors_is_in_range(uint32_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave0_log5_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave0_log5_t *src_p,
    size_t size)
{
    uint8_t ams_slave0_t0;
    uint8_t ams_slave0_t1;
    uint8_t ams_slave0_t2;
    uint8_t ams_slave0_t3;
    uint8_t ams_slave0_t4;
    uint8_t ams_slave0_t5;
    uint8_t ams_slave0_t6;
    uint8_t ams_slave0_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave0_t0 = (uint8_t)src_p->ams_slave0_t0;
    dst_p[0] |= pack_left_shift_u8(ams_slave0_t0, 0u, 0xffu);
    ams_slave0_t1 = (uint8_t)src_p->ams_slave0_t1;
    dst_p[1] |= pack_left_shift_u8(ams_slave0_t1, 0u, 0xffu);
    ams_slave0_t2 = (uint8_t)src_p->ams_slave0_t2;
    dst_p[2] |= pack_left_shift_u8(ams_slave0_t2, 0u, 0xffu);
    ams_slave0_t3 = (uint8_t)src_p->ams_slave0_t3;
    dst_p[3] |= pack_left_shift_u8(ams_slave0_t3, 0u, 0xffu);
    ams_slave0_t4 = (uint8_t)src_p->ams_slave0_t4;
    dst_p[4] |= pack_left_shift_u8(ams_slave0_t4, 0u, 0xffu);
    ams_slave0_t5 = (uint8_t)src_p->ams_slave0_t5;
    dst_p[5] |= pack_left_shift_u8(ams_slave0_t5, 0u, 0xffu);
    ams_slave0_t6 = (uint8_t)src_p->ams_slave0_t6;
    dst_p[6] |= pack_left_shift_u8(ams_slave0_t6, 0u, 0xffu);
    ams_slave0_t7 = (uint8_t)src_p->ams_slave0_t7;
    dst_p[7] |= pack_left_shift_u8(ams_slave0_t7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave0_log5_unpack(
    struct can1__main_ft24_ams_slave0_log5_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave0_t0;
    uint8_t ams_slave0_t1;
    uint8_t ams_slave0_t2;
    uint8_t ams_slave0_t3;
    uint8_t ams_slave0_t4;
    uint8_t ams_slave0_t5;
    uint8_t ams_slave0_t6;
    uint8_t ams_slave0_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave0_t0 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave0_t0 = (int8_t)ams_slave0_t0;
    ams_slave0_t1 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave0_t1 = (int8_t)ams_slave0_t1;
    ams_slave0_t2 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave0_t2 = (int8_t)ams_slave0_t2;
    ams_slave0_t3 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave0_t3 = (int8_t)ams_slave0_t3;
    ams_slave0_t4 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave0_t4 = (int8_t)ams_slave0_t4;
    ams_slave0_t5 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave0_t5 = (int8_t)ams_slave0_t5;
    ams_slave0_t6 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave0_t6 = (int8_t)ams_slave0_t6;
    ams_slave0_t7 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave0_t7 = (int8_t)ams_slave0_t7;

    return (0);
}

int can1__main_ft24_ams_slave0_log5_init(struct can1__main_ft24_ams_slave0_log5_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave0_log5_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave0_log5_ams_slave0_t0_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log5_ams_slave0_t0_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log5_ams_slave0_t0_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave0_log5_ams_slave0_t1_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log5_ams_slave0_t1_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log5_ams_slave0_t1_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave0_log5_ams_slave0_t2_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log5_ams_slave0_t2_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log5_ams_slave0_t2_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave0_log5_ams_slave0_t3_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log5_ams_slave0_t3_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log5_ams_slave0_t3_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave0_log5_ams_slave0_t4_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log5_ams_slave0_t4_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log5_ams_slave0_t4_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave0_log5_ams_slave0_t5_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log5_ams_slave0_t5_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log5_ams_slave0_t5_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave0_log5_ams_slave0_t6_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log5_ams_slave0_t6_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log5_ams_slave0_t6_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave0_log5_ams_slave0_t7_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log5_ams_slave0_t7_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log5_ams_slave0_t7_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave0_log6_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave0_log6_t *src_p,
    size_t size)
{
    uint8_t ams_slave0_t10;
    uint8_t ams_slave0_t11;
    uint8_t ams_slave0_t12;
    uint8_t ams_slave0_t13;
    uint8_t ams_slave0_t14;
    uint8_t ams_slave0_t15;
    uint8_t ams_slave0_t8;
    uint8_t ams_slave0_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave0_t8 = (uint8_t)src_p->ams_slave0_t8;
    dst_p[0] |= pack_left_shift_u8(ams_slave0_t8, 0u, 0xffu);
    ams_slave0_t9 = (uint8_t)src_p->ams_slave0_t9;
    dst_p[1] |= pack_left_shift_u8(ams_slave0_t9, 0u, 0xffu);
    ams_slave0_t10 = (uint8_t)src_p->ams_slave0_t10;
    dst_p[2] |= pack_left_shift_u8(ams_slave0_t10, 0u, 0xffu);
    ams_slave0_t11 = (uint8_t)src_p->ams_slave0_t11;
    dst_p[3] |= pack_left_shift_u8(ams_slave0_t11, 0u, 0xffu);
    ams_slave0_t12 = (uint8_t)src_p->ams_slave0_t12;
    dst_p[4] |= pack_left_shift_u8(ams_slave0_t12, 0u, 0xffu);
    ams_slave0_t13 = (uint8_t)src_p->ams_slave0_t13;
    dst_p[5] |= pack_left_shift_u8(ams_slave0_t13, 0u, 0xffu);
    ams_slave0_t14 = (uint8_t)src_p->ams_slave0_t14;
    dst_p[6] |= pack_left_shift_u8(ams_slave0_t14, 0u, 0xffu);
    ams_slave0_t15 = (uint8_t)src_p->ams_slave0_t15;
    dst_p[7] |= pack_left_shift_u8(ams_slave0_t15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave0_log6_unpack(
    struct can1__main_ft24_ams_slave0_log6_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave0_t10;
    uint8_t ams_slave0_t11;
    uint8_t ams_slave0_t12;
    uint8_t ams_slave0_t13;
    uint8_t ams_slave0_t14;
    uint8_t ams_slave0_t15;
    uint8_t ams_slave0_t8;
    uint8_t ams_slave0_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave0_t8 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave0_t8 = (int8_t)ams_slave0_t8;
    ams_slave0_t9 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave0_t9 = (int8_t)ams_slave0_t9;
    ams_slave0_t10 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave0_t10 = (int8_t)ams_slave0_t10;
    ams_slave0_t11 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave0_t11 = (int8_t)ams_slave0_t11;
    ams_slave0_t12 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave0_t12 = (int8_t)ams_slave0_t12;
    ams_slave0_t13 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave0_t13 = (int8_t)ams_slave0_t13;
    ams_slave0_t14 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave0_t14 = (int8_t)ams_slave0_t14;
    ams_slave0_t15 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave0_t15 = (int8_t)ams_slave0_t15;

    return (0);
}

int can1__main_ft24_ams_slave0_log6_init(struct can1__main_ft24_ams_slave0_log6_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave0_log6_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave0_log6_ams_slave0_t8_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log6_ams_slave0_t8_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log6_ams_slave0_t8_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave0_log6_ams_slave0_t9_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log6_ams_slave0_t9_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log6_ams_slave0_t9_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave0_log6_ams_slave0_t10_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log6_ams_slave0_t10_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log6_ams_slave0_t10_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave0_log6_ams_slave0_t11_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log6_ams_slave0_t11_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log6_ams_slave0_t11_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave0_log6_ams_slave0_t12_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log6_ams_slave0_t12_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log6_ams_slave0_t12_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave0_log6_ams_slave0_t13_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log6_ams_slave0_t13_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log6_ams_slave0_t13_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave0_log6_ams_slave0_t14_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log6_ams_slave0_t14_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log6_ams_slave0_t14_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave0_log6_ams_slave0_t15_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log6_ams_slave0_t15_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log6_ams_slave0_t15_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave0_log7_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave0_log7_t *src_p,
    size_t size)
{
    uint8_t ams_slave0_t16;
    uint8_t ams_slave0_t17;
    uint8_t ams_slave0_t18;
    uint8_t ams_slave0_t19;
    uint8_t ams_slave0_t20;
    uint8_t ams_slave0_t21;
    uint8_t ams_slave0_t22;
    uint8_t ams_slave0_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave0_t16 = (uint8_t)src_p->ams_slave0_t16;
    dst_p[0] |= pack_left_shift_u8(ams_slave0_t16, 0u, 0xffu);
    ams_slave0_t17 = (uint8_t)src_p->ams_slave0_t17;
    dst_p[1] |= pack_left_shift_u8(ams_slave0_t17, 0u, 0xffu);
    ams_slave0_t18 = (uint8_t)src_p->ams_slave0_t18;
    dst_p[2] |= pack_left_shift_u8(ams_slave0_t18, 0u, 0xffu);
    ams_slave0_t19 = (uint8_t)src_p->ams_slave0_t19;
    dst_p[3] |= pack_left_shift_u8(ams_slave0_t19, 0u, 0xffu);
    ams_slave0_t20 = (uint8_t)src_p->ams_slave0_t20;
    dst_p[4] |= pack_left_shift_u8(ams_slave0_t20, 0u, 0xffu);
    ams_slave0_t21 = (uint8_t)src_p->ams_slave0_t21;
    dst_p[5] |= pack_left_shift_u8(ams_slave0_t21, 0u, 0xffu);
    ams_slave0_t22 = (uint8_t)src_p->ams_slave0_t22;
    dst_p[6] |= pack_left_shift_u8(ams_slave0_t22, 0u, 0xffu);
    ams_slave0_t23 = (uint8_t)src_p->ams_slave0_t23;
    dst_p[7] |= pack_left_shift_u8(ams_slave0_t23, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave0_log7_unpack(
    struct can1__main_ft24_ams_slave0_log7_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave0_t16;
    uint8_t ams_slave0_t17;
    uint8_t ams_slave0_t18;
    uint8_t ams_slave0_t19;
    uint8_t ams_slave0_t20;
    uint8_t ams_slave0_t21;
    uint8_t ams_slave0_t22;
    uint8_t ams_slave0_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave0_t16 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave0_t16 = (int8_t)ams_slave0_t16;
    ams_slave0_t17 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave0_t17 = (int8_t)ams_slave0_t17;
    ams_slave0_t18 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave0_t18 = (int8_t)ams_slave0_t18;
    ams_slave0_t19 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave0_t19 = (int8_t)ams_slave0_t19;
    ams_slave0_t20 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave0_t20 = (int8_t)ams_slave0_t20;
    ams_slave0_t21 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave0_t21 = (int8_t)ams_slave0_t21;
    ams_slave0_t22 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave0_t22 = (int8_t)ams_slave0_t22;
    ams_slave0_t23 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave0_t23 = (int8_t)ams_slave0_t23;

    return (0);
}

int can1__main_ft24_ams_slave0_log7_init(struct can1__main_ft24_ams_slave0_log7_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave0_log7_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave0_log7_ams_slave0_t16_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log7_ams_slave0_t16_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log7_ams_slave0_t16_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave0_log7_ams_slave0_t17_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log7_ams_slave0_t17_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log7_ams_slave0_t17_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave0_log7_ams_slave0_t18_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log7_ams_slave0_t18_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log7_ams_slave0_t18_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave0_log7_ams_slave0_t19_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log7_ams_slave0_t19_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log7_ams_slave0_t19_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave0_log7_ams_slave0_t20_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log7_ams_slave0_t20_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log7_ams_slave0_t20_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave0_log7_ams_slave0_t21_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log7_ams_slave0_t21_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log7_ams_slave0_t21_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave0_log7_ams_slave0_t22_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log7_ams_slave0_t22_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log7_ams_slave0_t22_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave0_log7_ams_slave0_t23_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log7_ams_slave0_t23_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log7_ams_slave0_t23_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave0_log8_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave0_log8_t *src_p,
    size_t size)
{
    uint8_t ams_slave0_t24;
    uint8_t ams_slave0_t25;
    uint8_t ams_slave0_t26;
    uint8_t ams_slave0_t27;
    uint8_t ams_slave0_t28;
    uint8_t ams_slave0_t29;
    uint8_t ams_slave0_t30;
    uint8_t ams_slave0_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave0_t24 = (uint8_t)src_p->ams_slave0_t24;
    dst_p[0] |= pack_left_shift_u8(ams_slave0_t24, 0u, 0xffu);
    ams_slave0_t25 = (uint8_t)src_p->ams_slave0_t25;
    dst_p[1] |= pack_left_shift_u8(ams_slave0_t25, 0u, 0xffu);
    ams_slave0_t26 = (uint8_t)src_p->ams_slave0_t26;
    dst_p[2] |= pack_left_shift_u8(ams_slave0_t26, 0u, 0xffu);
    ams_slave0_t27 = (uint8_t)src_p->ams_slave0_t27;
    dst_p[3] |= pack_left_shift_u8(ams_slave0_t27, 0u, 0xffu);
    ams_slave0_t28 = (uint8_t)src_p->ams_slave0_t28;
    dst_p[4] |= pack_left_shift_u8(ams_slave0_t28, 0u, 0xffu);
    ams_slave0_t29 = (uint8_t)src_p->ams_slave0_t29;
    dst_p[5] |= pack_left_shift_u8(ams_slave0_t29, 0u, 0xffu);
    ams_slave0_t30 = (uint8_t)src_p->ams_slave0_t30;
    dst_p[6] |= pack_left_shift_u8(ams_slave0_t30, 0u, 0xffu);
    ams_slave0_t31 = (uint8_t)src_p->ams_slave0_t31;
    dst_p[7] |= pack_left_shift_u8(ams_slave0_t31, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave0_log8_unpack(
    struct can1__main_ft24_ams_slave0_log8_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave0_t24;
    uint8_t ams_slave0_t25;
    uint8_t ams_slave0_t26;
    uint8_t ams_slave0_t27;
    uint8_t ams_slave0_t28;
    uint8_t ams_slave0_t29;
    uint8_t ams_slave0_t30;
    uint8_t ams_slave0_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave0_t24 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave0_t24 = (int8_t)ams_slave0_t24;
    ams_slave0_t25 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave0_t25 = (int8_t)ams_slave0_t25;
    ams_slave0_t26 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave0_t26 = (int8_t)ams_slave0_t26;
    ams_slave0_t27 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave0_t27 = (int8_t)ams_slave0_t27;
    ams_slave0_t28 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave0_t28 = (int8_t)ams_slave0_t28;
    ams_slave0_t29 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave0_t29 = (int8_t)ams_slave0_t29;
    ams_slave0_t30 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave0_t30 = (int8_t)ams_slave0_t30;
    ams_slave0_t31 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave0_t31 = (int8_t)ams_slave0_t31;

    return (0);
}

int can1__main_ft24_ams_slave0_log8_init(struct can1__main_ft24_ams_slave0_log8_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave0_log8_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave0_log8_ams_slave0_t24_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log8_ams_slave0_t24_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log8_ams_slave0_t24_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave0_log8_ams_slave0_t25_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log8_ams_slave0_t25_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log8_ams_slave0_t25_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave0_log8_ams_slave0_t26_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log8_ams_slave0_t26_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log8_ams_slave0_t26_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave0_log8_ams_slave0_t27_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log8_ams_slave0_t27_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log8_ams_slave0_t27_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave0_log8_ams_slave0_t28_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log8_ams_slave0_t28_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log8_ams_slave0_t28_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave0_log8_ams_slave0_t29_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log8_ams_slave0_t29_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log8_ams_slave0_t29_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave0_log8_ams_slave0_t30_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log8_ams_slave0_t30_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log8_ams_slave0_t30_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave0_log8_ams_slave0_t31_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave0_log8_ams_slave0_t31_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_log8_ams_slave0_t31_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave1_log0_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave1_log0_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave1_v0, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave1_v0, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave1_v1, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave1_v1, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave1_v2, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave1_v2, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave1_v3, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave1_v3, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave1_log0_unpack(
    struct can1__main_ft24_ams_slave1_log0_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave1_v0 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave1_v0 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave1_v1 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave1_v1 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave1_v2 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave1_v2 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave1_v3 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave1_v3 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave1_log0_init(struct can1__main_ft24_ams_slave1_log0_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave1_log0_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave1_log0_ams_slave1_v0_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave1_log0_ams_slave1_v0_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave1_log0_ams_slave1_v0_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave1_log0_ams_slave1_v1_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave1_log0_ams_slave1_v1_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave1_log0_ams_slave1_v1_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave1_log0_ams_slave1_v2_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave1_log0_ams_slave1_v2_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave1_log0_ams_slave1_v2_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave1_log0_ams_slave1_v3_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave1_log0_ams_slave1_v3_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave1_log0_ams_slave1_v3_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave1_log1_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave1_log1_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave1_v4, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave1_v4, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave1_v5, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave1_v5, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave1_v6, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave1_v6, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave1_v7, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave1_v7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave1_log1_unpack(
    struct can1__main_ft24_ams_slave1_log1_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave1_v4 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave1_v4 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave1_v5 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave1_v5 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave1_v6 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave1_v6 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave1_v7 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave1_v7 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave1_log1_init(struct can1__main_ft24_ams_slave1_log1_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave1_log1_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave1_log1_ams_slave1_v4_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave1_log1_ams_slave1_v4_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave1_log1_ams_slave1_v4_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave1_log1_ams_slave1_v5_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave1_log1_ams_slave1_v5_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave1_log1_ams_slave1_v5_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave1_log1_ams_slave1_v6_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave1_log1_ams_slave1_v6_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave1_log1_ams_slave1_v6_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave1_log1_ams_slave1_v7_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave1_log1_ams_slave1_v7_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave1_log1_ams_slave1_v7_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave1_log2_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave1_log2_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave1_v8, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave1_v8, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave1_v9, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave1_v9, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave1_v10, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave1_v10, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave1_v11, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave1_v11, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave1_log2_unpack(
    struct can1__main_ft24_ams_slave1_log2_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave1_v8 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave1_v8 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave1_v9 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave1_v9 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave1_v10 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave1_v10 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave1_v11 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave1_v11 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave1_log2_init(struct can1__main_ft24_ams_slave1_log2_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave1_log2_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave1_log2_ams_slave1_v8_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave1_log2_ams_slave1_v8_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave1_log2_ams_slave1_v8_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave1_log2_ams_slave1_v9_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave1_log2_ams_slave1_v9_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave1_log2_ams_slave1_v9_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave1_log2_ams_slave1_v10_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave1_log2_ams_slave1_v10_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave1_log2_ams_slave1_v10_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave1_log2_ams_slave1_v11_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave1_log2_ams_slave1_v11_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave1_log2_ams_slave1_v11_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave1_log3_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave1_log3_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave1_v12, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave1_v12, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave1_v13, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave1_v13, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave1_v14, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave1_v14, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave1_v15, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave1_v15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave1_log3_unpack(
    struct can1__main_ft24_ams_slave1_log3_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave1_v12 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave1_v12 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave1_v13 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave1_v13 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave1_v14 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave1_v14 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave1_v15 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave1_v15 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave1_log3_init(struct can1__main_ft24_ams_slave1_log3_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave1_log3_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave1_log3_ams_slave1_v12_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave1_log3_ams_slave1_v12_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave1_log3_ams_slave1_v12_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave1_log3_ams_slave1_v13_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave1_log3_ams_slave1_v13_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave1_log3_ams_slave1_v13_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave1_log3_ams_slave1_v14_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave1_log3_ams_slave1_v14_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave1_log3_ams_slave1_v14_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave1_log3_ams_slave1_v15_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave1_log3_ams_slave1_v15_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave1_log3_ams_slave1_v15_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave1_log4_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave1_log4_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave1_v16, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave1_v16, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u32(src_p->ams_slave1_failed_sensors, 24u, 0xffu);
    dst_p[3] |= pack_right_shift_u32(src_p->ams_slave1_failed_sensors, 16u, 0xffu);
    dst_p[4] |= pack_right_shift_u32(src_p->ams_slave1_failed_sensors, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u32(src_p->ams_slave1_failed_sensors, 0u, 0xffu);

    return (6);
}

int can1__main_ft24_ams_slave1_log4_unpack(
    struct can1__main_ft24_ams_slave1_log4_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    dst_p->ams_slave1_v16 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave1_v16 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave1_failed_sensors = unpack_left_shift_u32(src_p[2], 24u, 0xffu);
    dst_p->ams_slave1_failed_sensors |= unpack_left_shift_u32(src_p[3], 16u, 0xffu);
    dst_p->ams_slave1_failed_sensors |= unpack_left_shift_u32(src_p[4], 8u, 0xffu);
    dst_p->ams_slave1_failed_sensors |= unpack_right_shift_u32(src_p[5], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave1_log4_init(struct can1__main_ft24_ams_slave1_log4_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave1_log4_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave1_log4_ams_slave1_v16_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave1_log4_ams_slave1_v16_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave1_log4_ams_slave1_v16_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint32_t can1__main_ft24_ams_slave1_log4_ams_slave1_failed_sensors_encode(double value)
{
    return (uint32_t)(value);
}

double can1__main_ft24_ams_slave1_log4_ams_slave1_failed_sensors_decode(uint32_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log4_ams_slave1_failed_sensors_is_in_range(uint32_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave1_log5_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave1_log5_t *src_p,
    size_t size)
{
    uint8_t ams_slave1_t0;
    uint8_t ams_slave1_t1;
    uint8_t ams_slave1_t2;
    uint8_t ams_slave1_t3;
    uint8_t ams_slave1_t4;
    uint8_t ams_slave1_t5;
    uint8_t ams_slave1_t6;
    uint8_t ams_slave1_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave1_t0 = (uint8_t)src_p->ams_slave1_t0;
    dst_p[0] |= pack_left_shift_u8(ams_slave1_t0, 0u, 0xffu);
    ams_slave1_t1 = (uint8_t)src_p->ams_slave1_t1;
    dst_p[1] |= pack_left_shift_u8(ams_slave1_t1, 0u, 0xffu);
    ams_slave1_t2 = (uint8_t)src_p->ams_slave1_t2;
    dst_p[2] |= pack_left_shift_u8(ams_slave1_t2, 0u, 0xffu);
    ams_slave1_t3 = (uint8_t)src_p->ams_slave1_t3;
    dst_p[3] |= pack_left_shift_u8(ams_slave1_t3, 0u, 0xffu);
    ams_slave1_t4 = (uint8_t)src_p->ams_slave1_t4;
    dst_p[4] |= pack_left_shift_u8(ams_slave1_t4, 0u, 0xffu);
    ams_slave1_t5 = (uint8_t)src_p->ams_slave1_t5;
    dst_p[5] |= pack_left_shift_u8(ams_slave1_t5, 0u, 0xffu);
    ams_slave1_t6 = (uint8_t)src_p->ams_slave1_t6;
    dst_p[6] |= pack_left_shift_u8(ams_slave1_t6, 0u, 0xffu);
    ams_slave1_t7 = (uint8_t)src_p->ams_slave1_t7;
    dst_p[7] |= pack_left_shift_u8(ams_slave1_t7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave1_log5_unpack(
    struct can1__main_ft24_ams_slave1_log5_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave1_t0;
    uint8_t ams_slave1_t1;
    uint8_t ams_slave1_t2;
    uint8_t ams_slave1_t3;
    uint8_t ams_slave1_t4;
    uint8_t ams_slave1_t5;
    uint8_t ams_slave1_t6;
    uint8_t ams_slave1_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave1_t0 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave1_t0 = (int8_t)ams_slave1_t0;
    ams_slave1_t1 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave1_t1 = (int8_t)ams_slave1_t1;
    ams_slave1_t2 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave1_t2 = (int8_t)ams_slave1_t2;
    ams_slave1_t3 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave1_t3 = (int8_t)ams_slave1_t3;
    ams_slave1_t4 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave1_t4 = (int8_t)ams_slave1_t4;
    ams_slave1_t5 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave1_t5 = (int8_t)ams_slave1_t5;
    ams_slave1_t6 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave1_t6 = (int8_t)ams_slave1_t6;
    ams_slave1_t7 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave1_t7 = (int8_t)ams_slave1_t7;

    return (0);
}

int can1__main_ft24_ams_slave1_log5_init(struct can1__main_ft24_ams_slave1_log5_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave1_log5_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave1_log5_ams_slave1_t0_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log5_ams_slave1_t0_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log5_ams_slave1_t0_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave1_log5_ams_slave1_t1_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log5_ams_slave1_t1_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log5_ams_slave1_t1_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave1_log5_ams_slave1_t2_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log5_ams_slave1_t2_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log5_ams_slave1_t2_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave1_log5_ams_slave1_t3_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log5_ams_slave1_t3_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log5_ams_slave1_t3_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave1_log5_ams_slave1_t4_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log5_ams_slave1_t4_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log5_ams_slave1_t4_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave1_log5_ams_slave1_t5_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log5_ams_slave1_t5_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log5_ams_slave1_t5_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave1_log5_ams_slave1_t6_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log5_ams_slave1_t6_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log5_ams_slave1_t6_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave1_log5_ams_slave1_t7_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log5_ams_slave1_t7_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log5_ams_slave1_t7_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave1_log6_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave1_log6_t *src_p,
    size_t size)
{
    uint8_t ams_slave1_t10;
    uint8_t ams_slave1_t11;
    uint8_t ams_slave1_t12;
    uint8_t ams_slave1_t13;
    uint8_t ams_slave1_t14;
    uint8_t ams_slave1_t15;
    uint8_t ams_slave1_t8;
    uint8_t ams_slave1_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave1_t8 = (uint8_t)src_p->ams_slave1_t8;
    dst_p[0] |= pack_left_shift_u8(ams_slave1_t8, 0u, 0xffu);
    ams_slave1_t9 = (uint8_t)src_p->ams_slave1_t9;
    dst_p[1] |= pack_left_shift_u8(ams_slave1_t9, 0u, 0xffu);
    ams_slave1_t10 = (uint8_t)src_p->ams_slave1_t10;
    dst_p[2] |= pack_left_shift_u8(ams_slave1_t10, 0u, 0xffu);
    ams_slave1_t11 = (uint8_t)src_p->ams_slave1_t11;
    dst_p[3] |= pack_left_shift_u8(ams_slave1_t11, 0u, 0xffu);
    ams_slave1_t12 = (uint8_t)src_p->ams_slave1_t12;
    dst_p[4] |= pack_left_shift_u8(ams_slave1_t12, 0u, 0xffu);
    ams_slave1_t13 = (uint8_t)src_p->ams_slave1_t13;
    dst_p[5] |= pack_left_shift_u8(ams_slave1_t13, 0u, 0xffu);
    ams_slave1_t14 = (uint8_t)src_p->ams_slave1_t14;
    dst_p[6] |= pack_left_shift_u8(ams_slave1_t14, 0u, 0xffu);
    ams_slave1_t15 = (uint8_t)src_p->ams_slave1_t15;
    dst_p[7] |= pack_left_shift_u8(ams_slave1_t15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave1_log6_unpack(
    struct can1__main_ft24_ams_slave1_log6_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave1_t10;
    uint8_t ams_slave1_t11;
    uint8_t ams_slave1_t12;
    uint8_t ams_slave1_t13;
    uint8_t ams_slave1_t14;
    uint8_t ams_slave1_t15;
    uint8_t ams_slave1_t8;
    uint8_t ams_slave1_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave1_t8 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave1_t8 = (int8_t)ams_slave1_t8;
    ams_slave1_t9 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave1_t9 = (int8_t)ams_slave1_t9;
    ams_slave1_t10 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave1_t10 = (int8_t)ams_slave1_t10;
    ams_slave1_t11 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave1_t11 = (int8_t)ams_slave1_t11;
    ams_slave1_t12 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave1_t12 = (int8_t)ams_slave1_t12;
    ams_slave1_t13 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave1_t13 = (int8_t)ams_slave1_t13;
    ams_slave1_t14 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave1_t14 = (int8_t)ams_slave1_t14;
    ams_slave1_t15 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave1_t15 = (int8_t)ams_slave1_t15;

    return (0);
}

int can1__main_ft24_ams_slave1_log6_init(struct can1__main_ft24_ams_slave1_log6_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave1_log6_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave1_log6_ams_slave1_t8_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log6_ams_slave1_t8_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log6_ams_slave1_t8_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave1_log6_ams_slave1_t9_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log6_ams_slave1_t9_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log6_ams_slave1_t9_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave1_log6_ams_slave1_t10_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log6_ams_slave1_t10_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log6_ams_slave1_t10_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave1_log6_ams_slave1_t11_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log6_ams_slave1_t11_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log6_ams_slave1_t11_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave1_log6_ams_slave1_t12_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log6_ams_slave1_t12_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log6_ams_slave1_t12_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave1_log6_ams_slave1_t13_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log6_ams_slave1_t13_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log6_ams_slave1_t13_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave1_log6_ams_slave1_t14_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log6_ams_slave1_t14_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log6_ams_slave1_t14_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave1_log6_ams_slave1_t15_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log6_ams_slave1_t15_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log6_ams_slave1_t15_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave1_log7_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave1_log7_t *src_p,
    size_t size)
{
    uint8_t ams_slave1_t16;
    uint8_t ams_slave1_t17;
    uint8_t ams_slave1_t18;
    uint8_t ams_slave1_t19;
    uint8_t ams_slave1_t20;
    uint8_t ams_slave1_t21;
    uint8_t ams_slave1_t22;
    uint8_t ams_slave1_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave1_t16 = (uint8_t)src_p->ams_slave1_t16;
    dst_p[0] |= pack_left_shift_u8(ams_slave1_t16, 0u, 0xffu);
    ams_slave1_t17 = (uint8_t)src_p->ams_slave1_t17;
    dst_p[1] |= pack_left_shift_u8(ams_slave1_t17, 0u, 0xffu);
    ams_slave1_t18 = (uint8_t)src_p->ams_slave1_t18;
    dst_p[2] |= pack_left_shift_u8(ams_slave1_t18, 0u, 0xffu);
    ams_slave1_t19 = (uint8_t)src_p->ams_slave1_t19;
    dst_p[3] |= pack_left_shift_u8(ams_slave1_t19, 0u, 0xffu);
    ams_slave1_t20 = (uint8_t)src_p->ams_slave1_t20;
    dst_p[4] |= pack_left_shift_u8(ams_slave1_t20, 0u, 0xffu);
    ams_slave1_t21 = (uint8_t)src_p->ams_slave1_t21;
    dst_p[5] |= pack_left_shift_u8(ams_slave1_t21, 0u, 0xffu);
    ams_slave1_t22 = (uint8_t)src_p->ams_slave1_t22;
    dst_p[6] |= pack_left_shift_u8(ams_slave1_t22, 0u, 0xffu);
    ams_slave1_t23 = (uint8_t)src_p->ams_slave1_t23;
    dst_p[7] |= pack_left_shift_u8(ams_slave1_t23, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave1_log7_unpack(
    struct can1__main_ft24_ams_slave1_log7_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave1_t16;
    uint8_t ams_slave1_t17;
    uint8_t ams_slave1_t18;
    uint8_t ams_slave1_t19;
    uint8_t ams_slave1_t20;
    uint8_t ams_slave1_t21;
    uint8_t ams_slave1_t22;
    uint8_t ams_slave1_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave1_t16 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave1_t16 = (int8_t)ams_slave1_t16;
    ams_slave1_t17 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave1_t17 = (int8_t)ams_slave1_t17;
    ams_slave1_t18 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave1_t18 = (int8_t)ams_slave1_t18;
    ams_slave1_t19 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave1_t19 = (int8_t)ams_slave1_t19;
    ams_slave1_t20 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave1_t20 = (int8_t)ams_slave1_t20;
    ams_slave1_t21 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave1_t21 = (int8_t)ams_slave1_t21;
    ams_slave1_t22 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave1_t22 = (int8_t)ams_slave1_t22;
    ams_slave1_t23 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave1_t23 = (int8_t)ams_slave1_t23;

    return (0);
}

int can1__main_ft24_ams_slave1_log7_init(struct can1__main_ft24_ams_slave1_log7_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave1_log7_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave1_log7_ams_slave1_t16_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log7_ams_slave1_t16_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log7_ams_slave1_t16_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave1_log7_ams_slave1_t17_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log7_ams_slave1_t17_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log7_ams_slave1_t17_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave1_log7_ams_slave1_t18_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log7_ams_slave1_t18_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log7_ams_slave1_t18_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave1_log7_ams_slave1_t19_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log7_ams_slave1_t19_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log7_ams_slave1_t19_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave1_log7_ams_slave1_t20_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log7_ams_slave1_t20_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log7_ams_slave1_t20_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave1_log7_ams_slave1_t21_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log7_ams_slave1_t21_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log7_ams_slave1_t21_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave1_log7_ams_slave1_t22_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log7_ams_slave1_t22_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log7_ams_slave1_t22_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave1_log7_ams_slave1_t23_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log7_ams_slave1_t23_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log7_ams_slave1_t23_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave1_log8_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave1_log8_t *src_p,
    size_t size)
{
    uint8_t ams_slave1_t24;
    uint8_t ams_slave1_t25;
    uint8_t ams_slave1_t26;
    uint8_t ams_slave1_t27;
    uint8_t ams_slave1_t28;
    uint8_t ams_slave1_t29;
    uint8_t ams_slave1_t30;
    uint8_t ams_slave1_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave1_t24 = (uint8_t)src_p->ams_slave1_t24;
    dst_p[0] |= pack_left_shift_u8(ams_slave1_t24, 0u, 0xffu);
    ams_slave1_t25 = (uint8_t)src_p->ams_slave1_t25;
    dst_p[1] |= pack_left_shift_u8(ams_slave1_t25, 0u, 0xffu);
    ams_slave1_t26 = (uint8_t)src_p->ams_slave1_t26;
    dst_p[2] |= pack_left_shift_u8(ams_slave1_t26, 0u, 0xffu);
    ams_slave1_t27 = (uint8_t)src_p->ams_slave1_t27;
    dst_p[3] |= pack_left_shift_u8(ams_slave1_t27, 0u, 0xffu);
    ams_slave1_t28 = (uint8_t)src_p->ams_slave1_t28;
    dst_p[4] |= pack_left_shift_u8(ams_slave1_t28, 0u, 0xffu);
    ams_slave1_t29 = (uint8_t)src_p->ams_slave1_t29;
    dst_p[5] |= pack_left_shift_u8(ams_slave1_t29, 0u, 0xffu);
    ams_slave1_t30 = (uint8_t)src_p->ams_slave1_t30;
    dst_p[6] |= pack_left_shift_u8(ams_slave1_t30, 0u, 0xffu);
    ams_slave1_t31 = (uint8_t)src_p->ams_slave1_t31;
    dst_p[7] |= pack_left_shift_u8(ams_slave1_t31, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave1_log8_unpack(
    struct can1__main_ft24_ams_slave1_log8_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave1_t24;
    uint8_t ams_slave1_t25;
    uint8_t ams_slave1_t26;
    uint8_t ams_slave1_t27;
    uint8_t ams_slave1_t28;
    uint8_t ams_slave1_t29;
    uint8_t ams_slave1_t30;
    uint8_t ams_slave1_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave1_t24 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave1_t24 = (int8_t)ams_slave1_t24;
    ams_slave1_t25 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave1_t25 = (int8_t)ams_slave1_t25;
    ams_slave1_t26 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave1_t26 = (int8_t)ams_slave1_t26;
    ams_slave1_t27 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave1_t27 = (int8_t)ams_slave1_t27;
    ams_slave1_t28 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave1_t28 = (int8_t)ams_slave1_t28;
    ams_slave1_t29 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave1_t29 = (int8_t)ams_slave1_t29;
    ams_slave1_t30 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave1_t30 = (int8_t)ams_slave1_t30;
    ams_slave1_t31 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave1_t31 = (int8_t)ams_slave1_t31;

    return (0);
}

int can1__main_ft24_ams_slave1_log8_init(struct can1__main_ft24_ams_slave1_log8_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave1_log8_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave1_log8_ams_slave1_t24_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log8_ams_slave1_t24_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log8_ams_slave1_t24_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave1_log8_ams_slave1_t25_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log8_ams_slave1_t25_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log8_ams_slave1_t25_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave1_log8_ams_slave1_t26_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log8_ams_slave1_t26_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log8_ams_slave1_t26_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave1_log8_ams_slave1_t27_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log8_ams_slave1_t27_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log8_ams_slave1_t27_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave1_log8_ams_slave1_t28_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log8_ams_slave1_t28_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log8_ams_slave1_t28_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave1_log8_ams_slave1_t29_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log8_ams_slave1_t29_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log8_ams_slave1_t29_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave1_log8_ams_slave1_t30_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log8_ams_slave1_t30_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log8_ams_slave1_t30_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave1_log8_ams_slave1_t31_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave1_log8_ams_slave1_t31_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_log8_ams_slave1_t31_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave2_log0_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave2_log0_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave2_v0, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave2_v0, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave2_v1, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave2_v1, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave2_v2, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave2_v2, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave2_v3, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave2_v3, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave2_log0_unpack(
    struct can1__main_ft24_ams_slave2_log0_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave2_v0 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave2_v0 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave2_v1 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave2_v1 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave2_v2 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave2_v2 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave2_v3 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave2_v3 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave2_log0_init(struct can1__main_ft24_ams_slave2_log0_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave2_log0_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave2_log0_ams_slave2_v0_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave2_log0_ams_slave2_v0_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave2_log0_ams_slave2_v0_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave2_log0_ams_slave2_v1_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave2_log0_ams_slave2_v1_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave2_log0_ams_slave2_v1_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave2_log0_ams_slave2_v2_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave2_log0_ams_slave2_v2_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave2_log0_ams_slave2_v2_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave2_log0_ams_slave2_v3_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave2_log0_ams_slave2_v3_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave2_log0_ams_slave2_v3_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave2_log1_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave2_log1_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave2_v4, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave2_v4, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave2_v5, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave2_v5, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave2_v6, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave2_v6, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave2_v7, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave2_v7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave2_log1_unpack(
    struct can1__main_ft24_ams_slave2_log1_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave2_v4 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave2_v4 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave2_v5 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave2_v5 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave2_v6 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave2_v6 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave2_v7 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave2_v7 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave2_log1_init(struct can1__main_ft24_ams_slave2_log1_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave2_log1_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave2_log1_ams_slave2_v4_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave2_log1_ams_slave2_v4_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave2_log1_ams_slave2_v4_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave2_log1_ams_slave2_v5_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave2_log1_ams_slave2_v5_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave2_log1_ams_slave2_v5_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave2_log1_ams_slave2_v6_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave2_log1_ams_slave2_v6_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave2_log1_ams_slave2_v6_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave2_log1_ams_slave2_v7_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave2_log1_ams_slave2_v7_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave2_log1_ams_slave2_v7_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave2_log2_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave2_log2_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave2_v8, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave2_v8, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave2_v9, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave2_v9, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave2_v10, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave2_v10, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave2_v11, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave2_v11, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave2_log2_unpack(
    struct can1__main_ft24_ams_slave2_log2_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave2_v8 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave2_v8 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave2_v9 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave2_v9 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave2_v10 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave2_v10 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave2_v11 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave2_v11 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave2_log2_init(struct can1__main_ft24_ams_slave2_log2_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave2_log2_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave2_log2_ams_slave2_v8_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave2_log2_ams_slave2_v8_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave2_log2_ams_slave2_v8_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave2_log2_ams_slave2_v9_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave2_log2_ams_slave2_v9_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave2_log2_ams_slave2_v9_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave2_log2_ams_slave2_v10_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave2_log2_ams_slave2_v10_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave2_log2_ams_slave2_v10_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave2_log2_ams_slave2_v11_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave2_log2_ams_slave2_v11_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave2_log2_ams_slave2_v11_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave2_log3_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave2_log3_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave2_v12, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave2_v12, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave2_v13, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave2_v13, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave2_v14, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave2_v14, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave2_v15, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave2_v15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave2_log3_unpack(
    struct can1__main_ft24_ams_slave2_log3_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave2_v12 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave2_v12 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave2_v13 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave2_v13 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave2_v14 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave2_v14 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave2_v15 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave2_v15 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave2_log3_init(struct can1__main_ft24_ams_slave2_log3_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave2_log3_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave2_log3_ams_slave2_v12_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave2_log3_ams_slave2_v12_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave2_log3_ams_slave2_v12_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave2_log3_ams_slave2_v13_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave2_log3_ams_slave2_v13_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave2_log3_ams_slave2_v13_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave2_log3_ams_slave2_v14_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave2_log3_ams_slave2_v14_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave2_log3_ams_slave2_v14_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave2_log3_ams_slave2_v15_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave2_log3_ams_slave2_v15_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave2_log3_ams_slave2_v15_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave2_log4_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave2_log4_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave2_v16, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave2_v16, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u32(src_p->ams_slave2_failed_sensors, 24u, 0xffu);
    dst_p[3] |= pack_right_shift_u32(src_p->ams_slave2_failed_sensors, 16u, 0xffu);
    dst_p[4] |= pack_right_shift_u32(src_p->ams_slave2_failed_sensors, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u32(src_p->ams_slave2_failed_sensors, 0u, 0xffu);

    return (6);
}

int can1__main_ft24_ams_slave2_log4_unpack(
    struct can1__main_ft24_ams_slave2_log4_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    dst_p->ams_slave2_v16 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave2_v16 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave2_failed_sensors = unpack_left_shift_u32(src_p[2], 24u, 0xffu);
    dst_p->ams_slave2_failed_sensors |= unpack_left_shift_u32(src_p[3], 16u, 0xffu);
    dst_p->ams_slave2_failed_sensors |= unpack_left_shift_u32(src_p[4], 8u, 0xffu);
    dst_p->ams_slave2_failed_sensors |= unpack_right_shift_u32(src_p[5], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave2_log4_init(struct can1__main_ft24_ams_slave2_log4_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave2_log4_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave2_log4_ams_slave2_v16_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave2_log4_ams_slave2_v16_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave2_log4_ams_slave2_v16_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint32_t can1__main_ft24_ams_slave2_log4_ams_slave2_failed_sensors_encode(double value)
{
    return (uint32_t)(value);
}

double can1__main_ft24_ams_slave2_log4_ams_slave2_failed_sensors_decode(uint32_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log4_ams_slave2_failed_sensors_is_in_range(uint32_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave2_log5_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave2_log5_t *src_p,
    size_t size)
{
    uint8_t ams_slave2_t0;
    uint8_t ams_slave2_t1;
    uint8_t ams_slave2_t2;
    uint8_t ams_slave2_t3;
    uint8_t ams_slave2_t4;
    uint8_t ams_slave2_t5;
    uint8_t ams_slave2_t6;
    uint8_t ams_slave2_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave2_t0 = (uint8_t)src_p->ams_slave2_t0;
    dst_p[0] |= pack_left_shift_u8(ams_slave2_t0, 0u, 0xffu);
    ams_slave2_t1 = (uint8_t)src_p->ams_slave2_t1;
    dst_p[1] |= pack_left_shift_u8(ams_slave2_t1, 0u, 0xffu);
    ams_slave2_t2 = (uint8_t)src_p->ams_slave2_t2;
    dst_p[2] |= pack_left_shift_u8(ams_slave2_t2, 0u, 0xffu);
    ams_slave2_t3 = (uint8_t)src_p->ams_slave2_t3;
    dst_p[3] |= pack_left_shift_u8(ams_slave2_t3, 0u, 0xffu);
    ams_slave2_t4 = (uint8_t)src_p->ams_slave2_t4;
    dst_p[4] |= pack_left_shift_u8(ams_slave2_t4, 0u, 0xffu);
    ams_slave2_t5 = (uint8_t)src_p->ams_slave2_t5;
    dst_p[5] |= pack_left_shift_u8(ams_slave2_t5, 0u, 0xffu);
    ams_slave2_t6 = (uint8_t)src_p->ams_slave2_t6;
    dst_p[6] |= pack_left_shift_u8(ams_slave2_t6, 0u, 0xffu);
    ams_slave2_t7 = (uint8_t)src_p->ams_slave2_t7;
    dst_p[7] |= pack_left_shift_u8(ams_slave2_t7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave2_log5_unpack(
    struct can1__main_ft24_ams_slave2_log5_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave2_t0;
    uint8_t ams_slave2_t1;
    uint8_t ams_slave2_t2;
    uint8_t ams_slave2_t3;
    uint8_t ams_slave2_t4;
    uint8_t ams_slave2_t5;
    uint8_t ams_slave2_t6;
    uint8_t ams_slave2_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave2_t0 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave2_t0 = (int8_t)ams_slave2_t0;
    ams_slave2_t1 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave2_t1 = (int8_t)ams_slave2_t1;
    ams_slave2_t2 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave2_t2 = (int8_t)ams_slave2_t2;
    ams_slave2_t3 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave2_t3 = (int8_t)ams_slave2_t3;
    ams_slave2_t4 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave2_t4 = (int8_t)ams_slave2_t4;
    ams_slave2_t5 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave2_t5 = (int8_t)ams_slave2_t5;
    ams_slave2_t6 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave2_t6 = (int8_t)ams_slave2_t6;
    ams_slave2_t7 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave2_t7 = (int8_t)ams_slave2_t7;

    return (0);
}

int can1__main_ft24_ams_slave2_log5_init(struct can1__main_ft24_ams_slave2_log5_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave2_log5_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave2_log5_ams_slave2_t0_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log5_ams_slave2_t0_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log5_ams_slave2_t0_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave2_log5_ams_slave2_t1_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log5_ams_slave2_t1_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log5_ams_slave2_t1_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave2_log5_ams_slave2_t2_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log5_ams_slave2_t2_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log5_ams_slave2_t2_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave2_log5_ams_slave2_t3_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log5_ams_slave2_t3_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log5_ams_slave2_t3_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave2_log5_ams_slave2_t4_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log5_ams_slave2_t4_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log5_ams_slave2_t4_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave2_log5_ams_slave2_t5_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log5_ams_slave2_t5_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log5_ams_slave2_t5_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave2_log5_ams_slave2_t6_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log5_ams_slave2_t6_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log5_ams_slave2_t6_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave2_log5_ams_slave2_t7_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log5_ams_slave2_t7_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log5_ams_slave2_t7_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave2_log6_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave2_log6_t *src_p,
    size_t size)
{
    uint8_t ams_slave2_t10;
    uint8_t ams_slave2_t11;
    uint8_t ams_slave2_t12;
    uint8_t ams_slave2_t13;
    uint8_t ams_slave2_t14;
    uint8_t ams_slave2_t15;
    uint8_t ams_slave2_t8;
    uint8_t ams_slave2_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave2_t8 = (uint8_t)src_p->ams_slave2_t8;
    dst_p[0] |= pack_left_shift_u8(ams_slave2_t8, 0u, 0xffu);
    ams_slave2_t9 = (uint8_t)src_p->ams_slave2_t9;
    dst_p[1] |= pack_left_shift_u8(ams_slave2_t9, 0u, 0xffu);
    ams_slave2_t10 = (uint8_t)src_p->ams_slave2_t10;
    dst_p[2] |= pack_left_shift_u8(ams_slave2_t10, 0u, 0xffu);
    ams_slave2_t11 = (uint8_t)src_p->ams_slave2_t11;
    dst_p[3] |= pack_left_shift_u8(ams_slave2_t11, 0u, 0xffu);
    ams_slave2_t12 = (uint8_t)src_p->ams_slave2_t12;
    dst_p[4] |= pack_left_shift_u8(ams_slave2_t12, 0u, 0xffu);
    ams_slave2_t13 = (uint8_t)src_p->ams_slave2_t13;
    dst_p[5] |= pack_left_shift_u8(ams_slave2_t13, 0u, 0xffu);
    ams_slave2_t14 = (uint8_t)src_p->ams_slave2_t14;
    dst_p[6] |= pack_left_shift_u8(ams_slave2_t14, 0u, 0xffu);
    ams_slave2_t15 = (uint8_t)src_p->ams_slave2_t15;
    dst_p[7] |= pack_left_shift_u8(ams_slave2_t15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave2_log6_unpack(
    struct can1__main_ft24_ams_slave2_log6_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave2_t10;
    uint8_t ams_slave2_t11;
    uint8_t ams_slave2_t12;
    uint8_t ams_slave2_t13;
    uint8_t ams_slave2_t14;
    uint8_t ams_slave2_t15;
    uint8_t ams_slave2_t8;
    uint8_t ams_slave2_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave2_t8 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave2_t8 = (int8_t)ams_slave2_t8;
    ams_slave2_t9 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave2_t9 = (int8_t)ams_slave2_t9;
    ams_slave2_t10 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave2_t10 = (int8_t)ams_slave2_t10;
    ams_slave2_t11 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave2_t11 = (int8_t)ams_slave2_t11;
    ams_slave2_t12 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave2_t12 = (int8_t)ams_slave2_t12;
    ams_slave2_t13 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave2_t13 = (int8_t)ams_slave2_t13;
    ams_slave2_t14 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave2_t14 = (int8_t)ams_slave2_t14;
    ams_slave2_t15 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave2_t15 = (int8_t)ams_slave2_t15;

    return (0);
}

int can1__main_ft24_ams_slave2_log6_init(struct can1__main_ft24_ams_slave2_log6_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave2_log6_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave2_log6_ams_slave2_t8_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log6_ams_slave2_t8_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log6_ams_slave2_t8_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave2_log6_ams_slave2_t9_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log6_ams_slave2_t9_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log6_ams_slave2_t9_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave2_log6_ams_slave2_t10_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log6_ams_slave2_t10_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log6_ams_slave2_t10_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave2_log6_ams_slave2_t11_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log6_ams_slave2_t11_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log6_ams_slave2_t11_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave2_log6_ams_slave2_t12_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log6_ams_slave2_t12_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log6_ams_slave2_t12_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave2_log6_ams_slave2_t13_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log6_ams_slave2_t13_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log6_ams_slave2_t13_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave2_log6_ams_slave2_t14_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log6_ams_slave2_t14_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log6_ams_slave2_t14_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave2_log6_ams_slave2_t15_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log6_ams_slave2_t15_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log6_ams_slave2_t15_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave2_log7_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave2_log7_t *src_p,
    size_t size)
{
    uint8_t ams_slave2_t16;
    uint8_t ams_slave2_t17;
    uint8_t ams_slave2_t18;
    uint8_t ams_slave2_t19;
    uint8_t ams_slave2_t20;
    uint8_t ams_slave2_t21;
    uint8_t ams_slave2_t22;
    uint8_t ams_slave2_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave2_t16 = (uint8_t)src_p->ams_slave2_t16;
    dst_p[0] |= pack_left_shift_u8(ams_slave2_t16, 0u, 0xffu);
    ams_slave2_t17 = (uint8_t)src_p->ams_slave2_t17;
    dst_p[1] |= pack_left_shift_u8(ams_slave2_t17, 0u, 0xffu);
    ams_slave2_t18 = (uint8_t)src_p->ams_slave2_t18;
    dst_p[2] |= pack_left_shift_u8(ams_slave2_t18, 0u, 0xffu);
    ams_slave2_t19 = (uint8_t)src_p->ams_slave2_t19;
    dst_p[3] |= pack_left_shift_u8(ams_slave2_t19, 0u, 0xffu);
    ams_slave2_t20 = (uint8_t)src_p->ams_slave2_t20;
    dst_p[4] |= pack_left_shift_u8(ams_slave2_t20, 0u, 0xffu);
    ams_slave2_t21 = (uint8_t)src_p->ams_slave2_t21;
    dst_p[5] |= pack_left_shift_u8(ams_slave2_t21, 0u, 0xffu);
    ams_slave2_t22 = (uint8_t)src_p->ams_slave2_t22;
    dst_p[6] |= pack_left_shift_u8(ams_slave2_t22, 0u, 0xffu);
    ams_slave2_t23 = (uint8_t)src_p->ams_slave2_t23;
    dst_p[7] |= pack_left_shift_u8(ams_slave2_t23, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave2_log7_unpack(
    struct can1__main_ft24_ams_slave2_log7_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave2_t16;
    uint8_t ams_slave2_t17;
    uint8_t ams_slave2_t18;
    uint8_t ams_slave2_t19;
    uint8_t ams_slave2_t20;
    uint8_t ams_slave2_t21;
    uint8_t ams_slave2_t22;
    uint8_t ams_slave2_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave2_t16 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave2_t16 = (int8_t)ams_slave2_t16;
    ams_slave2_t17 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave2_t17 = (int8_t)ams_slave2_t17;
    ams_slave2_t18 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave2_t18 = (int8_t)ams_slave2_t18;
    ams_slave2_t19 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave2_t19 = (int8_t)ams_slave2_t19;
    ams_slave2_t20 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave2_t20 = (int8_t)ams_slave2_t20;
    ams_slave2_t21 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave2_t21 = (int8_t)ams_slave2_t21;
    ams_slave2_t22 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave2_t22 = (int8_t)ams_slave2_t22;
    ams_slave2_t23 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave2_t23 = (int8_t)ams_slave2_t23;

    return (0);
}

int can1__main_ft24_ams_slave2_log7_init(struct can1__main_ft24_ams_slave2_log7_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave2_log7_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave2_log7_ams_slave2_t16_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log7_ams_slave2_t16_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log7_ams_slave2_t16_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave2_log7_ams_slave2_t17_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log7_ams_slave2_t17_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log7_ams_slave2_t17_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave2_log7_ams_slave2_t18_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log7_ams_slave2_t18_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log7_ams_slave2_t18_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave2_log7_ams_slave2_t19_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log7_ams_slave2_t19_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log7_ams_slave2_t19_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave2_log7_ams_slave2_t20_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log7_ams_slave2_t20_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log7_ams_slave2_t20_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave2_log7_ams_slave2_t21_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log7_ams_slave2_t21_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log7_ams_slave2_t21_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave2_log7_ams_slave2_t22_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log7_ams_slave2_t22_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log7_ams_slave2_t22_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave2_log7_ams_slave2_t23_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log7_ams_slave2_t23_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log7_ams_slave2_t23_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave2_log8_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave2_log8_t *src_p,
    size_t size)
{
    uint8_t ams_slave2_t24;
    uint8_t ams_slave2_t25;
    uint8_t ams_slave2_t26;
    uint8_t ams_slave2_t27;
    uint8_t ams_slave2_t28;
    uint8_t ams_slave2_t29;
    uint8_t ams_slave2_t30;
    uint8_t ams_slave2_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave2_t24 = (uint8_t)src_p->ams_slave2_t24;
    dst_p[0] |= pack_left_shift_u8(ams_slave2_t24, 0u, 0xffu);
    ams_slave2_t25 = (uint8_t)src_p->ams_slave2_t25;
    dst_p[1] |= pack_left_shift_u8(ams_slave2_t25, 0u, 0xffu);
    ams_slave2_t26 = (uint8_t)src_p->ams_slave2_t26;
    dst_p[2] |= pack_left_shift_u8(ams_slave2_t26, 0u, 0xffu);
    ams_slave2_t27 = (uint8_t)src_p->ams_slave2_t27;
    dst_p[3] |= pack_left_shift_u8(ams_slave2_t27, 0u, 0xffu);
    ams_slave2_t28 = (uint8_t)src_p->ams_slave2_t28;
    dst_p[4] |= pack_left_shift_u8(ams_slave2_t28, 0u, 0xffu);
    ams_slave2_t29 = (uint8_t)src_p->ams_slave2_t29;
    dst_p[5] |= pack_left_shift_u8(ams_slave2_t29, 0u, 0xffu);
    ams_slave2_t30 = (uint8_t)src_p->ams_slave2_t30;
    dst_p[6] |= pack_left_shift_u8(ams_slave2_t30, 0u, 0xffu);
    ams_slave2_t31 = (uint8_t)src_p->ams_slave2_t31;
    dst_p[7] |= pack_left_shift_u8(ams_slave2_t31, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave2_log8_unpack(
    struct can1__main_ft24_ams_slave2_log8_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave2_t24;
    uint8_t ams_slave2_t25;
    uint8_t ams_slave2_t26;
    uint8_t ams_slave2_t27;
    uint8_t ams_slave2_t28;
    uint8_t ams_slave2_t29;
    uint8_t ams_slave2_t30;
    uint8_t ams_slave2_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave2_t24 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave2_t24 = (int8_t)ams_slave2_t24;
    ams_slave2_t25 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave2_t25 = (int8_t)ams_slave2_t25;
    ams_slave2_t26 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave2_t26 = (int8_t)ams_slave2_t26;
    ams_slave2_t27 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave2_t27 = (int8_t)ams_slave2_t27;
    ams_slave2_t28 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave2_t28 = (int8_t)ams_slave2_t28;
    ams_slave2_t29 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave2_t29 = (int8_t)ams_slave2_t29;
    ams_slave2_t30 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave2_t30 = (int8_t)ams_slave2_t30;
    ams_slave2_t31 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave2_t31 = (int8_t)ams_slave2_t31;

    return (0);
}

int can1__main_ft24_ams_slave2_log8_init(struct can1__main_ft24_ams_slave2_log8_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave2_log8_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave2_log8_ams_slave2_t24_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log8_ams_slave2_t24_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log8_ams_slave2_t24_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave2_log8_ams_slave2_t25_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log8_ams_slave2_t25_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log8_ams_slave2_t25_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave2_log8_ams_slave2_t26_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log8_ams_slave2_t26_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log8_ams_slave2_t26_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave2_log8_ams_slave2_t27_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log8_ams_slave2_t27_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log8_ams_slave2_t27_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave2_log8_ams_slave2_t28_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log8_ams_slave2_t28_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log8_ams_slave2_t28_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave2_log8_ams_slave2_t29_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log8_ams_slave2_t29_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log8_ams_slave2_t29_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave2_log8_ams_slave2_t30_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log8_ams_slave2_t30_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log8_ams_slave2_t30_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave2_log8_ams_slave2_t31_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave2_log8_ams_slave2_t31_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_log8_ams_slave2_t31_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave3_log0_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave3_log0_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave3_v0, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave3_v0, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave3_v1, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave3_v1, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave3_v2, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave3_v2, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave3_v3, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave3_v3, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave3_log0_unpack(
    struct can1__main_ft24_ams_slave3_log0_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave3_v0 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave3_v0 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave3_v1 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave3_v1 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave3_v2 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave3_v2 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave3_v3 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave3_v3 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave3_log0_init(struct can1__main_ft24_ams_slave3_log0_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave3_log0_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave3_log0_ams_slave3_v0_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave3_log0_ams_slave3_v0_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave3_log0_ams_slave3_v0_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave3_log0_ams_slave3_v1_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave3_log0_ams_slave3_v1_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave3_log0_ams_slave3_v1_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave3_log0_ams_slave3_v2_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave3_log0_ams_slave3_v2_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave3_log0_ams_slave3_v2_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave3_log0_ams_slave3_v3_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave3_log0_ams_slave3_v3_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave3_log0_ams_slave3_v3_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave3_log1_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave3_log1_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave3_v4, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave3_v4, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave3_v5, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave3_v5, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave3_v6, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave3_v6, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave3_v7, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave3_v7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave3_log1_unpack(
    struct can1__main_ft24_ams_slave3_log1_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave3_v4 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave3_v4 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave3_v5 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave3_v5 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave3_v6 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave3_v6 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave3_v7 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave3_v7 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave3_log1_init(struct can1__main_ft24_ams_slave3_log1_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave3_log1_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave3_log1_ams_slave3_v4_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave3_log1_ams_slave3_v4_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave3_log1_ams_slave3_v4_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave3_log1_ams_slave3_v5_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave3_log1_ams_slave3_v5_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave3_log1_ams_slave3_v5_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave3_log1_ams_slave3_v6_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave3_log1_ams_slave3_v6_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave3_log1_ams_slave3_v6_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave3_log1_ams_slave3_v7_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave3_log1_ams_slave3_v7_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave3_log1_ams_slave3_v7_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave3_log2_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave3_log2_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave3_v8, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave3_v8, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave3_v9, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave3_v9, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave3_v10, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave3_v10, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave3_v11, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave3_v11, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave3_log2_unpack(
    struct can1__main_ft24_ams_slave3_log2_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave3_v8 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave3_v8 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave3_v9 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave3_v9 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave3_v10 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave3_v10 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave3_v11 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave3_v11 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave3_log2_init(struct can1__main_ft24_ams_slave3_log2_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave3_log2_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave3_log2_ams_slave3_v8_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave3_log2_ams_slave3_v8_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave3_log2_ams_slave3_v8_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave3_log2_ams_slave3_v9_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave3_log2_ams_slave3_v9_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave3_log2_ams_slave3_v9_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave3_log2_ams_slave3_v10_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave3_log2_ams_slave3_v10_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave3_log2_ams_slave3_v10_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave3_log2_ams_slave3_v11_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave3_log2_ams_slave3_v11_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave3_log2_ams_slave3_v11_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave3_log3_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave3_log3_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave3_v12, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave3_v12, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave3_v13, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave3_v13, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave3_v14, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave3_v14, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave3_v15, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave3_v15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave3_log3_unpack(
    struct can1__main_ft24_ams_slave3_log3_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave3_v12 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave3_v12 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave3_v13 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave3_v13 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave3_v14 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave3_v14 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave3_v15 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave3_v15 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave3_log3_init(struct can1__main_ft24_ams_slave3_log3_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave3_log3_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave3_log3_ams_slave3_v12_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave3_log3_ams_slave3_v12_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave3_log3_ams_slave3_v12_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave3_log3_ams_slave3_v13_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave3_log3_ams_slave3_v13_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave3_log3_ams_slave3_v13_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave3_log3_ams_slave3_v14_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave3_log3_ams_slave3_v14_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave3_log3_ams_slave3_v14_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave3_log3_ams_slave3_v15_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave3_log3_ams_slave3_v15_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave3_log3_ams_slave3_v15_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave3_log4_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave3_log4_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave3_v16, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave3_v16, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u32(src_p->ams_slave3_failed_sensors, 24u, 0xffu);
    dst_p[3] |= pack_right_shift_u32(src_p->ams_slave3_failed_sensors, 16u, 0xffu);
    dst_p[4] |= pack_right_shift_u32(src_p->ams_slave3_failed_sensors, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u32(src_p->ams_slave3_failed_sensors, 0u, 0xffu);

    return (6);
}

int can1__main_ft24_ams_slave3_log4_unpack(
    struct can1__main_ft24_ams_slave3_log4_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    dst_p->ams_slave3_v16 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave3_v16 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave3_failed_sensors = unpack_left_shift_u32(src_p[2], 24u, 0xffu);
    dst_p->ams_slave3_failed_sensors |= unpack_left_shift_u32(src_p[3], 16u, 0xffu);
    dst_p->ams_slave3_failed_sensors |= unpack_left_shift_u32(src_p[4], 8u, 0xffu);
    dst_p->ams_slave3_failed_sensors |= unpack_right_shift_u32(src_p[5], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave3_log4_init(struct can1__main_ft24_ams_slave3_log4_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave3_log4_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave3_log4_ams_slave3_v16_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave3_log4_ams_slave3_v16_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave3_log4_ams_slave3_v16_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint32_t can1__main_ft24_ams_slave3_log4_ams_slave3_failed_sensors_encode(double value)
{
    return (uint32_t)(value);
}

double can1__main_ft24_ams_slave3_log4_ams_slave3_failed_sensors_decode(uint32_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log4_ams_slave3_failed_sensors_is_in_range(uint32_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave3_log5_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave3_log5_t *src_p,
    size_t size)
{
    uint8_t ams_slave3_t0;
    uint8_t ams_slave3_t1;
    uint8_t ams_slave3_t2;
    uint8_t ams_slave3_t3;
    uint8_t ams_slave3_t4;
    uint8_t ams_slave3_t5;
    uint8_t ams_slave3_t6;
    uint8_t ams_slave3_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave3_t0 = (uint8_t)src_p->ams_slave3_t0;
    dst_p[0] |= pack_left_shift_u8(ams_slave3_t0, 0u, 0xffu);
    ams_slave3_t1 = (uint8_t)src_p->ams_slave3_t1;
    dst_p[1] |= pack_left_shift_u8(ams_slave3_t1, 0u, 0xffu);
    ams_slave3_t2 = (uint8_t)src_p->ams_slave3_t2;
    dst_p[2] |= pack_left_shift_u8(ams_slave3_t2, 0u, 0xffu);
    ams_slave3_t3 = (uint8_t)src_p->ams_slave3_t3;
    dst_p[3] |= pack_left_shift_u8(ams_slave3_t3, 0u, 0xffu);
    ams_slave3_t4 = (uint8_t)src_p->ams_slave3_t4;
    dst_p[4] |= pack_left_shift_u8(ams_slave3_t4, 0u, 0xffu);
    ams_slave3_t5 = (uint8_t)src_p->ams_slave3_t5;
    dst_p[5] |= pack_left_shift_u8(ams_slave3_t5, 0u, 0xffu);
    ams_slave3_t6 = (uint8_t)src_p->ams_slave3_t6;
    dst_p[6] |= pack_left_shift_u8(ams_slave3_t6, 0u, 0xffu);
    ams_slave3_t7 = (uint8_t)src_p->ams_slave3_t7;
    dst_p[7] |= pack_left_shift_u8(ams_slave3_t7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave3_log5_unpack(
    struct can1__main_ft24_ams_slave3_log5_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave3_t0;
    uint8_t ams_slave3_t1;
    uint8_t ams_slave3_t2;
    uint8_t ams_slave3_t3;
    uint8_t ams_slave3_t4;
    uint8_t ams_slave3_t5;
    uint8_t ams_slave3_t6;
    uint8_t ams_slave3_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave3_t0 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave3_t0 = (int8_t)ams_slave3_t0;
    ams_slave3_t1 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave3_t1 = (int8_t)ams_slave3_t1;
    ams_slave3_t2 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave3_t2 = (int8_t)ams_slave3_t2;
    ams_slave3_t3 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave3_t3 = (int8_t)ams_slave3_t3;
    ams_slave3_t4 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave3_t4 = (int8_t)ams_slave3_t4;
    ams_slave3_t5 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave3_t5 = (int8_t)ams_slave3_t5;
    ams_slave3_t6 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave3_t6 = (int8_t)ams_slave3_t6;
    ams_slave3_t7 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave3_t7 = (int8_t)ams_slave3_t7;

    return (0);
}

int can1__main_ft24_ams_slave3_log5_init(struct can1__main_ft24_ams_slave3_log5_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave3_log5_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave3_log5_ams_slave3_t0_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log5_ams_slave3_t0_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log5_ams_slave3_t0_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave3_log5_ams_slave3_t1_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log5_ams_slave3_t1_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log5_ams_slave3_t1_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave3_log5_ams_slave3_t2_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log5_ams_slave3_t2_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log5_ams_slave3_t2_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave3_log5_ams_slave3_t3_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log5_ams_slave3_t3_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log5_ams_slave3_t3_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave3_log5_ams_slave3_t4_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log5_ams_slave3_t4_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log5_ams_slave3_t4_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave3_log5_ams_slave3_t5_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log5_ams_slave3_t5_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log5_ams_slave3_t5_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave3_log5_ams_slave3_t6_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log5_ams_slave3_t6_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log5_ams_slave3_t6_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave3_log5_ams_slave3_t7_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log5_ams_slave3_t7_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log5_ams_slave3_t7_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave3_log6_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave3_log6_t *src_p,
    size_t size)
{
    uint8_t ams_slave3_t10;
    uint8_t ams_slave3_t11;
    uint8_t ams_slave3_t12;
    uint8_t ams_slave3_t13;
    uint8_t ams_slave3_t14;
    uint8_t ams_slave3_t15;
    uint8_t ams_slave3_t8;
    uint8_t ams_slave3_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave3_t8 = (uint8_t)src_p->ams_slave3_t8;
    dst_p[0] |= pack_left_shift_u8(ams_slave3_t8, 0u, 0xffu);
    ams_slave3_t9 = (uint8_t)src_p->ams_slave3_t9;
    dst_p[1] |= pack_left_shift_u8(ams_slave3_t9, 0u, 0xffu);
    ams_slave3_t10 = (uint8_t)src_p->ams_slave3_t10;
    dst_p[2] |= pack_left_shift_u8(ams_slave3_t10, 0u, 0xffu);
    ams_slave3_t11 = (uint8_t)src_p->ams_slave3_t11;
    dst_p[3] |= pack_left_shift_u8(ams_slave3_t11, 0u, 0xffu);
    ams_slave3_t12 = (uint8_t)src_p->ams_slave3_t12;
    dst_p[4] |= pack_left_shift_u8(ams_slave3_t12, 0u, 0xffu);
    ams_slave3_t13 = (uint8_t)src_p->ams_slave3_t13;
    dst_p[5] |= pack_left_shift_u8(ams_slave3_t13, 0u, 0xffu);
    ams_slave3_t14 = (uint8_t)src_p->ams_slave3_t14;
    dst_p[6] |= pack_left_shift_u8(ams_slave3_t14, 0u, 0xffu);
    ams_slave3_t15 = (uint8_t)src_p->ams_slave3_t15;
    dst_p[7] |= pack_left_shift_u8(ams_slave3_t15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave3_log6_unpack(
    struct can1__main_ft24_ams_slave3_log6_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave3_t10;
    uint8_t ams_slave3_t11;
    uint8_t ams_slave3_t12;
    uint8_t ams_slave3_t13;
    uint8_t ams_slave3_t14;
    uint8_t ams_slave3_t15;
    uint8_t ams_slave3_t8;
    uint8_t ams_slave3_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave3_t8 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave3_t8 = (int8_t)ams_slave3_t8;
    ams_slave3_t9 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave3_t9 = (int8_t)ams_slave3_t9;
    ams_slave3_t10 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave3_t10 = (int8_t)ams_slave3_t10;
    ams_slave3_t11 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave3_t11 = (int8_t)ams_slave3_t11;
    ams_slave3_t12 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave3_t12 = (int8_t)ams_slave3_t12;
    ams_slave3_t13 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave3_t13 = (int8_t)ams_slave3_t13;
    ams_slave3_t14 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave3_t14 = (int8_t)ams_slave3_t14;
    ams_slave3_t15 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave3_t15 = (int8_t)ams_slave3_t15;

    return (0);
}

int can1__main_ft24_ams_slave3_log6_init(struct can1__main_ft24_ams_slave3_log6_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave3_log6_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave3_log6_ams_slave3_t8_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log6_ams_slave3_t8_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log6_ams_slave3_t8_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave3_log6_ams_slave3_t9_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log6_ams_slave3_t9_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log6_ams_slave3_t9_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave3_log6_ams_slave3_t10_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log6_ams_slave3_t10_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log6_ams_slave3_t10_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave3_log6_ams_slave3_t11_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log6_ams_slave3_t11_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log6_ams_slave3_t11_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave3_log6_ams_slave3_t12_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log6_ams_slave3_t12_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log6_ams_slave3_t12_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave3_log6_ams_slave3_t13_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log6_ams_slave3_t13_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log6_ams_slave3_t13_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave3_log6_ams_slave3_t14_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log6_ams_slave3_t14_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log6_ams_slave3_t14_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave3_log6_ams_slave3_t15_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log6_ams_slave3_t15_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log6_ams_slave3_t15_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave3_log7_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave3_log7_t *src_p,
    size_t size)
{
    uint8_t ams_slave3_t16;
    uint8_t ams_slave3_t17;
    uint8_t ams_slave3_t18;
    uint8_t ams_slave3_t19;
    uint8_t ams_slave3_t20;
    uint8_t ams_slave3_t21;
    uint8_t ams_slave3_t22;
    uint8_t ams_slave3_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave3_t16 = (uint8_t)src_p->ams_slave3_t16;
    dst_p[0] |= pack_left_shift_u8(ams_slave3_t16, 0u, 0xffu);
    ams_slave3_t17 = (uint8_t)src_p->ams_slave3_t17;
    dst_p[1] |= pack_left_shift_u8(ams_slave3_t17, 0u, 0xffu);
    ams_slave3_t18 = (uint8_t)src_p->ams_slave3_t18;
    dst_p[2] |= pack_left_shift_u8(ams_slave3_t18, 0u, 0xffu);
    ams_slave3_t19 = (uint8_t)src_p->ams_slave3_t19;
    dst_p[3] |= pack_left_shift_u8(ams_slave3_t19, 0u, 0xffu);
    ams_slave3_t20 = (uint8_t)src_p->ams_slave3_t20;
    dst_p[4] |= pack_left_shift_u8(ams_slave3_t20, 0u, 0xffu);
    ams_slave3_t21 = (uint8_t)src_p->ams_slave3_t21;
    dst_p[5] |= pack_left_shift_u8(ams_slave3_t21, 0u, 0xffu);
    ams_slave3_t22 = (uint8_t)src_p->ams_slave3_t22;
    dst_p[6] |= pack_left_shift_u8(ams_slave3_t22, 0u, 0xffu);
    ams_slave3_t23 = (uint8_t)src_p->ams_slave3_t23;
    dst_p[7] |= pack_left_shift_u8(ams_slave3_t23, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave3_log7_unpack(
    struct can1__main_ft24_ams_slave3_log7_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave3_t16;
    uint8_t ams_slave3_t17;
    uint8_t ams_slave3_t18;
    uint8_t ams_slave3_t19;
    uint8_t ams_slave3_t20;
    uint8_t ams_slave3_t21;
    uint8_t ams_slave3_t22;
    uint8_t ams_slave3_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave3_t16 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave3_t16 = (int8_t)ams_slave3_t16;
    ams_slave3_t17 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave3_t17 = (int8_t)ams_slave3_t17;
    ams_slave3_t18 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave3_t18 = (int8_t)ams_slave3_t18;
    ams_slave3_t19 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave3_t19 = (int8_t)ams_slave3_t19;
    ams_slave3_t20 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave3_t20 = (int8_t)ams_slave3_t20;
    ams_slave3_t21 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave3_t21 = (int8_t)ams_slave3_t21;
    ams_slave3_t22 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave3_t22 = (int8_t)ams_slave3_t22;
    ams_slave3_t23 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave3_t23 = (int8_t)ams_slave3_t23;

    return (0);
}

int can1__main_ft24_ams_slave3_log7_init(struct can1__main_ft24_ams_slave3_log7_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave3_log7_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave3_log7_ams_slave3_t16_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log7_ams_slave3_t16_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log7_ams_slave3_t16_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave3_log7_ams_slave3_t17_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log7_ams_slave3_t17_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log7_ams_slave3_t17_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave3_log7_ams_slave3_t18_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log7_ams_slave3_t18_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log7_ams_slave3_t18_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave3_log7_ams_slave3_t19_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log7_ams_slave3_t19_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log7_ams_slave3_t19_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave3_log7_ams_slave3_t20_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log7_ams_slave3_t20_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log7_ams_slave3_t20_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave3_log7_ams_slave3_t21_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log7_ams_slave3_t21_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log7_ams_slave3_t21_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave3_log7_ams_slave3_t22_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log7_ams_slave3_t22_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log7_ams_slave3_t22_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave3_log7_ams_slave3_t23_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log7_ams_slave3_t23_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log7_ams_slave3_t23_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave3_log8_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave3_log8_t *src_p,
    size_t size)
{
    uint8_t ams_slave3_t24;
    uint8_t ams_slave3_t25;
    uint8_t ams_slave3_t26;
    uint8_t ams_slave3_t27;
    uint8_t ams_slave3_t28;
    uint8_t ams_slave3_t29;
    uint8_t ams_slave3_t30;
    uint8_t ams_slave3_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave3_t24 = (uint8_t)src_p->ams_slave3_t24;
    dst_p[0] |= pack_left_shift_u8(ams_slave3_t24, 0u, 0xffu);
    ams_slave3_t25 = (uint8_t)src_p->ams_slave3_t25;
    dst_p[1] |= pack_left_shift_u8(ams_slave3_t25, 0u, 0xffu);
    ams_slave3_t26 = (uint8_t)src_p->ams_slave3_t26;
    dst_p[2] |= pack_left_shift_u8(ams_slave3_t26, 0u, 0xffu);
    ams_slave3_t27 = (uint8_t)src_p->ams_slave3_t27;
    dst_p[3] |= pack_left_shift_u8(ams_slave3_t27, 0u, 0xffu);
    ams_slave3_t28 = (uint8_t)src_p->ams_slave3_t28;
    dst_p[4] |= pack_left_shift_u8(ams_slave3_t28, 0u, 0xffu);
    ams_slave3_t29 = (uint8_t)src_p->ams_slave3_t29;
    dst_p[5] |= pack_left_shift_u8(ams_slave3_t29, 0u, 0xffu);
    ams_slave3_t30 = (uint8_t)src_p->ams_slave3_t30;
    dst_p[6] |= pack_left_shift_u8(ams_slave3_t30, 0u, 0xffu);
    ams_slave3_t31 = (uint8_t)src_p->ams_slave3_t31;
    dst_p[7] |= pack_left_shift_u8(ams_slave3_t31, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave3_log8_unpack(
    struct can1__main_ft24_ams_slave3_log8_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave3_t24;
    uint8_t ams_slave3_t25;
    uint8_t ams_slave3_t26;
    uint8_t ams_slave3_t27;
    uint8_t ams_slave3_t28;
    uint8_t ams_slave3_t29;
    uint8_t ams_slave3_t30;
    uint8_t ams_slave3_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave3_t24 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave3_t24 = (int8_t)ams_slave3_t24;
    ams_slave3_t25 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave3_t25 = (int8_t)ams_slave3_t25;
    ams_slave3_t26 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave3_t26 = (int8_t)ams_slave3_t26;
    ams_slave3_t27 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave3_t27 = (int8_t)ams_slave3_t27;
    ams_slave3_t28 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave3_t28 = (int8_t)ams_slave3_t28;
    ams_slave3_t29 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave3_t29 = (int8_t)ams_slave3_t29;
    ams_slave3_t30 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave3_t30 = (int8_t)ams_slave3_t30;
    ams_slave3_t31 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave3_t31 = (int8_t)ams_slave3_t31;

    return (0);
}

int can1__main_ft24_ams_slave3_log8_init(struct can1__main_ft24_ams_slave3_log8_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave3_log8_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave3_log8_ams_slave3_t24_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log8_ams_slave3_t24_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log8_ams_slave3_t24_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave3_log8_ams_slave3_t25_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log8_ams_slave3_t25_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log8_ams_slave3_t25_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave3_log8_ams_slave3_t26_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log8_ams_slave3_t26_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log8_ams_slave3_t26_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave3_log8_ams_slave3_t27_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log8_ams_slave3_t27_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log8_ams_slave3_t27_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave3_log8_ams_slave3_t28_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log8_ams_slave3_t28_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log8_ams_slave3_t28_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave3_log8_ams_slave3_t29_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log8_ams_slave3_t29_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log8_ams_slave3_t29_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave3_log8_ams_slave3_t30_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log8_ams_slave3_t30_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log8_ams_slave3_t30_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave3_log8_ams_slave3_t31_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave3_log8_ams_slave3_t31_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_log8_ams_slave3_t31_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave4_log0_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave4_log0_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave4_v0, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave4_v0, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave4_v1, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave4_v1, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave4_v2, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave4_v2, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave4_v3, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave4_v3, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave4_log0_unpack(
    struct can1__main_ft24_ams_slave4_log0_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave4_v0 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave4_v0 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave4_v1 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave4_v1 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave4_v2 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave4_v2 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave4_v3 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave4_v3 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave4_log0_init(struct can1__main_ft24_ams_slave4_log0_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave4_log0_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave4_log0_ams_slave4_v0_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave4_log0_ams_slave4_v0_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave4_log0_ams_slave4_v0_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave4_log0_ams_slave4_v1_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave4_log0_ams_slave4_v1_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave4_log0_ams_slave4_v1_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave4_log0_ams_slave4_v2_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave4_log0_ams_slave4_v2_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave4_log0_ams_slave4_v2_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave4_log0_ams_slave4_v3_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave4_log0_ams_slave4_v3_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave4_log0_ams_slave4_v3_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave4_log1_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave4_log1_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave4_v4, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave4_v4, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave4_v5, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave4_v5, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave4_v6, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave4_v6, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave4_v7, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave4_v7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave4_log1_unpack(
    struct can1__main_ft24_ams_slave4_log1_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave4_v4 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave4_v4 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave4_v5 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave4_v5 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave4_v6 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave4_v6 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave4_v7 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave4_v7 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave4_log1_init(struct can1__main_ft24_ams_slave4_log1_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave4_log1_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave4_log1_ams_slave4_v4_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave4_log1_ams_slave4_v4_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave4_log1_ams_slave4_v4_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave4_log1_ams_slave4_v5_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave4_log1_ams_slave4_v5_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave4_log1_ams_slave4_v5_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave4_log1_ams_slave4_v6_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave4_log1_ams_slave4_v6_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave4_log1_ams_slave4_v6_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave4_log1_ams_slave4_v7_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave4_log1_ams_slave4_v7_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave4_log1_ams_slave4_v7_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave4_log2_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave4_log2_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave4_v8, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave4_v8, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave4_v9, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave4_v9, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave4_v10, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave4_v10, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave4_v11, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave4_v11, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave4_log2_unpack(
    struct can1__main_ft24_ams_slave4_log2_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave4_v8 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave4_v8 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave4_v9 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave4_v9 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave4_v10 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave4_v10 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave4_v11 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave4_v11 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave4_log2_init(struct can1__main_ft24_ams_slave4_log2_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave4_log2_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave4_log2_ams_slave4_v8_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave4_log2_ams_slave4_v8_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave4_log2_ams_slave4_v8_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave4_log2_ams_slave4_v9_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave4_log2_ams_slave4_v9_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave4_log2_ams_slave4_v9_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave4_log2_ams_slave4_v10_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave4_log2_ams_slave4_v10_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave4_log2_ams_slave4_v10_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave4_log2_ams_slave4_v11_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave4_log2_ams_slave4_v11_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave4_log2_ams_slave4_v11_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave4_log3_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave4_log3_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave4_v12, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave4_v12, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave4_v13, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave4_v13, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave4_v14, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave4_v14, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave4_v15, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave4_v15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave4_log3_unpack(
    struct can1__main_ft24_ams_slave4_log3_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave4_v12 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave4_v12 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave4_v13 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave4_v13 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave4_v14 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave4_v14 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave4_v15 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave4_v15 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave4_log3_init(struct can1__main_ft24_ams_slave4_log3_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave4_log3_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave4_log3_ams_slave4_v12_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave4_log3_ams_slave4_v12_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave4_log3_ams_slave4_v12_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave4_log3_ams_slave4_v13_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave4_log3_ams_slave4_v13_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave4_log3_ams_slave4_v13_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave4_log3_ams_slave4_v14_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave4_log3_ams_slave4_v14_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave4_log3_ams_slave4_v14_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave4_log3_ams_slave4_v15_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave4_log3_ams_slave4_v15_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave4_log3_ams_slave4_v15_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave4_log4_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave4_log4_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave4_v16, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave4_v16, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u32(src_p->ams_slave4_failed_sensors, 24u, 0xffu);
    dst_p[3] |= pack_right_shift_u32(src_p->ams_slave4_failed_sensors, 16u, 0xffu);
    dst_p[4] |= pack_right_shift_u32(src_p->ams_slave4_failed_sensors, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u32(src_p->ams_slave4_failed_sensors, 0u, 0xffu);

    return (6);
}

int can1__main_ft24_ams_slave4_log4_unpack(
    struct can1__main_ft24_ams_slave4_log4_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    dst_p->ams_slave4_v16 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave4_v16 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave4_failed_sensors = unpack_left_shift_u32(src_p[2], 24u, 0xffu);
    dst_p->ams_slave4_failed_sensors |= unpack_left_shift_u32(src_p[3], 16u, 0xffu);
    dst_p->ams_slave4_failed_sensors |= unpack_left_shift_u32(src_p[4], 8u, 0xffu);
    dst_p->ams_slave4_failed_sensors |= unpack_right_shift_u32(src_p[5], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave4_log4_init(struct can1__main_ft24_ams_slave4_log4_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave4_log4_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave4_log4_ams_slave4_v16_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave4_log4_ams_slave4_v16_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave4_log4_ams_slave4_v16_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint32_t can1__main_ft24_ams_slave4_log4_ams_slave4_failed_sensors_encode(double value)
{
    return (uint32_t)(value);
}

double can1__main_ft24_ams_slave4_log4_ams_slave4_failed_sensors_decode(uint32_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log4_ams_slave4_failed_sensors_is_in_range(uint32_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave4_log5_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave4_log5_t *src_p,
    size_t size)
{
    uint8_t ams_slave4_t0;
    uint8_t ams_slave4_t1;
    uint8_t ams_slave4_t2;
    uint8_t ams_slave4_t3;
    uint8_t ams_slave4_t4;
    uint8_t ams_slave4_t5;
    uint8_t ams_slave4_t6;
    uint8_t ams_slave4_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave4_t0 = (uint8_t)src_p->ams_slave4_t0;
    dst_p[0] |= pack_left_shift_u8(ams_slave4_t0, 0u, 0xffu);
    ams_slave4_t1 = (uint8_t)src_p->ams_slave4_t1;
    dst_p[1] |= pack_left_shift_u8(ams_slave4_t1, 0u, 0xffu);
    ams_slave4_t2 = (uint8_t)src_p->ams_slave4_t2;
    dst_p[2] |= pack_left_shift_u8(ams_slave4_t2, 0u, 0xffu);
    ams_slave4_t3 = (uint8_t)src_p->ams_slave4_t3;
    dst_p[3] |= pack_left_shift_u8(ams_slave4_t3, 0u, 0xffu);
    ams_slave4_t4 = (uint8_t)src_p->ams_slave4_t4;
    dst_p[4] |= pack_left_shift_u8(ams_slave4_t4, 0u, 0xffu);
    ams_slave4_t5 = (uint8_t)src_p->ams_slave4_t5;
    dst_p[5] |= pack_left_shift_u8(ams_slave4_t5, 0u, 0xffu);
    ams_slave4_t6 = (uint8_t)src_p->ams_slave4_t6;
    dst_p[6] |= pack_left_shift_u8(ams_slave4_t6, 0u, 0xffu);
    ams_slave4_t7 = (uint8_t)src_p->ams_slave4_t7;
    dst_p[7] |= pack_left_shift_u8(ams_slave4_t7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave4_log5_unpack(
    struct can1__main_ft24_ams_slave4_log5_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave4_t0;
    uint8_t ams_slave4_t1;
    uint8_t ams_slave4_t2;
    uint8_t ams_slave4_t3;
    uint8_t ams_slave4_t4;
    uint8_t ams_slave4_t5;
    uint8_t ams_slave4_t6;
    uint8_t ams_slave4_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave4_t0 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave4_t0 = (int8_t)ams_slave4_t0;
    ams_slave4_t1 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave4_t1 = (int8_t)ams_slave4_t1;
    ams_slave4_t2 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave4_t2 = (int8_t)ams_slave4_t2;
    ams_slave4_t3 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave4_t3 = (int8_t)ams_slave4_t3;
    ams_slave4_t4 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave4_t4 = (int8_t)ams_slave4_t4;
    ams_slave4_t5 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave4_t5 = (int8_t)ams_slave4_t5;
    ams_slave4_t6 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave4_t6 = (int8_t)ams_slave4_t6;
    ams_slave4_t7 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave4_t7 = (int8_t)ams_slave4_t7;

    return (0);
}

int can1__main_ft24_ams_slave4_log5_init(struct can1__main_ft24_ams_slave4_log5_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave4_log5_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave4_log5_ams_slave4_t0_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log5_ams_slave4_t0_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log5_ams_slave4_t0_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave4_log5_ams_slave4_t1_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log5_ams_slave4_t1_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log5_ams_slave4_t1_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave4_log5_ams_slave4_t2_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log5_ams_slave4_t2_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log5_ams_slave4_t2_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave4_log5_ams_slave4_t3_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log5_ams_slave4_t3_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log5_ams_slave4_t3_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave4_log5_ams_slave4_t4_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log5_ams_slave4_t4_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log5_ams_slave4_t4_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave4_log5_ams_slave4_t5_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log5_ams_slave4_t5_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log5_ams_slave4_t5_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave4_log5_ams_slave4_t6_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log5_ams_slave4_t6_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log5_ams_slave4_t6_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave4_log5_ams_slave4_t7_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log5_ams_slave4_t7_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log5_ams_slave4_t7_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave4_log6_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave4_log6_t *src_p,
    size_t size)
{
    uint8_t ams_slave4_t10;
    uint8_t ams_slave4_t11;
    uint8_t ams_slave4_t12;
    uint8_t ams_slave4_t13;
    uint8_t ams_slave4_t14;
    uint8_t ams_slave4_t15;
    uint8_t ams_slave4_t8;
    uint8_t ams_slave4_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave4_t8 = (uint8_t)src_p->ams_slave4_t8;
    dst_p[0] |= pack_left_shift_u8(ams_slave4_t8, 0u, 0xffu);
    ams_slave4_t9 = (uint8_t)src_p->ams_slave4_t9;
    dst_p[1] |= pack_left_shift_u8(ams_slave4_t9, 0u, 0xffu);
    ams_slave4_t10 = (uint8_t)src_p->ams_slave4_t10;
    dst_p[2] |= pack_left_shift_u8(ams_slave4_t10, 0u, 0xffu);
    ams_slave4_t11 = (uint8_t)src_p->ams_slave4_t11;
    dst_p[3] |= pack_left_shift_u8(ams_slave4_t11, 0u, 0xffu);
    ams_slave4_t12 = (uint8_t)src_p->ams_slave4_t12;
    dst_p[4] |= pack_left_shift_u8(ams_slave4_t12, 0u, 0xffu);
    ams_slave4_t13 = (uint8_t)src_p->ams_slave4_t13;
    dst_p[5] |= pack_left_shift_u8(ams_slave4_t13, 0u, 0xffu);
    ams_slave4_t14 = (uint8_t)src_p->ams_slave4_t14;
    dst_p[6] |= pack_left_shift_u8(ams_slave4_t14, 0u, 0xffu);
    ams_slave4_t15 = (uint8_t)src_p->ams_slave4_t15;
    dst_p[7] |= pack_left_shift_u8(ams_slave4_t15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave4_log6_unpack(
    struct can1__main_ft24_ams_slave4_log6_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave4_t10;
    uint8_t ams_slave4_t11;
    uint8_t ams_slave4_t12;
    uint8_t ams_slave4_t13;
    uint8_t ams_slave4_t14;
    uint8_t ams_slave4_t15;
    uint8_t ams_slave4_t8;
    uint8_t ams_slave4_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave4_t8 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave4_t8 = (int8_t)ams_slave4_t8;
    ams_slave4_t9 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave4_t9 = (int8_t)ams_slave4_t9;
    ams_slave4_t10 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave4_t10 = (int8_t)ams_slave4_t10;
    ams_slave4_t11 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave4_t11 = (int8_t)ams_slave4_t11;
    ams_slave4_t12 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave4_t12 = (int8_t)ams_slave4_t12;
    ams_slave4_t13 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave4_t13 = (int8_t)ams_slave4_t13;
    ams_slave4_t14 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave4_t14 = (int8_t)ams_slave4_t14;
    ams_slave4_t15 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave4_t15 = (int8_t)ams_slave4_t15;

    return (0);
}

int can1__main_ft24_ams_slave4_log6_init(struct can1__main_ft24_ams_slave4_log6_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave4_log6_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave4_log6_ams_slave4_t8_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log6_ams_slave4_t8_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log6_ams_slave4_t8_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave4_log6_ams_slave4_t9_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log6_ams_slave4_t9_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log6_ams_slave4_t9_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave4_log6_ams_slave4_t10_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log6_ams_slave4_t10_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log6_ams_slave4_t10_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave4_log6_ams_slave4_t11_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log6_ams_slave4_t11_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log6_ams_slave4_t11_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave4_log6_ams_slave4_t12_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log6_ams_slave4_t12_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log6_ams_slave4_t12_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave4_log6_ams_slave4_t13_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log6_ams_slave4_t13_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log6_ams_slave4_t13_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave4_log6_ams_slave4_t14_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log6_ams_slave4_t14_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log6_ams_slave4_t14_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave4_log6_ams_slave4_t15_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log6_ams_slave4_t15_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log6_ams_slave4_t15_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave4_log7_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave4_log7_t *src_p,
    size_t size)
{
    uint8_t ams_slave4_t16;
    uint8_t ams_slave4_t17;
    uint8_t ams_slave4_t18;
    uint8_t ams_slave4_t19;
    uint8_t ams_slave4_t20;
    uint8_t ams_slave4_t21;
    uint8_t ams_slave4_t22;
    uint8_t ams_slave4_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave4_t16 = (uint8_t)src_p->ams_slave4_t16;
    dst_p[0] |= pack_left_shift_u8(ams_slave4_t16, 0u, 0xffu);
    ams_slave4_t17 = (uint8_t)src_p->ams_slave4_t17;
    dst_p[1] |= pack_left_shift_u8(ams_slave4_t17, 0u, 0xffu);
    ams_slave4_t18 = (uint8_t)src_p->ams_slave4_t18;
    dst_p[2] |= pack_left_shift_u8(ams_slave4_t18, 0u, 0xffu);
    ams_slave4_t19 = (uint8_t)src_p->ams_slave4_t19;
    dst_p[3] |= pack_left_shift_u8(ams_slave4_t19, 0u, 0xffu);
    ams_slave4_t20 = (uint8_t)src_p->ams_slave4_t20;
    dst_p[4] |= pack_left_shift_u8(ams_slave4_t20, 0u, 0xffu);
    ams_slave4_t21 = (uint8_t)src_p->ams_slave4_t21;
    dst_p[5] |= pack_left_shift_u8(ams_slave4_t21, 0u, 0xffu);
    ams_slave4_t22 = (uint8_t)src_p->ams_slave4_t22;
    dst_p[6] |= pack_left_shift_u8(ams_slave4_t22, 0u, 0xffu);
    ams_slave4_t23 = (uint8_t)src_p->ams_slave4_t23;
    dst_p[7] |= pack_left_shift_u8(ams_slave4_t23, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave4_log7_unpack(
    struct can1__main_ft24_ams_slave4_log7_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave4_t16;
    uint8_t ams_slave4_t17;
    uint8_t ams_slave4_t18;
    uint8_t ams_slave4_t19;
    uint8_t ams_slave4_t20;
    uint8_t ams_slave4_t21;
    uint8_t ams_slave4_t22;
    uint8_t ams_slave4_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave4_t16 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave4_t16 = (int8_t)ams_slave4_t16;
    ams_slave4_t17 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave4_t17 = (int8_t)ams_slave4_t17;
    ams_slave4_t18 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave4_t18 = (int8_t)ams_slave4_t18;
    ams_slave4_t19 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave4_t19 = (int8_t)ams_slave4_t19;
    ams_slave4_t20 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave4_t20 = (int8_t)ams_slave4_t20;
    ams_slave4_t21 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave4_t21 = (int8_t)ams_slave4_t21;
    ams_slave4_t22 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave4_t22 = (int8_t)ams_slave4_t22;
    ams_slave4_t23 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave4_t23 = (int8_t)ams_slave4_t23;

    return (0);
}

int can1__main_ft24_ams_slave4_log7_init(struct can1__main_ft24_ams_slave4_log7_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave4_log7_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave4_log7_ams_slave4_t16_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log7_ams_slave4_t16_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log7_ams_slave4_t16_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave4_log7_ams_slave4_t17_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log7_ams_slave4_t17_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log7_ams_slave4_t17_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave4_log7_ams_slave4_t18_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log7_ams_slave4_t18_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log7_ams_slave4_t18_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave4_log7_ams_slave4_t19_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log7_ams_slave4_t19_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log7_ams_slave4_t19_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave4_log7_ams_slave4_t20_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log7_ams_slave4_t20_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log7_ams_slave4_t20_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave4_log7_ams_slave4_t21_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log7_ams_slave4_t21_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log7_ams_slave4_t21_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave4_log7_ams_slave4_t22_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log7_ams_slave4_t22_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log7_ams_slave4_t22_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave4_log7_ams_slave4_t23_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log7_ams_slave4_t23_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log7_ams_slave4_t23_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave4_log8_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave4_log8_t *src_p,
    size_t size)
{
    uint8_t ams_slave4_t24;
    uint8_t ams_slave4_t25;
    uint8_t ams_slave4_t26;
    uint8_t ams_slave4_t27;
    uint8_t ams_slave4_t28;
    uint8_t ams_slave4_t29;
    uint8_t ams_slave4_t30;
    uint8_t ams_slave4_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave4_t24 = (uint8_t)src_p->ams_slave4_t24;
    dst_p[0] |= pack_left_shift_u8(ams_slave4_t24, 0u, 0xffu);
    ams_slave4_t25 = (uint8_t)src_p->ams_slave4_t25;
    dst_p[1] |= pack_left_shift_u8(ams_slave4_t25, 0u, 0xffu);
    ams_slave4_t26 = (uint8_t)src_p->ams_slave4_t26;
    dst_p[2] |= pack_left_shift_u8(ams_slave4_t26, 0u, 0xffu);
    ams_slave4_t27 = (uint8_t)src_p->ams_slave4_t27;
    dst_p[3] |= pack_left_shift_u8(ams_slave4_t27, 0u, 0xffu);
    ams_slave4_t28 = (uint8_t)src_p->ams_slave4_t28;
    dst_p[4] |= pack_left_shift_u8(ams_slave4_t28, 0u, 0xffu);
    ams_slave4_t29 = (uint8_t)src_p->ams_slave4_t29;
    dst_p[5] |= pack_left_shift_u8(ams_slave4_t29, 0u, 0xffu);
    ams_slave4_t30 = (uint8_t)src_p->ams_slave4_t30;
    dst_p[6] |= pack_left_shift_u8(ams_slave4_t30, 0u, 0xffu);
    ams_slave4_t31 = (uint8_t)src_p->ams_slave4_t31;
    dst_p[7] |= pack_left_shift_u8(ams_slave4_t31, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave4_log8_unpack(
    struct can1__main_ft24_ams_slave4_log8_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave4_t24;
    uint8_t ams_slave4_t25;
    uint8_t ams_slave4_t26;
    uint8_t ams_slave4_t27;
    uint8_t ams_slave4_t28;
    uint8_t ams_slave4_t29;
    uint8_t ams_slave4_t30;
    uint8_t ams_slave4_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave4_t24 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave4_t24 = (int8_t)ams_slave4_t24;
    ams_slave4_t25 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave4_t25 = (int8_t)ams_slave4_t25;
    ams_slave4_t26 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave4_t26 = (int8_t)ams_slave4_t26;
    ams_slave4_t27 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave4_t27 = (int8_t)ams_slave4_t27;
    ams_slave4_t28 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave4_t28 = (int8_t)ams_slave4_t28;
    ams_slave4_t29 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave4_t29 = (int8_t)ams_slave4_t29;
    ams_slave4_t30 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave4_t30 = (int8_t)ams_slave4_t30;
    ams_slave4_t31 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave4_t31 = (int8_t)ams_slave4_t31;

    return (0);
}

int can1__main_ft24_ams_slave4_log8_init(struct can1__main_ft24_ams_slave4_log8_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave4_log8_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave4_log8_ams_slave4_t24_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log8_ams_slave4_t24_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log8_ams_slave4_t24_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave4_log8_ams_slave4_t25_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log8_ams_slave4_t25_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log8_ams_slave4_t25_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave4_log8_ams_slave4_t26_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log8_ams_slave4_t26_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log8_ams_slave4_t26_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave4_log8_ams_slave4_t27_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log8_ams_slave4_t27_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log8_ams_slave4_t27_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave4_log8_ams_slave4_t28_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log8_ams_slave4_t28_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log8_ams_slave4_t28_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave4_log8_ams_slave4_t29_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log8_ams_slave4_t29_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log8_ams_slave4_t29_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave4_log8_ams_slave4_t30_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log8_ams_slave4_t30_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log8_ams_slave4_t30_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave4_log8_ams_slave4_t31_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave4_log8_ams_slave4_t31_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_log8_ams_slave4_t31_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave5_log0_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave5_log0_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave5_v0, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave5_v0, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave5_v1, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave5_v1, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave5_v2, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave5_v2, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave5_v3, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave5_v3, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave5_log0_unpack(
    struct can1__main_ft24_ams_slave5_log0_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave5_v0 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave5_v0 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave5_v1 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave5_v1 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave5_v2 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave5_v2 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave5_v3 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave5_v3 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave5_log0_init(struct can1__main_ft24_ams_slave5_log0_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave5_log0_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave5_log0_ams_slave5_v0_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave5_log0_ams_slave5_v0_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave5_log0_ams_slave5_v0_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave5_log0_ams_slave5_v1_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave5_log0_ams_slave5_v1_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave5_log0_ams_slave5_v1_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave5_log0_ams_slave5_v2_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave5_log0_ams_slave5_v2_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave5_log0_ams_slave5_v2_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave5_log0_ams_slave5_v3_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave5_log0_ams_slave5_v3_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave5_log0_ams_slave5_v3_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave5_log1_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave5_log1_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave5_v4, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave5_v4, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave5_v5, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave5_v5, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave5_v6, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave5_v6, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave5_v7, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave5_v7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave5_log1_unpack(
    struct can1__main_ft24_ams_slave5_log1_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave5_v4 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave5_v4 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave5_v5 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave5_v5 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave5_v6 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave5_v6 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave5_v7 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave5_v7 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave5_log1_init(struct can1__main_ft24_ams_slave5_log1_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave5_log1_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave5_log1_ams_slave5_v4_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave5_log1_ams_slave5_v4_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave5_log1_ams_slave5_v4_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave5_log1_ams_slave5_v5_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave5_log1_ams_slave5_v5_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave5_log1_ams_slave5_v5_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave5_log1_ams_slave5_v6_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave5_log1_ams_slave5_v6_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave5_log1_ams_slave5_v6_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave5_log1_ams_slave5_v7_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave5_log1_ams_slave5_v7_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave5_log1_ams_slave5_v7_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave5_log2_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave5_log2_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave5_v8, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave5_v8, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave5_v9, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave5_v9, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave5_v10, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave5_v10, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave5_v11, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave5_v11, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave5_log2_unpack(
    struct can1__main_ft24_ams_slave5_log2_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave5_v8 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave5_v8 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave5_v9 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave5_v9 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave5_v10 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave5_v10 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave5_v11 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave5_v11 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave5_log2_init(struct can1__main_ft24_ams_slave5_log2_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave5_log2_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave5_log2_ams_slave5_v8_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave5_log2_ams_slave5_v8_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave5_log2_ams_slave5_v8_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave5_log2_ams_slave5_v9_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave5_log2_ams_slave5_v9_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave5_log2_ams_slave5_v9_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave5_log2_ams_slave5_v10_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave5_log2_ams_slave5_v10_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave5_log2_ams_slave5_v10_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave5_log2_ams_slave5_v11_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave5_log2_ams_slave5_v11_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave5_log2_ams_slave5_v11_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave5_log3_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave5_log3_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave5_v12, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave5_v12, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave5_v13, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave5_v13, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave5_v14, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave5_v14, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave5_v15, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave5_v15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave5_log3_unpack(
    struct can1__main_ft24_ams_slave5_log3_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave5_v12 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave5_v12 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave5_v13 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave5_v13 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave5_v14 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave5_v14 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave5_v15 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave5_v15 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave5_log3_init(struct can1__main_ft24_ams_slave5_log3_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave5_log3_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave5_log3_ams_slave5_v12_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave5_log3_ams_slave5_v12_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave5_log3_ams_slave5_v12_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave5_log3_ams_slave5_v13_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave5_log3_ams_slave5_v13_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave5_log3_ams_slave5_v13_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave5_log3_ams_slave5_v14_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave5_log3_ams_slave5_v14_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave5_log3_ams_slave5_v14_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave5_log3_ams_slave5_v15_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave5_log3_ams_slave5_v15_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave5_log3_ams_slave5_v15_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave5_log4_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave5_log4_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave5_v16, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave5_v16, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u32(src_p->ams_slave5_failed_sensors, 24u, 0xffu);
    dst_p[3] |= pack_right_shift_u32(src_p->ams_slave5_failed_sensors, 16u, 0xffu);
    dst_p[4] |= pack_right_shift_u32(src_p->ams_slave5_failed_sensors, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u32(src_p->ams_slave5_failed_sensors, 0u, 0xffu);

    return (6);
}

int can1__main_ft24_ams_slave5_log4_unpack(
    struct can1__main_ft24_ams_slave5_log4_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    dst_p->ams_slave5_v16 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave5_v16 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave5_failed_sensors = unpack_left_shift_u32(src_p[2], 24u, 0xffu);
    dst_p->ams_slave5_failed_sensors |= unpack_left_shift_u32(src_p[3], 16u, 0xffu);
    dst_p->ams_slave5_failed_sensors |= unpack_left_shift_u32(src_p[4], 8u, 0xffu);
    dst_p->ams_slave5_failed_sensors |= unpack_right_shift_u32(src_p[5], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave5_log4_init(struct can1__main_ft24_ams_slave5_log4_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave5_log4_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave5_log4_ams_slave5_v16_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave5_log4_ams_slave5_v16_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave5_log4_ams_slave5_v16_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint32_t can1__main_ft24_ams_slave5_log4_ams_slave5_failed_sensors_encode(double value)
{
    return (uint32_t)(value);
}

double can1__main_ft24_ams_slave5_log4_ams_slave5_failed_sensors_decode(uint32_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log4_ams_slave5_failed_sensors_is_in_range(uint32_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave5_log5_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave5_log5_t *src_p,
    size_t size)
{
    uint8_t ams_slave5_t0;
    uint8_t ams_slave5_t1;
    uint8_t ams_slave5_t2;
    uint8_t ams_slave5_t3;
    uint8_t ams_slave5_t4;
    uint8_t ams_slave5_t5;
    uint8_t ams_slave5_t6;
    uint8_t ams_slave5_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave5_t0 = (uint8_t)src_p->ams_slave5_t0;
    dst_p[0] |= pack_left_shift_u8(ams_slave5_t0, 0u, 0xffu);
    ams_slave5_t1 = (uint8_t)src_p->ams_slave5_t1;
    dst_p[1] |= pack_left_shift_u8(ams_slave5_t1, 0u, 0xffu);
    ams_slave5_t2 = (uint8_t)src_p->ams_slave5_t2;
    dst_p[2] |= pack_left_shift_u8(ams_slave5_t2, 0u, 0xffu);
    ams_slave5_t3 = (uint8_t)src_p->ams_slave5_t3;
    dst_p[3] |= pack_left_shift_u8(ams_slave5_t3, 0u, 0xffu);
    ams_slave5_t4 = (uint8_t)src_p->ams_slave5_t4;
    dst_p[4] |= pack_left_shift_u8(ams_slave5_t4, 0u, 0xffu);
    ams_slave5_t5 = (uint8_t)src_p->ams_slave5_t5;
    dst_p[5] |= pack_left_shift_u8(ams_slave5_t5, 0u, 0xffu);
    ams_slave5_t6 = (uint8_t)src_p->ams_slave5_t6;
    dst_p[6] |= pack_left_shift_u8(ams_slave5_t6, 0u, 0xffu);
    ams_slave5_t7 = (uint8_t)src_p->ams_slave5_t7;
    dst_p[7] |= pack_left_shift_u8(ams_slave5_t7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave5_log5_unpack(
    struct can1__main_ft24_ams_slave5_log5_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave5_t0;
    uint8_t ams_slave5_t1;
    uint8_t ams_slave5_t2;
    uint8_t ams_slave5_t3;
    uint8_t ams_slave5_t4;
    uint8_t ams_slave5_t5;
    uint8_t ams_slave5_t6;
    uint8_t ams_slave5_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave5_t0 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave5_t0 = (int8_t)ams_slave5_t0;
    ams_slave5_t1 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave5_t1 = (int8_t)ams_slave5_t1;
    ams_slave5_t2 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave5_t2 = (int8_t)ams_slave5_t2;
    ams_slave5_t3 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave5_t3 = (int8_t)ams_slave5_t3;
    ams_slave5_t4 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave5_t4 = (int8_t)ams_slave5_t4;
    ams_slave5_t5 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave5_t5 = (int8_t)ams_slave5_t5;
    ams_slave5_t6 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave5_t6 = (int8_t)ams_slave5_t6;
    ams_slave5_t7 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave5_t7 = (int8_t)ams_slave5_t7;

    return (0);
}

int can1__main_ft24_ams_slave5_log5_init(struct can1__main_ft24_ams_slave5_log5_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave5_log5_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave5_log5_ams_slave5_t0_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log5_ams_slave5_t0_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log5_ams_slave5_t0_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave5_log5_ams_slave5_t1_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log5_ams_slave5_t1_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log5_ams_slave5_t1_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave5_log5_ams_slave5_t2_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log5_ams_slave5_t2_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log5_ams_slave5_t2_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave5_log5_ams_slave5_t3_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log5_ams_slave5_t3_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log5_ams_slave5_t3_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave5_log5_ams_slave5_t4_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log5_ams_slave5_t4_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log5_ams_slave5_t4_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave5_log5_ams_slave5_t5_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log5_ams_slave5_t5_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log5_ams_slave5_t5_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave5_log5_ams_slave5_t6_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log5_ams_slave5_t6_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log5_ams_slave5_t6_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave5_log5_ams_slave5_t7_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log5_ams_slave5_t7_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log5_ams_slave5_t7_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave5_log6_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave5_log6_t *src_p,
    size_t size)
{
    uint8_t ams_slave5_t10;
    uint8_t ams_slave5_t11;
    uint8_t ams_slave5_t12;
    uint8_t ams_slave5_t13;
    uint8_t ams_slave5_t14;
    uint8_t ams_slave5_t15;
    uint8_t ams_slave5_t8;
    uint8_t ams_slave5_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave5_t8 = (uint8_t)src_p->ams_slave5_t8;
    dst_p[0] |= pack_left_shift_u8(ams_slave5_t8, 0u, 0xffu);
    ams_slave5_t9 = (uint8_t)src_p->ams_slave5_t9;
    dst_p[1] |= pack_left_shift_u8(ams_slave5_t9, 0u, 0xffu);
    ams_slave5_t10 = (uint8_t)src_p->ams_slave5_t10;
    dst_p[2] |= pack_left_shift_u8(ams_slave5_t10, 0u, 0xffu);
    ams_slave5_t11 = (uint8_t)src_p->ams_slave5_t11;
    dst_p[3] |= pack_left_shift_u8(ams_slave5_t11, 0u, 0xffu);
    ams_slave5_t12 = (uint8_t)src_p->ams_slave5_t12;
    dst_p[4] |= pack_left_shift_u8(ams_slave5_t12, 0u, 0xffu);
    ams_slave5_t13 = (uint8_t)src_p->ams_slave5_t13;
    dst_p[5] |= pack_left_shift_u8(ams_slave5_t13, 0u, 0xffu);
    ams_slave5_t14 = (uint8_t)src_p->ams_slave5_t14;
    dst_p[6] |= pack_left_shift_u8(ams_slave5_t14, 0u, 0xffu);
    ams_slave5_t15 = (uint8_t)src_p->ams_slave5_t15;
    dst_p[7] |= pack_left_shift_u8(ams_slave5_t15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave5_log6_unpack(
    struct can1__main_ft24_ams_slave5_log6_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave5_t10;
    uint8_t ams_slave5_t11;
    uint8_t ams_slave5_t12;
    uint8_t ams_slave5_t13;
    uint8_t ams_slave5_t14;
    uint8_t ams_slave5_t15;
    uint8_t ams_slave5_t8;
    uint8_t ams_slave5_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave5_t8 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave5_t8 = (int8_t)ams_slave5_t8;
    ams_slave5_t9 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave5_t9 = (int8_t)ams_slave5_t9;
    ams_slave5_t10 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave5_t10 = (int8_t)ams_slave5_t10;
    ams_slave5_t11 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave5_t11 = (int8_t)ams_slave5_t11;
    ams_slave5_t12 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave5_t12 = (int8_t)ams_slave5_t12;
    ams_slave5_t13 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave5_t13 = (int8_t)ams_slave5_t13;
    ams_slave5_t14 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave5_t14 = (int8_t)ams_slave5_t14;
    ams_slave5_t15 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave5_t15 = (int8_t)ams_slave5_t15;

    return (0);
}

int can1__main_ft24_ams_slave5_log6_init(struct can1__main_ft24_ams_slave5_log6_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave5_log6_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave5_log6_ams_slave5_t8_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log6_ams_slave5_t8_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log6_ams_slave5_t8_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave5_log6_ams_slave5_t9_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log6_ams_slave5_t9_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log6_ams_slave5_t9_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave5_log6_ams_slave5_t10_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log6_ams_slave5_t10_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log6_ams_slave5_t10_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave5_log6_ams_slave5_t11_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log6_ams_slave5_t11_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log6_ams_slave5_t11_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave5_log6_ams_slave5_t12_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log6_ams_slave5_t12_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log6_ams_slave5_t12_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave5_log6_ams_slave5_t13_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log6_ams_slave5_t13_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log6_ams_slave5_t13_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave5_log6_ams_slave5_t14_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log6_ams_slave5_t14_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log6_ams_slave5_t14_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave5_log6_ams_slave5_t15_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log6_ams_slave5_t15_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log6_ams_slave5_t15_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave5_log7_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave5_log7_t *src_p,
    size_t size)
{
    uint8_t ams_slave5_t16;
    uint8_t ams_slave5_t17;
    uint8_t ams_slave5_t18;
    uint8_t ams_slave5_t19;
    uint8_t ams_slave5_t20;
    uint8_t ams_slave5_t21;
    uint8_t ams_slave5_t22;
    uint8_t ams_slave5_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave5_t16 = (uint8_t)src_p->ams_slave5_t16;
    dst_p[0] |= pack_left_shift_u8(ams_slave5_t16, 0u, 0xffu);
    ams_slave5_t17 = (uint8_t)src_p->ams_slave5_t17;
    dst_p[1] |= pack_left_shift_u8(ams_slave5_t17, 0u, 0xffu);
    ams_slave5_t18 = (uint8_t)src_p->ams_slave5_t18;
    dst_p[2] |= pack_left_shift_u8(ams_slave5_t18, 0u, 0xffu);
    ams_slave5_t19 = (uint8_t)src_p->ams_slave5_t19;
    dst_p[3] |= pack_left_shift_u8(ams_slave5_t19, 0u, 0xffu);
    ams_slave5_t20 = (uint8_t)src_p->ams_slave5_t20;
    dst_p[4] |= pack_left_shift_u8(ams_slave5_t20, 0u, 0xffu);
    ams_slave5_t21 = (uint8_t)src_p->ams_slave5_t21;
    dst_p[5] |= pack_left_shift_u8(ams_slave5_t21, 0u, 0xffu);
    ams_slave5_t22 = (uint8_t)src_p->ams_slave5_t22;
    dst_p[6] |= pack_left_shift_u8(ams_slave5_t22, 0u, 0xffu);
    ams_slave5_t23 = (uint8_t)src_p->ams_slave5_t23;
    dst_p[7] |= pack_left_shift_u8(ams_slave5_t23, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave5_log7_unpack(
    struct can1__main_ft24_ams_slave5_log7_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave5_t16;
    uint8_t ams_slave5_t17;
    uint8_t ams_slave5_t18;
    uint8_t ams_slave5_t19;
    uint8_t ams_slave5_t20;
    uint8_t ams_slave5_t21;
    uint8_t ams_slave5_t22;
    uint8_t ams_slave5_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave5_t16 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave5_t16 = (int8_t)ams_slave5_t16;
    ams_slave5_t17 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave5_t17 = (int8_t)ams_slave5_t17;
    ams_slave5_t18 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave5_t18 = (int8_t)ams_slave5_t18;
    ams_slave5_t19 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave5_t19 = (int8_t)ams_slave5_t19;
    ams_slave5_t20 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave5_t20 = (int8_t)ams_slave5_t20;
    ams_slave5_t21 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave5_t21 = (int8_t)ams_slave5_t21;
    ams_slave5_t22 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave5_t22 = (int8_t)ams_slave5_t22;
    ams_slave5_t23 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave5_t23 = (int8_t)ams_slave5_t23;

    return (0);
}

int can1__main_ft24_ams_slave5_log7_init(struct can1__main_ft24_ams_slave5_log7_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave5_log7_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave5_log7_ams_slave5_t16_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log7_ams_slave5_t16_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log7_ams_slave5_t16_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave5_log7_ams_slave5_t17_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log7_ams_slave5_t17_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log7_ams_slave5_t17_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave5_log7_ams_slave5_t18_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log7_ams_slave5_t18_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log7_ams_slave5_t18_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave5_log7_ams_slave5_t19_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log7_ams_slave5_t19_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log7_ams_slave5_t19_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave5_log7_ams_slave5_t20_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log7_ams_slave5_t20_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log7_ams_slave5_t20_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave5_log7_ams_slave5_t21_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log7_ams_slave5_t21_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log7_ams_slave5_t21_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave5_log7_ams_slave5_t22_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log7_ams_slave5_t22_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log7_ams_slave5_t22_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave5_log7_ams_slave5_t23_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log7_ams_slave5_t23_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log7_ams_slave5_t23_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave5_log8_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave5_log8_t *src_p,
    size_t size)
{
    uint8_t ams_slave5_t24;
    uint8_t ams_slave5_t25;
    uint8_t ams_slave5_t26;
    uint8_t ams_slave5_t27;
    uint8_t ams_slave5_t28;
    uint8_t ams_slave5_t29;
    uint8_t ams_slave5_t30;
    uint8_t ams_slave5_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave5_t24 = (uint8_t)src_p->ams_slave5_t24;
    dst_p[0] |= pack_left_shift_u8(ams_slave5_t24, 0u, 0xffu);
    ams_slave5_t25 = (uint8_t)src_p->ams_slave5_t25;
    dst_p[1] |= pack_left_shift_u8(ams_slave5_t25, 0u, 0xffu);
    ams_slave5_t26 = (uint8_t)src_p->ams_slave5_t26;
    dst_p[2] |= pack_left_shift_u8(ams_slave5_t26, 0u, 0xffu);
    ams_slave5_t27 = (uint8_t)src_p->ams_slave5_t27;
    dst_p[3] |= pack_left_shift_u8(ams_slave5_t27, 0u, 0xffu);
    ams_slave5_t28 = (uint8_t)src_p->ams_slave5_t28;
    dst_p[4] |= pack_left_shift_u8(ams_slave5_t28, 0u, 0xffu);
    ams_slave5_t29 = (uint8_t)src_p->ams_slave5_t29;
    dst_p[5] |= pack_left_shift_u8(ams_slave5_t29, 0u, 0xffu);
    ams_slave5_t30 = (uint8_t)src_p->ams_slave5_t30;
    dst_p[6] |= pack_left_shift_u8(ams_slave5_t30, 0u, 0xffu);
    ams_slave5_t31 = (uint8_t)src_p->ams_slave5_t31;
    dst_p[7] |= pack_left_shift_u8(ams_slave5_t31, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave5_log8_unpack(
    struct can1__main_ft24_ams_slave5_log8_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave5_t24;
    uint8_t ams_slave5_t25;
    uint8_t ams_slave5_t26;
    uint8_t ams_slave5_t27;
    uint8_t ams_slave5_t28;
    uint8_t ams_slave5_t29;
    uint8_t ams_slave5_t30;
    uint8_t ams_slave5_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave5_t24 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave5_t24 = (int8_t)ams_slave5_t24;
    ams_slave5_t25 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave5_t25 = (int8_t)ams_slave5_t25;
    ams_slave5_t26 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave5_t26 = (int8_t)ams_slave5_t26;
    ams_slave5_t27 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave5_t27 = (int8_t)ams_slave5_t27;
    ams_slave5_t28 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave5_t28 = (int8_t)ams_slave5_t28;
    ams_slave5_t29 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave5_t29 = (int8_t)ams_slave5_t29;
    ams_slave5_t30 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave5_t30 = (int8_t)ams_slave5_t30;
    ams_slave5_t31 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave5_t31 = (int8_t)ams_slave5_t31;

    return (0);
}

int can1__main_ft24_ams_slave5_log8_init(struct can1__main_ft24_ams_slave5_log8_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave5_log8_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave5_log8_ams_slave5_t24_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log8_ams_slave5_t24_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log8_ams_slave5_t24_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave5_log8_ams_slave5_t25_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log8_ams_slave5_t25_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log8_ams_slave5_t25_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave5_log8_ams_slave5_t26_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log8_ams_slave5_t26_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log8_ams_slave5_t26_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave5_log8_ams_slave5_t27_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log8_ams_slave5_t27_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log8_ams_slave5_t27_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave5_log8_ams_slave5_t28_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log8_ams_slave5_t28_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log8_ams_slave5_t28_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave5_log8_ams_slave5_t29_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log8_ams_slave5_t29_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log8_ams_slave5_t29_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave5_log8_ams_slave5_t30_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log8_ams_slave5_t30_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log8_ams_slave5_t30_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave5_log8_ams_slave5_t31_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave5_log8_ams_slave5_t31_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_log8_ams_slave5_t31_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave6_log0_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave6_log0_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave6_v0, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave6_v0, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave6_v1, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave6_v1, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave6_v2, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave6_v2, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave6_v3, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave6_v3, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave6_log0_unpack(
    struct can1__main_ft24_ams_slave6_log0_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave6_v0 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave6_v0 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave6_v1 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave6_v1 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave6_v2 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave6_v2 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave6_v3 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave6_v3 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave6_log0_init(struct can1__main_ft24_ams_slave6_log0_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave6_log0_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave6_log0_ams_slave6_v0_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave6_log0_ams_slave6_v0_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave6_log0_ams_slave6_v0_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave6_log0_ams_slave6_v1_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave6_log0_ams_slave6_v1_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave6_log0_ams_slave6_v1_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave6_log0_ams_slave6_v2_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave6_log0_ams_slave6_v2_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave6_log0_ams_slave6_v2_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave6_log0_ams_slave6_v3_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave6_log0_ams_slave6_v3_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave6_log0_ams_slave6_v3_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave6_log1_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave6_log1_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave6_v4, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave6_v4, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave6_v5, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave6_v5, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave6_v6, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave6_v6, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave6_v7, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave6_v7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave6_log1_unpack(
    struct can1__main_ft24_ams_slave6_log1_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave6_v4 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave6_v4 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave6_v5 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave6_v5 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave6_v6 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave6_v6 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave6_v7 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave6_v7 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave6_log1_init(struct can1__main_ft24_ams_slave6_log1_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave6_log1_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave6_log1_ams_slave6_v4_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave6_log1_ams_slave6_v4_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave6_log1_ams_slave6_v4_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave6_log1_ams_slave6_v5_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave6_log1_ams_slave6_v5_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave6_log1_ams_slave6_v5_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave6_log1_ams_slave6_v6_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave6_log1_ams_slave6_v6_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave6_log1_ams_slave6_v6_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave6_log1_ams_slave6_v7_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave6_log1_ams_slave6_v7_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave6_log1_ams_slave6_v7_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave6_log2_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave6_log2_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave6_v8, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave6_v8, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave6_v9, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave6_v9, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave6_v10, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave6_v10, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave6_v11, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave6_v11, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave6_log2_unpack(
    struct can1__main_ft24_ams_slave6_log2_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave6_v8 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave6_v8 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave6_v9 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave6_v9 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave6_v10 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave6_v10 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave6_v11 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave6_v11 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave6_log2_init(struct can1__main_ft24_ams_slave6_log2_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave6_log2_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave6_log2_ams_slave6_v8_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave6_log2_ams_slave6_v8_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave6_log2_ams_slave6_v8_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave6_log2_ams_slave6_v9_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave6_log2_ams_slave6_v9_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave6_log2_ams_slave6_v9_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave6_log2_ams_slave6_v10_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave6_log2_ams_slave6_v10_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave6_log2_ams_slave6_v10_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave6_log2_ams_slave6_v11_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave6_log2_ams_slave6_v11_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave6_log2_ams_slave6_v11_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave6_log3_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave6_log3_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave6_v12, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave6_v12, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave6_v13, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave6_v13, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave6_v14, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave6_v14, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave6_v15, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave6_v15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave6_log3_unpack(
    struct can1__main_ft24_ams_slave6_log3_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave6_v12 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave6_v12 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave6_v13 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave6_v13 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave6_v14 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave6_v14 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave6_v15 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave6_v15 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave6_log3_init(struct can1__main_ft24_ams_slave6_log3_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave6_log3_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave6_log3_ams_slave6_v12_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave6_log3_ams_slave6_v12_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave6_log3_ams_slave6_v12_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave6_log3_ams_slave6_v13_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave6_log3_ams_slave6_v13_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave6_log3_ams_slave6_v13_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave6_log3_ams_slave6_v14_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave6_log3_ams_slave6_v14_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave6_log3_ams_slave6_v14_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave6_log3_ams_slave6_v15_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave6_log3_ams_slave6_v15_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave6_log3_ams_slave6_v15_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave6_log4_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave6_log4_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave6_v16, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave6_v16, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u32(src_p->ams_slave6_failed_sensors, 24u, 0xffu);
    dst_p[3] |= pack_right_shift_u32(src_p->ams_slave6_failed_sensors, 16u, 0xffu);
    dst_p[4] |= pack_right_shift_u32(src_p->ams_slave6_failed_sensors, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u32(src_p->ams_slave6_failed_sensors, 0u, 0xffu);

    return (6);
}

int can1__main_ft24_ams_slave6_log4_unpack(
    struct can1__main_ft24_ams_slave6_log4_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    dst_p->ams_slave6_v16 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave6_v16 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave6_failed_sensors = unpack_left_shift_u32(src_p[2], 24u, 0xffu);
    dst_p->ams_slave6_failed_sensors |= unpack_left_shift_u32(src_p[3], 16u, 0xffu);
    dst_p->ams_slave6_failed_sensors |= unpack_left_shift_u32(src_p[4], 8u, 0xffu);
    dst_p->ams_slave6_failed_sensors |= unpack_right_shift_u32(src_p[5], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave6_log4_init(struct can1__main_ft24_ams_slave6_log4_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave6_log4_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave6_log4_ams_slave6_v16_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave6_log4_ams_slave6_v16_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave6_log4_ams_slave6_v16_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint32_t can1__main_ft24_ams_slave6_log4_ams_slave6_failed_sensors_encode(double value)
{
    return (uint32_t)(value);
}

double can1__main_ft24_ams_slave6_log4_ams_slave6_failed_sensors_decode(uint32_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log4_ams_slave6_failed_sensors_is_in_range(uint32_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave6_log5_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave6_log5_t *src_p,
    size_t size)
{
    uint8_t ams_slave6_t0;
    uint8_t ams_slave6_t1;
    uint8_t ams_slave6_t2;
    uint8_t ams_slave6_t3;
    uint8_t ams_slave6_t4;
    uint8_t ams_slave6_t5;
    uint8_t ams_slave6_t6;
    uint8_t ams_slave6_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave6_t0 = (uint8_t)src_p->ams_slave6_t0;
    dst_p[0] |= pack_left_shift_u8(ams_slave6_t0, 0u, 0xffu);
    ams_slave6_t1 = (uint8_t)src_p->ams_slave6_t1;
    dst_p[1] |= pack_left_shift_u8(ams_slave6_t1, 0u, 0xffu);
    ams_slave6_t2 = (uint8_t)src_p->ams_slave6_t2;
    dst_p[2] |= pack_left_shift_u8(ams_slave6_t2, 0u, 0xffu);
    ams_slave6_t3 = (uint8_t)src_p->ams_slave6_t3;
    dst_p[3] |= pack_left_shift_u8(ams_slave6_t3, 0u, 0xffu);
    ams_slave6_t4 = (uint8_t)src_p->ams_slave6_t4;
    dst_p[4] |= pack_left_shift_u8(ams_slave6_t4, 0u, 0xffu);
    ams_slave6_t5 = (uint8_t)src_p->ams_slave6_t5;
    dst_p[5] |= pack_left_shift_u8(ams_slave6_t5, 0u, 0xffu);
    ams_slave6_t6 = (uint8_t)src_p->ams_slave6_t6;
    dst_p[6] |= pack_left_shift_u8(ams_slave6_t6, 0u, 0xffu);
    ams_slave6_t7 = (uint8_t)src_p->ams_slave6_t7;
    dst_p[7] |= pack_left_shift_u8(ams_slave6_t7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave6_log5_unpack(
    struct can1__main_ft24_ams_slave6_log5_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave6_t0;
    uint8_t ams_slave6_t1;
    uint8_t ams_slave6_t2;
    uint8_t ams_slave6_t3;
    uint8_t ams_slave6_t4;
    uint8_t ams_slave6_t5;
    uint8_t ams_slave6_t6;
    uint8_t ams_slave6_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave6_t0 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave6_t0 = (int8_t)ams_slave6_t0;
    ams_slave6_t1 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave6_t1 = (int8_t)ams_slave6_t1;
    ams_slave6_t2 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave6_t2 = (int8_t)ams_slave6_t2;
    ams_slave6_t3 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave6_t3 = (int8_t)ams_slave6_t3;
    ams_slave6_t4 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave6_t4 = (int8_t)ams_slave6_t4;
    ams_slave6_t5 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave6_t5 = (int8_t)ams_slave6_t5;
    ams_slave6_t6 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave6_t6 = (int8_t)ams_slave6_t6;
    ams_slave6_t7 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave6_t7 = (int8_t)ams_slave6_t7;

    return (0);
}

int can1__main_ft24_ams_slave6_log5_init(struct can1__main_ft24_ams_slave6_log5_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave6_log5_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave6_log5_ams_slave6_t0_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log5_ams_slave6_t0_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log5_ams_slave6_t0_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave6_log5_ams_slave6_t1_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log5_ams_slave6_t1_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log5_ams_slave6_t1_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave6_log5_ams_slave6_t2_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log5_ams_slave6_t2_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log5_ams_slave6_t2_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave6_log5_ams_slave6_t3_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log5_ams_slave6_t3_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log5_ams_slave6_t3_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave6_log5_ams_slave6_t4_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log5_ams_slave6_t4_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log5_ams_slave6_t4_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave6_log5_ams_slave6_t5_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log5_ams_slave6_t5_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log5_ams_slave6_t5_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave6_log5_ams_slave6_t6_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log5_ams_slave6_t6_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log5_ams_slave6_t6_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave6_log5_ams_slave6_t7_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log5_ams_slave6_t7_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log5_ams_slave6_t7_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave6_log6_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave6_log6_t *src_p,
    size_t size)
{
    uint8_t ams_slave6_t10;
    uint8_t ams_slave6_t11;
    uint8_t ams_slave6_t12;
    uint8_t ams_slave6_t13;
    uint8_t ams_slave6_t14;
    uint8_t ams_slave6_t15;
    uint8_t ams_slave6_t8;
    uint8_t ams_slave6_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave6_t8 = (uint8_t)src_p->ams_slave6_t8;
    dst_p[0] |= pack_left_shift_u8(ams_slave6_t8, 0u, 0xffu);
    ams_slave6_t9 = (uint8_t)src_p->ams_slave6_t9;
    dst_p[1] |= pack_left_shift_u8(ams_slave6_t9, 0u, 0xffu);
    ams_slave6_t10 = (uint8_t)src_p->ams_slave6_t10;
    dst_p[2] |= pack_left_shift_u8(ams_slave6_t10, 0u, 0xffu);
    ams_slave6_t11 = (uint8_t)src_p->ams_slave6_t11;
    dst_p[3] |= pack_left_shift_u8(ams_slave6_t11, 0u, 0xffu);
    ams_slave6_t12 = (uint8_t)src_p->ams_slave6_t12;
    dst_p[4] |= pack_left_shift_u8(ams_slave6_t12, 0u, 0xffu);
    ams_slave6_t13 = (uint8_t)src_p->ams_slave6_t13;
    dst_p[5] |= pack_left_shift_u8(ams_slave6_t13, 0u, 0xffu);
    ams_slave6_t14 = (uint8_t)src_p->ams_slave6_t14;
    dst_p[6] |= pack_left_shift_u8(ams_slave6_t14, 0u, 0xffu);
    ams_slave6_t15 = (uint8_t)src_p->ams_slave6_t15;
    dst_p[7] |= pack_left_shift_u8(ams_slave6_t15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave6_log6_unpack(
    struct can1__main_ft24_ams_slave6_log6_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave6_t10;
    uint8_t ams_slave6_t11;
    uint8_t ams_slave6_t12;
    uint8_t ams_slave6_t13;
    uint8_t ams_slave6_t14;
    uint8_t ams_slave6_t15;
    uint8_t ams_slave6_t8;
    uint8_t ams_slave6_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave6_t8 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave6_t8 = (int8_t)ams_slave6_t8;
    ams_slave6_t9 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave6_t9 = (int8_t)ams_slave6_t9;
    ams_slave6_t10 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave6_t10 = (int8_t)ams_slave6_t10;
    ams_slave6_t11 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave6_t11 = (int8_t)ams_slave6_t11;
    ams_slave6_t12 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave6_t12 = (int8_t)ams_slave6_t12;
    ams_slave6_t13 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave6_t13 = (int8_t)ams_slave6_t13;
    ams_slave6_t14 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave6_t14 = (int8_t)ams_slave6_t14;
    ams_slave6_t15 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave6_t15 = (int8_t)ams_slave6_t15;

    return (0);
}

int can1__main_ft24_ams_slave6_log6_init(struct can1__main_ft24_ams_slave6_log6_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave6_log6_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave6_log6_ams_slave6_t8_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log6_ams_slave6_t8_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log6_ams_slave6_t8_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave6_log6_ams_slave6_t9_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log6_ams_slave6_t9_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log6_ams_slave6_t9_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave6_log6_ams_slave6_t10_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log6_ams_slave6_t10_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log6_ams_slave6_t10_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave6_log6_ams_slave6_t11_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log6_ams_slave6_t11_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log6_ams_slave6_t11_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave6_log6_ams_slave6_t12_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log6_ams_slave6_t12_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log6_ams_slave6_t12_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave6_log6_ams_slave6_t13_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log6_ams_slave6_t13_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log6_ams_slave6_t13_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave6_log6_ams_slave6_t14_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log6_ams_slave6_t14_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log6_ams_slave6_t14_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave6_log6_ams_slave6_t15_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log6_ams_slave6_t15_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log6_ams_slave6_t15_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave6_log7_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave6_log7_t *src_p,
    size_t size)
{
    uint8_t ams_slave6_t16;
    uint8_t ams_slave6_t17;
    uint8_t ams_slave6_t18;
    uint8_t ams_slave6_t19;
    uint8_t ams_slave6_t20;
    uint8_t ams_slave6_t21;
    uint8_t ams_slave6_t22;
    uint8_t ams_slave6_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave6_t16 = (uint8_t)src_p->ams_slave6_t16;
    dst_p[0] |= pack_left_shift_u8(ams_slave6_t16, 0u, 0xffu);
    ams_slave6_t17 = (uint8_t)src_p->ams_slave6_t17;
    dst_p[1] |= pack_left_shift_u8(ams_slave6_t17, 0u, 0xffu);
    ams_slave6_t18 = (uint8_t)src_p->ams_slave6_t18;
    dst_p[2] |= pack_left_shift_u8(ams_slave6_t18, 0u, 0xffu);
    ams_slave6_t19 = (uint8_t)src_p->ams_slave6_t19;
    dst_p[3] |= pack_left_shift_u8(ams_slave6_t19, 0u, 0xffu);
    ams_slave6_t20 = (uint8_t)src_p->ams_slave6_t20;
    dst_p[4] |= pack_left_shift_u8(ams_slave6_t20, 0u, 0xffu);
    ams_slave6_t21 = (uint8_t)src_p->ams_slave6_t21;
    dst_p[5] |= pack_left_shift_u8(ams_slave6_t21, 0u, 0xffu);
    ams_slave6_t22 = (uint8_t)src_p->ams_slave6_t22;
    dst_p[6] |= pack_left_shift_u8(ams_slave6_t22, 0u, 0xffu);
    ams_slave6_t23 = (uint8_t)src_p->ams_slave6_t23;
    dst_p[7] |= pack_left_shift_u8(ams_slave6_t23, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave6_log7_unpack(
    struct can1__main_ft24_ams_slave6_log7_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave6_t16;
    uint8_t ams_slave6_t17;
    uint8_t ams_slave6_t18;
    uint8_t ams_slave6_t19;
    uint8_t ams_slave6_t20;
    uint8_t ams_slave6_t21;
    uint8_t ams_slave6_t22;
    uint8_t ams_slave6_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave6_t16 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave6_t16 = (int8_t)ams_slave6_t16;
    ams_slave6_t17 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave6_t17 = (int8_t)ams_slave6_t17;
    ams_slave6_t18 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave6_t18 = (int8_t)ams_slave6_t18;
    ams_slave6_t19 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave6_t19 = (int8_t)ams_slave6_t19;
    ams_slave6_t20 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave6_t20 = (int8_t)ams_slave6_t20;
    ams_slave6_t21 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave6_t21 = (int8_t)ams_slave6_t21;
    ams_slave6_t22 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave6_t22 = (int8_t)ams_slave6_t22;
    ams_slave6_t23 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave6_t23 = (int8_t)ams_slave6_t23;

    return (0);
}

int can1__main_ft24_ams_slave6_log7_init(struct can1__main_ft24_ams_slave6_log7_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave6_log7_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave6_log7_ams_slave6_t16_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log7_ams_slave6_t16_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log7_ams_slave6_t16_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave6_log7_ams_slave6_t17_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log7_ams_slave6_t17_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log7_ams_slave6_t17_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave6_log7_ams_slave6_t18_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log7_ams_slave6_t18_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log7_ams_slave6_t18_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave6_log7_ams_slave6_t19_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log7_ams_slave6_t19_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log7_ams_slave6_t19_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave6_log7_ams_slave6_t20_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log7_ams_slave6_t20_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log7_ams_slave6_t20_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave6_log7_ams_slave6_t21_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log7_ams_slave6_t21_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log7_ams_slave6_t21_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave6_log7_ams_slave6_t22_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log7_ams_slave6_t22_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log7_ams_slave6_t22_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave6_log7_ams_slave6_t23_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log7_ams_slave6_t23_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log7_ams_slave6_t23_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave6_log8_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave6_log8_t *src_p,
    size_t size)
{
    uint8_t ams_slave6_t24;
    uint8_t ams_slave6_t25;
    uint8_t ams_slave6_t26;
    uint8_t ams_slave6_t27;
    uint8_t ams_slave6_t28;
    uint8_t ams_slave6_t29;
    uint8_t ams_slave6_t30;
    uint8_t ams_slave6_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave6_t24 = (uint8_t)src_p->ams_slave6_t24;
    dst_p[0] |= pack_left_shift_u8(ams_slave6_t24, 0u, 0xffu);
    ams_slave6_t25 = (uint8_t)src_p->ams_slave6_t25;
    dst_p[1] |= pack_left_shift_u8(ams_slave6_t25, 0u, 0xffu);
    ams_slave6_t26 = (uint8_t)src_p->ams_slave6_t26;
    dst_p[2] |= pack_left_shift_u8(ams_slave6_t26, 0u, 0xffu);
    ams_slave6_t27 = (uint8_t)src_p->ams_slave6_t27;
    dst_p[3] |= pack_left_shift_u8(ams_slave6_t27, 0u, 0xffu);
    ams_slave6_t28 = (uint8_t)src_p->ams_slave6_t28;
    dst_p[4] |= pack_left_shift_u8(ams_slave6_t28, 0u, 0xffu);
    ams_slave6_t29 = (uint8_t)src_p->ams_slave6_t29;
    dst_p[5] |= pack_left_shift_u8(ams_slave6_t29, 0u, 0xffu);
    ams_slave6_t30 = (uint8_t)src_p->ams_slave6_t30;
    dst_p[6] |= pack_left_shift_u8(ams_slave6_t30, 0u, 0xffu);
    ams_slave6_t31 = (uint8_t)src_p->ams_slave6_t31;
    dst_p[7] |= pack_left_shift_u8(ams_slave6_t31, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave6_log8_unpack(
    struct can1__main_ft24_ams_slave6_log8_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave6_t24;
    uint8_t ams_slave6_t25;
    uint8_t ams_slave6_t26;
    uint8_t ams_slave6_t27;
    uint8_t ams_slave6_t28;
    uint8_t ams_slave6_t29;
    uint8_t ams_slave6_t30;
    uint8_t ams_slave6_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave6_t24 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave6_t24 = (int8_t)ams_slave6_t24;
    ams_slave6_t25 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave6_t25 = (int8_t)ams_slave6_t25;
    ams_slave6_t26 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave6_t26 = (int8_t)ams_slave6_t26;
    ams_slave6_t27 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave6_t27 = (int8_t)ams_slave6_t27;
    ams_slave6_t28 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave6_t28 = (int8_t)ams_slave6_t28;
    ams_slave6_t29 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave6_t29 = (int8_t)ams_slave6_t29;
    ams_slave6_t30 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave6_t30 = (int8_t)ams_slave6_t30;
    ams_slave6_t31 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave6_t31 = (int8_t)ams_slave6_t31;

    return (0);
}

int can1__main_ft24_ams_slave6_log8_init(struct can1__main_ft24_ams_slave6_log8_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave6_log8_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave6_log8_ams_slave6_t24_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log8_ams_slave6_t24_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log8_ams_slave6_t24_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave6_log8_ams_slave6_t25_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log8_ams_slave6_t25_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log8_ams_slave6_t25_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave6_log8_ams_slave6_t26_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log8_ams_slave6_t26_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log8_ams_slave6_t26_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave6_log8_ams_slave6_t27_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log8_ams_slave6_t27_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log8_ams_slave6_t27_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave6_log8_ams_slave6_t28_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log8_ams_slave6_t28_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log8_ams_slave6_t28_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave6_log8_ams_slave6_t29_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log8_ams_slave6_t29_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log8_ams_slave6_t29_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave6_log8_ams_slave6_t30_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log8_ams_slave6_t30_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log8_ams_slave6_t30_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave6_log8_ams_slave6_t31_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave6_log8_ams_slave6_t31_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_log8_ams_slave6_t31_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave7_log0_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave7_log0_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave7_v0, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave7_v0, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave7_v1, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave7_v1, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave7_v2, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave7_v2, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave7_v3, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave7_v3, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave7_log0_unpack(
    struct can1__main_ft24_ams_slave7_log0_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave7_v0 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave7_v0 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave7_v1 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave7_v1 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave7_v2 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave7_v2 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave7_v3 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave7_v3 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave7_log0_init(struct can1__main_ft24_ams_slave7_log0_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave7_log0_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave7_log0_ams_slave7_v0_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave7_log0_ams_slave7_v0_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave7_log0_ams_slave7_v0_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave7_log0_ams_slave7_v1_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave7_log0_ams_slave7_v1_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave7_log0_ams_slave7_v1_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave7_log0_ams_slave7_v2_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave7_log0_ams_slave7_v2_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave7_log0_ams_slave7_v2_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave7_log0_ams_slave7_v3_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave7_log0_ams_slave7_v3_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave7_log0_ams_slave7_v3_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave7_log1_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave7_log1_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave7_v4, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave7_v4, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave7_v5, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave7_v5, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave7_v6, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave7_v6, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave7_v7, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave7_v7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave7_log1_unpack(
    struct can1__main_ft24_ams_slave7_log1_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave7_v4 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave7_v4 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave7_v5 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave7_v5 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave7_v6 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave7_v6 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave7_v7 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave7_v7 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave7_log1_init(struct can1__main_ft24_ams_slave7_log1_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave7_log1_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave7_log1_ams_slave7_v4_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave7_log1_ams_slave7_v4_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave7_log1_ams_slave7_v4_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave7_log1_ams_slave7_v5_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave7_log1_ams_slave7_v5_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave7_log1_ams_slave7_v5_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave7_log1_ams_slave7_v6_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave7_log1_ams_slave7_v6_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave7_log1_ams_slave7_v6_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave7_log1_ams_slave7_v7_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave7_log1_ams_slave7_v7_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave7_log1_ams_slave7_v7_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave7_log2_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave7_log2_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave7_v8, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave7_v8, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave7_v9, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave7_v9, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave7_v10, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave7_v10, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave7_v11, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave7_v11, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave7_log2_unpack(
    struct can1__main_ft24_ams_slave7_log2_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave7_v8 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave7_v8 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave7_v9 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave7_v9 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave7_v10 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave7_v10 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave7_v11 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave7_v11 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave7_log2_init(struct can1__main_ft24_ams_slave7_log2_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave7_log2_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave7_log2_ams_slave7_v8_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave7_log2_ams_slave7_v8_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave7_log2_ams_slave7_v8_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave7_log2_ams_slave7_v9_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave7_log2_ams_slave7_v9_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave7_log2_ams_slave7_v9_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave7_log2_ams_slave7_v10_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave7_log2_ams_slave7_v10_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave7_log2_ams_slave7_v10_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave7_log2_ams_slave7_v11_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave7_log2_ams_slave7_v11_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave7_log2_ams_slave7_v11_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave7_log3_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave7_log3_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave7_v12, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave7_v12, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave7_v13, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave7_v13, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave7_v14, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave7_v14, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave7_v15, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave7_v15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave7_log3_unpack(
    struct can1__main_ft24_ams_slave7_log3_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave7_v12 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave7_v12 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave7_v13 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave7_v13 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave7_v14 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave7_v14 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave7_v15 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave7_v15 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave7_log3_init(struct can1__main_ft24_ams_slave7_log3_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave7_log3_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave7_log3_ams_slave7_v12_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave7_log3_ams_slave7_v12_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave7_log3_ams_slave7_v12_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave7_log3_ams_slave7_v13_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave7_log3_ams_slave7_v13_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave7_log3_ams_slave7_v13_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave7_log3_ams_slave7_v14_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave7_log3_ams_slave7_v14_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave7_log3_ams_slave7_v14_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave7_log3_ams_slave7_v15_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave7_log3_ams_slave7_v15_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave7_log3_ams_slave7_v15_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave7_log4_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave7_log4_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave7_v16, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave7_v16, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u32(src_p->ams_slave7_failed_sensors, 24u, 0xffu);
    dst_p[3] |= pack_right_shift_u32(src_p->ams_slave7_failed_sensors, 16u, 0xffu);
    dst_p[4] |= pack_right_shift_u32(src_p->ams_slave7_failed_sensors, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u32(src_p->ams_slave7_failed_sensors, 0u, 0xffu);

    return (6);
}

int can1__main_ft24_ams_slave7_log4_unpack(
    struct can1__main_ft24_ams_slave7_log4_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    dst_p->ams_slave7_v16 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave7_v16 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave7_failed_sensors = unpack_left_shift_u32(src_p[2], 24u, 0xffu);
    dst_p->ams_slave7_failed_sensors |= unpack_left_shift_u32(src_p[3], 16u, 0xffu);
    dst_p->ams_slave7_failed_sensors |= unpack_left_shift_u32(src_p[4], 8u, 0xffu);
    dst_p->ams_slave7_failed_sensors |= unpack_right_shift_u32(src_p[5], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave7_log4_init(struct can1__main_ft24_ams_slave7_log4_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave7_log4_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave7_log4_ams_slave7_v16_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave7_log4_ams_slave7_v16_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave7_log4_ams_slave7_v16_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint32_t can1__main_ft24_ams_slave7_log4_ams_slave7_failed_sensors_encode(double value)
{
    return (uint32_t)(value);
}

double can1__main_ft24_ams_slave7_log4_ams_slave7_failed_sensors_decode(uint32_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log4_ams_slave7_failed_sensors_is_in_range(uint32_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave7_log5_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave7_log5_t *src_p,
    size_t size)
{
    uint8_t ams_slave7_t0;
    uint8_t ams_slave7_t1;
    uint8_t ams_slave7_t2;
    uint8_t ams_slave7_t3;
    uint8_t ams_slave7_t4;
    uint8_t ams_slave7_t5;
    uint8_t ams_slave7_t6;
    uint8_t ams_slave7_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave7_t0 = (uint8_t)src_p->ams_slave7_t0;
    dst_p[0] |= pack_left_shift_u8(ams_slave7_t0, 0u, 0xffu);
    ams_slave7_t1 = (uint8_t)src_p->ams_slave7_t1;
    dst_p[1] |= pack_left_shift_u8(ams_slave7_t1, 0u, 0xffu);
    ams_slave7_t2 = (uint8_t)src_p->ams_slave7_t2;
    dst_p[2] |= pack_left_shift_u8(ams_slave7_t2, 0u, 0xffu);
    ams_slave7_t3 = (uint8_t)src_p->ams_slave7_t3;
    dst_p[3] |= pack_left_shift_u8(ams_slave7_t3, 0u, 0xffu);
    ams_slave7_t4 = (uint8_t)src_p->ams_slave7_t4;
    dst_p[4] |= pack_left_shift_u8(ams_slave7_t4, 0u, 0xffu);
    ams_slave7_t5 = (uint8_t)src_p->ams_slave7_t5;
    dst_p[5] |= pack_left_shift_u8(ams_slave7_t5, 0u, 0xffu);
    ams_slave7_t6 = (uint8_t)src_p->ams_slave7_t6;
    dst_p[6] |= pack_left_shift_u8(ams_slave7_t6, 0u, 0xffu);
    ams_slave7_t7 = (uint8_t)src_p->ams_slave7_t7;
    dst_p[7] |= pack_left_shift_u8(ams_slave7_t7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave7_log5_unpack(
    struct can1__main_ft24_ams_slave7_log5_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave7_t0;
    uint8_t ams_slave7_t1;
    uint8_t ams_slave7_t2;
    uint8_t ams_slave7_t3;
    uint8_t ams_slave7_t4;
    uint8_t ams_slave7_t5;
    uint8_t ams_slave7_t6;
    uint8_t ams_slave7_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave7_t0 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave7_t0 = (int8_t)ams_slave7_t0;
    ams_slave7_t1 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave7_t1 = (int8_t)ams_slave7_t1;
    ams_slave7_t2 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave7_t2 = (int8_t)ams_slave7_t2;
    ams_slave7_t3 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave7_t3 = (int8_t)ams_slave7_t3;
    ams_slave7_t4 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave7_t4 = (int8_t)ams_slave7_t4;
    ams_slave7_t5 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave7_t5 = (int8_t)ams_slave7_t5;
    ams_slave7_t6 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave7_t6 = (int8_t)ams_slave7_t6;
    ams_slave7_t7 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave7_t7 = (int8_t)ams_slave7_t7;

    return (0);
}

int can1__main_ft24_ams_slave7_log5_init(struct can1__main_ft24_ams_slave7_log5_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave7_log5_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave7_log5_ams_slave7_t0_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log5_ams_slave7_t0_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log5_ams_slave7_t0_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave7_log5_ams_slave7_t1_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log5_ams_slave7_t1_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log5_ams_slave7_t1_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave7_log5_ams_slave7_t2_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log5_ams_slave7_t2_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log5_ams_slave7_t2_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave7_log5_ams_slave7_t3_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log5_ams_slave7_t3_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log5_ams_slave7_t3_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave7_log5_ams_slave7_t4_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log5_ams_slave7_t4_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log5_ams_slave7_t4_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave7_log5_ams_slave7_t5_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log5_ams_slave7_t5_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log5_ams_slave7_t5_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave7_log5_ams_slave7_t6_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log5_ams_slave7_t6_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log5_ams_slave7_t6_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave7_log5_ams_slave7_t7_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log5_ams_slave7_t7_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log5_ams_slave7_t7_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave7_log6_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave7_log6_t *src_p,
    size_t size)
{
    uint8_t ams_slave7_t10;
    uint8_t ams_slave7_t11;
    uint8_t ams_slave7_t12;
    uint8_t ams_slave7_t13;
    uint8_t ams_slave7_t14;
    uint8_t ams_slave7_t15;
    uint8_t ams_slave7_t8;
    uint8_t ams_slave7_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave7_t8 = (uint8_t)src_p->ams_slave7_t8;
    dst_p[0] |= pack_left_shift_u8(ams_slave7_t8, 0u, 0xffu);
    ams_slave7_t9 = (uint8_t)src_p->ams_slave7_t9;
    dst_p[1] |= pack_left_shift_u8(ams_slave7_t9, 0u, 0xffu);
    ams_slave7_t10 = (uint8_t)src_p->ams_slave7_t10;
    dst_p[2] |= pack_left_shift_u8(ams_slave7_t10, 0u, 0xffu);
    ams_slave7_t11 = (uint8_t)src_p->ams_slave7_t11;
    dst_p[3] |= pack_left_shift_u8(ams_slave7_t11, 0u, 0xffu);
    ams_slave7_t12 = (uint8_t)src_p->ams_slave7_t12;
    dst_p[4] |= pack_left_shift_u8(ams_slave7_t12, 0u, 0xffu);
    ams_slave7_t13 = (uint8_t)src_p->ams_slave7_t13;
    dst_p[5] |= pack_left_shift_u8(ams_slave7_t13, 0u, 0xffu);
    ams_slave7_t14 = (uint8_t)src_p->ams_slave7_t14;
    dst_p[6] |= pack_left_shift_u8(ams_slave7_t14, 0u, 0xffu);
    ams_slave7_t15 = (uint8_t)src_p->ams_slave7_t15;
    dst_p[7] |= pack_left_shift_u8(ams_slave7_t15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave7_log6_unpack(
    struct can1__main_ft24_ams_slave7_log6_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave7_t10;
    uint8_t ams_slave7_t11;
    uint8_t ams_slave7_t12;
    uint8_t ams_slave7_t13;
    uint8_t ams_slave7_t14;
    uint8_t ams_slave7_t15;
    uint8_t ams_slave7_t8;
    uint8_t ams_slave7_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave7_t8 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave7_t8 = (int8_t)ams_slave7_t8;
    ams_slave7_t9 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave7_t9 = (int8_t)ams_slave7_t9;
    ams_slave7_t10 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave7_t10 = (int8_t)ams_slave7_t10;
    ams_slave7_t11 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave7_t11 = (int8_t)ams_slave7_t11;
    ams_slave7_t12 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave7_t12 = (int8_t)ams_slave7_t12;
    ams_slave7_t13 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave7_t13 = (int8_t)ams_slave7_t13;
    ams_slave7_t14 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave7_t14 = (int8_t)ams_slave7_t14;
    ams_slave7_t15 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave7_t15 = (int8_t)ams_slave7_t15;

    return (0);
}

int can1__main_ft24_ams_slave7_log6_init(struct can1__main_ft24_ams_slave7_log6_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave7_log6_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave7_log6_ams_slave7_t8_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log6_ams_slave7_t8_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log6_ams_slave7_t8_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave7_log6_ams_slave7_t9_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log6_ams_slave7_t9_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log6_ams_slave7_t9_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave7_log6_ams_slave7_t10_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log6_ams_slave7_t10_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log6_ams_slave7_t10_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave7_log6_ams_slave7_t11_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log6_ams_slave7_t11_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log6_ams_slave7_t11_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave7_log6_ams_slave7_t12_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log6_ams_slave7_t12_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log6_ams_slave7_t12_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave7_log6_ams_slave7_t13_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log6_ams_slave7_t13_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log6_ams_slave7_t13_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave7_log6_ams_slave7_t14_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log6_ams_slave7_t14_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log6_ams_slave7_t14_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave7_log6_ams_slave7_t15_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log6_ams_slave7_t15_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log6_ams_slave7_t15_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave7_log7_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave7_log7_t *src_p,
    size_t size)
{
    uint8_t ams_slave7_t16;
    uint8_t ams_slave7_t17;
    uint8_t ams_slave7_t18;
    uint8_t ams_slave7_t19;
    uint8_t ams_slave7_t20;
    uint8_t ams_slave7_t21;
    uint8_t ams_slave7_t22;
    uint8_t ams_slave7_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave7_t16 = (uint8_t)src_p->ams_slave7_t16;
    dst_p[0] |= pack_left_shift_u8(ams_slave7_t16, 0u, 0xffu);
    ams_slave7_t17 = (uint8_t)src_p->ams_slave7_t17;
    dst_p[1] |= pack_left_shift_u8(ams_slave7_t17, 0u, 0xffu);
    ams_slave7_t18 = (uint8_t)src_p->ams_slave7_t18;
    dst_p[2] |= pack_left_shift_u8(ams_slave7_t18, 0u, 0xffu);
    ams_slave7_t19 = (uint8_t)src_p->ams_slave7_t19;
    dst_p[3] |= pack_left_shift_u8(ams_slave7_t19, 0u, 0xffu);
    ams_slave7_t20 = (uint8_t)src_p->ams_slave7_t20;
    dst_p[4] |= pack_left_shift_u8(ams_slave7_t20, 0u, 0xffu);
    ams_slave7_t21 = (uint8_t)src_p->ams_slave7_t21;
    dst_p[5] |= pack_left_shift_u8(ams_slave7_t21, 0u, 0xffu);
    ams_slave7_t22 = (uint8_t)src_p->ams_slave7_t22;
    dst_p[6] |= pack_left_shift_u8(ams_slave7_t22, 0u, 0xffu);
    ams_slave7_t23 = (uint8_t)src_p->ams_slave7_t23;
    dst_p[7] |= pack_left_shift_u8(ams_slave7_t23, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave7_log7_unpack(
    struct can1__main_ft24_ams_slave7_log7_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave7_t16;
    uint8_t ams_slave7_t17;
    uint8_t ams_slave7_t18;
    uint8_t ams_slave7_t19;
    uint8_t ams_slave7_t20;
    uint8_t ams_slave7_t21;
    uint8_t ams_slave7_t22;
    uint8_t ams_slave7_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave7_t16 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave7_t16 = (int8_t)ams_slave7_t16;
    ams_slave7_t17 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave7_t17 = (int8_t)ams_slave7_t17;
    ams_slave7_t18 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave7_t18 = (int8_t)ams_slave7_t18;
    ams_slave7_t19 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave7_t19 = (int8_t)ams_slave7_t19;
    ams_slave7_t20 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave7_t20 = (int8_t)ams_slave7_t20;
    ams_slave7_t21 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave7_t21 = (int8_t)ams_slave7_t21;
    ams_slave7_t22 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave7_t22 = (int8_t)ams_slave7_t22;
    ams_slave7_t23 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave7_t23 = (int8_t)ams_slave7_t23;

    return (0);
}

int can1__main_ft24_ams_slave7_log7_init(struct can1__main_ft24_ams_slave7_log7_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave7_log7_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave7_log7_ams_slave7_t16_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log7_ams_slave7_t16_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log7_ams_slave7_t16_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave7_log7_ams_slave7_t17_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log7_ams_slave7_t17_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log7_ams_slave7_t17_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave7_log7_ams_slave7_t18_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log7_ams_slave7_t18_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log7_ams_slave7_t18_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave7_log7_ams_slave7_t19_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log7_ams_slave7_t19_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log7_ams_slave7_t19_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave7_log7_ams_slave7_t20_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log7_ams_slave7_t20_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log7_ams_slave7_t20_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave7_log7_ams_slave7_t21_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log7_ams_slave7_t21_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log7_ams_slave7_t21_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave7_log7_ams_slave7_t22_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log7_ams_slave7_t22_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log7_ams_slave7_t22_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave7_log7_ams_slave7_t23_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log7_ams_slave7_t23_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log7_ams_slave7_t23_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave7_log8_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave7_log8_t *src_p,
    size_t size)
{
    uint8_t ams_slave7_t24;
    uint8_t ams_slave7_t25;
    uint8_t ams_slave7_t26;
    uint8_t ams_slave7_t27;
    uint8_t ams_slave7_t28;
    uint8_t ams_slave7_t29;
    uint8_t ams_slave7_t30;
    uint8_t ams_slave7_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave7_t24 = (uint8_t)src_p->ams_slave7_t24;
    dst_p[0] |= pack_left_shift_u8(ams_slave7_t24, 0u, 0xffu);
    ams_slave7_t25 = (uint8_t)src_p->ams_slave7_t25;
    dst_p[1] |= pack_left_shift_u8(ams_slave7_t25, 0u, 0xffu);
    ams_slave7_t26 = (uint8_t)src_p->ams_slave7_t26;
    dst_p[2] |= pack_left_shift_u8(ams_slave7_t26, 0u, 0xffu);
    ams_slave7_t27 = (uint8_t)src_p->ams_slave7_t27;
    dst_p[3] |= pack_left_shift_u8(ams_slave7_t27, 0u, 0xffu);
    ams_slave7_t28 = (uint8_t)src_p->ams_slave7_t28;
    dst_p[4] |= pack_left_shift_u8(ams_slave7_t28, 0u, 0xffu);
    ams_slave7_t29 = (uint8_t)src_p->ams_slave7_t29;
    dst_p[5] |= pack_left_shift_u8(ams_slave7_t29, 0u, 0xffu);
    ams_slave7_t30 = (uint8_t)src_p->ams_slave7_t30;
    dst_p[6] |= pack_left_shift_u8(ams_slave7_t30, 0u, 0xffu);
    ams_slave7_t31 = (uint8_t)src_p->ams_slave7_t31;
    dst_p[7] |= pack_left_shift_u8(ams_slave7_t31, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave7_log8_unpack(
    struct can1__main_ft24_ams_slave7_log8_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave7_t24;
    uint8_t ams_slave7_t25;
    uint8_t ams_slave7_t26;
    uint8_t ams_slave7_t27;
    uint8_t ams_slave7_t28;
    uint8_t ams_slave7_t29;
    uint8_t ams_slave7_t30;
    uint8_t ams_slave7_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave7_t24 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave7_t24 = (int8_t)ams_slave7_t24;
    ams_slave7_t25 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave7_t25 = (int8_t)ams_slave7_t25;
    ams_slave7_t26 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave7_t26 = (int8_t)ams_slave7_t26;
    ams_slave7_t27 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave7_t27 = (int8_t)ams_slave7_t27;
    ams_slave7_t28 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave7_t28 = (int8_t)ams_slave7_t28;
    ams_slave7_t29 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave7_t29 = (int8_t)ams_slave7_t29;
    ams_slave7_t30 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave7_t30 = (int8_t)ams_slave7_t30;
    ams_slave7_t31 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave7_t31 = (int8_t)ams_slave7_t31;

    return (0);
}

int can1__main_ft24_ams_slave7_log8_init(struct can1__main_ft24_ams_slave7_log8_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave7_log8_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave7_log8_ams_slave7_t24_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log8_ams_slave7_t24_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log8_ams_slave7_t24_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave7_log8_ams_slave7_t25_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log8_ams_slave7_t25_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log8_ams_slave7_t25_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave7_log8_ams_slave7_t26_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log8_ams_slave7_t26_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log8_ams_slave7_t26_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave7_log8_ams_slave7_t27_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log8_ams_slave7_t27_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log8_ams_slave7_t27_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave7_log8_ams_slave7_t28_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log8_ams_slave7_t28_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log8_ams_slave7_t28_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave7_log8_ams_slave7_t29_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log8_ams_slave7_t29_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log8_ams_slave7_t29_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave7_log8_ams_slave7_t30_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log8_ams_slave7_t30_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log8_ams_slave7_t30_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave7_log8_ams_slave7_t31_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave7_log8_ams_slave7_t31_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_log8_ams_slave7_t31_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave8_log0_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave8_log0_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave8_v0, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave8_v0, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave8_v1, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave8_v1, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave8_v2, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave8_v2, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave8_v3, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave8_v3, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave8_log0_unpack(
    struct can1__main_ft24_ams_slave8_log0_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave8_v0 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave8_v0 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave8_v1 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave8_v1 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave8_v2 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave8_v2 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave8_v3 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave8_v3 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave8_log0_init(struct can1__main_ft24_ams_slave8_log0_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave8_log0_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave8_log0_ams_slave8_v0_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave8_log0_ams_slave8_v0_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave8_log0_ams_slave8_v0_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave8_log0_ams_slave8_v1_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave8_log0_ams_slave8_v1_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave8_log0_ams_slave8_v1_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave8_log0_ams_slave8_v2_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave8_log0_ams_slave8_v2_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave8_log0_ams_slave8_v2_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave8_log0_ams_slave8_v3_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave8_log0_ams_slave8_v3_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave8_log0_ams_slave8_v3_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave8_log1_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave8_log1_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave8_v4, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave8_v4, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave8_v5, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave8_v5, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave8_v6, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave8_v6, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave8_v7, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave8_v7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave8_log1_unpack(
    struct can1__main_ft24_ams_slave8_log1_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave8_v4 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave8_v4 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave8_v5 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave8_v5 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave8_v6 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave8_v6 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave8_v7 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave8_v7 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave8_log1_init(struct can1__main_ft24_ams_slave8_log1_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave8_log1_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave8_log1_ams_slave8_v4_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave8_log1_ams_slave8_v4_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave8_log1_ams_slave8_v4_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave8_log1_ams_slave8_v5_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave8_log1_ams_slave8_v5_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave8_log1_ams_slave8_v5_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave8_log1_ams_slave8_v6_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave8_log1_ams_slave8_v6_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave8_log1_ams_slave8_v6_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave8_log1_ams_slave8_v7_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave8_log1_ams_slave8_v7_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave8_log1_ams_slave8_v7_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave8_log2_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave8_log2_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave8_v8, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave8_v8, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave8_v9, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave8_v9, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave8_v10, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave8_v10, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave8_v11, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave8_v11, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave8_log2_unpack(
    struct can1__main_ft24_ams_slave8_log2_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave8_v8 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave8_v8 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave8_v9 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave8_v9 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave8_v10 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave8_v10 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave8_v11 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave8_v11 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave8_log2_init(struct can1__main_ft24_ams_slave8_log2_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave8_log2_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave8_log2_ams_slave8_v8_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave8_log2_ams_slave8_v8_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave8_log2_ams_slave8_v8_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave8_log2_ams_slave8_v9_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave8_log2_ams_slave8_v9_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave8_log2_ams_slave8_v9_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave8_log2_ams_slave8_v10_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave8_log2_ams_slave8_v10_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave8_log2_ams_slave8_v10_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave8_log2_ams_slave8_v11_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave8_log2_ams_slave8_v11_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave8_log2_ams_slave8_v11_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave8_log3_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave8_log3_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave8_v12, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave8_v12, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave8_v13, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave8_v13, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave8_v14, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave8_v14, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave8_v15, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave8_v15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave8_log3_unpack(
    struct can1__main_ft24_ams_slave8_log3_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave8_v12 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave8_v12 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave8_v13 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave8_v13 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave8_v14 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave8_v14 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave8_v15 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave8_v15 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave8_log3_init(struct can1__main_ft24_ams_slave8_log3_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave8_log3_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave8_log3_ams_slave8_v12_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave8_log3_ams_slave8_v12_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave8_log3_ams_slave8_v12_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave8_log3_ams_slave8_v13_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave8_log3_ams_slave8_v13_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave8_log3_ams_slave8_v13_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave8_log3_ams_slave8_v14_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave8_log3_ams_slave8_v14_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave8_log3_ams_slave8_v14_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave8_log3_ams_slave8_v15_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave8_log3_ams_slave8_v15_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave8_log3_ams_slave8_v15_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave8_log4_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave8_log4_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave8_v16, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave8_v16, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u32(src_p->ams_slave8_failed_sensors, 24u, 0xffu);
    dst_p[3] |= pack_right_shift_u32(src_p->ams_slave8_failed_sensors, 16u, 0xffu);
    dst_p[4] |= pack_right_shift_u32(src_p->ams_slave8_failed_sensors, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u32(src_p->ams_slave8_failed_sensors, 0u, 0xffu);

    return (6);
}

int can1__main_ft24_ams_slave8_log4_unpack(
    struct can1__main_ft24_ams_slave8_log4_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    dst_p->ams_slave8_v16 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave8_v16 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave8_failed_sensors = unpack_left_shift_u32(src_p[2], 24u, 0xffu);
    dst_p->ams_slave8_failed_sensors |= unpack_left_shift_u32(src_p[3], 16u, 0xffu);
    dst_p->ams_slave8_failed_sensors |= unpack_left_shift_u32(src_p[4], 8u, 0xffu);
    dst_p->ams_slave8_failed_sensors |= unpack_right_shift_u32(src_p[5], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave8_log4_init(struct can1__main_ft24_ams_slave8_log4_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave8_log4_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave8_log4_ams_slave8_v16_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave8_log4_ams_slave8_v16_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave8_log4_ams_slave8_v16_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint32_t can1__main_ft24_ams_slave8_log4_ams_slave8_failed_sensors_encode(double value)
{
    return (uint32_t)(value);
}

double can1__main_ft24_ams_slave8_log4_ams_slave8_failed_sensors_decode(uint32_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log4_ams_slave8_failed_sensors_is_in_range(uint32_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave8_log5_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave8_log5_t *src_p,
    size_t size)
{
    uint8_t ams_slave8_t0;
    uint8_t ams_slave8_t1;
    uint8_t ams_slave8_t2;
    uint8_t ams_slave8_t3;
    uint8_t ams_slave8_t4;
    uint8_t ams_slave8_t5;
    uint8_t ams_slave8_t6;
    uint8_t ams_slave8_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave8_t0 = (uint8_t)src_p->ams_slave8_t0;
    dst_p[0] |= pack_left_shift_u8(ams_slave8_t0, 0u, 0xffu);
    ams_slave8_t1 = (uint8_t)src_p->ams_slave8_t1;
    dst_p[1] |= pack_left_shift_u8(ams_slave8_t1, 0u, 0xffu);
    ams_slave8_t2 = (uint8_t)src_p->ams_slave8_t2;
    dst_p[2] |= pack_left_shift_u8(ams_slave8_t2, 0u, 0xffu);
    ams_slave8_t3 = (uint8_t)src_p->ams_slave8_t3;
    dst_p[3] |= pack_left_shift_u8(ams_slave8_t3, 0u, 0xffu);
    ams_slave8_t4 = (uint8_t)src_p->ams_slave8_t4;
    dst_p[4] |= pack_left_shift_u8(ams_slave8_t4, 0u, 0xffu);
    ams_slave8_t5 = (uint8_t)src_p->ams_slave8_t5;
    dst_p[5] |= pack_left_shift_u8(ams_slave8_t5, 0u, 0xffu);
    ams_slave8_t6 = (uint8_t)src_p->ams_slave8_t6;
    dst_p[6] |= pack_left_shift_u8(ams_slave8_t6, 0u, 0xffu);
    ams_slave8_t7 = (uint8_t)src_p->ams_slave8_t7;
    dst_p[7] |= pack_left_shift_u8(ams_slave8_t7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave8_log5_unpack(
    struct can1__main_ft24_ams_slave8_log5_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave8_t0;
    uint8_t ams_slave8_t1;
    uint8_t ams_slave8_t2;
    uint8_t ams_slave8_t3;
    uint8_t ams_slave8_t4;
    uint8_t ams_slave8_t5;
    uint8_t ams_slave8_t6;
    uint8_t ams_slave8_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave8_t0 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave8_t0 = (int8_t)ams_slave8_t0;
    ams_slave8_t1 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave8_t1 = (int8_t)ams_slave8_t1;
    ams_slave8_t2 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave8_t2 = (int8_t)ams_slave8_t2;
    ams_slave8_t3 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave8_t3 = (int8_t)ams_slave8_t3;
    ams_slave8_t4 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave8_t4 = (int8_t)ams_slave8_t4;
    ams_slave8_t5 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave8_t5 = (int8_t)ams_slave8_t5;
    ams_slave8_t6 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave8_t6 = (int8_t)ams_slave8_t6;
    ams_slave8_t7 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave8_t7 = (int8_t)ams_slave8_t7;

    return (0);
}

int can1__main_ft24_ams_slave8_log5_init(struct can1__main_ft24_ams_slave8_log5_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave8_log5_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave8_log5_ams_slave8_t0_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log5_ams_slave8_t0_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log5_ams_slave8_t0_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave8_log5_ams_slave8_t1_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log5_ams_slave8_t1_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log5_ams_slave8_t1_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave8_log5_ams_slave8_t2_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log5_ams_slave8_t2_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log5_ams_slave8_t2_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave8_log5_ams_slave8_t3_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log5_ams_slave8_t3_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log5_ams_slave8_t3_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave8_log5_ams_slave8_t4_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log5_ams_slave8_t4_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log5_ams_slave8_t4_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave8_log5_ams_slave8_t5_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log5_ams_slave8_t5_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log5_ams_slave8_t5_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave8_log5_ams_slave8_t6_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log5_ams_slave8_t6_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log5_ams_slave8_t6_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave8_log5_ams_slave8_t7_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log5_ams_slave8_t7_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log5_ams_slave8_t7_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave8_log6_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave8_log6_t *src_p,
    size_t size)
{
    uint8_t ams_slave8_t10;
    uint8_t ams_slave8_t11;
    uint8_t ams_slave8_t12;
    uint8_t ams_slave8_t13;
    uint8_t ams_slave8_t14;
    uint8_t ams_slave8_t15;
    uint8_t ams_slave8_t8;
    uint8_t ams_slave8_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave8_t8 = (uint8_t)src_p->ams_slave8_t8;
    dst_p[0] |= pack_left_shift_u8(ams_slave8_t8, 0u, 0xffu);
    ams_slave8_t9 = (uint8_t)src_p->ams_slave8_t9;
    dst_p[1] |= pack_left_shift_u8(ams_slave8_t9, 0u, 0xffu);
    ams_slave8_t10 = (uint8_t)src_p->ams_slave8_t10;
    dst_p[2] |= pack_left_shift_u8(ams_slave8_t10, 0u, 0xffu);
    ams_slave8_t11 = (uint8_t)src_p->ams_slave8_t11;
    dst_p[3] |= pack_left_shift_u8(ams_slave8_t11, 0u, 0xffu);
    ams_slave8_t12 = (uint8_t)src_p->ams_slave8_t12;
    dst_p[4] |= pack_left_shift_u8(ams_slave8_t12, 0u, 0xffu);
    ams_slave8_t13 = (uint8_t)src_p->ams_slave8_t13;
    dst_p[5] |= pack_left_shift_u8(ams_slave8_t13, 0u, 0xffu);
    ams_slave8_t14 = (uint8_t)src_p->ams_slave8_t14;
    dst_p[6] |= pack_left_shift_u8(ams_slave8_t14, 0u, 0xffu);
    ams_slave8_t15 = (uint8_t)src_p->ams_slave8_t15;
    dst_p[7] |= pack_left_shift_u8(ams_slave8_t15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave8_log6_unpack(
    struct can1__main_ft24_ams_slave8_log6_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave8_t10;
    uint8_t ams_slave8_t11;
    uint8_t ams_slave8_t12;
    uint8_t ams_slave8_t13;
    uint8_t ams_slave8_t14;
    uint8_t ams_slave8_t15;
    uint8_t ams_slave8_t8;
    uint8_t ams_slave8_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave8_t8 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave8_t8 = (int8_t)ams_slave8_t8;
    ams_slave8_t9 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave8_t9 = (int8_t)ams_slave8_t9;
    ams_slave8_t10 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave8_t10 = (int8_t)ams_slave8_t10;
    ams_slave8_t11 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave8_t11 = (int8_t)ams_slave8_t11;
    ams_slave8_t12 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave8_t12 = (int8_t)ams_slave8_t12;
    ams_slave8_t13 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave8_t13 = (int8_t)ams_slave8_t13;
    ams_slave8_t14 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave8_t14 = (int8_t)ams_slave8_t14;
    ams_slave8_t15 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave8_t15 = (int8_t)ams_slave8_t15;

    return (0);
}

int can1__main_ft24_ams_slave8_log6_init(struct can1__main_ft24_ams_slave8_log6_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave8_log6_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave8_log6_ams_slave8_t8_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log6_ams_slave8_t8_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log6_ams_slave8_t8_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave8_log6_ams_slave8_t9_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log6_ams_slave8_t9_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log6_ams_slave8_t9_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave8_log6_ams_slave8_t10_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log6_ams_slave8_t10_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log6_ams_slave8_t10_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave8_log6_ams_slave8_t11_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log6_ams_slave8_t11_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log6_ams_slave8_t11_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave8_log6_ams_slave8_t12_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log6_ams_slave8_t12_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log6_ams_slave8_t12_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave8_log6_ams_slave8_t13_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log6_ams_slave8_t13_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log6_ams_slave8_t13_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave8_log6_ams_slave8_t14_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log6_ams_slave8_t14_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log6_ams_slave8_t14_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave8_log6_ams_slave8_t15_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log6_ams_slave8_t15_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log6_ams_slave8_t15_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave8_log7_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave8_log7_t *src_p,
    size_t size)
{
    uint8_t ams_slave8_t16;
    uint8_t ams_slave8_t17;
    uint8_t ams_slave8_t18;
    uint8_t ams_slave8_t19;
    uint8_t ams_slave8_t20;
    uint8_t ams_slave8_t21;
    uint8_t ams_slave8_t22;
    uint8_t ams_slave8_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave8_t16 = (uint8_t)src_p->ams_slave8_t16;
    dst_p[0] |= pack_left_shift_u8(ams_slave8_t16, 0u, 0xffu);
    ams_slave8_t17 = (uint8_t)src_p->ams_slave8_t17;
    dst_p[1] |= pack_left_shift_u8(ams_slave8_t17, 0u, 0xffu);
    ams_slave8_t18 = (uint8_t)src_p->ams_slave8_t18;
    dst_p[2] |= pack_left_shift_u8(ams_slave8_t18, 0u, 0xffu);
    ams_slave8_t19 = (uint8_t)src_p->ams_slave8_t19;
    dst_p[3] |= pack_left_shift_u8(ams_slave8_t19, 0u, 0xffu);
    ams_slave8_t20 = (uint8_t)src_p->ams_slave8_t20;
    dst_p[4] |= pack_left_shift_u8(ams_slave8_t20, 0u, 0xffu);
    ams_slave8_t21 = (uint8_t)src_p->ams_slave8_t21;
    dst_p[5] |= pack_left_shift_u8(ams_slave8_t21, 0u, 0xffu);
    ams_slave8_t22 = (uint8_t)src_p->ams_slave8_t22;
    dst_p[6] |= pack_left_shift_u8(ams_slave8_t22, 0u, 0xffu);
    ams_slave8_t23 = (uint8_t)src_p->ams_slave8_t23;
    dst_p[7] |= pack_left_shift_u8(ams_slave8_t23, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave8_log7_unpack(
    struct can1__main_ft24_ams_slave8_log7_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave8_t16;
    uint8_t ams_slave8_t17;
    uint8_t ams_slave8_t18;
    uint8_t ams_slave8_t19;
    uint8_t ams_slave8_t20;
    uint8_t ams_slave8_t21;
    uint8_t ams_slave8_t22;
    uint8_t ams_slave8_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave8_t16 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave8_t16 = (int8_t)ams_slave8_t16;
    ams_slave8_t17 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave8_t17 = (int8_t)ams_slave8_t17;
    ams_slave8_t18 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave8_t18 = (int8_t)ams_slave8_t18;
    ams_slave8_t19 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave8_t19 = (int8_t)ams_slave8_t19;
    ams_slave8_t20 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave8_t20 = (int8_t)ams_slave8_t20;
    ams_slave8_t21 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave8_t21 = (int8_t)ams_slave8_t21;
    ams_slave8_t22 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave8_t22 = (int8_t)ams_slave8_t22;
    ams_slave8_t23 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave8_t23 = (int8_t)ams_slave8_t23;

    return (0);
}

int can1__main_ft24_ams_slave8_log7_init(struct can1__main_ft24_ams_slave8_log7_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave8_log7_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave8_log7_ams_slave8_t16_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log7_ams_slave8_t16_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log7_ams_slave8_t16_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave8_log7_ams_slave8_t17_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log7_ams_slave8_t17_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log7_ams_slave8_t17_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave8_log7_ams_slave8_t18_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log7_ams_slave8_t18_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log7_ams_slave8_t18_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave8_log7_ams_slave8_t19_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log7_ams_slave8_t19_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log7_ams_slave8_t19_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave8_log7_ams_slave8_t20_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log7_ams_slave8_t20_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log7_ams_slave8_t20_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave8_log7_ams_slave8_t21_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log7_ams_slave8_t21_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log7_ams_slave8_t21_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave8_log7_ams_slave8_t22_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log7_ams_slave8_t22_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log7_ams_slave8_t22_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave8_log7_ams_slave8_t23_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log7_ams_slave8_t23_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log7_ams_slave8_t23_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave8_log8_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave8_log8_t *src_p,
    size_t size)
{
    uint8_t ams_slave8_t24;
    uint8_t ams_slave8_t25;
    uint8_t ams_slave8_t26;
    uint8_t ams_slave8_t27;
    uint8_t ams_slave8_t28;
    uint8_t ams_slave8_t29;
    uint8_t ams_slave8_t30;
    uint8_t ams_slave8_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave8_t24 = (uint8_t)src_p->ams_slave8_t24;
    dst_p[0] |= pack_left_shift_u8(ams_slave8_t24, 0u, 0xffu);
    ams_slave8_t25 = (uint8_t)src_p->ams_slave8_t25;
    dst_p[1] |= pack_left_shift_u8(ams_slave8_t25, 0u, 0xffu);
    ams_slave8_t26 = (uint8_t)src_p->ams_slave8_t26;
    dst_p[2] |= pack_left_shift_u8(ams_slave8_t26, 0u, 0xffu);
    ams_slave8_t27 = (uint8_t)src_p->ams_slave8_t27;
    dst_p[3] |= pack_left_shift_u8(ams_slave8_t27, 0u, 0xffu);
    ams_slave8_t28 = (uint8_t)src_p->ams_slave8_t28;
    dst_p[4] |= pack_left_shift_u8(ams_slave8_t28, 0u, 0xffu);
    ams_slave8_t29 = (uint8_t)src_p->ams_slave8_t29;
    dst_p[5] |= pack_left_shift_u8(ams_slave8_t29, 0u, 0xffu);
    ams_slave8_t30 = (uint8_t)src_p->ams_slave8_t30;
    dst_p[6] |= pack_left_shift_u8(ams_slave8_t30, 0u, 0xffu);
    ams_slave8_t31 = (uint8_t)src_p->ams_slave8_t31;
    dst_p[7] |= pack_left_shift_u8(ams_slave8_t31, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave8_log8_unpack(
    struct can1__main_ft24_ams_slave8_log8_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave8_t24;
    uint8_t ams_slave8_t25;
    uint8_t ams_slave8_t26;
    uint8_t ams_slave8_t27;
    uint8_t ams_slave8_t28;
    uint8_t ams_slave8_t29;
    uint8_t ams_slave8_t30;
    uint8_t ams_slave8_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave8_t24 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave8_t24 = (int8_t)ams_slave8_t24;
    ams_slave8_t25 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave8_t25 = (int8_t)ams_slave8_t25;
    ams_slave8_t26 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave8_t26 = (int8_t)ams_slave8_t26;
    ams_slave8_t27 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave8_t27 = (int8_t)ams_slave8_t27;
    ams_slave8_t28 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave8_t28 = (int8_t)ams_slave8_t28;
    ams_slave8_t29 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave8_t29 = (int8_t)ams_slave8_t29;
    ams_slave8_t30 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave8_t30 = (int8_t)ams_slave8_t30;
    ams_slave8_t31 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave8_t31 = (int8_t)ams_slave8_t31;

    return (0);
}

int can1__main_ft24_ams_slave8_log8_init(struct can1__main_ft24_ams_slave8_log8_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave8_log8_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave8_log8_ams_slave8_t24_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log8_ams_slave8_t24_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log8_ams_slave8_t24_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave8_log8_ams_slave8_t25_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log8_ams_slave8_t25_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log8_ams_slave8_t25_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave8_log8_ams_slave8_t26_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log8_ams_slave8_t26_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log8_ams_slave8_t26_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave8_log8_ams_slave8_t27_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log8_ams_slave8_t27_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log8_ams_slave8_t27_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave8_log8_ams_slave8_t28_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log8_ams_slave8_t28_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log8_ams_slave8_t28_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave8_log8_ams_slave8_t29_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log8_ams_slave8_t29_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log8_ams_slave8_t29_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave8_log8_ams_slave8_t30_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log8_ams_slave8_t30_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log8_ams_slave8_t30_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave8_log8_ams_slave8_t31_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave8_log8_ams_slave8_t31_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_log8_ams_slave8_t31_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave9_log0_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave9_log0_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave9_v0, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave9_v0, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave9_v1, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave9_v1, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave9_v2, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave9_v2, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave9_v3, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave9_v3, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave9_log0_unpack(
    struct can1__main_ft24_ams_slave9_log0_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave9_v0 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave9_v0 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave9_v1 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave9_v1 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave9_v2 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave9_v2 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave9_v3 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave9_v3 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave9_log0_init(struct can1__main_ft24_ams_slave9_log0_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave9_log0_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave9_log0_ams_slave9_v0_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave9_log0_ams_slave9_v0_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave9_log0_ams_slave9_v0_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave9_log0_ams_slave9_v1_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave9_log0_ams_slave9_v1_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave9_log0_ams_slave9_v1_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave9_log0_ams_slave9_v2_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave9_log0_ams_slave9_v2_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave9_log0_ams_slave9_v2_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave9_log0_ams_slave9_v3_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave9_log0_ams_slave9_v3_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave9_log0_ams_slave9_v3_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave9_log1_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave9_log1_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave9_v4, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave9_v4, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave9_v5, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave9_v5, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave9_v6, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave9_v6, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave9_v7, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave9_v7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave9_log1_unpack(
    struct can1__main_ft24_ams_slave9_log1_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave9_v4 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave9_v4 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave9_v5 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave9_v5 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave9_v6 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave9_v6 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave9_v7 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave9_v7 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave9_log1_init(struct can1__main_ft24_ams_slave9_log1_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave9_log1_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave9_log1_ams_slave9_v4_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave9_log1_ams_slave9_v4_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave9_log1_ams_slave9_v4_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave9_log1_ams_slave9_v5_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave9_log1_ams_slave9_v5_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave9_log1_ams_slave9_v5_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave9_log1_ams_slave9_v6_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave9_log1_ams_slave9_v6_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave9_log1_ams_slave9_v6_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave9_log1_ams_slave9_v7_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave9_log1_ams_slave9_v7_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave9_log1_ams_slave9_v7_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave9_log2_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave9_log2_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave9_v8, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave9_v8, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave9_v9, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave9_v9, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave9_v10, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave9_v10, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave9_v11, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave9_v11, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave9_log2_unpack(
    struct can1__main_ft24_ams_slave9_log2_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave9_v8 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave9_v8 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave9_v9 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave9_v9 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave9_v10 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave9_v10 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave9_v11 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave9_v11 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave9_log2_init(struct can1__main_ft24_ams_slave9_log2_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave9_log2_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave9_log2_ams_slave9_v8_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave9_log2_ams_slave9_v8_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave9_log2_ams_slave9_v8_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave9_log2_ams_slave9_v9_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave9_log2_ams_slave9_v9_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave9_log2_ams_slave9_v9_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave9_log2_ams_slave9_v10_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave9_log2_ams_slave9_v10_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave9_log2_ams_slave9_v10_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave9_log2_ams_slave9_v11_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave9_log2_ams_slave9_v11_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave9_log2_ams_slave9_v11_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave9_log3_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave9_log3_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave9_v12, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave9_v12, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave9_v13, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave9_v13, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave9_v14, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave9_v14, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave9_v15, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave9_v15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave9_log3_unpack(
    struct can1__main_ft24_ams_slave9_log3_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave9_v12 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave9_v12 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave9_v13 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave9_v13 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave9_v14 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave9_v14 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave9_v15 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave9_v15 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave9_log3_init(struct can1__main_ft24_ams_slave9_log3_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave9_log3_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave9_log3_ams_slave9_v12_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave9_log3_ams_slave9_v12_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave9_log3_ams_slave9_v12_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave9_log3_ams_slave9_v13_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave9_log3_ams_slave9_v13_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave9_log3_ams_slave9_v13_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave9_log3_ams_slave9_v14_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave9_log3_ams_slave9_v14_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave9_log3_ams_slave9_v14_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave9_log3_ams_slave9_v15_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave9_log3_ams_slave9_v15_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave9_log3_ams_slave9_v15_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave9_log4_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave9_log4_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave9_v16, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave9_v16, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u32(src_p->ams_slave9_failed_sensors, 24u, 0xffu);
    dst_p[3] |= pack_right_shift_u32(src_p->ams_slave9_failed_sensors, 16u, 0xffu);
    dst_p[4] |= pack_right_shift_u32(src_p->ams_slave9_failed_sensors, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u32(src_p->ams_slave9_failed_sensors, 0u, 0xffu);

    return (6);
}

int can1__main_ft24_ams_slave9_log4_unpack(
    struct can1__main_ft24_ams_slave9_log4_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    dst_p->ams_slave9_v16 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave9_v16 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave9_failed_sensors = unpack_left_shift_u32(src_p[2], 24u, 0xffu);
    dst_p->ams_slave9_failed_sensors |= unpack_left_shift_u32(src_p[3], 16u, 0xffu);
    dst_p->ams_slave9_failed_sensors |= unpack_left_shift_u32(src_p[4], 8u, 0xffu);
    dst_p->ams_slave9_failed_sensors |= unpack_right_shift_u32(src_p[5], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave9_log4_init(struct can1__main_ft24_ams_slave9_log4_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave9_log4_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave9_log4_ams_slave9_v16_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave9_log4_ams_slave9_v16_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave9_log4_ams_slave9_v16_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint32_t can1__main_ft24_ams_slave9_log4_ams_slave9_failed_sensors_encode(double value)
{
    return (uint32_t)(value);
}

double can1__main_ft24_ams_slave9_log4_ams_slave9_failed_sensors_decode(uint32_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log4_ams_slave9_failed_sensors_is_in_range(uint32_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave9_log5_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave9_log5_t *src_p,
    size_t size)
{
    uint8_t ams_slave9_t0;
    uint8_t ams_slave9_t1;
    uint8_t ams_slave9_t2;
    uint8_t ams_slave9_t3;
    uint8_t ams_slave9_t4;
    uint8_t ams_slave9_t5;
    uint8_t ams_slave9_t6;
    uint8_t ams_slave9_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave9_t0 = (uint8_t)src_p->ams_slave9_t0;
    dst_p[0] |= pack_left_shift_u8(ams_slave9_t0, 0u, 0xffu);
    ams_slave9_t1 = (uint8_t)src_p->ams_slave9_t1;
    dst_p[1] |= pack_left_shift_u8(ams_slave9_t1, 0u, 0xffu);
    ams_slave9_t2 = (uint8_t)src_p->ams_slave9_t2;
    dst_p[2] |= pack_left_shift_u8(ams_slave9_t2, 0u, 0xffu);
    ams_slave9_t3 = (uint8_t)src_p->ams_slave9_t3;
    dst_p[3] |= pack_left_shift_u8(ams_slave9_t3, 0u, 0xffu);
    ams_slave9_t4 = (uint8_t)src_p->ams_slave9_t4;
    dst_p[4] |= pack_left_shift_u8(ams_slave9_t4, 0u, 0xffu);
    ams_slave9_t5 = (uint8_t)src_p->ams_slave9_t5;
    dst_p[5] |= pack_left_shift_u8(ams_slave9_t5, 0u, 0xffu);
    ams_slave9_t6 = (uint8_t)src_p->ams_slave9_t6;
    dst_p[6] |= pack_left_shift_u8(ams_slave9_t6, 0u, 0xffu);
    ams_slave9_t7 = (uint8_t)src_p->ams_slave9_t7;
    dst_p[7] |= pack_left_shift_u8(ams_slave9_t7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave9_log5_unpack(
    struct can1__main_ft24_ams_slave9_log5_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave9_t0;
    uint8_t ams_slave9_t1;
    uint8_t ams_slave9_t2;
    uint8_t ams_slave9_t3;
    uint8_t ams_slave9_t4;
    uint8_t ams_slave9_t5;
    uint8_t ams_slave9_t6;
    uint8_t ams_slave9_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave9_t0 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave9_t0 = (int8_t)ams_slave9_t0;
    ams_slave9_t1 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave9_t1 = (int8_t)ams_slave9_t1;
    ams_slave9_t2 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave9_t2 = (int8_t)ams_slave9_t2;
    ams_slave9_t3 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave9_t3 = (int8_t)ams_slave9_t3;
    ams_slave9_t4 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave9_t4 = (int8_t)ams_slave9_t4;
    ams_slave9_t5 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave9_t5 = (int8_t)ams_slave9_t5;
    ams_slave9_t6 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave9_t6 = (int8_t)ams_slave9_t6;
    ams_slave9_t7 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave9_t7 = (int8_t)ams_slave9_t7;

    return (0);
}

int can1__main_ft24_ams_slave9_log5_init(struct can1__main_ft24_ams_slave9_log5_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave9_log5_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave9_log5_ams_slave9_t0_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log5_ams_slave9_t0_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log5_ams_slave9_t0_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave9_log5_ams_slave9_t1_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log5_ams_slave9_t1_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log5_ams_slave9_t1_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave9_log5_ams_slave9_t2_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log5_ams_slave9_t2_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log5_ams_slave9_t2_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave9_log5_ams_slave9_t3_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log5_ams_slave9_t3_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log5_ams_slave9_t3_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave9_log5_ams_slave9_t4_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log5_ams_slave9_t4_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log5_ams_slave9_t4_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave9_log5_ams_slave9_t5_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log5_ams_slave9_t5_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log5_ams_slave9_t5_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave9_log5_ams_slave9_t6_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log5_ams_slave9_t6_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log5_ams_slave9_t6_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave9_log5_ams_slave9_t7_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log5_ams_slave9_t7_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log5_ams_slave9_t7_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave9_log6_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave9_log6_t *src_p,
    size_t size)
{
    uint8_t ams_slave9_t10;
    uint8_t ams_slave9_t11;
    uint8_t ams_slave9_t12;
    uint8_t ams_slave9_t13;
    uint8_t ams_slave9_t14;
    uint8_t ams_slave9_t15;
    uint8_t ams_slave9_t8;
    uint8_t ams_slave9_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave9_t8 = (uint8_t)src_p->ams_slave9_t8;
    dst_p[0] |= pack_left_shift_u8(ams_slave9_t8, 0u, 0xffu);
    ams_slave9_t9 = (uint8_t)src_p->ams_slave9_t9;
    dst_p[1] |= pack_left_shift_u8(ams_slave9_t9, 0u, 0xffu);
    ams_slave9_t10 = (uint8_t)src_p->ams_slave9_t10;
    dst_p[2] |= pack_left_shift_u8(ams_slave9_t10, 0u, 0xffu);
    ams_slave9_t11 = (uint8_t)src_p->ams_slave9_t11;
    dst_p[3] |= pack_left_shift_u8(ams_slave9_t11, 0u, 0xffu);
    ams_slave9_t12 = (uint8_t)src_p->ams_slave9_t12;
    dst_p[4] |= pack_left_shift_u8(ams_slave9_t12, 0u, 0xffu);
    ams_slave9_t13 = (uint8_t)src_p->ams_slave9_t13;
    dst_p[5] |= pack_left_shift_u8(ams_slave9_t13, 0u, 0xffu);
    ams_slave9_t14 = (uint8_t)src_p->ams_slave9_t14;
    dst_p[6] |= pack_left_shift_u8(ams_slave9_t14, 0u, 0xffu);
    ams_slave9_t15 = (uint8_t)src_p->ams_slave9_t15;
    dst_p[7] |= pack_left_shift_u8(ams_slave9_t15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave9_log6_unpack(
    struct can1__main_ft24_ams_slave9_log6_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave9_t10;
    uint8_t ams_slave9_t11;
    uint8_t ams_slave9_t12;
    uint8_t ams_slave9_t13;
    uint8_t ams_slave9_t14;
    uint8_t ams_slave9_t15;
    uint8_t ams_slave9_t8;
    uint8_t ams_slave9_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave9_t8 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave9_t8 = (int8_t)ams_slave9_t8;
    ams_slave9_t9 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave9_t9 = (int8_t)ams_slave9_t9;
    ams_slave9_t10 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave9_t10 = (int8_t)ams_slave9_t10;
    ams_slave9_t11 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave9_t11 = (int8_t)ams_slave9_t11;
    ams_slave9_t12 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave9_t12 = (int8_t)ams_slave9_t12;
    ams_slave9_t13 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave9_t13 = (int8_t)ams_slave9_t13;
    ams_slave9_t14 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave9_t14 = (int8_t)ams_slave9_t14;
    ams_slave9_t15 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave9_t15 = (int8_t)ams_slave9_t15;

    return (0);
}

int can1__main_ft24_ams_slave9_log6_init(struct can1__main_ft24_ams_slave9_log6_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave9_log6_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave9_log6_ams_slave9_t8_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log6_ams_slave9_t8_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log6_ams_slave9_t8_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave9_log6_ams_slave9_t9_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log6_ams_slave9_t9_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log6_ams_slave9_t9_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave9_log6_ams_slave9_t10_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log6_ams_slave9_t10_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log6_ams_slave9_t10_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave9_log6_ams_slave9_t11_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log6_ams_slave9_t11_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log6_ams_slave9_t11_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave9_log6_ams_slave9_t12_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log6_ams_slave9_t12_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log6_ams_slave9_t12_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave9_log6_ams_slave9_t13_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log6_ams_slave9_t13_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log6_ams_slave9_t13_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave9_log6_ams_slave9_t14_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log6_ams_slave9_t14_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log6_ams_slave9_t14_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave9_log6_ams_slave9_t15_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log6_ams_slave9_t15_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log6_ams_slave9_t15_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave9_log7_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave9_log7_t *src_p,
    size_t size)
{
    uint8_t ams_slave9_t16;
    uint8_t ams_slave9_t17;
    uint8_t ams_slave9_t18;
    uint8_t ams_slave9_t19;
    uint8_t ams_slave9_t20;
    uint8_t ams_slave9_t21;
    uint8_t ams_slave9_t22;
    uint8_t ams_slave9_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave9_t16 = (uint8_t)src_p->ams_slave9_t16;
    dst_p[0] |= pack_left_shift_u8(ams_slave9_t16, 0u, 0xffu);
    ams_slave9_t17 = (uint8_t)src_p->ams_slave9_t17;
    dst_p[1] |= pack_left_shift_u8(ams_slave9_t17, 0u, 0xffu);
    ams_slave9_t18 = (uint8_t)src_p->ams_slave9_t18;
    dst_p[2] |= pack_left_shift_u8(ams_slave9_t18, 0u, 0xffu);
    ams_slave9_t19 = (uint8_t)src_p->ams_slave9_t19;
    dst_p[3] |= pack_left_shift_u8(ams_slave9_t19, 0u, 0xffu);
    ams_slave9_t20 = (uint8_t)src_p->ams_slave9_t20;
    dst_p[4] |= pack_left_shift_u8(ams_slave9_t20, 0u, 0xffu);
    ams_slave9_t21 = (uint8_t)src_p->ams_slave9_t21;
    dst_p[5] |= pack_left_shift_u8(ams_slave9_t21, 0u, 0xffu);
    ams_slave9_t22 = (uint8_t)src_p->ams_slave9_t22;
    dst_p[6] |= pack_left_shift_u8(ams_slave9_t22, 0u, 0xffu);
    ams_slave9_t23 = (uint8_t)src_p->ams_slave9_t23;
    dst_p[7] |= pack_left_shift_u8(ams_slave9_t23, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave9_log7_unpack(
    struct can1__main_ft24_ams_slave9_log7_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave9_t16;
    uint8_t ams_slave9_t17;
    uint8_t ams_slave9_t18;
    uint8_t ams_slave9_t19;
    uint8_t ams_slave9_t20;
    uint8_t ams_slave9_t21;
    uint8_t ams_slave9_t22;
    uint8_t ams_slave9_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave9_t16 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave9_t16 = (int8_t)ams_slave9_t16;
    ams_slave9_t17 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave9_t17 = (int8_t)ams_slave9_t17;
    ams_slave9_t18 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave9_t18 = (int8_t)ams_slave9_t18;
    ams_slave9_t19 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave9_t19 = (int8_t)ams_slave9_t19;
    ams_slave9_t20 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave9_t20 = (int8_t)ams_slave9_t20;
    ams_slave9_t21 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave9_t21 = (int8_t)ams_slave9_t21;
    ams_slave9_t22 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave9_t22 = (int8_t)ams_slave9_t22;
    ams_slave9_t23 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave9_t23 = (int8_t)ams_slave9_t23;

    return (0);
}

int can1__main_ft24_ams_slave9_log7_init(struct can1__main_ft24_ams_slave9_log7_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave9_log7_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave9_log7_ams_slave9_t16_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log7_ams_slave9_t16_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log7_ams_slave9_t16_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave9_log7_ams_slave9_t17_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log7_ams_slave9_t17_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log7_ams_slave9_t17_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave9_log7_ams_slave9_t18_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log7_ams_slave9_t18_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log7_ams_slave9_t18_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave9_log7_ams_slave9_t19_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log7_ams_slave9_t19_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log7_ams_slave9_t19_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave9_log7_ams_slave9_t20_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log7_ams_slave9_t20_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log7_ams_slave9_t20_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave9_log7_ams_slave9_t21_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log7_ams_slave9_t21_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log7_ams_slave9_t21_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave9_log7_ams_slave9_t22_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log7_ams_slave9_t22_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log7_ams_slave9_t22_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave9_log7_ams_slave9_t23_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log7_ams_slave9_t23_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log7_ams_slave9_t23_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave9_log8_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave9_log8_t *src_p,
    size_t size)
{
    uint8_t ams_slave9_t24;
    uint8_t ams_slave9_t25;
    uint8_t ams_slave9_t26;
    uint8_t ams_slave9_t27;
    uint8_t ams_slave9_t28;
    uint8_t ams_slave9_t29;
    uint8_t ams_slave9_t30;
    uint8_t ams_slave9_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave9_t24 = (uint8_t)src_p->ams_slave9_t24;
    dst_p[0] |= pack_left_shift_u8(ams_slave9_t24, 0u, 0xffu);
    ams_slave9_t25 = (uint8_t)src_p->ams_slave9_t25;
    dst_p[1] |= pack_left_shift_u8(ams_slave9_t25, 0u, 0xffu);
    ams_slave9_t26 = (uint8_t)src_p->ams_slave9_t26;
    dst_p[2] |= pack_left_shift_u8(ams_slave9_t26, 0u, 0xffu);
    ams_slave9_t27 = (uint8_t)src_p->ams_slave9_t27;
    dst_p[3] |= pack_left_shift_u8(ams_slave9_t27, 0u, 0xffu);
    ams_slave9_t28 = (uint8_t)src_p->ams_slave9_t28;
    dst_p[4] |= pack_left_shift_u8(ams_slave9_t28, 0u, 0xffu);
    ams_slave9_t29 = (uint8_t)src_p->ams_slave9_t29;
    dst_p[5] |= pack_left_shift_u8(ams_slave9_t29, 0u, 0xffu);
    ams_slave9_t30 = (uint8_t)src_p->ams_slave9_t30;
    dst_p[6] |= pack_left_shift_u8(ams_slave9_t30, 0u, 0xffu);
    ams_slave9_t31 = (uint8_t)src_p->ams_slave9_t31;
    dst_p[7] |= pack_left_shift_u8(ams_slave9_t31, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave9_log8_unpack(
    struct can1__main_ft24_ams_slave9_log8_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave9_t24;
    uint8_t ams_slave9_t25;
    uint8_t ams_slave9_t26;
    uint8_t ams_slave9_t27;
    uint8_t ams_slave9_t28;
    uint8_t ams_slave9_t29;
    uint8_t ams_slave9_t30;
    uint8_t ams_slave9_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave9_t24 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave9_t24 = (int8_t)ams_slave9_t24;
    ams_slave9_t25 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave9_t25 = (int8_t)ams_slave9_t25;
    ams_slave9_t26 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave9_t26 = (int8_t)ams_slave9_t26;
    ams_slave9_t27 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave9_t27 = (int8_t)ams_slave9_t27;
    ams_slave9_t28 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave9_t28 = (int8_t)ams_slave9_t28;
    ams_slave9_t29 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave9_t29 = (int8_t)ams_slave9_t29;
    ams_slave9_t30 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave9_t30 = (int8_t)ams_slave9_t30;
    ams_slave9_t31 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave9_t31 = (int8_t)ams_slave9_t31;

    return (0);
}

int can1__main_ft24_ams_slave9_log8_init(struct can1__main_ft24_ams_slave9_log8_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave9_log8_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave9_log8_ams_slave9_t24_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log8_ams_slave9_t24_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log8_ams_slave9_t24_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave9_log8_ams_slave9_t25_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log8_ams_slave9_t25_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log8_ams_slave9_t25_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave9_log8_ams_slave9_t26_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log8_ams_slave9_t26_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log8_ams_slave9_t26_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave9_log8_ams_slave9_t27_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log8_ams_slave9_t27_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log8_ams_slave9_t27_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave9_log8_ams_slave9_t28_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log8_ams_slave9_t28_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log8_ams_slave9_t28_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave9_log8_ams_slave9_t29_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log8_ams_slave9_t29_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log8_ams_slave9_t29_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave9_log8_ams_slave9_t30_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log8_ams_slave9_t30_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log8_ams_slave9_t30_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave9_log8_ams_slave9_t31_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave9_log8_ams_slave9_t31_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_log8_ams_slave9_t31_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave10_log0_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave10_log0_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave10_v0, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave10_v0, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave10_v1, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave10_v1, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave10_v2, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave10_v2, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave10_v3, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave10_v3, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave10_log0_unpack(
    struct can1__main_ft24_ams_slave10_log0_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave10_v0 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave10_v0 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave10_v1 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave10_v1 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave10_v2 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave10_v2 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave10_v3 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave10_v3 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave10_log0_init(struct can1__main_ft24_ams_slave10_log0_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave10_log0_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave10_log0_ams_slave10_v0_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave10_log0_ams_slave10_v0_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave10_log0_ams_slave10_v0_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave10_log0_ams_slave10_v1_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave10_log0_ams_slave10_v1_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave10_log0_ams_slave10_v1_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave10_log0_ams_slave10_v2_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave10_log0_ams_slave10_v2_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave10_log0_ams_slave10_v2_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave10_log0_ams_slave10_v3_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave10_log0_ams_slave10_v3_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave10_log0_ams_slave10_v3_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave10_log1_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave10_log1_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave10_v4, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave10_v4, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave10_v5, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave10_v5, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave10_v6, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave10_v6, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave10_v7, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave10_v7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave10_log1_unpack(
    struct can1__main_ft24_ams_slave10_log1_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave10_v4 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave10_v4 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave10_v5 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave10_v5 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave10_v6 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave10_v6 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave10_v7 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave10_v7 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave10_log1_init(struct can1__main_ft24_ams_slave10_log1_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave10_log1_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave10_log1_ams_slave10_v4_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave10_log1_ams_slave10_v4_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave10_log1_ams_slave10_v4_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave10_log1_ams_slave10_v5_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave10_log1_ams_slave10_v5_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave10_log1_ams_slave10_v5_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave10_log1_ams_slave10_v6_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave10_log1_ams_slave10_v6_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave10_log1_ams_slave10_v6_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave10_log1_ams_slave10_v7_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave10_log1_ams_slave10_v7_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave10_log1_ams_slave10_v7_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave10_log2_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave10_log2_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave10_v8, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave10_v8, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave10_v9, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave10_v9, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave10_v10, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave10_v10, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave10_v11, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave10_v11, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave10_log2_unpack(
    struct can1__main_ft24_ams_slave10_log2_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave10_v8 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave10_v8 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave10_v9 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave10_v9 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave10_v10 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave10_v10 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave10_v11 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave10_v11 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave10_log2_init(struct can1__main_ft24_ams_slave10_log2_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave10_log2_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave10_log2_ams_slave10_v8_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave10_log2_ams_slave10_v8_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave10_log2_ams_slave10_v8_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave10_log2_ams_slave10_v9_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave10_log2_ams_slave10_v9_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave10_log2_ams_slave10_v9_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave10_log2_ams_slave10_v10_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave10_log2_ams_slave10_v10_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave10_log2_ams_slave10_v10_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave10_log2_ams_slave10_v11_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave10_log2_ams_slave10_v11_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave10_log2_ams_slave10_v11_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave10_log3_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave10_log3_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave10_v12, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave10_v12, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave10_v13, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave10_v13, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave10_v14, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave10_v14, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave10_v15, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave10_v15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave10_log3_unpack(
    struct can1__main_ft24_ams_slave10_log3_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave10_v12 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave10_v12 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave10_v13 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave10_v13 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave10_v14 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave10_v14 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave10_v15 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave10_v15 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave10_log3_init(struct can1__main_ft24_ams_slave10_log3_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave10_log3_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave10_log3_ams_slave10_v12_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave10_log3_ams_slave10_v12_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave10_log3_ams_slave10_v12_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave10_log3_ams_slave10_v13_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave10_log3_ams_slave10_v13_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave10_log3_ams_slave10_v13_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave10_log3_ams_slave10_v14_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave10_log3_ams_slave10_v14_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave10_log3_ams_slave10_v14_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave10_log3_ams_slave10_v15_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave10_log3_ams_slave10_v15_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave10_log3_ams_slave10_v15_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave10_log4_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave10_log4_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave10_v16, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave10_v16, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u32(src_p->ams_slave10_failed_sensors, 24u, 0xffu);
    dst_p[3] |= pack_right_shift_u32(src_p->ams_slave10_failed_sensors, 16u, 0xffu);
    dst_p[4] |= pack_right_shift_u32(src_p->ams_slave10_failed_sensors, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u32(src_p->ams_slave10_failed_sensors, 0u, 0xffu);

    return (6);
}

int can1__main_ft24_ams_slave10_log4_unpack(
    struct can1__main_ft24_ams_slave10_log4_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    dst_p->ams_slave10_v16 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave10_v16 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave10_failed_sensors = unpack_left_shift_u32(src_p[2], 24u, 0xffu);
    dst_p->ams_slave10_failed_sensors |= unpack_left_shift_u32(src_p[3], 16u, 0xffu);
    dst_p->ams_slave10_failed_sensors |= unpack_left_shift_u32(src_p[4], 8u, 0xffu);
    dst_p->ams_slave10_failed_sensors |= unpack_right_shift_u32(src_p[5], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave10_log4_init(struct can1__main_ft24_ams_slave10_log4_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave10_log4_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave10_log4_ams_slave10_v16_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave10_log4_ams_slave10_v16_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave10_log4_ams_slave10_v16_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint32_t can1__main_ft24_ams_slave10_log4_ams_slave10_failed_sensors_encode(double value)
{
    return (uint32_t)(value);
}

double can1__main_ft24_ams_slave10_log4_ams_slave10_failed_sensors_decode(uint32_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log4_ams_slave10_failed_sensors_is_in_range(uint32_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave10_log5_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave10_log5_t *src_p,
    size_t size)
{
    uint8_t ams_slave10_t0;
    uint8_t ams_slave10_t1;
    uint8_t ams_slave10_t2;
    uint8_t ams_slave10_t3;
    uint8_t ams_slave10_t4;
    uint8_t ams_slave10_t5;
    uint8_t ams_slave10_t6;
    uint8_t ams_slave10_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave10_t0 = (uint8_t)src_p->ams_slave10_t0;
    dst_p[0] |= pack_left_shift_u8(ams_slave10_t0, 0u, 0xffu);
    ams_slave10_t1 = (uint8_t)src_p->ams_slave10_t1;
    dst_p[1] |= pack_left_shift_u8(ams_slave10_t1, 0u, 0xffu);
    ams_slave10_t2 = (uint8_t)src_p->ams_slave10_t2;
    dst_p[2] |= pack_left_shift_u8(ams_slave10_t2, 0u, 0xffu);
    ams_slave10_t3 = (uint8_t)src_p->ams_slave10_t3;
    dst_p[3] |= pack_left_shift_u8(ams_slave10_t3, 0u, 0xffu);
    ams_slave10_t4 = (uint8_t)src_p->ams_slave10_t4;
    dst_p[4] |= pack_left_shift_u8(ams_slave10_t4, 0u, 0xffu);
    ams_slave10_t5 = (uint8_t)src_p->ams_slave10_t5;
    dst_p[5] |= pack_left_shift_u8(ams_slave10_t5, 0u, 0xffu);
    ams_slave10_t6 = (uint8_t)src_p->ams_slave10_t6;
    dst_p[6] |= pack_left_shift_u8(ams_slave10_t6, 0u, 0xffu);
    ams_slave10_t7 = (uint8_t)src_p->ams_slave10_t7;
    dst_p[7] |= pack_left_shift_u8(ams_slave10_t7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave10_log5_unpack(
    struct can1__main_ft24_ams_slave10_log5_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave10_t0;
    uint8_t ams_slave10_t1;
    uint8_t ams_slave10_t2;
    uint8_t ams_slave10_t3;
    uint8_t ams_slave10_t4;
    uint8_t ams_slave10_t5;
    uint8_t ams_slave10_t6;
    uint8_t ams_slave10_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave10_t0 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave10_t0 = (int8_t)ams_slave10_t0;
    ams_slave10_t1 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave10_t1 = (int8_t)ams_slave10_t1;
    ams_slave10_t2 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave10_t2 = (int8_t)ams_slave10_t2;
    ams_slave10_t3 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave10_t3 = (int8_t)ams_slave10_t3;
    ams_slave10_t4 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave10_t4 = (int8_t)ams_slave10_t4;
    ams_slave10_t5 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave10_t5 = (int8_t)ams_slave10_t5;
    ams_slave10_t6 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave10_t6 = (int8_t)ams_slave10_t6;
    ams_slave10_t7 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave10_t7 = (int8_t)ams_slave10_t7;

    return (0);
}

int can1__main_ft24_ams_slave10_log5_init(struct can1__main_ft24_ams_slave10_log5_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave10_log5_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave10_log5_ams_slave10_t0_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log5_ams_slave10_t0_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log5_ams_slave10_t0_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave10_log5_ams_slave10_t1_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log5_ams_slave10_t1_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log5_ams_slave10_t1_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave10_log5_ams_slave10_t2_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log5_ams_slave10_t2_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log5_ams_slave10_t2_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave10_log5_ams_slave10_t3_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log5_ams_slave10_t3_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log5_ams_slave10_t3_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave10_log5_ams_slave10_t4_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log5_ams_slave10_t4_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log5_ams_slave10_t4_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave10_log5_ams_slave10_t5_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log5_ams_slave10_t5_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log5_ams_slave10_t5_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave10_log5_ams_slave10_t6_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log5_ams_slave10_t6_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log5_ams_slave10_t6_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave10_log5_ams_slave10_t7_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log5_ams_slave10_t7_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log5_ams_slave10_t7_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave10_log6_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave10_log6_t *src_p,
    size_t size)
{
    uint8_t ams_slave10_t10;
    uint8_t ams_slave10_t11;
    uint8_t ams_slave10_t12;
    uint8_t ams_slave10_t13;
    uint8_t ams_slave10_t14;
    uint8_t ams_slave10_t15;
    uint8_t ams_slave10_t8;
    uint8_t ams_slave10_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave10_t8 = (uint8_t)src_p->ams_slave10_t8;
    dst_p[0] |= pack_left_shift_u8(ams_slave10_t8, 0u, 0xffu);
    ams_slave10_t9 = (uint8_t)src_p->ams_slave10_t9;
    dst_p[1] |= pack_left_shift_u8(ams_slave10_t9, 0u, 0xffu);
    ams_slave10_t10 = (uint8_t)src_p->ams_slave10_t10;
    dst_p[2] |= pack_left_shift_u8(ams_slave10_t10, 0u, 0xffu);
    ams_slave10_t11 = (uint8_t)src_p->ams_slave10_t11;
    dst_p[3] |= pack_left_shift_u8(ams_slave10_t11, 0u, 0xffu);
    ams_slave10_t12 = (uint8_t)src_p->ams_slave10_t12;
    dst_p[4] |= pack_left_shift_u8(ams_slave10_t12, 0u, 0xffu);
    ams_slave10_t13 = (uint8_t)src_p->ams_slave10_t13;
    dst_p[5] |= pack_left_shift_u8(ams_slave10_t13, 0u, 0xffu);
    ams_slave10_t14 = (uint8_t)src_p->ams_slave10_t14;
    dst_p[6] |= pack_left_shift_u8(ams_slave10_t14, 0u, 0xffu);
    ams_slave10_t15 = (uint8_t)src_p->ams_slave10_t15;
    dst_p[7] |= pack_left_shift_u8(ams_slave10_t15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave10_log6_unpack(
    struct can1__main_ft24_ams_slave10_log6_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave10_t10;
    uint8_t ams_slave10_t11;
    uint8_t ams_slave10_t12;
    uint8_t ams_slave10_t13;
    uint8_t ams_slave10_t14;
    uint8_t ams_slave10_t15;
    uint8_t ams_slave10_t8;
    uint8_t ams_slave10_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave10_t8 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave10_t8 = (int8_t)ams_slave10_t8;
    ams_slave10_t9 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave10_t9 = (int8_t)ams_slave10_t9;
    ams_slave10_t10 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave10_t10 = (int8_t)ams_slave10_t10;
    ams_slave10_t11 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave10_t11 = (int8_t)ams_slave10_t11;
    ams_slave10_t12 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave10_t12 = (int8_t)ams_slave10_t12;
    ams_slave10_t13 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave10_t13 = (int8_t)ams_slave10_t13;
    ams_slave10_t14 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave10_t14 = (int8_t)ams_slave10_t14;
    ams_slave10_t15 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave10_t15 = (int8_t)ams_slave10_t15;

    return (0);
}

int can1__main_ft24_ams_slave10_log6_init(struct can1__main_ft24_ams_slave10_log6_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave10_log6_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave10_log6_ams_slave10_t8_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log6_ams_slave10_t8_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log6_ams_slave10_t8_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave10_log6_ams_slave10_t9_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log6_ams_slave10_t9_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log6_ams_slave10_t9_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave10_log6_ams_slave10_t10_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log6_ams_slave10_t10_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log6_ams_slave10_t10_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave10_log6_ams_slave10_t11_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log6_ams_slave10_t11_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log6_ams_slave10_t11_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave10_log6_ams_slave10_t12_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log6_ams_slave10_t12_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log6_ams_slave10_t12_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave10_log6_ams_slave10_t13_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log6_ams_slave10_t13_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log6_ams_slave10_t13_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave10_log6_ams_slave10_t14_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log6_ams_slave10_t14_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log6_ams_slave10_t14_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave10_log6_ams_slave10_t15_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log6_ams_slave10_t15_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log6_ams_slave10_t15_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave10_log7_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave10_log7_t *src_p,
    size_t size)
{
    uint8_t ams_slave10_t16;
    uint8_t ams_slave10_t17;
    uint8_t ams_slave10_t18;
    uint8_t ams_slave10_t19;
    uint8_t ams_slave10_t20;
    uint8_t ams_slave10_t21;
    uint8_t ams_slave10_t22;
    uint8_t ams_slave10_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave10_t16 = (uint8_t)src_p->ams_slave10_t16;
    dst_p[0] |= pack_left_shift_u8(ams_slave10_t16, 0u, 0xffu);
    ams_slave10_t17 = (uint8_t)src_p->ams_slave10_t17;
    dst_p[1] |= pack_left_shift_u8(ams_slave10_t17, 0u, 0xffu);
    ams_slave10_t18 = (uint8_t)src_p->ams_slave10_t18;
    dst_p[2] |= pack_left_shift_u8(ams_slave10_t18, 0u, 0xffu);
    ams_slave10_t19 = (uint8_t)src_p->ams_slave10_t19;
    dst_p[3] |= pack_left_shift_u8(ams_slave10_t19, 0u, 0xffu);
    ams_slave10_t20 = (uint8_t)src_p->ams_slave10_t20;
    dst_p[4] |= pack_left_shift_u8(ams_slave10_t20, 0u, 0xffu);
    ams_slave10_t21 = (uint8_t)src_p->ams_slave10_t21;
    dst_p[5] |= pack_left_shift_u8(ams_slave10_t21, 0u, 0xffu);
    ams_slave10_t22 = (uint8_t)src_p->ams_slave10_t22;
    dst_p[6] |= pack_left_shift_u8(ams_slave10_t22, 0u, 0xffu);
    ams_slave10_t23 = (uint8_t)src_p->ams_slave10_t23;
    dst_p[7] |= pack_left_shift_u8(ams_slave10_t23, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave10_log7_unpack(
    struct can1__main_ft24_ams_slave10_log7_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave10_t16;
    uint8_t ams_slave10_t17;
    uint8_t ams_slave10_t18;
    uint8_t ams_slave10_t19;
    uint8_t ams_slave10_t20;
    uint8_t ams_slave10_t21;
    uint8_t ams_slave10_t22;
    uint8_t ams_slave10_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave10_t16 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave10_t16 = (int8_t)ams_slave10_t16;
    ams_slave10_t17 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave10_t17 = (int8_t)ams_slave10_t17;
    ams_slave10_t18 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave10_t18 = (int8_t)ams_slave10_t18;
    ams_slave10_t19 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave10_t19 = (int8_t)ams_slave10_t19;
    ams_slave10_t20 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave10_t20 = (int8_t)ams_slave10_t20;
    ams_slave10_t21 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave10_t21 = (int8_t)ams_slave10_t21;
    ams_slave10_t22 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave10_t22 = (int8_t)ams_slave10_t22;
    ams_slave10_t23 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave10_t23 = (int8_t)ams_slave10_t23;

    return (0);
}

int can1__main_ft24_ams_slave10_log7_init(struct can1__main_ft24_ams_slave10_log7_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave10_log7_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave10_log7_ams_slave10_t16_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log7_ams_slave10_t16_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log7_ams_slave10_t16_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave10_log7_ams_slave10_t17_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log7_ams_slave10_t17_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log7_ams_slave10_t17_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave10_log7_ams_slave10_t18_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log7_ams_slave10_t18_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log7_ams_slave10_t18_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave10_log7_ams_slave10_t19_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log7_ams_slave10_t19_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log7_ams_slave10_t19_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave10_log7_ams_slave10_t20_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log7_ams_slave10_t20_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log7_ams_slave10_t20_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave10_log7_ams_slave10_t21_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log7_ams_slave10_t21_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log7_ams_slave10_t21_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave10_log7_ams_slave10_t22_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log7_ams_slave10_t22_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log7_ams_slave10_t22_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave10_log7_ams_slave10_t23_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log7_ams_slave10_t23_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log7_ams_slave10_t23_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave10_log8_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave10_log8_t *src_p,
    size_t size)
{
    uint8_t ams_slave10_t24;
    uint8_t ams_slave10_t25;
    uint8_t ams_slave10_t26;
    uint8_t ams_slave10_t27;
    uint8_t ams_slave10_t28;
    uint8_t ams_slave10_t29;
    uint8_t ams_slave10_t30;
    uint8_t ams_slave10_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave10_t24 = (uint8_t)src_p->ams_slave10_t24;
    dst_p[0] |= pack_left_shift_u8(ams_slave10_t24, 0u, 0xffu);
    ams_slave10_t25 = (uint8_t)src_p->ams_slave10_t25;
    dst_p[1] |= pack_left_shift_u8(ams_slave10_t25, 0u, 0xffu);
    ams_slave10_t26 = (uint8_t)src_p->ams_slave10_t26;
    dst_p[2] |= pack_left_shift_u8(ams_slave10_t26, 0u, 0xffu);
    ams_slave10_t27 = (uint8_t)src_p->ams_slave10_t27;
    dst_p[3] |= pack_left_shift_u8(ams_slave10_t27, 0u, 0xffu);
    ams_slave10_t28 = (uint8_t)src_p->ams_slave10_t28;
    dst_p[4] |= pack_left_shift_u8(ams_slave10_t28, 0u, 0xffu);
    ams_slave10_t29 = (uint8_t)src_p->ams_slave10_t29;
    dst_p[5] |= pack_left_shift_u8(ams_slave10_t29, 0u, 0xffu);
    ams_slave10_t30 = (uint8_t)src_p->ams_slave10_t30;
    dst_p[6] |= pack_left_shift_u8(ams_slave10_t30, 0u, 0xffu);
    ams_slave10_t31 = (uint8_t)src_p->ams_slave10_t31;
    dst_p[7] |= pack_left_shift_u8(ams_slave10_t31, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave10_log8_unpack(
    struct can1__main_ft24_ams_slave10_log8_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave10_t24;
    uint8_t ams_slave10_t25;
    uint8_t ams_slave10_t26;
    uint8_t ams_slave10_t27;
    uint8_t ams_slave10_t28;
    uint8_t ams_slave10_t29;
    uint8_t ams_slave10_t30;
    uint8_t ams_slave10_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave10_t24 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave10_t24 = (int8_t)ams_slave10_t24;
    ams_slave10_t25 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave10_t25 = (int8_t)ams_slave10_t25;
    ams_slave10_t26 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave10_t26 = (int8_t)ams_slave10_t26;
    ams_slave10_t27 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave10_t27 = (int8_t)ams_slave10_t27;
    ams_slave10_t28 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave10_t28 = (int8_t)ams_slave10_t28;
    ams_slave10_t29 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave10_t29 = (int8_t)ams_slave10_t29;
    ams_slave10_t30 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave10_t30 = (int8_t)ams_slave10_t30;
    ams_slave10_t31 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave10_t31 = (int8_t)ams_slave10_t31;

    return (0);
}

int can1__main_ft24_ams_slave10_log8_init(struct can1__main_ft24_ams_slave10_log8_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave10_log8_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave10_log8_ams_slave10_t24_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log8_ams_slave10_t24_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log8_ams_slave10_t24_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave10_log8_ams_slave10_t25_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log8_ams_slave10_t25_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log8_ams_slave10_t25_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave10_log8_ams_slave10_t26_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log8_ams_slave10_t26_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log8_ams_slave10_t26_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave10_log8_ams_slave10_t27_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log8_ams_slave10_t27_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log8_ams_slave10_t27_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave10_log8_ams_slave10_t28_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log8_ams_slave10_t28_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log8_ams_slave10_t28_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave10_log8_ams_slave10_t29_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log8_ams_slave10_t29_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log8_ams_slave10_t29_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave10_log8_ams_slave10_t30_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log8_ams_slave10_t30_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log8_ams_slave10_t30_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave10_log8_ams_slave10_t31_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave10_log8_ams_slave10_t31_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_log8_ams_slave10_t31_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave11_log0_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave11_log0_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave11_v0, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave11_v0, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave11_v1, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave11_v1, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave11_v2, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave11_v2, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave11_v3, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave11_v3, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave11_log0_unpack(
    struct can1__main_ft24_ams_slave11_log0_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave11_v0 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave11_v0 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave11_v1 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave11_v1 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave11_v2 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave11_v2 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave11_v3 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave11_v3 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave11_log0_init(struct can1__main_ft24_ams_slave11_log0_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave11_log0_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave11_log0_ams_slave11_v0_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave11_log0_ams_slave11_v0_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave11_log0_ams_slave11_v0_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave11_log0_ams_slave11_v1_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave11_log0_ams_slave11_v1_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave11_log0_ams_slave11_v1_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave11_log0_ams_slave11_v2_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave11_log0_ams_slave11_v2_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave11_log0_ams_slave11_v2_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave11_log0_ams_slave11_v3_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave11_log0_ams_slave11_v3_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave11_log0_ams_slave11_v3_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave11_log1_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave11_log1_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave11_v4, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave11_v4, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave11_v5, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave11_v5, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave11_v6, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave11_v6, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave11_v7, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave11_v7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave11_log1_unpack(
    struct can1__main_ft24_ams_slave11_log1_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave11_v4 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave11_v4 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave11_v5 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave11_v5 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave11_v6 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave11_v6 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave11_v7 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave11_v7 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave11_log1_init(struct can1__main_ft24_ams_slave11_log1_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave11_log1_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave11_log1_ams_slave11_v4_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave11_log1_ams_slave11_v4_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave11_log1_ams_slave11_v4_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave11_log1_ams_slave11_v5_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave11_log1_ams_slave11_v5_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave11_log1_ams_slave11_v5_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave11_log1_ams_slave11_v6_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave11_log1_ams_slave11_v6_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave11_log1_ams_slave11_v6_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave11_log1_ams_slave11_v7_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave11_log1_ams_slave11_v7_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave11_log1_ams_slave11_v7_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave11_log2_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave11_log2_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave11_v8, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave11_v8, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave11_v9, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave11_v9, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave11_v10, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave11_v10, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave11_v11, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave11_v11, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave11_log2_unpack(
    struct can1__main_ft24_ams_slave11_log2_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave11_v8 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave11_v8 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave11_v9 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave11_v9 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave11_v10 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave11_v10 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave11_v11 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave11_v11 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave11_log2_init(struct can1__main_ft24_ams_slave11_log2_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave11_log2_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave11_log2_ams_slave11_v8_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave11_log2_ams_slave11_v8_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave11_log2_ams_slave11_v8_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave11_log2_ams_slave11_v9_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave11_log2_ams_slave11_v9_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave11_log2_ams_slave11_v9_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave11_log2_ams_slave11_v10_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave11_log2_ams_slave11_v10_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave11_log2_ams_slave11_v10_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave11_log2_ams_slave11_v11_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave11_log2_ams_slave11_v11_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave11_log2_ams_slave11_v11_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave11_log3_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave11_log3_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave11_v12, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave11_v12, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave11_v13, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave11_v13, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave11_v14, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave11_v14, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave11_v15, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave11_v15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave11_log3_unpack(
    struct can1__main_ft24_ams_slave11_log3_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave11_v12 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave11_v12 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave11_v13 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave11_v13 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave11_v14 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave11_v14 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave11_v15 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave11_v15 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave11_log3_init(struct can1__main_ft24_ams_slave11_log3_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave11_log3_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave11_log3_ams_slave11_v12_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave11_log3_ams_slave11_v12_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave11_log3_ams_slave11_v12_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave11_log3_ams_slave11_v13_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave11_log3_ams_slave11_v13_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave11_log3_ams_slave11_v13_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave11_log3_ams_slave11_v14_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave11_log3_ams_slave11_v14_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave11_log3_ams_slave11_v14_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave11_log3_ams_slave11_v15_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave11_log3_ams_slave11_v15_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave11_log3_ams_slave11_v15_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave11_log4_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave11_log4_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave11_v16, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave11_v16, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u32(src_p->ams_slave11_failed_sensors, 24u, 0xffu);
    dst_p[3] |= pack_right_shift_u32(src_p->ams_slave11_failed_sensors, 16u, 0xffu);
    dst_p[4] |= pack_right_shift_u32(src_p->ams_slave11_failed_sensors, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u32(src_p->ams_slave11_failed_sensors, 0u, 0xffu);

    return (6);
}

int can1__main_ft24_ams_slave11_log4_unpack(
    struct can1__main_ft24_ams_slave11_log4_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    dst_p->ams_slave11_v16 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave11_v16 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave11_failed_sensors = unpack_left_shift_u32(src_p[2], 24u, 0xffu);
    dst_p->ams_slave11_failed_sensors |= unpack_left_shift_u32(src_p[3], 16u, 0xffu);
    dst_p->ams_slave11_failed_sensors |= unpack_left_shift_u32(src_p[4], 8u, 0xffu);
    dst_p->ams_slave11_failed_sensors |= unpack_right_shift_u32(src_p[5], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave11_log4_init(struct can1__main_ft24_ams_slave11_log4_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave11_log4_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave11_log4_ams_slave11_v16_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave11_log4_ams_slave11_v16_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave11_log4_ams_slave11_v16_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint32_t can1__main_ft24_ams_slave11_log4_ams_slave11_failed_sensors_encode(double value)
{
    return (uint32_t)(value);
}

double can1__main_ft24_ams_slave11_log4_ams_slave11_failed_sensors_decode(uint32_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log4_ams_slave11_failed_sensors_is_in_range(uint32_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave11_log5_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave11_log5_t *src_p,
    size_t size)
{
    uint8_t ams_slave11_t0;
    uint8_t ams_slave11_t1;
    uint8_t ams_slave11_t2;
    uint8_t ams_slave11_t3;
    uint8_t ams_slave11_t4;
    uint8_t ams_slave11_t5;
    uint8_t ams_slave11_t6;
    uint8_t ams_slave11_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave11_t0 = (uint8_t)src_p->ams_slave11_t0;
    dst_p[0] |= pack_left_shift_u8(ams_slave11_t0, 0u, 0xffu);
    ams_slave11_t1 = (uint8_t)src_p->ams_slave11_t1;
    dst_p[1] |= pack_left_shift_u8(ams_slave11_t1, 0u, 0xffu);
    ams_slave11_t2 = (uint8_t)src_p->ams_slave11_t2;
    dst_p[2] |= pack_left_shift_u8(ams_slave11_t2, 0u, 0xffu);
    ams_slave11_t3 = (uint8_t)src_p->ams_slave11_t3;
    dst_p[3] |= pack_left_shift_u8(ams_slave11_t3, 0u, 0xffu);
    ams_slave11_t4 = (uint8_t)src_p->ams_slave11_t4;
    dst_p[4] |= pack_left_shift_u8(ams_slave11_t4, 0u, 0xffu);
    ams_slave11_t5 = (uint8_t)src_p->ams_slave11_t5;
    dst_p[5] |= pack_left_shift_u8(ams_slave11_t5, 0u, 0xffu);
    ams_slave11_t6 = (uint8_t)src_p->ams_slave11_t6;
    dst_p[6] |= pack_left_shift_u8(ams_slave11_t6, 0u, 0xffu);
    ams_slave11_t7 = (uint8_t)src_p->ams_slave11_t7;
    dst_p[7] |= pack_left_shift_u8(ams_slave11_t7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave11_log5_unpack(
    struct can1__main_ft24_ams_slave11_log5_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave11_t0;
    uint8_t ams_slave11_t1;
    uint8_t ams_slave11_t2;
    uint8_t ams_slave11_t3;
    uint8_t ams_slave11_t4;
    uint8_t ams_slave11_t5;
    uint8_t ams_slave11_t6;
    uint8_t ams_slave11_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave11_t0 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave11_t0 = (int8_t)ams_slave11_t0;
    ams_slave11_t1 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave11_t1 = (int8_t)ams_slave11_t1;
    ams_slave11_t2 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave11_t2 = (int8_t)ams_slave11_t2;
    ams_slave11_t3 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave11_t3 = (int8_t)ams_slave11_t3;
    ams_slave11_t4 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave11_t4 = (int8_t)ams_slave11_t4;
    ams_slave11_t5 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave11_t5 = (int8_t)ams_slave11_t5;
    ams_slave11_t6 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave11_t6 = (int8_t)ams_slave11_t6;
    ams_slave11_t7 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave11_t7 = (int8_t)ams_slave11_t7;

    return (0);
}

int can1__main_ft24_ams_slave11_log5_init(struct can1__main_ft24_ams_slave11_log5_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave11_log5_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave11_log5_ams_slave11_t0_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log5_ams_slave11_t0_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log5_ams_slave11_t0_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave11_log5_ams_slave11_t1_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log5_ams_slave11_t1_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log5_ams_slave11_t1_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave11_log5_ams_slave11_t2_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log5_ams_slave11_t2_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log5_ams_slave11_t2_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave11_log5_ams_slave11_t3_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log5_ams_slave11_t3_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log5_ams_slave11_t3_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave11_log5_ams_slave11_t4_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log5_ams_slave11_t4_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log5_ams_slave11_t4_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave11_log5_ams_slave11_t5_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log5_ams_slave11_t5_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log5_ams_slave11_t5_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave11_log5_ams_slave11_t6_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log5_ams_slave11_t6_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log5_ams_slave11_t6_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave11_log5_ams_slave11_t7_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log5_ams_slave11_t7_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log5_ams_slave11_t7_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave11_log6_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave11_log6_t *src_p,
    size_t size)
{
    uint8_t ams_slave11_t10;
    uint8_t ams_slave11_t11;
    uint8_t ams_slave11_t12;
    uint8_t ams_slave11_t13;
    uint8_t ams_slave11_t14;
    uint8_t ams_slave11_t15;
    uint8_t ams_slave11_t8;
    uint8_t ams_slave11_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave11_t8 = (uint8_t)src_p->ams_slave11_t8;
    dst_p[0] |= pack_left_shift_u8(ams_slave11_t8, 0u, 0xffu);
    ams_slave11_t9 = (uint8_t)src_p->ams_slave11_t9;
    dst_p[1] |= pack_left_shift_u8(ams_slave11_t9, 0u, 0xffu);
    ams_slave11_t10 = (uint8_t)src_p->ams_slave11_t10;
    dst_p[2] |= pack_left_shift_u8(ams_slave11_t10, 0u, 0xffu);
    ams_slave11_t11 = (uint8_t)src_p->ams_slave11_t11;
    dst_p[3] |= pack_left_shift_u8(ams_slave11_t11, 0u, 0xffu);
    ams_slave11_t12 = (uint8_t)src_p->ams_slave11_t12;
    dst_p[4] |= pack_left_shift_u8(ams_slave11_t12, 0u, 0xffu);
    ams_slave11_t13 = (uint8_t)src_p->ams_slave11_t13;
    dst_p[5] |= pack_left_shift_u8(ams_slave11_t13, 0u, 0xffu);
    ams_slave11_t14 = (uint8_t)src_p->ams_slave11_t14;
    dst_p[6] |= pack_left_shift_u8(ams_slave11_t14, 0u, 0xffu);
    ams_slave11_t15 = (uint8_t)src_p->ams_slave11_t15;
    dst_p[7] |= pack_left_shift_u8(ams_slave11_t15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave11_log6_unpack(
    struct can1__main_ft24_ams_slave11_log6_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave11_t10;
    uint8_t ams_slave11_t11;
    uint8_t ams_slave11_t12;
    uint8_t ams_slave11_t13;
    uint8_t ams_slave11_t14;
    uint8_t ams_slave11_t15;
    uint8_t ams_slave11_t8;
    uint8_t ams_slave11_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave11_t8 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave11_t8 = (int8_t)ams_slave11_t8;
    ams_slave11_t9 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave11_t9 = (int8_t)ams_slave11_t9;
    ams_slave11_t10 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave11_t10 = (int8_t)ams_slave11_t10;
    ams_slave11_t11 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave11_t11 = (int8_t)ams_slave11_t11;
    ams_slave11_t12 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave11_t12 = (int8_t)ams_slave11_t12;
    ams_slave11_t13 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave11_t13 = (int8_t)ams_slave11_t13;
    ams_slave11_t14 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave11_t14 = (int8_t)ams_slave11_t14;
    ams_slave11_t15 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave11_t15 = (int8_t)ams_slave11_t15;

    return (0);
}

int can1__main_ft24_ams_slave11_log6_init(struct can1__main_ft24_ams_slave11_log6_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave11_log6_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave11_log6_ams_slave11_t8_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log6_ams_slave11_t8_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log6_ams_slave11_t8_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave11_log6_ams_slave11_t9_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log6_ams_slave11_t9_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log6_ams_slave11_t9_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave11_log6_ams_slave11_t10_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log6_ams_slave11_t10_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log6_ams_slave11_t10_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave11_log6_ams_slave11_t11_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log6_ams_slave11_t11_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log6_ams_slave11_t11_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave11_log6_ams_slave11_t12_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log6_ams_slave11_t12_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log6_ams_slave11_t12_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave11_log6_ams_slave11_t13_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log6_ams_slave11_t13_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log6_ams_slave11_t13_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave11_log6_ams_slave11_t14_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log6_ams_slave11_t14_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log6_ams_slave11_t14_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave11_log6_ams_slave11_t15_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log6_ams_slave11_t15_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log6_ams_slave11_t15_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave11_log7_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave11_log7_t *src_p,
    size_t size)
{
    uint8_t ams_slave11_t16;
    uint8_t ams_slave11_t17;
    uint8_t ams_slave11_t18;
    uint8_t ams_slave11_t19;
    uint8_t ams_slave11_t20;
    uint8_t ams_slave11_t21;
    uint8_t ams_slave11_t22;
    uint8_t ams_slave11_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave11_t16 = (uint8_t)src_p->ams_slave11_t16;
    dst_p[0] |= pack_left_shift_u8(ams_slave11_t16, 0u, 0xffu);
    ams_slave11_t17 = (uint8_t)src_p->ams_slave11_t17;
    dst_p[1] |= pack_left_shift_u8(ams_slave11_t17, 0u, 0xffu);
    ams_slave11_t18 = (uint8_t)src_p->ams_slave11_t18;
    dst_p[2] |= pack_left_shift_u8(ams_slave11_t18, 0u, 0xffu);
    ams_slave11_t19 = (uint8_t)src_p->ams_slave11_t19;
    dst_p[3] |= pack_left_shift_u8(ams_slave11_t19, 0u, 0xffu);
    ams_slave11_t20 = (uint8_t)src_p->ams_slave11_t20;
    dst_p[4] |= pack_left_shift_u8(ams_slave11_t20, 0u, 0xffu);
    ams_slave11_t21 = (uint8_t)src_p->ams_slave11_t21;
    dst_p[5] |= pack_left_shift_u8(ams_slave11_t21, 0u, 0xffu);
    ams_slave11_t22 = (uint8_t)src_p->ams_slave11_t22;
    dst_p[6] |= pack_left_shift_u8(ams_slave11_t22, 0u, 0xffu);
    ams_slave11_t23 = (uint8_t)src_p->ams_slave11_t23;
    dst_p[7] |= pack_left_shift_u8(ams_slave11_t23, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave11_log7_unpack(
    struct can1__main_ft24_ams_slave11_log7_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave11_t16;
    uint8_t ams_slave11_t17;
    uint8_t ams_slave11_t18;
    uint8_t ams_slave11_t19;
    uint8_t ams_slave11_t20;
    uint8_t ams_slave11_t21;
    uint8_t ams_slave11_t22;
    uint8_t ams_slave11_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave11_t16 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave11_t16 = (int8_t)ams_slave11_t16;
    ams_slave11_t17 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave11_t17 = (int8_t)ams_slave11_t17;
    ams_slave11_t18 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave11_t18 = (int8_t)ams_slave11_t18;
    ams_slave11_t19 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave11_t19 = (int8_t)ams_slave11_t19;
    ams_slave11_t20 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave11_t20 = (int8_t)ams_slave11_t20;
    ams_slave11_t21 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave11_t21 = (int8_t)ams_slave11_t21;
    ams_slave11_t22 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave11_t22 = (int8_t)ams_slave11_t22;
    ams_slave11_t23 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave11_t23 = (int8_t)ams_slave11_t23;

    return (0);
}

int can1__main_ft24_ams_slave11_log7_init(struct can1__main_ft24_ams_slave11_log7_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave11_log7_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave11_log7_ams_slave11_t16_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log7_ams_slave11_t16_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log7_ams_slave11_t16_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave11_log7_ams_slave11_t17_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log7_ams_slave11_t17_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log7_ams_slave11_t17_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave11_log7_ams_slave11_t18_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log7_ams_slave11_t18_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log7_ams_slave11_t18_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave11_log7_ams_slave11_t19_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log7_ams_slave11_t19_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log7_ams_slave11_t19_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave11_log7_ams_slave11_t20_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log7_ams_slave11_t20_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log7_ams_slave11_t20_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave11_log7_ams_slave11_t21_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log7_ams_slave11_t21_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log7_ams_slave11_t21_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave11_log7_ams_slave11_t22_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log7_ams_slave11_t22_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log7_ams_slave11_t22_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave11_log7_ams_slave11_t23_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log7_ams_slave11_t23_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log7_ams_slave11_t23_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave11_log8_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave11_log8_t *src_p,
    size_t size)
{
    uint8_t ams_slave11_t24;
    uint8_t ams_slave11_t25;
    uint8_t ams_slave11_t26;
    uint8_t ams_slave11_t27;
    uint8_t ams_slave11_t28;
    uint8_t ams_slave11_t29;
    uint8_t ams_slave11_t30;
    uint8_t ams_slave11_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave11_t24 = (uint8_t)src_p->ams_slave11_t24;
    dst_p[0] |= pack_left_shift_u8(ams_slave11_t24, 0u, 0xffu);
    ams_slave11_t25 = (uint8_t)src_p->ams_slave11_t25;
    dst_p[1] |= pack_left_shift_u8(ams_slave11_t25, 0u, 0xffu);
    ams_slave11_t26 = (uint8_t)src_p->ams_slave11_t26;
    dst_p[2] |= pack_left_shift_u8(ams_slave11_t26, 0u, 0xffu);
    ams_slave11_t27 = (uint8_t)src_p->ams_slave11_t27;
    dst_p[3] |= pack_left_shift_u8(ams_slave11_t27, 0u, 0xffu);
    ams_slave11_t28 = (uint8_t)src_p->ams_slave11_t28;
    dst_p[4] |= pack_left_shift_u8(ams_slave11_t28, 0u, 0xffu);
    ams_slave11_t29 = (uint8_t)src_p->ams_slave11_t29;
    dst_p[5] |= pack_left_shift_u8(ams_slave11_t29, 0u, 0xffu);
    ams_slave11_t30 = (uint8_t)src_p->ams_slave11_t30;
    dst_p[6] |= pack_left_shift_u8(ams_slave11_t30, 0u, 0xffu);
    ams_slave11_t31 = (uint8_t)src_p->ams_slave11_t31;
    dst_p[7] |= pack_left_shift_u8(ams_slave11_t31, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave11_log8_unpack(
    struct can1__main_ft24_ams_slave11_log8_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave11_t24;
    uint8_t ams_slave11_t25;
    uint8_t ams_slave11_t26;
    uint8_t ams_slave11_t27;
    uint8_t ams_slave11_t28;
    uint8_t ams_slave11_t29;
    uint8_t ams_slave11_t30;
    uint8_t ams_slave11_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave11_t24 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave11_t24 = (int8_t)ams_slave11_t24;
    ams_slave11_t25 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave11_t25 = (int8_t)ams_slave11_t25;
    ams_slave11_t26 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave11_t26 = (int8_t)ams_slave11_t26;
    ams_slave11_t27 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave11_t27 = (int8_t)ams_slave11_t27;
    ams_slave11_t28 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave11_t28 = (int8_t)ams_slave11_t28;
    ams_slave11_t29 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave11_t29 = (int8_t)ams_slave11_t29;
    ams_slave11_t30 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave11_t30 = (int8_t)ams_slave11_t30;
    ams_slave11_t31 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave11_t31 = (int8_t)ams_slave11_t31;

    return (0);
}

int can1__main_ft24_ams_slave11_log8_init(struct can1__main_ft24_ams_slave11_log8_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave11_log8_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave11_log8_ams_slave11_t24_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log8_ams_slave11_t24_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log8_ams_slave11_t24_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave11_log8_ams_slave11_t25_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log8_ams_slave11_t25_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log8_ams_slave11_t25_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave11_log8_ams_slave11_t26_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log8_ams_slave11_t26_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log8_ams_slave11_t26_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave11_log8_ams_slave11_t27_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log8_ams_slave11_t27_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log8_ams_slave11_t27_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave11_log8_ams_slave11_t28_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log8_ams_slave11_t28_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log8_ams_slave11_t28_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave11_log8_ams_slave11_t29_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log8_ams_slave11_t29_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log8_ams_slave11_t29_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave11_log8_ams_slave11_t30_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log8_ams_slave11_t30_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log8_ams_slave11_t30_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave11_log8_ams_slave11_t31_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave11_log8_ams_slave11_t31_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_log8_ams_slave11_t31_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave12_log0_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave12_log0_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave12_v0, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave12_v0, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave12_v1, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave12_v1, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave12_v2, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave12_v2, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave12_v3, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave12_v3, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave12_log0_unpack(
    struct can1__main_ft24_ams_slave12_log0_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave12_v0 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave12_v0 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave12_v1 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave12_v1 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave12_v2 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave12_v2 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave12_v3 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave12_v3 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave12_log0_init(struct can1__main_ft24_ams_slave12_log0_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave12_log0_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave12_log0_ams_slave12_v0_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave12_log0_ams_slave12_v0_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave12_log0_ams_slave12_v0_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave12_log0_ams_slave12_v1_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave12_log0_ams_slave12_v1_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave12_log0_ams_slave12_v1_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave12_log0_ams_slave12_v2_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave12_log0_ams_slave12_v2_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave12_log0_ams_slave12_v2_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave12_log0_ams_slave12_v3_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave12_log0_ams_slave12_v3_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave12_log0_ams_slave12_v3_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave12_log1_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave12_log1_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave12_v4, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave12_v4, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave12_v5, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave12_v5, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave12_v6, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave12_v6, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave12_v7, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave12_v7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave12_log1_unpack(
    struct can1__main_ft24_ams_slave12_log1_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave12_v4 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave12_v4 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave12_v5 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave12_v5 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave12_v6 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave12_v6 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave12_v7 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave12_v7 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave12_log1_init(struct can1__main_ft24_ams_slave12_log1_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave12_log1_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave12_log1_ams_slave12_v4_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave12_log1_ams_slave12_v4_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave12_log1_ams_slave12_v4_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave12_log1_ams_slave12_v5_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave12_log1_ams_slave12_v5_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave12_log1_ams_slave12_v5_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave12_log1_ams_slave12_v6_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave12_log1_ams_slave12_v6_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave12_log1_ams_slave12_v6_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave12_log1_ams_slave12_v7_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave12_log1_ams_slave12_v7_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave12_log1_ams_slave12_v7_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave12_log2_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave12_log2_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave12_v8, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave12_v8, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave12_v9, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave12_v9, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave12_v10, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave12_v10, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave12_v11, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave12_v11, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave12_log2_unpack(
    struct can1__main_ft24_ams_slave12_log2_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave12_v8 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave12_v8 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave12_v9 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave12_v9 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave12_v10 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave12_v10 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave12_v11 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave12_v11 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave12_log2_init(struct can1__main_ft24_ams_slave12_log2_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave12_log2_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave12_log2_ams_slave12_v8_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave12_log2_ams_slave12_v8_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave12_log2_ams_slave12_v8_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave12_log2_ams_slave12_v9_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave12_log2_ams_slave12_v9_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave12_log2_ams_slave12_v9_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave12_log2_ams_slave12_v10_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave12_log2_ams_slave12_v10_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave12_log2_ams_slave12_v10_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave12_log2_ams_slave12_v11_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave12_log2_ams_slave12_v11_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave12_log2_ams_slave12_v11_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave12_log3_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave12_log3_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave12_v12, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave12_v12, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave12_v13, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave12_v13, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave12_v14, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave12_v14, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave12_v15, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave12_v15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave12_log3_unpack(
    struct can1__main_ft24_ams_slave12_log3_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave12_v12 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave12_v12 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave12_v13 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave12_v13 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave12_v14 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave12_v14 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave12_v15 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave12_v15 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave12_log3_init(struct can1__main_ft24_ams_slave12_log3_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave12_log3_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave12_log3_ams_slave12_v12_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave12_log3_ams_slave12_v12_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave12_log3_ams_slave12_v12_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave12_log3_ams_slave12_v13_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave12_log3_ams_slave12_v13_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave12_log3_ams_slave12_v13_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave12_log3_ams_slave12_v14_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave12_log3_ams_slave12_v14_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave12_log3_ams_slave12_v14_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave12_log3_ams_slave12_v15_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave12_log3_ams_slave12_v15_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave12_log3_ams_slave12_v15_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave12_log4_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave12_log4_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave12_v16, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave12_v16, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u32(src_p->ams_slave12_failed_sensors, 24u, 0xffu);
    dst_p[3] |= pack_right_shift_u32(src_p->ams_slave12_failed_sensors, 16u, 0xffu);
    dst_p[4] |= pack_right_shift_u32(src_p->ams_slave12_failed_sensors, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u32(src_p->ams_slave12_failed_sensors, 0u, 0xffu);

    return (6);
}

int can1__main_ft24_ams_slave12_log4_unpack(
    struct can1__main_ft24_ams_slave12_log4_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    dst_p->ams_slave12_v16 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave12_v16 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave12_failed_sensors = unpack_left_shift_u32(src_p[2], 24u, 0xffu);
    dst_p->ams_slave12_failed_sensors |= unpack_left_shift_u32(src_p[3], 16u, 0xffu);
    dst_p->ams_slave12_failed_sensors |= unpack_left_shift_u32(src_p[4], 8u, 0xffu);
    dst_p->ams_slave12_failed_sensors |= unpack_right_shift_u32(src_p[5], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave12_log4_init(struct can1__main_ft24_ams_slave12_log4_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave12_log4_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave12_log4_ams_slave12_v16_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave12_log4_ams_slave12_v16_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave12_log4_ams_slave12_v16_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint32_t can1__main_ft24_ams_slave12_log4_ams_slave12_failed_sensors_encode(double value)
{
    return (uint32_t)(value);
}

double can1__main_ft24_ams_slave12_log4_ams_slave12_failed_sensors_decode(uint32_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log4_ams_slave12_failed_sensors_is_in_range(uint32_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave12_log5_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave12_log5_t *src_p,
    size_t size)
{
    uint8_t ams_slave12_t0;
    uint8_t ams_slave12_t1;
    uint8_t ams_slave12_t2;
    uint8_t ams_slave12_t3;
    uint8_t ams_slave12_t4;
    uint8_t ams_slave12_t5;
    uint8_t ams_slave12_t6;
    uint8_t ams_slave12_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave12_t0 = (uint8_t)src_p->ams_slave12_t0;
    dst_p[0] |= pack_left_shift_u8(ams_slave12_t0, 0u, 0xffu);
    ams_slave12_t1 = (uint8_t)src_p->ams_slave12_t1;
    dst_p[1] |= pack_left_shift_u8(ams_slave12_t1, 0u, 0xffu);
    ams_slave12_t2 = (uint8_t)src_p->ams_slave12_t2;
    dst_p[2] |= pack_left_shift_u8(ams_slave12_t2, 0u, 0xffu);
    ams_slave12_t3 = (uint8_t)src_p->ams_slave12_t3;
    dst_p[3] |= pack_left_shift_u8(ams_slave12_t3, 0u, 0xffu);
    ams_slave12_t4 = (uint8_t)src_p->ams_slave12_t4;
    dst_p[4] |= pack_left_shift_u8(ams_slave12_t4, 0u, 0xffu);
    ams_slave12_t5 = (uint8_t)src_p->ams_slave12_t5;
    dst_p[5] |= pack_left_shift_u8(ams_slave12_t5, 0u, 0xffu);
    ams_slave12_t6 = (uint8_t)src_p->ams_slave12_t6;
    dst_p[6] |= pack_left_shift_u8(ams_slave12_t6, 0u, 0xffu);
    ams_slave12_t7 = (uint8_t)src_p->ams_slave12_t7;
    dst_p[7] |= pack_left_shift_u8(ams_slave12_t7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave12_log5_unpack(
    struct can1__main_ft24_ams_slave12_log5_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave12_t0;
    uint8_t ams_slave12_t1;
    uint8_t ams_slave12_t2;
    uint8_t ams_slave12_t3;
    uint8_t ams_slave12_t4;
    uint8_t ams_slave12_t5;
    uint8_t ams_slave12_t6;
    uint8_t ams_slave12_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave12_t0 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave12_t0 = (int8_t)ams_slave12_t0;
    ams_slave12_t1 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave12_t1 = (int8_t)ams_slave12_t1;
    ams_slave12_t2 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave12_t2 = (int8_t)ams_slave12_t2;
    ams_slave12_t3 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave12_t3 = (int8_t)ams_slave12_t3;
    ams_slave12_t4 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave12_t4 = (int8_t)ams_slave12_t4;
    ams_slave12_t5 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave12_t5 = (int8_t)ams_slave12_t5;
    ams_slave12_t6 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave12_t6 = (int8_t)ams_slave12_t6;
    ams_slave12_t7 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave12_t7 = (int8_t)ams_slave12_t7;

    return (0);
}

int can1__main_ft24_ams_slave12_log5_init(struct can1__main_ft24_ams_slave12_log5_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave12_log5_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave12_log5_ams_slave12_t0_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log5_ams_slave12_t0_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log5_ams_slave12_t0_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave12_log5_ams_slave12_t1_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log5_ams_slave12_t1_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log5_ams_slave12_t1_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave12_log5_ams_slave12_t2_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log5_ams_slave12_t2_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log5_ams_slave12_t2_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave12_log5_ams_slave12_t3_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log5_ams_slave12_t3_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log5_ams_slave12_t3_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave12_log5_ams_slave12_t4_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log5_ams_slave12_t4_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log5_ams_slave12_t4_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave12_log5_ams_slave12_t5_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log5_ams_slave12_t5_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log5_ams_slave12_t5_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave12_log5_ams_slave12_t6_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log5_ams_slave12_t6_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log5_ams_slave12_t6_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave12_log5_ams_slave12_t7_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log5_ams_slave12_t7_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log5_ams_slave12_t7_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave12_log6_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave12_log6_t *src_p,
    size_t size)
{
    uint8_t ams_slave12_t10;
    uint8_t ams_slave12_t11;
    uint8_t ams_slave12_t12;
    uint8_t ams_slave12_t13;
    uint8_t ams_slave12_t14;
    uint8_t ams_slave12_t15;
    uint8_t ams_slave12_t8;
    uint8_t ams_slave12_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave12_t8 = (uint8_t)src_p->ams_slave12_t8;
    dst_p[0] |= pack_left_shift_u8(ams_slave12_t8, 0u, 0xffu);
    ams_slave12_t9 = (uint8_t)src_p->ams_slave12_t9;
    dst_p[1] |= pack_left_shift_u8(ams_slave12_t9, 0u, 0xffu);
    ams_slave12_t10 = (uint8_t)src_p->ams_slave12_t10;
    dst_p[2] |= pack_left_shift_u8(ams_slave12_t10, 0u, 0xffu);
    ams_slave12_t11 = (uint8_t)src_p->ams_slave12_t11;
    dst_p[3] |= pack_left_shift_u8(ams_slave12_t11, 0u, 0xffu);
    ams_slave12_t12 = (uint8_t)src_p->ams_slave12_t12;
    dst_p[4] |= pack_left_shift_u8(ams_slave12_t12, 0u, 0xffu);
    ams_slave12_t13 = (uint8_t)src_p->ams_slave12_t13;
    dst_p[5] |= pack_left_shift_u8(ams_slave12_t13, 0u, 0xffu);
    ams_slave12_t14 = (uint8_t)src_p->ams_slave12_t14;
    dst_p[6] |= pack_left_shift_u8(ams_slave12_t14, 0u, 0xffu);
    ams_slave12_t15 = (uint8_t)src_p->ams_slave12_t15;
    dst_p[7] |= pack_left_shift_u8(ams_slave12_t15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave12_log6_unpack(
    struct can1__main_ft24_ams_slave12_log6_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave12_t10;
    uint8_t ams_slave12_t11;
    uint8_t ams_slave12_t12;
    uint8_t ams_slave12_t13;
    uint8_t ams_slave12_t14;
    uint8_t ams_slave12_t15;
    uint8_t ams_slave12_t8;
    uint8_t ams_slave12_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave12_t8 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave12_t8 = (int8_t)ams_slave12_t8;
    ams_slave12_t9 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave12_t9 = (int8_t)ams_slave12_t9;
    ams_slave12_t10 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave12_t10 = (int8_t)ams_slave12_t10;
    ams_slave12_t11 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave12_t11 = (int8_t)ams_slave12_t11;
    ams_slave12_t12 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave12_t12 = (int8_t)ams_slave12_t12;
    ams_slave12_t13 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave12_t13 = (int8_t)ams_slave12_t13;
    ams_slave12_t14 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave12_t14 = (int8_t)ams_slave12_t14;
    ams_slave12_t15 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave12_t15 = (int8_t)ams_slave12_t15;

    return (0);
}

int can1__main_ft24_ams_slave12_log6_init(struct can1__main_ft24_ams_slave12_log6_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave12_log6_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave12_log6_ams_slave12_t8_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log6_ams_slave12_t8_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log6_ams_slave12_t8_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave12_log6_ams_slave12_t9_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log6_ams_slave12_t9_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log6_ams_slave12_t9_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave12_log6_ams_slave12_t10_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log6_ams_slave12_t10_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log6_ams_slave12_t10_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave12_log6_ams_slave12_t11_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log6_ams_slave12_t11_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log6_ams_slave12_t11_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave12_log6_ams_slave12_t12_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log6_ams_slave12_t12_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log6_ams_slave12_t12_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave12_log6_ams_slave12_t13_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log6_ams_slave12_t13_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log6_ams_slave12_t13_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave12_log6_ams_slave12_t14_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log6_ams_slave12_t14_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log6_ams_slave12_t14_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave12_log6_ams_slave12_t15_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log6_ams_slave12_t15_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log6_ams_slave12_t15_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave12_log7_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave12_log7_t *src_p,
    size_t size)
{
    uint8_t ams_slave12_t16;
    uint8_t ams_slave12_t17;
    uint8_t ams_slave12_t18;
    uint8_t ams_slave12_t19;
    uint8_t ams_slave12_t20;
    uint8_t ams_slave12_t21;
    uint8_t ams_slave12_t22;
    uint8_t ams_slave12_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave12_t16 = (uint8_t)src_p->ams_slave12_t16;
    dst_p[0] |= pack_left_shift_u8(ams_slave12_t16, 0u, 0xffu);
    ams_slave12_t17 = (uint8_t)src_p->ams_slave12_t17;
    dst_p[1] |= pack_left_shift_u8(ams_slave12_t17, 0u, 0xffu);
    ams_slave12_t18 = (uint8_t)src_p->ams_slave12_t18;
    dst_p[2] |= pack_left_shift_u8(ams_slave12_t18, 0u, 0xffu);
    ams_slave12_t19 = (uint8_t)src_p->ams_slave12_t19;
    dst_p[3] |= pack_left_shift_u8(ams_slave12_t19, 0u, 0xffu);
    ams_slave12_t20 = (uint8_t)src_p->ams_slave12_t20;
    dst_p[4] |= pack_left_shift_u8(ams_slave12_t20, 0u, 0xffu);
    ams_slave12_t21 = (uint8_t)src_p->ams_slave12_t21;
    dst_p[5] |= pack_left_shift_u8(ams_slave12_t21, 0u, 0xffu);
    ams_slave12_t22 = (uint8_t)src_p->ams_slave12_t22;
    dst_p[6] |= pack_left_shift_u8(ams_slave12_t22, 0u, 0xffu);
    ams_slave12_t23 = (uint8_t)src_p->ams_slave12_t23;
    dst_p[7] |= pack_left_shift_u8(ams_slave12_t23, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave12_log7_unpack(
    struct can1__main_ft24_ams_slave12_log7_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave12_t16;
    uint8_t ams_slave12_t17;
    uint8_t ams_slave12_t18;
    uint8_t ams_slave12_t19;
    uint8_t ams_slave12_t20;
    uint8_t ams_slave12_t21;
    uint8_t ams_slave12_t22;
    uint8_t ams_slave12_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave12_t16 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave12_t16 = (int8_t)ams_slave12_t16;
    ams_slave12_t17 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave12_t17 = (int8_t)ams_slave12_t17;
    ams_slave12_t18 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave12_t18 = (int8_t)ams_slave12_t18;
    ams_slave12_t19 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave12_t19 = (int8_t)ams_slave12_t19;
    ams_slave12_t20 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave12_t20 = (int8_t)ams_slave12_t20;
    ams_slave12_t21 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave12_t21 = (int8_t)ams_slave12_t21;
    ams_slave12_t22 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave12_t22 = (int8_t)ams_slave12_t22;
    ams_slave12_t23 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave12_t23 = (int8_t)ams_slave12_t23;

    return (0);
}

int can1__main_ft24_ams_slave12_log7_init(struct can1__main_ft24_ams_slave12_log7_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave12_log7_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave12_log7_ams_slave12_t16_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log7_ams_slave12_t16_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log7_ams_slave12_t16_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave12_log7_ams_slave12_t17_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log7_ams_slave12_t17_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log7_ams_slave12_t17_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave12_log7_ams_slave12_t18_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log7_ams_slave12_t18_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log7_ams_slave12_t18_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave12_log7_ams_slave12_t19_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log7_ams_slave12_t19_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log7_ams_slave12_t19_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave12_log7_ams_slave12_t20_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log7_ams_slave12_t20_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log7_ams_slave12_t20_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave12_log7_ams_slave12_t21_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log7_ams_slave12_t21_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log7_ams_slave12_t21_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave12_log7_ams_slave12_t22_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log7_ams_slave12_t22_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log7_ams_slave12_t22_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave12_log7_ams_slave12_t23_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log7_ams_slave12_t23_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log7_ams_slave12_t23_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave12_log8_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave12_log8_t *src_p,
    size_t size)
{
    uint8_t ams_slave12_t24;
    uint8_t ams_slave12_t25;
    uint8_t ams_slave12_t26;
    uint8_t ams_slave12_t27;
    uint8_t ams_slave12_t28;
    uint8_t ams_slave12_t29;
    uint8_t ams_slave12_t30;
    uint8_t ams_slave12_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave12_t24 = (uint8_t)src_p->ams_slave12_t24;
    dst_p[0] |= pack_left_shift_u8(ams_slave12_t24, 0u, 0xffu);
    ams_slave12_t25 = (uint8_t)src_p->ams_slave12_t25;
    dst_p[1] |= pack_left_shift_u8(ams_slave12_t25, 0u, 0xffu);
    ams_slave12_t26 = (uint8_t)src_p->ams_slave12_t26;
    dst_p[2] |= pack_left_shift_u8(ams_slave12_t26, 0u, 0xffu);
    ams_slave12_t27 = (uint8_t)src_p->ams_slave12_t27;
    dst_p[3] |= pack_left_shift_u8(ams_slave12_t27, 0u, 0xffu);
    ams_slave12_t28 = (uint8_t)src_p->ams_slave12_t28;
    dst_p[4] |= pack_left_shift_u8(ams_slave12_t28, 0u, 0xffu);
    ams_slave12_t29 = (uint8_t)src_p->ams_slave12_t29;
    dst_p[5] |= pack_left_shift_u8(ams_slave12_t29, 0u, 0xffu);
    ams_slave12_t30 = (uint8_t)src_p->ams_slave12_t30;
    dst_p[6] |= pack_left_shift_u8(ams_slave12_t30, 0u, 0xffu);
    ams_slave12_t31 = (uint8_t)src_p->ams_slave12_t31;
    dst_p[7] |= pack_left_shift_u8(ams_slave12_t31, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave12_log8_unpack(
    struct can1__main_ft24_ams_slave12_log8_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave12_t24;
    uint8_t ams_slave12_t25;
    uint8_t ams_slave12_t26;
    uint8_t ams_slave12_t27;
    uint8_t ams_slave12_t28;
    uint8_t ams_slave12_t29;
    uint8_t ams_slave12_t30;
    uint8_t ams_slave12_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave12_t24 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave12_t24 = (int8_t)ams_slave12_t24;
    ams_slave12_t25 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave12_t25 = (int8_t)ams_slave12_t25;
    ams_slave12_t26 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave12_t26 = (int8_t)ams_slave12_t26;
    ams_slave12_t27 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave12_t27 = (int8_t)ams_slave12_t27;
    ams_slave12_t28 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave12_t28 = (int8_t)ams_slave12_t28;
    ams_slave12_t29 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave12_t29 = (int8_t)ams_slave12_t29;
    ams_slave12_t30 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave12_t30 = (int8_t)ams_slave12_t30;
    ams_slave12_t31 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave12_t31 = (int8_t)ams_slave12_t31;

    return (0);
}

int can1__main_ft24_ams_slave12_log8_init(struct can1__main_ft24_ams_slave12_log8_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave12_log8_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave12_log8_ams_slave12_t24_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log8_ams_slave12_t24_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log8_ams_slave12_t24_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave12_log8_ams_slave12_t25_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log8_ams_slave12_t25_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log8_ams_slave12_t25_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave12_log8_ams_slave12_t26_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log8_ams_slave12_t26_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log8_ams_slave12_t26_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave12_log8_ams_slave12_t27_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log8_ams_slave12_t27_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log8_ams_slave12_t27_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave12_log8_ams_slave12_t28_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log8_ams_slave12_t28_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log8_ams_slave12_t28_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave12_log8_ams_slave12_t29_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log8_ams_slave12_t29_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log8_ams_slave12_t29_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave12_log8_ams_slave12_t30_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log8_ams_slave12_t30_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log8_ams_slave12_t30_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave12_log8_ams_slave12_t31_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave12_log8_ams_slave12_t31_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_log8_ams_slave12_t31_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave13_log0_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave13_log0_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave13_v0, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave13_v0, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave13_v1, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave13_v1, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave13_v2, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave13_v2, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave13_v3, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave13_v3, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave13_log0_unpack(
    struct can1__main_ft24_ams_slave13_log0_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave13_v0 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave13_v0 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave13_v1 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave13_v1 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave13_v2 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave13_v2 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave13_v3 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave13_v3 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave13_log0_init(struct can1__main_ft24_ams_slave13_log0_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave13_log0_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave13_log0_ams_slave13_v0_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave13_log0_ams_slave13_v0_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave13_log0_ams_slave13_v0_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave13_log0_ams_slave13_v1_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave13_log0_ams_slave13_v1_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave13_log0_ams_slave13_v1_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave13_log0_ams_slave13_v2_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave13_log0_ams_slave13_v2_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave13_log0_ams_slave13_v2_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave13_log0_ams_slave13_v3_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave13_log0_ams_slave13_v3_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave13_log0_ams_slave13_v3_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave13_log1_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave13_log1_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave13_v4, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave13_v4, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave13_v5, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave13_v5, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave13_v6, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave13_v6, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave13_v7, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave13_v7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave13_log1_unpack(
    struct can1__main_ft24_ams_slave13_log1_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave13_v4 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave13_v4 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave13_v5 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave13_v5 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave13_v6 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave13_v6 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave13_v7 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave13_v7 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave13_log1_init(struct can1__main_ft24_ams_slave13_log1_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave13_log1_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave13_log1_ams_slave13_v4_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave13_log1_ams_slave13_v4_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave13_log1_ams_slave13_v4_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave13_log1_ams_slave13_v5_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave13_log1_ams_slave13_v5_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave13_log1_ams_slave13_v5_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave13_log1_ams_slave13_v6_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave13_log1_ams_slave13_v6_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave13_log1_ams_slave13_v6_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave13_log1_ams_slave13_v7_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave13_log1_ams_slave13_v7_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave13_log1_ams_slave13_v7_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave13_log2_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave13_log2_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave13_v8, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave13_v8, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave13_v9, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave13_v9, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave13_v10, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave13_v10, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave13_v11, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave13_v11, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave13_log2_unpack(
    struct can1__main_ft24_ams_slave13_log2_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave13_v8 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave13_v8 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave13_v9 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave13_v9 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave13_v10 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave13_v10 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave13_v11 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave13_v11 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave13_log2_init(struct can1__main_ft24_ams_slave13_log2_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave13_log2_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave13_log2_ams_slave13_v8_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave13_log2_ams_slave13_v8_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave13_log2_ams_slave13_v8_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave13_log2_ams_slave13_v9_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave13_log2_ams_slave13_v9_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave13_log2_ams_slave13_v9_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave13_log2_ams_slave13_v10_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave13_log2_ams_slave13_v10_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave13_log2_ams_slave13_v10_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave13_log2_ams_slave13_v11_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave13_log2_ams_slave13_v11_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave13_log2_ams_slave13_v11_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave13_log3_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave13_log3_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave13_v12, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave13_v12, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave13_v13, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave13_v13, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave13_v14, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave13_v14, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave13_v15, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave13_v15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave13_log3_unpack(
    struct can1__main_ft24_ams_slave13_log3_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave13_v12 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave13_v12 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave13_v13 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave13_v13 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave13_v14 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave13_v14 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave13_v15 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave13_v15 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave13_log3_init(struct can1__main_ft24_ams_slave13_log3_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave13_log3_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave13_log3_ams_slave13_v12_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave13_log3_ams_slave13_v12_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave13_log3_ams_slave13_v12_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave13_log3_ams_slave13_v13_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave13_log3_ams_slave13_v13_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave13_log3_ams_slave13_v13_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave13_log3_ams_slave13_v14_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave13_log3_ams_slave13_v14_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave13_log3_ams_slave13_v14_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave13_log3_ams_slave13_v15_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave13_log3_ams_slave13_v15_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave13_log3_ams_slave13_v15_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave13_log4_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave13_log4_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave13_v16, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave13_v16, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u32(src_p->ams_slave13_failed_sensors, 24u, 0xffu);
    dst_p[3] |= pack_right_shift_u32(src_p->ams_slave13_failed_sensors, 16u, 0xffu);
    dst_p[4] |= pack_right_shift_u32(src_p->ams_slave13_failed_sensors, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u32(src_p->ams_slave13_failed_sensors, 0u, 0xffu);

    return (6);
}

int can1__main_ft24_ams_slave13_log4_unpack(
    struct can1__main_ft24_ams_slave13_log4_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    dst_p->ams_slave13_v16 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave13_v16 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave13_failed_sensors = unpack_left_shift_u32(src_p[2], 24u, 0xffu);
    dst_p->ams_slave13_failed_sensors |= unpack_left_shift_u32(src_p[3], 16u, 0xffu);
    dst_p->ams_slave13_failed_sensors |= unpack_left_shift_u32(src_p[4], 8u, 0xffu);
    dst_p->ams_slave13_failed_sensors |= unpack_right_shift_u32(src_p[5], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave13_log4_init(struct can1__main_ft24_ams_slave13_log4_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave13_log4_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave13_log4_ams_slave13_v16_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave13_log4_ams_slave13_v16_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave13_log4_ams_slave13_v16_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint32_t can1__main_ft24_ams_slave13_log4_ams_slave13_failed_sensors_encode(double value)
{
    return (uint32_t)(value);
}

double can1__main_ft24_ams_slave13_log4_ams_slave13_failed_sensors_decode(uint32_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log4_ams_slave13_failed_sensors_is_in_range(uint32_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave13_log5_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave13_log5_t *src_p,
    size_t size)
{
    uint8_t ams_slave13_t0;
    uint8_t ams_slave13_t1;
    uint8_t ams_slave13_t2;
    uint8_t ams_slave13_t3;
    uint8_t ams_slave13_t4;
    uint8_t ams_slave13_t5;
    uint8_t ams_slave13_t6;
    uint8_t ams_slave13_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave13_t0 = (uint8_t)src_p->ams_slave13_t0;
    dst_p[0] |= pack_left_shift_u8(ams_slave13_t0, 0u, 0xffu);
    ams_slave13_t1 = (uint8_t)src_p->ams_slave13_t1;
    dst_p[1] |= pack_left_shift_u8(ams_slave13_t1, 0u, 0xffu);
    ams_slave13_t2 = (uint8_t)src_p->ams_slave13_t2;
    dst_p[2] |= pack_left_shift_u8(ams_slave13_t2, 0u, 0xffu);
    ams_slave13_t3 = (uint8_t)src_p->ams_slave13_t3;
    dst_p[3] |= pack_left_shift_u8(ams_slave13_t3, 0u, 0xffu);
    ams_slave13_t4 = (uint8_t)src_p->ams_slave13_t4;
    dst_p[4] |= pack_left_shift_u8(ams_slave13_t4, 0u, 0xffu);
    ams_slave13_t5 = (uint8_t)src_p->ams_slave13_t5;
    dst_p[5] |= pack_left_shift_u8(ams_slave13_t5, 0u, 0xffu);
    ams_slave13_t6 = (uint8_t)src_p->ams_slave13_t6;
    dst_p[6] |= pack_left_shift_u8(ams_slave13_t6, 0u, 0xffu);
    ams_slave13_t7 = (uint8_t)src_p->ams_slave13_t7;
    dst_p[7] |= pack_left_shift_u8(ams_slave13_t7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave13_log5_unpack(
    struct can1__main_ft24_ams_slave13_log5_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave13_t0;
    uint8_t ams_slave13_t1;
    uint8_t ams_slave13_t2;
    uint8_t ams_slave13_t3;
    uint8_t ams_slave13_t4;
    uint8_t ams_slave13_t5;
    uint8_t ams_slave13_t6;
    uint8_t ams_slave13_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave13_t0 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave13_t0 = (int8_t)ams_slave13_t0;
    ams_slave13_t1 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave13_t1 = (int8_t)ams_slave13_t1;
    ams_slave13_t2 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave13_t2 = (int8_t)ams_slave13_t2;
    ams_slave13_t3 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave13_t3 = (int8_t)ams_slave13_t3;
    ams_slave13_t4 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave13_t4 = (int8_t)ams_slave13_t4;
    ams_slave13_t5 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave13_t5 = (int8_t)ams_slave13_t5;
    ams_slave13_t6 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave13_t6 = (int8_t)ams_slave13_t6;
    ams_slave13_t7 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave13_t7 = (int8_t)ams_slave13_t7;

    return (0);
}

int can1__main_ft24_ams_slave13_log5_init(struct can1__main_ft24_ams_slave13_log5_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave13_log5_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave13_log5_ams_slave13_t0_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log5_ams_slave13_t0_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log5_ams_slave13_t0_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave13_log5_ams_slave13_t1_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log5_ams_slave13_t1_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log5_ams_slave13_t1_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave13_log5_ams_slave13_t2_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log5_ams_slave13_t2_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log5_ams_slave13_t2_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave13_log5_ams_slave13_t3_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log5_ams_slave13_t3_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log5_ams_slave13_t3_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave13_log5_ams_slave13_t4_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log5_ams_slave13_t4_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log5_ams_slave13_t4_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave13_log5_ams_slave13_t5_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log5_ams_slave13_t5_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log5_ams_slave13_t5_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave13_log5_ams_slave13_t6_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log5_ams_slave13_t6_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log5_ams_slave13_t6_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave13_log5_ams_slave13_t7_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log5_ams_slave13_t7_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log5_ams_slave13_t7_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave13_log6_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave13_log6_t *src_p,
    size_t size)
{
    uint8_t ams_slave13_t10;
    uint8_t ams_slave13_t11;
    uint8_t ams_slave13_t12;
    uint8_t ams_slave13_t13;
    uint8_t ams_slave13_t14;
    uint8_t ams_slave13_t15;
    uint8_t ams_slave13_t8;
    uint8_t ams_slave13_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave13_t8 = (uint8_t)src_p->ams_slave13_t8;
    dst_p[0] |= pack_left_shift_u8(ams_slave13_t8, 0u, 0xffu);
    ams_slave13_t9 = (uint8_t)src_p->ams_slave13_t9;
    dst_p[1] |= pack_left_shift_u8(ams_slave13_t9, 0u, 0xffu);
    ams_slave13_t10 = (uint8_t)src_p->ams_slave13_t10;
    dst_p[2] |= pack_left_shift_u8(ams_slave13_t10, 0u, 0xffu);
    ams_slave13_t11 = (uint8_t)src_p->ams_slave13_t11;
    dst_p[3] |= pack_left_shift_u8(ams_slave13_t11, 0u, 0xffu);
    ams_slave13_t12 = (uint8_t)src_p->ams_slave13_t12;
    dst_p[4] |= pack_left_shift_u8(ams_slave13_t12, 0u, 0xffu);
    ams_slave13_t13 = (uint8_t)src_p->ams_slave13_t13;
    dst_p[5] |= pack_left_shift_u8(ams_slave13_t13, 0u, 0xffu);
    ams_slave13_t14 = (uint8_t)src_p->ams_slave13_t14;
    dst_p[6] |= pack_left_shift_u8(ams_slave13_t14, 0u, 0xffu);
    ams_slave13_t15 = (uint8_t)src_p->ams_slave13_t15;
    dst_p[7] |= pack_left_shift_u8(ams_slave13_t15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave13_log6_unpack(
    struct can1__main_ft24_ams_slave13_log6_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave13_t10;
    uint8_t ams_slave13_t11;
    uint8_t ams_slave13_t12;
    uint8_t ams_slave13_t13;
    uint8_t ams_slave13_t14;
    uint8_t ams_slave13_t15;
    uint8_t ams_slave13_t8;
    uint8_t ams_slave13_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave13_t8 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave13_t8 = (int8_t)ams_slave13_t8;
    ams_slave13_t9 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave13_t9 = (int8_t)ams_slave13_t9;
    ams_slave13_t10 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave13_t10 = (int8_t)ams_slave13_t10;
    ams_slave13_t11 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave13_t11 = (int8_t)ams_slave13_t11;
    ams_slave13_t12 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave13_t12 = (int8_t)ams_slave13_t12;
    ams_slave13_t13 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave13_t13 = (int8_t)ams_slave13_t13;
    ams_slave13_t14 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave13_t14 = (int8_t)ams_slave13_t14;
    ams_slave13_t15 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave13_t15 = (int8_t)ams_slave13_t15;

    return (0);
}

int can1__main_ft24_ams_slave13_log6_init(struct can1__main_ft24_ams_slave13_log6_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave13_log6_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave13_log6_ams_slave13_t8_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log6_ams_slave13_t8_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log6_ams_slave13_t8_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave13_log6_ams_slave13_t9_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log6_ams_slave13_t9_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log6_ams_slave13_t9_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave13_log6_ams_slave13_t10_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log6_ams_slave13_t10_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log6_ams_slave13_t10_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave13_log6_ams_slave13_t11_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log6_ams_slave13_t11_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log6_ams_slave13_t11_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave13_log6_ams_slave13_t12_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log6_ams_slave13_t12_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log6_ams_slave13_t12_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave13_log6_ams_slave13_t13_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log6_ams_slave13_t13_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log6_ams_slave13_t13_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave13_log6_ams_slave13_t14_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log6_ams_slave13_t14_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log6_ams_slave13_t14_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave13_log6_ams_slave13_t15_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log6_ams_slave13_t15_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log6_ams_slave13_t15_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave13_log7_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave13_log7_t *src_p,
    size_t size)
{
    uint8_t ams_slave13_t16;
    uint8_t ams_slave13_t17;
    uint8_t ams_slave13_t18;
    uint8_t ams_slave13_t19;
    uint8_t ams_slave13_t20;
    uint8_t ams_slave13_t21;
    uint8_t ams_slave13_t22;
    uint8_t ams_slave13_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave13_t16 = (uint8_t)src_p->ams_slave13_t16;
    dst_p[0] |= pack_left_shift_u8(ams_slave13_t16, 0u, 0xffu);
    ams_slave13_t17 = (uint8_t)src_p->ams_slave13_t17;
    dst_p[1] |= pack_left_shift_u8(ams_slave13_t17, 0u, 0xffu);
    ams_slave13_t18 = (uint8_t)src_p->ams_slave13_t18;
    dst_p[2] |= pack_left_shift_u8(ams_slave13_t18, 0u, 0xffu);
    ams_slave13_t19 = (uint8_t)src_p->ams_slave13_t19;
    dst_p[3] |= pack_left_shift_u8(ams_slave13_t19, 0u, 0xffu);
    ams_slave13_t20 = (uint8_t)src_p->ams_slave13_t20;
    dst_p[4] |= pack_left_shift_u8(ams_slave13_t20, 0u, 0xffu);
    ams_slave13_t21 = (uint8_t)src_p->ams_slave13_t21;
    dst_p[5] |= pack_left_shift_u8(ams_slave13_t21, 0u, 0xffu);
    ams_slave13_t22 = (uint8_t)src_p->ams_slave13_t22;
    dst_p[6] |= pack_left_shift_u8(ams_slave13_t22, 0u, 0xffu);
    ams_slave13_t23 = (uint8_t)src_p->ams_slave13_t23;
    dst_p[7] |= pack_left_shift_u8(ams_slave13_t23, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave13_log7_unpack(
    struct can1__main_ft24_ams_slave13_log7_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave13_t16;
    uint8_t ams_slave13_t17;
    uint8_t ams_slave13_t18;
    uint8_t ams_slave13_t19;
    uint8_t ams_slave13_t20;
    uint8_t ams_slave13_t21;
    uint8_t ams_slave13_t22;
    uint8_t ams_slave13_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave13_t16 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave13_t16 = (int8_t)ams_slave13_t16;
    ams_slave13_t17 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave13_t17 = (int8_t)ams_slave13_t17;
    ams_slave13_t18 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave13_t18 = (int8_t)ams_slave13_t18;
    ams_slave13_t19 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave13_t19 = (int8_t)ams_slave13_t19;
    ams_slave13_t20 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave13_t20 = (int8_t)ams_slave13_t20;
    ams_slave13_t21 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave13_t21 = (int8_t)ams_slave13_t21;
    ams_slave13_t22 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave13_t22 = (int8_t)ams_slave13_t22;
    ams_slave13_t23 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave13_t23 = (int8_t)ams_slave13_t23;

    return (0);
}

int can1__main_ft24_ams_slave13_log7_init(struct can1__main_ft24_ams_slave13_log7_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave13_log7_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave13_log7_ams_slave13_t16_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log7_ams_slave13_t16_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log7_ams_slave13_t16_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave13_log7_ams_slave13_t17_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log7_ams_slave13_t17_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log7_ams_slave13_t17_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave13_log7_ams_slave13_t18_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log7_ams_slave13_t18_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log7_ams_slave13_t18_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave13_log7_ams_slave13_t19_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log7_ams_slave13_t19_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log7_ams_slave13_t19_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave13_log7_ams_slave13_t20_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log7_ams_slave13_t20_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log7_ams_slave13_t20_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave13_log7_ams_slave13_t21_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log7_ams_slave13_t21_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log7_ams_slave13_t21_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave13_log7_ams_slave13_t22_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log7_ams_slave13_t22_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log7_ams_slave13_t22_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave13_log7_ams_slave13_t23_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log7_ams_slave13_t23_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log7_ams_slave13_t23_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave13_log8_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave13_log8_t *src_p,
    size_t size)
{
    uint8_t ams_slave13_t24;
    uint8_t ams_slave13_t25;
    uint8_t ams_slave13_t26;
    uint8_t ams_slave13_t27;
    uint8_t ams_slave13_t28;
    uint8_t ams_slave13_t29;
    uint8_t ams_slave13_t30;
    uint8_t ams_slave13_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave13_t24 = (uint8_t)src_p->ams_slave13_t24;
    dst_p[0] |= pack_left_shift_u8(ams_slave13_t24, 0u, 0xffu);
    ams_slave13_t25 = (uint8_t)src_p->ams_slave13_t25;
    dst_p[1] |= pack_left_shift_u8(ams_slave13_t25, 0u, 0xffu);
    ams_slave13_t26 = (uint8_t)src_p->ams_slave13_t26;
    dst_p[2] |= pack_left_shift_u8(ams_slave13_t26, 0u, 0xffu);
    ams_slave13_t27 = (uint8_t)src_p->ams_slave13_t27;
    dst_p[3] |= pack_left_shift_u8(ams_slave13_t27, 0u, 0xffu);
    ams_slave13_t28 = (uint8_t)src_p->ams_slave13_t28;
    dst_p[4] |= pack_left_shift_u8(ams_slave13_t28, 0u, 0xffu);
    ams_slave13_t29 = (uint8_t)src_p->ams_slave13_t29;
    dst_p[5] |= pack_left_shift_u8(ams_slave13_t29, 0u, 0xffu);
    ams_slave13_t30 = (uint8_t)src_p->ams_slave13_t30;
    dst_p[6] |= pack_left_shift_u8(ams_slave13_t30, 0u, 0xffu);
    ams_slave13_t31 = (uint8_t)src_p->ams_slave13_t31;
    dst_p[7] |= pack_left_shift_u8(ams_slave13_t31, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave13_log8_unpack(
    struct can1__main_ft24_ams_slave13_log8_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave13_t24;
    uint8_t ams_slave13_t25;
    uint8_t ams_slave13_t26;
    uint8_t ams_slave13_t27;
    uint8_t ams_slave13_t28;
    uint8_t ams_slave13_t29;
    uint8_t ams_slave13_t30;
    uint8_t ams_slave13_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave13_t24 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave13_t24 = (int8_t)ams_slave13_t24;
    ams_slave13_t25 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave13_t25 = (int8_t)ams_slave13_t25;
    ams_slave13_t26 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave13_t26 = (int8_t)ams_slave13_t26;
    ams_slave13_t27 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave13_t27 = (int8_t)ams_slave13_t27;
    ams_slave13_t28 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave13_t28 = (int8_t)ams_slave13_t28;
    ams_slave13_t29 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave13_t29 = (int8_t)ams_slave13_t29;
    ams_slave13_t30 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave13_t30 = (int8_t)ams_slave13_t30;
    ams_slave13_t31 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave13_t31 = (int8_t)ams_slave13_t31;

    return (0);
}

int can1__main_ft24_ams_slave13_log8_init(struct can1__main_ft24_ams_slave13_log8_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave13_log8_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave13_log8_ams_slave13_t24_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log8_ams_slave13_t24_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log8_ams_slave13_t24_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave13_log8_ams_slave13_t25_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log8_ams_slave13_t25_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log8_ams_slave13_t25_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave13_log8_ams_slave13_t26_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log8_ams_slave13_t26_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log8_ams_slave13_t26_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave13_log8_ams_slave13_t27_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log8_ams_slave13_t27_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log8_ams_slave13_t27_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave13_log8_ams_slave13_t28_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log8_ams_slave13_t28_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log8_ams_slave13_t28_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave13_log8_ams_slave13_t29_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log8_ams_slave13_t29_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log8_ams_slave13_t29_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave13_log8_ams_slave13_t30_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log8_ams_slave13_t30_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log8_ams_slave13_t30_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave13_log8_ams_slave13_t31_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave13_log8_ams_slave13_t31_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_log8_ams_slave13_t31_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave14_log0_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave14_log0_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave14_v0, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave14_v0, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave14_v1, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave14_v1, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave14_v2, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave14_v2, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave14_v3, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave14_v3, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave14_log0_unpack(
    struct can1__main_ft24_ams_slave14_log0_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave14_v0 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave14_v0 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave14_v1 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave14_v1 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave14_v2 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave14_v2 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave14_v3 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave14_v3 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave14_log0_init(struct can1__main_ft24_ams_slave14_log0_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave14_log0_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave14_log0_ams_slave14_v0_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave14_log0_ams_slave14_v0_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave14_log0_ams_slave14_v0_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave14_log0_ams_slave14_v1_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave14_log0_ams_slave14_v1_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave14_log0_ams_slave14_v1_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave14_log0_ams_slave14_v2_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave14_log0_ams_slave14_v2_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave14_log0_ams_slave14_v2_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave14_log0_ams_slave14_v3_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave14_log0_ams_slave14_v3_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave14_log0_ams_slave14_v3_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave14_log1_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave14_log1_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave14_v4, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave14_v4, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave14_v5, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave14_v5, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave14_v6, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave14_v6, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave14_v7, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave14_v7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave14_log1_unpack(
    struct can1__main_ft24_ams_slave14_log1_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave14_v4 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave14_v4 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave14_v5 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave14_v5 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave14_v6 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave14_v6 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave14_v7 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave14_v7 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave14_log1_init(struct can1__main_ft24_ams_slave14_log1_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave14_log1_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave14_log1_ams_slave14_v4_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave14_log1_ams_slave14_v4_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave14_log1_ams_slave14_v4_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave14_log1_ams_slave14_v5_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave14_log1_ams_slave14_v5_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave14_log1_ams_slave14_v5_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave14_log1_ams_slave14_v6_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave14_log1_ams_slave14_v6_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave14_log1_ams_slave14_v6_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave14_log1_ams_slave14_v7_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave14_log1_ams_slave14_v7_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave14_log1_ams_slave14_v7_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave14_log2_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave14_log2_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave14_v8, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave14_v8, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave14_v9, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave14_v9, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave14_v10, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave14_v10, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave14_v11, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave14_v11, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave14_log2_unpack(
    struct can1__main_ft24_ams_slave14_log2_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave14_v8 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave14_v8 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave14_v9 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave14_v9 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave14_v10 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave14_v10 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave14_v11 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave14_v11 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave14_log2_init(struct can1__main_ft24_ams_slave14_log2_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave14_log2_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave14_log2_ams_slave14_v8_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave14_log2_ams_slave14_v8_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave14_log2_ams_slave14_v8_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave14_log2_ams_slave14_v9_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave14_log2_ams_slave14_v9_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave14_log2_ams_slave14_v9_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave14_log2_ams_slave14_v10_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave14_log2_ams_slave14_v10_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave14_log2_ams_slave14_v10_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave14_log2_ams_slave14_v11_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave14_log2_ams_slave14_v11_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave14_log2_ams_slave14_v11_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave14_log3_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave14_log3_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave14_v12, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave14_v12, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave14_v13, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave14_v13, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave14_v14, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave14_v14, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave14_v15, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave14_v15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave14_log3_unpack(
    struct can1__main_ft24_ams_slave14_log3_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave14_v12 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave14_v12 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave14_v13 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave14_v13 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave14_v14 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave14_v14 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave14_v15 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave14_v15 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave14_log3_init(struct can1__main_ft24_ams_slave14_log3_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave14_log3_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave14_log3_ams_slave14_v12_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave14_log3_ams_slave14_v12_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave14_log3_ams_slave14_v12_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave14_log3_ams_slave14_v13_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave14_log3_ams_slave14_v13_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave14_log3_ams_slave14_v13_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave14_log3_ams_slave14_v14_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave14_log3_ams_slave14_v14_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave14_log3_ams_slave14_v14_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave14_log3_ams_slave14_v15_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave14_log3_ams_slave14_v15_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave14_log3_ams_slave14_v15_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave14_log4_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave14_log4_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave14_v16, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave14_v16, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u32(src_p->ams_slave14_failed_sensors, 24u, 0xffu);
    dst_p[3] |= pack_right_shift_u32(src_p->ams_slave14_failed_sensors, 16u, 0xffu);
    dst_p[4] |= pack_right_shift_u32(src_p->ams_slave14_failed_sensors, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u32(src_p->ams_slave14_failed_sensors, 0u, 0xffu);

    return (6);
}

int can1__main_ft24_ams_slave14_log4_unpack(
    struct can1__main_ft24_ams_slave14_log4_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    dst_p->ams_slave14_v16 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave14_v16 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave14_failed_sensors = unpack_left_shift_u32(src_p[2], 24u, 0xffu);
    dst_p->ams_slave14_failed_sensors |= unpack_left_shift_u32(src_p[3], 16u, 0xffu);
    dst_p->ams_slave14_failed_sensors |= unpack_left_shift_u32(src_p[4], 8u, 0xffu);
    dst_p->ams_slave14_failed_sensors |= unpack_right_shift_u32(src_p[5], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave14_log4_init(struct can1__main_ft24_ams_slave14_log4_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave14_log4_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave14_log4_ams_slave14_v16_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave14_log4_ams_slave14_v16_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave14_log4_ams_slave14_v16_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint32_t can1__main_ft24_ams_slave14_log4_ams_slave14_failed_sensors_encode(double value)
{
    return (uint32_t)(value);
}

double can1__main_ft24_ams_slave14_log4_ams_slave14_failed_sensors_decode(uint32_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log4_ams_slave14_failed_sensors_is_in_range(uint32_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave14_log5_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave14_log5_t *src_p,
    size_t size)
{
    uint8_t ams_slave14_t0;
    uint8_t ams_slave14_t1;
    uint8_t ams_slave14_t2;
    uint8_t ams_slave14_t3;
    uint8_t ams_slave14_t4;
    uint8_t ams_slave14_t5;
    uint8_t ams_slave14_t6;
    uint8_t ams_slave14_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave14_t0 = (uint8_t)src_p->ams_slave14_t0;
    dst_p[0] |= pack_left_shift_u8(ams_slave14_t0, 0u, 0xffu);
    ams_slave14_t1 = (uint8_t)src_p->ams_slave14_t1;
    dst_p[1] |= pack_left_shift_u8(ams_slave14_t1, 0u, 0xffu);
    ams_slave14_t2 = (uint8_t)src_p->ams_slave14_t2;
    dst_p[2] |= pack_left_shift_u8(ams_slave14_t2, 0u, 0xffu);
    ams_slave14_t3 = (uint8_t)src_p->ams_slave14_t3;
    dst_p[3] |= pack_left_shift_u8(ams_slave14_t3, 0u, 0xffu);
    ams_slave14_t4 = (uint8_t)src_p->ams_slave14_t4;
    dst_p[4] |= pack_left_shift_u8(ams_slave14_t4, 0u, 0xffu);
    ams_slave14_t5 = (uint8_t)src_p->ams_slave14_t5;
    dst_p[5] |= pack_left_shift_u8(ams_slave14_t5, 0u, 0xffu);
    ams_slave14_t6 = (uint8_t)src_p->ams_slave14_t6;
    dst_p[6] |= pack_left_shift_u8(ams_slave14_t6, 0u, 0xffu);
    ams_slave14_t7 = (uint8_t)src_p->ams_slave14_t7;
    dst_p[7] |= pack_left_shift_u8(ams_slave14_t7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave14_log5_unpack(
    struct can1__main_ft24_ams_slave14_log5_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave14_t0;
    uint8_t ams_slave14_t1;
    uint8_t ams_slave14_t2;
    uint8_t ams_slave14_t3;
    uint8_t ams_slave14_t4;
    uint8_t ams_slave14_t5;
    uint8_t ams_slave14_t6;
    uint8_t ams_slave14_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave14_t0 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave14_t0 = (int8_t)ams_slave14_t0;
    ams_slave14_t1 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave14_t1 = (int8_t)ams_slave14_t1;
    ams_slave14_t2 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave14_t2 = (int8_t)ams_slave14_t2;
    ams_slave14_t3 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave14_t3 = (int8_t)ams_slave14_t3;
    ams_slave14_t4 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave14_t4 = (int8_t)ams_slave14_t4;
    ams_slave14_t5 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave14_t5 = (int8_t)ams_slave14_t5;
    ams_slave14_t6 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave14_t6 = (int8_t)ams_slave14_t6;
    ams_slave14_t7 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave14_t7 = (int8_t)ams_slave14_t7;

    return (0);
}

int can1__main_ft24_ams_slave14_log5_init(struct can1__main_ft24_ams_slave14_log5_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave14_log5_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave14_log5_ams_slave14_t0_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log5_ams_slave14_t0_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log5_ams_slave14_t0_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave14_log5_ams_slave14_t1_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log5_ams_slave14_t1_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log5_ams_slave14_t1_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave14_log5_ams_slave14_t2_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log5_ams_slave14_t2_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log5_ams_slave14_t2_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave14_log5_ams_slave14_t3_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log5_ams_slave14_t3_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log5_ams_slave14_t3_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave14_log5_ams_slave14_t4_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log5_ams_slave14_t4_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log5_ams_slave14_t4_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave14_log5_ams_slave14_t5_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log5_ams_slave14_t5_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log5_ams_slave14_t5_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave14_log5_ams_slave14_t6_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log5_ams_slave14_t6_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log5_ams_slave14_t6_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave14_log5_ams_slave14_t7_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log5_ams_slave14_t7_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log5_ams_slave14_t7_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave14_log6_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave14_log6_t *src_p,
    size_t size)
{
    uint8_t ams_slave14_t10;
    uint8_t ams_slave14_t11;
    uint8_t ams_slave14_t12;
    uint8_t ams_slave14_t13;
    uint8_t ams_slave14_t14;
    uint8_t ams_slave14_t15;
    uint8_t ams_slave14_t8;
    uint8_t ams_slave14_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave14_t8 = (uint8_t)src_p->ams_slave14_t8;
    dst_p[0] |= pack_left_shift_u8(ams_slave14_t8, 0u, 0xffu);
    ams_slave14_t9 = (uint8_t)src_p->ams_slave14_t9;
    dst_p[1] |= pack_left_shift_u8(ams_slave14_t9, 0u, 0xffu);
    ams_slave14_t10 = (uint8_t)src_p->ams_slave14_t10;
    dst_p[2] |= pack_left_shift_u8(ams_slave14_t10, 0u, 0xffu);
    ams_slave14_t11 = (uint8_t)src_p->ams_slave14_t11;
    dst_p[3] |= pack_left_shift_u8(ams_slave14_t11, 0u, 0xffu);
    ams_slave14_t12 = (uint8_t)src_p->ams_slave14_t12;
    dst_p[4] |= pack_left_shift_u8(ams_slave14_t12, 0u, 0xffu);
    ams_slave14_t13 = (uint8_t)src_p->ams_slave14_t13;
    dst_p[5] |= pack_left_shift_u8(ams_slave14_t13, 0u, 0xffu);
    ams_slave14_t14 = (uint8_t)src_p->ams_slave14_t14;
    dst_p[6] |= pack_left_shift_u8(ams_slave14_t14, 0u, 0xffu);
    ams_slave14_t15 = (uint8_t)src_p->ams_slave14_t15;
    dst_p[7] |= pack_left_shift_u8(ams_slave14_t15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave14_log6_unpack(
    struct can1__main_ft24_ams_slave14_log6_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave14_t10;
    uint8_t ams_slave14_t11;
    uint8_t ams_slave14_t12;
    uint8_t ams_slave14_t13;
    uint8_t ams_slave14_t14;
    uint8_t ams_slave14_t15;
    uint8_t ams_slave14_t8;
    uint8_t ams_slave14_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave14_t8 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave14_t8 = (int8_t)ams_slave14_t8;
    ams_slave14_t9 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave14_t9 = (int8_t)ams_slave14_t9;
    ams_slave14_t10 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave14_t10 = (int8_t)ams_slave14_t10;
    ams_slave14_t11 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave14_t11 = (int8_t)ams_slave14_t11;
    ams_slave14_t12 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave14_t12 = (int8_t)ams_slave14_t12;
    ams_slave14_t13 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave14_t13 = (int8_t)ams_slave14_t13;
    ams_slave14_t14 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave14_t14 = (int8_t)ams_slave14_t14;
    ams_slave14_t15 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave14_t15 = (int8_t)ams_slave14_t15;

    return (0);
}

int can1__main_ft24_ams_slave14_log6_init(struct can1__main_ft24_ams_slave14_log6_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave14_log6_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave14_log6_ams_slave14_t8_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log6_ams_slave14_t8_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log6_ams_slave14_t8_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave14_log6_ams_slave14_t9_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log6_ams_slave14_t9_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log6_ams_slave14_t9_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave14_log6_ams_slave14_t10_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log6_ams_slave14_t10_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log6_ams_slave14_t10_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave14_log6_ams_slave14_t11_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log6_ams_slave14_t11_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log6_ams_slave14_t11_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave14_log6_ams_slave14_t12_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log6_ams_slave14_t12_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log6_ams_slave14_t12_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave14_log6_ams_slave14_t13_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log6_ams_slave14_t13_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log6_ams_slave14_t13_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave14_log6_ams_slave14_t14_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log6_ams_slave14_t14_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log6_ams_slave14_t14_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave14_log6_ams_slave14_t15_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log6_ams_slave14_t15_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log6_ams_slave14_t15_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave14_log7_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave14_log7_t *src_p,
    size_t size)
{
    uint8_t ams_slave14_t16;
    uint8_t ams_slave14_t17;
    uint8_t ams_slave14_t18;
    uint8_t ams_slave14_t19;
    uint8_t ams_slave14_t20;
    uint8_t ams_slave14_t21;
    uint8_t ams_slave14_t22;
    uint8_t ams_slave14_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave14_t16 = (uint8_t)src_p->ams_slave14_t16;
    dst_p[0] |= pack_left_shift_u8(ams_slave14_t16, 0u, 0xffu);
    ams_slave14_t17 = (uint8_t)src_p->ams_slave14_t17;
    dst_p[1] |= pack_left_shift_u8(ams_slave14_t17, 0u, 0xffu);
    ams_slave14_t18 = (uint8_t)src_p->ams_slave14_t18;
    dst_p[2] |= pack_left_shift_u8(ams_slave14_t18, 0u, 0xffu);
    ams_slave14_t19 = (uint8_t)src_p->ams_slave14_t19;
    dst_p[3] |= pack_left_shift_u8(ams_slave14_t19, 0u, 0xffu);
    ams_slave14_t20 = (uint8_t)src_p->ams_slave14_t20;
    dst_p[4] |= pack_left_shift_u8(ams_slave14_t20, 0u, 0xffu);
    ams_slave14_t21 = (uint8_t)src_p->ams_slave14_t21;
    dst_p[5] |= pack_left_shift_u8(ams_slave14_t21, 0u, 0xffu);
    ams_slave14_t22 = (uint8_t)src_p->ams_slave14_t22;
    dst_p[6] |= pack_left_shift_u8(ams_slave14_t22, 0u, 0xffu);
    ams_slave14_t23 = (uint8_t)src_p->ams_slave14_t23;
    dst_p[7] |= pack_left_shift_u8(ams_slave14_t23, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave14_log7_unpack(
    struct can1__main_ft24_ams_slave14_log7_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave14_t16;
    uint8_t ams_slave14_t17;
    uint8_t ams_slave14_t18;
    uint8_t ams_slave14_t19;
    uint8_t ams_slave14_t20;
    uint8_t ams_slave14_t21;
    uint8_t ams_slave14_t22;
    uint8_t ams_slave14_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave14_t16 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave14_t16 = (int8_t)ams_slave14_t16;
    ams_slave14_t17 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave14_t17 = (int8_t)ams_slave14_t17;
    ams_slave14_t18 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave14_t18 = (int8_t)ams_slave14_t18;
    ams_slave14_t19 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave14_t19 = (int8_t)ams_slave14_t19;
    ams_slave14_t20 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave14_t20 = (int8_t)ams_slave14_t20;
    ams_slave14_t21 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave14_t21 = (int8_t)ams_slave14_t21;
    ams_slave14_t22 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave14_t22 = (int8_t)ams_slave14_t22;
    ams_slave14_t23 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave14_t23 = (int8_t)ams_slave14_t23;

    return (0);
}

int can1__main_ft24_ams_slave14_log7_init(struct can1__main_ft24_ams_slave14_log7_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave14_log7_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave14_log7_ams_slave14_t16_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log7_ams_slave14_t16_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log7_ams_slave14_t16_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave14_log7_ams_slave14_t17_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log7_ams_slave14_t17_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log7_ams_slave14_t17_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave14_log7_ams_slave14_t18_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log7_ams_slave14_t18_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log7_ams_slave14_t18_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave14_log7_ams_slave14_t19_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log7_ams_slave14_t19_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log7_ams_slave14_t19_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave14_log7_ams_slave14_t20_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log7_ams_slave14_t20_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log7_ams_slave14_t20_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave14_log7_ams_slave14_t21_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log7_ams_slave14_t21_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log7_ams_slave14_t21_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave14_log7_ams_slave14_t22_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log7_ams_slave14_t22_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log7_ams_slave14_t22_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave14_log7_ams_slave14_t23_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log7_ams_slave14_t23_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log7_ams_slave14_t23_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave14_log8_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave14_log8_t *src_p,
    size_t size)
{
    uint8_t ams_slave14_t24;
    uint8_t ams_slave14_t25;
    uint8_t ams_slave14_t26;
    uint8_t ams_slave14_t27;
    uint8_t ams_slave14_t28;
    uint8_t ams_slave14_t29;
    uint8_t ams_slave14_t30;
    uint8_t ams_slave14_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave14_t24 = (uint8_t)src_p->ams_slave14_t24;
    dst_p[0] |= pack_left_shift_u8(ams_slave14_t24, 0u, 0xffu);
    ams_slave14_t25 = (uint8_t)src_p->ams_slave14_t25;
    dst_p[1] |= pack_left_shift_u8(ams_slave14_t25, 0u, 0xffu);
    ams_slave14_t26 = (uint8_t)src_p->ams_slave14_t26;
    dst_p[2] |= pack_left_shift_u8(ams_slave14_t26, 0u, 0xffu);
    ams_slave14_t27 = (uint8_t)src_p->ams_slave14_t27;
    dst_p[3] |= pack_left_shift_u8(ams_slave14_t27, 0u, 0xffu);
    ams_slave14_t28 = (uint8_t)src_p->ams_slave14_t28;
    dst_p[4] |= pack_left_shift_u8(ams_slave14_t28, 0u, 0xffu);
    ams_slave14_t29 = (uint8_t)src_p->ams_slave14_t29;
    dst_p[5] |= pack_left_shift_u8(ams_slave14_t29, 0u, 0xffu);
    ams_slave14_t30 = (uint8_t)src_p->ams_slave14_t30;
    dst_p[6] |= pack_left_shift_u8(ams_slave14_t30, 0u, 0xffu);
    ams_slave14_t31 = (uint8_t)src_p->ams_slave14_t31;
    dst_p[7] |= pack_left_shift_u8(ams_slave14_t31, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave14_log8_unpack(
    struct can1__main_ft24_ams_slave14_log8_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave14_t24;
    uint8_t ams_slave14_t25;
    uint8_t ams_slave14_t26;
    uint8_t ams_slave14_t27;
    uint8_t ams_slave14_t28;
    uint8_t ams_slave14_t29;
    uint8_t ams_slave14_t30;
    uint8_t ams_slave14_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave14_t24 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave14_t24 = (int8_t)ams_slave14_t24;
    ams_slave14_t25 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave14_t25 = (int8_t)ams_slave14_t25;
    ams_slave14_t26 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave14_t26 = (int8_t)ams_slave14_t26;
    ams_slave14_t27 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave14_t27 = (int8_t)ams_slave14_t27;
    ams_slave14_t28 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave14_t28 = (int8_t)ams_slave14_t28;
    ams_slave14_t29 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave14_t29 = (int8_t)ams_slave14_t29;
    ams_slave14_t30 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave14_t30 = (int8_t)ams_slave14_t30;
    ams_slave14_t31 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave14_t31 = (int8_t)ams_slave14_t31;

    return (0);
}

int can1__main_ft24_ams_slave14_log8_init(struct can1__main_ft24_ams_slave14_log8_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave14_log8_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave14_log8_ams_slave14_t24_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log8_ams_slave14_t24_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log8_ams_slave14_t24_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave14_log8_ams_slave14_t25_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log8_ams_slave14_t25_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log8_ams_slave14_t25_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave14_log8_ams_slave14_t26_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log8_ams_slave14_t26_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log8_ams_slave14_t26_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave14_log8_ams_slave14_t27_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log8_ams_slave14_t27_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log8_ams_slave14_t27_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave14_log8_ams_slave14_t28_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log8_ams_slave14_t28_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log8_ams_slave14_t28_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave14_log8_ams_slave14_t29_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log8_ams_slave14_t29_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log8_ams_slave14_t29_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave14_log8_ams_slave14_t30_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log8_ams_slave14_t30_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log8_ams_slave14_t30_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave14_log8_ams_slave14_t31_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave14_log8_ams_slave14_t31_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_log8_ams_slave14_t31_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave15_log0_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave15_log0_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave15_v0, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave15_v0, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave15_v1, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave15_v1, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave15_v2, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave15_v2, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave15_v3, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave15_v3, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave15_log0_unpack(
    struct can1__main_ft24_ams_slave15_log0_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave15_v0 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave15_v0 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave15_v1 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave15_v1 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave15_v2 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave15_v2 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave15_v3 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave15_v3 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave15_log0_init(struct can1__main_ft24_ams_slave15_log0_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave15_log0_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave15_log0_ams_slave15_v0_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave15_log0_ams_slave15_v0_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave15_log0_ams_slave15_v0_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave15_log0_ams_slave15_v1_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave15_log0_ams_slave15_v1_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave15_log0_ams_slave15_v1_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave15_log0_ams_slave15_v2_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave15_log0_ams_slave15_v2_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave15_log0_ams_slave15_v2_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave15_log0_ams_slave15_v3_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave15_log0_ams_slave15_v3_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave15_log0_ams_slave15_v3_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave15_log1_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave15_log1_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave15_v4, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave15_v4, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave15_v5, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave15_v5, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave15_v6, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave15_v6, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave15_v7, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave15_v7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave15_log1_unpack(
    struct can1__main_ft24_ams_slave15_log1_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave15_v4 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave15_v4 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave15_v5 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave15_v5 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave15_v6 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave15_v6 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave15_v7 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave15_v7 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave15_log1_init(struct can1__main_ft24_ams_slave15_log1_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave15_log1_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave15_log1_ams_slave15_v4_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave15_log1_ams_slave15_v4_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave15_log1_ams_slave15_v4_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave15_log1_ams_slave15_v5_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave15_log1_ams_slave15_v5_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave15_log1_ams_slave15_v5_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave15_log1_ams_slave15_v6_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave15_log1_ams_slave15_v6_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave15_log1_ams_slave15_v6_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave15_log1_ams_slave15_v7_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave15_log1_ams_slave15_v7_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave15_log1_ams_slave15_v7_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave15_log2_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave15_log2_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave15_v8, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave15_v8, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave15_v9, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave15_v9, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave15_v10, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave15_v10, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave15_v11, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave15_v11, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave15_log2_unpack(
    struct can1__main_ft24_ams_slave15_log2_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave15_v8 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave15_v8 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave15_v9 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave15_v9 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave15_v10 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave15_v10 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave15_v11 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave15_v11 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave15_log2_init(struct can1__main_ft24_ams_slave15_log2_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave15_log2_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave15_log2_ams_slave15_v8_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave15_log2_ams_slave15_v8_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave15_log2_ams_slave15_v8_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave15_log2_ams_slave15_v9_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave15_log2_ams_slave15_v9_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave15_log2_ams_slave15_v9_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave15_log2_ams_slave15_v10_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave15_log2_ams_slave15_v10_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave15_log2_ams_slave15_v10_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave15_log2_ams_slave15_v11_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave15_log2_ams_slave15_v11_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave15_log2_ams_slave15_v11_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave15_log3_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave15_log3_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave15_v12, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave15_v12, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave15_v13, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave15_v13, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave15_v14, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave15_v14, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->ams_slave15_v15, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->ams_slave15_v15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave15_log3_unpack(
    struct can1__main_ft24_ams_slave15_log3_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave15_v12 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave15_v12 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave15_v13 = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave15_v13 |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave15_v14 = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave15_v14 |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->ams_slave15_v15 = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->ams_slave15_v15 |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave15_log3_init(struct can1__main_ft24_ams_slave15_log3_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave15_log3_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave15_log3_ams_slave15_v12_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave15_log3_ams_slave15_v12_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave15_log3_ams_slave15_v12_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave15_log3_ams_slave15_v13_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave15_log3_ams_slave15_v13_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave15_log3_ams_slave15_v13_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave15_log3_ams_slave15_v14_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave15_log3_ams_slave15_v14_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave15_log3_ams_slave15_v14_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_ams_slave15_log3_ams_slave15_v15_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave15_log3_ams_slave15_v15_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave15_log3_ams_slave15_v15_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave15_log4_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave15_log4_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    dst_p[0] |= pack_right_shift_u16(src_p->ams_slave15_v16, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->ams_slave15_v16, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u32(src_p->ams_slave15_failed_sensors, 24u, 0xffu);
    dst_p[3] |= pack_right_shift_u32(src_p->ams_slave15_failed_sensors, 16u, 0xffu);
    dst_p[4] |= pack_right_shift_u32(src_p->ams_slave15_failed_sensors, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u32(src_p->ams_slave15_failed_sensors, 0u, 0xffu);

    return (6);
}

int can1__main_ft24_ams_slave15_log4_unpack(
    struct can1__main_ft24_ams_slave15_log4_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    dst_p->ams_slave15_v16 = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->ams_slave15_v16 |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->ams_slave15_failed_sensors = unpack_left_shift_u32(src_p[2], 24u, 0xffu);
    dst_p->ams_slave15_failed_sensors |= unpack_left_shift_u32(src_p[3], 16u, 0xffu);
    dst_p->ams_slave15_failed_sensors |= unpack_left_shift_u32(src_p[4], 8u, 0xffu);
    dst_p->ams_slave15_failed_sensors |= unpack_right_shift_u32(src_p[5], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave15_log4_init(struct can1__main_ft24_ams_slave15_log4_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave15_log4_t));

    return 0;
}

uint16_t can1__main_ft24_ams_slave15_log4_ams_slave15_v16_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave15_log4_ams_slave15_v16_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave15_log4_ams_slave15_v16_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint32_t can1__main_ft24_ams_slave15_log4_ams_slave15_failed_sensors_encode(double value)
{
    return (uint32_t)(value);
}

double can1__main_ft24_ams_slave15_log4_ams_slave15_failed_sensors_decode(uint32_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log4_ams_slave15_failed_sensors_is_in_range(uint32_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave15_log5_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave15_log5_t *src_p,
    size_t size)
{
    uint8_t ams_slave15_t0;
    uint8_t ams_slave15_t1;
    uint8_t ams_slave15_t2;
    uint8_t ams_slave15_t3;
    uint8_t ams_slave15_t4;
    uint8_t ams_slave15_t5;
    uint8_t ams_slave15_t6;
    uint8_t ams_slave15_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave15_t0 = (uint8_t)src_p->ams_slave15_t0;
    dst_p[0] |= pack_left_shift_u8(ams_slave15_t0, 0u, 0xffu);
    ams_slave15_t1 = (uint8_t)src_p->ams_slave15_t1;
    dst_p[1] |= pack_left_shift_u8(ams_slave15_t1, 0u, 0xffu);
    ams_slave15_t2 = (uint8_t)src_p->ams_slave15_t2;
    dst_p[2] |= pack_left_shift_u8(ams_slave15_t2, 0u, 0xffu);
    ams_slave15_t3 = (uint8_t)src_p->ams_slave15_t3;
    dst_p[3] |= pack_left_shift_u8(ams_slave15_t3, 0u, 0xffu);
    ams_slave15_t4 = (uint8_t)src_p->ams_slave15_t4;
    dst_p[4] |= pack_left_shift_u8(ams_slave15_t4, 0u, 0xffu);
    ams_slave15_t5 = (uint8_t)src_p->ams_slave15_t5;
    dst_p[5] |= pack_left_shift_u8(ams_slave15_t5, 0u, 0xffu);
    ams_slave15_t6 = (uint8_t)src_p->ams_slave15_t6;
    dst_p[6] |= pack_left_shift_u8(ams_slave15_t6, 0u, 0xffu);
    ams_slave15_t7 = (uint8_t)src_p->ams_slave15_t7;
    dst_p[7] |= pack_left_shift_u8(ams_slave15_t7, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave15_log5_unpack(
    struct can1__main_ft24_ams_slave15_log5_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave15_t0;
    uint8_t ams_slave15_t1;
    uint8_t ams_slave15_t2;
    uint8_t ams_slave15_t3;
    uint8_t ams_slave15_t4;
    uint8_t ams_slave15_t5;
    uint8_t ams_slave15_t6;
    uint8_t ams_slave15_t7;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave15_t0 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave15_t0 = (int8_t)ams_slave15_t0;
    ams_slave15_t1 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave15_t1 = (int8_t)ams_slave15_t1;
    ams_slave15_t2 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave15_t2 = (int8_t)ams_slave15_t2;
    ams_slave15_t3 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave15_t3 = (int8_t)ams_slave15_t3;
    ams_slave15_t4 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave15_t4 = (int8_t)ams_slave15_t4;
    ams_slave15_t5 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave15_t5 = (int8_t)ams_slave15_t5;
    ams_slave15_t6 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave15_t6 = (int8_t)ams_slave15_t6;
    ams_slave15_t7 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave15_t7 = (int8_t)ams_slave15_t7;

    return (0);
}

int can1__main_ft24_ams_slave15_log5_init(struct can1__main_ft24_ams_slave15_log5_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave15_log5_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave15_log5_ams_slave15_t0_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log5_ams_slave15_t0_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log5_ams_slave15_t0_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave15_log5_ams_slave15_t1_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log5_ams_slave15_t1_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log5_ams_slave15_t1_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave15_log5_ams_slave15_t2_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log5_ams_slave15_t2_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log5_ams_slave15_t2_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave15_log5_ams_slave15_t3_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log5_ams_slave15_t3_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log5_ams_slave15_t3_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave15_log5_ams_slave15_t4_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log5_ams_slave15_t4_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log5_ams_slave15_t4_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave15_log5_ams_slave15_t5_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log5_ams_slave15_t5_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log5_ams_slave15_t5_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave15_log5_ams_slave15_t6_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log5_ams_slave15_t6_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log5_ams_slave15_t6_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave15_log5_ams_slave15_t7_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log5_ams_slave15_t7_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log5_ams_slave15_t7_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave15_log6_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave15_log6_t *src_p,
    size_t size)
{
    uint8_t ams_slave15_t10;
    uint8_t ams_slave15_t11;
    uint8_t ams_slave15_t12;
    uint8_t ams_slave15_t13;
    uint8_t ams_slave15_t14;
    uint8_t ams_slave15_t15;
    uint8_t ams_slave15_t8;
    uint8_t ams_slave15_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave15_t8 = (uint8_t)src_p->ams_slave15_t8;
    dst_p[0] |= pack_left_shift_u8(ams_slave15_t8, 0u, 0xffu);
    ams_slave15_t9 = (uint8_t)src_p->ams_slave15_t9;
    dst_p[1] |= pack_left_shift_u8(ams_slave15_t9, 0u, 0xffu);
    ams_slave15_t10 = (uint8_t)src_p->ams_slave15_t10;
    dst_p[2] |= pack_left_shift_u8(ams_slave15_t10, 0u, 0xffu);
    ams_slave15_t11 = (uint8_t)src_p->ams_slave15_t11;
    dst_p[3] |= pack_left_shift_u8(ams_slave15_t11, 0u, 0xffu);
    ams_slave15_t12 = (uint8_t)src_p->ams_slave15_t12;
    dst_p[4] |= pack_left_shift_u8(ams_slave15_t12, 0u, 0xffu);
    ams_slave15_t13 = (uint8_t)src_p->ams_slave15_t13;
    dst_p[5] |= pack_left_shift_u8(ams_slave15_t13, 0u, 0xffu);
    ams_slave15_t14 = (uint8_t)src_p->ams_slave15_t14;
    dst_p[6] |= pack_left_shift_u8(ams_slave15_t14, 0u, 0xffu);
    ams_slave15_t15 = (uint8_t)src_p->ams_slave15_t15;
    dst_p[7] |= pack_left_shift_u8(ams_slave15_t15, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave15_log6_unpack(
    struct can1__main_ft24_ams_slave15_log6_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave15_t10;
    uint8_t ams_slave15_t11;
    uint8_t ams_slave15_t12;
    uint8_t ams_slave15_t13;
    uint8_t ams_slave15_t14;
    uint8_t ams_slave15_t15;
    uint8_t ams_slave15_t8;
    uint8_t ams_slave15_t9;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave15_t8 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave15_t8 = (int8_t)ams_slave15_t8;
    ams_slave15_t9 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave15_t9 = (int8_t)ams_slave15_t9;
    ams_slave15_t10 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave15_t10 = (int8_t)ams_slave15_t10;
    ams_slave15_t11 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave15_t11 = (int8_t)ams_slave15_t11;
    ams_slave15_t12 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave15_t12 = (int8_t)ams_slave15_t12;
    ams_slave15_t13 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave15_t13 = (int8_t)ams_slave15_t13;
    ams_slave15_t14 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave15_t14 = (int8_t)ams_slave15_t14;
    ams_slave15_t15 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave15_t15 = (int8_t)ams_slave15_t15;

    return (0);
}

int can1__main_ft24_ams_slave15_log6_init(struct can1__main_ft24_ams_slave15_log6_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave15_log6_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave15_log6_ams_slave15_t8_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log6_ams_slave15_t8_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log6_ams_slave15_t8_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave15_log6_ams_slave15_t9_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log6_ams_slave15_t9_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log6_ams_slave15_t9_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave15_log6_ams_slave15_t10_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log6_ams_slave15_t10_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log6_ams_slave15_t10_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave15_log6_ams_slave15_t11_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log6_ams_slave15_t11_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log6_ams_slave15_t11_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave15_log6_ams_slave15_t12_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log6_ams_slave15_t12_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log6_ams_slave15_t12_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave15_log6_ams_slave15_t13_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log6_ams_slave15_t13_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log6_ams_slave15_t13_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave15_log6_ams_slave15_t14_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log6_ams_slave15_t14_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log6_ams_slave15_t14_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave15_log6_ams_slave15_t15_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log6_ams_slave15_t15_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log6_ams_slave15_t15_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave15_log7_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave15_log7_t *src_p,
    size_t size)
{
    uint8_t ams_slave15_t16;
    uint8_t ams_slave15_t17;
    uint8_t ams_slave15_t18;
    uint8_t ams_slave15_t19;
    uint8_t ams_slave15_t20;
    uint8_t ams_slave15_t21;
    uint8_t ams_slave15_t22;
    uint8_t ams_slave15_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave15_t16 = (uint8_t)src_p->ams_slave15_t16;
    dst_p[0] |= pack_left_shift_u8(ams_slave15_t16, 0u, 0xffu);
    ams_slave15_t17 = (uint8_t)src_p->ams_slave15_t17;
    dst_p[1] |= pack_left_shift_u8(ams_slave15_t17, 0u, 0xffu);
    ams_slave15_t18 = (uint8_t)src_p->ams_slave15_t18;
    dst_p[2] |= pack_left_shift_u8(ams_slave15_t18, 0u, 0xffu);
    ams_slave15_t19 = (uint8_t)src_p->ams_slave15_t19;
    dst_p[3] |= pack_left_shift_u8(ams_slave15_t19, 0u, 0xffu);
    ams_slave15_t20 = (uint8_t)src_p->ams_slave15_t20;
    dst_p[4] |= pack_left_shift_u8(ams_slave15_t20, 0u, 0xffu);
    ams_slave15_t21 = (uint8_t)src_p->ams_slave15_t21;
    dst_p[5] |= pack_left_shift_u8(ams_slave15_t21, 0u, 0xffu);
    ams_slave15_t22 = (uint8_t)src_p->ams_slave15_t22;
    dst_p[6] |= pack_left_shift_u8(ams_slave15_t22, 0u, 0xffu);
    ams_slave15_t23 = (uint8_t)src_p->ams_slave15_t23;
    dst_p[7] |= pack_left_shift_u8(ams_slave15_t23, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave15_log7_unpack(
    struct can1__main_ft24_ams_slave15_log7_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave15_t16;
    uint8_t ams_slave15_t17;
    uint8_t ams_slave15_t18;
    uint8_t ams_slave15_t19;
    uint8_t ams_slave15_t20;
    uint8_t ams_slave15_t21;
    uint8_t ams_slave15_t22;
    uint8_t ams_slave15_t23;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave15_t16 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave15_t16 = (int8_t)ams_slave15_t16;
    ams_slave15_t17 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave15_t17 = (int8_t)ams_slave15_t17;
    ams_slave15_t18 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave15_t18 = (int8_t)ams_slave15_t18;
    ams_slave15_t19 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave15_t19 = (int8_t)ams_slave15_t19;
    ams_slave15_t20 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave15_t20 = (int8_t)ams_slave15_t20;
    ams_slave15_t21 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave15_t21 = (int8_t)ams_slave15_t21;
    ams_slave15_t22 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave15_t22 = (int8_t)ams_slave15_t22;
    ams_slave15_t23 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave15_t23 = (int8_t)ams_slave15_t23;

    return (0);
}

int can1__main_ft24_ams_slave15_log7_init(struct can1__main_ft24_ams_slave15_log7_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave15_log7_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave15_log7_ams_slave15_t16_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log7_ams_slave15_t16_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log7_ams_slave15_t16_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave15_log7_ams_slave15_t17_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log7_ams_slave15_t17_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log7_ams_slave15_t17_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave15_log7_ams_slave15_t18_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log7_ams_slave15_t18_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log7_ams_slave15_t18_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave15_log7_ams_slave15_t19_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log7_ams_slave15_t19_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log7_ams_slave15_t19_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave15_log7_ams_slave15_t20_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log7_ams_slave15_t20_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log7_ams_slave15_t20_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave15_log7_ams_slave15_t21_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log7_ams_slave15_t21_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log7_ams_slave15_t21_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave15_log7_ams_slave15_t22_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log7_ams_slave15_t22_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log7_ams_slave15_t22_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave15_log7_ams_slave15_t23_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log7_ams_slave15_t23_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log7_ams_slave15_t23_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave15_log8_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave15_log8_t *src_p,
    size_t size)
{
    uint8_t ams_slave15_t24;
    uint8_t ams_slave15_t25;
    uint8_t ams_slave15_t26;
    uint8_t ams_slave15_t27;
    uint8_t ams_slave15_t28;
    uint8_t ams_slave15_t29;
    uint8_t ams_slave15_t30;
    uint8_t ams_slave15_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    ams_slave15_t24 = (uint8_t)src_p->ams_slave15_t24;
    dst_p[0] |= pack_left_shift_u8(ams_slave15_t24, 0u, 0xffu);
    ams_slave15_t25 = (uint8_t)src_p->ams_slave15_t25;
    dst_p[1] |= pack_left_shift_u8(ams_slave15_t25, 0u, 0xffu);
    ams_slave15_t26 = (uint8_t)src_p->ams_slave15_t26;
    dst_p[2] |= pack_left_shift_u8(ams_slave15_t26, 0u, 0xffu);
    ams_slave15_t27 = (uint8_t)src_p->ams_slave15_t27;
    dst_p[3] |= pack_left_shift_u8(ams_slave15_t27, 0u, 0xffu);
    ams_slave15_t28 = (uint8_t)src_p->ams_slave15_t28;
    dst_p[4] |= pack_left_shift_u8(ams_slave15_t28, 0u, 0xffu);
    ams_slave15_t29 = (uint8_t)src_p->ams_slave15_t29;
    dst_p[5] |= pack_left_shift_u8(ams_slave15_t29, 0u, 0xffu);
    ams_slave15_t30 = (uint8_t)src_p->ams_slave15_t30;
    dst_p[6] |= pack_left_shift_u8(ams_slave15_t30, 0u, 0xffu);
    ams_slave15_t31 = (uint8_t)src_p->ams_slave15_t31;
    dst_p[7] |= pack_left_shift_u8(ams_slave15_t31, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave15_log8_unpack(
    struct can1__main_ft24_ams_slave15_log8_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_slave15_t24;
    uint8_t ams_slave15_t25;
    uint8_t ams_slave15_t26;
    uint8_t ams_slave15_t27;
    uint8_t ams_slave15_t28;
    uint8_t ams_slave15_t29;
    uint8_t ams_slave15_t30;
    uint8_t ams_slave15_t31;

    if (size < 8u) {
        return (-EINVAL);
    }

    ams_slave15_t24 = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave15_t24 = (int8_t)ams_slave15_t24;
    ams_slave15_t25 = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave15_t25 = (int8_t)ams_slave15_t25;
    ams_slave15_t26 = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->ams_slave15_t26 = (int8_t)ams_slave15_t26;
    ams_slave15_t27 = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->ams_slave15_t27 = (int8_t)ams_slave15_t27;
    ams_slave15_t28 = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->ams_slave15_t28 = (int8_t)ams_slave15_t28;
    ams_slave15_t29 = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->ams_slave15_t29 = (int8_t)ams_slave15_t29;
    ams_slave15_t30 = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->ams_slave15_t30 = (int8_t)ams_slave15_t30;
    ams_slave15_t31 = unpack_right_shift_u8(src_p[7], 0u, 0xffu);
    dst_p->ams_slave15_t31 = (int8_t)ams_slave15_t31;

    return (0);
}

int can1__main_ft24_ams_slave15_log8_init(struct can1__main_ft24_ams_slave15_log8_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave15_log8_t));

    return 0;
}

int8_t can1__main_ft24_ams_slave15_log8_ams_slave15_t24_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log8_ams_slave15_t24_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log8_ams_slave15_t24_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave15_log8_ams_slave15_t25_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log8_ams_slave15_t25_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log8_ams_slave15_t25_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave15_log8_ams_slave15_t26_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log8_ams_slave15_t26_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log8_ams_slave15_t26_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave15_log8_ams_slave15_t27_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log8_ams_slave15_t27_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log8_ams_slave15_t27_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave15_log8_ams_slave15_t28_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log8_ams_slave15_t28_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log8_ams_slave15_t28_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave15_log8_ams_slave15_t29_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log8_ams_slave15_t29_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log8_ams_slave15_t29_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave15_log8_ams_slave15_t30_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log8_ams_slave15_t30_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log8_ams_slave15_t30_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_slave15_log8_ams_slave15_t31_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_slave15_log8_ams_slave15_t31_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_log8_ams_slave15_t31_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_jetson_rx_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_jetson_rx_t *src_p,
    size_t size)
{
    if (size < 4u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 4);

    dst_p[0] |= pack_left_shift_u8(src_p->jetson_as_mission, 0u, 0x07u);
    dst_p[0] |= pack_left_shift_u8(src_p->jetson_as_state, 3u, 0x38u);
    dst_p[0] |= pack_left_shift_u8(src_p->jetson_power_off, 6u, 0x40u);
    dst_p[0] |= pack_left_shift_u8(src_p->jetson_reset, 7u, 0x80u);
    dst_p[1] |= pack_left_shift_u8(src_p->jetson_speed, 0u, 0xffu);
    dst_p[2] |= pack_left_shift_u8(src_p->jetson_speed_x_sens, 0u, 0xffu);
    dst_p[3] |= pack_left_shift_u8(src_p->jetson_allow_torque, 0u, 0x01u);

    return (4);
}

int can1__main_ft24_jetson_rx_unpack(
    struct can1__main_ft24_jetson_rx_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 4u) {
        return (-EINVAL);
    }

    dst_p->jetson_as_mission = unpack_right_shift_u8(src_p[0], 0u, 0x07u);
    dst_p->jetson_as_state = unpack_right_shift_u8(src_p[0], 3u, 0x38u);
    dst_p->jetson_power_off = unpack_right_shift_u8(src_p[0], 6u, 0x40u);
    dst_p->jetson_reset = unpack_right_shift_u8(src_p[0], 7u, 0x80u);
    dst_p->jetson_speed = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->jetson_speed_x_sens = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->jetson_allow_torque = unpack_right_shift_u8(src_p[3], 0u, 0x01u);

    return (0);
}

int can1__main_ft24_jetson_rx_init(struct can1__main_ft24_jetson_rx_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_jetson_rx_t));

    return 0;
}

uint8_t can1__main_ft24_jetson_rx_jetson_as_mission_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_jetson_rx_jetson_as_mission_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_jetson_rx_jetson_as_mission_is_in_range(uint8_t value)
{
    return (value <= 7u);
}

uint8_t can1__main_ft24_jetson_rx_jetson_as_state_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_jetson_rx_jetson_as_state_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_jetson_rx_jetson_as_state_is_in_range(uint8_t value)
{
    return (value <= 5u);
}

uint8_t can1__main_ft24_jetson_rx_jetson_power_off_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_jetson_rx_jetson_power_off_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_jetson_rx_jetson_power_off_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_jetson_rx_jetson_reset_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_jetson_rx_jetson_reset_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_jetson_rx_jetson_reset_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_jetson_rx_jetson_speed_encode(double value)
{
    return (uint8_t)(value / 0.2);
}

double can1__main_ft24_jetson_rx_jetson_speed_decode(uint8_t value)
{
    return ((double)value * 0.2);
}

bool can1__main_ft24_jetson_rx_jetson_speed_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

uint8_t can1__main_ft24_jetson_rx_jetson_speed_x_sens_encode(double value)
{
    return (uint8_t)(value / 0.2);
}

double can1__main_ft24_jetson_rx_jetson_speed_x_sens_decode(uint8_t value)
{
    return ((double)value * 0.2);
}

bool can1__main_ft24_jetson_rx_jetson_speed_x_sens_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

uint8_t can1__main_ft24_jetson_rx_jetson_allow_torque_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_jetson_rx_jetson_allow_torque_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_jetson_rx_jetson_allow_torque_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

int can1__main_ft24_ams_slave15_status_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave15_status_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_error, 7u, 0x80u);
    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_id, 0u, 0x7fu);
    dst_p[1] |= pack_left_shift_u8(src_p->ams_slave_status_so_c, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave_status_min_cell_volt, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave_status_min_cell_volt, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave_status_max_cell_volt, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave_status_max_cell_volt, 0u, 0xffu);
    ams_slave_status_max_temp = (uint16_t)src_p->ams_slave_status_max_temp;
    dst_p[6] |= pack_right_shift_u16(ams_slave_status_max_temp, 8u, 0x0fu);
    dst_p[7] |= pack_left_shift_u16(ams_slave_status_max_temp, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave15_status_unpack(
    struct can1__main_ft24_ams_slave15_status_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave_status_error = unpack_right_shift_u8(src_p[0], 7u, 0x80u);
    dst_p->ams_slave_status_id = unpack_right_shift_u8(src_p[0], 0u, 0x7fu);
    dst_p->ams_slave_status_so_c = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    ams_slave_status_max_temp = unpack_left_shift_u16(src_p[6], 8u, 0x0fu);
    ams_slave_status_max_temp |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    if ((ams_slave_status_max_temp & (1u << 11)) != 0u) {
        ams_slave_status_max_temp |= 0xf000u;
    }

    dst_p->ams_slave_status_max_temp = (int16_t)ams_slave_status_max_temp;

    return (0);
}

int can1__main_ft24_ams_slave15_status_init(struct can1__main_ft24_ams_slave15_status_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave15_status_t));

    return 0;
}

uint8_t can1__main_ft24_ams_slave15_status_ams_slave_status_error_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave15_status_ams_slave_status_error_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_status_ams_slave_status_error_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_ams_slave15_status_ams_slave_status_id_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave15_status_ams_slave_status_id_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_status_ams_slave_status_id_is_in_range(uint8_t value)
{
    return (value <= 127u);
}

uint8_t can1__main_ft24_ams_slave15_status_ams_slave_status_so_c_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave15_status_ams_slave_status_so_c_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave15_status_ams_slave_status_so_c_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint16_t can1__main_ft24_ams_slave15_status_ams_slave_status_min_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave15_status_ams_slave_status_min_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave15_status_ams_slave_status_min_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

uint16_t can1__main_ft24_ams_slave15_status_ams_slave_status_max_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave15_status_ams_slave_status_max_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave15_status_ams_slave_status_max_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

int16_t can1__main_ft24_ams_slave15_status_ams_slave_status_max_temp_encode(double value)
{
    return (int16_t)(value / 0.0625);
}

double can1__main_ft24_ams_slave15_status_ams_slave_status_max_temp_decode(int16_t value)
{
    return ((double)value * 0.0625);
}

bool can1__main_ft24_ams_slave15_status_ams_slave_status_max_temp_is_in_range(int16_t value)
{
    return ((value >= 0) && (value <= 16));
}

int can1__main_ft24_ams_slave14_status_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave14_status_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_error, 7u, 0x80u);
    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_id, 0u, 0x7fu);
    dst_p[1] |= pack_left_shift_u8(src_p->ams_slave_status_so_c, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave_status_min_cell_volt, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave_status_min_cell_volt, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave_status_max_cell_volt, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave_status_max_cell_volt, 0u, 0xffu);
    ams_slave_status_max_temp = (uint16_t)src_p->ams_slave_status_max_temp;
    dst_p[6] |= pack_right_shift_u16(ams_slave_status_max_temp, 8u, 0x0fu);
    dst_p[7] |= pack_left_shift_u16(ams_slave_status_max_temp, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave14_status_unpack(
    struct can1__main_ft24_ams_slave14_status_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave_status_error = unpack_right_shift_u8(src_p[0], 7u, 0x80u);
    dst_p->ams_slave_status_id = unpack_right_shift_u8(src_p[0], 0u, 0x7fu);
    dst_p->ams_slave_status_so_c = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    ams_slave_status_max_temp = unpack_left_shift_u16(src_p[6], 8u, 0x0fu);
    ams_slave_status_max_temp |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    if ((ams_slave_status_max_temp & (1u << 11)) != 0u) {
        ams_slave_status_max_temp |= 0xf000u;
    }

    dst_p->ams_slave_status_max_temp = (int16_t)ams_slave_status_max_temp;

    return (0);
}

int can1__main_ft24_ams_slave14_status_init(struct can1__main_ft24_ams_slave14_status_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave14_status_t));

    return 0;
}

uint8_t can1__main_ft24_ams_slave14_status_ams_slave_status_error_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave14_status_ams_slave_status_error_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_status_ams_slave_status_error_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_ams_slave14_status_ams_slave_status_id_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave14_status_ams_slave_status_id_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_status_ams_slave_status_id_is_in_range(uint8_t value)
{
    return (value <= 127u);
}

uint8_t can1__main_ft24_ams_slave14_status_ams_slave_status_so_c_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave14_status_ams_slave_status_so_c_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave14_status_ams_slave_status_so_c_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint16_t can1__main_ft24_ams_slave14_status_ams_slave_status_min_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave14_status_ams_slave_status_min_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave14_status_ams_slave_status_min_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

uint16_t can1__main_ft24_ams_slave14_status_ams_slave_status_max_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave14_status_ams_slave_status_max_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave14_status_ams_slave_status_max_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

int16_t can1__main_ft24_ams_slave14_status_ams_slave_status_max_temp_encode(double value)
{
    return (int16_t)(value / 0.0625);
}

double can1__main_ft24_ams_slave14_status_ams_slave_status_max_temp_decode(int16_t value)
{
    return ((double)value * 0.0625);
}

bool can1__main_ft24_ams_slave14_status_ams_slave_status_max_temp_is_in_range(int16_t value)
{
    return ((value >= 0) && (value <= 16));
}

int can1__main_ft24_ams_slave13_status_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave13_status_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_error, 7u, 0x80u);
    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_id, 0u, 0x7fu);
    dst_p[1] |= pack_left_shift_u8(src_p->ams_slave_status_so_c, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave_status_min_cell_volt, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave_status_min_cell_volt, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave_status_max_cell_volt, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave_status_max_cell_volt, 0u, 0xffu);
    ams_slave_status_max_temp = (uint16_t)src_p->ams_slave_status_max_temp;
    dst_p[6] |= pack_right_shift_u16(ams_slave_status_max_temp, 8u, 0x0fu);
    dst_p[7] |= pack_left_shift_u16(ams_slave_status_max_temp, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave13_status_unpack(
    struct can1__main_ft24_ams_slave13_status_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave_status_error = unpack_right_shift_u8(src_p[0], 7u, 0x80u);
    dst_p->ams_slave_status_id = unpack_right_shift_u8(src_p[0], 0u, 0x7fu);
    dst_p->ams_slave_status_so_c = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    ams_slave_status_max_temp = unpack_left_shift_u16(src_p[6], 8u, 0x0fu);
    ams_slave_status_max_temp |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    if ((ams_slave_status_max_temp & (1u << 11)) != 0u) {
        ams_slave_status_max_temp |= 0xf000u;
    }

    dst_p->ams_slave_status_max_temp = (int16_t)ams_slave_status_max_temp;

    return (0);
}

int can1__main_ft24_ams_slave13_status_init(struct can1__main_ft24_ams_slave13_status_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave13_status_t));

    return 0;
}

uint8_t can1__main_ft24_ams_slave13_status_ams_slave_status_error_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave13_status_ams_slave_status_error_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_status_ams_slave_status_error_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_ams_slave13_status_ams_slave_status_id_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave13_status_ams_slave_status_id_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_status_ams_slave_status_id_is_in_range(uint8_t value)
{
    return (value <= 127u);
}

uint8_t can1__main_ft24_ams_slave13_status_ams_slave_status_so_c_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave13_status_ams_slave_status_so_c_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave13_status_ams_slave_status_so_c_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint16_t can1__main_ft24_ams_slave13_status_ams_slave_status_min_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave13_status_ams_slave_status_min_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave13_status_ams_slave_status_min_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

uint16_t can1__main_ft24_ams_slave13_status_ams_slave_status_max_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave13_status_ams_slave_status_max_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave13_status_ams_slave_status_max_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

int16_t can1__main_ft24_ams_slave13_status_ams_slave_status_max_temp_encode(double value)
{
    return (int16_t)(value / 0.0625);
}

double can1__main_ft24_ams_slave13_status_ams_slave_status_max_temp_decode(int16_t value)
{
    return ((double)value * 0.0625);
}

bool can1__main_ft24_ams_slave13_status_ams_slave_status_max_temp_is_in_range(int16_t value)
{
    return ((value >= 0) && (value <= 16));
}

int can1__main_ft24_ams_slave12_status_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave12_status_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_error, 7u, 0x80u);
    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_id, 0u, 0x7fu);
    dst_p[1] |= pack_left_shift_u8(src_p->ams_slave_status_so_c, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave_status_min_cell_volt, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave_status_min_cell_volt, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave_status_max_cell_volt, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave_status_max_cell_volt, 0u, 0xffu);
    ams_slave_status_max_temp = (uint16_t)src_p->ams_slave_status_max_temp;
    dst_p[6] |= pack_right_shift_u16(ams_slave_status_max_temp, 8u, 0x0fu);
    dst_p[7] |= pack_left_shift_u16(ams_slave_status_max_temp, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave12_status_unpack(
    struct can1__main_ft24_ams_slave12_status_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave_status_error = unpack_right_shift_u8(src_p[0], 7u, 0x80u);
    dst_p->ams_slave_status_id = unpack_right_shift_u8(src_p[0], 0u, 0x7fu);
    dst_p->ams_slave_status_so_c = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    ams_slave_status_max_temp = unpack_left_shift_u16(src_p[6], 8u, 0x0fu);
    ams_slave_status_max_temp |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    if ((ams_slave_status_max_temp & (1u << 11)) != 0u) {
        ams_slave_status_max_temp |= 0xf000u;
    }

    dst_p->ams_slave_status_max_temp = (int16_t)ams_slave_status_max_temp;

    return (0);
}

int can1__main_ft24_ams_slave12_status_init(struct can1__main_ft24_ams_slave12_status_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave12_status_t));

    return 0;
}

uint8_t can1__main_ft24_ams_slave12_status_ams_slave_status_error_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave12_status_ams_slave_status_error_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_status_ams_slave_status_error_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_ams_slave12_status_ams_slave_status_id_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave12_status_ams_slave_status_id_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_status_ams_slave_status_id_is_in_range(uint8_t value)
{
    return (value <= 127u);
}

uint8_t can1__main_ft24_ams_slave12_status_ams_slave_status_so_c_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave12_status_ams_slave_status_so_c_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave12_status_ams_slave_status_so_c_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint16_t can1__main_ft24_ams_slave12_status_ams_slave_status_min_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave12_status_ams_slave_status_min_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave12_status_ams_slave_status_min_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

uint16_t can1__main_ft24_ams_slave12_status_ams_slave_status_max_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave12_status_ams_slave_status_max_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave12_status_ams_slave_status_max_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

int16_t can1__main_ft24_ams_slave12_status_ams_slave_status_max_temp_encode(double value)
{
    return (int16_t)(value / 0.0625);
}

double can1__main_ft24_ams_slave12_status_ams_slave_status_max_temp_decode(int16_t value)
{
    return ((double)value * 0.0625);
}

bool can1__main_ft24_ams_slave12_status_ams_slave_status_max_temp_is_in_range(int16_t value)
{
    return ((value >= 0) && (value <= 16));
}

int can1__main_ft24_ams_slave11_status_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave11_status_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_error, 7u, 0x80u);
    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_id, 0u, 0x7fu);
    dst_p[1] |= pack_left_shift_u8(src_p->ams_slave_status_so_c, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave_status_min_cell_volt, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave_status_min_cell_volt, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave_status_max_cell_volt, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave_status_max_cell_volt, 0u, 0xffu);
    ams_slave_status_max_temp = (uint16_t)src_p->ams_slave_status_max_temp;
    dst_p[6] |= pack_right_shift_u16(ams_slave_status_max_temp, 8u, 0x0fu);
    dst_p[7] |= pack_left_shift_u16(ams_slave_status_max_temp, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave11_status_unpack(
    struct can1__main_ft24_ams_slave11_status_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave_status_error = unpack_right_shift_u8(src_p[0], 7u, 0x80u);
    dst_p->ams_slave_status_id = unpack_right_shift_u8(src_p[0], 0u, 0x7fu);
    dst_p->ams_slave_status_so_c = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    ams_slave_status_max_temp = unpack_left_shift_u16(src_p[6], 8u, 0x0fu);
    ams_slave_status_max_temp |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    if ((ams_slave_status_max_temp & (1u << 11)) != 0u) {
        ams_slave_status_max_temp |= 0xf000u;
    }

    dst_p->ams_slave_status_max_temp = (int16_t)ams_slave_status_max_temp;

    return (0);
}

int can1__main_ft24_ams_slave11_status_init(struct can1__main_ft24_ams_slave11_status_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave11_status_t));

    return 0;
}

uint8_t can1__main_ft24_ams_slave11_status_ams_slave_status_error_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave11_status_ams_slave_status_error_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_status_ams_slave_status_error_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_ams_slave11_status_ams_slave_status_id_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave11_status_ams_slave_status_id_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_status_ams_slave_status_id_is_in_range(uint8_t value)
{
    return (value <= 127u);
}

uint8_t can1__main_ft24_ams_slave11_status_ams_slave_status_so_c_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave11_status_ams_slave_status_so_c_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave11_status_ams_slave_status_so_c_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint16_t can1__main_ft24_ams_slave11_status_ams_slave_status_min_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave11_status_ams_slave_status_min_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave11_status_ams_slave_status_min_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

uint16_t can1__main_ft24_ams_slave11_status_ams_slave_status_max_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave11_status_ams_slave_status_max_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave11_status_ams_slave_status_max_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

int16_t can1__main_ft24_ams_slave11_status_ams_slave_status_max_temp_encode(double value)
{
    return (int16_t)(value / 0.0625);
}

double can1__main_ft24_ams_slave11_status_ams_slave_status_max_temp_decode(int16_t value)
{
    return ((double)value * 0.0625);
}

bool can1__main_ft24_ams_slave11_status_ams_slave_status_max_temp_is_in_range(int16_t value)
{
    return ((value >= 0) && (value <= 16));
}

int can1__main_ft24_ams_slave10_status_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave10_status_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_error, 7u, 0x80u);
    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_id, 0u, 0x7fu);
    dst_p[1] |= pack_left_shift_u8(src_p->ams_slave_status_so_c, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave_status_min_cell_volt, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave_status_min_cell_volt, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave_status_max_cell_volt, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave_status_max_cell_volt, 0u, 0xffu);
    ams_slave_status_max_temp = (uint16_t)src_p->ams_slave_status_max_temp;
    dst_p[6] |= pack_right_shift_u16(ams_slave_status_max_temp, 8u, 0x0fu);
    dst_p[7] |= pack_left_shift_u16(ams_slave_status_max_temp, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave10_status_unpack(
    struct can1__main_ft24_ams_slave10_status_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave_status_error = unpack_right_shift_u8(src_p[0], 7u, 0x80u);
    dst_p->ams_slave_status_id = unpack_right_shift_u8(src_p[0], 0u, 0x7fu);
    dst_p->ams_slave_status_so_c = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    ams_slave_status_max_temp = unpack_left_shift_u16(src_p[6], 8u, 0x0fu);
    ams_slave_status_max_temp |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    if ((ams_slave_status_max_temp & (1u << 11)) != 0u) {
        ams_slave_status_max_temp |= 0xf000u;
    }

    dst_p->ams_slave_status_max_temp = (int16_t)ams_slave_status_max_temp;

    return (0);
}

int can1__main_ft24_ams_slave10_status_init(struct can1__main_ft24_ams_slave10_status_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave10_status_t));

    return 0;
}

uint8_t can1__main_ft24_ams_slave10_status_ams_slave_status_error_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave10_status_ams_slave_status_error_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_status_ams_slave_status_error_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_ams_slave10_status_ams_slave_status_id_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave10_status_ams_slave_status_id_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_status_ams_slave_status_id_is_in_range(uint8_t value)
{
    return (value <= 127u);
}

uint8_t can1__main_ft24_ams_slave10_status_ams_slave_status_so_c_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave10_status_ams_slave_status_so_c_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave10_status_ams_slave_status_so_c_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint16_t can1__main_ft24_ams_slave10_status_ams_slave_status_min_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave10_status_ams_slave_status_min_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave10_status_ams_slave_status_min_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

uint16_t can1__main_ft24_ams_slave10_status_ams_slave_status_max_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave10_status_ams_slave_status_max_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave10_status_ams_slave_status_max_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

int16_t can1__main_ft24_ams_slave10_status_ams_slave_status_max_temp_encode(double value)
{
    return (int16_t)(value / 0.0625);
}

double can1__main_ft24_ams_slave10_status_ams_slave_status_max_temp_decode(int16_t value)
{
    return ((double)value * 0.0625);
}

bool can1__main_ft24_ams_slave10_status_ams_slave_status_max_temp_is_in_range(int16_t value)
{
    return ((value >= 0) && (value <= 16));
}

int can1__main_ft24_ams_slave9_status_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave9_status_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_error, 7u, 0x80u);
    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_id, 0u, 0x7fu);
    dst_p[1] |= pack_left_shift_u8(src_p->ams_slave_status_so_c, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave_status_min_cell_volt, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave_status_min_cell_volt, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave_status_max_cell_volt, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave_status_max_cell_volt, 0u, 0xffu);
    ams_slave_status_max_temp = (uint16_t)src_p->ams_slave_status_max_temp;
    dst_p[6] |= pack_right_shift_u16(ams_slave_status_max_temp, 8u, 0x0fu);
    dst_p[7] |= pack_left_shift_u16(ams_slave_status_max_temp, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave9_status_unpack(
    struct can1__main_ft24_ams_slave9_status_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave_status_error = unpack_right_shift_u8(src_p[0], 7u, 0x80u);
    dst_p->ams_slave_status_id = unpack_right_shift_u8(src_p[0], 0u, 0x7fu);
    dst_p->ams_slave_status_so_c = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    ams_slave_status_max_temp = unpack_left_shift_u16(src_p[6], 8u, 0x0fu);
    ams_slave_status_max_temp |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    if ((ams_slave_status_max_temp & (1u << 11)) != 0u) {
        ams_slave_status_max_temp |= 0xf000u;
    }

    dst_p->ams_slave_status_max_temp = (int16_t)ams_slave_status_max_temp;

    return (0);
}

int can1__main_ft24_ams_slave9_status_init(struct can1__main_ft24_ams_slave9_status_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave9_status_t));

    return 0;
}

uint8_t can1__main_ft24_ams_slave9_status_ams_slave_status_error_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave9_status_ams_slave_status_error_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_status_ams_slave_status_error_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_ams_slave9_status_ams_slave_status_id_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave9_status_ams_slave_status_id_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_status_ams_slave_status_id_is_in_range(uint8_t value)
{
    return (value <= 127u);
}

uint8_t can1__main_ft24_ams_slave9_status_ams_slave_status_so_c_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave9_status_ams_slave_status_so_c_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave9_status_ams_slave_status_so_c_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint16_t can1__main_ft24_ams_slave9_status_ams_slave_status_min_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave9_status_ams_slave_status_min_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave9_status_ams_slave_status_min_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

uint16_t can1__main_ft24_ams_slave9_status_ams_slave_status_max_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave9_status_ams_slave_status_max_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave9_status_ams_slave_status_max_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

int16_t can1__main_ft24_ams_slave9_status_ams_slave_status_max_temp_encode(double value)
{
    return (int16_t)(value / 0.0625);
}

double can1__main_ft24_ams_slave9_status_ams_slave_status_max_temp_decode(int16_t value)
{
    return ((double)value * 0.0625);
}

bool can1__main_ft24_ams_slave9_status_ams_slave_status_max_temp_is_in_range(int16_t value)
{
    return ((value >= 0) && (value <= 16));
}

int can1__main_ft24_ams_slave8_status_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave8_status_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_error, 7u, 0x80u);
    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_id, 0u, 0x7fu);
    dst_p[1] |= pack_left_shift_u8(src_p->ams_slave_status_so_c, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave_status_min_cell_volt, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave_status_min_cell_volt, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave_status_max_cell_volt, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave_status_max_cell_volt, 0u, 0xffu);
    ams_slave_status_max_temp = (uint16_t)src_p->ams_slave_status_max_temp;
    dst_p[6] |= pack_right_shift_u16(ams_slave_status_max_temp, 8u, 0x0fu);
    dst_p[7] |= pack_left_shift_u16(ams_slave_status_max_temp, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave8_status_unpack(
    struct can1__main_ft24_ams_slave8_status_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave_status_error = unpack_right_shift_u8(src_p[0], 7u, 0x80u);
    dst_p->ams_slave_status_id = unpack_right_shift_u8(src_p[0], 0u, 0x7fu);
    dst_p->ams_slave_status_so_c = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    ams_slave_status_max_temp = unpack_left_shift_u16(src_p[6], 8u, 0x0fu);
    ams_slave_status_max_temp |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    if ((ams_slave_status_max_temp & (1u << 11)) != 0u) {
        ams_slave_status_max_temp |= 0xf000u;
    }

    dst_p->ams_slave_status_max_temp = (int16_t)ams_slave_status_max_temp;

    return (0);
}

int can1__main_ft24_ams_slave8_status_init(struct can1__main_ft24_ams_slave8_status_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave8_status_t));

    return 0;
}

uint8_t can1__main_ft24_ams_slave8_status_ams_slave_status_error_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave8_status_ams_slave_status_error_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_status_ams_slave_status_error_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_ams_slave8_status_ams_slave_status_id_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave8_status_ams_slave_status_id_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_status_ams_slave_status_id_is_in_range(uint8_t value)
{
    return (value <= 127u);
}

uint8_t can1__main_ft24_ams_slave8_status_ams_slave_status_so_c_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave8_status_ams_slave_status_so_c_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave8_status_ams_slave_status_so_c_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint16_t can1__main_ft24_ams_slave8_status_ams_slave_status_min_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave8_status_ams_slave_status_min_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave8_status_ams_slave_status_min_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

uint16_t can1__main_ft24_ams_slave8_status_ams_slave_status_max_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave8_status_ams_slave_status_max_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave8_status_ams_slave_status_max_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

int16_t can1__main_ft24_ams_slave8_status_ams_slave_status_max_temp_encode(double value)
{
    return (int16_t)(value / 0.0625);
}

double can1__main_ft24_ams_slave8_status_ams_slave_status_max_temp_decode(int16_t value)
{
    return ((double)value * 0.0625);
}

bool can1__main_ft24_ams_slave8_status_ams_slave_status_max_temp_is_in_range(int16_t value)
{
    return ((value >= 0) && (value <= 16));
}

int can1__main_ft24_ams_slave7_status_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave7_status_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_error, 7u, 0x80u);
    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_id, 0u, 0x7fu);
    dst_p[1] |= pack_left_shift_u8(src_p->ams_slave_status_so_c, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave_status_min_cell_volt, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave_status_min_cell_volt, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave_status_max_cell_volt, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave_status_max_cell_volt, 0u, 0xffu);
    ams_slave_status_max_temp = (uint16_t)src_p->ams_slave_status_max_temp;
    dst_p[6] |= pack_right_shift_u16(ams_slave_status_max_temp, 8u, 0x0fu);
    dst_p[7] |= pack_left_shift_u16(ams_slave_status_max_temp, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave7_status_unpack(
    struct can1__main_ft24_ams_slave7_status_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave_status_error = unpack_right_shift_u8(src_p[0], 7u, 0x80u);
    dst_p->ams_slave_status_id = unpack_right_shift_u8(src_p[0], 0u, 0x7fu);
    dst_p->ams_slave_status_so_c = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    ams_slave_status_max_temp = unpack_left_shift_u16(src_p[6], 8u, 0x0fu);
    ams_slave_status_max_temp |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    if ((ams_slave_status_max_temp & (1u << 11)) != 0u) {
        ams_slave_status_max_temp |= 0xf000u;
    }

    dst_p->ams_slave_status_max_temp = (int16_t)ams_slave_status_max_temp;

    return (0);
}

int can1__main_ft24_ams_slave7_status_init(struct can1__main_ft24_ams_slave7_status_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave7_status_t));

    return 0;
}

uint8_t can1__main_ft24_ams_slave7_status_ams_slave_status_error_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave7_status_ams_slave_status_error_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_status_ams_slave_status_error_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_ams_slave7_status_ams_slave_status_id_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave7_status_ams_slave_status_id_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_status_ams_slave_status_id_is_in_range(uint8_t value)
{
    return (value <= 127u);
}

uint8_t can1__main_ft24_ams_slave7_status_ams_slave_status_so_c_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave7_status_ams_slave_status_so_c_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave7_status_ams_slave_status_so_c_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint16_t can1__main_ft24_ams_slave7_status_ams_slave_status_min_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave7_status_ams_slave_status_min_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave7_status_ams_slave_status_min_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

uint16_t can1__main_ft24_ams_slave7_status_ams_slave_status_max_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave7_status_ams_slave_status_max_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave7_status_ams_slave_status_max_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

int16_t can1__main_ft24_ams_slave7_status_ams_slave_status_max_temp_encode(double value)
{
    return (int16_t)(value / 0.0625);
}

double can1__main_ft24_ams_slave7_status_ams_slave_status_max_temp_decode(int16_t value)
{
    return ((double)value * 0.0625);
}

bool can1__main_ft24_ams_slave7_status_ams_slave_status_max_temp_is_in_range(int16_t value)
{
    return ((value >= 0) && (value <= 16));
}

int can1__main_ft24_ams_slave6_status_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave6_status_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_error, 7u, 0x80u);
    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_id, 0u, 0x7fu);
    dst_p[1] |= pack_left_shift_u8(src_p->ams_slave_status_so_c, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave_status_min_cell_volt, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave_status_min_cell_volt, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave_status_max_cell_volt, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave_status_max_cell_volt, 0u, 0xffu);
    ams_slave_status_max_temp = (uint16_t)src_p->ams_slave_status_max_temp;
    dst_p[6] |= pack_right_shift_u16(ams_slave_status_max_temp, 8u, 0x0fu);
    dst_p[7] |= pack_left_shift_u16(ams_slave_status_max_temp, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave6_status_unpack(
    struct can1__main_ft24_ams_slave6_status_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave_status_error = unpack_right_shift_u8(src_p[0], 7u, 0x80u);
    dst_p->ams_slave_status_id = unpack_right_shift_u8(src_p[0], 0u, 0x7fu);
    dst_p->ams_slave_status_so_c = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    ams_slave_status_max_temp = unpack_left_shift_u16(src_p[6], 8u, 0x0fu);
    ams_slave_status_max_temp |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    if ((ams_slave_status_max_temp & (1u << 11)) != 0u) {
        ams_slave_status_max_temp |= 0xf000u;
    }

    dst_p->ams_slave_status_max_temp = (int16_t)ams_slave_status_max_temp;

    return (0);
}

int can1__main_ft24_ams_slave6_status_init(struct can1__main_ft24_ams_slave6_status_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave6_status_t));

    return 0;
}

uint8_t can1__main_ft24_ams_slave6_status_ams_slave_status_error_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave6_status_ams_slave_status_error_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_status_ams_slave_status_error_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_ams_slave6_status_ams_slave_status_id_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave6_status_ams_slave_status_id_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_status_ams_slave_status_id_is_in_range(uint8_t value)
{
    return (value <= 127u);
}

uint8_t can1__main_ft24_ams_slave6_status_ams_slave_status_so_c_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave6_status_ams_slave_status_so_c_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave6_status_ams_slave_status_so_c_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint16_t can1__main_ft24_ams_slave6_status_ams_slave_status_min_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave6_status_ams_slave_status_min_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave6_status_ams_slave_status_min_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

uint16_t can1__main_ft24_ams_slave6_status_ams_slave_status_max_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave6_status_ams_slave_status_max_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave6_status_ams_slave_status_max_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

int16_t can1__main_ft24_ams_slave6_status_ams_slave_status_max_temp_encode(double value)
{
    return (int16_t)(value / 0.0625);
}

double can1__main_ft24_ams_slave6_status_ams_slave_status_max_temp_decode(int16_t value)
{
    return ((double)value * 0.0625);
}

bool can1__main_ft24_ams_slave6_status_ams_slave_status_max_temp_is_in_range(int16_t value)
{
    return ((value >= 0) && (value <= 16));
}

int can1__main_ft24_ams_slave5_status_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave5_status_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_error, 7u, 0x80u);
    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_id, 0u, 0x7fu);
    dst_p[1] |= pack_left_shift_u8(src_p->ams_slave_status_so_c, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave_status_min_cell_volt, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave_status_min_cell_volt, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave_status_max_cell_volt, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave_status_max_cell_volt, 0u, 0xffu);
    ams_slave_status_max_temp = (uint16_t)src_p->ams_slave_status_max_temp;
    dst_p[6] |= pack_right_shift_u16(ams_slave_status_max_temp, 8u, 0x0fu);
    dst_p[7] |= pack_left_shift_u16(ams_slave_status_max_temp, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave5_status_unpack(
    struct can1__main_ft24_ams_slave5_status_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave_status_error = unpack_right_shift_u8(src_p[0], 7u, 0x80u);
    dst_p->ams_slave_status_id = unpack_right_shift_u8(src_p[0], 0u, 0x7fu);
    dst_p->ams_slave_status_so_c = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    ams_slave_status_max_temp = unpack_left_shift_u16(src_p[6], 8u, 0x0fu);
    ams_slave_status_max_temp |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    if ((ams_slave_status_max_temp & (1u << 11)) != 0u) {
        ams_slave_status_max_temp |= 0xf000u;
    }

    dst_p->ams_slave_status_max_temp = (int16_t)ams_slave_status_max_temp;

    return (0);
}

int can1__main_ft24_ams_slave5_status_init(struct can1__main_ft24_ams_slave5_status_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave5_status_t));

    return 0;
}

uint8_t can1__main_ft24_ams_slave5_status_ams_slave_status_error_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave5_status_ams_slave_status_error_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_status_ams_slave_status_error_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_ams_slave5_status_ams_slave_status_id_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave5_status_ams_slave_status_id_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_status_ams_slave_status_id_is_in_range(uint8_t value)
{
    return (value <= 127u);
}

uint8_t can1__main_ft24_ams_slave5_status_ams_slave_status_so_c_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave5_status_ams_slave_status_so_c_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave5_status_ams_slave_status_so_c_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint16_t can1__main_ft24_ams_slave5_status_ams_slave_status_min_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave5_status_ams_slave_status_min_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave5_status_ams_slave_status_min_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

uint16_t can1__main_ft24_ams_slave5_status_ams_slave_status_max_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave5_status_ams_slave_status_max_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave5_status_ams_slave_status_max_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

int16_t can1__main_ft24_ams_slave5_status_ams_slave_status_max_temp_encode(double value)
{
    return (int16_t)(value / 0.0625);
}

double can1__main_ft24_ams_slave5_status_ams_slave_status_max_temp_decode(int16_t value)
{
    return ((double)value * 0.0625);
}

bool can1__main_ft24_ams_slave5_status_ams_slave_status_max_temp_is_in_range(int16_t value)
{
    return ((value >= 0) && (value <= 16));
}

int can1__main_ft24_ams_slave4_status_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave4_status_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_error, 7u, 0x80u);
    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_id, 0u, 0x7fu);
    dst_p[1] |= pack_left_shift_u8(src_p->ams_slave_status_so_c, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave_status_min_cell_volt, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave_status_min_cell_volt, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave_status_max_cell_volt, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave_status_max_cell_volt, 0u, 0xffu);
    ams_slave_status_max_temp = (uint16_t)src_p->ams_slave_status_max_temp;
    dst_p[6] |= pack_right_shift_u16(ams_slave_status_max_temp, 8u, 0x0fu);
    dst_p[7] |= pack_left_shift_u16(ams_slave_status_max_temp, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave4_status_unpack(
    struct can1__main_ft24_ams_slave4_status_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave_status_error = unpack_right_shift_u8(src_p[0], 7u, 0x80u);
    dst_p->ams_slave_status_id = unpack_right_shift_u8(src_p[0], 0u, 0x7fu);
    dst_p->ams_slave_status_so_c = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    ams_slave_status_max_temp = unpack_left_shift_u16(src_p[6], 8u, 0x0fu);
    ams_slave_status_max_temp |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    if ((ams_slave_status_max_temp & (1u << 11)) != 0u) {
        ams_slave_status_max_temp |= 0xf000u;
    }

    dst_p->ams_slave_status_max_temp = (int16_t)ams_slave_status_max_temp;

    return (0);
}

int can1__main_ft24_ams_slave4_status_init(struct can1__main_ft24_ams_slave4_status_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave4_status_t));

    return 0;
}

uint8_t can1__main_ft24_ams_slave4_status_ams_slave_status_error_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave4_status_ams_slave_status_error_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_status_ams_slave_status_error_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_ams_slave4_status_ams_slave_status_id_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave4_status_ams_slave_status_id_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_status_ams_slave_status_id_is_in_range(uint8_t value)
{
    return (value <= 127u);
}

uint8_t can1__main_ft24_ams_slave4_status_ams_slave_status_so_c_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave4_status_ams_slave_status_so_c_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave4_status_ams_slave_status_so_c_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint16_t can1__main_ft24_ams_slave4_status_ams_slave_status_min_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave4_status_ams_slave_status_min_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave4_status_ams_slave_status_min_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

uint16_t can1__main_ft24_ams_slave4_status_ams_slave_status_max_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave4_status_ams_slave_status_max_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave4_status_ams_slave_status_max_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

int16_t can1__main_ft24_ams_slave4_status_ams_slave_status_max_temp_encode(double value)
{
    return (int16_t)(value / 0.0625);
}

double can1__main_ft24_ams_slave4_status_ams_slave_status_max_temp_decode(int16_t value)
{
    return ((double)value * 0.0625);
}

bool can1__main_ft24_ams_slave4_status_ams_slave_status_max_temp_is_in_range(int16_t value)
{
    return ((value >= 0) && (value <= 16));
}

int can1__main_ft24_ams_slave3_status_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave3_status_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_error, 7u, 0x80u);
    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_id, 0u, 0x7fu);
    dst_p[1] |= pack_left_shift_u8(src_p->ams_slave_status_so_c, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave_status_min_cell_volt, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave_status_min_cell_volt, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave_status_max_cell_volt, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave_status_max_cell_volt, 0u, 0xffu);
    ams_slave_status_max_temp = (uint16_t)src_p->ams_slave_status_max_temp;
    dst_p[6] |= pack_right_shift_u16(ams_slave_status_max_temp, 8u, 0x0fu);
    dst_p[7] |= pack_left_shift_u16(ams_slave_status_max_temp, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave3_status_unpack(
    struct can1__main_ft24_ams_slave3_status_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave_status_error = unpack_right_shift_u8(src_p[0], 7u, 0x80u);
    dst_p->ams_slave_status_id = unpack_right_shift_u8(src_p[0], 0u, 0x7fu);
    dst_p->ams_slave_status_so_c = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    ams_slave_status_max_temp = unpack_left_shift_u16(src_p[6], 8u, 0x0fu);
    ams_slave_status_max_temp |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    if ((ams_slave_status_max_temp & (1u << 11)) != 0u) {
        ams_slave_status_max_temp |= 0xf000u;
    }

    dst_p->ams_slave_status_max_temp = (int16_t)ams_slave_status_max_temp;

    return (0);
}

int can1__main_ft24_ams_slave3_status_init(struct can1__main_ft24_ams_slave3_status_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave3_status_t));

    return 0;
}

uint8_t can1__main_ft24_ams_slave3_status_ams_slave_status_error_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave3_status_ams_slave_status_error_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_status_ams_slave_status_error_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_ams_slave3_status_ams_slave_status_id_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave3_status_ams_slave_status_id_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_status_ams_slave_status_id_is_in_range(uint8_t value)
{
    return (value <= 127u);
}

uint8_t can1__main_ft24_ams_slave3_status_ams_slave_status_so_c_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave3_status_ams_slave_status_so_c_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave3_status_ams_slave_status_so_c_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint16_t can1__main_ft24_ams_slave3_status_ams_slave_status_min_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave3_status_ams_slave_status_min_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave3_status_ams_slave_status_min_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

uint16_t can1__main_ft24_ams_slave3_status_ams_slave_status_max_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave3_status_ams_slave_status_max_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave3_status_ams_slave_status_max_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

int16_t can1__main_ft24_ams_slave3_status_ams_slave_status_max_temp_encode(double value)
{
    return (int16_t)(value / 0.0625);
}

double can1__main_ft24_ams_slave3_status_ams_slave_status_max_temp_decode(int16_t value)
{
    return ((double)value * 0.0625);
}

bool can1__main_ft24_ams_slave3_status_ams_slave_status_max_temp_is_in_range(int16_t value)
{
    return ((value >= 0) && (value <= 16));
}

int can1__main_ft24_ams_slave2_status_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave2_status_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_error, 7u, 0x80u);
    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_id, 0u, 0x7fu);
    dst_p[1] |= pack_left_shift_u8(src_p->ams_slave_status_so_c, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave_status_min_cell_volt, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave_status_min_cell_volt, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave_status_max_cell_volt, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave_status_max_cell_volt, 0u, 0xffu);
    ams_slave_status_max_temp = (uint16_t)src_p->ams_slave_status_max_temp;
    dst_p[6] |= pack_right_shift_u16(ams_slave_status_max_temp, 8u, 0x0fu);
    dst_p[7] |= pack_left_shift_u16(ams_slave_status_max_temp, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave2_status_unpack(
    struct can1__main_ft24_ams_slave2_status_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave_status_error = unpack_right_shift_u8(src_p[0], 7u, 0x80u);
    dst_p->ams_slave_status_id = unpack_right_shift_u8(src_p[0], 0u, 0x7fu);
    dst_p->ams_slave_status_so_c = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    ams_slave_status_max_temp = unpack_left_shift_u16(src_p[6], 8u, 0x0fu);
    ams_slave_status_max_temp |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    if ((ams_slave_status_max_temp & (1u << 11)) != 0u) {
        ams_slave_status_max_temp |= 0xf000u;
    }

    dst_p->ams_slave_status_max_temp = (int16_t)ams_slave_status_max_temp;

    return (0);
}

int can1__main_ft24_ams_slave2_status_init(struct can1__main_ft24_ams_slave2_status_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave2_status_t));

    return 0;
}

uint8_t can1__main_ft24_ams_slave2_status_ams_slave_status_error_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave2_status_ams_slave_status_error_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_status_ams_slave_status_error_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_ams_slave2_status_ams_slave_status_id_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave2_status_ams_slave_status_id_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_status_ams_slave_status_id_is_in_range(uint8_t value)
{
    return (value <= 127u);
}

uint8_t can1__main_ft24_ams_slave2_status_ams_slave_status_so_c_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave2_status_ams_slave_status_so_c_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave2_status_ams_slave_status_so_c_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint16_t can1__main_ft24_ams_slave2_status_ams_slave_status_min_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave2_status_ams_slave_status_min_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave2_status_ams_slave_status_min_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

uint16_t can1__main_ft24_ams_slave2_status_ams_slave_status_max_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave2_status_ams_slave_status_max_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave2_status_ams_slave_status_max_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

int16_t can1__main_ft24_ams_slave2_status_ams_slave_status_max_temp_encode(double value)
{
    return (int16_t)(value / 0.0625);
}

double can1__main_ft24_ams_slave2_status_ams_slave_status_max_temp_decode(int16_t value)
{
    return ((double)value * 0.0625);
}

bool can1__main_ft24_ams_slave2_status_ams_slave_status_max_temp_is_in_range(int16_t value)
{
    return ((value >= 0) && (value <= 16));
}

int can1__main_ft24_ams_slave1_status_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave1_status_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_error, 7u, 0x80u);
    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_id, 0u, 0x7fu);
    dst_p[1] |= pack_left_shift_u8(src_p->ams_slave_status_so_c, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave_status_min_cell_volt, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave_status_min_cell_volt, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave_status_max_cell_volt, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave_status_max_cell_volt, 0u, 0xffu);
    ams_slave_status_max_temp = (uint16_t)src_p->ams_slave_status_max_temp;
    dst_p[6] |= pack_right_shift_u16(ams_slave_status_max_temp, 8u, 0x0fu);
    dst_p[7] |= pack_left_shift_u16(ams_slave_status_max_temp, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave1_status_unpack(
    struct can1__main_ft24_ams_slave1_status_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave_status_error = unpack_right_shift_u8(src_p[0], 7u, 0x80u);
    dst_p->ams_slave_status_id = unpack_right_shift_u8(src_p[0], 0u, 0x7fu);
    dst_p->ams_slave_status_so_c = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    ams_slave_status_max_temp = unpack_left_shift_u16(src_p[6], 8u, 0x0fu);
    ams_slave_status_max_temp |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    if ((ams_slave_status_max_temp & (1u << 11)) != 0u) {
        ams_slave_status_max_temp |= 0xf000u;
    }

    dst_p->ams_slave_status_max_temp = (int16_t)ams_slave_status_max_temp;

    return (0);
}

int can1__main_ft24_ams_slave1_status_init(struct can1__main_ft24_ams_slave1_status_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave1_status_t));

    return 0;
}

uint8_t can1__main_ft24_ams_slave1_status_ams_slave_status_error_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave1_status_ams_slave_status_error_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_status_ams_slave_status_error_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_ams_slave1_status_ams_slave_status_id_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave1_status_ams_slave_status_id_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_status_ams_slave_status_id_is_in_range(uint8_t value)
{
    return (value <= 127u);
}

uint8_t can1__main_ft24_ams_slave1_status_ams_slave_status_so_c_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave1_status_ams_slave_status_so_c_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave1_status_ams_slave_status_so_c_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint16_t can1__main_ft24_ams_slave1_status_ams_slave_status_min_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave1_status_ams_slave_status_min_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave1_status_ams_slave_status_min_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

uint16_t can1__main_ft24_ams_slave1_status_ams_slave_status_max_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave1_status_ams_slave_status_max_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave1_status_ams_slave_status_max_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

int16_t can1__main_ft24_ams_slave1_status_ams_slave_status_max_temp_encode(double value)
{
    return (int16_t)(value / 0.0625);
}

double can1__main_ft24_ams_slave1_status_ams_slave_status_max_temp_decode(int16_t value)
{
    return ((double)value * 0.0625);
}

bool can1__main_ft24_ams_slave1_status_ams_slave_status_max_temp_is_in_range(int16_t value)
{
    return ((value >= 0) && (value <= 16));
}

int can1__main_ft24_abx_misc_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_abx_misc_t *src_p,
    size_t size)
{
    if (size < 7u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 7);

    dst_p[0] |= pack_left_shift_u8(src_p->abx_driver_protocol, 0u, 0x07u);
    dst_p[1] |= pack_left_shift_u16(src_p->abx_distance_session, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->abx_distance_session, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->abx_distance_total, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->abx_distance_total, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u8(src_p->abx_lv_so_c, 0u, 0xffu);
    dst_p[6] |= pack_left_shift_u8(src_p->abx_lv_voltage, 0u, 0xffu);

    return (7);
}

int can1__main_ft24_abx_misc_unpack(
    struct can1__main_ft24_abx_misc_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 7u) {
        return (-EINVAL);
    }

    dst_p->abx_driver_protocol = unpack_right_shift_u8(src_p[0], 0u, 0x07u);
    dst_p->abx_distance_session = unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->abx_distance_session |= unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->abx_distance_total = unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->abx_distance_total |= unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->abx_lv_so_c = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->abx_lv_voltage = unpack_right_shift_u8(src_p[6], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_abx_misc_init(struct can1__main_ft24_abx_misc_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_abx_misc_t));

    return 0;
}

uint8_t can1__main_ft24_abx_misc_abx_driver_protocol_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_abx_misc_abx_driver_protocol_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_abx_misc_abx_driver_protocol_is_in_range(uint8_t value)
{
    return (value <= 7u);
}

uint16_t can1__main_ft24_abx_misc_abx_distance_session_encode(double value)
{
    return (uint16_t)(value);
}

double can1__main_ft24_abx_misc_abx_distance_session_decode(uint16_t value)
{
    return ((double)value);
}

bool can1__main_ft24_abx_misc_abx_distance_session_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_abx_misc_abx_distance_total_encode(double value)
{
    return (uint16_t)(value / 0.01);
}

double can1__main_ft24_abx_misc_abx_distance_total_decode(uint16_t value)
{
    return ((double)value * 0.01);
}

bool can1__main_ft24_abx_misc_abx_distance_total_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint8_t can1__main_ft24_abx_misc_abx_lv_so_c_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_abx_misc_abx_lv_so_c_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_abx_misc_abx_lv_so_c_is_in_range(uint8_t value)
{
    return (value <= 100u);
}

uint8_t can1__main_ft24_abx_misc_abx_lv_voltage_encode(double value)
{
    return (uint8_t)(value / 0.0588235294117647);
}

double can1__main_ft24_abx_misc_abx_lv_voltage_decode(uint8_t value)
{
    return ((double)value * 0.0588235294117647);
}

bool can1__main_ft24_abx_misc_abx_lv_voltage_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_error_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_error_t *src_p,
    size_t size)
{
    uint8_t ams_error_arg;
    uint8_t ams_error_kind;

    if (size < 2u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 2);

    ams_error_kind = (uint8_t)src_p->ams_error_kind;
    dst_p[0] |= pack_left_shift_u8(ams_error_kind, 0u, 0xffu);
    ams_error_arg = (uint8_t)src_p->ams_error_arg;
    dst_p[1] |= pack_left_shift_u8(ams_error_arg, 0u, 0xffu);

    return (2);
}

int can1__main_ft24_ams_error_unpack(
    struct can1__main_ft24_ams_error_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t ams_error_arg;
    uint8_t ams_error_kind;

    if (size < 2u) {
        return (-EINVAL);
    }

    ams_error_kind = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_error_kind = (int8_t)ams_error_kind;
    ams_error_arg = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_error_arg = (int8_t)ams_error_arg;

    return (0);
}

int can1__main_ft24_ams_error_init(struct can1__main_ft24_ams_error_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_error_t));

    return 0;
}

int8_t can1__main_ft24_ams_error_ams_error_kind_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_error_ams_error_kind_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_error_ams_error_kind_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int8_t can1__main_ft24_ams_error_ams_error_arg_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_ams_error_ams_error_arg_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_error_ams_error_arg_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_abx_cooling_sys_internal_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_abx_cooling_sys_internal_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_left_shift_u16(src_p->abx_cs_t_inv_l, 0u, 0xffu);
    dst_p[1] |= pack_right_shift_u16(src_p->abx_cs_t_inv_l, 8u, 0xffu);
    dst_p[2] |= pack_left_shift_u16(src_p->abx_cs_t_inv_r, 0u, 0xffu);
    dst_p[3] |= pack_right_shift_u16(src_p->abx_cs_t_inv_r, 8u, 0xffu);
    dst_p[4] |= pack_left_shift_u16(src_p->abx_cs_t_mot_l, 0u, 0xffu);
    dst_p[5] |= pack_right_shift_u16(src_p->abx_cs_t_mot_l, 8u, 0xffu);
    dst_p[6] |= pack_left_shift_u16(src_p->abx_cs_t_mot_r, 0u, 0xffu);
    dst_p[7] |= pack_right_shift_u16(src_p->abx_cs_t_mot_r, 8u, 0xffu);

    return (8);
}

int can1__main_ft24_abx_cooling_sys_internal_unpack(
    struct can1__main_ft24_abx_cooling_sys_internal_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->abx_cs_t_inv_l = unpack_right_shift_u16(src_p[0], 0u, 0xffu);
    dst_p->abx_cs_t_inv_l |= unpack_left_shift_u16(src_p[1], 8u, 0xffu);
    dst_p->abx_cs_t_inv_r = unpack_right_shift_u16(src_p[2], 0u, 0xffu);
    dst_p->abx_cs_t_inv_r |= unpack_left_shift_u16(src_p[3], 8u, 0xffu);
    dst_p->abx_cs_t_mot_l = unpack_right_shift_u16(src_p[4], 0u, 0xffu);
    dst_p->abx_cs_t_mot_l |= unpack_left_shift_u16(src_p[5], 8u, 0xffu);
    dst_p->abx_cs_t_mot_r = unpack_right_shift_u16(src_p[6], 0u, 0xffu);
    dst_p->abx_cs_t_mot_r |= unpack_left_shift_u16(src_p[7], 8u, 0xffu);

    return (0);
}

int can1__main_ft24_abx_cooling_sys_internal_init(struct can1__main_ft24_abx_cooling_sys_internal_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_abx_cooling_sys_internal_t));

    return 0;
}

uint16_t can1__main_ft24_abx_cooling_sys_internal_abx_cs_t_inv_l_encode(double value)
{
    return (uint16_t)(value / 0.01);
}

double can1__main_ft24_abx_cooling_sys_internal_abx_cs_t_inv_l_decode(uint16_t value)
{
    return ((double)value * 0.01);
}

bool can1__main_ft24_abx_cooling_sys_internal_abx_cs_t_inv_l_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_abx_cooling_sys_internal_abx_cs_t_inv_r_encode(double value)
{
    return (uint16_t)(value / 0.01);
}

double can1__main_ft24_abx_cooling_sys_internal_abx_cs_t_inv_r_decode(uint16_t value)
{
    return ((double)value * 0.01);
}

bool can1__main_ft24_abx_cooling_sys_internal_abx_cs_t_inv_r_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_abx_cooling_sys_internal_abx_cs_t_mot_l_encode(double value)
{
    return (uint16_t)(value / 0.01);
}

double can1__main_ft24_abx_cooling_sys_internal_abx_cs_t_mot_l_decode(uint16_t value)
{
    return ((double)value * 0.01);
}

bool can1__main_ft24_abx_cooling_sys_internal_abx_cs_t_mot_l_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_abx_cooling_sys_internal_abx_cs_t_mot_r_encode(double value)
{
    return (uint16_t)(value / 0.01);
}

double can1__main_ft24_abx_cooling_sys_internal_abx_cs_t_mot_r_decode(uint16_t value)
{
    return ((double)value * 0.01);
}

bool can1__main_ft24_abx_cooling_sys_internal_abx_cs_t_mot_r_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_abx_cooling_sys_acc_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_abx_cooling_sys_acc_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    dst_p[0] |= pack_left_shift_u8(src_p->abx_cs_p_acc_in, 0u, 0xffu);
    dst_p[1] |= pack_left_shift_u8(src_p->abx_cs_p_acc_out, 0u, 0xffu);
    dst_p[2] |= pack_left_shift_u16(src_p->abx_cs_t_acc_in, 0u, 0xffu);
    dst_p[3] |= pack_right_shift_u16(src_p->abx_cs_t_acc_in, 8u, 0x03u);
    dst_p[4] |= pack_left_shift_u16(src_p->abx_cs_t_acc_out, 0u, 0xffu);
    dst_p[5] |= pack_right_shift_u16(src_p->abx_cs_t_acc_out, 8u, 0x03u);

    return (6);
}

int can1__main_ft24_abx_cooling_sys_acc_unpack(
    struct can1__main_ft24_abx_cooling_sys_acc_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    dst_p->abx_cs_p_acc_in = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->abx_cs_p_acc_out = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->abx_cs_t_acc_in = unpack_right_shift_u16(src_p[2], 0u, 0xffu);
    dst_p->abx_cs_t_acc_in |= unpack_left_shift_u16(src_p[3], 8u, 0x03u);
    dst_p->abx_cs_t_acc_out = unpack_right_shift_u16(src_p[4], 0u, 0xffu);
    dst_p->abx_cs_t_acc_out |= unpack_left_shift_u16(src_p[5], 8u, 0x03u);

    return (0);
}

int can1__main_ft24_abx_cooling_sys_acc_init(struct can1__main_ft24_abx_cooling_sys_acc_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_abx_cooling_sys_acc_t));

    return 0;
}

uint8_t can1__main_ft24_abx_cooling_sys_acc_abx_cs_p_acc_in_encode(double value)
{
    return (uint8_t)(value / 0.02);
}

double can1__main_ft24_abx_cooling_sys_acc_abx_cs_p_acc_in_decode(uint8_t value)
{
    return ((double)value * 0.02);
}

bool can1__main_ft24_abx_cooling_sys_acc_abx_cs_p_acc_in_is_in_range(uint8_t value)
{
    return (value <= 200u);
}

uint8_t can1__main_ft24_abx_cooling_sys_acc_abx_cs_p_acc_out_encode(double value)
{
    return (uint8_t)(value / 0.02);
}

double can1__main_ft24_abx_cooling_sys_acc_abx_cs_p_acc_out_decode(uint8_t value)
{
    return ((double)value * 0.02);
}

bool can1__main_ft24_abx_cooling_sys_acc_abx_cs_p_acc_out_is_in_range(uint8_t value)
{
    return (value <= 200u);
}

uint16_t can1__main_ft24_abx_cooling_sys_acc_abx_cs_t_acc_in_encode(double value)
{
    return (uint16_t)(value / 0.1);
}

double can1__main_ft24_abx_cooling_sys_acc_abx_cs_t_acc_in_decode(uint16_t value)
{
    return ((double)value * 0.1);
}

bool can1__main_ft24_abx_cooling_sys_acc_abx_cs_t_acc_in_is_in_range(uint16_t value)
{
    return (value <= 1023u);
}

uint16_t can1__main_ft24_abx_cooling_sys_acc_abx_cs_t_acc_out_encode(double value)
{
    return (uint16_t)(value / 0.1);
}

double can1__main_ft24_abx_cooling_sys_acc_abx_cs_t_acc_out_decode(uint16_t value)
{
    return ((double)value * 0.1);
}

bool can1__main_ft24_abx_cooling_sys_acc_abx_cs_t_acc_out_is_in_range(uint16_t value)
{
    return (value <= 1023u);
}

int can1__main_ft24_abx_cooling_sys_mot_inv_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_abx_cooling_sys_mot_inv_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_left_shift_u8(src_p->abx_cs_p_inv_in, 0u, 0xffu);
    dst_p[1] |= pack_left_shift_u8(src_p->abx_cs_p_mot_l_in, 0u, 0xffu);
    dst_p[2] |= pack_left_shift_u8(src_p->abx_cs_p_rad_in, 0u, 0xffu);
    dst_p[3] |= pack_left_shift_u8(src_p->abx_cs_p_mot_r_in, 0u, 0xffu);
    dst_p[4] |= pack_left_shift_u16(src_p->abx_cs_t_inv_in, 0u, 0xffu);
    dst_p[5] |= pack_right_shift_u16(src_p->abx_cs_t_inv_in, 8u, 0x03u);
    dst_p[5] |= pack_left_shift_u16(src_p->abx_cs_t_mot_in, 2u, 0xfcu);
    dst_p[6] |= pack_right_shift_u16(src_p->abx_cs_t_mot_in, 6u, 0x0fu);
    dst_p[6] |= pack_left_shift_u16(src_p->abx_cs_t_rad_in, 4u, 0xf0u);
    dst_p[7] |= pack_right_shift_u16(src_p->abx_cs_t_rad_in, 4u, 0x3fu);

    return (8);
}

int can1__main_ft24_abx_cooling_sys_mot_inv_unpack(
    struct can1__main_ft24_abx_cooling_sys_mot_inv_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->abx_cs_p_inv_in = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->abx_cs_p_mot_l_in = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->abx_cs_p_rad_in = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->abx_cs_p_mot_r_in = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->abx_cs_t_inv_in = unpack_right_shift_u16(src_p[4], 0u, 0xffu);
    dst_p->abx_cs_t_inv_in |= unpack_left_shift_u16(src_p[5], 8u, 0x03u);
    dst_p->abx_cs_t_mot_in = unpack_right_shift_u16(src_p[5], 2u, 0xfcu);
    dst_p->abx_cs_t_mot_in |= unpack_left_shift_u16(src_p[6], 6u, 0x0fu);
    dst_p->abx_cs_t_rad_in = unpack_right_shift_u16(src_p[6], 4u, 0xf0u);
    dst_p->abx_cs_t_rad_in |= unpack_left_shift_u16(src_p[7], 4u, 0x3fu);

    return (0);
}

int can1__main_ft24_abx_cooling_sys_mot_inv_init(struct can1__main_ft24_abx_cooling_sys_mot_inv_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_abx_cooling_sys_mot_inv_t));

    return 0;
}

uint8_t can1__main_ft24_abx_cooling_sys_mot_inv_abx_cs_p_inv_in_encode(double value)
{
    return (uint8_t)(value / 0.02);
}

double can1__main_ft24_abx_cooling_sys_mot_inv_abx_cs_p_inv_in_decode(uint8_t value)
{
    return ((double)value * 0.02);
}

bool can1__main_ft24_abx_cooling_sys_mot_inv_abx_cs_p_inv_in_is_in_range(uint8_t value)
{
    return (value <= 200u);
}

uint8_t can1__main_ft24_abx_cooling_sys_mot_inv_abx_cs_p_mot_l_in_encode(double value)
{
    return (uint8_t)(value / 0.02);
}

double can1__main_ft24_abx_cooling_sys_mot_inv_abx_cs_p_mot_l_in_decode(uint8_t value)
{
    return ((double)value * 0.02);
}

bool can1__main_ft24_abx_cooling_sys_mot_inv_abx_cs_p_mot_l_in_is_in_range(uint8_t value)
{
    return (value <= 200u);
}

uint8_t can1__main_ft24_abx_cooling_sys_mot_inv_abx_cs_p_rad_in_encode(double value)
{
    return (uint8_t)(value / 0.02);
}

double can1__main_ft24_abx_cooling_sys_mot_inv_abx_cs_p_rad_in_decode(uint8_t value)
{
    return ((double)value * 0.02);
}

bool can1__main_ft24_abx_cooling_sys_mot_inv_abx_cs_p_rad_in_is_in_range(uint8_t value)
{
    return (value <= 200u);
}

uint8_t can1__main_ft24_abx_cooling_sys_mot_inv_abx_cs_p_mot_r_in_encode(double value)
{
    return (uint8_t)(value / 0.02);
}

double can1__main_ft24_abx_cooling_sys_mot_inv_abx_cs_p_mot_r_in_decode(uint8_t value)
{
    return ((double)value * 0.02);
}

bool can1__main_ft24_abx_cooling_sys_mot_inv_abx_cs_p_mot_r_in_is_in_range(uint8_t value)
{
    return (value <= 200u);
}

uint16_t can1__main_ft24_abx_cooling_sys_mot_inv_abx_cs_t_inv_in_encode(double value)
{
    return (uint16_t)(value / 0.1);
}

double can1__main_ft24_abx_cooling_sys_mot_inv_abx_cs_t_inv_in_decode(uint16_t value)
{
    return ((double)value * 0.1);
}

bool can1__main_ft24_abx_cooling_sys_mot_inv_abx_cs_t_inv_in_is_in_range(uint16_t value)
{
    return (value <= 1023u);
}

uint16_t can1__main_ft24_abx_cooling_sys_mot_inv_abx_cs_t_mot_in_encode(double value)
{
    return (uint16_t)(value / 0.1);
}

double can1__main_ft24_abx_cooling_sys_mot_inv_abx_cs_t_mot_in_decode(uint16_t value)
{
    return ((double)value * 0.1);
}

bool can1__main_ft24_abx_cooling_sys_mot_inv_abx_cs_t_mot_in_is_in_range(uint16_t value)
{
    return (value <= 1023u);
}

uint16_t can1__main_ft24_abx_cooling_sys_mot_inv_abx_cs_t_rad_in_encode(double value)
{
    return (uint16_t)(value / 0.1);
}

double can1__main_ft24_abx_cooling_sys_mot_inv_abx_cs_t_rad_in_decode(uint16_t value)
{
    return ((double)value * 0.1);
}

bool can1__main_ft24_abx_cooling_sys_mot_inv_abx_cs_t_rad_in_is_in_range(uint16_t value)
{
    return (value <= 1023u);
}

int can1__main_ft24_abx_brake_t_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_abx_brake_t_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_left_shift_u16(src_p->abx_brake_t_fl, 0u, 0xffu);
    dst_p[1] |= pack_right_shift_u16(src_p->abx_brake_t_fl, 8u, 0xffu);
    dst_p[2] |= pack_left_shift_u16(src_p->abx_brake_t_fr, 0u, 0xffu);
    dst_p[3] |= pack_right_shift_u16(src_p->abx_brake_t_fr, 8u, 0xffu);
    dst_p[4] |= pack_left_shift_u16(src_p->abx_brake_t_rl, 0u, 0xffu);
    dst_p[5] |= pack_right_shift_u16(src_p->abx_brake_t_rl, 8u, 0xffu);
    dst_p[6] |= pack_left_shift_u16(src_p->abx_brake_t_rr, 0u, 0xffu);
    dst_p[7] |= pack_right_shift_u16(src_p->abx_brake_t_rr, 8u, 0xffu);

    return (8);
}

int can1__main_ft24_abx_brake_t_unpack(
    struct can1__main_ft24_abx_brake_t_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->abx_brake_t_fl = unpack_right_shift_u16(src_p[0], 0u, 0xffu);
    dst_p->abx_brake_t_fl |= unpack_left_shift_u16(src_p[1], 8u, 0xffu);
    dst_p->abx_brake_t_fr = unpack_right_shift_u16(src_p[2], 0u, 0xffu);
    dst_p->abx_brake_t_fr |= unpack_left_shift_u16(src_p[3], 8u, 0xffu);
    dst_p->abx_brake_t_rl = unpack_right_shift_u16(src_p[4], 0u, 0xffu);
    dst_p->abx_brake_t_rl |= unpack_left_shift_u16(src_p[5], 8u, 0xffu);
    dst_p->abx_brake_t_rr = unpack_right_shift_u16(src_p[6], 0u, 0xffu);
    dst_p->abx_brake_t_rr |= unpack_left_shift_u16(src_p[7], 8u, 0xffu);

    return (0);
}

int can1__main_ft24_abx_brake_t_init(struct can1__main_ft24_abx_brake_t_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_abx_brake_t_t));

    return 0;
}

uint16_t can1__main_ft24_abx_brake_t_abx_brake_t_fl_encode(double value)
{
    return (uint16_t)(value / 0.01);
}

double can1__main_ft24_abx_brake_t_abx_brake_t_fl_decode(uint16_t value)
{
    return ((double)value * 0.01);
}

bool can1__main_ft24_abx_brake_t_abx_brake_t_fl_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_abx_brake_t_abx_brake_t_fr_encode(double value)
{
    return (uint16_t)(value / 0.01);
}

double can1__main_ft24_abx_brake_t_abx_brake_t_fr_decode(uint16_t value)
{
    return ((double)value * 0.01);
}

bool can1__main_ft24_abx_brake_t_abx_brake_t_fr_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_abx_brake_t_abx_brake_t_rl_encode(double value)
{
    return (uint16_t)(value / 0.01);
}

double can1__main_ft24_abx_brake_t_abx_brake_t_rl_decode(uint16_t value)
{
    return ((double)value * 0.01);
}

bool can1__main_ft24_abx_brake_t_abx_brake_t_rl_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_abx_brake_t_abx_brake_t_rr_encode(double value)
{
    return (uint16_t)(value / 0.01);
}

double can1__main_ft24_abx_brake_t_abx_brake_t_rr_decode(uint16_t value)
{
    return ((double)value * 0.01);
}

bool can1__main_ft24_abx_brake_t_abx_brake_t_rr_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_abx_wheelspeed_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_abx_wheelspeed_t *src_p,
    size_t size)
{
    uint16_t abx_wheelspeed_fl;
    uint16_t abx_wheelspeed_fr;
    uint16_t abx_wheelspeed_rl;
    uint16_t abx_wheelspeed_rr;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    abx_wheelspeed_fl = (uint16_t)src_p->abx_wheelspeed_fl;
    dst_p[0] |= pack_left_shift_u16(abx_wheelspeed_fl, 0u, 0xffu);
    dst_p[1] |= pack_right_shift_u16(abx_wheelspeed_fl, 8u, 0xffu);
    abx_wheelspeed_fr = (uint16_t)src_p->abx_wheelspeed_fr;
    dst_p[2] |= pack_left_shift_u16(abx_wheelspeed_fr, 0u, 0xffu);
    dst_p[3] |= pack_right_shift_u16(abx_wheelspeed_fr, 8u, 0xffu);
    abx_wheelspeed_rl = (uint16_t)src_p->abx_wheelspeed_rl;
    dst_p[4] |= pack_left_shift_u16(abx_wheelspeed_rl, 0u, 0xffu);
    dst_p[5] |= pack_right_shift_u16(abx_wheelspeed_rl, 8u, 0xffu);
    abx_wheelspeed_rr = (uint16_t)src_p->abx_wheelspeed_rr;
    dst_p[6] |= pack_left_shift_u16(abx_wheelspeed_rr, 0u, 0xffu);
    dst_p[7] |= pack_right_shift_u16(abx_wheelspeed_rr, 8u, 0xffu);

    return (8);
}

int can1__main_ft24_abx_wheelspeed_unpack(
    struct can1__main_ft24_abx_wheelspeed_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint16_t abx_wheelspeed_fl;
    uint16_t abx_wheelspeed_fr;
    uint16_t abx_wheelspeed_rl;
    uint16_t abx_wheelspeed_rr;

    if (size < 8u) {
        return (-EINVAL);
    }

    abx_wheelspeed_fl = unpack_right_shift_u16(src_p[0], 0u, 0xffu);
    abx_wheelspeed_fl |= unpack_left_shift_u16(src_p[1], 8u, 0xffu);
    dst_p->abx_wheelspeed_fl = (int16_t)abx_wheelspeed_fl;
    abx_wheelspeed_fr = unpack_right_shift_u16(src_p[2], 0u, 0xffu);
    abx_wheelspeed_fr |= unpack_left_shift_u16(src_p[3], 8u, 0xffu);
    dst_p->abx_wheelspeed_fr = (int16_t)abx_wheelspeed_fr;
    abx_wheelspeed_rl = unpack_right_shift_u16(src_p[4], 0u, 0xffu);
    abx_wheelspeed_rl |= unpack_left_shift_u16(src_p[5], 8u, 0xffu);
    dst_p->abx_wheelspeed_rl = (int16_t)abx_wheelspeed_rl;
    abx_wheelspeed_rr = unpack_right_shift_u16(src_p[6], 0u, 0xffu);
    abx_wheelspeed_rr |= unpack_left_shift_u16(src_p[7], 8u, 0xffu);
    dst_p->abx_wheelspeed_rr = (int16_t)abx_wheelspeed_rr;

    return (0);
}

int can1__main_ft24_abx_wheelspeed_init(struct can1__main_ft24_abx_wheelspeed_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_abx_wheelspeed_t));

    return 0;
}

int16_t can1__main_ft24_abx_wheelspeed_abx_wheelspeed_fl_encode(double value)
{
    return (int16_t)(value / 0.001);
}

double can1__main_ft24_abx_wheelspeed_abx_wheelspeed_fl_decode(int16_t value)
{
    return ((double)value * 0.001);
}

bool can1__main_ft24_abx_wheelspeed_abx_wheelspeed_fl_is_in_range(int16_t value)
{
    (void)value;

    return (true);
}

int16_t can1__main_ft24_abx_wheelspeed_abx_wheelspeed_fr_encode(double value)
{
    return (int16_t)(value / 0.001);
}

double can1__main_ft24_abx_wheelspeed_abx_wheelspeed_fr_decode(int16_t value)
{
    return ((double)value * 0.001);
}

bool can1__main_ft24_abx_wheelspeed_abx_wheelspeed_fr_is_in_range(int16_t value)
{
    (void)value;

    return (true);
}

int16_t can1__main_ft24_abx_wheelspeed_abx_wheelspeed_rl_encode(double value)
{
    return (int16_t)(value / 0.001);
}

double can1__main_ft24_abx_wheelspeed_abx_wheelspeed_rl_decode(int16_t value)
{
    return ((double)value * 0.001);
}

bool can1__main_ft24_abx_wheelspeed_abx_wheelspeed_rl_is_in_range(int16_t value)
{
    (void)value;

    return (true);
}

int16_t can1__main_ft24_abx_wheelspeed_abx_wheelspeed_rr_encode(double value)
{
    return (int16_t)(value / 0.001);
}

double can1__main_ft24_abx_wheelspeed_abx_wheelspeed_rr_decode(int16_t value)
{
    return ((double)value * 0.001);
}

bool can1__main_ft24_abx_wheelspeed_abx_wheelspeed_rr_is_in_range(int16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_abx_dampers_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_abx_dampers_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_left_shift_u16(src_p->abx_damper_heave_f, 0u, 0xffu);
    dst_p[1] |= pack_right_shift_u16(src_p->abx_damper_heave_f, 8u, 0xffu);
    dst_p[2] |= pack_left_shift_u16(src_p->abx_damper_roll_f, 0u, 0xffu);
    dst_p[3] |= pack_right_shift_u16(src_p->abx_damper_roll_f, 8u, 0xffu);
    dst_p[4] |= pack_left_shift_u16(src_p->abx_damper_heave_r, 0u, 0xffu);
    dst_p[5] |= pack_right_shift_u16(src_p->abx_damper_heave_r, 8u, 0xffu);
    dst_p[6] |= pack_left_shift_u16(src_p->abx_damper_roll_r, 0u, 0xffu);
    dst_p[7] |= pack_right_shift_u16(src_p->abx_damper_roll_r, 8u, 0xffu);

    return (8);
}

int can1__main_ft24_abx_dampers_unpack(
    struct can1__main_ft24_abx_dampers_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->abx_damper_heave_f = unpack_right_shift_u16(src_p[0], 0u, 0xffu);
    dst_p->abx_damper_heave_f |= unpack_left_shift_u16(src_p[1], 8u, 0xffu);
    dst_p->abx_damper_roll_f = unpack_right_shift_u16(src_p[2], 0u, 0xffu);
    dst_p->abx_damper_roll_f |= unpack_left_shift_u16(src_p[3], 8u, 0xffu);
    dst_p->abx_damper_heave_r = unpack_right_shift_u16(src_p[4], 0u, 0xffu);
    dst_p->abx_damper_heave_r |= unpack_left_shift_u16(src_p[5], 8u, 0xffu);
    dst_p->abx_damper_roll_r = unpack_right_shift_u16(src_p[6], 0u, 0xffu);
    dst_p->abx_damper_roll_r |= unpack_left_shift_u16(src_p[7], 8u, 0xffu);

    return (0);
}

int can1__main_ft24_abx_dampers_init(struct can1__main_ft24_abx_dampers_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_abx_dampers_t));

    return 0;
}

uint16_t can1__main_ft24_abx_dampers_abx_damper_heave_f_encode(double value)
{
    return (uint16_t)(value / 0.01);
}

double can1__main_ft24_abx_dampers_abx_damper_heave_f_decode(uint16_t value)
{
    return ((double)value * 0.01);
}

bool can1__main_ft24_abx_dampers_abx_damper_heave_f_is_in_range(uint16_t value)
{
    return (value <= 7500u);
}

uint16_t can1__main_ft24_abx_dampers_abx_damper_roll_f_encode(double value)
{
    return (uint16_t)(value / 0.01);
}

double can1__main_ft24_abx_dampers_abx_damper_roll_f_decode(uint16_t value)
{
    return ((double)value * 0.01);
}

bool can1__main_ft24_abx_dampers_abx_damper_roll_f_is_in_range(uint16_t value)
{
    return (value <= 7500u);
}

uint16_t can1__main_ft24_abx_dampers_abx_damper_heave_r_encode(double value)
{
    return (uint16_t)(value / 0.01);
}

double can1__main_ft24_abx_dampers_abx_damper_heave_r_decode(uint16_t value)
{
    return ((double)value * 0.01);
}

bool can1__main_ft24_abx_dampers_abx_damper_heave_r_is_in_range(uint16_t value)
{
    return (value <= 7500u);
}

uint16_t can1__main_ft24_abx_dampers_abx_damper_roll_r_encode(double value)
{
    return (uint16_t)(value / 0.01);
}

double can1__main_ft24_abx_dampers_abx_damper_roll_r_decode(uint16_t value)
{
    return ((double)value * 0.01);
}

bool can1__main_ft24_abx_dampers_abx_damper_roll_r_is_in_range(uint16_t value)
{
    return (value <= 7500u);
}

int can1__main_ft24_abx_timings_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_abx_timings_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_left_shift_u16(src_p->abx_laptime_best, 0u, 0xffu);
    dst_p[1] |= pack_right_shift_u16(src_p->abx_laptime_best, 8u, 0xffu);
    dst_p[2] |= pack_left_shift_u16(src_p->abx_laptime_last, 0u, 0xffu);
    dst_p[3] |= pack_right_shift_u16(src_p->abx_laptime_last, 8u, 0xffu);
    dst_p[4] |= pack_left_shift_u16(src_p->abx_sectortime_best, 0u, 0xffu);
    dst_p[5] |= pack_right_shift_u16(src_p->abx_sectortime_best, 8u, 0xffu);
    dst_p[6] |= pack_left_shift_u16(src_p->abx_sectortime_last, 0u, 0xffu);
    dst_p[7] |= pack_right_shift_u16(src_p->abx_sectortime_last, 8u, 0xffu);

    return (8);
}

int can1__main_ft24_abx_timings_unpack(
    struct can1__main_ft24_abx_timings_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->abx_laptime_best = unpack_right_shift_u16(src_p[0], 0u, 0xffu);
    dst_p->abx_laptime_best |= unpack_left_shift_u16(src_p[1], 8u, 0xffu);
    dst_p->abx_laptime_last = unpack_right_shift_u16(src_p[2], 0u, 0xffu);
    dst_p->abx_laptime_last |= unpack_left_shift_u16(src_p[3], 8u, 0xffu);
    dst_p->abx_sectortime_best = unpack_right_shift_u16(src_p[4], 0u, 0xffu);
    dst_p->abx_sectortime_best |= unpack_left_shift_u16(src_p[5], 8u, 0xffu);
    dst_p->abx_sectortime_last = unpack_right_shift_u16(src_p[6], 0u, 0xffu);
    dst_p->abx_sectortime_last |= unpack_left_shift_u16(src_p[7], 8u, 0xffu);

    return (0);
}

int can1__main_ft24_abx_timings_init(struct can1__main_ft24_abx_timings_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_abx_timings_t));

    return 0;
}

uint16_t can1__main_ft24_abx_timings_abx_laptime_best_encode(double value)
{
    return (uint16_t)(value / 0.01);
}

double can1__main_ft24_abx_timings_abx_laptime_best_decode(uint16_t value)
{
    return ((double)value * 0.01);
}

bool can1__main_ft24_abx_timings_abx_laptime_best_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_abx_timings_abx_laptime_last_encode(double value)
{
    return (uint16_t)(value / 0.01);
}

double can1__main_ft24_abx_timings_abx_laptime_last_decode(uint16_t value)
{
    return ((double)value * 0.01);
}

bool can1__main_ft24_abx_timings_abx_laptime_last_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_abx_timings_abx_sectortime_best_encode(double value)
{
    return (uint16_t)(value / 0.01);
}

double can1__main_ft24_abx_timings_abx_sectortime_best_decode(uint16_t value)
{
    return ((double)value * 0.01);
}

bool can1__main_ft24_abx_timings_abx_sectortime_best_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_abx_timings_abx_sectortime_last_encode(double value)
{
    return (uint16_t)(value / 0.01);
}

double can1__main_ft24_abx_timings_abx_sectortime_last_decode(uint16_t value)
{
    return ((double)value * 0.01);
}

bool can1__main_ft24_abx_timings_abx_sectortime_last_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_abx_driver_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_abx_driver_t *src_p,
    size_t size)
{
    uint8_t abx_steering_angle;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_left_shift_u8(src_p->abx_apps_percent, 0u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->abx_brake_p_f, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->abx_brake_p_f, 8u, 0x0fu);
    dst_p[2] |= pack_left_shift_u16(src_p->abx_brake_p_r, 4u, 0xf0u);
    dst_p[3] |= pack_right_shift_u16(src_p->abx_brake_p_r, 4u, 0xffu);
    abx_steering_angle = (uint8_t)src_p->abx_steering_angle;
    dst_p[4] |= pack_left_shift_u8(abx_steering_angle, 0u, 0xffu);
    dst_p[5] |= pack_left_shift_u8(src_p->abx_speed, 0u, 0xffu);
    dst_p[6] |= pack_left_shift_u8(src_p->abx_lapcounter, 0u, 0xffu);
    dst_p[7] |= pack_left_shift_u8(src_p->abx_sectorcounter, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_abx_driver_unpack(
    struct can1__main_ft24_abx_driver_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t abx_steering_angle;

    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->abx_apps_percent = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->abx_brake_p_f = unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->abx_brake_p_f |= unpack_left_shift_u16(src_p[2], 8u, 0x0fu);
    dst_p->abx_brake_p_r = unpack_right_shift_u16(src_p[2], 4u, 0xf0u);
    dst_p->abx_brake_p_r |= unpack_left_shift_u16(src_p[3], 4u, 0xffu);
    abx_steering_angle = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->abx_steering_angle = (int8_t)abx_steering_angle;
    dst_p->abx_speed = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
    dst_p->abx_lapcounter = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
    dst_p->abx_sectorcounter = unpack_right_shift_u8(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_abx_driver_init(struct can1__main_ft24_abx_driver_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_abx_driver_t));

    return 0;
}

uint8_t can1__main_ft24_abx_driver_abx_apps_percent_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_abx_driver_abx_apps_percent_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_abx_driver_abx_apps_percent_is_in_range(uint8_t value)
{
    return (value <= 100u);
}

uint16_t can1__main_ft24_abx_driver_abx_brake_p_f_encode(double value)
{
    return (uint16_t)(value / 0.1);
}

double can1__main_ft24_abx_driver_abx_brake_p_f_decode(uint16_t value)
{
    return ((double)value * 0.1);
}

bool can1__main_ft24_abx_driver_abx_brake_p_f_is_in_range(uint16_t value)
{
    return (value <= 1600u);
}

uint16_t can1__main_ft24_abx_driver_abx_brake_p_r_encode(double value)
{
    return (uint16_t)(value / 0.1);
}

double can1__main_ft24_abx_driver_abx_brake_p_r_decode(uint16_t value)
{
    return ((double)value * 0.1);
}

bool can1__main_ft24_abx_driver_abx_brake_p_r_is_in_range(uint16_t value)
{
    return (value <= 1600u);
}

int8_t can1__main_ft24_abx_driver_abx_steering_angle_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_abx_driver_abx_steering_angle_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_abx_driver_abx_steering_angle_is_in_range(int8_t value)
{
    (void)value;

    return (true);
}

uint8_t can1__main_ft24_abx_driver_abx_speed_encode(double value)
{
    return (uint8_t)(value / 0.2);
}

double can1__main_ft24_abx_driver_abx_speed_decode(uint8_t value)
{
    return ((double)value * 0.2);
}

bool can1__main_ft24_abx_driver_abx_speed_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

uint8_t can1__main_ft24_abx_driver_abx_lapcounter_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_abx_driver_abx_lapcounter_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_abx_driver_abx_lapcounter_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

uint8_t can1__main_ft24_abx_driver_abx_sectorcounter_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_abx_driver_abx_sectorcounter_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_abx_driver_abx_sectorcounter_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_tts_config_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_tts_config_t *src_p,
    size_t size)
{
    if (size < 1u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 1);

    dst_p[0] |= pack_left_shift_u8(src_p->tts_new_id, 0u, 0x03u);

    return (1);
}

int can1__main_ft24_tts_config_unpack(
    struct can1__main_ft24_tts_config_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 1u) {
        return (-EINVAL);
    }

    dst_p->tts_new_id = unpack_right_shift_u8(src_p[0], 0u, 0x03u);

    return (0);
}

int can1__main_ft24_tts_config_init(struct can1__main_ft24_tts_config_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_tts_config_t));

    return 0;
}

uint8_t can1__main_ft24_tts_config_tts_new_id_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_tts_config_tts_new_id_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_tts_config_tts_new_id_is_in_range(uint8_t value)
{
    return (value <= 3u);
}

int can1__main_ft24_tts_rr_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_tts_rr_t *src_p,
    size_t size)
{
    uint16_t tts_rr_center;
    uint16_t tts_rr_center_in;
    uint16_t tts_rr_center_out;
    uint16_t tts_rr_inner;
    uint16_t tts_rr_outer;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    tts_rr_inner = (uint16_t)src_p->tts_rr_inner;
    dst_p[0] |= pack_left_shift_u16(tts_rr_inner, 0u, 0xffu);
    dst_p[1] |= pack_right_shift_u16(tts_rr_inner, 8u, 0x0fu);
    tts_rr_center_in = (uint16_t)src_p->tts_rr_center_in;
    dst_p[1] |= pack_left_shift_u16(tts_rr_center_in, 4u, 0xf0u);
    dst_p[2] |= pack_right_shift_u16(tts_rr_center_in, 4u, 0xffu);
    tts_rr_center = (uint16_t)src_p->tts_rr_center;
    dst_p[3] |= pack_left_shift_u16(tts_rr_center, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(tts_rr_center, 8u, 0x0fu);
    tts_rr_center_out = (uint16_t)src_p->tts_rr_center_out;
    dst_p[4] |= pack_left_shift_u16(tts_rr_center_out, 4u, 0xf0u);
    dst_p[5] |= pack_right_shift_u16(tts_rr_center_out, 4u, 0xffu);
    tts_rr_outer = (uint16_t)src_p->tts_rr_outer;
    dst_p[6] |= pack_left_shift_u16(tts_rr_outer, 0u, 0xffu);
    dst_p[7] |= pack_right_shift_u16(tts_rr_outer, 8u, 0x0fu);

    return (8);
}

int can1__main_ft24_tts_rr_unpack(
    struct can1__main_ft24_tts_rr_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint16_t tts_rr_center;
    uint16_t tts_rr_center_in;
    uint16_t tts_rr_center_out;
    uint16_t tts_rr_inner;
    uint16_t tts_rr_outer;

    if (size < 8u) {
        return (-EINVAL);
    }

    tts_rr_inner = unpack_right_shift_u16(src_p[0], 0u, 0xffu);
    tts_rr_inner |= unpack_left_shift_u16(src_p[1], 8u, 0x0fu);

    if ((tts_rr_inner & (1u << 11)) != 0u) {
        tts_rr_inner |= 0xf000u;
    }

    dst_p->tts_rr_inner = (int16_t)tts_rr_inner;
    tts_rr_center_in = unpack_right_shift_u16(src_p[1], 4u, 0xf0u);
    tts_rr_center_in |= unpack_left_shift_u16(src_p[2], 4u, 0xffu);

    if ((tts_rr_center_in & (1u << 11)) != 0u) {
        tts_rr_center_in |= 0xf000u;
    }

    dst_p->tts_rr_center_in = (int16_t)tts_rr_center_in;
    tts_rr_center = unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    tts_rr_center |= unpack_left_shift_u16(src_p[4], 8u, 0x0fu);

    if ((tts_rr_center & (1u << 11)) != 0u) {
        tts_rr_center |= 0xf000u;
    }

    dst_p->tts_rr_center = (int16_t)tts_rr_center;
    tts_rr_center_out = unpack_right_shift_u16(src_p[4], 4u, 0xf0u);
    tts_rr_center_out |= unpack_left_shift_u16(src_p[5], 4u, 0xffu);

    if ((tts_rr_center_out & (1u << 11)) != 0u) {
        tts_rr_center_out |= 0xf000u;
    }

    dst_p->tts_rr_center_out = (int16_t)tts_rr_center_out;
    tts_rr_outer = unpack_right_shift_u16(src_p[6], 0u, 0xffu);
    tts_rr_outer |= unpack_left_shift_u16(src_p[7], 8u, 0x0fu);

    if ((tts_rr_outer & (1u << 11)) != 0u) {
        tts_rr_outer |= 0xf000u;
    }

    dst_p->tts_rr_outer = (int16_t)tts_rr_outer;

    return (0);
}

int can1__main_ft24_tts_rr_init(struct can1__main_ft24_tts_rr_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_tts_rr_t));

    return 0;
}

int16_t can1__main_ft24_tts_rr_tts_rr_inner_encode(double value)
{
    return (int16_t)((value - 150.0) / 0.1);
}

double can1__main_ft24_tts_rr_tts_rr_inner_decode(int16_t value)
{
    return (((double)value * 0.1) + 150.0);
}

bool can1__main_ft24_tts_rr_tts_rr_inner_is_in_range(int16_t value)
{
    return ((value >= -2048) && (value <= 2047));
}

int16_t can1__main_ft24_tts_rr_tts_rr_center_in_encode(double value)
{
    return (int16_t)((value - 150.0) / 0.1);
}

double can1__main_ft24_tts_rr_tts_rr_center_in_decode(int16_t value)
{
    return (((double)value * 0.1) + 150.0);
}

bool can1__main_ft24_tts_rr_tts_rr_center_in_is_in_range(int16_t value)
{
    return ((value >= -2048) && (value <= 2047));
}

int16_t can1__main_ft24_tts_rr_tts_rr_center_encode(double value)
{
    return (int16_t)((value - 150.0) / 0.1);
}

double can1__main_ft24_tts_rr_tts_rr_center_decode(int16_t value)
{
    return (((double)value * 0.1) + 150.0);
}

bool can1__main_ft24_tts_rr_tts_rr_center_is_in_range(int16_t value)
{
    return ((value >= -2048) && (value <= 2047));
}

int16_t can1__main_ft24_tts_rr_tts_rr_center_out_encode(double value)
{
    return (int16_t)((value - 150.0) / 0.1);
}

double can1__main_ft24_tts_rr_tts_rr_center_out_decode(int16_t value)
{
    return (((double)value * 0.1) + 150.0);
}

bool can1__main_ft24_tts_rr_tts_rr_center_out_is_in_range(int16_t value)
{
    return ((value >= -2048) && (value <= 2047));
}

int16_t can1__main_ft24_tts_rr_tts_rr_outer_encode(double value)
{
    return (int16_t)((value - 150.0) / 0.1);
}

double can1__main_ft24_tts_rr_tts_rr_outer_decode(int16_t value)
{
    return (((double)value * 0.1) + 150.0);
}

bool can1__main_ft24_tts_rr_tts_rr_outer_is_in_range(int16_t value)
{
    return ((value >= -2048) && (value <= 2047));
}

int can1__main_ft24_tts_rl_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_tts_rl_t *src_p,
    size_t size)
{
    uint16_t tts_rl_center;
    uint16_t tts_rl_center_in;
    uint16_t tts_rl_center_out;
    uint16_t tts_rl_inner;
    uint16_t tts_rl_outer;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    tts_rl_outer = (uint16_t)src_p->tts_rl_outer;
    dst_p[0] |= pack_left_shift_u16(tts_rl_outer, 0u, 0xffu);
    dst_p[1] |= pack_right_shift_u16(tts_rl_outer, 8u, 0x0fu);
    tts_rl_center_out = (uint16_t)src_p->tts_rl_center_out;
    dst_p[1] |= pack_left_shift_u16(tts_rl_center_out, 4u, 0xf0u);
    dst_p[2] |= pack_right_shift_u16(tts_rl_center_out, 4u, 0xffu);
    tts_rl_center = (uint16_t)src_p->tts_rl_center;
    dst_p[3] |= pack_left_shift_u16(tts_rl_center, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(tts_rl_center, 8u, 0x0fu);
    tts_rl_center_in = (uint16_t)src_p->tts_rl_center_in;
    dst_p[4] |= pack_left_shift_u16(tts_rl_center_in, 4u, 0xf0u);
    dst_p[5] |= pack_right_shift_u16(tts_rl_center_in, 4u, 0xffu);
    tts_rl_inner = (uint16_t)src_p->tts_rl_inner;
    dst_p[6] |= pack_left_shift_u16(tts_rl_inner, 0u, 0xffu);
    dst_p[7] |= pack_right_shift_u16(tts_rl_inner, 8u, 0x0fu);

    return (8);
}

int can1__main_ft24_tts_rl_unpack(
    struct can1__main_ft24_tts_rl_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint16_t tts_rl_center;
    uint16_t tts_rl_center_in;
    uint16_t tts_rl_center_out;
    uint16_t tts_rl_inner;
    uint16_t tts_rl_outer;

    if (size < 8u) {
        return (-EINVAL);
    }

    tts_rl_outer = unpack_right_shift_u16(src_p[0], 0u, 0xffu);
    tts_rl_outer |= unpack_left_shift_u16(src_p[1], 8u, 0x0fu);

    if ((tts_rl_outer & (1u << 11)) != 0u) {
        tts_rl_outer |= 0xf000u;
    }

    dst_p->tts_rl_outer = (int16_t)tts_rl_outer;
    tts_rl_center_out = unpack_right_shift_u16(src_p[1], 4u, 0xf0u);
    tts_rl_center_out |= unpack_left_shift_u16(src_p[2], 4u, 0xffu);

    if ((tts_rl_center_out & (1u << 11)) != 0u) {
        tts_rl_center_out |= 0xf000u;
    }

    dst_p->tts_rl_center_out = (int16_t)tts_rl_center_out;
    tts_rl_center = unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    tts_rl_center |= unpack_left_shift_u16(src_p[4], 8u, 0x0fu);

    if ((tts_rl_center & (1u << 11)) != 0u) {
        tts_rl_center |= 0xf000u;
    }

    dst_p->tts_rl_center = (int16_t)tts_rl_center;
    tts_rl_center_in = unpack_right_shift_u16(src_p[4], 4u, 0xf0u);
    tts_rl_center_in |= unpack_left_shift_u16(src_p[5], 4u, 0xffu);

    if ((tts_rl_center_in & (1u << 11)) != 0u) {
        tts_rl_center_in |= 0xf000u;
    }

    dst_p->tts_rl_center_in = (int16_t)tts_rl_center_in;
    tts_rl_inner = unpack_right_shift_u16(src_p[6], 0u, 0xffu);
    tts_rl_inner |= unpack_left_shift_u16(src_p[7], 8u, 0x0fu);

    if ((tts_rl_inner & (1u << 11)) != 0u) {
        tts_rl_inner |= 0xf000u;
    }

    dst_p->tts_rl_inner = (int16_t)tts_rl_inner;

    return (0);
}

int can1__main_ft24_tts_rl_init(struct can1__main_ft24_tts_rl_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_tts_rl_t));

    return 0;
}

int16_t can1__main_ft24_tts_rl_tts_rl_outer_encode(double value)
{
    return (int16_t)((value - 150.0) / 0.1);
}

double can1__main_ft24_tts_rl_tts_rl_outer_decode(int16_t value)
{
    return (((double)value * 0.1) + 150.0);
}

bool can1__main_ft24_tts_rl_tts_rl_outer_is_in_range(int16_t value)
{
    return ((value >= -2048) && (value <= 2047));
}

int16_t can1__main_ft24_tts_rl_tts_rl_center_out_encode(double value)
{
    return (int16_t)((value - 150.0) / 0.1);
}

double can1__main_ft24_tts_rl_tts_rl_center_out_decode(int16_t value)
{
    return (((double)value * 0.1) + 150.0);
}

bool can1__main_ft24_tts_rl_tts_rl_center_out_is_in_range(int16_t value)
{
    return ((value >= -2048) && (value <= 2047));
}

int16_t can1__main_ft24_tts_rl_tts_rl_center_encode(double value)
{
    return (int16_t)((value - 150.0) / 0.1);
}

double can1__main_ft24_tts_rl_tts_rl_center_decode(int16_t value)
{
    return (((double)value * 0.1) + 150.0);
}

bool can1__main_ft24_tts_rl_tts_rl_center_is_in_range(int16_t value)
{
    return ((value >= -2048) && (value <= 2047));
}

int16_t can1__main_ft24_tts_rl_tts_rl_center_in_encode(double value)
{
    return (int16_t)((value - 150.0) / 0.1);
}

double can1__main_ft24_tts_rl_tts_rl_center_in_decode(int16_t value)
{
    return (((double)value * 0.1) + 150.0);
}

bool can1__main_ft24_tts_rl_tts_rl_center_in_is_in_range(int16_t value)
{
    return ((value >= -2048) && (value <= 2047));
}

int16_t can1__main_ft24_tts_rl_tts_rl_inner_encode(double value)
{
    return (int16_t)((value - 150.0) / 0.1);
}

double can1__main_ft24_tts_rl_tts_rl_inner_decode(int16_t value)
{
    return (((double)value * 0.1) + 150.0);
}

bool can1__main_ft24_tts_rl_tts_rl_inner_is_in_range(int16_t value)
{
    return ((value >= -2048) && (value <= 2047));
}

int can1__main_ft24_tts_fr_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_tts_fr_t *src_p,
    size_t size)
{
    uint16_t tts_fr_center;
    uint16_t tts_fr_center_in;
    uint16_t tts_fr_center_out;
    uint16_t tts_fr_inner;
    uint16_t tts_fr_outer;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    tts_fr_inner = (uint16_t)src_p->tts_fr_inner;
    dst_p[0] |= pack_left_shift_u16(tts_fr_inner, 0u, 0xffu);
    dst_p[1] |= pack_right_shift_u16(tts_fr_inner, 8u, 0x0fu);
    tts_fr_center_in = (uint16_t)src_p->tts_fr_center_in;
    dst_p[1] |= pack_left_shift_u16(tts_fr_center_in, 4u, 0xf0u);
    dst_p[2] |= pack_right_shift_u16(tts_fr_center_in, 4u, 0xffu);
    tts_fr_center = (uint16_t)src_p->tts_fr_center;
    dst_p[3] |= pack_left_shift_u16(tts_fr_center, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(tts_fr_center, 8u, 0x0fu);
    tts_fr_center_out = (uint16_t)src_p->tts_fr_center_out;
    dst_p[4] |= pack_left_shift_u16(tts_fr_center_out, 4u, 0xf0u);
    dst_p[5] |= pack_right_shift_u16(tts_fr_center_out, 4u, 0xffu);
    tts_fr_outer = (uint16_t)src_p->tts_fr_outer;
    dst_p[6] |= pack_left_shift_u16(tts_fr_outer, 0u, 0xffu);
    dst_p[7] |= pack_right_shift_u16(tts_fr_outer, 8u, 0x0fu);

    return (8);
}

int can1__main_ft24_tts_fr_unpack(
    struct can1__main_ft24_tts_fr_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint16_t tts_fr_center;
    uint16_t tts_fr_center_in;
    uint16_t tts_fr_center_out;
    uint16_t tts_fr_inner;
    uint16_t tts_fr_outer;

    if (size < 8u) {
        return (-EINVAL);
    }

    tts_fr_inner = unpack_right_shift_u16(src_p[0], 0u, 0xffu);
    tts_fr_inner |= unpack_left_shift_u16(src_p[1], 8u, 0x0fu);

    if ((tts_fr_inner & (1u << 11)) != 0u) {
        tts_fr_inner |= 0xf000u;
    }

    dst_p->tts_fr_inner = (int16_t)tts_fr_inner;
    tts_fr_center_in = unpack_right_shift_u16(src_p[1], 4u, 0xf0u);
    tts_fr_center_in |= unpack_left_shift_u16(src_p[2], 4u, 0xffu);

    if ((tts_fr_center_in & (1u << 11)) != 0u) {
        tts_fr_center_in |= 0xf000u;
    }

    dst_p->tts_fr_center_in = (int16_t)tts_fr_center_in;
    tts_fr_center = unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    tts_fr_center |= unpack_left_shift_u16(src_p[4], 8u, 0x0fu);

    if ((tts_fr_center & (1u << 11)) != 0u) {
        tts_fr_center |= 0xf000u;
    }

    dst_p->tts_fr_center = (int16_t)tts_fr_center;
    tts_fr_center_out = unpack_right_shift_u16(src_p[4], 4u, 0xf0u);
    tts_fr_center_out |= unpack_left_shift_u16(src_p[5], 4u, 0xffu);

    if ((tts_fr_center_out & (1u << 11)) != 0u) {
        tts_fr_center_out |= 0xf000u;
    }

    dst_p->tts_fr_center_out = (int16_t)tts_fr_center_out;
    tts_fr_outer = unpack_right_shift_u16(src_p[6], 0u, 0xffu);
    tts_fr_outer |= unpack_left_shift_u16(src_p[7], 8u, 0x0fu);

    if ((tts_fr_outer & (1u << 11)) != 0u) {
        tts_fr_outer |= 0xf000u;
    }

    dst_p->tts_fr_outer = (int16_t)tts_fr_outer;

    return (0);
}

int can1__main_ft24_tts_fr_init(struct can1__main_ft24_tts_fr_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_tts_fr_t));

    return 0;
}

int16_t can1__main_ft24_tts_fr_tts_fr_inner_encode(double value)
{
    return (int16_t)((value - 150.0) / 0.1);
}

double can1__main_ft24_tts_fr_tts_fr_inner_decode(int16_t value)
{
    return (((double)value * 0.1) + 150.0);
}

bool can1__main_ft24_tts_fr_tts_fr_inner_is_in_range(int16_t value)
{
    return ((value >= -2048) && (value <= 2047));
}

int16_t can1__main_ft24_tts_fr_tts_fr_center_in_encode(double value)
{
    return (int16_t)((value - 150.0) / 0.1);
}

double can1__main_ft24_tts_fr_tts_fr_center_in_decode(int16_t value)
{
    return (((double)value * 0.1) + 150.0);
}

bool can1__main_ft24_tts_fr_tts_fr_center_in_is_in_range(int16_t value)
{
    return ((value >= -2048) && (value <= 2047));
}

int16_t can1__main_ft24_tts_fr_tts_fr_center_encode(double value)
{
    return (int16_t)((value - 150.0) / 0.1);
}

double can1__main_ft24_tts_fr_tts_fr_center_decode(int16_t value)
{
    return (((double)value * 0.1) + 150.0);
}

bool can1__main_ft24_tts_fr_tts_fr_center_is_in_range(int16_t value)
{
    return ((value >= -2048) && (value <= 2047));
}

int16_t can1__main_ft24_tts_fr_tts_fr_center_out_encode(double value)
{
    return (int16_t)((value - 150.0) / 0.1);
}

double can1__main_ft24_tts_fr_tts_fr_center_out_decode(int16_t value)
{
    return (((double)value * 0.1) + 150.0);
}

bool can1__main_ft24_tts_fr_tts_fr_center_out_is_in_range(int16_t value)
{
    return ((value >= -2048) && (value <= 2047));
}

int16_t can1__main_ft24_tts_fr_tts_fr_outer_encode(double value)
{
    return (int16_t)((value - 150.0) / 0.1);
}

double can1__main_ft24_tts_fr_tts_fr_outer_decode(int16_t value)
{
    return (((double)value * 0.1) + 150.0);
}

bool can1__main_ft24_tts_fr_tts_fr_outer_is_in_range(int16_t value)
{
    return ((value >= -2048) && (value <= 2047));
}

int can1__main_ft24_tts_fl_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_tts_fl_t *src_p,
    size_t size)
{
    uint16_t tts_fl_center;
    uint16_t tts_fl_center_in;
    uint16_t tts_fl_center_out;
    uint16_t tts_fl_inner;
    uint16_t tts_fl_outer;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    tts_fl_outer = (uint16_t)src_p->tts_fl_outer;
    dst_p[0] |= pack_left_shift_u16(tts_fl_outer, 0u, 0xffu);
    dst_p[1] |= pack_right_shift_u16(tts_fl_outer, 8u, 0x0fu);
    tts_fl_center_out = (uint16_t)src_p->tts_fl_center_out;
    dst_p[1] |= pack_left_shift_u16(tts_fl_center_out, 4u, 0xf0u);
    dst_p[2] |= pack_right_shift_u16(tts_fl_center_out, 4u, 0xffu);
    tts_fl_center = (uint16_t)src_p->tts_fl_center;
    dst_p[3] |= pack_left_shift_u16(tts_fl_center, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(tts_fl_center, 8u, 0x0fu);
    tts_fl_center_in = (uint16_t)src_p->tts_fl_center_in;
    dst_p[4] |= pack_left_shift_u16(tts_fl_center_in, 4u, 0xf0u);
    dst_p[5] |= pack_right_shift_u16(tts_fl_center_in, 4u, 0xffu);
    tts_fl_inner = (uint16_t)src_p->tts_fl_inner;
    dst_p[6] |= pack_left_shift_u16(tts_fl_inner, 0u, 0xffu);
    dst_p[7] |= pack_right_shift_u16(tts_fl_inner, 8u, 0x0fu);

    return (8);
}

int can1__main_ft24_tts_fl_unpack(
    struct can1__main_ft24_tts_fl_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint16_t tts_fl_center;
    uint16_t tts_fl_center_in;
    uint16_t tts_fl_center_out;
    uint16_t tts_fl_inner;
    uint16_t tts_fl_outer;

    if (size < 8u) {
        return (-EINVAL);
    }

    tts_fl_outer = unpack_right_shift_u16(src_p[0], 0u, 0xffu);
    tts_fl_outer |= unpack_left_shift_u16(src_p[1], 8u, 0x0fu);

    if ((tts_fl_outer & (1u << 11)) != 0u) {
        tts_fl_outer |= 0xf000u;
    }

    dst_p->tts_fl_outer = (int16_t)tts_fl_outer;
    tts_fl_center_out = unpack_right_shift_u16(src_p[1], 4u, 0xf0u);
    tts_fl_center_out |= unpack_left_shift_u16(src_p[2], 4u, 0xffu);

    if ((tts_fl_center_out & (1u << 11)) != 0u) {
        tts_fl_center_out |= 0xf000u;
    }

    dst_p->tts_fl_center_out = (int16_t)tts_fl_center_out;
    tts_fl_center = unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    tts_fl_center |= unpack_left_shift_u16(src_p[4], 8u, 0x0fu);

    if ((tts_fl_center & (1u << 11)) != 0u) {
        tts_fl_center |= 0xf000u;
    }

    dst_p->tts_fl_center = (int16_t)tts_fl_center;
    tts_fl_center_in = unpack_right_shift_u16(src_p[4], 4u, 0xf0u);
    tts_fl_center_in |= unpack_left_shift_u16(src_p[5], 4u, 0xffu);

    if ((tts_fl_center_in & (1u << 11)) != 0u) {
        tts_fl_center_in |= 0xf000u;
    }

    dst_p->tts_fl_center_in = (int16_t)tts_fl_center_in;
    tts_fl_inner = unpack_right_shift_u16(src_p[6], 0u, 0xffu);
    tts_fl_inner |= unpack_left_shift_u16(src_p[7], 8u, 0x0fu);

    if ((tts_fl_inner & (1u << 11)) != 0u) {
        tts_fl_inner |= 0xf000u;
    }

    dst_p->tts_fl_inner = (int16_t)tts_fl_inner;

    return (0);
}

int can1__main_ft24_tts_fl_init(struct can1__main_ft24_tts_fl_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_tts_fl_t));

    return 0;
}

int16_t can1__main_ft24_tts_fl_tts_fl_outer_encode(double value)
{
    return (int16_t)((value - 150.0) / 0.1);
}

double can1__main_ft24_tts_fl_tts_fl_outer_decode(int16_t value)
{
    return (((double)value * 0.1) + 150.0);
}

bool can1__main_ft24_tts_fl_tts_fl_outer_is_in_range(int16_t value)
{
    return ((value >= -2048) && (value <= 2047));
}

int16_t can1__main_ft24_tts_fl_tts_fl_center_out_encode(double value)
{
    return (int16_t)((value - 150.0) / 0.1);
}

double can1__main_ft24_tts_fl_tts_fl_center_out_decode(int16_t value)
{
    return (((double)value * 0.1) + 150.0);
}

bool can1__main_ft24_tts_fl_tts_fl_center_out_is_in_range(int16_t value)
{
    return ((value >= -2048) && (value <= 2047));
}

int16_t can1__main_ft24_tts_fl_tts_fl_center_encode(double value)
{
    return (int16_t)((value - 150.0) / 0.1);
}

double can1__main_ft24_tts_fl_tts_fl_center_decode(int16_t value)
{
    return (((double)value * 0.1) + 150.0);
}

bool can1__main_ft24_tts_fl_tts_fl_center_is_in_range(int16_t value)
{
    return ((value >= -2048) && (value <= 2047));
}

int16_t can1__main_ft24_tts_fl_tts_fl_center_in_encode(double value)
{
    return (int16_t)((value - 150.0) / 0.1);
}

double can1__main_ft24_tts_fl_tts_fl_center_in_decode(int16_t value)
{
    return (((double)value * 0.1) + 150.0);
}

bool can1__main_ft24_tts_fl_tts_fl_center_in_is_in_range(int16_t value)
{
    return ((value >= -2048) && (value <= 2047));
}

int16_t can1__main_ft24_tts_fl_tts_fl_inner_encode(double value)
{
    return (int16_t)((value - 150.0) / 0.1);
}

double can1__main_ft24_tts_fl_tts_fl_inner_decode(int16_t value)
{
    return (((double)value * 0.1) + 150.0);
}

bool can1__main_ft24_tts_fl_tts_fl_inner_is_in_range(int16_t value)
{
    return ((value >= -2048) && (value <= 2047));
}

int can1__main_ft24_stw_param_set_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_stw_param_set_t *src_p,
    size_t size)
{
    if (size < 5u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 5);

    dst_p[0] |= pack_left_shift_u8(src_p->stw_param_type, 0u, 0xffu);

    switch (src_p->stw_param_type) {

    case 0:
        dst_p[1] |= pack_right_shift_u32(src_p->stw_param_b_bal, 24u, 0xffu);
        dst_p[2] |= pack_right_shift_u32(src_p->stw_param_b_bal, 16u, 0xffu);
        dst_p[3] |= pack_right_shift_u32(src_p->stw_param_b_bal, 8u, 0xffu);
        dst_p[4] |= pack_left_shift_u32(src_p->stw_param_b_bal, 0u, 0xffu);
        break;

    case 1:
        dst_p[1] |= pack_right_shift_u32(src_p->stw_param_slipref, 24u, 0xffu);
        dst_p[2] |= pack_right_shift_u32(src_p->stw_param_slipref, 16u, 0xffu);
        dst_p[3] |= pack_right_shift_u32(src_p->stw_param_slipref, 8u, 0xffu);
        dst_p[4] |= pack_left_shift_u32(src_p->stw_param_slipref, 0u, 0xffu);
        break;

    case 2:
        dst_p[1] |= pack_right_shift_u32(src_p->stw_param_mumax, 24u, 0xffu);
        dst_p[2] |= pack_right_shift_u32(src_p->stw_param_mumax, 16u, 0xffu);
        dst_p[3] |= pack_right_shift_u32(src_p->stw_param_mumax, 8u, 0xffu);
        dst_p[4] |= pack_left_shift_u32(src_p->stw_param_mumax, 0u, 0xffu);
        break;

    case 3:
        dst_p[1] |= pack_right_shift_u32(src_p->stw_param_asrp, 24u, 0xffu);
        dst_p[2] |= pack_right_shift_u32(src_p->stw_param_asrp, 16u, 0xffu);
        dst_p[3] |= pack_right_shift_u32(src_p->stw_param_asrp, 8u, 0xffu);
        dst_p[4] |= pack_left_shift_u32(src_p->stw_param_asrp, 0u, 0xffu);
        break;

    case 4:
        dst_p[1] |= pack_right_shift_u32(src_p->stw_param_asron, 24u, 0xffu);
        dst_p[2] |= pack_right_shift_u32(src_p->stw_param_asron, 16u, 0xffu);
        dst_p[3] |= pack_right_shift_u32(src_p->stw_param_asron, 8u, 0xffu);
        dst_p[4] |= pack_left_shift_u32(src_p->stw_param_asron, 0u, 0xffu);
        break;

    case 5:
        dst_p[1] |= pack_right_shift_u32(src_p->stw_param_asri, 24u, 0xffu);
        dst_p[2] |= pack_right_shift_u32(src_p->stw_param_asri, 16u, 0xffu);
        dst_p[3] |= pack_right_shift_u32(src_p->stw_param_asri, 8u, 0xffu);
        dst_p[4] |= pack_left_shift_u32(src_p->stw_param_asri, 0u, 0xffu);
        break;

    case 6:
        dst_p[1] |= pack_right_shift_u32(src_p->stw_param_endu_power_limit, 24u, 0xffu);
        dst_p[2] |= pack_right_shift_u32(src_p->stw_param_endu_power_limit, 16u, 0xffu);
        dst_p[3] |= pack_right_shift_u32(src_p->stw_param_endu_power_limit, 8u, 0xffu);
        dst_p[4] |= pack_left_shift_u32(src_p->stw_param_endu_power_limit, 0u, 0xffu);
        break;

    case 7:
        dst_p[1] |= pack_right_shift_u32(src_p->stw_param_test3, 24u, 0xffu);
        dst_p[2] |= pack_right_shift_u32(src_p->stw_param_test3, 16u, 0xffu);
        dst_p[3] |= pack_right_shift_u32(src_p->stw_param_test3, 8u, 0xffu);
        dst_p[4] |= pack_left_shift_u32(src_p->stw_param_test3, 0u, 0xffu);
        break;

    case 8:
        dst_p[1] |= pack_right_shift_u32(src_p->stw_param_test4, 24u, 0xffu);
        dst_p[2] |= pack_right_shift_u32(src_p->stw_param_test4, 16u, 0xffu);
        dst_p[3] |= pack_right_shift_u32(src_p->stw_param_test4, 8u, 0xffu);
        dst_p[4] |= pack_left_shift_u32(src_p->stw_param_test4, 0u, 0xffu);
        break;

    default:
        break;
    }

    return (5);
}

int can1__main_ft24_stw_param_set_unpack(
    struct can1__main_ft24_stw_param_set_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 5u) {
        return (-EINVAL);
    }

    dst_p->stw_param_type = unpack_right_shift_u8(src_p[0], 0u, 0xffu);

    switch (dst_p->stw_param_type) {

    case 0:
        dst_p->stw_param_b_bal = unpack_left_shift_u32(src_p[1], 24u, 0xffu);
        dst_p->stw_param_b_bal |= unpack_left_shift_u32(src_p[2], 16u, 0xffu);
        dst_p->stw_param_b_bal |= unpack_left_shift_u32(src_p[3], 8u, 0xffu);
        dst_p->stw_param_b_bal |= unpack_right_shift_u32(src_p[4], 0u, 0xffu);
        break;

    case 1:
        dst_p->stw_param_slipref = unpack_left_shift_u32(src_p[1], 24u, 0xffu);
        dst_p->stw_param_slipref |= unpack_left_shift_u32(src_p[2], 16u, 0xffu);
        dst_p->stw_param_slipref |= unpack_left_shift_u32(src_p[3], 8u, 0xffu);
        dst_p->stw_param_slipref |= unpack_right_shift_u32(src_p[4], 0u, 0xffu);
        break;

    case 2:
        dst_p->stw_param_mumax = unpack_left_shift_u32(src_p[1], 24u, 0xffu);
        dst_p->stw_param_mumax |= unpack_left_shift_u32(src_p[2], 16u, 0xffu);
        dst_p->stw_param_mumax |= unpack_left_shift_u32(src_p[3], 8u, 0xffu);
        dst_p->stw_param_mumax |= unpack_right_shift_u32(src_p[4], 0u, 0xffu);
        break;

    case 3:
        dst_p->stw_param_asrp = unpack_left_shift_u32(src_p[1], 24u, 0xffu);
        dst_p->stw_param_asrp |= unpack_left_shift_u32(src_p[2], 16u, 0xffu);
        dst_p->stw_param_asrp |= unpack_left_shift_u32(src_p[3], 8u, 0xffu);
        dst_p->stw_param_asrp |= unpack_right_shift_u32(src_p[4], 0u, 0xffu);
        break;

    case 4:
        dst_p->stw_param_asron = unpack_left_shift_u32(src_p[1], 24u, 0xffu);
        dst_p->stw_param_asron |= unpack_left_shift_u32(src_p[2], 16u, 0xffu);
        dst_p->stw_param_asron |= unpack_left_shift_u32(src_p[3], 8u, 0xffu);
        dst_p->stw_param_asron |= unpack_right_shift_u32(src_p[4], 0u, 0xffu);
        break;

    case 5:
        dst_p->stw_param_asri = unpack_left_shift_u32(src_p[1], 24u, 0xffu);
        dst_p->stw_param_asri |= unpack_left_shift_u32(src_p[2], 16u, 0xffu);
        dst_p->stw_param_asri |= unpack_left_shift_u32(src_p[3], 8u, 0xffu);
        dst_p->stw_param_asri |= unpack_right_shift_u32(src_p[4], 0u, 0xffu);
        break;

    case 6:
        dst_p->stw_param_endu_power_limit = unpack_left_shift_u32(src_p[1], 24u, 0xffu);
        dst_p->stw_param_endu_power_limit |= unpack_left_shift_u32(src_p[2], 16u, 0xffu);
        dst_p->stw_param_endu_power_limit |= unpack_left_shift_u32(src_p[3], 8u, 0xffu);
        dst_p->stw_param_endu_power_limit |= unpack_right_shift_u32(src_p[4], 0u, 0xffu);
        break;

    case 7:
        dst_p->stw_param_test3 = unpack_left_shift_u32(src_p[1], 24u, 0xffu);
        dst_p->stw_param_test3 |= unpack_left_shift_u32(src_p[2], 16u, 0xffu);
        dst_p->stw_param_test3 |= unpack_left_shift_u32(src_p[3], 8u, 0xffu);
        dst_p->stw_param_test3 |= unpack_right_shift_u32(src_p[4], 0u, 0xffu);
        break;

    case 8:
        dst_p->stw_param_test4 = unpack_left_shift_u32(src_p[1], 24u, 0xffu);
        dst_p->stw_param_test4 |= unpack_left_shift_u32(src_p[2], 16u, 0xffu);
        dst_p->stw_param_test4 |= unpack_left_shift_u32(src_p[3], 8u, 0xffu);
        dst_p->stw_param_test4 |= unpack_right_shift_u32(src_p[4], 0u, 0xffu);
        break;

    default:
        break;
    }

    return (0);
}

int can1__main_ft24_stw_param_set_init(struct can1__main_ft24_stw_param_set_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_stw_param_set_t));

    return 0;
}

uint8_t can1__main_ft24_stw_param_set_stw_param_type_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_stw_param_set_stw_param_type_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_param_set_stw_param_type_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

uint32_t can1__main_ft24_stw_param_set_stw_param_b_bal_encode(double value)
{
    return (uint32_t)(value / 0.1);
}

double can1__main_ft24_stw_param_set_stw_param_b_bal_decode(uint32_t value)
{
    return ((double)value * 0.1);
}

bool can1__main_ft24_stw_param_set_stw_param_b_bal_is_in_range(uint32_t value)
{
    (void)value;

    return (true);
}

uint32_t can1__main_ft24_stw_param_set_stw_param_slipref_encode(double value)
{
    return (uint32_t)(value / 0.01);
}

double can1__main_ft24_stw_param_set_stw_param_slipref_decode(uint32_t value)
{
    return ((double)value * 0.01);
}

bool can1__main_ft24_stw_param_set_stw_param_slipref_is_in_range(uint32_t value)
{
    return (value <= 100u);
}

uint32_t can1__main_ft24_stw_param_set_stw_param_asrp_encode(double value)
{
    return (uint32_t)(value);
}

double can1__main_ft24_stw_param_set_stw_param_asrp_decode(uint32_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_param_set_stw_param_asrp_is_in_range(uint32_t value)
{
    return (value <= 1u);
}

uint32_t can1__main_ft24_stw_param_set_stw_param_asron_encode(double value)
{
    return (uint32_t)(value);
}

double can1__main_ft24_stw_param_set_stw_param_asron_decode(uint32_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_param_set_stw_param_asron_is_in_range(uint32_t value)
{
    return (value <= 1u);
}

uint32_t can1__main_ft24_stw_param_set_stw_param_asri_encode(double value)
{
    return (uint32_t)(value);
}

double can1__main_ft24_stw_param_set_stw_param_asri_decode(uint32_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_param_set_stw_param_asri_is_in_range(uint32_t value)
{
    return (value <= 1u);
}

uint32_t can1__main_ft24_stw_param_set_stw_param_endu_power_limit_encode(double value)
{
    return (uint32_t)(value);
}

double can1__main_ft24_stw_param_set_stw_param_endu_power_limit_decode(uint32_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_param_set_stw_param_endu_power_limit_is_in_range(uint32_t value)
{
    return (value <= 1u);
}

uint32_t can1__main_ft24_stw_param_set_stw_param_test3_encode(double value)
{
    return (uint32_t)(value);
}

double can1__main_ft24_stw_param_set_stw_param_test3_decode(uint32_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_param_set_stw_param_test3_is_in_range(uint32_t value)
{
    return (value <= 1u);
}

uint32_t can1__main_ft24_stw_param_set_stw_param_test4_encode(double value)
{
    return (uint32_t)(value);
}

double can1__main_ft24_stw_param_set_stw_param_test4_decode(uint32_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_param_set_stw_param_test4_is_in_range(uint32_t value)
{
    return (value <= 1u);
}

uint32_t can1__main_ft24_stw_param_set_stw_param_mumax_encode(double value)
{
    return (uint32_t)(value / 0.1);
}

double can1__main_ft24_stw_param_set_stw_param_mumax_decode(uint32_t value)
{
    return ((double)value * 0.1);
}

bool can1__main_ft24_stw_param_set_stw_param_mumax_is_in_range(uint32_t value)
{
    return (value <= 10u);
}

int can1__main_ft24_ams_slave0_status_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave0_status_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_error, 7u, 0x80u);
    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_status_id, 0u, 0x7fu);
    dst_p[1] |= pack_left_shift_u8(src_p->ams_slave_status_so_c, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->ams_slave_status_min_cell_volt, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->ams_slave_status_min_cell_volt, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->ams_slave_status_max_cell_volt, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->ams_slave_status_max_cell_volt, 0u, 0xffu);
    ams_slave_status_max_temp = (uint16_t)src_p->ams_slave_status_max_temp;
    dst_p[6] |= pack_right_shift_u16(ams_slave_status_max_temp, 8u, 0x0fu);
    dst_p[7] |= pack_left_shift_u16(ams_slave_status_max_temp, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave0_status_unpack(
    struct can1__main_ft24_ams_slave0_status_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint16_t ams_slave_status_max_temp;

    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave_status_error = unpack_right_shift_u8(src_p[0], 7u, 0x80u);
    dst_p->ams_slave_status_id = unpack_right_shift_u8(src_p[0], 0u, 0x7fu);
    dst_p->ams_slave_status_so_c = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->ams_slave_status_min_cell_volt |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->ams_slave_status_max_cell_volt |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    ams_slave_status_max_temp = unpack_left_shift_u16(src_p[6], 8u, 0x0fu);
    ams_slave_status_max_temp |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    if ((ams_slave_status_max_temp & (1u << 11)) != 0u) {
        ams_slave_status_max_temp |= 0xf000u;
    }

    dst_p->ams_slave_status_max_temp = (int16_t)ams_slave_status_max_temp;

    return (0);
}

int can1__main_ft24_ams_slave0_status_init(struct can1__main_ft24_ams_slave0_status_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave0_status_t));

    return 0;
}

uint8_t can1__main_ft24_ams_slave0_status_ams_slave_status_error_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave0_status_ams_slave_status_error_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_status_ams_slave_status_error_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_ams_slave0_status_ams_slave_status_id_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave0_status_ams_slave_status_id_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_status_ams_slave_status_id_is_in_range(uint8_t value)
{
    return (value <= 127u);
}

uint8_t can1__main_ft24_ams_slave0_status_ams_slave_status_so_c_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave0_status_ams_slave_status_so_c_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave0_status_ams_slave_status_so_c_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint16_t can1__main_ft24_ams_slave0_status_ams_slave_status_min_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave0_status_ams_slave_status_min_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave0_status_ams_slave_status_min_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

uint16_t can1__main_ft24_ams_slave0_status_ams_slave_status_max_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_slave0_status_ams_slave_status_max_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_slave0_status_ams_slave_status_max_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 10000u);
}

int16_t can1__main_ft24_ams_slave0_status_ams_slave_status_max_temp_encode(double value)
{
    return (int16_t)(value / 0.0625);
}

double can1__main_ft24_ams_slave0_status_ams_slave_status_max_temp_decode(int16_t value)
{
    return ((double)value * 0.0625);
}

bool can1__main_ft24_ams_slave0_status_ams_slave_status_max_temp_is_in_range(int16_t value)
{
    return ((value >= 0) && (value <= 16));
}

int can1__main_ft24_ssu_message_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ssu_message_t *src_p,
    size_t size)
{
    uint16_t ssu_air_pressure;
    uint16_t ssu_air_temp;

    if (size < 4u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 4);

    ssu_air_pressure = (uint16_t)src_p->ssu_air_pressure;
    dst_p[0] |= pack_left_shift_u16(ssu_air_pressure, 0u, 0xffu);
    dst_p[1] |= pack_right_shift_u16(ssu_air_pressure, 8u, 0xffu);
    ssu_air_temp = (uint16_t)src_p->ssu_air_temp;
    dst_p[2] |= pack_left_shift_u16(ssu_air_temp, 0u, 0xffu);
    dst_p[3] |= pack_right_shift_u16(ssu_air_temp, 8u, 0xffu);

    return (4);
}

int can1__main_ft24_ssu_message_unpack(
    struct can1__main_ft24_ssu_message_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint16_t ssu_air_pressure;
    uint16_t ssu_air_temp;

    if (size < 4u) {
        return (-EINVAL);
    }

    ssu_air_pressure = unpack_right_shift_u16(src_p[0], 0u, 0xffu);
    ssu_air_pressure |= unpack_left_shift_u16(src_p[1], 8u, 0xffu);
    dst_p->ssu_air_pressure = (int16_t)ssu_air_pressure;
    ssu_air_temp = unpack_right_shift_u16(src_p[2], 0u, 0xffu);
    ssu_air_temp |= unpack_left_shift_u16(src_p[3], 8u, 0xffu);
    dst_p->ssu_air_temp = (int16_t)ssu_air_temp;

    return (0);
}

int can1__main_ft24_ssu_message_init(struct can1__main_ft24_ssu_message_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ssu_message_t));

    return 0;
}

int16_t can1__main_ft24_ssu_message_ssu_air_pressure_encode(double value)
{
    return (int16_t)(value);
}

double can1__main_ft24_ssu_message_ssu_air_pressure_decode(int16_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ssu_message_ssu_air_pressure_is_in_range(int16_t value)
{
    return ((value >= -1000) && (value <= 1000));
}

int16_t can1__main_ft24_ssu_message_ssu_air_temp_encode(double value)
{
    return (int16_t)(value / 0.1);
}

double can1__main_ft24_ssu_message_ssu_air_temp_decode(int16_t value)
{
    return ((double)value * 0.1);
}

bool can1__main_ft24_ssu_message_ssu_air_temp_is_in_range(int16_t value)
{
    return ((value >= -200) && (value <= 800));
}

int can1__main_ft24_ams_status_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_status_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    dst_p[0] |= pack_left_shift_u8(src_p->ams_state, 0u, 0x7fu);
    dst_p[0] |= pack_left_shift_u8(src_p->sdc_closed, 7u, 0x80u);
    dst_p[1] |= pack_left_shift_u8(src_p->soc, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->min_cell_volt, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->min_cell_volt, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->max_cell_temp, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->max_cell_temp, 0u, 0xffu);

    return (6);
}

int can1__main_ft24_ams_status_unpack(
    struct can1__main_ft24_ams_status_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    dst_p->ams_state = unpack_right_shift_u8(src_p[0], 0u, 0x7fu);
    dst_p->sdc_closed = unpack_right_shift_u8(src_p[0], 7u, 0x80u);
    dst_p->soc = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->min_cell_volt = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->min_cell_volt |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->max_cell_temp = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->max_cell_temp |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_status_init(struct can1__main_ft24_ams_status_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_status_t));

    return 0;
}

uint8_t can1__main_ft24_ams_status_ams_state_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_status_ams_state_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_status_ams_state_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_ams_status_sdc_closed_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_status_sdc_closed_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_status_sdc_closed_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_ams_status_soc_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_status_soc_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_status_soc_is_in_range(uint8_t value)
{
    return (value <= 100u);
}

uint16_t can1__main_ft24_ams_status_min_cell_volt_encode(double value)
{
    return (uint16_t)(value / 0.0001);
}

double can1__main_ft24_ams_status_min_cell_volt_decode(uint16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_ams_status_min_cell_volt_is_in_range(uint16_t value)
{
    return (value <= 50000u);
}

uint16_t can1__main_ft24_ams_status_max_cell_temp_encode(double value)
{
    return (uint16_t)(value / 0.0625);
}

double can1__main_ft24_ams_status_max_cell_temp_decode(uint16_t value)
{
    return ((double)value * 0.0625);
}

bool can1__main_ft24_ams_status_max_cell_temp_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_slave_panic_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_slave_panic_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_left_shift_u8(src_p->ams_slave_panic_slave_id, 0u, 0xffu);
    dst_p[1] |= pack_left_shift_u8(src_p->ams_slave_panic_kind, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u32(src_p->ams_slave_panic_arg, 24u, 0xffu);
    dst_p[3] |= pack_right_shift_u32(src_p->ams_slave_panic_arg, 16u, 0xffu);
    dst_p[4] |= pack_right_shift_u32(src_p->ams_slave_panic_arg, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u32(src_p->ams_slave_panic_arg, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_ams_slave_panic_unpack(
    struct can1__main_ft24_ams_slave_panic_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->ams_slave_panic_slave_id = unpack_right_shift_u8(src_p[0], 0u, 0xffu);
    dst_p->ams_slave_panic_kind = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
    dst_p->ams_slave_panic_arg = unpack_left_shift_u32(src_p[2], 24u, 0xffu);
    dst_p->ams_slave_panic_arg |= unpack_left_shift_u32(src_p[3], 16u, 0xffu);
    dst_p->ams_slave_panic_arg |= unpack_left_shift_u32(src_p[4], 8u, 0xffu);
    dst_p->ams_slave_panic_arg |= unpack_right_shift_u32(src_p[5], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_ams_slave_panic_init(struct can1__main_ft24_ams_slave_panic_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_slave_panic_t));

    return 0;
}

uint8_t can1__main_ft24_ams_slave_panic_ams_slave_panic_slave_id_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave_panic_ams_slave_panic_slave_id_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave_panic_ams_slave_panic_slave_id_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

uint8_t can1__main_ft24_ams_slave_panic_ams_slave_panic_kind_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_slave_panic_ams_slave_panic_kind_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave_panic_ams_slave_panic_kind_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

uint32_t can1__main_ft24_ams_slave_panic_ams_slave_panic_arg_encode(double value)
{
    return (uint32_t)(value);
}

double can1__main_ft24_ams_slave_panic_ams_slave_panic_arg_decode(uint32_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_slave_panic_ams_slave_panic_arg_is_in_range(uint32_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_ams_in_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_ams_in_t *src_p,
    size_t size)
{
    if (size < 1u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 1);

    dst_p[0] |= pack_left_shift_u8(src_p->ts_activate, 0u, 0x01u);
    dst_p[0] |= pack_left_shift_u8(src_p->inverters_discharged, 1u, 0x02u);
    dst_p[0] |= pack_left_shift_u8(src_p->lap_number, 2u, 0xfcu);

    return (1);
}

int can1__main_ft24_ams_in_unpack(
    struct can1__main_ft24_ams_in_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 1u) {
        return (-EINVAL);
    }

    dst_p->ts_activate = unpack_right_shift_u8(src_p[0], 0u, 0x01u);
    dst_p->inverters_discharged = unpack_right_shift_u8(src_p[0], 1u, 0x02u);
    dst_p->lap_number = unpack_right_shift_u8(src_p[0], 2u, 0xfcu);

    return (0);
}

int can1__main_ft24_ams_in_init(struct can1__main_ft24_ams_in_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_ams_in_t));

    return 0;
}

uint8_t can1__main_ft24_ams_in_ts_activate_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_in_ts_activate_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_in_ts_activate_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_ams_in_inverters_discharged_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_in_inverters_discharged_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_in_inverters_discharged_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_ams_in_lap_number_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_ams_in_lap_number_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_ams_in_lap_number_is_in_range(uint8_t value)
{
    return (value <= 64u);
}

int can1__main_ft24_shunt_current_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_shunt_current_t *src_p,
    size_t size)
{
    uint32_t shunt_current;

    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    shunt_current = (uint32_t)src_p->shunt_current;
    dst_p[2] |= pack_right_shift_u32(shunt_current, 24u, 0xffu);
    dst_p[3] |= pack_right_shift_u32(shunt_current, 16u, 0xffu);
    dst_p[4] |= pack_right_shift_u32(shunt_current, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u32(shunt_current, 0u, 0xffu);

    return (6);
}

int can1__main_ft24_shunt_current_unpack(
    struct can1__main_ft24_shunt_current_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint32_t shunt_current;

    if (size < 6u) {
        return (-EINVAL);
    }

    shunt_current = unpack_left_shift_u32(src_p[2], 24u, 0xffu);
    shunt_current |= unpack_left_shift_u32(src_p[3], 16u, 0xffu);
    shunt_current |= unpack_left_shift_u32(src_p[4], 8u, 0xffu);
    shunt_current |= unpack_right_shift_u32(src_p[5], 0u, 0xffu);
    dst_p->shunt_current = (int32_t)shunt_current;

    return (0);
}

int can1__main_ft24_shunt_current_init(struct can1__main_ft24_shunt_current_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_shunt_current_t));

    return 0;
}

int32_t can1__main_ft24_shunt_current_shunt_current_encode(double value)
{
    return (int32_t)(value / 0.001);
}

double can1__main_ft24_shunt_current_shunt_current_decode(int32_t value)
{
    return ((double)value * 0.001);
}

bool can1__main_ft24_shunt_current_shunt_current_is_in_range(int32_t value)
{
    return ((value >= -2000000000) && (value <= 2000000000));
}

int can1__main_ft24_shunt_voltage1_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_shunt_voltage1_t *src_p,
    size_t size)
{
    uint32_t shunt_voltage1;

    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    shunt_voltage1 = (uint32_t)src_p->shunt_voltage1;
    dst_p[2] |= pack_right_shift_u32(shunt_voltage1, 24u, 0xffu);
    dst_p[3] |= pack_right_shift_u32(shunt_voltage1, 16u, 0xffu);
    dst_p[4] |= pack_right_shift_u32(shunt_voltage1, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u32(shunt_voltage1, 0u, 0xffu);

    return (6);
}

int can1__main_ft24_shunt_voltage1_unpack(
    struct can1__main_ft24_shunt_voltage1_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint32_t shunt_voltage1;

    if (size < 6u) {
        return (-EINVAL);
    }

    shunt_voltage1 = unpack_left_shift_u32(src_p[2], 24u, 0xffu);
    shunt_voltage1 |= unpack_left_shift_u32(src_p[3], 16u, 0xffu);
    shunt_voltage1 |= unpack_left_shift_u32(src_p[4], 8u, 0xffu);
    shunt_voltage1 |= unpack_right_shift_u32(src_p[5], 0u, 0xffu);
    dst_p->shunt_voltage1 = (int32_t)shunt_voltage1;

    return (0);
}

int can1__main_ft24_shunt_voltage1_init(struct can1__main_ft24_shunt_voltage1_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_shunt_voltage1_t));

    return 0;
}

int32_t can1__main_ft24_shunt_voltage1_shunt_voltage1_encode(double value)
{
    return (int32_t)(value / 0.001);
}

double can1__main_ft24_shunt_voltage1_shunt_voltage1_decode(int32_t value)
{
    return ((double)value * 0.001);
}

bool can1__main_ft24_shunt_voltage1_shunt_voltage1_is_in_range(int32_t value)
{
    return ((value >= -2000000000) && (value <= 2000000000));
}

int can1__main_ft24_shunt_voltage2_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_shunt_voltage2_t *src_p,
    size_t size)
{
    uint32_t shunt_voltage2;

    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    shunt_voltage2 = (uint32_t)src_p->shunt_voltage2;
    dst_p[2] |= pack_right_shift_u32(shunt_voltage2, 24u, 0xffu);
    dst_p[3] |= pack_right_shift_u32(shunt_voltage2, 16u, 0xffu);
    dst_p[4] |= pack_right_shift_u32(shunt_voltage2, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u32(shunt_voltage2, 0u, 0xffu);

    return (6);
}

int can1__main_ft24_shunt_voltage2_unpack(
    struct can1__main_ft24_shunt_voltage2_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint32_t shunt_voltage2;

    if (size < 6u) {
        return (-EINVAL);
    }

    shunt_voltage2 = unpack_left_shift_u32(src_p[2], 24u, 0xffu);
    shunt_voltage2 |= unpack_left_shift_u32(src_p[3], 16u, 0xffu);
    shunt_voltage2 |= unpack_left_shift_u32(src_p[4], 8u, 0xffu);
    shunt_voltage2 |= unpack_right_shift_u32(src_p[5], 0u, 0xffu);
    dst_p->shunt_voltage2 = (int32_t)shunt_voltage2;

    return (0);
}

int can1__main_ft24_shunt_voltage2_init(struct can1__main_ft24_shunt_voltage2_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_shunt_voltage2_t));

    return 0;
}

int32_t can1__main_ft24_shunt_voltage2_shunt_voltage2_encode(double value)
{
    return (int32_t)(value / 0.001);
}

double can1__main_ft24_shunt_voltage2_shunt_voltage2_decode(int32_t value)
{
    return ((double)value * 0.001);
}

bool can1__main_ft24_shunt_voltage2_shunt_voltage2_is_in_range(int32_t value)
{
    return ((value >= -2000000000) && (value <= 2000000000));
}

int can1__main_ft24_shunt_voltage3_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_shunt_voltage3_t *src_p,
    size_t size)
{
    uint32_t shunt_voltage3;

    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    shunt_voltage3 = (uint32_t)src_p->shunt_voltage3;
    dst_p[2] |= pack_right_shift_u32(shunt_voltage3, 24u, 0xffu);
    dst_p[3] |= pack_right_shift_u32(shunt_voltage3, 16u, 0xffu);
    dst_p[4] |= pack_right_shift_u32(shunt_voltage3, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u32(shunt_voltage3, 0u, 0xffu);

    return (6);
}

int can1__main_ft24_shunt_voltage3_unpack(
    struct can1__main_ft24_shunt_voltage3_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint32_t shunt_voltage3;

    if (size < 6u) {
        return (-EINVAL);
    }

    shunt_voltage3 = unpack_left_shift_u32(src_p[2], 24u, 0xffu);
    shunt_voltage3 |= unpack_left_shift_u32(src_p[3], 16u, 0xffu);
    shunt_voltage3 |= unpack_left_shift_u32(src_p[4], 8u, 0xffu);
    shunt_voltage3 |= unpack_right_shift_u32(src_p[5], 0u, 0xffu);
    dst_p->shunt_voltage3 = (int32_t)shunt_voltage3;

    return (0);
}

int can1__main_ft24_shunt_voltage3_init(struct can1__main_ft24_shunt_voltage3_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_shunt_voltage3_t));

    return 0;
}

int32_t can1__main_ft24_shunt_voltage3_shunt_voltage3_encode(double value)
{
    return (int32_t)(value / 0.001);
}

double can1__main_ft24_shunt_voltage3_shunt_voltage3_decode(int32_t value)
{
    return ((double)value * 0.001);
}

bool can1__main_ft24_shunt_voltage3_shunt_voltage3_is_in_range(int32_t value)
{
    return ((value >= -2000000000) && (value <= 2000000000));
}

int can1__main_ft24_shunt_temperature_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_shunt_temperature_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    dst_p[2] |= pack_right_shift_u32(src_p->shunt_temperature, 24u, 0xffu);
    dst_p[3] |= pack_right_shift_u32(src_p->shunt_temperature, 16u, 0xffu);
    dst_p[4] |= pack_right_shift_u32(src_p->shunt_temperature, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u32(src_p->shunt_temperature, 0u, 0xffu);

    return (6);
}

int can1__main_ft24_shunt_temperature_unpack(
    struct can1__main_ft24_shunt_temperature_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    dst_p->shunt_temperature = unpack_left_shift_u32(src_p[2], 24u, 0xffu);
    dst_p->shunt_temperature |= unpack_left_shift_u32(src_p[3], 16u, 0xffu);
    dst_p->shunt_temperature |= unpack_left_shift_u32(src_p[4], 8u, 0xffu);
    dst_p->shunt_temperature |= unpack_right_shift_u32(src_p[5], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_shunt_temperature_init(struct can1__main_ft24_shunt_temperature_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_shunt_temperature_t));

    return 0;
}

uint32_t can1__main_ft24_shunt_temperature_shunt_temperature_encode(double value)
{
    return (uint32_t)(value / 0.1);
}

double can1__main_ft24_shunt_temperature_shunt_temperature_decode(uint32_t value)
{
    return ((double)value * 0.1);
}

bool can1__main_ft24_shunt_temperature_shunt_temperature_is_in_range(uint32_t value)
{
    return (value <= 10000u);
}

int can1__main_ft24_sdcl_tx_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_sdcl_tx_t *src_p,
    size_t size)
{
    if (size < 4u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 4);

    dst_p[0] |= pack_left_shift_u8(src_p->asms_state, 0u, 0x01u);
    dst_p[0] |= pack_left_shift_u8(src_p->sdc_state_1, 1u, 0x02u);
    dst_p[0] |= pack_left_shift_u8(src_p->sdc_state_2, 2u, 0x04u);
    dst_p[0] |= pack_left_shift_u8(src_p->sdc_state_3, 3u, 0x08u);
    dst_p[0] |= pack_left_shift_u8(src_p->heartbeat_ok, 4u, 0x10u);
    dst_p[0] |= pack_left_shift_u8(src_p->sdcl_sdc_ready, 5u, 0x20u);
    dst_p[0] |= pack_left_shift_u8(src_p->ts_start_muxed, 6u, 0x40u);
    dst_p[1] |= pack_left_shift_u8(src_p->latch_init_open, 0u, 0x01u);
    dst_p[1] |= pack_left_shift_u8(src_p->latch_closed, 1u, 0x02u);
    dst_p[1] |= pack_left_shift_u8(src_p->latch_reopened, 2u, 0x04u);
    dst_p[1] |= pack_left_shift_u8(src_p->as_mission, 3u, 0x38u);

    return (4);
}

int can1__main_ft24_sdcl_tx_unpack(
    struct can1__main_ft24_sdcl_tx_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 4u) {
        return (-EINVAL);
    }

    dst_p->asms_state = unpack_right_shift_u8(src_p[0], 0u, 0x01u);
    dst_p->sdc_state_1 = unpack_right_shift_u8(src_p[0], 1u, 0x02u);
    dst_p->sdc_state_2 = unpack_right_shift_u8(src_p[0], 2u, 0x04u);
    dst_p->sdc_state_3 = unpack_right_shift_u8(src_p[0], 3u, 0x08u);
    dst_p->heartbeat_ok = unpack_right_shift_u8(src_p[0], 4u, 0x10u);
    dst_p->sdcl_sdc_ready = unpack_right_shift_u8(src_p[0], 5u, 0x20u);
    dst_p->ts_start_muxed = unpack_right_shift_u8(src_p[0], 6u, 0x40u);
    dst_p->latch_init_open = unpack_right_shift_u8(src_p[1], 0u, 0x01u);
    dst_p->latch_closed = unpack_right_shift_u8(src_p[1], 1u, 0x02u);
    dst_p->latch_reopened = unpack_right_shift_u8(src_p[1], 2u, 0x04u);
    dst_p->as_mission = unpack_right_shift_u8(src_p[1], 3u, 0x38u);

    return (0);
}

int can1__main_ft24_sdcl_tx_init(struct can1__main_ft24_sdcl_tx_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_sdcl_tx_t));

    return 0;
}

uint8_t can1__main_ft24_sdcl_tx_asms_state_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_sdcl_tx_asms_state_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_sdcl_tx_asms_state_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_sdcl_tx_sdc_state_1_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_sdcl_tx_sdc_state_1_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_sdcl_tx_sdc_state_1_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_sdcl_tx_sdc_state_2_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_sdcl_tx_sdc_state_2_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_sdcl_tx_sdc_state_2_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_sdcl_tx_sdc_state_3_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_sdcl_tx_sdc_state_3_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_sdcl_tx_sdc_state_3_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_sdcl_tx_heartbeat_ok_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_sdcl_tx_heartbeat_ok_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_sdcl_tx_heartbeat_ok_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_sdcl_tx_sdcl_sdc_ready_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_sdcl_tx_sdcl_sdc_ready_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_sdcl_tx_sdcl_sdc_ready_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_sdcl_tx_ts_start_muxed_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_sdcl_tx_ts_start_muxed_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_sdcl_tx_ts_start_muxed_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_sdcl_tx_latch_init_open_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_sdcl_tx_latch_init_open_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_sdcl_tx_latch_init_open_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_sdcl_tx_latch_closed_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_sdcl_tx_latch_closed_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_sdcl_tx_latch_closed_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_sdcl_tx_latch_reopened_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_sdcl_tx_latch_reopened_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_sdcl_tx_latch_reopened_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_sdcl_tx_as_mission_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_sdcl_tx_as_mission_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_sdcl_tx_as_mission_is_in_range(uint8_t value)
{
    return (value <= 7u);
}

int can1__main_ft24_sdcl_rx_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_sdcl_rx_t *src_p,
    size_t size)
{
    if (size < 3u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 3);

    dst_p[0] |= pack_left_shift_u8(src_p->as_close_sdc, 0u, 0x01u);
    dst_p[0] |= pack_left_shift_u8(src_p->sdcl_heartbeat, 1u, 0x02u);
    dst_p[0] |= pack_left_shift_u8(src_p->asb_error, 2u, 0x04u);
    dst_p[0] |= pack_left_shift_u8(src_p->as_mission, 4u, 0x70u);

    return (3);
}

int can1__main_ft24_sdcl_rx_unpack(
    struct can1__main_ft24_sdcl_rx_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 3u) {
        return (-EINVAL);
    }

    dst_p->as_close_sdc = unpack_right_shift_u8(src_p[0], 0u, 0x01u);
    dst_p->sdcl_heartbeat = unpack_right_shift_u8(src_p[0], 1u, 0x02u);
    dst_p->asb_error = unpack_right_shift_u8(src_p[0], 2u, 0x04u);
    dst_p->as_mission = unpack_right_shift_u8(src_p[0], 4u, 0x70u);

    return (0);
}

int can1__main_ft24_sdcl_rx_init(struct can1__main_ft24_sdcl_rx_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_sdcl_rx_t));

    return 0;
}

uint8_t can1__main_ft24_sdcl_rx_as_close_sdc_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_sdcl_rx_as_close_sdc_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_sdcl_rx_as_close_sdc_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_sdcl_rx_sdcl_heartbeat_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_sdcl_rx_sdcl_heartbeat_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_sdcl_rx_sdcl_heartbeat_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_sdcl_rx_asb_error_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_sdcl_rx_asb_error_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_sdcl_rx_asb_error_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_sdcl_rx_as_mission_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_sdcl_rx_as_mission_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_sdcl_rx_as_mission_is_in_range(uint8_t value)
{
    return (value <= 7u);
}

int can1__main_ft24_pdu_command_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_pdu_command_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    dst_p[0] |= pack_left_shift_u8(src_p->pdu_inverter_rx, 7u, 0x80u);
    dst_p[0] |= pack_left_shift_u8(src_p->pdu_mode_valve_2_rx, 6u, 0x40u);
    dst_p[0] |= pack_left_shift_u8(src_p->pdu_ebs_valve_2_rx, 5u, 0x20u);
    dst_p[0] |= pack_left_shift_u8(src_p->pdu_shutdown_circuit_rx, 4u, 0x10u);
    dst_p[0] |= pack_left_shift_u8(src_p->pdu_alwayson_rx, 3u, 0x08u);
    dst_p[0] |= pack_left_shift_u8(src_p->pdu_misc_rx, 2u, 0x04u);
    dst_p[0] |= pack_left_shift_u8(src_p->pdu_servo_rx, 1u, 0x02u);
    dst_p[1] |= pack_left_shift_u8(src_p->pdu_led1_rx, 7u, 0x80u);
    dst_p[1] |= pack_left_shift_u8(src_p->pdu_led2_rx, 6u, 0x40u);
    dst_p[1] |= pack_left_shift_u8(src_p->pdu_led3_rx, 5u, 0x20u);
    dst_p[1] |= pack_left_shift_u8(src_p->pdu_sensorbox_rx, 4u, 0x10u);
    dst_p[1] |= pack_left_shift_u8(src_p->pdu_service_brake_rx, 3u, 0x08u);
    dst_p[1] |= pack_left_shift_u8(src_p->pdu_ebs_valve_1_rx, 2u, 0x04u);
    dst_p[1] |= pack_left_shift_u8(src_p->pdu_steering_rx, 1u, 0x02u);
    dst_p[1] |= pack_left_shift_u8(src_p->pdu_mode_valve_1_rx, 0u, 0x01u);
    dst_p[2] |= pack_left_shift_u8(src_p->pdu_pwm_fans_rx, 0u, 0xffu);
    dst_p[3] |= pack_left_shift_u8(src_p->pdu_pwm_aggregat_rx, 0u, 0xffu);
    dst_p[4] |= pack_left_shift_u8(src_p->pdu_pwm_pump_rx, 0u, 0xffu);
    dst_p[5] |= pack_left_shift_u8(src_p->pdu_checksum_rx, 0u, 0xffu);

    return (6);
}

int can1__main_ft24_pdu_command_unpack(
    struct can1__main_ft24_pdu_command_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    dst_p->pdu_inverter_rx = unpack_right_shift_u8(src_p[0], 7u, 0x80u);
    dst_p->pdu_mode_valve_2_rx = unpack_right_shift_u8(src_p[0], 6u, 0x40u);
    dst_p->pdu_ebs_valve_2_rx = unpack_right_shift_u8(src_p[0], 5u, 0x20u);
    dst_p->pdu_shutdown_circuit_rx = unpack_right_shift_u8(src_p[0], 4u, 0x10u);
    dst_p->pdu_alwayson_rx = unpack_right_shift_u8(src_p[0], 3u, 0x08u);
    dst_p->pdu_misc_rx = unpack_right_shift_u8(src_p[0], 2u, 0x04u);
    dst_p->pdu_servo_rx = unpack_right_shift_u8(src_p[0], 1u, 0x02u);
    dst_p->pdu_led1_rx = unpack_right_shift_u8(src_p[1], 7u, 0x80u);
    dst_p->pdu_led2_rx = unpack_right_shift_u8(src_p[1], 6u, 0x40u);
    dst_p->pdu_led3_rx = unpack_right_shift_u8(src_p[1], 5u, 0x20u);
    dst_p->pdu_sensorbox_rx = unpack_right_shift_u8(src_p[1], 4u, 0x10u);
    dst_p->pdu_service_brake_rx = unpack_right_shift_u8(src_p[1], 3u, 0x08u);
    dst_p->pdu_ebs_valve_1_rx = unpack_right_shift_u8(src_p[1], 2u, 0x04u);
    dst_p->pdu_steering_rx = unpack_right_shift_u8(src_p[1], 1u, 0x02u);
    dst_p->pdu_mode_valve_1_rx = unpack_right_shift_u8(src_p[1], 0u, 0x01u);
    dst_p->pdu_pwm_fans_rx = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->pdu_pwm_aggregat_rx = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->pdu_pwm_pump_rx = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->pdu_checksum_rx = unpack_right_shift_u8(src_p[5], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_pdu_command_init(struct can1__main_ft24_pdu_command_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_pdu_command_t));

    return 0;
}

uint8_t can1__main_ft24_pdu_command_pdu_inverter_rx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_command_pdu_inverter_rx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_command_pdu_inverter_rx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_command_pdu_mode_valve_2_rx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_command_pdu_mode_valve_2_rx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_command_pdu_mode_valve_2_rx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_command_pdu_ebs_valve_2_rx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_command_pdu_ebs_valve_2_rx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_command_pdu_ebs_valve_2_rx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_command_pdu_shutdown_circuit_rx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_command_pdu_shutdown_circuit_rx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_command_pdu_shutdown_circuit_rx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_command_pdu_alwayson_rx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_command_pdu_alwayson_rx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_command_pdu_alwayson_rx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_command_pdu_misc_rx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_command_pdu_misc_rx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_command_pdu_misc_rx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_command_pdu_servo_rx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_command_pdu_servo_rx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_command_pdu_servo_rx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_command_pdu_led1_rx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_command_pdu_led1_rx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_command_pdu_led1_rx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_command_pdu_led2_rx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_command_pdu_led2_rx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_command_pdu_led2_rx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_command_pdu_led3_rx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_command_pdu_led3_rx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_command_pdu_led3_rx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_command_pdu_sensorbox_rx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_command_pdu_sensorbox_rx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_command_pdu_sensorbox_rx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_command_pdu_service_brake_rx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_command_pdu_service_brake_rx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_command_pdu_service_brake_rx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_command_pdu_ebs_valve_1_rx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_command_pdu_ebs_valve_1_rx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_command_pdu_ebs_valve_1_rx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_command_pdu_steering_rx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_command_pdu_steering_rx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_command_pdu_steering_rx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_command_pdu_mode_valve_1_rx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_command_pdu_mode_valve_1_rx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_command_pdu_mode_valve_1_rx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_command_pdu_pwm_fans_rx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_command_pdu_pwm_fans_rx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_command_pdu_pwm_fans_rx_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

uint8_t can1__main_ft24_pdu_command_pdu_pwm_aggregat_rx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_command_pdu_pwm_aggregat_rx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_command_pdu_pwm_aggregat_rx_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

uint8_t can1__main_ft24_pdu_command_pdu_pwm_pump_rx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_command_pdu_pwm_pump_rx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_command_pdu_pwm_pump_rx_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

uint8_t can1__main_ft24_pdu_command_pdu_checksum_rx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_command_pdu_checksum_rx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_command_pdu_checksum_rx_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_pdu_response_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_pdu_response_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    dst_p[0] |= pack_left_shift_u8(src_p->pdu_inverter_tx, 7u, 0x80u);
    dst_p[0] |= pack_left_shift_u8(src_p->pdu_mode_valve_2_tx, 6u, 0x40u);
    dst_p[0] |= pack_left_shift_u8(src_p->pdu_evs_valve_2_tx, 5u, 0x20u);
    dst_p[0] |= pack_left_shift_u8(src_p->pdu_shutdown_circuit_tx, 4u, 0x10u);
    dst_p[0] |= pack_left_shift_u8(src_p->pdu_alwayson_tx, 3u, 0x08u);
    dst_p[0] |= pack_left_shift_u8(src_p->pdu_misc_tx, 2u, 0x04u);
    dst_p[0] |= pack_left_shift_u8(src_p->pdu_servo_tx, 1u, 0x02u);
    dst_p[1] |= pack_left_shift_u8(src_p->pdu_led1_tx, 7u, 0x80u);
    dst_p[1] |= pack_left_shift_u8(src_p->pdu_led2_tx, 6u, 0x40u);
    dst_p[1] |= pack_left_shift_u8(src_p->pdu_led3_tx, 5u, 0x20u);
    dst_p[1] |= pack_left_shift_u8(src_p->pdu_sensorbox_tx, 4u, 0x10u);
    dst_p[1] |= pack_left_shift_u8(src_p->pdu_service_brake_tx, 3u, 0x08u);
    dst_p[1] |= pack_left_shift_u8(src_p->pdu_ebs_valve_1_tx, 2u, 0x04u);
    dst_p[1] |= pack_left_shift_u8(src_p->pdu_steering_tx, 1u, 0x02u);
    dst_p[1] |= pack_left_shift_u8(src_p->pdu_mode_valve_1_tx, 0u, 0x01u);
    dst_p[2] |= pack_left_shift_u8(src_p->pdu_pwm_fans_tx, 0u, 0xffu);
    dst_p[3] |= pack_left_shift_u8(src_p->pdu_pwm_aggregat, 0u, 0xffu);
    dst_p[4] |= pack_left_shift_u8(src_p->pdu_pwm_pump, 0u, 0xffu);
    dst_p[5] |= pack_left_shift_u8(src_p->pdu_checksum_tx, 0u, 0xffu);

    return (6);
}

int can1__main_ft24_pdu_response_unpack(
    struct can1__main_ft24_pdu_response_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    dst_p->pdu_inverter_tx = unpack_right_shift_u8(src_p[0], 7u, 0x80u);
    dst_p->pdu_mode_valve_2_tx = unpack_right_shift_u8(src_p[0], 6u, 0x40u);
    dst_p->pdu_evs_valve_2_tx = unpack_right_shift_u8(src_p[0], 5u, 0x20u);
    dst_p->pdu_shutdown_circuit_tx = unpack_right_shift_u8(src_p[0], 4u, 0x10u);
    dst_p->pdu_alwayson_tx = unpack_right_shift_u8(src_p[0], 3u, 0x08u);
    dst_p->pdu_misc_tx = unpack_right_shift_u8(src_p[0], 2u, 0x04u);
    dst_p->pdu_servo_tx = unpack_right_shift_u8(src_p[0], 1u, 0x02u);
    dst_p->pdu_led1_tx = unpack_right_shift_u8(src_p[1], 7u, 0x80u);
    dst_p->pdu_led2_tx = unpack_right_shift_u8(src_p[1], 6u, 0x40u);
    dst_p->pdu_led3_tx = unpack_right_shift_u8(src_p[1], 5u, 0x20u);
    dst_p->pdu_sensorbox_tx = unpack_right_shift_u8(src_p[1], 4u, 0x10u);
    dst_p->pdu_service_brake_tx = unpack_right_shift_u8(src_p[1], 3u, 0x08u);
    dst_p->pdu_ebs_valve_1_tx = unpack_right_shift_u8(src_p[1], 2u, 0x04u);
    dst_p->pdu_steering_tx = unpack_right_shift_u8(src_p[1], 1u, 0x02u);
    dst_p->pdu_mode_valve_1_tx = unpack_right_shift_u8(src_p[1], 0u, 0x01u);
    dst_p->pdu_pwm_fans_tx = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->pdu_pwm_aggregat = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->pdu_pwm_pump = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
    dst_p->pdu_checksum_tx = unpack_right_shift_u8(src_p[5], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_pdu_response_init(struct can1__main_ft24_pdu_response_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_pdu_response_t));

    return 0;
}

uint8_t can1__main_ft24_pdu_response_pdu_inverter_tx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_response_pdu_inverter_tx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_response_pdu_inverter_tx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_response_pdu_mode_valve_2_tx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_response_pdu_mode_valve_2_tx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_response_pdu_mode_valve_2_tx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_response_pdu_evs_valve_2_tx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_response_pdu_evs_valve_2_tx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_response_pdu_evs_valve_2_tx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_response_pdu_shutdown_circuit_tx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_response_pdu_shutdown_circuit_tx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_response_pdu_shutdown_circuit_tx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_response_pdu_alwayson_tx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_response_pdu_alwayson_tx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_response_pdu_alwayson_tx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_response_pdu_misc_tx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_response_pdu_misc_tx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_response_pdu_misc_tx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_response_pdu_servo_tx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_response_pdu_servo_tx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_response_pdu_servo_tx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_response_pdu_led1_tx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_response_pdu_led1_tx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_response_pdu_led1_tx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_response_pdu_led2_tx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_response_pdu_led2_tx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_response_pdu_led2_tx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_response_pdu_led3_tx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_response_pdu_led3_tx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_response_pdu_led3_tx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_response_pdu_sensorbox_tx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_response_pdu_sensorbox_tx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_response_pdu_sensorbox_tx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_response_pdu_service_brake_tx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_response_pdu_service_brake_tx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_response_pdu_service_brake_tx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_response_pdu_ebs_valve_1_tx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_response_pdu_ebs_valve_1_tx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_response_pdu_ebs_valve_1_tx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_response_pdu_steering_tx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_response_pdu_steering_tx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_response_pdu_steering_tx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_response_pdu_mode_valve_1_tx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_response_pdu_mode_valve_1_tx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_response_pdu_mode_valve_1_tx_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_pdu_response_pdu_pwm_fans_tx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_response_pdu_pwm_fans_tx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_response_pdu_pwm_fans_tx_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

uint8_t can1__main_ft24_pdu_response_pdu_pwm_aggregat_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_response_pdu_pwm_aggregat_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_response_pdu_pwm_aggregat_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

uint8_t can1__main_ft24_pdu_response_pdu_pwm_pump_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_response_pdu_pwm_pump_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_response_pdu_pwm_pump_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

uint8_t can1__main_ft24_pdu_response_pdu_checksum_tx_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_pdu_response_pdu_checksum_tx_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_response_pdu_checksum_tx_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_tx_pdo_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_tx_pdo_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    dst_p[0] |= pack_left_shift_u8(src_p->pdm_powersupply_less_8v, 1u, 0x02u);
    dst_p[0] |= pack_left_shift_u8(src_p->pdm_powersupply_greater_32v, 2u, 0x04u);
    dst_p[0] |= pack_left_shift_u8(src_p->pdm_canbus_timeout, 3u, 0x08u);
    dst_p[0] |= pack_left_shift_u8(src_p->pdm_canbus_startupmissing, 4u, 0x10u);
    dst_p[0] |= pack_left_shift_u8(src_p->pdm_canbus_statewarning, 5u, 0x20u);
    dst_p[1] |= pack_left_shift_u8(src_p->pdm_analoginput_middleposition, 0u, 0x01u);
    dst_p[1] |= pack_left_shift_u8(src_p->pdm_analoginput_cablebreak, 1u, 0x02u);
    dst_p[1] |= pack_left_shift_u8(src_p->pdm_analoginput_shortcircuit, 2u, 0x04u);
    dst_p[1] |= pack_left_shift_u8(src_p->pdm_analoginput_currentoverload, 3u, 0x08u);
    dst_p[1] |= pack_left_shift_u8(src_p->pdm_temperature_warning, 4u, 0x10u);
    dst_p[1] |= pack_left_shift_u8(src_p->pdm_temperature_shutdown, 5u, 0x20u);
    dst_p[2] |= pack_left_shift_u8(src_p->pdm_output1_controllerrange, 0u, 0x01u);
    dst_p[2] |= pack_left_shift_u8(src_p->pdm_output2_controllerrange, 1u, 0x02u);
    dst_p[2] |= pack_left_shift_u8(src_p->pdm_output1_cablebreak, 2u, 0x04u);
    dst_p[2] |= pack_left_shift_u8(src_p->pdm_output2_cablebreak, 3u, 0x08u);
    dst_p[2] |= pack_left_shift_u8(src_p->pdm_output1_shortcircuit, 4u, 0x10u);
    dst_p[2] |= pack_left_shift_u8(src_p->pdm_output2_shortcircuit, 5u, 0x20u);
    dst_p[4] |= pack_left_shift_u16(src_p->pdm_analoginput, 0u, 0xffu);
    dst_p[5] |= pack_right_shift_u16(src_p->pdm_analoginput, 8u, 0xffu);

    return (6);
}

int can1__main_ft24_tx_pdo_unpack(
    struct can1__main_ft24_tx_pdo_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    dst_p->pdm_powersupply_less_8v = unpack_right_shift_u8(src_p[0], 1u, 0x02u);
    dst_p->pdm_powersupply_greater_32v = unpack_right_shift_u8(src_p[0], 2u, 0x04u);
    dst_p->pdm_canbus_timeout = unpack_right_shift_u8(src_p[0], 3u, 0x08u);
    dst_p->pdm_canbus_startupmissing = unpack_right_shift_u8(src_p[0], 4u, 0x10u);
    dst_p->pdm_canbus_statewarning = unpack_right_shift_u8(src_p[0], 5u, 0x20u);
    dst_p->pdm_analoginput_middleposition = unpack_right_shift_u8(src_p[1], 0u, 0x01u);
    dst_p->pdm_analoginput_cablebreak = unpack_right_shift_u8(src_p[1], 1u, 0x02u);
    dst_p->pdm_analoginput_shortcircuit = unpack_right_shift_u8(src_p[1], 2u, 0x04u);
    dst_p->pdm_analoginput_currentoverload = unpack_right_shift_u8(src_p[1], 3u, 0x08u);
    dst_p->pdm_temperature_warning = unpack_right_shift_u8(src_p[1], 4u, 0x10u);
    dst_p->pdm_temperature_shutdown = unpack_right_shift_u8(src_p[1], 5u, 0x20u);
    dst_p->pdm_output1_controllerrange = unpack_right_shift_u8(src_p[2], 0u, 0x01u);
    dst_p->pdm_output2_controllerrange = unpack_right_shift_u8(src_p[2], 1u, 0x02u);
    dst_p->pdm_output1_cablebreak = unpack_right_shift_u8(src_p[2], 2u, 0x04u);
    dst_p->pdm_output2_cablebreak = unpack_right_shift_u8(src_p[2], 3u, 0x08u);
    dst_p->pdm_output1_shortcircuit = unpack_right_shift_u8(src_p[2], 4u, 0x10u);
    dst_p->pdm_output2_shortcircuit = unpack_right_shift_u8(src_p[2], 5u, 0x20u);
    dst_p->pdm_analoginput = unpack_right_shift_u16(src_p[4], 0u, 0xffu);
    dst_p->pdm_analoginput |= unpack_left_shift_u16(src_p[5], 8u, 0xffu);

    return (0);
}

int can1__main_ft24_tx_pdo_init(struct can1__main_ft24_tx_pdo_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_tx_pdo_t));

    return 0;
}

uint8_t can1__main_ft24_tx_pdo_pdm_powersupply_less_8v_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_tx_pdo_pdm_powersupply_less_8v_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_tx_pdo_pdm_powersupply_less_8v_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_tx_pdo_pdm_powersupply_greater_32v_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_tx_pdo_pdm_powersupply_greater_32v_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_tx_pdo_pdm_powersupply_greater_32v_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_tx_pdo_pdm_canbus_timeout_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_tx_pdo_pdm_canbus_timeout_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_tx_pdo_pdm_canbus_timeout_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_tx_pdo_pdm_canbus_startupmissing_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_tx_pdo_pdm_canbus_startupmissing_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_tx_pdo_pdm_canbus_startupmissing_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_tx_pdo_pdm_canbus_statewarning_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_tx_pdo_pdm_canbus_statewarning_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_tx_pdo_pdm_canbus_statewarning_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_tx_pdo_pdm_analoginput_middleposition_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_tx_pdo_pdm_analoginput_middleposition_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_tx_pdo_pdm_analoginput_middleposition_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_tx_pdo_pdm_analoginput_cablebreak_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_tx_pdo_pdm_analoginput_cablebreak_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_tx_pdo_pdm_analoginput_cablebreak_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_tx_pdo_pdm_analoginput_shortcircuit_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_tx_pdo_pdm_analoginput_shortcircuit_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_tx_pdo_pdm_analoginput_shortcircuit_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_tx_pdo_pdm_analoginput_currentoverload_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_tx_pdo_pdm_analoginput_currentoverload_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_tx_pdo_pdm_analoginput_currentoverload_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_tx_pdo_pdm_temperature_warning_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_tx_pdo_pdm_temperature_warning_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_tx_pdo_pdm_temperature_warning_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_tx_pdo_pdm_temperature_shutdown_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_tx_pdo_pdm_temperature_shutdown_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_tx_pdo_pdm_temperature_shutdown_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_tx_pdo_pdm_output1_controllerrange_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_tx_pdo_pdm_output1_controllerrange_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_tx_pdo_pdm_output1_controllerrange_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_tx_pdo_pdm_output2_controllerrange_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_tx_pdo_pdm_output2_controllerrange_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_tx_pdo_pdm_output2_controllerrange_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_tx_pdo_pdm_output1_cablebreak_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_tx_pdo_pdm_output1_cablebreak_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_tx_pdo_pdm_output1_cablebreak_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_tx_pdo_pdm_output2_cablebreak_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_tx_pdo_pdm_output2_cablebreak_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_tx_pdo_pdm_output2_cablebreak_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_tx_pdo_pdm_output1_shortcircuit_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_tx_pdo_pdm_output1_shortcircuit_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_tx_pdo_pdm_output1_shortcircuit_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_tx_pdo_pdm_output2_shortcircuit_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_tx_pdo_pdm_output2_shortcircuit_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_tx_pdo_pdm_output2_shortcircuit_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint16_t can1__main_ft24_tx_pdo_pdm_analoginput_encode(double value)
{
    return (uint16_t)(value);
}

double can1__main_ft24_tx_pdo_pdm_analoginput_decode(uint16_t value)
{
    return ((double)value);
}

bool can1__main_ft24_tx_pdo_pdm_analoginput_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_x_sens_error_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_x_sens_error_t *src_p,
    size_t size)
{
    (void)src_p;

    if (size < 1u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 1);

    return (1);
}

int can1__main_ft24_x_sens_error_unpack(
    struct can1__main_ft24_x_sens_error_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    (void)dst_p;
    (void)src_p;

    if (size < 1u) {
        return (-EINVAL);
    }

    return (0);
}

int can1__main_ft24_x_sens_error_init(struct can1__main_ft24_x_sens_error_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_x_sens_error_t));

    return 0;
}

int can1__main_ft24_x_sens_warning_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_x_sens_warning_t *src_p,
    size_t size)
{
    if (size < 1u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 1);

    dst_p[0] |= pack_left_shift_u8(src_p->warning_code, 0u, 0xffu);

    return (1);
}

int can1__main_ft24_x_sens_warning_unpack(
    struct can1__main_ft24_x_sens_warning_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 1u) {
        return (-EINVAL);
    }

    dst_p->warning_code = unpack_right_shift_u8(src_p[0], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_x_sens_warning_init(struct can1__main_ft24_x_sens_warning_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_x_sens_warning_t));

    return 0;
}

uint8_t can1__main_ft24_x_sens_warning_warning_code_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_x_sens_warning_warning_code_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_x_sens_warning_warning_code_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_x_sens_sample_time_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_x_sens_sample_time_t *src_p,
    size_t size)
{
    if (size < 4u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 4);

    dst_p[0] |= pack_right_shift_u32(src_p->timestamp, 24u, 0xffu);
    dst_p[1] |= pack_right_shift_u32(src_p->timestamp, 16u, 0xffu);
    dst_p[2] |= pack_right_shift_u32(src_p->timestamp, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u32(src_p->timestamp, 0u, 0xffu);

    return (4);
}

int can1__main_ft24_x_sens_sample_time_unpack(
    struct can1__main_ft24_x_sens_sample_time_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 4u) {
        return (-EINVAL);
    }

    dst_p->timestamp = unpack_left_shift_u32(src_p[0], 24u, 0xffu);
    dst_p->timestamp |= unpack_left_shift_u32(src_p[1], 16u, 0xffu);
    dst_p->timestamp |= unpack_left_shift_u32(src_p[2], 8u, 0xffu);
    dst_p->timestamp |= unpack_right_shift_u32(src_p[3], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_x_sens_sample_time_init(struct can1__main_ft24_x_sens_sample_time_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_x_sens_sample_time_t));

    return 0;
}

uint32_t can1__main_ft24_x_sens_sample_time_timestamp_encode(double value)
{
    return (uint32_t)(value);
}

double can1__main_ft24_x_sens_sample_time_timestamp_decode(uint32_t value)
{
    return ((double)value);
}

bool can1__main_ft24_x_sens_sample_time_timestamp_is_in_range(uint32_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_x_sens_group_counter_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_x_sens_group_counter_t *src_p,
    size_t size)
{
    if (size < 2u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 2);

    dst_p[0] |= pack_right_shift_u16(src_p->counter, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->counter, 0u, 0xffu);

    return (2);
}

int can1__main_ft24_x_sens_group_counter_unpack(
    struct can1__main_ft24_x_sens_group_counter_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 2u) {
        return (-EINVAL);
    }

    dst_p->counter = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->counter |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_x_sens_group_counter_init(struct can1__main_ft24_x_sens_group_counter_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_x_sens_group_counter_t));

    return 0;
}

uint16_t can1__main_ft24_x_sens_group_counter_counter_encode(double value)
{
    return (uint16_t)(value);
}

double can1__main_ft24_x_sens_group_counter_counter_decode(uint16_t value)
{
    return ((double)value);
}

bool can1__main_ft24_x_sens_group_counter_counter_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_x_sens_status_word_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_x_sens_status_word_t *src_p,
    size_t size)
{
    if (size < 4u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 4);

    dst_p[0] |= pack_left_shift_u8(src_p->have_gnss_time_pulse, 2u, 0x04u);
    dst_p[0] |= pack_left_shift_u8(src_p->rtk_status, 3u, 0x18u);
    dst_p[0] |= pack_right_shift_u8(src_p->filter_mode, 1u, 0x03u);
    dst_p[1] |= pack_left_shift_u8(src_p->filter_mode, 7u, 0x80u);
    dst_p[1] |= pack_left_shift_u8(src_p->clip_mag_z, 0u, 0x01u);
    dst_p[1] |= pack_left_shift_u8(src_p->retransmitted, 2u, 0x04u);
    dst_p[1] |= pack_left_shift_u8(src_p->clipping_detected, 3u, 0x08u);
    dst_p[1] |= pack_left_shift_u8(src_p->interpolated, 4u, 0x10u);
    dst_p[1] |= pack_left_shift_u8(src_p->sync_in, 5u, 0x20u);
    dst_p[1] |= pack_left_shift_u8(src_p->sync_out, 6u, 0x40u);
    dst_p[2] |= pack_left_shift_u8(src_p->clip_acc_x, 0u, 0x01u);
    dst_p[2] |= pack_left_shift_u8(src_p->clip_acc_y, 1u, 0x02u);
    dst_p[2] |= pack_left_shift_u8(src_p->clip_acc_z, 2u, 0x04u);
    dst_p[2] |= pack_left_shift_u8(src_p->clip_gyr_x, 3u, 0x08u);
    dst_p[2] |= pack_left_shift_u8(src_p->clip_gyr_y, 4u, 0x10u);
    dst_p[2] |= pack_left_shift_u8(src_p->clip_gyr_z, 5u, 0x20u);
    dst_p[2] |= pack_left_shift_u8(src_p->clip_mag_x, 6u, 0x40u);
    dst_p[2] |= pack_left_shift_u8(src_p->clip_mag_y, 7u, 0x80u);
    dst_p[3] |= pack_left_shift_u8(src_p->self_test_ok, 0u, 0x01u);
    dst_p[3] |= pack_left_shift_u8(src_p->orientation_valid, 1u, 0x02u);
    dst_p[3] |= pack_left_shift_u8(src_p->gps_valid, 2u, 0x04u);
    dst_p[3] |= pack_left_shift_u8(src_p->no_rotation, 3u, 0x18u);
    dst_p[3] |= pack_left_shift_u8(src_p->representative_motion, 5u, 0x20u);
    dst_p[3] |= pack_left_shift_u8(src_p->external_clock_synced, 6u, 0x40u);

    return (4);
}

int can1__main_ft24_x_sens_status_word_unpack(
    struct can1__main_ft24_x_sens_status_word_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 4u) {
        return (-EINVAL);
    }

    dst_p->have_gnss_time_pulse = unpack_right_shift_u8(src_p[0], 2u, 0x04u);
    dst_p->rtk_status = unpack_right_shift_u8(src_p[0], 3u, 0x18u);
    dst_p->filter_mode = unpack_left_shift_u8(src_p[0], 1u, 0x03u);
    dst_p->filter_mode |= unpack_right_shift_u8(src_p[1], 7u, 0x80u);
    dst_p->clip_mag_z = unpack_right_shift_u8(src_p[1], 0u, 0x01u);
    dst_p->retransmitted = unpack_right_shift_u8(src_p[1], 2u, 0x04u);
    dst_p->clipping_detected = unpack_right_shift_u8(src_p[1], 3u, 0x08u);
    dst_p->interpolated = unpack_right_shift_u8(src_p[1], 4u, 0x10u);
    dst_p->sync_in = unpack_right_shift_u8(src_p[1], 5u, 0x20u);
    dst_p->sync_out = unpack_right_shift_u8(src_p[1], 6u, 0x40u);
    dst_p->clip_acc_x = unpack_right_shift_u8(src_p[2], 0u, 0x01u);
    dst_p->clip_acc_y = unpack_right_shift_u8(src_p[2], 1u, 0x02u);
    dst_p->clip_acc_z = unpack_right_shift_u8(src_p[2], 2u, 0x04u);
    dst_p->clip_gyr_x = unpack_right_shift_u8(src_p[2], 3u, 0x08u);
    dst_p->clip_gyr_y = unpack_right_shift_u8(src_p[2], 4u, 0x10u);
    dst_p->clip_gyr_z = unpack_right_shift_u8(src_p[2], 5u, 0x20u);
    dst_p->clip_mag_x = unpack_right_shift_u8(src_p[2], 6u, 0x40u);
    dst_p->clip_mag_y = unpack_right_shift_u8(src_p[2], 7u, 0x80u);
    dst_p->self_test_ok = unpack_right_shift_u8(src_p[3], 0u, 0x01u);
    dst_p->orientation_valid = unpack_right_shift_u8(src_p[3], 1u, 0x02u);
    dst_p->gps_valid = unpack_right_shift_u8(src_p[3], 2u, 0x04u);
    dst_p->no_rotation = unpack_right_shift_u8(src_p[3], 3u, 0x18u);
    dst_p->representative_motion = unpack_right_shift_u8(src_p[3], 5u, 0x20u);
    dst_p->external_clock_synced = unpack_right_shift_u8(src_p[3], 6u, 0x40u);

    return (0);
}

int can1__main_ft24_x_sens_status_word_init(struct can1__main_ft24_x_sens_status_word_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_x_sens_status_word_t));

    return 0;
}

uint8_t can1__main_ft24_x_sens_status_word_have_gnss_time_pulse_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_x_sens_status_word_have_gnss_time_pulse_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_x_sens_status_word_have_gnss_time_pulse_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_x_sens_status_word_rtk_status_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_x_sens_status_word_rtk_status_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_x_sens_status_word_rtk_status_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_x_sens_status_word_filter_mode_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_x_sens_status_word_filter_mode_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_x_sens_status_word_filter_mode_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_x_sens_status_word_clip_mag_z_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_x_sens_status_word_clip_mag_z_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_x_sens_status_word_clip_mag_z_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_x_sens_status_word_retransmitted_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_x_sens_status_word_retransmitted_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_x_sens_status_word_retransmitted_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_x_sens_status_word_clipping_detected_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_x_sens_status_word_clipping_detected_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_x_sens_status_word_clipping_detected_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_x_sens_status_word_interpolated_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_x_sens_status_word_interpolated_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_x_sens_status_word_interpolated_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_x_sens_status_word_sync_in_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_x_sens_status_word_sync_in_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_x_sens_status_word_sync_in_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_x_sens_status_word_sync_out_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_x_sens_status_word_sync_out_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_x_sens_status_word_sync_out_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_x_sens_status_word_clip_acc_x_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_x_sens_status_word_clip_acc_x_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_x_sens_status_word_clip_acc_x_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_x_sens_status_word_clip_acc_y_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_x_sens_status_word_clip_acc_y_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_x_sens_status_word_clip_acc_y_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_x_sens_status_word_clip_acc_z_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_x_sens_status_word_clip_acc_z_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_x_sens_status_word_clip_acc_z_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_x_sens_status_word_clip_gyr_x_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_x_sens_status_word_clip_gyr_x_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_x_sens_status_word_clip_gyr_x_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_x_sens_status_word_clip_gyr_y_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_x_sens_status_word_clip_gyr_y_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_x_sens_status_word_clip_gyr_y_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_x_sens_status_word_clip_gyr_z_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_x_sens_status_word_clip_gyr_z_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_x_sens_status_word_clip_gyr_z_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_x_sens_status_word_clip_mag_x_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_x_sens_status_word_clip_mag_x_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_x_sens_status_word_clip_mag_x_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_x_sens_status_word_clip_mag_y_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_x_sens_status_word_clip_mag_y_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_x_sens_status_word_clip_mag_y_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_x_sens_status_word_self_test_ok_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_x_sens_status_word_self_test_ok_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_x_sens_status_word_self_test_ok_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_x_sens_status_word_orientation_valid_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_x_sens_status_word_orientation_valid_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_x_sens_status_word_orientation_valid_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_x_sens_status_word_gps_valid_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_x_sens_status_word_gps_valid_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_x_sens_status_word_gps_valid_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_x_sens_status_word_no_rotation_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_x_sens_status_word_no_rotation_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_x_sens_status_word_no_rotation_is_in_range(uint8_t value)
{
    return (value <= 3u);
}

uint8_t can1__main_ft24_x_sens_status_word_representative_motion_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_x_sens_status_word_representative_motion_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_x_sens_status_word_representative_motion_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_x_sens_status_word_external_clock_synced_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_x_sens_status_word_external_clock_synced_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_x_sens_status_word_external_clock_synced_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

int can1__main_ft24_x_sens_rate_of_turn_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_x_sens_rate_of_turn_t *src_p,
    size_t size)
{
    uint16_t x_sens_gyr_x;
    uint16_t x_sens_gyr_y;
    uint16_t x_sens_gyr_z;

    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    x_sens_gyr_x = (uint16_t)src_p->x_sens_gyr_x;
    dst_p[0] |= pack_right_shift_u16(x_sens_gyr_x, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(x_sens_gyr_x, 0u, 0xffu);
    x_sens_gyr_y = (uint16_t)src_p->x_sens_gyr_y;
    dst_p[2] |= pack_right_shift_u16(x_sens_gyr_y, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(x_sens_gyr_y, 0u, 0xffu);
    x_sens_gyr_z = (uint16_t)src_p->x_sens_gyr_z;
    dst_p[4] |= pack_right_shift_u16(x_sens_gyr_z, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(x_sens_gyr_z, 0u, 0xffu);

    return (6);
}

int can1__main_ft24_x_sens_rate_of_turn_unpack(
    struct can1__main_ft24_x_sens_rate_of_turn_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint16_t x_sens_gyr_x;
    uint16_t x_sens_gyr_y;
    uint16_t x_sens_gyr_z;

    if (size < 6u) {
        return (-EINVAL);
    }

    x_sens_gyr_x = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    x_sens_gyr_x |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->x_sens_gyr_x = (int16_t)x_sens_gyr_x;
    x_sens_gyr_y = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    x_sens_gyr_y |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->x_sens_gyr_y = (int16_t)x_sens_gyr_y;
    x_sens_gyr_z = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    x_sens_gyr_z |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->x_sens_gyr_z = (int16_t)x_sens_gyr_z;

    return (0);
}

int can1__main_ft24_x_sens_rate_of_turn_init(struct can1__main_ft24_x_sens_rate_of_turn_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_x_sens_rate_of_turn_t));

    return 0;
}

int16_t can1__main_ft24_x_sens_rate_of_turn_x_sens_gyr_x_encode(double value)
{
    return (int16_t)(value / 0.00195313);
}

double can1__main_ft24_x_sens_rate_of_turn_x_sens_gyr_x_decode(int16_t value)
{
    return ((double)value * 0.00195313);
}

bool can1__main_ft24_x_sens_rate_of_turn_x_sens_gyr_x_is_in_range(int16_t value)
{
    return ((value >= -17920) && (value <= 17920));
}

int16_t can1__main_ft24_x_sens_rate_of_turn_x_sens_gyr_y_encode(double value)
{
    return (int16_t)(value / 0.00195313);
}

double can1__main_ft24_x_sens_rate_of_turn_x_sens_gyr_y_decode(int16_t value)
{
    return ((double)value * 0.00195313);
}

bool can1__main_ft24_x_sens_rate_of_turn_x_sens_gyr_y_is_in_range(int16_t value)
{
    return ((value >= -17920) && (value <= 17920));
}

int16_t can1__main_ft24_x_sens_rate_of_turn_x_sens_gyr_z_encode(double value)
{
    return (int16_t)(value / 0.00195313);
}

double can1__main_ft24_x_sens_rate_of_turn_x_sens_gyr_z_decode(int16_t value)
{
    return ((double)value * 0.00195313);
}

bool can1__main_ft24_x_sens_rate_of_turn_x_sens_gyr_z_is_in_range(int16_t value)
{
    return ((value >= -17920) && (value <= 17920));
}

int can1__main_ft24_x_sens_acceleration_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_x_sens_acceleration_t *src_p,
    size_t size)
{
    uint16_t x_sens_acc_x;
    uint16_t x_sens_acc_y;
    uint16_t x_sens_acc_z;

    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    x_sens_acc_x = (uint16_t)src_p->x_sens_acc_x;
    dst_p[0] |= pack_right_shift_u16(x_sens_acc_x, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(x_sens_acc_x, 0u, 0xffu);
    x_sens_acc_y = (uint16_t)src_p->x_sens_acc_y;
    dst_p[2] |= pack_right_shift_u16(x_sens_acc_y, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(x_sens_acc_y, 0u, 0xffu);
    x_sens_acc_z = (uint16_t)src_p->x_sens_acc_z;
    dst_p[4] |= pack_right_shift_u16(x_sens_acc_z, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(x_sens_acc_z, 0u, 0xffu);

    return (6);
}

int can1__main_ft24_x_sens_acceleration_unpack(
    struct can1__main_ft24_x_sens_acceleration_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint16_t x_sens_acc_x;
    uint16_t x_sens_acc_y;
    uint16_t x_sens_acc_z;

    if (size < 6u) {
        return (-EINVAL);
    }

    x_sens_acc_x = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    x_sens_acc_x |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->x_sens_acc_x = (int16_t)x_sens_acc_x;
    x_sens_acc_y = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    x_sens_acc_y |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->x_sens_acc_y = (int16_t)x_sens_acc_y;
    x_sens_acc_z = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    x_sens_acc_z |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->x_sens_acc_z = (int16_t)x_sens_acc_z;

    return (0);
}

int can1__main_ft24_x_sens_acceleration_init(struct can1__main_ft24_x_sens_acceleration_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_x_sens_acceleration_t));

    return 0;
}

int16_t can1__main_ft24_x_sens_acceleration_x_sens_acc_x_encode(double value)
{
    return (int16_t)(value / 0.00390625);
}

double can1__main_ft24_x_sens_acceleration_x_sens_acc_x_decode(int16_t value)
{
    return ((double)value * 0.00390625);
}

bool can1__main_ft24_x_sens_acceleration_x_sens_acc_x_is_in_range(int16_t value)
{
    return ((value >= -25600) && (value <= 25600));
}

int16_t can1__main_ft24_x_sens_acceleration_x_sens_acc_y_encode(double value)
{
    return (int16_t)(value / 0.00390625);
}

double can1__main_ft24_x_sens_acceleration_x_sens_acc_y_decode(int16_t value)
{
    return ((double)value * 0.00390625);
}

bool can1__main_ft24_x_sens_acceleration_x_sens_acc_y_is_in_range(int16_t value)
{
    return ((value >= -25600) && (value <= 25600));
}

int16_t can1__main_ft24_x_sens_acceleration_x_sens_acc_z_encode(double value)
{
    return (int16_t)(value / 0.00390625);
}

double can1__main_ft24_x_sens_acceleration_x_sens_acc_z_decode(int16_t value)
{
    return ((double)value * 0.00390625);
}

bool can1__main_ft24_x_sens_acceleration_x_sens_acc_z_is_in_range(int16_t value)
{
    return ((value >= -25600) && (value <= 25600));
}

int can1__main_ft24_x_sens_long_lat_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_x_sens_long_lat_t *src_p,
    size_t size)
{
    uint32_t latitude;
    uint32_t longitude;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    latitude = (uint32_t)src_p->latitude;
    dst_p[0] |= pack_right_shift_u32(latitude, 24u, 0xffu);
    dst_p[1] |= pack_right_shift_u32(latitude, 16u, 0xffu);
    dst_p[2] |= pack_right_shift_u32(latitude, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u32(latitude, 0u, 0xffu);
    longitude = (uint32_t)src_p->longitude;
    dst_p[4] |= pack_right_shift_u32(longitude, 24u, 0xffu);
    dst_p[5] |= pack_right_shift_u32(longitude, 16u, 0xffu);
    dst_p[6] |= pack_right_shift_u32(longitude, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u32(longitude, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_x_sens_long_lat_unpack(
    struct can1__main_ft24_x_sens_long_lat_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint32_t latitude;
    uint32_t longitude;

    if (size < 8u) {
        return (-EINVAL);
    }

    latitude = unpack_left_shift_u32(src_p[0], 24u, 0xffu);
    latitude |= unpack_left_shift_u32(src_p[1], 16u, 0xffu);
    latitude |= unpack_left_shift_u32(src_p[2], 8u, 0xffu);
    latitude |= unpack_right_shift_u32(src_p[3], 0u, 0xffu);
    dst_p->latitude = (int32_t)latitude;
    longitude = unpack_left_shift_u32(src_p[4], 24u, 0xffu);
    longitude |= unpack_left_shift_u32(src_p[5], 16u, 0xffu);
    longitude |= unpack_left_shift_u32(src_p[6], 8u, 0xffu);
    longitude |= unpack_right_shift_u32(src_p[7], 0u, 0xffu);
    dst_p->longitude = (int32_t)longitude;

    return (0);
}

int can1__main_ft24_x_sens_long_lat_init(struct can1__main_ft24_x_sens_long_lat_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_x_sens_long_lat_t));

    return 0;
}

int32_t can1__main_ft24_x_sens_long_lat_latitude_encode(double value)
{
    return (int32_t)(value / 5.96046e-08);
}

double can1__main_ft24_x_sens_long_lat_latitude_decode(int32_t value)
{
    return ((double)value * 5.96046e-08);
}

bool can1__main_ft24_x_sens_long_lat_latitude_is_in_range(int32_t value)
{
    return ((value >= -1509950574) && (value <= 1509950574));
}

int32_t can1__main_ft24_x_sens_long_lat_longitude_encode(double value)
{
    return (int32_t)(value / 1.19209e-07);
}

double can1__main_ft24_x_sens_long_lat_longitude_decode(int32_t value)
{
    return ((double)value * 1.19209e-07);
}

bool can1__main_ft24_x_sens_long_lat_longitude_is_in_range(int32_t value)
{
    return ((value >= -1509953108) && (value <= 1509953108));
}

int can1__main_ft24_x_sens_velocity_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_x_sens_velocity_t *src_p,
    size_t size)
{
    uint16_t vel_x;
    uint16_t vel_y;
    uint16_t vel_z;

    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    vel_x = (uint16_t)src_p->vel_x;
    dst_p[0] |= pack_right_shift_u16(vel_x, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(vel_x, 0u, 0xffu);
    vel_y = (uint16_t)src_p->vel_y;
    dst_p[2] |= pack_right_shift_u16(vel_y, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(vel_y, 0u, 0xffu);
    vel_z = (uint16_t)src_p->vel_z;
    dst_p[4] |= pack_right_shift_u16(vel_z, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(vel_z, 0u, 0xffu);

    return (6);
}

int can1__main_ft24_x_sens_velocity_unpack(
    struct can1__main_ft24_x_sens_velocity_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint16_t vel_x;
    uint16_t vel_y;
    uint16_t vel_z;

    if (size < 6u) {
        return (-EINVAL);
    }

    vel_x = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    vel_x |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->vel_x = (int16_t)vel_x;
    vel_y = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    vel_y |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->vel_y = (int16_t)vel_y;
    vel_z = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    vel_z |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->vel_z = (int16_t)vel_z;

    return (0);
}

int can1__main_ft24_x_sens_velocity_init(struct can1__main_ft24_x_sens_velocity_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_x_sens_velocity_t));

    return 0;
}

int16_t can1__main_ft24_x_sens_velocity_vel_x_encode(double value)
{
    return (int16_t)(value / 0.015625);
}

double can1__main_ft24_x_sens_velocity_vel_x_decode(int16_t value)
{
    return ((double)value * 0.015625);
}

bool can1__main_ft24_x_sens_velocity_vel_x_is_in_range(int16_t value)
{
    return ((value >= -32000) && (value <= 32000));
}

int16_t can1__main_ft24_x_sens_velocity_vel_y_encode(double value)
{
    return (int16_t)(value / 0.015625);
}

double can1__main_ft24_x_sens_velocity_vel_y_decode(int16_t value)
{
    return ((double)value * 0.015625);
}

bool can1__main_ft24_x_sens_velocity_vel_y_is_in_range(int16_t value)
{
    return ((value >= -32000) && (value <= 32000));
}

int16_t can1__main_ft24_x_sens_velocity_vel_z_encode(double value)
{
    return (int16_t)(value / 0.015625);
}

double can1__main_ft24_x_sens_velocity_vel_z_decode(int16_t value)
{
    return ((double)value * 0.015625);
}

bool can1__main_ft24_x_sens_velocity_vel_z_is_in_range(int16_t value)
{
    return ((value >= -32000) && (value <= 32000));
}

int can1__main_ft24_as_mission_fb_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_as_mission_fb_t *src_p,
    size_t size)
{
    if (size < 1u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 1);

    dst_p[0] |= pack_left_shift_u8(src_p->mission_selection, 0u, 0x07u);

    return (1);
}

int can1__main_ft24_as_mission_fb_unpack(
    struct can1__main_ft24_as_mission_fb_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 1u) {
        return (-EINVAL);
    }

    dst_p->mission_selection = unpack_right_shift_u8(src_p[0], 0u, 0x07u);

    return (0);
}

int can1__main_ft24_as_mission_fb_init(struct can1__main_ft24_as_mission_fb_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_as_mission_fb_t));

    return 0;
}

uint8_t can1__main_ft24_as_mission_fb_mission_selection_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_as_mission_fb_mission_selection_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_as_mission_fb_mission_selection_is_in_range(uint8_t value)
{
    return ((value >= 1u) && (value <= 7u));
}

int can1__main_ft24_stw_mission_selected_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_stw_mission_selected_t *src_p,
    size_t size)
{
    if (size < 1u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 1);

    dst_p[0] |= pack_left_shift_u8(src_p->mission_selection, 0u, 0x07u);

    return (1);
}

int can1__main_ft24_stw_mission_selected_unpack(
    struct can1__main_ft24_stw_mission_selected_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 1u) {
        return (-EINVAL);
    }

    dst_p->mission_selection = unpack_right_shift_u8(src_p[0], 0u, 0x07u);

    return (0);
}

int can1__main_ft24_stw_mission_selected_init(struct can1__main_ft24_stw_mission_selected_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_stw_mission_selected_t));

    return 0;
}

uint8_t can1__main_ft24_stw_mission_selected_mission_selection_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_stw_mission_selected_mission_selection_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_mission_selected_mission_selection_is_in_range(uint8_t value)
{
    return ((value >= 1u) && (value <= 7u));
}

int can1__main_ft24_epsc_out_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_epsc_out_t *src_p,
    size_t size)
{
    uint16_t epsc_measured_rpm;
    uint16_t epsc_measured_steering_angle;

    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    epsc_measured_steering_angle = (uint16_t)src_p->epsc_measured_steering_angle;
    dst_p[0] |= pack_right_shift_u16(epsc_measured_steering_angle, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(epsc_measured_steering_angle, 0u, 0xffu);
    dst_p[2] |= pack_left_shift_u8(src_p->epsc_measured_current, 0u, 0xffu);
    dst_p[3] |= pack_left_shift_u8(src_p->epsc_measured_voltage, 0u, 0xffu);
    epsc_measured_rpm = (uint16_t)src_p->epsc_measured_rpm;
    dst_p[4] |= pack_right_shift_u16(epsc_measured_rpm, 4u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(epsc_measured_rpm, 4u, 0xf0u);
    dst_p[5] |= pack_right_shift_u16(src_p->epsc_measured_temperature, 6u, 0x0fu);
    dst_p[6] |= pack_left_shift_u16(src_p->epsc_measured_temperature, 2u, 0xfcu);
    dst_p[6] |= pack_right_shift_u16(src_p->epsc_measured_internal_temp, 8u, 0x03u);
    dst_p[7] |= pack_left_shift_u16(src_p->epsc_measured_internal_temp, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_epsc_out_unpack(
    struct can1__main_ft24_epsc_out_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint16_t epsc_measured_rpm;
    uint16_t epsc_measured_steering_angle;

    if (size < 8u) {
        return (-EINVAL);
    }

    epsc_measured_steering_angle = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    epsc_measured_steering_angle |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->epsc_measured_steering_angle = (int16_t)epsc_measured_steering_angle;
    dst_p->epsc_measured_current = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
    dst_p->epsc_measured_voltage = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    epsc_measured_rpm = unpack_left_shift_u16(src_p[4], 4u, 0xffu);
    epsc_measured_rpm |= unpack_right_shift_u16(src_p[5], 4u, 0xf0u);

    if ((epsc_measured_rpm & (1u << 11)) != 0u) {
        epsc_measured_rpm |= 0xf000u;
    }

    dst_p->epsc_measured_rpm = (int16_t)epsc_measured_rpm;
    dst_p->epsc_measured_temperature = unpack_left_shift_u16(src_p[5], 6u, 0x0fu);
    dst_p->epsc_measured_temperature |= unpack_right_shift_u16(src_p[6], 2u, 0xfcu);
    dst_p->epsc_measured_internal_temp = unpack_left_shift_u16(src_p[6], 8u, 0x03u);
    dst_p->epsc_measured_internal_temp |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_epsc_out_init(struct can1__main_ft24_epsc_out_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_epsc_out_t));

    return 0;
}

int16_t can1__main_ft24_epsc_out_epsc_measured_steering_angle_encode(double value)
{
    return (int16_t)(value / 7.20721e-05);
}

double can1__main_ft24_epsc_out_epsc_measured_steering_angle_decode(int16_t value)
{
    return ((double)value * 7.20721e-05);
}

bool can1__main_ft24_epsc_out_epsc_measured_steering_angle_is_in_range(int16_t value)
{
    (void)value;

    return (true);
}

uint8_t can1__main_ft24_epsc_out_epsc_measured_current_encode(double value)
{
    return (uint8_t)(value / 0.1);
}

double can1__main_ft24_epsc_out_epsc_measured_current_decode(uint8_t value)
{
    return ((double)value * 0.1);
}

bool can1__main_ft24_epsc_out_epsc_measured_current_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

uint8_t can1__main_ft24_epsc_out_epsc_measured_voltage_encode(double value)
{
    return (uint8_t)(value / 0.1);
}

double can1__main_ft24_epsc_out_epsc_measured_voltage_decode(uint8_t value)
{
    return ((double)value * 0.1);
}

bool can1__main_ft24_epsc_out_epsc_measured_voltage_is_in_range(uint8_t value)
{
    return (value <= 200u);
}

int16_t can1__main_ft24_epsc_out_epsc_measured_rpm_encode(double value)
{
    return (int16_t)(value / 0.1);
}

double can1__main_ft24_epsc_out_epsc_measured_rpm_decode(int16_t value)
{
    return ((double)value * 0.1);
}

bool can1__main_ft24_epsc_out_epsc_measured_rpm_is_in_range(int16_t value)
{
    return ((value >= -2048) && (value <= 2047));
}

uint16_t can1__main_ft24_epsc_out_epsc_measured_temperature_encode(double value)
{
    return (uint16_t)(value / 0.1);
}

double can1__main_ft24_epsc_out_epsc_measured_temperature_decode(uint16_t value)
{
    return ((double)value * 0.1);
}

bool can1__main_ft24_epsc_out_epsc_measured_temperature_is_in_range(uint16_t value)
{
    return (value <= 1023u);
}

uint16_t can1__main_ft24_epsc_out_epsc_measured_internal_temp_encode(double value)
{
    return (uint16_t)(value / 0.1);
}

double can1__main_ft24_epsc_out_epsc_measured_internal_temp_decode(uint16_t value)
{
    return ((double)value * 0.1);
}

bool can1__main_ft24_epsc_out_epsc_measured_internal_temp_is_in_range(uint16_t value)
{
    return (value <= 1023u);
}

int can1__main_ft24_epsc_steering_in_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_epsc_steering_in_t *src_p,
    size_t size)
{
    uint16_t epsc_desired_steering_angle;

    if (size < 2u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 2);

    epsc_desired_steering_angle = (uint16_t)src_p->epsc_desired_steering_angle;
    dst_p[0] |= pack_right_shift_u16(epsc_desired_steering_angle, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(epsc_desired_steering_angle, 0u, 0xffu);

    return (2);
}

int can1__main_ft24_epsc_steering_in_unpack(
    struct can1__main_ft24_epsc_steering_in_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint16_t epsc_desired_steering_angle;

    if (size < 2u) {
        return (-EINVAL);
    }

    epsc_desired_steering_angle = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    epsc_desired_steering_angle |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->epsc_desired_steering_angle = (int16_t)epsc_desired_steering_angle;

    return (0);
}

int can1__main_ft24_epsc_steering_in_init(struct can1__main_ft24_epsc_steering_in_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_epsc_steering_in_t));

    return 0;
}

int16_t can1__main_ft24_epsc_steering_in_epsc_desired_steering_angle_encode(double value)
{
    return (int16_t)(value / 0.0001);
}

double can1__main_ft24_epsc_steering_in_epsc_desired_steering_angle_decode(int16_t value)
{
    return ((double)value * 0.0001);
}

bool can1__main_ft24_epsc_steering_in_epsc_desired_steering_angle_is_in_range(int16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_stw_buttons_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_stw_buttons_t *src_p,
    size_t size)
{
    if (size < 1u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 1);

    dst_p[0] |= pack_left_shift_u8(src_p->stw_button_left, 0u, 0x01u);
    dst_p[0] |= pack_left_shift_u8(src_p->stw_button_right, 1u, 0x02u);
    dst_p[0] |= pack_left_shift_u8(src_p->stw_button_r2_d, 2u, 0x04u);
    dst_p[0] |= pack_left_shift_u8(src_p->stw_button_enter, 3u, 0x08u);

    return (1);
}

int can1__main_ft24_stw_buttons_unpack(
    struct can1__main_ft24_stw_buttons_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 1u) {
        return (-EINVAL);
    }

    dst_p->stw_button_left = unpack_right_shift_u8(src_p[0], 0u, 0x01u);
    dst_p->stw_button_right = unpack_right_shift_u8(src_p[0], 1u, 0x02u);
    dst_p->stw_button_r2_d = unpack_right_shift_u8(src_p[0], 2u, 0x04u);
    dst_p->stw_button_enter = unpack_right_shift_u8(src_p[0], 3u, 0x08u);

    return (0);
}

int can1__main_ft24_stw_buttons_init(struct can1__main_ft24_stw_buttons_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_stw_buttons_t));

    return 0;
}

uint8_t can1__main_ft24_stw_buttons_stw_button_left_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_stw_buttons_stw_button_left_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_buttons_stw_button_left_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_stw_buttons_stw_button_right_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_stw_buttons_stw_button_right_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_buttons_stw_button_right_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_stw_buttons_stw_button_r2_d_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_stw_buttons_stw_button_r2_d_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_buttons_stw_button_r2_d_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_stw_buttons_stw_button_enter_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_stw_buttons_stw_button_enter_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_buttons_stw_button_enter_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

int can1__main_ft24_stw_status_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_stw_status_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 6);

    dst_p[0] |= pack_left_shift_u8(src_p->as_state_stw, 0u, 0x07u);
    dst_p[0] |= pack_left_shift_u8(src_p->r2_d_progress, 4u, 0xf0u);
    dst_p[1] |= pack_left_shift_u8(src_p->inv_l_ready, 0u, 0x01u);
    dst_p[1] |= pack_left_shift_u8(src_p->inv_r_ready, 1u, 0x02u);
    dst_p[1] |= pack_left_shift_u8(src_p->sdc_bfl, 2u, 0x04u);
    dst_p[1] |= pack_left_shift_u8(src_p->sdc_brl, 3u, 0x08u);
    dst_p[1] |= pack_left_shift_u8(src_p->sdc_acc, 4u, 0x10u);
    dst_p[1] |= pack_left_shift_u8(src_p->sdc_hvb, 5u, 0x20u);
    dst_p[2] |= pack_left_shift_u8(src_p->lap_count, 0u, 0x3fu);
    dst_p[3] |= pack_left_shift_u8(src_p->ini_chk_state, 0u, 0xffu);
    dst_p[4] |= pack_left_shift_u8(src_p->err_sdc, 0u, 0x01u);
    dst_p[4] |= pack_left_shift_u8(src_p->err_ams, 1u, 0x02u);
    dst_p[4] |= pack_left_shift_u8(src_p->err_pdu, 2u, 0x04u);
    dst_p[4] |= pack_left_shift_u8(src_p->err_ini_chk, 3u, 0x08u);
    dst_p[4] |= pack_left_shift_u8(src_p->err_con_mon, 4u, 0x10u);
    dst_p[4] |= pack_left_shift_u8(src_p->err_scs, 5u, 0x20u);
    dst_p[4] |= pack_left_shift_u8(src_p->err_s_bspd, 6u, 0x40u);
    dst_p[4] |= pack_left_shift_u8(src_p->err_app_sp, 7u, 0x80u);
    dst_p[5] |= pack_left_shift_u8(src_p->err_as, 0u, 0x01u);
    dst_p[5] |= pack_left_shift_u8(src_p->err_ros, 1u, 0x02u);
    dst_p[5] |= pack_left_shift_u8(src_p->err_res, 2u, 0x04u);
    dst_p[5] |= pack_left_shift_u8(src_p->err_inv_l, 3u, 0x08u);
    dst_p[5] |= pack_left_shift_u8(src_p->err_inv_r, 4u, 0x10u);

    return (6);
}

int can1__main_ft24_stw_status_unpack(
    struct can1__main_ft24_stw_status_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 6u) {
        return (-EINVAL);
    }

    dst_p->as_state_stw = unpack_right_shift_u8(src_p[0], 0u, 0x07u);
    dst_p->r2_d_progress = unpack_right_shift_u8(src_p[0], 4u, 0xf0u);
    dst_p->inv_l_ready = unpack_right_shift_u8(src_p[1], 0u, 0x01u);
    dst_p->inv_r_ready = unpack_right_shift_u8(src_p[1], 1u, 0x02u);
    dst_p->sdc_bfl = unpack_right_shift_u8(src_p[1], 2u, 0x04u);
    dst_p->sdc_brl = unpack_right_shift_u8(src_p[1], 3u, 0x08u);
    dst_p->sdc_acc = unpack_right_shift_u8(src_p[1], 4u, 0x10u);
    dst_p->sdc_hvb = unpack_right_shift_u8(src_p[1], 5u, 0x20u);
    dst_p->lap_count = unpack_right_shift_u8(src_p[2], 0u, 0x3fu);
    dst_p->ini_chk_state = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
    dst_p->err_sdc = unpack_right_shift_u8(src_p[4], 0u, 0x01u);
    dst_p->err_ams = unpack_right_shift_u8(src_p[4], 1u, 0x02u);
    dst_p->err_pdu = unpack_right_shift_u8(src_p[4], 2u, 0x04u);
    dst_p->err_ini_chk = unpack_right_shift_u8(src_p[4], 3u, 0x08u);
    dst_p->err_con_mon = unpack_right_shift_u8(src_p[4], 4u, 0x10u);
    dst_p->err_scs = unpack_right_shift_u8(src_p[4], 5u, 0x20u);
    dst_p->err_s_bspd = unpack_right_shift_u8(src_p[4], 6u, 0x40u);
    dst_p->err_app_sp = unpack_right_shift_u8(src_p[4], 7u, 0x80u);
    dst_p->err_as = unpack_right_shift_u8(src_p[5], 0u, 0x01u);
    dst_p->err_ros = unpack_right_shift_u8(src_p[5], 1u, 0x02u);
    dst_p->err_res = unpack_right_shift_u8(src_p[5], 2u, 0x04u);
    dst_p->err_inv_l = unpack_right_shift_u8(src_p[5], 3u, 0x08u);
    dst_p->err_inv_r = unpack_right_shift_u8(src_p[5], 4u, 0x10u);

    return (0);
}

int can1__main_ft24_stw_status_init(struct can1__main_ft24_stw_status_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_stw_status_t));

    return 0;
}

uint8_t can1__main_ft24_stw_status_as_state_stw_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_stw_status_as_state_stw_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_status_as_state_stw_is_in_range(uint8_t value)
{
    return (value <= 5u);
}

uint8_t can1__main_ft24_stw_status_r2_d_progress_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_stw_status_r2_d_progress_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_status_r2_d_progress_is_in_range(uint8_t value)
{
    return (value <= 15u);
}

uint8_t can1__main_ft24_stw_status_inv_l_ready_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_stw_status_inv_l_ready_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_status_inv_l_ready_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_stw_status_inv_r_ready_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_stw_status_inv_r_ready_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_status_inv_r_ready_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_stw_status_sdc_bfl_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_stw_status_sdc_bfl_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_status_sdc_bfl_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_stw_status_sdc_brl_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_stw_status_sdc_brl_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_status_sdc_brl_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_stw_status_sdc_acc_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_stw_status_sdc_acc_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_status_sdc_acc_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_stw_status_sdc_hvb_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_stw_status_sdc_hvb_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_status_sdc_hvb_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_stw_status_lap_count_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_stw_status_lap_count_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_status_lap_count_is_in_range(uint8_t value)
{
    return (value <= 64u);
}

uint8_t can1__main_ft24_stw_status_ini_chk_state_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_stw_status_ini_chk_state_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_status_ini_chk_state_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

uint8_t can1__main_ft24_stw_status_err_sdc_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_stw_status_err_sdc_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_status_err_sdc_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_stw_status_err_ams_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_stw_status_err_ams_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_status_err_ams_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_stw_status_err_pdu_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_stw_status_err_pdu_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_status_err_pdu_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_stw_status_err_ini_chk_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_stw_status_err_ini_chk_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_status_err_ini_chk_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_stw_status_err_con_mon_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_stw_status_err_con_mon_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_status_err_con_mon_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_stw_status_err_scs_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_stw_status_err_scs_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_status_err_scs_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_stw_status_err_s_bspd_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_stw_status_err_s_bspd_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_status_err_s_bspd_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_stw_status_err_app_sp_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_stw_status_err_app_sp_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_status_err_app_sp_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_stw_status_err_as_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_stw_status_err_as_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_status_err_as_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_stw_status_err_ros_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_stw_status_err_ros_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_status_err_ros_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_stw_status_err_res_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_stw_status_err_res_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_status_err_res_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_stw_status_err_inv_l_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_stw_status_err_inv_l_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_status_err_inv_l_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_stw_status_err_inv_r_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_stw_status_err_inv_r_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_stw_status_err_inv_r_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

int can1__main_ft24_pdu_current_1_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_pdu_current_1_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->pdu_alwayson_curr, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->pdu_alwayson_curr, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->pdu_misc_curr, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->pdu_misc_curr, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->pdu_inverter_curr, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->pdu_inverter_curr, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->pdu_shutdown_circuit_curr, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->pdu_shutdown_circuit_curr, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_pdu_current_1_unpack(
    struct can1__main_ft24_pdu_current_1_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->pdu_alwayson_curr = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->pdu_alwayson_curr |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->pdu_misc_curr = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->pdu_misc_curr |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->pdu_inverter_curr = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->pdu_inverter_curr |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->pdu_shutdown_circuit_curr = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->pdu_shutdown_circuit_curr |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_pdu_current_1_init(struct can1__main_ft24_pdu_current_1_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_pdu_current_1_t));

    return 0;
}

uint16_t can1__main_ft24_pdu_current_1_pdu_alwayson_curr_encode(double value)
{
    return (uint16_t)(value);
}

double can1__main_ft24_pdu_current_1_pdu_alwayson_curr_decode(uint16_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_current_1_pdu_alwayson_curr_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_pdu_current_1_pdu_misc_curr_encode(double value)
{
    return (uint16_t)(value);
}

double can1__main_ft24_pdu_current_1_pdu_misc_curr_decode(uint16_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_current_1_pdu_misc_curr_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_pdu_current_1_pdu_inverter_curr_encode(double value)
{
    return (uint16_t)(value);
}

double can1__main_ft24_pdu_current_1_pdu_inverter_curr_decode(uint16_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_current_1_pdu_inverter_curr_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_pdu_current_1_pdu_shutdown_circuit_curr_encode(double value)
{
    return (uint16_t)(value);
}

double can1__main_ft24_pdu_current_1_pdu_shutdown_circuit_curr_decode(uint16_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_current_1_pdu_shutdown_circuit_curr_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_pdu_current_2_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_pdu_current_2_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->pdu_fans_curr, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->pdu_fans_curr, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->pdu_pump_curr, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->pdu_pump_curr, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->pdu_aggregat_curr, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->pdu_aggregat_curr, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->pdu_steering_curr, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->pdu_steering_curr, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_pdu_current_2_unpack(
    struct can1__main_ft24_pdu_current_2_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->pdu_fans_curr = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->pdu_fans_curr |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->pdu_pump_curr = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->pdu_pump_curr |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->pdu_aggregat_curr = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->pdu_aggregat_curr |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->pdu_steering_curr = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->pdu_steering_curr |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_pdu_current_2_init(struct can1__main_ft24_pdu_current_2_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_pdu_current_2_t));

    return 0;
}

uint16_t can1__main_ft24_pdu_current_2_pdu_fans_curr_encode(double value)
{
    return (uint16_t)(value);
}

double can1__main_ft24_pdu_current_2_pdu_fans_curr_decode(uint16_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_current_2_pdu_fans_curr_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_pdu_current_2_pdu_pump_curr_encode(double value)
{
    return (uint16_t)(value);
}

double can1__main_ft24_pdu_current_2_pdu_pump_curr_decode(uint16_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_current_2_pdu_pump_curr_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_pdu_current_2_pdu_aggregat_curr_encode(double value)
{
    return (uint16_t)(value);
}

double can1__main_ft24_pdu_current_2_pdu_aggregat_curr_decode(uint16_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_current_2_pdu_aggregat_curr_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_pdu_current_2_pdu_steering_curr_encode(double value)
{
    return (uint16_t)(value);
}

double can1__main_ft24_pdu_current_2_pdu_steering_curr_decode(uint16_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_current_2_pdu_steering_curr_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_pdu_current_3_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_pdu_current_3_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->pdu_ebs_valve_1_curr, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->pdu_ebs_valve_1_curr, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->pdu_ebs_valve_2_curr, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->pdu_ebs_valve_2_curr, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->pdu_mode_valve_1_curr, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->pdu_mode_valve_1_curr, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->pdu_mode_valve_2_curr, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->pdu_mode_valve_2_curr, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_pdu_current_3_unpack(
    struct can1__main_ft24_pdu_current_3_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->pdu_ebs_valve_1_curr = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->pdu_ebs_valve_1_curr |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->pdu_ebs_valve_2_curr = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->pdu_ebs_valve_2_curr |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->pdu_mode_valve_1_curr = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->pdu_mode_valve_1_curr |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->pdu_mode_valve_2_curr = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->pdu_mode_valve_2_curr |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_pdu_current_3_init(struct can1__main_ft24_pdu_current_3_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_pdu_current_3_t));

    return 0;
}

uint16_t can1__main_ft24_pdu_current_3_pdu_ebs_valve_1_curr_encode(double value)
{
    return (uint16_t)(value);
}

double can1__main_ft24_pdu_current_3_pdu_ebs_valve_1_curr_decode(uint16_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_current_3_pdu_ebs_valve_1_curr_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_pdu_current_3_pdu_ebs_valve_2_curr_encode(double value)
{
    return (uint16_t)(value);
}

double can1__main_ft24_pdu_current_3_pdu_ebs_valve_2_curr_decode(uint16_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_current_3_pdu_ebs_valve_2_curr_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_pdu_current_3_pdu_mode_valve_1_curr_encode(double value)
{
    return (uint16_t)(value);
}

double can1__main_ft24_pdu_current_3_pdu_mode_valve_1_curr_decode(uint16_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_current_3_pdu_mode_valve_1_curr_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_pdu_current_3_pdu_mode_valve_2_curr_encode(double value)
{
    return (uint16_t)(value);
}

double can1__main_ft24_pdu_current_3_pdu_mode_valve_2_curr_decode(uint16_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_current_3_pdu_mode_valve_2_curr_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_pdu_current_4_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_pdu_current_4_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 8);

    dst_p[0] |= pack_right_shift_u16(src_p->pdu_sensorbox_curr, 8u, 0xffu);
    dst_p[1] |= pack_left_shift_u16(src_p->pdu_sensorbox_curr, 0u, 0xffu);
    dst_p[2] |= pack_right_shift_u16(src_p->pdu_service_brake_curr, 8u, 0xffu);
    dst_p[3] |= pack_left_shift_u16(src_p->pdu_service_brake_curr, 0u, 0xffu);
    dst_p[4] |= pack_right_shift_u16(src_p->pdu_servos_curr, 8u, 0xffu);
    dst_p[5] |= pack_left_shift_u16(src_p->pdu_servos_curr, 0u, 0xffu);
    dst_p[6] |= pack_right_shift_u16(src_p->pdu_shutdown_circuit_curr, 8u, 0xffu);
    dst_p[7] |= pack_left_shift_u16(src_p->pdu_shutdown_circuit_curr, 0u, 0xffu);

    return (8);
}

int can1__main_ft24_pdu_current_4_unpack(
    struct can1__main_ft24_pdu_current_4_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    if (size < 8u) {
        return (-EINVAL);
    }

    dst_p->pdu_sensorbox_curr = unpack_left_shift_u16(src_p[0], 8u, 0xffu);
    dst_p->pdu_sensorbox_curr |= unpack_right_shift_u16(src_p[1], 0u, 0xffu);
    dst_p->pdu_service_brake_curr = unpack_left_shift_u16(src_p[2], 8u, 0xffu);
    dst_p->pdu_service_brake_curr |= unpack_right_shift_u16(src_p[3], 0u, 0xffu);
    dst_p->pdu_servos_curr = unpack_left_shift_u16(src_p[4], 8u, 0xffu);
    dst_p->pdu_servos_curr |= unpack_right_shift_u16(src_p[5], 0u, 0xffu);
    dst_p->pdu_shutdown_circuit_curr = unpack_left_shift_u16(src_p[6], 8u, 0xffu);
    dst_p->pdu_shutdown_circuit_curr |= unpack_right_shift_u16(src_p[7], 0u, 0xffu);

    return (0);
}

int can1__main_ft24_pdu_current_4_init(struct can1__main_ft24_pdu_current_4_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_pdu_current_4_t));

    return 0;
}

uint16_t can1__main_ft24_pdu_current_4_pdu_sensorbox_curr_encode(double value)
{
    return (uint16_t)(value);
}

double can1__main_ft24_pdu_current_4_pdu_sensorbox_curr_decode(uint16_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_current_4_pdu_sensorbox_curr_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_pdu_current_4_pdu_service_brake_curr_encode(double value)
{
    return (uint16_t)(value);
}

double can1__main_ft24_pdu_current_4_pdu_service_brake_curr_decode(uint16_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_current_4_pdu_service_brake_curr_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_pdu_current_4_pdu_servos_curr_encode(double value)
{
    return (uint16_t)(value);
}

double can1__main_ft24_pdu_current_4_pdu_servos_curr_decode(uint16_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_current_4_pdu_servos_curr_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

uint16_t can1__main_ft24_pdu_current_4_pdu_shutdown_circuit_curr_encode(double value)
{
    return (uint16_t)(value);
}

double can1__main_ft24_pdu_current_4_pdu_shutdown_circuit_curr_decode(uint16_t value)
{
    return ((double)value);
}

bool can1__main_ft24_pdu_current_4_pdu_shutdown_circuit_curr_is_in_range(uint16_t value)
{
    (void)value;

    return (true);
}

int can1__main_ft24_epsc_config_in_pack(
    uint8_t *dst_p,
    const struct can1__main_ft24_epsc_config_in_t *src_p,
    size_t size)
{
    uint8_t epsc_should_calibrate;

    if (size < 7u) {
        return (-EINVAL);
    }

    memset(&dst_p[0], 0, 7);

    epsc_should_calibrate = (uint8_t)src_p->epsc_should_calibrate;
    dst_p[0] |= pack_left_shift_u8(epsc_should_calibrate, 7u, 0x80u);
    dst_p[0] |= pack_left_shift_u8(src_p->epsc_should_change_mode, 6u, 0x40u);
    dst_p[0] |= pack_left_shift_u8(src_p->epsc_flag3, 4u, 0x10u);
    dst_p[0] |= pack_left_shift_u8(src_p->epsc_flag4, 3u, 0x08u);
    dst_p[0] |= pack_left_shift_u8(src_p->epsc_flag5, 2u, 0x04u);
    dst_p[0] |= pack_left_shift_u8(src_p->epsc_flag6, 1u, 0x02u);
    dst_p[0] |= pack_left_shift_u8(src_p->epsc_flag7, 0u, 0x01u);

    switch (src_p->epsc_should_change_mode) {

    case 1:
        dst_p[0] |= pack_left_shift_u8(src_p->epsc_mode, 5u, 0x20u);
        dst_p[1] |= pack_left_shift_u8(src_p->epsc_kp_pos, 0u, 0xffu);
        dst_p[2] |= pack_left_shift_u8(src_p->epsc_ki_pos, 0u, 0xffu);
        dst_p[3] |= pack_left_shift_u8(src_p->epsc_kp_rpm, 0u, 0xffu);
        dst_p[4] |= pack_left_shift_u8(src_p->epsc_ki_rpm, 0u, 0xffu);
        dst_p[5] |= pack_left_shift_u8(src_p->epsc_kp_curr, 0u, 0xffu);
        dst_p[6] |= pack_left_shift_u8(src_p->epsc_ki_curr, 0u, 0xffu);
        break;

    default:
        break;
    }

    return (7);
}

int can1__main_ft24_epsc_config_in_unpack(
    struct can1__main_ft24_epsc_config_in_t *dst_p,
    const uint8_t *src_p,
    size_t size)
{
    uint8_t epsc_should_calibrate;

    if (size < 7u) {
        return (-EINVAL);
    }

    epsc_should_calibrate = unpack_right_shift_u8(src_p[0], 7u, 0x80u);

    if ((epsc_should_calibrate & (1u << 0)) != 0u) {
        epsc_should_calibrate |= 0xfeu;
    }

    dst_p->epsc_should_calibrate = (int8_t)epsc_should_calibrate;
    dst_p->epsc_should_change_mode = unpack_right_shift_u8(src_p[0], 6u, 0x40u);
    dst_p->epsc_flag3 = unpack_right_shift_u8(src_p[0], 4u, 0x10u);
    dst_p->epsc_flag4 = unpack_right_shift_u8(src_p[0], 3u, 0x08u);
    dst_p->epsc_flag5 = unpack_right_shift_u8(src_p[0], 2u, 0x04u);
    dst_p->epsc_flag6 = unpack_right_shift_u8(src_p[0], 1u, 0x02u);
    dst_p->epsc_flag7 = unpack_right_shift_u8(src_p[0], 0u, 0x01u);

    switch (dst_p->epsc_should_change_mode) {

    case 1:
        dst_p->epsc_mode = unpack_right_shift_u8(src_p[0], 5u, 0x20u);
        dst_p->epsc_kp_pos = unpack_right_shift_u8(src_p[1], 0u, 0xffu);
        dst_p->epsc_ki_pos = unpack_right_shift_u8(src_p[2], 0u, 0xffu);
        dst_p->epsc_kp_rpm = unpack_right_shift_u8(src_p[3], 0u, 0xffu);
        dst_p->epsc_ki_rpm = unpack_right_shift_u8(src_p[4], 0u, 0xffu);
        dst_p->epsc_kp_curr = unpack_right_shift_u8(src_p[5], 0u, 0xffu);
        dst_p->epsc_ki_curr = unpack_right_shift_u8(src_p[6], 0u, 0xffu);
        break;

    default:
        break;
    }

    return (0);
}

int can1__main_ft24_epsc_config_in_init(struct can1__main_ft24_epsc_config_in_t *msg_p)
{
    if (msg_p == NULL) return -1;

    memset(msg_p, 0, sizeof(struct can1__main_ft24_epsc_config_in_t));

    return 0;
}

int8_t can1__main_ft24_epsc_config_in_epsc_should_calibrate_encode(double value)
{
    return (int8_t)(value);
}

double can1__main_ft24_epsc_config_in_epsc_should_calibrate_decode(int8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_epsc_config_in_epsc_should_calibrate_is_in_range(int8_t value)
{
    return ((value >= 0) && (value <= 1));
}

uint8_t can1__main_ft24_epsc_config_in_epsc_should_change_mode_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_epsc_config_in_epsc_should_change_mode_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_epsc_config_in_epsc_should_change_mode_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_epsc_config_in_epsc_mode_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_epsc_config_in_epsc_mode_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_epsc_config_in_epsc_mode_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_epsc_config_in_epsc_flag3_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_epsc_config_in_epsc_flag3_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_epsc_config_in_epsc_flag3_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_epsc_config_in_epsc_flag4_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_epsc_config_in_epsc_flag4_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_epsc_config_in_epsc_flag4_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_epsc_config_in_epsc_flag5_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_epsc_config_in_epsc_flag5_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_epsc_config_in_epsc_flag5_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_epsc_config_in_epsc_flag6_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_epsc_config_in_epsc_flag6_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_epsc_config_in_epsc_flag6_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_epsc_config_in_epsc_flag7_encode(double value)
{
    return (uint8_t)(value);
}

double can1__main_ft24_epsc_config_in_epsc_flag7_decode(uint8_t value)
{
    return ((double)value);
}

bool can1__main_ft24_epsc_config_in_epsc_flag7_is_in_range(uint8_t value)
{
    return (value <= 1u);
}

uint8_t can1__main_ft24_epsc_config_in_epsc_kp_pos_encode(double value)
{
    return (uint8_t)(value / 0.1);
}

double can1__main_ft24_epsc_config_in_epsc_kp_pos_decode(uint8_t value)
{
    return ((double)value * 0.1);
}

bool can1__main_ft24_epsc_config_in_epsc_kp_pos_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

uint8_t can1__main_ft24_epsc_config_in_epsc_ki_pos_encode(double value)
{
    return (uint8_t)(value / 0.1);
}

double can1__main_ft24_epsc_config_in_epsc_ki_pos_decode(uint8_t value)
{
    return ((double)value * 0.1);
}

bool can1__main_ft24_epsc_config_in_epsc_ki_pos_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

uint8_t can1__main_ft24_epsc_config_in_epsc_kp_rpm_encode(double value)
{
    return (uint8_t)(value / 0.1);
}

double can1__main_ft24_epsc_config_in_epsc_kp_rpm_decode(uint8_t value)
{
    return ((double)value * 0.1);
}

bool can1__main_ft24_epsc_config_in_epsc_kp_rpm_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

uint8_t can1__main_ft24_epsc_config_in_epsc_ki_rpm_encode(double value)
{
    return (uint8_t)(value / 0.1);
}

double can1__main_ft24_epsc_config_in_epsc_ki_rpm_decode(uint8_t value)
{
    return ((double)value * 0.1);
}

bool can1__main_ft24_epsc_config_in_epsc_ki_rpm_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

uint8_t can1__main_ft24_epsc_config_in_epsc_kp_curr_encode(double value)
{
    return (uint8_t)(value / 0.1);
}

double can1__main_ft24_epsc_config_in_epsc_kp_curr_decode(uint8_t value)
{
    return ((double)value * 0.1);
}

bool can1__main_ft24_epsc_config_in_epsc_kp_curr_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}

uint8_t can1__main_ft24_epsc_config_in_epsc_ki_curr_encode(double value)
{
    return (uint8_t)(value / 0.1);
}

double can1__main_ft24_epsc_config_in_epsc_ki_curr_decode(uint8_t value)
{
    return ((double)value * 0.1);
}

bool can1__main_ft24_epsc_config_in_epsc_ki_curr_is_in_range(uint8_t value)
{
    (void)value;

    return (true);
}
