
'''simple docstring'''

def        UpperCAmelCase_ (  lowerCamelCase_ = 5_0			):







 """simple docstring"""


 lowerCAmelCase__     :   Union[str, Any]     		=	[[0] * 3 for _ in range(length + 1			)]

 for row_length in range(length + 1			):
  for tile_length in range(2      ,			5			):
   for tile_start in range(row_length - tile_length + 1			):
    different_colour_ways_number[row_length][tile_length - 2] += (
        different_colour_ways_number[row_length - tile_start - tile_length][
            tile_length - 2
        ]
        + 1
    )

 return sum(different_colour_ways_number[length]			)


if __name__ == "__main__":
     print(f'{solution() = }')







'''simple docstring'''

import warnings
from functools import wraps
from typing import Callable


def        UpperCAmelCase_ (  lowerCamelCase_			):







 """simple docstring"""


 @wraps(lowerCamelCase_			)
 def _inner_fn(*lowerCamelCase_      ,			**lowerCamelCase_			):
  warnings.warn(
      (f'''\'{fn.__name__}\' is experimental and might be subject to breaking changes in the future.''')      ,			lowerCamelCase_      ,			)
  return fn(*lowerCamelCase_      ,			**lowerCamelCase_			)

 return _inner_fn





