Added first part implementation.