added the initial dirty code
resolved merged conflict