can you split this method a bit to make it smaller ?