Made few things more generic