Discussing Indicators – TA – More

Discussing Indicators – TA – More

YouTube Video

YouTube Video Transcript

hey this is David for big boots and it’s kind of late where I’m at so I’m going to be discussing some indicators and some other stuff like that I’ve got some code pulled up on some stuff I’m working on and yeah I’ll pull up a chart in just a moment but it has been a interesting night tonight as the price of Bitcoin and a lot of other crypto stuff is just you know for the most part crashed but interestingly enough it held up on 100 and 200 day moving averages bounced from there pretty pretty cleanly honestly and it’ll be interesting to see where we go from here there’s a lot of momentum heading down on pretty much every indicator right now so it’s gonna be interesting we might have a sale on Bitcoin on the day of the heavy which would be pretty cool honestly I was kind of planning on buying some that day just kind of celebrate anyway so I’ll take it now if you all have any questions just leave a comment or use the chat I’ll try to keep an eye on that occasionally but I’m not always the best at doing that when I’m doing some coding here yeah here’s the having countdown see we’re about 40 47 hours away now it’s pretty awesome so we’re getting pretty close oh man figure out what we’re gonna do here so we just published the fancy Bollinger Bands indicator and it turn off some of these alerts yeah so this is the one we just published I’ve got some things I’d like to add to it I might do some of that now and before I get into some of the other things that I’ve got going on but let’s go ahead and do it now the music is on in the background so I don’t I don’t feel like I have to talk all the time but if you have any questions of course just asking the chat doing a lot here right now go so see this do you all in here if you’re new just check out the other content but this kind of stuff I do work on creating indicators and tutorials here on trading view there’s a couple more settings I want to add to this indicator it’s got quite a bit I go through and add a few more I separate so that I might be a little late to read the chat it’s on the other screen but if you’ll have any questions or anything I want to see anything just let me know we add a few things here the first I’m going to be doing is adding an option to just use a basic fill instead of this gradient you can see changes colors between the bands so just gonna make it to where it’s actually going to show just a single color for the solid a solid background fill now I do have it set to where you can hide the entire fill but it kind of looks weird with just the bands so I wanted to have a basic gradient in there as well so we’ll have to actually add another parameter on here for this particular setting on the color functions now by default its first gonna check to see if either the colors should be hidden and returned a completely transparent film that’s still gonna have to be priority but after that we can now instead of start looking for the gradient colors we can actually check to use if we are using our basic and if we are then we can return something like that except I’m going to use something a little bit transparent I don’t want a full color in there well that’s pretty much all the code we need I just need to go find the color that we’re going to use in hexadecimal value am I using self-made indicators well this indicator is just kind of like Bollinger Bands except I’ve added like 30 features to it I did another video about it on my channel so if you want to check out and see like all the features to it you can otherwise you can check out the trading view profile tons of settings you can change like the moving average the deviation the look-back period resolution there’s just all kinds of stuff on this one but it’s basically just Bollinger Bands I’m adding more settings on top of it basically just trying to make an indicator that is very robust and flexible so if you want like Bollinger Bands but you need something slightly unique you know this indicator might be able to do it because it’s gonna have tons of options and it’ll allow you to actually customize your Bands quite a bit now is there a way to bridge strategy to paper trading yes you have to connect to the paper trading brokerage let me see this code real quick hopefully it’ll actually no it won’t let me do that I have to have the hexanol hex color but let’s go back to trading panel you’ll need to connect to this paper trading brokerage here and that will actually allow you to do paper trading with your strategy that you have on there and actually want to get rid of that one of course the one time I wanted to actually use this particular strategy it hits the stop loss of course but it’s typically a pretty good one it’s just kind of unfortunate that it lost today take that off so we can just focus on this one yeah hopefully that answers your question all right let’s search for the gradient framework or we have all the colors and stuff spine coders they have the lovely gradient functions that I borrowed here for this particular indicator I just need to find a nice blue color aqua I did that think I’m gonna try this one pretty sure that’s a pretty low value now where we actually call these functions we need to pass this new parameter in which because it’s just an input is super easy see it’s gonna work yep okay so we just added that basic fill option so you can kind of get rid of the gradient and let’s go and try that one out yeah there it is it’s still really bright though so I need to go back and find one that’s a little bit more transparent in fact I’ll probably just copy from some of the other values I’ve got here so let’s pull it back up this is the alpha value here at the end so if I replace that with one of these we should be good the strongest I use is a 35 so we’ll use that on the inclusion area which is where the bands are brighter and we will use one of the weaker ones say 10 wait now I need to follow up with this so that’s the brightest there I want to use the brightest on this one which is actually just an odd all right time to try this one out okay much better this actually kind of looks decent so there we go we’ve gotten rid of the gradients with a setting to use a basic fill color so that’s pretty cool then we can just coarse uncheck that and we’re back to the regular gradient and we can also hide it as well which should override this one perfect that setting worked amazingly well so there’s another couple of settings that I wanted to add I needed to separate the upper and lower deviation that way you can have a custom deviation multiplier for an upper band and also a custom deviation for the lower band that way you know if you were a little bit more aggressive on buying or selling based on the band deviation on either side you can customize that as well by default it’s got it set to where you’ll always use the same on the upper and lower and we’re actually going to change that to where we are going to use something different so where is the deviation value and I also need to change its step size as well multiplier okay so I’m gonna call that the upper band multiplier and we’re going to actually do a little bit of work and change some of the other stuff it’s gonna be to by default my x-values 50 I need to set the step size you go 2.25 that should work you can always type in a custom value anyway and we’re just gonna copy that and make one for the lower band you alright let’s go down to our calculation where we are determining the actual values for those bands and what was the name that I gave up okay I think this is gonna be the easiest thing that I’m gonna do tonight okay let’s try to customize either side here so we want an upper band deviation of three okay did that not do what I wanted perhaps okay I think what I need to do is check the value before I change it okay so all of the data window excellent and let’s actually do a one minute chart use this one with a nice wick so it’s easy to identify our upper band 87 32 let’s drop the step size down or drop it down with the step size to two so it did go down all right make sure that the lower band didn’t change on that so it’s 86 37 that actually did change it that does not seem like it should happen so I can only imagine that that variable is being used elsewhere ah now I obviously know nobody’s watching because I should have pointed that one out pretty quickly that was a pretty obvious mistake okay so now the upper Bann should go up by itself okay perfect we’ve got a huge upper band and let’s also check our lower band to make it bigger go make it huge okay so that looks like it’s actually throwing off the gradient fill as well so I need to update the gradient field calculation wonderful and we use this function for it and we’re passing in percentage B well no this is how I’m in for it to occur because I wanted it to use percent be if somebody decides they want to have that updated out they’ll change it but I doubt too many people are gonna use my hands like this all right so let’s reset it this actually works this is coming along nicely okay so we’re gonna do something I have not seen before and I don’t look for these sorts of things so we’re actually going to be smoothing the upper and lower bands so the middle band is already smooth but the upper band is in the lower bands our really jagged and I don’t like that so I’m going to allow the smoothing of the upper and lower bands and what we’re going to do we are going to take some of these options so we have the middle band period and the middle band type we’re going to be taking the type and period options from this particular from the middle band section of the indicator and we are going to apply that to the upper and also the lower band and we are going to set the band or the smoothing period on both of them to one that way there shouldn’t be any difference and the type also to a smooth moving average or a simple fooding averaging excuse me so that it is the exact same value by default when you load it as it is normally but if you were to change the look-back period it was smooth it based on the SMA so it’s actually pretty simple to do I think and that’s you know obviously famous last words and let’s actually go to try it out I need a couple of settings there are periods there that is our upper and lower band want these to be the farthest down settings there are because I really don’t think these are going to be used much so we’d set that to 1 this would be SMA okay so we have an upper band smoothing period an upper band smoothing MA type that’s perfect now I just got to copy-paste this and remember to replace it this time or I did not do that before or how long have I been programming in pine and how many hours per day when it comes to pine I have been programming with pine for a few years but really I didn’t program very much with pine until about a year ago or two and even then it’s been off and on but it’s here recently since I started doing the tutorial videos and publishing some of these scripts that I’ve been doing it’s been a lot more to put a number on it it’s hard to say on any given week here in the last several months probably five to six hours a week maybe worth of programming and it seems to be kind of going up as the channel gets a little bit more popular and people kind of want more content I’ve actually talked to the tradingview account on Twitter and which also was their CTO Constantine I believe his name was it was pretty cool conversation I’d like to do some streaming stuff for them they’ve invited me on their platform today to stream some on their kind of do some educational stuff with pine oops but yeah as far as the time investment not too much right now five to six hours a week but I’ve been programming since I was let’s say like a freshman or a sophomore in college that is now a long time ago like 16 years ago but I wasn’t really a software engineer I didn’t go to school to become a software engineer I just kind of programmed for fun just like seven years ago now I became a software engineer I just kind of transitioned into that role a lot of people don’t realize I actually have a master’s degree in information systems so I spent a lot of time doing education and a lot of my work focused on project management and one of the things I really like about doing the YouTube channel and publishing these scripts and stuff is that I get to do kind of what I want when you’re at a day job you kind of have to fill the requirements of other people and when you’re coding something that you like and you’re in charge of the project it makes it a little bit easier to work with and you kind of want to do it more honestly I’m much less likely to want to work on a work project after hours as opposed to something that I actually want to do for myself so that’s kind of what this stuff’s about all right now I need to actually calculate these values where do I calculate those bands okay so now we will actually have to call the ma function on this calculated value for the upper band I believe they don’t work okay so I actually do that here that is the MA function so we are going to be replacing the source well actually no that’s fine we’ll just replace the source and see if that works out correctly no I don’t think that’s gonna work so we’re actually gonna have to do two different values here we’re gonna create a smooth upper band and it’s gonna be calling that function and a smooth with lower band which is gonna call that function and we’re just gonna replace what’s being plotted with the smooth upper band because if it is the default one setting which isn’t smooth at all then it’s gonna be the same thing as the upper band plus now we’ll have the data from the original and the new one available to us if we need it instead of just having it all kind of locked in the function there all right so where was that MA and this in a tie what did I say that is adverb and smoothing ma type okay now we’re gonna put our source which is gonna be the upper band for this one and finally our period which is going to be the upper band smoothing period and to keep things consistent I want to add that in there excellent and now we can just copy and paste that and replace upper with lower and we’ll be good other than actually using the new ones down here so these are the bands where am i plotting these bands at I miss okay upper plot okay so we’re gonna be using a smooth upper band instead of the upper band now this one doesn’t say smooth upper band because this is the offset and we need that to stay the same oh man see we’re gonna take our smooth lower band say this as well you I think that’s gonna do it okay so it worked now to actually check to see if it’s gonna function the way I behaved so what I have done if you don’t remember or you weren’t here when that happened I am adding an option into this indicator for Bollinger Bands to smooth the upper and lower bands so you don’t have these jagged movements and we’ll see how that actually works out all we have to do is just increase the smoothing period and we’ll do this on the upper band first let’s change it from a 1 to an 8 how it worked it’s moved it nicely now that is pretty cool yeah I can already see some patterns in here that I would like Wow oh my the upper and lower band crossed because they were smooth that is amazing I didn’t think that would happen but yeah now that I think about it it’s entirely possible well it’s probably not gonna happen a lot especially if you’re using small numbers here let’s switch this back to like thirteen I really like this it’s cool switch out to a daily chart see if it actually makes any sense anywhere not really it’s just kind of funny seeing smooth upper and lower bands I I’ve never tried it before it’s actually smooth it a little bit over 21 Wow look how narrow those bands are from the middle to the upper band oh my goodness in here as well this is hilarious let me use a double exponential moving average and let’s smooth out 50 see how silly this looks oh wow [Music] that’s hilarious yeah I’m not sure when this is actually going to be useful but that’s kind of part of the reason I’m making this indicator so that people can actually play around with these things and find what they need to do and if you have any questions please just ask the chance and I’ll try and get around to that I’ve been doing this now for a little while on the stream here say how long is this one going back we’ve let me go in 40 minutes that’s not too bad I don’t know how long I’m gonna do this for if there’s anything anyone would like to see just let me know I think this is all the options I wanted to add did this one I’m gonna I’m gonna wait to publish what I’ve got and I probably publish it Monday with the video where I’m going well I’m my publisher tomorrow with a video tomorrow but I have another video coming up Monday I haven’t recorded yet but I’m going to be publishing some software well maybe not publishing it Monday but I’m going to be announcing this open source code that I’ve done and actually let me pull that up all right so I’ve been working on this application and now we’re plenty far enough into the live stream I can show you people who just browse by I’m gonna see this but for those of you who actually watch them I’ll let you see it before hopefully it’ll actually load up [Music] okay so I’ve seen people with trading bots that look kind of like this you know they got their menu they’ve got a browser in there it’s where you can capture alerts from trading view well I like that idea because I’ve had a lot of requests from people to capture alerts from trading view and I can do that with this I don’t have any in here yet I’ve cleared my data out and I don’t really feel like running it right now but what we’re gonna be doing is we’re gonna be capturing alerts from trading view now this isn’t actually going to be its own trading bot and at least not yet I’d like to start with some other things first what I’m gonna be doing first there is going to be social media so we are going to be capturing trading view alerts and posting the social media and I’ve actually done this already and if you followed me or you’ve been on the discord you would have seen these you see I can actually show you so this is kind of what it does it’ll post information from the alert and all of this information was in the trading view alert and it scraped that information from the alert this isn’t I I would say I haven’t seen one like this to where you can put in whatever information you once in the trading view alert and then spit it back out somewhere else so let me actually show you what I mean by that so you’ll see things like the signal here the symbol and some of this other information including the chart URL and a note I’ll show you what I mean let’s pull up the software again so on my alerts it’s actually kind of hard to see there let me pull it up on actual trading to you on my alerts you can see this one I’ve got some code in here it’s kind of like XML HTML essentially it’s just managed elements and we can pass whatever information we want from that utility I mean from this alert into the utility and it will parse that data out and actually save it and crap what I do and it’ll actually read well repurpose the data and send it back out on social media for you that’s the original intent of it is to kind of just share your alerts you can you can essentially create this to be your own bot for your social media and your trading alerts so you can tag somebody in it you can do all sorts of stuff and like I said I haven’t set up for Twitter and discord right now I’m working on telegram among a few others I’ve got a list of them on the github page I’ll go over that all that in the video when I get around to recording it you can see there’s there’s quite a bit going on here and it did post the screenshot you’ll notice that so there are alert settings you can customize the name of your bot so when you post it so when it posts for you on Twitter it is scored it’ll have its own bot name plus when you use this or you change this it will actually change the root element of your bot so if you’re like me and you’re sharing your screen it’s actually going to change this element to whatever you have in here but in lower case so if you want a custom element you can do that some of the other customized stuff you can also get a Windows notification when you get alerts you can customize your own referral URL your own disclaimer text and of course you have to enable tweets and discordant messages on alerts screenshots it’ll take a screenshot using built in a built in browser it’s based on chromium so what it’s going to do is it’s going to run an instance of chrome in the background and go to the URL that you pass through in one of the URL elements and your bot alert and it’ll take screenshot so you can actually crop the image and the crop start point and a crop size is here so these numbers are set up to where when you load up trading view on a 1080p resolution it’ll take a nice screenshot of just the chart and none of this side panel stuff or the left side navigation and that’s by default and of course I have a watermark image on there but I’ve got disabled for now because I want people to be able to use their own watermark image and yes this is gonna be free a completely open source I’m just doing it cuz it’s gonna be a fun project for me now I do have it set up to where I can potentially make some money with it on the side and I’ve got some other ideas in the future for how I can utilize this and other ways to potentially make some money on it because I am putting a lot of work into it maybe I’ll get around to that one day but you can see our discord settings you put in your token your server ID channel ID and some other information there’s some other options Twitter settings very similar if you set up a Twitter bot you’ll have all of this information and you can also choose whether or not you want to put your screenshot in this particular tazewell on Twitter it’s all pretty cool the test buttons work it’ll post something to your Twitter or your disk or just to make sure your tokens are working it’s pretty cool I put my YouTube videos in here as well so I’ve got the Pyne script tutorial series and the indicators explained and this is the referrals page on my website so whenever it loads there you know that’s the my website and it’s got the referrals page and then the shop is just the ecommerce merchandise section of the website and this is just a dropship dropship printing service so I’m not really trying to push this stuff when I push this out there but if somebody wants to contribute to me instead of just you know sending me crypto or using the referrals if they actually want to get something for the money that they give out they can do that but those pretty much the only ways I’m gonna try and get any money from it and I know it sounds kind of stupid trying to get any money from it because it’s a pretty simple idea taking alert and allow anyone to make their own like social media BOTS out of it but it’s actually gonna be more than that we are going to be doing something called memory-mapped files and what we’re going to be doing is we are going to be creating a local file that stores all the most recent alerts in it and what that’s gonna do is that is going to allow other local applications of their client applications on your computer to be able to detect the alerts from this application so think of it kind of like a web hook but for a local application so your application gets an alert from tradingview and say you have another app on your computer that need that you you program or somebody else programs that wants to access these alerts they can just access that memory mat file and get that data so there are client-side BOTS that this might be useful for I forget the names of them but there are like python-based thoughts out there that maybe they can access those memory mapped files and they could get the data that they need from there yeah so that’s one thing oh and another thing the I haven’t seen this anywhere yet but the stock screener I had figured out a way to basically create alerts with the stock screener page so what I’m doing is I’m constantly checking to see all of the stocks that are loaded on the page and this will go for all the screeners as well not just stocks but Forex and crypto but I’m running a scanner essentially here that checks to see all of the tickers that are loaded with the screener so you apply your filters on here on trading view and it’ll see all of them on here and then if anything changes it can create an alert to say hey your stock screener picked up a new ticker and this is the ticker or picked up multiple tickers and these are all of the tickers that it picked up so there’s a lot of stuff that’ll be coming there yes it’ll allow you to share those alerts but you know what what good is sharing your stock screener alerts or whatever if you can’t really do anything with it one thing the trading bee does really good well that they’ve added recently which is really good is the let me pull it up here the ability to send a web hook now I am going to set up this application to also send web hooks based on these alerts but why would you use web hooks with this application as opposed to just using the web hooks on tradingview well first of all tradingview doesn’t really have the kind of alerts that I’m gonna set up on the screeners so we’ll replace that but we can kind of do a lot more than tradingview does say what you’re doing here you’re sending out one web hook and say you’re using this to trigger an action on a bot son but somewhere like a web-based trading bot well you send this out and your bot picks it up and does what it’s supposed to do but you’re limited to the one URL and what I’m gonna do is I’m going to allow you to do essentially unlimited web hooks with it every single alert so you’re gonna get an alert and you can set this up in alert settings for your web hooks and you’re going to be able to add as many web hooks as you want for an alert that way you know if you’re trading with 10 different BOTS or you want it to trigger multiple web hooks for whatever reason you can do that so it kind of is gonna extend upon that somewhat but yeah it’s pretty pretty neat what we’re gonna be doing to start off with it’s gonna be pretty fun project I think and we’re also I’d like to also design the code a little bit so that it can work with plugins and the reason I want to do plugins is because I think people will want to contribute and there are certain things that I can’t do legally like working with you know foreign exchanges so like if we ever want to change this application to not only send out these alerts and kind of repurpose the alerts but if we want to change it to actually trade we could actually set up an interface for a plug-in so that when we get this alert you can just download plugins available from whoever develops them and you know they would be responsible for their plug-in and maybe it hooks up to you know by bit or bit mechs or whatever or you know maybe there’s some that’ll allow you to trade based on your alert with you know coinbase something like that and I don’t imagine they’ll ever be anything too complicated if there is ever any built in trading with this may be just like attempt to market order or a limit order place a limit order for you I don’t really plan to have this like managed position that’s a lot of work I’ve created trading bots very very complicated trading bots and I don’t want to do that that’s a lot of work I’ve already done it before the purpose of this application is to be very simple user-friendly and extendable so it’s gonna be pretty cool I’m gonna make a video all about it so it’s kind of been good practice for me to go through and talk about all this stuff and hopefully I’m not boring you to death just yet that’s getting kind of late here a lot of them been going on only 53 minutes Wow okay it feels like I’ve been talking for like 40 minutes but ever since I started talking about this it’s only been like 20 so these are all the built-in properties that you can get on your alert that it can process and I probably need to update some of these I’ve changed some of them and remove some sense but these are all the built-in values and I’d also like to have it to where you can use custom values I don’t know what I just heard I think it was my dog well so you can essentially create your own custom elements and parse out your own custom data or you know maybe you can work with JSON you can pass in JSON inside one of the elements and you can have objects or you know that can just be used to pass on for the web hook as a payload to a particular web hook okay oh and I forgot to mention there’s also another thing with the scanning for alerts from tradingview now I mentioned the screener and I mentioned the actual built-in alert system but another thing that this can do is it’ll actually be able to capture alerts from any website and this is another thing that I think is gonna be a good option for a plugin so you can essentially use like a drop-down somewhere to where you can select you know what type of scan you’re gonna do are you gonna be scanning tradingview stock screeners okay choose the stock screener trading view plug-in and hit scan and it’ll check for alerts here or are you gonna be doing the regular alert scan and select that plug-in you scan here or you know since if we can design this as a plug-in based interface you could have somebody create a plug-in to scan Twitter for alerts so you’ll look for you know post from some well-known trader like let’s say mr. Bollinger Bands himself on Twitter posts you know he’s gonna be buying a bunch of Bitcoin or something and you want to catch an alert from that you could have somebody create a plug-in that searches Twitter for whenever you know somebody within a list of people on Twitter post something about buying Bitcoin and you’ll get that alert using that plug-in and it’ll it’ll have to be a little bit different you won’t be able to pass in all this information but you can essentially hard-code a lot of it and really all you’re interested in on scanning for alerts like that is a ticker and what type of action so the alerts coming in from that particular instance on Twitter would be you know Bitcoin and the action would be by and then maybe there’s other information you want to pass in for the note such as the actual text of the tweet and the URL maybe the actual tweet URL itself and you know maybe there are some things we want to do later on for the alerts such as make it to where there are options related to the alert to where you can actually perform different actions for it afterwards and it doesn’t automatically do it for you that way you know if you get an alert in and you’re not sure whether you want the bot to process it automatically for you then maybe you can just have a like a menu on each of these items for the alerts and select what you want it to do okay I’ve been going on for a while now I think I’m done I’m not really gonna do anything else right now it’s been an awful lot stuff to go over here in the last hour or so but I will be publishing those changes that I made to the fancy Bollinger Bands indicator soon so hopefully you all enjoyed the livestream I’m trying to get a little bit more practice at these because I’m hopefully gonna be able to do these a little bit more here in the future and be able to interact with you all a little bit more and possibly also on tradingview as well post something there but that will be it for now yes I like the rest of my videos thinking have a good night because it’s actually really late here so everyone will talk to you all another time

