Work in progress (reformatted code using the PSR2 standard)