// DO NOT EDIT. This file is machine-generated and constantly overwritten.
// Make changes to Action.m instead.

#import "_Action.h"

@implementation Machine_Action


- (NSNumber*)isSequential {
	[self willAccessValueForKey:@"isSequential"];
	NSNumber *result = [self primitiveValueForKey:@"isSequential"];
	[self didAccessValueForKey:@"isSequential"];
	return result;
}

- (void)setIsSequential:(NSNumber*)value_ {
    [self willChangeValueForKey:@"isSequential"];
    [self setPrimitiveValue:value_ forKey:@"isSequential"];
    [self didChangeValueForKey:@"isSequential"];
}

- (BOOL)isSequentialValue {
	return [[self isSequential] boolValue];
}

- (void)setIsSequentialValue:(BOOL)value_ {
	[self setIsSequential:[NSNumber numberWithBool:value_]];
}

- (NSNumber*)isSomeday {
	[self willAccessValueForKey:@"isSomeday"];
	NSNumber *result = [self primitiveValueForKey:@"isSomeday"];
	[self didAccessValueForKey:@"isSomeday"];
	return result;
}

- (void)setIsSomeday:(NSNumber*)value_ {
    [self willChangeValueForKey:@"isSomeday"];
    [self setPrimitiveValue:value_ forKey:@"isSomeday"];
    [self didChangeValueForKey:@"isSomeday"];
}



- (BOOL)isSomedayValue {
	return [[self isSomeday] boolValue];
}

- (void)setIsSomedayValue:(BOOL)value_ {
	[self setIsSomeday:[NSNumber numberWithBool:value_]];
}


- (NSNumber*)noteOpen {
	[self willAccessValueForKey:@"noteOpen"];
	NSNumber *result = [self primitiveValueForKey:@"noteOpen"];
	[self didAccessValueForKey:@"noteOpen"];
	return result;
}

- (void)setNoteOpen:(NSNumber*)value_ {
    [self willChangeValueForKey:@"noteOpen"];
    [self setPrimitiveValue:value_ forKey:@"noteOpen"];
    [self didChangeValueForKey:@"noteOpen"];
}



- (BOOL)noteOpenValue {
	return [[self noteOpen] boolValue];
}

- (void)setNoteOpenValue:(BOOL)value_ {
	[self setNoteOpen:[NSNumber numberWithBool:value_]];
}






- (NSNumber*)recurDeadline {
	[self willAccessValueForKey:@"recurDeadline"];
	NSNumber *result = [self primitiveValueForKey:@"recurDeadline"];
	[self didAccessValueForKey:@"recurDeadline"];
	return result;
}

- (void)setRecurDeadline:(NSNumber*)value_ {
    [self willChangeValueForKey:@"recurDeadline"];
    [self setPrimitiveValue:value_ forKey:@"recurDeadline"];
    [self didChangeValueForKey:@"recurDeadline"];
}



- (short)recurDeadlineValue {
	return [[self recurDeadline] shortValue];
}

- (void)setRecurDeadlineValue:(short)value_ {
	[self setRecurDeadline:[NSNumber numberWithShort:value_]];
}






- (NSNumber*)isUrgent {
	[self willAccessValueForKey:@"isUrgent"];
	NSNumber *result = [self primitiveValueForKey:@"isUrgent"];
	[self didAccessValueForKey:@"isUrgent"];
	return result;
}

- (void)setIsUrgent:(NSNumber*)value_ {
    [self willChangeValueForKey:@"isUrgent"];
    [self setPrimitiveValue:value_ forKey:@"isUrgent"];
    [self didChangeValueForKey:@"isUrgent"];
}



- (BOOL)isUrgentValue {
	return [[self isUrgent] boolValue];
}

- (void)setIsUrgentValue:(BOOL)value_ {
	[self setIsUrgent:[NSNumber numberWithBool:value_]];
}






- (NSNumber*)isImportant {
	[self willAccessValueForKey:@"isImportant"];
	NSNumber *result = [self primitiveValueForKey:@"isImportant"];
	[self didAccessValueForKey:@"isImportant"];
	return result;
}

- (void)setIsImportant:(NSNumber*)value_ {
    [self willChangeValueForKey:@"isImportant"];
    [self setPrimitiveValue:value_ forKey:@"isImportant"];
    [self didChangeValueForKey:@"isImportant"];
}



- (BOOL)isImportantValue {
	return [[self isImportant] boolValue];
}

- (void)setIsImportantValue:(BOOL)value_ {
	[self setIsImportant:[NSNumber numberWithBool:value_]];
}






