All right. Hello everybody. So today we will be dispelling some magic and Talking about kernel mode, which is like the core part of the operating system So first off but a housekeeping make sure you try and log into the GitLab server You'll be greeted with the nice your account is pending approval message and you won't be able to do anything I have to run a script so that you actually get access Because anyone on campus can log into it, and I don't want them to actually use it so just Bear with me on that you guys are mostly nocturnal, and I am not so if you don't get access right away Don't worry about it. I have probably asleep so Just let me wake up, and I'll run a bit later also by show of hands How many have some experience with like git and github and using SSH keys and all that stuff? It's like half or judging by last class. That's like everyone, but no one wants to put up their hands So I'll so first lab. I'll give some instructions with that. Oh, is that a question? No. Oh, whoops Lower the screen down Sorry, didn't see that All right, that's better so Since people are comfortable doing that that actually should be good So we'll go with that. So just make sure you log in everything's gonna be released on Monday So that will be your first lab It's probably a bit on the shorter side Which students generally don't complain about because I'm assuming setup may or may not be awful, but I guess we'll find out so back to course content so Everyone's kind of had some experience with assembly in general. There's three major instruction set architectures or ISAs used today and It's just the machine code or just magic numbers that the CPU actually understands because at the end of the day Everything it's just numbers in computing and it's just how you interpret them It's just the magic computers are actually fairly dumb things So there's x86 64 bit which is aka AMD 64 You might see called there the same thing That's like desktop servers non-apple laptops things like that then there's a arch 64 or arm 64 Which is like pretty much everyone's phone tablets And if you're lucky enough to have one of the newer Apple laptops that also runs that and then there's a newer kind of instruction format Called risk 5 aka RV 64 GC That is like an open-source version of arm that you could actually implement your CPU on without having to pay arm like millions of dollars. So that's One way the market's kind of going people mostly use it for embedded and it'll probably switch over in schools at some point Some of the examples I might show are risk 5 because there's an MIT project that actually implements their own kernel using that So we'll touch on all of them a bit in this course Hopefully less x86 because it's really really really ugly. So as part of ugly This is kind of it's permission It's permission checks. So they have a concept called rings to control instruction accesses and each instruction so like each assembly of structure Belongs to a certain ring of permission where you are allowed to use it and all the rings are like complete Sub or supersets of each other. So if you're using the Kernel ring you can access everything in the rings above you so you can access all user mode instructions and But if you're in this kernel ring zero here, you can't access anything in hypervisor mode. So these are the three Modes, there's generally a hypervisor mode on x86. It's called ring negative one Which is why one of the reasons why x86 is pretty awful And we won't touch hypervisor mode to the end of the course. So don't worry about it Then the next is kernel mode. So kernel mode is ring zero and those are the CPU instructions that can actually interact directly with hardware And there's a separation that current the kernel of the operating system is the only thing allowed to touch hardware and Your normal applications aren't allowed to do anything with it And it does this by running the actual processor in a different mode that just doesn't have access to the instructions So so far you've been using user mode Which is ring three and you might question why ring one and two don't exist and the answer to that is it's x86 Don't worry about it.  You've been running so far in your life You can't touch hardware directly you have to go through the kernel Even though you may not have known the name of it before but you can't touch hardware directly Something does it for you on your behalf, which you might have thought is the operating system before but more technically It's the kernel and we'll see that boundary Really really up close and personal today So you can think of it as like yeah this hard boundary where there is something called user space So that's all of your normal applications that just run in user mode hence the name user space It's kind of a good name and then there's kernel space Which is the code that runs in kernel mode that can interact directly with hardware and You so far have not been allowed to use it or even probably know about it now, but now you get a chance to So there are these things called system calls to transition between user mode and kernel mode Which is what you have been using even though you might not have known it so Funnily enough you can think of them as kind of like C functions if you want and You can think of the kernel as a big library if you want to make things easier and amazingly the whole kernel only has 451 functions at the time of this lecture and that's it That's all your programs can ever do to interact with hardware Which is pretty amazing that the Linux kernel survived like how old is it now? Like 30 40 years and it only has 451 calls that do everything So we'll get a taste of those calls today. So Yeah, we'll get a taste of those calls today. So as a quick aside So there's a difference between an API and an ABI So an API just is like a high-level description of something and an ABI is like the nuts and bolts Bolts details like when you were writing assembly Exactly how to pass your arguments and everything like that is part of the ABI So like the first argument should go on the stack or the first argument should go in a register or something like that So that describing that as part of the ABI an API is much more general It's like hey, I have a function that just takes two arguments. I don't tell you where they are It's just like yeah, it takes an X and a Y and does something and gives you a number back so that abstract just a description of like inputs and outputs and Just being very general about it is an API and then a bi specifies exactly how to lay out that data and how to like Concretely communicate with it. So like that same function So a function that takes two arguments using the C calling convention So that's one of the nice things your compiler does is if you give a function with arguments It will make sure that generally they're passed on the stack and they're Specified in an order because you know stacks could grow up. They could grow down The stack pointer could point an empty element. It could not so all that is defined in the C calling convention and That's all done for you by the compiler. So you don't have to worry about it. So Till now you haven't really had to deal with an ABI But that's a important distinction. We'll see later in the course when you get to libraries But it's good to know that API high-level description ABI like nuts and bolts details on that CPU Like what exactly goes where? So doing that this is a system called ABI for a Linux on Like an arm64 machine so Unlike assembly where we were just doing a call instruction or something like that to do a system call there's a special instruction called SVC and SVC just lets the kernel take over and do something and the ABI between that is it passes arguments and registers so the machine has a bunch of registers it only uses was a 7 for For system calls so in the x8 register the number that's there specifies what function to call so they're just randomly assigned numbers and then You are allowed to have up to six arguments x0 to x5 So can anyone tell me any limitations of this as an ABI? Yeah, yeah, so your function would use all the could use all the registers So the the function could overwrite the arguments or registers do whatever with them And then they could restore them at the end if they wanted to that would be part of the ABI But for now we don't care about that so like that's caller save and colleague saved. Yeah It's just a special instruction that initiates the kernel to take over and Do something in this case it would be doing whatever that system call is based off whatever magic numbers in x8 So you can think of it as like doing a system call and it's like equivalent to a call Function in assembly, but you don't need an address or anything. It just goes straight to the kernel Yeah Yeah, well, you can't really use other registers, but so I guess another way of thinking about this is How many arguments could my function have using this ABI? six right Well, if I had one to make a function with seven arguments So yeah, one of the responses just put the stuff on the stack, but the stack Is not part of the ABI so you wouldn't know how to get the seventh argument because you have no idea where it's Where it is because it's not defined Right, so this is the complete ABI. There's nothing else So this means that I can't have a function or a system call with seven arguments Because I didn't define a seventh argument. You don't know where they are and Also, all my arguments are exactly the size of a register. So what about if I want to pass? I don't know like a 128 bit number. Well, I can't I'm assuming like 64-bit CPU so all my registers are 64-bit and if I wanted to pass this argument as a smaller value That's like, I don't know four bytes or something then I'm wasting half the register because I have to use a register And the rest of it would just be wasted space So, yeah So as the stack would exist, but it's not defined as part of the ABI so it doesn't use it at all Yeah, yeah, so it would be possible to find more argument But then you have to change the ABI and then everyone has to agree because this would be like compiled into your code and As soon and like the golden rule of kernel development is you never change the ABI So as soon as you set this you have to follow it until the end of time, which is like why Windows and stuff like that has a lot of weird old edge cases. It's because as soon as they implement something They can never undo it because someone that pays them will have their software break and they will get very very angry So this is like the full ABI you can assume it saves the rest of registers and doesn't touch them But this would be the full ABI for Linux so if we could Pass more arguments if we wanted to like one of them could be a pointer and then we could say hey That points to something that has a lot more space But in general this is how you do system calling our faces. There are other ways around it So we can represent the system calls just like regular C functions except We know that the arguments are actually going to be passed in registers And it's not going to use like a C assembly call. It's going to translate it to something like we saw before so for example if we have a Right system call that takes a so it right writes bytes to file descriptor So it's API. It's high-level description is it has three arguments first one is FD Which is just a file descriptor to write bytes to which is just a number and then an address of a contiguous sequence of bytes so a buffer and then a count of how many bytes to write from the sequence and then they all have types so the type of File descriptor is int FD. So it's just a normal int Then const void star is just a fancy way of C saying it's a pointer to something I don't care what it is. Don't worry about it. It's just a pointer and Then size T is just an unsigned integer that is as big as the architecture So it's an unsigned 64-bit number and then S size is a signed version of that. So it's a signed 64-bit number. So it could be negative and Then there's this exit group system call that takes one argument that int status And it's just the exit code for running the stats and as soon as you call this Whatever program is running is now exited. It's dead. Everything associated with it is now gone And so the exit code you'll see that the types an int But it says the exit code is only valid for 0 to 255 And that's because it's defined that it just chops off the rest of the number and truncates it and whatever the lowest byte Is is the return value. So you may have seen the return value for that or when you run some applications So that's where it comes from So I left you off with this teaser. That's 168 byte program, which is actually print hello world and Those two system calls I introduced are exactly what this uses so everything on every binary file is just some binary format and Everyone just happens to agree on it and otherwise. It's like fairly magical So for example the magic to an elf file So elf stands for executable and link linkable format elf So that's just a file format and it describes an executable program So any elf file will start with four bytes what we kind of saw before we saw 7f followed by the ASCII ELF all in capital letters and then if you dive into the file format There's some bytes after that that signifies, you know, if it's a 32-bit or 64-bit machine if it's little endian or big endian And most file formats follow the same thing.  So when we wrote that program, we you know played around with stuff. We figured out that That our hello world program, you know, it started with elf, so it's an executable file, but funnily enough So does pretty much everything else. So even like libc, so the C library that's just an elf file as well and Pretty much every other file has follows the same magic thing But just the magic numbers happen to be different. So for example, where is it? like jpeg files they always start with those four bytes and Spoiler alert the only way your computer knows what a jpeg file is is it just reads those four bytes And if they are exactly this It knows it's a jpeg file and that's like the magic. Yeah Yeah, the question is can I just like Say it's a specific format and then format it badly and then do some fun tacky stuff And yeah, of course, that's like a whole whole category of exploits So if you're writing a program that uses jpeg files, well, you have to write it so that it Can handle invalid files and hopefully just throw them out, but reading like Reading invalid files wrongly is all sorts of hacks you can do so that's like sending was it like if you sent a Specific crafted jpeg file to like an iphone before you could get access to the entire phone So of course you can do things like that. Yeah So indian so is like how multi byte numbers are formatted So like everything is byte addressable, right? But if I have like a four byte number Well is the zero with byte like the largest part of that number or the smallest part of that number and Indian just says oh, it's the most significant bite or the least significant bite. So it's just the order But everything we have is little indian and yes, so was it Baseball and yeah PNG same thing just has a magic bite at the top and their magic number has the letters PNG in it but this is Magic you'll see everywhere. So sorry. I dispelled that but like all file formats follow this it's actually called a magic code and That's the illusion for everything so Like Mac OS will have that their magic code on a 32-bit machine is like the binary if you read it out in hex it says feed face and Their 64 bit is feed face up So everyone does that. It's a very common thing to do So if you want to read more about the file format, you can use this read ELF So it will read everything about that file format We'll skip a bit of it for now So basically it contains like a header file and none of this is really important It's more to show you that there's actually no magic here So there's like a header file that contains that information about the machine So what specific architecture should this program run on and where's the entry point of it? And the entry point is where the kernel will start executing code for that and that's it And it doesn't correspond to your main function if you compile something with C and Then it takes like Something called program headers that are required for executables and section headers required for libraries We don't need to know about either of them Just know that this like minimal example will just have one program header that says hey There's some executable code here So let's go ahead and look at that so if we just do read ELF on our Fought on our small file We can see some information about it. So it says hey, it's little indian. It has a version number Has an OS ABI so that's where that ABI comes from so it's defined there So it's saying that hey, I run on unix and I use that ABI So it knows to expect system calls to happen in a certain way And then it has a version generally you don't touch this because you never touch the ABI or you're going to break literally everything And then the type the machine it runs on so this is an arm64 CPU and then version And then here we have an entry point that you actually specify and Then later it says hey this the size of this header is 64 bytes and the size of all the program headers are 56 bytes so Those are the two things we need in our ELF file So just right there that's 120 bytes of our 168 so like 71% of this file is just completely wasted just in describing the file so other than that this is the program header and Basically all it does is say Hey load this entire file which so a8 is a hundred and sixty 168 it just says load this entire file into memory and then you get to say what Address you want that whole file loaded into memory at so here I just say load the entire file into address ten thousand why ten thousand because I felt like it You can literally say any number you want except for zero. You can't say zero But other than that you can say whatever number you want so all I say is load everything starting an address ten thousand and that's the hundred sixty eight bytes and then I Say start execution at 78 78 and hex is 120 so that just says the first byte after the header files And again, this is like way too much detail than you need to know So if I have that my header files my information about it waste some space and then the next 36 bytes are instructions and Then we have 12 bytes for the actual string. Hello world so here just adding instruction start at 78 which is 120 in decimal So that was our starting address. So it just says start executing this instruction and then this is the address of the string So it's like ten thousand nine C because nine C is a hundred and fifty six So That's all and that's all hello world is So This is the actual important part of the lecture is this S trace program so this is really really helpful when you do all the labs and Not even just the labs in general so there's this system call interface and Literally every program has to pass through this interface. So S trace will tell you all of the system calls that actually occur So we can go ahead and play with that for a little bit then So if I use S trace whoops So if I use S trace on my program I had before I See all of the system calls it makes and even some it doesn't make and so first it starts with this exec Vee So we'll get into that later in the course. That's basically someone else called this and that's how you execute a program So something else executed this hello world program for me So I can thank them and then here it has a right system call so writes to this magic number one and writes the string hello world with the new line and writes 12 bytes of it so 12 bytes is Hello, that's five space six World that gets us to 11 bytes and then a new line, which is a single byte. So that's just 12 bytes and Then we see the actual hello world and a new line which kind of looks ugly that these two outputs are getting mixed together So you'll learn this later in the course, but I can unmix them together and do something like that. So it just looks clear So here is my right call I write hello world and I write 12 bytes So it returns how many bytes actually get written to and then I call exit group with zero and then my program's done So all my hello world does is make two system calls. Yep Yeah, so the Question is does that mean this this file can't be run on Windows because it doesn't have the right ASA and yeah It won't so if you have a virtual machine, you could run it because you'd be running Linux But anything else won't run this so I even have another file here. That's the exact same thing So it's for Linux, but it's for x86 So it's for a different is a which would have a different, you know It has different machine code and it would have a different a bi So if I try to execute that it says exact format error because That's not what this machine is so that so if you download the examples thing and you're actually running it on like AMD or Normal more normal CPU. You can actually run that one, but not the other one that I just ran So that's why there's two versions of it because now they're specific and I can't transfer it I can't run that on Mac. I can't do it on anything. I have to use Linux and I have to use whatever the actual ISA is Okay, so there's just a little bit of magic here, which is I write to just this magic number one These everyone's used like printf. Has everyone heard of like standard error standard out before? Yeah, thumbs up. Okay, so those are just magic predefined numbers and on Linux They're just certain file descriptors so you just memorize them and we'll see them later but like File descriptor zero is standard input file descriptor one is standard output file descriptor two is standard error And that's it. So if I write to file descriptor one That's writing to standard out and I will see it when I execute something And to show you that I'm not lying and there's no magic going on Let's see So remember we had this hello world. So now we have this S trace utility that tells us all system calls something makes and Because we know that there's user mode and kernel mode Everything that does anything has to pass through this. So we can go ahead and S trace S trace hello world Which is our C version of it So let's go ahead clean it up a little bit So if we do that it's got a lot more crap But at the end of the day the last two lines whoops the last two lines are exactly what we had There is a right To file descriptor one of 12 bytes and then there's an exit group and then there's a whole lot of crap above So this is all the stuff C did which isn't that bad. So it used Some BRK it has like some n-map. We have some weird things preload What I don't know what that is. Well, I do but you don't then goes through And then here we can kind of recognize this that's the C standard library So your program if you compile it and see one of the things it does is it loads the C standard library Which has to go through the operating system? Well and more specifically has to go through the kernel Which is part of the operating system so this we can kind of see here is it's doing something with libc and Open returns a file descriptor, which is just a number. So file descriptor three is the standard C library and we can even see that it reads from three and Hey, it looks familiar. It says elf So we saw before the C standard libraries just now file to stupidly enough It's the same like 7f For some reason. I don't know why the default Output format for binary is an octal. So that's why it looks like this So if you translate octal to hex, they're the same number Don't ask me why the default option is octal.  We didn't really need to do So just to really show you that hey, you know C is not that bad and this is what Anything does no matter what language you run Well, I have hello world in Python. So hello world in Python. Let's clean it up Well, we'll kind of do the same thing it has something before but at the end of the day It's exit group at the end and then there is the right hello world But instead it does. Oh gee Yeah, just wait for it. Uh-huh. Yep. So it does a lot of stuff All right, so just for fun someone's I think I heard it last time JS so JavaScript well exit group at the very end and then before that oh God, I don't even see right Did I miss it? Is it there? that that Doesn't look like hello world Wait, does the JavaScript one not even work? No, it works See more evidence why you should never write anything in JavaScript Wow, that is the ugliest thing I've ever seen Okay, so if we can do S trace we can say just give me certain function calls So I can say S trace just tell me about all the rights. So Java writes Fought to file descriptor five. It writes a star. What and then it writes to file descriptor 17 So it opens 17 at least like 17 other files for for hello world it writes Just zero or one and a bunch of zeros eight, huh eight Then it does it well.   So it does there's that right to hello world And it actually writes hello world, but For the love of God don't use JavaScript Okay so if you wanted to like really know about You know take those Instructions that like 36 bytes and turn it into something you can actually read like assembly you might read You could like copy and paste those 36 bytes into a disassembler and you'd get something like this to see that Hey, it actually match it like it actually matches the ABI so there Remember x8 was like the register that has a system call number So all this means is if I put just 64 in it and then later do an SVC instruction That means I want to write something so the first argument would be one So I want to write to file descriptor one and then the second argument on arm I have to do it in two steps, but just make basically makes the address point to the string and Then I say that the count in the third register is equal to 12 That's how many bytes there are and then this would actually do the system call So whenever you start executing the next instruction The kernel would have run and actually printed hello world out for you And then the next one is I'm setting up a call to exit group so exit group just wants 5e or the number 94 in that System called number register x8 and then I just give it the value zero and make another system call So that is the actual assembly of my hello world program So it just makes two system calls write an exit group which everything else That's like the minimum thing you have to do to do hello world So the remaining 12 bytes well, of course, we're the string itself so ASCII encoded they just look like that including a new lane and If you ever have to do like low-level ASCII stuff where you're reading characters Fun little thing you could do is bit 5 tells you whether or not it's a capital or a lowercase letter So and they differed by 32 because that's what bit 5 is So if bit 5 is a zero, it's a capital and if it's one, it's a lowercase. So that's a That was an intentional design to make really slow Machines actually be able to tell you if something's a capital letter or not really really fast So that's a count for every single byte. We saw what C does So anyone tell me the difference between our string and like normal C strings Yeah Yeah, it's not null-terminated So null-terminated that's just a C thing Strings don't have to be null-terminated. In fact the kernel doesn't want null-terminated strings because that write system call Just writes bytes and you don't want to restrict what bytes the user can write So if I said hey write has to have a null-terminated string suddenly I can't write a Zero byte to any file and that'd be why it's a virtual machine So anything we do to it if it wrecks it, it's fine Especially would not let you test your software and like write kernel code on their machines Because if you're writing kernel code while you've direct access to Sorry The live stream stopped on YouTube or The discord one oh Seems to work what what died? Okay, I assume it's still alive If I think the stream might have dropped I have a recording of it anyways just in case so When you actually write kernel code, it's a bit different in that the kernel is already running so you can Actually inject code into it on demand and that's something called a module you can think of it kind of like as a library so whatever loads it would execute some Function that you tell it to whenever it gets injected into the kernel and then execute We'll see an example and we'll see an example of it later, but basically there's no main There's no nothing kernel developments a bit weird But you have full control over the hardware and everything else right in that machine because you are all powerful so there's two type two major types of kernel designs or architecture designs, so we saw before this is clear user space and kernel space So there are different architectural designs So the first one's called a monolithic kernel which basically runs most of the operating system services in kernel mode directly so that's Anything to do with virtual memory process scheduling inter process communication like file systems Everything in this course and device drivers everything will be running in kernel mode So Nothing is done in user space kernel mode just they throw everything in the kitchen sink into it and The other design is the opposite of that where you try and put as little code as possible in kernel mode Because it is all powerful The more code you have the more bugs that you could have So the larger the attack surfaces as someone gets into kernel mode they get into the whole machine So one idea is well, I'll just put a little code there as possible So it is possible in some designs to move file systems and device drivers and more like advanced types of communication between processes to user space and just have like a minimal set of things in kernel space But the things that have to be in kernel space Our virtual memory like managing the physical memory process scheduling saying what runs when and basic Inter-process communication because it has to go through something And then question if I'm running parallels VM fusion or UTM. I'm using QMU Which is basically what UTM uses so answer that is pretty much UTM But I will give setup instructions for Windows and Mac For the lab and hopefully that will work But I'm setting aside some time for lab one of like setup issues just in case because it'll be new and hopefully more modern so monolithic kernels and Micro kernels are kind of the two Main architectures, but there's always fuzzy lines depending on who you asked So like in Windows some emulation services aren't in kernel mode. They're actually in user mode At one point Windows actually had an HTTP server in kernel mode Because I don't know why but that would obviously be a bad idea because if your web server gets compromised Hey, they have access to everything which you can tell probably wasn't the greatest idea but the benefit to having everything in kernel mode is It takes time to do a system call and it takes more time than our normal function call So the more system calls you have the slower your thing is going to be So if your web server one is really really slow because it has to go from user to kernel to user to kernel Well, one performance thing you can do is to say put the whole thing in kernel space and I don't have to worry about it so But that's obviously not a good idea for security reasons and then Mac OS has device drivers in user mode, but like file system stuff is still in kernel mode So it just depends on the underlying architecture there's also like research areas to like try and push the boundaries of micro kernels more and you know Surprisingly enough they called them nano kernels and Pico kernels as like, you know never doubt the imagination of a computer scientist So they just try and push even more and more stuff into user mode instead of being in kernel mode But that's like research stuff that you might get interested in later. So there's many different types Real ones are typically messy and don't fit that exact definition So to wrap up so The kernel that's the interface between CPU mode boundaries and those are hard boundaries And what we can definitely say is that the kernel is part of the operating system and past that it gets fuzzy But the kernel there's a real nice boundary there that so it's that transition from the CPU being in user mode to kernel mode and what instructions it can access so Clear separation between what's a kernel what's not a kernel a little bit fuzzier We just talk about operating systems in general and what makes an operating system So code running in kernel mode is part of your kernel That's an easy definition and then system calls are that interface between them and every program No matter what has to use that if it's using Linux It will use that so you can s trace literally any program you ever write in any language And you can figure out exactly what it does because guess what they're all running on the same kernel and You get to see what they do so no matter what language you write in this course is definitely Definitely going to help you because hey, that's what's actually going on and then we saw some file formats Less important, but we saw how to find a simple hello world and like the minimal Minimal program we could ever write that takes away all the magic the difference between an API and an API and Most importantly that s trace command So you really want to know that s trace command and then we just saw it Different archa kernel architectures that basically just shifts how much code is in kernel mode so Just remember I'm pulling for you


