<s> import os <EOL> from google . appengine . ext import ndb <EOL> import modelx <EOL> import util <EOL> TIMESTAMP = long ( os . environ . get ( '<STR_LIT>' ) . split ( '<STR_LIT:.>' ) [ <NUM_LIT:1> ] ) >> <NUM_LIT> <EOL> class Base ( ndb . Model , modelx . BaseX ) : <EOL> created = ndb . DateTimeProperty ( auto_now_add = True ) <EOL> modified = ndb . DateTimeProperty ( auto_now = True ) <EOL> version = ndb . IntegerProperty ( default = TIMESTAMP ) <EOL> _PROPERTIES = { <EOL> '<STR_LIT:key>' , <EOL> '<STR_LIT:id>' , <EOL> '<STR_LIT:version>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> } <EOL> class Config ( Base , modelx . ConfigX ) : <EOL> analytics_id = ndb . StringProperty ( default = '<STR_LIT>' ) <EOL> announcement_html = ndb . StringProperty ( default = '<STR_LIT>' ) <EOL> announcement_type = ndb . StringProperty ( default = '<STR_LIT:info>' , choices = [ <EOL> '<STR_LIT:info>' , '<STR_LIT>' , '<STR_LIT:success>' , '<STR_LIT>' , <EOL> ] ) <EOL> brand_name = ndb . StringProperty ( default = '<STR_LIT>' ) <EOL> facebook_app_id = ndb . StringProperty ( default = '<STR_LIT>' ) <EOL> facebook_app_secret = ndb . StringProperty ( default = '<STR_LIT>' ) <EOL> feedback_email = ndb . StringProperty ( default = '<STR_LIT>' ) <EOL> flask_secret_key = ndb . StringProperty ( default = util . uuid ( ) ) <EOL> google_api_key = ndb . StringProperty ( default = '<STR_LIT>' ) <EOL> twitter_consumer_key = ndb . StringProperty ( default = '<STR_LIT>' ) <EOL> twitter_consumer_secret = ndb . StringProperty ( default = '<STR_LIT>' ) <EOL> _PROPERTIES = Base . _PROPERTIES . union ( { <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> } ) <EOL> class User ( Base , modelx . UserX ) : <EOL> name = ndb . StringProperty ( indexed = True , required = True ) <EOL> username = ndb . StringProperty ( indexed = True , required = True ) <EOL> email = ndb . StringProperty ( indexed = True , default = '<STR_LIT>' ) <EOL> auth_ids = ndb . StringProperty ( indexed = True , repeated = True ) <EOL> active = ndb . BooleanProperty ( default = True ) <EOL> admin = ndb . BooleanProperty ( default = False ) <EOL> _PROPERTIES = Base . _PROPERTIES . union ( { <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT>' , <EOL> '<STR_LIT:email>' , <EOL> '<STR_LIT:name>' , <EOL> '<STR_LIT:username>' , <EOL> } ) </s>
