I thought about it but it kinda gets a bit strange since since integer conversion happens in between. so I ended up with a bit duplication. Open to any suggestion though.