Finished but potentially buggy implementation