url functional; needs cleanup