pub type R = crate::R<WRP2ARrs>;
pub type W = crate::W<WRP2ARrs>;
pub type WRP2A_STRT_R = crate::FieldReader;
pub type WRP2A_STRT_W<'a, REG> = crate::FieldWriter<'a, REG, 8>;
pub type WRP2A_END_R = crate::FieldReader;
pub type WRP2A_END_W<'a, REG> = crate::FieldWriter<'a, REG, 8>;
impl R {
        #[inline(always)]
    pub fn wrp2a_strt(&self) -> WRP2A_STRT_R {
        WRP2A_STRT_R::new((self.bits & 0xff) as u8)
    }
        #[inline(always)]
    pub fn wrp2a_end(&self) -> WRP2A_END_R {
        WRP2A_END_R::new(((self.bits >> 16) & 0xff) as u8)
    }
}
impl core::fmt::Debug for R {
    fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {
        f.debug_struct("WRP2AR")
            .field("wrp2a_strt", &self.wrp2a_strt())
            .field("wrp2a_end", &self.wrp2a_end())
            .finish()
    }
}
impl W {
        #[inline(always)]
    pub fn wrp2a_strt(&mut self) -> WRP2A_STRT_W<WRP2ARrs> {
        WRP2A_STRT_W::new(self, 0)
    }
        #[inline(always)]
    pub fn wrp2a_end(&mut self) -> WRP2A_END_W<WRP2ARrs> {
        WRP2A_END_W::new(self, 16)
    }
}
pub struct WRP2ARrs;
impl crate::RegisterSpec for WRP2ARrs {
    type Ux = u32;
}
impl crate::Readable for WRP2ARrs {}
impl crate::Writable for WRP2ARrs {
    type Safety = crate::Unsafe;
}
impl crate::Resettable for WRP2ARrs {
    const RESET_VALUE: u32 = 0xff00_ff00;
}