├── Shivji Sketch Using Turtle ├── shiv.gif ├── shiv (2).JPG ├── README.md └── Sourcecode.py ├── (6) Blue Sand Dunes.py ├── (1) 24-Point Star.py ├── (7) Twisted Ribbons.py ├── (4) Purple Gift Box Bottom.py ├── (2) Coloured Square Wave Pulse.py ├── (5) Hypnotic Squares.py ├── README.md ├── (3) Crimson Winding Staircase.py ├── (8) cardioid.py ├── (9) nephroid.py └── LICENSE /Shivji Sketch Using Turtle/shiv.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushal997-das/Designs_Using_Python_Turtle/HEAD/Shivji Sketch Using Turtle/shiv.gif -------------------------------------------------------------------------------- /Shivji Sketch Using Turtle/shiv (2).JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Kushal997-das/Designs_Using_Python_Turtle/HEAD/Shivji Sketch Using Turtle/shiv (2).JPG -------------------------------------------------------------------------------- /(6) Blue Sand Dunes.py: -------------------------------------------------------------------------------- 1 | from turtle import * 2 | speed(0) 3 | pencolor(0,7,90) 4 | fd(175) 5 | lt(90) 6 | fd(175) 7 | lt(90) 8 | for i in range (170,0,-5): 9 | fd(i) 10 | lt(90) 11 | fd(i) 12 | lt(90) 13 | lt(2) 14 | -------------------------------------------------------------------------------- /(1) 24-Point Star.py: -------------------------------------------------------------------------------- 1 | import turtle 2 | 3 | t = turtle.Turtle() 4 | 5 | for c in ['red', 'green', 'blue', 'purple']: 6 | for i in range (1,7): 7 | t.color(c) 8 | t.forward(75) 9 | t.left(90) 10 | t.left(15) 11 | -------------------------------------------------------------------------------- /(7) Twisted Ribbons.py: -------------------------------------------------------------------------------- 1 | import turtle 2 | 3 | t = turtle.Turtle() 4 | 5 | for c in ['purple','green','red']: 6 | for i in range(25): 7 | t.color(c) 8 | t.forward(75) 9 | t.left(91.2) 10 | t.up() 11 | t.forward(150) 12 | t.down() 13 | -------------------------------------------------------------------------------- /(4) Purple Gift Box Bottom.py: -------------------------------------------------------------------------------- 1 | import turtle 2 | 3 | t = turtle.Turtle() 4 | 5 | for c in ['purple']: 6 | for i in range(5,20): 7 | t.color(c) 8 | t.forward(75) 9 | t.left(90) 10 | t.forward(75) 11 | t.left(90) 12 | t.forward(75) 13 | t.left(90) 14 | t.forward(75-i) 15 | -------------------------------------------------------------------------------- /(2) Coloured Square Wave Pulse.py: -------------------------------------------------------------------------------- 1 | import turtle 2 | 3 | t = turtle.Turtle() 4 | 5 | for c in ['red', 'green', 'blue', 'purple']: 6 | t.color(c) 7 | t.forward(70) 8 | t.left(90) 9 | t.forward(70) 10 | t.right(90) 11 | t.forward(70) 12 | t.right(90) 13 | t.forward(70) 14 | t.left(90) 15 | -------------------------------------------------------------------------------- /(5) Hypnotic Squares.py: -------------------------------------------------------------------------------- 1 | from turtle import * 2 | speed(10) # comment this line if you want to see the turtle in action, but slower 3 | pencolor(128,0,128) # RGB coordinates of the color 'purple' 4 | fd(175) 5 | lt(90) 6 | fd(175) 7 | lt(90) 8 | for i in range (170,0,-5): 9 | fd(i) 10 | lt(90) 11 | fd(i) 12 | lt(90) 13 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Designs_Using_Python_Turtle 2 | This repository contains some Python codes using Turtle, which you can run to watch your Turtle draw beautiful patterns for you! 3 | 4 | These design codes can be run online at https://repl.it/languages/python_turtle by opening the respective files, copying and pasting the Python code into the Online Code Editor. 5 | -------------------------------------------------------------------------------- /(3) Crimson Winding Staircase.py: -------------------------------------------------------------------------------- 1 | from turtle import * 2 | speed(0) # fastest cursor speed of out Python Turtle 3 | 4 | x = 1 5 | 6 | while x < 200: 7 | r = 175 8 | g = 0 9 | b = 42 10 | pencolor(r,g,b) # Alabama Crimson RGB color selected from https://rgbcolorcode.com/color/alabama-crimson 11 | fd(50 + x) 12 | rt(90.911) 13 | x = x+1 14 | -------------------------------------------------------------------------------- /Shivji Sketch Using Turtle/README.md: -------------------------------------------------------------------------------- 1 |