of Kenya and also the head of the Churches of Vision Church We welcome you all in this meeting in this meeting Dr. John O'Kinda, who is the director of Dr. Peter John, who has been working in the city for a long time. I am Dr. Peter John Katana, who is a family member of you, and I would like to thank you, for your name, for your mother, for the love you have for your mother. May the Lord continue. May the Lord continue. I want to take this moment, just a minute, to express our love for you, for your mother, for the love you have for your mother, for the love you have for your mother, for the love you have for your mother, for the love you have for your mother, for the love you have for our Mother. May the Lord continue as long as God wills you to pray for your mother, and may God have her love for you! O'kanaganari, may God be with you forever. May the Lord be with you for another life, Bless you I Talked about the president having gone to Britain the president going to US and she was so brilliant and she was putting things together When you do. Doctor. You are not. You are not. You are. You are. Mungo Faridji Kowakati Umugumu. Yaka Bononapia Ousiyano Pamoja Nakanesa Lapefa. Nata Kaniseme Asante Sana Kukutweshimu Kiasiiki. Nasi Marako Yakuanza Kujya Kwomboleza Pamoja Nasi. Ata Apu Nyuma Umekua Karebu Nasi. Namsa. Pamoja Nakanesa Pa Kenya Kusema Yakuamba Munguetu Akawa Ungozen Akawatendei Mema. Niki Malizia Nasematu Yakuamba. Wito Yetu Nakuamba Tungemukono. Aserekeme Natoeza Kuzalisha. Chakula Kutosha Pa Inchini. Kosababutu Kiwana Chakula Pa. Ambo Mumeanda Sherehi. Mumefanya Kazimasa Mengisana. Dr. Munai, I remember you and your team working many.  Your sisters and all the cousins and uncles, we are here for you.  As Kofumu Kutu Pa Bono Atulete Wibawao and Pia Introduction to your family. So Karebu Sanna, Bishop Daniel. I want to take this opportunity to greet all of you in the name of the Lord Jesus Christ. Muadhania Gohsua. Muadhania Gohsua Rege. The Lord bless you so much. Kuna Kazimingisa Nambaya Inayendelea. Lakini Mambo Yabarabara. Irikwai Mesimama. Kosababu Mkontrakta Wetu Hawa Yalipua. Natulikuta Deni Yabirio Nimi Yatisa Yabarabara Pekiake. Nisemapalekasarani. Mengine Wakadinkemea. Hati Akoa Mamina Inginia Wengine Belia Wageni. Lakini Mimi Onajua Nemutia Kusema Ukweli. Ukweli Diyomunguana Penda. Nabilia Inasemadu Semai Ukweli Kosababu Ukweli Nia Kudumu. Tulingia Koserekali Tukakuna Akuna Chochote. Kosato Ozetu. Atapanya Wadikua Metoroka Akuna Kidi Agukula. Nwaivio Rice William Ruto Akuna Kibarua Kingumu. Nningetagaku Oma Ininji Tafadali Mwenilea Kumombaia. Ajarie Kupufua Uchumi Wakanyahi. Sahi Hadutaki Kukopa Pesa Kosababu Tumekuta Deni. Ia Ten Trillion. Ambaya Karibbu Injiye Tuipi Gwekengere. Kwaivio Lazima Tutabufute Bin Mumpia Ia Kutafuta Pesa. Ia Kulipa Hawma Contractor Warudi. Ndani Yamiya Zimbili Tatu. Tutakua Tumepata Pesa Kiasfalani. Tuongena Hawa. Tuwapatiye. Warudi Kua Barabara. Barabara Siendele. Vijana Wapate Kazi. Wale Suppliers. Zia Diesel Wapate Kazi. Wale Wakusa Smiti Wapate. Nandiopia Ifufuwe Uchumiwetu. Naniwatu Kali. Iwatu. Sahi Wame Lipa Makaseti. Ia Nation, Sunday Nation last week. Wanapewa Pesa, Shiligi Bin Onimoja. Wana Lipa Standard. Anzeine Kulimawiu Regati Kashiagua. Atidia Orope. Mimi. Mukini Angalia. Videomonani Jua. Mimi Muti Awagopa. Atakapa Mimi Naesa Awagopa. Mambuia Mukulima Ninaesa Onokia. Mimi Mimuambi Oininika Tells. Tuwene Pesa Kua Iwatu Iwatu Makaseti. Muandike Kutoka Page One. Mbaka Page Tharte. Muandike Ode. Munjari Mukuni Chafua. He has turned, I him a M Muslims to me He has turned, I'm talking Chinese people. He has turned, I'm talking English. He has turned, I'm talking Italian. I am from Kileshe, Bishop and family, I am from Pohle, I am from Mehozunika, I am from Rafikiaco, I am from Mombia, I am from Shikiliya, I am from Fariaki, I am from Ongozi, and I am from Pohle, Sana. I am from Kohapa, I am from Nini, I am from Nini, I am from Rafikiwetu, I am from Himu, I am from Rafiki, I am from Kocini. I am from Kenya, I am from Leipo, I am from Kichunga, I am from Hapodiyobaraka, I am from Maana, I am from Kutunzwa, I am from Kenya, I am from Fasi, I am from Kaniya, I am from Nguvu, I am from Nyumbani, I am from Kushuguliki, Kodolan's message from His Excellency, Dr. William Bruto, President of the Republic of Kenya and Commander-in-Chief of the Kenya Defence Forces to the family and friends of the late Mama Mary Wangechi-Kabono. We join you today to say goodbye to our mother Mary Wangechi-Kabono. I extend my deepest condolences to the children Anne, Margaret, Daniel, Rosa Nesta, to the grand children, the extended family, friends and the entire community. It is my prayer that the Lord grant you the strength and peace to bear this loss. Mary Wangechi-Kabono was a pillar of four generations. We have lost our mother, our sister, our inspiration and our fulfilling source of love and encouragement. She was hardworking and a woman of deep faith who wholeheartedly served the Church and supported the cause of evangelization. Our combined presence here today confirms she lived a good and wholesome life based on faith and family. Let us pray for Mary that she may, through the mercy of God, have eternal rest and her family-fied peace and comfort. Jesus said unto her, I am the resurrection and the life. He that believeth in me, though he were dead, yet shall he live. John chapter 11, verse 25. Rest in peace, may Mama Mary signed William Samuel Ruto, President of the Republic of Kenya. Amen.


