Working on Variable interfaces and implementations