added a few necessary methods