console implementation