
655 F.3d 647 (2011)
UNITED STATES of America, Plaintiff-Appellee,
v.
Randall Joseph KNOPE, Defendant-Appellant.
No. 10-2824.
United States Court of Appeals, Seventh Circuit.
Argued April 15, 2011.
Decided August 22, 2011.
*649 Jonathan H. Koenig (argued), Attorney, Office of the United States Attorney, Milwaukee, WI, for Plaintiff-Appellee.
Raymond M. Dall'Osto, Jason D. Luczak (argued), Attorneys, Gimbel, Reilly, Guerin & Brown, Milwaukee, WI, for Defendant-Appellant.
Before POSNER and MANION, Circuit Judges, and LEFKOW, District Judge.[*]
*650 LEFKOW, District Judge.
Randall Joseph Knope was convicted of possession of child pornography and attempting to persuade or entice a minor to engage in a sexual act. Knope argues that the trial court committed reversible error by (1) denying his motion to suppress statements to the police and evidence seized from his home, (2) admitting evidence regarding his prior online chats with individuals who purported to be minors, and (3) denying certain requested jury instructions. We affirm Knope's conviction.

I. Facts
On June 28, 2008, Knope logged on to the adult Yahoo! Romance, Wisconsin chat room using the screen name "ilovethecock83." He sent a private message to "mariachickaletta." Milwaukee Police Department Detective Doreen DuCharme was using that screen name and the alias "Maria." Knope wrote, "[W]anna show a guy what its like to take it up the ass? ill get a strap-on to use." Maria responded, "Oh, my God, for real?" and Knope replied, "Is that a yes?" Maria wrote back, "Yeah, that's cool with me."
Knope then asked Maria for her "ASL," or age, sex, and location. Maria stated that she was fifteen years old, female, and lived in Milwaukee. Knope responded, "Really?" and asked her to send a photograph. Maria shared two photos of a police officer taken at the age of fourteen or fifteen. Knope then wrote, "When and where can you meet?" Maria responded that she could meet after 2:00 p.m. "[be]cause I'm baby-sitting for my sisters right now." Knope asked Maria where she lived and then stated, "Once we hook up I can get us a room somewhere if you're cool with that." Maria also asked Knope how old he was. When Knope stated that he was forty-one,[1] she wrote, "I can't walk in with you.... There's no way me and you can walk in anywhere together and act like we're chilling then." Knope told Maria, "We can walk in separate."
Knope then asked Maria several questions about her clothing size so he could determine what size strap-on to bring for her. Maria asked, "[D]oes it matter if I'm not like that big or anything? I mean, I'm kind of a skinny but I'm not a wimp." Knope responded, "Think you can wear a strap-on and fuck me like you're a girl  a guy or girl getting revenge on a guy for sticking his dick in her ass?" Maria responded, "OMG, yes, I want to big time." Knope then asked Maria whether she had previously had anal sex and whether she enjoyed watching pornography.
Knope also asked Maria if she had a web camera that she could use. Maria wrote, "No, just a mic.... And I got a phone. But I don't got a cam. `Cause my mom thinks my sis would use it. And she can't chat." Knope wrote, "May I hear your voice PLS," and asked for Maria's phone number "to call you when I'm near you later." DuCharme then spoke to Knope using a microphone, adopting the voice and mannerisms of a teenage girl.[2] Knope provided written responses to Maria's questions. He wrote that he was six feet tall, about 275 pounds, and had "more of a muscular build." Maria asked, "[A]ll right, so is this even going to work then?" Knope responded, "Yeah."
Knope and Maria planned to meet that afternoon at a Walgreens store on the south side of Milwaukee. During the voice chat, Knope asked Maria how long she could be away from home. She stated that she had to be home by 11:00 p.m., which is *651 the City of Milwaukee curfew. Towards the end of the chat, Knope asked Maria, "You excited?" Maria responded, "Yeah, this is gonna rock. Way random. LOL." Knope wrote, "Random can be a lot of fun." He then asked her to describe what she would be wearing so he could find her easily. Before Knope ended the chat, he wrote, "If I ask you to prove you aint the cops can you?" Maria responded, "Yeah."
Later that day, Knope called Maria on her cell phone and told her that he would arrive at the Walgreens in about half an hour or forty-five minutes. He called twice more while on his way. In the meantime, DuCharme went to the Walgreens parking lot and waited for Knope in an unmarked police car with Detective Richard McQuown. When Knope arrived, Detectives DuCharme and McQuown observed him park and walk into the store. The officers arrested him while he was walking back to his car. They recovered a strap-on dildo from Knope's car as well as a cell phone that had DuCharme's number saved as "Maria Chick." It was later determined that Knope had purchased condoms at the Walgreens.
Knope was indicted for violations of 18 U.S.C. §§ 2252(a)(4)(B) and 2422(b). A jury found Knope guilty of both counts after a week-long trial.

II. Analysis

