nice work, too bad it needs framework