Think Tech. Here we are at the one o'clock. And we're talking about community matters. We're talking with Tom Yamachika, who is the president of the Tax Foundation of Hawaii, a very important institution. We'll talk about that. And the title of our show is The Effects, the results of the 20, in tax terms, the tax effects of the 2017 legislature. It's a short show. I think we're about over. Well, there's a lot of stuff that happens. We're talking about that. Tell us about the Tax Foundation first. Well, the Tax Foundation is a government watchdog agency. We try to be there at the legislature monitoring what's going on over there, so taxpayers can know what's happening to them before they receive notice in the new tax forms or whatever. We're there to inform people, especially the legislators, about what the effects are of what they're doing. And your view of it. I say you, I mean the Tax Foundation. I mean, do you think that Hawaii, traditionally, say, since statehood has been well run from a tax point of view, a tax and benefit point of view, or not? And if not, what is the sea change that may trouble you and what we need to do about it in a conceptual way over time? Well, one of the things that I think is very troubling is how we've managed our government labor, especially in terms of the post-employment benefits, and what we promise to pay them. For example, if you retire after so many years of service, not only do we give you a defined benefit from the employee's retirement system, but we also have a medical plan that basically covers you for life after you leave the government for medical expenses. That's a huge benefit, huge, worth in inestimable amounts. Yeah, which we all have to pay for. That's the thing.  Did anybody think that once, you know, that people would get older and that they would get sicker and the population would increase? I mean, those kinds of things that we are kind of dealing with as we now look at the, you know, what's in the plans, how much money there is, and how much we need to have in there to fund these, you know, the anticipated cost of the benefits when these people retire or get sick or whatever. Huge, unfunded liability, huge. It's unknowable how much it's going to cost us, except it's going to cost us more than most other states, just that one item. But how do you roll it back? How do you get to a balance? How do you get, you know, to actually have money left in the till to build the state, to build infrastructure, to build new programs, you know, to have the community in general enjoy some of its tax money? Well, there's a couple of ways to do it, one of which is very unpleasant, and that is you start taxing the heck out of more people. At some point, poor people, everybody.  And a lot of people are doing that. We're seeing, you know, a net amount of people going outside of the state, leaving, you know, leaving our fair shores. And, you know, probably it's not tax being the only thing that's causing it, but it probably doesn't help. Yeah. Well, it's the one that you can't really argue with.  There was a piece that Kaliyakina wrote in his weekly blog about this very issue. You know, we thought that, you know, the kids out of Punahou, Iolani, the kids out of, I don't know, any number of schools out of UH leave town. They leave town on a regular basis. We have in migration, our population has increased modestly, but we have a lot of talent leaving town. And, you know, we've been talking about that, living with that for several years, maybe decades.  We're losing it at all ends of the spectrum now. That's true. And the population figures have kind of reversed in recent years. Yeah, there's people leaving. Yeah. Well, let's talk about this legislature because, you know, like it or not, the legislature is very powerful. And like it or not, we collectively, the state, rely, we rely on the legislature to do the right thing. And so often our expectations are not met. Going into the 2017 legislature this session, what were your expectations? I mean, if you had any, I mean, sometimes it's hard to have them because there's not enough information. But did you have expectations? What did you expect would happen? I didn't know what would happen. I know this is not an election year. So in years, other than election years, you have big advances being made in the tax policy front, usually that means there are tax increase proposals. And we did not get disappointed on that front. There was a whole bunch of stuff. Matter of fact, as of February of this year, there were so many tax proposals circulating in the legislature that we just almost couldn't keep up with that. That's really interesting because you're differentiating this year against other years and saying that there were more tax proposals in 2017 than earlier years. In the beginning of the year, we put out a digest and used the digest to seven or eight pages long at the beginning of February. This year was 14. Tells us something. Why? I mean, is it something in the weather, the water, sunspots? What is it? Why all of a sudden this year do we have all these, did we have all these proposals for changes and increases in tax in Hawaii? It's just a very good question. Seemed like it was popular or something. Somebody got the idea and everybody ran with it. Yeah. So, but does it mean, does it reflect the fact that we're in trouble financially and the legislature or the operatives in the legislature felt that they needed to raise money? That's why all the tax changes? Well, a lot of changes were proposed, not a whole lot got through. Lots and lots of things died. That digest, the start of this 14 pages is now three. Does that mean that lots of stuff dropped by the wayside? Passed? Well, yeah, I got three pages of stuff that passed the legislature as on the way to the governor. Well, let's talk about some of the bills. The bills that you followed, the bills you thought were, oh, I don't know, threatening to the taxpayer or that would have some profound effect on the economy or the tax structure. Okay. Well, let's start with that one then. There's House Bill 209. We talked about that a little bit earlier offline. And that is basically an individual income tax hike. Okay. In which? In rates. So remember the 9%, 10% and 11% tax rates that we thought we got rid of a couple of years ago? They're back. Effective 11 2018. Those rates kick in again, assuming this legislation is approved to do things like providing poverty relief programs. There's something called the low income household renters credit. It increases that there's something called the food excise credit, which is for low income people and continues and increases that we enact the federal earned income tax credit. Or we have a state analog to it, it's 20% of the federal amount. But ours is non refundable. So that's in the bill as well. And it's being financed with tax increases on the quote unquote wealthy. So we do have tax increases already this year. Yes. That's how serious, how large, what is the dimension of that tax increase in money? For me. For us. Well, the tax increases kick in at starting at $200,000 for marriage. So $200,000 is the 9%, $300,000 for 10%, and $400,000 for 11%. So that for singles half that for head of household, it's 75% of that. I remember, I mean, it's not hard to have this memory that Hawaii's income tax is one of the highest in the country. When we initially enacted the, you know, those rates back in 2009, you know, right after the recession, we were the top of the country. And then, you know, California felt that it didn't need to be didn't want to be outdone. So they beat us. A little competition. Yeah, a little competition there. And I think also, either tax at you sets or Connecticut or New Jersey, what one of those. But they don't have a draconian gross access tax like we do. No, they don't. And that's totally me. I say it again, totally regressive. It hits the little people on the head and they don't realize it. Well, it's funny, you should say that because because this bill 209 is supposed to be the antidote to that. It's supposed to make our tax structure more progressive. Well, I suppose, well, we didn't get an increase or rather an extension of the gross excise surcharge, but we still have the gross excise surcharge for a while. And we still pay this, you know, high gross excise rate to for everything. We can go to most of the states and there are exact exceptions and exemptions that you that don't apply to go to Oregon. I love it. You go to Oregon and you buy something, you know, and a cash register in a store and and it's the exact price that's on the label. There's no tax. How about that? And it's like, wow, having a having a shower and feeling good. You don't have to pay any gross excise at all in Oregon. Well, it's very easy to big big it into the price. So sure. Yeah. Yeah. So it really doesn't matter that much. So how so how did we come out? I mean, the citizen of Hawaii is going to pay more tax next year. Again. Yeah. That's the way it is. That's the way it is. Yeah. So I guess, you know, I wonder if there's a concomitant increase in benefits for business that came along with the same maybe a reduction for taxes on business, some kind of incentives to incentivize young people to go into business anything like that come along this session. Oh, well, there are there are a lot of credits proposed, none of which none of which are passed. Yeah. So in a conceptual way, except except the movie credit, we extended the movie credit for another five years. Yeah, that's peanuts. Sorry. I mean, what I'm saying is that, you know, they're taking more money. I don't know how they're going to spend it. I could ask you that next, but they're not really giving us the kind of support we need to develop an economy that will generate the tax. So it's squeezing the lemon. And it's what you said before. It's like without consideration of the effects of these changes. Yeah, I've maintained for a very long time that what we should be thinking of, you know, top of mind is, hey, tax is not something that people just cough up, you know, there's an engine that produces the tax and the engine is business, business and commerce. You have to take care of the engine so it can spin spin spin and throw off all this tax. Yeah, they're connected. Yeah, business and tax are connected because you can't pay tax if you don't have business generating income. What about that really strange idea that somebody had this somehow relates to what we're talking about for this 12.5% against the tourists? I thought that was very interesting. You know, we don't want to pay it. Let those guys pay it. Squeeze that lemon instead. What would you think of that on a tax policy basis? I was very surprised when I heard that discussion come up, you know, using TAT as a way to pay the real tax. But, you know, there were actually some good reasons behind it. You know, number one being, okay, you know, Mr. Mayer had said, well, let's use the GE tax as opposed to property tax because we export, you know, a third of GE tax, you know, it's a contention with which we disagree a little bit, but the logical conclusion of that is, okay, fine, you know, let's hoist the TAT and even more that gets exported. Right. Okay, number two, that real project needs money now, not 10 years in the future. So if you extend the surcharge, you only get money 10 years in the future. What about, you know, what about all these overages and stuff that you're dealing with now? There are already billions behind in that project. Oh, yes. So you need money now to help with it as opposed to in 10 years, and TAT would produce the money now. Yeah. So there were some good reasons. What about, what about the, I mean, I don't have any data on this, but what about the effect on tourists? What about the effect on tourism? Would they know the difference? I think somebody was assuming, you know, and structuring that they wouldn't even know the difference. That is painless.  You don't know. You think, well, I got, I got to pay it just the way it is here. I just accept it as kind of a Zen basis. Would this tourists accept it on a Zen basis? I'm not, I'm not sure about that.  What I am not sure they were thinking of, though, is we had GT on top of that too. So, so it's not only the 12%, but also the 4.16 or the 4.5. So, so the tourists looking at 16%, you know, off the top.  And when I get a splitting headache, I feel I need to take a break. So, Tom said, okay, we take a break for a minute now. Let's take a break. We'll be right back. Rise to the challenge. We make responsible decisions while we cheer on our heroes and toast their success. Elevate your matchday experience. If you drink, never drive. Okay, we're talking about something that is just as sure as death. Taxes. We're talking, we're talking with Tom Yamachika, who's the president of the Hawaii Tax Foundation, Tax Foundation of Hawaii. And he's our watchdog. He's our advocate, in a way, trying to keep it all rational when people consider sometimes cockamamie bills for tax increases. And he goes down and testifies, takes positions. And the question I put to him during the break was, is there anybody else who does this? Because we need you. You are very important to us. Well, typically the, the, the tax department is down there testifying on tax bills. But they don't, do they address policy? Do they address the effects on the public and on the economy? Do they address those things? Well, sometimes. But it's, it's tough to rely on them, especially once they're billed. Okay. And then a lot of times they, you know, they put forward bills that would, you know, restrict taxpayer rights because they want the job to be easier. Sure. You'll be able to collect. Yeah. Yeah. That's too bad. Well, let's talk about the bills that didn't make it. And that gives us a flavor of how this, you know, the sort of the persona of this session. Okay. So in no special order, here are some of the bills that didn't make it. There was a proposed tax on electronic smoking devices. They wanted to put the tobacco tax on that. That, that died. There were bills. That sounds like it was a good bill. Well, it died. It died. There was the proposal to put a surcharge on real property tax to fund education. So there was a constitutional amendment, as well as the implementing legislation. Both of those went to conference committee, but, but got shot down at the last minute. There was a bill to... Or take it, you oppose that. We, we don't take positions. We just comment. Okay. Okay.  That's what we do. We, there was a bill to expand the solar credit to include battery backup systems. That got pretty far. But again, conferees couldn't come to agreement. That died. That's really too bad. That one, we, you know, we studied that one in the capacity of an energy bill. And it was really regrettable that we don't have that yet, because we need to have solar in the state, or rather batteries covered, you know, by this incentive. And batteries are expensive, and people are not inclined to buy them unless they have some nod from the state government. So... Yeah.  But if you have an existing system and you want to add batteries to it, then... But what's the difference? Yeah. That's batteries, and it's a solar system.  So... Oh, you can use them, you can use them independently. Yeah? Yeah. I mean... Connection with your home? Yeah, you can, you can connect them to, you know, the existing grid, and if the grid goes down, then you can... Oh, I suppose so. I said, emergency. Yeah. Yeah. Yeah, I mean, I was looking at those myself. Yeah. Then, then you have ways to fund the highway fund. So the Transportation Department wanted to hit us with fuel tax increases, vehicle weight tax, vehicle registration. Somebody wanted to change that into a tax on value of the car, sometimes called an add valorem tax. That would be the opposite of regressive, eh? You have a big expensive car, you pay more. Or a big truck. Well, that could be used in business, so that it should be agnostic. Well, but I think it would have a disproportionate impact on the trucks, really. Yeah, because you get more tax on the truck. But the idea, I think, behind that one was that you can deduct personal property tax on your federal income tax return. So you can kind of like shift part of that one over to the feds. But the trouble was none of the counties had any solution for implementing this type of tax. I mean, it would be tough to set up and... Have to hire a lot of people. And their computer systems, I think, are written in cobalt, so it... I'm sorry, Tom. I don't know what cobalt. I'm only kidding. That's really an old language. And it goes back to Neil Apocramby's promise to us that we're going to have a new computer system all around the state. We don't have that. Yeah, well, they're building it now. I mean, parts of it are active at the Department of Taxation. I'm hoping. Yeah. But then, of course, the city governments are independent, and they have to deal with their own technology problems. This goes to the whole thing about not having enough money in the till to do things to keep current, to keep up. You know? I mean, the big risk for an isolated state like ours is that we'll fall behind. We'll become irrelevant in the 21st century. And if we can't keep up with this kind of thing, with government technology, and with the technology of business, we will fall behind. And that needs, that requires money. So I think, you know, part of the SADSAC experience that went down in this legislature, as in earlier legislatures, is they were seeking money to do, at least from a conceptual point of view, to keep up. But they didn't get the money. And then now they're not going to be able to keep up. Well, one of the problems was that the revenue forecast kept going down. Right? I mean, it started off at a certain amount. The council on revenues and all that. Council on revenues knocked it down by 150 million at the beginning of the session. Yeah. And then knocked it down by another 250 million. So lawmakers were scrambling to get behind that because they had to balance the budget with that number under our constitution. Yeah. So why? Why? I mean, I just heard, you know, we have all kinds of room rate increases. We have more tourists. There's nothing happening in Hawaii that suggested our economy.  No, no, no. The problem that was cited in that first drop in the $150 million reduction was that they weren't getting enough, or they weren't getting as much as they thought they were going to get out of the construction industry. Because there was a lot of construction activity. There still is. That's really, really hot. And I guess they were expecting a lot of tax revenue that didn't materialize.  And bring them in from the mainland on this sort of cash-all kind of technique. Right. And then, you know, they come and they go and the proper tax isn't paying. That probably had part, you know, something to do with that. Well, you know, what you say suggests, and I guess I knew this, is that the council on revenues comes up with a number that is projection. It may be fiction. It may be right. It may be wrong. Sometimes it is wrong. And that's the number that the legislature has to use under the constitutional provision that requires it to balance the budget every year. Right. Sometimes that number is wrong, too high, too low, what have you. It's probably a better guess than you or I could make. Oh, sure. Are you on the council revenues? Could you be or you would have some conflicts or some kind? My predecessor was on it. Was that right? Localapa. Yeah. Interesting. Also an important organization because it dictates, you know, the scope of funding from the legislature. What other bills do you think we should mention today? So there were bills to, I'm sure you heard of the Airbnb bill. It was a bill to withhold tax and vacation rentals. That was passed last year, vetoed last year, came up again this year and this year didn't even pass the legislation. And the party introducing it was Airbnb, right? That's correct. That's really interesting. They wouldn't avoid a problem at another level.  Yeah. Perhaps. But I mean, it made a lot of sense for them to be withholding and remitting, you know, tax to the state. From an efficiency point of view. Yeah, because they collect the money anyway. Counties do not have a way to do this. And would put a strain on their administrative resources. Well, no, it's the counties, the ones who are opposing it. Because they have the land use regulations that were apparently being violated. And their remedy is to shut their rentals down. Right. So this is Airbnb's way of, you know, sort of a backdoor approach to increase the number of rentals that Airbnb can do. Or at least making sure that the ones that they have are more legitimate. Yeah. So that failed. That failed. So now, okay, we'll talk about the two-year cycle in a little while. Yeah, anything else? And then real estate investment trusts. There was a... Oh, that's a Mike Fergus bill. There was a bill, and it's been considered for a number of years now, to increase or make sure that real estate investment trusts who own property in Hawaii and are doing business in Hawaii are paying income tax. Because typically, a real estate investment trust doesn't pay income tax, what its shareholders do. Yeah. So, I mean, that seems fair to me. And I've talked to Mike Fergus. In fact, we had a program back a couple of years ago where he was talking about his favorite bill, which he's been advocating for a couple of years. He doesn't feel it's fair that these REITs come in, and Hawaii doesn't get any income tax from them because it's all a federal pass-through, and therefore, by reference, a state pass-through. Result is that the shareholders pay somewhere else, but Hawaii doesn't see any income tax at all from these enormous REITs with enormous revenues. Yeah. They do pay a GET on the rental income that they get. They do pay property tax, but they don't pay income tax. Yeah. So they get a break. I mean, if you were a Hawaii resident or even a Hawaii, well...  You got to pay all those things. It seems unfair. It's a discrimination in favor of the offshore. And this is what I consider this a matter of managing offshore investment. They're going to come here. You want to manage them so they don't take advantage of the loopholes. It seems to me that Mike Fergus is right, but maybe next year it'll come back. Maybe next year it'll come back. And speaking of next year, let's talk about next year. I mean, this was a very interesting, and I mean that in the Chinese sense, legislature, because people were thrown out of office left and right, and there were arguments between one side and the other that had nothing to do with policy, nothing to do with the merits of the bill, and yet they were who-who at each other, and you know, so bills failed for that reason. And this has happened before. It's not a good statement of the way things work. Yeah, there was certainly a lot of high drama this year. Yeah. It kind of started off early in the year when the house dumped Angus McKelvie, who was head of consumer protection. In the middle of a hearing, in a recess in the hearing, that was really interesting. Yeah, very much. So some people shifted around. So Roy Takumi became head of CPC. Justin Woodson, who was head of higher education, filled Takumi slot, and then McKelvie went to fill Justin Woodson's slot. So make for good policy? I don't know. It certainly changed things around. And then we just found out that Jill Takuda, head of the Ways in the Means Committee, and- It's a very important position and task. Very, very important committee. And budget, yeah. Yeah, and then she got deposed. She seemed to be a very bitter fight and replaced with Donovan Della Cruz. So he'll be the Ways in the Means chair going into next year. And then, of course, a speaker of the house, Joe Suki, he was kind of forced into retirement and replaced with Scott Psyche, who was the majority leader. A lot of drama. Not a high drama. The public doesn't know all the drama, I'm sure, that is under the surface. And unfortunately, I think that does affect the result of the legislature. The drama happened mostly recently in recent weeks, but it reflects a tone and tenor that may have affected these pills as they were going through the pipeline earlier than this kind of drama hit the news. Yeah, certainly one of the things that keeps the literature together is the members coalescing behind their committee chairs. It's part of the process. And so it's the committee chair who has kind of like the ability or the duty to collect their members' viewpoints and come up with some decision that reflects the collective viewpoint. And then the members can go behind the committee chair in the subsequent policy discussions, but apparently something didn't connect this time. Yeah, well, it's happened before, but this is the worst that I can remember. Yeah, and you actually had, like, there were negotiations that had took place on the conference draft of the rail bill. The Senate body basically rejected those and put their own draft in, despite having a broker deal that happened, I think, Monday night. And then Tuesday happens and it's all gone. Yeah, it's not the sound of a function, a properly functional organization. And the question I put to you is, what does this signify for next year? We had a bust this year, I would say, not only in the bills that affect tax, but in a lot of other bills, including social safety net bills and energy bills. How does this affect what do you think is going to happen next year? What should we be looking for next year? Well, what we should be looking for is perhaps a reorganization of the legislature. I mean, you see it every election year because you have new members, they have to get together and figure out who their leadership is going to be. And supposedly that organization should hold through the biennium, right, the two-year period that the legislature's in session. But apparently the organization broke down this year for whatever reason. Yeah. So we only have one minute left, Tom. And I'd like you to take a look at camera one over there. That's the one that's looking at you. And imagine that there's a lot of people out there who would like to hear what you have to say about what they should be doing or not in the period between now and next session. What should the public think about? What should the public do with regard to tax changes? Well, I really do think there should be some thought and discussion about what our policy is going to be, how we're going to take care of the economic engine that runs our state. Once we properly consider where our money is coming from, then we'll probably be in a better position to make wide decisions about what to do with that. Amen to that. Tom Yamachika, president of the Tax Foundation of Hawaii, talking today about the tax effects of the 2017 legislature. Thank you so much. Thank you, James.


