Snippets Collections
Creating an audit trail in SQL involves capturing and recording changes made to the data in a database, along with metadata like who made the change, when it was made, and what the original and new values were. Here are some common methods to create an audit trail in SQL:

### 1. *Using Triggers*
Triggers are a common way to create an audit trail in SQL. A trigger can be set up to fire before or after an INSERT, UPDATE, or DELETE operation. The trigger then logs the changes into an audit table.

#### Example:
Suppose you have a table named employees and you want to audit changes.

1. *Create an Audit Table:*
    sql
    CREATE TABLE employees_audit (
        audit_id INT AUTO_INCREMENT PRIMARY KEY,
        employee_id INT,
        action VARCHAR(10),
        old_value VARCHAR(255),
        new_value VARCHAR(255),
        changed_by VARCHAR(50),
        changed_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
    );
    

2. **Create a Trigger for UPDATE:**
    sql
    CREATE TRIGGER employees_update_audit
    AFTER UPDATE ON employees
    FOR EACH ROW
    BEGIN
        INSERT INTO employees_audit (employee_id, action, old_value, new_value, changed_by)
        VALUES (
            OLD.employee_id, 
            'UPDATE', 
            OLD.salary, 
            NEW.salary, 
            USER()
        );
    END;
    

This trigger captures changes made to the salary column and stores the old and new values, the action performed, who performed the action, and when.

3. **Create Triggers for INSERT and DELETE:**
    Similar triggers can be created for INSERT and DELETE operations.

### 2. *Change Data Capture (CDC)*
If your database supports Change Data Capture (CDC), you can enable this feature to automatically track changes without creating manual triggers.

- *SQL Server Example:*
    sql
    EXEC sys.sp_cdc_enable_table 
        @source_schema = 'dbo', 
        @source_name = 'employees', 
        @role_name = NULL;
    

- *Oracle Example:*
    Oracle has its own built-in auditing features that can be configured via DBMS packages or directly using the AUDIT command.

### 3. *Manual Logging*
If you want to avoid using triggers, you can manually log changes by writing data into an audit table within your SQL operations.

#### Example:
sql
UPDATE employees 
SET salary = 60000 
WHERE employee_id = 101;

INSERT INTO employees_audit (employee_id, action, old_value, new_value, changed_by)
VALUES (101, 'UPDATE', '50000', '60000', 'admin');


### 4. *Temporal Tables*
Some databases like SQL Server 2016+ support temporal tables, which automatically keep track of historical data. You can enable a table to be temporal, and SQL Server will automatically manage the history.

#### Example:
sql
CREATE TABLE employees (
    employee_id INT PRIMARY KEY,
    salary INT,
    SysStartTime DATETIME2 GENERATED ALWAYS AS ROW START,
    SysEndTime DATETIME2 GENERATED ALWAYS AS ROW END,
    PERIOD FOR SYSTEM_TIME (SysStartTime, SysEndTime)
) WITH (SYSTEM_VERSIONING = ON);


### Best Practices:
- *Minimal Performance Impact:* Triggers can introduce performance overhead, so ensure they're optimized and only track necessary data.
- *Data Integrity:* Ensure that the audit trail can't be easily tampered with by using appropriate permissions.
- *Compliance:* Ensure that your audit trail complies with legal and regulatory requirements for data retention and privacy.

By implementing one or more of these methods, you can effectively create an audit trail in SQL to track changes in your database.
const animals = ['hippo', 'tiger', 'lion', 'seal', 'cheetah', 'monkey', 'salamander', 'elephant'];

const foundAnimal = animals.findIndex(a => {
  return a === 'elephant';
});
console.log(animals[foundAnimal]); // uses function's returned index to display value

const startsWithS = animals.findIndex(letter => {
  return letter[0] === 's';
});
console.log(startsWithS); // function returns index number of first TRUE element
console.log(animals[startsWithS]); // used to display that element's value
Select id, name, Parent__r.name, Parent__r.id from Child__c
 
Select id, name, Parent__r.name,(SELECT id, name, amount__c FROM Children__r) from Parent__c
const favoriteWords = ['nostalgia', 'hyperbole', 'fervent', 'esoteric', 'serene'];

// Call .filter() on favoriteWords below

const longFavoriteWords = favoriteWords.filter(word => {
  return word.length > 7;
});

console.log(longFavoriteWords);
 const searchParams = new URLSearchParams(window.location.search);
  const id = searchParams.get('id');
  console.log(id)
$ git clone https://github.com/YOUR-USERNAME/YOUR-REPOSITORY
<html>	
   
   <input id="contact" name="address">
 
 <script>
 
    document.getElementById("contact").attribute = "phone";
	
    //ALTERNATIVE METHOD TO CHANGE
    document.getElementById("contact").setAttribute('name', 'phone');	
 
  </script>
 
