code arranged !