Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Rose, a local software engineer, was assigned to fix the code. She is known for her good design and coding skills. While she is usually

Rose, a local software engineer, was assigned to fix the code. She is known for her good design and coding skills. While she is usually very rational, she has decided that it is not worth fixing Jack Hackers code below. Shed rather rewrite it from scratch! Rose is right the code below doesnt completely work, nor is it particularly well written or efficient. For Part 1 of this assignment, identify any 10 problems with this code that make it bad code.

//**~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~

// File: cnnCrawler.java

//

// This code looks at the CNN website and follows some links to get info on articles that I want more

// info on.

// All output is written in the working directory to: cnnCrawlerOutput.txt

//**~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~

import gnu.regexp.*;

import java.net.*;

import java.io.*;

public class cnnCrawler{

public static void main(String[] args)

{

StringBuffer basePage = new StringBuffer();

// Connect to CNN and get the document

basePage = getBasePageContents("http://www.cnn.com");

// Look at the area of interest (The "MORE FROM CNN" section)

basePage = initialIsolateBasePageContents(basePage);

// Pull all of the URLs out

basePage = getInfo(basePage, " ]*|/b>]*");

basePage = getInfo(basePage, "\"/[^(\")]*");

basePage = getInfo(basePage,"\"[^&]*");

// Go to the URLs and pull out the information of interest and

// write to file.

goToURLs(basePage);

}

//**~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~

// Method: getBasePageContents

//

// This method opens a connection to the webpage we are interested in and stores

// all of the text on the page

//**~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~

public static StringBuffer getBasePageContents(String myURL){

try{

// Set base document to CNN, open connection,

// and copy the source text into a buffer

URL cnnBaseDoc = new URL(myURL);

cnnBaseDoc.openConnection();

BufferedReader cnnBaseBuffer = new BufferedReader(

new InputStreamReader(

cnnBaseDoc.openStream()));

String cnnBaseInputLine;

StringBuffer tempDocument = new StringBuffer();

while ((cnnBaseInputLine = cnnBaseBuffer.readLine()) != null){

tempDocument.append(cnnBaseInputLine);

}

cnnBaseBuffer.close();

return(tempDocument);

}

catch(MalformedURLException e) {

System.out.println("Unable to create URL object");

return(null);

}

catch(IOException e){

System.out.println("Unable to open URL");

return(null);

}

}

//**~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~

// Method: initialIsolateBasePageContents

//

// This method isolates us to store only the section we are interest in --

// the "MORE FROM CNN" section

//

//**~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~

public static StringBuffer initialIsolateBasePageContents(StringBuffer basePage){

try{

RE document = new RE(basePage);

// Define the left and right isolators

String sLeft = new String("MORE FROM CNN[//w//W]*");

RE leftCntxt = new RE(sLeft);

RE rightCntxt= new RE(">SPORTS");

StringBuffer sLIsolator = new StringBuffer("");

int iLIsolatorIndex = 0;

RE regLIsolator = new RE(leftCntxt);

REMatch ctxtLMatch = regLIsolator.getMatch(basePage);

sLIsolator.append(ctxtLMatch.toString());

iLIsolatorIndex = ctxtLMatch.getStartIndex();

// Find the Right Isolator

StringBuffer sRIsolator = new StringBuffer();

RE regRIsolator = new RE(rightCntxt);

int iRIsolatorIndex = 0;

REMatch ctxtRMatch = regRIsolator.getMatch(basePage);

sRIsolator.append(ctxtRMatch.toString());

iRIsolatorIndex = ctxtRMatch.getStartIndex();

basePage.delete(iRIsolatorIndex, basePage.length());

basePage.delete(0, iLIsolatorIndex);

return(basePage);

}

catch(REException e){

System.out.println("RE Exception");

return(null);

}

}

//**~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~

// Method: getInfo

//

// This method applies the specified regular expression to the string passed in

//**~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~

public static StringBuffer getInfo(StringBuffer textToSearch, String regExp){

try{

StringBuffer sIsolated = new StringBuffer("");

int iLIsolatorIndex = 0;

String sLeft = new String(regExp);

RE leftCntxt = new RE(sLeft);

RE regLIsolator = new RE(leftCntxt);

REMatchEnumeration ctxtLMatch = regLIsolator.getMatchEnumeration(textToSearch);

while (ctxtLMatch.hasMoreMatches()){

sIsolated.append(ctxtLMatch.nextMatch().toString());

sIsolated.append(" ");

}

return(sIsolated);

}

catch(REException e){

System.out.println("RE Exception");

return(null);

}

}

public static void goToURLs(StringBuffer textToSearch)

{

try{

StringBuffer interestingDoc = new StringBuffer("");

StringBuffer sInfoForFile = new StringBuffer("");

int numPage=0;

FileOutputStream fCnnOut;

PrintStream pCnnOut;

String sLeft = new String("/[^\"]*");

RE leftCntxt = new RE(sLeft);

String sIsolated = new String();

int iLIsolatorIndex = 0;

RE regLIsolator = new RE(leftCntxt);

REMatchEnumeration ctxtLMatch = regLIsolator.getMatchEnumeration(textToSearch);

fCnnOut = new FileOutputStream("cnnCrawlerOutput.txt");

pCnnOut = new PrintStream(fCnnOut);

while (ctxtLMatch.hasMoreMatches())

{

numPage++;

sIsolated = "http://www.cnn.com";

sIsolated += (ctxtLMatch.nextMatch().toString());

interestingDoc = connectToURLs(sIsolated);

sInfoForFile = getDocInfo(interestingDoc, sIsolated, numPage);

pCnnOut.println (sInfoForFile);

}

pCnnOut.close();

System.out.println("You may view the output in file: cnnCrawlerOutput.txt.");

}

catch(REException e){

System.out.println("RE Exception");

}

catch (Exception e)

{

System.out.println ("Error writing file.");

}

}

//**~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~

// Method: connectToURLs

// This method opens a URL and returns the text of the page

//**~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~

public static StringBuffer connectToURLs(String urlText){

try{

URL cnnBaseDoc = new URL(urlText);

cnnBaseDoc.openConnection();

BufferedReader cnnBaseBuffer = new BufferedReader(

new InputStreamReader(

cnnBaseDoc.openStream()));

String cnnBaseInputLine;

StringBuffer tempDocument = new StringBuffer();

while ((cnnBaseInputLine = cnnBaseBuffer.readLine()) != null){

tempDocument.append(cnnBaseInputLine);

}

cnnBaseBuffer.close();

return(tempDocument);

}

catch(MalformedURLException e) {

System.out.println("Unable to create URL object");

return(null);

}

catch(IOException e){

System.out.println("Unable to open URL");

return(null);

}

}

//**~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~

// Method: getDocInfo

//

// This method returns the interesting information that we were asked to parse out

// including: Date, Place, Headline, URL, and First paragraph.

//**~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~*~

public static StringBuffer getDocInfo(StringBuffer doc, String URL, int ID){

StringBuffer importantInfoToReturn = new StringBuffer("");

StringBuffer Headline = new StringBuffer("");

StringBuffer Date = new StringBuffer("");

StringBuffer Place = new StringBuffer("");

StringBuffer FirstParagraph = new StringBuffer("");

URL = URL.substring(0, (URL.length()-1));

Date.append(getInfo(doc, "name=\"DATE\" content=\"[^>]*"));

if(Date.length() > 0){

Date.delete(0,21);

Date.delete((Date.length()-1), Date.length());

}

else{

Date.append("No date Reported.");

}

Place.append(getInfo(doc, "

[^(

)]*|

[^-]*"));

if(Place.length() > 0){

Place.delete(0,6);

}

else{

Place.append("No location Reported.");

}

Headline.append(getInfo(doc, "CNN.com - [^-]*"));</p> <p>if(Headline.length() > 0){</p> <p>Headline.delete(0,17);</p> <p>Headline.delete((Headline.length()-1), Headline.length());</p> <p>}</p> <p>else{</p> <p>Headline.append("No headline Reported.");</p> <p>}</p> <p>FirstParagraph.append(getInfo(doc, "DESCRIPTION\" content=[^>]*"));</p> <p>if(FirstParagraph.length() > 0){</p> <p>FirstParagraph.delete(0, 22);</p> <p>FirstParagraph.delete(FirstParagraph.length()-1, FirstParagraph.length());</p> <p>}</p> <p>importantInfoToReturn.append(" ");</p> <p>importantInfoToReturn.append((ID + " | "));</p> <p>importantInfoToReturn.append((Headline + " | "));</p> <p>importantInfoToReturn.append((URL + " | "));</p> <p>importantInfoToReturn.append((Date + " | "));</p> <p>importantInfoToReturn.append((Place + " | "));</p> <p>importantInfoToReturn.append((FirstParagraph));</p> <p>return(importantInfoToReturn);</p> <p>}</p> <p>}</p> </div> </section> <section class="answerHolder"> <div class="answerHolderHeader"> <div class="answer-heading"> <h2>Step by Step Solution</h2> </div> <div class="answerReviews"> <div class="starReview"> <div class="starIcon"> </div> <div class="starText"> </div> </div> </div> </div> <div class="answerSteps"> <p>There are <span>3</span> Steps involved in it</p> <div class="step"> <h3>Step: 1</h3> <img src="https://dsd5zvtm8ll6.cloudfront.net/includes/images/document_product_info/blur-text-image.webp" width="759" height="271" alt="blur-text-image" loading="lazy" decoding="async" fetchpriority="low"> <div class="step1Popup"> <h3>Get Instant Access to Expert-Tailored Solutions</h3> <p>See step-by-step solutions with expert insights and AI powered tools for academic success</p> <button class="view_solution_btn step1PopupButton">View Solution</button> </div> </div> <div class="step"> <h3 class="accordion">Step: 2</h3> <div class="panel"> <img src="https://dsd5zvtm8ll6.cloudfront.net/includes/images/document_product_info/blur-subtext-image.webp" width="975" height="120" alt="blur-text-image" loading="lazy" decoding="async" fetchpriority="low"> <button class="view_solution_btn stepPopupButton">Sign Up to view</button> </div> </div> <div class="step"> <h3 class="accordion">Step: 3</h3> <div class="panel"> <img src="https://dsd5zvtm8ll6.cloudfront.net/includes/images/document_product_info/blur-subtext-image.webp" width="975" height="120" alt="blur-text-image" loading="lazy" decoding="async" fetchpriority="low"> <button class="view_solution_btn stepPopupButton">Sign Up to view</button> </div> </div> </div> </section> </div> <div class="expertRight"> <section class="AIRedirect"> <div class="AIHolder"> <h2>Ace Your Homework with AI</h2> <p>Get the answers you need in no time with our AI-driven, step-by-step assistance</p> <a class="AILink" href="/ask_ai">Get Started</a> </div> </section> <section class="relatedBook"> <div class="bookHolder" > <div class="relatedBookHeading" > <h2>Recommended Textbook for</h2> <object class="freeTagImage" type="image/svg+xml" data="https://dsd5zvtm8ll6.cloudfront.net/includes/images/rewamp/document_product_info/free.svg" name="free-book-icon"></object> </div> <div class="bookMainInfo" > <div class="bookImage" > <a href="/textbooks/data-analytics-and-quality-management-fundamental-tools-1st-edition-979-8862833232-198462"> <img src="https://dsd5zvtm8ll6.cloudfront.net/si.question.images/book_images/2024/01/65a237236ba66_76365a2372362863.jpg" width="100" height="131" alt="Data Analytics And Quality Management Fundamental Tools" loading="lazy"> </a> </div> <div class="bookInfo" > <h3 class="bookTitle"> <a href="/textbooks/data-analytics-and-quality-management-fundamental-tools-1st-edition-979-8862833232-198462"> Data Analytics And Quality Management Fundamental Tools </a> </h3> <div class="bookMetaInfo" > <p class="bookAuthor"> <b>Authors:</b> <span>Joseph Nguyen</span> </p> <p class="bookEdition"> 1st Edition </p> <p class="bookEdition"> B0CNGG3Y2W, 979-8862833232 </p> </div></div></div> <a href="/textbooks/computer-science-java-programming-2732" class="viewMoreBooks">More Books</a> </div> </section> </div> </div> <section class="relatedQuestion"> <div class="relatedQuestionHolder"> <h4>Students also viewed these Databases questions</h4> <div class="relatedQuestionSliderHolder"> <div class="relatedQuestionCart "> <div class="relatedQuestionCartHeader"> <h3>Question</h3> <div class="relatedStarRating"> <span class="star active">★</span><span class="star active">★</span><span class="star active">★</span><span class="star">★</span><span class="star">★</span> </div> </div> <a class="relatedQuestionText" href="/choose-number-u-from-the-interval-0-1-with" > Choose a number U from the interval [0, 1] with uniform distribution. Find the cumulative distribution and density for the random variables (a) Y = 1/ (U + 1). (b) Y = log (U + 1). </a> <div class="relatedQuestionCartFooter"> <div class="relatedHistory"> <p> Answered: <span>1 week ago</span> </p> </div> </div> </div> <div class="relatedQuestionCart "> <div class="relatedQuestionCartHeader"> <h3>Question</h3> <div class="relatedStarRating"> <span class="star active">★</span><span class="star active">★</span><span class="star active">★</span><span class="star">★</span><span class="star">★</span> </div> </div> <a class="relatedQuestionText" href="/study-help/operations-management/a-pharmacist-has-been-monitoring-sales-of-a-certain-overthe-2074873" > A pharmacist has been monitoring sales of a certain over-the counter (i.e., no prescription is needed) pain reliever. Daily sales during tire last 15 days were: a. If you learn that on some days the... </a> <div class="relatedQuestionCartFooter"> <div class="relatedHistory"> <p> Answered: <span>1 week ago</span> </p> </div> </div> </div> <div class="relatedQuestionCart "> <div class="relatedQuestionCartHeader"> <h3>Question</h3> <div class="relatedStarRating"> <span class="star active">★</span><span class="star active">★</span><span class="star active">★</span><span class="star">★</span><span class="star">★</span> </div> </div> <a class="relatedQuestionText" href="/study-help/forensic-and-legal-psychology/why-do-we-befriend-or-fall-in-love-with-some-2101898" > Why do we befriend or fall in love with some people but not others? </a> <div class="relatedQuestionCartFooter"> <div class="relatedHistory"> <p> Answered: <span>1 week ago</span> </p> </div> </div> </div> <div class="relatedQuestionCart "> <div class="relatedQuestionCartHeader"> <h3>Question</h3> <div class="relatedStarRating"> <span class="star active">★</span><span class="star active">★</span><span class="star active">★</span><span class="star">★</span><span class="star">★</span> </div> </div> <a class="relatedQuestionText" href="/the-following-are-several-of-graf-corporations-accounts-at-the" > The following are several of Graf Corporations accounts at the end of 2016: Account Credit Balance Common Stock, $10 par............. $ 47,100 Bonds Payable (due 2017)............ 126,000 Additional... </a> <div class="relatedQuestionCartFooter"> <div class="relatedHistory"> <p> Answered: <span>1 week ago</span> </p> </div> </div> </div> <div class="relatedQuestionCart "> <div class="relatedQuestionCartHeader"> <h3>Question</h3> <div class="relatedStarRating"> <span class="star active">★</span><span class="star active">★</span><span class="star active">★</span><span class="star">★</span><span class="star">★</span> </div> </div> <a class="relatedQuestionText" href="/study-help/questions/rose-a-local-software-engineer-was-assigned-to-fix-the-12668429" > Rose, a local software engineer, was assigned to fix the code. She is known for her good design and coding skills. While she is usually very rational, she has decided that it is not worth fixing Jack... </a> <div class="relatedQuestionCartFooter"> <div class="relatedHistory"> <p> Answered: <span>1 week ago</span> </p> </div> </div> </div> <div class="relatedQuestionCart "> <div class="relatedQuestionCartHeader"> <h3>Question</h3> <div class="relatedStarRating"> <span class="star active">★</span><span class="star active">★</span><span class="star active">★</span><span class="star">★</span><span class="star">★</span> </div> </div> <a class="relatedQuestionText" href="/study-help/questions/1-xyz-chocolate-company-has-15000000-of-outstanding-bonds-11846521" > 1. XYZ Chocolate Company has $ 15,000,000 of outstanding bonds with an annual interest rate of 4%), along with 1,200,000 shares of 3.5% preferred stock and 40,000,000 common stocks outstanding.... </a> <div class="relatedQuestionCartFooter"> <div class="relatedHistory"> <p> Answered: <span>1 week ago</span> </p> </div> </div> </div> <div class="relatedQuestionCart "> <div class="relatedQuestionCartHeader"> <h3>Question</h3> <div class="relatedStarRating"> <span class="star active">★</span><span class="star active">★</span><span class="star active">★</span><span class="star active half">★</span><span class="star">★</span> </div> </div> <a class="relatedQuestionText" href="/study-help/particle-physics/sphere-a-carries-60-mathrmnc-of-charge-it-is-placed-1373983" > Sphere A carries \(6.0 \mathrm{nC}\) of charge. It is placed \(100 \mathrm{~mm}\) from sphere B, which carries \(3.0 \mathrm{nC}\) of charge. Assume the spheres are much smaller than their separation... </a> <div class="relatedQuestionCartFooter"> <div class="relatedHistory"> <p> Answered: <span>1 week ago</span> </p> </div> </div> </div> <div class="relatedQuestionCart "> <div class="relatedQuestionCartHeader"> <h3>Question</h3> <div class="relatedStarRating"> <span class="star active">★</span><span class="star active">★</span><span class="star active">★</span><span class="star">★</span><span class="star">★</span> </div> </div> <a class="relatedQuestionText" href="/study-help/chemical-reaction-engineering/the-reversible-catalytic-reaction-proceeds-with-decaying-catalyst-in-a-1133858" > The reversible catalytic reaction proceeds with decaying catalyst in a batch reactor (batch-solids, batchfluid). What can you say of the kinetics of reaction and deactivation from the following data:... </a> <div class="relatedQuestionCartFooter"> <div class="relatedHistory"> <p> Answered: <span>1 week ago</span> </p> </div> </div> </div> <div class="relatedQuestionCart "> <div class="relatedQuestionCartHeader"> <h3>Question</h3> <div class="relatedStarRating"> <span class="star active">★</span><span class="star active">★</span><span class="star active">★</span><span class="star">★</span><span class="star">★</span> </div> </div> <a class="relatedQuestionText" href="/study-help/introduction-to-artificial-intelligence/design-a-suitable-representation-and-draw-the-complete-search-tree-1407452" > Design a suitable representation and draw the complete search tree for the following problem: A farmer is on one side of a river and wishes to cross the river with a wolf, a chicken, and a bag of... </a> <div class="relatedQuestionCartFooter"> <div class="relatedHistory"> <p> Answered: <span>1 week ago</span> </p> </div> </div> </div> <div class="relatedQuestionCart "> <div class="relatedQuestionCartHeader"> <h3>Question</h3> <div class="relatedStarRating"> <span class="star active">★</span><span class="star active">★</span><span class="star active">★</span><span class="star">★</span><span class="star">★</span> </div> </div> <a class="relatedQuestionText" href="/study-help/financial-and-managerial-accounting/west-highland-clothiers-reported-the-following-items-at-august-31-1430426" > West Highland Clothiers reported the following items at August 31, 2012 (amounts in thousands, with last years2011amounts also given as needed): Requirement 1. Compute West Highlands (a) acid-test... </a> <div class="relatedQuestionCartFooter"> <div class="relatedHistory"> <p> Answered: <span>1 week ago</span> </p> </div> </div> </div> <div class="relatedQuestionCart "> <div class="relatedQuestionCartHeader"> <h3>Question</h3> <div class="relatedStarRating"> <span class="star active">★</span><span class="star active">★</span><span class="star active">★</span><span class="star">★</span><span class="star">★</span> </div> </div> <a class="relatedQuestionText" href="/study-help/a-first-course-in-differential-equations/a-show-that-the-system-of-differential-equations-for-the-848426" > (a) Show that the system of differential equations for the charge on the capacitor q(t) and the current i 3 (t) in the electrical network shown in Figure 7.6.9 is (b) Find the charge on the capacitor... </a> <div class="relatedQuestionCartFooter"> <div class="relatedHistory"> <p> Answered: <span>1 week ago</span> </p> </div> </div> </div> <div class="relatedQuestionCart "> <div class="relatedQuestionCartHeader"> <h3>Question</h3> <div class="relatedStarRating"> <span class="star active">★</span><span class="star active">★</span><span class="star active">★</span><span class="star">★</span><span class="star">★</span> </div> </div> <a class="relatedQuestionText" href="/study-help/intercultural-communication/approaches-to-managing-organizations-2116200" > Approaches to Managing Organizations </a> <div class="relatedQuestionCartFooter"> <div class="relatedHistory"> <p> Answered: <span>1 week ago</span> </p> </div> </div> </div> <div class="relatedQuestionCart "> <div class="relatedQuestionCartHeader"> <h3>Question</h3> <div class="relatedStarRating"> <span class="star active">★</span><span class="star active">★</span><span class="star active">★</span><span class="star">★</span><span class="star">★</span> </div> </div> <a class="relatedQuestionText" href="/study-help/intercultural-communication/do-members-demonstrate-respect-for-one-anotherfor-example-by-keeping-2116199" > Do members demonstrate respect for one anotherfor example, by keeping disagreements focused on the issues or positions at hand rather than on personal character? </a> <div class="relatedQuestionCartFooter"> <div class="relatedHistory"> <p> Answered: <span>1 week ago</span> </p> </div> </div> </div> <div class="relatedQuestionCart "> <div class="relatedQuestionCartHeader"> <h3>Question</h3> <div class="relatedStarRating"> <span class="star active">★</span><span class="star active">★</span><span class="star active">★</span><span class="star">★</span><span class="star">★</span> </div> </div> <a class="relatedQuestionText" href="/study-help/intercultural-communication/communicating-organizational-culture-2116201" > Communicating Organizational Culture </a> <div class="relatedQuestionCartFooter"> <div class="relatedHistory"> <p> Answered: <span>1 week ago</span> </p> </div> </div> </div> </div> </div> </section> <hr class="expert-separator"> <div class="next-previous-button"> <div class="navigationButtons"> <a class="previousQuestionButton" href="/study-help/questions/topic-instance-method-and-designing-class-code-language-java-design-12668428">Previous Question</a> <a class="nextQuestionButton" href="/study-help/questions/which-two-actions-are-performed-by-mail-flow-policies-on-12668430">Next Question</a> </div> </div> </div> <div class="promo items-center justify-center hidden" style="margin-left:-15px;"> <div class="app_promo"> <div class="app_promo_headline"> <img class="app_promo_icon" alt="Mobile App Logo" width="40" height="40" loading="lazy" src="https://dsd5zvtm8ll6.cloudfront.net/includes/images/mobile/finalLogo.png"> <p class="app_promo_title font-sans items-center">View Answer in SolutionInn App</p> </div> <button class="app_promo_action redirection question_open_url='q_id=12668429&q_type=2'"> Download on the App Store </button> <button class="btn btn-default app_promo_dismiss"> Continue with the mobile website </button> </div> </div> </main> </div> <div class="blank-portion"></div> <footer> <div class="container footerHolder"> <div class="footerLinksFlex"> <div class="footerLinksCol col-md-3 col-lg-3 col-sm-6 col-6"> <p>Services</p> <ul> <li><a href="/site-map">Sitemap</a></li> <li><a href="/fun/">Fun</a></li> <li><a href="/study-help/definitions">Definitions</a></li> <li><a href="/tutors/become-a-tutor">Become Tutor</a></li> <li><a href="/study-help/categories">Study Help Categories</a></li> <li><a href="/study-help/latest-questions">Recent Questions</a></li> <li><a href="/study-help/questions-and-answers">Expert Questions</a></li> </ul> </div> <div class="footerLinksCol col-md-3 col-lg-3 col-sm-6 col-6"> <p>Company Info</p> <ul> <li><a href="/security">Security</a></li> <li><a href="/copyrights">Copyrights</a></li> <li><a href="/privacy">Privacy Policy</a></li> <li><a href="/conditions">Terms & Conditions</a></li> <li><a href="/solutioninn-fee">SolutionInn Fee</a></li> <li><a href="/scholarships">Scholarship</a></li> </ul> </div> <div class="footerLinksCol col-md-3 col-lg-3 col-sm-6 col-6"> <p>Get In Touch</p> <ul> <li><a href="/about-us">About Us</a></li> <li><a href="/support">Contact Us</a></li> <li><a href="/career">Career</a></li> <li><a href="/jobs">Jobs</a></li> <li><a href="/support">FAQ</a></li> <li><a href="/campus-ambassador-program">Campus Ambassador</a></li> </ul> </div> <div class="footerLinksCol col-md-3 col-lg-3 col-sm-6 col-12"> <p>Secure Payment</p> <div class="footerAppDownloadRow"> <div class="downloadLinkHolder"> <img src="https://dsd5zvtm8ll6.cloudfront.net/includes/images/rewamp/common/footer/secure_payment_method.png" class="img-fluid mb-3" width="243" height="28" alt="payment-verified-icon" loading="lazy"> </div> </div> <p>Download Our App</p> <div class="footerAppDownloadRow"> <div class="downloadLinkHolder mobileAppDownload col-md-6 col-lg-6 col-sm-6 col-6 redirection" data-id="1"> <img style="cursor:pointer;" src="https://dsd5zvtm8ll6.cloudfront.net/includes/images/rewamp/home_page/google-play-svg.svg" alt="SolutionInn - Study Help App for Android" width="116" height="40" class="img-fluid mb-3 " loading="lazy"> </div> <div class="downloadLinkHolder mobileAppDownload col-md-6 col-lg-6 col-sm-6 col-6 redirection" data-id="2"> <img style="cursor:pointer;" src="https://dsd5zvtm8ll6.cloudfront.net/includes/images/rewamp/home_page/apple-store-download-icon.svg" alt="SolutionInn - Study Help App for iOS" width="116" height="40" class="img-fluid mb-3" loading="lazy"> </div> </div> </div> </div> </div> <div class="footer-bottom"> <p>© 2024 SolutionInn. All Rights Reserved</p> </div></footer> <script> window.addEventListener("load",function(){jQuery(document).ready(function(t){t.ajax({type:"POST",url:"/",data:{trackUserActivity:!0,reqUri:document.URL,referer:document.referrer},success:function(t){}})})},!1),window.addEventListener("load",function(){jQuery(document).ready(function(t){t.ajax({type:"POST",url:"/",data:{insertCrawler:!0,reqUri:document.URL,parseTime:"0.056",queryTime:"0.01654768548584",queryCount:"30"},success:function(t){}})})},!1),window.addEventListener("load",function(){jQuery(document).ready(function(){function t(t="",n=!1){var i="itms-apps://itunes.apple.com/app/id6462455425",e="openApp://action?"+t;isAndroid()?(setTimeout(function(){return window.location="market://details?id=com.solutioninn.studyhelp",!1},25),window.location=e):isIOS()?(setTimeout(function(){return window.location=i,!1},25),window.location=e):(i="https://apps.apple.com/in/app/id6462455425",n&&(i="https://play.google.com/store/apps/details?id=com.solutioninn.studyhelp"),window.open("about:blank","_blank").location.href=i)}jQuery("#appModal").modal("show"),jQuery(".download-app-btn").click(function(){t(jQuery(this).attr("question_open_url"))}),jQuery(".redirection").click(function(){var n=jQuery(this).attr("question_open_url"),i=jQuery(this).attr("data-id");void 0!=n?1==i?t(n,!0):t(n,!1):1==i?t("",!0):t("",!1)}),jQuery(".app-notification-close").click(function(){jQuery(".app-notification-section").css("visibility","hidden");var t=new FormData;t.append("hide_notification",!0),jQuery.ajax({type:"POST",url:"/",data:t,cache:!1,contentType:!1,processData:!1,beforeSend:function(){},success:function(t){location.reload()}})})})},!1); </script> </body> </html>