extend + extend.tests + Some changes