- (NSNumber*)isExpanded {
	[self willAccessValueForKey:@"isExpanded"];
	NSNumber *result = [self primitiveValueForKey:@"isExpanded"];
	[self didAccessValueForKey:@"isExpanded"];
	return result;
}

- (void)setIsExpanded:(NSNumber*)value_ {
    [self willChangeValueForKey:@"isExpanded"];
    [self setPrimitiveValue:value_ forKey:@"isExpanded"];
    [self didChangeValueForKey:@"isExpanded"];
}



- (BOOL)isExpandedValue {
	return [[self isExpanded] boolValue];
}

- (void)setIsExpandedValue:(BOOL)value_ {
	[self setIsExpanded:[NSNumber numberWithBool:value_]];
}






- (NSNumber*)sequenceValue {
	[self willAccessValueForKey:@"sequenceValue"];
	NSNumber *result = [self primitiveValueForKey:@"sequenceValue"];
	[self didAccessValueForKey:@"sequenceValue"];
	return result;
}

- (void)setSequenceValue:(NSNumber*)value_ {
    [self willChangeValueForKey:@"sequenceValue"];
    [self setPrimitiveValue:value_ forKey:@"sequenceValue"];
    [self didChangeValueForKey:@"sequenceValue"];
}



- (long long)sequenceValueValue {
	return [[self sequenceValue] longLongValue];
}

- (void)setSequenceValueValue:(long long)value_ {
	[self setSequenceValue:[NSNumber numberWithLongLong:value_]];
}






- (NSDate*)startDate {
	[self willAccessValueForKey:@"startDate"];
	NSDate *result = [self primitiveValueForKey:@"startDate"];
	[self didAccessValueForKey:@"startDate"];
	return result;
}

- (void)setStartDate:(NSDate*)value_ {
    [self willChangeValueForKey:@"startDate"];
    [self setPrimitiveValue:value_ forKey:@"startDate"];
    [self didChangeValueForKey:@"startDate"];
}





- (NSDate*)modificationDate {
	[self willAccessValueForKey:@"modificationDate"];
	NSDate *result = [self primitiveValueForKey:@"modificationDate"];
	[self didAccessValueForKey:@"modificationDate"];
	return result;
}

- (void)setModificationDate:(NSDate*)value_ {
    [self willChangeValueForKey:@"modificationDate"];
    [self setPrimitiveValue:value_ forKey:@"modificationDate"];
    [self didChangeValueForKey:@"modificationDate"];
}


- (NSString*)noteWindow {
	[self willAccessValueForKey:@"noteWindow"];
	NSString *result = [self primitiveValueForKey:@"noteWindow"];
	[self didAccessValueForKey:@"noteWindow"];
	return result;
}

- (void)setNoteWindow:(NSString*)value_ {
    [self willChangeValueForKey:@"noteWindow"];
    [self setPrimitiveValue:value_ forKey:@"noteWindow"];
    [self didChangeValueForKey:@"noteWindow"];
}



- (NSString*)toodleID {
	[self willAccessValueForKey:@"toodleID"];
	id result = [[self _extensibleProperties] valueForKey:@"toodleID"];
	[self didAccessValueForKey:@"toodleID"];
	return result;
}

- (void)setToodleID:(NSString*)value_ {
    [self setValue:value_ forExtensibleKey:@"toodleID"];
}


- (NSString*)inMailMessageID {
	[self willAccessValueForKey:@"inMailMessageID"];
	NSString *result = [self primitiveValueForKey:@"inMailMessageID"];
	[self didAccessValueForKey:@"inMailMessageID"];
	return result;
}

- (void)setInMailMessageID:(NSString*)value_ {
    [self willChangeValueForKey:@"inMailMessageID"];
    [self setPrimitiveValue:value_ forKey:@"inMailMessageID"];
    [self didChangeValueForKey:@"inMailMessageID"];
}


- (NSString*)outMailMessageID {
	[self willAccessValueForKey:@"outMailMessageID"];
	NSString *result = [self primitiveValueForKey:@"outMailMessageID"];
	[self didAccessValueForKey:@"outMailMessageID"];
	return result;
}

- (void)setOUtMailMessageID:(NSString*)value_ {
    [self willChangeValueForKey:@"outMailMessageID"];
    [self setPrimitiveValue:value_ forKey:@"outMailMessageID"];
    [self didChangeValueForKey:@"outMailMessageID"];
}


- (NSString*)delegatedFromID {
	[self willAccessValueForKey:@"delegatedFromID"];
	NSString *result = [self primitiveValueForKey:@"delegatedFromID"];
	[self didAccessValueForKey:@"delegatedFromID"];
	return result;
}

