from manimlib.imports import * from math import * class Solution(GraphScene): def construct(self): watermark = ImageMobject("./assets/water_mark.png",opacity=0.7) watermark.scale(1.5) watermark.to_corner(DOWN+RIGHT, buff=0) self.play(FadeIn(watermark)) Solve = TexMobject(r"I=\int_{0}^{\infty}\ln{(1+5x^2)}\ln{\left(1+\frac{6}{5x^2}\right)}dx" ) Solve.to_edge(UP) self.play(Write(Solve)) align_mark = TexMobject( r'abs', fill_opacity=0.00,height=0.5) align_mark.next_to(Solve,DOWN) self.wait(1) R0 = TexMobject(r"\text{Let }t=\sqrt{5}x \ \implies \ dx=\frac{1}{\sqrt{5}}\ dt" ) if R0.get_height() > 1: R0.set_height(height=1,stretch=False) if R0.get_width() > 12: R0.set_width(width=12,stretch=False) R1 = TexMobject(r"\implies I=\frac{1}{\sqrt{5}}\int_{0}^ {\infty} \ln{(1+t^2)}\ln{\left(1+\frac{6}{t^2}\right)}dt" ) if R1.get_height() > 1: R1.set_height(height=1,stretch=False) if R1.get_width() > 12: R1.set_width(width=12,stretch=False) R2 = TexMobject(r"\text{Now let's use the Leibniz rule for integration,}" ) if R2.get_height() > 1: R2.set_height(height=1,stretch=False) if R2.get_width() > 12: R2.set_width(width=12,stretch=False) R3 = TexMobject(r"I(\alpha)=\frac{1}{\sqrt{5}}\int_{0}^{\infty} \ln{(1+t^2)}\ln{\left(1+\alpha\frac{6}{t^2}\right)}dt" ) if R3.get_height() > 1: R3.set_height(height=1,stretch=False) if R3.get_width() > 12: R3.set_width(width=12,stretch=False) R4 = TexMobject(r"\text{Notice that } I(0)=0 \ \text{and}\ I(1)=1" ) if R4.get_height() > 1: R4.set_height(height=1,stretch=False) if R4.get_width() > 12: R4.set_width(width=12,stretch=False) R5 = TexMobject(r"\text{Now let's diffrentiate with respect to } \alpha" ) if R5.get_height() > 1: R5.set_height(height=1,stretch=False) if R5.get_width() > 12: R5.set_width(width=12,stretch=False) R6 = TexMobject(r"I'(\alpha)=\int_{0}^{\infty}\frac{\partial }{\partial\alpha} \ln{(1+t^2)}\ln{\left(1+\alpha \frac{6}{t^2}\right)}dt" ) if R6.get_height() > 1: R6.set_height(height=1,stretch=False) if R6.get_width() > 12: R6.set_width(width=12,stretch=False) R7 = TexMobject(r"I'(\alpha)=\frac{6}{\sqrt{5}}\int_{0}^{\infty}\frac{\ln{(1+t^2)}}{t^2+6\alpha} \ dt" ) if R7.get_height() > 1: R7.set_height(height=1,stretch=False) if R7.get_width() > 12: R7.set_width(width=12,stretch=False) R8 = TexMobject(r"\text{Now let's do the Leibniz rule again introducing a new parameter } \beta" ) if R8.get_height() > 1: R8.set_height(height=1,stretch=False) if R8.get_width() > 12: R8.set_width(width=12,stretch=False) R9 = TexMobject(r"I'(\alpha,\beta)=\frac{6}{\sqrt{5}}\int_{0}^{\infty}\frac{\ln{(1+\beta t^2)}}{t^2+6\alpha} dt" ) if R9.get_height() > 1: R9.set_height(height=1,stretch=False) if R9.get_width() > 12: R9.set_width(width=12,stretch=False) R10 = TexMobject(r"\text{Notice that } I'(\alpha,0)=0 \ \text{and} \ I'(\alpha,1)=I'(\alpha)" ) if R10.get_height() > 1: R10.set_height(height=1,stretch=False) if R10.get_width() > 12: R10.set_width(width=12,stretch=False) R11 = TexMobject(r"\text{Now let's differentiate with respect to }\beta ," ) if R11.get_height() > 1: R11.set_height(height=1,stretch=False) if R11.get_width() > 12: R11.set_width(width=12,stretch=False) R12 = TexMobject(r"\frac{\partial I'(\alpha,\beta)}{\partial \beta}=\frac{6}{\sqrt{5}}\int_{0}^{\infty}\frac{\partial}{\partial \beta} \frac{\ln{(1+\beta t^2)}}{t^2+6\alpha} dt" ) if R12.get_height() > 1: R12.set_height(height=1,stretch=False) if R12.get_width() > 12: R12.set_width(width=12,stretch=False) R13 = TexMobject(r"= \frac{\partial I'(\alpha ,\beta )}{\partial \beta}=\frac{6}{\sqrt{5}}\int_{0}^{\infty} \frac{t^2}{(t^2+6\alpha)(1+\beta t^2)} dt" ) if R13.get_height() > 1: R13.set_height(height=1,stretch=False) if R13.get_width() > 12: R13.set_width(width=12,stretch=False) R14 = TexMobject(r"\text{Now doing Partial Fractions,}" ) if R14.get_height() > 1: R14.set_height(height=1,stretch=False) if R14.get_width() > 12: R14.set_width(width=12,stretch=False) R15 = TexMobject(r"\frac{\partial I'(\alpha,\beta)}{\partial \beta}=\frac{6}{\sqrt{5}} \int_{0}^{\infty} \frac{a_1}{t^2+6\alpha} + \frac{a_2}{1+\beta t^2} \ dt" ) if R15.get_height() > 1: R15.set_height(height=1,stretch=False) if R15.get_width() > 12: R15.set_width(width=12,stretch=False) R16 = TexMobject(r"\text{With identification we get } a_1=\frac{-6\alpha}{1-6\alpha\beta} \ \ , \ a_2=\frac{1}{1-6\alpha\beta}" ) if R16.get_height() > 1: R16.set_height(height=1,stretch=False) if R16.get_width() > 12: R16.set_width(width=12,stretch=False) R17 = TexMobject(r"\frac{\partial I'(\alpha, \beta)}{\partial \beta}=\frac{6}{\sqrt{5}}\frac{1}{(1-6\alpha\beta)} \int_{0}^{\infty}\frac{1}{1+\beta t^2}-\frac{6\alpha}{t^2+6\alpha} dt" ) if R17.get_height() > 1: R17.set_height(height=1,stretch=False) if R17.get_width() > 12: R17.set_width(width=12,stretch=False) R18 = TexMobject(r"\text{Now this is an elementary integral and we get,}" ) if R18.get_height() > 1: R18.set_height(height=1,stretch=False) if R18.get_width() > 12: R18.set_width(width=12,stretch=False) R19 = TexMobject(r"\frac{\partial I'(\alpha, \beta)}{\partial \beta}=\frac{6}{\sqrt{5}}\frac{1}{(1-6\alpha\beta)}\left[\frac{1}{\sqrt{\beta}}\arctan{(\sqrt{\beta}t)}-\sqrt{6\alpha}\arctan{\left(\frac{t}{\sqrt{6\alpha}}\right)}\right]_{0}^{\infty}" ) if R19.get_height() > 1: R19.set_height(height=1,stretch=False) if R19.get_width() > 12: R19.set_width(width=12,stretch=False) R20 = TexMobject(r"= \frac{\partial I'(\alpha, \beta)}{\partial \beta}=\frac{6}{\sqrt{5}}\frac{1}{(1-6\alpha\beta)}\left(\frac{1}{\sqrt{\beta}}-\sqrt{6\alpha}\right)\frac{\pi}{2}" ) if R20.get_height() > 1: R20.set_height(height=1,stretch=False) if R20.get_width() > 12: R20.set_width(width=12,stretch=False) R21 = TexMobject(r"\text{Now to get back to }I'(\alpha , \beta ) \text{ we'll integrate with respect to } \beta" ) if R21.get_height() > 1: R21.set_height(height=1,stretch=False) if R21.get_width() > 12: R21.set_width(width=12,stretch=False) R22 = TexMobject(r"I'(\alpha,\beta)=\int\frac{\partial I'(\alpha, \beta)}{\partial \beta} \ d\beta" ) if R22.get_height() > 1: R22.set_height(height=1,stretch=False) if R22.get_width() > 12: R22.set_width(width=12,stretch=False) R23 = TexMobject(r"=\frac{6}{\sqrt{5}}\frac{\pi}{2}\int \frac{1}{\sqrt{\beta}}\frac{1}{1-6\alpha\beta}-\frac{\sqrt{6\alpha}}{1-6\alpha\beta} \ d\beta" ) if R23.get_height() > 1: R23.set_height(height=1,stretch=False) if R23.get_width() > 12: R23.set_width(width=12,stretch=False) R24 = TexMobject(r"\text{For the first integral just let }u=\sqrt{\beta} \implies du=\frac{1}{\sqrt{\beta}} \ d\beta \text{ and we get,}" ) if R24.get_height() > 1: R24.set_height(height=1,stretch=False) if R24.get_width() > 12: R24.set_width(width=12,stretch=False) R25 = TexMobject(r"I'(\alpha,\beta)=\frac{\sqrt{6}}{\sqrt{5}}\frac{\pi}{2}\frac{1}{\sqrt{\alpha}}\left(\ln({1-6\alpha\beta})+2 \text{ argtanh}{\left(\sqrt{6\alpha\beta}\right)}\right)+C(\alpha)" ) if R25.get_height() > 1: R25.set_height(height=1,stretch=False) if R25.get_width() > 12: R25.set_width(width=12,stretch=False) R26 = TexMobject(r"\text{Since }I'(\alpha,0)=0 \ \implies \ C(\alpha)=0" ) if R26.get_height() > 1: R26.set_height(height=1,stretch=False) if R26.get_width() > 12: R26.set_width(width=12,stretch=False) R27 = TexMobject(r"\text{For } \beta=1 \text{ we get } I'(\alpha)" ) if R27.get_height() > 1: R27.set_height(height=1,stretch=False) if R27.get_width() > 12: R27.set_width(width=12,stretch=False) R28 = TexMobject(r"\iff I'(\alpha,1)=I'(\alpha)=\frac{\pi}{2}\frac{\sqrt{6}}{\sqrt{5\alpha}}\left(\ln{(1-6\alpha)}+2\text{ argtanh}{(\sqrt{6\alpha})}\right)" ) if R28.get_height() > 1: R28.set_height(height=1,stretch=False) if R28.get_width() > 12: R28.set_width(width=12,stretch=False) R29 = TexMobject(r"\text{Now to get back to } I(\alpha) \text{ we'll integrate with respect to } \alpha" ) if R29.get_height() > 1: R29.set_height(height=1,stretch=False) if R29.get_width() > 12: R29.set_width(width=12,stretch=False) R30 = TexMobject(r"I(\alpha)=\int I'(\alpha) d\alpha" ) if R30.get_height() > 1: R30.set_height(height=1,stretch=False) if R30.get_width() > 12: R30.set_width(width=12,stretch=False) R31 = TexMobject(r"I(\alpha)=\frac{\pi}{\sqrt{5}}\int\frac{\sqrt{6}}{2\sqrt{\alpha}}\left(\ln{(1-6\alpha)}+2\text{ argtanh}{(\sqrt{6\alpha})}\right) d\alpha" ) if R31.get_height() > 1: R31.set_height(height=1,stretch=False) if R31.get_width() > 12: R31.set_width(width=12,stretch=False) R32 = TexMobject(r"\text{For this let } \displaystyle \eta=\sqrt{6\alpha} \ \implies \ d\eta=\frac{\sqrt{6}}{2\sqrt{\alpha}} \ d\alpha" ) if R32.get_height() > 1: R32.set_height(height=1,stretch=False) if R32.get_width() > 12: R32.set_width(width=12,stretch=False) R33 = TexMobject(r"\implies I=\frac{\pi}{\sqrt{5}}\int \ln{(1-\eta^2)}+2\text{ argtanh}{(\eta)} \ d\eta " ) if R33.get_height() > 1: R33.set_height(height=1,stretch=False) if R33.get_width() > 12: R33.set_width(width=12,stretch=False) R34 = TexMobject(r"\text{Since } \text{argtanh}{(t)}=\frac{1}{2} \ln{\left(\frac{1+t}{1-t}\right)} \text{ and } \ln{(1-t^2)}=\ln{(1+t)}+\ln{(1-t)}" ) if R34.get_height() > 1: R34.set_height(height=1,stretch=False) if R34.get_width() > 12: R34.set_width(width=12,stretch=False) R35 = TexMobject(r"\implies I=\frac{\pi}{\sqrt{5}} \int 2\ln{(1+\eta)} \ d\eta" ) if R35.get_height() > 1: R35.set_height(height=1,stretch=False) if R35.get_width() > 12: R35.set_width(width=12,stretch=False) R36 = TexMobject(r"\text{Now this can be done quite easily using integration by parts and we get,}" ) if R36.get_height() > 1: R36.set_height(height=1,stretch=False) if R36.get_width() > 12: R36.set_width(width=12,stretch=False) R37 = TexMobject(r"I=\frac{2\pi}{\sqrt{5}}\Bigl((1+\eta)\ln{(1+\eta)}-\eta \Bigr)+C" ) if R37.get_height() > 1: R37.set_height(height=1,stretch=False) if R37.get_width() > 12: R37.set_width(width=12,stretch=False) R38 = TexMobject(r"\text{And since } \eta=\sqrt{6\alpha}" ) if R38.get_height() > 1: R38.set_height(height=1,stretch=False) if R38.get_width() > 12: R38.set_width(width=12,stretch=False) R39 = TexMobject(r"I(\alpha)=\frac{2\pi}{5} \Bigl((1+\sqrt{6\alpha})\ln{(1+\sqrt{6\alpha})}-\sqrt{6\alpha}\Bigr)+C" ) if R39.get_height() > 1: R39.set_height(height=1,stretch=False) if R39.get_width() > 12: R39.set_width(width=12,stretch=False) R40 = TexMobject(r"\text{Since } I(0)=0 \implies C=0 \text{ and for } \alpha=1 \text{ we get } I " ) if R40.get_height() > 1: R40.set_height(height=1,stretch=False) if R40.get_width() > 12: R40.set_width(width=12,stretch=False) R41 = TexMobject(r"\implies I(1)=I=\frac{\pi}{\sqrt{5}}\Bigl(2(1+\sqrt{6})\ln{(1+\sqrt{6})}-2\sqrt{6}\Bigr)" ) if R41.get_height() > 1: R41.set_height(height=1,stretch=False) if R41.get_width() > 12: R41.set_width(width=12,stretch=False) R42 = TexMobject(r"\text{We know that } 2\ln{(a)}=\ln{(a^2)}" ) if R42.get_height() > 1: R42.set_height(height=1,stretch=False) if R42.get_width() > 12: R42.set_width(width=12,stretch=False) R43 = TexMobject(r"\implies I=\frac{\pi}{\sqrt{5}}\Bigl((1+\sqrt{6})\ln{(7+2\sqrt{6})}-2\sqrt{6}\Bigr)" ) if R43.get_height() > 1: R43.set_height(height=1,stretch=False) if R43.get_width() > 12: R43.set_width(width=12,stretch=False) R44 = TexMobject(r"\text{So we conclude that,}" ) if R44.get_height() > 1: R44.set_height(height=1,stretch=False) if R44.get_width() > 12: R44.set_width(width=12,stretch=False) R45 = TexMobject(r"I=\int_{0}^{\infty}\ln{(1+5x^2)}\ln{\left(1+\frac{6}{5x^2}\right)}dx" ) if R45.get_height() > 1: R45.set_height(height=1,stretch=False) if R45.get_width() > 12: R45.set_width(width=12,stretch=False) R46 = TexMobject(r"=\frac{\pi}{\sqrt{5}}\Bigl((1+\sqrt{6})\ln{(7+2\sqrt{6})}-2\sqrt{6}\Bigr)" ) if R46.get_height() > 1: R46.set_height(height=1,stretch=False) if R46.get_width() > 12: R46.set_width(width=12,stretch=False) R47 = TexMobject(r"." ) if R47.get_height() > 1: R47.set_height(height=1,stretch=False) if R47.get_width() > 12: R47.set_width(width=12,stretch=False) R0.next_to(align_mark,DOWN) self.play(Write(R0)) self.wait(1) R1.next_to(R0, DOWN) self.play(Write(R1)) self.wait(1) R2.next_to(R1, DOWN) self.play(Write(R2)) self.wait(1) self.play(FadeOut(R0)) self.play(ApplyMethod(R1.next_to,align_mark,DOWN)) self.play(ApplyMethod(R2.next_to,R1, DOWN)) R3.next_to(R2, DOWN) self.play(Write(R3)) self.play(FadeOut(R1)) self.play(ApplyMethod(R2.next_to,align_mark,DOWN)) self.play(ApplyMethod(R3.next_to,R2, DOWN)) R4.next_to(R3, DOWN) self.play(Write(R4)) self.play(FadeOut(R2)) self.play(ApplyMethod(R3.next_to,align_mark,DOWN)) self.play(ApplyMethod(R4.next_to,R3, DOWN)) R5.next_to(R4, DOWN) self.play(Write(R5)) self.play(FadeOut(R3)) self.play(ApplyMethod(R4.next_to,align_mark,DOWN)) self.play(ApplyMethod(R5.next_to,R4, DOWN)) R6.next_to(R5, DOWN) self.play(Write(R6)) self.play(FadeOut(R4)) self.play(ApplyMethod(R5.next_to,align_mark,DOWN)) self.play(ApplyMethod(R6.next_to,R5, DOWN)) R7.next_to(R6, DOWN) self.play(Write(R7)) self.play(FadeOut(R5)) self.play(ApplyMethod(R6.next_to,align_mark,DOWN)) self.play(ApplyMethod(R7.next_to,R6, DOWN)) R8.next_to(R7, DOWN) self.play(Write(R8)) self.play(FadeOut(R6)) self.play(ApplyMethod(R7.next_to,align_mark,DOWN)) self.play(ApplyMethod(R8.next_to,R7, DOWN)) R9.next_to(R8, DOWN) self.play(Write(R9)) self.play(FadeOut(R7)) self.play(ApplyMethod(R8.next_to,align_mark,DOWN)) self.play(ApplyMethod(R9.next_to,R8, DOWN)) R10.next_to(R9, DOWN) self.play(Write(R10)) self.play(FadeOut(R8)) self.play(ApplyMethod(R9.next_to,align_mark,DOWN)) self.play(ApplyMethod(R10.next_to,R9, DOWN)) R11.next_to(R10, DOWN) self.play(Write(R11)) self.play(FadeOut(R9)) self.play(ApplyMethod(R10.next_to,align_mark,DOWN)) self.play(ApplyMethod(R11.next_to,R10, DOWN)) R12.next_to(R11, DOWN) self.play(Write(R12)) self.play(FadeOut(R10)) self.play(ApplyMethod(R11.next_to,align_mark,DOWN)) self.play(ApplyMethod(R12.next_to,R11, DOWN)) R13.next_to(R12, DOWN) self.play(Write(R13)) self.play(FadeOut(R11)) self.play(ApplyMethod(R12.next_to,align_mark,DOWN)) self.play(ApplyMethod(R13.next_to,R12, DOWN)) R14.next_to(R13, DOWN) self.play(Write(R14)) self.play(FadeOut(R12)) self.play(ApplyMethod(R13.next_to,align_mark,DOWN)) self.play(ApplyMethod(R14.next_to,R13, DOWN)) R15.next_to(R14, DOWN) self.play(Write(R15)) self.play(FadeOut(R13)) self.play(ApplyMethod(R14.next_to,align_mark,DOWN)) self.play(ApplyMethod(R15.next_to,R14, DOWN)) R16.next_to(R15, DOWN) self.play(Write(R16)) self.play(FadeOut(R14)) self.play(ApplyMethod(R15.next_to,align_mark,DOWN)) self.play(ApplyMethod(R16.next_to,R15, DOWN)) R17.next_to(R16, DOWN) self.play(Write(R17)) self.play(FadeOut(R15)) self.play(ApplyMethod(R16.next_to,align_mark,DOWN)) self.play(ApplyMethod(R17.next_to,R16, DOWN)) R18.next_to(R17, DOWN) self.play(Write(R18)) self.play(FadeOut(R16)) self.play(ApplyMethod(R17.next_to,align_mark,DOWN)) self.play(ApplyMethod(R18.next_to,R17, DOWN)) R19.next_to(R18, DOWN) self.play(Write(R19)) self.play(FadeOut(R17)) self.play(ApplyMethod(R18.next_to,align_mark,DOWN)) self.play(ApplyMethod(R19.next_to,R18, DOWN)) R20.next_to(R19, DOWN) self.play(Write(R20)) self.play(FadeOut(R18)) self.play(ApplyMethod(R19.next_to,align_mark,DOWN)) self.play(ApplyMethod(R20.next_to,R19, DOWN)) R21.next_to(R20, DOWN) self.play(Write(R21)) self.play(FadeOut(R19)) self.play(ApplyMethod(R20.next_to,align_mark,DOWN)) self.play(ApplyMethod(R21.next_to,R20, DOWN)) R22.next_to(R21, DOWN) self.play(Write(R22)) self.play(FadeOut(R20)) self.play(ApplyMethod(R21.next_to,align_mark,DOWN)) self.play(ApplyMethod(R22.next_to,R21, DOWN)) R23.next_to(R22, DOWN) self.play(Write(R23)) self.play(FadeOut(R21)) self.play(ApplyMethod(R22.next_to,align_mark,DOWN)) self.play(ApplyMethod(R23.next_to,R22, DOWN)) R24.next_to(R23, DOWN) self.play(Write(R24)) self.play(FadeOut(R22)) self.play(ApplyMethod(R23.next_to,align_mark,DOWN)) self.play(ApplyMethod(R24.next_to,R23, DOWN)) R25.next_to(R24, DOWN) self.play(Write(R25)) self.play(FadeOut(R23)) self.play(ApplyMethod(R24.next_to,align_mark,DOWN)) self.play(ApplyMethod(R25.next_to,R24, DOWN)) R26.next_to(R25, DOWN) self.play(Write(R26)) self.play(FadeOut(R24)) self.play(ApplyMethod(R25.next_to,align_mark,DOWN)) self.play(ApplyMethod(R26.next_to,R25, DOWN)) R27.next_to(R26, DOWN) self.play(Write(R27)) self.play(FadeOut(R25)) self.play(ApplyMethod(R26.next_to,align_mark,DOWN)) self.play(ApplyMethod(R27.next_to,R26, DOWN)) R28.next_to(R27, DOWN) self.play(Write(R28)) self.play(FadeOut(R26)) self.play(ApplyMethod(R27.next_to,align_mark,DOWN)) self.play(ApplyMethod(R28.next_to,R27, DOWN)) R29.next_to(R28, DOWN) self.play(Write(R29)) self.play(FadeOut(R27)) self.play(ApplyMethod(R28.next_to,align_mark,DOWN)) self.play(ApplyMethod(R29.next_to,R28, DOWN)) R30.next_to(R29, DOWN) self.play(Write(R30)) self.play(FadeOut(R28)) self.play(ApplyMethod(R29.next_to,align_mark,DOWN)) self.play(ApplyMethod(R30.next_to,R29, DOWN)) R31.next_to(R30, DOWN) self.play(Write(R31)) self.play(FadeOut(R29)) self.play(ApplyMethod(R30.next_to,align_mark,DOWN)) self.play(ApplyMethod(R31.next_to,R30, DOWN)) R32.next_to(R31, DOWN) self.play(Write(R32)) self.play(FadeOut(R30)) self.play(ApplyMethod(R31.next_to,align_mark,DOWN)) self.play(ApplyMethod(R32.next_to,R31, DOWN)) R33.next_to(R32, DOWN) self.play(Write(R33)) self.play(FadeOut(R31)) self.play(ApplyMethod(R32.next_to,align_mark,DOWN)) self.play(ApplyMethod(R33.next_to,R32, DOWN)) R34.next_to(R33, DOWN) self.play(Write(R34)) self.play(FadeOut(R32)) self.play(ApplyMethod(R33.next_to,align_mark,DOWN)) self.play(ApplyMethod(R34.next_to,R33, DOWN)) R35.next_to(R34, DOWN) self.play(Write(R35)) self.play(FadeOut(R33)) self.play(ApplyMethod(R34.next_to,align_mark,DOWN)) self.play(ApplyMethod(R35.next_to,R34, DOWN)) R36.next_to(R35, DOWN) self.play(Write(R36)) self.play(FadeOut(R34)) self.play(ApplyMethod(R35.next_to,align_mark,DOWN)) self.play(ApplyMethod(R36.next_to,R35, DOWN)) R37.next_to(R36, DOWN) self.play(Write(R37)) self.play(FadeOut(R35)) self.play(ApplyMethod(R36.next_to,align_mark,DOWN)) self.play(ApplyMethod(R37.next_to,R36, DOWN)) R38.next_to(R37, DOWN) self.play(Write(R38)) self.play(FadeOut(R36)) self.play(ApplyMethod(R37.next_to,align_mark,DOWN)) self.play(ApplyMethod(R38.next_to,R37, DOWN)) R39.next_to(R38, DOWN) self.play(Write(R39)) self.play(FadeOut(R37)) self.play(ApplyMethod(R38.next_to,align_mark,DOWN)) self.play(ApplyMethod(R39.next_to,R38, DOWN)) R40.next_to(R39, DOWN) self.play(Write(R40)) self.play(FadeOut(R38)) self.play(ApplyMethod(R39.next_to,align_mark,DOWN)) self.play(ApplyMethod(R40.next_to,R39, DOWN)) R41.next_to(R40, DOWN) self.play(Write(R41)) self.play(FadeOut(R39)) self.play(ApplyMethod(R40.next_to,align_mark,DOWN)) self.play(ApplyMethod(R41.next_to,R40, DOWN)) R42.next_to(R41, DOWN) self.play(Write(R42)) self.play(FadeOut(R40)) self.play(ApplyMethod(R41.next_to,align_mark,DOWN)) self.play(ApplyMethod(R42.next_to,R41, DOWN)) R43.next_to(R42, DOWN) self.play(Write(R43)) self.play(FadeOut(R41)) self.play(ApplyMethod(R42.next_to,align_mark,DOWN)) self.play(ApplyMethod(R43.next_to,R42, DOWN)) R44.next_to(R43, DOWN) self.play(Write(R44)) self.play(FadeOut(R42)) self.play(ApplyMethod(R43.next_to,align_mark,DOWN)) self.play(ApplyMethod(R44.next_to,R43, DOWN)) R45.next_to(R44, DOWN) self.play(Write(R45)) self.play(FadeOut(R43)) self.play(ApplyMethod(R44.next_to,align_mark,DOWN)) self.play(ApplyMethod(R45.next_to,R44, DOWN)) R46.next_to(R45, DOWN) self.play(Write(R46)) self.play(FadeOut(R44)) self.play(ApplyMethod(R45.next_to,align_mark,DOWN)) self.play(ApplyMethod(R46.next_to,R45, DOWN)) R47.next_to(R46, DOWN) self.play(Write(R47)) self.wait(2) self.play(FadeOut(R47)) self.play(FadeOut(R46)) self.play(FadeOut(R45)) self.play(FadeOut(Solve)) self.play(ApplyMethod(watermark.next_to,align_mark,DOWN)) self.play(FadeOut(watermark))