Main methods implemented