YouTube Video Description

< br/> #bitcoin #crypto #cryptocurrencies #tradingview
???? IMPORTANT LINKS BELOW ????

??‍♂️??‍♂️??‍♂️??‍♂️??‍♂️??‍♂️??‍♂️??‍♂️??‍♂️??‍♂️
Social and other public profiles
??‍♂️??‍♂️??‍♂️??‍♂️??‍♂️??‍♂️??‍♂️??‍♂️??‍♂️??‍♂️
? Website: https://bigbits.io
? Discord: https://discord.gg/rapMn4z
? Twitter: https://twitter.com/BigBitsIO
? Facebook: https://www.facebook.com/BigBitsIO/
?‍?GitHub: https://github.com/BigBitsIO
?TradingView: https://www.tradingview.com/u/BigBitsIO

???????????
Referral links
???????????
?‍♂️ Want to buy crypto? Get $10 of bitcoin w/ your first purchase over $100: https://www.coinbase.com/join/johnso_dxz
? Sign up for a paid plan at TradingView and receive a $30 credit: https://www.tradingview.com/gopro/?share_your_love=BigBitsIO
? Browse privately and get rewarded with Brave Browser: https://brave.com/big406
? Receive bonus perks when purchasing Lightnite Game: https://lightnite.io/ref=BigBits
VIEW ALL HERE: https://bigbits.io/bigbits-referrals/

❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️
DISCLAIMER: All my videos are for educational and entertainment purposes only. Nothing in this or any of my videos should be interpreted as financial advice or a recommendation to buy or sell any sort of security or investment including all types of crypto coins and tokens. Consult with a professional financial advisor before making any financial decisions. Investing in general and particularly with crypto trading especially is risky and has the potential for one to lose most or all of the initial investment. In simple terms, you are responsible for your actions when trading.
❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️❗️