be merciful, add some comments :)