very bulky, random pos generation implemented.