</html>
{
	"blocks": [
		{
			"type": "header",
			"text": {
				"type": "plain_text",
				"text": ":star: What's on in Melbourne this week! :star:"
			}
		},
		{
			"type": "section",
			"text": {
				"type": "mrkdwn",
				"text": "\n\n Hey Melbourne, happy Monday! Please see below for what's on this week! "
			}
		},
		{
			"type": "divider"
		},
		{
			"type": "header",
			"text": {
				"type": "plain_text",
				"text": "Xero Café :coffee:",
				"emoji": true
			}
		},
		{
			"type": "section",
			"text": {
				"type": "mrkdwn",
				"text": "\n :new-thing: This week we are offering some *Arnott's Classics!* \n\n We have Gluten Free Scotch Fingers, Hundreds and Thousands Biscuits & Monte Carlo Biscuits!\n\n *Weekly Café Special*: _Hazelnut Latte_"
			}
		},
		{
			"type": "header",
			"text": {
				"type": "plain_text",
				"text": " Wednesday, 21st August :calendar-date-21:",
				"emoji": true
			}
		},
		{
			"type": "section",
			"text": {
				"type": "mrkdwn",
				"text": "\n\n:late-cake: *Afternoon Tea*: From *2pm* in the *L1, L2 and L3* kitchens! Check out the menu in the thread! :thread: \n:massage:*Wellbeing - Massage*: Book a session <https://bookings.corporatebodies.com/|*here*> to relax and unwind. \n *Username:* xero \n *Password:* 1234"
			}
		},
		{
			"type": "header",
			"text": {
				"type": "plain_text",
				"text": " Thursday, 22nd August :calendar-date-22:",
				"emoji": true
			}
		},
		{
			"type": "section",
			"text": {
				"type": "mrkdwn",
				"text": ":breakfast: *Breakfast*: Provided by *Kartel Catering* from *8:30am - 10:30am* in the Wominjeka Breakout Space.\n\n :cowboyblob: *Nashville Social:* 4pm - 6pm in the Wominjeka Breakout Space!"
			}
		},
		{
			"type": "divider"
		},
		{
			"type": "section",
			"text": {
				"type": "mrkdwn",
				"text": "Stay tuned to this channel for more details, check out the <https://calendar.google.com/calendar/u/0?cid=Y19xczkyMjk5ZGlsODJzMjA4aGt1b3RnM2t1MEBncm91cC5jYWxlbmRhci5nb29nbGUuY29t|*Melbourne Social Calendar*>, and get ready to Boost your workdays!\n\nLove,\nWX Team :party-wx:"
			}
		}
	]
}
$stripe = new \Stripe\StripeClient('sk_test_51KX5RA...CV00KMzNeBbs
sk_test_51KX5RAHpz0yDkAJjgP65eUwiAJMY1mHeA4LoeX6162wxO6RDyGFZaQR6mOY1X9e7PpVAXkC1AT1HWNfE7ri3HRCV00KMzNeBbs
');
$stripe->customers->update(
  'cus_NffrFeUfNV2Hib',
  ['metadata' => ['order_id' => '6735']]
);
{
  "log": {
    "version": "1.2",
    "creator": {
      "name": "WebInspector",
      "version": "537.36"
    },
    "pages": [],
    "entries": [
      {
        "_initiator": {
          "type": "script",
          "stack": {
            "callFrames": [],
            "parent": {
              "description": "Image",
              "callFrames": [
                {
                  "functionName": "sendEventWithTarget",
                  "scriptId": "10",
                  "url": "https://js.rbxcdn.com/08a545ae1503441b55f5236794feccec.js",
                  "lineNumber": 134,
                  "columnNumber": 130
                },
                {
                  "functionName": "Ml.onInterval",
                  "scriptId": "39",
                  "url": "https://js.rbxcdn.com/69f3f6b85c27f2361c01e29eca7868d8d0becfa435bf0173c7b1d11207fe15be.js",
                  "lineNumber": 7,
                  "columnNumber": 387930
                },
                {
                  "functionName": "Ml.window.Worker.worker.worker.onmessage",
                  "scriptId": "39",
                  "url": "https://js.rbxcdn.com/69f3f6b85c27f2361c01e29eca7868d8d0becfa435bf0173c7b1d11207fe15be.js",
                  "lineNumber": 7,
                  "columnNumber": 388403
                }
              ],
              "parentId": {
                "id": "1",
                "debuggerId": "2503892074991461023.7174108864595547422"
              }
            }
          }
        },
        "_priority": "Low",
        "_resourceType": "image",
        "cache": {},
        "request": {
          "method": "GET",
          "url": "https://ecsv2.roblox.com/www/e.png?evt=pageHeartbeat_v2&ctx=heartbeat2&url=https%3A%2F%2Fwww.roblox.com%2Fmy%2Favatar&lt=2024-08-09T19%3A37%3A33.374Z&gid=-1210413020&sid=2cd50938-0f23-4613-92c1-4e08463a1e73",
          "httpVersion": "h3",
          "headers": [
            {
              "name": ":authority",
              "value": "ecsv2.roblox.com"
            },
            {
              "name": ":method",
              "value": "GET"
            },
            {
              "name": ":path",
              "value": "/www/e.png?evt=pageHeartbeat_v2&ctx=heartbeat2&url=https%3A%2F%2Fwww.roblox.com%2Fmy%2Favatar&lt=2024-08-09T19%3A37%3A33.374Z&gid=-1210413020&sid=2cd50938-0f23-4613-92c1-4e08463a1e73"
            },
            {
              "name": ":scheme",
              "value": "https"
            },
            {
              "name": "accept",
              "value": "image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8"
            },
            {
              "name": "accept-encoding",
              "value": "gzip, deflate, br, zstd"
            },
            {
              "name": "accept-language",
              "value": "en-US,en;q=0.9"
            },
            {
              "name": "cookie",
              "value": "GuestData=UserID=-1210413020; RBXSource=rbx_acquisition_time=08/04/2024 17:40:28&rbx_acquisition_referrer=&rbx_medium=Social&rbx_source=&rbx_campaign=&rbx_adgroup=&rbx_keyword=&rbx_matchtype=&rbx_send_info=0; __utmz=200924205.1722793505.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); .RBXIDCHECK=caebfbee-d232-4825-b7eb-8318f1da9c33; rbxas=fb39906bfdc34fdf16f4c815f48b18a791df8dffd4a2d419ae03332669d9432c; RBXEventTrackerV2=CreateDate=08/04/2024 12:46:11&rbxid=1525895574&browserid=1722607566239004; __utmc=200924205; _ga=GA1.1.781422761.1723013326; .ROBLOSECURITY=_|WARNING:-DO-NOT-SHARE-THIS.--Sharing-this-will-allow-someone-to-log-in-as-you-and-to-steal-your-ROBUX-and-items.|_D12C786F9BC5858284B5622D28449D7EC2598C5666BA0CDB504D72B45B9E5F1B4784C54A03EC1B28371C8DCD3363D724B4E3E7826ABD5E643A9B985A4B967BFEEA9C02EC89ADE3489B3C81BD1F92E8D81C0D8461C6DBE8CEE693E7C98302DD329569F63CCD934F5E158869DCFE23F56D32FEC3CF4BC6D366A25C1154911DEFE551EA6EA59D3792F4C35EB99C4BDC20E20EFF992E4D0CD414324B39FE35F079586068C40E192678F1002A87A6FDF9EFD7710618ABEC907FDF973FE488A6E29C3ECC99E5C28587BB17D7BFC7D9B208D87887EEFB5876CD8F86DFCF8F07CA6CABAF62767BF90F1578345B87478C1C9A15F6A389DD4FCB286B6DE9FD8CCFF5FE26A588E37027B0C1460F1BCE329C68F36DB322D1B0AEB187538B687971B802CC2D04F47ACF86AF0A07C3D538FB715107213FAFE2CDF578AFA52E8581753B1F1E176E50E74FDA2514CC4E9CEFA4D4DAB5DF90BCC5D27A0813387FE84C1E6AD236E2A4C01E3A87065FB397F2577A71B881BA837275B0F819347F1ED3FC7B177334DD2E855D06D4E89FF02CF059F538B6D820A318845DB2FB32FA7DA47ADA545C0A33B1AD24CDCDF22F725AD06C95D83E96F66A7403BA787D8A79969F002B0C98F24260E3A889B430504E19C1A3B81B5B08ED80C2EE676760D726612ABBA2E42EC0AEE8252862CA36553DACF10BD9C4D9106301983EA41B203C562FB92812EE59BADCCA48E847E01510C6E1813853E3BE3F39F7CBBCF28C6FFC4EE150E10DCE787043C0C7C36613B72AF05A708CF1AD4A4CB387F0CA0A1C12E7FEFA902D13724F10C11310D64BC86176573D10846B47E726B792EB287917DA2525F8856F9476C214EBD2E9AAAE34B29EF51172A15A782767FE7277F7B8E9CEEAEECBC3CBDC2F536463FB21C0C4CC7F63F4D686C1C687BEDB568A779BF8C33940CE87BF4AD88DBE4F42C27E24AADFEB754DE8FE2698AD55EF111A1663ADAC9A23B653F81B99F486788710A28052081D606E98A62E139F66B07ADF9423839800A5906A34BE8A627C7DDD9381805A70466FA5D07914EB453C4A96121AFBC6B1; RBXSessionTracker=sessionid=2cd50938-0f23-4613-92c1-4e08463a1e73; _ga_F8VP9T1NT3=GS1.1.1723218656.3.1.1723218671.0.0.0; rbx-ip2=1; __utma=200924205.337854883.1722793505.1723218657.1723232212.12; __utmb=200924205.0.10.1723232212"
            },
            {
              "name": "priority",
              "value": "i"
            },
            {
              "name": "referer",
              "value": "https://www.roblox.com/"
            },
            {
              "name": "sec-ch-ua",
              "value": "\"Not)A;Brand\";v=\"99\", \"Google Chrome\";v=\"127\", \"Chromium\";v=\"127\""
            },
            {
              "name": "sec-ch-ua-mobile",
              "value": "?0"
            },
            {
              "name": "sec-ch-ua-platform",
              "value": "\"Windows\""
            },
            {
              "name": "sec-fetch-dest",
              "value": "image"
            },
            {
              "name": "sec-fetch-mode",
              "value": "no-cors"
            },
            {
              "name": "sec-fetch-site",
              "value": "same-site"
            },
            {
              "name": "user-agent",
              "value": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36"
            }
          ],
          "queryString": [
            {
              "name": "evt",
              "value": "pageHeartbeat_v2"
            },
            {
              "name": "ctx",
              "value": "heartbeat2"
            },
            {
              "name": "url",
              "value": "https%3A%2F%2Fwww.roblox.com%2Fmy%2Favatar"
            },
            {
              "name": "lt",
              "value": "2024-08-09T19%3A37%3A33.374Z"
            },
            {
              "name": "gid",
              "value": "-1210413020"
            },
            {
              "name": "sid",
              "value": "2cd50938-0f23-4613-92c1-4e08463a1e73"
            }
          ],
          "cookies": [
            {
              "name": "GuestData",
              "value": "UserID=-1210413020",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2025-09-06T14:06:05.665Z",
              "httpOnly": false,
              "secure": false
            },
            {
              "name": "RBXSource",
              "value": "rbx_acquisition_time=08/04/2024 17:40:28&rbx_acquisition_referrer=&rbx_medium=Social&rbx_source=&rbx_campaign=&rbx_adgroup=&rbx_keyword=&rbx_matchtype=&rbx_send_info=0",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2024-09-03T17:40:28.482Z",
              "httpOnly": false,
              "secure": false
            },
            {
              "name": "__utmz",
              "value": "200924205.1722793505.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2025-02-08T07:36:52.000Z",
              "httpOnly": false,
              "secure": false
            },
            {
              "name": ".RBXIDCHECK",
              "value": "caebfbee-d232-4825-b7eb-8318f1da9c33",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2025-09-08T17:46:10.249Z",
              "httpOnly": true,
              "secure": true
            },
            {
              "name": "rbxas",
              "value": "fb39906bfdc34fdf16f4c815f48b18a791df8dffd4a2d419ae03332669d9432c",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2025-09-08T17:46:10.249Z",
              "httpOnly": true,
              "secure": true
            },
            {
              "name": "RBXEventTrackerV2",
              "value": "CreateDate=08/04/2024 12:46:11&rbxid=1525895574&browserid=1722607566239004",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2025-09-08T17:46:10.688Z",
              "httpOnly": false,
              "secure": false
            },
            {
              "name": "__utmc",
              "value": "200924205",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "1969-12-31T23:59:59.000Z",
              "httpOnly": false,
              "secure": false
            },
            {
              "name": "_ga",
              "value": "GA1.1.781422761.1723013326",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2025-09-13T15:50:57.685Z",
              "httpOnly": false,
              "secure": false
            },
            {
              "name": ".ROBLOSECURITY",
              "value": "_|WARNING:-DO-NOT-SHARE-THIS.--Sharing-this-will-allow-someone-to-log-in-as-you-and-to-steal-your-ROBUX-and-items.|_D12C786F9BC5858284B5622D28449D7EC2598C5666BA0CDB504D72B45B9E5F1B4784C54A03EC1B28371C8DCD3363D724B4E3E7826ABD5E643A9B985A4B967BFEEA9C02EC89ADE3489B3C81BD1F92E8D81C0D8461C6DBE8CEE693E7C98302DD329569F63CCD934F5E158869DCFE23F56D32FEC3CF4BC6D366A25C1154911DEFE551EA6EA59D3792F4C35EB99C4BDC20E20EFF992E4D0CD414324B39FE35F079586068C40E192678F1002A87A6FDF9EFD7710618ABEC907FDF973FE488A6E29C3ECC99E5C28587BB17D7BFC7D9B208D87887EEFB5876CD8F86DFCF8F07CA6CABAF62767BF90F1578345B87478C1C9A15F6A389DD4FCB286B6DE9FD8CCFF5FE26A588E37027B0C1460F1BCE329C68F36DB322D1B0AEB187538B687971B802CC2D04F47ACF86AF0A07C3D538FB715107213FAFE2CDF578AFA52E8581753B1F1E176E50E74FDA2514CC4E9CEFA4D4DAB5DF90BCC5D27A0813387FE84C1E6AD236E2A4C01E3A87065FB397F2577A71B881BA837275B0F819347F1ED3FC7B177334DD2E855D06D4E89FF02CF059F538B6D820A318845DB2FB32FA7DA47ADA545C0A33B1AD24CDCDF22F725AD06C95D83E96F66A7403BA787D8A79969F002B0C98F24260E3A889B430504E19C1A3B81B5B08ED80C2EE676760D726612ABBA2E42EC0AEE8252862CA36553DACF10BD9C4D9106301983EA41B203C562FB92812EE59BADCCA48E847E01510C6E1813853E3BE3F39F7CBBCF28C6FFC4EE150E10DCE787043C0C7C36613B72AF05A708CF1AD4A4CB387F0CA0A1C12E7FEFA902D13724F10C11310D64BC86176573D10846B47E726B792EB287917DA2525F8856F9476C214EBD2E9AAAE34B29EF51172A15A782767FE7277F7B8E9CEEAEECBC3CBDC2F536463FB21C0C4CC7F63F4D686C1C687BEDB568A779BF8C33940CE87BF4AD88DBE4F42C27E24AADFEB754DE8FE2698AD55EF111A1663ADAC9A23B653F81B99F486788710A28052081D606E98A62E139F66B07ADF9423839800A5906A34BE8A627C7DDD9381805A70466FA5D07914EB453C4A96121AFBC6B1",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2025-09-12T17:52:14.190Z",
              "httpOnly": true,
              "secure": true
            },
            {
              "name": "RBXSessionTracker",
              "value": "sessionid=2cd50938-0f23-4613-92c1-4e08463a1e73",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2024-08-09T23:36:53.353Z",
              "httpOnly": false,
              "secure": false
            },
            {
              "name": "_ga_F8VP9T1NT3",
              "value": "GS1.1.1723218656.3.1.1723218671.0.0.0",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2025-09-13T15:51:11.309Z",
              "httpOnly": false,
              "secure": false
            },
            {
              "name": "rbx-ip2",
              "value": "1",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2024-08-09T20:36:50.172Z",
              "httpOnly": false,
              "secure": false
            },
            {
              "name": "__utma",
              "value": "200924205.337854883.1722793505.1723218657.1723232212.12",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2025-09-13T19:36:52.514Z",
              "httpOnly": false,
              "secure": false
            },
            {
              "name": "__utmb",
              "value": "200924205.0.10.1723232212",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2024-08-09T20:06:52.000Z",
              "httpOnly": false,
              "secure": false
            }
          ],
          "headersSize": -1,
          "bodySize": 0
        },
        "response": {
          "status": 200,
          "statusText": "",
          "httpVersion": "h3",
          "headers": [
            {
              "name": "alt-svc",
              "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=259200"
            },
            {
              "name": "content-length",
              "value": "68"
            },
            {
              "name": "content-type",
              "value": "image/png"
            },
            {
              "name": "date",
              "value": "Fri, 09 Aug 2024 19:37:33 GMT"
            },
            {
              "name": "nel",
              "value": "{\"report_to\":\"network-errors\",\"max_age\":604800,\"success_fraction\":0.001,\"failure_fraction\":1}"
            },
            {
              "name": "report-to",
              "value": "{\"group\":\"network-errors\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://ncs.roblox.com/upload\"}]}"
            },
            {
              "name": "server",
              "value": "public-gateway"
            },
            {
              "name": "strict-transport-security",
              "value": "max-age=3600"
            },
            {
              "name": "vary",
              "value": "Origin"
            },
            {
              "name": "x-envoy-upstream-service-time",
              "value": "1"
            },
            {
              "name": "x-ratelimit-limit",
              "value": "3600000, 3600000;w=60, 3600000;w=60"
            },
            {
              "name": "x-ratelimit-remaining",
              "value": "3599995"
            },
            {
              "name": "x-ratelimit-reset",
              "value": "26"
            },
            {
              "name": "x-roblox-edge",
              "value": "bom1"
            },
            {
              "name": "x-roblox-region",
              "value": "us-central_rbx"
            }
          ],
          "cookies": [],
          "content": {
            "size": 68,
            "mimeType": "image/png",
            "text": "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVQYV2NgYAAAAAMAAWgmWQ0AAAAASUVORK5CYII=",
            "encoding": "base64"
          },
          "redirectURL": "",
          "headersSize": -1,
          "bodySize": -1,
          "_transferSize": 684,
          "_error": null,
          "_fetchedViaServiceWorker": false
        },
        "serverIPAddress": "128.116.104.4",
        "startedDateTime": "2024-08-09T19:37:33.374Z",
        "time": 320.2770000207238,
        "timings": {
          "blocked": 5.168000029683113,
          "dns": -1,
          "ssl": -1,
          "connect": -1,
          "send": 0.7090000000000001,
          "wait": 311.9660000256076,
          "receive": 2.4339999654330313,
          "_blocked_queueing": 2.022000029683113,
          "_workerStart": -1,
          "_workerReady": -1,
          "_workerFetchStart": -1,
          "_workerRespondWithSettled": -1
        }
      },
      {
        "_initiator": {
          "type": "script",
          "stack": {
            "callFrames": [],
            "parent": {
              "description": "Image",
              "callFrames": [
                {
                  "functionName": "sendEventWithTarget",
                  "scriptId": "10",
                  "url": "https://js.rbxcdn.com/08a545ae1503441b55f5236794feccec.js",
                  "lineNumber": 134,
                  "columnNumber": 130
                },
                {
                  "functionName": "Ml.onInterval",
                  "scriptId": "39",
                  "url": "https://js.rbxcdn.com/69f3f6b85c27f2361c01e29eca7868d8d0becfa435bf0173c7b1d11207fe15be.js",
                  "lineNumber": 7,
                  "columnNumber": 387930
                },
                {
                  "functionName": "Ml.window.Worker.worker.worker.onmessage",
                  "scriptId": "39",
                  "url": "https://js.rbxcdn.com/69f3f6b85c27f2361c01e29eca7868d8d0becfa435bf0173c7b1d11207fe15be.js",
                  "lineNumber": 7,
                  "columnNumber": 388403
                }
              ],
              "parentId": {
                "id": "2",
                "debuggerId": "2503892074991461023.7174108864595547422"
              }
            }
          }
        },
        "_priority": "Low",
        "_resourceType": "image",
        "cache": {},
        "request": {
          "method": "GET",
          "url": "https://ecsv2.roblox.com/www/e.png?evt=pageHeartbeat_v2&ctx=heartbeat3&url=https%3A%2F%2Fwww.roblox.com%2Fmy%2Favatar&lt=2024-08-09T19%3A37%3A53.393Z&gid=-1210413020&sid=2cd50938-0f23-4613-92c1-4e08463a1e73",
          "httpVersion": "h3",
          "headers": [
            {
              "name": ":authority",
              "value": "ecsv2.roblox.com"
            },
            {
              "name": ":method",
              "value": "GET"
            },
            {
              "name": ":path",
              "value": "/www/e.png?evt=pageHeartbeat_v2&ctx=heartbeat3&url=https%3A%2F%2Fwww.roblox.com%2Fmy%2Favatar&lt=2024-08-09T19%3A37%3A53.393Z&gid=-1210413020&sid=2cd50938-0f23-4613-92c1-4e08463a1e73"
            },
            {
              "name": ":scheme",
              "value": "https"
            },
            {
              "name": "accept",
              "value": "image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8"
            },
            {
              "name": "accept-encoding",
              "value": "gzip, deflate, br, zstd"
            },
            {
              "name": "accept-language",
              "value": "en-US,en;q=0.9"
            },
            {
              "name": "cookie",
              "value": "GuestData=UserID=-1210413020; RBXSource=rbx_acquisition_time=08/04/2024 17:40:28&rbx_acquisition_referrer=&rbx_medium=Social&rbx_source=&rbx_campaign=&rbx_adgroup=&rbx_keyword=&rbx_matchtype=&rbx_send_info=0; __utmz=200924205.1722793505.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); .RBXIDCHECK=caebfbee-d232-4825-b7eb-8318f1da9c33; rbxas=fb39906bfdc34fdf16f4c815f48b18a791df8dffd4a2d419ae03332669d9432c; RBXEventTrackerV2=CreateDate=08/04/2024 12:46:11&rbxid=1525895574&browserid=1722607566239004; __utmc=200924205; _ga=GA1.1.781422761.1723013326; .ROBLOSECURITY=_|WARNING:-DO-NOT-SHARE-THIS.--Sharing-this-will-allow-someone-to-log-in-as-you-and-to-steal-your-ROBUX-and-items.|_D12C786F9BC5858284B5622D28449D7EC2598C5666BA0CDB504D72B45B9E5F1B4784C54A03EC1B28371C8DCD3363D724B4E3E7826ABD5E643A9B985A4B967BFEEA9C02EC89ADE3489B3C81BD1F92E8D81C0D8461C6DBE8CEE693E7C98302DD329569F63CCD934F5E158869DCFE23F56D32FEC3CF4BC6D366A25C1154911DEFE551EA6EA59D3792F4C35EB99C4BDC20E20EFF992E4D0CD414324B39FE35F079586068C40E192678F1002A87A6FDF9EFD7710618ABEC907FDF973FE488A6E29C3ECC99E5C28587BB17D7BFC7D9B208D87887EEFB5876CD8F86DFCF8F07CA6CABAF62767BF90F1578345B87478C1C9A15F6A389DD4FCB286B6DE9FD8CCFF5FE26A588E37027B0C1460F1BCE329C68F36DB322D1B0AEB187538B687971B802CC2D04F47ACF86AF0A07C3D538FB715107213FAFE2CDF578AFA52E8581753B1F1E176E50E74FDA2514CC4E9CEFA4D4DAB5DF90BCC5D27A0813387FE84C1E6AD236E2A4C01E3A87065FB397F2577A71B881BA837275B0F819347F1ED3FC7B177334DD2E855D06D4E89FF02CF059F538B6D820A318845DB2FB32FA7DA47ADA545C0A33B1AD24CDCDF22F725AD06C95D83E96F66A7403BA787D8A79969F002B0C98F24260E3A889B430504E19C1A3B81B5B08ED80C2EE676760D726612ABBA2E42EC0AEE8252862CA36553DACF10BD9C4D9106301983EA41B203C562FB92812EE59BADCCA48E847E01510C6E1813853E3BE3F39F7CBBCF28C6FFC4EE150E10DCE787043C0C7C36613B72AF05A708CF1AD4A4CB387F0CA0A1C12E7FEFA902D13724F10C11310D64BC86176573D10846B47E726B792EB287917DA2525F8856F9476C214EBD2E9AAAE34B29EF51172A15A782767FE7277F7B8E9CEEAEECBC3CBDC2F536463FB21C0C4CC7F63F4D686C1C687BEDB568A779BF8C33940CE87BF4AD88DBE4F42C27E24AADFEB754DE8FE2698AD55EF111A1663ADAC9A23B653F81B99F486788710A28052081D606E98A62E139F66B07ADF9423839800A5906A34BE8A627C7DDD9381805A70466FA5D07914EB453C4A96121AFBC6B1; RBXSessionTracker=sessionid=2cd50938-0f23-4613-92c1-4e08463a1e73; _ga_F8VP9T1NT3=GS1.1.1723218656.3.1.1723218671.0.0.0; rbx-ip2=1; __utma=200924205.337854883.1722793505.1723218657.1723232212.12; __utmb=200924205.0.10.1723232212"
            },
            {
              "name": "priority",
              "value": "i"
            },
            {
              "name": "referer",
              "value": "https://www.roblox.com/"
            },
            {
              "name": "sec-ch-ua",
              "value": "\"Not)A;Brand\";v=\"99\", \"Google Chrome\";v=\"127\", \"Chromium\";v=\"127\""
            },
            {
              "name": "sec-ch-ua-mobile",
              "value": "?0"
            },
            {
              "name": "sec-ch-ua-platform",
              "value": "\"Windows\""
            },
            {
              "name": "sec-fetch-dest",
              "value": "image"
            },
            {
              "name": "sec-fetch-mode",
              "value": "no-cors"
            },
            {
              "name": "sec-fetch-site",
              "value": "same-site"
            },
            {
              "name": "user-agent",
              "value": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36"
            }
          ],
          "queryString": [
            {
              "name": "evt",
              "value": "pageHeartbeat_v2"
            },
            {
              "name": "ctx",
              "value": "heartbeat3"
            },
            {
              "name": "url",
              "value": "https%3A%2F%2Fwww.roblox.com%2Fmy%2Favatar"
            },
            {
              "name": "lt",
              "value": "2024-08-09T19%3A37%3A53.393Z"
            },
            {
              "name": "gid",
              "value": "-1210413020"
            },
            {
              "name": "sid",
              "value": "2cd50938-0f23-4613-92c1-4e08463a1e73"
            }
          ],
          "cookies": [
            {
              "name": "GuestData",
              "value": "UserID=-1210413020",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2025-09-06T14:06:05.665Z",
              "httpOnly": false,
              "secure": false
            },
            {
              "name": "RBXSource",
              "value": "rbx_acquisition_time=08/04/2024 17:40:28&rbx_acquisition_referrer=&rbx_medium=Social&rbx_source=&rbx_campaign=&rbx_adgroup=&rbx_keyword=&rbx_matchtype=&rbx_send_info=0",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2024-09-03T17:40:28.482Z",
              "httpOnly": false,
              "secure": false
            },
            {
              "name": "__utmz",
              "value": "200924205.1722793505.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2025-02-08T07:36:52.000Z",
              "httpOnly": false,
              "secure": false
            },
            {
              "name": ".RBXIDCHECK",
              "value": "caebfbee-d232-4825-b7eb-8318f1da9c33",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2025-09-08T17:46:10.249Z",
              "httpOnly": true,
              "secure": true
            },
            {
              "name": "rbxas",
              "value": "fb39906bfdc34fdf16f4c815f48b18a791df8dffd4a2d419ae03332669d9432c",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2025-09-08T17:46:10.249Z",
              "httpOnly": true,
              "secure": true
            },
            {
              "name": "RBXEventTrackerV2",
              "value": "CreateDate=08/04/2024 12:46:11&rbxid=1525895574&browserid=1722607566239004",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2025-09-08T17:46:10.688Z",
              "httpOnly": false,
              "secure": false
            },
            {
              "name": "__utmc",
              "value": "200924205",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "1969-12-31T23:59:59.000Z",
              "httpOnly": false,
              "secure": false
            },
            {
              "name": "_ga",
              "value": "GA1.1.781422761.1723013326",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2025-09-13T15:50:57.685Z",
              "httpOnly": false,
              "secure": false	
            },
            {
              "name": ".ROBLOSECURITY",
              "value": "_|WARNING:-DO-NOT-SHARE-THIS.--Sharing-this-will-allow-someone-to-log-in-as-you-and-to-steal-your-ROBUX-and-items.|_D12C786F9BC5858284B5622D28449D7EC2598C5666BA0CDB504D72B45B9E5F1B4784C54A03EC1B28371C8DCD3363D724B4E3E7826ABD5E643A9B985A4B967BFEEA9C02EC89ADE3489B3C81BD1F92E8D81C0D8461C6DBE8CEE693E7C98302DD329569F63CCD934F5E158869DCFE23F56D32FEC3CF4BC6D366A25C1154911DEFE551EA6EA59D3792F4C35EB99C4BDC20E20EFF992E4D0CD414324B39FE35F079586068C40E192678F1002A87A6FDF9EFD7710618ABEC907FDF973FE488A6E29C3ECC99E5C28587BB17D7BFC7D9B208D87887EEFB5876CD8F86DFCF8F07CA6CABAF62767BF90F1578345B87478C1C9A15F6A389DD4FCB286B6DE9FD8CCFF5FE26A588E37027B0C1460F1BCE329C68F36DB322D1B0AEB187538B687971B802CC2D04F47ACF86AF0A07C3D538FB715107213FAFE2CDF578AFA52E8581753B1F1E176E50E74FDA2514CC4E9CEFA4D4DAB5DF90BCC5D27A0813387FE84C1E6AD236E2A4C01E3A87065FB397F2577A71B881BA837275B0F819347F1ED3FC7B177334DD2E855D06D4E89FF02CF059F538B6D820A318845DB2FB32FA7DA47ADA545C0A33B1AD24CDCDF22F725AD06C95D83E96F66A7403BA787D8A79969F002B0C98F24260E3A889B430504E19C1A3B81B5B08ED80C2EE676760D726612ABBA2E42EC0AEE8252862CA36553DACF10BD9C4D9106301983EA41B203C562FB92812EE59BADCCA48E847E01510C6E1813853E3BE3F39F7CBBCF28C6FFC4EE150E10DCE787043C0C7C36613B72AF05A708CF1AD4A4CB387F0CA0A1C12E7FEFA902D13724F10C11310D64BC86176573D10846B47E726B792EB287917DA2525F8856F9476C214EBD2E9AAAE34B29EF51172A15A782767FE7277F7B8E9CEEAEECBC3CBDC2F536463FB21C0C4CC7F63F4D686C1C687BEDB568A779BF8C33940CE87BF4AD88DBE4F42C27E24AADFEB754DE8FE2698AD55EF111A1663ADAC9A23B653F81B99F486788710A28052081D606E98A62E139F66B07ADF9423839800A5906A34BE8A627C7DDD9381805A70466FA5D07914EB453C4A96121AFBC6B1",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2025-09-12T17:52:14.190Z",
              "httpOnly": true,
              "secure": true
            },
            {
              "name": "RBXSessionTracker",
              "value": "sessionid=2cd50938-0f23-4613-92c1-4e08463a1e73",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2024-08-09T23:36:53.353Z",
              "httpOnly": false,
              "secure": false
            },
            {
              "name": "_ga_F8VP9T1NT3",
              "value": "GS1.1.1723218656.3.1.1723218671.0.0.0",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2025-09-13T15:51:11.309Z",
              "httpOnly": false,
              "secure": false
            },
            {
              "name": "rbx-ip2",
              "value": "1",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2024-08-09T20:36:50.172Z",
              "httpOnly": false,
              "secure": false
            },
            {
              "name": "__utma",
              "value": "200924205.337854883.1722793505.1723218657.1723232212.12",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2025-09-13T19:36:52.514Z",
              "httpOnly": false,
              "secure": false
            },
            {
              "name": "__utmb",
              "value": "200924205.0.10.1723232212",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2024-08-09T20:06:52.000Z",
              "httpOnly": false,
              "secure": false
            }
          ],
          "headersSize": -1,
          "bodySize": 0
        },
        "response": {
          "status": 200,
          "statusText": "",
          "httpVersion": "h3",
          "headers": [
            {
              "name": "alt-svc",
              "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=259200"
            },
            {
              "name": "content-length",
              "value": "68"
            },
            {
              "name": "content-type",
              "value": "image/png"
            },
            {
              "name": "date",
              "value": "Fri, 09 Aug 2024 19:37:54 GMT"
            },
            {
              "name": "nel",
              "value": "{\"report_to\":\"network-errors\",\"max_age\":604800,\"success_fraction\":0.001,\"failure_fraction\":1}"
            },
            {
              "name": "report-to",
              "value": "{\"group\":\"network-errors\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://ncs.roblox.com/upload\"}]}"
            },
            {
              "name": "server",
              "value": "public-gateway"
            },
            {
              "name": "strict-transport-security",
              "value": "max-age=3600"
            },
            {
              "name": "vary",
              "value": "Origin"
            },
            {
              "name": "x-envoy-upstream-service-time",
              "value": "2"
            },
            {
              "name": "x-ratelimit-limit",
              "value": "3600000, 3600000;w=60, 3600000;w=60"
            },
            {
              "name": "x-ratelimit-remaining",
              "value": "3599994"
            },
            {
              "name": "x-ratelimit-reset",
              "value": "6"
            },
            {
              "name": "x-roblox-edge",
              "value": "bom1"
            },
            {
              "name": "x-roblox-region",
              "value": "us-central_rbx"
            }
          ],
          "cookies": [],
          "content": {
            "size": 68,
            "mimeType": "image/png",
            "text": "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVQYV2NgYAAAAAMAAWgmWQ0AAAAASUVORK5CYII=",
            "encoding": "base64"
          },
          "redirectURL": "",
          "headersSize": -1,
          "bodySize": -1,
          "_transferSize": 683,
          "_error": null,
          "_fetchedViaServiceWorker": false
        },
        "serverIPAddress": "128.116.104.4",
        "startedDateTime": "2024-08-09T19:37:53.399Z",
        "time": 304.0679999976419,
        "timings": {
          "blocked": 7.885000016190111,
          "dns": -1,
          "ssl": -1,
          "connect": -1,
          "send": 0.7570000000000006,
          "wait": 293.70699998886136,
          "receive": 1.7189999925903976,
          "_blocked_queueing": 3.8090000161901116,
          "_workerStart": -1,
          "_workerReady": -1,
          "_workerFetchStart": -1,
          "_workerRespondWithSettled": -1
        }
      },
      {
        "_initiator": {
          "type": "script",
          "stack": {
            "callFrames": [
              {
                "functionName": "",
                "scriptId": "38",
                "url": "https://js.rbxcdn.com/a42a910df4a1d5c873b335020409d2d586da6222ceb868f5009af93036d385c2.js",
                "lineNumber": 0,
                "columnNumber": 1720
              },
              {
                "functionName": "e.exports",
                "scriptId": "38",
                "url": "https://js.rbxcdn.com/a42a910df4a1d5c873b335020409d2d586da6222ceb868f5009af93036d385c2.js",
                "lineNumber": 0,
                "columnNumber": 184
              },
              {
                "functionName": "e.exports",
                "scriptId": "38",
                "url": "https://js.rbxcdn.com/a42a910df4a1d5c873b335020409d2d586da6222ceb868f5009af93036d385c2.js",
                "lineNumber": 0,
                "columnNumber": 4657
              }
            ],
            "parent": {
              "description": "Promise.then",
              "callFrames": [
                {
                  "functionName": "s.request",
                  "scriptId": "38",
                  "url": "https://js.rbxcdn.com/a42a910df4a1d5c873b335020409d2d586da6222ceb868f5009af93036d385c2.js",
                  "lineNumber": 0,
                  "columnNumber": 3347
                },
                {
                  "functionName": "",
                  "scriptId": "38",
                  "url": "https://js.rbxcdn.com/a42a910df4a1d5c873b335020409d2d586da6222ceb868f5009af93036d385c2.js",
                  "lineNumber": 0,
                  "columnNumber": 6592
                },
                {
                  "functionName": "",
                  "scriptId": "38",
                  "url": "https://js.rbxcdn.com/a42a910df4a1d5c873b335020409d2d586da6222ceb868f5009af93036d385c2.js",
                  "lineNumber": 7,
                  "columnNumber": 70477
                }
              ],
              "parent": {
                "description": "Promise.then",
                "callFrames": [
                  {
                    "functionName": "ir",
                    "scriptId": "38",
                    "url": "https://js.rbxcdn.com/a42a910df4a1d5c873b335020409d2d586da6222ceb868f5009af93036d385c2.js",
                    "lineNumber": 7,
                    "columnNumber": 70453
                  },
                  {
                    "functionName": "ur",
                    "scriptId": "38",
                    "url": "https://js.rbxcdn.com/a42a910df4a1d5c873b335020409d2d586da6222ceb868f5009af93036d385c2.js",
                    "lineNumber": 7,
                    "columnNumber": 70874
                  },
                  {
                    "functionName": "",
                    "scriptId": "48",
                    "url": "https://js.rbxcdn.com/d064c41bb0818a1981ea76fac0d1e25142b6117a2197ba92f670612c01ea71f2.js",
                    "lineNumber": 0,
                    "columnNumber": 2964
                  },
                  {
                    "functionName": "",
                    "scriptId": "48",
                    "url": "https://js.rbxcdn.com/d064c41bb0818a1981ea76fac0d1e25142b6117a2197ba92f670612c01ea71f2.js",
                    "lineNumber": 0,
                    "columnNumber": 2630
                  },
                  {
                    "functionName": "",
                    "scriptId": "48",
                    "url": "https://js.rbxcdn.com/d064c41bb0818a1981ea76fac0d1e25142b6117a2197ba92f670612c01ea71f2.js",
                    "lineNumber": 0,
                    "columnNumber": 2735
                  },
                  {
                    "functionName": "",
                    "scriptId": "48",
                    "url": "https://js.rbxcdn.com/d064c41bb0818a1981ea76fac0d1e25142b6117a2197ba92f670612c01ea71f2.js",
                    "lineNumber": 0,
                    "columnNumber": 1671
                  },
                  {
                    "functionName": "h",
                    "scriptId": "48",
                    "url": "https://js.rbxcdn.com/d064c41bb0818a1981ea76fac0d1e25142b6117a2197ba92f670612c01ea71f2.js",
                    "lineNumber": 0,
                    "columnNumber": 1416
                  },
                  {
                    "functionName": "d",
                    "scriptId": "48",
                    "url": "https://js.rbxcdn.com/d064c41bb0818a1981ea76fac0d1e25142b6117a2197ba92f670612c01ea71f2.js",
                    "lineNumber": 0,
                    "columnNumber": 2776
                  },
                  {
                    "functionName": "",
                    "scriptId": "48",
                    "url": "https://js.rbxcdn.com/d064c41bb0818a1981ea76fac0d1e25142b6117a2197ba92f670612c01ea71f2.js",
                    "lineNumber": 0,
                    "columnNumber": 5442
                  },
                  {
                    "functionName": "",
                    "scriptId": "48",
                    "url": "https://js.rbxcdn.com/d064c41bb0818a1981ea76fac0d1e25142b6117a2197ba92f670612c01ea71f2.js",
                    "lineNumber": 0,
                    "columnNumber": 4623
                  },
                  {
                    "functionName": "",
                    "scriptId": "48",
                    "url": "https://js.rbxcdn.com/d064c41bb0818a1981ea76fac0d1e25142b6117a2197ba92f670612c01ea71f2.js",
                    "lineNumber": 0,
                    "columnNumber": 4728
                  },
                  {
                    "functionName": "",
                    "scriptId": "48",
                    "url": "https://js.rbxcdn.com/d064c41bb0818a1981ea76fac0d1e25142b6117a2197ba92f670612c01ea71f2.js",
                    "lineNumber": 0,
                    "columnNumber": 3664
                  },
                  {
                    "functionName": "b",
                    "scriptId": "48",
                    "url": "https://js.rbxcdn.com/d064c41bb0818a1981ea76fac0d1e25142b6117a2197ba92f670612c01ea71f2.js",
                    "lineNumber": 0,
                    "columnNumber": 3409
                  },
                  {
                    "functionName": "e.sendPulseAndSetTimeout",
                    "scriptId": "48",
                    "url": "https://js.rbxcdn.com/d064c41bb0818a1981ea76fac0d1e25142b6117a2197ba92f670612c01ea71f2.js",
                    "lineNumber": 0,
                    "columnNumber": 5315
                  },
                  {
                    "functionName": "",
                    "scriptId": "48",
                    "url": "https://js.rbxcdn.com/d064c41bb0818a1981ea76fac0d1e25142b6117a2197ba92f670612c01ea71f2.js",
                    "lineNumber": 0,
                    "columnNumber": 5702
                  },
                  {
                    "functionName": "",
                    "scriptId": "48",
                    "url": "https://js.rbxcdn.com/d064c41bb0818a1981ea76fac0d1e25142b6117a2197ba92f670612c01ea71f2.js",
                    "lineNumber": 0,
                    "columnNumber": 4623
                  },
                  {
                    "functionName": "",
                    "scriptId": "48",
                    "url": "https://js.rbxcdn.com/d064c41bb0818a1981ea76fac0d1e25142b6117a2197ba92f670612c01ea71f2.js",
                    "lineNumber": 0,
                    "columnNumber": 4728
                  },
                  {
                    "functionName": "",
                    "scriptId": "48",
                    "url": "https://js.rbxcdn.com/d064c41bb0818a1981ea76fac0d1e25142b6117a2197ba92f670612c01ea71f2.js",
                    "lineNumber": 0,
                    "columnNumber": 3664
                  },
                  {
                    "functionName": "b",
                    "scriptId": "48",
                    "url": "https://js.rbxcdn.com/d064c41bb0818a1981ea76fac0d1e25142b6117a2197ba92f670612c01ea71f2.js",
                    "lineNumber": 0,
                    "columnNumber": 3409
                  },
                  {
                    "functionName": "e.onTimeout",
                    "scriptId": "48",
                    "url": "https://js.rbxcdn.com/d064c41bb0818a1981ea76fac0d1e25142b6117a2197ba92f670612c01ea71f2.js",
                    "lineNumber": 0,
                    "columnNumber": 5589
                  },
                  {
                    "functionName": "",
                    "scriptId": "48",
                    "url": "https://js.rbxcdn.com/d064c41bb0818a1981ea76fac0d1e25142b6117a2197ba92f670612c01ea71f2.js",
                    "lineNumber": 0,
                    "columnNumber": 5502
                  }
                ]
              }
            }
          }
        },
        "_priority": "High",
        "_resourceType": "xhr",
        "cache": {},
        "request": {
          "method": "POST",
          "url": "https://apis.roblox.com/user-heartbeats-api/pulse",
          "httpVersion": "h3",
          "headers": [
            {
              "name": ":authority",
              "value": "apis.roblox.com"
            },
            {
              "name": ":method",
              "value": "POST"
            },
            {
              "name": ":path",
              "value": "/user-heartbeats-api/pulse"
            },
            {
              "name": ":scheme",
              "value": "https"
            },
            {
              "name": "accept",
              "value": "application/json, text/plain, */*"
            },
            {
              "name": "accept-encoding",
              "value": "gzip, deflate, br, zstd"
            },
            {
              "name": "accept-language",
              "value": "en-US,en;q=0.9"
            },
            {
              "name": "content-length",
              "value": "199"
            },
            {
              "name": "content-type",
              "value": "application/json;charset=UTF-8"
            },
            {
              "name": "cookie",
              "value": "GuestData=UserID=-1210413020; RBXSource=rbx_acquisition_time=08/04/2024 17:40:28&rbx_acquisition_referrer=&rbx_medium=Social&rbx_source=&rbx_campaign=&rbx_adgroup=&rbx_keyword=&rbx_matchtype=&rbx_send_info=0; __utmz=200924205.1722793505.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); .RBXIDCHECK=caebfbee-d232-4825-b7eb-8318f1da9c33; rbxas=fb39906bfdc34fdf16f4c815f48b18a791df8dffd4a2d419ae03332669d9432c; RBXEventTrackerV2=CreateDate=08/04/2024 12:46:11&rbxid=1525895574&browserid=1722607566239004; __utmc=200924205; _ga=GA1.1.781422761.1723013326; .ROBLOSECURITY=_|WARNING:-DO-NOT-SHARE-THIS.--Sharing-this-will-allow-someone-to-log-in-as-you-and-to-steal-your-ROBUX-and-items.|_D12C786F9BC5858284B5622D28449D7EC2598C5666BA0CDB504D72B45B9E5F1B4784C54A03EC1B28371C8DCD3363D724B4E3E7826ABD5E643A9B985A4B967BFEEA9C02EC89ADE3489B3C81BD1F92E8D81C0D8461C6DBE8CEE693E7C98302DD329569F63CCD934F5E158869DCFE23F56D32FEC3CF4BC6D366A25C1154911DEFE551EA6EA59D3792F4C35EB99C4BDC20E20EFF992E4D0CD414324B39FE35F079586068C40E192678F1002A87A6FDF9EFD7710618ABEC907FDF973FE488A6E29C3ECC99E5C28587BB17D7BFC7D9B208D87887EEFB5876CD8F86DFCF8F07CA6CABAF62767BF90F1578345B87478C1C9A15F6A389DD4FCB286B6DE9FD8CCFF5FE26A588E37027B0C1460F1BCE329C68F36DB322D1B0AEB187538B687971B802CC2D04F47ACF86AF0A07C3D538FB715107213FAFE2CDF578AFA52E8581753B1F1E176E50E74FDA2514CC4E9CEFA4D4DAB5DF90BCC5D27A0813387FE84C1E6AD236E2A4C01E3A87065FB397F2577A71B881BA837275B0F819347F1ED3FC7B177334DD2E855D06D4E89FF02CF059F538B6D820A318845DB2FB32FA7DA47ADA545C0A33B1AD24CDCDF22F725AD06C95D83E96F66A7403BA787D8A79969F002B0C98F24260E3A889B430504E19C1A3B81B5B08ED80C2EE676760D726612ABBA2E42EC0AEE8252862CA36553DACF10BD9C4D9106301983EA41B203C562FB92812EE59BADCCA48E847E01510C6E1813853E3BE3F39F7CBBCF28C6FFC4EE150E10DCE787043C0C7C36613B72AF05A708CF1AD4A4CB387F0CA0A1C12E7FEFA902D13724F10C11310D64BC86176573D10846B47E726B792EB287917DA2525F8856F9476C214EBD2E9AAAE34B29EF51172A15A782767FE7277F7B8E9CEEAEECBC3CBDC2F536463FB21C0C4CC7F63F4D686C1C687BEDB568A779BF8C33940CE87BF4AD88DBE4F42C27E24AADFEB754DE8FE2698AD55EF111A1663ADAC9A23B653F81B99F486788710A28052081D606E98A62E139F66B07ADF9423839800A5906A34BE8A627C7DDD9381805A70466FA5D07914EB453C4A96121AFBC6B1; RBXSessionTracker=sessionid=2cd50938-0f23-4613-92c1-4e08463a1e73; _ga_F8VP9T1NT3=GS1.1.1723218656.3.1.1723218671.0.0.0; rbx-ip2=1; __utma=200924205.337854883.1722793505.1723218657.1723232212.12; __utmb=200924205.0.10.1723232212"
            },
            {
              "name": "origin",
              "value": "https://www.roblox.com"
            },
            {
              "name": "priority",
              "value": "u=1, i"
            },
            {
              "name": "referer",
              "value": "https://www.roblox.com/"
            },
            {
              "name": "sec-ch-ua",
              "value": "\"Not)A;Brand\";v=\"99\", \"Google Chrome\";v=\"127\", \"Chromium\";v=\"127\""
            },
            {
              "name": "sec-ch-ua-mobile",
              "value": "?0"
            },
            {
              "name": "sec-ch-ua-platform",
              "value": "\"Windows\""
            },
            {
              "name": "sec-fetch-dest",
              "value": "empty"
            },
            {
              "name": "sec-fetch-mode",
              "value": "cors"
            },
            {
              "name": "sec-fetch-site",
              "value": "same-site"
            },
            {
              "name": "user-agent",
              "value": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36"
            },
            {
              "name": "x-bound-auth-token",
              "value": "acOOtUInHmBzbl9fpgOXX04Ns2j4OUgzhgUHQtQzrkI=|1723232274|TuRJw65L9TpuHDsbcMIwAWhyL6LyA9DqaE6tVeiRFkRdfdw12jhwImWUAp1lVcT1qzBChlF6gJH3sV0Drwlqyw=="
            },
            {
              "name": "x-csrf-token",
              "value": "Rjm15WXsfrx8"
            }
          ],
          "queryString": [],
          "cookies": [
            {
              "name": "GuestData",
              "value": "UserID=-1210413020",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2025-09-06T14:06:05.665Z",
              "httpOnly": false,
              "secure": false
            },
            {
              "name": "RBXSource",
              "value": "rbx_acquisition_time=08/04/2024 17:40:28&rbx_acquisition_referrer=&rbx_medium=Social&rbx_source=&rbx_campaign=&rbx_adgroup=&rbx_keyword=&rbx_matchtype=&rbx_send_info=0",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2024-09-03T17:40:28.482Z",
              "httpOnly": false,
              "secure": false
            },
            {
              "name": "__utmz",
              "value": "200924205.1722793505.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2025-02-08T07:36:52.000Z",
              "httpOnly": false,
              "secure": false
            },
            {
              "name": ".RBXIDCHECK",
              "value": "caebfbee-d232-4825-b7eb-8318f1da9c33",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2025-09-08T17:46:10.249Z",
              "httpOnly": true,
              "secure": true
            },
            {
              "name": "rbxas",
              "value": "fb39906bfdc34fdf16f4c815f48b18a791df8dffd4a2d419ae03332669d9432c",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2025-09-08T17:46:10.249Z",
              "httpOnly": true,
              "secure": true
            },
            {
              "name": "RBXEventTrackerV2",
              "value": "CreateDate=08/04/2024 12:46:11&rbxid=1525895574&browserid=1722607566239004",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2025-09-08T17:46:10.688Z",
              "httpOnly": false,
              "secure": false
            },
            {
              "name": "__utmc",
              "value": "200924205",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "1969-12-31T23:59:59.000Z",
              "httpOnly": false,
              "secure": false
            },
            {
              "name": "_ga",
              "value": "GA1.1.781422761.1723013326",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2025-09-13T15:50:57.685Z",
              "httpOnly": false,
              "secure": false
            },
            {
              "name": ".ROBLOSECURITY",
              "value": "_|WARNING:-DO-NOT-SHARE-THIS.--Sharing-this-will-allow-someone-to-log-in-as-you-and-to-steal-your-ROBUX-and-items.|_D12C786F9BC5858284B5622D28449D7EC2598C5666BA0CDB504D72B45B9E5F1B4784C54A03EC1B28371C8DCD3363D724B4E3E7826ABD5E643A9B985A4B967BFEEA9C02EC89ADE3489B3C81BD1F92E8D81C0D8461C6DBE8CEE693E7C98302DD329569F63CCD934F5E158869DCFE23F56D32FEC3CF4BC6D366A25C1154911DEFE551EA6EA59D3792F4C35EB99C4BDC20E20EFF992E4D0CD414324B39FE35F079586068C40E192678F1002A87A6FDF9EFD7710618ABEC907FDF973FE488A6E29C3ECC99E5C28587BB17D7BFC7D9B208D87887EEFB5876CD8F86DFCF8F07CA6CABAF62767BF90F1578345B87478C1C9A15F6A389DD4FCB286B6DE9FD8CCFF5FE26A588E37027B0C1460F1BCE329C68F36DB322D1B0AEB187538B687971B802CC2D04F47ACF86AF0A07C3D538FB715107213FAFE2CDF578AFA52E8581753B1F1E176E50E74FDA2514CC4E9CEFA4D4DAB5DF90BCC5D27A0813387FE84C1E6AD236E2A4C01E3A87065FB397F2577A71B881BA837275B0F819347F1ED3FC7B177334DD2E855D06D4E89FF02CF059F538B6D820A318845DB2FB32FA7DA47ADA545C0A33B1AD24CDCDF22F725AD06C95D83E96F66A7403BA787D8A79969F002B0C98F24260E3A889B430504E19C1A3B81B5B08ED80C2EE676760D726612ABBA2E42EC0AEE8252862CA36553DACF10BD9C4D9106301983EA41B203C562FB92812EE59BADCCA48E847E01510C6E1813853E3BE3F39F7CBBCF28C6FFC4EE150E10DCE787043C0C7C36613B72AF05A708CF1AD4A4CB387F0CA0A1C12E7FEFA902D13724F10C11310D64BC86176573D10846B47E726B792EB287917DA2525F8856F9476C214EBD2E9AAAE34B29EF51172A15A782767FE7277F7B8E9CEEAEECBC3CBDC2F536463FB21C0C4CC7F63F4D686C1C687BEDB568A779BF8C33940CE87BF4AD88DBE4F42C27E24AADFEB754DE8FE2698AD55EF111A1663ADAC9A23B653F81B99F486788710A28052081D606E98A62E139F66B07ADF9423839800A5906A34BE8A627C7DDD9381805A70466FA5D07914EB453C4A96121AFBC6B1",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2025-09-12T17:52:14.190Z",
              "httpOnly": true,
              "secure": true
            },
            {
              "name": "RBXSessionTracker",
              "value": "sessionid=2cd50938-0f23-4613-92c1-4e08463a1e73",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2024-08-09T23:36:53.353Z",
              "httpOnly": false,
              "secure": false
            },
            {
              "name": "_ga_F8VP9T1NT3",
              "value": "GS1.1.1723218656.3.1.1723218671.0.0.0",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2025-09-13T15:51:11.309Z",
              "httpOnly": false,
              "secure": false
            },
            {
              "name": "rbx-ip2",
              "value": "1",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2024-08-09T20:36:50.172Z",
              "httpOnly": false,
              "secure": false
            },
            {
              "name": "__utma",
              "value": "200924205.337854883.1722793505.1723218657.1723232212.12",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2025-09-13T19:36:52.514Z",
              "httpOnly": false,
              "secure": false
            },
            {
              "name": "__utmb",
              "value": "200924205.0.10.1723232212",
              "path": "/",
              "domain": ".roblox.com",
              "expires": "2024-08-09T20:06:52.000Z",
              "httpOnly": false,
              "secure": false
            }
          ],
          "headersSize": -1,
          "bodySize": 199,
          "postData": {
            "mimeType": "application/json;charset=UTF-8",
            "text": "{\"clientSideTimestampEpochMs\":1723232274741,\"sessionInfo\":{\"sessionId\":\"2cd50938-0f23-4613-92c1-4e08463a1e73\"},\"locationInfo\":{\"robloxWebsiteLocationInfo\":{\"url\":\"https://www.roblox.com/my/avatar\"}}}"
          }
        },
        "response": {
          "status": 200,
          "statusText": "",
          "httpVersion": "h3",
          "headers": [
            {
              "name": "access-control-allow-credentials",
              "value": "true"
            },
            {
              "name": "access-control-allow-origin",
              "value": "https://www.roblox.com"
            },
            {
              "name": "alt-svc",
              "value": "h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=259200"
            },
            {
              "name": "content-type",
              "value": "application/json; charset=utf-8"
            },
            {
              "name": "date",
              "value": "Fri, 09 Aug 2024 19:37:55 GMT"
            },
            {
              "name": "nel",
              "value": "{\"report_to\":\"network-errors\",\"max_age\":604800,\"success_fraction\":0.001,\"failure_fraction\":1}"
            },
            {
              "name": "report-to",
              "value": "{\"group\":\"network-errors\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://ncs.roblox.com/upload\"}]}"
            },
            {
              "name": "server",
              "value": "public-gateway"
            },
            {
              "name": "strict-transport-security",
              "value": "max-age=3600"
            },
            {
              "name": "vary",
              "value": "Origin"
            },
            {
              "name": "x-envoy-upstream-service-time",
              "value": "2"
            },
            {
              "name": "x-roblox-edge",
              "value": "bom1"
            },
            {
              "name": "x-roblox-region",
              "value": "us-central_rbx"
            }
          ],
          "cookies": [],
          "content": {
            "size": 78,
            "mimeType": "application/json",
            "text": "{\"sessionId\":\"2cd50938-0f23-4613-92c1-4e08463a1e73\",\"status\":200,\"message\":\"\"}"
          },
          "redirectURL": "",
          "headersSize": -1,
          "bodySize": -1,
          "_transferSize": 680,
          "_error": null,
          "_fetchedViaServiceWorker": false
        },
        "serverIPAddress": "128.116.104.4",
        "startedDateTime": "2024-08-09T19:37:54.757Z",
        "time": 314.01399994501844,
        "timings": {
          "blocked": 8.659999978940935,
          "dns": -1,
          "ssl": -1,
          "connect": -1,
          "send": 1.689,
          "wait": 301.7659999998622,
          "receive": 1.8989999662153423,
          "_blocked_queueing": 3.612999978940934,
          "_workerStart": -1,
          "_workerReady": -1,
          "_workerFetchStart": -1,
          "_workerRespondWithSettled": -1
        }
      }
    ]
  }
}
public function rules()
  {
    return [

      [['id_ente', 'id_estado', 'id_aeropuerto', 'id_linea', 'id_indicador', 'id_concep', 'pasajeros_transportados_n', 'pasajeros_transportados_i', 'cantidad_aeronaves_operativas_n', 'cantidad_aeronaves_operativas_i', 'cantidad_aeronaves_recuperadas_n', 'cantidad_aeronaves_recuperadas_i', 'cantidad_aeronaves_recuperar_n', 'cantidad_aeronaves_necesarias_n', 'cantidad_aeronaves_necesarias_i', 'cantidad_aeronaves_operativas_ci', 'cantidad_aeronaves_operativas_cn', 'numero_operaciones_vu', 'id_municipio', 'id_parroquia','id_plazo_ae', 'id_tip_trans_ae', 'id_tip_inve_ae', 'id_estatus_obra'], 'integer'],
      [['vuelo', 'uso', 'moneda'], 'string'],
      [['monto', 'cantidad_aeronaves_recuperar_i'], 'number', 'min' => 0],
      [['fecha', 'carga_transportada_i', 'carga_transportada_n'], 'safe'],
      [['nombre_proyecto'], 'string', 'max' => 250],
      [['descripcion'], 'string', 'max' => 250],
      [['id_municipio'], 'exist', 'skipOnError' => true, 'targetClass' => Municipios::className(), 'targetAttribute' => ['id_municipio' => 'id_municipio']],
      [['id_parroquia'], 'exist', 'skipOnError' => true, 'targetClass' => Parroquias::className(), 'targetAttribute' => ['id_parroquia' => 'id_parroquia']],
      [['id_tip_trans_ae'], 'exist', 'skipOnError' => true, 'targetClass' => TipoTransporteAe::className(), 'targetAttribute' => ['id_tip_trans_ae' => 'id_tip_trans_ae']],
      [['id_tip_inve_ae'], 'exist', 'skipOnError' => true, 'targetClass' => TiposInversiones::className(), 'targetAttribute' => ['id_tip_inve_ae' => 'id_tip_inve']],
      [['fecha'], 'required'],
    ];
  }
<div style="flex: 1 0 100%; display: block;" id='carga_transportada_i'>
                                            <?= $form->field($model, 'carga_transportada_i')->widget(MaskedInput::className(), [
                                        'clientOptions' => [
                                            'alias' => 'decimal',
                                            'groupSeparator' => '.',
                                            'radixPoint' => ',',
                                            'autoGroup' => true,
                                            'digits' => 2,
                                            'digitsOptional' => false,
                                            'allowMinus' => false,
                                            'rightAlign' => false
                                        ],
                                        'options' => [
                                            'class' => 'form-control',
                                            //'placeholder' => '600 (Número entero)',
                                            //'maxlength' => 10
                                        ]
                                        ]) ?>
                                        </div>
  
 <?= $form->field($model, 'carga_transportada_n')->widget(MaskedInput::className(), [

                                                'clientOptions' => [
                                                    'alias' => 'decimal',
                                                    'groupSeparator' => '.',
                                                    'radixPoint' => ',',
                                                    'autoGroup' => true,
                                                    'digits' => 2,
                                                    'digitsOptional' => false,
                                                    'allowMinus' => false,
                                                    'rightAlign' => false
                                                ],
                                                'options' => [
                                                    'class' => 'form-control campo-suma',
                                                    //'placeholder' => '600 (Número entero)',
                                                    //'maxlength' => 10
                                                ]

                                            ]) ?>
const fs = require('fs');
const path = require('path');


const settingsPath = path.join(__dirname, 'settings.json');
const settingsContent = fs.readFileSync(settingsPath, 'utf8');

const settings = JSON.parse(settingsContent);

// Toggle editor.glyphMargin
if (settings['editor.glyphMargin'] === undefined) {
  console.log(settings['editor.glyphMargin']);
  settings['editor.glyphMargin'] = false;
} else {
  delete settings['editor.glyphMargin'];
}

// Toggle editor.lineNumbers
if (settings['editor.lineNumbers'] === undefined) {
  settings['editor.lineNumbers'] = 'off';
} else {
  delete settings['editor.lineNumbers'];
}

// Toggle vim.smartRelativeNumber
if (settings['vim.smartRelativeLine'] === undefined || settings['vim.smartRelativeLine'] === false) {
  settings['vim.smartRelativeLine'] = true;
} else {
  delete settings['vim.smartRelativeLine'];
}

fs.writeFileSync(settingsPath, JSON.stringify(settings, null, 2));
console.log('Settings toggled successfully.');

//node C:\Users\st96481.ttl\AppData\Roaming\Code\User\toggleSettings.js

// Along with both the below combo this script changes the setting.json to toggle zen mode with glyphMargin, lineNumbers and vim.smartRelativeLine

// this is the setting.json snippet
{
  "multiCommand.commands": [
    {
      "command": "extension.toggleZenModeAndSettings",
      "sequence": [
        "workbench.action.toggleZenMode",
        {
          "command": "workbench.action.terminal.sendSequence",
          "args": {
            "text": "node C:\\Users\\st96481.ttl\\AppData\\Roaming\\Code\\User\\toggleSettings.js\n"
          }
        }
      ]
    }
  ],
}
// this is key binding from keybindings.json
{
    "key": "alt+shift+z alt+shift+m",
    "command": "extension.multiCommand.execute",
    "args": {
      "sequence": [
        "extension.toggleZenModeAndSettings"
      ]
    }
  }
def AddNum(a, b):
	summ = a + b
  return summ
<?php 

class Elementor_Custom_Video_Widget extends \Elementor\Widget_Base {

    public function get_name() {
        return 'custom_video_widget';
    }

    public function get_title() {
        return __('Custom Video Widget', 'plugin-name');
    }

    public function get_icon() {
        return 'eicon-video-camera';
    }

    public function get_categories() {
        return ['basic'];
    }

    protected function _register_controls() {
        $this->start_controls_section(
            'content_section',
            [
                'label' => __('Content', 'plugin-name'),
                'tab' => \Elementor\Controls_Manager::TAB_CONTENT,
            ]
        );

        $this->add_control(
            'source',
            [
                'label' => __('Source', 'plugin-name'),
                'type' => \Elementor\Controls_Manager::SELECT,
                'options' => [
                    'self_hosted' => __('Self Hosted', 'plugin-name'),
                    'external' => __('External URL', 'plugin-name'),
                ],
                'default' => 'self_hosted',
            ]
        );

        $this->add_control(
            'video_url',
            [
                'label' => __('Choose Video File', 'plugin-name'),
                'type' => \Elementor\Controls_Manager::MEDIA,
                'media_type' => 'video',
                'condition' => [
                    'source' => 'self_hosted',
                ],
            ]
        );

        $this->add_control(
            'autoplay',
            [
                'label' => __('Autoplay', 'plugin-name'),
                'type' => \Elementor\Controls_Manager::SWITCHER,
                'label_on' => __('Yes', 'plugin-name'),
                'label_off' => __('No', 'plugin-name'),
                'return_value' => 'yes',
                'default' => 'yes', // Set default to 'yes'
            ]
        );

        $this->add_control(
            'play_on_mobile',
            [
                'label' => __('Play on Mobile', 'plugin-name'),
                'type' => \Elementor\Controls_Manager::SWITCHER,
                'label_on' => __('Yes', 'plugin-name'),
                'label_off' => __('No', 'plugin-name'),
                'return_value' => 'yes',
                'default' => 'yes',
            ]
        );

        $this->add_control(
            'mute',
            [
                'label' => __('Mute', 'plugin-name'),
                'type' => \Elementor\Controls_Manager::SWITCHER,
                'label_on' => __('Yes', 'plugin-name'),
                'label_off' => __('No', 'plugin-name'),
                'return_value' => 'yes',
                'default' => 'no',
            ]
        );

        $this->add_control(
            'loop',
            [
                'label' => __('Loop', 'plugin-name'),
                'type' => \Elementor\Controls_Manager::SWITCHER,
                'label_on' => __('Yes', 'plugin-name'),
                'label_off' => __('No', 'plugin-name'),
                'return_value' => 'yes',
                'default' => 'no',
            ]
        );

        $this->add_control(
            'player_controls',
            [
                'label' => __('Player Controls', 'plugin-name'),
                'type' => \Elementor\Controls_Manager::SWITCHER,
                'label_on' => __('Show', 'plugin-name'),
                'label_off' => __('Hide', 'plugin-name'),
                'return_value' => 'yes',
                'default' => 'yes',
            ]
        );

        $this->add_control(
            'download_button',
            [
                'label' => __('Download Button', 'plugin-name'),
                'type' => \Elementor\Controls_Manager::SWITCHER,
                'label_on' => __('Show', 'plugin-name'),
                'label_off' => __('Hide', 'plugin-name'),
                'return_value' => 'yes',
                'default' => 'no',
            ]
        );

        $this->add_control(
            'poster',
            [
                'label' => __('Poster', 'plugin-name'),
                'type' => \Elementor\Controls_Manager::MEDIA,
                'media_type' => 'image',
            ]
        );

        $this->add_control(
            'show_play_button',
            [
                'label' => __('Show Play/Pause Button', 'plugin-name'),
                'type' => \Elementor\Controls_Manager::SWITCHER,
                'label_on' => __('Show', 'plugin-name'),
                'label_off' => __('Hide', 'plugin-name'),
                'return_value' => 'yes',
                'default' => 'yes',
            ]
        );

        $this->end_controls_section();
    }

    protected function render() {
        $settings = $this->get_settings_for_display();

        // Video HTML
        echo '<video id="custom-video" src="' . $settings['video_url']['url'] . '" ' . ($settings['autoplay'] === 'yes' ? 'autoplay' : '') . ' ' . ($settings['mute'] === 'yes' ? 'muted' : '') . ' ' . ($settings['loop'] === 'yes' ? 'loop' : '') . ' ' . ($settings['player_controls'] === 'yes' ? 'controls' : '') . ' poster="' . $settings['poster']['url'] . '"></video>';

        // Play/Pause Button
        if ($settings['show_play_button'] === 'yes') {
            // Default to pause icon if autoplay is enabled
            $icon_class = $settings['autoplay'] === 'yes' ? 'fa-pause' : 'fa-play';
            echo '<button id="custom-play-pause" class="play-button"><i class="fas ' . $icon_class . '"></i></button>';
        }

        // JavaScript for Play/Pause Button
        echo '<script>
                document.addEventListener("DOMContentLoaded", function() {
                    var video = document.getElementById("custom-video");
                    var playPauseButton = document.getElementById("custom-play-pause");
                    var icon = playPauseButton.querySelector("i");

                    // Play video if autoplay is enabled and video is muted (required by some browsers)
                    video.addEventListener("loadedmetadata", function() {
                        if (video.hasAttribute("autoplay")) {
                            video.play().then(function() {
                                icon.classList.remove("fa-play");
                                icon.classList.add("fa-pause");
                            }).catch(function(error) {
                                console.log("Autoplay failed: ", error);
                                icon.classList.remove("fa-pause");
                                icon.classList.add("fa-play");
                            });
                        }
                    });

                    playPauseButton.addEventListener("click", function() {
                        if (video.paused) {
                            video.play();
                            icon.classList.remove("fa-play");
                            icon.classList.add("fa-pause");
                        } else {
                            video.pause();
                            icon.classList.remove("fa-pause");
                            icon.classList.add("fa-play");
                        }
                    });
                });
            </script>';
    }
}


//-------------------------------------------------END-------------------------------------//
Dưới đây là đoạn đăng ký widget 
function register_custom_widget($widgets_manager)
{
    // Custom video widget
    require_once(__DIR__ . '/widgets/custom-video.php');
    $widgets_manager->register(new \Elementor_Custom_Video_Widget());
}
add_action('elementor/widgets/register', 'register_custom_widget');
CMD elevated:

Dism.exe /online /Cleanup-Image /StartComponentCleanup
Summary
== checks for reference equality (i.e., whether two references point to the same object).
hashCode() is used in hash-based collections to quickly locate objects.
If == returns true, the hashCode() values of the two objects will be the same.
If equals() is overridden, hashCode() must also be overridden to ensure that equal objects have the same hash code.
Important: Two distinct objects can have the same hashCode(), but equal objects (as determined by equals()) must have the same hashCode().
Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*, HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*, HKCU:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* |Select-Object DisplayName, DisplayVersion, Publisher, Size, InstallDate | Format-Table -AutoSize > C:\Users\USERNAME\Desktop\software.txt

Get-AppxPackage > C:\Users\USERNAME\Desktop\apps.txt
  $pesquisa = json_decode($request->getContent(), true);

  return Cache::remember($pesquisa, $seconds, function ()use($pesquisa) {
           $produtos = Produto::select('nome', 'valor')->where('nome', 'LIKE', '%'.$pesquisa.'%')->get();
           return response()->json($produtos);
   });
Reg edit:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control

In right-side pane, look for a DWORD SvcHostSplitThresholdInKB

Set its value equal or greater than the amount of RAM (in KB) installed in your computer

Eg:
8 GB = 8×1024 MB = 8x1024x1024 KB = 8388608 KB

Close Registry Editor and restart the pc
from faker import Faker
from SmileyDB3 import SmileyDB3
from random import randint

import webbrowser

f = Faker()
db = SmileyDB3('mydb.db')

users = db.table('users')

for i in range(20):
    users.Insert(data={
        'name': f.name(),
        'email': f.email(),
        'age': randint(20, 40)
    })

users.convert().to_html('out.html')

webbrowser.open('out.html')
//Stored Procedure
CREATE PROCEDURE GetQualifyingMembers
    @RewardCriteria NVARCHAR(50)
AS
BEGIN
    SET NOCOUNT ON;

    IF @RewardCriteria = 'Placed a Booking'
    BEGIN
        SELECT DISTINCT m.Member_ID
        FROM Members m
        INNER JOIN Bookings b ON b.Member_ID = m.Member_ID;
    END
    ELSE IF @RewardCriteria = 'Completed 10 Bookings in a Month'
    BEGIN
        SELECT DISTINCT m.Member_ID
        FROM Members m
        INNER JOIN Bookings b ON b.Member_ID = m.Member_ID
        INNER JOIN Booking_Time_Slots bts ON b.Booking_ID = bts.Booking_ID
        INNER JOIN Time_Slots ts ON bts.Time_Slot_ID = ts.Time_Slot_ID
        WHERE ts.Slot_Date >= DATEADD(MONTH, -1, GETDATE())
        GROUP BY m.Member_ID
        HAVING COUNT(b.Booking_ID) >= 10;
    END
    ELSE IF @RewardCriteria = 'Made 20 Bookings in Last 3 Months'
    BEGIN
        SELECT DISTINCT m.Member_ID
        FROM Members m
        INNER JOIN Bookings b ON b.Member_ID = m.Member_ID
        INNER JOIN Booking_Time_Slots bts ON b.Booking_ID = bts.Booking_ID
        INNER JOIN Time_Slots ts ON bts.Time_Slot_ID = ts.Time_Slot_ID
        WHERE ts.Slot_Date >= DATEADD(MONTH, -3, GETDATE())
        GROUP BY m.Member_ID
        HAVING COUNT(b.Booking_ID) >= 20;
    END
    -- Add more conditions based on other reward criteria as needed
    ELSE IF @RewardCriteria = 'Placed First Order'
    BEGIN
        SELECT DISTINCT m.Member_ID
        FROM Members m
        WHERE EXISTS (
            SELECT 1 FROM Orders o WHERE o.Member_ID = m.Member_ID AND o.Order_Date = (
                SELECT MIN(Order_Date) FROM Orders o2 WHERE o2.Member_ID = m.Member_ID
            )
        );
    END
    ELSE IF @RewardCriteria = 'Made a Payment'
    BEGIN
        SELECT DISTINCT m.Member_ID
        FROM Members m
        INNER JOIN Payments p ON p.Member_ID = m.Member_ID;
    END
    ELSE IF @RewardCriteria = 'High-Value Order'
    BEGIN
        SELECT DISTINCT m.Member_ID
        FROM Members m
        INNER JOIN Orders o ON o.Member_ID = m.Member_ID
        WHERE o.Total_Amount >= 1000; -- Example threshold, adjust as needed
    END
    ELSE IF @RewardCriteria = 'Large Quantity Order'
    BEGIN
        SELECT DISTINCT m.Member_ID
        FROM Members m
        INNER JOIN Order_Items oi ON oi.Order_ID = (
            SELECT TOP 1 o.Order_ID
            FROM Orders o
            WHERE o.Member_ID = m.Member_ID
            ORDER BY o.Order_Date DESC
        )
        WHERE oi.Quantity >= 10; -- Example threshold, adjust as needed
    END
    ELSE
    BEGIN
        -- Return an empty set if criteria do not match
        SELECT * FROM Members WHERE 1 = 0;
    END
END

//Service
public class QualifyingMembersService : IHostedService, IDisposable
    {
        private readonly IServiceProvider _serviceProvider;
        private Timer _timer;

        public QualifyingMembersService(IServiceProvider serviceProvider)
        {
            _serviceProvider = serviceProvider;
        }

        public Task StartAsync(CancellationToken cancellationToken)
        {
            _timer = new Timer(UpdateQualifyingMembers, null, TimeSpan.Zero, TimeSpan.FromMinutes(1)); // Check every 1 minute
            return Task.CompletedTask;
        }

        private async void UpdateQualifyingMembers(object state)
        {
            using (var scope = _serviceProvider.CreateScope())
            {
                var context = scope.ServiceProvider.GetRequiredService<AppDbContext>();
                var postedRewards = await context.Rewards
                    .Where(r => r.IsPosted)
                    .ToListAsync();

                foreach (var reward in postedRewards)
                {
                    var rewardType = await context.Reward_Types
                        .FindAsync(reward.Reward_Type_ID);
                    
                    if (rewardType != null)
                    {
                        var qualifyingMembers = await GetQualifyingMembersAsync(rewardType.Reward_Criteria);

                        foreach (var member in qualifyingMembers)
                        {
                            var existingRewardMember = await context.Reward_Members
                                .FirstOrDefaultAsync(rm => rm.Member_ID == member.Member_ID && rm.Reward_ID == reward.Reward_ID);

                            if (existingRewardMember == null)
                            {
                                var rewardMember = new Reward_Member
                                {
                                    Member_ID = member.Member_ID,
                                    Reward_ID = reward.Reward_ID,
                                    IsRedeemed = false
                                };
                                context.Reward_Members.Add(rewardMember);
                            }
                        }
                    }
                }

                await context.SaveChangesAsync();
            }
        }

        public async Task<List<Member>> GetQualifyingMembersAsync(string criteria)
        {
            var criteriaParam = new SqlParameter("@Criteria", criteria);
            return await _serviceProvider.GetRequiredService<AppDbContext>()
                .Members
                .FromSqlRaw("EXEC GetQualifyingMembers @Criteria", criteriaParam)
                .ToListAsync();
        }

        public Task StopAsync(CancellationToken cancellationToken)
        {
            _timer?.Change(Timeout.Infinite, 0);
            return Task.CompletedTask;
        }

        public void Dispose()
        {
            _timer?.Dispose();
        }
    }

//UpdateQualifyingMembersForReward
private async Task UpdateQualifyingMembersForReward(int rewardId)
{
    // Fetch reward and reward type
    var reward = await _appDbContext.Rewards.FindAsync(rewardId);
    if (reward != null)
    {
        var rewardType = await _appDbContext.Reward_Types.FindAsync(reward.Reward_Type_ID);
        if (rewardType != null)
        {
            // Use QualifyingMembersService to get qualifying members
            var qualifyingMembers = await _qualifyingMembersService.GetQualifyingMembersAsync(rewardType.Reward_Criteria);

            foreach (var member in qualifyingMembers)
            {
                var existingRewardMember = await _appDbContext.Reward_Members
                    .FirstOrDefaultAsync(rm => rm.Member_ID == member.Member_ID && rm.Reward_ID == reward.Reward_ID);

                // Add qualifying members to the Reward_Member table
                if (existingRewardMember == null)
                {
                    var rewardMember = new Reward_Member
                    {
                        Member_ID = member.Member_ID,
                        Reward_ID = reward.Reward_ID,
                        IsRedeemed = false
                    };
                    _appDbContext.Reward_Members.Add(rewardMember);
                }
            }

            await _appDbContext.SaveChangesAsync();
        }
    }
}
import sqlite3

db = sqlite3.connect('mydb.db')
cur = db.cursor()

# create users table
cur.execute('CREATE TABLE IF NOT EXISTS users (name str, image blob)')

# insert new user in users table
cur.execute(
    'INSERT INTO users (name, image) VALUES (?, ?)', 
    ('USER-123', open('smile.png', 'rb').read())
)

db.commit()
import customtkinter as ctk

root = ctk.CTk()
root.geometry('200x200')

led_on = '#4cff66'
led_off = '#1e3c22'

led = ctk.CTkLabel(root, text='\t', width=50, bg_color=led_off)
led.place(x = 80, y = 80)

def off_on():
    if led._bg_color == led_off:
        led.configure(bg_color = led_on)
        led.update()
        return
    
    if led._bg_color == led_on:
        led.configure(bg_color = led_off)
        led.update()
        return


bt = ctk.CTkButton(root, text = 'OFF/ON', command=off_on, width=70)
bt.place(x = 80, y = 150)

root.mainloop()
from faker import Faker
from random import randint

f = Faker()

data = {'name': 'Barry Long', 'email': 'tammy28@example.com', 'age': 20}

# Generate data from this 
def Generate_like_this(data : dict, f : Faker):
    result = {}

    funcs = {
        'name': f.name,
        'email': f.email
    }

    for k in data:

        if k in funcs:
            result[k] = funcs[k]()

        if isinstance(data[k], int):
            result[k] = randint(1, data[k])
        
    
    return result

print(Generate_like_this(data = data, f = Faker()))
ifs(in([Agency Name], Database[Agency Name]), any(select(Database[Agency Phone Number], [Row ID] = maxrow("Database", "_RowNumber", [_THISROW].[Agency Name]=[Agency Name]))))
sudo vboxmanage extpack install Oracle_VM_VirtualBox_Extension_Pack-7.0.18.vbox-extpack
Code language: Bash (bash)
wget https://download.virtualbox.org/virtualbox/7.0.18/Oracle_VM_VirtualBox_Extension_Pack-7.0.18.vbox-extpack
Code language: Bash (bash)
function myFunction() {
  const ss = SpreadsheetApp.getActiveSpreadsheet()
  const sh = ss.getSheetByName("Sheet1");
  const hex_colors = sh.getRange('A1:A'+sh.getLastRow()).getValues();
  sh.getRange('B1:B'+sh.getLastRow()).setBackgrounds(hex_colors);
}
// regex for hex color codes
HEX_COLOR_REGEX = /(^#[0-9A-Fa-f]{3}$)|(#[0-9A-Fa-f]{6}$)/;

// column to watch for changes (i.e. column where hex color codes are to be entered)
HEX_CODE_COLUMN = 1; // i.e. column A

// column to change when above column is edited
HEX_COLOR_COLUMN = 2; // i.e. column B

// utility function to test whether a given string qualifies as a hex color code
function hexTest(testCase) {
  return HEX_COLOR_REGEX.test(testCase);
}

function onEdit(e) {
  var range = e.range;
  var row = range.getRow();
  var column = range.getColumn();
  if (column === HEX_CODE_COLUMN) {
    var values = range.getValues();
    values.forEach( function checkCode(rowValue, index) {
      var code = rowValue[0];
      if (hexTest(code)) {
        var cell = SpreadsheetApp.getActiveSheet().getRange(row + index, HEX_COLOR_COLUMN);
        cell.setBackground(code);
        SpreadsheetApp.flush();
      }
    });
  }
}
function onEdit() {

  var sheet = SpreadsheetApp.getActiveSheet();
  var range = sheet.getDataRange();
  var actCell = sheet.getActiveCell();
  var actData = actCell.getValue();
  var actRow = actCell.getRow();
  if (actData != '' && actRow != 1)  //Leaving out empty and header rows
  {
    range.getCell(actRow, 2).setBackground(actData);
  }

}
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  If (Left(ActiveCell.Text, 1) = "#" And Len(ActiveCell.Text) = 7) Then
    ActiveCell.Interior.Color = WorksheetFunction.Hex2Dec(Mid$(ActiveCell.Text, 2))
End If

End Sub
Sub ColorCellsByHex()
    Dim r
    If TypeName(Selection) <> "Range" Then Exit Sub
    For Each r In Selection
        r.Interior.Color = Abs(("&H" & Mid(r, 6, 2) & Mid(r, 4, 2) & Mid(r, 2, 2)))
    Next
End Sub
Sub ColorCellsByHexInCells()
  Dim rSelection As Range, rCell As Range

  If TypeName(Selection) = "Range" Then
  Set rSelection = Selection
    For Each rCell In rSelection
      rCell.Interior.Color = WorksheetFunction.Hex2Dec(Mid$(rCell.Text, 2))
    Next
  End If
End Sub
/*

This script is meant to be used with a Google Sheets spreadsheet. When you edit a cell containing a
valid CSS hexadecimal colour code (like #000 or #000000), the background colour will be changed to
that colour and the font colour will be changed to the inverse colour for readability.

To use this script in a Google Sheets spreadsheet:
1. go to Tools » Script Editor » Spreadsheet;
2. erase everything in the text editor;
3. change the title to "Set colour preview on edit";
4. paste this code in;
5. click File » Save.
*/

/*********
** Properties
*********/
/**
 * A regex pattern matching a valid CSS hex colour code.
 */
var colourPattern = /^#([0-9a-f]{3})([0-9a-f]{3})?$/i;


/*********
** Event handlers
*********/
/**
 * Sets the foreground or background color of a cell based on its value.
 * This assumes a valid CSS hexadecimal colour code like #FFF or #FFFFFF.
 */
function onEdit(e){
  // iterate over cell range  
  var range = e.range;
  var rowCount = range.getNumRows();
  var colCount = range.getNumColumns();
  for(var r = 1; r <= rowCount; r++) {
    for(var c = 1; c <= colCount; c++) {
      var cell = range.getCell(r, c);
      var value = cell.getValue();

      if(isValidHex(value)) {
        cell.setBackground(value);
        cell.setFontColor(getContrastYIQ(value));
      }
      else {
        cell.setBackground('white');
        cell.setFontColor('black');
      }
    }
  }
};


/*********
** Helpers
*********/
/**
 * Get whether a value is a valid hex colour code.
 */
function isValidHex(hex) {
  return colourPattern.test(hex);
};

/**
 * Change text color to white or black depending on YIQ contrast
 * https://24ways.org/2010/calculating-color-contrast/
 */
function getContrastYIQ(hexcolor){
    var r = parseInt(hexcolor.substr(1,2),16);
    var g = parseInt(hexcolor.substr(3,2),16);
    var b = parseInt(hexcolor.substr(5,2),16);
    var yiq = ((r*299)+(g*587)+(b*114))/1000;
    return (yiq >= 128) ? 'black' : 'white';
}
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/oracle-virtualbox-2016.gpg] http://download.virtualbox.org/virtualbox/debian $(. /etc/os-release && echo "$VERSION_CODENAME") contrib" | sudo tee /etc/apt/sources.list.d/virtualbox.list
Code language: Bash (bash)
wget -O- https://www.virtualbox.org/download/oracle_vbox_2016.asc | sudo gpg --dearmor --yes --output /usr/share/keyrings/oracle-virtualbox-2016.gpg
Code language: Bash (bash)
//Rewards and criteria
Booking Initiator (for "Placed a Booking")
Booking Streak (for "Completed 10 Bookings in a Month")
Booking Pro (for "Made 20 Bookings in Last 3 Months")
Payment Pioneer (for "Made a Payment")
First Order Achiever (for "Placed First Order")
High Roller (for "High-Value Order")
Bulk Buyer (for "Large Quantity Order")

//Equipment
1. Treadmill
Description: A popular cardio machine that simulates walking, jogging, or running indoors.
Size: Approximately 80-150 kg
2. Elliptical Trainer
Description: A low-impact cardio machine that combines the motions of stair climbing, walking, and running.
Size: Approximately 70-120 kg
3. Stationary Bike
Description: A bike used for indoor cycling workouts.
Size: Approximately 25-60 kg
4. Rowing Machine
Description: A full-body cardio machine that mimics the motion of rowing a boat.
Size: Approximately 25-50 kg
5. Weight Bench
Description: A versatile piece of equipment used in weight training.
Size: Approximately 15-30 kg
6. Dumbbells
Description: Small, handheld weights used in various strength training exercises.
Size: Varies widely, typically 1-50 kg each
7. Barbell
Description: A long bar that can be loaded with weight plates on each end.
Size: Standard barbells are typically 20 kg (Olympic barbell)
8. Kettlebell
Description: A round weight with a handle used in dynamic exercises.
Size: Typically 4-32 kg
9. Pull-Up Bar
Description: A horizontal bar mounted at a height, used for pull-ups and chin-ups.
Size: Not typically measured in weight; usually around 3-5 kg
10. Medicine Ball
Description: A weighted ball used in various exercises.
Size: Typically 2-10 kg
11. Resistance Bands
Description: Elastic bands used for strength training and rehabilitation.
Size: Not measured in weight; resistance typically ranges from 5-50 kg
12. Leg Press Machine
Description: A machine designed to target the lower body muscles.
Size: Approximately 180-300 kg
13. Smith Machine
Description: A weight training machine consisting of a barbell fixed within steel rails.
Size: Approximately 150-250 kg
14. Cable Machine
Description: A versatile piece of equipment with adjustable pulleys.
Size: Approximately 200-300 kg
15. Lat Pulldown Machine
Description: A machine designed to strengthen the upper back muscles.
Size: Approximately 100-200 kg
16. Leg Curl/Extension Machine
Description: A dual-function machine that targets the hamstrings and quadriceps.
Size: Approximately 80-150 kg
17. Ab Wheel
Description: A small wheel with handles used to perform ab rollouts.
Size: Approximately 1-2 kg
18. Battle Ropes
Description: Heavy ropes used in various dynamic exercises.
Size: Typically 8-12 kg (for a 30-50 ft rope)
19. Punching Bag
Description: A heavy bag used for boxing and martial arts training.
Size: Approximately 20-50 kg
20. Foam Roller
Description: A cylindrical foam tool used for self-myofascial release (SMR).
Size: Not typically measured in weight; usually around 1-2 kg

//products
T-shirt
Description: A versatile, breathable short-sleeved shirt ideal for workouts or casual wear.
Price: R150 – R400

Tank Top
Description: A sleeveless shirt designed for enhanced ventilation and freedom of movement during exercise.
Price: R120 – R300

Sports Bra
Description: A supportive bra designed for comfort and stability during high-impact workouts.
Price: R250 – R600

Hoodie
Description: A warm, hooded sweatshirt perfect for warming up or casual wear.
Price: R350 – R800

Running Shorts
Description: Lightweight shorts with moisture-wicking fabric, designed for running and other cardio activities.
Price: R200 – R500

Casual Shorts
Description: Comfortable shorts suitable for everyday casual wear.
Price: R200 – R450

Gym Shorts
Description: Durable, flexible shorts designed for gym workouts and other physical activities.
Price: R150 – R400

Sweatpants
Description: Comfortable, loose-fitting pants ideal for warm-ups, cool-downs, or casual wear.
Price: R300 – R700

Gym Leggings
Description: Stretchable, body-hugging leggings designed for flexibility and comfort during workouts.
Price: R300 – R600

Compression Tights
Description: Tight-fitting, supportive tights that enhance circulation and muscle recovery during exercise.
Price: R400 – R900

Socks
Description: Standard socks made from soft, breathable material for everyday use.
Price: R50 – R150

Gym Socks
Description: Cushioned, moisture-wicking socks designed for extra comfort during workouts.
Price: R60 – R180

Gloves
Description: General-purpose gloves for protection and comfort during light activities.
Price: R100 – R250

Gym Gloves
Description: Padded gloves designed to protect hands and improve grip during weightlifting or gym exercises.
Price: R150 – R400

Boxing Gloves
Description: Heavily padded gloves designed to protect hands and opponents during boxing training or sparring.
Price: R400 – R1,200

//Member Emails
Password: AVSFitness!
jakerichards4731@
cassandrawusan6@
enochndlovu616@
sashapillay314@
star

Fri Aug 16 2024 08:00:42 GMT+0000 (Coordinated Universal Time) https://www.raspberrypi.com/documentation/services/connect.html

@amccall23

star

Fri Aug 16 2024 08:00:27 GMT+0000 (Coordinated Universal Time) https://www.raspberrypi.com/documentation/services/connect.html

@amccall23

star

Fri Aug 16 2024 07:59:42 GMT+0000 (Coordinated Universal Time) https://www.raspberrypi.com/documentation/services/connect.html

@amccall23

star

Fri Aug 16 2024 07:59:32 GMT+0000 (Coordinated Universal Time) https://www.raspberrypi.com/documentation/services/connect.html

@amccall23

star

Fri Aug 16 2024 07:59:29 GMT+0000 (Coordinated Universal Time) https://www.raspberrypi.com/documentation/services/connect.html

@amccall23

star

Fri Aug 16 2024 07:59:26 GMT+0000 (Coordinated Universal Time) https://www.raspberrypi.com/documentation/services/connect.html

@amccall23

star

Fri Aug 16 2024 04:52:54 GMT+0000 (Coordinated Universal Time)

@iamkatmakhafola

star

Fri Aug 16 2024 02:03:41 GMT+0000 (Coordinated Universal Time)

@Curable1600 #windows

star

Fri Aug 16 2024 01:45:34 GMT+0000 (Coordinated Universal Time)

@thecowsays #javascript

star

Fri Aug 16 2024 01:35:18 GMT+0000 (Coordinated Universal Time)

@shawnclevinger

star

Fri Aug 16 2024 01:32:13 GMT+0000 (Coordinated Universal Time) https://www.thiscodeworks.com/tag/apex

@shawnclevinger

star

Fri Aug 16 2024 01:30:04 GMT+0000 (Coordinated Universal Time) https://www.thiscodeworks.com/tag/lwc

@shawnclevinger

star

Fri Aug 16 2024 01:27:37 GMT+0000 (Coordinated Universal Time) https://www.thiscodeworks.com/tag/salesforce

@shawnclevinger

star

Fri Aug 16 2024 01:14:31 GMT+0000 (Coordinated Universal Time) www.codecademy.com

@thecowsays #javascript

star

Fri Aug 16 2024 01:07:22 GMT+0000 (Coordinated Universal Time) https://www.thiscodeworks.com/64194b2a0eab1e0013c9cf4e

@shawnclevinger

star

Fri Aug 16 2024 01:03:12 GMT+0000 (Coordinated Universal Time) https://www.thiscodeworks.com/5e03b21a12e79618db53832c

@shawnclevinger

star

Fri Aug 16 2024 01:01:50 GMT+0000 (Coordinated Universal Time) https://www.thiscodeworks.com/how-to-change-any-attribute-of-a-html-element-html-javascript-jsfunctions-dom-dommanipulation/5e2e022d77696f00148a2077

@shawnclevinger

star

Fri Aug 16 2024 00:59:16 GMT+0000 (Coordinated Universal Time)

@WXAPAC

star

Thu Aug 15 2024 20:40:03 GMT+0000 (Coordinated Universal Time) https://docs.stripe.com/api/customers/update

@acassell

star

Thu Aug 15 2024 18:09:55 GMT+0000 (Coordinated Universal Time)

@yahellopit

star

Thu Aug 15 2024 16:06:26 GMT+0000 (Coordinated Universal Time)

@jrg_300i #undefined

star

Thu Aug 15 2024 13:23:10 GMT+0000 (Coordinated Universal Time)

@jrg_300i #undefined

star

Thu Aug 15 2024 12:57:37 GMT+0000 (Coordinated Universal Time)

@StephenThevar

star

Thu Aug 15 2024 10:17:34 GMT+0000 (Coordinated Universal Time)

@iMan

star

Thu Aug 15 2024 08:44:16 GMT+0000 (Coordinated Universal Time)

@quanganh141220 #php #elementor #wigetcustom #videocustom

star

Thu Aug 15 2024 06:18:05 GMT+0000 (Coordinated Universal Time) https://www.thiscodeworks.com/new

@Curable1600 #windows

star

Thu Aug 15 2024 03:18:53 GMT+0000 (Coordinated Universal Time) https://chatgpt.com/c/0b9ed55e-64f9-4269-8f50-9c1c7b7035e4

@harshaw

star

Wed Aug 14 2024 19:05:26 GMT+0000 (Coordinated Universal Time) https://medium.com/canucks-tech-tips/how-to-get-list-of-installed-programs-a14bbbbf519f

@baamn

star

Wed Aug 14 2024 18:45:45 GMT+0000 (Coordinated Universal Time) https://stackoverflow.com/questions/67747207/laravel-search-caching

@xsirlalo #php

star

Wed Aug 14 2024 17:53:30 GMT+0000 (Coordinated Universal Time) https://www.askvg.com/windows-10-fix-too-many-svchost-exe-service-host-process-running-in-task-manager/

@Curable1600 #windows

star

Wed Aug 14 2024 14:17:21 GMT+0000 (Coordinated Universal Time)

@iamkatmakhafola

star

Wed Aug 14 2024 12:31:41 GMT+0000 (Coordinated Universal Time) https://www.appsheet.com/template/appdef?quickStart

@Wittinunt

star

Wed Aug 14 2024 10:49:13 GMT+0000 (Coordinated Universal Time) https://linuxiac.com/how-to-install-virtualbox-on-ubuntu-24-04-lts/

@Spsypg

star

Wed Aug 14 2024 10:45:37 GMT+0000 (Coordinated Universal Time) https://linuxiac.com/how-to-install-virtualbox-on-ubuntu-24-04-lts/

@Spsypg

star

Wed Aug 14 2024 10:45:31 GMT+0000 (Coordinated Universal Time) https://linuxiac.com/how-to-install-virtualbox-on-ubuntu-24-04-lts/

@Spsypg

star

Wed Aug 14 2024 10:07:54 GMT+0000 (Coordinated Universal Time) https://stackoverflow.com/questions/61893931/how-to-extract-the-version-from-the-name-of-a-nuget-package-file-using-powershel

@baamn

star

Wed Aug 14 2024 09:53:03 GMT+0000 (Coordinated Universal Time) https://stackoverflow.com/questions/65944323/how-to-change-color-of-a-cell-if-the-previous-cell-contains-the-hex-color-name?rq

@baamn #javascript

star

Wed Aug 14 2024 09:49:04 GMT+0000 (Coordinated Universal Time) https://stackoverflow.com/questions/30766943/google-spreadsheet-script-to-change-background-color-of-a-cell-based-on-a-hex-c?rq

@baamn #javascript

star

Wed Aug 14 2024 09:47:58 GMT+0000 (Coordinated Universal Time) https://stackoverflow.com/questions/30766943/google-spreadsheet-script-to-change-background-color-of-a-cell-based-on-a-hex-c?rq

@baamn #javascript

star

Wed Aug 14 2024 09:45:59 GMT+0000 (Coordinated Universal Time) https://stackoverflow.com/questions/10455366/how-to-highlight-a-cell-using-the-hex-color-value-within-the-cell?rq

@baamn #vb

star

Wed Aug 14 2024 09:45:40 GMT+0000 (Coordinated Universal Time) https://stackoverflow.com/questions/10455366/how-to-highlight-a-cell-using-the-hex-color-value-within-the-cell?rq

@baamn #vb

star

Wed Aug 14 2024 09:45:11 GMT+0000 (Coordinated Universal Time) https://stackoverflow.com/questions/10455366/how-to-highlight-a-cell-using-the-hex-color-value-within-the-cell?rq

@baamn #vb #excel

star

Wed Aug 14 2024 09:28:39 GMT+0000 (Coordinated Universal Time) https://stackoverflow.com/questions/46427564/set-the-background-color-to-a-cell-based-on-a-hex-value

@baamn #javascript

star

Wed Aug 14 2024 09:18:49 GMT+0000 (Coordinated Universal Time) https://linuxiac.com/how-to-install-virtualbox-on-ubuntu-24-04-lts/

@Spsypg

star

Wed Aug 14 2024 09:17:18 GMT+0000 (Coordinated Universal Time) https://linuxiac.com/how-to-install-virtualbox-on-ubuntu-24-04-lts/

@Spsypg

star

Wed Aug 14 2024 09:02:29 GMT+0000 (Coordinated Universal Time)

@iamkatmakhafola

Save snippets that work with our extensions

Available in the Chrome Web Store Get Firefox Add-on Get VS Code extension