There aren't actually 21 million bitcoin, and never will be. By 2140, it comes in just shy of 21M . 20,999,999.9997...
We all just meme the 21 million number into acceptance because its a lot easier to explain than the tiny discrepancy waiting for us in year 2139.