private analysis code