- (void)setDelegatedFromID:(NSString*)value_ {
    [self willChangeValueForKey:@"delegatedFromID"];
    [self setPrimitiveValue:value_ forKey:@"delegatedFromID"];
    [self didChangeValueForKey:@"delegatedFromID"];
}


- (NSString*)delegatedToID {
	[self willAccessValueForKey:@"delegatedToID"];
	NSString *result = [self primitiveValueForKey:@"delegatedToID"];
	[self didAccessValueForKey:@"delegatedToID"];
	return result;
}

- (void)setDelegatedToID:(NSString*)value_ {
    [self willChangeValueForKey:@"delegatedToID"];
    [self setPrimitiveValue:value_ forKey:@"delegatedToID"];
    [self didChangeValueForKey:@"delegatedToID"];
}




- (NSString*)delegatedFromEmail {
	[self willAccessValueForKey:@"delegatedFromEmail"];
	NSString *result = [self primitiveValueForKey:@"delegatedFromEmail"];
	[self didAccessValueForKey:@"delegatedFromEmail"];
	return result;
}

- (void)setDelegatedFromEmail:(NSString*)value_ {
    [self willChangeValueForKey:@"delegatedFromEmail"];
    [self setPrimitiveValue:value_ forKey:@"delegatedFromEmail"];
    [self didChangeValueForKey:@"delegatedFromEmail"];
}


- (NSString*)delegatedToEmail {
	[self willAccessValueForKey:@"delegatedToEmail"];
	NSString *result = [self primitiveValueForKey:@"delegatedToEmail"];
	[self didAccessValueForKey:@"delegatedToEmail"];
	return result;
}

- (void)setDelegatedToEmail:(NSString*)value_ {
    [self willChangeValueForKey:@"delegatedToEmail"];
    [self setPrimitiveValue:value_ forKey:@"delegatedToEmail"];
    [self didChangeValueForKey:@"delegatedToEmail"];
}





- (NSString*)name {
	[self willAccessValueForKey:@"name"];
	NSString *result = [self primitiveValueForKey:@"name"];
	[self didAccessValueForKey:@"name"];
	return result;
}

- (void)setName:(NSString*)value_ {
    [self willChangeValueForKey:@"name"];
    [self setPrimitiveValue:value_ forKey:@"name"];
    [self didChangeValueForKey:@"name"];
}






- (NSNumber*)done {
	[self willAccessValueForKey:@"done"];
	NSNumber *result = [self primitiveValueForKey:@"done"];
	[self didAccessValueForKey:@"done"];
	return result;
}

- (void)setDone:(NSNumber*)value_ {
    [self willChangeValueForKey:@"done"];
    [self setPrimitiveValue:value_ forKey:@"done"];
    [self didChangeValueForKey:@"done"];
}



- (short)doneValue {
	return [[self done] shortValue];
}

- (void)setDoneValue:(short)value_ {
	[self setDone:[NSNumber numberWithShort:value_]];
}






- (NSDate*)dueDate {
	[self willAccessValueForKey:@"dueDate"];
	NSDate *result = [self primitiveValueForKey:@"dueDate"];
	[self didAccessValueForKey:@"dueDate"];
	return result;
}

- (void)setDueDate:(NSDate*)value_ {
    [self willChangeValueForKey:@"dueDate"];
    [self setPrimitiveValue:value_ forKey:@"dueDate"];
    [self didChangeValueForKey:@"dueDate"];
}






- (NSDate*)doDate {
	[self willAccessValueForKey:@"doDate"];
	NSDate *result = [self primitiveValueForKey:@"doDate"];
	[self didAccessValueForKey:@"doDate"];
	return result;
}

- (void)setDoDate:(NSDate*)value_ {
    [self willChangeValueForKey:@"doDate"];
    [self setPrimitiveValue:value_ forKey:@"doDate"];
    [self didChangeValueForKey:@"doDate"];
}






- (NSNumber*)recurReset {
	[self willAccessValueForKey:@"recurReset"];
	NSNumber *result = [self primitiveValueForKey:@"recurReset"];
	[self didAccessValueForKey:@"recurReset"];
	return result;
}

- (void)setRecurReset:(NSNumber*)value_ {
    [self willChangeValueForKey:@"recurReset"];
    [self setPrimitiveValue:value_ forKey:@"recurReset"];
    [self didChangeValueForKey:@"recurReset"];
}



- (BOOL)recurResetValue {
	return [[self recurReset] boolValue];
}

- (void)setRecurResetValue:(BOOL)value_ {
	[self setRecurReset:[NSNumber numberWithBool:value_]];
}






