Patches pushed as 87530f7b4d4ec26a648e71df0592dbf9987417e3 and following with some modifications. Thanks.