modified and added methods.