why reinvent the wheel.. will if have to but if i don't why?
broken link.
trace it? that is pretty simple