re-work for dynamic application