added swap etc