- (NSData*)note {
	[self willAccessValueForKey:@"note"];
	NSData *result = [self primitiveValueForKey:@"note"];
	[self didAccessValueForKey:@"note"];
	return result;
}

- (void)setNote:(NSData*)value_ {
    [self willChangeValueForKey:@"note"];
    [self setPrimitiveValue:value_ forKey:@"note"];
    [self didChangeValueForKey:@"note"];
}






- (NSString*)uniqueID {
	[self willAccessValueForKey:@"uniqueID"];
	NSString *result = [self primitiveValueForKey:@"uniqueID"];
	[self didAccessValueForKey:@"uniqueID"];
	return result;
}

- (void)setUniqueID:(NSString*)value_ {
    [self willChangeValueForKey:@"uniqueID"];
    [self setPrimitiveValue:value_ forKey:@"uniqueID"];
    [self didChangeValueForKey:@"uniqueID"];
}






- (NSNumber*)recurDays {
	[self willAccessValueForKey:@"recurDays"];
	NSNumber *result = [self primitiveValueForKey:@"recurDays"];
	[self didAccessValueForKey:@"recurDays"];
	return result;
}

- (void)setRecurDays:(NSNumber*)value_ {
    [self willChangeValueForKey:@"recurDays"];
    [self setPrimitiveValue:value_ forKey:@"recurDays"];
    [self didChangeValueForKey:@"recurDays"];
}



- (short)recurDaysValue {
	return [[self recurDays] shortValue];
}

- (void)setRecurDaysValue:(short)value_ {
	[self setRecurDays:[NSNumber numberWithShort:value_]];
}






- (NSNumber*)isRecurring {
	[self willAccessValueForKey:@"isRecurring"];
	NSNumber *result = [self primitiveValueForKey:@"isRecurring"];
	[self didAccessValueForKey:@"isRecurring"];
	return result;
}

- (void)setIsRecurring:(NSNumber*)value_ {
    [self willChangeValueForKey:@"isRecurring"];
    [self setPrimitiveValue:value_ forKey:@"isRecurring"];
    [self didChangeValueForKey:@"isRecurring"];
}



- (BOOL)isRecurringValue {
	return [[self isRecurring] boolValue];
}

- (void)setIsRecurringValue:(BOOL)value_ {
	[self setIsRecurring:[NSNumber numberWithBool:value_]];
}






- (NSDate*)createDate {
	[self willAccessValueForKey:@"createDate"];
	NSDate *result = [self primitiveValueForKey:@"createDate"];
	[self didAccessValueForKey:@"createDate"];
	if (!result)
	{	
		NSCalendarDate *d=[NSCalendarDate date];
		[self setCreateDate: d];
		return d;
	}
	return result;
}

- (void)setCreateDate:(NSDate*)value_ {
    [self willChangeValueForKey:@"createDate"];
    [self setPrimitiveValue:value_ forKey:@"createDate"];
    [self didChangeValueForKey:@"createDate"];
}






- (NSDate*)finishDate {
	[self willAccessValueForKey:@"finishDate"];
	NSDate *result = [self primitiveValueForKey:@"finishDate"];
	[self didAccessValueForKey:@"finishDate"];
	return result;
}

- (void)setFinishDate:(NSDate*)value_ {
    [self willChangeValueForKey:@"finishDate"];
    [self setPrimitiveValue:value_ forKey:@"finishDate"];
    [self didChangeValueForKey:@"finishDate"];
}






- (NSNumber*)isTemplate {
	[self willAccessValueForKey:@"isTemplate"];
	NSNumber *result = [self primitiveValueForKey:@"isTemplate"];
	[self didAccessValueForKey:@"isTemplate"];
	return result;
}

- (void)setIsTemplate:(NSNumber*)value_ {
    [self willChangeValueForKey:@"isTemplate"];
    [self setPrimitiveValue:value_ forKey:@"isTemplate"];
    [self didChangeValueForKey:@"isTemplate"];
}



- (BOOL)isTemplateValue {
	return [[self isTemplate] boolValue];
}

- (void)setIsTemplateValue:(BOOL)value_ {
	[self setIsTemplate:[NSNumber numberWithBool:value_]];
}






- (NSNumber*)isArea {
	[self willAccessValueForKey:@"isArea"];
	NSNumber *result = [self primitiveValueForKey:@"isArea"];
	[self didAccessValueForKey:@"isArea"];
	return result;
}

- (void)setIsArea:(NSNumber*)value_ {
    [self willChangeValueForKey:@"isArea"];
    [self setPrimitiveValue:value_ forKey:@"isArea"];
    [self didChangeValueForKey:@"isArea"];
}



