methods declarations and signatures