more questions may be added!
status - broken, results may be innaccurate! you could look in the code and tell me what's wrong