2 | ![](https://img.shields.io/badge/Programming_Language-Python-blue.svg) 3 | ![](https://img.shields.io/badge/Main_Tool_Used-Turtle-orange.svg)

4 | Demo 5 | 6 | Turtle 7 | ------- 8 | > “Turtle” is a Python feature like a drawing board, which lets us command a turtle to draw all over it! 9 | 10 | Full documentation available at https://docs.python.org/3/library/turtle.html 11 | 12 | Pre-requisites: 13 | ---------------- 14 | Python3 15 | turtle 16 | -------------------------------------------------------------------------------- /(8) cardioid.py: -------------------------------------------------------------------------------- 1 | import turtle 2 | import math 3 | 4 | ts = turtle.getscreen() 5 | 6 | #this sets colormode from 1 to 255 (for rgb) 7 | ts.colormode(255) 8 | 9 | t = turtle.Turtle() 10 | t.speed(0.5) 11 | i = 1 #iterator 12 | flag = "running" 13 | 14 | side_length = 10 15 | circle_angle = 360 16 | sides = 60 17 | 18 | 19 | # calculating the number of angles in a polygon with 60 sides , value of angle between each adjacent sides, then finding the angles of the diagonals 20 | number_of_angles = (sides-2)*180 21 | each_angle = number_of_angles/sides 22 | print(each_angle) 23 | per_turn = each_angle/sides 24 | print(per_turn) 25 | 26 | radius = (side_length*60)/(math.pi*2) 27 | move_length = side_length 28 | 29 | 30 | 31 | while flag!="end": 32 | if i == 61: 33 | flag = "end" 34 | turn_angle = i*(per_turn) 35 | 36 | # t.pencolor(0,220,255) if (i<=sides/2) else t.pencolor(255,105,180) # half colors 37 | t.pencolor(0,220,255) if (i%2) else t.pencolor(255,105,180) # alternating colors 38 | 39 | # Could'nt find the perfect length of each diagonal, but all these values look good 40 | 41 | move_length = (radius*2)*i/(sides/2)*1.6 if (i<=sides/2) else (radius*2)*(sides-i)/(sides/2)*1.6 42 | # move_length = radius*2 43 | # move_length = side_length*(0.7*i) 44 | # move_length = i*(1.6) if (i<=sides/2) else (sides - i)*1.6 #value of phi(golden ratio) gave some weird lines but it kinda makes sense? 45 | # move_length = (radius*2*(i/sides/2)) if (i<=sides/2) else (radius*2*((sides-i)/sides/2)) # the ratio of radius and the diagonal count gives the golden ratio too! 46 | 47 | t.left(6) 48 | t.left(turn_angle) 49 | t.forward(move_length) 50 | t.penup() 51 | t.backward(move_length) 52 | t.pendown() 53 | t.right(turn_angle) 54 | t.forward(side_length) 55 | i += 1 56 | -------------------------------------------------------------------------------- /(9) nephroid.py: -------------------------------------------------------------------------------- 1 | import turtle 2 | import math 3 | 4 | ts = turtle.getscreen() 5 | ts.colormode(255) 6 | 7 | t = turtle.Turtle() 8 | t.speed(0.5) 9 | i = 1 #iterator 10 | flag = "running" 11 | 12 | side_length = 10 13 | circle_angle = 360 14 | sides = 60 15 | 16 | 17 | # calculating the number of angles in a polygon with 60 sides , value of angle between each adjacent sides, then finding the angles of the diagonals 18 | number_of_angles = (sides-2)*180 19 | each_angle = number_of_angles/sides 20 | 21 | per_turn = each_angle/sides 22 | 23 | radius = (side_length*60)/(math.pi*2) 24 | move_length = side_length 25 | 26 | 27 | 28 | while flag!="end": 29 | if i == 61: 30 | flag = "end" 31 | 32 | # nephroid is basically a cardioid with triple the angle at each point. 33 | turn_angle = 2*i*(per_turn) 34 | 35 | 36 | # t.pencolor(255,0,70) if (i<=sides/2) else t.pencolor(225,0,255) # half colors 37 | t.pencolor(255,0,70) if (i%2) else t.pencolor(225,0,255) #alternating colors 38 | 39 | # Could'nt find the perfect length of each diagonal, but all these values look good 40 | 41 | move_length = radius*2 if (i<=sides/2) else -(radius*2) 42 | # move_length = (radius*2)*i/(sides/2)*1.6 if (i<=sides/2) else -(radius*2)*(sides-i)/(sides/2)*1.6 43 | # move_length = side_length*(0.7*i) if (i<=sides/2) else -side_length*(0.7*(sides-i)) 44 | # move_length = i*(1.6) if (i<=sides/2) else -(sides - i)*1.6 #value of phi(golden ratio) gave some weird lines but it kinda makes sense? 45 | # move_length = (radius*2*(i/sides/2)) if (i<=sides/2) else -(radius*2*((sides-i)/sides/2)) # the ratio of radius and the diagonal count gives the golden ratio too! 46 | 47 | t.left(6) 48 | t.left(turn_angle) 49 | t.forward(move_length) 50 | t.penup() 51 | t.backward(move_length) 52 | t.pendown() 53 | t.right(turn_angle) 54 | t.forward(side_length) 55 | i += 1 56 | -------------------------------------------------------------------------------- /Shivji Sketch Using Turtle/Sourcecode.py: -------------------------------------------------------------------------------- 1 | import turtle 2 | t1 = turtle.Turtle() 3 | t1.pensize(0) 4 | t1.speed(3) 5 | #t1.color("white", "white") 6 | t1.color("white", "blue") 7 | turtle.bgcolor("black") 8 | t1.begin_fill() 9 | t1.left(90) 10 | t1.forward(200) 11 | t1.left(120) 12 | t1.forward(200) 13 | t1.left(45) 14 | t1.forward(150) 15 | t1.left(30) 16 | t1.forward(100) 17 | t1.right(30) 18 | t1.forward(30) 19 | t1.left(40) 20 | t1.forward(80) 21 | t1.left(30) 22 | t1.forward(201) 23 | t1.left(126) 24 | t1.forward(110) 25 | t1.right(80) 26 | t1.forward(75) 27 | t1.left(168) 28 | t1.forward(130) 29 | t1.right(160) 30 | t1.forward(58) 31 | t1.left(70) 32 | t1.forward(40) 33 | t1.right(45) 34 | t1.forward(30) 35 | t1.left(150) 36 | t1.forward(20) 37 | t1.right(103) 38 | t1.forward(200) 39 | t1.left(180) 40 | t1.forward(30) 41 | t1.left(160) 42 | t1.forward(40) 43 | t1.left(40) 44 | t1.forward(40) 45 | t2 = turtle.Turtle() 46 | t2.pensize(0) 47 | t2.speed(0) 48 | t2.color("black", "black") 49 | t2.begin_fill() 50 | t2.right(90) 51 | t2.forward(158) 52 | t2.right(110) 53 | t2.forward(20) 54 | t2.left(160) 55 | t2.forward(30) 56 | t2.left(130) 57 | t2.forward(30) 58 | t3 = turtle.Turtle() 59 | t3.pensize(0) 60 | t3.speed(0) 61 | t3.color("black", "black") 62 | t3.begin_fill() 63 | t3.left(90) 64 | t3.forward(10) 65 | t3.left(20) 66 | t3.forward(40) 67 | t3.right(40) 68 | t3.forward(40) 69 | t4 = turtle.Turtle() 70 | t4.pensize(0) 71 | t4.speed(0) 72 | t4.color("white", "white") 73 | t4.penup() 74 | t4.setposition(30, 0) 75 | t4.left(10) 76 | t4.forward(80) 77 | t4.pendown() 78 | t4.begin_fill() 79 | t4.right(170) 80 | t4.forward(80) 81 | t4.right(110) 82 | t4.forward(15) 83 | t4.end_fill() 84 | t4.penup() 85 | t4.right(180) 86 | t4.forward(30) 87 | t4.pendown() 88 | t4.begin_fill() 89 | t4.left(90) 90 | t4.forward(50) 91 | t4.right(160) 92 | t4.forward(50) 93 | t4.right(110) 94 | t4.forward(20) 95 | t4.end_fill() 96 | t5 = turtle.Turtle() 97 | t5.pensize(0) 98 | t5.speed(0) 99 | t5.color("black", "black") 100 | t5.penup() 101 | t5.setposition(-30, 0) 102 | t5.pendown() 103 | t5.begin_fill() 104 | t5.left(170) 105 | t5.forward(80) 106 | t5.left(170) 107 | t5.forward(90) 108 | t5.left(110) 109 | t5.forward(15) 110 | t5.end_fill() 111 | t5.penup() 112 | t5.right(180) 113 | t5.forward(30) 114 | t5.pendown() 115 | t5.begin_fill() 116 | t5.right(90) 117 | t5.forward(50) 118 | t5.left(160) 119 | t5.forward(50) 120 | t5.left(110) 121 | t5.forward(20) 122 | t5.end_fill() 123 | t6 = turtle.Turtle() 124 | t6.pensize(0) 125 | t6.speed(0) 126 | t6.color("white", "white") 127 | t6.penup() 128 | t6.left(90) 129 | t6.forward(240) 130 | t6.pendown() 131 | t6.begin_fill() 132 | t6.left(0) 133 | t6.forward(40) 134 | t6.right(100) 135 | t6.forward(150) 136 | t6.right(40) 137 | t6.forward(30) 138 | t6.right(130) 139 | t6.forward(167) 140 | t6.right(90) 141 | t6.forward(50) 142 | t6.end_fill() 143 | t6.penup() 144 | t6.left(0) 145 | t6.forward(20) 146 | t6.pendown() 147 | t6.begin_fill() 148 | t6.left(0) 149 | t6.forward(20) 150 | t6.right(85) 151 | t6.forward(90) 152 | t6.right(45) 153 | t6.forward(60) 154 | t6.right(145) 155 | t6.forward(135) 156 | t6.end_fill() 157 | t6.penup() 158 | t6.right(85) 159 | t6.forward(50) 160 | t6.pendown() 161 | t6.begin_fill() 162 | t6.left(0) 163 | t6.forward(10) 164 | t6.right(70) 165 | t6.forward(60) 166 | t6.right(80) 167 | t6.forward(40) 168 | t6.right(125) 169 | t6.forward(80) 170 | t6.end_fill() 171 | t6.penup() 172 | t6.right(85) 173 | t6.forward(50) 174 | t6.pendown() 175 | t6.begin_fill() 176 | t6.left(0) 177 | t6.forward(10) 178 | t6.right(70) 179 | t6.forward(40) 180 | t6.right(80) 181 | t6.forward(25) 182 | t6.right(120) 183 | t6.forward(50) 184 | t6.end_fill() 185 | t6.penup() 186 | t6.right(90) 187 | t6.forward(40) 188 | t6.pendown() 189 | t6.begin_fill() 190 | t6.left(0) 191 | t6.forward(40) 192 | t6.right(150) 193 | t6.forward(45) 194 | t6.right(120) 195 | t6.forward(20) 196 | t6.end_fill() 197 | t7 = turtle.Turtle() 198 | t7.pensize(0) 199 | t7.speed(0) 200 | t7.color("white", "white") 201 | t7.penup() 202 | t7.setposition(-70, 530) 203 | t7.pendown() 204 | t7.begin_fill() 205 | t7.right(70) 206 | t7.forward(60) 207 | t7.right(60) 208 | t7.forward(50) 209 | t7.right(40) 210 | t7.forward(60) 211 | t7.right(170) 212 | t7.forward(60) 213 | t7.left(30) 214 | t7.forward(30) 215 | t7.left(45) 216 | t7.forward(60) 217 | t7.end_fill() 218 | t8 = turtle.Turtle() 219 | t8.pensize(0) 220 | t8.speed(0) 221 | t8.color("white", "white") 222 | t8.penup() 223 | t8.setposition(5, 500) 224 | t8.pendown() 225 | t8.begin_fill() 226 | t8.left(20) 227 | t8.forward(100) 228 | t8.right(90) 229 | t8.forward(600) 230 | t8.left(175) 231 | t8.forward(630) 232 | t8.left(75) 233 | t8.forward(60) 234 | t8.left(46) 235 | t8.forward(110) 236 | t8.end_fill() 237 | t9 = turtle.Turtle() 238 | t9.pensize(0) 239 | t9.speed(0) 240 | t9.color("white", "white") 241 | t9.penup() 242 | t9.setposition(-230, -40) 243 | t9.pendown() 244 | t9.begin_fill() 245 | t9.right(75) 246 | t9.forward(110) 247 | t9.right(40) 248 | t9.forward(120) 249 | t9.right(140) 250 | t9.forward(90) 251 | t9.right(30) 252 | t9.forward(80) 253 | t9.right(100) 254 | t9.forward(30) 255 | t9.left(118) 256 | t9.forward(70) 257 | t9.end_fill() 258 | t9.penup() 259 | t9.right(177) 260 | t9.forward(120) 261 | t9.pendown() 262 | t9.color("black", "black") 263 | t9.begin_fill() 264 | t9.right(35) 265 | t9.forward(60) 266 | t9.right(125) 267 | t9.forward(40) 268 | t9.right(45) 269 | t9.forward(60) 270 | t9.right(125) 271 | t9.forward(50) 272 | t9.end_fill() 273 | t3.end_fill() 274 | t2.end_fill() 275 | t1.end_fill() 276 | t1.hideturtle() 277 | t3.hideturtle() 278 | t2.hideturtle() 279 | t4.hideturtle() 280 | t5.hideturtle() 281 | t6.hideturtle() 282 | t7.hideturtle() 283 | t8.hideturtle() 284 | t9.hideturtle() 285 | turtle.done() 286 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Creative Commons Legal Code 2 | 3 | CC0 1.0 Universal 4 | 5 | CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE 6 | LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN 7 | ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS 8 | INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES 9 | REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS 10 | PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM 11 | THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED 12 | HEREUNDER. 13 | 14 | Statement of Purpose 15 | 16 | The laws of most jurisdictions throughout the world automatically confer 17 | exclusive Copyright and Related Rights (defined below) upon the creator 18 | and subsequent owner(s) (each and all, an "owner") of an original work of 19 | authorship and/or a database (each, a "Work"). 20 | 21 | Certain owners wish to permanently relinquish those rights to a Work for 22 | the purpose of contributing to a commons of creative, cultural and 23 | scientific works ("Commons") that the public can reliably and without fear 24 | of later claims of infringement build upon, modify, incorporate in other 25 | works, reuse and redistribute as freely as possible in any form whatsoever 26 | and for any purposes, including without limitation commercial purposes. 27 | These owners may contribute to the Commons to promote the ideal of a free 28 | culture and the further production of creative, cultural and scientific 29 | works, or to gain reputation or greater distribution for their Work in 30 | part through the use and efforts of others. 31 | 32 | For these and/or other purposes and motivations, and without any 33 | expectation of additional consideration or compensation, the person 34 | associating CC0 with a Work (the "Affirmer"), to the extent that he or she 35 | is an owner of Copyright and Related Rights in the Work, voluntarily 36 | elects to apply CC0 to the Work and publicly distribute the Work under its 37 | terms, with knowledge of his or her Copyright and Related Rights in the 38 | Work and the meaning and intended legal effect of CC0 on those rights. 39 | 40 | 1. Copyright and Related Rights. A Work made available under CC0 may be 41 | protected by copyright and related or neighboring rights ("Copyright and 42 | Related Rights"). Copyright and Related Rights include, but are not 43 | limited to, the following: 44 | 45 | i. the right to reproduce, adapt, distribute, perform, display, 46 | communicate, and translate a Work; 47 | ii. moral rights retained by the original author(s) and/or performer(s); 48 | iii. publicity and privacy rights pertaining to a person's image or 49 | likeness depicted in a Work; 50 | iv. rights protecting against unfair competition in regards to a Work, 51 | subject to the limitations in paragraph 4(a), below; 52 | v. rights protecting the extraction, dissemination, use and reuse of data 53 | in a Work; 54 | vi. database rights (such as those arising under Directive 96/9/EC of the 55 | European Parliament and of the Council of 11 March 1996 on the legal 56 | protection of databases, and under any national implementation 57 | thereof, including any amended or successor version of such 58 | directive); and 59 | vii. other similar, equivalent or corresponding rights throughout the 60 | world based on applicable law or treaty, and any national 61 | implementations thereof. 62 | 63 | 2. Waiver. To the greatest extent permitted by, but not in contravention 64 | of, applicable law, Affirmer hereby overtly, fully, permanently, 65 | irrevocably and unconditionally waives, abandons, and surrenders all of 66 | Affirmer's Copyright and Related Rights and associated claims and causes 67 | of action, whether now known or unknown (including existing as well as 68 | future claims and causes of action), in the Work (i) in all territories 69 | worldwide, (ii) for the maximum duration provided by applicable law or 70 | treaty (including future time extensions), (iii) in any current or future 71 | medium and for any number of copies, and (iv) for any purpose whatsoever, 72 | including without limitation commercial, advertising or promotional 73 | purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each 74 | member of the public at large and to the detriment of Affirmer's heirs and 75 | successors, fully intending that such Waiver shall not be subject to 76 | revocation, rescission, cancellation, termination, or any other legal or 77 | equitable action to disrupt the quiet enjoyment of the Work by the public 78 | as contemplated by Affirmer's express Statement of Purpose. 79 | 80 | 3. Public License Fallback. Should any part of the Waiver for any reason 81 | be judged legally invalid or ineffective under applicable law, then the 82 | Waiver shall be preserved to the maximum extent permitted taking into 83 | account Affirmer's express Statement of Purpose. In addition, to the 84 | extent the Waiver is so judged Affirmer hereby grants to each affected 85 | person a royalty-free, non transferable, non sublicensable, non exclusive, 86 | irrevocable and unconditional license to exercise Affirmer's Copyright and 87 | Related Rights in the Work (i) in all territories worldwide, (ii) for the 88 | maximum duration provided by applicable law or treaty (including future 89 | time extensions), (iii) in any current or future medium and for any number 90 | of copies, and (iv) for any purpose whatsoever, including without 91 | limitation commercial, advertising or promotional purposes (the 92 | "License"). The License shall be deemed effective as of the date CC0 was 93 | applied by Affirmer to the Work. Should any part of the License for any 94 | reason be judged legally invalid or ineffective under applicable law, such 95 | partial invalidity or ineffectiveness shall not invalidate the remainder 96 | of the License, and in such case Affirmer hereby affirms that he or she 97 | will not (i) exercise any of his or her remaining Copyright and Related 98 | Rights in the Work or (ii) assert any associated claims and causes of 99 | action with respect to the Work, in either case contrary to Affirmer's 100 | express Statement of Purpose. 101 | 102 | 4. Limitations and Disclaimers. 103 | 104 | a. No trademark or patent rights held by Affirmer are waived, abandoned, 105 | surrendered, licensed or otherwise affected by this document. 106 | b. Affirmer offers the Work as-is and makes no representations or 107 | warranties of any kind concerning the Work, express, implied, 108 | statutory or otherwise, including without limitation warranties of 109 | title, merchantability, fitness for a particular purpose, non 110 | infringement, or the absence of latent or other defects, accuracy, or 111 | the present or absence of errors, whether or not discoverable, all to 112 | the greatest extent permissible under applicable law. 113 | c. Affirmer disclaims responsibility for clearing rights of other persons 114 | that may apply to the Work or any use thereof, including without 115 | limitation any person's Copyright and Related Rights in the Work. 116 | Further, Affirmer disclaims responsibility for obtaining any necessary 117 | consents, permissions or other rights required for any use of the 118 | Work. 119 | d. Affirmer understands and acknowledges that Creative Commons is not a 120 | party to this document and has no duty or obligation with respect to 121 | this CC0 or use of the Work. 122 | --------------------------------------------------------------------------------