- (BOOL)isAreaValue {
	return [[self isArea] boolValue];
}

- (void)setIsAreaValue:(BOOL)value_ {
	[self setIsArea:[NSNumber numberWithBool:value_]];
}






- (NSString*)tags {
	[self willAccessValueForKey:@"tags"];
	NSString *result = [self primitiveValueForKey:@"tags"];
	[self didAccessValueForKey:@"tags"];
	return result;
}

- (void)setTags:(NSString*)value_ {
    [self willChangeValueForKey:@"tags"];
    [self setPrimitiveValue:value_ forKey:@"tags"];
    [self didChangeValueForKey:@"tags"];
}






	

- (Action*)parent {
	[self willAccessValueForKey:@"parent"];
	Action *result = [self primitiveValueForKey:@"parent"];
	[self didAccessValueForKey:@"parent"];
	return result;
}

- (void)setParent:(Action*)value_ {
	[self willChangeValueForKey:@"parent"];
	[self setPrimitiveValue:value_ forKey:@"parent"];
	[self didChangeValueForKey:@"parent"];
}

	

	

- (Context*)context {
	[self willAccessValueForKey:@"context"];
	Context *result = [self primitiveValueForKey:@"context"];
	[self didAccessValueForKey:@"context"];
	return result;
}

- (void)setContext:(Context*)value_ {
	[self willChangeValueForKey:@"context"];
	[self setPrimitiveValue:value_ forKey:@"context"];
	[self didChangeValueForKey:@"context"];
}

	

	
- (void)addChildren:(NSSet*)value_ {
	[self willChangeValueForKey:@"children" withSetMutation:NSKeyValueUnionSetMutation usingObjects:value_];
    [[self primitiveValueForKey:@"children"] unionSet:value_];
    [self didChangeValueForKey:@"children" withSetMutation:NSKeyValueUnionSetMutation usingObjects:value_];
}

-(void)removeChildren:(NSSet*)value_ {
	[self willChangeValueForKey:@"children" withSetMutation:NSKeyValueMinusSetMutation usingObjects:value_];
	[[self primitiveValueForKey:@"children"] minusSet:value_];
	[self didChangeValueForKey:@"children" withSetMutation:NSKeyValueMinusSetMutation usingObjects:value_];
}
	
- (void)addChildrenObject:(Action*)value_ {
	NSSet *changedObjects = [[NSSet alloc] initWithObjects:&value_ count:1];
	[self willChangeValueForKey:@"children" withSetMutation:NSKeyValueUnionSetMutation usingObjects:changedObjects];
    [[self primitiveValueForKey:@"children"] addObject:value_];
    [self didChangeValueForKey:@"children" withSetMutation:NSKeyValueUnionSetMutation usingObjects:changedObjects];
    [changedObjects release];
}

- (void)removeChildrenObject:(Action*)value_ {
	NSSet *changedObjects = [[NSSet alloc] initWithObjects:&value_ count:1];
	[self willChangeValueForKey:@"children" withSetMutation:NSKeyValueMinusSetMutation usingObjects:changedObjects];
	[[self primitiveValueForKey:@"children"] removeObject:value_];
	[self didChangeValueForKey:@"children" withSetMutation:NSKeyValueMinusSetMutation usingObjects:changedObjects];
	[changedObjects release];
}

- (NSSet *) children
{
	[self willAccessValueForKey:@"children"];
	NSSet *result = [self primitiveValueForKey:@"children"];
	[self didAccessValueForKey:@"children"];
	return result;
    
}

- (NSMutableSet*)childrenSet {
	return [self mutableSetValueForKey:@"children"];
}

- (void) syncON
{
	syncing=true;
}

- (void) syncOFF
{
	syncing=true;
}

- (bool) syncing
{
	return syncing;
}

- (void) didChangeValueForKey: (NSString *) key
{
    [super didChangeValueForKey: key];
    if (!syncing &&
		![key isEqualToString:@"modificationDate"]
		 && ![key isEqualToString:@"sequenceValue"] // Since we use the mod date as a syncing hint, these don't really change the
		&& ![key isEqualToString:@"noteWindow"] // data we care about for syncing, which is generally non-heirarchical
		&& ![key isEqualToString:@"noteOpen"]
		&& ![key isEqualToString:@"parent"]
		&& ![key isEqualToString:@"isExpanded"]
		&& ![key isEqualToString:@"toodleID"]
		)
    {
        [self setModificationDate: [NSCalendarDate calendarDate]];
    }
}

@end
