1<!DOCTYPE html> 2<html> 3 <head> 4 <title>Study.com | dmca</title> 5 <link rel="icon" href="/stuff/logo.png"> 6 <link rel="stylesheet" href="/stuff/css/styles.css"> 7 <link rel="stylesheet" href="/stuff/css/alert.css"> 8 <link rel="stylesheet" href="/stuff/css/alert.css"> 9
9<script src="/stuff/js/loading.js"></script>
9 10
10<script src="/stuff/js/settings.js"></script>
10 11
11<script src="/stuff/js/moresettings.js"></script>
11 12
12<script src="/stuff/js/alert.js"></script>
12 13
13<script src="/stuff/js/messages.js"></script>
13 14 <link rel="icon" href="/stuff/logo.png"> 15 <meta property="og:title" content="Educational Resources and Online Learning Platform"> 16 <meta property="og:site_name" content="Educational Resources and Online Learning Platform"/> 17 <meta name="msapplication-TileColor" content="#00ffa6"> 18 <meta property="og:image" content="/stuff/other/ixl.png"> 19 <meta name="description" content="Mathematics, Science, English, History, Literature, Writing, Reading, Social Studies, Geography"> 20 <meta property="og:description" content="Mathematics, Science, English, History, Literature, Writing, Reading, Social Studies, Geography"> 21 </head> 22 <!-- Google tag (gtag.js) -->
vendor: 65 bytes, lines 22-23
22 23<script async src="https://www.googletagmanager.com/gtag/js?id=
23G-JMXEZ1F6QH
vendor: 13 bytes, line 23
23"></script>
24<script> 25
vendor: 138 bytes, lines 25-29
25window.dataLayer = window.dataLayer || []; 26 function gtag(){dataLayer.push(arguments);} 27 gtag('js', new Date()); 28 29 gtag('config', '
29G-JMXEZ1F6QH
vendor: 5 bytes, line 29
29');
30</script>
30 31 <body> 32 <div id="loading-screen"> 33 <div class="spinner"> 34 <div></div> 35 <div></div> 36 <div></div> 37 <div></div> 38 </div> 39 <br> 40 <br> 41 <br> 42 <h1 id="messageforyou">loading the loading...</h1> 43 <div id="dabottom"> 44 <h2 id="elementcounter"></h2> 45 <h1><a onclick="loadthething()" id="skiploading" style="display: none">skip loading</a></h1> 46 </div> 47 <div id="loadingbar"></div> 48 </div> 49 <div id="header"> 50 <img class="headericons" style="transform: scale(1.3);" src="/stuff/logo.png" onclick="window.location.href='/';"> 51 <div class="right"> 52 <img class="headericons" src="/stuff/icons/calc.svg" onclick="window.location.href='/math/';"> 53 <img class="headericons" src="/stuff/icons/border-all-solid.svg" onclick="window.location.href='/reading/';"> 54 <img class="headericons" src="/stuff/icons/handshake-solid.svg" onclick="window.location.href='/partners.html';"> 55 <img class="headericons" src="/stuff/icons/plus-solid.svg" onclick="window.location.href='/extras.html';"> 56 </div> 57 </div> 58 <div class="message-box" id="messageBox"></div> 59 <div id="roddyricchboxselect"> 60 <br> 61 <br> 62 <h1>privacy policy</h1> 63 <h2>last updated: 11/17/25</h2> 64 <p id="textthingidontfeellikespacing"></p> 65 </div> 66 <div id="footer"> 67 <p id="online">online users:</p> 68 <div class="right"> 69 <img class="headericons" src="/stuff/icons/settings.png" onclick="window.location.href='/settings.html';"> 70 <img class="headericons" id="userpfp" src="/stuff/icons/user.png" style="border-radius: 100%;" onclick="window.location.href='/profile/';"> 71 </div> 72 </div> 73 <img id="cornerimage" src="/stuff/themes/teto/teto.png"></img> 74 <div id="lowtaperfade"></div> 75 <div id="teacher-setup-dialogs-container"></div> 76
76<script src="/stuff/js/particles.js"></script>
76 77
77<script src="/app.js"></script>
77 78
78<script> 79 document.getElementById('textthingidontfeellikespacing').innerText = `Information We Collect 80When you use the service, we automatically collect your IP address for operational purposes. We also use Google Analytics to understand how our service is used, which may collect additional usage data. 81 82How We Use Your Information 83We use collected information to operate and improve the service. IP addresses help us prevent abuse and maintain service quality. Analytics data helps us understand usage patterns. 84 85Children's Privacy 86We do not knowingly collect personal information from children under 13. If we become aware that we have collected data from a child under 13, we will take steps to delete it. 87 88Third-Party Services 89We use Google Analytics, which is governed by Google's privacy policy. Google may use cookies and other tracking technologies to collect information about your use of the service. 90 91Data Security 92We implement reasonable security measures to protect your information, but no method of transmission over the internet is 100% secure. 93 94Changes to Privacy Policy 95We may update this privacy policy from time to time. Changes will be posted on this page with an updated date. 96 97` 98 let socket 99function connectWebSocket() { 100 socket = new WebSocket(getprotocol() + window.location.host + '/api/onlineusers'); 101 102 socket.onmessage = (event) => { 103 const data = JSON.parse(event.data); 104 document.getElementById("online").innerText = `online users: ${data.users}`; 105 sessionStorage.setItem('onlineuserslocal', data.users) 106}; 107 108socket.onclose = () => { 109 console.warn(`attempting to get online users...`, event); 110 setTimeout(connectWebSocket, 5000); 111 document.getElementById("online").innerText = `online users: ${sessionStorage.setItem('onlineuserslocal', data.users)}`; 112}; 113 114socket.onerror = function(error) { 115 console.error(`WebSocket error:`, error); 116 webSocket.close(); 117 }; 118} 119connectWebSocket(); 120function loadthething(){ 121 const loadingScreen = document.getElementById('loading-screen'); 122 setTimeout(function() { 123 loadingScreen.classList.add('fade-out'); 124 setTimeout(function() { 125 document.body.classList.remove('loading'); 126 }, 100); 127 }, 100); 128 } 129 </script>
129 130
130<script src="https://www.gstatic.com/firebasejs/8.6.8/firebase-app.js"></script>
130 131
131<script src="https://www.gstatic.com/firebasejs/8.6.8/firebase-auth.js"></script>
131 132
132<script src="https://www.gstatic.com/firebasejs/8.6.8/firebase-database.js"></script>
132 133
133<script> 134 // Your web app's Firebase configuration 135 var firebaseConfig = { 136 apiKey: "AIzaSyAydynhitaENUPOr8S-glDFflJMZCZbZYY", 137 authDomain: "nfgrhtaer4wt4yh4r.firebaseapp.com", 138 projectId: "nfgrhtaer4wt4yh4r", 139 storageBucket: "nfgrhtaer4wt4yh4r.appspot.com", 140 messagingSenderId: "741433768105", 141 appId: "1:741433768105:web:fad81fc01ccb2fddc951b8" 142 }; 143 firebase.initializeApp(firebaseConfig); 144 const auth = firebase.auth(); 145 const database = firebase.database(); 146 var provider = new firebase.auth.GoogleAuthProvider(); 147 148 function googleSignIn() { 149 auth.signInWithPopup(provider) 150 .then((result) => { 151 const user = result.user; 152 console.log('User:', user); 153 displayUserProfile(user); 154 }).catch((error) => { 155 console.error('Error during sign-in:', error); 156 }); 157 } 158 function displayUserProfile(user) { 159 if (user) { 160 const profilePicUrl = user.photoURL; 161 document.getElementById('userpfp').src = profilePicUrl; 162 } 163 } 164 165 auth.onAuthStateChanged((user) => { 166 if (user) { 167 displayUserProfile(user); 168 } else { 169 document.getElementById('userpfp').src = '/stuff/icons/user.png'; 170 } 171 }); 172 </script>
172 173 </body> 174</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.