diff --git a/include/FreeRTOS.h b/include/FreeRTOS.h
index a18e093..8521876 100644
--- a/include/FreeRTOS.h
+++ b/include/FreeRTOS.h
@@ -22,6 +22,7 @@
  * http://www.FreeRTOS.org
  * http://aws.amazon.com/freertos
  *
+ * 1 tab == 4 spaces!
  */
 
 #ifndef INC_FREERTOS_H
diff --git a/include/StackMacros.h b/include/StackMacros.h
index c799d5b..c9a0a05 100644
--- a/include/StackMacros.h
+++ b/include/StackMacros.h
@@ -22,6 +22,7 @@
  * http://www.FreeRTOS.org
  * http://aws.amazon.com/freertos
  *
+ * 1 tab == 4 spaces!
  */
 
 #ifndef STACK_MACROS_H
@@ -82,8 +83,8 @@
 
     #define taskCHECK_FOR_STACK_OVERFLOW()                                                            \
     {                                                                                                 \
-        const uint32_t * const pulStack     = ( uint32_t * ) pxCurrentTCB->pxStack;                   \
-        const uint32_t         ulCheckValue = ( uint32_t ) 0xa5a5a5a5;                                \
+        const uint32_t * const pulStack = ( uint32_t * ) pxCurrentTCB->pxStack;                       \
+        const uint32_t ulCheckValue = ( uint32_t ) 0xa5a5a5a5;                                        \
                                                                                                       \
         if( ( pulStack[ 0 ] != ulCheckValue ) ||                                                      \
             ( pulStack[ 1 ] != ulCheckValue ) ||                                                      \
@@ -101,7 +102,7 @@
 
     #define taskCHECK_FOR_STACK_OVERFLOW()                                                                                                \
     {                                                                                                                                     \
-        int8_t *             pcEndOfStack           = ( int8_t * ) pxCurrentTCB->pxEndOfStack;                                            \
+        int8_t * pcEndOfStack = ( int8_t * ) pxCurrentTCB->pxEndOfStack;                                                                  \
         static const uint8_t ucExpectedStackBytes[] = { tskSTACK_FILL_BYTE, tskSTACK_FILL_BYTE, tskSTACK_FILL_BYTE, tskSTACK_FILL_BYTE,   \
                                                         tskSTACK_FILL_BYTE, tskSTACK_FILL_BYTE, tskSTACK_FILL_BYTE, tskSTACK_FILL_BYTE,   \
                                                         tskSTACK_FILL_BYTE, tskSTACK_FILL_BYTE, tskSTACK_FILL_BYTE, tskSTACK_FILL_BYTE,   \
diff --git a/include/atomic.h b/include/atomic.h
index f66185f..982bc2a 100644
--- a/include/atomic.h
+++ b/include/atomic.h
@@ -22,6 +22,7 @@
  * http://www.FreeRTOS.org
  * http://aws.amazon.com/freertos
  *
+ * 1 tab == 4 spaces!
  */
 
 /**
@@ -114,7 +115,7 @@
             if( *pulDestination == ulComparand )
             {
                 *pulDestination = ulExchange;
-                ulReturnValue   = ATOMIC_COMPARE_AND_SWAP_SUCCESS;
+                ulReturnValue = ATOMIC_COMPARE_AND_SWAP_SUCCESS;
             }
             else
             {
@@ -146,7 +147,7 @@
 
         ATOMIC_ENTER_CRITICAL();
         {
-            pReturnValue    = *ppvDestination;
+            pReturnValue = *ppvDestination;
             *ppvDestination = pvExchange;
         }
         ATOMIC_EXIT_CRITICAL();
@@ -182,7 +183,7 @@
             if( *ppvDestination == pvComparand )
             {
                 *ppvDestination = pvExchange;
-                ulReturnValue   = ATOMIC_COMPARE_AND_SWAP_SUCCESS;
+                ulReturnValue = ATOMIC_COMPARE_AND_SWAP_SUCCESS;
             }
         }
         ATOMIC_EXIT_CRITICAL();
@@ -211,7 +212,7 @@
 
         ATOMIC_ENTER_CRITICAL();
         {
-            ulCurrent   = *pulAddend;
+            ulCurrent = *pulAddend;
             *pulAddend += ulCount;
         }
         ATOMIC_EXIT_CRITICAL();
@@ -239,7 +240,7 @@
 
         ATOMIC_ENTER_CRITICAL();
         {
-            ulCurrent   = *pulAddend;
+            ulCurrent = *pulAddend;
             *pulAddend -= ulCount;
         }
         ATOMIC_EXIT_CRITICAL();
@@ -264,7 +265,7 @@
 
         ATOMIC_ENTER_CRITICAL();
         {
-            ulCurrent   = *pulAddend;
+            ulCurrent = *pulAddend;
             *pulAddend += 1;
         }
         ATOMIC_EXIT_CRITICAL();
@@ -289,7 +290,7 @@
 
         ATOMIC_ENTER_CRITICAL();
         {
-            ulCurrent   = *pulAddend;
+            ulCurrent = *pulAddend;
             *pulAddend -= 1;
         }
         ATOMIC_EXIT_CRITICAL();
@@ -317,7 +318,7 @@
 
         ATOMIC_ENTER_CRITICAL();
         {
-            ulCurrent        = *pulDestination;
+            ulCurrent = *pulDestination;
             *pulDestination |= ulValue;
         }
         ATOMIC_EXIT_CRITICAL();
@@ -344,7 +345,7 @@
 
         ATOMIC_ENTER_CRITICAL();
         {
-            ulCurrent        = *pulDestination;
+            ulCurrent = *pulDestination;
             *pulDestination &= ulValue;
         }
         ATOMIC_EXIT_CRITICAL();
@@ -371,7 +372,7 @@
 
         ATOMIC_ENTER_CRITICAL();
         {
-            ulCurrent       = *pulDestination;
+            ulCurrent = *pulDestination;
             *pulDestination = ~( ulCurrent & ulValue );
         }
         ATOMIC_EXIT_CRITICAL();
@@ -398,7 +399,7 @@
 
         ATOMIC_ENTER_CRITICAL();
         {
-            ulCurrent        = *pulDestination;
+            ulCurrent = *pulDestination;
             *pulDestination ^= ulValue;
         }
         ATOMIC_EXIT_CRITICAL();
diff --git a/include/croutine.h b/include/croutine.h
index 76c805b..83f0d98 100644
--- a/include/croutine.h
+++ b/include/croutine.h
@@ -22,6 +22,7 @@
  * http://www.FreeRTOS.org
  * http://aws.amazon.com/freertos
  *
+ * 1 tab == 4 spaces!
  */
 
 #ifndef CO_ROUTINE_H
diff --git a/include/deprecated_definitions.h b/include/deprecated_definitions.h
index 456f6fd..aa2c6cc 100644
--- a/include/deprecated_definitions.h
+++ b/include/deprecated_definitions.h
@@ -22,6 +22,7 @@
  * http://www.FreeRTOS.org
  * http://aws.amazon.com/freertos
  *
+ * 1 tab == 4 spaces!
  */
 
 #ifndef DEPRECATED_DEFINITIONS_H
diff --git a/include/event_groups.h b/include/event_groups.h
index 606b771..c9ab819 100644
--- a/include/event_groups.h
+++ b/include/event_groups.h
@@ -22,6 +22,7 @@
  * http://www.FreeRTOS.org
  * http://aws.amazon.com/freertos
  *
+ * 1 tab == 4 spaces!
  */
 
 #ifndef EVENT_GROUPS_H
diff --git a/include/list.h b/include/list.h
index 0d0db52..9a23a82 100644
--- a/include/list.h
+++ b/include/list.h
@@ -22,6 +22,7 @@
  * http://www.FreeRTOS.org
  * http://aws.amazon.com/freertos
  *
+ * 1 tab == 4 spaces!
  */
 
 /*
@@ -122,8 +123,8 @@
 /* Define macros that set the new structure members to known values. */
         #define listSET_FIRST_LIST_ITEM_INTEGRITY_CHECK_VALUE( pxItem )     ( pxItem )->xListItemIntegrityValue1 = pdINTEGRITY_CHECK_VALUE
         #define listSET_SECOND_LIST_ITEM_INTEGRITY_CHECK_VALUE( pxItem )    ( pxItem )->xListItemIntegrityValue2 = pdINTEGRITY_CHECK_VALUE
-        #define listSET_LIST_INTEGRITY_CHECK_1_VALUE( pxList )              ( pxList )->xListIntegrityValue1     = pdINTEGRITY_CHECK_VALUE
-        #define listSET_LIST_INTEGRITY_CHECK_2_VALUE( pxList )              ( pxList )->xListIntegrityValue2     = pdINTEGRITY_CHECK_VALUE
+        #define listSET_LIST_INTEGRITY_CHECK_1_VALUE( pxList )              ( pxList )->xListIntegrityValue1 = pdINTEGRITY_CHECK_VALUE
+        #define listSET_LIST_INTEGRITY_CHECK_2_VALUE( pxList )              ( pxList )->xListIntegrityValue2 = pdINTEGRITY_CHECK_VALUE
 
 /* Define macros that will assert if one of the structure members does not
  * contain its expected value. */
@@ -283,7 +284,7 @@
         {                                                                                      \
             ( pxConstList )->pxIndex = ( pxConstList )->pxIndex->pxNext;                       \
         }                                                                                      \
-        ( pxTCB )                = ( pxConstList )->pxIndex->pvOwner;                          \
+        ( pxTCB ) = ( pxConstList )->pxIndex->pvOwner;                                         \
     }
 
 
diff --git a/include/message_buffer.h b/include/message_buffer.h
index 53a1d71..71dc691 100644
--- a/include/message_buffer.h
+++ b/include/message_buffer.h
@@ -22,6 +22,7 @@
  * http://www.FreeRTOS.org
  * http://aws.amazon.com/freertos
  *
+ * 1 tab == 4 spaces!
  */
 
 
diff --git a/include/mpu_prototypes.h b/include/mpu_prototypes.h
index 5f64fa8..476850a 100644
--- a/include/mpu_prototypes.h
+++ b/include/mpu_prototypes.h
@@ -22,6 +22,7 @@
  * http://www.FreeRTOS.org
  * http://aws.amazon.com/freertos
  *
+ * 1 tab == 4 spaces!
  */
 
 /*
diff --git a/include/mpu_wrappers.h b/include/mpu_wrappers.h
index ca2ebe6..89e47aa 100644
--- a/include/mpu_wrappers.h
+++ b/include/mpu_wrappers.h
@@ -22,6 +22,7 @@
  * http://www.FreeRTOS.org
  * http://aws.amazon.com/freertos
  *
+ * 1 tab == 4 spaces!
  */
 
 #ifndef MPU_WRAPPERS_H
diff --git a/include/portable.h b/include/portable.h
index 4c1b5de..4996424 100644
--- a/include/portable.h
+++ b/include/portable.h
@@ -22,6 +22,7 @@
  * http://www.FreeRTOS.org
  * http://aws.amazon.com/freertos
  *
+ * 1 tab == 4 spaces!
  */
 
 /*-----------------------------------------------------------
diff --git a/include/projdefs.h b/include/projdefs.h
index 0abd64f..d421633 100644
--- a/include/projdefs.h
+++ b/include/projdefs.h
@@ -22,6 +22,7 @@
  * http://www.FreeRTOS.org
  * http://aws.amazon.com/freertos
  *
+ * 1 tab == 4 spaces!
  */
 
 #ifndef PROJDEFS_H
diff --git a/include/queue.h b/include/queue.h
index cb2d656..fd0e8ed 100644
--- a/include/queue.h
+++ b/include/queue.h
@@ -22,6 +22,7 @@
  * http://www.FreeRTOS.org
  * http://aws.amazon.com/freertos
  *
+ * 1 tab == 4 spaces!
  */
 
 
diff --git a/include/semphr.h b/include/semphr.h
index 1b3d0dd..21f3aff 100644
--- a/include/semphr.h
+++ b/include/semphr.h
@@ -22,6 +22,7 @@
  * http://www.FreeRTOS.org
  * http://aws.amazon.com/freertos
  *
+ * 1 tab == 4 spaces!
  */
 
 #ifndef SEMAPHORE_H
diff --git a/include/stack_macros.h b/include/stack_macros.h
index c243636..617e4d6 100644
--- a/include/stack_macros.h
+++ b/include/stack_macros.h
@@ -22,6 +22,7 @@
  * http://www.FreeRTOS.org
  * http://aws.amazon.com/freertos
  *
+ * 1 tab == 4 spaces!
  */
 
 #ifndef STACK_MACROS_H
@@ -78,8 +79,8 @@
 
     #define taskCHECK_FOR_STACK_OVERFLOW()                                                            \
     {                                                                                                 \
-        const uint32_t * const pulStack     = ( uint32_t * ) pxCurrentTCB->pxStack;                   \
-        const uint32_t         ulCheckValue = ( uint32_t ) 0xa5a5a5a5;                                \
+        const uint32_t * const pulStack = ( uint32_t * ) pxCurrentTCB->pxStack;                       \
+        const uint32_t ulCheckValue = ( uint32_t ) 0xa5a5a5a5;                                        \
                                                                                                       \
         if( ( pulStack[ 0 ] != ulCheckValue ) ||                                                      \
             ( pulStack[ 1 ] != ulCheckValue ) ||                                                      \
@@ -97,7 +98,7 @@
 
     #define taskCHECK_FOR_STACK_OVERFLOW()                                                                                                \
     {                                                                                                                                     \
-        int8_t *             pcEndOfStack           = ( int8_t * ) pxCurrentTCB->pxEndOfStack;                                            \
+        int8_t * pcEndOfStack = ( int8_t * ) pxCurrentTCB->pxEndOfStack;                                                                  \
         static const uint8_t ucExpectedStackBytes[] = { tskSTACK_FILL_BYTE, tskSTACK_FILL_BYTE, tskSTACK_FILL_BYTE, tskSTACK_FILL_BYTE,   \
                                                         tskSTACK_FILL_BYTE, tskSTACK_FILL_BYTE, tskSTACK_FILL_BYTE, tskSTACK_FILL_BYTE,   \
                                                         tskSTACK_FILL_BYTE, tskSTACK_FILL_BYTE, tskSTACK_FILL_BYTE, tskSTACK_FILL_BYTE,   \
diff --git a/include/stream_buffer.h b/include/stream_buffer.h
index 8f2f97d..37b961e 100644
--- a/include/stream_buffer.h
+++ b/include/stream_buffer.h
@@ -22,6 +22,7 @@
  * http://www.FreeRTOS.org
  * http://aws.amazon.com/freertos
  *
+ * 1 tab == 4 spaces!
  */
 
 /*
diff --git a/include/task.h b/include/task.h
index e80bbb5..c3d290b 100644
--- a/include/task.h
+++ b/include/task.h
@@ -22,6 +22,7 @@
  * http://www.FreeRTOS.org
  * http://aws.amazon.com/freertos
  *
+ * 1 tab == 4 spaces!
  */
 
 
diff --git a/include/timers.h b/include/timers.h
index 26445d4..9bdc5e2 100644
--- a/include/timers.h
+++ b/include/timers.h
@@ -22,6 +22,7 @@
  * http://www.FreeRTOS.org
  * http://aws.amazon.com/freertos
  *
+ * 1 tab == 4 spaces!
  */
 
 
