pub fn gate() -> usize