The expert explained why Russians began to lose more KA-52 helicopters in Ukraine. During the last 10 days, Russians lost two KA-52 helicopters in Ukraine. Ukrainian military political expert Alexander Kovalenko said that due to the shortage of artillery systems in the combat zone, the Russian command is beginning to actively use helicopters. He noted that over the past two months, this deficit has taken on critical proportions. In May, Russians lost a record number of artillery. 553 artillery systems as of June 20th, 414 artillery systems have already been destroyed. The Russian command does not have time to compensate for the loss of artillery even by reactivating old Soviet towitzers. We see how the Russians began to drive more attack helicopters to the south and use them as artillery. This in turn forces Russian helicopters to operate as close as possible to the zone of potential risks and be shot down by air defense systems or get into the zone of a mobile group with manpads. He said. The expert believes that it is more difficult to fight helicopters than artillery, but on the other hand, they are not so numerous and their price category is completely different. As of June 20th, eight Russian attack helicopters have already been destroyed. It would seem that 414 howitzers and eight helicopters are on incommensurable ratio. One helicopter to 50 howitzers, but which is easier to reactivate 50 howitzers or produce one helicopter during the year? What is more expensive than 50 decommissioned howitzers or KA-52? The cost of the KA-52 attack helicopter, depending on the modification, varies from $16 million to $20 million. In turn, the cost of a conditionally modern self-propelled gun 2S19 MSTAS is $1.6 million. Self-propelled guns 2S3, a case here at an average of $120,000, Kovalenko noted. He claims that, at present, the occupiers mainly use much cheaper, towed D-20s, D-30s and others, rapiers and cornflowers.


