<?xml version="1.0" encoding="UTF-8"?>
<codesense version="1.0">
	
	<!-- Language Keywords -->
	<set name="com.macrabbit.python.keywords.control">
		<completion string="as" />
		<completion string="assert" />
		<completion string="break" />
		<completion string="class">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\s+\S|\S)|\s*$</matched-suffix>
					<transform-into>(?1:: ${1:MyClass}:
	$0)</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="continue" />
		<completion string="def">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\s+\S|\S)|\s*$</matched-suffix>
					<transform-into>(?1:: ${1:myFunction}($2\):
	$0)</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="del" />
		<completion string="elif">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\s+\S|\S)|\s*$</matched-suffix>
					<transform-into>(?1:: ${1:condition}:
	$0)</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="else"/>
		<completion string="except">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\s+\S|\S)|\s*$</matched-suffix>
					<transform-into>(?1:: ${1:condition}:
	$0)</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="exec" />
		<completion string="finally">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\s*:)|\S</matched-suffix>
					<transform-into>(?1:::
	$0)</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="for">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\s+\S|\S)|\s*$</matched-suffix>
					<transform-into>(?1:: ${1:item} in ${2:items}:
	$0)</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="from" />
		<completion string="if"/>
		<completion string="import" />
		<completion string="pass" />
		<completion string="raise" />
		<completion string="return" />
		<completion string="try">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\s*:)|\S</matched-suffix>
					<transform-into>(?1:::
	$0)</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="while">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\s+\S|\S)|\s*$</matched-suffix>
					<transform-into>(?1:: ${1:condition}:
	$0)</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="with" />
		<completion string="yield" />
		
		<completion string="and" />
		<completion string="in" />
		<completion string="is" />
		<completion string="not" />
		<completion string="or" />
	</set>
	
	<set name="com.macrabbit.python.keywords.block-forms">
		<completion string="else">
				<behavior>
					<append-dynamic>
						<matched-suffix>(\s*:)|\S</matched-suffix>
						<transform-into>(?1:::
		$0)</transform-into>
					</append-dynamic>
				</behavior>
			</completion>
		<completion string="if">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\s+\S|\S)|\s*$</matched-suffix>
					<transform-into>(?1:: ${1:condition}:
	$0)</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
	</set>
	
	<set name="com.macrabbit.python.keywords">
		<completion string="lambda">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\s+\S|\S)|\s*$</matched-suffix>
					<transform-into>(?1:: ${1:arguments}: $0)</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		
		<completion string="super" />
		<completion string="self" />
		
		<completion string="True" />
		<completion string="False" />
		<completion string="Null" />
	</set>
	
	<!-- Built-in Functions -->
	<set name="com.macrabbit.python.builtin.functions">
		<behavior>
			<append-dynamic>
				<matched-suffix>(\()|[^(]</matched-suffix>
				<transform-into>(?1::(\))</transform-into>
			</append-dynamic>
		</behavior>
		<completion string="abs">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:number}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="all">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:iterable}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="any">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:iterable}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="bin">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:number}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="bool">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:value}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="callable">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:object}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="chr">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:integer}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="classmethod">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:function}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="cmp">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:object_x}, ${2:object_y}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="compile">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:source}, ${2:filename}, ${3:mode}${4:, ${5:flags}, ${6:dont_inherit}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="complex">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:${2:real}, ${3:imaginary}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="delattr">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:object}, ${2:name}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="dict">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:arg}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="dir">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:object}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="divmod">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:number_a}, ${number_b}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="enumerate">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:sequence}${2:, ${3:start}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="eval">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:expression}${2:, ${3:globals}, ${4:locals}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="execfile">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:filename}${2:, ${3:globals}, ${4:locals}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="file">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:filename}${2:, ${3:mode}, ${4:buffer_size}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="filter">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:function}, ${2:iterable}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="float">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:number}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="format">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:value}${2:, ${3:format_spec}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="frozenset">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:iterable}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="getattr">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:object}, ${2:name}${3:, ${4:default}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="globals" />
		<completion string="hasattr">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:object}, ${2:name}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="hash">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:object}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="help">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:object}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="hex">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:integer}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="id">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:object}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="input">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:prompt}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="int">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:${2:number}, ${3:base}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="isinstance">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:object}, ${2:classinfo}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="issubclass">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:class}, ${2:classinfo}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="iter">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:object}${2:, ${3:sentinel}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="len">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:sequence_or_dict}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="list">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:iterable}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="locals" />
		<completion string="long">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:${2:number}, ${3:base}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="map">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:function}, ${2:iterable, ...}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="max">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:iterable}${2:, ${3:args, ...}${4:, key=$5}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="memoryview">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:object}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="min">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::((${1:iterable}${2:, ${3:args, ...}${4:, key=$5}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="next">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:iterator}${2:, ${3:default}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="object" />
		<completion string="oct">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:integer}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="open">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:filename}${2:, ${3:mode}, ${4:buffer_size}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="ord">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:character}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="pow">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:x}, ${2:y}${3:, ${4:z}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="print">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:object, ...}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="property">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:${2:fget}, ${3:fset}, ${4:fdel}, ${5:doc}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="range">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:${2:start}, ${3:stop}${4:, ${5:step}}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="raw_input">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:prompt}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="reduce">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:function}, ${2:iterable}${3:, ${4:initializer}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="reload">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:module}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="repr">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:object}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="reversed">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:sequence}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="round">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:number}${2:, ${3:decimal_points}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="set">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:iterable}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="setattr">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:object}, ${2:name}, ${3:value}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="slice">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:${2:start}, ${3:stop}${4:, ${5:step}}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="sorted">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:iterable}${2:, ${3:comparison_func}, ${4:key_func}, ${5:reverse}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="staticmethod">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:function}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="str">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:object}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="sum">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:iterable}${2:, ${3:start}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="super">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:type}${2:, ${3:object_or_type}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="tuple">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:iterable}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="type">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:object}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="unichr">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:integer}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="unicode">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:${2:object}, ${3:encoding}, ${4:errors}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="vars">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:object}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="xrange">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:${2:start}, ${3:stop}${4:, ${5:step}}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="zip">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:iterable, ...}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="__import__">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:name}${2:, ${3:globals}, ${4:locals}, ${5:fromlist}, ${6:level}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="apply">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:function}, ${2:args}${3:, ${4:keywords}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="buffer">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:object}${2:, ${3:offset}, ${4:size}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="coerce">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:x}, ${2:y}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="intern">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:string}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
	</set>
	
	<!-- Common methods (strings, iterables, etc.) -->
	<set name="com.macrabbit.python.builtin.methods">
		<behavior>
			<append-dynamic>
				<matched-suffix>(\()|[^(]</matched-suffix>
				<transform-into>(?1::(\))</transform-into>
			</append-dynamic>
		</behavior>
		<!-- Iterator methods -->
		<completion string="__iter__" />
		<completion string="next" />
		<!-- String methods -->
		<completion string="capitalize" />
		<completion string="center">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:width}${2:, ${3:fillchar}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="count">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:sub}${2:, ${3:start}, ${4:end}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="decode">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:${2:encoding}, ${3:errors}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="encode">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:${2:encoding}, ${3:errors}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="endswith">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:suffix}${2:, ${3:start}, ${4:end}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="expandtabs">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:tabsize}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="find">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:sub}${2:, ${3:start}, ${4:end}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="format">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::($1\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="index">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:sub}${2:, ${3:start}, ${4:end}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="isalnum" />
		<completion string="isalpha" />
		<completion string="isdigit" />
		<completion string="islower" />
		<completion string="isspace" />
		<completion string="istitle" />
		<completion string="isupper" />
		<completion string="join">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:iterable}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="ljust">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:width}${2:, ${3:fillchar}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="lower" />
		<completion string="lstrip">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:chars}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="partition">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:separator}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="replace">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:old}, ${2:new}${3:, ${4:count}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="rfind">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:sub}${2:, ${3:start}, ${4:end}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="rindex">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:sub}${2:, ${3:start}, ${4:end}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="rjust">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:width}${2:, ${3:fillchar}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="rpartition">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:separator}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="rsplit">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:${2:separator}, ${3:maxsplit}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="rstrip">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:chars}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="split">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:${2:separator}, ${3:maxsplit}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="splitlines">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:keepends}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="startswith">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:prefix}${2:, ${3:start}, ${4:end}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="strip">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:chars}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="swapcase" />
		<completion string="title" />
		<completion string="translate">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:table}${2:, ${3:deletechars}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="upper" />
		<completion string="zfill">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:width}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="isnumeric" />
		<completion string="isdecimal" />
		<!-- Set methods -->
		<completion string="isdisjoint">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:other}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="issubset">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:other}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="issuperset">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:other}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="union">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:other}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="intersection">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:other}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="difference">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:other}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="symmetric_difference">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:other}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="copy" />
		<completion string="update">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:other}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="intersection_update">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:other}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="difference_update">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:other}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="symmetric_difference_update">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:other}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="add">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:elem}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="remove">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:elem}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="discard">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:elem}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="pop" />
		<completion string="clear" />
		<!-- Dictionary methods -->
		<completion string="get">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:key}${2:, ${3:default}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="has_key">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:key}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="items" />
		<completion string="iteritems" />
		<completion string="iterkeys" />
		<completion string="itervalues" />
		<completion string="keys" />
		<completion string="popitem" />
		<completion string="setdefault">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:key}${2:, ${3:default}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="values" />
		<completion string="viewitems" />
		<completion string="viewkeys" />
		<completion string="viewvalues" />
		<!-- File methods -->
		<completion string="flush" />
		<completion string="fileno" />
		<completion string="isatty" />
		<completion string="read">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:size}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="readline">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:size}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="readlines">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:sizehint}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="seek">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:offset}${2:, ${3:whence}}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="tell" />
		<completion string="truncate">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:size}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="write">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:string}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<completion string="writelines">
			<behavior>
				<append-dynamic>
					<matched-suffix>(\()|[^(]</matched-suffix>
					<transform-into>(?1::(${1:sequence}\))</transform-into>
				</append-dynamic>
			</behavior>
		</completion>
		<!-- Object and class methods -->
		<completion string="mro" />
		<completion string="subclasses" />
	</set>
	
	<set name="com.macrabbit.python.exceptions">
		<completion string="BaseException" />
		<completion string="SystemExit" />
		<completion string="KeyboardInterrupt" />
		<completion string="GeneratorExit" />
		<completion string="Exception" />
		<completion string="StopIteration" />
		<completion string="StandardError" />
		<completion string="BufferError" />
		<completion string="ArithmeticError" />
		<completion string="FloatingPointError" />
		<completion string="OverflowError" />
		<completion string="ZeroDivisionError" />
		<completion string="AssertionError" />
		<completion string="AttributeError" />
		<completion string="EnvironmentError" />
		<completion string="IOError" />
		<completion string="OSError" />
		<completion string="WindowsError" />
		<completion string="VMSError" />
		<completion string="EOFError" />
		<completion string="ImportError" />
		<completion string="LookupError" />
		<completion string="IndexError" />
		<completion string="KeyError" />
		<completion string="MemoryError" />
		<completion string="NameError" />
		<completion string="UnboundLocalError" />
		<completion string="ReferenceError" />
		<completion string="RuntimeError" />
		<completion string="NotImplementedError" />
		<completion string="SyntaxError" />
		<completion string="IndentationError" />
		<completion string="TabError" />
		<completion string="SystemError" />
		<completion string="TypeError" />
		<completion string="ValueError" />
		<completion string="UnicodeError" />
		<completion string="UnicodeDecodeError" />
		<completion string="UnicodeEncodeError" />
		<completion string="UnicodeTranslateError" />
		<completion string="Warning" />
		<completion string="DeprecationWarning" />
		<completion string="PendingDeprecationWarning" />
		<completion string="RuntimeWarning" />
		<completion string="SyntaxWarning" />
		<completion string="UserWarning" />
		<completion string="FutureWarning" />
		<completion string="ImportWarning" />
		<completion string="UnicodeWarning" />
		<completion string="BytesWarning" />
	</set>
</codesense>