<div dir="ltr"><div class="gmail_default"><div class="gmail_default" style="font-family:Arial,Helvetica,sans-serif;margin:0px;padding:0px;border:0px;font-size:13px"><span style="margin:0px;padding:0px;border:0px">Dear Team,</span><div style="margin:0px;padding:0px;border:0px"><br></div><div style="margin:0px;padding:0px;border:0px">Good day. Thanks for all the efforts in developing and maintaining the Soot framework. I am a researcher trying to leverage Soot API to generate call graphs from Jar files (not from an Android app). In particular, given a method foo, I would like to know what are the methods that might call foo. For example:</div><div style="margin:0px;padding:0px;border:0px"><br></div><div style="margin:0px;padding:0px;border:0px">In Class A, method1 invokes b.method2, b is an instance of Class B. When I am extracting the functions which might call method2, I hope it can give me method1.</div><div style="margin:0px;padding:0px;border:0px"><br></div><div style="margin:0px;padding:0px;border:0px">The problem I currently have is, the methods I am studying are from library class (which means it does not have a main class) and it is not a static method as well. I have been using the tutorial from <a href="https://github.com/Sable/soot/wiki/Using-Soot-with-custom-entry-points" target="_blank" style="margin:0px;padding:0px;border:0px;text-decoration-line:none">https://github.com/Sable/<wbr>soot/wiki/Using-Soot-with-<wbr>custom-entry-points</a> to set entry points. The setup code is like: (due to security reasons, i have to hide the real name of the method/class)</div><div style="margin:0px;padding:0px;border:0px"><br></div><div style="margin:0px;padding:0px;border:0px"><p class="gmail-m_1620104289076429281gmail-p1" style="margin:0px;padding:0px;border:0px;font-family:Monaco;font-stretch:normal;font-size:11px;line-height:normal"><span class="gmail-m_1620104289076429281gmail-s1" style="margin:0px;padding:0px;border:0px;color:rgb(126,80,79)">argsList</span>.addAll(Arrays.asList(<span class="gmail-m_1620104289076429281gmail-s2" style="margin:0px;padding:0px;border:0px;color:rgb(147,26,104)"><wbr>new</span> String[]{</p><p class="gmail-m_1620104289076429281gmail-p1" style="margin:0px;padding:0px;border:0px;font-family:Monaco;font-stretch:normal;font-size:11px;line-height:normal"><span class="gmail-m_1620104289076429281gmail-Apple-tab-span" style="margin:0px;padding:0px;border:0px;white-space:pre-wrap"> </span><span class="gmail-m_1620104289076429281gmail-Apple-tab-span" style="margin:0px;padding:0px;border:0px;white-space:pre-wrap"> </span><span class="gmail-m_1620104289076429281gmail-Apple-tab-span" style="margin:0px;padding:0px;border:0px;white-space:pre-wrap"> </span> <span class="gmail-m_1620104289076429281gmail-Apple-converted-space" style="margin:0px;padding:0px;border:0px"> </span><span class="gmail-m_1620104289076429281gmail-s3" style="margin:0px;padding:0px;border:0px;color:rgb(57,51,255)">"-w"</span>,</p><p class="gmail-m_1620104289076429281gmail-p1" style="margin:0px;padding:0px;border:0px;font-family:Monaco;font-stretch:normal;font-size:11px;line-height:normal"><span class="gmail-m_1620104289076429281gmail-Apple-tab-span" style="margin:0px;padding:0px;border:0px;white-space:pre-wrap"> </span><span class="gmail-m_1620104289076429281gmail-Apple-tab-span" style="margin:0px;padding:0px;border:0px;white-space:pre-wrap"> </span><span class="gmail-m_1620104289076429281gmail-Apple-tab-span" style="margin:0px;padding:0px;border:0px;white-space:pre-wrap"> </span> <span class="gmail-m_1620104289076429281gmail-Apple-converted-space" style="margin:0px;padding:0px;border:0px"> </span><span class="gmail-m_1620104289076429281gmail-s3" style="margin:0px;padding:0px;border:0px;color:rgb(57,51,255)">"-cp"</span>,</p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-family:Monaco;font-stretch:normal;font-size:11px;line-height:normal;color:rgb(78,144,114)"><span class="gmail-m_1620104289076429281gmail-s4" style="margin:0px;padding:0px;border:0px;color:rgb(0,0,0)"><span class="gmail-m_1620104289076429281gmail-Apple-tab-span" style="margin:0px;padding:0px;border:0px;white-space:pre-wrap"> </span><span class="gmail-m_1620104289076429281gmail-Apple-tab-span" style="margin:0px;padding:0px;border:0px;white-space:pre-wrap"> </span><span class="gmail-m_1620104289076429281gmail-Apple-tab-span" style="margin:0px;padding:0px;border:0px;white-space:pre-wrap"> </span> <span class="gmail-m_1620104289076429281gmail-Apple-converted-space" style="margin:0px;padding:0px;border:0px"> </span></span><span class="gmail-m_1620104289076429281gmail-s3" style="margin:0px;padding:0px;border:0px;color:rgb(57,51,255)">"D:\\lib\\study-class.jar"</span></p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-family:Monaco;font-stretch:normal;font-size:11px;line-height:normal;color:rgb(78,144,114)"><span class="gmail-m_1620104289076429281gmail-Apple-tab-span" style="margin:0px;padding:0px;border:0px;white-space:pre-wrap;font-size:11px;color:rgb(34,34,34)"> </span><span class="gmail-m_1620104289076429281gmail-Apple-tab-span" style="margin:0px;padding:0px;border:0px;white-space:pre-wrap;font-size:11px;color:rgb(34,34,34)"> </span><span class="gmail-m_1620104289076429281gmail-Apple-tab-span" style="margin:0px;padding:0px;border:0px;white-space:pre-wrap;font-size:11px;color:rgb(34,34,34)"> </span><span style="margin:0px;padding:0px;border:0px;font-size:11px;color:rgb(34,34,34)"> </span><span class="gmail-m_1620104289076429281gmail-Apple-converted-space" style="margin:0px;padding:0px;border:0px;font-size:11px;color:rgb(34,34,34)"> </span><span class="gmail-m_1620104289076429281gmail-s3" style="margin:0px;padding:0px;border:0px;color:rgb(57,51,255);font-size:11px">"-pp"</span><span style="margin:0px;padding:0px;border:0px;font-size:11px;color:rgb(34,34,34)">,</span><br></p><p class="gmail-m_1620104289076429281gmail-p3" style="margin:0px;padding:0px;border:0px;font-family:Monaco;font-stretch:normal;font-size:11px;line-height:normal;color:rgb(57,51,255)"><span class="gmail-m_1620104289076429281gmail-s4" style="margin:0px;padding:0px;border:0px;color:rgb(0,0,0)"><span class="gmail-m_1620104289076429281gmail-Apple-tab-span" style="margin:0px;padding:0px;border:0px;white-space:pre-wrap"> </span><span class="gmail-m_1620104289076429281gmail-Apple-tab-span" style="margin:0px;padding:0px;border:0px;white-space:pre-wrap"> </span><span class="gmail-m_1620104289076429281gmail-Apple-tab-span" style="margin:0px;padding:0px;border:0px;white-space:pre-wrap"> </span> <span class="gmail-m_1620104289076429281gmail-Apple-converted-space" style="margin:0px;padding:0px;border:0px"> </span></span>"-allow-phantom-refs"<span class="gmail-m_1620104289076429281gmail-s4" style="margin:0px;padding:0px;border:0px;color:rgb(0,0,0)">,</span></p><p class="gmail-m_1620104289076429281gmail-p3" style="margin:0px;padding:0px;border:0px;font-family:Monaco;font-stretch:normal;font-size:11px;line-height:normal;color:rgb(57,51,255)"><span class="gmail-m_1620104289076429281gmail-s4" style="margin:0px;padding:0px;border:0px;color:rgb(0,0,0)"><span class="gmail-m_1620104289076429281gmail-Apple-tab-span" style="margin:0px;padding:0px;border:0px;white-space:pre-wrap"> </span><span class="gmail-m_1620104289076429281gmail-Apple-tab-span" style="margin:0px;padding:0px;border:0px;white-space:pre-wrap"> </span><span class="gmail-m_1620104289076429281gmail-Apple-tab-span" style="margin:0px;padding:0px;border:0px;white-space:pre-wrap"> </span> <span class="gmail-m_1620104289076429281gmail-Apple-converted-space" style="margin:0px;padding:0px;border:0px"> </span></span>"-process-dir"<span class="gmail-m_1620104289076429281gmail-s4" style="margin:0px;padding:0px;border:0px;color:rgb(0,0,0)">,</span></p><p class="gmail-m_1620104289076429281gmail-p3" style="margin:0px;padding:0px;border:0px;font-family:Monaco;font-stretch:normal;font-size:11px;line-height:normal;color:rgb(57,51,255)"><span class="gmail-m_1620104289076429281gmail-s4" style="margin:0px;padding:0px;border:0px;color:rgb(0,0,0)"><span class="gmail-m_1620104289076429281gmail-Apple-tab-span" style="margin:0px;padding:0px;border:0px;white-space:pre-wrap"> </span><span class="gmail-m_1620104289076429281gmail-Apple-tab-span" style="margin:0px;padding:0px;border:0px;white-space:pre-wrap"> </span><span class="gmail-m_1620104289076429281gmail-Apple-tab-span" style="margin:0px;padding:0px;border:0px;white-space:pre-wrap"> </span> <span class="gmail-m_1620104289076429281gmail-Apple-converted-space" style="margin:0px;padding:0px;border:0px"> </span></span>"D:\\lib\\study-class.jar"<span class="gmail-m_1620104289076429281gmail-s4" style="margin:0px;padding:0px;border:0px;color:rgb(0,0,0)">,</span></p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-family:Monaco;font-stretch:normal;font-size:11px;line-height:normal;color:rgb(78,144,114)"><span class="gmail-m_1620104289076429281gmail-Apple-tab-span" style="margin:0px;padding:0px;border:0px;white-space:pre-wrap;font-size:11px;color:rgb(34,34,34)"> </span><span style="margin:0px;padding:0px;border:0px;font-size:11px;color:rgb(34,34,34)"> </span><span class="gmail-m_1620104289076429281gmail-Apple-converted-space" style="margin:0px;padding:0px;border:0px;font-size:11px;color:rgb(34,34,34)"> </span><span style="margin:0px;padding:0px;border:0px;font-size:11px;color:rgb(34,34,34)">}));</span></p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"><font face="Monaco" style="margin:0px;padding:0px;border:0px"><span style="margin:0px;padding:0px;border:0px;font-size:12px">argsList.add("-p"); argsList.add("cg"); argsList.add("all-reachable:true");</span></font></p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"><span style="margin:0px;padding:0px;border:0px;font-size:12px;font-family:Monaco">args = argsList.toArray(new String[0]);</span></p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"><font face="Monaco" style="margin:0px;padding:0px;border:0px"><span style="margin:0px;padding:0px;border:0px;font-size:12px">Options.v().parse(args);</span></font></p></div></div><span style="font-family:Monaco;margin:0px;padding:0px;border:0px;font-size:12px">SootClass c = Scene.v().forceResolve("com.company.StudyClass", SootClass.BODIES);</span><br style="font-family:Arial,Helvetica,sans-serif;font-size:13px"><span style="font-family:Monaco;margin:0px;padding:0px;border:0px;font-size:12px">c.setApplicationClass();</span><br style="font-family:Arial,Helvetica,sans-serif;font-size:13px"><span style="font-family:Monaco;margin:0px;padding:0px;border:0px;font-size:12px">Scene.v().loadNecessaryClasses();</span><br style="font-family:Arial,Helvetica,sans-serif;font-size:13px"><span style="font-family:Monaco;margin:0px;padding:0px;border:0px;font-size:12px">SootMethod method = c.getMethodByName("studyMethod");</span><br style="font-family:Arial,Helvetica,sans-serif;font-size:13px"><span style="font-family:Monaco;margin:0px;padding:0px;border:0px;font-size:12px">List entryPoints = new ArrayList<>();</span><br style="font-family:Arial,Helvetica,sans-serif;font-size:13px"><span style="font-family:Monaco;margin:0px;padding:0px;border:0px;font-size:12px">entryPoints.add(method);</span><br style="font-family:Arial,Helvetica,sans-serif;font-size:13px"><div class="gmail_default" style="font-family:Arial,Helvetica,sans-serif;margin:0px;padding:0px;border:0px;font-size:13px"><div style="margin:0px;padding:0px;border:0px"><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"><font face="Monaco" style="margin:0px;padding:0px;border:0px"><span style="margin:0px;padding:0px;border:0px;font-size:12px">Scene.v().setEntryPoints(entryPoints);</span></font></p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"><font face="Monaco" style="margin:0px;padding:0px;border:0px"><span style="margin:0px;padding:0px;border:0px;font-size:12px"><br></span></font></p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"><span style="font-size:12px;font-family:Monaco">The studied code snippets are like:</span><br></p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"><font face="Monaco" style="margin:0px;padding:0px;border:0px"><span style="margin:0px;padding:0px;border:0px;font-size:12px"><br></span></font></p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"><font face="Monaco" style="margin:0px;padding:0px;border:0px"><span style="margin:0px;padding:0px;border:0px;font-size:12px">In file<b> StudyClass.java</b> it contains the method <b>studyMethod </b>(which is the function i want to extract info from) </span></font></p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"><br></p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"><font face="Monaco" style="margin:0px;padding:0px;border:0px"><span style="margin:0px;padding:0px;border:0px;font-size:12px">In file <b>SomeService.java</b> it is like:</span></font></p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"><font face="Monaco" style="margin:0px;padding:0px;border:0px"><span style="margin:0px;padding:0px;border:0px;font-size:12px">public class <b>SomeService </b>extends <b>AbstractService</b><Service> {<br></span>...</font></p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"><font face="Monaco" style="margin:0px;padding:0px;border:0px"> private ReturnClass someMethod() {<br></font></p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"><font face="Monaco" style="margin:0px;padding:0px;border:0px"> ...</font></p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"><font face="Monaco" style="margin:0px;padding:0px;border:0px"> if (...) {</font></p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"><font face="Monaco" style="margin:0px;padding:0px;border:0px"> a = sc.studymethod(); <b>// sc is a field (instance of StudyClass) in SomeService, but not declared, should be a field extended from AbstractService</b></font></p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"><font face="Monaco" style="margin:0px;padding:0px;border:0px"> }</font></p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"><font face="Monaco" style="margin:0px;padding:0px;border:0px"> }</font></p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"><font face="Monaco" style="margin:0px;padding:0px;border:0px">}</font></p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"><font face="Monaco" style="margin:0px;padding:0px;border:0px"><span style="margin:0px;padding:0px;border:0px;font-size:12px"><br></span></font></p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"><font face="Monaco" style="margin:0px;padding:0px;border:0px"><span style="margin:0px;padding:0px;border:0px;font-size:12px"><br></span></font></p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"><b>Then I have used different ways to try to get the call graph, but return nothing from edgesInto. (But there will be outputs from edgesOut)</b></p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal">PackManager.v().getPack("wjtp").add(new Transform("wjtp.myTrans", new SceneTransformer() {</p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"><span style="margin:0px;padding:0px;border:0px;white-space:pre"> </span>@Override</p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"><span style="margin:0px;padding:0px;border:0px;white-space:pre"> </span>protected void internalTransform(String phase, Map<String, String> options) {<br></p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"> CHATransformer.v().transform(); // also tried SparkTransformer.v().transform() when spark enabled, not working, will throw exception</p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"> CallGraph cg = Scene.v().getCallGraph();</p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"> SootClass sootClass= Scene.v().getSootClass("com.company.<span style="margin:0px;padding:0px;border:0px;font-family:Monaco;font-size:12px">StudyClass</span>");</p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"> for(SootMethod sm : sootClass.getMethods()) {</p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"> if(sm.getName().contains("<span style="margin:0px;padding:0px;border:0px;font-family:Monaco;font-size:12px">studyMethod</span>")){</p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"> // this loop is in, just iterator has nothing to iterate, also, there is only one method in the class called studyMethod</p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"> Iterator<MethodOrMethodContext> iterator = new Sources(cg.edgesInto(sm)); // or directly use cg.edgesInto(sm) to iterate Edge, I tried that</p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"><span style="margin:0px;padding:0px;border:0px;white-space:pre"> </span> while (iterator.hasNext()) {</p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"><span style="margin:0px;padding:0px;border:0px;white-space:pre"> </span>System.out.println(iterator.next());</p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"><span style="margin:0px;padding:0px;border:0px;white-space:pre"> </span> }</p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"> }</p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"> }</p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"> }</p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal"><br></p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal">...</p><p class="gmail-m_1620104289076429281gmail-p2" style="margin:0px;padding:0px;border:0px;font-stretch:normal;line-height:normal">PackManager.v().runPacks();</p><div style="margin:0px;padding:0px;border:0px"><br></div></div></div><div class="gmail_default" style="margin:0px;padding:0px;border:0px"><div style="font-family:Arial,Helvetica,sans-serif;font-size:13px;margin:0px;padding:0px;border:0px">I have also tried to use JimpleBasedInterproceduralCFG icfg = new JimpleBasedInterproceduralCFG(); icfg.getCallersof(sm); to extract info, no luck as well. </div><div style="font-family:Arial,Helvetica,sans-serif;font-size:13px;margin:0px;padding:0px;border:0px"><br></div><div style="font-family:Arial,Helvetica,sans-serif;font-size:13px;margin:0px;padding:0px;border:0px">The other thing i noticed is that , when I tried to extract<b> CFG </b>from method <span style="margin:0px;padding:0px;border:0px;font-family:Monaco"><b>someMethod</b>, i can get the info saying <b>virtualinvoke </b>on studymethod. But when I was doing Call graph analysis, the edge will show up. Could it be possible that it is because the class <b>SomeService </b>extends an abstract class and make it notwork? (in addition, both SomeService.class and StudyClass.class are in the jar file). </span></div><div style="font-family:Arial,Helvetica,sans-serif;font-size:13px;margin:0px;padding:0px;border:0px"><span style="margin:0px;padding:0px;border:0px;font-family:Monaco"><br></span></div><div style="font-family:Arial,Helvetica,sans-serif;font-size:13px;margin:0px;padding:0px;border:0px"><span style="margin:0px;padding:0px;border:0px;font-family:Monaco">I have read a lot of threads from the mailing list about generation of Call graphs , still not be able to solve this problem.</span></div><div style="font-family:Arial,Helvetica,sans-serif;font-size:13px;margin:0px;padding:0px;border:0px"><span style="margin:0px;padding:0px;border:0px;font-family:Monaco">some related posts:</span></div><div style="margin:0px;padding:0px;border:0px"><span style="margin:0px;padding:0px;border:0px"><font face="Monaco"><a href="https://groups.google.com/forum/#!searchin/soot-list/call$20graph|sort:relevance/soot-list/hCvZrJOedAg/hACfq6iQ2tQJ">https://groups.google.com/forum/#!searchin/soot-list/call$20graph|sort:relevance/soot-list/hCvZrJOedAg/hACfq6iQ2tQJ</a></font><br></span></div><div style="margin:0px;padding:0px;border:0px"><span style="margin:0px;padding:0px;border:0px"><font face="Monaco"><a href="https://groups.google.com/forum/#!searchin/soot-list/issues$20using$20call$20graph$20api%7Csort:relevance/soot-list/NseVWw94NVc/rdzQ9PLcaWoJ">https://groups.google.com/forum/#!searchin/soot-list/issues$20using$20call$20graph$20api%7Csort:relevance/soot-list/NseVWw94NVc/rdzQ9PLcaWoJ</a><br></font></span></div><div style="font-family:Arial,Helvetica,sans-serif;font-size:13px;margin:0px;padding:0px;border:0px"><span style="margin:0px;padding:0px;border:0px;font-family:Monaco"><br></span></div><div style="font-family:Arial,Helvetica,sans-serif;font-size:13px;margin:0px;padding:0px;border:0px"><span style="margin:0px;padding:0px;border:0px;font-family:Monaco">Any help given will be highly appreciated. </span></div><div style="font-family:Arial,Helvetica,sans-serif;font-size:13px;margin:0px;padding:0px;border:0px"><br></div><div style="font-family:Arial,Helvetica,sans-serif;font-size:13px;margin:0px;padding:0px;border:0px">Best regards,</div><div style="font-family:Arial,Helvetica,sans-serif;font-size:13px;margin:0px;padding:0px;border:0px">Nemo</div><div style="font-family:Arial,Helvetica,sans-serif;font-size:13px"><br></div></div><div class="gmail-m_1620104289076429281gmail_signature" style="font-family:Arial,Helvetica,sans-serif;margin:0px;padding:0px;border:0px;font-size:13px"><div dir="ltr" style="margin:0px;padding:0px;border:0px"><div dir="ltr" style="margin:0px;padding:0px;border:0px"></div></div></div></div>
</div>