So this is one of these chisels, it's called a flanger dongle. Do I have any broccoli in my teeth? No. You can't beat a flanger donger. You're too friendly to her. Very large. Oh, David, this is a fine vintage. Then come on over and have a coffee. That's so irritatingly cute. What are you, charismaticly, challenging?  So one of Art Reson's favorite places to go is Exotic Woods. And last time we went there, we saw this beautiful piece of wood. And Dave immediately thought this would be amazing for a clock. I'm not going to teach my kids how to use this type of clock. You're not lying. Why would you? That's like not teaching them cursive handwriting. I don't know. I don't know how I feel about that. Hey, times change. What used to be before cursive? Well, what used to be like, writing's just evolved. But it's not even writing. Times change. Yeah. Oh, pun. Speaking, it's time to start. Oh. Get it? I do. Okay, so we're so excited to get going on this now. Why don't we go through that process first and then we can... Okay, well, as we go... You can chime in on the tool. Hey, that's two in like 30 seconds. I don't get why I got way more. Oh, can I show it? Let me grab one thing actually. I'll show you where this whole idea came from. It's a cool story. Nice money, Dave. Huh? So my uncle, my mom's youngest brother, made this. And I remember as a kid looking at it. And I always wondered how he did that. Isn't that cool? And I loved this. And then he passed away. And so I ended up getting this because I loved it so much. And then so I saw this and I remember this clock. So we're going to make this a clock too. He made it in jail actually, in Saskatchewan.  No, he was selling drugs. He was the best guy. Let's get going. What's the first step then? Okay, so the first step is we are going to drill a hole in the center. We've marked out our face. I really like this placement.  The point of that is to find the center on the back so we can sink in our, what is this? The mechanism for the clock, right? Mechanics, right? Yeah, yeah. In order to do this, we're going to drill in four holes. Yep, we're going to use our trusted drill press here. And this thing is good because we can actually, while we're drilling into the back to make the cavity where this will sit, with the drill press you can actually make it, make your drill stop at a certain point. So look, every time it won't go any lower than that. So why that is good, if we're going to drill through this wood, we don't want the hole in the back, the cavity in the back to go all the way through. Because then that would ruin the whole thing. So just make sure that we drill just to the depth that we need. Okay, so once we have our piece centered and synced in, then we're going to have this little bit sticking out the top. And then we take our hands, right? Our hands, yeah. And then they're too long, as you can see. So we're going to cut them down. And we're also just going to sand them so they're kind of a, you know, a little more industrial looking, I guess. Yeah, like a raw material. Yeah, rather than white. These are just tin snips. Just we'll snip those really quick. A quick snip snip, right? It changes your life forever. Alright, once we have our hands to the right length, then we will find the exact points. We're just going to put four nice little markers. We have this square chisel that's used for woodworking. See the tip of that? So instead of, you know, putting numbers on to mark all the points here, keep it really clean and simple and kind of go with that industrial look, we're going to have four squares here. And we're going to carve those squares out with the square chisel. And then we're going to fill it with silver, right? We're talking about silver, resonant. So that is going to look awesome. And then I guess it's sand the heck out of it. And then resin the heck out of it. And assemble it and then put it on a mantle. And admire it. So if your hands are ready, let's hour on over to the clock. Watch out. Dave's on fire. Oh, watch out. Was that a pun on purpose? That was a pun on purpose. Oh my goodness. Uh-oh. We have a serious problem. This is rather alarming. Oh no. Oh, this is just, there's not enough, you know. Clearance? Do we just put the hole somewhere else or do we? Okay. Anyways, this is what all of our videos are. Yeah. It's problem solving. Trouble shooting, yeah. Yeah, that's the creative process. If it was easy, then you know, you'd buy a main. You'll go buy a pre-made kit where it tells you all the steps.  Okay, three, two, one, and we're drilling. So all I'm doing here is making a guide hole. This is a guide hole. Put this over top. And that will start the hole so that we're not on an angle, right? We're not doing like that, we're not doing like that. It gives it some stability too, you're so smart. Yeah, and that's very important because of this, right? That's got to stick out perfectly straight. Otherwise, you know what they say, you're behind the times. Love this. Thanks for laughing. All right, there's no time like the present. Oh, and it begins. Let's call it there, that's good. Okay, I've got to think of some more puns, right? All right, tick-tock, let's go. Is that good?