A. Motion to Suppress Statements and Evidence
Knope argues that the district court erred in admitting (1) post-arrest statements he made to the detectives and (2) computer equipment seized from his residence. A magistrate judge heard Knope's motion and issued a report and recommendation that the motion be denied, which the district court adopted in a separate written opinion. Because the district court adopted the report and recommendation, we review the magistrate judge's factual findings for clear error and her legal conclusions de novo. United States v. Hendrix, 509 F.3d 362, 373 (7th Cir.2007). We give deference to the credibility determinations of the court that had the opportunity to hear the testimony and observe the demeanor of the witnesses. Id.

1. Post-Arrest Statements
The evidence presented at the suppression hearing showed that Knope began to talk immediately after the officers approached him in the Walgreens parking lot. He stated, "I'm so stupid. Curiosity killed the cat." Knope was then arrested and placed in the back seat of the unmarked police car.[3] DuCharme sat in the front seat, which was not separated from the back seat by a cage. Knope continued to talk to DuCharme while she set up the recording equipment for their interview. Knope stated he was upset and angry with himself, and DuCharme initially told him, "All right. I can't talk to you about it until after my partner gets here." Knope responded, "I know, I know, I'm just I'm ready to cry seriously. I can't believe I even did it. I just ... and there's no way. I'm going to get charged with it and that's all there is to it.... I can't believe I did this. I can't." DuCharme explained that she and McQuown worked for the Milwaukee Police Department and that they appreciated Knope's cooperation with the arrest. Knope continued, "When you know you're stupid, you know you're stupid ... you screwed up. You should just realize you did something you should have *652 slapped yourself in the head for. Somebody else shouldn't have to."
After McQuown joined her in the front seat of the car, DuCharme told Knope that he had been arrested for using a computer to facilitate a child sex crime. She said that she would need to obtain preliminary information and then asked Knope to state his first and last name, age, date of birth, address, and phone number. Knope stated that he was 31 years old and that he lived at "109 Randolph" in Burlington, Wisconsin. He also expressed concern about being detained at the police station and repeatedly asked whether there was any way to make the case "go away." After DuCharme obtained Knope's information, she notified him of his Miranda rights. The interview continued after Knope stated that he was willing to answer questions.
Knope argues that the statements he made while he was seated in the back of the unmarked police car were admitted in error because they were the result of a custodial interrogation. Under Miranda v. Arizona, 384 U.S. 436, 444, 86 S.Ct. 1602, 16 L.Ed.2d 694 (1966) and Rhode Island v. Innis, 446 U.S. 291, 100 S.Ct. 1682, 64 L.Ed.2d 297 (1980), the test for whether Knope was subject to interrogation is "whether a reasonable objective observer would have believed that the ... question[] claimed by [the defendant] to have been unlawful interrogation [was] in fact `reasonably likely to elicit' an incriminating response." United States v. Abdulla, 294 F.3d 830, 834 (7th Cir.2002) (quoting United States v. Westbrook, 125 F.3d 996, 1002 (7th Cir.1997)). "Volunteered statements of any kind are not barred by the Fifth Amendment." Miranda, 384 U.S. at 478, 86 S.Ct. 1602. The focus of Knope's objection is the admission of biographical information that was later used to execute a search of his residence. Knope argues that the question "Where do you live?" was a form of interrogation because his answer provided the likely location of the computer that he had used for the online chats. "[R]outine booking questions" asked before Miranda warnings are given are not usually grounds for suppression of a defendant's statements revealing his identity and residence. Pennsylvania v. Muniz, 496 U.S. 582, 601, 110 S.Ct. 2638, 110 L.Ed.2d 528 (1990) (questions reasonably related to the police's administrative concerns do not constitute interrogation under Miranda); United States v. Edwards, 885 F.2d 377, 385 (7th Cir.1989). Although a suspect's home is a likely place for this type of illicit activity, DuCharme did not then know the location of the computer Knope used. (It could have been at work or anywhere a laptop could be linked to the Internet.) There is no evidence that DuCharme was seeking an admission when she asked where he lived. Knope cites no precedent where revealing one's place of residence during booking, thereby identifying a place to search, was found sufficient to invoke Miranda. Although we do not foreclose the possibility of such a case, this is not it.

2. Computer Equipment
Knope argues that computer equipment seized from his residence should be suppressed because it was the fruit of an illegal search. During his interview with Detectives DuCharme and McQuown, Knope stated that there was a strap-on dildo in his car, that he had viewed and downloaded child pornography on his home computer, and that he had used his home computer to chat online with Maria. DuCharme eventually asked Knope for permission to go to his house and search his computer. Knope said that he wanted to be present for the search because there was "stuff" on his external hard drive that he "didn't have a chance to go through yet." DuCharme told Knope, "That's the *653 problem ... you can't be [there]." Knope continued, "[T]here is probably stuff on it.... And it's in a separate folder ... that needs to be deleted.... [B]ut all I'm saying is I just ... I want to make this go away the best I can." DuCharme responded, "Listen.... It's already there so whether you give me permission I can go other ways and try to do it. I'm asking for your permission." Knope stated, "What's done is done," and asked when his computers would be returned to him. DuCharme explained that they would not be returned if they contained contraband and continued to question Knope about the items he downloaded from the Internet.
As she spoke to Knope, DuCharme filled out the top of a Milwaukee Police Department consent to search form. The form stated that Knope gave consent for the search of "[his] premises and all property found therein and located at 105 Randolph" as well as his car, personal computers, data storage devices, and cell phone. DuCharme read the form aloud to Knope, who confirmed that he understood what the consent entailed. DuCharme then handed the form to Knope to complete, instructing him to "check off the boxes if you agree ... and then sign your name on the bottom." She also asked Knope additional questions about the items that might be found in his car. During this exchange, Knope asked, "When we get down there [to the police station], [i]s it possible to have a lawyer there?" DuCharme told him, "Sure.... You have a right to a lawyer, whatever you want." Knope responded that he did not want to "worm [his] way out of anything that's done" and that he knew that their conversation was recorded.
DuCharme told Knope the date, which he wrote on the form, and then said, "Okay, Randy, just so you know where I'm at now, because you're asking for a lawyer at this point, I can't ask you any more questions. You can go ahead and you can talk to me but you've limited what I can do...." DuCharme testified that she decided to stop asking Knope questions "to be on the safe side," even though she was not sure whether he was asking for a lawyer at that time or stating that he wanted a lawyer to be present when he arrived at the police station. She could not recall whether Knope had already signed the consent form when he invoked his right to an attorney.
After the interview, DuCharme and McQuown traveled to Burlington to conduct the search. They stopped at the Burlington Police Department on the way because they wanted uniformed officers to be present when they arrived at Knope's residence. There they confirmed that Knope lived at 109 Randolph Street. As they arrived, DuCharme realized that she had written "105 Randolph" on the top of Knope's consent form. After reviewing her notes, DuCharme concluded that 109 Randolph was correct, as it was what she had initially written down when she asked Knope for his address.
The detectives proceeded to 109 Randolph Street, where they met Knope's girlfriend and her mother, both of whom lived with Knope. The detectives explained that Knope had been arrested for a computer-related crime and that he had consented to a search of his area of the residence. The mother then showed the detectives where Knope's belongings were located. The detectives recovered a DVD with child pornography images, Knope's laptop computer, and an external hard drive. Before the DVD and laptop were searched, DuCharme obtained a search warrant to examine the items that had been seized.
Knope first argues that he was coerced into signing the consent form when DuCharme told him "whether you give me permission [to search the residence] *654 I can go other ways and try to do it." The court looks to the totality of the circumstances to determine whether Knope's consent was voluntary. Schneckloth v. Bustamonte, 412 U.S. 218, 227, 93 S.Ct. 2041, 36 L.Ed.2d 854 (1973). The factors we consider include Knope's age, education, and intelligence, the length of his detention prior to consent, whether the police repeatedly asked for consent, whether physical coercion was used, and whether he was in custody. United States v. Strache, 202 F.3d 980, 985 (7th Cir. 2000). An empty threat to obtain a search warrant may render consent involuntary, but if "the expressed intention to obtain a warrant is genuine ... and not merely a pretext to induce submission, it does not vitiate consent." United States v. White, 979 F.2d 539, 542 (7th Cir.1992); see also United States v. Hicks, 539 F.3d 566, 572 (7th Cir.2008).
Here, Knope had admitted that he viewed and downloaded child pornography on his home computer and that he had been using that computer when he engaged in online chats with Maria. Therefore, DuCharme would have had a legitimate belief that she could obtain a warrant to search Knope's residence. Moreover, the record shows that DuCharme explained Knope's rights to him in a non-threatening manner and that he readily consented to the search of his residence. The district court did not err in concluding that Knope's consent was voluntary.
Knope also asserts that his consent was invalid because he signed the consent form after he invoked his right to counsel. He cites Edwards v. Arizona, 451 U.S. 477, 484-85, 101 S.Ct. 1880, 68 L.Ed.2d 378 (1981), where the Supreme Court held that police cannot continue an interrogation after the accused invokes his right to counsel. Knope's argument is foreclosed, however, by this court's holding that "a consent to search is not an interrogation within the meaning of Miranda." United States v. Shlater, 85 F.3d 1251, 1256 (7th Cir.1996); United States v. LaGrone, 43 F.3d 332, 335 (7th Cir.1994). Indeed, we rejected nearly identical arguments in Shlater and LaGrone. Knope's consent was not invalid on these grounds.
Finally, Knope argues that the consent form was not valid because it contained the wrong address. There is no question that Knope consented to the search of his residence, that he told DuCharme that his address was 109 Randolph Street, or that the Burlington Police Department confirmed that Knope lived at that address. DuCharme's transcription error does not invalidate Knope's voluntary consent.[4] For these reasons, the district court correctly denied Knope's motion to suppress.

B. Admission of Other Acts Evidence

1. The Evidence
The government moved before trial to introduce transcripts of Knope's other online chats and evidence regarding a prior investigation of Knope's online activity. Over Knope's objection, the evidence was admitted to show Knope's motive, intent, and plan to commit the crimes charged. The presentation of the other acts evidence took up a substantial portion of a trial that lasted four and a half days, excluding voir dire.
The chat transcripts show that between February 18, 2007 and July 5, 2007, Knope chatted with an individual who identified herself as "westsideg_url" and purported to be fifteen years old. Knope used the *655 alias "ilovethecock83," the same alias that he used during his chats with DuCharme. On February 18, 2007, Knope sent a private message to "westsideg_url" that stated "whatsup," and then told her that he was "trying to find someone to hang out with." Knope asked westsideg_url her age, which she claimed was fifteen, and then asked if she could send a photograph of herself. The requested photo could not be delivered to Knope's account. Nevertheless, Knope asked if she "would ... wanna hang out." On March 15, Knope again initiated a conversation by asking "whatsup." When westsideg_url responded "nothin u," Knope wrote that he was "waiting for a girl I know to show up so I can try to get her preg since she wants to have a baby." Knope told westsideg_url that "they are lesbians and they want a baby they asked if I could help." He then asked, "[Y]ou want one too?" When westsideg_url responded, "naw I'm straight I don't need any more babys," Knope wrote, "last time we talked you told me you were a virgin ... we can change that!" During this chat, Knope again asked if westsideg_url would meet with him and wrote that he wanted to "flirt back" at her in person. She responded that he could go to jail because Knope was thirty and "im 15 remember."
In later chats with westsideg_url, Knope wrote that he was "excited" that he had impregnated one of his friends and repeatedly asked westsideg_url whether she wanted to lose her virginity to him and have him "fertilize" her "eggs." On July 5, westsideg_url asked Knope "y do u wana a young girl." He wrote that they are "more fun to be with" and then asked westsideg_url whether she had "any friends that wanna get preg" because he was "sure [he could] hook them up." Knope told westsideg_url to give his screen name to her friends because "there is at least one of your friends that probably would just ... do it." Although Knope asked westsideg_url to meet with him several times, there is no evidence that a meeting occurred.
On May 9, 2007, Knope chatted with anindividual who used the screen name "spoiledbrat8705" and who purported to be a fifteen-year-old female from Milwaukee. Knope again used the online alias "ilovethecock83" and stated that he was thirty years old. Knope asked spoiledbrat to send him a picture and told her that it was "too bad you don't have a nude" because she was "hot." Knope told spoiledbrat that he had been with younger women "but not as young as you" and asked spoiledbrat detailed questions about her prior sexual experiences. Towards the end of the chat, Knope told spoiledbrat that he was "having a hard time believing your not a bot[5] and that your 15" because "there are too many pervs that pretend to be young girls ... not to mention police." Knope asked if he might be able to call spoiledbrat, but she refused to give him her phone number.
Between April 28, 2007 and May 4, 2007, Knope chatted with "baseballdude1991," an individual who purported to be a fifteen year old male. Knope used the alias "ilovethecock83." Knope and "baseballdude" discussed various sexual fantasies in detail and discussed how they might meet in a park to have sex. Knope also asked "baseballdude" for a photo. The government submitted a related chat, which took place on May 7, 2007, between Knope and "paltry40." Knope told paltry40 that he had been chatting with "some ass telling me he was 15 and wants to hookup" and that the fifteen-year-old claimed to be from Bonduel, Wisconsin. The government argued that Knope was referring to baseballdude in this comment because baseballdude had *656 told Knope that he was from Bonduel. In the chat with paltry40, Knope wrote that the purported fifteen-year-old was "most likely some guy faking to be a teen ... or some desperate cop trying to make himself a name."
On February 16, 2008, Knope chatted with "gyrlpowur," who identified herself as a seventeen-year-old female. Knope used the alias "sugar_daddy_looking_4_girl." The two exchanged photos and then Knope asked whether gyrlpowur wanted to have a baby because he was "looking for the near future." Knope also asked gyrlpowur if she was bothered by the fact that he was significantly older than she, since "a lot of girls seem too afraid of older guys." Towards the end of the chat, gyrlpowur asked Knope, "[S]o u really wanna get me pregnant?" Knope responded, "[I]f you want me to."
On February 21, 2008, Knope chatted with "lilcutie4193," who purported to be a fifteen-year-old female in Milwaukee. Knope asked lilcutie to send photographs, and when the photographs could not be viewed he asked to see her Myspace page. Knope complained that the address she sent him was private and that he could not see any pictures of her on the page.
The government also introduced chat transcripts, recorded phone calls, and testimony relating to a prior undercover investigation of Knope. The transcripts, which were found on Knope's computer, showed that between June 1 and July 6, 2005, Knope had chatted online with an individual who purported to be a fourteen-year-old girl named Alyssa. In each of nine chats with Alyssa, Knope made graphic sexual comments and indicated his eagerness to meet with Alyssa to have sex. Alyssa was actually a male detective with the Milwaukee Police Department.
In their first chat, Knope told Alyssa that he was online looking for "someone that wants to be eaten out." Alyssa indicated that she would like to be "eaten out" by someone who was "kewl to hang with." Knope immediately inquired whether she would like to "meet up sometime." He stated that he would even be willing to meet near Alyssa's house, which was a two- to three-hour drive from his home in Green Bay, but that he "would wanna be able to talk on the phone first to know your real." Knope also told Alyssa that he wanted to have sex with her. Subsequently, on June 30, 2005, Knope and Alyssa planned a meeting at a Walgreens in Milwaukee. They discussed that they would then go to a nearby motel, and Knope provided his telephone number to Alyssa. The recordings of Knope's telephone calls to the female detective who posed as Alyssa show that Knope drove from Green Bay to Milwaukee that same night but went to the wrong Walgreens.[6] Knope and Alyssa chatted two more times but there was no evidence of another attempted meeting.

2. Rule 404(b) Factors
Evidence of other crimes, wrongs, or acts is not admissible to prove that the defendant has a propensity to commit the crime charged. Such evidence may, however, be admissible for other purposes, such as to prove motive, intent, knowledge, identity, or absence of mistake. Fed. R.Evid. 404(b). Courts use a four-part test to determine the admissibility of other acts evidence: (1) the evidence must be directed toward establishing a matter in issue other than the defendant's propensity to commit the crime charged; (2) the evidence must show that the other act is similar enough and close enough in time to *657 be relevant to the matter in issue; (3) the evidence must be sufficient to support a jury finding that the defendant committed the similar acts; and (4) the probative value of the evidence must not be substantially outweighed by the danger of unfair prejudice. United States v. Asher, 178 F.3d 486, 492 (7th Cir.1999). We review the district court's evidentiary rulings for abuse of discretion. United States v. Hensley, 574 F.3d 384, 388 (7th Cir.2009). We will reverse for error in admitting Rule 404(b) evidence only if the error was not harmless. United States v. Dennis, 497 F.3d 765, 770 (7th Cir.2007).
Knope argues that the district court erred in admitting the other acts evidence because the other acts were not sufficiently similar or close in time to be relevant, the government did not present sufficient evidence to support a finding that Knope committed the other acts, and the district court did not adequately explain why the probative value of the chats outweighed the danger of unfair prejudice. The first three are easily disposed of.
The other acts evidence was relevant to a matter in issue, as the government was required, for the attempted enticement charge, to prove that Knope believed that Maria was a minor. See United States v. Coté, 504 F.3d 682, 686 (7th Cir.2007). The chats show that Knope had expressed interest in having sex with minors in the past, that he had attempted to meet with at least one minor (Alyssa) for this purpose, and that he attempted to distinguish between actual minors and others who might pose as minors on the internet. These facts undermined Knope's defense that his chats with Maria were harmless fantasy and that he believed that she was over eighteen years old. Therefore, the evidence was relevant to establishing Knope's knowledge, intent, and lack of mistake. See United States v. Sebolt, 460 F.3d 910, 917 (7th Cir.2006) ("Prior instances of sexual misconduct with a child victim may establish a defendant's sexual interest in children and thereby serve as evidence of the defendant's motive to commit a charged offense involving the sexual exploitation of children."); see also United States v. Chambers, 642 F.3d 588, 595 (7th Cir.2011) (sexually explicit online chat was admissible to show motive and intent to entice minor to have sex); United States v. Zahursky, 580 F.3d 515, 524-25 (7th Cir. 2009) (same).
The proximity and similarity factor is also met. The other acts occurred within the past three years, sufficiently close in time to his arrest to be relevant to the offense conduct. See United States v. Lee, 558 F.3d 638, 647 (7th Cir.2009) (two-year time period was close enough in proximity); United States v. Best, 250 F.3d 1084, 1092 (7th Cir.2001) (two-year period); United States v. Kreiser, 15 F.3d 635, 640-41 (7th Cir.1994) (seven-year period); United States v. Goodapple, 958 F.2d 1402, 1407-08 (7th Cir.1992) (five-year period); see also United States v. Beasley, 809 F.2d 1273, 1277 (7th Cir.1987) ("Questions about `how long is too long' do not have uniform answers; the answers depend on the theory that makes the evidence admissible.").
The other acts also demonstrate Knope's continued pursuit of minors for sex. Knope argues that the chats with "westsideg_url," "baseballdude1991," "paltry40," "spoiledbrat8705," "gyrlpowur," and "lilcutie4193" were not sufficiently similar to his conduct with Maria because the government did not prove that the other individuals were minors or that Knope actually tried to meet with them. We reject Knope's argument to the extent that he suggests that prior conduct must have constituted a crime in order to be admissible. See Fed.R.Evid. 404(b) (referring to other "crimes, wrongs, or acts"); United States v. Senak, 527 F.2d 129, 143 (7th Cir.1975) *658 ("We do not agree that similar acts introduced to establish motive, intent, the absence of mistake or accident, or a common scheme or plan must necessarily be acts constituting a crime."). Furthermore, we have made clear that the conduct in the chats need not be identical to the conduct at issue during trial. It is enough that the prior and instant acts are "sufficiently alike to support an inference of criminal intent." United States v. Vargas, 552 F.3d 550, 555 (7th Cir.2008) (quoting United States v. Lloyd, 71 F.3d 1256, 1265 (7th Cir.1995)). During the prior acts Knope expressed interest in having sex with individuals who represented that they were minors, attempted to determine whether the individuals were, in fact, minors, and in some instances asked these individuals to meet with him. See Hensley, 574 F.3d at 389 n. 3 ("The relevant similarity ... is that in both instances [defendant] was attempting to persuade a minor to engage in sexual activity."). Whether the other individuals were actually minors, as opposed to people who convincingly pretended to be minors, does not affect the court's analysis of whether the chats support the inference that Knope had the requisite criminal intent.
With respect to the identity factor, the evidence supports a finding that Knope participated in the other acts. The chat transcripts were seized from Knope's computer and Knope often used the same alias that he had used in his chats with DuCharme. His argument that the government was also required to prove the identities of the other individuals who were involved in the chats is without merit because the issue is what Knope believed about their ages, not their actual ages.
The final factor is less clear-cut. Knope asserts that the other acts evidence was unfairly prejudicial and that the district court erred by failing to articulate its reasoning. Knope argues that any prejudice was compounded by the district court's waiting until the jury charge to issue a limiting instruction.
The district court concluded that there was a "clear basis" for admitting the evidence under Zahursky but did not explicitly address the danger of unfair prejudice. In Zahursky, 580 F.3d at 524-25, we held that prior online chats were properly admitted in a section 2422(b) prosecution. There the government introduced several internet chats with an individual who claimed to be a fourteen-year-old girl, another chat where the defendant claimed to have had sex with a fourteen year old, and evidence that the defendant had twice had sex with a fifteen-year-old girl. We upheld the district court's "implicit determination" that the probative value of the other acts evidence was not substantially outweighed by the danger of unfair prejudice or its cumulative nature.
We agree with Knope that the district court should have given explicit reasons for its conclusion that the evidence was not unfairly prejudicial rather than making reference to another similar case.[7] District courts should explain their reasoning at the time of ruling in order to ensure a fair trial for the defendant, facilitate appellate review, and preserve the integrity of the judicial system. See United States v. Ciesiolka, 614 F.3d 347, 357-58 (7th Cir.2010) ("A trial court's `perfunctory' consideration of this critical question is inadequate and may in itself be grounds for reversal."; "[T]he Rule 403 standard incorporated in the requisite, test for admitting evidence under Rule 404(b) has teeth."); see also United States v. Moore, *659 641 F.3d 812, 823-24 (7th Cir.2011); United States v. Albiola, 624 F.3d 431, 438-39 (7th Cir.2010); United States v. Macey, 8 F.3d 462, 467 (7th Cir.1993); Beasley, 809 F.2d at 1279.
Our concern here is the court's failure to take the cumulative effect of the chats into account. The government sought to admit Knope's chats with seven different individuals, and presentation of this evidence was expected to take up a significant part of the trial. (Defendant calculates that 23% of testimonial time in the government's case-in-chief was devoted to it.) Given the sexually graphic nature of the chats, the court should have explained why this volume of evidence was appropriate. The impact on the jury may have been magnified by the court's omission of a limiting instruction at the time the evidence was introduced.[8]
Nonetheless, we conclude that the error was harmless. Knope relies heavily on Ciesiolka, where we did find unfair prejudice. Similarly to here, the district court had failed to address the prejudice factor, and a substantial portion of the testimony was devoted to prior bad acts. But unlike here, the prior bad acts "ran the gamut from the jury's viewing over 100 images of child pornography to its hearing a woman's testimony of her having had sex with the defendant when she was 15 to the offensive sexual content of defendant's many IM conversations with unidentified third parties." 614 F.3d at 358. Significantly, we concluded that the government's evidence of the crime itself was "far from conclusive," id. at 356 n. 2, and the defendant's theory that he believed he was interacting with an adult merely pretending to be a child had "strong support" in the evidence. Id. at 356.[9] Moreover, as the trial progressed the defendant had asked the district court to repeat its limiting instruction, which the court refused to do without explaining why. (Knope, in contrast, did not request a limiting instruction at the time the evidence was introduced.) We decided that "given the context-specific facts of this highly unusual case, the district court's failure to explain its decision to grant the government virtual carte blanche to introduce all the Rule 404(b) evidence that it did was an error that was not adequately cured by the limiting instruction provided." Id. at 358-59.
The government's 404(b) evidence was, as we have already explained, relevant to the knowledge issue, reasonably recent, similar in content, and identified with Knope. In addition, there was abundant evidence of Knope's criminal intent, even without the other acts evidence. Knope initiated contact with Maria, made it clear that he was interested in having sex, and attempted to meet with her despite the fact that she stated she was a minor. His knowledge of Maria's age could be readily inferred from the fact that DuCharme sent him a photograph of a minor, spoke to him as though she were a fifteen-year-old girl, and repeatedly emphasized Maria's age during the chats. Knope's intent to have sex with Maria was also clear. He brought a strap-on device to the meeting with Maria and then purchased condoms while he waited for her. Taken together, *660 this evidence belied Knope's assertion that he had driven to meet Maria merely out of curiosity. Added to Knope's volunteered inculpatory statements, the evidence of guilt was overwhelming (despite the prosecutor's concession in closing argument that without the 404(b) evidence it "might" be possible to conclude that Knope was actually mistaken about her age). For these reasons, we will not reverse Knope's conviction because of the court's failure to explain itself about the prejudice issue.[10]

C. Jury Instructions
Knope also argues that the district court erred in denying several of his proposed jury instructions. We generally review a district court's decision to refuse an instruction for abuse of discretion, reviewing any underlying legal issues de novo. United States v. Campos, 541 F.3d 735, 744 (7th Cir.2008). We review a court's decision not to provide a theory of defense instruction de novo. United States v. Martin, 618 F.3d 705, 735 (7th Cir.2010). A defendant is entitled to a jury instruction regarding a theory of defense if (1) the instruction is a correct statement of law; (2) the evidence supports the theory of defense; (3) the theory of defense is not part of the charge; and (4) the failure to provide the instruction would deny the defendant a fair trial. United States v. Canady, 578 F.3d 665, 672 (7th Cir.2009).
Knope requested an instruction that possession of adult pornography and lewd speech directed towards adults is protected speech. He argues that the instruction was necessary to preserve his rights under the First Amendment. For the offense of possession of child pornography, Knope's concern was fully addressed by the jury instruction which stated that the production of the pornographic images must have "involved the use of an actual minor." Knope has cited no portion of the record that supports his assertion that the jury might have mistakenly understood that it could convict him for possession of adult pornography.[11] On the other hand, the proposed instruction was potentially confusing because the jury might have misunderstood that the government had to prove that the individual was an actual minor in order to prove attempted enticement.
Knope also requested an instruction regarding what constitutes a "substantial step" towards the completion of a violation of section 2422(b). In order to find Knope guilty of an attempt to entice Maria to have sex with him, the jury needed to conclude that Knope had taken a "substantial step" towards completing the offense. Travel, making arrangements for a meeting, and other preparatory steps may constitute a substantial step. United States v. Gladish, 536 F.3d 646, 649 (7th Cir.2008). The jury may not, however, convict on the basis of obscene speech or "hot air" alone. Id. at 649-50. Knope's proposed instruction stated that "the mere act of communicating online or by telephone with a person *661 who states that they are under the age of 18" does not constitute a substantial step. This instruction would have been redundant in light of the court's instruction regarding the elements of the offense of enticement, which stated that "it is necessary for the Government to prove that the Defendant ... knowingly took some action, other than merely chatting online or by telephone, that was a substantial step toward bringing about or engaging in that sexual activity." The instruction was also consistent with Gladish. The district court did not abuse its discretion in denying Knope's supplemental description of the substantial step requirement.
In addition, Knope requested a theory of defense instruction stating that the jury could acquit if it found that Knope "believed in good faith that the person he was communicating with on the internet and by telephone was not under the age of 18 and he was mistaken in that belief." The district court properly declined to issue a separate good faith instruction because this defense was included in the definition of the term "knowingly" that was provided to the jury. See United States v. Given, 164 F.3d 389, 394-95 (7th Cir.1999) (refusal to give specific good faith instruction was not error where judge had clearly defined the term "knowingly" using this circuit's pattern instruction).
Knope also argues that the district court erred in denying his proposed entrapment instruction. A defendant may raise an entrapment defense if he shows that he was not predisposed to commit the crime and that he was induced by the government to commit it. United States v. Hall, 608 F.3d 340, 343 (7th Cir.2010). We consider the following factors in assessing the defendant's predisposition:
(1) the defendant's character or reputation; (2) whether the government initially suggested the criminal activity; (3) whether the defendant engaged in the criminal activity for profit; (4) whether the defendant evidenced a reluctance to commit the offense that was overcome by government persuasion; and (5) the nature of the inducement or persuasion by the government.
United States v. Blassingame, 197 F.3d 271, 281 (7th Cir.1999). The most important factor is whether the defendant showed reluctance to engage in criminal activity that was overcome by the government's inducement. Id.
Here, all of the factors indicate that Knope was predisposed to commit the crimes. Knope initiated contact with DuCharme and asked her if she wanted to meet him in-person. He took an active role in planning the meeting by offering to get a room, asking Maria how he could recognize her, and confirming how long Maria could spend with him. He also initiated the discussion about the strap-on device and then tried to determine what size strap-on to bring for Maria. He decided to purchase condoms at Walgreens, without any prodding from Maria. Finally, Knope had engaged in nearly identical conduct with Alyssa in 2005. "Where ... the government simply invites the defendant to participate in the crime and does not `employ[] any pressure tactics or use[] any other type of coercion' to induce the defendant, a defendant is not entitled to an entrapment defense." United States v. Orr, 622 F.3d 864, 869 (7th Cir.2010) (quoting United States v. Akinsanya, 53 F.3d 852, 858 (7th Cir.1995)). Given these facts, and that Knope has not cited any evidence to support the conclusion that he was induced to commit the crimes at issue, the district court properly denied his entrapment instruction.
Knope submitted a detailed instruction regarding the use of "other acts" evidence under Rule 404(b), which the district court rejected in favor of this circuit's pattern *662 instruction. The district court did not abuse its discretion in rejecting Knope's instruction. Knope's instruction does not differ materially from the instruction given by the court and we are not convinced that the extra language is necessary to convey the proper role of Rule 404(b) evidence.
Finally, Knope argues that the district court erred in denying his theory of defense instructions as to possession of child pornography and enticement. Knope's proposed theory of defense instruction regarding the pornography charge stated that the government must prove beyond a reasonable doubt that the images depicted an actual minor. This instruction, like Knope's privileged speech instruction, was unnecessary because the jury charge included the requirement that the production of the images involved the use of actual minors and that the defendant knew that the images involved the use of a minor. In addition, there was no evidence to support an inference that any of the images involved virtual rather than actual minors.
Knope's theory of defense instruction with respect to the enticement charge stated that Knope did not believe he was communicating with a person under age eighteen and that he was "attempting to leave the Walgreens parking lot at the time he was arrested and did not take the necessary substantial step." We agree with the district court that Knope's instruction was not an accurate statement of the law because it implied that traveling to the Walgreens could not constitute the "substantial step" required for the offense of attempted enticement of a minor. Even if Knope had been attempting to leave Walgreens when he was arrested, he had already completed the substantial step by driving to the designated meeting place and purchasing condoms inside the store. See Gladish, 536 F.3d at 648-49. Moreover, the first portion of Knope's theory of defense instruction, regarding mens rea, was unnecessary in light of the jury charge. The court's instruction regarding enticement made clear that Knope had to have "believed that [Maria] was less than eighteen ... years of age." For these reasons, we conclude that the district court properly denied Knope's theory of defense instructions.

III. Conclusion
For the foregoing reasons, we AFFIRM.
NOTES
[*]  The Honorable Joan Humphrey Lefkow of the Northern District of Illinois, sitting by designation.
[1]  This may be a typo, as Knope later told DuCharme that he was thirty-one years old.
[2]  DuCharme testified that she raised her voice by leaning forward over a chair to compress her diaphragm.
[3]  The car was outfitted with a recording device, and the jury heard a recording of the entire interview at trial.
[4]  Based on this conclusion, we need not address whether the other occupants of Knope's residence validly consented to the search of the basement area where Knope's items were located.
[5]  DuCharme testified that a "bot" is a robotic program that sends and receives chats.
[6]  DuCharme was the police officer who pretended to be Alyssa during Knope's calls. She testified that when she chatted again with Knope in 2008, using the alias Maria, she did not know that Knope was the same individual she had investigated in 2005.
[7]  "Evidence is unfairly prejudicial only if it will induce the jury to decide the case on an improper basis, commonly an emotional one, rather than on the evidence presented." Zahursky, 580 F.3d at 525 (quoting United States v. Harris, 536 F.3d 798, 809 (7th Cir.2008)).
[8]  We express no opinion on the government's argument that the written questionnaire that was sent to prospective jurors, which was designed to weed out individuals who had strong opinions regarding pornography or unconventional sexual practices, might have lessened any prejudice that resulted from the admission of the other acts evidence at trial.
[9]  See 614 F.3d at 356 (noting that the undercover officer who chatted with the defendant had posted a photo of a woman in her 20s and had listed beer and Purdue University as interests on her Yahoo! profile).
[10]  We also reject Knope's argument that the district court's admission of the chat transcripts violated his right to free speech under the First Amendment. Knope was not being prosecuted for his conduct relating to the other chats and "[t]he First Amendment ... does not prohibit the evidentiary use of speech to establish the elements of a crime or to prove motive or intent." Wisconsin v. Mitchell, 508 U.S. 476, 489, 113 S.Ct. 2194, 124 L.Ed.2d 436 (1993); see also Dressler v. McCaughtry, 238 F.3d 908, 915 (7th Cir. 2001).
[11]  To the contrary, when McQuown testified that images of adult pornography were recovered from Knope's DVDs and CDs, the prosecution asked him to clarify that "the illegal things that have been charged in this case are child porn" and that "adult pornography while people may not like it ... that's not the subject of this charge or trial, right?"
