first changes and tests