Do you mind putting all your papers on the floor? Can you see the way I'm sitting down? The soles of my feet are touching the floor. I am sitting on the edge of the chair. Do you see how I'm sitting down? Do you see? It doesn't have to be a tense posture, but it has to be a posture that means that you are aware, conscious that you are here. Are you here? Yes you are. Okay? Is it alright if I ask you to close your eyes? Would you feel comfortable if you close your eyes? If you don't want to, it's okay. You can have your eyes open, but if you close your eyes, it will be more intense. I'm going to ask someone to put the lights down. Can someone put the lights down? Thank you. And now you can take a nap. It's a joke. Now I'm going to make a very short meditation to start this workshop. So I will start the meditation by playing the gong, and the meditation will end up when I play the gong again. Meanwhile, just listen to my voice and relax. Sitting down in your chairs, gently closing your eyes, and listening to my voice. I will start this short activity, and we will finish maybe in 5-10 minutes. Focus now on concentrating on the flow of air coming in and coming out of your nose through your nostrils regularly, feeling the cool air coming in and coming out. Notice how when it comes in, it is cooler, but when it comes out, it is warmer going out of your body without trying to change the rhythm of your breathing. Just observing it. Just observing your breath, taking now your attention to those parts of your body in contact with the chair. How does it feel? Do you notice any pressure? Keep on breathing with your breathing. Focus on the soles of your feet. Notice the feeling of the word. Notice your knees. Notice your thighs.  Move now to your belly. Do you feel the air in your belly?  Notice your hips. Notice your genital area. You are here. You are breathing in this moment. Pay attention now to your back. Is your back tense? Is it relaxed? You don't have to do anything. Just be with what you have. Don't change. Just accept what you have. Go now to your chest.  Is your chest moving? It doesn't have to. Whatever your chest does is okay. Moving now to your shoulders. Do you feel anything in your shoulders?  Are your fingers cold? Are your fingers warm? Are you feeling in your hands? Is your breath moving through your body and going to your arms? Whatever you feel is right. Just be with it. Accept what you have in your present moment now. Let me now invite you to go back to the place in your body where your breathing feels stronger. Maybe you feel it stronger in your upper lip, or maybe you feel it stronger in your chest, or maybe you feel it stronger in your belly. Just concentrate on that place where your breathing feels stronger. Follow your breathing in that part of your body. Connect with the sensations in your body. The air keeps coming in and keeps coming out. I have a question for you. I want you to consider the answer. My question is what is your intention for taking this workshop? Considering this for a moment, thinking about your intention when taking this workshop, I'm going to ask you now to move this intention aside. Let this answer be aside. I'm going to ask you now another question. The second question is what is your intention for taking this workshop? Going deeper. Considering this new intention, hold your intention in your mind. I'm going to ask you to move this intention aside again. I'm going to ask you now a third question. The third question is what is your intention for taking this workshop? Breathe now with your third answer. Breathe with it. Be with your answer. Maybe you would like to thank yourself for devoting time and energies to be here. Taking one deep breath with your intention or with your intentions. Welcome. My name is Kristina. I feel honored to be here today with you. I always say that I have a cup like a glass. Imagine a glass of wine. A glass came here today empty. And hopefully I will take this glass with me completely full when we finish this workshop. How do you feel? Are you reconnected with yourselves? Yes? This is the first mindful experience in this workshop. We are going to be working on concepts and terms related to mindfulness and coaching. I will mainly focus on mindfulness only in two hours. I don't have time for more. So I bring some activities. We will do some of them, some others we may not do. But this will be the tone of the session. Are you here? Are you now? Yes? Okay. Why don't we take all of us one deep breath together.  Get ready. Feel the wooden floor in the soles of your feet. Feel your body in this meditation posture. And now let's take one deep breath together. Do you mind putting the lights on? Or at least one set of lights? Maybe... Thank you. Okay. I'm going to ask you to befriend the person who's next to you. But what you are going to do is just to look at that person for three seconds and smile. Don't say a word. Just look and smile. Okay. Is it possible? Is it possible not to speak? Just smile. Yes, just smile. And now and now if you have already smiled and connected with the person now you can whisper. Now I'm going to ask you to share your intentions. Do you remember? We were thinking about our intentions. Now I want you to share with your partner your intentions. Maybe only one. Maybe only two. Maybe three. I want you to share what is your intention for taking this lecture. Did you have the same intentions or different intentions? More or less the same. Did someone have different intentions? Same intention? Can I know your intentions? Can someone tell me? Volunteer? We want to learn and then try to put in practice what we have learned and see if it works to continue. Do you have the same intention or a different intention? More or less? Do you have a different version? Okay, alright. Something different? Can we take the mic, the other one at the same time? We have to not give it back to the other one personally and fill it on our line and then transmit it to our students. So first fill it inside and then teach it. Do you agree? Yes. Any other intention here? That's okay. I'm just asking because I'm very curious. That's okay. Very good. I'm going to ask you now to go to your handouts, the handouts that I have given you and I'm going to ask you to go to the second page. Go to the second page. Now that you are in this mood more connected to yourselves now I'm going to propose you to do an activity which is a very private activity. I want you to think and feel very deeply in your hearts and feel in this table that you have in activity too. It says daily experience which new situations do you face in clear settings that you haven't experienced in your regular teaching practice. This is the general question. I am going to ask you to think about how this clear change affects children and does it have any relationship with your need to give attention to diversity? I also want you to consider even these clear settings parents have a different problem with teaching with their children. Is this situation different and it causes different feelings and worries on parents and I also want you to consider your clear colleagues your workmates do you notice in your workmates a different attitude is there something different in your colleagues if they belong to a clear setting in contrast to a non-clear a regular setting but most importantly I want you to think about how you feel on what you have in your mind when you are in a clear setting does it create on you a different feeling a different set of worries of preoccupations I want you to think about this just consider one item per column so one thing that you think about children one thing that you have identified or maybe not in parents are clear parents more worried or less worried if they are in which way and in your workmates and above all focus on how you feel and what you think and the challenges that you have ahead you don't really need to write if you don't want to but I want you to have a clear idea of your intention when taking this workshop and these differences that you appreciate in clear settings in all the members of the educative system okay think about that if you want to write no problem I'm going to give you one minute per column and I will play the gong every minute to let you know okay I will start by playing it so you start now with your first column