added reflection api